Ship overscroll-behavior to control overscroll behaviors. |
||||||||||||||||||||||
Issue descriptionChange description: Introduce a non-inherited CSS property scroll-boundary-behavior, that may be specified on each scrollable area. This decides the browser's behavior once a scroller has reached its full extent. Changes to API surface: scroll-boundary-behavior: propagate | contain | none Links: https://github.com/w3c/csswg-drafts/issues/769 Support in other browsers: Internet Explorer: Public Support https://discourse.wicg.io/t/generic-scroll-chaining-prevention-mechanism-or-expand-standardize-ms-scroll-chaining/1811/5?u=majidvp Firefox: No public signal Safari: No public signal ⛆ |
|
|
,
Feb 3 2017
This would be fantastic for FB as it's the main thing blocking us from making the wheel event passive.
,
Feb 16 2017
,
Apr 11 2017
Since this is an OWP launch bug, putting "ship" in the title instead of "implement". CSSWG has resolved to work on this via WICG: https://github.com/w3c/csswg-drafts/issues/769#issuecomment-293111694. Next step is probably for someone to copy Majid's justification from discourse into an explainer.md and create a new GitHub repo that we move to the WICG org.
,
Apr 19 2017
The repo is now live: https://github.com/WICG/scroll-boundary-behavior/issues Please contribution to the discussion. I'll start a spec draft in the repo after a bit more discussion (or lack of) has happened.
,
Apr 20 2017
I think the amount of the discussion that has happened in the CSSOM issue and WICG thread is enough for us to start the draft spec. I don't think without the detailed spec we will get any more feedback at this point.
,
Apr 20 2017
Thanks, I'll start a draft. I did file a few issues where input would help in writing the draft but I can start now: https://github.com/WICG/scroll-boundary-behavior/issues
,
Apr 26 2017
Draft is posted: https://wicg.github.io/scroll-boundary-behavior/
,
May 3 2017
,
May 3 2017
,
May 3 2017
,
May 3 2017
,
May 4 2017
,
Jun 6 2017
,
Jul 19 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/55ed8ccd43eadef318b5e7a6bcf2519b078b1213 commit 55ed8ccd43eadef318b5e7a6bcf2519b078b1213 Author: sunyunjia <sunyunjia@chromium.org> Date: Wed Jul 19 01:19:11 2017 Implement CSS: scroll-boundary-behavior. CSS: scroll-boundary-behavior allows developers to specify whether the scroll should be propagated to its ancestors. This is different from scroll latching, in the way that when latching is turned on, a gesture will be limited to a single element, but scroll-boundary-behavior will affect propagation when the latch is being targeted at the beginning of the gesture. This patch implements scroll-boundary-behavior: none, by cutting off the scroll chain when the scrollNode has the property, so the scroll will not be propagated. After this patch lands, we will implement scroll-boundary-behavior: contain, which controls overscroll UI affordance such as glow/bounce etc. BUG= 672921 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Review-Url: https://codereview.chromium.org/2769793002 Cr-Commit-Position: refs/heads/master@{#487702} [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/cc/blink/web_layer_impl.cc [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/cc/blink/web_layer_impl.h [add] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/cc/input/scroll_boundary_behavior.h [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/cc/layers/layer.cc [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/cc/layers/layer.h [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/cc/layers/layer_impl_test_properties.cc [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/cc/layers/layer_impl_test_properties.h [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/cc/trees/layer_tree_host_impl.cc [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/cc/trees/layer_tree_host_impl_unittest.cc [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/cc/trees/property_tree_builder.cc [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/cc/trees/scroll_node.cc [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/cc/trees/scroll_node.h [add] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/LayoutTests/fast/scroll-behavior/scroll-boundary-behavior.html [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/LayoutTests/webexposed/css-properties-as-js-properties-expected.txt [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/LayoutTests/webexposed/css-property-listing-expected.txt [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/Source/core/css/CSSProperties.json5 [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/Source/core/css/CSSValueKeywords.json5 [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/Source/core/css/ComputedStyleCSSValueMapping.cpp [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/Source/core/css/StylePropertySerializer.cpp [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/Source/core/css/parser/CSSParserFastPaths.cpp [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/Source/core/css/parser/CSSPropertyParser.cpp [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/Source/core/frame/UseCounter.cpp [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/Source/core/input/ScrollManager.cpp [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.h [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.json5 [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/Source/platform/graphics/GraphicsLayer.cpp [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/Source/platform/graphics/GraphicsLayer.h [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/Source/web/AssertMatchingEnums.cpp [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/public/platform/WebLayer.h [add] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/third_party/WebKit/public/platform/WebScrollBoundaryBehavior.h [modify] https://crrev.com/55ed8ccd43eadef318b5e7a6bcf2519b078b1213/tools/metrics/histograms/enums.xml
,
Aug 31 2017
,
Sep 6 2017
,
Sep 12 2017
Our users hate setting this flag daily, admin console needs to be able to push this.
,
Sep 12 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/56279196a0b5a130d32c3cdb3ef4fc0deac79f2b commit 56279196a0b5a130d32c3cdb3ef4fc0deac79f2b Author: Eric Willigers <ericwilligers@chromium.org> Date: Tue Sep 12 22:58:39 2017 CSS: Serialize both scroll-boundary-behavior words scroll-boundary-behavior is a shorthand containing scroll-boundary-behavior-x and scroll-boundary-behavior-y. If only one value is specified, the second value defaults to the same value. Spec: https://wicg.github.io/scroll-boundary-behavior/#scroll-boundary-behavior-properties BUG= 672921 Change-Id: Ib924802ac441f0ddbe9d1f360c7d9d91ff5b80c6 Reviewed-on: https://chromium-review.googlesource.com/662480 Reviewed-by: Majid Valipour <majidvp@chromium.org> Commit-Queue: Eric Willigers <ericwilligers@chromium.org> Cr-Commit-Position: refs/heads/master@{#501437} [add] https://crrev.com/56279196a0b5a130d32c3cdb3ef4fc0deac79f2b/third_party/WebKit/LayoutTests/fast/css/getComputedStyle/getComputedStyle-scrollBoundaryBehavior-serialization.html [modify] https://crrev.com/56279196a0b5a130d32c3cdb3ef4fc0deac79f2b/third_party/WebKit/Source/core/css/ComputedStyleCSSValueMapping.cpp [modify] https://crrev.com/56279196a0b5a130d32c3cdb3ef4fc0deac79f2b/third_party/WebKit/Source/core/css/StylePropertySerializer.cpp
,
Sep 12 2017
This issue has been automatically relabelled type=task because type=launch-owp issues are now officially deprecated. The deprecation is because they were creating confusion about how to get launch approvals, which should be instead done via type=launch issues. We recommend this issue be used for implementation tracking (for public visibility), but if you already have an issue for that, you may mark this as duplicate. For more details see here: https://docs.google.com/document/d/1JA6RohjtZQc26bTrGoIE_bSXGXUDQz8vc6G0n_sZJ2o/edit For any questions, please contact owencm, sshruthi, larforge
,
Sep 14 2017
re #18 - Runtime enabled experimental feature flags are not really meant to be used in production. In this case the feature is being planned to be in M63. I am not sure what is your usecase but while you are waiting for that release to hit stable, it may be possible to use alternative workarounds for it.
,
Sep 19 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/20e1cdce61d72f5540aa8175bc838f3e20aa2e4f commit 20e1cdce61d72f5540aa8175bc838f3e20aa2e4f Author: Majid Valipour <majidvp@chromium.org> Date: Tue Sep 19 19:06:49 2017 Turn ScrollBoundaryBehavior runtime feature on by default Blink intent-to-ship: https://groups.google.com/a/chromium.org/d/msg/blink-dev/OqBNF2efmFA/3ByBUKyaCgAJ Draft Specification: https://wicg.github.io/scroll-boundary-behavior/ Bug: 672921 Change-Id: I18b1475def2346faeb60aa46085328f4d60f8470 Reviewed-on: https://chromium-review.googlesource.com/663624 Commit-Queue: Majid Valipour <majidvp@chromium.org> Reviewed-by: Chris Harrelson <chrishtr@chromium.org> Cr-Commit-Position: refs/heads/master@{#502907} [modify] https://crrev.com/20e1cdce61d72f5540aa8175bc838f3e20aa2e4f/third_party/WebKit/LayoutTests/virtual/stable/webexposed/css-properties-as-js-properties-expected.txt [modify] https://crrev.com/20e1cdce61d72f5540aa8175bc838f3e20aa2e4f/third_party/WebKit/LayoutTests/virtual/stable/webexposed/css-property-listing-expected.txt [modify] https://crrev.com/20e1cdce61d72f5540aa8175bc838f3e20aa2e4f/third_party/WebKit/Source/platform/runtime_enabled_features.json5
,
Nov 6 2017
M63 stable launch is coming soon and this feature is targeted for M63 Stable, please have cross functional bits flipped ASAP. Thank you.
,
Nov 7 2017
,
Nov 14 2017
,
Nov 15 2017
So is this overscroll-behavior or scroll-boundary-behavior? Is it going to be shipped in M63?
,
Nov 15 2017
Yes, this is renamed from scroll-boundary-behavior and is going to be shipped in M63.
,
Nov 27 2017
,
Mar 14 2018
,
Mar 14 2018
,
Mar 14 2018
|
|||||||||||||||||||
►
Sign in to add a comment |
||||||||||||||||||||||
Comment 1 by dtapu...@chromium.org
, Jan 6 2017