Bug 310168 - Application stays in invisible screen area even after disabling disconneted display in System Settings
Summary: Application stays in invisible screen area even after disabling disconneted d...
Status: RESOLVED NOT A BUG
Alias: None
Product: kwin
Classification: Plasma
Component: multi-screen (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR major
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-11-15 19:02 UTC by Martin Holec
Modified: 2016-01-09 09:05 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Holec 2012-11-15 19:02:02 UTC
Application stays in invisible screen area even after disabling disconneted display in System Settings.

Reproducible: Always

Steps to Reproduce:
1. Have multihead with running applications on both displays.
2. Disconnect one display.
3. Disable disconnected monitor in "System Settings" - "Display".
Actual Results:  
Application stays in invisible screen area.

Expected Results:  
Applications moves to visible screen area.

Even without running applications, desktop area stays extended to non-existing screen area. You can move cursor or windows there.

Workaround: Disable display before disconnection.
Comment 1 Jekyll Wu 2013-06-06 13:17:30 UTC
[
Comment 2 Thomas Lübking 2013-06-06 13:42:51 UTC
what's the output of "xrandr -q" (assuming you're using that rather than actual "multihead") before and after disconnecting the screen?
Comment 3 Enrico Tagliavini 2016-01-08 13:50:12 UTC
(In reply to Thomas Lübking from comment #2)
> what's the output of "xrandr -q" (assuming you're using that rather than
> actual "multihead") before and after disconnecting the screen?

[Note I'm not the original reporter but I have this problems since an update to plasma 5.3.something IIRC]

It's problematic to answer this question since running xrandr will actually trigger the notification and screen reconfiguration (as it should happen automatically).

Output with both monitors connected:
$ xrandr -q
Screen 0: minimum 8 x 8, current 3840 x 1080, maximum 32767 x 32767
eDP1 connected primary 1920x1080+1920+0 (normal left inverted right x axis y axis) 294mm x 165mm
   1920x1080     59.93*+
   1400x1050     59.98  
   1600x900      60.00  
   1280x1024     60.02  
   1280x960      60.00  
   1368x768      60.00  
   1280x720      60.00  
   1024x768      60.00  
   1024x576      60.00  
   960x540       60.00  
   800x600       60.32    56.25  
   864x486       60.00  
   640x480       59.94  
   720x405       60.00  
   640x360       60.00  
DP1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 477mm x 268mm
   1920x1080     60.00*+
   1680x1050     59.95  
   1280x1024     75.02    60.02  
   1152x864      75.00  
   1024x768      75.08    60.00  
   800x600       75.00    60.32  
   640x480       75.00    60.00  
   720x400       70.08  
HDMI1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

If I disconnect the DP1 connected monitor screen config doesn't change. All applications on it are still not visible, I'm able to move windows there and so on, everything like if the monitor is connected, but I have to do it blindly.

Now if I run xrandr I get:
$ xrandr -q
Screen 0: minimum 8 x 8, current 3840 x 1080, maximum 32767 x 32767
eDP1 connected primary 1920x1080+1920+0 (normal left inverted right x axis y axis) 294mm x 165mm
   1920x1080     59.93*+
   1400x1050     59.98  
   1600x900      60.00  
   1280x1024     60.02  
   1280x960      60.00  
   1368x768      60.00  
   1280x720      60.00  
   1024x768      60.00  
   1024x576      60.00  
   960x540       60.00  
   800x600       60.32    56.25  
   864x486       60.00  
   640x480       59.94  
   720x405       60.00  
   640x360       60.00  
DP1 disconnected 1920x1080+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
HDMI1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
  1920x1080 (0x49) 148.500MHz
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.50KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  60.00Hz

(notice the VIRTUAL1) My screen flickers a bit, reconfiguration happens, I can see all the Windows, running xrandr again now and I get:

$ xrandr -q
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
eDP1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 294mm x 165mm
   1920x1080     59.93*+
   1400x1050     59.98  
   1600x900      60.00  
   1280x1024     60.02  
   1280x960      60.00  
   1368x768      60.00  
   1280x720      60.00  
   1024x768      60.00  
   1024x576      60.00  
   960x540       60.00  
   800x600       60.32    56.25  
   864x486       60.00  
   640x480       59.94  
   720x405       60.00  
   640x360       60.00  
DP1 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

VIRTUAL1 is gone and the screen layout is what it should be.



Now if I do the opposite (I connect the monitor back) nothing happens again. Monitor stays in power save mode, running xrandr will trigger the automatic config:

$ xrandr -q
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
eDP1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 294mm x 165mm
   1920x1080     59.93*+
   1400x1050     59.98  
   1600x900      60.00  
   1280x1024     60.02  
   1280x960      60.00  
   1368x768      60.00  
   1280x720      60.00  
   1024x768      60.00  
   1024x576      60.00  
   960x540       60.00  
   800x600       60.32    56.25  
   864x486       60.00  
   640x480       59.94  
   720x405       60.00  
   640x360       60.00  
DP1 connected (normal left inverted right x axis y axis)
   1920x1080     60.00 +
   1680x1050     59.95  
   1280x1024     75.02    60.02  
   1152x864      75.00  
   1024x768      75.08    60.00  
   800x600       75.00    60.32  
   640x480       75.00    60.00  
   720x400       70.08  
HDMI1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

Note there is no '*' beside any of the available mods -> nothing is used. After the reconfig happened due to calling xrandr the correct mode is used:

$ xrandr -q
Screen 0: minimum 8 x 8, current 3840 x 1080, maximum 32767 x 32767
eDP1 connected primary 1920x1080+1920+0 (normal left inverted right x axis y axis) 294mm x 165mm
   1920x1080     59.93*+
   1400x1050     59.98  
   1600x900      60.00  
   1280x1024     60.02  
   1280x960      60.00  
   1368x768      60.00  
   1280x720      60.00  
   1024x768      60.00  
   1024x576      60.00  
   960x540       60.00  
   800x600       60.32    56.25  
   864x486       60.00  
   640x480       59.94  
   720x405       60.00  
   640x360       60.00  
DP1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 477mm x 268mm
   1920x1080     60.00*+
   1680x1050     59.95  
   1280x1024     75.02    60.02  
   1152x864      75.00  
   1024x768      75.08    60.00  
   800x600       75.00    60.32  
   640x480       75.00    60.00  
   720x400       70.08  
HDMI1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)


I have no idea why running xrandr trigger the automatic configuration honestly. I'll also point out that opening the display and monitor KCM in systemsettings triggers the same effect. Just opening it, without applying any settings.
Comment 4 Thomas Lübking 2016-01-08 18:07:50 UTC
Kinda as expected:

> If I disconnect the DP1 connected monitor screen config doesn't change. All applications on it > are still not visible, I'm able to move windows there and so on, everything like if the monitor is > connected, but I have to do it blindly.

> Now if I run xrandr I get:
> $ xrandr -q
> Screen 0: minimum 8 x 8, current 3840 x 1080, maximum 32767 x 32767

=> https://bugs.kde.org/show_bug.cgi?id=353052

Closing this one, since it's very likely been as well just because the screen config is messed (by apparently kscreen in this case) and KWin doesn't really care about outputs (let alone configuring them), ie. afa kwin is concerned, there's now a huge monitor w/ 3840px width (maybe panning or not, the WM really doesn't care at this stage)
Comment 5 Enrico Tagliavini 2016-01-09 09:05:02 UTC
Thank you for the info, I CCed to the other one :)