I have three displays Left to right 14" 1080p laptop screen 27" 1440p monitor 27" 1440p monitor In Display Settings they are shown correctly In Wallpaper KCM the inbuilt laptop screen is shown as 1536x864 resolution. kscreen-doctor -o Output: 1 eDP-1 enabled connected priority 2 Panel Modes: 0:1920x1080@60*! 1:1680x1050@60 2:1280x1024@60 3:1440x900@60 4:1280x800@60 5:1280x720@60 6:1024x768@60 7:800x600@60 8:640x480@60 9:1280x1024@60 10:1024x768@60 11:1280x800@60 12:1920x1080@60 13:1600x900@60 14:1368x768@60 15:1280x720@60 Geometry: 0,576 1536x864 Scale: 1.25 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown HDR: incapable Wide Color Gamut: incapable ICC profile: none Output: 2 DP-3 enabled connected priority 1 DisplayPort Modes: 0:2560x1440@60! 1:2560x1440@144* 2:2560x1440@120 3:2560x1440@100 4:1920x1080@120 5:1920x1080@120 6:1920x1080@60 7:1920x1080@60 8:1920x1080@60 9:1920x1080@50 10:1280x1440@60 11:1280x1024@75 12:1280x1024@60 13:1280x720@60 14:1280x720@60 15:1280x720@50 16:1024x768@120 17:1024x768@100 18:1024x768@75 19:1024x768@70 20:1024x768@60 21:832x624@75 22:800x600@120 23:800x600@100 24:800x600@75 25:800x600@72 26:800x600@60 27:800x600@56 28:720x576@50 29:720x576@50 30:720x480@60 31:720x480@60 32:720x480@60 33:720x480@60 34:640x480@120 35:640x480@100 36:640x480@75 37:640x480@73 38:640x480@67 39:640x480@60 40:640x480@60 41:640x480@60 42:720x400@70 43:1600x1200@60 44:1280x1024@60 45:1024x768@60 46:1920x1200@60 47:1280x800@60 48:2560x1440@60 49:1920x1080@60 50:1600x900@60 51:1368x768@60 52:1280x720@60 Geometry: 1536,0 2560x1440 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown HDR: incapable Wide Color Gamut: incapable ICC profile: none Output: 3 DP-6 enabled connected priority 3 DisplayPort Modes: 0:2560x1440@60*! 1:2560x1440@144 2:2560x1440@120 3:2560x1440@100 4:1920x1080@120 5:1920x1080@120 6:1920x1080@60 7:1920x1080@60 8:1920x1080@60 9:1920x1080@50 10:1280x1440@60 11:1280x1024@75 12:1280x1024@60 13:1440x900@60 14:1280x720@60 15:1280x720@60 16:1280x720@50 17:1024x768@120 18:1024x768@100 19:1024x768@75 20:1024x768@70 21:1024x768@60 22:832x624@75 23:800x600@120 24:800x600@100 25:800x600@75 26:800x600@72 27:800x600@60 28:800x600@56 29:720x576@50 30:720x576@50 31:720x480@60 32:720x480@60 33:720x480@60 34:720x480@60 35:640x480@120 36:640x480@100 37:640x480@75 38:640x480@73 39:640x480@67 40:640x480@60 41:640x480@60 42:640x480@60 43:720x400@70 44:1600x1200@60 45:1280x1024@60 46:1024x768@60 47:1920x1200@60 48:1280x800@60 49:2560x1440@60 50:1920x1080@60 51:1600x900@60 52:1368x768@60 53:1280x720@60 Geometry: 4096,0 2560x1440 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown HDR: incapable Wide Color Gamut: incapable ICC profile: none Operating System: Solus 4.5 KDE Plasma Version: 5.92.0 KDE Frameworks Version: 5.248.0 Qt Version: 6.6.1 Kernel Version: 6.6.12-271.current (64-bit) Graphics Platform: Wayland Processors: 16 × AMD Ryzen 7 PRO 4750U with Radeon Graphics Memory: 29.1 GiB of RAM Graphics Processor: AMD Radeon Graphics Manufacturer: LENOVO Product Name: 20Y1001SAU System Version: ThinkPad P14s Gen 1
Is the laptop screen using 125% scaling?
Created attachment 165225 [details] attachment-2637097-0.html Yes On Fri, 26 Jan 2024, 9:34 am Nate Graham, <bugzilla_noreply@kde.org> wrote: > https://bugs.kde.org/show_bug.cgi?id=480291 > > Nate Graham <nate@kde.org> changed: > > What |Removed |Added > > ---------------------------------------------------------------------------- > CC| |nate@kde.org > Resolution|--- |WAITINGFORINFO > Status|REPORTED |NEEDSINFO > > --- Comment #1 from Nate Graham <nate@kde.org> --- > Is the laptop screen using 125% scaling? > > -- > You are receiving this mail because: > You reported the bug.
Can confirm. The issue is that it's dividing the resolution by the scale factor when it shouldn't (the KScreen KCM doesn't).
It looks like this data comes from QApplication::screens() which provides the per-screen pixel width and height in logical (aka scaled) pixels, not physical pixels. So we either need to use another data source to get the resolution, or else un-scale them by multiplying the numbers we have by the screen's scale factor. That could lead to loss of precision, though, so I think it's not preferred. I tried it anyway, and multiplying by QScreen::devicePixelRatio() doesn't work since that rounds to integers, so it gives incorrect results with fractional scale factors.
The same bug happens in the tablet KCM, so it's definitely related to the QScreen API we're using. It doesn't affect the display kcm of course, because that's using KScreen.
As a fast fix I suggest dropping the label that shows the resolution
(In reply to David Edmundson from comment #6) > As a fast fix I suggest dropping the label that shows the resolution Someone suggested the same thing and I'm considering that today. And if the maintainer definitely wants to keep it, that should be a good reason to go through the hoops for a larger fix.
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/3841