frame->fooHeight is the same as frame->fooFixedHeight if the border is enabled, we only meddle
with margins, not heights. Thus we can just do the lookup once and re-use the value.
Also store the hintFooMargin instead of doing the same exact lookup once for fixed
and once for non-fixed margins.
Differential Revision: https://phabricator.kde.org/D8135
Summary:
The OSDs are positioned by the Wayland compositor. This fixed the issue
found in D8268.
Reviewers: #frameworks, #plasma
Subscribers: plasma-devel
Tags: #plasma, #frameworks
Differential Revision: https://phabricator.kde.org/D8304
Summary:
Module internal types are not implicitly available anymore simply by placing
them inside the module's main directory. It is now necessary to mention them
as internal types in the qmldir file.
See qtdeclarative commits 22a2cc43387ec3b9f74a6c01f8665378a4541147 (introduced
the change) and 930aea8b9ca59a24838cf7f279653e3b2ee40cee (explanation)
Test Plan:
Built whole stack with Qt 5.10. The digital clock plasmoid does not
load due to the DaysCalendar type not being available. With these changes to
qmldir and a reload of the plasmoid it works.
Reviewers: #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: broulik, #frameworks, plasma-devel
Tags: #plasma, #frameworks
Differential Revision: https://phabricator.kde.org/D8077
Documentation says "Children are stored internally as a linked list, so iterating over the children via the index is suboptimal."
Differential Revision: https://phabricator.kde.org/D8046
For a panel it makes sense to have panel options easily available on every applet
but on the desktop you typically have some free space to access the containment actions.
This is especially confusing if you have a Folder View on your Folder View desktop
and end up with a "Folder View Options" menu that affects the desktop behind it rather than the applet.
Differential Revision: https://phabricator.kde.org/D8009
Summary:
Plasma code is full of Label {opacity: 0.6}. We shouldn't be hardcoding
style into a UI, especially with magic numbers.
This adds a new component that does the same thing but will allow
plasmoids to write more semantic code.
Reviewers: #plasma, hein
Reviewed By: #plasma, hein
Subscribers: hein, sebas, broulik, plasma-devel, #frameworks
Tags: #plasma, #frameworks
Differential Revision: https://phabricator.kde.org/D4831
Summary:
Software rendering (at time of writing Qt5.10) doesn't seem to like our
tiling/stretching in the 9-tiles.
Also when using QPainter it's arguably faster to create and cache
pixmaps of the whole frame, which is what the slow path of FrameSVGItem
does.
Test Plan: Ran FrameSVG test then plasma shell with scene device set
Reviewers: #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: plasma-devel, #frameworks
Tags: #plasma, #frameworks
Differential Revision: https://phabricator.kde.org/D8013
Summary:
IconItem uses a gorgeous shader to fade between two states. This doesn't
work with software rendering.
Given software rendering is a second class citizen, just skip the
animation.
Test Plan:
Hovered over kickoff.
Went from one to the other, without temporarily disappearing
Reviewers: #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: plasma-devel, #frameworks
Tags: #plasma, #frameworks
Differential Revision: https://phabricator.kde.org/D8014
Summary:
This draws a line underneath a Plasma checkbox label when it has
keyboard focus. This is needed as when an item is checked, the focus
shadow is practically invisible.
Visuals when clicking is completely unchanged
This brings it more in line with our QStyle.
Test Plan: Attached runtime tests
Reviewers: #plasma, #vdg, mart
Reviewed By: #plasma, mart
Subscribers: plasma-devel, #frameworks
Tags: #plasma, #frameworks
Differential Revision: https://phabricator.kde.org/D7819
The "parent" used to be resolved by the place where the utils.js was imported from.
However, it was changed into a singleton and now this didn't work.
BUG: 384776
Summary:
The name (with a correct role) is already exported as a tab
By having the static text internally we get the name twice when we do a
flat review of the controls.
Reviewers: #plasma
Subscribers: plasma-devel, #frameworks
Tags: #plasma, #frameworks
Differential Revision: https://phabricator.kde.org/D7815
this was actually breaking keyboard navigation
see https://bugreports.qt.io/browse/QTBUG-63176
for our use case in pasmashell, it's better to just
rely on focus of the internal items or of the
ListView
reviewed-by: davidedmundson
Summary: Some widgets are missed up in RTL mode, this should fix it.
Reviewers: #plasma, #frameworks, mart
Reviewed By: #plasma, mart
Subscribers: mart, broulik, davidedmundson, plasma-devel
Tags: #plasma, #frameworks
Differential Revision: https://phabricator.kde.org/D7715
The appendCategory(ConfigCategory*) allows to add a category created by e.g. an Instantiator
that can use bindings rather than fixed arguments.
The removeCategory methods allow to remove a category when e.g. the model in an Instantiator resets.
CCBUG: 372090
Differential Revision: https://phabricator.kde.org/D7602
We'll eventually delete the Plasma::Svg anyway if we failed to find an appropriate icon.
Just need to make sure we don't use isValid with the old source set but this is only done with
m_usesPlasmaTheme, hence the new check there, also optimizes the non-themed case.
Differential Revision: https://phabricator.kde.org/D7584
On my machine I end up creating 490 margins and 490 fixed margin objects.
After this change I only create 171 margin objects and 20 fixed margin objects.
Differential Revision: https://phabricator.kde.org/D7582
Summary:
using the qml url interceptor, rewrite imports in order
to load always the plasma styled qqc2 controls in plasmoids
and plasma views. As is per-engine, is possible to load
controls with qstyle theme in configuration dialogs
and plasma style in plasmoids.
Note: this replaces just the style org.kde.desktop
to Plasma and not every style (so with Material
set as QT_QUICK_CONTROLS_STYLE environment variable
plasma would load controls with material style) because
we can control both org.kde.desktop and Plasma styles:
they must have the same subdirectories as unlike files,
their existence is checked before the rewrite (in our case,
"private"), so in order to work they must exist in both
styles
Test Plan:
a qqc2 button in a plasmoid has the plasma style, in
a config dialog has the qwidget style. rewrite works
only from org.kde.desktop to Plasma and not from other
styles, due to the existence of the "private" subdirectory
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: davidedmundson, plasma-devel, #frameworks
Tags: #plasma, #frameworks
Differential Revision: https://phabricator.kde.org/D6964
Summary:
It's used by ToolButton et al.
We install it in the theme folder, but not in the plasma components dir.
Test Plan: Used a toolbutton without error
Reviewers: #plasma, mart
Reviewed By: #plasma, mart
Subscribers: plasma-devel, #frameworks
Tags: #plasma, #frameworks
Differential Revision: https://phabricator.kde.org/D6693
Summary: createObjectFromSource can return a null on error. This needs guarding.
Reviewers: #plasma, mart
Reviewed By: #plasma, mart
Subscribers: plasma-devel, #frameworks
Tags: #plasma, #frameworks
Differential Revision: https://phabricator.kde.org/D7532
I don't get the comment on why it is /dev/null instead of QString() but using SimpleConfig at least saves 0.3ms per call for me.
Differential Revision: https://phabricator.kde.org/D7510
It's not being set to anything anymore and people typically don't have 256 color displays these days.
Differential Revision: https://phabricator.kde.org/D7516
We're passing it an absolute path to a file in our install directory anyway,
so we probably don't want inheritance.
Differential Revision: https://phabricator.kde.org/D7362