D26446: WIP: Port EFfectFrame to a QQuickView
David Edmundson
noreply at phabricator.kde.org
Sun Jan 5 22:11:47 GMT 2020
davidedmundson created this revision.
davidedmundson added a reviewer: KWin.
Herald added a project: KWin.
Herald added a subscriber: kwin.
davidedmundson requested review of this revision.
REVISION SUMMARY
There is now a code path to render a generic QtQuick window via the
effects framework. We can use this as the implementation for the
existing EffectFrame API.
This allows us to get rid of a /lot/ of custom rendering that tangles
it's way through the backend, as well as getting rid of lowlevel usage
of Plasma's FrameSVG classes which may not exist in KF6, using the much
more optimised FrameSVGItem.
Cross fade is now done automatically by IconItem.
EffectFrame::setSelection is deprecated as I had no idea what it was
for, and no-one used it.
WIP as:
- I need a slight mod to hook up the path that allows effects to affect frames.
Not quite sure what level we want to do that.
- Even though this new code is super simple, retrofitting to match the
old API correctly is somewhat challenging. IMHO we should just break things a bit.
TEST PLAN
Ran flipswitch and windowgeometry effects, on both xrender and opengl.
Places that this is used:
- invert
- desktop grid
- flipswitch
- mouseclick
- presentwindows
- showfps
- windowgeometry
REPOSITORY
R108 KWin
BRANCH
davidedmundson/qtquick_effectframe
REVISION DETAIL
https://phabricator.kde.org/D26446
AFFECTED FILES
.activation.cpp.kate-swp
.clang-format
CMakeCache.txt
CMakeLists.txt
effects.cpp
effects.h
libkwineffects/kwineffectquickview.cpp
libkwineffects/kwineffectquickview.h
libkwineffects/kwineffects.cpp
libkwineffects/kwineffects.h
plugins/scenes/opengl/scene_opengl.cpp
plugins/scenes/opengl/scene_opengl.h
plugins/scenes/qpainter/scene_qpainter.cpp
plugins/scenes/qpainter/scene_qpainter.h
plugins/scenes/xrender/scene_xrender.cpp
plugins/scenes/xrender/scene_xrender.h
qml/CMakeLists.txt
qml/frame/CMakeLists.txt
qml/frame/frames.qrc
qml/frame/noframe.qml
qml/frame/styledframe.qml
qml/frame/unstyledframe.qml
scene.cpp
scene.h
To: davidedmundson, #kwin
Cc: kwin, LeGast00n, The-Feren-OS-Dev, sbergeron, jraleigh, zachus, fbampaloukas, GB_2, mkulinski, ragreen, jackyalcine, iodelay, crozbo, bwowk, ZrenBot, ngraham, alexeymin, himcesjf, lesliezhai, ali-mohamed, hardening, romangg, jensreuterberg, abetts, sebas, apol, ahiemstra, mart
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kwin/attachments/20200105/41ec67ed/attachment.html>
More information about the kwin
mailing list