[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-panel-devel
Subject:    Re: Focus stealing prevention and SNI conflicts
From:       Thomas =?UTF-8?B?TMO8Ymtpbmc=?= <thomas.luebking () gmail ! com>
Date:       2011-07-23 12:21:06
Message-ID: 20110723142106.64235442 () gmail ! com
[Download RAW message or body]

Am Sat, 23 Jul 2011 09:16:06 +0200
schrieb Martin Gräßlin <mgraesslin@kde.org>:

> I think the problem would go away if all windows opened from a SNI
> context menu are transient to Plasma. So how do we either
> a) communicate to the applications that they should set the Plasma's
> WID as its parent or b) let Plasma open the windows through the SNI
> API?

c) have SNI act on mb release (to pass the timer test)
d) have SNI release focus before doing anything - why
precisely does it require input focus at all and can we at least assume
that it's safe to drop it eg. once a qmenu has popped up?

IMO any way to make "the window" transient for plasma is suboptimal.

a) it's a lie. period. at best an abuse ;-)

b) while certainly possible the pass this along the dbus call of the
action it requires support from both sides (across toolkits, DE
supporters) as well as a usable leader WId and is quite system specific
(focus stealing prevention is not NETWM compliant, sending a WId to be
transient for requires NETWM as well as "a WId" -> no Win/Mac - meego?
And nobody knows about wayland input handling ;-)

c) every application has to do it by itself, yesno? (otherwise you'd
have to eventFilter() the application on QEvent::Show for
QWidget::isWindow(), trigger the client side SNI slot, wait
<some_time_tm> before removing the eventfilter, assuming that follow
client maps are not caused by SNI... ... ...  =P

d) it should break with the plasma-netbook shell, yesno?
(transient windows cannot go below their leader)

Cheers,
Thomas
_______________________________________________
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic