Review Request 121856: KWindowSystem import for KDeclarative
Kai Uwe Broulik
kde at privat.broulik.de
Fri Feb 20 13:39:58 UTC 2015
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/121856/
-----------------------------------------------------------
(Updated Feb. 20, 2015, 1:39 nachm.)
Review request for kwin and Plasma.
Changes
-------
Initialize KWindowSystem::self on demand
Only when one of the signals has been connected (eg. you do a property binding to it) it will initialize the whole KWindowSystem stuff. That way you don't get a performance penalty if you just want to use its invokables.
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 (updated)
-----
src/qmlcontrols/CMakeLists.txt 39c39a5
src/qmlcontrols/kwindowsystemplugin/CMakeLists.txt PRE-CREATION
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
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/38c743d0/attachment.html>
More information about the Plasma-devel
mailing list