Google-Apps
Hauptmenü

"Client-Side Window Decorations and misconceptions"

9 Comments -

1 – 9 of 9
Anonymous Anonymous said...

Sorry, but I find Martin's arguments more convincing. Everything you want to achieve through client-side decorations can be done through D-Bus. Expose D-Bus functionalities and let the window manager do whatever it wants to do with the functionalities you export. There's no need for client-side decorations there. You just need to agree on an interface, and let the front-ends developers do what they think to be the best for their environment.

4 May 2010 at 14:32

Blogger Alex Wauck said...

I think there's a bit of confusion of terms here. Client-side windows are not the same thing as client-side window decorations. Qt has had client-side windows for quite some time.

4 May 2010 at 14:38

Blogger Bastien Nocera said...

Anonymous: How would D-Bus integration give you tear-free window resizing?

Alex: Yeah, I completely messed that one up, fixed in the update. Thanks for the notice :)

4 May 2010 at 14:51

Anonymous Anonymous said...

Why do you need client-side window decorations?

The only good example I have read is "to make windows look like Google Chrome".

So why not just add top-level tabs and a "+"-button in the Window Manager and call it a day?

That would probably solve 99.9+% of client side window decoration usage and give you a very simple and consistent way to implement it.

4 May 2010 at 16:13

Blogger Bastien Nocera said...

Anonymous: We need client-side windows for the reasons I listed at the bottom of my blog, and no, adding a "+" button in the frame doesn't solve it either. There's a few more details on the Wiki, as mentioned, and you'll find a number of articles about why window managers suck all around.

4 May 2010 at 16:34

Anonymous Cody Russell said...

Hey guys, I'm the author of the gtk+ branch that implements client-side decorations.

Just to clarify some things, this branch will most definitely not force you to use client-side decorations. gtk+ will continue to work the way it does now as well. There will certainly be some regressions along with some advancements (when this feature is enabled), but I'm happy to work with different application and WM developers to improve that situation.

Some original motivations for this feature were to eventually have a single source of theming a gtk+ (instead of theming the WM and app separately), to possibly support Wayland or something like it, allow the toolkit to do interesting things with the titlebar (e.g., Chrome-like UI as Anonymous suggested), improved resizing so that the window border isn't ahead of the app contents as you resize, a good excuse to finally integrate default RGBA windows in gtk+ ;)

Google has expressed interest in dropping their custom client-side decorations in favor of using the upstream gtk+ one when it lands. I think this is a big win for Gnome/Fedora/Ubuntu, etc, as we can hopefully get nicer integration of Chrome with our desktop environments.

Last Guadec/Akademy in Gran Canaria I talked very briefly to one of the Qt developers from Nokia and he seemed to be interested in the idea, so this may not simply be some gtk+ crack being smoked. ;)

Anyway, I'm happy to talk to people about it further by email or irc if anyone has questions or concerns. I'll probably try to make my own blog post about it sometime as well.

4 May 2010 at 18:21

Anonymous Anonymous said...

@hadess: I've never experienced tearing in Qt/KDE, so I don't know what you're talking about. Something related to GTK+ only maybe ? If so, then as you said, fix your own broken design.

And regarding your answer to the other Anonymous, sorry but even after re-reading your post as well as the wiki, I can't find any valid reason, sorry.

4 May 2010 at 19:42

Anonymous Anonymous said...

besides web browsers which apps would want to do this

"allow the toolkit to do interesting things with the titlebar (e.g., Chrome-like UI as Anonymous suggested)"

"I think this is a big win for Gnome/Fedora/Ubuntu, etc, as we can hopefully get nicer integration of Chrome with our desktop environments."

Instead of apps integrating into DE, force the DE and every other to integrate with Chrome

5 May 2010 at 00:26

Blogger The Madman said...

Blast: somehow I'd managed to take more than 4,096 characters in my argument. Suffice to say I strongly disagree with client-side window decorations.

17 May 2010 at 00:16

You can use some HTML tags, such as <b>, <i>, <a>

This blog does not allow anonymous comments.

Comment moderation has been enabled. All comments must be approved by the blog author.

You will be asked to sign in after submitting your comment.
Please prove you're not a robot