Turns out this icon had a hardcoded color in it which wasn't the case for the
full size icon used on my high dpi system.
Thanks Sandro Knauß for helping investigate this
BUG: 397441
Summary: This patch makes the text for removal and configuration actions consistent with one another.
Test Plan: {F6191533}
Reviewers: #plasma, #vdg, abetts
Reviewed By: #plasma, #vdg, abetts
Subscribers: abetts, broulik, kde-frameworks-devel
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D14810
This way tests pass before installation.
Test Plan:
Before patch
Created a broken env by unsetting QML2_IMPORT_PATH
Ran test. It failed
It passes.
Reviewers: #plasma, dfaure
Reviewed By: dfaure
Subscribers: kde-frameworks-devel
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D14743
Summary:
mirroring the behavior when the applet is created by restorecontents,
invalid applets get immediately uireadyconstraint.
This solves the problem of panels not appearing when the setup js contains an non existent applet,
as the panel was waiting forever for applets to finish loading, which never happens
Test Plan: now js startup scripts with an invalid applet have panels loading correctly.
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: davidedmundson, kde-frameworks-devel
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D14341
Similar to KPackage's cache this speeds up startup where plugins are repeatedly looked up.
Especially the fallback path of looking in the plugin root directly causes quite some slowdown.
Differential Revision: https://phabricator.kde.org/D14009
source and target were swapped in both the QSGNode::updateState/bind
and in the fragment shader.
When Atlas support was added, the texture position was put the right way
round; which made things backwards so source/target also got swapped
instead of fixed properly.
But this leads a glitch if one texture was in the atlas and one
wasn't (not common)
This puts everything the right way round again.
Reviewed-by: Kai Broulik
Allows disabling all containment actions, such as context menus, middle click paste, wheel desktop switch, etc.
Differential Revision: https://phabricator.kde.org/D14045
Summary:
A FrameSvg can have wrong mask frame if image path has been changed after
the mask frame was generated. Take image path into account when deciding
whether the mask frame should be updated to address that problem.
Depends on D13384
Reviewers: #plasma, #frameworks, mart
Reviewed By: #plasma, mart
Subscribers: kde-frameworks-devel
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D13496
Summary:
When trying to update the maskFrame, there is a chance that it is already
shared by several instances of FrameSvg. In that case, do not wreck maskFrame
and instead act as follows:
* deref it
* try to lookup a matching frame in the shared frames
* if there is the matching frame, use it
* otherwise create a new one
Reviewers: #plasma, #frameworks, mart
Reviewed By: #plasma, mart
Subscribers: mart, kde-frameworks-devel
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D13384
Summary:
In some cases, when rendering frame svg background, measures & margins
do not correspond to `enabledBorders`. I.e. `bottomHeight` may be equal to 5,
but the bottom border is disabled. This causes visual artifacts like this
{F5878318, layout=center, size=full}
//Pay close attention to the bottom of the Task switcher. It has a transparent strip at the bottom, which shouldn't be there.//
The cause of this problem is that FrameSVGPrivate::alphaMask doesn't take enabledBorders
into account when it's making decision whether it should update maskFrame.
Just for reference, this is "after"
{F5878319, layout=center, size=full}
BUG: 382324
BUG: 390632
BUG: 391659
Test Plan:
* Triggered the Breeze task switcher (with compositing on and off)
* Didn't see any transparent strips
---
* Tried running FrameSvgTest, still passes
Reviewers: #plasma, #frameworks, mart
Reviewed By: #plasma, mart
Subscribers: abetts, mart, aseigo, broulik, kde-frameworks-devel
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D13215
Summary:
FrameSVG documentation states
> ... topleft and topright will be ignored if top does not exist,
> and similarly for bottomleft and bottomright ...
Someone would assume that the same behaviour applies to the case
when left(or right) does not exist.
This change makes FrameSVG to comply with such expected behaviour.
### Before
{F5878439, layout=center, size=full}
The bottom border doesn't exist so the bottom-right corner should not
be drawn.
### After
{F5878440, layout=center, size=full}
Reviewers: #plasma, #frameworks, mart
Reviewed By: #plasma, mart
Subscribers: mart, kde-frameworks-devel
Tags: #frameworks, #plasma
Differential Revision: https://phabricator.kde.org/D13218
Summary:
To explicitly confine Task Manager drops to Plasma and avoid accidental
drops on other apps, D13274 makes it store task launcher URLs in a special
internal MIME type instead of the generic text/url one. This change to
processMimeData() adds the necessary conversion back.
Reviewers: davidedmundson, Zren, mart
Subscribers: kde-frameworks-devel, plasma-devel
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D13275
Summary:
There is no need to check whether `cachedBackground` is null, and if
it's null, return a null pixmap.
Reviewers: #plasma, #frameworks, apol
Reviewed By: apol
Subscribers: kde-frameworks-devel
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D13287
Summary:
QDate from/to JS Date has unexpected results, so use QDateTime to have a
timezone assigned to prevent conversions. That way the date values are
consistent.
The behaviour got changed with Qt 5.11 (see the linked bug report) which
lead to plasma showing the wrong dates in the calendar.
BUG: 394423
Test Plan:
Tested with and without this patch on Qt 5.10.1 and 5.11.0.
Now the correct date is displayed for -0004 and +0001 timezones.
Reviewers: #plasma, #frameworks, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: ngraham, Zren, sharvey, kde-frameworks-devel
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D13222
Dialogs don't show up in task bar and also don't have window decoration so they're not meant to be minimized.
However, they might still be minimized by external means, such as "Minimize All" plasmoid.
In this case hide the dialog. Also, Qt restores a minimize state when showing again, rendering the dialog inaccessible.
Before showing, always unset the minimized state using new Qt 5.10 API
BUG: 381242
Differential Revision: https://phabricator.kde.org/D12876
This reverts commit 612494e2b2.
This caused a huge regression for some drivers breaking functionality
completely. Better to revert for now, and try again when we have it
fully working.
See 393241
Summary:
Remove outdated calendar.svgz from air & oxygen themes which
still contained only the Plasma4 area calendar elements, but not
the (for now single) Plasma5 one, "event".
Given none of the old elements can be reused for the new element "event",
the complete files are removed for now.
Test Plan:
Selecting Air or Oxygen themes the event markers are now shown on days in
the calendar grid widget.
Reviewers: #plasma, mart, broulik
Reviewed By: #plasma, broulik
Subscribers: #frameworks
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D12680
Summary:
CalendarEvents::EventData (in KDeclarative) has a property isMinor, which is
described as "If set to true, it won't be marked in the calendar grid".
This patch fulfils that promise, by introducing separate roles on the model
which explicitly report the existance of any major or any minor events at a
given day, so that the marker loader can concentrate on the major events.
Test Plan:
Using a plasmacalendar plugin which feeds events with isMinor=true the
widget now only marks days which have major events.
Reviewers: #plasma, broulik, davidedmundson
Reviewed By: #plasma, broulik, davidedmundson
Subscribers: davidedmundson, broulik, #frameworks
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D12438
Summary:
Follows HIG in using verb-based name, also starting the text with the most
important objective first.
As result also consistent with default text for similar action in menu of a
normal app (when using KStandardAction).
Reviewers: #vdg, #plasma, ngraham
Reviewed By: #vdg, ngraham
Subscribers: ngraham, #frameworks
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D12562
Otherwise the Text will never grow below its preferred height as the button grows smaller and will
eventually leak outside at the bottom rather than stay centered.
BUG: 393388
Differential Revision: https://phabricator.kde.org/D12518
Summary:
Dropping some item onto a containment results in a menu which lists widgets
and wallpaper plugins without explicitly telling what will happen onto
activation.
Changing the menu entries into "Add widget" and "Set wallpaper" makes it
more obvious what they will result in.
Reviewers: #vdg, #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: ngraham, #frameworks
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D12247
Opening the toolbox when widgets are locked reveals the widget handles but they're empty as all the actions are unavailable.
Just refuse to enter edit mode then.
Differential Revision: https://phabricator.kde.org/D12379
Summary: Otherwise the flat property is ignored
Test Plan: Tested on KDE Connect port to use PlasmaComponents
Reviewers: #plasma, mart
Reviewed By: #plasma, mart
Subscribers: mart, #frameworks
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D11652
Summary:
add a version of containmentForScreen which it has the activity.
which is correct as the activity id of containments in in libplasma side.
this ensure the correctness of shellCorona createContainmentForActivity
as now it works also for activities different from the current one.
to make multimonitor a tad safer with it, when creating containments for an activity, initialize their lastScreen to the asked screen.
Test Plan: tried with an old plasmashell and is perfectly retrocompatible
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: davidedmundson, #frameworks
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D11361
Summary:
The original owner of a graphics item is the declarative applet script which
is owned and deleted by the applet.
Reparenting the containmentquickitem to the containment doesn't really
solve anything useful, we were originally effectively owned by the
containment(an applet subclass) not the view anyway.
This code also accidentally moves the destruction of the applet from being in
::~Applet to being in ::~QObject of the relevant containment. This
causes a big problem if the AppletQuickItem tries to access the applet
in it's own destructor. The applet object still exists, but use of
Applet member variables is not valid.
The new preloading code does this, leading to a crash.
BUG: 391642
Test Plan:
Changed desktop to folder twice
Changed activities twice
Reviewers: #plasma, mart
Reviewed By: #plasma, mart
Subscribers: rikmills, #frameworks
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D12064
This is emitted just before the tooltip is shown and allows the user to defer heavy lifting to when the dialog is actually shown.
Differential Revision: https://phabricator.kde.org/D10381