[mediaqueries4] Differentiating touchscreen+mouse from touchscreen only scenarios

Sorry to revive this old thread.  I've had some people request that we
provide a mechanism in Chromium to differentiate "coarse and fine" primary
pointer scenarios from "coarse only" ones (crbug.com/174553).  I think the
argument really boils down to feeling that when there are multiple
pointers, the application should be in charge (or at least part of the
decision) in determining which to consider primary, rather than the UA.  Of
course they can do this today by responding to events (i.e. when a touch is
actually seen, morph the UI or prompt to switch modes), but it's nicer to
seed the decision with a good guess.

For example, for sites that have a functionally-reduced touchscreen version
and a more powerful mouse-based version - they'd prefer to give users to
the mouse version if it's at all possible for them to use it (and that's
probably what users would prefer too).  Whereas for cases where the UI is
almost the same but just a little large by default when a touchscreen is in
use, it makes sense to default to the coarse mode.

I think there's a legitimate argument here.  I'm not sure how best to
address it though.  I assume we don't want to allow a feature to take on
multiple values, right?  We could replace the 'pointer' feature with a set
of 2-3 boolean features (fine-pointer, coarse-pointer, no-pointer), but
that would be ugly.

Rick


On Sun, Dec 30, 2012 at 4:16 PM, Florian Rivoal <florian@rivoal.net> wrote:

> On Wed, 12 Dec 2012 21:38:56 +0100, Sylvain Galineau <
> sylvaing@microsoft.com> wrote:
>
>  > The UA picks the lowest resolution pointer available, right? A Surface
>>> > with its type cover or a laptop with a touch screen have both coarse
>>> and
>>> fine pointers.
>>>
>>
> &
>
>  I really have no idea how the device would know which one to pick, and
>> that
>> sounds disturbing to me: when the device's expectation changes then my app
>> layout would suddenly reflow?
>>
>
> I am a bit late to the conversation, but here is how I envisioned it when
> I wrote it up.
>
> First, let's quote what I wrote, it may not be very clear, but it is
> actually
> intended to provide some guidance over this:
>
> "If a device has multiple input mechanisms, it is recommended that the UA
> reports the characteristics of the least capable pointing device of the
> primary input mechanisms."
>
> So as you said, the UA picks the lowest resolution, but not necessarily of
> all input devices, just of the primary ones. By primary, I mean the normal
> way to interact with the device.
>
> This media feature does not indicate that the user will never be able to
> click accurately, only that it is inconvenient for him to do so. If you
> require accurate clicks when the MQ said 'coarse', you may be forcing the
> user to zoom, or you may be forcing him to fetch his optional blue-tooth
> mouse from across the room.
>
> Whether an input mechanism is primary or not is a subjective call from the
> UA vendors. In a bunch of cases, it should be obvious, and then of course,
> there is a grey area in the middle. My intention was to leave it up to
> vendors, as they know best how they know better than spec writers the UI
> paradigm of their device.
>
> On an old fashioned tablet-pc (this kind: http://en.wikipedia.org/wiki/**
> Microsoft_Tablet_PC <http://en.wikipedia.org/wiki/Microsoft_Tablet_PC>),
> you may consider the touch screen to be a secondary input device when the
> laptop is open. As you are then faced with the good old mouse driven UI,
> the touch screen is not expected to be the normal way to use the device. If
> you fold it to tablet form, then the touch screen becomes the normal way to
> drive the device, and it would determine the media query.
>
> On the other hand, on a Microsoft Surface, I would expect (I might be
> wrong, having never used one) that even when the cover is connected, touch
> is still intended to be a completely normal way of interacting with the
> device. In that case, both the touch screen and the trackpad on the cover
> would be considered primary input devices. In order not to force the user
> away from one of them, the MQ could report 'coarse'. Alternatively, if
> Microsoft thought that pluging the cover in indicates that we should switch
> to some kind of laptop mode, and makes various adjustments across the UI to
> be more suitable to the pad than to the touch screen, then switching to
> 'fine' could be more appropriate.
>
> If you remove the mouse from a desktop computer (who needs a mouse when
> you know all the keyboard shortcuts), you'd switch from 'fine' to 'none'.
>
> Plugging a game controller on a pc, however inaccurate, would not change
> the MQ, as the controller is not the normal way to interact with computer,
> just an extra thing.
>
> I hope this clarifies what I had in mind. Does that sound reasonable?
>
>  - Florian
>
>

Received on Thursday, 11 April 2013 16:02:32 UTC