Commit graph

715 commits

Author SHA1 Message Date
David Edmundson
b62bf43236 Avoid deleting an engine whilst components from our engine are still in use
Otherwise it can lead to crashes

Reviewed-by: Martin G
2015-01-28 14:12:25 +01:00
Marco Martin
63885cc5b3 use xembed for the qml view of window decorations modul
the only way to ensure the view won't randomly become black
(probably QQuickwidget won't be fixed in qt anytime soon or
ever in 5.x lifetime due to how architecturally is)

basically systemsettings has no control of what gets loaded in,
if one other kcm will call winId(), this one will break.

BUG:341971
2015-01-28 09:58:47 +01:00
Martin Gräßlin
3b6ab89617 [kcmkwin/deco] Do not runtime depend on QtQuick 2.4 (Qt 5.4)
Sorry, sorry, sorry! We need better runtime checks on the CI.
2015-01-27 14:08:12 +01:00
l10n daemon script
795ebbb879 SVN_SILENT made messages (.desktop file) 2015-01-27 12:18:48 +00:00
Martin Gräßlin
52793c5e5b [kcmkwin/deco] Fix build for Qt < 5.4
QQuickWidget::setClearColor is new in Qt 5.4. Sorry about the unintended
breakage of building with Qt 5.3.
2015-01-26 10:27:39 +01:00
Thomas Lübking
ce2fa727e8 Overhaul of deco kcm
- align with system palette
- base color for buttons and preview individually
  to create a visual gap (make them more standalone)
- downsized button config buttons to match up w/ preview
  appearance (and because it was simply to huge for a desktop thing)
- upsized preview to preferably show two elements at once
  (current + 2*1/2context)
- made the titlebar a visible visual element
- label the titlebar "Titlebar"
- move the (altered) hint to the drag-from area
- hint draggability with a pointing hand cursor
- less hardcoded values
- brief animations on button adding/removing

BUG: 337544
REVIEW: 122064
2015-01-22 01:31:31 +01:00
l10n daemon script
56b830202e SVN_SILENT made messages (.desktop file) 2015-01-21 09:49:18 +00:00
l10n daemon script
d173ff7412 SVN_SILENT made messages (.desktop file) 2015-01-13 12:47:17 +00:00
l10n daemon script
debe14d04e SVN_SILENT made messages (.desktop file) 2015-01-06 10:55:59 +00:00
Lukáš Tinkl
20a1cb2e33 extract the strings also from QML 2014-12-16 21:02:27 +01:00
Pino Toscano
04305bf1e0 fixuifiles 2014-12-10 12:05:43 +01:00
Martin Gräßlin
2fa0f2fecc [kcmkwin/deco] Drop outdated source and ui files
All the ui components no longer used in the decoration KCM.
2014-12-09 16:14:03 +01:00
Martin Gräßlin
d5233a6b6f [kcmkwin/deco] Bring back a decoration buttons configuration interface
The decoration button configuration interface is merged into the QML
part using two list views (left buttons, right buttons) and a grid
view for all the available buttons.
2014-12-09 16:07:27 +01:00
Martin Gräßlin
521627396f [kcmkwin/deco] Reconfigure deco after applying changes
Required hooks also added to KWin core and Aurorae.
2014-12-05 15:58:05 +01:00
Martin Gräßlin
7da6d3a41e [kcmkwin/deco] Add configuration for decoration plugin/themes
This brings back the configuration for decoration plugins. As a change
to the old variant the configure button is moved into the list view
together with the preview. It is enabled/disabled depending on data
provided by the DecorationModel. For a plugin the DecorationModel
queries for a boolean "kcmodule" key in the metadata. For a theme it
invokes the slot hasConfiguration with the theme name which returns
whether the theme provides configuration.

The actual opening of the configuration is triggered from the
PreviewBridge, which uses the existing KPluginFactory to load the
KCModule. The decoration plugin must provide the keyword "kcmodule"
for it.

So far Aurorae is adjusted and provides configuration for the Plastik
decoration. The interaction with the configuration module works, but
the configuration itself for Plastik seems to be currently broken.
2014-12-05 13:44:16 +01:00
Martin Gräßlin
2034e7e875 [kcmkwin/deco] Bring back KNewStuff support
KNewStuff is no longer hard-coded to Aurorae themes. Instead the
availability of KNewStuff is derived from the available plugin
metadata. If the section org.kde.kdecoration2 contains a key
"KNewStuff" it's value is interpreted as the knsrc config file name.
If there is at least one plugin with such a key KNS gets enabled.

If there are multiple plugins providing KNS support the download
button is turned into a button with a connected menu and each menu
entry points to one of the available resources. Of course this is
not optimal, but KNS doesn't allow the combining of multiple config
files.
2014-12-05 10:15:41 +01:00
Martin Gräßlin
623ac3faa3 [kcmkwin/deco] Fix defaults for border size and close window double click 2014-12-04 17:41:57 +01:00
Martin Gräßlin
6b7fd5b9bc [kcmkwin/deco] Only specify QStringLiteral("Normal") once 2014-12-04 17:41:18 +01:00
Martin Gräßlin
dc9437e59a [kcmkwin/deco] Add a filter and a QSortFilterProxyModel 2014-12-04 17:35:08 +01:00
Martin Gräßlin
39f9581d4f Bring back configuration options for Decorations
* Border Sizes
* Close menu double click

Both are added to the Settings and exposed in the decoration kcm.
As it started to no longer scale the kcm uses a ui file.

Still missing:
* buttons
* custom decoration configuration
* GHNS
* search
2014-12-04 16:28:06 +01:00
Martin Gräßlin
0646c58fe2 [kcmkwin/kwindecoration] Exclude buttons.cpp and configdialog.cpp from build
With that we should not have anything pulling in kdecoration.h
2014-12-02 15:21:15 +01:00
Martin Gräßlin
c2e53b9a2f Merge branch 'kdecorations2'
Conflicts:
	effects.cpp
	paintredirector.cpp
2014-12-02 08:38:10 +01:00
Martin Gräßlin
106e595709 DecorationSettings provides QVector for decorationButtons 2014-12-01 11:53:44 +01:00
Martin Gräßlin
027a7a1646 [kdecoration2] Decoration::shadow returns QSharedPointer
Adjust all components to use the QSharedPointer. Aurorae obviously has
to create a QSharedPointer, Shadow holds a QSharedPointer for the
DecorationShadow (advantage: is kept when the Decoration is destroyed),
and the KCM needs to add a property on PreviewItem to get access to the
Shadow. It's no longer a Q_PROPERTY on Decoration and we cannot re-add
it as a dynamic property (cannot be read from QML side).
2014-12-01 09:40:24 +01:00
Martin Gräßlin
d1bf38e92c [kdecoration2] Detect double clicks on the decoration title bar
No longer handled by the Decoration.
2014-11-28 14:50:21 +01:00
Martin Gräßlin
0cc86656c9 DecorationButtonType::QuickHelp -> DecorationButtonType::ContextHelp 2014-11-28 11:27:31 +01:00
Martin Gräßlin
211834edcc [kdecoration] ::paint uses QRect instead of QRegion 2014-11-28 10:26:23 +01:00
Martin Gräßlin
f103cd0bea DecorationShadow elements are QRects 2014-11-12 09:06:03 +01:00
Martin Gräßlin
faa78e187e Rename DecoratedClient::borderingScreenEdges to adjacentScreenEdges 2014-11-11 14:33:31 +01:00
Martin Gräßlin
dc85ab14f8 Decoration::windowFrameSection renamed to ::sectionUnderMouse 2014-11-11 13:17:50 +01:00
Martin Gräßlin
2fdafbb133 s/requestMaximize/requestToggleMaximization/g 2014-11-11 09:53:54 +01:00
Martin Gräßlin
cb9cbae36e Decoration::paint takes the repaint region 2014-11-11 09:39:45 +01:00
Martin Gräßlin
062d071fc5 [kwindecoration] Add a PreviewButtonItem to the declarative plugin
Allows to create a DecorationButton and renders a preview for it.
Very basic, doesn't forward mouse events, etc.
2014-11-03 16:12:54 +01:00
l10n daemon script
a010bbc6a7 SVN_SILENT made messages (.desktop file) 2014-11-02 21:49:41 +00:00
Martin Gräßlin
8dd0a8163f [kcmkwin/kwindecoration] Import a new decoration configuration module
Following features are supported:
* finds all plugins
** finds all themes for a theme-engine plugin
* renders previews for the plugin/themes
* loads currently used plugin/theme
* saves selected plugin/theme
* triggers config reload in KWin

Following features are currently not supported:
* Search
* Plugin configuration
* GHNS
* Button configuration
2014-10-31 07:53:04 +01:00
l10n daemon script
7d9831d8b4 SVN_SILENT made messages (.desktop file) 2014-10-23 08:55:48 +00:00
l10n daemon script
5288363274 SVN_SILENT made messages (.desktop file) 2014-10-17 09:07:36 +00:00
Volker Krause
5db2d5a556 Make constants const, saves a few symbols in the .data section. 2014-09-27 20:30:49 +02:00
l10n daemon script
08540b45eb SVN_SILENT made messages (.desktop file) 2014-09-21 08:48:08 +00:00
l10n daemon script
1205c9c170 SVN_SILENT made messages (.desktop file) 2014-09-07 08:46:08 +00:00
l10n daemon script
baf37deacd SVN_SILENT made messages (.desktop file) 2014-09-01 08:42:05 +00:00
l10n daemon script
5114d9b5da SVN_SILENT made messages (.desktop file) 2014-08-31 08:41:36 +00:00
l10n daemon script
f2fc577770 SVN_SILENT made messages (.desktop file) 2014-08-24 08:45:33 +00:00
l10n daemon script
1478a08c31 SVN_SILENT made messages (.desktop file) 2014-08-14 08:44:45 +00:00
l10n daemon script
f2b66e478f SVN_SILENT made messages (.desktop file) 2014-08-11 08:31:30 +00:00
l10n daemon script
3340a5fa1a SVN_SILENT made messages (after extraction) 2014-08-08 08:31:20 +00:00
l10n daemon script
2f5daf5f4b SVN_SILENT made messages (after extraction) 2014-08-07 07:56:52 +00:00
l10n daemon script
b48595e86a SVN_SILENT made messages (after extraction) 2014-08-06 07:57:49 +00:00
l10n daemon script
2c78ff8bfd SVN_SILENT made messages (.desktop file) 2014-07-25 10:15:29 +00:00
l10n daemon script
5179d4d3c9 SVN_SILENT made messages (.desktop file) 2014-07-16 09:40:44 +00:00