https://bugs.kde.org/show_bug.cgi?id=470099
Bug ID: 470099 Summary: Non-wysiwyg config for panels for multiple monitors Classification: Plasma Product: Active Window Control Version: unspecified Platform: Ubuntu OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: General Assignee: zrenf...@gmail.com Reporter: py7sm...@anonaddy.me CC: plasma-b...@kde.org Target Milestone: --- _Sorry, I have no idea which "Product" is responsible for the panels. Please change category if you know a better one._ _This is a feature request._ CURRENT SITUATION I am using a laptop with multiple external monitors attached. The external monitors have a different resolution and size than the laptop monitor, and I use display configuration to make them all work nicely together. Sometimes I disconnect the external monitors to work with the standalone laptop. At night, I typically send the system to sleep/suspend, and I power down the external monitors. Next day I power everything up again and wake the system up. Currently using KDE with wayland, but I used the other one (X?) before. My panel config is usually quite simple: - The primary monitor (one of the external monitors) gets a bottom panel with application launcher menu, a taskbar, the tray icons, and a desktop switcher. The taskbar shows the windows of the current monitor. - Any secondary monitor gets a bottom panel with just the taskbar, showing the windows of that specific monitor. - All the panels are smallest possible height (20). PROBLEM When I reconnect the external monitors, or I wake up the system from sleep/suspend, both the display configuration and the panels can or will get messed up: - Sometimes the primary monitor's panel is on a secondary monitor. I can fix this by opening display configuration, making the other monitor the primary one, and then switching it back. - Sometimes one panel has a wrong width, probably because it was calculated with a different monitor in mind. This can be fixed in the same way as above. - Sometimes panels disappear. Perhaps they are just hidden. Also, whenever I attach different external monitors, I have to start over to configure the panels. CURRENT MODEL (as far as I understand it) Currently, panels are configured using a "wysiwyg" approach. Then, different panel configs are stored per combination of external monitors (I think). Whenever it wakes up or I connect different monitors, the system will find a stored config that matches the current monitors (I think). This system seems to be quite fragile. PROPOSED SOLUTION Provide a different way to configure panels, that is not "wysiwyg" but more structural and rules-based. Configuration: - A user can create named panel templates with collections of widgets. E.g. for me it would just be "primary display panel" and "secondary display panel". For others there might also be e.g. "small secondary display panel". Some of these would be pre-configured, but a user can arbitrarily add more. - Widgets placement does not store precise coordinates, but just order, shrink/expand and align left/right settings. Or instead of align right, just have elastic spacers. - Widget settings affect all instances of that widget in that panel template. E.g. if I have two secondary monitors that both have the same panel template with a taskbar widget, then changing the settings for taskbar will affect both. - A user can create rules where to place panels of which type. E.g. on a primary display, put a panel in the bottom using the settings from "primary display panel". On any non-primary display use the "secondary display panel" in the bottom. Some users might create panel placement rules based on screen resolution or other criteria. - There could be special settings to prevent duplicate panels. E.g. a panel rule could have options "replace other panels in the same position" or "don't place this if there are already other panels in the same position" or "place this above other panels in the same position" (if that is even possible). - The wysiwyg could still exist, but placing a widget would affect the panel template, not the panel itself. Execution: - Whenever the system starts or wakes up, or monitors are connected or disconnected, or the display configuration is changed, the panel rules are newly applied. NOTES This same problem exists in different desktop envs, not just KDE. Maybe KDE could be the first to fix it :) SOFTWARE/OS VERSIONS Operating System: Ubuntu 22.04 KDE Plasma Version: 5.24.7 KDE Frameworks Version: 5.92.0 Qt Version: 5.15.3 Kernel Version: 5.19.0-41-generic (64-bit) Graphics Platform: Wayland Processors: 8 × 11th Gen Intel® Core™ i7-1165G7 @ 2.80GHz Memory: 15,3 GiB of RAM Graphics Processor: Mesa Intel® Xe Graphics -- You are receiving this mail because: You are watching all bug changes.