X11(xorg) + Xinerama und Screen "LeftOf"

Wasp

Insektenspray-Gegner
Hallo Forum,

habe Probleme mit ein paar Programmen in Zusammenhang mit dem im Titel genannten Programmen respektive dessen Einstellungen. Daraus ergibt sich mir die folgende Verständnisfrage: wo ist Desktop-Koordinate (0;0)?

Habe zwei Bildschirme welche ich nicht mit "RightOf" sondern mit "LeftOf" angeordnet habe. Genauso wie "BottomOf", führt auch "LeftOf" zu dem Problem, daß der Mauszeiger in einer Achse nicht bewegt werden kann. Das Problem ist (weitestgehend) bekannt und kann leicht durch einen vorhanden Patch behoben werden, bei dem die Mausposition auch negative Werte annehmen kann. Diesen Patch habe eingespielt und er funktioniert auch soweit gut.

Zur Illustration:
Code:
[FONT="Courier New"]
+------------+-------------------------+
| Screen #1  | Screen #0               |
|            |                         |
|            |                         |
|            |                         |
|            |                         |
|            |                         |
|            |                         |
+------------+-------------------------+
   LeftOf -->|
[/FONT]
Da ich, zur fehlerfreien Funktion der Maus ganz offensichtlich negative Mauskoordinaten benötige, habe ich bisher vermutet, daß der rechte Bildschirm ("Screen 0") sich im positiven und der Linke ("Screen 1") sich somit im negativen X-Bereich befindet.

Allerdings scheint es nach xdpyinfo keine negativen Koordinaten zu geben:
Code:
~> xdpyinfo -ext XINERAMA | tail -n 3
XINERAMA version 1.1 opcode: 147
  head #0: 2560x1600 @ 1200,0
  head #1: 1200x1600 @ 0,0
Auch xev gibt alle koordinaten positiv als auch logisch richtig aus:
Code:
ConfigureNotify event, serial 39, synthetic YES, window 0x3a00001,
    event 0x3a00001, window 0x3a00001, (10,22), width 178, height 178,
    border_width 2, above 0x0, override NO
Hierbei habe ich das Fenster von xev links oben auf dem linken Bildschirm positioniert und bekomme "(10,22)" als Koordinate ausgegeben. Also auch keine negativen Koordinaten.

bei folgenden Programmen stieß ich allerdings auf Problem:
rxvt-unicode: bei Transparenz wird Hintergrundbild falsch gekachelt; (0;0) scheint auf dem rechten Bildschirm zu sein.
ioquake3: im Fenstermodus kann man nicht auf dem rechten Bildschirm spielen, da die Maus nicht horizontal bewegt werden kann. (Gleiches Phänomen wie zuvvor bei X11 selbst ohne den Patch für negative Mauskoordianten.)

Noch einmal die Fragen:
  • Wo ist Koordinate (0;0) auf dem Desktop (gibt es negative Koordinaten)?
  • Und natürlich die Frage nach dem Schuldigen: X11/Xorg, Xinerama oder die Programme (rxvt-unicode,ioquake3,..)?
  • Benutzt hier noch jemand anderes Xinerama mit "LeftOf" oder "BottomOf"...?

Sich über Aufklärung freuend würde,
Wasp
 
du kannst dem screen im abschnitt "serverlayout" auch einen offset geben.
Code:
Section "ServerLayout"
    Identifier     "X.org Configured"
    Screen      0  "Screen0"
    Screen      1  "Screen1" leftOf "Screen0"
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Keyboard0" "CoreKeyboard"
EndSection
impliziert naemlich ein
Code:
Section "ServerLayout"
    Identifier     "X.org Configured"
    Screen      0  "Screen0" 0 0
    Screen      1  "Screen1" leftOf "Screen0"
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

stattdessen moechtest du ein
Code:
Section "ServerLayout"
    Identifier     "X.org Configured"
    Screen      0  "Screen0" 1280 0
    Screen      1  "Screen1" leftOf "Screen0"
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Keyboard0" "CoreKeyboard"
EndSection
wenn ich dich richtig verstanden habe?



in der xorg.conf manpage steht das ganz unten:
xorg.conf(5) schrieb:
The entries that may be used in this section are described here.

Screen screen-num "screen-id" position-information
One of these entries must be given for each screen being used in
a session. The screen-id field is mandatory, and specifies the
Screen section being referenced. The screen-num field is
optional, and may be used to specify the screen number in
multi-head configurations. When this field is omitted, the
screens will be numbered in the order that they are listed in.
The numbering starts from 0, and must be consecutive. The posi-
tion-information field describes the way multiple screens are
positioned. There are a number of different ways that this
information can be provided:

x y

Absolute x y
These both specify that the upper left corner's coordinates
are (x,y). The Absolute keyword is optional. Some older
versions of XFree86 (4.2 and earlier) don't recognise the
Absolute keyword, so it's safest to just specify the coordi-
nates without it.

RightOf "screen-id"

LeftOf "screen-id"

Above "screen-id"

Below "screen-id"

Relative "screen-id" x y
These give the screen's location relative to another screen.
The first four position the screen immediately to the right,
left, above or below the other screen. When positioning to
the right or left, the top edges are aligned. When posi-
tioning above or below, the left edges are aligned. The
Relative form specifies the offset of the screen's origin
(upper left corner) relative to the origin of another
screen.
 
Zurück
Oben