From a4af8b2a6487161320fcaae02a195093498b05b0 Mon Sep 17 00:00:00 2001 From: Sam Atkins Date: Sat, 20 Nov 2021 15:20:42 +0000 Subject: [PATCH] DisplaySettings: Move screen number show/hide logic into widget This is functionally the same as before, as selecting a tab fires Show and HideEvents. But this way, we don't need to directly access the TabWidget, which will make using SettingsWindow simpler. --- .../DisplaySettings/MonitorSettingsWidget.cpp | 10 ++++++++++ .../DisplaySettings/MonitorSettingsWidget.h | 4 ++++ Userland/Applications/DisplaySettings/main.cpp | 3 --- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/Userland/Applications/DisplaySettings/MonitorSettingsWidget.cpp b/Userland/Applications/DisplaySettings/MonitorSettingsWidget.cpp index 88b2d8afae..afdca487ea 100644 --- a/Userland/Applications/DisplaySettings/MonitorSettingsWidget.cpp +++ b/Userland/Applications/DisplaySettings/MonitorSettingsWidget.cpp @@ -179,4 +179,14 @@ void MonitorSettingsWidget::show_screen_numbers(bool show) GUI::WindowServerConnection::the().async_show_screen_numbers(show); } +void MonitorSettingsWidget::show_event(GUI::ShowEvent&) +{ + show_screen_numbers(true); +} + +void MonitorSettingsWidget::hide_event(GUI::HideEvent&) +{ + show_screen_numbers(false); +} + } diff --git a/Userland/Applications/DisplaySettings/MonitorSettingsWidget.h b/Userland/Applications/DisplaySettings/MonitorSettingsWidget.h index 28144bd4e2..4b5e609318 100644 --- a/Userland/Applications/DisplaySettings/MonitorSettingsWidget.h +++ b/Userland/Applications/DisplaySettings/MonitorSettingsWidget.h @@ -28,6 +28,10 @@ public: void apply_settings(); void show_screen_numbers(bool); +protected: + void show_event(GUI::ShowEvent& event) override; + void hide_event(GUI::HideEvent& event) override; + private: MonitorSettingsWidget(); diff --git a/Userland/Applications/DisplaySettings/main.cpp b/Userland/Applications/DisplaySettings/main.cpp index ea14405669..5f88de9c96 100644 --- a/Userland/Applications/DisplaySettings/main.cpp +++ b/Userland/Applications/DisplaySettings/main.cpp @@ -50,9 +50,6 @@ int main(int argc, char** argv) auto& font_settings_widget = tab_widget.add_tab("Fonts"); auto& monitor_settings_widget = tab_widget.add_tab("Monitor"); auto& desktop_settings_widget = tab_widget.add_tab("Workspaces"); - tab_widget.on_change = [&](auto& widget) { - monitor_settings_widget.show_screen_numbers(&widget == &monitor_settings_widget); - }; auto& button_container = main_widget.add(); button_container.set_shrink_to_fit(true);