Review Request 113393: Get KPassivePopup positioning in a semi-working state

Alex Merry kde at randomguy3.me.uk
Tue Oct 29 09:05:12 UTC 2013



> On Oct. 29, 2013, 8:09 a.m., Kevin Ottens wrote:
> > Wouldn't moving this class in KNotifications and from there use KWindowSystem be a better fix then?

That would certainly be the easiest way to get a correct implementation, and it would fit conceptually.  The only downside I see is that KPassivePopup acts as a kind of "lightweight" notification mechanism: putting it in KNotifications would prevent anyone from getting the "lightweight" KPassivePopup without also getting the "heavyweight" knotification system.

Either way, I think these changes should be useful for non-X11 systems.  But I can do them as part of a "move to knotifications an implement properly" thing as well.


- Alex


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/113393/#review42578
-----------------------------------------------------------


On Oct. 22, 2013, 9:21 p.m., Alex Merry wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/113393/
> -----------------------------------------------------------
> 
> (Updated Oct. 22, 2013, 9:21 p.m.)
> 
> 
> Review request for KDE Frameworks.
> 
> 
> Repository: kdelibs
> 
> 
> Description
> -------
> 
> Get KPassivePopup positioning in a semi-working state
> 
> Since we cannot use the NETWM stuff from KWindowSystems, we are forced
> to either rely on what Qt can give us or hack in window-system-specific
> code.  This does the former, using QDesktopWidget to calculate the
> default placement of the popup, QWidget to place the popup next to our
> own windows and QWindow for foreign windows.
> 
> Caveats:
> * the docs claim the popup will be placed next to taskbar entries; this
>   is not possible using only what Qt gives us
> * Qt does not provide foreign window geometry on X11, so if you pass a
>   foreign window id you will just get the default placement
> 
> 
> Diffs
> -----
> 
>   tier1/kwidgetsaddons/CMakeLists.txt ea6654d83acb265a87ed21c913a7f799b457ca71 
>   tier1/kwidgetsaddons/src/kpassivepopup.cpp 663f63af413b7660c9c1b21af3e3ae4d7c424bbe 
>   tier1/kwidgetsaddons/tests/kpassivepopuptest.cpp 4e7138523bdbe4166bf0e899d39d9ae1f8b8b447 
> 
> Diff: http://git.reviewboard.kde.org/r/113393/diff/
> 
> 
> Testing
> -------
> 
> Builds.  Test application seems to work as expected (on X11, at least).
> 
> 
> Thanks,
> 
> Alex Merry
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20131029/25a89468/attachment.html>


More information about the Kde-frameworks-devel mailing list