Err... sorry , I accidentally sent the last email before I was finished...

I have a dual monitor system, and the currently available multiheaded
options do not meet my needs very well. I normally have a lot of
applications running, and thus I tend to make heavy use of virtual
workspaces.  Unfortunately, it is difficult to use workspaces as effectively 
as I would like.  For the sake of discussion, let's call what I want 
"separate, independent workspaces".  Let me elaborate.

If one wants to display something on a second monitor under Xinerama, then
one simply draws something that is off the edge of the first.   Xinerama
makes two or more monitors look like one bigger monitor.   However, the
tendancy is that a window manager simply treats this as one big workspace.
They are not separate workspaces.

The other option is to treat each monitor as a different display. (i.e.
localhost:0.0 and localhost:0.1)  However, most applications don't have the
ability to migrate between different X displays.  This ties each
application to a specific monitor, and doesn't allow me to display a
workspace that is associated with display :0.0 on display :0.1 and vice
versa.  This is very artificial and constantly gets in my way.  For
example, what if I want to view two applications associated with the same
monitor at the same time?

This, in turn, ties each workspace to a particular monitor.   I want each
workspace to be independant of any monitor.   In a sense, this creates two
"pools" of workspaces, one for each monitor.  I want two monitors to share
the same "pool" of workspaces.

Now, it is practically impossible to write window manager that implements
separate, independant workspaces without the using the Xinerama extensions.
However, to implent this idea using the Xinerama extensions is widely
recognized as very difficult.

Worse, to do this robustly is believed by some (including me) to be nearly
impossible under Xinerama.  Xinerama introduces a whole host of
compilcations, not least of which is that widows have a tendancy to pop up
on mulitple monitors.   Despite Enlightenment's efforts in this regard, it
has been my experience that this feature still doesn't work very well.  
Besides, I do not much care for Enlightenment.

I would like to be able to take several things that would otherwise be 
separate displays, and treat them as a single display, say :0.0 for
instance.   For the sake of discussion, let us call the two monitors :0.0,0 
and :0.0,1.   Initially, they would display the exact same picture.

However, a window manager that knows of the right extensions would be able
to dictate which applications are visible on :0.0,0 and :0.0,1 in an 
independant fashion.  For example, we might want to have a clock application 
visible on both displays, a text editor visible only on :0.0,0, and a mail 
client visible only on :0.0,1.   Later, we might want to hide the text editor 
on :0.0,0, hide the mail client on :0.0,1, and make the mail client visible 
on :0.0,0. 

Similarly, the window manager would be able to control what the mouse cursor 
looks like on each screen.  Oftentimes, it would want to make the mouse 
pointer invisible on all screens except one, where it would look normal.

In the case that a window manager is not capable of exploiting these
extensions, then you would simply duplicate the exact same picture on
:0.0,0 and :0.0,1.  All the old protocols should continue to function as
they always have.

This is just an initial idea.  Its open for critique and changes.  
However, please realize that this idea is not at odds with xinerama.  In
fact, it would complement xinerama quite nicely.

I'm a veteran programmer, and my knowledge of X says that this should be
fairly easy to implement in principle.  But in practice, I'm not at all
familiar with the XFree86 source code, and XFree86 is very large and poorly
documented.   This makes the extension extremely difficult to write without
the mentoring and assistance of somebody who is thoroughly acquainted with
the relevant source code.

best,
leon
_______________________________________________
Xpert mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/xpert

Reply via email to