(NOTE: You've apparently decided that I, like you, have Xinerama enabled,
and that since my monitors are (a) identical, and (b) next to each other,
that I don't have these kinds of problems you describe.  I can't think of
any other reason for some of your comments.  I want to make sure you're
clear on the fact that I in fact do NOT use it, and have no reason to.)

On Sun, Jan 27, 2002 at 03:46:12PM -0800, Marius Nita wrote:
> On Sun, Jan 27, 2002 at 01:16:14PM -0800, Marc Wilson wrote:
> > And this is the stated, documented, and implemented reason for and behavior
> > of Xinerama in relation to blackbox.
> 
> Xinerama was implemented to "increase screen real estate" for those who have
> more than one monitor on the same machine.

Xinerama was created to allow multiple physical screens to be treated as
one logical screen.  That's all.

Of course, Xinerama is also a member of the larger set of features that
provide you with more "screen real estate", such as multiple screen
support.  Another such feature would be Xnest.

> If you have two monitors, you should be able to put them both on the same
> machine, and move apps between them, or put part of an app in a screen,
> and part in the other.

If you like.  I find it much more logical to keep everything comprising one
application on one screen.  Others may differ.  There's no reason why an
application couldn't keep parts of itself on one screen and other parts of
itself on another screen while using multiple screen support, either.  Most
don't, but "don't" is hardly the same thing as "can't".

> For example, one of my coworkers keeps his email program on his small
> screen, and does his work in the other.

I seem to be doing that just fine here... I have this e-mail open on my
left-hand monitor and the editor with a current software project open on
the right-hand one.  Doesn't seem to be any problem here.  Hmm... I can
even cut-n-paste between them and it works just fine.

> Another coworker, who uses adobe golive, keeps the source code window in
> the small screen, while working visually in the other. If he needs to
> tweak some source code, he moves the mouse to the source window and does
> that.  This is on Apple machines, mind you.

I have no idea where this came from.  Is this meant to imply that an Apple
machine is less capable, and therefore if the Apple can do it, then we
should be able to do it?  We can, so what's the point?

> What do you do when you work with apps like Kdevelop, which have a whole
> bunch of small panels popping everywhere, and half of them pop in the
> small screen, and half in the other screen?

I don't have a problem with it at all because while Kdevelop (bleah) does
pop up windows all over the place from time-to-time, they have no
capability to escape to the other display.  At all.  Ever.  They stay right
where they belong, on the same display that the main application is running
on.

Did you expect it to do anything differently?

> Isn't it normal that kdevelop should set itself up in the screen that you
> start it in? It would on all other operating systems that implement
> dualhead.

Funny, XFree doesn't allow this either, unless you try and use Xinerama for
something for which it wasn't intended.  All child windows of an
application stay with the parent like they should.

> Apple's dual head does not allow popup windows to go willy nilly all
> over the place, it knows about dead areas and does not place windows in them,
> etc.

Neither does XFree's.  See previous comment.

> If xinerama support included all of that, you would not be bitching right
> now. Because you're used to something working the wrong way, and you're
> terrified that it may be fixed. But rest assured, you can disable the stuff.

I beg your pardon?  "Works the wrong way?"  "Terrified that it may be
fixed?"  How, exactly?  Let's see here:

Multiple screen support does not:

1) allow child windows to escape their parent
2) allow windows to be placed in a dead zone
3) allow windows to span monitor boundaries arbitrarily
4) allows monitors to be run at differing color depths and resolutions
5) supports acceleration features such as DRM/DRI (at least on :0.0, often
   on higher-numbered screens as well)
6) allows applications to take over one screen (run any SDL apps lately?),
   while secondary screens continue as normal

Xinerama, on the other hand:

1) allows child windows to escape their parent
2) allows windows to be placed in a dead zone
3) allows windows to span monitor boundaries arbitrarily
4) does not allow monitors to be run at differing color depths (different
   resolutions work *if* you accept dead zones)
5) does not support acceleration features such as DRM/DRI (used your 3d
   card lately?)
6) afaik, SDL and Xinerama are incompatible with each other

Funny, I seem to have all the features *you* want on *my* side.  For you to
get what I already have, you have to impose artificial limits on what can
take place on the screen, faking things into *looking* like multiple
screens when they're not.

Why not just do it the right way, if that's what you want?

> > I'm not against Xinerama.  If you like it, use it.  I do, from time to
> > time.  But I *am* against imposing artificial limits on what windows do,
> > just because I've selected it.  If I'm using Xinerama, and I tell that
> > window to *maximize*, it better damn well *maximize*.  Across both heads.
 
> I'm not sure why you're clinging so hard to this. Let me guess. You have 2
> monitors that are exactly the same size, and you keep them right next to each
> other.

At the moment I do, yes.  It hasn't always been that way.  I got an
excellent deal on a second monitor identical to the 19" one I was already
using for :0.0, and retired the 17" old-n-fuzzy one that was :0.1

> The fact that people would have two monitors of the same exact size is
> rare.

Yep.  Been there, done that.  But it's irrelevant in any case.  See
previous.

> And if you do have different sizes, how to you like it when windows are
> placed where you can't see them? or can only see part of them?

I'd hate it.  But I don't have that problem, ever.  Why don't I have that
problem?  Because I don't insist on using a feature for something other
than it was intended for.  At one point I was running my primary monitor at
1280x1024, and the secondary at 800x600.  I guarantee you that I never lost
a window into any "dead zone"... because there wasn't one.

Notwithstanding that the current implementation allows you to do it with
dissimilar screens, Xinerama's primary purpose *is* to allow you to glue
together two *identical* physical screens into one logical one.  The
behavior of the feature as implemented and the fact that there's been no
change, implemented or even planned, since the release of it makes that
plain.

> If I was using it and maximized Netscape, and netscape spanned to the 17"
> monitor that is 2.5 feet away from the main monitor, and i couldn't even
> see the whole thing, because some of it would be in the dead area, the
> normal thing for me to do would be to grab netscape and resize it to fit
> my main screen.

Now, that's true enough.  However, if there's that much separation between
the two monitors, whyinhell are you running things as though they were
touching each other?  That's what Xinerama does, you know... makes them
touch logically, if not physically.

If I enable Xinerama, then *yes* I expect that exact behavior, because I
would have a reason for turning the feature on in the first place.
Otherwise, whyinhell do the two screens have any sort of connection with
each other?

> Now it would be nice if that had happened automatically.

I don't need it to happen automatically.  In my default configuration,
that's all that CAN happen.

> > Anything else is the window manager trying to do my thinking for me.
> 
> Heh. So what is the window manager doing the rest of the time? Doing a
> better job at /guessing/ what your thinking is?

Nope.  It's doing exactly what it's supposed to do... manage windows within
the boundaries of a screen.  Note that I don't differentiate between a
*physical* screen and a *logical* one... because there shouldn't *be* any
difference.  Using Xinerama *guarantees* you that there *isn't* any
difference.

Your way means that it's trying to guess what I intended.  And more than
likely getting it wrong.  Either that, or it's guaranteed to *not* do what
I intended.

> You can always fork blackbox, you can always rip out any code you don't
> like, you can always code your own, etc. etc. etc.. There are about 2-3
> people in here who share your opinions, and you all can always
> ./configure --without-xinerama.

Or *you* can './configure --with-odd-behavior' if you like.  Yours is the
non-standard, non-specified behavior, not mine.  I *always* have real
Xinerama support while you have to do something special to get your
non-standard behavior that you call Xinerama.

> But i'd hate it if perfectly good code didn't make it into blackbox
> because of some disgruntled group of users who like to argue for the sake
> of arguing.

And I'd hate it if something compromised a feature's expected (and correct)
behavior when I needed to use it.

-- 
Marc Wilson
[EMAIL PROTECTED]
http://members.cox.net/msw

Reply via email to