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
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
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
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
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
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
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
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
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
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
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
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
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
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.
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
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
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
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
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
Summary:
When Dialog is being destroyed, its QWindow super-class may still emit
some signals from its destructor. Dialog is connected so some of them,
so this leads to Qt invoking slots on Dialog, whose destructor has
already been called, leading to crashes.
This patch disconnects all internal connections in Dialog's destructor.
See https://phabricator.kde.org/D23339 for details.
Test Plan: Plasma no longer crashes when a notification appears
Reviewers: #plasma, nicolasfella, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: kde-frameworks-devel
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D27671
Summary:
Removed two unused lines.
Removed old comments.
Minor style changes to comments.
Test Plan: Everything must stay unchanged visually and function wise for ListItems.
Reviewers: #plasma, ngraham
Reviewed By: ngraham
Subscribers: kde-frameworks-devel
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D27296
Summary:
icon sizes and label placements tested correct in several scenarios
* control.icon.width/height is used as maximum size of the icon
* if the button is smaller icons always scale down
* icons stay ccentered regardless of button size when there is no text
Test Plan:
fixes icon sizes without workarounds like D27260
{F8108705}
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: davidedmundson, kde-frameworks-devel
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D27460
Summary:
for retrocompatibility with pc2 units.gridUnit * 1.6 is used
a lot as size hint (we have to guarantee buttons and
textfields have the same height by default for perfect
horizontal alignment.
tough we have make sure that size is integer and even otherwise
we'll have a lot of internal misalignments
Reviewers: broulik
Reviewed By: broulik
Subscribers: kde-frameworks-devel
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D27399