Commit graph

1884 commits

Author SHA1 Message Date
Martin Gräßlin
b38722dc04 [kwin] Adjust to changes in NETRootInfo ctor
Takes flag types.
2014-03-17 08:30:58 +01:00
Martin Gräßlin
f74df28450 [kwin] Use KPluginTrader and json metadata to find KDecorations
* A KDecoration needs to include json metadata
* A KDecoration needs to be installed to kwin/kdecorations
* Aurorae and Oxygen adjusted
* kcmdeco locates all decorations through the KPluginTrader
* libkdecoration uses KPluginTrader to find the plugin
* config plugins also need to include json metadata with
  X-KDE-PluginInfo-Name being the same as the decoration
* config plugins need to get installed to kwin/kdecorations/config
* kcmdeco locates the config plugin for a deco through the name
  and KPluginTrader

REVIEW: 116765
2014-03-17 07:41:14 +01:00
l10n daemon script
4d9c6af719 SVN_SILENT made messages (.desktop file) 2014-03-14 07:37:21 +00:00
Martin Gräßlin
a51cbf7b9e [kwin/kcmdeco] Show an information if close window by dbl click gets activated
The option changes the behavior of the menu button, thus we should point
out to the user that the behavior changes.

This is only done for Auroae configurations as other decorations have to
take care about it themselves.

CCBUG: 331462
REVIEW: 116715
2014-03-12 07:33:47 +01:00
Martin Gräßlin
9fc3aabc66 [kwin/aurorae] Default to no close on double click menu button
To increase consistency with other decorations and because it changes
the behavior of the menu button in an unexpected way we default to
double click menu button doesn't close the window.

BUG: 331462
FIXED-IN: 5.0
REVIEW: 116716
2014-03-11 15:46:21 +01:00
Martin Gräßlin
2675b5d4e7 Merge branch 'KDE/4.11'
Conflicts:
	CMakeLists.txt
	kcontrol/screensaver/screensaver.desktop
	kdm/kfrontend/themes/elarun/KdmGreeterTheme.desktop
	khotkeys/kcm_hotkeys/kcm_hotkeys.cpp
	kinfocenter/main.cpp
	kscreensaver/kblank_screensaver/blankscrn.cpp
	kscreensaver/krandom_screensaver/random.cpp
	kstyles/oxygen/config/main.cpp
	kstyles/oxygen/demo/main.cpp
	ksysguard/gui/ksysguard.cpp
	kwin/clients/oxygen/demo/main.cpp
	kwin/kcmkwin/kwincompositing/kwincompositing.desktop
	kwin/tabbox/qml/clients/text/metadata.desktop
	kwin/tabbox/qml/clients/window_strip/metadata.desktop
	libs/plasmagenericshell/widgetsexplorer/package/metadata.desktop
	plasma/desktop/applets/pager/package/metadata.desktop
	plasma/desktop/shell/activitymanager/package/metadata.desktop
	plasma/desktop/shell/data/layouts/org.kde.plasma-desktop.defaultPanel/contents/layout.js
	plasma/desktop/shell/desktopcorona.cpp
	plasma/desktop/shell/main.cpp
	plasma/desktop/toolboxes/plasma-toolbox-desktoptoolbox.desktop
	plasma/desktop/toolboxes/plasma-toolbox-paneltoolbox.desktop
	plasma/generic/applets/batterymonitor/contents/ui/batterymonitor.qml
	plasma/generic/applets/systemtray/protocols/fdo/fdographicswidget.cpp
	plasma/generic/applets/systemtray/protocols/fdo/fdographicswidget.h
	plasma/generic/applets/systemtray/protocols/fdo/x11embeddelegate.cpp
	plasma/generic/runners/nepomuksearch/plasma-runner-nepomuksearch.desktop
	plasma/generic/wallpapers/color/plasma-wallpaper-color.desktop
	plasma/generic/wallpapers/image/plasma-wallpaper-image.desktop
	plasma/netbook/shell/nettoolbox/plasma-toolbox-nettoolbox.desktop
	statusnotifierwatcher/statusnotifierwatcher.cpp
	systemsettings/app/main.cpp
2014-03-10 21:21:16 +01:00
l10n daemon script
fbd985ae3d SVN_SILENT made messages (.desktop file) 2014-03-10 07:33:17 +00:00
Martin Gräßlin
aee20b4a5a Hide the OnAllDesktops button if there is only one virtual desktop
In KCommonDecoration the OnAllDesktops button gets hidden or shown
depending on the number of desktops. For that KDecoration is extended
by a new property which delegates to the bridge to return whether
onAllDesktops is available. In KWin Core this is implemented using
the number of desktops.

FEATURE: 321611
FIXED-IN: 5.0.0
REVIEW: 116076
2014-03-05 13:02:32 +01:00
Martin Gräßlin
4dff7888e3 [kwin] Drop build option to build without scripting
Scripting has proved it's point of being useful so it's time to turn it
into a mandatory part of KWin.

Also I start to use features provided by Scripting in more and more
parts of KWin core (e.g. sharing QQmlEngine) which makes it in the
long to complicated to have a build option and ifdefs for it.

REVIEW: 116587
2014-03-04 08:19:55 +01:00
Martin Gräßlin
59d91b9fd3 Use KPluginLoader to load the decoration config dialog
Straight forward update from KLibrary to KPluginLoader.

REVIEW: 115931
2014-03-03 14:20:08 +01:00
Martin Gräßlin
b3d3c45149 Use KPluginLoader to load our decoration plugins
This simplifies the plugin loading. Decorations just have to use
K_PLUGIN_FACTORY to specify how the KDecorationFactory needs to be
created. The KWIN_DECORATION macro is adjusted to generate the
boiler plate code, but it now needs to specify the name for the
pluginfactory and the KDecorationFactory.

This also transits the decoration abi version check to use
K_EXPORT_PLUGIN_VERSION which also simplifies the loading.

As a result the complete canLoad handling in DecorationPlugins is
removed.

REVIEW: 115930
2014-03-03 13:55:52 +01:00
Martin Gräßlin
3d6a77cdd7 [kwin/kcmdeco] Fix layout of button config dialog 2014-02-27 11:48:16 +01:00
Martin Gräßlin
4586767db8 [kwin] Use imported targets for all XCB libs
Requires 04f78489265b6e52cabd2980dfc417abeee3a695 from ECM
2014-02-25 15:48:39 +01:00
l10n daemon script
170c5a50bd SVN_SILENT made messages (.desktop file) 2014-02-24 07:26:52 +00:00
Martin Gräßlin
b8f9fb254f Fix config dialog of Aurorae decorations
Install the layout on the dialog not on the KCM.
2014-02-21 12:12:05 +01:00
Martin Gräßlin
b901928801 Fix position of buttons in decoration config dialog
Add after the main item, not before.
2014-02-21 12:08:31 +01:00
l10n daemon script
fab5def5e9 SVN_SILENT made messages (.desktop file) 2014-02-18 09:04:31 +00:00
l10n daemon script
6f8c3dd771 SVN_SILENT made messages (.desktop file) 2014-02-18 05:12:30 +00:00
Bhushan Shah
be8920d76c kwin is now free of KDE4Support
REVIEW: 115760
2014-02-16 00:31:01 +05:30
Hrvoje Senjan
814ff851b4 Use correct Activities, they are now a proper framework 2014-02-13 20:06:33 +01:00
Martin Gräßlin
3ea8f0c217 [kwin/kcmdesktop] Don't crash if run on platform Wayland
Not much use currently as we don't have any desktops to configure,
but not crashing is nevertheless quite nice.
2014-02-11 15:27:28 +01:00
Martin Gräßlin
fdee4ea8c8 Adjust kde-workspace to introduction of flags in NET classes 2014-02-05 17:40:19 +01:00
Martin Gräßlin
9414d8f7f1 [kwin] Re-enable KActivities support
* KWin lists the activities in the Alt+F3 menu
* Kcmrules though looks wrong
2014-02-03 13:40:47 +01:00
Martin Gräßlin
a6c47e0314 [kwin] Add ProvidersUrl to *.knsrc
That at least inits the GHNS download dialog.
2014-02-03 13:04:12 +01:00
Martin Gräßlin
16c44810cb [kwin] Drop more unused includes
--warnings
2014-02-03 11:45:35 +01:00
Martin Gräßlin
fcebfa799f [kwin] Fix ordering
--warnings
2014-02-03 11:37:04 +01:00
Martin Gräßlin
014cdf9267 [kwin] Mark unused variables as unused
--warnings
2014-02-03 11:36:21 +01:00
Martin Gräßlin
981e7afa96 [kwin/kcmrules] Call setupUi before accessing the ui widgets
This caused a crash with Qt 5.3 dev branch as the widgets are null
before setupUi is called. Might be a bug in Qt but still it makes
sense to first call setupUi and then do further changes to the Ui.
2014-01-30 10:39:40 +01:00
Martin Gräßlin
823222567e [kwin/kcmrules] Use a pointer for the KWindowInfo member variable
The reason for this change is that the default ctor of KWindowInfo
creates a broken object. Calling any method in it will result in a
crush. Thus it is scheduled for removal in kwindowsystem framework
causing this code to no longer compile.

The solution is to use a pointer and set it to null as long as the
window has not been detected yet. To ensure that this doesn't fail
badly an assert is added to the getter in DetectWidget.
2014-01-30 10:35:35 +01:00
Laurent Navet
d246518b9f KWin: kwinoptions: port to KF5
CMakelist ui port to KF5
clean unneeded #include

Signed-off-by: Laurent Navet <laurent.navet@gmail.com>
REVIEW: 115272
2014-01-24 14:15:34 +01:00
Laurent Navet
2fe4d47c15 KF5 port KButtonGroup -> QGroupBox
Replace deprecated KButtonGroup by QGroupBox

Signed-off-by: Laurent Navet <laurent.navet@gmail.com>
REVIEW: 114423
2014-01-22 08:27:44 +01:00
l10n daemon script
551c0c49e6 SVN_SILENT made messages (.desktop file) 2014-01-20 04:05:30 +00:00
l10n daemon script
588ad2be66 SVN_SILENT made messages (.desktop file) 2014-01-19 06:36:32 +00:00
l10n daemon script
22a5e1109f SVN_SILENT made messages (.desktop file) 2014-01-19 04:06:03 +00:00
Martin Gräßlin
544820793e And another KNS3 build fix 2014-01-15 21:21:31 +01:00
Martin Gräßlin
930a6b5e05 Ensure the KDE4Support KNS headers are not included
This should hopefully unbreak the Jenkins build.
2014-01-15 20:32:40 +01:00
l10n daemon script
eac8a41fed SVN_SILENT made messages (.desktop file) 2014-01-15 04:10:52 +00:00
l10n daemon script
45c3835fd7 SVN_SILENT made messages (.desktop file) 2014-01-14 07:28:35 +00:00
l10n daemon script
1f5b73941d SVN_SILENT made messages (.desktop file) 2014-01-14 04:06:51 +00:00
Matteo De Carlo
aad36da80b Replace NULL with nullptr in kcmkwin
Replacing all NULL to nullptr in all the files in kcmkwin folder
(also substituting some "0" used as nullptr with nullptr)

REVIEW: 114803
2014-01-08 10:30:38 +01:00
l10n daemon script
723dce4e4c SVN_SILENT made messages (.desktop file) 2014-01-08 06:31:01 +00:00
l10n daemon script
ff562dc8bf SVN_SILENT made messages (.desktop file) 2014-01-08 04:01:27 +00:00
Martin Gräßlin
2837550cbb [kcm-kwintabbox] Add properties brightness and saturation to ThumbnailItem
This was missing from what is available in KWin core. The brightness and
saturation are implemented using a custom shader which uses the same
logic as what we use in the scene shader.
2014-01-03 16:54:07 +01:00
Martin Gräßlin
19d567ef7f [kcm-kwintabbox] Use QQuickItem for Thumbnail instead of QQuickPaintedItem
We are only rendering an image, so it's better to load the image into a
texture. This allows to properly scale the example preview which
magically fixes all the layouting problems which used to be there.
2014-01-03 14:10:17 +01:00
Martin Gräßlin
33921a9535 [kcm-kwintabbox] Add a debug message on failed QML loading
If the Layout Preview fails to load the Qml, at least show a debug
message to see what's going wrong.
2014-01-03 11:24:23 +01:00
l10n daemon script
938332b6ac SVN_SILENT made messages (.desktop file) 2013-12-23 06:26:56 +00:00
l10n daemon script
63165c870f SVN_SILENT made messages (.desktop file) 2013-12-23 03:57:54 +00:00
Mihail Ivchenko
26f390f4ed [kwin/kcm-tabbox] Implemented ExampleClientModel::longestCaption()
REVIEW: 114608
2013-12-22 12:38:05 +01:00
Martin Gräßlin
5339d28389 [kwin] Drop old kwincompositing KCM
It's going to be replaced by kwin-compositing-kcm, see
https://projects.kde.org/projects/playground/base/kwin-compositing-kcm
2013-12-16 13:27:56 +01: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
Laurent Navet
17d28f2639 KF5 port KTabWidget -> QTabWidget
Replace deprecated KTabWidget with QTabWidget

Signed-off-by: Laurent Navet <laurent.navet@gmail.com>

REVIEW: 114465
2013-12-16 10:10:17 +01:00
Martin Gräßlin
2486e8e36e [kwin/kcmdeco] Add missing i18n call 2013-12-14 16:10:32 +01:00
Laurent Navet
2f62a2d1b8 KF5 Port KIntNumInput->QSpinBox
Replace deprecated KIntNumImput with QSpinBox

Signed-off-by: Laurent Navet <laurent.navet@gmail.com>

REVIEW: 114413
2013-12-13 08:54:42 +01:00
Laurent Navet
88fc43beeb kwin : replace Q_FOREACH with for(a:b)
replace Q_FOREACH loops with newer for (a:b) notation

Signed-off-by: Laurent Navet <laurent.navet@gmail.com>

REVIEW: 114222
2013-12-13 08:54:34 +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
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 Klapetek
54bc491c46 Port to KF5 renaming changes 2013-12-11 21:41:47 +01:00
Martin Gräßlin
c063978591 Adjust to new KGlobalAccel framework 2013-12-10 07:38:54 +01:00
l10n daemon script
68ce64de5c SVN_SILENT made messages (.desktop file) 2013-12-07 06:21:08 +00: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
Aleix Pol
f8468b4043 Drop KDE4Support in kde-workspace/kwin
REVIEW: 114316
2013-12-05 20:24:02 +01:00
Martin Gräßlin
a4169ae35f Remove unneeded KDebug include
REVIEW: 114289
2013-12-05 09:40:48 +01:00
Martin Gräßlin
affa7da944 [kcm-kwinrules] Add option for window decoration scheme 2013-11-25 10:21:21 +01:00
Martin Gräßlin
23a510c0b5 [kdecorations] Add a ::palette() to the decoration API
The ::palette() in KDecoration and KCommonDecoration returns the
QPalette the decoration should use for the decorated window. The
call delegates into the bridge and KWin core might provide a special
QPalette for a given Client depending on the _KDE_NET_WM_COLOR_SCHEME
property.
2013-11-25 09:44:23 +01:00
l10n daemon script
f9a9ecceb8 SVN_SILENT made messages (.desktop file) 2013-11-25 04:11:42 +00:00
l10n daemon script
1885a90393 SVN_SILENT made messages (.desktop file) 2013-11-24 06:42:15 +00:00
l10n daemon script
8484628fd0 SVN_SILENT made messages (.desktop file) 2013-11-24 04:09:32 +00:00
l10n daemon script
4abba66bf0 SVN_SILENT made messages (.desktop file) 2013-11-23 06:30:36 +00:00
l10n daemon script
551988ebd4 SVN_SILENT made messages (.desktop file) 2013-11-23 03:52:00 +00:00
Martin Gräßlin
20d03d5754 [kcmkwindesktop] Adjust to changes in NETRootInfo 2013-11-18 13:50:18 +01:00
l10n daemon script
d36319ebbe SVN_SILENT made messages (.desktop file) 2013-11-17 06:36:34 +00:00
l10n daemon script
833d1f85c2 SVN_SILENT made messages (.desktop file) 2013-11-17 04:07:54 +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
Martin Gräßlin
07294b49f2 [kcmdeco] Use new DecorationButton types for describing the buttons
Rather heavy change to get the kcm to no longer use the string based
definition of the buttons on the left and right.
2013-11-14 09:41:52 +01:00
Martin Gräßlin
f03104ac17 [kcmdeco] Connect PreviewItem to factory's recreateDeco signal 2013-11-14 09:41:52 +01:00
Martin Gräßlin
3ea18be574 [kcmdeco] Move KDecorationPreviewOptions into the Model
We need to have it around and not in the Preview widget to be able
to update the options when the buttons change.
2013-11-14 09:41:52 +01:00
Martin Gräßlin
aab6037c4a [kcmdeco] KIcon -> QIcon::fromTheme 2013-11-14 09:41:52 +01:00
Martin Gräßlin
b150d9ddc1 [kcmdeco] Clean up includes 2013-11-14 09:41:52 +01:00
Martin Gräßlin
a98dbd7460 [kcmdeco] Drop the old preview code
All the rendering to QPixmap code in the Model and the Preview is
deleted as it's no longer used.

The model still has the plugin for the border size functionality.
This probably needs a change in the API to make it completely bound
to the decoration and not a global thing.
2013-11-14 09:41:52 +01:00
Martin Gräßlin
1674824e79 [kcmdeco] Introduce a new PreviewItem for rendering QWidget based decos in QML
Using a QQuickPaintedItem for the rendering. The item gets the library
name from the model and loads the decoration with its own decoration
plugin. Thus each preview has its own plugin which eliminates the need to
constantly recreate the decoration as it is done with the preview.

Having a QQuickItem gives new possibilities. The item accepts hover
events and forwards them as enter and leave events to the widgets inside
the decoration. By that the mouse interaction of e.g. Oxygen is still
functional. If the decoration uses the new update approach the bridge is
forwarding the updates to the item and triggering a repaint so we even
have animations in the preview although the widget is never shown.
2013-11-14 09:41:52 +01:00
Martin Gräßlin
d6bf62eb3e [kdecorations] Drop initialParentWidget()
No longer needed for creating the preview and not set in our main
bridge. Thus it can go and we just use NULL as the parent widget.
2013-11-14 09:41:50 +01:00
Martin Gräßlin
51ee2e86d1 [kdecorations] Introduce new way to schedule updates in composited case
The PaintRedirector calls the new method KDecoration::render and passes
it's PaintDevice and the region to update to it. A decoration can
implement this method and provide an optimized implementation for the
painting which does not go through the deco's QWidget at all. In addition
the decoration can invoke an update() slot which will schedule a repaint
in the PaintRedirector and thus completely replaces the need for
intercepting paint events on the QWidget and also allows to add QWindow
based decorations in future.
2013-11-14 09:41:50 +01:00
Martin Gräßlin
62ae322e70 [kwin/tabbox] Re-add dependency to kdeclarative 2013-11-13 10:59:38 +01:00
l10n daemon script
da4610f06a SVN_SILENT made messages (.desktop file) 2013-11-13 06:29:31 +00:00
l10n daemon script
4edf01bd62 SVN_SILENT made messages (.desktop file) 2013-11-13 03:59:37 +00:00
David Edmundson
59e3d0e099 kde4_install_icons -> ecm_install_icons
REVIEW: 113600
2013-11-04 13:24:41 +01:00
l10n daemon script
feeb45445b SVN_SILENT made messages (.desktop file) 2013-11-03 06:20:25 +00:00
l10n daemon script
865bcdce38 SVN_SILENT made messages (.desktop file) 2013-11-03 03:52:50 +00:00
Bhushan Shah
935851a2b5 kDebug -> qDebug in kwin 2013-11-01 17:00:41 +05:30
Aurélien Gâteau
05b6de1002 ${KDE4Support_LIBRARIES} => KF5::KDE4Support
Fixes a few link errors
2013-10-29 13:00:46 +01:00
l10n daemon script
e01d259072 SVN_SILENT made messages (.desktop file) 2013-10-21 04:05:04 +00:00
Thomas Lübking
9bf14c2653 Merge branch 'KDE/4.11'
Conflicts:
	kwin/clients/aurorae/src/aurorae.cpp
2013-10-20 19:40:48 +02:00
Thomas Lübking
3692549170 fix deco config updates
- B2 linked to the wrong slot (instead of changed signal)
- border size change was not written (for B2, Laptop etc)
- Aurorae didn't recreate decos when required

BUG: 325946
FIXED-IN: 4.11.3
REVIEW: 113229
2013-10-20 19:37:14 +02:00
Sebastian Kügler
b68867463e Change KF5::plasma to KF5::Plasma
Library name has changed in plasma-framework to bring it in line with
KF5:CamelCasing naming.
2013-10-16 01:36:56 +02:00
l10n daemon script
ad3449f3b1 SVN_SILENT made messages (.desktop file) 2013-10-09 06:54:18 +00:00
l10n daemon script
23fbf4395f SVN_SILENT made messages (.desktop file) 2013-10-09 04:14:36 +00:00
Sebastian Kügler
1c3e540507 kde4_add_kdeinit_executable becomes kf5_add_kdeinit_executable 2013-10-08 01:00:27 +02:00
Sebastian Kügler
63b2a8f84a Add KCompletion to targets 2013-10-04 22:14:58 +02:00