summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibGUI/Window.h
diff options
context:
space:
mode:
authorsin-ack <sin-ack@users.noreply.github.com>2021-07-29 10:14:12 +0000
committerAndreas Kling <kling@serenityos.org>2021-08-02 00:39:15 +0200
commit611370e7dcf7e2820738036133dafb2b45340780 (patch)
tree05c95a3613facaaab426f3c0b4faaf9413a53c9c /Userland/Libraries/LibGUI/Window.h
parent95ab61e3db7b26380adaa84cc2473bc62a186e33 (diff)
downloadserenity-611370e7dcf7e2820738036133dafb2b45340780.zip
LibGUI, WindowServer: Greatly simplify menubar logic
Currently, any number of menubars can be plugged in and out of a window. This is unnecessary complexity, since we only need one menubar on a window. This commit removes most of the logic for dynamically attaching and detaching menubars and makes one menubar always available. The menubar is only considered existent if it has at least a single menu in it (in other words, an empty menubar will not be shown). This commit additionally fixes a bug wherein menus added after a menubar has been attached would not have their rects properly setup, and would therefore appear glitched out on the top left corner of the menubar.
Diffstat (limited to 'Userland/Libraries/LibGUI/Window.h')
-rw-r--r--Userland/Libraries/LibGUI/Window.h3
1 files changed, 1 insertions, 2 deletions
diff --git a/Userland/Libraries/LibGUI/Window.h b/Userland/Libraries/LibGUI/Window.h
index 0b597f90ed..18945fee26 100644
--- a/Userland/Libraries/LibGUI/Window.h
+++ b/Userland/Libraries/LibGUI/Window.h
@@ -201,7 +201,6 @@ public:
void did_disable_focused_widget(Badge<Widget>);
Menu& add_menu(String name);
- void set_menubar(RefPtr<Menubar>);
protected:
Window(Core::Object* parent = nullptr);
@@ -242,7 +241,7 @@ private:
OwnPtr<WindowBackingStore> m_front_store;
OwnPtr<WindowBackingStore> m_back_store;
- RefPtr<Menubar> m_menubar;
+ NonnullRefPtr<Menubar> m_menubar;
RefPtr<Gfx::Bitmap> m_icon;
RefPtr<Gfx::Bitmap> m_custom_cursor;