diff options
-rw-r--r-- | client/screen.cpp | 9 | ||||
-rw-r--r-- | client/screen.h | 1 |
2 files changed, 8 insertions, 2 deletions
diff --git a/client/screen.cpp b/client/screen.cpp index 75205719..7c4e1e37 100644 --- a/client/screen.cpp +++ b/client/screen.cpp @@ -113,8 +113,7 @@ RedScreen::RedScreen(Application& owner, int id, const std::wstring& name, int w THROW("create inactive cursor failed"); } _window.set_cursor(_default_cursor); - AutoRef<Menu> menu(_owner.get_app_menu()); - _window.set_menu(*menu); + update_menu(); AutoRef<Icon> icon(Platform::load_icon(RED_ICON_RES_ID)); _window.set_icon(*icon); _window.start_key_interception(); @@ -870,6 +869,12 @@ void RedScreen::external_show() _window.external_show(); } +void RedScreen::update_menu() +{ + AutoRef<Menu> menu(_owner.get_app_menu()); + _window.set_menu(*menu); +} + void RedScreen::on_exposed_rect(const SpiceRect& area) { if (is_out_of_sync()) { diff --git a/client/screen.h b/client/screen.h index 8d9a81c3..dfef9895 100644 --- a/client/screen.h +++ b/client/screen.h @@ -89,6 +89,7 @@ public: void show(); void activate(); void external_show(); + void update_menu(); int get_id() { return _id;} int get_screen_id(); |