No Debian Gnome, as janelas estão maximizando em vários monitores

1

Esta é a minha configuração de tela:

      +----------------+----------------+
      |                |                |
      |                |                |        This is X Screen 1
      |                |                |        Two 1680x1050 screens
      |                |                |
+-----+----------------+----------------+-----+
|                      |                      |
|                      |                      |
|                      |                      |  This is X Screen 0
|                      |                      |  Two 2560x1440 screens
|                      |                      |
|                      |                      |
+----------------------+----------------------+

As coisas estão funcionando bem, exceto quando tento fazer tela cheia ou maximizar qualquer janela, ela abrange as duas telas inteiras de qualquer tela X em que ela esteja. Além disso, as caixas de diálogo sempre são divididas ao meio pela divisão da janela do meio.

Ouvi dizer que a metacidad pode não estar jogando bem com o Xinerama, mas não consigo encontrar nenhum bug formal na internet. Eu estou pensando que pode ser minha configuração também, então eu pensei em postar meu problema aqui.

Aqui está o meu xorg.conf:

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" Absolute 0 1050
    Screen      1  "Screen1" Absolute 880 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "1"
EndSection

Section "Files"
EndSection

Section "InputDevice"
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "DELL U2711"
    HorizSync       29.0 - 113.0
    VertRefresh     49.0 - 86.0
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "BenQ FP202W"
    HorizSync       30.0 - 84.0
    VertRefresh     56.0 - 76.0
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 9800 GT"
    BusID          "PCI:1:0:0"
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 9800 GT"
    BusID          "PCI:2:0:0"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "TwinView" "1"
    Option         "TwinViewXineramaInfoOrder" "DFP-0"
    Option         "metamodes" "DFP-0: nvidia-auto-select +0+0, DFP-1: nvidia-auto-select +2560+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
    Option         "TwinView" "1"
    Option         "TwinViewXineramaInfoOrder" "DFP-0"
    Option         "metamodes" "DFP-0: nvidia-auto-select +0+0, DFP-1: nvidia-auto-select +1680+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

EDIT: aqui é a versão de trabalho:

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" Absolute 0 1050
    Screen      1  "Screen1" RightOf "Screen0"
    Screen      2  "Screen2" Absolute 880 0
    Screen      3  "Screen3" RightOf "Screen2"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "1"
EndSection

Section "Files"
EndSection

Section "InputDevice"
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection


# Monitors

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "DELL U2711"
    HorizSync       29.0 - 113.0
    VertRefresh     49.0 - 86.0
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "DELL U2711"
    HorizSync       29.0 - 113.0
    VertRefresh     49.0 - 86.0
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor2"
    VendorName     "Unknown"
    ModelName      "BenQ FP202W"
    HorizSync       30.0 - 84.0
    VertRefresh     56.0 - 76.0
EndSection

Section "Monitor"
    Identifier     "Monitor3"
    VendorName     "Unknown"
    ModelName      "BenQ FP202W"
    HorizSync       30.0 - 84.0
    VertRefresh     56.0 - 76.0
EndSection


# Devices

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 9800 GT"
    BusID          "PCI:1:0:0"
    Screen         0
    Option         "PixmapCacheSize" "300000"
    Option         "OnDemandVBlankInterrupts" "True"
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 9800 GT"
    BusID          "PCI:1:0:0"
    Screen         1
    Option         "PixmapCacheSize" "300000"
    Option         "OnDemandVBlankInterrupts" "True"
EndSection

Section "Device"
    Identifier     "Device2"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 9800 GT"
    BusID          "PCI:2:0:0"
    Screen         0
    Option         "PixmapCacheSize" "300000"
    Option         "OnDemandVBlankInterrupts" "True"
EndSection

Section "Device"
    Identifier     "Device3"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 9800 GT"
    BusID          "PCI:2:0:0"
    Screen         1
    Option         "PixmapCacheSize" "300000"
    Option         "OnDemandVBlankInterrupts" "True"
EndSection


# Screens

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "TwinView" "0"
    Option         "TwinViewXineramaInfoOrder" "DFP-0"
    Option         "metamodes" "nvidia-auto-select +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
    Option         "TwinView" "0"
    Option         "TwinViewXineramaInfoOrder" "DFP-0"
    Option         "metamodes" "nvidia-auto-select +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen2"
    Device         "Device2"
    Monitor        "Monitor2"
    DefaultDepth    24
    Option         "TwinView" "0"
    Option         "TwinViewXineramaInfoOrder" "DFP-0"
    Option         "metamodes" "nvidia-auto-select +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen3"
    Device         "Device3"
    Monitor        "Monitorr"
    DefaultDepth    24
    Option         "TwinView" "0"
    Option         "TwinViewXineramaInfoOrder" "DFP-0"
    Option         "metamodes" "nvidia-auto-select +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Observe como estou criando outra tela X para cada monitor agora.

Matt Alexander
fonte
Na Rússia soviética, vários monitores estão maximizando janelas
trolle3000
@ trolle3000, ??
Matt Alexander
Apenas uma piada de mau gosto. uncyclopedia.wikia.com/wiki/Russian_reversal_(joke)
trolle3000
Obrigatório xkcd.com/963
grawity
@grawity: exatamente.
Matt Alexander

Respostas:

1

Infelizmente eu sei como você se sente e eu realmente não pude encontrar sua causa. Apenas um dia depois de muitas tentativas de ajustes (e depois de algumas atualizações), consegui que funcionasse. Eu posto aqui o meu xorg.conf para que você possa se inspirar nele. Eu me lembro de uma vez que xinerama fez o que está acontecendo com você agora, mas não mais (e no futuro eu espero).

# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 290.10  (pbuilder@cake)  Wed Nov 23 12:20:24 UTC 2011

# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 280.13  (pbuilder@cake)  Mon Aug  8 15:37:15 UTC 2011

Section "ServerLayout"

# Removed Option "Xinerama" "0"
    Identifier     "Layout0"
    Screen      0  "Screen0" 1920 0
    Screen      1  "Screen1" LeftOf "Screen0"
    Screen      2  "Screen2" RightOf "Screen0"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "1"
EndSection

Section "Files"
EndSection

Section "InputDevice"

    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"

    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Samsung SMS24A350H"
    HorizSync       30.0 - 81.0
    VertRefresh     56.0 - 75.0
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "DELL U2412M"
    HorizSync       30.0 - 83.0
    VertRefresh     50.0 - 61.0
EndSection

Section "Monitor"
    Identifier     "Monitor2"
    VendorName     "Unknown"
    ModelName      "DELL U2412M"
    HorizSync       30.0 - 83.0
    VertRefresh     50.0 - 61.0
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 560 Ti"
    BusID          "PCI:2:0:0"
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 460"
    BusID          "PCI:1:0:0"
    Screen          0
EndSection

Section "Device"
    Identifier     "Device2"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 460"
    BusID          "PCI:1:0:0"
    Screen          1
EndSection

Section "Screen"

# Removed Option "metamodes" "nvidia-auto-select +0+0"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "AddARGBGLXVisuals" "true"
    Option         "TwinView" "0"
    Option         "TwinViewXineramaInfoOrder" "CRT-0"
    Option         "metamodes" "1920x1080 +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"

# Removed Option "metamodes" "nvidia-auto-select @1600x1200 +0+0"
# Removed Option "metamodes" "DFP-0: nvidia-auto-select +0+0"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
    Option         "AddARGBGLXVisuals" "true"
    Option         "TwinView" "0"
    Option         "metamodes" "DFP-0: 1920x1200 +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen2"
    Device         "Device2"
    Monitor        "Monitor2"
    DefaultDepth    24
    Option         "AddARGBGLXVisuals" "true"
    Option         "TwinView" "0"
    Option         "metamodes" "DFP-2: nvidia-auto-select +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Extensions"
    Option         "Composite" "Disable"
EndSection

O sistema é o Debian GNU / Linux wheezy (teste). A versão do driver é 290.10. A julgar pelo seu xorg.conf eu tentaria desabilitar a visão dupla (até eu, quando habilitado, tenho esse problema).

Estou ciente de que twinview permite que você tenha um melhor desempenho e xinerama é muito pobre aceleração 3D capaz, mas se você não tem necessidades específicas, você pode viver com isso. Eu posso ver vídeos muito bons com xinerama. Não tenho certeza se você está jogando. Para outras informações, você pode dar uma olhada no XRANDR, embora isso possa ser o que você está procurando, mas parece um pouco difícil de começar. O Xinerama é mais transparente, mas menos performante.

Talvez existam outras opções diferentes das minhas. Twinview ativado pegou minha atenção e desativá-lo é a chave para o seu problema.

user51166
fonte
Seu exemplo definitivamente ajudou de muitas maneiras, obrigado.
Matt Alexander
Seja bem-vindo. Talvez você possa especificar qual era a correção específica para que, se outros usuários lerem essa discussão, possam resolver o problema.
user51166
Boa ideia. OP editado.
Matt Alexander