Closed Bug 1498356 Opened 6 years ago Closed 6 years ago

Stop putting the padding and border on -moz-window-titlebar*, and instead put that padding and border on -moz-window-button-box

Categories

(Core :: Widget: Gtk, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla64
Tracking Status
firefox64 --- fixed

People

(Reporter: mconley, Assigned: stransky)

References

Details

Attachments

(2 files, 1 obsolete file)

In bug 1356920, I'm putting the menubar and the tabstrip inside of the titlebar in order to reduce the amount of layout we're doing in script inside of browser-tabsintitlebar.js. While reviewing my patches, dao noticed that there was a gap between the left-most tab and the the edge of the window when maximized on his Linux box. It turns out, this is because of the -moz-window-titlebar / -moz-window-titlebar-maximized appearance we have on the titlebar, which gives it a border that can't be overridden. For an added wrinkle, sometimes we don't want to display the texture of the titlebar, like when we're using lightweight themes. In that case, we remove the -moz-window-titlebar / -moz-window-titlebar-maximized appearance. But then the window control buttons end up getting put up right to the edge of the titlebar. As a possible solution, I suggest we adjust nsNativeThemeGTK so that instead of putting the header bar border (and padding) on -moz-window-titlebar / -moz-window-titlebar-maximized, we instead take that border (and padding) and put it on -moz-window-button-box. That means that the button-box will be inset the right amount in the titlebar, and this will survive even if we remove the -moz-window-titlebar / -moz-window-titlebar-maximized appearance from the titlebar. It also gets rid of the gap on the other side, where the window buttons aren't. This is a proposal, but I want to get a patch up just in case it gets the thumbs up, because I'm trying my best to get bug 1356920 in before the soft freeze.
I suggest to remove the padding/border from -moz-window-titlebar/-moz-window-titlebar-maximized elements and just set that in browser css styles. The titlebar does not look like the native Gtk+ one anyway so let's make it fully compatible with Firefox look instead of mixing Gtk+ themes and Firefox theme here.
Created as https://phabricator.services.mozilla.com/D8529 - it's waiting for some BZ update.
(In reply to Martin Stránský [:stransky] from comment #2) > I suggest to remove the padding/border from > -moz-window-titlebar/-moz-window-titlebar-maximized elements and just set > that in browser css styles. The titlebar does not look like the native Gtk+ > one anyway so let's make it fully compatible with Firefox look instead of > mixing Gtk+ themes and Firefox theme here. The "Firefox look" doesn't expect some particular size of and horizontal space around these buttons, and I think users expect that we follow the OS standard there, as we do on Windows and Mac.
(In reply to Dão Gottwald [::dao] from comment #4) > (In reply to Martin Stránský [:stransky] from comment #2) > > I suggest to remove the padding/border from > > -moz-window-titlebar/-moz-window-titlebar-maximized elements and just set > > that in browser css styles. The titlebar does not look like the native Gtk+ > > one anyway so let's make it fully compatible with Firefox look instead of > > mixing Gtk+ themes and Firefox theme here. > > The "Firefox look" doesn't expect some particular size of and horizontal > space around these buttons, and I think users expect that we follow the OS > standard there, as we do on Windows and Mac. If so I suggest to transfer the border/padding from -moz-window-titlebar/-moz-window-titlebar-maximized to -moz-window-button-box if that helps.
This is based on patch by Mike Conley (:mconley) The left/right toolbox placement can be adjusted later as we know at toolkit level where the buttons are so we can set border/padding accordingly. Depends on D8529
Thanks for taking this on, stransky!
Assignee: nobody → stransky
Attachment #9016464 - Attachment is obsolete: true
Pushed by mconley@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/3df978f11b6d Remove padding/border from -moz-window-titlebar*, r=dao https://hg.mozilla.org/integration/autoland/rev/d2b32aa2055f Move border and padding from -moz-window-titlebar* to -moz-window-button-box on GTK backend, r=dao
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
Depends on: 1498898
Blocks: 1506248
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: