GNOME Bugzilla – Bug 739638
Use a popover for the hamburger menu
Last modified: 2016-09-22 22:35:46 UTC
"A header bar menu is contained within a popover." [1] Let's replace the traditional dropdown menu with a modern popover. In particular, this means we need to prune some items from the menu to make room: * New Tab -- this is redundant with the button in the header bar * Undo, redo, cut, copy, paste -- "Header bar menus are not a good choice for performing actions on selected content: when content hasn’t been selected, the menu will contain unhelpful insensitive menu items, and when content has been selected, possible actions will not be advertised." * Close -- "Header bar menus shouldn’t include a close menu item, since this action is already provided by the header bar. It can also be ambiguous as to what a close menu item refers to." We might rename it to Close Tab (since this is what it does), but I don't think it's necessary as it's redundant with the x button on the tabs. Some of the other menu items may optionally be modified to use other UI elements. For example, gedit has buttons for Refresh, Print, and Fullscreen; our menu is missing Fullscreen and needs to add it somehow, and a Print button would work fine for us, although we don't want Refresh in that menu. Christian suggested using a slider with tick marks to control the zoom. My primary concern is that the bookmarks submenu might not translate nicely to a popover, and may require extra effort. [1] https://developer.gnome.org/hig/stable/header-bar-menus.html.en
Part of this look like a duplicate of bug 735727?
(In reply to comment #1) > Part of this look like a duplicate of bug 735727? Certainly a bug we'll need to sort out at the same time.
*** Bug 769625 has been marked as a duplicate of this bug. ***
Hamburger menu mockup at the bottom here: https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/web/web-bookmarks-and-header-bar-wires.png
Created attachment 336109 [details] [review] web-app-utils: Do not copy cookies when creating new web app It breaks Google Inbox, which expects cookies to be present from other Google domains if cookies are also present for Inbox. https://bugzilla.gnome.org/show_bug.cgi?id=771540
Created attachment 336110 [details] [review] Oops, sorry for the mistake above. This implementation is for the mockup posted by Michael.
Created attachment 336111 [details] [review] Implement new Page Menu popover design I messed up twice. Sorry! This one is the patch I was trying to post.
Review of attachment 336111 [details] [review]: ::: src/ephy-header-bar.c @@ +644,3 @@ gtk_image_new_from_icon_name ("open-menu-symbolic", GTK_ICON_SIZE_BUTTON)); gtk_widget_set_valign (button, GTK_ALIGN_CENTER); + g_type_ensure(G_TYPE_THEMED_ICON); Wow, impressed that you figured out you needed this. Do you know why? I'm curious. Also: missing space before opening parentheses ::: src/ephy-window.c @@ +1027,3 @@ + /* Update the zoom level entry in the page menu popover: + * - obtain the popover from the page menu button + * - obtain the box (the first children of the popover) children -> child
Created attachment 336112 [details] Implement new Page Menu popover design (In reply to Michael Catanzaro from comment #8) > Wow, impressed that you figured out you needed this. Do you know why? I'm > curious. > > Also: missing space before opening parentheses Tim suggested that I should use that one. I guess we're not using GThemedIcon anywhere else in code so _get_type() has not been called yet and the type has not been registered with the type system. g_type_ensure() takes care of that. > > ::: src/ephy-window.c > @@ +1027,3 @@ > + /* Update the zoom level entry in the page menu popover: > + * - obtain the popover from the page menu button > + * - obtain the box (the first children of the popover) > > children -> child Oops.