Bug 481922 - The Quick Launch icons on the taskbar cannot be freely rearranged
Summary: The Quick Launch icons on the taskbar cannot be freely rearranged
Status: RESOLVED FIXED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Quicklaunch widget (other bugs)
Version First Reported In: 5.18.4
Platform: unspecified Linux
: NOR wishlist
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords: regression
: 489558 (view as bug list)
Depends on:
Blocks:
 
Reported: 2024-02-28 10:16 UTC by Gravarty
Modified: 2026-05-01 17:22 UTC (History)
16 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In: 6.7.0
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Gravarty 2024-02-28 10:16:49 UTC
STEPS TO REPRODUCE
1. Add the "Quick Launch" widget onto the taskbar
2. Add some icons
3. Try to rearrange the icons and notice it doesn't work.

OBSERVED RESULT

Icons stay in a locked state.

EXPECTED RESULT

You can freely rearrange the icons like in KDE 5 and prior

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: KDE 6 on Arch Linux
Comment 1 TraceyC 2024-07-01 18:24:33 UTC
*** Bug 489558 has been marked as a duplicate of this bug. ***
Comment 2 TraceyC 2024-07-01 18:25:39 UTC
I'm not sure if this is a bug or intended, but I can duplicate the behavior. I used to be able to rearrange QuickLaunch icons in Plasma 5, but not in Plasma 6.
Comment 3 Nate Graham 2024-07-10 20:26:12 UTC
It's a regression, not intended.
Comment 4 sashaa 2024-10-27 19:06:13 UTC
can confirm this is still a thing on plasma 6.2.2
Comment 5 kbtr.buffer098 2024-10-31 23:16:30 UTC
It's also very hard to drop icons into the quicklaunch and they always land at the beginning (left side). The only way to have them ordered is to drop them in the desired order. Also, the blue border where the icon would drop, only shows up (and glitches a lot) when no icons are in place. The next icons you drop, there's no way to know if you're dropping them in the quicklaunch widget or directly on to the bar.
Comment 6 kbtr.buffer098 2025-01-15 16:24:21 UTC
Updating Plasma version for this bug, as it's still happening on 6.2.5 both on X11 and Wayland session.
Comment 7 TraceyC 2025-01-15 16:28:32 UTC
I set the version back to what it was. Please don't change this. See the field descriptions here for an explanation
https://bugs.kde.org/page.cgi?id=fields.html#alias
Comment 8 kbtr.buffer098 2025-01-15 16:33:40 UTC
(In reply to TraceyC from comment #7)
> I set the version back to what it was. Please don't change this. See the
> field descriptions here for an explanation
> https://bugs.kde.org/page.cgi?id=fields.html#alias

Understood! Sorry about that :)
Comment 9 stiliyan 2025-09-04 18:13:43 UTC
Still can't rearrange quicklaunch icons in 6.3.6 on Debian Trixie. A workaround that's a little better than removing launchers and adding them back in is to edit the text file "~/.config/plasma-org.kde.plasma.desktop-appletsrc":

Find the line that starts with "launcherUrls=" and rearrange those urls in the desired order... You may need to log out and then log back in for the changes to take effect.
Comment 10 Alex Folland 2026-04-03 05:27:02 UTC
I have opened a merge request that addresses this issue here: https://invent.kde.org/plasma/kdeplasma-addons/-/merge_requests/1029
Comment 11 TraceyC 2026-04-03 17:49:52 UTC
Correcting status
Comment 12 Nate Graham 2026-04-08 10:12:00 UTC
Git commit b93257b9939f276546bb32f34276b838dca9fe99 by Nate Graham, on behalf of Alex Folland.
Committed on 08/04/2026 at 10:11.
Pushed by ngraham into branch 'master'.

applets/quicklaunch: fix drag-and-drop reordering in Plasma Wayland and prevent resulting Wayland-specific Plasma shell crashes

The original `DropArea` was defined as the first child of the root layout item, so other sibling objects in the hierarchy overlapped it in Z-order and consumed all drag events before the `DropArea` could receive any. In Wayland, Qt delivers drag events to QML items using Z-order hit-testing, so the `DropArea` must be on top of the stack to receive drag events. Moving the `DropArea` definition to the end fixes the Z-order so it receives drag events because it's on top of the stack by being created last. In X11, Qt's drag event routing does not use Z-order hit-testing in the same way, which is why this is not a problem there. Clicking to launch or see context menus, and hovering for tooltips both still work in Wayland with the fix.

In Wayland, a drag event's `event.mimeData.source` is always `null` because the drag has MIME data but not the exact source object reference. This causes `isInternalDrop()`, which relies on comparing the source object of the drag, to always return `false`, so every rearrangement drag is misdetected as a drag-and-drop from an external program. When misdetected this way, the drag triggers URL changes mid-drag (inserting and removing launchers), which causes asynchronous URL change event handlers (`onLauncherUrlsChanged` and `onPopupUrlsChanged`) to destroy and recreate all launcher instances while the drag is still active, crashing the Plasma shell. To handle that in Wayland, this instead detects internal drops by comparing the URL from the drag with URLs from the launchers, and guards the URL change event handlers to ignore changes mid-drag.

Also, this uses `ListModel.move()` to perform live reordering during a drag, which repositions items without destroying launcher instances, unlike `moveUrl()` which internally destroys and recreates launcher instances which leads to launchers disappearing when dragged away.

A further improvement would be to have the URL change event handlers queue any externally-applied URL changes to apply after the drag finishes so automatic external config changes are not lost if they happen while the user is dragging launchers around. That scenario is probably rare enough that it's not worth including with this Wayland fix.

M  +0    -4    applets/quicklaunch/IconItem.qml
M  +59   -20   applets/quicklaunch/Popup.qml
M  +97   -52   applets/quicklaunch/main.qml

https://invent.kde.org/plasma/kdeplasma-addons/-/commit/b93257b9939f276546bb32f34276b838dca9fe99