It's wrong to check the status of the plasmoid before closing it,
since the status is just the internal state of the plasmoid and
it's changed by actions from the plasmoid itself. So, the Passive
status doesn't indicate that the plasmoid is hidden in the system
tray, because the user can configure to always show this plasmoid.
Store as kdedefault only the colorscheme, colors data can still live in kdeglobals
They are not used to change default.
This will simplify code and fix some bugs when we apply theme without all groups
KIO is important for a full plasma experience. KIOExtras especially for
the thumbnails that we use within plasma-workspace and is something we
have had reports about.
This ensures that the first `update()` call with the summary will be shown
atomically to the user rather than show an empty job popup briefly.
Also handle the delay on a per-job basis, previously there was a common
timer, which made no sense.
this fixes l10n integration magic from ECM (KDE_L10N_SYNC_TRANSLATIONS,
KDE_L10N_AUTO_TRANSLATIONS) that download the po dir into the build dir
for git builds.
ki18n_install is looking for po dirs and not doing anything when it
can't find any. so, by default this changes nothing. when used with the
aforementioned options it enables translation building for git builds.
for tarball builds this has no negative impact since releaseme is smart
enough to check if a cmakelists already contains the ki18n call before
append its own.
The notification applet's config window is blank, and only shows the
auto-generated Shortcuts and About pages. This makes it not very useful,
as typically the user will want to get to the KCM instead. Other
applets with blank config windows (such as the Bluetooth and Networks
applets) make the configure button open the KCM instead and nobody has
complained about it, so let's do the same for the Notifications applet.
This has two advantages:
1. Greater consistency among applets
2. The "Clear all" action always appears visibly in the header without
getting pushed into a hamburger menu
3. A cleaner UI than the one merged in
https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/837
BUG: 433140
FIXED-IN: 5.22
This reverts commit 5893574163.
The approach taken in this commit was sub-optimal and not consistent
with what we do for other applets, so it needs to be re-thought.
Right now the applet puts the entries to open the KCM and Energy Info
page in a hamburger menu, while the Configure button opens the applet's
own settings window which has only one item in it. This emphasizes the
less important thing, while de-emphasizing the more important thing.
We can solve this by making the applet's configure button open the KCM
instead of the applet configuration window. This makes the configuration
window inaccessible, so we delete it and move its one setting into the
hamburger menu along with "Show Energy Information". This is okay as
these two are lesser-used settings.
Overall this should make the actions easier to access and use, and more
relevant to the user.
BUG: 407560
FIXED-IN: 5.22
Previously the "clear clipboard history?" dialog used `KMessageBox::questionYesNo`
which if "don't ask again" is ticked then saves the answer even if No was answered.
This can cause the user to not be able to ever clear the clipboard ever again. This
commit changes it to `KMessageBox::warningContinueCancel` which doesn't do that, and
is more appropriate for the kind of question we're asking.
BUG: 336053
FIXED-IN: 5.22
We recently changed it so kwin defaults to memptr because some clients
couldn't deal with dmabuf. We still want dmabuf to be used as it's less
stressful to the system and we support it just fine.
Use the system's virtual keyboard instead of relying on
QtVirtualKeyboard specifically for the lock screen.
It means less code (when we can remove the virtual keyboard part),
better integration and one dependency less.
- formats KCM, it is useful for mobile to be able to configure various
things like number format, currency formats etc
- nightcolor KCM, it is also useful for mobile
- notifications KCM, currently not all options are useful for mobile,
but neverthless, this allows it to be used on Plasma Mobile
Moved from plasma-desktop at 7affae246d4a90ce53f3c5061f83567488928b96
The fact that the commonly-used "Clear History" action appears in a
hamburger menu has been a common user complaint about Plasma 5.21.
This happens because it's defined as an action, and the applet has two
actions ("clear history" and "open KCM") and when there is more than
one action, they all go into a hamburger menu. This makes the
commonly-used clear action more difficult to find that necessary.
A reasonable long-term solution would be to refactor the action
visibility code in plasma-framework to allow the display of more than
one action in the header without always putting them all in a hamburger
menu, or allowing the developer more control over this. However since
that would require frameworks changes, it can't be done in Plasma 5.22
because 5.22 requires Frameworks 5.82 which has already been tagged. So
let's do this simpler fix for now to fix the UX regression.
BUG: 433140
FIXED-IN: 5.22
"If $XDG_CONFIG_DIRS is either not set or empty, a value equal to
/etc/xdg should be used."
If XDG_CONFIG_DIRS was not set prior to startplasma, which it ordinarily
would not be, then the previous code would set the value to "$newdir:"
which was silly and also wrong as per the spec quoted above. Instead
default to /etc/xdg/.
Also camelCase the variables to follow our coding style.
There is no conceivable use case for turning this off, and the UI is
being removed in https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/447.
So let's remove the backend code too, or else anyone who for some reason
had turned it off would be left without a GUI method of turning it back
on again.
This warning happens because the Digital Clock is using PC2 labels,
which set the pointSize internally. However in this usage of them, we
don't use the pointSize and instead set the pixelSize to make the label
always match the height of a size helper item. This results in both
pointSize and pixelSize being defined. This is an ambiguous situation,
so Qt helpfully ignores pointSize in favor of pixelSize and prints a
warning for us.
Because what we're doing here is intentional, let's explicitly unset
pointSize ourselves so we don't make Qt do it for us. This removes the
noisy warning message that is printed at every plasmashell startup.
Ultimately we need to port these labels to PC3, but that is quite
challenging due to the complicated text sizing logic.
Rounding errors made scrolling behave weirdly for devices supplying very
low scroll delta values. This is fixed now. For non-high resolution devices,
scrolling is now also aligned to 5%, just like the keyboard shortcuts.
BUG: 432331
FIXED-IN: 5.22
This will result in cleaner diffs when a new value is added
and clang-format will not indent them with the opening
brace of the initializer list which makes is slightly easier to read.
This commit changes what counts as the default settings to take into account the default
settings of the current Global Theme.
e.g. if you change the Global Theme to Breeze Dark, when you go to the color KCM, clicking
the "Defaults" button will revert to the Breeze Dark color scheme (because it is the default
color scheme of the active Global Theme), rather than Breeze Light.