From ba8e6e00f88c37ed4a5fa90357e9711218f3503e Mon Sep 17 00:00:00 2001 From: Maximiliano Sandoval R Date: Sun, 4 Jun 2023 10:46:58 +0200 Subject: [PATCH] Remove dark-mode gsetting We only used this when the style manager reports that the system does not support color schemes, any system in GNOME 42 or newer should support this properly. --- data/de.haeckerfelix.Shortwave.gschema.xml.in | 3 --- data/gtk/settings_window.ui | 19 ------------------- src/app.rs | 16 ---------------- src/settings/key.rs | 1 - src/settings/settings_window.rs | 10 ---------- 5 files changed, 49 deletions(-) diff --git a/data/de.haeckerfelix.Shortwave.gschema.xml.in b/data/de.haeckerfelix.Shortwave.gschema.xml.in index 87191cee..d394846b 100644 --- a/data/de.haeckerfelix.Shortwave.gschema.xml.in +++ b/data/de.haeckerfelix.Shortwave.gschema.xml.in @@ -4,9 +4,6 @@ "all.api.radio-browser.info" - - false - true diff --git a/data/gtk/settings_window.ui b/data/gtk/settings_window.ui index 79c8ef76..ef3d9a47 100644 --- a/data/gtk/settings_window.ui +++ b/data/gtk/settings_window.ui @@ -5,25 +5,6 @@ preferences-system-symbolic General - - - Appearance - False - - - _Dark Mode - True - Whether the application should use a dark theme - dark_mode_button - - - center - - - - - - Features diff --git a/src/app.rs b/src/app.rs index d49c9000..32cbb3f9 100644 --- a/src/app.rs +++ b/src/app.rs @@ -150,9 +150,6 @@ mod imp { }), ); - // Needs to be called after settings.connect_changed for it to trigger. - app.update_color_scheme(); - // Small workaround to update every view to the correct sorting/order. send!(self.sender, Action::SettingsKeyChanged(Key::ViewSorting)); } @@ -284,23 +281,10 @@ impl SwApplication { .unwrap() .set_sorting(sorting, descending); } - Key::DarkMode => self.update_color_scheme(), _ => (), } } - fn update_color_scheme(&self) { - let manager = adw::StyleManager::default(); - if !manager.system_supports_color_schemes() { - let color_scheme = if settings_manager::boolean(Key::DarkMode) { - adw::ColorScheme::PreferDark - } else { - adw::ColorScheme::PreferLight - }; - manager.set_color_scheme(color_scheme); - } - } - pub fn refresh_data(&self) { let fut = clone!(@weak self as this => async move { let imp = this.imp(); diff --git a/src/settings/key.rs b/src/settings/key.rs index 8846fc16..987d43e1 100644 --- a/src/settings/key.rs +++ b/src/settings/key.rs @@ -21,7 +21,6 @@ pub enum Key { ApiLookupDomain, // User Interface - DarkMode, Notifications, WindowWidth, WindowHeight, diff --git a/src/settings/settings_window.rs b/src/settings/settings_window.rs index 33933eee..82457e61 100644 --- a/src/settings/settings_window.rs +++ b/src/settings/settings_window.rs @@ -38,7 +38,6 @@ impl SettingsWindow { builder, }; - window.setup_widgets(); window.setup_signals(); window } @@ -47,16 +46,7 @@ impl SettingsWindow { self.widget.set_visible(true); } - fn setup_widgets(&self) { - let manager = adw::StyleManager::default(); - get_widget!(self.builder, gtk::Widget, appearance_group); - appearance_group.set_visible(!manager.system_supports_color_schemes()) - } - fn setup_signals(&self) { - get_widget!(self.builder, gtk::Switch, dark_mode_button); - settings_manager::bind_property(Key::DarkMode, &dark_mode_button, "active"); - get_widget!(self.builder, gtk::Switch, show_notifications_button); settings_manager::bind_property(Key::Notifications, &show_notifications_button, "active"); } -- GitLab