_NET_MOVE_RESIZE [was wm-spec 1.9f]



>>
>>Remaining comments:
>>_NET_MOVE_RESIZE still has a PDW comment - "what are the click
co-cordinates
>>relative to ?" This needs to be answered. Implementers ?

<snip>

>  There is a still simpler approach. IIRC _NET_MOVE_RESIZE was designed
>to allow clients to initiate a move. Client here I believe intends
>mainly "widget set" not any client. Using this a widget set / client
>could add a grip to (e.g.) the bottom right corner to enable easier
>resizing etc, rather than having to grab the very corner.

Aha, ok, I misread it. That makes sense.

>
>In order to maintain WM consistency the client would not actually handle
>the move it would just send this message. The WM could then track the
>mouse buttons / pointer movement, and handle it as a WM initiated move.

The only comment here is that we should add sentence to specs that states
that client MUST release all the grabs on Pointer events, prior to sending
such message. Otherwise WM will not be able to perform move/resize.
Of course experienced developers should understand it already, but you
never
know who'll be writing apps.

>
>Perhaps the spec needs additional text to this effect. (Or perhaps I'm
>wrong!)

well, now when I read it it all is pretty clear :)

>
>I'm guessing now, but the click coordinates are probably client (i.e.
>relative to the top left of the client window), as it's client
>initiated. Or does this not make sense from the implementation point of
>view ?

It may actually be better to report it in root coordinates, as normal
practice for window manager would be to use root coordinates of
pointer event for move/resize. At the same time it does not add any
pressure
on clients, and eliminates possible misunderstanding and errors,
when pointer event is reported for one of the nested subwindows,
and client forgets to translate it into its topmost window's coordinates.

All said means that we can leave specs as it is.

>
>Julian

Sasha Vasko






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]