Commit graph

887 commits

Author SHA1 Message Date
Cyril Rossi
a3caf7f6dd Port KCM KWin Decoration to SettingStateBinding 2020-10-01 09:19:32 +02:00
Nicolas Fella
abca052004 [kcm/decoration] Port to KPluginLoader
Summary: KPluginTrader's future is uncertain. KPluginLoader is enough here

Test Plan: Open deco KCM. Themes are listed

Reviewers: #kwin, dfaure

Reviewed By: dfaure

Subscribers: dfaure, zzag, kwin

Tags: #kwin

Maniphest Tasks: T12173

Differential Revision: https://phabricator.kde.org/D25534
2020-09-30 15:50:52 +02:00
l10n daemon script
30b516eceb SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-09-30 06:16:48 +02:00
l10n daemon script
e534d5abad SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-09-26 05:57:20 +02:00
Vlad Zahorodnii
4ce853e8e4 Prettify license headers 2020-08-07 19:57:56 +00:00
Vlad Zahorodnii
1fb9f6f13a Switch to SPDX license markers
The main advantage of SPDX license identifiers over the traditional
license headers is that it's more difficult to overlook inappropriate
licenses for kwin, for example GPL 3. We also don't have to copy a
lot of boilerplate text.

In order to create this change, I ran licensedigger -r -c from the
toplevel source directory.
2020-08-07 19:57:56 +00:00
l10n daemon script
a1c0d43deb SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-07-23 06:10:20 +02:00
Vlad Zahorodnii
c03b4879f0 Merge branch 'Plasma/5.19' 2020-06-24 17:26:19 +03:00
Cyril Rossi
170741c499 KCM KWin Decoration : kcfgc File attribute should point to kcfg file
BUG: 423398
FIXED-IN: 5.19.3
2020-06-24 09:48:40 +02:00
l10n daemon script
430ca2a33e SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-06-18 08:32:20 +02:00
l10n daemon script
c10fe06d06 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-06-18 05:44:57 +02:00
l10n daemon script
8027ccd6d6 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-06-17 16:54:45 +02:00
l10n daemon script
0e117c49a1 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-06-17 14:12:29 +02:00
l10n daemon script
ce5b9c3612 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-06-11 09:38:33 +02:00
l10n daemon script
f18deb69f1 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-06-09 09:19:42 +02:00
Mikhail Zolotukhin
7226e75bc8 Notify about decoration theme change 2020-05-31 19:55:38 +00:00
Méven Car
464203c60e Clean #if version check blocks
Since 08a21ae7b6 we now depend on Qt 5.14
2020-05-28 11:43:29 +00:00
Kai Uwe Broulik
760765ed52 Merge branch 'Plasma/5.18' 2020-05-06 15:15:42 +02:00
Kai Uwe Broulik
5ea54eda5d [kcmkwin/kwindecoration] Don't exec() QDialog
Using nested event loops with QML is always troublesome.

BUG: 421053
FIXED-IN: 5.18.6

Differential Revision: https://phabricator.kde.org/D29473
2020-05-06 15:15:03 +02:00
l10n daemon script
2f6e9a6355 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-03-27 06:43:00 +01:00
Aleix Pol
cca0e15b45 Fix compiler warnings
Summary: No need to keep them around for no reason.

Test Plan: Tested the plugins I thought could be affected. Have been using it for a couple of days without problems

Reviewers: #kwin, zzag

Reviewed By: #kwin, zzag

Subscribers: zzag, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D28062
2020-03-17 15:07:52 +01:00
Mikhail Zolotukhin
df6baa4310 Merge branch 'Plasma/5.18' 2020-03-07 15:22:33 +03:00
Mikhail Zolotukhin
76c3174b01 Notify about decorations button order change
Summary:
This allows GtkConfig daemon to properly sync decorations buttons order for GTK CSD applications.

For 5.18.3

Test Plan:
1. Launch `kcmshell5 kwindecoration` and any GTK CSD app alongside
2. Change order of the buttons.
3. Window button order should be changed in GTK CSD app immediately (if `xsettingsd` is installed).

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D27904
2020-03-07 15:19:24 +03:00
Nicolas Fella
7159684ced Revert "[kcm/effects] Clip ListView"
Bad merge

This reverts commit b713044216.
2020-02-22 11:53:59 +01:00
Nicolas Fella
b713044216 [kcm/effects] Clip ListView
Summary:
Otherwise the content overflows the frame when scrolling.

QQC2 scrollview docs say "ScrollView does not automatically clip its contents. If it is not used as a full-screen item, you should consider setting the clip property to true"

Test Plan:
Before:
{F8121150}

After:
{F8121152}

Reviewers: #kwin, #plasma, ngraham

Reviewed By: ngraham

Subscribers: ngraham, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D27558
2020-02-22 11:52:49 +01:00
Nicolas Fella
cdc5ea19ab Revert "[kcm/effects] Clip ListView"
Bad merge

This reverts commit 5babf52df4.
2020-02-22 11:50:30 +01:00
Nicolas Fella
5babf52df4 [kcm/effects] Clip ListView
Summary:
Otherwise the content overflows the frame when scrolling.

QQC2 scrollview docs say "ScrollView does not automatically clip its contents. If it is not used as a full-screen item, you should consider setting the clip property to true"

Test Plan:
Before:
{F8121150}

After:
{F8121152}

Reviewers: #kwin, #plasma, ngraham

Reviewed By: ngraham

Subscribers: ngraham, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D27558
2020-02-22 11:48:51 +01:00
Yuri Chornoivan
90a73b39d4 Extract messages from header file as well, optimize extraction 2020-02-16 11:55:17 +02:00
Vlad Zahorodnii
827578577f [decoration] Implement the size property
Summary: See D26937

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D26939
2020-01-28 18:42:17 +02:00
David Edmundson
e0df390dbc [kcms/kwindecoration] Fix saving of window decoration plugin
Summary:
In the KCFG autogenerated code we check for HAVE_BREEZE_DECO without
including the relevant file. This always fails, and so we save the
default plugin name/library as org.kde.kwin.aurorae

This doesn't match kwin's concept of the default and so we just fail to
load it.

BUG: 416525

Test Plan:
Reproduced
Saved a config

Reviewers: #kwin, ngraham

Reviewed By: ngraham

Subscribers: ngraham, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D26814
2020-01-21 18:41:59 +00:00
Cyril Rossi
687fcd8203 KCM KWinDecoration port to KConfigXT
Summary: Port to KConfigXt and also consider immutable element

Reviewers: #kwin, ervin, bport, mart, davidedmundson

Subscribers: zzag, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D25949
2020-01-14 11:01:10 +01:00
l10n daemon script
ab85638946 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2020-01-04 06:12:32 +01:00
Laurent Montel
45177bb29b Remove deprecated method
Summary: Remove some deprecated method

Reviewers: zzag

Reviewed By: zzag

Subscribers: davidedmundson, zzag, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D25735
2019-12-23 14:09:02 +01:00
Mikhail Zolotukhin
d3da912d72 Notify about window decorations buttons order changes
Summary:
This makes it possible to detect these changes via KConfigWatcher.

This is needed for D25670

Reviewers: #kwin, ngraham, davidedmundson

Reviewed By: #kwin, ngraham, davidedmundson

Subscribers: ngraham, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D25695
2019-12-03 12:10:10 -07:00
Filip Fila
0ece47afa8 Merge branch 'Plasma/5.17' 2019-11-28 19:40:35 +01:00
Filip Fila
fd69924e51 [kcmkwin/kwindecoration] Better presentation of tabs
Summary:
Tabs in the Window Decoration KCM look awkward now because the frame is drawing an extra line while the tab bar is also drawing its line.

This patch just slightly alters an existing hack so that the frame's top line can't be seen.

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D25582
2019-11-28 19:39:21 +01:00
l10n daemon script
d2d855ba20 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2019-11-19 05:39:12 +01:00
Nicolas Fella
0789539a9b Remove some unused includes
Test Plan: Builds

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D25243
2019-11-10 20:26:35 +01:00
l10n daemon script
2bb025cbdb SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2019-11-02 05:41:14 +01:00
Albert Astals Cid
e144748c7a Add some const &
Summary:
Won't make things go much faster since everything that was
being passed by value is refcounted but still const & is a bit faster
than refcounting

For shared pointers instead of adding const & we move them into the
destination variable saving some cpu usage but at the same time making
clear the pointer is being stored by not being const &

Reviewers: zzag

Reviewed By: zzag

Subscribers: zzag, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D25022
2019-10-30 19:23:01 +01:00
Nate Graham
9e9c9a68bd Merge branch 'Plasma/5.17' 2019-10-28 12:46:04 -06:00
Nate Graham
a151edd29b [kcmkwin/kwindecoration] Fix default window size in KCMShell
This also fixes a binding loop.

BUG: 413557
FIXED-IN: 5.17.2
2019-10-28 12:43:33 -06:00
Kai Uwe Broulik
95385e81da Merge branch 'Plasma/5.17' 2019-10-23 13:49:08 +02:00
Kai Uwe Broulik
2ce1d99221 [kcmkwin/kwindecoration] Elide "theme default border size" CheckBox
Otherwise the layout explodes.
Unfortunately it seems Layouts don't shrink the items within even if there's not enough room at all, so I need this fillWidth + maximumWidth workaround.

Differential Revision: https://phabricator.kde.org/D24885
2019-10-23 13:48:21 +02:00
l10n daemon script
fe27d39b5c SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2019-10-17 05:41:38 +02:00
Vlad Zahorodnii
62a7db7028 Use nullptr everywhere
Summary:
Because KWin is a very old project, we use three kinds of null pointer
literals: 0, NULL, and nullptr. Since C++11, it's recommended to use
nullptr keyword.

This change converts all usages of 0 and NULL literal to nullptr. Even
though it breaks git history, we need to do it in order to have consistent
code as well to ease code reviews (it's very tempting for some people to
add unrelated changes to their patches, e.g. converting NULL to nullptr).

Test Plan: Compiles.

Reviewers: #kwin, davidedmundson, romangg

Reviewed By: #kwin, davidedmundson, romangg

Subscribers: romangg, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D23618
2019-09-19 17:48:21 +03:00
Vlad Zahorodnii
dcf91d4321 Cleanup style in CMakeLists.txt files
We have lots of inconsistency at the moment in CMakeLists.txt files. Most
of it is due to kwin being a very old project. This change hopefully fixes
all of it.
2019-09-17 16:03:05 +03:00
Nate Graham
35f6f79dda [kcmkwin/kwindecoration] Slightly improve tab bar's integration with frame
Summary:
The QML Window Decorations KCM uses a fake tab bar with code copied from Plasma-pa, due
to the lack of a real QML tab widget (see https://bugs.kde.org/show_bug.cgi?id=394296).
As a result, we have to manufacture our own by combining a TabBar with a frame in which
the content sits, and any change made to one needs to be applied to the other as well.

The Plasma-pa version just received a minor change in D22533. This patch implements the
same change for the Window Decorations KCM so they don't look inconsistent with one
another.

Test Plan: Before-and-afters are identical to the images in D22533

Reviewers: #kwin, #vdg, filipf

Reviewed By: #vdg, filipf

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D22886
2019-08-01 16:44:28 -06:00
Vlad Zagorodniy
8af2fa73dc Run clang-tidy with modernize-use-override check
Summary:
Currently code base of kwin can be viewed as two pieces. One is very
ancient, and the other one is more modern, which uses new C++ features.

The main problem with the ancient code is that it was written before
C++11 era. So, no override or final keywords, lambdas, etc.

Quite recently, KDE compiler settings were changed to show a warning if
a virtual method has missing override keyword. As you might have already
guessed, this fired back at us because of that ancient code. We had
about 500 new compiler warnings.

A "solution" was proposed to that problem - disable -Wno-suggest-override
and the other similar warning for clang. It's hard to call a solution
because those warnings are disabled not only for the old code, but also
for new. This is not what we want!

The main argument for not actually fixing the problem was that git
history will be screwed as well because of human factor. While good git
history is a very important thing, we should not go crazy about it and
block every change that somehow alters git history. git blame allows to
specify starting revision for a reason.

The other argument (human factor) can be easily solved by using tools
such as clang-tidy. clang-tidy is a clang-based linter for C++. It can
be used for various things, e.g. fixing coding style(e.g. add missing
braces to if statements, readability-braces-around-statements check),
or in our case add missing override keywords.

Test Plan: Compiles.

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: davidedmundson, apol, romangg, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D22371
2019-07-22 20:03:22 +03:00
l10n daemon script
93ab16b995 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2019-07-18 05:28:09 +02:00