[Openbox] dual head apps open in middle

Hi all,

I did some searching, and possibly could have missed it, but I was curious if there is a way to open applications on the monitor that I launch the program from?

Example, if I bring up my menu, select to open Mirage, it launches in the middle of my monitors. Though it does seem aware of already open windows, I dont always have others open.

Its not really a problem that I mind, I was just wondering if I am missing something. One monitor is set to primary, Conky, and Nautilus recognize this, but in a way, I dont always want Nautilus to open on the primary, I imagine I could deselect the primary, and specify the monitor for Conky to use, but then Nautilus is going to open in the middle, like other applications.

Im using twinview, and set up my xorg.conf with nvidia-xconfig and nvidia-settings. I tried to use 'separate X screens" but it didnt want to work, Im sure I am at fault for that not working, and I originally thought I wanted to use separate X screens, but am kind of liking using one large wallpaper now.

On a side note, xscreensaver doesnt span both monitors, I get two screensavers, I didnt expect that.

Again, not really a big deal, Im so loving using freeBSD and Openbox as a desktop, sure beats the heck out of any other OS's Ive ever used....wish I hadnt waited this long to switch, and this ol machine has about ran them all, though Linux only lasted a few days years ago, before I ditched that expletive deleted.


Thanks.
 
If you maximize the windows, does it stay to just one screen? What is the output of [cmd=]xdpyinfo -ext XINERAMA | grep head[/cmd] ?
 
adamk, yeah when I maximize, it does span both,that is one thing I forgot to mention, I dont really like that.

Here is the output you asked for:
Code:
  head #0: 1680x1050 @ 0,0
  head #1: 1680x1050 @ 1680,0

and here is my xorg.conf, just incase it might help:
Code:
Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection

Section "Files"
    RgbPath         "/usr/local/lib/X11/rgb"
    FontPath        "/usr/local/lib/X11/fonts/misc/:unscaled"
    FontPath        "/usr/local/lib/X11/fonts/100dpi/:unscaled"
    FontPath        "/usr/local/lib/X11/fonts/75dpi/:unscaled"
    FontPath        "/usr/local/lib/X11/fonts/misc/"
    FontPath        "/usr/local/lib/X11/fonts/Type1/"
    FontPath        "/usr/local/lib/X11/fonts/100dpi/"
    FontPath        "/usr/local/lib/X11/fonts/75dpi/"
    FontPath        "/usr/local/lib/X11/fonts/cyrillic/"
    FontPath        "/usr/local/lib/X11/fonts/TTF/"
EndSection

Section "Module"
    Load           "dbe"
    Load           "extmod"
    Load           "type1"
    Load           "freetype"
    Load           "glx"
EndSection

Section "ServerFlags"

    Option         "Xinerama" "0"
EndSection

Section "InputDevice"

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

Section "InputDevice"

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

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "ViewSonic VX2035wm"
    HorizSync       30.0 - 82.0
    VertRefresh     50.0 - 75.0
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "ViewSonic VX2035wm"
    HorizSync       30.0 - 82.0
    VertRefresh     50.0 - 75.0
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
EndSection

Section "Device"
    Identifier     "Videocard0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "Quadro FX 2000"
EndSection

Section "Device"
    Identifier     "Videocard1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "Quadro FX 2000"
    BusID          "PCI:1:0:0"
    Screen          1
EndSection

Section "Screen"

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

Section "Screen"
    Identifier     "Screen1"
    Device         "Videocard1"
    Monitor        "Monitor1"
    DefaultDepth    24
    Option         "TwinView" "0"
    Option         "metamodes" "DFP-1: nvidia-auto-select +0+0"
EndSection

I possibly should have stuck this question in the Xorg section, now that I got to thinking about the maximize, but I had already spent 15 minutes trying to decide where to stick it, hopefully Im not creating more work for DutchDaemon.

I need to remove the RGB path, I just keep spacing it off.

Also, I have the monitors switched, the #0 is on the right, I had to swap them in nvidia-settings, my card only has dual link on one output, and I wanted it on the right monitor, though since Im running the same rez, I doubt it matters now.
 
Odd... The xinerama extension is clearly indicating that two monitors are in use and shows the necessary placement information. Which means that openbox is ignoring this information. Yet hear, openbox from ports works as expected and uses this information in placing and maximizing windows.

What is the output of [cmd=]ldd /usr/local/bin/openbox | grep -i xinerama[/cmd] ?

Adam
 
Im not getting any output from that. I had xinerama checked, and then had selected twinview, which in nvidia-settings then makes the xinerama checkbox disappear.

Running Openbox version 3.4.7.2, and xineramaproto 1.1.2, though libXinerama isnt installed, not sure if thats helpful though.
 
It gets a little confusing... xinerama is both the ability of the X server to combine separate screens into one screen, and the extension that the X server uses to convey monitor placement information to applications and window managers. When you switched to twinview, you told the nvidia driver not to use the xinerama method of combining displays, but the X server still uses the xinerama extension to convey placement information.

So, for some reason openbox wasn't built with support for xinerama. Do you have the libXinerama package/port installed?

Adam
 
Naa, libXinerama isnt installed, I didnt think it was needed, as in I originally thought all I needed was twinview, so building Openbox with xinerama support should fix the issue?
 
I wasnt sure if it would install it as a dependency if I enabled support for it or not, I'll install libXinerama, and rebuild/config Openbox with support.

Much appreciated, thank you, Im gonna crash, its almost 7am here, and I should have been asleep hrs ago, but Ill give it a shot later today.
 
adamk,

If you were a hot chick, I could give you a big ol kiss...hell I still probably could, lol. That sure enough fixed it, and I see that it wouldnt have pulled libXinerama as a dependency, I had thought I would have got a config option.

Now I can get to sleep, sure not going to get much today, but I just had to see if that solved it.

Thank you so very much. This is sweet.
 
DutchDaemon, thank you, and lol, had to laugh when I woke up and read that earlier, I was just too out of it to respond.
 
Back
Top