Skip to content

Commit

Permalink
impl dialog
Browse files Browse the repository at this point in the history
  • Loading branch information
wiiznokes committed Nov 7, 2024
1 parent 80dc5ad commit 12f6999
Show file tree
Hide file tree
Showing 5 changed files with 21 additions and 27 deletions.
15 changes: 0 additions & 15 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -69,8 +69,8 @@ derive_more = { version = "1", default-features = false, features = [
] }
# strum = { version = "0.25", features = ["derive"] }

# [patch."https://github.com/pop-os/libcosmic"]
# libcosmic = { path = "../libcosmic" }
[patch."https://github.com/pop-os/libcosmic"]
libcosmic = { path = "../libcosmic" }
# libcosmic = { git = "https://github.com/wiiznokes/libcosmic", rev = "2dff73b8b2871afca6c65c861954c196818f960f" }


Expand Down
4 changes: 3 additions & 1 deletion i18n/en/ui.ftl
Original file line number Diff line number Diff line change
Expand Up @@ -51,4 +51,6 @@ already_used_error = This name is already being use
invalid_value_error = this value is invalid
# Dialogs
udev_rules_dialog_title = Install Udev Rules
udev_rules_dialog_ok = Already done it
udev_rules_dialog_remind_later = Remind me Later
udev_rules_dialog_copy_to_clipboard = Copy Commands to Clipboard
23 changes: 15 additions & 8 deletions ui/src/dialogs.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ use cosmic::{
widget::{
button, dialog,
markdown::{self, Url},
text,
},
Element, Task,
};
Expand Down Expand Up @@ -65,23 +64,31 @@ pub enum FlatpakDialogMsg {
fn view_flatpak_dialog() -> Element<'static, DialogMsg> {
let items = markdown::parse(include_str!("../../res/linux/udev_rules.md")).collect::<Vec<_>>();

let dialog: Element<_> = dialog("Udev rules")
.body("body")
let commands = r#"
wget https://raw.githubusercontent.com/wiiznokes/fan-control/master/res/linux/60-fan-control.rules
sudo mv 60-fan-control.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && sudo udevadm trigger
"#;

let dialog: Element<_> = dialog()
.control(
markdown::view(
items.iter(),
markdown::Settings::default(),
markdown::Style::from_palette(Palette::CATPPUCCIN_FRAPPE),
)
.map(|url| FlatpakDialogMsg::OpenUrl(url)),
.map(FlatpakDialogMsg::OpenUrl),
)
.primary_action(
button::text(fl!("udev_rules_dialog_ok"))
.on_press(FlatpakDialogMsg::CloseAndDontShowAgain),
)
.primary_action(button::text("Remind me latter").on_press(FlatpakDialogMsg::Close))
.secondary_action(
button::text("Copy command to clipboard")
.on_press(FlatpakDialogMsg::CopyToClipboard("todo".into())),
button::text(fl!("udev_rules_dialog_copy_to_clipboard"))
.on_press(FlatpakDialogMsg::CopyToClipboard(commands.into())),
)
.tertiary_action(
button::text("Already done it").on_press(FlatpakDialogMsg::CloseAndDontShowAgain),
button::text(fl!("udev_rules_dialog_remind_later")).on_press(FlatpakDialogMsg::Close),
)
.into();

Expand Down
2 changes: 1 addition & 1 deletion ui/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -538,7 +538,7 @@ impl<H: HardwareBridge + 'static> cosmic::Application for Ui<H> {
self.toasts.remove(pos);
}
AppMsg::Dialog(dialog_msg) => {
return Dialog::update(self, dialog_msg).map(|m| cosmic::app::Message::App(m));
return Dialog::update(self, dialog_msg).map(cosmic::app::Message::App);
}
}

Expand Down

0 comments on commit 12f6999

Please sign in to comment.