| Global Menu support for GNOME/Linux | |||||||||||||||
| Reported by kevin.r...@gmail.com, Dec 12 2009 | Back to list | ||||||||||||||
Chrome Version: 4.0.270.0 (Developer Build 34431) OS + version: Arch Linux CPU architecture (32-bit / 64-bit): 64-bit window manager: Gnome/Compiz What steps will reproduce the problem? 1. Install Chromium 2. Open Chromium with gnome2-globalmenu enabled What is the expected result? A global menu similar to that of the OS X version of Chromium What happens instead? Global menu shows the text "chrome" and nothing else Screenshot attached. Is there any way of getting the menu bar to work with global-menu? All that's needed is a native GTK bar (or at least an optional one) and it should work with it. It's a shame that there's no popular browser that works with gnome2-globalmenu, and Chrome/Chromium could be the first.
Comment 1
by
kevin.r...@gmail.com,
Dec 12 2009
,
Dec 15 2009
,
Jan 6 2010
Sounds like a rebel effort to turn Gnome into Mac OS X :-) I can imagine us accepting a patch to add an option for this - we have a right-click option for using system menu bar - but it sounds kind of researchy at this point, as not many people use gnome2-globalmenu.
,
Jan 7 2010
This is one of the things that came up when we discussed pros/cons of native menu vs faked menu. I think estade knows better than me pros/cons and whether we can do this.
,
Jan 7 2010
conclusion I drew was that I don't know how we could do this and still have the page/app menus be images, and have the correct hover/pressed states etc.
,
Jan 8 2010
this would be a good idea because at the moment Google Chrome for Linux is more like a cross over because theres no Elements From the system used in Chrome for example, buttons, scrollbar and textboxes as well as the frame border , apple manage to make there suit each OS it was on, why cant Chrome do the same, wouldnt it be better to use the OS elements like GTK menus, and borders, just like Vista does
,
Feb 17 2010
,
Apr 2 2010
Just a thought... could this be implemented as an option for linux users? Would another way of getting round it be to provide the option of having a menubar in the same format as gnome's menubars? Then this could work with or without the globalmenu plugin (providing a menu within Chrome instead). This is all coming from a non-technical user.
,
Apr 7 2010
I can confirm that globalmenu already works with some windows generated by Google Chrome, such as the Bookmarks Editor (please see the attachment below). I would be great if someone could add support for native GTK menu in Chrome's main window, for full globalmenu support. Although globalmenu hasn't seen any real development in the past few months, it should become a part of GNOME 3 sometime in the near future.
,
Apr 7 2010
,
Apr 27 2010
Canonical has announced that Ubuntu Meerkat Netbook Edition will default to a global menu bar. http://www.markshuttleworth.com/archives/359
,
May 18 2010
,
May 19 2010
after playing around with this, the biggest problem I see is that globalmenu does not
allow us to dynamically build the menu when it is shown. (The model we currently use
is to update the contents of the menu whenever it is shown, rather than keeping the
menu up-to-date in the background when settings change.)
Also, I get seg faults in the global menu code when I try to run chrome with global
menu in debug. Short of building from source, which I actually can't do because
globalmenu depends on a too-new version of GTK, there's no way for me to debug the
crash, which doesn't occur in release for whatever reason. If anyone cares, this is
the mostly useless stack trace:
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff5b1fa89 in IA__g_object_ref (_object=0xffffffffef06b080)
at /tmp/glib2.0.f24606/glib2.0-2.16.6/gobject/gobject.c:1718
1718 /tmp/glib2.0.f24606/glib2.0-2.16.6/gobject/gobject.c: No such file or
directory.
in /tmp/glib2.0.f24606/glib2.0-2.16.6/gobject/gobject.c
(gdb) bt
#0 0x00007ffff5b1fa89 in IA__g_object_ref (_object=0xffffffffef06b080)
at /tmp/glib2.0.f24606/glib2.0-2.16.6/gobject/gobject.c:1718
#1 0x00007fffef4bb7d6 in global_menu_gtk_changed_eh ()
from /usr/lib/gtk-2.0/modules/libglobalmenu-gnome.so
#2 0x00007ffff5b3164d in signal_emit_unlocked_R (node=0x7fffee7208c0,
detail=0, instance=0x7fffef09d8d0, emission_return=0x0,
instance_and_params=0x7fffffffae90)
at /tmp/glib2.0.f24606/glib2.0-2.16.6/gobject/gsignal.c:2406
#3 0x00007ffff5b33245 in IA__g_signal_emit_valist (instance=0x7fffef09d8d0,
signal_id=<value optimized out>, detail=0, var_args=0x7fffffffb110)
at /tmp/glib2.0.f24606/glib2.0-2.16.6/gobject/gsignal.c:2199
#4 0x00007ffff5b3353f in IA__g_signal_emit_by_name (instance=0x7fffef09d8d0,
detailed_signal=0x7fffef4c0630 "dyn-patch-changed")
at /tmp/glib2.0.f24606/glib2.0-2.16.6/gobject/gsignal.c:2267
#5 0x00007fffef4bfabb in ?? ()
from /usr/lib/gtk-2.0/modules/libglobalmenu-gnome.so
#6 0x00007ffff5481adb in g_timeout_dispatch (source=0x7fffedd35d80,
callback=0, user_data=0x7ffff44809a8)
at /tmp/glib2.0.f24606/glib2.0-2.16.6/glib/gmain.c:3446
#7 0x00007ffff5481384 in g_main_dispatch (context=0x7ffff7ee39c0)
at /tmp/glib2.0.f24606/glib2.0-2.16.6/glib/gmain.c:2012
#8 IA__g_main_context_dispatch (context=0x7ffff7ee39c0)
at /tmp/glib2.0.f24606/glib2.0-2.16.6/glib/gmain.c:2564
#9 0x00007ffff5484695 in g_main_context_iterate (context=0x7ffff7ee39c0,
block=0, dispatch=1, self=<value optimized out>)
at /tmp/glib2.0.f24606/glib2.0-2.16.6/glib/gmain.c:2645
#10 0x00007ffff5484b7b in IA__g_main_context_iteration (
context=0x7ffff7ee39c0, may_block=0)
at /tmp/glib2.0.f24606/glib2.0-2.16.6/glib/gmain.c:2708
#11 0x0000000000db90a7 in base::MessagePumpForUI::RunWithDispatcher (
this=0x7ffff7ed81e0, delegate=0x7fffffffcda0, dispatcher=0x0)
at base/message_pump_glib.cc:195
#12 0x0000000000db9a21 in base::MessagePumpForUI::Run (this=0x7ffff7ed81e0,
delegate=0x7fffffffcda0) at ./base/message_pump_glib.h:59
#13 0x0000000000d6dc5f in MessageLoop::RunInternal (this=0x7fffffffcda0)
at base/message_loop.cc:204
#14 0x0000000000d6dc7f in MessageLoop::RunHandler (this=0x7fffffffcda0)
at base/message_loop.cc:176
#15 0x0000000000d6dcbb in MessageLoopForUI::Run (this=0x7fffffffcda0,
dispatcher=0x0) at base/message_loop.cc:611
#16 0x000000000045f9c0 in RunUIMessageLoop (browser_process=0x7ffff7ee1000)
at chrome/browser/browser_main.cc:183
#17 0x0000000000461430 in BrowserMain (parameters=...)
at chrome/browser/browser_main.cc:1215
#18 0x0000000000401b1d in ChromeMain (argc=1, argv=0x7fffffffe518)
at chrome/app/chrome_dll_main.cc:831
#19 0x0000000000402ebf in main (argc=1, argv=0x7fffffffe518)
at chrome/app/chrome_exe_main_gtk.cc:50
In short, there's a lot more work to this than just using a GtkMenuBar.
,
May 19 2010
It sounds like Ubuntu is moving to a different model, where the menu is constructed via a dbus API. I think perhaps we should wait until we understand the requirements before we spend too much time on it.
,
May 21 2010
globalmenu is also planning to move back to a dbus API. I hope Ubuntu will contribute to globalmenu instead of starting a new project.
,
May 21 2010
evan : Ubuntu is not moving to a different model, they are extending the current model. gnome2-globalmenu uses a dbus-API already, and Ubuntu is using the existing code, as a starting point. I see no reason to believe that implementations for the current gnome2-globalmenu will not work perfectly in the new ubuntu global menu. estade: chcke to make sure that you are using the correct version of vala. With the correct versions of both vala and gnome2-globalmenu, if you have a properly functioning GtkMenuBar, it will work in globalmenu. If your GtkMenuBar isn't working with globalmenu, it probably isn't working correctly without global menu.
,
Jun 25 2010
Ideally chromium should draw the exact same menus as it does in OSX. also reported at: https://bugs.launchpad.net/chromium-browser/+bug/598534
,
Aug 15 2010
Canonical has added appmenu support for KDE applications, and the list of compatible browsers should now include Epiphany, Midori, Konqueror, ReKonq, and Arora.
,
Sep 2 2010
I would say now that Ubuntu appmenu-gtk module is working quite fine and there dont seem to be any major changes coming in it. so chromium should now support it really :)
,
Nov 11 2010
Canonical has announced that Ubuntu 11.04 will ship a global menu default. http://www.markshuttleworth.com/ Canonical is attempting to hire engineers to make LibreOffice compatible with the Unity global menu bar. Plus if it helps, I literally had a dream that Chromium worked with my global menu, and it was really exciting, I was bummed when I woke up.
,
Jan 27 2011
Ubuntu Unity works with Chrome, properly detecting it and allowing for it to be pinned much like Windows 7's taskbar, but when the GTK window decorations are disabled in Chrome Unity gets confused. Chrome will start maximized with two pairs of titlebar buttons (one on the Chrome UI, other on the top Unity bar). When you restore Chrome it has a native top border, with again a second pair of title bar buttons. It would be nice if the following changes could be made: 1) When restoring the Chrome window, it forces the border-less state. 2) When maximizing Chrome, it'll hide its own title bar buttons if running Unity or some other globalmenu thing. Also, like globalmenu (maybe it's what unity uses?) the menu bar is displayed on the top bar. However Chrome only has a File > Exit option (I assume Unity is generating this menu since it can't find one). It would be nice if the Tools menu could appear here and be hidden on the main Chrome window somehow.
,
Apr 6 2011
Natty is coming up. Need to check feasibility and either implement or wontfix if this is impossible. Hopefully, this can get done by Mstone-12. Has to happen before Mstone-13.
,
Apr 11 2011
Starting with r81170, there's an "Experimental GNOME menu bar support" in about:flags for people who want to watch this feature while it's being developed.
,
Apr 11 2011
The following revision refers to this bug:
http://src.chromium.org/viewvc/chrome?view=rev&revision=81170
------------------------------------------------------------------------
r81170 | erg@google.com | Mon Apr 11 15:53:36 PDT 2011
Changed paths:
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/about_flags.cc?r1=81170&r2=81169&pathrev=81170
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/generated_resources.grd?r1=81170&r2=81169&pathrev=81170
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_window_gtk.cc?r1=81170&r2=81169&pathrev=81170
A http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_menu_bar.cc?r1=81170&r2=81169&pathrev=81170
A http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_menu_bar.h?r1=81170&r2=81169&pathrev=81170
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_window_gtk.h?r1=81170&r2=81169&pathrev=81170
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/chrome_browser.gypi?r1=81170&r2=81169&pathrev=81170
M http://src.chromium.org/viewvc/chrome/trunk/src/ui/base/models/accelerator_gtk.h?r1=81170&r2=81169&pathrev=81170
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/chrome_switches.cc?r1=81170&r2=81169&pathrev=81170
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/chrome_switches.h?r1=81170&r2=81169&pathrev=81170
GTK: Implement rough global menu support behind an about:flags flag.
This is a super early first cut of global menu support. It works by creating a GtkMenuBar inside chrome, attaching it to the widget hierarchy and then never showing it. This is sufficient for global menu support to detect the menu, at least on the Natty betas.
There's a lot to do before this is considered done. I haven't added Bookmark and History menus, which will need custom handling to keep state up to date with the main window. Some items may need to be moved from one menu to another to fit with Linux conventions.
Contains a bunch of new strings for global menu support. These need to go in before the M12 branch point. (I can iterate on the design afterwards; strings need translation.)
BUG= 30213
TEST=Open a window on Unity. A minimal menu is in the menu bar.
Review URL: http://codereview.chromium.org/6812037
------------------------------------------------------------------------
,
Apr 12 2011
A Bookmarks Menu should definitely be added to the global menu. On a side note, awesome work. I never thought this would get fixed :-)
,
Apr 15 2011
This simply isn't going to be done by Monday so this isn't making it into M12. The history menu still isn't done and I haven't even started on the bookmarks menu. The current state (with r81170 behind an about:flags) will still be in there, but I'm going to hold off on submitting http://codereview.chromium.org/6840068/ until after the branch point because I definitely want multiple dev channels to make sure I haven't introduced any browser crashes. fta may backport it into the Ubuntu chromium-browser's Mstone-12 release if I can get it stable enough.
,
Apr 17 2011
If we are going to have a global menu for chrome, could we also have an option to hide the wrench icon? That would be icing on the cake.
,
Apr 18 2011
I totally agree. That is needed (but it should be automatic when using a global menu).
,
Apr 18 2011
Hiding the wrench won't happen. 1) We can't detect whether we're showing the global menu. We always construct a hidden menu bar when the flag is turned on. If there's a gtk module that reads that information, great, but we can't detect that. 2) When the mac people ran into this, the UI designers made a decision that the wrench menu would always be shown.
,
Apr 18 2011
But it would look much cleaner without. Just saying.
,
Apr 18 2011
What about adding an about:flags hidden setting for showing the wrench or not? So distributors could also set it on/off by default or not.
,
Apr 26 2011
The following revision refers to this bug:
http://src.chromium.org/viewvc/chrome?view=rev&revision=83035
------------------------------------------------------------------------
r83035 | erg@google.com | Tue Apr 26 10:33:53 PDT 2011
Changed paths:
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/bookmarks/bookmark_utils_gtk.cc?r1=83035&r2=83034&pathrev=83035
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_util.h?r1=83035&r2=83034&pathrev=83035
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/generated_resources.grd?r1=83035&r2=83034&pathrev=83035
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_window_gtk.cc?r1=83035&r2=83034&pathrev=83035
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_menu_bar.cc?r1=83035&r2=83034&pathrev=83035
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_menu_bar.h?r1=83035&r2=83034&pathrev=83035
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/gtk_util.cc?r1=83035&r2=83034&pathrev=83035
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/chrome_browser.gypi?r1=83035&r2=83034&pathrev=83035
A http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_history_menu.h?r1=83035&r2=83034&pathrev=83035
A http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_history_menu.cc?r1=83035&r2=83034&pathrev=83035
GTK: Add Recently Closed tabs to the History menu in the global menu bar.
This is mostly a straight port of the OSX implementation in
history_menu_bridge.mm. This patch only handles the "Recently Closed" portion
of the history menu and leaves accessing the HistoryService for the "Most
Visited" sites to a future patch.
Attempts to port the corresponding unit tests (history_menu_bridge_unittest.mm)
have ended in frustration. There's some very weird timing issues that make
anything dealing with menus hard to not be flaky. *cry*
BUG= 30213
TEST=Open some windows, close some windows. There's Recently Closed entries in the menu bar on Natty Narwhal.
Review URL: http://codereview.chromium.org/6840068
------------------------------------------------------------------------
,
Apr 26 2011
The following revision refers to this bug:
http://src.chromium.org/viewvc/chrome?view=rev&revision=83069
------------------------------------------------------------------------
r83069 | erg@google.com | Tue Apr 26 13:59:17 PDT 2011
Changed paths:
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_history_menu.cc?r1=83069&r2=83068&pathrev=83069
GTK: Compile fix for Natty in history menu code
(Got lost in the merging)
BUG= 30213
TEST=compiles on natty
Review URL: http://codereview.chromium.org/6904031
------------------------------------------------------------------------
,
Apr 29 2011
The following revision refers to this bug:
http://src.chromium.org/viewvc/chrome?view=rev&revision=83533
------------------------------------------------------------------------
r83533 | erg@google.com | Fri Apr 29 10:17:40 PDT 2011
Changed paths:
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_menu_bar.cc?r1=83533&r2=83532&pathrev=83533
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/history/top_sites.h?r1=83533&r2=83532&pathrev=83533
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_history_menu.h?r1=83533&r2=83532&pathrev=83533
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_history_menu.cc?r1=83533&r2=83532&pathrev=83533
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/history/top_sites.cc?r1=83533&r2=83532&pathrev=83533
GTK: Query TopSites for the Most Visited pages and populate fill in the global History menu.
Using TopSites means we'll only get updated on New Tab commands which will kick
off the updating procedure, but this should be much less computation heavy than
rebuilding on every history commit.
BUG= 30213
TEST=The Most Visited section on the History menu in the global menu bar is filled with the users TopSites, respecting banned websites, etc.
Review URL: http://codereview.chromium.org/6901110
------------------------------------------------------------------------
,
May 10 2011
The following revision refers to this bug:
http://src.chromium.org/viewvc/chrome?view=rev&revision=84860
------------------------------------------------------------------------
r84860 | erg@google.com | Tue May 10 14:35:52 PDT 2011
Changed paths:
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_menu_bar.cc?r1=84860&r2=84859&pathrev=84860
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_menu_bar.h?r1=84860&r2=84859&pathrev=84860
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/chrome_browser.gypi?r1=84860&r2=84859&pathrev=84860
A http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_bookmark_menu.h?r1=84860&r2=84859&pathrev=84860
A http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_bookmark_menu.cc?r1=84860&r2=84859&pathrev=84860
GTK: Implement the global bookmarks menu.
BUG= 30213
TEST=The bookmarks menu under Unity is populated with the user's bookmarks.
Review URL: http://codereview.chromium.org/6980011
------------------------------------------------------------------------
,
May 10 2011
The following revision refers to this bug:
http://src.chromium.org/viewvc/chrome?view=rev&revision=84875
------------------------------------------------------------------------
r84875 | erg@google.com | Tue May 10 15:11:15 PDT 2011
Changed paths:
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_bookmark_menu.cc?r1=84875&r2=84874&pathrev=84875
GTK: Hardy build fix for r84860.
(Aren't we supposed to be deprecating that?)
BUG= 30213
TEST=copmiles
Review URL: http://codereview.chromium.org/6982010
------------------------------------------------------------------------
,
May 10 2011
The following revision refers to this bug:
http://src.chromium.org/viewvc/chrome?view=rev&revision=84887
------------------------------------------------------------------------
r84887 | erg@google.com | Tue May 10 16:03:43 PDT 2011
Changed paths:
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_bookmark_menu.cc?r1=84887&r2=84886&pathrev=84887
GTK: Look up newer menu symbols with older GTK+ versions.
This conditionally compiles out the dlsym calls when built with newer GTKs.
BUG= 30213
TEST=none
Review URL: http://codereview.chromium.org/7002014
------------------------------------------------------------------------
,
May 13 2011
The following revision refers to this bug:
http://src.chromium.org/viewvc/chrome?view=rev&revision=85330
------------------------------------------------------------------------
r85330 | erg@google.com | Fri May 13 14:47:40 PDT 2011
Changed paths:
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/about_flags.cc?r1=85330&r2=85329&pathrev=85330
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/generated_resources.grd?r1=85330&r2=85329&pathrev=85330
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_window_gtk.cc?r1=85330&r2=85329&pathrev=85330
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_menu_bar.cc?r1=85330&r2=85329&pathrev=85330
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/chrome_switches.cc?r1=85330&r2=85329&pathrev=85330
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/chrome_switches.h?r1=85330&r2=85329&pathrev=85330
GTK: Bring global menu out of about:flags.
BUG= 30213
TEST=memory bots, since they're now running w/ the code on.
Review URL: http://codereview.chromium.org/6973037
------------------------------------------------------------------------
,
May 13 2011
The following revision refers to this bug:
http://src.chromium.org/viewvc/chrome?view=rev&revision=85341
------------------------------------------------------------------------
r85341 | rohitrao@chromium.org | Fri May 13 15:44:58 PDT 2011
Changed paths:
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/about_flags.cc?r1=85341&r2=85340&pathrev=85341
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/generated_resources.grd?r1=85341&r2=85340&pathrev=85341
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_window_gtk.cc?r1=85341&r2=85340&pathrev=85341
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_menu_bar.cc?r1=85341&r2=85340&pathrev=85341
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/chrome_switches.cc?r1=85341&r2=85340&pathrev=85341
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/chrome_switches.h?r1=85341&r2=85340&pathrev=85341
Revert 85330 - GTK: Bring global menu out of about:flags.
BUG= 30213
TEST=memory bots, since they're now running w/ the code on.
Review URL: http://codereview.chromium.org/6973037
TBR=erg@google.com
Review URL: http://codereview.chromium.org/7011052
------------------------------------------------------------------------
,
May 23 2011
Hopefully, the change to enable it will stick this time.
,
May 23 2011
The following revision refers to this bug:
http://src.chromium.org/viewvc/chrome?view=rev&revision=86328
------------------------------------------------------------------------
r86328 | erg@google.com | Mon May 23 12:53:23 PDT 2011
Changed paths:
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/about_flags.cc?r1=86328&r2=86327&pathrev=86328
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/generated_resources.grd?r1=86328&r2=86327&pathrev=86328
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/browser_window_gtk.cc?r1=86328&r2=86327&pathrev=86328
A http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_menu_owner.h?r1=86328&r2=86327&pathrev=86328
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_menu_bar.cc?r1=86328&r2=86327&pathrev=86328
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_menu_bar.h?r1=86328&r2=86327&pathrev=86328
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_history_menu.h?r1=86328&r2=86327&pathrev=86328
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/chrome_switches.cc?r1=86328&r2=86327&pathrev=86328
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_bookmark_menu.h?r1=86328&r2=86327&pathrev=86328
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_history_menu.cc?r1=86328&r2=86327&pathrev=86328
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/ui/gtk/global_bookmark_menu.cc?r1=86328&r2=86327&pathrev=86328
M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/chrome_switches.h?r1=86328&r2=86327&pathrev=86328
GTK: Take 2: Bring global menu out of about:flags.
This makes some substantial changes to
1) The ownership model needed to change slightly; Global{Bookmark,History}Menu needed to own its GtkMenu due to timing issues. (The other possible way to do this (use gtk_widget_destroyed to NULL out the reference) was discussed and rejected in a similar recent code review).
2) The first connection to the TabRestoreService needs to happen lazily. While this doesn't appear to have any affect during normal startup, it breaks the majority of browser, ui and unit tests that depend on the TabRestoreService because they all depend on controlling the loading state. We can't use the OnShow/PostTask method (see previous CL) so connect to the GtkMenuItem's activate signal.
BUG= 30213
TEST=ui_tests and browser_tests pass
Review URL: http://codereview.chromium.org/7017028
------------------------------------------------------------------------
,
Oct 18 2011
Some items are missing from the global menu, like File > Quit, or Help > About.
,
Oct 13 2012
This issue has been closed for some time. No one will pay attention to new comments. If you are seeing this bug or have new data, please click New Issue to start a new bug.
,
Mar 10 2013
,
Mar 13 2013
|
|||||||||||||||
| ► Sign in to add a comment | |||||||||||||||