Bug 465396

Summary: Display Configuration disregards list of "Screen Priorities" at every login on KDE Plasma with three-screen arrangement (leftmost and rightmost are rotated)
Product: [Plasma] KScreen Reporter: Jonas Arndt <jarndt>
Component: commonAssignee: kscreen-bugs-null <kscreen-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: 6446dmw, felim, kde, kde, matt.jolly, me, miranda, nate, notmart, plasma-bugs, sam, sitter
Priority: VHI Keywords: regression
Version: 5.26.90   
Target Milestone: ---   
Platform: Debian testing   
OS: Linux   
Latest Commit: Version Fixed In: 5.27.5
Sentry Crash Report:
Attachments: Screen layout in settings

Description Jonas Arndt 2023-02-07 00:05:59 UTC
SUMMARY
***
NOTE: If you are reporting a crash, please try to attach a backtrace with debug symbols.
See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports
***


STEPS TO REPRODUCE
1. Start computer
2. Log into Plasma
3. 

OBSERVED RESULT
Running on Debian Bookworm.
I have three screens. The left and the right are portrait oriented and the
middle one is landscape oriented and the default screen. After an apt upgrade the system
forgets that the middle screen is the default one. The list of screen priorities
is correct, but the system still decides to make my very left screen default (the one with
panels on). This happens every time I log in. Note that the positions are fine. It is just the issue that it forgets which one is the main screen.

To fix it I have to change the screen priorities list, save, change back, save.

EXPECTED RESULT
I expect that the system will look at the screen priorities and make the
screen with the highest priority the default screen.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: 5.26.90
KDE Plasma Version: 5.26.90
KDE Frameworks Version: 5.102.0
Qt Version: 5.15.8

ADDITIONAL INFORMATION
I have also logged a bug with Debian's maintainer on https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1030552
Comment 1 David Edmundson 2023-02-07 23:33:53 UTC
Can you include output of kscreen-doctor -o

and say if the priority looks right there or not
Comment 2 Marco Martin 2023-02-08 09:15:26 UTC
X11 or wayland?
Comment 3 Marco Martin 2023-02-08 11:47:27 UTC
can you also paste the output of the command kscreen-console ?

I'm curious if all the edids are found correctly, as is a known problem of erratic behavior when there are screens with invalid or duplicated edid (especially on displayport)
Comment 4 Jonas Arndt 2023-02-08 13:22:36 UTC
Here is the output of kscreen-doctor -o

Output: 65 eDP-1 disabled connected priority 0 Panel Modes: 73:1920x1080@60! 74:1920x1080@60 75:1920x1080@60 76:1920x1080@60 77:1920x1080@48 78:1680x1050@60 79:1680x1050@60 80:1400x1050@60 81:1600x900@60 82:1600x900@60 83:1600x900@60 84:1600x900@60 85:1280x1024@60 86:1400x900@60 87:1400x900@60 88:1280x960@60 89:1440x810@60 90:1440x810@60 91:1368x768@60 92:1368x768@60 93:1280x800@60 94:1280x800@60 95:1280x800@60 96:1280x800@60 97:1280x720@60 98:1280x720@60 99:1280x720@60 100:1280x720@60 101:1024x768@60 102:1024x768@60 103:960x720@60 104:928x696@60 105:896x672@60 106:1024x576@60 107:1024x576@60 108:1024x576@60 109:1024x576@60 110:960x600@60 111:960x600@60 112:960x540@60 113:960x540@60 114:960x540@60 115:960x540@60 116:800x600@60 117:800x600@60 118:800x600@56 119:840x525@60 120:840x525@60 121:864x486@60 122:864x486@60 123:700x525@60 124:800x450@60 125:800x450@60 126:640x512@60 127:700x450@60 128:700x450@60 129:640x480@60 130:640x480@60 131:720x405@60 132:720x405@59 133:684x384@60 134:684x384@60 135:640x400@60 136:640x400@60 137:640x360@60 138:640x360@60 139:640x360@60 140:640x360@59 141:512x384@60 142:512x288@60 143:512x288@60 144:480x270@60 145:480x270@60 146:400x300@60 147:400x300@56 148:432x243@60 149:432x243@60 150:320x240@60 151:360x202@60 152:360x202@59 153:320x180@60 154:320x180@59 Geometry: 0,0 1920x1080 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 66 DP-1 enabled connected priority 2 DisplayPort Modes: 79:1680x1050@60 85:1280x1024@60 88:1280x960@60 102:1024x768@60 117:800x600@60 118:800x600@56 130:640x480@60 155:1920x1080@60*! 156:1920x1080@50 157:1920x1080@60 158:1920x1080@60 159:1920x1080@60 160:1920x1080@50 161:1920x1080@60 162:1600x1200@60 163:1280x1024@75 164:1440x900@60 165:1366x768@60 166:1152x864@75 167:1280x720@60 168:1280x720@50 169:1280x720@60 170:1024x768@75 171:1024x768@70 172:832x624@75 173:800x600@72 174:800x600@75 175:720x576@50 176:720x480@60 177:720x480@60 178:640x480@75 179:640x480@73 180:640x480@67 181:640x480@60 182:720x400@70 Geometry: 0,0 1080x1920 Scale: 1 Rotation: 8 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 67 DP-2 disabled disconnected priority 0 DisplayPort Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 68 DP-3 disabled disconnected priority 0 DisplayPort Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 69 DP-3-1 disabled disconnected priority 0 DisplayPort Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 70 DP-3-2 enabled connected priority 1 DisplayPort Modes: 79:1680x1050@60 85:1280x1024@60 88:1280x960@60 96:1280x800@60 102:1024x768@60 117:800x600@60 118:800x600@56 130:640x480@60 155:1920x1080@60*! 156:1920x1080@50 157:1920x1080@60 163:1280x1024@75 167:1280x720@60 168:1280x720@50 169:1280x720@60 170:1024x768@75 171:1024x768@70 172:832x624@75 173:800x600@72 174:800x600@75 175:720x576@50 176:720x480@60 177:720x480@60 178:640x480@75 179:640x480@73 181:640x480@60 182:720x400@70 183:1920x1080@75 184:1600x900@60 185:1366x768@60 Geometry: 1080,420 1920x1080 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 71 DP-3-3 enabled connected priority 3 DisplayPort Modes: 79:1680x1050@60 85:1280x1024@60 96:1280x800@60 102:1024x768@60 117:800x600@60 130:640x480@60 155:1920x1080@60*! 156:1920x1080@50 157:1920x1080@60 164:1440x900@60 167:1280x720@60 168:1280x720@50 169:1280x720@60 175:720x576@50 176:720x480@60 177:720x480@60 181:640x480@60 182:720x400@70 184:1600x900@60 Geometry: 3000,0 1080x1920 Scale: 1 Rotation: 2 Overscan: 0 Vrr: incapable RgbRange: unknown
Comment 5 Jonas Arndt 2023-02-08 13:23:01 UTC
(In reply to Marco Martin from comment #2)
> X11 or wayland?

I am running X11
Comment 6 Jonas Arndt 2023-02-08 13:24:27 UTC
(In reply to Marco Martin from comment #3)
> can you also paste the output of the command kscreen-console ?
> 
> I'm curious if all the edids are found correctly, as is a known problem of
> erratic behavior when there are screens with invalid or duplicated edid
> (especially on displayport)

Here you go

jonas@uberpenguinwan:~$ kscreen-console
START: Requesting Config
Received config. Took 16 milliseconds
Screen:
	maxSize: QSize(16384, 16384)
	minSize: QSize(320, 200)
	currentSize: QSize(4080, 1920)

-----------------------------------------------------

Id:  65
Name:  "eDP-1"
Type:  "Panel (Laptop)"
Connected:  true
Enabled:  false
Priority:  0
Rotation:  KScreen::Output::None
Pos:  QPoint(0,0)
MMSize:  QSize(344, 194)
FollowPreferredMode:  false
Scale:  1
Clones:  None
Mode:  ""
Preferred Mode:  "73"
Preferred modes:  ("73")
Modes: 
	 "100"    ""   QSize(1280, 720)   59.7447
	 "101"    ""   QSize(1024, 768)   60.0373
	 "102"    ""   QSize(1024, 768)   60.0038
	 "103"    ""   QSize(960, 720)   60
	 "104"    ""   QSize(928, 696)   60.0507
	 "105"    ""   QSize(896, 672)   60.0144
	 "106"    ""   QSize(1024, 576)   59.9534
	 "107"    ""   QSize(1024, 576)   59.9593
	 "108"    ""   QSize(1024, 576)   59.8992
	 "109"    ""   QSize(1024, 576)   59.8195
	 "110"    ""   QSize(960, 600)   59.9327
	 "111"    ""   QSize(960, 600)   59.9988
	 "112"    ""   QSize(960, 540)   59.9628
	 "113"    ""   QSize(960, 540)   59.9879
	 "114"    ""   QSize(960, 540)   59.629
	 "115"    ""   QSize(960, 540)   59.8182
	 "116"    ""   QSize(800, 600)   60
	 "117"    ""   QSize(800, 600)   60.3165
	 "118"    ""   QSize(800, 600)   56.25
	 "119"    ""   QSize(840, 525)   60.0094
	 "120"    ""   QSize(840, 525)   59.8833
	 "121"    ""   QSize(864, 486)   59.9153
	 "122"    ""   QSize(864, 486)   59.5703
	 "123"    ""   QSize(700, 525)   59.9756
	 "124"    ""   QSize(800, 450)   59.946
	 "125"    ""   QSize(800, 450)   59.8248
	 "126"    ""   QSize(640, 512)   60.0197
	 "127"    ""   QSize(700, 450)   59.9641
	 "128"    ""   QSize(700, 450)   59.8798
	 "129"    ""   QSize(640, 480)   60
	 "130"    ""   QSize(640, 480)   59.9405
	 "131"    ""   QSize(720, 405)   59.5062
	 "132"    ""   QSize(720, 405)   58.9879
	 "133"    ""   QSize(684, 384)   59.882
	 "134"    ""   QSize(684, 384)   59.8532
	 "135"    ""   QSize(640, 400)   59.8824
	 "136"    ""   QSize(640, 400)   59.9824
	 "137"    ""   QSize(640, 360)   59.8551
	 "138"    ""   QSize(640, 360)   59.8255
	 "139"    ""   QSize(640, 360)   59.8404
	 "140"    ""   QSize(640, 360)   59.3249
	 "141"    ""   QSize(512, 384)   60.0038
	 "142"    ""   QSize(512, 288)   59.9994
	 "143"    ""   QSize(512, 288)   59.9206
	 "144"    ""   QSize(480, 270)   59.629
	 "145"    ""   QSize(480, 270)   59.8182
	 "146"    ""   QSize(400, 300)   60.3165
	 "147"    ""   QSize(400, 300)   56.3401
	 "148"    ""   QSize(432, 243)   59.9153
	 "149"    ""   QSize(432, 243)   59.5703
	 "150"    ""   QSize(320, 240)   60.0525
	 "151"    ""   QSize(360, 202)   59.5062
	 "152"    ""   QSize(360, 202)   59.129
	 "153"    ""   QSize(320, 180)   59.8404
	 "154"    ""   QSize(320, 180)   59.3249
	 "73"    ""   QSize(1920, 1080)   60.0028
	 "74"    ""   QSize(1920, 1080)   59.9685
	 "75"    ""   QSize(1920, 1080)   59.9628
	 "76"    ""   QSize(1920, 1080)   59.9339
	 "77"    ""   QSize(1920, 1080)   48.004
	 "78"    ""   QSize(1680, 1050)   59.9543
	 "79"    ""   QSize(1680, 1050)   59.8833
	 "80"    ""   QSize(1400, 1050)   59.9756
	 "81"    ""   QSize(1600, 900)   59.9883
	 "82"    ""   QSize(1600, 900)   59.9416
	 "83"    ""   QSize(1600, 900)   59.946
	 "84"    ""   QSize(1600, 900)   59.8248
	 "85"    ""   QSize(1280, 1024)   60.0197
	 "86"    ""   QSize(1400, 900)   59.9641
	 "87"    ""   QSize(1400, 900)   59.8798
	 "88"    ""   QSize(1280, 960)   60
	 "89"    ""   QSize(1440, 810)   59.996
	 "90"    ""   QSize(1440, 810)   59.9747
	 "91"    ""   QSize(1368, 768)   59.882
	 "92"    ""   QSize(1368, 768)   59.8532
	 "93"    ""   QSize(1280, 800)   59.9866
	 "94"    ""   QSize(1280, 800)   59.9716
	 "95"    ""   QSize(1280, 800)   59.8103
	 "96"    ""   QSize(1280, 800)   59.9095
	 "97"    ""   QSize(1280, 720)   60.0008
	 "98"    ""   QSize(1280, 720)   59.9911
	 "99"    ""   QSize(1280, 720)   59.8551
EDID Info: 
	Device ID:  "xrandr-BOE"
	Name:  ""
	Vendor:  "BOE"
	Serial:  ""
	EISA ID:  "NV156FHM-N65"
	Hash:  "a6f7bc10e439973953c6900d3e4d64c6"
	Width:  34
	Height:  19
	Gamma:  2.2
	Red:  QQuaternion(scalar:1, vector:(0.681641, 0.3125, 0))
	Green:  QQuaternion(scalar:1, vector:(0.279297, 0.667969, 0))
	Blue:  QQuaternion(scalar:1, vector:(0.15332, 0.0595703, 0))
	White:  QQuaternion(scalar:1, vector:(0.313477, 0.329102, 0))

-----------------------------------------------------

Id:  66
Name:  "DP-1"
Type:  "DisplayPort"
Connected:  true
Enabled:  true
Priority:  2
Rotation:  KScreen::Output::Right
Pos:  QPoint(0,0)
MMSize:  QSize(531, 299)
FollowPreferredMode:  false
Size:  QSize(1920, 1080)
Scale:  1
Clones:  None
Mode:  "155"
Preferred Mode:  "155"
Preferred modes:  ("155")
Modes: 
	 "102"    ""   QSize(1024, 768)   60.0038
	 "117"    ""   QSize(800, 600)   60.3165
	 "118"    ""   QSize(800, 600)   56.25
	 "130"    ""   QSize(640, 480)   59.9405
	 "155"    ""   QSize(1920, 1080)   60
	 "156"    ""   QSize(1920, 1080)   50
	 "157"    ""   QSize(1920, 1080)   59.9402
	 "158"    ""   QSize(1920, 1080)   59.9879
	 "159"    ""   QSize(1920, 1080)   60
	 "160"    ""   QSize(1920, 1080)   50
	 "161"    ""   QSize(1920, 1080)   59.9402
	 "162"    ""   QSize(1600, 1200)   60
	 "163"    ""   QSize(1280, 1024)   75.0247
	 "164"    ""   QSize(1440, 900)   59.9015
	 "165"    ""   QSize(1366, 768)   59.7895
	 "166"    ""   QSize(1152, 864)   75
	 "167"    ""   QSize(1280, 720)   60
	 "168"    ""   QSize(1280, 720)   50
	 "169"    ""   QSize(1280, 720)   59.9402
	 "170"    ""   QSize(1024, 768)   75.0286
	 "171"    ""   QSize(1024, 768)   70.0694
	 "172"    ""   QSize(832, 624)   74.5513
	 "173"    ""   QSize(800, 600)   72.1876
	 "174"    ""   QSize(800, 600)   75
	 "175"    ""   QSize(720, 576)   50
	 "176"    ""   QSize(720, 480)   60
	 "177"    ""   QSize(720, 480)   59.9401
	 "178"    ""   QSize(640, 480)   75
	 "179"    ""   QSize(640, 480)   72.8088
	 "180"    ""   QSize(640, 480)   66.6667
	 "181"    ""   QSize(640, 480)   60
	 "182"    ""   QSize(720, 400)   70.0817
	 "79"    ""   QSize(1680, 1050)   59.8833
	 "85"    ""   QSize(1280, 1024)   60.0197
	 "88"    ""   QSize(1280, 960)   60
EDID Info: 
	Device ID:  "xrandr-Ancor Communications Inc-VE248-B5LMQS053305"
	Name:  "VE248"
	Vendor:  "Ancor Communications Inc"
	Serial:  "B5LMQS053305"
	EISA ID:  ""
	Hash:  "e0f861e9b254ee608f19b567065a7427"
	Width:  53
	Height:  30
	Gamma:  2.2
	Red:  QQuaternion(scalar:1, vector:(0.630859, 0.347656, 0))
	Green:  QQuaternion(scalar:1, vector:(0.333984, 0.621094, 0))
	Blue:  QQuaternion(scalar:1, vector:(0.157227, 0.0507813, 0))
	White:  QQuaternion(scalar:1, vector:(0.313477, 0.329102, 0))

-----------------------------------------------------

Id:  67
Name:  "DP-2"
Type:  "DisplayPort"
Connected:  false

-----------------------------------------------------

Id:  68
Name:  "DP-3"
Type:  "DisplayPort"
Connected:  false

-----------------------------------------------------

Id:  69
Name:  "DP-3-1"
Type:  "DisplayPort"
Connected:  false

-----------------------------------------------------

Id:  70
Name:  "DP-3-2"
Type:  "DisplayPort"
Connected:  true
Enabled:  true
Priority:  1
Rotation:  KScreen::Output::None
Pos:  QPoint(1080,420)
MMSize:  QSize(530, 290)
FollowPreferredMode:  false
Size:  QSize(1920, 1080)
Scale:  1
Clones:  None
Mode:  "155"
Preferred Mode:  "155"
Preferred modes:  ("155")
Modes: 
	 "102"    ""   QSize(1024, 768)   60.0038
	 "117"    ""   QSize(800, 600)   60.3165
	 "118"    ""   QSize(800, 600)   56.25
	 "130"    ""   QSize(640, 480)   59.9405
	 "155"    ""   QSize(1920, 1080)   60
	 "156"    ""   QSize(1920, 1080)   50
	 "157"    ""   QSize(1920, 1080)   59.9402
	 "163"    ""   QSize(1280, 1024)   75.0247
	 "167"    ""   QSize(1280, 720)   60
	 "168"    ""   QSize(1280, 720)   50
	 "169"    ""   QSize(1280, 720)   59.9402
	 "170"    ""   QSize(1024, 768)   75.0286
	 "171"    ""   QSize(1024, 768)   70.0694
	 "172"    ""   QSize(832, 624)   74.5513
	 "173"    ""   QSize(800, 600)   72.1876
	 "174"    ""   QSize(800, 600)   75
	 "175"    ""   QSize(720, 576)   50
	 "176"    ""   QSize(720, 480)   60
	 "177"    ""   QSize(720, 480)   59.9401
	 "178"    ""   QSize(640, 480)   75
	 "179"    ""   QSize(640, 480)   72.8088
	 "181"    ""   QSize(640, 480)   60
	 "182"    ""   QSize(720, 400)   70.0817
	 "183"    ""   QSize(1920, 1080)   74.9725
	 "184"    ""   QSize(1600, 900)   60
	 "185"    ""   QSize(1366, 768)   59.7895
	 "79"    ""   QSize(1680, 1050)   59.8833
	 "85"    ""   QSize(1280, 1024)   60.0197
	 "88"    ""   QSize(1280, 960)   60
	 "96"    ""   QSize(1280, 800)   59.9095
EDID Info: 
	Device ID:  "xrandr-Sceptre Tech Inc-Sceptre F24-1"
	Name:  "Sceptre F24"
	Vendor:  "Sceptre Tech Inc"
	Serial:  "1"
	EISA ID:  ""
	Hash:  "2fcc86113b1b517f52fbdd385e1f9f13"
	Width:  53
	Height:  29
	Gamma:  2.2
	Red:  QQuaternion(scalar:1, vector:(0.688477, 0.304688, 0))
	Green:  QQuaternion(scalar:1, vector:(0.275391, 0.652344, 0))
	Blue:  QQuaternion(scalar:1, vector:(0.145508, 0.0751953, 0))
	White:  QQuaternion(scalar:1, vector:(0.313477, 0.329102, 0))

-----------------------------------------------------

Id:  71
Name:  "DP-3-3"
Type:  "DisplayPort"
Connected:  true
Enabled:  true
Priority:  3
Rotation:  KScreen::Output::Left
Pos:  QPoint(3000,0)
MMSize:  QSize(527, 296)
FollowPreferredMode:  false
Size:  QSize(1920, 1080)
Scale:  1
Clones:  None
Mode:  "155"
Preferred Mode:  "155"
Preferred modes:  ("155")
Modes: 
	 "102"    ""   QSize(1024, 768)   60.0038
	 "117"    ""   QSize(800, 600)   60.3165
	 "130"    ""   QSize(640, 480)   59.9405
	 "155"    ""   QSize(1920, 1080)   60
	 "156"    ""   QSize(1920, 1080)   50
	 "157"    ""   QSize(1920, 1080)   59.9402
	 "164"    ""   QSize(1440, 900)   59.9015
	 "167"    ""   QSize(1280, 720)   60
	 "168"    ""   QSize(1280, 720)   50
	 "169"    ""   QSize(1280, 720)   59.9402
	 "175"    ""   QSize(720, 576)   50
	 "176"    ""   QSize(720, 480)   60
	 "177"    ""   QSize(720, 480)   59.9401
	 "181"    ""   QSize(640, 480)   60
	 "182"    ""   QSize(720, 400)   70.0817
	 "184"    ""   QSize(1600, 900)   60
	 "79"    ""   QSize(1680, 1050)   59.8833
	 "85"    ""   QSize(1280, 1024)   60.0197
	 "96"    ""   QSize(1280, 800)   59.9095
EDID Info: 
	Device ID:  "xrandr-HP Inc.-HP 24w-CNC8090MSP"
	Name:  "HP 24w"
	Vendor:  "HP Inc."
	Serial:  "CNC8090MSP"
	EISA ID:  ""
	Hash:  "3a0c2807b8d4b752d0e37cb568b12bd2"
	Width:  53
	Height:  30
	Gamma:  2.2
	Red:  QQuaternion(scalar:1, vector:(0.638672, 0.355469, 0))
	Green:  QQuaternion(scalar:1, vector:(0.308594, 0.637695, 0))
	Blue:  QQuaternion(scalar:1, vector:(0.152344, 0.0693359, 0))
	White:  QQuaternion(scalar:1, vector:(0.313477, 0.329102, 0))
Comment 7 Jonas Arndt 2023-02-08 13:26:10 UTC
All the commands were run when the wrong screen (the left one) was primary.  Currently I have an xrandr script I use to set them right:

xrandr --output eDP-1 --off --output DP-1 --mode 1920x1080 --pos 0x0 --rotate right --output DP-2 --off --output DP-3 --off --output DP-3-1 --off --output DP-3-2 --primary --mode 1920x1080 --pos 1080x420 --rotate normal --output DP-3-3 --mode 1920x1080 --pos 3000x0 --rotate left
Comment 8 David Edmundson 2023-02-08 17:06:20 UTC
>  Currently I have an xrandr script I use to set them right:

Currently as in, you're using this as a workaround for the Kscreen bug, or you always used to have an xrandr on startup?
Comment 9 Jonas Arndt 2023-02-08 17:54:26 UTC
(In reply to David Edmundson from comment #8)
> >  Currently I have an xrandr script I use to set them right:
> 
> Currently as in, you're using this as a workaround for the Kscreen bug, or
> you always used to have an xrandr on startup?

No I just use xrandr as a work-around for this problem. I suspect my upgrade systemsettings:amd64 (4:5.26.5-1, 4:5.26.90-1) on February 2nd caused this issue
Comment 10 Tomas 2023-02-11 08:51:56 UTC
The same bug affects me. X11. I have 3 monitors and one of them is portrait monitor.
kscreen-doctor --outputs

Output: 83 DisplayPort-0 enabled connected priority 2 DisplayPort Modes: 100:1280x720@50 101:1280x720@60 102:1024x768@75 103:1024x768@60 104:800x600@75 105:800x600@60 106:720x576@50 107:720x480@60 108:720x480@60 109:640x480@75 110:640x480@60 111:640x480@60 112:720x400@70 88:1920x1080@60*! 89:1920x1080@50 90:1920x1080@60 91:1600x1200@60 92:1680x1050@60 93:1600x900@60 94:1280x1024@75 95:1280x1024@60 96:1440x900@60 97:1280x800@60 98:1152x864@75 99:1280x720@60 Geometry: 4480,0 1080x1920 Scale: 1 Rotation: 8 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 84 DisplayPort-1 enabled connected priority 3 DisplayPort Modes: 101:1280x720@60 102:1024x768@75 103:1024x768@60 104:800x600@75 105:800x600@60 109:640x480@75 110:640x480@60 111:640x480@60 112:720x400@70 113:1680x1050@60 114:1440x900@60 115:1280x800@60 116:1024x768@70 117:832x624@75 118:800x600@72 119:800x600@56 120:640x480@73 121:640x480@67 88:1920x1080@60*! 90:1920x1080@60 93:1600x900@60 94:1280x1024@75 95:1280x1024@60 98:1152x864@75 99:1280x720@60 Geometry: 0,528 1920x1080 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 85 DisplayPort-2 disabled disconnected priority 0 DisplayPort Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 86 HDMI-A-0 enabled connected priority 1 HDMI Modes: 100:1280x720@50 101:1280x720@60 102:1024x768@75 103:1024x768@60 104:800x600@75 105:800x600@60 106:720x576@50 107:720x480@60 108:720x480@60 109:640x480@75 110:640x480@60 111:640x480@60 112:720x400@70 122:2560x1440@60*! 123:1920x1200@60 124:2048x1080@60 125:2048x1080@24 126:1680x1050@60 127:1440x900@60 128:1280x800@60 88:1920x1080@60 89:1920x1080@50 90:1920x1080@60 91:1600x1200@60 94:1280x1024@75 95:1280x1024@60 98:1152x864@75 99:1280x720@60 Geometry: 1920,348 2560x1440 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown
Comment 11 Matt Jolly 2023-02-15 04:05:59 UTC
I am seeing a similar (or the same) issue on Plasma 5.27 (Wayland).

When I switch back across to this workstation with my KVM the screen priorities are disregarded and my leftmost screen is always selected as the highest priority.
Comment 12 Matt Jolly 2023-02-15 05:30:24 UTC
Notes: No EDID emulation on the KVM

Configuration as manually corrected below, when I switch the KVM back to KDE *most* of the time (but not always) DP-1 and DP-2 switch priorities.

I did not notice this with earlier Plasma versions; however without EDID emulation rotation settings and orientation were a bit flaky. That seems to have been resolved by the latest update - orientation and layout has remained consistent.

```
kscreen-doctor -o; kscreen-console
Output: 1 eDP-1 enabled connected priority 3 Panel Modes: 0:1920x1080@144*! 1:1920x1080@60 2:1280x1024@60 3:1024x768@60 4:1280x800@60 5:1920x1080@60 6:1600x900@60 7:1368x768@60 8:1280x720@60 Geometry: 4000,1480 1920x1080 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 2 DP-1 enabled connected priority 2 DisplayPort Modes: 0:2560x1440@60! 1:2560x1440@144* 2:2560x1440@120 3:1920x1080@120 4:1920x1080@100 5:1920x1080@60 6:1920x1080@60 7:1920x1080@50 8:1920x1080@30 9:1920x1080@25 10:1920x1080@24 11:1680x1050@60 12:1400x1050@60 13:1280x1024@75 14:1280x1024@60 15:1440x900@60 16:1280x960@60 17:1280x720@60 18:1280x720@60 19:1280x720@50 20:1024x768@75 21:1024x768@70 22:1024x768@60 23:800x600@75 24:800x600@72 25:800x600@60 26:800x600@56 27:720x576@50 28:720x480@60 29:640x480@75 30:640x480@73 31:640x480@60 32:640x480@60 33:1600x1200@60 34:1280x1024@60 35:1024x768@60 36:1920x1200@60 37:1280x800@60 38:2560x1440@60 39:1920x1080@60 40:1600x900@60 41:1368x768@60 42:1280x720@60 Geometry: 0,0 1440x2560 Scale: 1 Rotation: 2 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 3 DP-2 enabled connected priority 1 DisplayPort Modes: 0:2560x1440@60! 1:2560x1440@144* 2:2560x1440@120 3:1920x1080@120 4:1920x1080@100 5:1920x1080@60 6:1920x1080@60 7:1920x1080@50 8:1920x1080@30 9:1920x1080@25 10:1920x1080@24 11:1680x1050@60 12:1400x1050@60 13:1280x1024@75 14:1280x1024@60 15:1440x900@60 16:1280x960@60 17:1280x720@60 18:1280x720@60 19:1280x720@50 20:1024x768@75 21:1024x768@70 22:1024x768@60 23:800x600@75 24:800x600@72 25:800x600@60 26:800x600@56 27:720x576@50 28:720x480@60 29:640x480@75 30:640x480@73 31:640x480@60 32:640x480@60 33:1600x1200@60 34:1280x1024@60 35:1024x768@60 36:1920x1200@60 37:1280x800@60 38:2560x1440@60 39:1920x1080@60 40:1600x900@60 41:1368x768@60 42:1280x720@60 Geometry: 1440,557 2560x1440 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown
START: Requesting Config
Received config. Took 12 milliseconds
Screen:
        maxSize: QSize(64000, 64000)
        minSize: QSize(0, 0)
        currentSize: QSize(5920, 2560)

-----------------------------------------------------

Id:  1
Name:  "eDP-1"
Type:  "Panel (Laptop)"
Connected:  true
Enabled:  true
Priority:  3
Rotation:  KScreen::Output::None
Pos:  QPoint(4000,1480)
MMSize:  QSize(340, 190)
FollowPreferredMode:  false
Size:  QSize(1920, 1080)
Scale:  1
Clones:  None
Mode:  "0"
Preferred Mode:  "0"
Preferred modes:  ("0")
Modes: 
         "0"    "1920x1080@144"   QSize(1920, 1080)   143.998
         "1"    "1920x1080@60"   QSize(1920, 1080)   60.003
         "2"    "1280x1024@60"   QSize(1280, 1024)   59.895
         "3"    "1024x768@60"   QSize(1024, 768)   59.92
         "4"    "1280x800@60"   QSize(1280, 800)   59.81
         "5"    "1920x1080@60"   QSize(1920, 1080)   59.963
         "6"    "1600x900@60"   QSize(1600, 900)   59.946
         "7"    "1368x768@60"   QSize(1368, 768)   59.882
         "8"    "1280x720@60"   QSize(1280, 720)   59.855
EDID Info: 
        Device ID:  "xrandr-LG Display"
        Name:  ""
        Vendor:  "LG Display"
        Serial:  ""
        EISA ID:  "LP156WFG-SPB3"
        Hash:  "12cffd318d795a1833351da979b84505"
        Width:  34
        Height:  19
        Gamma:  2.2
        Red:  QQuaternion(scalar:1, vector:(0.639648, 0.328125, 0))
        Green:  QQuaternion(scalar:1, vector:(0.304688, 0.605469, 0))
        Blue:  QQuaternion(scalar:1, vector:(0.150391, 0.0546875, 0))
        White:  QQuaternion(scalar:1, vector:(0.313477, 0.329102, 0))

-----------------------------------------------------

Id:  2
Name:  "DP-1"
Type:  "DisplayPort"
Connected:  true
Enabled:  true
Priority:  2
Rotation:  KScreen::Output::Left
Pos:  QPoint(0,0)
MMSize:  QSize(600, 340)
FollowPreferredMode:  false
Size:  QSize(1440, 2560)
Scale:  1
Clones:  None
Mode:  "1"
Preferred Mode:  "0"
Preferred modes:  ("0")
Modes: 
         "0"    "2560x1440@60"   QSize(2560, 1440)   59.951
         "1"    "2560x1440@144"   QSize(2560, 1440)   143.912
         "10"    "1920x1080@24"   QSize(1920, 1080)   23.977
         "11"    "1680x1050@60"   QSize(1680, 1050)   59.954
         "12"    "1400x1050@60"   QSize(1400, 1050)   59.978
         "13"    "1280x1024@75"   QSize(1280, 1024)   75.025
         "14"    "1280x1024@60"   QSize(1280, 1024)   60.02
         "15"    "1440x900@60"   QSize(1440, 900)   59.887
         "16"    "1280x960@60"   QSize(1280, 960)   60
         "17"    "1280x720@60"   QSize(1280, 720)   60
         "18"    "1280x720@60"   QSize(1280, 720)   59.943
         "19"    "1280x720@50"   QSize(1280, 720)   50
         "2"    "2560x1440@120"   QSize(2560, 1440)   120.01
         "20"    "1024x768@75"   QSize(1024, 768)   75.029
         "21"    "1024x768@70"   QSize(1024, 768)   70.069
         "22"    "1024x768@60"   QSize(1024, 768)   60.004
         "23"    "800x600@75"   QSize(800, 600)   75
         "24"    "800x600@72"   QSize(800, 600)   72.188
         "25"    "800x600@60"   QSize(800, 600)   60.317
         "26"    "800x600@56"   QSize(800, 600)   56.25
         "27"    "720x576@50"   QSize(720, 576)   50
         "28"    "720x480@60"   QSize(720, 480)   59.94
         "29"    "640x480@75"   QSize(640, 480)   75
         "3"    "1920x1080@120"   QSize(1920, 1080)   119.879
         "30"    "640x480@73"   QSize(640, 480)   72.809
         "31"    "640x480@60"   QSize(640, 480)   59.94
         "32"    "640x480@60"   QSize(640, 480)   59.929
         "33"    "1600x1200@60"   QSize(1600, 1200)   59.869
         "34"    "1280x1024@60"   QSize(1280, 1024)   59.895
         "35"    "1024x768@60"   QSize(1024, 768)   59.92
         "36"    "1920x1200@60"   QSize(1920, 1200)   59.885
         "37"    "1280x800@60"   QSize(1280, 800)   59.81
         "38"    "2560x1440@60"   QSize(2560, 1440)   59.961
         "39"    "1920x1080@60"   QSize(1920, 1080)   59.963
         "4"    "1920x1080@100"   QSize(1920, 1080)   99.898
         "40"    "1600x900@60"   QSize(1600, 900)   59.946
         "41"    "1368x768@60"   QSize(1368, 768)   59.882
         "42"    "1280x720@60"   QSize(1280, 720)   59.855
         "5"    "1920x1080@60"   QSize(1920, 1080)   60
         "6"    "1920x1080@60"   QSize(1920, 1080)   59.939
         "7"    "1920x1080@50"   QSize(1920, 1080)   50
         "8"    "1920x1080@30"   QSize(1920, 1080)   29.972
         "9"    "1920x1080@25"   QSize(1920, 1080)   25
EDID Info: 
        Device ID:  "xrandr-ViewSonic Corporation-XG2705-2K-WBJ204200094"
        Name:  "XG2705-2K"
        Vendor:  "ViewSonic Corporation"
        Serial:  "WBJ204200094"
        EISA ID:  ""
        Hash:  "c70c826c485512185d16f1180d3f85bf"
        Width:  60
        Height:  34
        Gamma:  2.2
        Red:  QQuaternion(scalar:1, vector:(0.677734, 0.308594, 0))
        Green:  QQuaternion(scalar:1, vector:(0.265625, 0.663086, 0))
        Blue:  QQuaternion(scalar:1, vector:(0.148438, 0.0527344, 0))
        White:  QQuaternion(scalar:1, vector:(0.313477, 0.329102, 0))

-----------------------------------------------------

Id:  3
Name:  "DP-2"
Type:  "DisplayPort"
Connected:  true
Enabled:  true
Priority:  1
Rotation:  KScreen::Output::None
Pos:  QPoint(1440,557)
MMSize:  QSize(600, 340)
FollowPreferredMode:  false
Size:  QSize(2560, 1440)
Scale:  1
Clones:  None
Mode:  "1"
Preferred Mode:  "0"
Preferred modes:  ("0")
Modes: 
         "0"    "2560x1440@60"   QSize(2560, 1440)   59.951
         "1"    "2560x1440@144"   QSize(2560, 1440)   143.912
         "10"    "1920x1080@24"   QSize(1920, 1080)   23.977
         "11"    "1680x1050@60"   QSize(1680, 1050)   59.954
         "12"    "1400x1050@60"   QSize(1400, 1050)   59.978
         "13"    "1280x1024@75"   QSize(1280, 1024)   75.025
         "14"    "1280x1024@60"   QSize(1280, 1024)   60.02
         "15"    "1440x900@60"   QSize(1440, 900)   59.887
         "16"    "1280x960@60"   QSize(1280, 960)   60
         "17"    "1280x720@60"   QSize(1280, 720)   60
         "18"    "1280x720@60"   QSize(1280, 720)   59.943
         "19"    "1280x720@50"   QSize(1280, 720)   50
         "2"    "2560x1440@120"   QSize(2560, 1440)   120.01
         "20"    "1024x768@75"   QSize(1024, 768)   75.029
         "21"    "1024x768@70"   QSize(1024, 768)   70.069
         "22"    "1024x768@60"   QSize(1024, 768)   60.004
         "23"    "800x600@75"   QSize(800, 600)   75
         "24"    "800x600@72"   QSize(800, 600)   72.188
         "25"    "800x600@60"   QSize(800, 600)   60.317
         "26"    "800x600@56"   QSize(800, 600)   56.25
         "27"    "720x576@50"   QSize(720, 576)   50
         "28"    "720x480@60"   QSize(720, 480)   59.94
         "29"    "640x480@75"   QSize(640, 480)   75
         "3"    "1920x1080@120"   QSize(1920, 1080)   119.879
         "30"    "640x480@73"   QSize(640, 480)   72.809
         "31"    "640x480@60"   QSize(640, 480)   59.94
         "32"    "640x480@60"   QSize(640, 480)   59.929
         "33"    "1600x1200@60"   QSize(1600, 1200)   59.869
         "34"    "1280x1024@60"   QSize(1280, 1024)   59.895
         "35"    "1024x768@60"   QSize(1024, 768)   59.92
         "36"    "1920x1200@60"   QSize(1920, 1200)   59.885
         "37"    "1280x800@60"   QSize(1280, 800)   59.81
         "38"    "2560x1440@60"   QSize(2560, 1440)   59.961
         "39"    "1920x1080@60"   QSize(1920, 1080)   59.963
         "4"    "1920x1080@100"   QSize(1920, 1080)   99.898
         "40"    "1600x900@60"   QSize(1600, 900)   59.946
         "41"    "1368x768@60"   QSize(1368, 768)   59.882
         "42"    "1280x720@60"   QSize(1280, 720)   59.855
         "5"    "1920x1080@60"   QSize(1920, 1080)   60
         "6"    "1920x1080@60"   QSize(1920, 1080)   59.939
         "7"    "1920x1080@50"   QSize(1920, 1080)   50
         "8"    "1920x1080@30"   QSize(1920, 1080)   29.972
         "9"    "1920x1080@25"   QSize(1920, 1080)   25
EDID Info: 
        Device ID:  "xrandr-ViewSonic Corporation-XG2705-2K-WBJ204200115"
        Name:  "XG2705-2K"
        Vendor:  "ViewSonic Corporation"
        Serial:  "WBJ204200115"
        EISA ID:  ""
        Hash:  "490d8decb66b70a157750b519045551f"
        Width:  60
        Height:  34
        Gamma:  2.2
        Red:  QQuaternion(scalar:1, vector:(0.677734, 0.308594, 0))
        Green:  QQuaternion(scalar:1, vector:(0.265625, 0.663086, 0))
        Blue:  QQuaternion(scalar:1, vector:(0.148438, 0.0527344, 0))
        White:  QQuaternion(scalar:1, vector:(0.313477, 0.329102, 0))
```
Comment 13 Félim Whiteley 2023-02-18 10:25:43 UTC
Created attachment 156420 [details]
Screen layout in settings
Comment 14 Félim Whiteley 2023-02-18 10:28:37 UTC
Ah damn adding attachment wiped my message... ok so same for me, Steam is the major issue. All games load on the leftmost screen in portrait, mangles the resolution, moving the game with shift+win+right_arrow moves it over but the game usually goes garbled or uses half one screen with the pointer out of sync with where it is in the picture.

Output: 84 DisplayPort-0 disabled disconnected priority 0 DisplayPort Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 85 DisplayPort-1 disabled disconnected priority 0 DisplayPort Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 86 HDMI-A-0 enabled connected priority 3 HDMI Modes: 90:1920x1080@60*! 91:1920x1080@50 92:1920x1080@60 93:1680x1050@60 94:1600x900@60 95:1280x1024@60 96:1440x900@60 97:1280x960@60 98:1280x800@60 99:1280x720@60 100:1280x720@50 101:1280x720@60 102:1024x768@60 103:800x600@60 104:720x576@50 105:720x480@60 106:720x480@60 107:640x480@60 108:640x480@60 Geometry: 0,0 1080x1920 Scale: 1 Rotation: 8 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 87 HDMI-A-1 enabled connected priority 1 HDMI Modes: 90:1920x1080@60*! 93:1680x1050@60 94:1600x900@60 95:1280x1024@60 96:1440x900@60 97:1280x960@60 98:1280x800@60 99:1280x720@60 102:1024x768@60 103:800x600@60 108:640x480@60 109:1280x1024@75 110:1152x864@75 111:1024x768@75 112:832x624@75 113:800x600@75 114:640x480@75 115:720x400@70 Geometry: 1080,0 1920x1080 Scale: 1Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown
Output: 88 DVI-D-0 enabled connected priority 2 DVI Modes: 90:1920x1080@60*! 93:1680x1050@60 94:1600x900@60 95:1280x1024@60 96:1440x900@60 97:1280x960@60 98:1280x800@60 99:1280x720@60 102:1024x768@60 103:800x600@60 108:640x480@60 109:1280x1024@75 110:1152x864@75 111:1024x768@75 112:832x624@75 113:800x600@75 114:640x480@75 115:720x400@70 Geometry: 3000,0 1920x1080 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown

START: Requesting Config
Received config. Took 18 milliseconds
Screen:
maxSize: QSize(16384, 16384)
minSize: QSize(320, 200)
currentSize: QSize(4920, 1920)

-----------------------------------------------------

Id:  84
Name:  "DisplayPort-0"
Type:  "DisplayPort"
Connected:  false

-----------------------------------------------------

Id:  85
Name:  "DisplayPort-1"
Type:  "DisplayPort"
Connected:  false

-----------------------------------------------------

Id:  86
Name:  "HDMI-A-0"
Type:  "HDMI"
Connected:  true
Enabled:  true
Priority:  3
Rotation:  KScreen::Output::Right
Pos:  QPoint(0,0)
MMSize:  QSize(477, 268)
FollowPreferredMode:  false
Size:  QSize(1920, 1080)
Scale:  1
Clones:  None
Mode:  "90"
Preferred Mode:  "90"
Preferred modes:  ("90")
Modes:
"100"    ""   QSize(1280, 720)   50
"101"    ""   QSize(1280, 720)   59.9402
"102"    ""   QSize(1024, 768)   60.0038
"103"    ""   QSize(800, 600)   60.3165
"104"    ""   QSize(720, 576)   50
"105"    ""   QSize(720, 480)   60
"106"    ""   QSize(720, 480)   59.9401
"107"    ""   QSize(640, 480)   60
"108"    ""   QSize(640, 480)   59.9405
"90"    ""   QSize(1920, 1080)   60
"91"    ""   QSize(1920, 1080)   50
"92"    ""   QSize(1920, 1080)   59.9402
"93"    ""   QSize(1680, 1050)   59.8833
"94"    ""   QSize(1600, 900)   60
"95"    ""   QSize(1280, 1024)   60.0197
"96"    ""   QSize(1440, 900)   60
"97"    ""   QSize(1280, 960)   60
"98"    ""   QSize(1280, 800)   59.9095
"99"    ""   QSize(1280, 720)   60
EDID Info:
Device ID:  "xrandr-BenQ GW2250H-25C01352SL0"
Name:  "BenQ GW2250H"
Vendor:  ""
Serial:  "25C01352SL0"
EISA ID:  ""
Hash:  "d287c0f02a1aeae356ee91d469bb2f24"
Width:  48
Height:  27
Gamma:  2.2
Red:  QQuaternion(scalar:1, vector:(0.638672, 0.347656, 0))
Green:  QQuaternion(scalar:1, vector:(0.333984, 0.623047, 0))
Blue:  QQuaternion(scalar:1, vector:(0.155273, 0.0478516, 0))
White:  QQuaternion(scalar:1, vector:(0.313477, 0.329102, 0))

-----------------------------------------------------

Id:  87
Name:  "HDMI-A-1"
Type:  "HDMI"
Connected:  true
Enabled:  true
Priority:  1
Rotation:  KScreen::Output::None
Pos:  QPoint(1080,0)
MMSize:  QSize(477, 268)
FollowPreferredMode:  false
Size:  QSize(1920, 1080)
Scale:  1
Clones:  None
Mode:  "90"
Preferred Mode:  "90"
Preferred modes:  ("90")
Modes:
"102"    ""   QSize(1024, 768)   60.0038
"103"    ""   QSize(800, 600)   60.3165
"108"    ""   QSize(640, 480)   59.9405
"109"    ""   QSize(1280, 1024)   75.0247
"110"    ""   QSize(1152, 864)   75
"111"    ""   QSize(1024, 768)   75.0286
"112"    ""   QSize(832, 624)   74.5513
"113"    ""   QSize(800, 600)   75
"114"    ""   QSize(640, 480)   75
"115"    ""   QSize(720, 400)   70.0817
"90"    ""   QSize(1920, 1080)   60
"93"    ""   QSize(1680, 1050)   59.8833
"94"    ""   QSize(1600, 900)   60
"95"    ""   QSize(1280, 1024)   60.0197
"96"    ""   QSize(1440, 900)   60
"97"    ""   QSize(1280, 960)   60
"98"    ""   QSize(1280, 800)   59.9095
"99"    ""   QSize(1280, 720)   60
EDID Info:
Device ID:  "xrandr-BenQ V2220-LBA04079SL0"
Name:  "BenQ V2220"
Vendor:  ""
Serial:  "LBA04079SL0"
EISA ID:  ""
Hash:  "f79eba891081b0f8473d46b6ec9c75f9"
Width:  48
Height:  27
Gamma:  2.2
Red:  QQuaternion(scalar:1, vector:(0.636719, 0.347656, 0))
Green:  QQuaternion(scalar:1, vector:(0.333008, 0.605469, 0))
Blue:  QQuaternion(scalar:1, vector:(0.148438, 0.0605469, 0))
White:  QQuaternion(scalar:1, vector:(0.3125, 0.329102, 0))

-----------------------------------------------------

Id:  88
Name:  "DVI-D-0"
Type:  "DVI"
Connected:  true
Enabled:  true
Priority:  2
Rotation:  KScreen::Output::None
Pos:  QPoint(3000,0)
MMSize:  QSize(477, 268)
FollowPreferredMode:  false
Size:  QSize(1920, 1080)
Scale:  1
Clones:  None
Mode:  "90"
Preferred Mode:  "90"
Preferred modes:  ("90")
Modes:
"102"    ""   QSize(1024, 768)   60.0038
"103"    ""   QSize(800, 600)   60.3165
"108"    ""   QSize(640, 480)   59.9405
"109"    ""   QSize(1280, 1024)   75.0247
"110"    ""   QSize(1152, 864)   75
"111"    ""   QSize(1024, 768)   75.0286
"112"    ""   QSize(832, 624)   74.5513
"113"    ""   QSize(800, 600)   75
"114"    ""   QSize(640, 480)   75
"115"    ""   QSize(720, 400)   70.0817
"90"    ""   QSize(1920, 1080)   60
"93"    ""   QSize(1680, 1050)   59.8833
"94"    ""   QSize(1600, 900)   60
"95"    ""   QSize(1280, 1024)   60.0197
"96"    ""   QSize(1440, 900)   60
"97"    ""   QSize(1280, 960)   60
"98"    ""   QSize(1280, 800)   59.9095
"99"    ""   QSize(1280, 720)   60
EDID Info:
Device ID:  "xrandr-BenQ V2220-LBA04083SL0"
Name:  "BenQ V2220"
Vendor:  ""
Serial:  "LBA04083SL0"
EISA ID:  ""
Hash:  "1b956c88a32177db2f82e2fa85156a65"
Width:  48
Height:  27
Gamma:  2.2
Red:  QQuaternion(scalar:1, vector:(0.636719, 0.347656, 0))
Green:  QQuaternion(scalar:1, vector:(0.333008, 0.605469, 0))
Blue:  QQuaternion(scalar:1, vector:(0.148438, 0.0605469, 0))
White:  QQuaternion(scalar:1, vector:(0.3125, 0.329102, 0))
Comment 15 Harald Sitter 2023-04-17 01:02:27 UTC
Is this still a problem? I am having a hard time replicating this on latest 5.27
Comment 16 Félim Whiteley 2023-04-18 12:50:25 UTC
(In reply to Harald Sitter from comment #15)
> Is this still a problem? I am having a hard time replicating this on latest
> 5.27

It certainly is for me on a fully updated Neon. As an example my layout is left screen portrait centre and right landscape, playing in a steam game it will often start on far left, on the games that allow you to set the screen, say "Isonzo", it starts on the right screen but only half of the screen is clickable. Like the mouse pointer clicks the top half of the portrait screen and the left half of the centre screen. Very odd. So it will display right but I can only get to half the stuff. Ironically it's totally playable as most settings are thankfully to the left. But clearly not ideal! :-)

Happy to demo for you if that helps, Rust Desk or the like...
Comment 17 Harald Sitter 2023-04-18 17:37:33 UTC
Can you grab debug output while a game is running incorrectly? And maybe also add the output of xrandr. If I'm reading your earlier output correctly then the center screen is correctly marked primary there.
Comment 18 Harald Sitter 2023-04-21 14:39:47 UTC
Git commit e17c6b5a6a9b5778f9be5b962b1d31878579945a by Harald Sitter.
Committed on 21/04/2023 at 14:37.
Pushed by sitter into branch 'master'.

xrandr: always try to update primary

When screen0 gets disconnected the atom essentially says it is priority
1 but we ignore it on account of being disconnected/disabled (this
happens inside priority()). This caused setPriority to exit early and
not do anything. Upon plugging screen0 back in the atom comes into play
again and it is still saying the screen is priority 1, but really
another screen was/is priority 1. What happens then is that since the
atom says the screen is priority1 == newpriority == noop.

tldr:

- screen0 disconnect: priority=0 == newPrirority=0 -> noop
- screen1: priority=2 != newPriority=1 -> set_primary
- screen0 reconnect: priority=1 == newPriority=1 -> noop
- screen1 is now primary but the entire kscreen system thinks it should
be screen0

to solve this problem simply update the primary regardless of the
property change, at worst this is noop on the xcb side of things, at
best we ensure the primary is in sync

M  +5    -3    backends/xrandr/xrandroutput.cpp

https://invent.kde.org/plasma/libkscreen/commit/e17c6b5a6a9b5778f9be5b962b1d31878579945a
Comment 19 Bug Janitor Service 2023-04-21 14:40:57 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/libkscreen/-/merge_requests/125
Comment 20 Harald Sitter 2023-04-21 14:43:01 UTC
Git commit 49cc50e629d55d258218bbe5e0abb0c6e93951e3 by Harald Sitter.
Committed on 21/04/2023 at 14:40.
Pushed by sitter into branch 'Plasma/5.27'.

xrandr: always try to update primary

When screen0 gets disconnected the atom essentially says it is priority
1 but we ignore it on account of being disconnected/disabled (this
happens inside priority()). This caused setPriority to exit early and
not do anything. Upon plugging screen0 back in the atom comes into play
again and it is still saying the screen is priority 1, but really
another screen was/is priority 1. What happens then is that since the
atom says the screen is priority1 == newpriority == noop.

tldr:

- screen0 disconnect: priority=0 == newPrirority=0 -> noop
- screen1: priority=2 != newPriority=1 -> set_primary
- screen0 reconnect: priority=1 == newPriority=1 -> noop
- screen1 is now primary but the entire kscreen system thinks it should
be screen0

to solve this problem simply update the primary regardless of the
property change, at worst this is noop on the xcb side of things, at
best we ensure the primary is in sync


(cherry picked from commit e17c6b5a6a9b5778f9be5b962b1d31878579945a)

M  +5    -3    backends/xrandr/xrandroutput.cpp

https://invent.kde.org/plasma/libkscreen/commit/49cc50e629d55d258218bbe5e0abb0c6e93951e3
Comment 21 Félim Whiteley 2023-04-21 16:41:22 UTC
Not sure why but Steam just won't generate a debug log for the game, I've tried the

PROTON_LOG=1 %command%

In the Isonzo options but it's of no use... I have made this poorly handheld and shoddy handheld recording of the inability to click past a certain point, like the clicks include the first 1080 pixels of the vertical leftmost monitor and the remain left 840pixels of the centre. I'll include xrandr at the end and will try get a debug log from Steam. Sorry for the delay, one of those weeks.

Screen 0: minimum 320 x 200, current 4920 x 1920, maximum 16384 x 16384
DisplayPort-0 disconnected (normal left inverted right x axis y axis)
DisplayPort-1 disconnected (normal left inverted right x axis y axis)
HDMI-A-0 connected 1080x1920+0+0 right (normal left inverted right x axis y axis) 477mm x 268mm
1920x1080     60.00*+  50.00    59.94
1680x1050     59.88
1600x900      60.00
1280x1024     60.02
1440x900      60.00
1280x960      60.00
1280x800      59.91
1280x720      60.00    50.00    59.94
1024x768      60.00
800x600       60.32
720x576       50.00
720x480       60.00    59.94
640x480       60.00    59.94
HDMI-A-1 connected primary 1920x1080+1080+0 (normal left inverted right x axis y axis) 477mm x 268mm
1920x1080     60.00*+
1680x1050     59.88
1600x900      60.00
1280x1024     75.02    60.02
1440x900      60.00
1280x960      60.00
1280x800      59.91
1152x864      75.00
1280x720      60.00
1024x768      75.03    60.00
832x624       74.55
800x600       75.00    60.32
640x480       75.00    59.94
720x400       70.08
DVI-D-0 connected 1920x1080+3000+0 (normal left inverted right x axis y axis) 477mm x 268mm
1920x1080     60.00*+
1680x1050     59.88
1600x900      60.00
1280x1024     75.02    60.02
1440x900      60.00
1280x960      60.00
1280x800      59.91
1152x864      75.00
1280x720      60.00
1024x768      75.03    60.00
832x624       74.55
800x600       75.00    60.32
640x480       75.00    59.94
720x400       70.08
Comment 22 Félim Whiteley 2023-04-21 16:42:01 UTC
The video I forgot to paste in...

https://youtu.be/M80aJXY5A1c
Comment 23 Nate Graham 2023-04-21 16:47:17 UTC
People who are affected by this issue, please test again with Plasma 5.27.5 once it's released on May 9th, a little over two weeks from now. Thanks!
Comment 24 Félim Whiteley 2023-04-25 17:33:19 UTC
(In reply to Nate Graham from comment #23)
> People who are affected by this issue, please test again with Plasma 5.27.5
> once it's released on May 9th, a little over two weeks from now. Thanks!

No worries I will test as soon as Neon updates. An interesting thing I discovered not quite understanding Steams options. So it turns out Isonzo is Native and in Native mode the weird pointer issue occurs. I was able to run it in Proton 8 forced mode and the GFX are fractionally less performant but the whole screen is clickable and runs as expected! Strange one, what I will do is test in both modes as soon as the update is out. Thanks for all of your work!
Comment 25 Bug Janitor Service 2023-05-10 03:46:02 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 26 Jonas Arndt 2023-05-10 13:10:37 UTC
(In reply to Nate Graham from comment #23)
> People who are affected by this issue, please test again with Plasma 5.27.5
> once it's released on May 9th, a little over two weeks from now. Thanks!

I haven't tested much anything since back when I reported the bug. I am on Debian Bookworm and plasma 5.27.2-1 now. For some reason it all works now. I don't anymore need to have a login script with xrandr. It works on Xorg and Wayland. The middle landscape oriented screen is the default screen now.
Comment 27 Nate Graham 2023-05-10 13:36:44 UTC
> For some reason it all works now.

Yeah, because we fixed it! :D In all seriousness, thanks for testing! I'm happy to hear that things are working properly without the need for manual workaround scripts.