Re: Mouse Lock

On Fri, Aug 12, 2011 at 1:19 PM, Jonas Sicking <jonas@sicking.cc> wrote:
> On Fri, Aug 12, 2011 at 9:53 AM, Tab Atkins Jr. <jackalmage@gmail.com> wrote:
>> On Thu, Aug 11, 2011 at 10:14 PM, Robert O'Callahan
>> <robert@ocallahan.org> wrote:
>>> If your implementation had to warp the mouse cursor on Windows to get
>>> accurate delta information, the mouse position in the existing mouse
>>> events would no longer be very meaningful and a new event type seemed
>>> more logical. But assuming Klaas is right, we no longer need to worry
>>> about this. It seems we can unconditionally add delta information to
>>> existing mouse events. So I withdraw that comment.
>>
>> I suspect that, while locked, we still don't actually want to expose
>> the various x and y properties for the mouse.  I agree with Vincent
>> that the *other* mouseevent properties are all useful, though, and
>> that the delta properties are really useful in non-mouselock
>> situations.
>>
>> We should just zero all the position information.  Even if we can
>> switch all OSes to a delta mode, the position will be arbitrary and
>> meaningless.  This seems easier than making a new type of mouse event
>> that exposes all of normal mouse events except the position, and
>> ensuring that the two stay in sync when we add new info.
>
> If we expose delta information in all mouse events, which seems like
> it could be a good idea, then what is the usecase for the success
> callback for mouselock?
>
> I was under the impression that that was so that the page could start
> treating mousemove events differently, but if all mousemove events
> have deltas, then that won't be needed, no?

No, it's still definitely needed.  You can't do an FPS with non-locked
deltas; the user will end up moving their mouse off the screen.

The use-cases for delta-without-mouselock are pretty separate from
those for delta-within-mouselock.

~TJ

Received on Friday, 12 August 2011 20:54:57 UTC