| Summary: | Prior position of external screen forgotten when disabling+enabling it, or doing "Switch to laptop screen" and then "Extend to right" | ||
|---|---|---|---|
| Product: | [Plasma] plasmashell | Reporter: | Holo <winter> |
| Component: | Display Configuration widget and OSD | Assignee: | Plasma Bugs List <plasma-bugs-null> |
| Status: | CONFIRMED --- | ||
| Severity: | normal | CC: | kde, kde, nate, plasma-bugs-null, xaver.hugl |
| Priority: | NOR | Keywords: | multiscreen |
| Version First Reported In: | 6.4.4 | ||
| Target Milestone: | 1.0 | ||
| Platform: | Fedora RPMs | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: | Two screenshots showing the behaviour | ||
>4. disable screen extension
5. re-enable screen extension
Can you clarify what you're doing in these steps to disable the screen.
Hi, I enable/disable the screen extension by pressing [Windows Key] + [P] on the keyboard to open the quick menu and selecting "Switch to laptop screen". If I enable/disable the screen in the display settings, while my prefered arrangement is active, I get a different behaviour were the second screen is moved upwards every time I disable and enable it. (Somehow I can't attach a screenshot to show the behaviour.) Hello, I have just realized that I am expressing myself incorrectly. In step 4. and 5. I am actually referring to the activation or deactivation of the desktop extension to my second screen. I think this is actually intentional, at least as currently implemented. Clicking "Extend to right" will set up the external screen when a new position, rather than remembering any prior positioning. The Meta+P overlay is really meant as a quick way to set up a new screen, not a way to switch between multiple customized screen setups. The recommended way to do what you're wanting to do is to disable and re-enable the external screen as needed, either using the System Settings page or the `kscreen-doctor` command-line tool. Hi, thanks for the explanation. To be honest, I find this behavior somewhat odd for a desktop PC. On a system with a fixed number of screens I would have expected [Meta]+[P] to reactivate the last activated state, or at least to read the config in '~/.local/share/kscreen/...'. The system settings and kscreen-doctor would also work for my purpose, but they currently have other bugs on my setup. System Settings: Deactivating and activating the second display pushes it further up each time the screen is activated and it previously had a negative y position. kscreen-doctor: Specifying the position with ‘kscreen-doctor output.2.position.2048,-550’ initially positions the second display properly. However, as soon as I execute the command again, the second display moves relative to its previous y position, so in my case it moves upwards. With positive y values, it moves downwards. The y position in the command is therefore not absolute, but is always incremented by the specified value. Deactivating and activating the display with ‘kscreen-doctor output.2.disable’ and ‘kscreen-doctor output.2.enable’ has the same effect as [Meta]+[P], the previous position is not reactivated. Are those problems related to this problem or do I have to open new bug tickets? > System Settings: Deactivating and activating the second display pushes it further up each time the screen is activated and it previously had a negative y position.
Ah, this sounds like the same bug. I guess both codepaths go to the same place. Let's re-open this and use it to track both.
I was able to sort of reproduce this by moving my secondary display higher than the primary, applying, disabling the secondary, applying, re-enabling it, and applying once more. However in this case it moved higher, not lower. So high that there was a gap between screens! The scale factors may be relevant here. My primary is 175% and my secondary is 100%; I notice that both of yours are 125%. Hi, thank you for checking. Maybe something got lost in translation, but for me it's the same behaviour. If the second screen is higher than the primary one it moves upwards and if it's lower it moves downwards on activation. Mine are both scaled to 125% because they have the same resolution and size so I can keep the UI consistant. |
Created attachment 184936 [details] Two screenshots showing the behaviour SUMMARY It's not possible to save a negative Y-position for my second screen if I want to arrange it properly. Setting negative values in the kscreen config also don't get accepted. The initial arrangement set in the display settings is applied. But once I disable and re-enable the screen extension, the previously working setting is not reapplied. STEPS TO REPRODUCE 1. extend screen to right 2. move second screen in arrangement higher than the primary screen 3. apply arrangement 4. disable screen extension 5. re-enable screen extension OBSERVED RESULT The working arrangement set while the screen extension is active is not applied after disabeling and re-enabeling the screen extension. Y-position of screen only updates if the screen is moved lower than the primary screen, never when it's moved higher. EXPECTED RESULT The arrangement working during extending the screen is reapplied after changing the extension setting. Negative X and Y positioning is possible. SOFTWARE/OS VERSIONS Linux/KDE Plasma: Fedora 42 KDE Plasma Version: 6.4.4 KDE Frameworks Version: 6.17.0 Qt Version: 6.9.1 ADDITIONAL INFORMATION AMD CPU + GPU