Review Request 121856: KWindowSystem import for KDeclarative

Thomas Lübking thomas.luebking at gmail.com
Fri Feb 20 12:49:56 UTC 2015


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/121856/#review76333
-----------------------------------------------------------


Saw it. No veto ;-)
Just one thing for consideration.

(I did regard the virtual desktop attribute, but that's oc. not supported on many other platforms, so unlikely a candidate for QML::Window)


src/qmlcontrols/kwindowsystemplugin/kwindowsystemproxy.cpp
<https://git.reviewboard.kde.org/r/121856/#comment52598>

    notice that connecting to KWindowSystem::self will create a instance, start eventfiltering, blablablah - ie. it causes some overhead (as compared to just setting some attributes)
    
    No idea whether that's relevant or can be prevented (ie. only connect if the signal is actually required by the QML side) - just wanted to point that out.


- Thomas Lübking


On Feb. 20, 2015, 11:34 vorm., Kai Uwe Broulik wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/121856/
> -----------------------------------------------------------
> 
> (Updated Feb. 20, 2015, 11:34 vorm.)
> 
> 
> Review request for kwin and Plasma.
> 
> 
> Repository: kdeclarative
> 
> 
> Description
> -------
> 
> This is a thin proxy around KWindowSystem exposing most of its methods to qml via KWindowSystem item in an org.kde.kwindowsystem import.
> 
> It uses QWindow instead of WId parameters so you can just pass a qml Item, such as a Plasma Dialog as parameter for ease of use (and so you cannot mess with others windows without effort, also I don't know what "WId" would translate to anyway). It omits all those methods that return WId/QWindow as I don't know how expensive QWindow::fromWinId is or who takes ownership of it. We need to decide which methods make sense in this import.
> 
> Methods that have signals and don't take parameters are turned into full-fledged properties (like currentDesktop, numberOfDesktops, etc) and the rest stays Q_INVOKABLE.
> 
> 
> Diffs
> -----
> 
>   src/qmlcontrols/kwindowsystemplugin/kwindowsystemplugin.h PRE-CREATION 
>   src/qmlcontrols/kwindowsystemplugin/kwindowsystemplugin.cpp PRE-CREATION 
>   src/qmlcontrols/kwindowsystemplugin/kwindowsystemproxy.h PRE-CREATION 
>   src/qmlcontrols/kwindowsystemplugin/kwindowsystemproxy.cpp PRE-CREATION 
>   src/qmlcontrols/kwindowsystemplugin/qmldir PRE-CREATION 
>   src/qmlcontrols/CMakeLists.txt 39c39a5 
>   src/qmlcontrols/kwindowsystemplugin/CMakeLists.txt PRE-CREATION 
> 
> Diff: https://git.reviewboard.kde.org/r/121856/diff/
> 
> 
> Testing
> -------
> 
> The properties work and change accordingly (compositing active signal doesn't seem to be emitted by KWindowSystem in the first place, at least Ctrl+Shift+F12 doesn't make it change), the forceActivateWindow method works for Review 121807
> 
> 
> Thanks,
> 
> Kai Uwe Broulik
> 
>

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


More information about the Plasma-devel mailing list