/* * Copyright (c) 2019-2020, Jesse Buhagiar * Copyright (c) 2021, Andreas Kling * Copyright (c) 2021-2022, Sam Atkins * * SPDX-License-Identifier: BSD-2-Clause */ #include "BackgroundSettingsWidget.h" #include "DesktopSettingsWidget.h" #include "EffectsSettingsWidget.h" #include "FontSettingsWidget.h" #include "MonitorSettingsWidget.h" #include "ThemesSettingsWidget.h" #include #include #include #include #include #include #include ErrorOr serenity_main(Main::Arguments arguments) { TRY(Core::System::pledge("stdio thread recvfd sendfd rpath cpath wpath unix proc exec")); auto app = TRY(GUI::Application::create(arguments)); Config::pledge_domain("WindowManager"); StringView selected_tab; Core::ArgsParser args_parser; args_parser.add_option(selected_tab, "Tab, one of 'background', 'fonts', 'monitor', 'themes', or 'workspaces'", "open-tab", 't', "tab"); args_parser.parse(arguments); auto app_icon = GUI::Icon::default_icon("app-display-settings"sv); bool background_settings_changed = false; auto window = TRY(GUI::SettingsWindow::create("Display Settings")); (void)TRY(window->add_tab(TRY("Background"_string), "background"sv, background_settings_changed)); (void)TRY(window->add_tab("Themes"_short_string, "themes"sv, background_settings_changed)); (void)TRY(window->add_tab("Fonts"_short_string, "fonts"sv)); (void)TRY(window->add_tab("Monitor"_short_string, "monitor"sv)); (void)TRY(window->add_tab(TRY("Workspaces"_string), "workspaces"sv)); (void)TRY(window->add_tab("Effects"_short_string, "effects"sv)); window->set_active_tab(selected_tab); window->set_icon(app_icon.bitmap_for_size(16)); window->show(); return app->exec(); }