Commit Graph

15428 Commits

Author SHA1 Message Date
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
l10n daemon script
5fb1e90f9c GIT_SILENT Upgrade KF5 version to 5.71.0. 2020-05-09 11:33:43 +00:00
Niccolò Venerandi
1bc004e5c6 Fix rounded borders
Summary: This makes borders of elements using plasmoidHeading rounded again

Test Plan:
After:
{F8289023}

Clearing cache might be needed here.

Reviewers: #plasma, broulik

Reviewed By: #plasma, broulik

Subscribers: broulik, ngraham, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D29479
2020-05-06 21:47:10 +02:00
Nate Graham
416f82f8f7 Use small font for ExpandableListItem subtitle
Summary:
We're moving towards using the small font for subtitles in Kirigami BasicListItem (D29432)
so we should probably do the same here since it has the same title + subtitle layout.

Test Plan:
Before: {F8284752}

After: {F8284751}

Reviewers: #plasma, #vdg, broulik, ndavis

Reviewed By: #vdg, ndavis

Subscribers: cblack, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D29434
2020-05-06 08:55:45 -06:00
Carson Black
68d5995c63 Add smallFont to Kirigami plasma style
Test Plan: {F8283833}

Reviewers: #kirigami, mart

Reviewed By: #kirigami, mart

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D29412
2020-05-04 10:35:18 -04:00
Filip Fila
1b1018e687 [Plasmoid Heading] Draw the heading only when there is an SVG in the theme
Summary:
We're the only theme with the appropriate heading svgs that make the headers and footers look as they should.

All the other themes fall back to Breeze, which is not a good look for some of them:
- the heading is too jarring compared to applet background
- the heading does not extend all the way vertically and horizontally

To solve this, to avoid degrading unmaintained themes and to give themes a chance to adjust on their own terms, this patch makes the heading visible only when the needed SVG exists in the theme.

Test Plan:
Avoids this:
{F8276897}

{F8276896}

Breeze still works as it should.

Reviewers: #vdg, #plasma, niccolove, ngraham

Reviewed By: #vdg, niccolove, ngraham

Subscribers: ngraham, niccolove, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D29352
2020-05-03 18:25:39 +02:00
l10n daemon script
8f1034fbe8 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-03 06:05:07 +02:00
l10n daemon script
e16cbe2aa9 GIT_SILENT Upgrade ECM and KF5 version requirements for 5.70.0 release. 2020-05-02 22:01:45 +00:00
Konrad Materka
4b0d4c4bda [PlasmaCore.IconItem] Regression: fix crash on source change
Summary:
When SvgSource is changed, old one is deleted. Connections are not automatically disconnected.
This change disconnects connections and fixes regression introduced in D28470.

BUG: 420801
FIXED-IN: 5.70

Test Plan:
STEPS TO REPRODUCE
1. click on mute button for a device
2. click on the desktop to collapse the applet
OBSERVED RESULT
crash in step 1 and in the rare case it doesn't crash it crash in step 2
EXPECTED RESULT
don't crash

Reviewers: #plasma, #frameworks, ngraham, davidedmundson

Reviewed By: ngraham

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D29314
2020-04-30 22:27:32 +02:00
Konrad Materka
5a3fb570fe [PlasmaCore.IconItem] Refactor source handling for different types
Summary: There are 3 possible strategies: QIcon, QImage and SVG. This change moves logic of each of these strategies into separate class.

Test Plan: Should behave exactly the same

Reviewers: #plasma, broulik, apol, davidedmundson, #frameworks

Reviewed By: #plasma, davidedmundson

Subscribers: mart, davidre, cblack, kde-frameworks-devel, #plasma

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D28470
2020-04-24 14:49:21 +02:00
Aleix Pol
25ce2b90da Prefer QIcon::pixmap(QWindow*, ...) overload
Summary:
It takes into account the dpi of the screen we're rendering to.
Other overloads assume the window is nullptr and will use the primary screen's dpi which can change almost randomly.

Test Plan: Icons still look fine even if I drag windows from a screen to another.

Reviewers: #plasma, #frameworks, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: davidedmundson, ngraham, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D29102
2020-04-23 02:11:44 +02:00
Nate Graham
77be3197e2 Make applet tooltip text spacing consistent 2020-04-18 20:36:54 -06:00
Nate Graham
52c0a136f9 [ExpandableListItem] make it touch-friendly
Summary:
Right now ExpandableListItem is not very touch-friendly due to use of a mousearea
hover effect for choosing the selected item. This patch fixes that by using a `TapHandler`
to handle left-clicks and  touch input. We still need a MouseArea inside it to handle
non-touch hover and right-click behaviors.

FEATURE: 393749
FIXED-IN: 5.70

Test Plan: Click behavior is identical to how it was before, but now touch works too: {F8234452}

Reviewers: #plasma, apol, #vdg, niccolove

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D28808
2020-04-17 23:45:29 -06:00
Laurent Montel
48f60533b9 [plasma-framework] make it compiles without foreach
Summary: compile without foreach

Test Plan: autotest ok

Reviewers: dfaure, apol

Reviewed By: dfaure, apol

Subscribers: ahmadsamir, nicolasfella, broulik, apol, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D19913
2020-04-17 06:47:04 +02:00
Aleix Pol
298ce0ed7f Fix warnings
Reviewers: #frameworks

Subscribers: ahmadsamir, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D28088
2020-04-14 01:39:11 +02:00
Nate Graham
359ac6bcc0 [ExpandableListItem] Use more semantically correct expand and collapse icons 2020-04-13 14:34:33 -06:00
Nate Graham
3743e9d674 Fix PC3 BusyIndicator binding loop
Summary:
Without this, the Busy Indicator generates binding loops for me when used in the new
ExpandableListItem component.

Test Plan: No more binding loops in console logging

Reviewers: #plasma, davidedmundson, broulik

Reviewed By: #plasma, broulik

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D28787
2020-04-13 07:46:17 -06:00
Nate Graham
700f90538f [ExpandableListItem] Add new showDefaultActionButtonWhenBusy option 2020-04-12 22:35:38 -06:00
Niccolò Venerandi
0f9abc2d40 Remove rounded borders to plasmoidHeading
Summary: Neither the merged look nor the normal one needs to have rounded borders, as they are clipped out from the dialog and they would break third party themes without rounding. Without rounded borders, there's no need for the enabledBorders check, which also broke the heading when used in top panels.

Reviewers: #plasma, ngraham

Reviewed By: ngraham

Subscribers: manueljlin, ahiemstra, ndavis, ngraham, mart, davidedmundson, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D28372
2020-04-11 23:49:29 +02:00
l10n daemon script
9a4ec598ec GIT_SILENT Upgrade KF5 version to 5.70.0. 2020-04-11 09:30:35 +00:00
Nate Graham
d6f3a52d83 [ExpandableListItem] Add itemCollapsed signal and don't emit itemExpanded when collapsed 2020-04-06 12:55:23 -06:00
Nate Graham
7aaee715af Revert "Remove the panel tooltip icon"
This reverts commit 863ec93ade.

This wasn't the right way to remove the icon for all panel widget
tooltips. See extended discussion in D27848.
2020-04-06 11:11:44 -06:00
David Edmundson
0051a4f919 Add readmes clarifying state of plasma component versions
Test Plan: N/A

Reviewers: #plasma, apol

Reviewed By: apol

Subscribers: romangg, apol, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D28620
2020-04-06 14:47:01 +01:00
David Edmundson
0417bf61d5 [configview] Simplify code / workaround Qt5.15 crash
Summary:
QQmlComponent::beginCreate and completeCreate are useful if you need to
set properties on the object explicitly. We're not doing that here, we
can just call create.

Test Plan:
On Qt5.15
Right click a panel
choose edit

Reviewers: #plasma, apol

Reviewed By: apol

Subscribers: apol, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D28599
2020-04-06 12:30:51 +01:00
Harald Sitter
6e39c1de5b do not install testengine
Summary:
by default users have to opt out of BUILD_TESTING meaning everyone would
by default build and get testengine installed even though it serves no
purpose in production. this also includes distros as I've noticed :O

do not install the engine, same as testplugin isn't getting installed.

(I am actually thinking throwing it away as a whole may make sense; it
 serves no real purpose over any other engine)

Reviewers: mart, apol

Reviewed By: apol

Subscribers: broulik, apol, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D28463
2020-04-06 12:40:42 +02:00
Nate Graham
96d203b4b8 Fix i18nd test by removing commented-out i18n() calls in API docs 2020-04-05 18:21:21 -06:00
Nate Graham
863ec93ade Remove the panel tooltip icon
Summary:
As discussed in T12778, the icon can never be in a correct state: either it's
redundant with the icon you're hovering over that made the tooltip appear, or
else it's different from the icon you're hovering over, which is inconsistent.

Since either case is undesirable, let's just remove the icon from the tooltip
entirely. This reduces the visual noise in the tooltip and solves the entire
class of bugs automatically.

Test Plan:
{F8150019}
{F8150017}
{F8150021}

Reviewers: #vdg, #plasma, cblack, niccolove, apol

Reviewed By: #vdg, cblack, niccolove, apol

Subscribers: cblack, kde-frameworks-devel

Tags: #frameworks

Maniphest Tasks: T12778

Differential Revision: https://phabricator.kde.org/D27848
2020-04-04 20:54:45 -06:00
Nate Graham
3bd31386ab Create ExpandableListItem
Summary:
This patch creates the `ExpandableListItem`, a re-usable PlasmaExtras item that can
be used for the views in various Plasma applet pop-ups, such as Vaults, Printers,
Bluetooth, Networks, and Device Notifier. This way those applets can share more code and
not have to implement this paradigm themselves in five different ways, as they currently
do.

All of these applets currently use slightly different visual styles. For example the
network applet uses a pushbutton with no icon as its "default action" button, while
other applets use icons-only toolbuttons. I tried my best to create a component that's
flexible but also consistent, so various applets that adopt it will see minor visual
changes as a result. Hopefully this is acceptable.

Closes T12812

Depends on D28144

Test Plan: {F8183650}

Reviewers: #vdg, #plasma, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: mart, davidedmundson, bruns, niccolove, cblack, davidre, kde-frameworks-devel

Tags: #frameworks

Maniphest Tasks: T12812

Differential Revision: https://phabricator.kde.org/D28033
2020-04-04 20:52:53 -06:00
Nate Graham
0739113a44 Make animation durations consistent with Kirigami values
Summary:
Right now longDuration is 120ms and shortDuration is 24ms. This presents three problems:
- The durations are far too fast, especially shortDuration, which is so fast that it seems like there is no animation at all.
- The durations are not consistent with Kirigami, which uses 150 for short and 250 for
 long.
- There is no longer value available, as with the one being added to Kirigami in D28143.

Accordingly, this patch makes the short and long values consistent with Kirigami's values,
and adds a new `veryLongDuration` value to match the one being added to Kirigami in D28143.

Reviewers: #plasma, davidedmundson, mart

Reviewed By: #plasma, mart

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D28144
2020-04-04 20:42:35 -06:00
l10n daemon script
f363df626a GIT_SILENT Upgrade ECM and KF5 version requirements for 5.69.0 release. 2020-04-04 22:38:48 +00:00
l10n daemon script
26eb57c53e 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-04-04 06:27:52 +02:00
Niccolò Venerandi
8b5e093141 Added Page element
Summary: Page element was missing. I added it.

Reviewers: #plasma, ngraham, mart

Reviewed By: #plasma, ngraham, mart

Subscribers: ngraham, davidedmundson, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D28466
2020-04-03 17:14:13 +02:00
Nicolas Fella
bc3ccd1782 [pc3/busyindicator] Hide when not running
Summary: When not running the indicator should be invisible. This matches the behaviour of the org.kde.desktop style.

Test Plan: Run KTrip with Plasma style. Open location search page. Indicator is only shown when actually loading things

Reviewers: #plasma, ngraham

Reviewed By: ngraham

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D28391
2020-03-29 23:37:59 +02:00
l10n daemon script
b7e88d2a11 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-29 07:06:26 +02:00
l10n daemon script
f6bb0229b0 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:24:35 +01:00
David Faure
2e017f501a GIT_SILENT increase KF_DISABLE_DEPRECATED_BEFORE_AND_AT 2020-03-25 00:55:58 +01:00
Nate Graham
e2a13e9ac7 Revert "Make animation durations consistent with Kirigami values"
This reverts commit 049978008b.

This commit changes existing animation durations, and must be landed
simultaneously with Plasma 5.19's release so that rolling release
users don't suffer from very slow animations for a month. Will
re-land after Plasma 5.59 is tagged so it gets released with Frameworks
5.60, the dependency version for Plasma 5.19.
2020-03-24 08:36:30 -06:00
Noah Davis
f363a06ae6 Update window-pin, Add more sizes, Remove redundant edit-delete
Summary:
16 and 22px sizes added for window-pin and unpin. Style was also updated for window-unpin.

edit-delete is redundant because it's already defined in edit.svg. I don't think it's used anywhere at all. It was actually window-close, but renamed to edit-delete for whatever reason.

Test Plan:
{F8195527, size=full}

1. Install patch to kdesrc-build environment
2. Run `plasmashell --replace &` in kdesrc-build environment
3. Check pin button in systray

Reviewers: #vdg, #plasma, cblack, ngraham

Reviewed By: #vdg, cblack, ngraham

Subscribers: cblack, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D28228
2020-03-23 19:10:41 -04:00
Nate Graham
049978008b Make animation durations consistent with Kirigami values
Summary:
Right now longDuration is 120ms and shortDuration is 24ms. This presents three problems:
- The durations are far too fast, especially shortDuration, which is so fast that it seems like there is no animation at all.
- The durations are not consistent with Kirigami, which uses 150 for short and 250 for
 long.
- There is no longer value available, as with the one being added to Kirigami in D28143.

Accordingly, this patch makes the short and long values consistent with Kirigami's values,
and adds a new `veryLongDuration` value to match the one being added to Kirigami in D28143.

Reviewers: #plasma, davidedmundson, mart

Reviewed By: #plasma, mart

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D28144
2020-03-20 09:43:45 -06:00
Niccolò Venerandi
7d80f01c31 WIP: Create a new TopArea element using widgets/toparea svg
Summary:
This creates a new component that uses the widgets/toparea svg. First time I try to add something to PlasmaComponents, so I probably got stuff wrong and I probably have to still do thing like adding documentation. I'm creating the diff to get feedback on how to move forward with this.

Depends on D27444

Reviewers: mart, ngraham

Reviewed By: mart, ngraham

Subscribers: ngraham, davidedmundson, ahiemstra, kde-frameworks-devel

Tags: #frameworks

Maniphest Tasks: T10470

Differential Revision: https://phabricator.kde.org/D27695
2020-03-14 19:46:48 +01:00
Niccolò Venerandi
f55f104447 Added plasmoid heading svg
Summary: Adds plasmoid heading for D27189

Reviewers: #vdg, ngraham, ndavis

Reviewed By: #vdg, ngraham

Subscribers: mart, kde-frameworks-devel

Tags: #frameworks

Maniphest Tasks: T10470

Differential Revision: https://phabricator.kde.org/D27444
2020-03-14 19:46:11 +01:00
l10n daemon script
a52b60a58e GIT_SILENT Upgrade KF5 version to 5.69.0. 2020-03-12 10:48:23 +00:00
Marco Martin
6f34838f97 make highlighted property work for roundbutton 2020-03-12 10:09:04 +01:00
l10n daemon script
5a1b7a49d8 GIT_SILENT Upgrade ECM and KF5 version requirements for 5.68.0 release. 2020-03-07 08:55:32 +00:00
l10n daemon script
efebec9744 GIT_SILENT Upgrade KF5 version to 5.68.0. 2020-03-07 08:43:26 +00:00
l10n daemon script
7387f52ad9 GIT_SILENT Upgrade KF5 version to 5.69.0. 2020-03-06 23:07:59 +00:00
Marco Martin
0b89e7f3f0 Buttons: allow to scale up icons
Summary:
always scale icons unless a size is specified in the api.
this makes icon sizing more in line with plasma components 2

Test Plan:
{F8129062}

{F8129064}

{F8129065}

Reviewers: #plasma, broulik

Reviewed By: #plasma, broulik

Subscribers: broulik, ngraham, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D27628
2020-03-02 14:42:15 +01:00
David Redondo
b7fa6e0e91 Try to apply the colorscheme of the current theme to QIcons
Summary:
Before icons loaded internally with QIcon::fromTheme were being colored with the
colors from the current global color scheme instead of the ones from the current
Plasma Theme. Leading to visual bugs when the two differ. This happened because
KIconLoader uses the global color scheme by default.
A prominent case is the notification send by the network plasmoid when one
successfully connected to a wireless network. It sets the icon
"network-wireless-on" which is not included in Breeze icons (but is included in
Breeze Plasma Theme). If the current icon theme is indeed Breeze, IconItem
resorts to using QIcon::fromTheme and we end up with a wrong colored
"network-wireless" icon.

BUG: 417780

Test Plan:
{F8125752}

{F8125753}

Reviewers: #plasma, cblack, ngraham, mart

Reviewed By: #plasma, cblack, ngraham, mart

Subscribers: mart, wbauer, cblack, kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D27589
2020-03-02 11:55:35 +01:00
Friedrich W. H. Kossebau
a08449a9a2 templates: Convert license statements to SPDX headers
Summary: Also consistently use LGPL-2.1-or-later as default license

Reviewers: #plasma, cordlandwehr

Reviewed By: cordlandwehr

Subscribers: kde-frameworks-devel

Tags: #frameworks

Differential Revision: https://phabricator.kde.org/D27640
2020-02-29 13:25:01 +01:00