[KWin Quest. - Update] - KWin authorize external docks to manipulate tasks and windows

Michail Vourlakos mvourlakos at gmail.com
Sat Apr 22 16:42:02 UTC 2017

On 21/04/2017 10:42 μμ, Martin Gräßlin wrote:
> Am 2017-04-21 15:05, schrieb Michail Vourlakos:
>> Following the previous discussion concerning this topic:
>> https://www.mail-archive.com/plasma-devel@kde.org/msg62432.html
>> https://www.reddit.com/r/kde/comments/668yul/common_developer_forum_for_docks_wayland_case/?st=j1ru5ogg&sh=5771f221 
>> Based on the latest information, external docks can use the same
>> interface plasmashell does in order to achieve this goal. But based on
>> the discussions I am not persuaded that all the people involved have
>> something concrete and specific for the future. Investing time and
>> commitment in something that will die soon in the future is not the
>> best way to proceed in my opinion.
>> What as a Latte developer would like to know is if this is considered
>> a feasible use case for the plasma wayland branch and how the plasma
>> community would like to handle it.
> As I have said before I don't give any guarantees on whether the 
> interfaces
> which could be used currently, will be available to 3rd party in the 
> future.
> Like David said we don't have a concrete plan for that and due to that 
> you
> won't get any specific answer. I don't want to be responsible if it 
> breaks so
> I tell you "it might break, no guarantee".
this is ok Martin

> There is one thing which I can guarantee: you won't get any Latte dock
> specific changes into KWin. When you still based your work on Plasma 
> and Plasma
> devs would have said "yeah, that makes sense" adjustments to the 
> handling would
> have been possible. But the protocol we have is designed only for the 
> use cases
> of Plasma. This is reflected in the naming of the interfaces calling them
> PlasmaShellSurface and PlasmaWindowManagement. Anything that is not 
> going to be
> used by Plasma won't have a chance to be added to those protocols.

I dont think we need any Latte specific code in kwin. Latte is using 
just two visibility modes from what kwin provides "AlwaysVisible"(in 
order to update the struts) and "WindowsGoBelow". Almost all modes 
provided by Latte are just a "WindowsGoBelow" panel window that just 
updates its window mask when needed.

The decision for Latte to live outside plasmashell it was very difficult 
for me Martin, but on the other hand it was a technical one. It was 
obvious from the first patches which I tried to get into panelview that 
we were trying to combine to different design approaches, one of plasma 
and one of nowdock (back then). I dont say this with hard feelings but 
as a simple fact. Latte focuses in a very specific user case(simple 
user, fancy interface) and is used only on desktops. Plasma panels on 
the other hand have a much broader audience both on users and devices 

Just a few statements from the Latte developement team...
We try to use only kde frameworks and plasma libraries, and this is a 
strict design decision for us as we are calling ourselves kde. We dont 
want to break kwin experience in any means, if that happens we consider 
it a bug and regression that should fixed. The Latte code stays 
intentionally close to plasmashell in many parts and we dont hide it, 
there is plasma devs blood and commitment that we are using in many 
parts of our code and we are grateful for this (this helps us to follow 
bug fixes of course and discover bug fixes faster that influence both 

In the very rare case that we want something to be added in kwin, we 
will communicate first the plasma devs and if they want that feature we 
will implement it first for plasmashell.

> If there were cross-desktop specific dock protocols we could talk 
> about adding
> support for it. But I would be very reluctant. I don't want the 
> cross-desktop
> dock mess we have on X11. On X11 all docks which are "cross-desktop" 
> are broken or
> are breaking the desktop environment they are running in. None uses 
> KWin's screen
> edge auto-hide handling, none uses activities, etc. etc. In many cases 
> they are
> affectively and knowingly breaking window managers. This is something 
> I don't want
> to see on Wayland. I don't think that it is possible to have cross 
> desktop docks, be
> it X11 or Wayland. Doesn't matter. The DEs are too different to make 
> it work.
> You have the choice of having a spec which is so vague that all 
> desktops are covered
> or one which is too limiting by using the least common denominator. 
> NETWM which is used
> by X11 is the first case and thus it cannot work. One way for virtual 
> desktops? No, there
> are two! And now docks start to break.
> So this is really not a Wayland thing as you are putting it on your 
> reddit thread.
> It's just that those working on Wayland now have the chance to fix the 
> mess the
> people 25 years ago created.
> Also I doubt that there will ever be a cross desktop Dock protocol. I 
> don't think
> any DE which develops a Wayland compositor is interested in a cross 
> desktop
> Dock protocol.

pretty clear... either way I dont see any interest from other dock 
developers for this. we can consider it a dead
end. The wayland future is pretty clear that docks will be implemented 
for specific DEs. In my opinion this makes it even more important to be 
able to have plasma specific docks in wayland. (my personal opinion)

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20170422/a6c1c59e/attachment-0001.html>

More information about the Plasma-devel mailing list