Panning / Creating a bigger virtual screen.

David Griffith dgriffith at internode.on.net
Wed Sep 10 01:07:40 PDT 2008


I'm currently working on a small panning utility to bring back panning 
to my eeePC.
It has an 800x400 LCD, thus I would *really* like to pan the screen. 
400px is not a great amount of usable real estate once menus and 
statusbars and what-not are on-screen.

With my meagre X abilites, I have crufted up a small program that 
queries where the pointer is, and shifts the viewport about with 
XF86VidModeSetViewport to keep the pointer on screen. Seems to work well 
enough.

Except for a niggly problem. I can't set a virtual desktop size bigger 
than my current 800x400 display.  I have "Virtual 1680 1680" on my 
xorg.conf, but I can't seem to figure out how to enforce that as a root 
window size regardless of the actual size of my display. On startup, X 
discards any modes that are bigger than 800x400 as they exceed the panel 
dimensions, so there's nothing bigger than 800x400 in xrandr's available 
display modes.

At present, I have to create a new higher resolution modeline with 
xrandr on my (unplugged) VGA output, then activate the VGA output. This 
then startles X into resizing the desktop to fit the higher resolution, 
then I have a higher resolution virtual desktop that I can pan around 
with my laptop's internal 800x400 display.

Surely there's a better way than this? I'm hoping I've missed something 
completely obvious to the seasoned X veteran :-)

Cheers,
Dave.



More information about the xorg mailing list