Commit graph

11657 commits

Author SHA1 Message Date
Martin Gräßlin
f5340a27c5 [kwin/tabbox] Drop define TABBOX_KCM
No longer needed as the preview does not include the tabboxhandler
any more.
2013-12-12 11:29:25 +01:00
Martin Gräßlin
f63797d3b1 [kcm-kwintabbox] Fix icon in preview 2013-12-12 11:26:57 +01:00
Martin Gräßlin
058a5da2dd [kcm-kwintabbox] Adjust Preview to the new Switcher API
Needs to implement a dummy switcher item. As the root item of the
switchers are no longer QQuickItem derived it cannot use a QQuickView.
Instead a component gets created and the switcher is just shown on the
primary screen. It's a more appropriate preview now which is not
put into a dialog window.

To make it more realistic (and to be able to dismiss it) the preview
grabs keyboard and mouse and closes itself if escape, return, enter or
space is pressed.

As well clicking outside the preview window closes the preview.
2013-12-12 11:19:16 +01:00
Martin Gräßlin
2e78144a14 [kcm-kwintabbox] Add clipTo property to thumbnailitem implementation 2013-12-12 10:10:47 +01:00
Martin Gräßlin
f07209d685 [kwin/tabbox] Remove no longer needed tabbox.qml and ShadowedSvgItem.qml 2013-12-12 09:39:56 +01:00
Martin Gräßlin
af639d90e7 [kwin/tabbox] Adjust thumbnail desktop switcher to API changes 2013-12-12 09:37:30 +01:00
Martin Gräßlin
2f513476a6 [kwin/tabbox] Adjust informative desktop switcher to API change
Note: icon list seems broken
2013-12-12 09:37:30 +01:00
Martin Gräßlin
a24218a9a1 [kwin/tabbox] Drop window strip switcher
No longer needed in a Plasma2 world as the components have a thumbnail
component, so the hack to go over KWin to render the thumbnails is no
longer needed.

Approved by Aaron on mailinglist:
https://mail.kde.org/pipermail/active/2013-December/007254.html
2013-12-12 09:37:30 +01:00
Martin Gräßlin
5e41e13a39 [kwin/tabbox] Adjust icon tabboxes to API changes 2013-12-12 09:37:30 +01:00
Martin Gräßlin
a23b73cb02 [kwin/tabbox] Adjust sidebar to API changes 2013-12-12 09:37:30 +01:00
Martin Gräßlin
53e8aa1238 [kwin/tabbox] Adjust thumbnails to API change 2013-12-12 09:37:30 +01:00
Martin Gräßlin
f6eb594c2d [kwin/tabbox] Adjust Grid to API change 2013-12-12 09:37:30 +01:00
Martin Gräßlin
1c953821c1 [kwin/tabbox] Adjust Compact to API change 2013-12-12 09:37:30 +01:00
Martin Gräßlin
1deb986870 [kwin/tabbox] Fix naming of Text only tabbox 2013-12-12 09:37:30 +01:00
Martin Gräßlin
2448b8d4b2 [kwin/tabbox] Adjust text tabbox to new API 2013-12-12 09:37:30 +01:00
Martin Gräßlin
4ff2a5ea3e [kwin/tabbox] Informative qml uses new Switcher item and PlasmaCore.Dialog
Reference implementation for the adjustments to use a PlasmaCore.Dialog
and the new required switcher item.
2013-12-12 09:37:29 +01:00
Martin Gräßlin
d536532f66 [kwin/tabbox] Use a QmlComponent instead of a QQuickView for TabBox
By not using a QQuickView it becomes possible to just use a
PlasmaCore.Dialog or a Quick.Window in the TabBox qml and thus it's
possible to simplify the qml code.

To support this a new SwitcherItem is introduced and exported to QML.
It's a simple QObject providing all the properties which used to be
exported to the root context. A declarative TabBox is expected to
use one of these items. The C++ side finds the Switcher and for that
supports the case that the SwitcherItem is the rootItem or a child
item.

A declarative TabBox has also to create a QQuickWindow, e.g. a
PlasmaCore.Dialog. The visibility of that window should be controlled
through the visible property on the SwitcherItem. The underlying C++
implementation assumes that a TabBox only uses one window (it needs to
get destroyed once it's hidden and included in highlight windows).

Thanks to this change it's no longer needed to reload the TabBox
whenever it gets shown or the alternative TabBox gets shown. Instead
the same QML script can get reused. Other created switchers are ignored
as the visible property won't be changed to true.
2013-12-12 09:37:29 +01:00
Martin Gräßlin
3f7344501f [kwin/tabbox] Make ClientModel::longestClient() invokable
This allows to just invoke the method on the model instead of setting
it from the C++ side.
2013-12-12 09:37:29 +01:00
Martin Gräßlin
5f7eab206d [kwin] Introduce a currentChanged signal in screens 2013-12-12 09:37:29 +01:00
Fredrik Höglund
eeb309c149 kwin: Add support for EXT_buffer_age
This patch adds support for GLX_EXT_buffer_age, and
EGL_EXT_buffer_age on X11.
2013-12-12 01:36:46 +01:00
Fredrik Höglund
a9e49e218f kwin: Return the modified damage in a separate paintScreen() parameter 2013-12-12 01:36:46 +01:00
Fredrik Höglund
c25b2939b1 kwin: Prepare the backend interface for EXT_buffer_age
Allow prepareRenderingFrame() to return a region that will be
repainted in addition to the damaged region.

Pass both the damaged region and the repainted region, which
may be larger, as parameters to endRenderingFrame().
2013-12-12 01:36:45 +01:00
Fredrik Höglund
12446c9b4c kwin: Don't call glFlush() unnecessarily in endRenderingFrame()
We should only call glFlush() here if we're deferring the posting
of the back buffer to the next prepareRenderingFrame() call.
2013-12-12 01:36:44 +01:00
Martin Klapetek
54bc491c46 Port to KF5 renaming changes 2013-12-11 21:41:47 +01:00
Martin Gräßlin
73054577df [libkwineffects] Add a signal for screen count changed
Used in PresentWindows effect instead of QDesktopWidget.
2013-12-10 12:20:43 +01:00
Martin Gräßlin
145f0c096f [kwin/effects] Do not use KActionCollections for the global shortcuts
Most effects had a "collection" for one action. We don't need the
action collection, all it was used for is setting the object name.

With the removal of KActionCollection the effects do not need to link
XmlGui any more, though the dependency is still pulled in through
plasma.
2013-12-10 11:45:33 +01:00
Martin Gräßlin
e4be8c34b8 [libkwineffects] Remove unused forward declaration 2013-12-10 11:03:08 +01:00
Martin Gräßlin
08a09d27f8 [kwin] Remove the KActionCollection for the client keys
Not needed as we can also find the action as a child of Workspace.
2013-12-10 10:15:23 +01:00
Martin Gräßlin
a6f32bf3e8 [kwin] Do not use a KActionCollection for Workspace's global shortcut actions
The ActionCollection was only used for two features:
* setting the object name
* finding the action for retrieving it's shortcut

This can also be achieved by just setting the object name and searching
for the children of the Workspace singleton.
2013-12-10 10:01:13 +01:00
Martin Gräßlin
edeb8051e9 [kwin] Remove KActionCollection usage in TabBox
Only feature used by KActionCollection is setting the object name.
2013-12-10 09:34:11 +01:00
Martin Gräßlin
d9c29805b1 [kwin/tabbox] Remove the modalActionSwitch
The modalActionSwitch was used to disable all of KWin's actions during
Alt+Tab. This is not needed as Alt+Tab uses a keyboard grab and thus
no action will be triggered anyway.

Furthermore the functionality had been broken for years. The effects
use an own KActionCollection so their actions aren't considered and
neither the scripts.
2013-12-10 09:31:41 +01:00
Martin Gräßlin
c14f798adf [kwin] Do not use KActionCollection in VirtualDesktops
The functionality from KActionCollection is not used at all. It's
just for setting the object name. By not using the ActionCollection
to create the QAction and connecting the slot, it's also possible to
use the new compile time checked connect syntax.
2013-12-10 09:11:16 +01:00
Martin Gräßlin
abdb1937b1 [kwin] Use KGlobalAccel to register global shortcuts from scripts
This was not yet ported functionality. In addition the usage of
KActionCollection is removed as it's not needed - all it was used
for is setting the object name.
2013-12-10 09:09:35 +01:00
Martin Gräßlin
1e3a6e54ee Disable testVirtualDesktop temporarily
It fails on Jenkins and I need to change my setup to get it reproduced.
2013-12-10 08:40:20 +01:00
Martin Gräßlin
e7d4ae6030 [kwin/tests] testVirtualDesktops needs KConfigCore
Fixing Jenkins: try 2
2013-12-10 08:33:29 +01:00
Martin Gräßlin
159bde9107 [kwin/tests] VirtualDesktop Test needs KGlobalAccel and not XmlGui 2013-12-10 08:06:45 +01:00
Martin Gräßlin
c063978591 Adjust to new KGlobalAccel framework 2013-12-10 07:38:54 +01:00
l10n daemon script
e3a2f3161e SVN_SILENT made messages (.desktop file) 2013-12-10 04:05:21 +00:00
Hugo Pereira Da Costa
3f37b36fdb re-enable kstyle hook 2013-12-08 13:07:55 +01:00
l10n daemon script
d5e439aae0 SVN_SILENT made messages (.desktop file) 2013-12-08 06:36:10 +00:00
l10n daemon script
68ce64de5c SVN_SILENT made messages (.desktop file) 2013-12-07 06:21:08 +00:00
l10n daemon script
1bd3f7cb5c SVN_SILENT made messages (.desktop file) 2013-12-07 03:44:53 +00:00
Martin Gräßlin
fc21f99df6 [kwin] Remove the image provider for the TabBox
No longer needed as we have the icon passed to QML.

A nice side-effect: we don't need KIconThemes in KWin any more.
2013-12-06 16:26:21 +01:00
Martin Gräßlin
7e2157bfe4 [kwin] Use QIconItem in the desktop tabbox
Unfortunately not tested, I didn't get it activated.
2013-12-06 16:26:21 +01:00
Martin Gräßlin
f3dbaaabd7 [kwin] Use QIconItem in icon only tabboxes for the icons 2013-12-06 16:26:20 +01:00
Martin Gräßlin
0860bc4151 [kwin] Use QIconItem in compact tabbox for the icon 2013-12-06 16:26:20 +01:00
Martin Gräßlin
1db6b8003d [kwin] Use QIconItem in sidebar tabbox for the icon 2013-12-06 16:26:20 +01:00
Martin Gräßlin
22f3765296 [kwin] Use QIconItem in thumbnail tabbox for the icon 2013-12-06 16:26:20 +01:00
Martin Gräßlin
34b0e6d14e [kwin] Use QIconItem in grid tabbox for the icon 2013-12-06 16:26:20 +01:00
Martin Gräßlin
9864821c38 [kwin] Use QIconItem in informative tabbox for the icon 2013-12-06 16:26:20 +01:00