summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Dywan <christian@twotoasts.de>2018-11-27 08:45:24 +0200
committerGitHub <noreply@github.com>2018-11-27 08:45:24 +0200
commitd1a9e99f624e383719080426ea19f94fbff67bc7 (patch)
tree1f559e17f969adccc46b409713a7f24c8802aa3b
parent1a097f77449a7870549dbbbb76480c2f23d1d5af (diff)
downloadmidori-git-d1a9e99f624e383719080426ea19f94fbff67bc7.tar.gz
Always build menu models from scratch (#183)
Adapting to the small layout shouldn't depend on the initial value of the window state.
-rw-r--r--core/browser.vala12
1 files changed, 8 insertions, 4 deletions
diff --git a/core/browser.vala b/core/browser.vala
index 23dd1b6f..9aa38f31 100644
--- a/core/browser.vala
+++ b/core/browser.vala
@@ -137,16 +137,20 @@ namespace Midori {
app_menu.menu_model = application.get_menu_by_id ("app-menu");
navigationbar.menubutton.menu_model = application.get_menu_by_id ("page-menu");
notify["is-small"].connect (() => {
+ var app_menu_model = new Menu ();
+ app_menu_model.prepend_section (null, application.get_menu_by_id ("app-menu"));
+ var page_menu_model = new Menu ();
+ page_menu_model.prepend_section (null, application.get_menu_by_id ("page-menu"));
if (is_small) {
- ((Menu)app_menu.menu_model).insert_section (0, null, application.get_menu_by_id ("app-menu-small"));
- ((Menu)navigationbar.menubutton.menu_model).insert_section (0, null, application.get_menu_by_id ("page-menu-small"));
+ app_menu_model.prepend_section (null, application.get_menu_by_id ("app-menu-small"));
+ page_menu_model.prepend_section (null, application.get_menu_by_id ("page-menu-small"));
// Anchor downloads popover to app menu if the button is hidden
downloads.popover.relative_to = app_menu;
} else {
- ((Menu)app_menu.menu_model).remove (0);
- ((Menu)navigationbar.menubutton.menu_model).remove (0);
downloads.popover.relative_to = downloads;
}
+ app_menu.menu_model = app_menu_model;
+ navigationbar.menubutton.menu_model = page_menu_model;
});
application.bind_busy_property (this, "is-loading");