Fisheye X11 Server

This page presents the idea of a fisheye X11 Server. It would enable people to use typical unadulterated desktop X applications on small screens, such as handhelds or mobile phones. Note that because of the client-server nature of X11, this would still allow the application to be run on a remote server or desktop.

Update: The idea is also presented on a zero-budget video (28 MB, divx in avi, PAL resolution).

I do not know whether this idea will materialize into a real system - that depends on whether anyone is willing to fund its development. But so far I have written a small X application which demonstrates some of the ideas and allows me to play with various fisheye distortion and focus management algorithms.

Here's a typical session on my laptop (resolution 1024x768) shown on a resolution with 400x300. The focus of the fisheye, in this case 120x90 pixels, is shown without any distortion. Click on the image to see it in double size, without any image enhancement.

In my opinion this would be quite usable as far as the focus follows the mouse and cursor. I could even play a nice game of glickomania and chess.

Here's evolution and a KDE menu, and an unflattering picture of me after demolishing a wall.

Combined with a touch screen and having the focus follow the touch/mouse and cursor (when editing text) would probably make this a nice emulation for GUIs that have not been designed for small screens.

The fisheye distortion is not limited to X11: it can, for example, be used also for displaying relatively unstructured data, such as PostScript and PDF files and large WWW-pages, or for other graphical platforms, such as VNC or NoMachine.

Of course there's a huge number of user interface and technical issues, including performance problems, before the Fisheye X Server would be ready for practical use.


Kenneth Oksanen <>