evangelion
February 13th, 2005, 02:54 PM
Using Gnome with Metacity and Xinerama (or Twinview) can be a pain, especially if you're using tv-out and your second screen is a television. Windows seem to randomly be placed on whichever screen Metacity thinks is least crowded at the time. This leads to windows popping up on your tv or second monitor when the second monitor may not even be turned on!
To remedy this, I've found a patch after some heavy googling, I'm posting it here for posterity and to help others who may be annoyed with this problem.
If you're unsure about how to patch and/or build something yourself it's very simple
##Before you start you'll need the packages
## libxml-parser-perl, libgtk-2.0-dev,libgconf2-dev
#and their respective dependencies (which will be handled for you by
#the magic of apt-get or synaptic
# Grab the sources (latest as of 2/13/05, subject to change)
wget http://ftp.gnome.org/pub/gnome/sources/metacity/2.8/metacity-2.8.8.tar.bz2
#Unpack them (x is for extract, v is for verbose, j is because it's a bzip file,
#p preserves permissions and f points it to the file,
#in case you were wondering)
tar xvjpf metacity-2.8.8.tar.bz2
#Change to the source's directory
cd metacity-2.8.8
#The actual patch procedure, it's just a plain text patch compressed with bzip2
#hence bzcat to display it, if you ever have an uncompressed .diff or .patch file
#you can just use "cat"
bzcat /path/to/metacity-2.6.3-xinerama-place.patch | patch -p1
#It will display
patching file src/place.c
Hunk #2 succeeded at 768 (offset 9 lines).
now just ./configure --prefix=/usr && make && sudo make install and you'll be good to go. Now windows should always be placed in the active screen.
Enjoy
To remedy this, I've found a patch after some heavy googling, I'm posting it here for posterity and to help others who may be annoyed with this problem.
If you're unsure about how to patch and/or build something yourself it's very simple
##Before you start you'll need the packages
## libxml-parser-perl, libgtk-2.0-dev,libgconf2-dev
#and their respective dependencies (which will be handled for you by
#the magic of apt-get or synaptic
# Grab the sources (latest as of 2/13/05, subject to change)
wget http://ftp.gnome.org/pub/gnome/sources/metacity/2.8/metacity-2.8.8.tar.bz2
#Unpack them (x is for extract, v is for verbose, j is because it's a bzip file,
#p preserves permissions and f points it to the file,
#in case you were wondering)
tar xvjpf metacity-2.8.8.tar.bz2
#Change to the source's directory
cd metacity-2.8.8
#The actual patch procedure, it's just a plain text patch compressed with bzip2
#hence bzcat to display it, if you ever have an uncompressed .diff or .patch file
#you can just use "cat"
bzcat /path/to/metacity-2.6.3-xinerama-place.patch | patch -p1
#It will display
patching file src/place.c
Hunk #2 succeeded at 768 (offset 9 lines).
now just ./configure --prefix=/usr && make && sudo make install and you'll be good to go. Now windows should always be placed in the active screen.
Enjoy