Repository navigation
Comparing changes
Open a pull request
base repository: xarbit/plasma6-applet-appgrid
base: v1.9.5
head repository: xarbit/plasma6-applet-appgrid
compare: v1.9.6
- 11 commits
- 29 files changed
- 1 contributor
Commits on Oct 17, 2026
-
fix(menu): launch app actions by name, not by menu row index
appActions() leaves out actions without text, but launchAppAction() looked the QML menu row index up in the unfiltered KService::actions(), so a text-less action ahead of the others made the context menu start the wrong action. Pass the action name instead and resolve it with the new ServiceAction::find(), covered by a test that builds a KService from a temporary .desktop file whose first action has no name. Backport of 3d03cbf from main (which resolves through AppActionId).
Configuration menu - View commit details
-
Copy full SHA for b3ff7be - Browse repository at this point
Copy the full SHA b3ff7beView commit details
Commits on Oct 18, 2026
-
fix(favorites): show and launch favourites the menu doesn't list (#224)
AppModel lists what the XDG menu places. Plasma's menu file places apps without any Categories= entry in a "Lost & Found" catch-all, but a menu without one leaves them out, and so does a menu entry removed with the menu editor. Brave/Chromium webapps write no categories, so on such a system a favourited webapp was missing from the alphabetically sorted favourites (the app list filtered to favourites) and could not be launched by storage id from the manual-order view either. Kickoff resolves favourites through KService rather than the menu, so do the same: AppFilterModel hands the favourites to AppModel, which also serves the ones the menu left out, flagged OutsideMenuRole. The filter model shows those rows only among the favourites, and they add no category, so the grid and the category bar still follow the menu. AppModel reloads only when the set of such favourites changes.
Configuration menu - View commit details
-
Copy full SHA for eef66cd - Browse repository at this point
Copy the full SHA eef66cdView commit details -
fix(favorites): reorder only on a grid that shows the stored order
The drag handler moved stored favourites by rows of whatever the grid showed. With "sort favourites alphabetically" on, or on the All tab and the categories, dragging an app that is a favourite therefore moved a different entry in the KActivities favourites, quietly scrambling the manual order. Reorder only while the favourites tab shows the KActivities model itself; adding an app from another tab is unchanged. Backported from 4d2e951 on main.
Configuration menu - View commit details
-
Copy full SHA for 1ee9b0e - Browse repository at this point
Copy the full SHA 1ee9b0eView commit details -
fix(grid): honour the configured column count under pixel-snapping
(cherry picked from commit 3f914e2)
Configuration menu - View commit details
-
Copy full SHA for f0ca91a - Browse repository at this point
Copy the full SHA f0ca91aView commit details -
fix(apps): tell Flatpak and Snap apps by whole path segments
Any app whose .desktop path contained "snap" counted as a Snap and any Exec line containing "flatpak" as a Flatpak, so distro packages such as limine-snapper-restore and Discover's own Snap and Flatpak helper entries showed the wrong source badge and "Manage in Discover" picked the wrong backend. Match the export dirs (/flatpak/exports/, /snapd/desktop/) and "flatpak run" / "/snap/" in the Exec line instead. "Manage in Discover" also never saw the installed path: it passed the absolute entry path to QStandardPaths::locate, which returns nothing for an absolute path. Both now read the service through installSourceOf(). Checked against all 382 apps on a test system: only those three entries change, to System. Unlike main, the X-Flatpak key is not used: distro packages ship upstream's .desktop file with it (Podman Desktop). Backported from 1252fad on main.
Configuration menu - View commit details
-
Copy full SHA for 4358c28 - Browse repository at this point
Copy the full SHA 4358c28View commit details -
fix(update): compare pre-release versions by SemVer precedence
isNewer() compared the pre-release part as plain text, so 2.0.0-rc.10 ranked below 2.0.0-rc.9 and dev.100 below dev.99: a dev or RC user past the ninth build was told an older build is an update, or missed a newer one. Compare the dot-separated identifiers per SemVer instead (numeric ones as numbers and below alphanumeric ones, a prefix ranks lower), and the trailing number of same-prefix identifiers numerically too, for the dot-less rc1/rc2 tags of older releases. (cherry picked from commit fa0309a)
Configuration menu - View commit details
-
Copy full SHA for 3785551 - Browse repository at this point
Copy the full SHA 3785551View commit details -
fix(panel): keep the configured visible rows with the category bar off (
#205) The panel height reserved a fixed header estimate that includes the category bar and its two dividers. With the bar off those items take no space in the layout, so their share went to the grid, which then showed part of an extra row (6.40 rows for 6 configured). Take the category bar block out of the estimate while the bar is hidden. With the bar shown the size is unchanged. Covered by tst_GridPanel for the centred window and the panel popup.
Configuration menu - View commit details
-
Copy full SHA for d51d3df - Browse repository at this point
Copy the full SHA d51d3dfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1286743 - Browse repository at this point
Copy the full SHA 1286743View commit details -
fix(panel): keep the panel size while searching
d51d3df took the category bar out of the panel height whenever the bar was hidden, but it also hides while searching, in a prefix mode and in the empty compact state, so the window shrank as soon as the user typed. Key it to the "show category bar" setting instead: the panel keeps its size while searching, as before, and with the bar turned off the grid still shows the configured rows (#205). Covered by tst_GridPanel: the height while searching, with the bar on and off, in the centred window and the panel popup.
Configuration menu - View commit details
-
Copy full SHA for e33d674 - Browse repository at this point
Copy the full SHA e33d674View commit details -
fix(recents): drop an uninstalled app from the recents row
Each recents tile read its app through a binding over appsModel.getByStorageId(id). A binding over a call only re-runs when its arguments change, so when an app was uninstalled the app list reloaded but the tile kept the old name and icon (and launched nothing) until the recents changed or plasmashell restarted. Re-read the tiles whenever the app model resets. Covered by tst_RecentAppsHeader with a stub that, like the C++ model, changes its app list without a change signal.
Configuration menu - View commit details
-
Copy full SHA for 97660a6 - Browse repository at this point
Copy the full SHA 97660a6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1ae7bc4 - Browse repository at this point
Copy the full SHA 1ae7bc4View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v1.9.5...v1.9.6