GNOME Bugzilla – Bug 705909
Add headerbar and set that as titlebar
Last modified: 2013-11-26 06:16:30 UTC
See patches.
Created attachment 251481 [details] [review] Add headerbar and set that as titlebar
Created attachment 251483 [details] [review] Bump GTK requirement
Created attachment 251485 [details] Screenshot
This done in gnome-themes-standard.
Reopened. See: https://wiki.gnome.org/GnomeGoals/HeaderBars Need to port each application to GtkHeaderBar, also application not put a button in the headerbar.
the changes there make gnome-calculator less suitable for non gnome-shell desktops, not sure if those are a target for gnome-calculator though of it it's meant to be a GNOME3 component only
Headerbars don't make applications less suitable for non-gnome-shell desktops.
They make them look and behave differently from everything else, which makes for a less nice user experience...
When 'everything else' is conveniently defined to not include any other gnome applications, sure.
(In reply to comment #8) > They make them look and behave differently from everything else, which makes > for a less nice user experience... I think a screenshot would be helpful here. I'm imagining a horror that would be clearly unacceptable for Ubuntu, but I have no idea what it actually looks like.
Created attachment 261368 [details] What I see For some reason, this patch doesn't work for me... header bars in other apps are working fine, though. Not sure what's wrong.
Created attachment 261370 [details] [review] Bump GTK requirement it requires for close button in headerbar. https://bugzilla.gnome.org/show_bug.cgi?id=705909 Signed-off-by: Yosef Or Boczko <yoseforb@gmail.com>
Created attachment 261371 [details] [review] Add headerbar and set that as titlebar I updated the patch for the last GTK+.
Created attachment 261372 [details] Screenshot - with the last GTK+ from git
Created attachment 261373 [details] [review] Add headerbar and set that as titlebar https://bugzilla.gnome.org/show_bug.cgi?id=705909 Signed-off-by: Yosef Or Boczko <yoseforb@gmail.com>
Comment on attachment 261371 [details] [review] Add headerbar and set that as titlebar This one is good
Created attachment 261391 [details] Screenshot before/after the change That screenshot shows the effect on the patch in an Unity session: - the decoration bar looks different - the title is centered rather than left aligned - the close button is on the wrong side and not styled - the minimize button is missing - the borders are missing Those might looks nice in gnome-shell where the wm configuration/theme making those widget look like normal decoration, that's not the case in other environments though...
(In reply to comment #17) > Created an attachment (id=261391) [details] > Screenshot before/after the change > > That screenshot shows the effect on the patch in an Unity session: > - the decoration bar looks different > - the title is centered rather than left aligned > - the close button is on the wrong side and not styled > - the minimize button is missing > - the borders are missing > > Those might looks nice in gnome-shell where the wm configuration/theme making > those widget look like normal decoration, that's not the case in other > environments though... I guess the theme of Unity still not match to the new stuff in GNOME 3.10. In part of other them it not look bad.
Created attachment 261416 [details] screenshot under xfce That shows what the calculator looks like under xfce after the change...
Created attachment 261417 [details] Screenshot after - on MATE with greybird This how gnome-calculator look on MATE with greybird them - this is theme already match to GNOME 3.10, to the headerbar, so it look good. In other theme it look bad because them still not match to the headerbar.
> I guess the theme of Unity still not match to the new stuff in GNOME 3.10. Why should it? That's my point, Unity, XFCE, KDE, macOS, win32 etc are not going to "update their theme to look like GNOME3", those environments have their identity. Now it's up to app writers to know what environment/users they want to target. It might end up with apps having a GNOME3 and a traditional-desktop-UI (the same way some mobile apps have different different versions for android and iOS)
Created attachment 261419 [details] [review] Bump GTK requirement It requires for close button and for fallback app menu in a headerbar.
Created attachment 261420 [details] [review] Add headerbar and set that as titlebar
(In reply to comment #22) > > I guess the theme of Unity still not match to the new stuff in GNOME 3.10. > > Why should it? That's my point, Unity, XFCE, KDE, macOS, win32 etc are not > going to "update their theme to look like GNOME3", those environments have > their identity. > > Now it's up to app writers to know what environment/users they want to target. > It might end up with apps having a GNOME3 and a traditional-desktop-UI (the > same way some mobile apps have different different versions for android and > iOS) This not right. Unity, XFCE, KDE, macOS, win32 etc will match their theme to match the new widget of GTK+ to their enviroment. Xfce alrady do it (Greybird, Bluebird, Blackbird etc - them look realy good with the headerbar), and other them will going to do it. Part of them still with older version of GTK+, so it will do in more some time, I guess.
Created attachment 261421 [details] Screenshot - with the new fallback app menu in the headerbar I changed the patches to GNOME 3.12, with the new API to move the fallback app menu from the menubar to the headerbar.
> their theme to match the new widget of GTK+ to their enviroment. Can you "theme" things like: - the position of the close button (e.g can you put it on the right under Unity or macOS) - the wm controls to list (e.g GNOME doesn't have a "minimize" control in their wm bar but some other desktops do) - the borders around the windows (or is that under the wm control)?
(In reply to comment #27) > > their theme to match the new widget of GTK+ to their enviroment. > > Can you "theme" things like: > - the position of the close button (e.g can you put it on the right under Unity > or macOS) > - the wm controls to list (e.g GNOME doesn't have a "minimize" control in their > wm bar but some other desktops do) > - the borders around the windows (or is that under the wm control)? Adjusting theme not mean to change the headerbar to be something else, however, this mean to match the headerbar to look good in the enviroment.
> this mean to match the headerbar to look good in the enviroment. I guess it depends of your definition of "to look good". You can tweak the visual, but that doesn't resolve the inconsistency issues. The wm controls are still going to be a different set, placed differently and behaving slightly differently from the wm ones. You might consider that not being a problem, but to those of us using those environment it is one. In any case thanks for the discussions and the updates! I think we basically stated our position and have to agree that we disagree on what makes a good user experience. It's up to the gnome-calculator maintainers to decide what users they are targeting/where they want to direct their software (gcalctool is an old project and it would be a bit sad to see it let down users from other environments though)
(In reply to comment #27) > > their theme to match the new widget of GTK+ to their enviroment. > > Can you "theme" things like: > - the position of the close button (e.g can you put it on the right under Unity > or macOS) > - the wm controls to list (e.g GNOME doesn't have a "minimize" control in their > wm bar but some other desktops do) > - the borders around the windows (or is that under the wm control)? I would have expected you to do some research before you go on GNOME bugzilla to argue against GNOME designs. You can in fact them the position of the close button and the borders (although I don't think anybody has tried to implement traditional window borders with csd). With GTK+ master, the fallback menubar that your calculator screenshot shows can be replaced with a menubutton in the header, easily. At the end of the day, client-side decorations will look slightly different - that didn't stop chrome from becoming a popular browser...
> I would have expected you to do some research before you go on GNOME bugzilla to argue against GNOME designs. - I did look at the API documentation and wiki, as well as tried locally those patches under different environment - I'm not arguing against GNOME designs, they look great under GNOME. I'm trying to have a conversation with application writers about the impact of the changes on their users out of GNOME. - having projects using the GNOME infrastructure doesn't mean that those care only about their users running GNOME. > You can in fact them the position of the close button and the borders (although > I don't think anybody has tried to implement traditional window borders with > csd). With GTK+ master, the fallback menubar that your calculator screenshot > shows can be replaced with a menubutton in the header, easily. right, that's in the most recent screenshot on the bug, that doesn't resolve a lot though (the menu is very discoverable, it's not a menubar for environment that still feature those, etc) > At the end of the day, client-side decorations will look slightly different - > that didn't stop chrome from becoming a popular browser... Right, so it's a choice for app writers to decide if they want their software to look/behave slightly differently, knowing that those sort of issues could push distributors/users to change to use a software that doesn't look different... Oh, and speaking about chrome, they do provide a configuration option to use the wm decoration rather than their csd ones, maybe that's something GNOME applications could be doing as well...
(In reply to comment #30) > You can in fact them the position of the close button and the borders (although > I don't think anybody has tried to implement traditional window borders with > csd). With GTK+ master, the fallback menubar that your calculator screenshot > shows can be replaced with a menubutton in the header, easily. What about the minimize and maximize buttons? That's the only hangup I see.... (In reply to comment #26) > Created an attachment (id=261421) [details] > Screenshot - with the new fallback app menu in the headerbar > > I changed the patches to GNOME 3.12, with the new API > to move the fallback app menu from the menubar to the > headerbar. Ah, that's new. Reading [1], I think we're expected to replace that generic icon with a Calculator one. [1] https://developer.gnome.org/gtk3/unstable/ch01s05.html (In reply to comment #17) > Created an attachment (id=261391) [details] > - the title is centered rather than left aligned Well we're not strictly supposed to be using the name of the application for the title, but the application's current view. I'm not sure if that's actually going to work with most apps... but for Calculator we could display "Basic Mode" or "Programming Mode" pretty easily.
I've put some information about fallback here: https://wiki.gnome.org/HowDoI/ApplicationMenu#Fallback
Created attachment 261473 [details] [review] Fallback app menu: set app icon
Created attachment 261474 [details] [review] Set headerbar title based on calculator mode
Created attachment 261475 [details] [review] Depend on unreleased Vala 0.23 Needed for the GTK+ 3.11.2 bindings.
(In reply to comment #33) > I've put some information about fallback here: > > https://wiki.gnome.org/HowDoI/ApplicationMenu#Fallback A tremendous improvement for shells that don't show the app menu, thanks.
Since the original patch was unreviewed for so long, I'm just going to push, so we can cross this module off the goal list. Sebastien, we've got nearly a year before Ubuntu ships GNOME 3.12, so that's plenty of time to update Ambience. Hopefully GTK will learn to handle maximize and minimize buttons in header bars by then, if it can't do that already (Matthias?). If not, then conditionally hiding the header bar does seem like the best approach. Attachment 261419 [details] pushed as 5f1f8d1 - Bump GTK requirement Attachment 261420 [details] pushed as 116e2bf - Add headerbar and set that as titlebar Attachment 261473 [details] pushed as ae1249e - Fallback app menu: set app icon Attachment 261474 [details] pushed as 9ce7c0f - Set headerbar title based on calculator mode Attachment 261475 [details] pushed as a130055 - Depend on unreleased Vala 0.23
Created attachment 262807 [details] [review] Set the first title of the headerbar With the patches above (which you pushed now to the master branch) when you open gnome-calculator you not see any title.
Review of attachment 262807 [details] [review]: I already pushed the same fix, thanks though. Evidently I should have waited another 35 seconds for your review to come in. :(