Commit graph

455 commits

Author SHA1 Message Date
Martin Gräßlin
869c087e21 [kwin] Use QQmlEngine from Scripting in TabBox
Instead of having it's own QQmlEngine TabBox just uses the newly
exposed engine from Scripting and creates a new context for it's
own usage.

REVIEW: 116565
2014-03-10 09:09:01 +01:00
l10n daemon script
b7a029619b SVN_SILENT made messages (.desktop file) 2014-03-03 04:35:02 +00:00
Matteo De Carlo
8a9cdba6ae Replace NULL with nullptr in tabbox folder
Replacing all NULL to nullptr in all the files in tabbox folder
(also substituting some "0" used as nullptr with nullptr)

REVIEW: 115917
2014-02-24 16:42:43 +01:00
l10n daemon script
9c8800249a SVN_SILENT made messages (.desktop file) 2014-02-24 04:38:53 +00:00
l10n daemon script
31d0cc055b SVN_SILENT made messages (.desktop file) 2014-02-22 04:23:30 +00:00
l10n daemon script
6f8c3dd771 SVN_SILENT made messages (.desktop file) 2014-02-18 05:12:30 +00:00
l10n daemon script
f67e67e5f0 SVN_SILENT made messages (.desktop file) 2014-02-09 05:45:40 +00:00
Martin Gräßlin
04716ae5e3 [kwin] Rename tests subdirectories to autotests
Follows the naming schemes in frameworks and opens up the possibility
to include test applications for KWin in the tests subdirectory.
2014-01-30 11:01:59 +01:00
l10n daemon script
2297dccdc6 SVN_SILENT made messages (.desktop file) 2014-01-21 04:13:28 +00:00
l10n daemon script
22a5e1109f SVN_SILENT made messages (.desktop file) 2014-01-19 04:06:03 +00:00
l10n daemon script
eac8a41fed SVN_SILENT made messages (.desktop file) 2014-01-15 04:10:52 +00:00
l10n daemon script
4ed47fd70b SVN_SILENT made messages (.desktop file) 2014-01-12 04:10:53 +00:00
l10n daemon script
ce8c99cbef SVN_SILENT made messages (.desktop file) 2014-01-06 04:01:54 +00:00
l10n daemon script
1fb1a178fd SVN_SILENT made messages (.desktop file) 2014-01-05 04:08:18 +00:00
Martin Gräßlin
8de72623c6 [kwin/tabbox] Use property binding for x and y properties
After changes in PlasmaCore.Dialog we can finally get rid of updating
the position on each visible change.

It's not 100 % perfect yet, seems the binding on screenGeometry is not
working properly. That needs investigation.
2014-01-03 12:59:14 +01:00
Martin Gräßlin
47f443479c [kwin] Port Plasma::Dialog from windowFlags to flags 2014-01-03 11:33:14 +01:00
l10n daemon script
e05a97f216 SVN_SILENT made messages (.desktop file) 2014-01-03 04:48:00 +00:00
Mihail Ivchenko
d7e2df674a [kwin] Add a method longestCaption() in TabBox::DesktopModel.
REVIEW: 114585
2013-12-22 10:40:28 +01:00
l10n daemon script
22640e26f3 SVN_SILENT made messages (.desktop file) 2013-12-22 04:09:59 +00:00
l10n daemon script
da9baf3de6 SVN_SILENT made messages (.desktop file) 2013-12-20 04:27:47 +00:00
l10n daemon script
d138d12261 SVN_SILENT made messages (.desktop file) 2013-12-17 04:08:15 +00:00
Martin Gräßlin
1d7ee61741 [kwin] Register QAbstractItemModel as a qml type in TabBox
It's needed if we don't import any Plasma components.
2013-12-16 11:48:41 +01:00
l10n daemon script
fcd15efb31 SVN_SILENT made messages (.desktop file) 2013-12-16 04:03:25 +00:00
l10n daemon script
3e5ce246d8 SVN_SILENT made messages (.desktop file) 2013-12-15 04:06:27 +00:00
l10n daemon script
a9d29b0d7c SVN_SILENT made messages (.desktop file) 2013-12-14 03:57:59 +00:00
l10n daemon script
4f1c1c2c83 SVN_SILENT made messages (.desktop file) 2013-12-13 04:38:28 +00:00
Martin Gräßlin
d6e1920be3 [kwin/tabbox] Delete no longer needed declarative.(h|cpp)
Used to be the QQuickView implementation for the tabbox. As it's now
controlled through opening windows from QML directly it's no longer
needed or used anywhere.
2013-12-12 11:32:57 +01:00
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
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
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
l10n daemon script
e3a2f3161e SVN_SILENT made messages (.desktop file) 2013-12-10 04:05:21 +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
l10n daemon script
cae5a4f1e0 SVN_SILENT made messages (.desktop file) 2013-11-29 04:26:30 +00:00
l10n daemon script
7cd29623ea SVN_SILENT made messages (.desktop file) 2013-11-28 04:07:32 +00:00
l10n daemon script
551988ebd4 SVN_SILENT made messages (.desktop file) 2013-11-23 03:52:00 +00:00
l10n daemon script
7e368e1ef3 SVN_SILENT made messages (.desktop file) 2013-11-18 04:14:01 +00:00
l10n daemon script
2e9d94d959 SVN_SILENT made messages (.desktop file) 2013-11-16 03:51:10 +00:00
Aleix Pol
7b110f0671 Improve CMake usage
It's basically a run of the port-cmake.sh script in here, mostly the changes
are the following:
- Using KF5::* targets
- Using the proper macros, following recent developments in frameworks
2013-11-15 13:37:47 +01:00
l10n daemon script
38b62ce928 SVN_SILENT made messages (.desktop file) 2013-11-15 04:26:15 +00:00
l10n daemon script
b6990c5fb7 SVN_SILENT made messages (.desktop file) 2013-11-14 04:04:38 +00:00
Martin Gräßlin
62ae322e70 [kwin/tabbox] Re-add dependency to kdeclarative 2013-11-13 10:59:38 +01:00
Martin Gräßlin
6a1cadc0a7 [kwin] update x time before trying to establish/release tabbox grab
Failed with invalid time error when using kglobalaccel5.
2013-11-13 09:25:47 +01:00
l10n daemon script
ac7dba9a59 SVN_SILENT made messages (.desktop file) 2013-11-12 04:02:42 +00:00
l10n daemon script
478486d46b SVN_SILENT made messages (.desktop file) 2013-11-11 04:02:51 +00:00
l10n daemon script
71e40e7c60 SVN_SILENT made messages (.desktop file) 2013-11-10 04:15:39 +00:00
l10n daemon script
2292546afa SVN_SILENT made messages (.desktop file) 2013-11-09 03:56:22 +00:00
Marco Martin
2d66e7c8a0 fix keyboard navigation 2013-11-08 10:01:24 +01:00
Marco Martin
d6f38863fa AlignRight 2013-11-05 12:17:33 +01:00
Marco Martin
49367b51e0 export alignment as a property 2013-11-05 11:26:29 +01:00
Marco Martin
21154e9288 a tabbox plugin that puts thumbnails in a sidebar 2013-11-05 10:57:25 +01:00
Martin Gräßlin
96691036f6 Fix forwarding key events to the TabBox list view
Allows to navigate with cursor keys again.
2013-10-25 15:04:22 +02:00
Martin Gräßlin
3797c3d26e [kwin/tabbox] Recreate DeclarativeTabBoxView every time it's shown
Not the best solution, but at least TabBox works each time it's invoked.
It doesn't make much of a difference as the QML is reparsed anyway at
each show.
2013-10-25 14:16:06 +02:00
l10n daemon script
23fbf4395f SVN_SILENT made messages (.desktop file) 2013-10-09 04:14:36 +00:00
Martin Gräßlin
080113e04c Introduce a new backtab test handling in TabBox invokation
Our back shortcut is registered as Alt+Shift+Backtab but our converted
Qt key coming into the test method is Alt+Shift+Tab. The logic so far
made this always fire for the normal Alt+Tab shortcut as at some point
the Shift modifier gets removed to do the test.

To handle it properly we first have to extract all the modifiers to just
get the key. If the key is Tab, we replace it with Backtab, combine it
with the extracted mods so it will be Alt+Shift+Backtab which matches
the registered shortcut.

The existing backtab solution can probably be removed and is clearly
wrong as it uses the keys as flags which they aren't.
2013-09-26 09:50:27 +02:00
Martin Gräßlin
969e6b85e7 Merge branch 'master' into frameworks-scratch
Conflicts:
	CMakeLists.txt
	kwin/client.cpp
	kwin/effects/highlightwindow/highlightwindow.cpp
	kwin/libkwineffects/kwingltexture.cpp
	kwin/libkwineffects/kwinxrenderutils.cpp
	kwin/scene_opengl.cpp
	kwin/workspace.cpp
	plasma/desktop/applets/kickoff/CMakeLists.txt
	plasma/desktop/applets/taskmanager/package/contents/code/tools.js
	plasma/desktop/applets/taskmanager/package/contents/ui/Task.qml
	plasma/desktop/applets/taskmanager/package/contents/ui/main.qml
	plasma/desktop/applets/taskmanager/package/metadata.desktop
	plasma/desktop/applets/taskmanager/plugin/textlabel.h
	plasma/desktop/applets/tasks/CMakeLists.txt
	plasma/desktop/applets/tasks/package/metadata.desktop
	plasma/desktop/applets/tasks/tasks.cpp
	plasma/desktop/toolboxes/plasma-toolbox-desktoptoolbox.desktop
	plasma/generic/applets/activitybar/activitybar.cpp
	plasma/generic/wallpapers/color/plasma-wallpaper-color.desktop
	plasma/generic/wallpapers/image/plasma-wallpaper-image.desktop
2013-09-24 11:28:38 +02:00
l10n daemon script
68995c9ba5 SVN_SILENT made messages (.desktop file) 2013-09-21 04:07:24 +00:00
Martin Gräßlin
c754ba7f8d Use Xcb::Atom for resolving the highlight windows atom in TabBox
Nice side-effect: it will only be fetched once and not every time
highlight is invoked or ended.
2013-09-10 15:30:11 +02:00
Martin Gräßlin
85ea66f736 Port remainind XSync calls to XCB variant 2013-09-10 15:30:11 +02:00
Martin Gräßlin
592ea89b01 Port all remaining XDeleteProperty calls to XCB 2013-09-10 15:30:10 +02:00
Martin Gräßlin
1398f9ed04 Remove left-over from disable global shortcuts removal
There used to be an own action collection in KDE 3 times for the
block global shortcuts shortcut. But the code ws disabled and by
that I didn't see it during removing the global shortcuts blocking.
And it explains why the global shortcut blocking didn't work.
2013-09-09 09:53:39 +02:00
Martin Gräßlin
8a5972b8cb Fix warning 2013-09-09 06:03:35 +02:00
Martin Gräßlin
57be7899c0 Remove no longer needed includes from kwin/tabbox/tabbox.cpp 2013-09-09 06:03:35 +02:00
Martin Gräßlin
ac3ca11486 KIcon -> QIcon::fromTheme in kwin/tabbox 2013-09-09 06:03:35 +02:00
Martin Gräßlin
79e09c43f3 Port kwin/tabbox from KShortcut to QKeySequence
All the globalShortcutChanged slots are removed and replaced by a
generic one for the new signal by KGlobalAccel.

The define for creating the shortcut is dropped and replaced by a
templated function creating connections through the new connect
syntax.
2013-09-09 06:03:35 +02:00
Martin Gräßlin
d26fcf3188 There is no PlasmaCore.Theme
It's a context property "theme". Today I'm lucky, they were all called
"theme".
2013-09-05 14:46:39 +02:00
Martin Gräßlin
139201a2e2 KGlobal::config() -> KSharedConfig::openConfig()
KWin Core says good bye to KGlobal. We will not miss the threading
issues.
2013-09-04 16:11:40 +02:00
Martin Gräßlin
57905c0cc2 And we got rid of KDebug
Usages of kBacktrace got dropped.
2013-09-02 13:14:39 +02:00
Eike Hein
cf48719802 Fix build failures. 2013-09-02 01:28:14 +02:00
Martin Gräßlin
84a2f3020b Use Qt5:: in target link libraries in KWin 2013-08-20 09:14:24 +02:00
Anselmo L. S. Melo
a9c346ad83 Porting tabbox to Qt5/KF5: QStandardPaths
REVIEW: 111973
2013-08-13 17:55:15 -03:00
l10n daemon script
df17849412 SVN_SILENT made messages (.desktop file) 2013-08-13 04:19:10 +00:00
Martin Gräßlin
b4c957b617 Remove XCheckTypedEvent from TabBox::hide()
No idea why it was there in the first place, but no longer useful in an
XCB event world.
2013-08-09 11:47:18 +02:00
Martin Gräßlin
8cf8f57966 Port tabbox to QtQuick 2
Straight forward port. Note: this is currently crashing deep down in
QtQuick. To circumvent the crashes it helps to disable the property
highlightFollowsCurrentItem in the listviews. This solves the problem
that QtQuick crashes on first loading. Unfortunately it still crashes
if one tries to invoke TabBox for the second time.
2013-08-09 11:47:18 +02:00
Martin Gräßlin
69b109b5b9 Adjust the ThumbnailItems to QtQuick2
AbstractThumbnailItem inherits from QQuickPaintedItem using QPainter to
do the fallback painting of icons.

The scene is adjusted to get the information from QQuickItem instead of
QDeclarativeItem. Clipping got a little bit more complex as the clip
path does not exist any more. To get it right the ThumbnailItem needs to
specify the parent it wants to be clipped to with the clipTo property.
E.g.:
clipTo: listView

The scene uses this clipTo parent item to correctly calculate the clip
region. Also the ThumbnailItem needs to have clipping enabled.

Note: this commit currently breaks TabBox as the qml and view are not
yet adjusted. In scripting the export of the item is disabled, but any
qml script using a ThumbnailItem would obviously also fail.
2013-08-09 11:47:17 +02:00
Martin Gräßlin
9291b18cee Merge branch 'master' into frameworks-scratch
Conflicts:
	CMakeLists.txt
	kwin/effects.cpp
	kwin/effects/logout/logout.cpp
	kwin/effects/presentwindows/main.qml
	kwin/effects/presentwindows/presentwindows.cpp
	kwin/effects/presentwindows/presentwindows.h
	kwin/effects/zoom/zoom_config.cpp
	kwin/libkwineffects/kwinglutils_funcs.cpp
	kwin/libkwineffects/kwinxrenderutils.cpp
	kwin/nvidiahack.cpp
	kwin/xcbutils.h
	plasma/desktop/containments/desktop/plasma-containment-desktop.desktop
	plasma/generic/wallpapers/image/image.cpp
	plasma/generic/wallpapers/image/plasma-wallpaper-image.desktop
2013-08-07 10:10:06 +02:00
Martin Gräßlin
3d414b908a Remove kapplication.h include from sm.h
Not needed in sm.h and pollutes the includes of most header files.
2013-08-06 11:20:28 +02:00