Summary:
build the runner itself in a static lib we can use for testing and then
link that into a module lib together with the factory entry point to
compose the final lib for installation
means servicesrunner.cpp is now only built once, whereas before it was
built twice through 100% duplicative targets
Test Plan: test still passes, installing and restarting krunner still yields working service searches
Reviewers: broulik, davidedmundson
Reviewed By: davidedmundson
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D28137
Summary:
This patch ports the appmenu applet to use
libtaskmanager.
Test Plan: Ensure that there aren't any regressions.
Reviewers: #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D28146
Fixes issues that flew under the radar in D27959, namely:
- Missing KWindowInfo flags
- Returning service name instead of object path
Reviewed-By: kbroulik
Summary:
The tasks model now exposes a window's application menu object path and service name.
No update signals set up for XOrg; not sure what to listen for.
Test Plan:
See that the model has more roles and see that they're wired to the application
menu obiect path and service name on Wayland and XOrg.
Reviewers: #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27959
Summary:
- be more consty (and don't risk detatching containers)
- init members
- don't ql1s to qstring
- use auto when newing an object
Test Plan: test passes
Reviewers: broulik
Reviewed By: broulik
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D28138
Summary:
Various people were complaining that the calendar was too squished after D27903. This
patch restores its size to be closer to the old version. As a consequence, the whole
expanded representation is quite large now, but there really is no other way.
Test Plan:
Before: {F8181551}
After: {F8181550}
Reviewers: #vdg, broulik, mart, cblack
Reviewed By: #vdg, cblack
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D28104
Summary:
Since the release of KDE Frameworks 5.68.0 we can now
use the methods exposed in KActivities::Controller to trigger a
switch to the previous or next activity from ShellCorona.
Reviewers: ngraham, ivan, apol
Reviewed By: ngraham, apol
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D28083
Summary:
This is a pre-existing problem, but became much more visible with D27189 (thus exposing
one of the reasons why I like visually separating dissimilar elements so much).
Essentially the dialog's bottom and right margins were not being properly mirrored on
the top and left, leading to the applet's content view looking off-center. Various apps
were locally adding their own extra top margins to compensate for this, which can be
removed once this patch lands.
This patch fixes that by explicitly using the default dialog margins for those edges.
I will submit follow-up patches to fix applets that were adding extra padding that is
now unnecessary.
Test Plan:
It was especially noticeable with D27160.
Before: {F8180273}
After: {F8180272}
Reviewers: #vdg, #plasma, cblack
Reviewed By: #vdg, #plasma, cblack
Subscribers: cblack, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D28089
Summary:
This add a top area based on the current theme. If the file is not in the current theme, said area is not shown.
Problem: the header is moved to the right by the Svg element, and I'm not sure how to align it correctly anymore.
Depends on D27695
Test Plan: {F8088058}
Reviewers: #vdg, #plasma, ngraham
Reviewed By: #vdg, ngraham
Subscribers: mart, ngraham, ndavis, plasma-devel
Tags: #plasma
Maniphest Tasks: T10470
Differential Revision: https://phabricator.kde.org/D27189
Summary:
Port away from the query language to lambda using the new KApplicationTrader API.
Depends on D27953.
Test Plan: Tested by hand with several applications, still works as expected.
Reviewers: #plasma, dfaure
Reviewed By: dfaure
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27954
Summary:
Currently the applet uses the main line in tooltip to display all info. Instead it should show always the same first line like other widgets and use the second line to show info.
BUG: 411973
FIXED-IN: 5.19.0
Test Plan:
The point of this patch is to make the tooltip more like the style used in the Audio Volume applet:
{F7862465}
Other "after" images:
{F7862461}
{F7862463}
{F7862464}
{F7871067}
Reviewers: #vdg, #plasma, broulik, ndavis, mthw
Reviewed By: #vdg, #plasma, broulik, ndavis, mthw
Subscribers: GB_2, ndavis, broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D24070
Summary:
Right now time zones are only shown in the tooltip, which is annoying since the tooltip
times out aftew a few seconds, so it often closes before I can find the timezone I'm
looking for.
This patch adds a view for the current tomezones in the expanded representation, and
implements a mockup in https://bugs.kde.org/show_bug.cgi?id=395655 showing a proposal
for how to present this information.
The Expanded Representation is also ported to Layouts in order to make this task easier.
FEATURE: 395655
FIXED-IN: 5.19.0
Test Plan:
Just calendar: {F8157434}
Calendar + events: {F8157435}
Calendar + time zones: {F8157436}
Calendar + events + time zones: {F8157437}
Reviewers: #vdg, #plasma, cblack
Reviewed By: #vdg, cblack
Subscribers: cblack, apol, plasma-devel
Tags: #plasma
Maniphest Tasks: T9222
Differential Revision: https://phabricator.kde.org/D27903
Summary:
For very narrow panel item size is too big (item + padding exceed panel size). This adds a check to not exceed panel size.
Before:
{F8167941}
After:
{F8167942}
Test Plan:
* Make panel very narrow - icons should fit into panel
* Repeat for vertical/horizontal
Reviewers: #plasma_workspaces, #plasma, ngraham, broulik
Reviewed By: ngraham
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27958
Summary:
any other position doesn't really make sense on mobile, so ignore popup location
settings
Reviewers: broulik
Reviewed By: broulik
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27968
Instead of comparing the state of the action to the action name, compare it to the argument the action will invoke it with.
In contrast to checkboxes, which are independent actions with a boolean state, radio menu items all refer
to the same action (e.g. "Zoom") and then pass the new state ("zoom-100", "zoom-200", etc) as target when invoking the action.
CCBUG: 418385
Differential Revision: https://phabricator.kde.org/D27885
According to documentation [1] a menu item has a target attribute, which is "the parameter to pass when activating the action".
Furthermore, the action "Activate" method specifies "If the action activation requires a parameter then this parameter must
be given in the second parameter (av).". Also implements a TODO in the code.
[1] https://wiki.gnome.org/Projects/GLib/GApplication/DBusAPI
CCBUG: 418385
Differential Revision: https://phabricator.kde.org/D27884
HelperMatch type was used to identify them in run but this also causes them to score way higher than anything else (except ExactMatch).
CCBUG: 418529
Differential Revision: https://phabricator.kde.org/D27886
Summary:
Depends on D27465
@ngraham recommended that I split up https://phabricator.kde.org/D27438 into three patches:
1. The foundation code to get landed first so that the other two patches can be done as patches that change two separate lines instead of just one
2. Tablet Mode increases tray icon spacing
3. This patch - Increase tray icon spacing slightly on Non-Tablet Mode (half of the amount it increases by in Tablet Mode)
This patch is for the third patch of the three recommended patches to split the original patch into, and makes the click areas for the System Tray Plasmoid slightly larger in normal Plasma.
Test Plan:
1. Install this patch to the System Tray Plasmoid
BEFORE:
{F8109485}
AFTER:
{F8109489}
Reviewers: #vdg, niccolove, ngraham
Reviewed By: #vdg, niccolove, ngraham
Subscribers: kmaterka, gvgeo, ngraham, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27466
Summary:
Use the unified data model everywhere, not just in configuration. This simplifies UI code, separetes presentation from data.
This requires the use of ListView and GridView.
This change enables the implementation of more advanced sorting algorithms for systemtray items.
Test Plan: Affects almost all areas of system tray.
Reviewers: #plasma_workspaces, #plasma, davidedmundson, ngraham, broulik
Reviewed By: #plasma_workspaces, #plasma, davidedmundson, ngraham
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D26992
Summary:
Otherwise, setLayout function might be called for
already destructed instance of ItemContainer,
leading to double reference counter decrement of m_layout QPointer,
eventually invalidating such pointers prematurely.
BUG: 417603
Test Plan:
1) Unlock widgets via command: qdbus org.kde.plasmashell /PlasmaShell evaluateScript "lockCorona(false)"
2) On desktop push right mouse button and select menu item 'Add Widgets...'
3) Add various widgets to desktop using drag'n'drop on desktop.
I've added at least following widgets on same desktop screen:
Audio Volume, Battery and Brightness, Binary Clock, Clipboard, Color Picker, Grouping Plasmoid, Quick Chat
4) Remove just added widgets in random order
5) If necessary, repeat steps 3 and 4 a few times
If widgets aren't appearing on desktop despite adding them via drag'n'drop, it's bugged and ready to crash. But it's not a requirement for crash.
6) lock widgets via command: qdbus org.kde.plasmashell /PlasmaShell evaluateScript "lockCorona(true)"
7) repeat steps 1-6 multiple times
8) plasmashell shouldn't crash
Reviewers: ngraham, davidedmundson, mart
Reviewed By: davidedmundson
Subscribers: cfeck, anthonyfieroni, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27650
Summary:
This was a deliberate decision to remove this in
c673a83226
The logic being that kdeinit should auto launch itself if required.
In practice this exposes a presumably pre-existing bug in kdeinit
autostarting where the env is not set correctly.
Test Plan:
qdbus org.kde.klauncher5 /KLauncher org.kde.KLauncher.exec_blind /opt/kde5/bin/kate ""
kate opened
Reviewers: #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27868
Summary: With other two patches, this aims to make leftMargin consistent in widgets (See https://phabricator.kde.org/D26945 and https://phabricator.kde.org/D26944)
Test Plan:
System tray
Before:
{F7977382}
After:
{F7977379}
Notifications
Before:
{F7977359}
After:
{F7977357}
Battery monitor
Before:
{F7977362}
After:
{F7977361}
Self reminder: networkmanager is still slightly badly aligned
Reviewers: #vdg, #plasma, ngraham
Reviewed By: #vdg, ngraham
Subscribers: gvgeo, ngraham, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D26946
Summary:
RecentUsageModel can list all aps and docs,
only aps or only docs. make possible to control that from QML
Test Plan: the api works, all existing code has the same behavior as before
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27782
Summary:
This way the text doesn't get cut off the screen on at least the
PinePhone
Test Plan:
1. Open the Language KCM on a small screen without this patch
2. Open the Language KCM on a small screen with this patch
Reviewers: davidedmundson
Reviewed By: davidedmundson
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27781
Summary:
Currently startplasma spawns plasma-session then sits around waiting for
that to finish
plasma-session spawns all the startup then also just sits around doing
nothing
This patch makes plasma-session spawn all the startup and then quit.
It also splits the owner of the org.kde.shutdown interface to be on
demand. plasma-shutdown asks ksmserver to quit and then if applicable
runs the shutdown scripts or not.
Startplasma then knows when to exit by monitoring the DBus service
status directly.
The benefits are that we save some resources by not needing
plasma-session lingering about.
It also means the shutdown interface is re-usable as-is when the pending
systemd startup method is used.
Test Plan:
Logged in and:
- ran killall ksmserver, session ended as before
- logged out and cancelled due to unsaved changes
- logged out and completed logout
- logged out and rebooted
Reviewers: #plasma, apol
Reviewed By: apol
Subscribers: apol, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27629
Summary: The clock was too close to the panel right edge when displaying hours beginning with 10, 11 and 12. Weirdly enough, the right margin was different based on the clock current time. This patch makes the margin constantly equal to the one that there was before when displaying 10,11,12 plus units.smallSpacing.
Reviewers: #vdg, #plasma, davidedmundson, ngraham
Reviewed By: #vdg, #plasma, davidedmundson, ngraham
Subscribers: gvgeo, davidedmundson, ngraham, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27737
Summary:
@ngraham recommended that I split up https://phabricator.kde.org/D27438 into three patches:
1. The foundation code to get landed first so that the other two patches can be done as patches that change two separate lines instead of just one
2. Tablet Mode increases tray icon spacing
3. Increase tray icon spacing slightly on Non-Tablet Mode (half of the amount it increases by in Tablet Mode)
This patch integrates both patch 1 and 2 of what ngraham recommended to make system tray icon click areas larger when Kirigami's Tablet Mode setting is true than they normally are.
Test Plan:
1. Test that System Tray still works after these changes have been made
2. Check that when Kirigami.Settings.tabletMode is enabled the system tray icon click areas become slightly larger in size
Reviewers: ngraham, #vdg, #plasma, niccolove
Reviewed By: ngraham, #vdg, niccolove
Subscribers: davidre, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27465
Summary:
In wayland, QScreen::availableGeometry() returns QScreen::geometry(), we could get a better value from plasmashell
BUG: 386114
Test Plan: Krunner isn't overlapped by a top panel in all cases
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: meven, apol, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27458
Summary:
A recent update to startup made it too fast and hit a race with ksplash.
We expose that we could send that kinit and ksmserver were ready before
ksplash registered the service name.
We have an existing mechanism to make DBus server queue up messages if a
service is not registered yet without actually activating it. So we can
re-use that.
Long term we need to rethink ksplash completely.
Test Plan:
Confirmed issue with extra debug
Logged in and the issue was gone
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27702
Summary:
Since ksmserver was split, start-plasma launches plasma-session which in
turn invokes ksmserver.
Test Plan: No code changes, only a method rename
Reviewers: #plasma, broulik, apol
Reviewed By: #plasma, broulik, apol
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27621
Summary:
* Make the panel spacer take a lot more space when is in expanding mode, so much
to "win" against the taskbar and collapse it to its minimum size (seems the
most expected behavior after some discussions in vdg channel)
* make it paint a background when in edit mode
* when two spacers are present in the panel, they try to center all the content
that is in between them (if possible), so that is always at the center of the panel,
even if there is more content on one side rather than the other
Test Plan:
{F8110981}
{F8112648}
Reviewers: #plasma, #vdg, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: davidedmundson, davidre, broulik, ngraham, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27481