Re: Application-controlled window dragging
Carsten Haitzler (The Rasterman) <[email protected]>
| Newsgroups | gmane.comp.gnome.wm-spec |
|---|---|
| Organization | You expect me to be organized? |
| Message-ID | <[email protected]> |
On Fri, 5 Oct 2007 14:56:15 -0700 "Christian Hammond" <[email protected]> babbled: I'm more interested in why you want to limit the movement/resizes etc.? Are you sure this is the right thing to do? why do you need to bound the moves/resizes etc.? Maybe there is a better solution waiting here? > Hey everyone. > > I'm working on an experimental project at VMware that will require us to > have greater control over a window's position while the window manager is > dragging it. We'd need to basically give the application more control over > the movement of the window, yet allow the the window manager to apply > whatever effects and conditions it would typically apply while moving a > window. We'd need to let the application, for example, prevent the window > from going past a certain part of the screen, or to stay within a bounding > box, or to just prevent it from moving over another window. > > We need this for custom shaped windows without standard window decorations. > Right now, we go the xmms, etc. route and listen to mouse events and > reposition the window, but 1) we won't be able to move off the left side of > the screen on Metacity (as Metacity seems to only allow that when it's > moving the window) and 2) we won't get any window manager effects when > moving (such as wobbly windows). > > Ideally, to allow the greatest flexibility, I'd like to see messages similar > to _NET_WM_MOVERESIZE that performs any effects the window manager would > normally use with a moving window, except instead of grabbing the mouse, the > application would have the responsibility of listening to mouse events and > moving the window. To the user, it would look like the window is moving > normally, but the application would be in full control of the move > operation. > > There would be two messages, one for beginning the operation, and one for > ending it. The _BEGIN operation would be fairly similar to > _NET_WM_MOVERESIZE, though without the button parameter (I don't think it'd > be needed)? The _END would merely finalize the _BEGIN operation. It'd be the > equivalent of releasing the mouse button used to drag the window. > > Another option would be to introduce two new flags for the existing > _NET_WM_MOVERESIZE that would initiate and finalize this operation. Maybe > this is the right thing to do, so long as there's a way we can detect > whether this is supported from the application. > > Thoughts? > > Christian > > -- > Christian Hammond - [email protected] > VMware, Inc. > -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- The Rasterman (Carsten Haitzler) [email protected] 裸好多 Tokyo, Japan (東京 日本) _______________________________________________ wm-spec-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/wm-spec-list