New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.
Starred by 5 users

Issue metadata

Status: Fixed
Owner:
Closed: Mar 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 3
Type: Bug

Blocked on:
issue 689527



Sign in to add a comment
link

Issue 654861: Consider dropping support for hover:on-demand

Reported by rbyers@chromium.org, Oct 11 2016 Project Member

Issue description

hover and any-hover media queries apparently no longer support "on-demand":

https://drafts.csswg.org/mediaqueries-4/#hover
https://lists.w3.org/Archives/Public/www-style/2016Feb/0041.html

I'm kinda surprised this was removed from the spec without (as far as I can tell) any bug being filed on blink (or me hearing about it via some other channel).

That said I always thought on-demand was a little silly, I agree it's better to just call such devices hover:none.  I just don't know if it's still going to be web compatible to make that change.

From twitter discussion: https://twitter.com/patrick_h_lauke/status/785909764362567680
 

Comment 1 by rbyers@chromium.org, Oct 11 2016

Though IIRC mobile Safari never used the "on-demand" value.  If that's the case, we can probably safely change to copy them.

Comment 3 by splinte...@gmail.com, Oct 11 2016

Confirming that Safari (currently, and in at least the last version as well) reports "none" rather than "on-demand" - using https://patrickhlauke.github.io/touch/pointer-hover-any-pointer-any-hover/ to test

Comment 4 by mustaq@chromium.org, Oct 11 2016

A quick blind /text search/ for "on-demand" in httparchive:har.2016_05_15 shows 8236 matches in 18738746 pages (<0.044%). The real counts should be much lower I believe since "on-demand" is a well-known English term.

Comment 5 by shans@chromium.org, Oct 11 2016

Labels: Hotlist-Interop
Status: Available (was: Untriaged)

Comment 6 by shans@chromium.org, Oct 11 2016

Components: -Blink>CSS
I've restricted the component to Blink>Input for now - I think that team needs to make the call about whether to drop support or not.

Feel free to redirect to Blink>CSS for (un?)implementation once the decision's been made.

Comment 7 by splinte...@gmail.com, Oct 12 2016

Filed bug against Edge https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/9308676/.

Firefox doesn't currently/yet support CSS4 MQ Interaction Media Features at all, it seems.

Comment 8 by splinte...@gmail.com, Oct 12 2016

For completeness, added a note to bugzilla for Firefox https://bugzilla.mozilla.org/show_bug.cgi?id=1035774

Comment 9 by rbyers@chromium.org, Oct 12 2016

Cc: dtapu...@chromium.org
Perhaps we could do this in two stages:

1) Make hover:none true for touchscreens matching Safari.  I think this is low risk, probably something we can just do easily now (no intent etc.).  At the same time add usage metrics for hover:on-demand.

2) Deprecate/remove support for hover:on-demand based on usage data.  If metrics show non-trivial usage, we could perhaps consider making it an alias for "none".

Comment 10 by mustaq@chromium.org, Feb 3 2017

Owner: mustaq@chromium.org
Status: Started (was: Available)

Comment 12 by mustaq@chromium.org, Feb 7 2017

Labels: ReleaseBlock-Beta M-57
We will merge the counter to M57 and then consider full removal from M58/59.

Comment 13 by gov...@chromium.org, Feb 7 2017

This bug is reported as Release Block beta for this Wednesday (02/08/17) Beta release. Please have the fix ready and request a merge to M57 ASAP. Fix has to be merged to M57 branch 2987 latest by 5:00 PM PT tomorrow, Tuesday (02/07/17) in order to make it to this week Beta cut. Thank you.

Also if this is a Beta blocker, shouldn't be P3, right?

Comment 14 by mustaq@chromium.org, Feb 7 2017

Blockedon: 689527

Comment 15 by mustaq@chromium.org, Feb 7 2017

Labels: -ReleaseBlock-Beta -M-57 M-58
I will merge only the change in #c11 above. I have created  Issue 689527  to isolate the merge request.

Comment 16 by bugdroid1@chromium.org, Feb 8 2017

Project Member

Comment 17 Deleted

Comment 18 by mustaq@chromium.org, Mar 6 2017

Correction to my last (deleted) post:

Here are our observations for the usage of hover:on-demand in the wild:

- As of today, we have UseCounter data from Beta and Dev until Mar 4 which suggests that ~0.02% of page visits parses CSSValueOnDemand.

- In nerdydata.com, “hover *: *on-demand” regexp search finds a single case (adesta.de, rank: #333357).

- In HttpArchive 2015-01-15 data, there are ~35 sites matching r"hover:\s*on-demand". Here are the sites along with their approx alexa.com ranking:
https://docs.google.com/a/chromium.org/spreadsheets/d/1NXWEukLpt2zm8Ocu7-jTLTAONUubzj2AZzbtusi5slY/edit?usp=sharing

Comment 19 by bugdroid1@chromium.org, Mar 23 2017

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/344035e6942d313099c3ceb741f2eb8231de1a2c

commit 344035e6942d313099c3ceb741f2eb8231de1a2c
Author: mustaq <mustaq@chromium.org>
Date: Thu Mar 23 21:20:16 2017

Drop hover:on-demand support & let touch-screens report "none" instead.

The "hover" and "any-hover" media query features was originally speced to
have three possible values {"none", "on-demand", "hover"}. The "on-demand"
value has been removed from the spec recently:
  https://drafts.csswg.org/mediaqueries-4/#hover
so we are considering removing support for this value.

Through this CL, chromium drops the support for the "on-demand" value.
Touch-screens will now report "none" instead to match mobile Safari.

Blink intent thread: https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/-sTmxMpl6iI

BUG= 654861 

Review-Url: https://codereview.chromium.org/2673963002
Cr-Commit-Position: refs/heads/master@{#459223}

[modify] https://crrev.com/344035e6942d313099c3ceb741f2eb8231de1a2c/content/public/common/web_preferences.cc
[modify] https://crrev.com/344035e6942d313099c3ceb741f2eb8231de1a2c/third_party/WebKit/LayoutTests/fast/media/mq-hover-expected.txt
[modify] https://crrev.com/344035e6942d313099c3ceb741f2eb8231de1a2c/third_party/WebKit/LayoutTests/fast/media/mq-hover.html
[modify] https://crrev.com/344035e6942d313099c3ceb741f2eb8231de1a2c/third_party/WebKit/Source/core/css/MediaQueryEvaluator.cpp
[modify] https://crrev.com/344035e6942d313099c3ceb741f2eb8231de1a2c/third_party/WebKit/Source/core/css/MediaQueryExp.cpp
[modify] https://crrev.com/344035e6942d313099c3ceb741f2eb8231de1a2c/third_party/WebKit/Source/core/testing/InternalSettings.cpp
[modify] https://crrev.com/344035e6942d313099c3ceb741f2eb8231de1a2c/third_party/WebKit/Source/web/DevToolsEmulator.cpp
[modify] https://crrev.com/344035e6942d313099c3ceb741f2eb8231de1a2c/third_party/WebKit/Source/web/tests/data/device_emulation.html
[modify] https://crrev.com/344035e6942d313099c3ceb741f2eb8231de1a2c/third_party/WebKit/public/platform/PointerProperties.h
[modify] https://crrev.com/344035e6942d313099c3ceb741f2eb8231de1a2c/ui/android/java/src/org/chromium/ui/base/TouchDevice.java
[modify] https://crrev.com/344035e6942d313099c3ceb741f2eb8231de1a2c/ui/base/touch/touch_device.h
[modify] https://crrev.com/344035e6942d313099c3ceb741f2eb8231de1a2c/ui/base/touch/touch_device_android.cc
[modify] https://crrev.com/344035e6942d313099c3ceb741f2eb8231de1a2c/ui/base/touch/touch_device_linux.cc
[modify] https://crrev.com/344035e6942d313099c3ceb741f2eb8231de1a2c/ui/base/touch/touch_device_win.cc

Comment 20 by mustaq@chromium.org, Mar 24 2017

Status: Fixed (was: Started)

Comment 21 by mustaq@chromium.org, Mar 24 2017

Cc: rbyers@chromium.org
 Issue 699114  has been merged into this issue.

Comment 22 by mustaq@chromium.org, Mar 28 2017

Labels: -M-58 M-59
This will be exposed in M59.

Sign in to add a comment