After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 705909 - Add headerbar and set that as titlebar
Add headerbar and set that as titlebar
Status: RESOLVED FIXED
Product: gnome-calculator
Classification: Core
Component: general
git master
Other Linux
: Normal normal
: ---
Assigned To: gcalctool maintainers
gcalctool maintainers
Depends on:
Blocks:
 
 
Reported: 2013-08-13 13:13 UTC by Yosef Or Boczko
Modified: 2013-11-26 06:16 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Add headerbar and set that as titlebar (1.18 KB, patch)
2013-08-13 13:14 UTC, Yosef Or Boczko
none Details | Review
Bump GTK requirement (778 bytes, patch)
2013-08-13 13:14 UTC, Yosef Or Boczko
none Details | Review
Screenshot (45.79 KB, image/png)
2013-08-13 13:17 UTC, Yosef Or Boczko
  Details
What I see (973.01 KB, image/png)
2013-11-24 20:17 UTC, Michael Catanzaro
  Details
Bump GTK requirement (783 bytes, patch)
2013-11-24 20:23 UTC, Michael Catanzaro
none Details | Review
Add headerbar and set that as titlebar (936 bytes, patch)
2013-11-24 20:24 UTC, Yosef Or Boczko
none Details | Review
Screenshot - with the last GTK+ from git (46.41 KB, image/png)
2013-11-24 20:26 UTC, Yosef Or Boczko
  Details
Add headerbar and set that as titlebar (1.15 KB, patch)
2013-11-24 20:27 UTC, Michael Catanzaro
none Details | Review
Screenshot before/after the change (29.36 KB, image/png)
2013-11-25 10:11 UTC, Sebastien Bacher
  Details
screenshot under xfce (13.55 KB, image/png)
2013-11-25 10:43 UTC, Sebastien Bacher
  Details
Screenshot after - on MATE with greybird (14.06 KB, image/png)
2013-11-25 10:52 UTC, Yosef Or Boczko
  Details
Bump GTK requirement (752 bytes, patch)
2013-11-25 11:05 UTC, Yosef Or Boczko
committed Details | Review
Add headerbar and set that as titlebar (987 bytes, patch)
2013-11-25 11:06 UTC, Yosef Or Boczko
committed Details | Review
Screenshot - with the new fallback app menu in the headerbar (27.46 KB, image/png)
2013-11-25 11:11 UTC, Yosef Or Boczko
  Details
Fallback app menu: set app icon (939 bytes, patch)
2013-11-25 18:39 UTC, Michael Catanzaro
committed Details | Review
Set headerbar title based on calculator mode (2.18 KB, patch)
2013-11-25 18:39 UTC, Michael Catanzaro
committed Details | Review
Depend on unreleased Vala 0.23 (708 bytes, patch)
2013-11-25 19:02 UTC, Michael Catanzaro
committed Details | Review
Set the first title of the headerbar (745 bytes, patch)
2013-11-26 02:24 UTC, Yosef Or Boczko
reviewed Details | Review

Description Yosef Or Boczko 2013-08-13 13:13:23 UTC
See patches.
Comment 1 Yosef Or Boczko 2013-08-13 13:14:29 UTC
Created attachment 251481 [details] [review]
Add headerbar and set that as titlebar
Comment 2 Yosef Or Boczko 2013-08-13 13:14:40 UTC
Created attachment 251483 [details] [review]
Bump GTK requirement
Comment 3 Yosef Or Boczko 2013-08-13 13:17:10 UTC
Created attachment 251485 [details]
Screenshot
Comment 4 Yosef Or Boczko 2013-09-02 22:33:39 UTC
This done in gnome-themes-standard.
Comment 5 Yosef Or Boczko 2013-09-30 16:50:41 UTC
Reopened.

See: https://wiki.gnome.org/GnomeGoals/HeaderBars
Need to port each application to GtkHeaderBar, also
application not put a button in the headerbar.
Comment 6 Sebastien Bacher 2013-11-21 11:43:49 UTC
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
Comment 7 Matthias Clasen 2013-11-22 12:00:12 UTC
Headerbars don't make applications less suitable for non-gnome-shell desktops.
Comment 8 Sebastien Bacher 2013-11-22 17:46:18 UTC
They make them look and behave differently from everything else, which makes for a less nice user experience...
Comment 9 Matthias Clasen 2013-11-22 22:44:12 UTC
When 'everything else' is conveniently defined to not include any other gnome applications, sure.
Comment 10 Michael Catanzaro 2013-11-24 19:36:24 UTC
(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.
Comment 11 Michael Catanzaro 2013-11-24 20:17:51 UTC
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.
Comment 12 Michael Catanzaro 2013-11-24 20:23:00 UTC
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>
Comment 13 Yosef Or Boczko 2013-11-24 20:24:15 UTC
Created attachment 261371 [details] [review]
Add headerbar and set that as titlebar

I updated the patch for the last GTK+.
Comment 14 Yosef Or Boczko 2013-11-24 20:26:30 UTC
Created attachment 261372 [details]
Screenshot - with the last GTK+ from git
Comment 15 Michael Catanzaro 2013-11-24 20:27:57 UTC
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 16 Michael Catanzaro 2013-11-24 20:32:05 UTC
Comment on attachment 261371 [details] [review]
Add headerbar and set that as titlebar

This one is good
Comment 17 Sebastien Bacher 2013-11-25 10:11:48 UTC
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...
Comment 18 Yosef Or Boczko 2013-11-25 10:35:47 UTC
(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.
Comment 19 Yosef Or Boczko 2013-11-25 10:38:54 UTC
(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.
Comment 20 Sebastien Bacher 2013-11-25 10:43:48 UTC
Created attachment 261416 [details]
screenshot under xfce

That shows what the calculator looks like under xfce after the change...
Comment 21 Yosef Or Boczko 2013-11-25 10:52:16 UTC
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.
Comment 22 Sebastien Bacher 2013-11-25 10:53:11 UTC
> 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)
Comment 23 Yosef Or Boczko 2013-11-25 11:05:43 UTC
Created attachment 261419 [details] [review]
Bump GTK requirement

It requires for close button and for
fallback app menu in a headerbar.
Comment 24 Yosef Or Boczko 2013-11-25 11:06:14 UTC
Created attachment 261420 [details] [review]
Add headerbar and set that as titlebar
Comment 25 Yosef Or Boczko 2013-11-25 11:09:35 UTC
(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.
Comment 26 Yosef Or Boczko 2013-11-25 11:11:26 UTC
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.
Comment 27 Sebastien Bacher 2013-11-25 11:13:41 UTC
> 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)?
Comment 28 Yosef Or Boczko 2013-11-25 11:17:12 UTC
(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.
Comment 29 Sebastien Bacher 2013-11-25 11:27:29 UTC
> 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)
Comment 30 Matthias Clasen 2013-11-25 11:40:49 UTC
(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...
Comment 31 Sebastien Bacher 2013-11-25 12:24:44 UTC
> 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...
Comment 32 Michael Catanzaro 2013-11-25 15:45:13 UTC
(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.
Comment 33 Matthias Clasen 2013-11-25 16:47:36 UTC
I've put some information about fallback here:

https://wiki.gnome.org/HowDoI/ApplicationMenu#Fallback
Comment 34 Michael Catanzaro 2013-11-25 18:39:31 UTC
Created attachment 261473 [details] [review]
Fallback app menu: set app icon
Comment 35 Michael Catanzaro 2013-11-25 18:39:41 UTC
Created attachment 261474 [details] [review]
Set headerbar title based on calculator mode
Comment 36 Michael Catanzaro 2013-11-25 19:02:05 UTC
Created attachment 261475 [details] [review]
Depend on unreleased Vala 0.23

Needed for the GTK+ 3.11.2 bindings.
Comment 37 Michael Catanzaro 2013-11-26 02:13:33 UTC
(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.
Comment 38 Michael Catanzaro 2013-11-26 02:24:07 UTC
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
Comment 39 Yosef Or Boczko 2013-11-26 02:24:43 UTC
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.
Comment 40 Michael Catanzaro 2013-11-26 06:16:30 UTC
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. :(