https://bugs.kde.org/show_bug.cgi?id=356864
--- Comment #21 from Martin Gräßlin <mgraess...@kde.org> --- Documenting some debug output from before and after resizing the VM window: /usr/lib/x86_64-linux-gnu/libexec/kf5/kscreen_backend_launcher kscreen.xrandr: Connected output 67 to CRTC 63 !!!! Mode: 725 / QSize(1640, 871) !!!! Mode: 72 / QSize(1920, 1200) !!!! Mode: 73 / QSize(1920, 1080) !!!! Mode: 74 / QSize(1600, 1200) !!!! Mode: 75 / QSize(1680, 1050) !!!! Mode: 76 / QSize(1400, 1050) !!!! Mode: 77 / QSize(1280, 1024) !!!! Mode: 78 / QSize(1440, 900) !!!! Mode: 79 / QSize(1280, 960) !!!! Mode: 80 / QSize(1280, 854) !!!! Mode: 81 / QSize(1280, 800) !!!! Mode: 82 / QSize(1280, 720) !!!! Mode: 83 / QSize(1152, 768) !!!! Mode: 71 / QSize(1024, 768) !!!! Mode: 84 / QSize(800, 600) !!!! Mode: 85 / QSize(848, 480) !!!! Mode: 86 / QSize(720, 480) !!!! Mode: 87 / QSize(640, 480) !!!!!! Randr event listener inited kscreen.xcb.helper: Detected XRandR 1.4 kscreen.xcb.helper: Event Base: 89 kscreen.xcb.helper: Event Error: 147 kscreen.xrandr: XRandR::setConfig kscreen.xrandr: Requested screen size is QSize(1640, 871) kscreen.xrandr: Needed CRTCs: 1 kscreen.xrandr: Actions to perform: kscreen.xrandr: Primary Output: false kscreen.xrandr: Change Screen Size: true kscreen.xrandr: Old: QSize(1744, 953) kscreen.xrandr: Intermediate: QSize(1744, 953) kscreen.xrandr: New: QSize(1640, 871) kscreen.xrandr: Disable outputs: false kscreen.xrandr: Change outputs: true kscreen.xrandr: (67) kscreen.xrandr: Enable outputs: false kscreen.xrandr: RRSetCrtcConfig (change output) kscreen.xrandr: Output: 67 ( "Virtual-0" ) kscreen.xrandr: CRTC: 63 kscreen.xrandr: Pos: QPoint(0,0) kscreen.xrandr: Mode: "725" ( QSize(1640, 871) ) kscreen.xrandr: Rotation: 1 kscreen.xrandr: Result: 0 kscreen.xrandr: XRandROutput 67 update kscreen.xrandr: m_connected: 0 kscreen.xrandr: m_crtc XRandRCrtc(0x813170) kscreen.xrandr: CRTC: 63 kscreen.xrandr: MODE: 725 kscreen.xrandr: Connection: 0 kscreen.xrandr: Primary: true !!!! Mode: 725 / QSize(1640, 871) !!!! Mode: 72 / QSize(1920, 1200) !!!! Mode: 73 / QSize(1920, 1080) !!!! Mode: 74 / QSize(1600, 1200) !!!! Mode: 75 / QSize(1680, 1050) !!!! Mode: 76 / QSize(1400, 1050) !!!! Mode: 77 / QSize(1280, 1024) !!!! Mode: 78 / QSize(1440, 900) !!!! Mode: 79 / QSize(1280, 960) !!!! Mode: 80 / QSize(1280, 854) !!!! Mode: 81 / QSize(1280, 800) !!!! Mode: 82 / QSize(1280, 720) !!!! Mode: 83 / QSize(1152, 768) !!!! Mode: 71 / QSize(1024, 768) !!!! Mode: 84 / QSize(800, 600) !!!! Mode: 85 / QSize(848, 480) !!!! Mode: 86 / QSize(720, 480) !!!! Mode: 87 / QSize(640, 480) kscreen.xrandr: RRSetScreenSize kscreen.xrandr: DPI: 98.3992 kscreen.xrandr: Size: QSize(1640, 871) kscreen.xrandr: SizeMM: QSize(423, 224) kscreen.xrandr: XRandR::setConfig done! kscreen.xcb.helper: RRNotify_CrtcChange kscreen.xcb.helper: CRTC: 63 kscreen.xcb.helper: Mode: 725 kscreen.xcb.helper: Rotation: "Rotate_0" kscreen.xcb.helper: Geometry: 0 0 1640 871 kscreen.xcb.helper: RRScreenChangeNotify kscreen.xcb.helper: Window: 16777220 kscreen.xcb.helper: Root: 630 kscreen.xcb.helper: Rotation: "Rotate_0" kscreen.xcb.helper: Size ID: 65535 kscreen.xcb.helper: Size: 1744 953 kscreen.xcb.helper: SizeMM: 451 246 kscreen.xcb.helper: RRNotify_CrtcChange kscreen.xcb.helper: CRTC: 63 kscreen.xcb.helper: Mode: 725 kscreen.xcb.helper: Rotation: "Rotate_0" kscreen.xcb.helper: Geometry: 0 0 1640 871 kscreen.xcb.helper: RRScreenChangeNotify kscreen.xcb.helper: Window: 16777220 kscreen.xcb.helper: Root: 630 kscreen.xcb.helper: Rotation: "Rotate_0" kscreen.xcb.helper: Size ID: 0 kscreen.xcb.helper: Size: 1640 871 kscreen.xcb.helper: SizeMM: 423 224 kscreen.xrandr: Emitting configChanged() kscreen.xcb.helper: RRotify_OutputChange kscreen.xcb.helper: Output: 67 kscreen.xcb.helper: CRTC: 63 kscreen.xcb.helper: Mode: 725 kscreen.xcb.helper: Rotation: "Rotate_0" kscreen.xcb.helper: Connection: "Connected" kscreen.xcb.helper: Subpixel Order: 0 kscreen.xcb.helper: RRScreenChangeNotify kscreen.xcb.helper: Window: 16777220 kscreen.xcb.helper: Root: 630 kscreen.xcb.helper: Rotation: "Rotate_0" kscreen.xcb.helper: Size ID: 65535 kscreen.xcb.helper: Size: 1640 871 kscreen.xcb.helper: SizeMM: 423 224 kscreen.xcb.helper: RRotify_OutputChange kscreen.xcb.helper: Output: 67 kscreen.xcb.helper: CRTC: 63 kscreen.xcb.helper: Mode: 725 kscreen.xcb.helper: Rotation: "Rotate_0" kscreen.xcb.helper: Connection: "Connected" kscreen.xcb.helper: Subpixel Order: 0 !!!!! Have already that output !!!!! in false branch kscreen.xrandr: XRandROutput 67 update kscreen.xrandr: m_connected: 0 kscreen.xrandr: m_crtc XRandRCrtc(0x813170) kscreen.xrandr: CRTC: 63 kscreen.xrandr: MODE: 725 kscreen.xrandr: Connection: 0 kscreen.xrandr: Primary: true !!!! Mode: 732 / QSize(1680, 907) !!!! Mode: 72 / QSize(1920, 1200) !!!! Mode: 73 / QSize(1920, 1080) !!!! Mode: 74 / QSize(1600, 1200) !!!! Mode: 75 / QSize(1680, 1050) !!!! Mode: 76 / QSize(1400, 1050) !!!! Mode: 77 / QSize(1280, 1024) !!!! Mode: 78 / QSize(1440, 900) !!!! Mode: 79 / QSize(1280, 960) !!!! Mode: 80 / QSize(1280, 854) !!!! Mode: 81 / QSize(1280, 800) !!!! Mode: 82 / QSize(1280, 720) !!!! Mode: 83 / QSize(1152, 768) !!!! Mode: 71 / QSize(1024, 768) !!!! Mode: 84 / QSize(800, 600) !!!! Mode: 85 / QSize(848, 480) !!!! Mode: 86 / QSize(720, 480) !!!! Mode: 87 / QSize(640, 480) kscreen.xrandr: Output 67 : connected = true , enabled = true !!!!! Have already that output !!!!! in false branch kscreen.xrandr: XRandROutput 67 update kscreen.xrandr: m_connected: 0 kscreen.xrandr: m_crtc XRandRCrtc(0x813170) kscreen.xrandr: CRTC: 63 kscreen.xrandr: MODE: 725 kscreen.xrandr: Connection: 0 kscreen.xrandr: Primary: true !!!! Mode: 732 / QSize(1680, 907) !!!! Mode: 72 / QSize(1920, 1200) !!!! Mode: 73 / QSize(1920, 1080) !!!! Mode: 74 / QSize(1600, 1200) !!!! Mode: 75 / QSize(1680, 1050) !!!! Mode: 76 / QSize(1400, 1050) !!!! Mode: 77 / QSize(1280, 1024) !!!! Mode: 78 / QSize(1440, 900) !!!! Mode: 79 / QSize(1280, 960) !!!! Mode: 80 / QSize(1280, 854) !!!! Mode: 81 / QSize(1280, 800) !!!! Mode: 82 / QSize(1280, 720) !!!! Mode: 83 / QSize(1152, 768) !!!! Mode: 71 / QSize(1024, 768) !!!! Mode: 84 / QSize(800, 600) !!!! Mode: 85 / QSize(848, 480) !!!! Mode: 86 / QSize(720, 480) !!!! Mode: 87 / QSize(640, 480) kscreen.xrandr: Output 67 : connected = true , enabled = true kscreen.xrandr: Emitting configChanged() Explanation: when started the mode 725 is used. That one gets removed when the window resizes. Instead we get a new mode 732. KScreen tries to apply it's current config which fails: kscreen.kded: Change detected kscreen.kded: Saving current config to file kscreen: canBeApplied: The output: 67 has no mode: "725" In that case it might be an idea to go to the preferred mode (732). Overall it's rather tricky to detect that a mode got removed and one got added. We just don't have any knowledge about this. There is no event for that. So all rather meh. -- You are receiving this mail because: You are watching all bug changes.