On 01.03.2012 10:09, Julien Danjou wrote:
On Wed, Feb 29 2012, Uli Schlachter wrote:

Having said all that, dodo's titlebar code is just a rewrite of 3.4's titlebars
ontop of master and thus has the same flaws. Since this code isn't in the C
core, it might have more flaws. From a quick look at the code, I have no idea
how the client is made "smaller" so that the titlebar contribute's to the
clients geometry.
In other words: Shouldn't the titlebar in a tiled layout overlap with the bottom
edge of the client north of it? If this is only useful with floating clients,
then I'd give this a NAK.

Ok, it's not that interesting. My original plan IIRC was to add the
possibility for wiboxes to reparent clients and use them as widgets. So
you can just use client as a widget and do "titlebars" that can be any
way you want. :)

Perhaps it shouldn't be made all that flexible for now. Instead some kind of "window container" object is introduced. A client can only have one window container, but a window container gets multiple clients and drawins. Each window gets a geometry relative to the container and lua then has to make sure stuff "works as expected".

Properties like tags, fullscreen, ... are moved from client to window container. Since a client can only have a single client container, all EWMH properties get updated by the values from the container.

(Compared to turning clients into widgets, this actually does not break EWMH properties. Drawins get reparented, too, so that layouts can continue to work, else there would be need for some kind of "this part is invisible" in the widget layout code)


However, since we have way more ideas than code for the titlebar-stuff, this just continues to be an idea. This is just the idea which I think might be easiest to do on the C side. It might even be doable without breaking too much lua by keeping the client object's properties and just transparently redirecting them to the container...

Uli

--
To unsubscribe, send mail to [email protected].

Reply via email to