Xfce Forum

Sub domains
 

You are not logged in.

#1 2015-02-03 10:28:16

juza
Member
Registered: 2015-02-03
Posts: 4

Desktop is messed up after disconnecting HDMI cable

Hi there.

I have a double screen problem. I use a laptop with Intel CPU and GPU with external monitor connected. Only the external monitor is being used when connected (that is I don't replicate screens nor do I extend desktop on two screens).

The problem:
1. I'm using the external screen (HDMI).
2. I switch to laptop.
3. I disconnect the HDMI cable.
4. Bugs show up
a) the theme is changed: icons (e.g. top left on the panel), color scheme, fonts are strange.
b) I can no longer switch to the external monitor using xfce (xfce4-display-settings). I can only switch by using for example lxrandr. xfce display settings does not even start when I fire Fn + F8. When I start xfce4-display-settings from the terminal any changes I do are not applied.

Details on 4 a):
Before disconnecting the HDMI cable, my desktop looks like this:
Before disconnecting the cable

After I disconnect the cable, my desktop looks like this:
After disconnecting the cable

The machine:
Asus N56JR (https://www.asus.com/Notebooks_Ultraboo … fications/) with
Intel Core i7 4700HQ and NVIDIA GeForce GTX 760M. I don't normally use Nvidia card.
The laptop has HDMI output.
The monitor is a Dell with DVI-D input.
Therefore I use a relay that translates HDMI to DVI-D.

My system:
Distro: Fedora 21
Kernel: 3.18.3
Xorg server: 1.16.3
Intel module version: 2.99.916
xfce4-display-settings: 4.11.3
xfwm4: 4.11.2 (revision cfa3c47)
xfdesktop: 4.11.8

xrandr output:

Screen 0: minimum 8 x 8, current 1920 x 1200, maximum 32767 x 32767
eDP1 connected (normal left inverted right x axis y axis)
   1920x1080     59.91 +  39.94  
   1400x1050     59.98  
   1280x1024     60.02  
   1280x960      60.00  
   1024x768      60.00  
   800x600       60.32    56.25  
   640x480       59.94  
HDMI1 connected 1920x1200+0+0 (normal left inverted right x axis y axis) 518mm x 324mm
   1920x1200     59.95*+
   1600x1200     60.00  
   1680x1050     59.88  
   1280x1024     60.02  
   1280x960      60.00  
   1024x768      60.00  
   800x600       60.32  
   640x480       60.00  
   720x400       70.08  
VGA1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

Configuration files:
$HOME/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml

<?xml version="1.0" encoding="UTF-8"?>

<channel name="displays" version="1.0">
  <property name="Default" type="empty">
    <property name="eDP1" type="string" value="1. LGD 15&quot;">
      <property name="Active" type="bool" value="false"/>
      <property name="Resolution" type="string" value="1920x1080"/>
      <property name="RefreshRate" type="double" value="59.905800"/>
      <property name="Rotation" type="int" value="0"/>
      <property name="Reflection" type="string" value="0"/>
      <property name="Primary" type="bool" value="false"/>
      <property name="Position" type="empty">
        <property name="X" type="int" value="0"/>
        <property name="Y" type="int" value="0"/>
      </property>
    </property>
    <property name="VGA1" type="string" value="Monitor">
      <property name="Active" type="bool" value="false"/>
      <property name="Resolution" type="string" value="1024x768"/>
      <property name="RefreshRate" type="double" value="60.003840"/>
      <property name="Rotation" type="int" value="0"/>
      <property name="Reflection" type="string" value="0"/>
      <property name="Primary" type="bool" value="false"/>
      <property name="Position" type="empty">
        <property name="X" type="int" value="1920"/>
        <property name="Y" type="int" value="0"/>
      </property>
    </property>
    <property name="HDMI1" type="string" value="2. Dell Inc. 24&quot;">
      <property name="Active" type="bool" value="true"/>
      <property name="Resolution" type="string" value="1920x1200"/>
      <property name="RefreshRate" type="double" value="59.950171"/>
      <property name="Rotation" type="int" value="0"/>
      <property name="Reflection" type="string" value="0"/>
      <property name="Primary" type="bool" value="false"/>
      <property name="Position" type="empty">
        <property name="X" type="int" value="0"/>
        <property name="Y" type="int" value="0"/>
      </property>
    </property>
    <property name="eDP-0" type="string" value="1. LGD 15&quot;">
      <property name="Active" type="bool" value="false"/>
      <property name="Resolution" type="string" value="1920x1080"/>
      <property name="RefreshRate" type="double" value="59.905800"/>
      <property name="Rotation" type="int" value="0"/>
      <property name="Reflection" type="string" value="0"/>
      <property name="Primary" type="bool" value="false"/>
      <property name="Position" type="empty">
        <property name="X" type="int" value="0"/>
        <property name="Y" type="int" value="0"/>
      </property>
    </property>
    <property name="HDMI-0" type="string" value="2. Dell Inc. 24&quot;">
      <property name="Active" type="bool" value="true"/>
      <property name="Resolution" type="string" value="1920x1200"/>
      <property name="RefreshRate" type="double" value="59.950171"/>
      <property name="Rotation" type="int" value="0"/>
      <property name="Reflection" type="string" value="0"/>
      <property name="Primary" type="bool" value="true"/>
      <property name="Position" type="empty">
        <property name="X" type="int" value="0"/>
        <property name="Y" type="int" value="0"/>
      </property>
    </property>
  </property>
  <property name="MinimalAutoConfig" type="empty">
    <property name="eDP1" type="string" value="LGD 15&quot;">
      <property name="Active" type="bool" value="false"/>
      <property name="Resolution" type="string" value="1920x1080"/>
      <property name="RefreshRate" type="double" value="59.905800"/>
      <property name="Rotation" type="int" value="0"/>
      <property name="Reflection" type="string" value="0"/>
      <property name="Primary" type="bool" value="false"/>
      <property name="Position" type="empty">
        <property name="X" type="int" value="0"/>
        <property name="Y" type="int" value="0"/>
      </property>
    </property>
    <property name="VGA1" type="string" value="Dell Inc. 24&quot;">
      <property name="Active" type="bool" value="false"/>
      <property name="Resolution" type="string" value="1920x1200"/>
      <property name="RefreshRate" type="double" value="59.950171"/>
      <property name="Rotation" type="int" value="0"/>
      <property name="Reflection" type="string" value="0"/>
      <property name="Primary" type="bool" value="false"/>
      <property name="Position" type="empty">
        <property name="X" type="int" value="0"/>
        <property name="Y" type="int" value="0"/>
      </property>
    </property>
    <property name="HDMI1" type="string" value="HDMI1">
      <property name="Active" type="bool" value="true"/>
      <property name="Resolution" type="string" value="1920x1200"/>
      <property name="RefreshRate" type="double" value="59.950171"/>
      <property name="Rotation" type="int" value="0"/>
      <property name="Reflection" type="string" value="0"/>
      <property name="Primary" type="bool" value="false"/>
      <property name="Position" type="empty">
        <property name="X" type="int" value="0"/>
        <property name="Y" type="int" value="0"/>
      </property>
    </property>
  </property>
  <property name="Notify" type="bool" value="true"/>
</channel>

/etc/X11/xorg.conf.d/80-backlight.conf

 Section "Device"
    Identifier  "Intel Graphics"
    Driver      "intel"
    Option      "AccelMethod"     "sna"
#    Option     "AccelMethod"     "uxa"
    Option      "Backlight"       "intel_backlight"
    Driver      "intel"
    BusID       "PCI:0:2:0"
 EndSection

I have tried Intel acceleration methods SNA and UXA.
I have tried creating a new user account.
I have tried setting monitor's source to DVI-D (not to autodetect).

Any suggestions and help is greatly appreciated.

Last edited by juza (2015-02-03 10:38:43)

Offline

#2 2015-02-03 11:25:38

ToZ
Administrator
From: Canada
Registered: 2011-06-02
Posts: 10,948

Re: Desktop is messed up after disconnecting HDMI cable

Looks like xfsettingsd crashes when you disconnect the cable (maybe something like this). Is there anything in the logs?

BTW, great post.


Please remember to mark your thread [SOLVED] to make it easier for others to find
--- How To Ask For Help | FAQ | Developer Wiki  |  Community | Contribute ---

Offline

#3 2015-02-04 15:52:06

Rayonant
Member
Registered: 2013-01-10
Posts: 49

Re: Desktop is messed up after disconnecting HDMI cable

I've had the same problem, is a known bug but right now I can not find the report. The problem seem to be that the displays.xml gets corrupted and has to be deleted and monitors layout configured again. The workaround I used to do was disconnecting the external screen  ( in my case trough VGA although I do not think that is relevant) without switching to laptop in the screen settings, this way the bug does not show up.

Last edited by Rayonant (2015-02-04 15:52:21)

Offline

#4 2015-02-08 19:25:40

juza
Member
Registered: 2015-02-03
Posts: 4

Re: Desktop is messed up after disconnecting HDMI cable

ToZ, thanks. The report you linked is what I was looking for, but couldn't find. I have exactly this problem. I will monitor and engage in the discussion in the bug reports that are linked to there.

Rayonant, I see. I deleted displays.xml, but nothing really happened, that is I still experience the bug.
Your suggestion is very interesting. Now I do: Disconnect the cable. Laptop does not display the desktop. I hit Fn + F8 (screen change app shows up, but I don't see it, as the laptop screen is just black), Enter. I have the screen smile Nice workaround, mate!

Offline

Board footer

Powered by FluxBB