Skip to content

Use ConfigMonitor instead of XRandrOutput to try to enable newly attached display.

Jeremy Whiting requested to merge enableoutputs2 into master

This is failing still to enable a display that gets attached after having 0 displays attached, but I'm not sure why...

journalctl output after adding this patch and booting with no display then attaching

Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xrandr: Output 68 : connected = true , enabled = false
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xcb.helper: RRScreenChangeNotify
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xcb.helper:         Window: 67108869
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xcb.helper:         Root: 306
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xcb.helper:         Rotation:  "Rotate_0"
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xcb.helper:         Size ID: 65535
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xcb.helper:         Size:  1024 768
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xcb.helper:         SizeMM:  271 203
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xcb.helper: RRNotify_OutputChange
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xcb.helper:         Output:  68
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xcb.helper:         CRTC:  0
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xcb.helper:         Mode:  0
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xcb.helper:         Rotation:  "Rotate_0"
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xcb.helper:         Connection:  "Connected"
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xcb.helper:         Subpixel Order:  0
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xrandr: XRandROutput 68 update
m_connected: 0
m_crtc QObject(0x0)
CRTC: 0
MODE: 0
Connection: 0
Primary: false
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xrandr: Output 68 : connected = true , enabled = false
Sep 18 08:54:36 ness kscreen_backend_launcher[1509]: kscreen.xrandr: Emitting configChanged()
Sep 18 08:54:36 ness org_kde_powerdevil[1358]: backendConfigChanged called, newConfig:  KScreen::Config(
KScreen::Output( 68   "VGA1" connected disabled  pos: QPoint(0,0) res: QSize(->
Sep 18 08:54:36 ness org_kde_powerdevil[1358]: backendConfigChanged called, iterating over outputs to watch for config changes
Sep 18 08:54:36 ness org_kde_powerdevil[1358]: Checking output, edid:  0x0  is connected:  true  is enabled:  false
Sep 18 08:54:36 ness org_kde_powerdevil[1358]: Requesting edid
Sep 18 08:54:36 ness org_kde_powerdevil[1358]: Requesting missing EDID for outputs (68)
Sep 18 08:54:36 ness org_kde_powerdevil[1358]: edidReady called
Sep 18 08:54:36 ness org_kde_powerdevil[1358]: edidReady output id:  68
Sep 18 08:54:36 ness org_kde_powerdevil[1358]: config:  KScreen::Config(
KScreen::Output( 68   "VGA1" connected disabled  pos: QPoint(0,0) res: QSize(->
Sep 18 08:54:36 ness org_kde_powerdevil[1358]: Received edid:  ""
Sep 18 08:54:36 ness org_kde_powerdevil[1358]: setting output edid, setting enabled
Sep 18 08:54:36 ness org_kde_powerdevil[1358]: Calling updateConfigs with config:  KScreen::Config(
KScreen::Output( 68   "VGA1" connected enabled  pos: QPoint(0,0) res: QSize(19>
Sep 18 08:54:36 ness org_kde_powerdevil[1358]: Applying config:  KScreen::Config(
KScreen::Output( 68   "VGA1" connected enabled  pos: QPoint(0,0) res: QSize(19>
Sep 18 08:54:37 ness plasmashell[906]: backendConfigChanged called, newConfig:  KScreen::Config(
KScreen::Output( 68   "VGA1" connected disabled  pos: QPoint(0,0) res: QSize(-1, -1) m>
Sep 18 08:54:37 ness plasmashell[906]: backendConfigChanged called, iterating over outputs to watch for config changes
Sep 18 08:54:37 ness plasmashell[906]: Checking output, edid:  0x0  is connected:  true  is enabled:  false
Sep 18 08:54:37 ness plasmashell[906]: Requesting edid
Sep 18 08:54:37 ness plasmashell[906]: Requesting missing EDID for outputs (68)
Sep 18 08:54:37 ness plasmashell[906]: edidReady called
Sep 18 08:54:37 ness plasmashell[906]: edidReady output id:  68
Sep 18 08:54:37 ness plasmashell[906]: config:  KScreen::Config(
KScreen::Output( 68   "VGA1" connected disabled  pos: QPoint(0,0) res: QSize(-1, -1) m>
Sep 18 08:54:37 ness plasmashell[906]: Received edid:  ""
Sep 18 08:54:37 ness plasmashell[906]: setting output edid, setting enabled
Sep 18 08:54:37 ness plasmashell[906]: Calling updateConfigs with config:  KScreen::Config(
KScreen::Output( 68   "VGA1" connected enabled  pos: QPoint(0,0) res: QSize(1920, 1080>
Sep 18 08:54:37 ness plasmashell[906]: Applying config:  KScreen::Config(
KScreen::Output( 68   "VGA1" connected enabled  pos: QPoint(0,0) res: QSize(1920, 1080>
Edited by Jeremy Whiting

Merge request reports