Commit graph

2984 commits

Author SHA1 Message Date
Ismael Asensio
7cf74d7df7 Revert "[kwinrules] Show defaults indicator in System Settings"
That commit broke CI's build, while it's building fine locally.

Let's revert it until having a better understanding of the cause.
Also revert the attempt to fix it, which didn't succeed.

This reverts commit 9cbac6fe3a.
This reverts commit 3e15f64055.
2020-10-25 21:26:40 +01:00
Ismael Asensio
3e15f64055 Fix CI error caused by 9cbac6fe
Include header "rulebookdata.h" instead of class forwarding.
The header is automatically generated by kcmutils_generate_module_data
and includes a namespace
2020-10-25 20:32:41 +01:00
Ismael Asensio
9cbac6fe3a [kwinrules] Show defaults indicator in System Settings
The default is having no rules, so the indicator will show
whenever there is one or more rules in the list.
2020-10-25 18:57:44 +01:00
Laurent Montel
2ac8611523 If include is define in .h remove it if it's defined in .cpp too (scripted) 2020-10-23 21:37:16 +02:00
Luigi Toscano
773e0355b3 Generic wording for apps which can remember their settings
Only a subset of KDE applications (part of KXMLGUI ones) support
this setting, and on the other hand non KDE applications
may support it as well.
As there is no way to identify the subset of affected applications
not even with technical terms, make the description a bit more
generic, leaving it open to future improvements to the set of
supported applications.
2020-10-21 19:17:23 +00:00
Alexander Lohnau
d1a0c1491a Do not explicitely define Exec line for KCM 2020-10-19 15:53:26 +00:00
Cyril Rossi
d11daecce5 KCM KWinTabbox use KCModuleData
Allow to display a dot in the category list when settings has changed
from default.

CCBUG: 426775
2020-10-14 12:10:36 +00:00
l10n daemon script
5cb6f51ef6 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-10-11 06:01:48 +02:00
l10n daemon script
237d52be01 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-10-09 06:39:13 +02:00
Ismael Asensio
23788ad9b9 [kcm/kwinrules] Add properties to a rule one-by-one
Change the labels to singular `Property` and close the property sheet
after clicking on one item.

The behaviour of the sheet is now more similar to a menu, and not so
much as a dialog which needs to be dismissed to go on.

The idea is to simplify the rule editor workflow and make it more evident
to the users. By making the `Add property` close after each selection,
the user can see immediately that the property has been added to the
rule list so they can edit it.

Also use ListView transitions to add visual hints when adding
or removing properties, and try to position the new added item
into the visible view.
2020-10-07 23:08:23 +02:00
Benjamin Port
7546af6b4c KCM KWin Decoration: Add module data
depends on https://invent.kde.org/frameworks/kcmutils/-/merge_requests/19
2020-10-07 12:29:02 +02:00
Benjamin Port
5290583f8a KCM KWin Decoration: Remove isDefault
Custom code for isDefault is not needed. Indeed, testing dropdown value is not needed to know if we have a default value or not. Testing theme and border size auto is enough, and it's done automatically by KConfigXT
2020-10-07 10:14:07 +00:00
Ismael Asensio
715f0dbbcc [kcm/kwinrules] Port to new Connections syntax
While at it remove `FIXME`comment that no longer applies
2020-10-02 23:19:59 +00:00
Nicolas Fella
3694580e2b [kcms/effectmodel] Use KPluginMetaData to load scripted config
Instead of going through the semi-deprecated KPluginTrader and KPluginInfo we can use KPluginLoader directly.
2020-10-01 14:28:46 +00:00
Cyril Rossi
a3caf7f6dd Port KCM KWin Decoration to SettingStateBinding 2020-10-01 09:19:32 +02:00
Albert Astals Cid
743b06d3a1 Fix kwin_rules_dialog not showing translated strings
BUGS: 427172
2020-10-01 00:29:13 +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
Cyril Rossi
99bed106bf KCM KWin Manage default Highlight indicator for settings not handled by KCModule
For the following KCM :
* KWin Options
* KWin Screen Edges
* KWin Tabbox

KCModule introduce an indicator to show which settings have changed from
default value. Unfortunately some KCM have settings' states which are not managed
automatically by the KCModule thus we have to handle it manually.

see https://invent.kde.org/frameworks/kconfigwidgets/-/merge_requests/9
2020-09-30 09:10:23 +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
0c266e760b Replace remaining usages of old connect syntax with new connect syntax
This change replaces the remaining usages of the old connect syntax with
the new connect syntax.

Unfortunately, there are still places where we have to use SIGNAL() and
SLOT() macros, for example the stuff that deals with d-bus business.

Clazy was used to create this change. There were a few cases that needed
manual intervention, the majority of those cases were about resolving
ambiguity caused by overloaded signals.
2020-09-24 09:33:45 +00:00
l10n daemon script
54b654dcad 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-17 06:21:21 +02:00
l10n daemon script
8026da5309 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-11 05:58:24 +02:00
Vlad Zahorodnii
bfb257c9ed kcmkwin/tabbox: Port away from deprecated KTitleWidget::setPixmap()
KTitleWidget::setPixmap(MessageType, ImageAligment) has been deprecated
in favor of KTitleWidget::setIcon() method.
2020-09-09 13:53:26 +00:00
l10n daemon script
a457bd4310 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-04 06:04:49 +02:00
Alexander Lohnau
0d3c20d386 Clear plugins after changing KNS entires
BUG: 382136
FIXED-IN: 5.20
2020-08-31 06:35:42 +00:00
Nate Graham
5ba3793cf9 [kcmkwin/kwinoptions] Add option to disable window position memory for KDE apps
This adds a setting to the window options KCM to disable KDE apps
remembering their own window positions on X11, and instead always use
the KWin placement modes.

The setting sets an option in `kdeglobals`, rather than kwinrc, as it is not
a KWin-specific option *per se*. The UI is also hidden on Wayland, as it it
not relevant there because the functionality it disables does not work on
Wayland. Instead, remembering window positions will eventually be implemented
in a different way and affect all windows, not just KDE windows.

See https://invent.kde.org/frameworks/kxmlgui/-/merge_requests/14 for
more details.

CCBUG: 415150
2020-08-28 16:43:51 +00:00
Alexander Lohnau
4e481d0e66 Add uninstall button for kwin scripts
BUG: 315829
FIXED-IN: 5.20
2020-08-28 15:32:44 +00:00
Alexander Lohnau
bde274eb70 Fix KNS deprecations 2020-08-28 15:22:17 +02:00
Alexander Lohnau
b73db9fd6b Port knsrc file to explicit syntax for kpackage 2020-08-27 08:41:10 +00:00
l10n daemon script
72eb1153db 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-08-21 06:15:23 +02:00
Aleix Pol
8de0f8223d Fix compiler warning
No need to copy
2020-08-14 16:50:08 +02:00
Aleix Pol
8810bf3408 Remove unneeded includes of QDesktopWidget 2020-08-14 16:48:19 +02:00
Nicolas Fella
a15966c723 Port away from KMimeTypeTrader
It is about to be deprecated

See https://phabricator.kde.org/T12177
2020-08-12 00:24:23 +02:00
Vlad Zahorodnii
c8433e5194 Add missing contact marker angle brackets 2020-08-07 19:57:56 +00: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
d39c9bab2d 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-08-06 06:03:48 +02:00
l10n daemon script
e15004ff98 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-28 06:11:46 +02: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
Cyril Rossi
3609a029ea KCM KWin Options setting ActiveMouseScreen set proper default value
Fix regression that was introduced by a mismatch in the default value of
ActiveMouseScreen option between kwin.kcfg and kwinoptions_settings.kcfg

BUG: 424389


(cherry picked from commit c853f8313a213a0f7d0f98f662f7e98849d547ca)
2020-07-22 10:37:30 +00:00
Cyril Rossi
0fad9cc86c KCM KWin Options : propagate defaultsIndicatorVisibleChanged to children KCModule 2020-07-20 15:36:01 +02:00
Nate Graham
898bd496d8 Merge branch 'Plasma/5.19' 2020-06-25 09:46:22 -06:00
Ismael Asensio
ad3d2f5acf Provide a mask for flag-type properties (window types) 2020-06-25 15:44:11 +00:00
Ismael Asensio
8b9472e0bf [kcm/kwinrules] Fix types property for NET::AllTypesMask
When the user selects all of the types or none of them, the "types"
property must be set to a special value (`NET::AllTypesMask = -1`),
different than the sum of all the flags together.

This re-implements this behaviour as the old KCM, fixing some heuristics
that prevented finding the rule corresponding to the current window.

The enum name that handles this property has been changed to `NetTypes`
to make it more explicit.

BUG: 423214
FIXED-IN: 5.19.3

TEST PLAN:
1. Open the `Application specific settings` on a window via menu
2. Select every "Window Type" (or none of them)
3. Give the rule a different name than the default and save
4. Open it again and check that the same rule is found
2020-06-25 15:44:11 +00:00
Ismael Asensio
eb6e439335 Merge branch 'Plasma/5.19' 2020-06-24 21:22:43 +02:00
Ismael Asensio
3bfc750a79 [kcm/kwinrules] Fix detection of wmclass property
Property `wmclass` of a window rule works in a special way, as it can have
two meanings depending on `wmclasscomplete` flag:
- false: only matches `resourceClass`
- true: matches `resourceName` and `resourceClass`

This MR fixes two subtle bugs when detecting the properties of a window:

In the first case, `resourceName` was being wrongly set instead, which
prevented window matching for windows where those two values differ.

Also, the `wmclass` field was always set to `resourceName` independently
of `wmclasscomplete` property.

BUG: 423138
FIXED-IN: 5.19.3
2020-06-24 18:13:42 +00: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
Nate Graham
2af16f1ee0 Merge branch 'Plasma/5.19' 2020-06-22 07:49:27 -06:00