refactor(surface): type surface actions on the message they carry

This commit is contained in:
Hojjat 2026-09-08 13:04:15 -06:00 • committed by Michael Murphy
parent 376f1b8850
commit a8fe59f388
21 changed files with 194 additions and 181 deletions

View file

@ -35,7 +35,7 @@ pub enum Message {
PopupClosed(Id),
ToggleExampleRow(bool),
Selected(usize),
Surface(cosmic::surface::Action),
Surface(cosmic::surface::Action<Message>),
Toggle(bool),
}
@ -76,9 +76,7 @@ impl cosmic::Application for Window {
self.example_row = toggled;
}
Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic(
cosmic::app::Action::Surface(a),
));
return cosmic::task::message(cosmic::Action::Surface(a));
}
Message::Selected(i) => {
self.selected = Some(i);

View file

@ -98,7 +98,7 @@ pub enum Message {
Input2(String),
Ignore,
ToggleHide,
Surface(cosmic::surface::Action),
Surface(cosmic::surface::Action<Message>),
Hi,
Hi2,
Hi3,
@ -255,9 +255,7 @@ impl cosmic::Application for App {
self.hidden = !self.hidden;
}
Message::Surface(a) => {
return cosmic::task::message(cosmic::Action::Cosmic(
cosmic::app::Action::Surface(a),
));
return cosmic::task::message(cosmic::Action::Surface(a));
}
Message::Hi => {
dbg!("hi");

View file

@ -28,7 +28,7 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
pub enum Message {
Clicked,
WindowClose,
Surface(cosmic::surface::Action),
Surface(cosmic::surface::Action<Message>),
ToggleHideContent,
ToggleSomeAction,
WindowNew,
@ -89,9 +89,7 @@ impl cosmic::Application for App {
self.button_label = format!("Clicked {message:?}");
}
Message::Surface(action) => {
return cosmic::task::message(cosmic::Action::Cosmic(
cosmic::app::Action::Surface(action),
));
return cosmic::task::message(cosmic::Action::Surface(action));
}
Message::WindowClose
| Message::ToggleHideContent

View file

@ -34,7 +34,7 @@ pub enum Message {
OpenError(Arc<file_chooser::Error>),
OpenFile,
Selected(Url),
Surface(cosmic::surface::Action),
Surface(cosmic::surface::Action<Message>),
}
/// The [`App`] stores application-specific state.
@ -187,9 +187,7 @@ impl cosmic::Application for App {
self.error_status = None;
}
Message::Surface(action) => {
return cosmic::task::message(cosmic::Action::Cosmic(
cosmic::app::Action::Surface(action),
));
return cosmic::task::message(cosmic::Action::Surface(action));
}
}