Bug 456913

Summary: Unplugging external monitor changes scale of remaining monitor
Product: [Plasma] KScreen Reporter: Nicolas Fella <nicolas.fella>
Component: commonAssignee: kscreen-bugs-null <kscreen-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: aleixpol, kde, nate, vlad.zahorodnii, xaver.hugl
Priority: VHI Keywords: regression
Version First Reported In: master   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: KScreen config
EDID information

Description Nicolas Fella 2022-07-19 12:32:48 UTC
STEPS TO REPRODUCE
1. Start with a laptop with a builtin display (1920x1080, no scaling)
2. Connect an external HDMI monitor (4K), configure it to have 2x scaling 
3. Disconnect the external monitor again

OBSERVED RESULT
The builtin display now has 2x scale

EXPECTED RESULT
The builtin monitor's scale remains at 1x

SOFTWARE/OS VERSIONS
KDE Plasma Version: master
KDE Frameworks Version: master
Qt Version: 5.15.5+kde

ADDITIONAL INFORMATION
Wayland
Comment 1 Nicolas Fella 2022-07-19 12:34:58 UTC
Created attachment 150737 [details]
KScreen config

.local/share/kscreen/ before (only Laptop), during (both screens), and after (only Laptop again)
Comment 2 Nicolas Fella 2022-07-19 12:38:30 UTC
Created attachment 150738 [details]
EDID information
Comment 3 Nicolas Fella 2022-07-19 12:40:40 UTC
What's probably worth noting is that the KCM shows my external monitor as "AU Optronics". That is actually the manufacturer of the builtin display.
Comment 4 Nicolas Fella 2022-07-19 12:47:13 UTC
kscreen-doctor -o shows both monitors as "AU Optronics"

Output: 1 AU Optronics eDP-1-unknown enabled connected primary Panel Modes: 0:1920x1080@60*! 1:1280x1024@60 2:1280x800@60 3:1600x900@60 4:1368x768@60 5:1280x720@60 Geometry: 0,1080 1920x1080 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: Automatic primary
Output: 2 AU Optronics HDMI-A-2-unknown enabled connected  HDMI Modes: 0:3840x2160@30*! 1:3840x2160@30 2:3840x2160@30 3:3840x2160@30 4:3840x2160@25 5:3840x2160@24 6:3840x2160@24 7:2560x1440@60 8:1920x1080@60 9:1920x1080@60 10:1920x1080@60 11:1920x1080@60 12:1920x1080@60 13:1920x1080@60 14:1920x1080@50 15:1920x1080@50 16:1920x1080@50 17:1920x1080@30 18:1920x1080@30 19:1920x1080@25 20:1920x1080@24 21:1920x1080@24 22:1600x1200@60 23:1600x900@60 24:1280x1024@75 25:1280x1024@60 26:1152x864@75 27:1280x720@60 28:1280x720@60 29:1280x720@50 30:1024x768@75 31:1024x768@60 32:800x600@75 33:800x600@60 34:720x576@50 35:720x576@50 36:720x576@50 37:720x576@50 38:720x480@60 39:720x480@60 40:720x480@60 41:720x480@60 42:720x480@60 43:720x480@60 44:720x480@60 45:720x480@60 46:640x480@75 47:640x480@60 48:640x480@60 49:640x480@60 50:720x400@70 51:2560x1600@60 52:1920x1200@60 53:1280x800@60 54:3200x1800@60 55:2880x1620@60 56:1368x768@60 Geometry: 1,0 3840x2160 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: Automatic
Comment 5 Nicolas Fella 2022-07-19 13:15:40 UTC
This seems to be a regression compared to 5.25.3

Output: 1 AU Optronics eDP-1-unknown enabled connected primary Panel Modes: 0:1920x1080@60*! 1:1280x1024@60 2:1280x800@60 3:1600x900@60 4:1368x768@60 5:1280x720@60 Geometry: 0,1080 1920x1080 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: Automatic primary
Output: 2 Dell Inc. DELL P2415Q/D8VXF0150C7B enabled connected  HDMI Modes: 0:3840x2160@30*! 1:3840x2160@30 2:3840x2160@30 3:3840x2160@30 4:3840x2160@25 5:3840x2160@24 6:3840x2160@24 7:2560x1440@60 8:1920x1080@60 9:1920x1080@60 10:1920x1080@60 11:1920x1080@60 12:1920x1080@60 13:1920x1080@60 14:1920x1080@50 15:1920x1080@50 16:1920x1080@50 17:1920x1080@30 18:1920x1080@30 19:1920x1080@25 20:1920x1080@24 21:1920x1080@24 22:1600x1200@60 23:1600x900@60 24:1280x1024@75 25:1280x1024@60 26:1152x864@75 27:1280x720@60 28:1280x720@60 29:1280x720@50 30:1024x768@75 31:1024x768@60 32:800x600@75 33:800x600@60 34:720x576@50 35:720x576@50 36:720x576@50 37:720x576@50 38:720x480@60 39:720x480@60 40:720x480@60 41:720x480@60 42:720x480@60 43:720x480@60 44:720x480@60 45:720x480@60 46:640x480@75 47:640x480@60 48:640x480@60 49:640x480@60 50:720x400@70 51:2560x1600@60 52:1920x1200@60 53:1280x800@60 54:3200x1800@60 55:2880x1620@60 56:1368x768@60 Geometry: 1,0 1920x1080 Scale: 2 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: Automatic
Comment 6 David Edmundson 2022-07-21 12:59:53 UTC
>This seems to be a regression compared to 5.25.3

Can you double check that?
Nothing has changed in libkscreen between master and 5.25.3, on kscreen itself only OSD changes and you removing a useless member var.
Comment 7 Bug Janitor Service 2022-07-21 13:54:49 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/2693
Comment 8 Nicolas Fella 2022-08-17 18:25:54 UTC
Seems to be be fixed by https://invent.kde.org/plasma/kwin/-/merge_requests/2777