diff --git a/Userland/Applets/WorkspacePicker/DesktopStatusWindow.cpp b/Userland/Applets/WorkspacePicker/DesktopStatusWindow.cpp index 5577169b1f..dddf6ff7bf 100644 --- a/Userland/Applets/WorkspacePicker/DesktopStatusWindow.cpp +++ b/Userland/Applets/WorkspacePicker/DesktopStatusWindow.cpp @@ -104,6 +104,12 @@ private: DesktopStatusWindow::DesktopStatusWindow() { GUI::Desktop::the().on_receive_screen_rects([&](GUI::Desktop&) { + auto& desktop = GUI::Desktop::the(); + if (desktop.workspace_rows() == 1 && desktop.workspace_columns() == 1) + resize(0, 0); + else + resize(28, 16); + update(); }); set_window_type(GUI::WindowType::Applet); diff --git a/Userland/Applets/WorkspacePicker/main.cpp b/Userland/Applets/WorkspacePicker/main.cpp index 74454600c3..abdb378182 100644 --- a/Userland/Applets/WorkspacePicker/main.cpp +++ b/Userland/Applets/WorkspacePicker/main.cpp @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include @@ -25,7 +26,13 @@ ErrorOr serenity_main(Main::Arguments arguments) auto window = TRY(DesktopStatusWindow::try_create()); window->set_title("WorkspacePicker"); - window->resize(28, 16); + + auto& desktop = GUI::Desktop::the(); + if (desktop.workspace_rows() == 1 && desktop.workspace_columns() == 1) + window->resize(0, 0); + else + window->resize(28, 16); + window->show(); window->make_window_manager(WindowServer::WMEventMask::WorkspaceChanges);