Commit graph

11434 commits

Author SHA1 Message Date
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
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
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
Martin Gräßlin
a2c9bdc37d [kwin] Export icon in ClientModel again
Now that we have a proper QIcon it makes sense to pass it to the
views.
2013-12-06 16:26:20 +01:00
Martin Gräßlin
2372e02752 [kwin] Use a QIcon in Client for the icons instead of Pixmaps
Client used to have dedicated methods for different icon sizes instead
of combining all pixmaps into one QIcon. This resulted in various parts
of KWin having different access to the icons:
* effects only got one pixmap of size 32x32
* decorations only got the 16x16 and 32x32 pixmaps combined into a QIcon
* tabbox could request all icon sizes, but only as pixmap

Now all sizes are available in one QIcon allowing to easily access the
best fitting icon in a given UI.
2013-12-06 14:41:23 +01:00
Martin Gräßlin
7aeec8ef89 [kwin] Drop dead code
kwin_get_menu_pix_hack was no longer used anywhere.
2013-12-06 11:21:07 +01:00
Martin Gräßlin
a192734ac9 [kwin] Good bye KDE4Support 2013-12-06 10:33:45 +01:00
Martin Gräßlin
81a7a528bb [kwin] Block global shortcuts without KGlobalSettings
DBus call directly to kglobalacceld and don't wait for a signal to
come back.
2013-12-06 10:28:42 +01:00
Martin Gräßlin
9f6f0dd688 [kwin] Drop reaction on SETTINGS_SHORTCUTS changed
This looks mostly like dead code. The change got only emitted by the
KCMKeyboard on save. In ancient times this seems to have caused to
re-read the global shortcuts. Code got commented out during KDE4 times
and after several code refactors all that was left of it was discarding
the user actions menu.
2013-12-06 10:20:10 +01:00
Martin Gräßlin
09958a6b1c [kwin] Connect to refreshFonts from KDEPlatformTheme
Replaces one usage of KGlobalsettings. It might be a good idea to
move the connect into libkdecoration or into the options as it looks
like there is no need to reconfigure everything just because the fonts
changed.
2013-12-06 10:00:44 +01:00
Martin Gräßlin
e92d02ab61 [kwin] Remove include of kdemacros.h from kwinglobals
Instead we generate an export header for kdeinit_kwin and use it
to declare the KWIN_EXPORT. With this change our libs don't include
any KDE4Support headers any more. One step closer to no KDE4Support.
2013-12-06 08:37:16 +01:00
Martin Gräßlin
bad6b31a1c [kwin] effects no longer need to link KDE4Support 2013-12-06 07:51:30 +01:00
Aleix Pol
f8468b4043 Drop KDE4Support in kde-workspace/kwin
REVIEW: 114316
2013-12-05 20:24:02 +01:00
Martin Gräßlin
f7ff03f30b [kwin] Remove usage of KDE_VERSION_STRING
Replaced by KWIN_VERSION_STRING where useful. Support information
no longer contains the SC version number. We have to see whether
there will be a useful framework based platform information.
2013-12-05 17:20:14 +01:00
Àlex Fiestas
acc0498102 Commented usage of removed KStyle api 2013-12-05 16:09:13 +01:00
Martin Gräßlin
13d1b67f99 [libkdecorations] Do not link to Qt5::X11Extras
No longer needed as the library doesn't include kwinglobals.h any more.
2013-12-05 10:07:23 +01:00
Jacob Logan
199ed87c61 [libkdecorations] Generate an export header
REVIEW: 114247
2013-12-05 10:00:46 +01:00
Martin Gräßlin
a4169ae35f Remove unneeded KDebug include
REVIEW: 114289
2013-12-05 09:40:48 +01:00
Egor Matirov
05c2849fee Added export header through cmake for libkwinglutils
REVIEW: 114265
2013-12-03 14:37:29 +01:00
Martin Gräßlin
81edc75207 [kwin] Add a URL property to the kwineffects 2013-12-03 10:27:20 +01:00
Martin Gräßlin
d90be88446 [kwin] Connect the Compositor to a reinit signal
Allows to force a reinit from the config module again.
2013-12-03 07:11:30 +01:00
Martin Gräßlin
f7bc2775d1 Remove kwineffects.h include from kwingltexture.cpp
Nothing from kwineffects.h used in this file.
2013-12-02 08:13:08 +01:00
Martin Gräßlin
416898ecfa Remove kwinglobals.h include where not needed any more
Most headers only included kwinglobals.h just for the KWIN_EXPORT
macro. As that's not used any more, we don't need that include any
more.
2013-12-02 07:56:16 +01:00
Jacob Logan
0c4518cca9 added export header through cmake for kwineffects
REVIEW: 114233
2013-12-02 07:43:26 +01:00