diff -ur unity-7.1.2+13.10.20131014.1/com.canonical.Unity.gschema.xml unity-7.1.2+13.10.20131014.1-new/com.canonical.Unity.gschema.xml --- unity-7.1.2+13.10.20131014.1/com.canonical.Unity.gschema.xml 2013-10-14 06:23:50.000000000 -0500 +++ unity-7.1.2+13.10.20131014.1-new/com.canonical.Unity.gschema.xml 2013-11-21 23:55:12.049302935 -0600 @@ -73,4 +73,11 @@ The scopes listed in the scope bar will be ordered according to this list. + + + false + Enable/disable the global menubar being on at all times. + Enable/disable the global menubar being on at all times. + + diff -ur unity-7.1.2+13.10.20131014.1/panel/PanelMenuView.cpp unity-7.1.2+13.10.20131014.1-new/panel/PanelMenuView.cpp --- unity-7.1.2+13.10.20131014.1/panel/PanelMenuView.cpp 2013-10-14 06:23:50.000000000 -0500 +++ unity-7.1.2+13.10.20131014.1-new/panel/PanelMenuView.cpp 2013-11-21 23:50:01.331933805 -0600 @@ -18,6 +18,7 @@ * Marco Trevisan <3v1n0@ubuntu.com> */ +#include #include #include @@ -55,6 +56,7 @@ const std::string NEW_APP_SHOW_TIMEOUT = "new-app-show-timeout"; const std::string WINDOW_MOVED_TIMEOUT = "window-moved-timeout"; const std::string UPDATE_SHOW_NOW_TIMEOUT = "update-show-now-timeout"; + const std::string PANEL_SETTINGS = "com.canonical.Unity.Panel"; } PanelMenuView::PanelMenuView() @@ -78,6 +80,7 @@ , menus_discovery_(DEFAULT_MENUS_DISCOVERY) , menus_discovery_fadein_(DEFAULT_DISCOVERY_FADEIN) , menus_discovery_fadeout_(DEFAULT_DISCOVERY_FADEOUT) + , settings_(g_settings_new(PANEL_SETTINGS.c_str())) { BamfWindow* active_win = bamf_matcher_get_active_window(matcher_); @@ -342,7 +345,8 @@ if (we_control_active_ && !screen_grabbed && !switcher_showing_ && !launcher_keynav_ && !entries_.empty()) { - if (is_inside_ || last_active_view_ || show_now_activated_ || new_application_) + if (g_settings_get_boolean(settings_, "menubar-always-visible") || is_inside_ || + last_active_view_ || show_now_activated_ || new_application_) { return true; } diff -ur unity-7.1.2+13.10.20131014.1/panel/PanelMenuView.h unity-7.1.2+13.10.20131014.1-new/panel/PanelMenuView.h --- unity-7.1.2+13.10.20131014.1/panel/PanelMenuView.h 2013-10-14 06:23:50.000000000 -0500 +++ unity-7.1.2+13.10.20131014.1-new/panel/PanelMenuView.h 2013-11-21 23:48:54.917476321 -0600 @@ -25,6 +25,7 @@ #include #include #include +#include #include "PanelIndicatorsView.h" #include "unity-shared/StaticCairoText.h" @@ -201,6 +202,8 @@ glib::SourceManager sources_; nux::animation::AnimateValue opacity_animator_; + + GSettings *settings_; }; }