Re: Application-controlled window dragging
- From: Havoc Pennington <hp redhat com>
- To: Christian Hammond <chipx86 chipx86 com>
- Cc: wm-spec-list gnome org
- Subject: Re: Application-controlled window dragging
- Date: Sat, 06 Oct 2007 12:01:07 -0400
Hi,
Christian Hammond wrote:
The thing to keep in mind is that there are several applications that
already bypass the window manager's moving logic and implement it
themselves. XMMS is a good example because of how it deals with moving
multiple windows simultaneously and binds windows together when they
come in contact.
FWIW I think there was some past discussion (here, or maybe in bugzilla?
it was years ago) of XMMS. One suggestion I remember was some kind of
"glue" hints - something like "stick this window to this other window on
these edges"
In any case, if you develop a prototype patch for some WMs and post the
patches, that might help illustrate the impact of this proposal in terms
of code complexity and maintenance headaches.
I'd strongly prefer some kind of semantic hints to an "escape hatch"
though. Escape hatches are both very open to abuse, and hard for WM
authors to maintain since it's unclear when to honor them or what the
apps using them are trying to accomplish, so smart default behavior (or
even sane behavior at all) becomes a big headache to figure out. When
making a behavior decision for an "escape hatched" window, it's never
clear whether it will break some apps or what, because you just don't
know what those apps are doing.
App authors always want an escape hatch so they can just proceed to do
their thing with no further WM involvement. But the problem is that the
screen is a shared resource. The WM and the X server and associated
specs are needed, along with some amount of restrictive policy, because
multiple apps need to be coordinated.
So ultimately apps just can't do arbitrary things. UI decisions have
been made about how the desktop as a whole works, and often if an app
wants to do something really original, the desktop as a whole needs to
be modified or revisited.
It's just like global keybindings; some resources (and decisions) are
inherently global and can't be made by apps in isolation.
My suspicion is that an app like VMWare would strongly benefit from
being designed together with the whole desktop; it is effectively an
idea similar to workspaces, and is in part allocating a shared global
resource (screen and keyboard) between the virtual and physical machine.
In my usage of vmware, I might like to essentially have the VM be an
extra workspace, for example.
Of course, since VMWare is cross-platform and not part of the desktop,
this is challenging. But perhaps it could still be done - essentially
hardcode the idea of a "VM manager" and "VM app" in the panel, WM, etc.
and do smart things there. It could be pluggable for VMWare vs.
alternatives.
I would rather have virtual-machine-specific hints than "escape hatch"
hints.
Sorry to speak abstractly and philosophically, but since I don't know
the concrete details in this case ;-)
Havoc
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]