Commit Graph

15576 Commits

Author SHA1 Message Date
David Edmundson
582d9ed38d Copy DataEngine relays before itterating
relay->checkQueueing emits a signal to all observers. As it's a signal
anything can happen at that point. It's seemingly common for a receiver
to connect/disconnect a new visualisation which in turn alters
d->relays.

This broke when a foreach (with implicit shallow copy) was ported to a
for statement.

This report contains a good analysis and test case

BUG: 422973

Probably also:

BUG: 421392
BUG: 423713
BUG: 423776
BUG: 422230
BUG: 423081
2020-07-07 08:18:23 +00:00
Eugene Popov
b713e96531 Make signal strength in network icons more visible
Currently, I see that the icons that show available and connected networks are not visible enough. For example, I find it difficult to determine the signal strength of the network without peering. I would like these icons to be more visible, and therefore I propose to reduce the opacity of faded lines. As for me, this solution makes determining the signal level more convenient and the icons more informative.

BUG: 423843
2020-07-04 19:47:57 +00:00
l10n daemon script
fb87efff68 GIT_SILENT Upgrade ECM and KF5 version requirements for 5.72.0 release. 2020-07-04 09:58:59 +00:00
Nate Graham
1ead97e8c9 Show clearer warning if the requested KCM could not be found
In particular, make it clear that we only support QML KCMs.
2020-07-03 04:45:10 +00:00
Nate Graham
8a4576a751 [spinbox] Don't use QQC2 items when we should use PlasmaComponents
BUG: 423445
FIXED-IN: 5.72
2020-07-03 04:42:27 +00:00
Friedrich W. H. Kossebau
f96f17c285 Revert "Port away from deprecated qmlRegisterInterface<>() overload"
This changed the name of the types for which the classes where registered
from unnamespaced "Service", "ServiceJob", "DataSource" to the fully
namespaced "Plasma::Service", "Plasma::ServiceJob", "Plasma::DataSource",
so making the old names no longer known to the system and thus breaking
support for any invokable methods which use the unnamespaced type name.

And not only that, qmlRegisterInterface<T>("Name") also registered the
classes' pointer counterparts T* by the name "Name*", so here
"Service*", "ServiceJob*", "DataSource*". While the new again instead
does this with the fully namespaced names "Plasma::Service*",
"Plasma::ServiceJob*", "Plasma::DataSource*", so also breaking support
here.

This reverts commit 7c4f5c5f1e.
2020-07-01 20:09:49 +00:00
Friedrich W. H. Kossebau
71fd52c1ce Revert "Use fully qualified identifiers for metaobject types"
Is a signature change for the Qt meta system in a public header, so
potentially could break something for someone.

This reverts commit ac6bff575f.
2020-07-01 20:09:49 +00:00
David Redondo
e690b92d3e Use QDBusMessage::createMethodCall instead of QDBusInterface
Saves one blocking introspection call
2020-07-01 15:00:13 +00:00
Aleix Pol
ac6bff575f Use fully qualified identifiers for metaobject types
Fixes QML error:
share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/items/StatusNotifierItem.qml:64: Error: Unknown method return type: ServiceJob*

BUG: 423643
2020-07-01 03:47:27 +02:00
Friedrich W. H. Kossebau
7c4f5c5f1e Port away from deprecated qmlRegisterInterface<>() overload
GIT_SILENT
2020-06-26 16:20:40 +02:00
Friedrich W. H. Kossebau
94d7efaec2 Port away from deprecated QQmlListProperty<T> constructor
GIT_SILENT
2020-06-26 15:53:04 +02:00
Friedrich W. H. Kossebau
396c643154 Port away from deprecated qmlRegisterType
GIT_SILENT
2020-06-26 15:48:28 +02:00
Friedrich W. H. Kossebau
eb3654edeb No need to go via QMatric, use QTransform directly
GIT_SILENT
2020-06-26 14:33:08 +02:00
Friedrich W. H. Kossebau
fda9bae9b1 Remove unused method SvgPrivate::matrixForElement
GIT_SILENT
2020-06-26 14:25:54 +02:00
Friedrich W. H. Kossebau
e18a939897 Port away from deprecated QLatin1Literal
GIT_SILENT
2020-06-26 14:24:41 +02:00
Friedrich W. H. Kossebau
4f8a97a9cd Port away from deprecated QSvgRenderer::matrixForElement()
GIT_SILENT
2020-06-26 06:26:07 +02:00
Friedrich W. H. Kossebau
da3d1c72ce Port away from deprecated QBasicAtomicInteger<>::load()
GIT_SILENT
2020-06-26 06:05:41 +02:00
Friedrich W. H. Kossebau
68984d91f7 Port away from deprecated QSet<>::fromList
GIT_SILENT
2020-06-26 06:03:24 +02:00
Friedrich W. H. Kossebau
d6f15e9f2b Port away from deprecated QList<>::toSet
GIT_SILENT
2020-06-26 06:03:03 +02:00
Friedrich W. H. Kossebau
06b8e78fad Port away from deprecated QString::split(..., QString::SplitBehavior) overload
GIT_SILENT
2020-06-26 05:58:26 +02:00
Friedrich W. H. Kossebau
633eeaafdd Port away from deprecated QDateTime(QDate) constructor
GIT_SILENT
2020-06-26 05:55:29 +02:00
Friedrich W. H. Kossebau
fe73c236db Plasma components: restore lost color control of TabButton label
Accidentally removed in 3de1c2462e
2020-06-22 15:04:32 +00:00
Nate Graham
e1475e0907 Introduce PlaceholderMessage
This is a clone of the Kirigami component that we can use in Plasma
applets until we arrive at a solution for styling QQC2 items using the
Plasma style (https://phabricator.kde.org/T13256).

See dependent patches:
- plasma-workspace: https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/73
- bluedevil: https://invent.kde.org/plasma/bluedevil/-/merge_requests/1
- print-manager: https://invent.kde.org/utilities/print-manager/-/merge_requests/1
- plasma-vault: https://invent.kde.org/plasma/plasma-vault/-/merge_requests/3

Merge request: https://invent.kde.org/frameworks/plasma-framework/-/merge_requests/13
2020-06-19 22:45:19 +00:00
Nate Graham
e6b8499304 [calendar] Reduce month label's size
Level 1 is too large for this, as it's typically used for the entire
window or popup's title. The smaller level 2 is therefore more
appropriate so that when the parent window supplies its own level 1
heading, the calendar month label don't inappropriately be the same size.

Needed for https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/98
2020-06-18 15:30:28 -06:00
l10n daemon script
af8ed75b29 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:32:17 +02:00
Nate Graham
3d73484c32 [ExpandableListItem] Use same logic for action and arrow button visibility 2020-06-17 08:02:42 -06:00
l10n daemon script
9683f15a36 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 13:59:56 +02:00
l10n daemon script
d0d6e73b39 GIT_SILENT Upgrade KF5 version to 5.72.0. 2020-06-13 12:43:38 +00:00
Vlad Zahorodnii
4ddf0d9944 [Dialog Shadows] Port to KWindowSystem shadows API
Summary: BUG: 416640

Test Plan: Run `qmlscene tests/dialog.qml`

Reviewers: #plasma, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: kde-frameworks-devel

Tags: #frameworks

Maniphest Tasks: T12496

Differential Revision: https://phabricator.kde.org/D26503
2020-06-11 13:18:40 +03:00
Chris Holland
5be495b4d7 Symlink widgets/plasmoidheading.svgz in breeze light/dark
PlasmoidHeading.qml only draws "widgets/plasmoidheading" if
fromCurrentTheme=true, so Breeze Light/Dark were not drawing it.
2020-06-09 20:27:04 -04:00
Chris Holland
7005ef0ec8 Fix Kirigami.Units.devicePixelRatio=1.3 when it should be 1.0 at 96dpi
Summary:
I recently noticed that `Kirigami.Units.devicePixelRatio` was `1.3` even though I was at the default 96dpi when writing a widget's config.

{F8287886}

There's 4 different `Units.qml`, and I'm not certain which does what. 2 are in `krigiami` and the other 2 are in `plasma-framework`.

```
$ locate /Units.qml | grep /usr/
/usr/lib/qt/qml/org/kde/kirigami.2/Units.qml
/usr/lib/qt/qml/org/kde/kirigami.2/styles/Plasma/Units.qml
/usr/lib/qt/qml/org/kde/kirigami.2/styles/org.kde.desktop/Units.qml
/usr/lib/qt/qml/org/kde/kirigami.2/styles/org.kde.desktop.plasma/Units.qml
```

* 2 years ago [`kirigami/src/controls/Units.qml`](https://github.com/KDE/kirigami/blame/master/src/controls/Units.qml#L75) (`/usr/lib/qt/qml/org/kde/kirigami.2/Units.qml`) was changed from `13/10 = 1.3` to multiply by `13*0.75` so that `9.75/10 = 0.975` (then `max(1, 0.975) = 1`).

-----

There's 2 files owned by `plasma-framework`. The `/styles/Plasma/Units.qml` binds PlasmaCore's `units.devicePixelRatio`, so that leaves `/styles/org.kde.desktop.plasma/Units.qml`.

```
$ pacman -Qo /usr/lib/qt/qml/org/kde/kirigami.2/styles/org.kde.desktop.plasma/Units.qml
/usr/lib/qt/qml/org/kde/kirigami.2/styles/org.kde.desktop.plasma/Units.qml is owned by plasma-framework 5.69.0-2
```

This patch edits the `org.kde.desktop.plasma` style, and fixes `qmlscene KirigamiDevicePixelRatioTest.qml`, and `plasmashell` widget configs, and `plasmoidviewer` widget configs.

The Kirigami patch is D29462

Test Plan:
You can edit `/usr/lib/qt/qml/org/kde/kirigami.2/styles/org.kde.desktop.plasma/Units.qml` then run:

* https://gist.github.com/Zren/621338b8cda7c550d7b43f8ea1ba71a7
* `qmlscene KirigamiDevicePixelRatioTest.qml`

and `Kirigami.Units.devicePixelRatio` should equal `1`.

Reviewers: #kirigami, mart

Reviewed By: #kirigami, mart

Subscribers: davidre, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D29463
2020-06-09 08:46:15 -06:00
Nate Graham
7f9e189d87 Add property to access the ExpandableListItem loader's item 2020-06-07 08:46:39 -06:00
l10n daemon script
3472f84b3e GIT_SILENT Upgrade ECM and KF5 version requirements for 5.71.0 release. 2020-06-06 19:36:27 +00:00
Friedrich W. H. Kossebau
27395f956e API dox: note version since when API is deprecated
GIT_SILENT
2020-06-04 20:53:09 +02:00
Friedrich W. H. Kossebau
7e65531018 Remove setting of outdated KDE4-times deprecation flag
GIT_SILENT
2020-06-04 20:49:41 +02:00
Nate Graham
df64b09eec Don't unnecessarily and inappropriately attempt to require Qt 5.14
DragHandler is in Qt 5.12, so we can use QtQuick 2.12 instead of 2.14
2020-06-03 10:12:10 -06:00
l10n daemon script
1049bca147 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-05-31 20:19:54 +02:00
Jonah Brüchert
773d05d29b PC3: Add separator to toolbar 2020-05-28 23:41:31 +00:00
Marco Martin
50a699f9e3 Merge branch 'mart/headerGroup' 2020-05-25 11:16:52 +02:00
Friedrich W. H. Kossebau
4bd45c6de9 Fix build with KF set to EXCLUDE_DEPRECATED_BEFORE_AND_AT=CURRENT
Summary: NO_CHANGELOG

Reviewers: #plasma, mart, apol

Reviewed By: apol

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D29600
2020-05-24 16:05:26 +02:00
David Faure
50530a7739 Port plasma-framework away from KRun 2020-05-22 22:36:25 +02:00
Kai Uwe Broulik
c46a0dbf00 [ToolTip] Make mainText use PlainText as per documentation 2020-05-22 18:01:10 +02:00
Ahmad Samir
e63b2092d0 [PackageUrlInterceptor] Minor code optimisation
This gets rid of QRegularExpression and uses plain string operations,
which is always a faster route.
2020-05-22 12:44:42 +00:00
Marco Martin
5884df4cfc support the Header color grgoup
Support the new Header color group in KColorScheme by proxying it in
Plasma::Theme and the kirigami styles here
2020-05-21 18:43:38 +02:00
Nate Graham
1636b566bd Implement scroll and drag adjustment of values for SpinBox control
Summary:
Currently adjusting the value by scroll and click/touch+drag are not implemented.
This patch implements them.

Test Plan:
As far as I can tell, the `PlasmaComponents3.Spinbox` is not actually used anywhere in Plasma, so test with D29535:
{F8301480}

Reviewers: #vdg, #plasma, ahiemstra

Reviewed By: ahiemstra

Subscribers: ahiemstra, abetts, ndavis, cblack, kde-frameworks-devel

Tags: #frameworks

Maniphest Tasks: T9460

Differential Revision: https://phabricator.kde.org/D29534
2020-05-20 07:38:15 -06:00
Nate Graham
5ef8b1a189 Use font: instead of font.pointSize: where possible
Summary:
Otherwise we're discarding style information possibly set in
the user's small font choices when we want to set a smaller
font.

Test Plan: Stuff that's suposta look small still looks small

Reviewers: #plasma, cblack

Reviewed By: #plasma, cblack

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D29436
2020-05-19 10:18:23 -06:00
Laurent Montel
d36ad128e7 GIT_SILENT: we don't use phabricator anymore 2020-05-19 07:14:57 +02:00
Jonah Brüchert
ea73c6f60d
kirigamiplasmastyle: Add AbstractApplicationHeader implementation 2020-05-18 11:36:22 +02:00
David Edmundson
c215c54ece Avoid potential disconnect of all signals in IconItem
Summary:
m_svgIcon can be null.

disconnect(q, nullptr, nullptr, nullptr); would have pretty catastrophic
consequences as it disconnects everything. Anyone listening for
QObject::destroyed of IconItem for cleanup would no longer get anything.
That could lead to obscure conditions.

ShaderEffectSource watches for the source being destroyed for cleanup
and we have a newly introduced crash with ShaderEffectSource that seems
to come from this patch.

BUG: 421170

Test Plan:
Someone who could reproduce the crash reliably confirms it fixes the
issue

Reviewers: #plasma

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D29742
2020-05-14 12:42:58 +01:00
David Faure
54cc2200cc GIT_SILENT increase KF_DISABLE_DEPRECATED_BEFORE_AND_AT 2020-05-10 00:40:03 +02:00