Proposal: remove panel-space-filling behavior from all widgets
Some widgets automatically fill the space on the Panel, most notably Task Manager and Global Menu.
This can be useful: for the Task Manager for example, it means that right-clicking on an empty part of the Panel shows the "Configure Task Manager" menu item, and app icons dragged to the empty area get pinned to the Task Manager rather than becoming standalone launcher widgets.
However this convenience comes at a cost:
- Redundant implementation of space-filling behavior, since we already have an expanding Panel spacer item that can do the same job.
- Causes bugs like https://bugs.kde.org/show_bug.cgi?id=367815 and https://bugs.kde.org/show_bug.cgi?id=396404.
- Every applet with space-filling behavior needs a private implementation of the ability to turn it off because it doesn't make sense for every situation; for example !470 (merged).
Overall it seems like a cleaner though slightly less-self-contained approach would be to make widgets never fill empty space, and we always use expanding panel spacers instead. Then we change the "default" and "Application Menu Bar" Panel presets to include these spacer items. And then users who don't want the space-filling behavior can simply remove the expanding spacer items.
To make this work without regressing usability (especially for the Task Manager), we'll need to make clicks and drags on an expanding Panel spacer item get forwarded to the nearest widget that's able to handle that event. This would also fix https://bugs.kde.org/show_bug.cgi?id=416927.