From 16a8099497d545a81743fa1f8ce03e656f741ff2 Mon Sep 17 00:00:00 2001 From: Vika Date: Sat, 29 Mar 2025 23:56:27 +0300 Subject: Wire tooltips on the preferences screen to the setting descriptions --- src/components/preferences.rs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/components/preferences.rs b/src/components/preferences.rs index f1f37f9..4c2c9fd 100644 --- a/src/components/preferences.rs +++ b/src/components/preferences.rs @@ -1,3 +1,5 @@ +use gettextrs::*; + use gio::prelude::*; use adw::prelude::*; use relm4::prelude::*; @@ -25,8 +27,6 @@ struct LanguageModelPreferencesWidgets { #[cfg(feature = "smart-summary")] impl LanguageModelPreferencesWidgets { fn new(settings: &gio::Settings) -> Self { - use gettextrs::*; - let page = adw::PreferencesPage::builder() .title(gettext("Language Models")) .description(gettext("Settings for the language model integrations.")) @@ -79,11 +79,13 @@ impl LanguageModelPreferencesWidgets { (widgets.smart_summary_prompt_prefix.upcast_ref::<_>(), "smart-summary-prompt-prefix", "text"), (widgets.smart_summary_prompt_suffix.upcast_ref::<_>(), "smart-summary-prompt-suffix", "text"), ] { + let key_data = schema.key(key); settings.bind(key, row, property) .get() .set() .build(); - row.set_title(&gettext(schema.key(key).summary().unwrap())); + row.set_title(&gettext(key_data.summary().unwrap())); + row.set_tooltip_markup(key_data.description().map(gettext).as_deref()); } widgets @@ -92,7 +94,7 @@ impl LanguageModelPreferencesWidgets { pub struct PreferencesWidgets { #[cfg(feature = "smart-summary")] - llm: LanguageModelPreferencesWidgets + llm: LanguageModelPreferencesWidgets, } impl Component for Preferences { -- cgit 1.4.1