Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(438)

Issue 2471523002: Make touch events uncancelable during fling when they are on the current active scroll layer (Closed)

Created:
4 years, 1 month ago by lanwei
Modified:
4 years ago
CC:
blink-reviews, cc-bugs_chromium.org, chromium-reviews, darin-cc_chromium.org, dtapuska+chromiumwatch_chromium.org, jam, mlamouri+watch-content_chromium.org, tdresser+watch_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Make touch events uncancelable during fling when they are on the current active scroll layer In the previous patch https://codereview.chromium.org/2233543002/, we missed to check if the touch events which we will make uncancelable when there is an active fling are on the same layer as the current active scroll layer or its descendants. Now, we add the scroll layer check here to minimize the breaking cases and also match with other browsers' behavior, such as Safaris and Firefox. This code has two parts: 1. Delete the is_fling flag we used on https://codereview.chromium.org/1923973002/ to indicate if the actice fling is happening. 2. Add check to the touch start if it hits on the same layer as the current active scroll layer. BUG=595327 Committed: https://crrev.com/53c12368f78425a27d592f47f814029cf2edaae7 Cr-Commit-Position: refs/heads/master@{#434917}

Patch Set 1 : fling layer #

Patch Set 2 : clean up code #

Total comments: 7

Patch Set 3 : fling layer #

Total comments: 5

Patch Set 4 : fling layer #

Total comments: 6

Patch Set 5 : Rename functions #

Total comments: 4

Patch Set 6 : rename both functions #

Total comments: 12

Patch Set 7 : fling layer #

Total comments: 20

Patch Set 8 : fling layer #

Total comments: 4

Patch Set 9 : fling layer #

Total comments: 2

Patch Set 10 : Rename variable #

Total comments: 2

Patch Set 11 : Rename #

Total comments: 2

Patch Set 12 : Reword the comments #

Patch Set 13 : fling layer #

Unified diffs Side-by-side diffs Delta from patch set Stats (+155 lines, -33 lines) Patch
M cc/input/input_handler.h View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +11 lines, -2 lines 0 comments Download
M cc/trees/layer_tree_host_impl.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -1 line 0 comments Download
M cc/trees/layer_tree_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 5 chunks +33 lines, -5 lines 0 comments Download
M cc/trees/layer_tree_host_impl_unittest.cc View 1 2 3 4 5 6 7 8 9 10 3 chunks +75 lines, -4 lines 0 comments Download
M content/renderer/input/input_handler_manager.cc View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M ui/events/blink/input_handler_proxy.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +12 lines, -4 lines 0 comments Download
M ui/events/blink/input_handler_proxy_unittest.cc View 1 2 3 4 5 6 7 8 9 10 6 chunks +21 lines, -17 lines 0 comments Download

Messages

Total messages: 196 (150 generated)
lanwei
Could you please take a look, while I am adding a test to test layer ...
4 years, 1 month ago (2016-11-04 14:11:32 UTC) #36
lanwei
bokan@, could you please take a look at cc/trees/layer_tree_host_impl* to see of the layer check ...
4 years, 1 month ago (2016-11-04 15:14:04 UTC) #41
tdresser
You mention the code has two parts. Can we land them in separate patches? I've ...
4 years, 1 month ago (2016-11-04 17:15:20 UTC) #47
bokan
https://codereview.chromium.org/2471523002/diff/140001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2471523002/diff/140001/cc/trees/layer_tree_host_impl.cc#newcode166 cc/trees/layer_tree_host_impl.cc:166: for (; scroll_tree.parent(scroll_node); This will avoid comparing against the ...
4 years, 1 month ago (2016-11-04 19:32:55 UTC) #50
lanwei
https://codereview.chromium.org/2471523002/diff/140001/cc/input/input_handler.h File cc/input/input_handler.h (right): https://codereview.chromium.org/2471523002/diff/140001/cc/input/input_handler.h#newcode194 cc/input/input_handler.h:194: // consuming touch events that started at |viewport_point|. On ...
4 years, 1 month ago (2016-11-11 18:22:45 UTC) #62
bokan
https://codereview.chromium.org/2471523002/diff/190001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2471523002/diff/190001/cc/trees/layer_tree_host_impl.cc#newcode159 cc/trees/layer_tree_host_impl.cc:159: bool isAncestor(LayerImpl* child, LayerImpl* scroll_ancestor) { Lets replace HasScrollAncestor ...
4 years, 1 month ago (2016-11-11 20:41:53 UTC) #65
lanwei
weiliangc@chromium.org: Please review changes in cc/ do you think we should replace the HasScrollAncestor function ...
4 years, 1 month ago (2016-11-12 02:17:15 UTC) #69
bokan
https://codereview.chromium.org/2471523002/diff/230001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2471523002/diff/230001/cc/trees/layer_tree_host_impl.cc#newcode158 cc/trees/layer_tree_host_impl.cc:158: bool isAncestor(LayerImpl* child, LayerImpl* ancestor) { This should be ...
4 years, 1 month ago (2016-11-14 18:32:49 UTC) #75
weiliangc
https://codereview.chromium.org/2471523002/diff/230001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2471523002/diff/230001/cc/trees/layer_tree_host_impl.cc#newcode158 cc/trees/layer_tree_host_impl.cc:158: bool isAncestor(LayerImpl* child, LayerImpl* ancestor) { On 2016/11/14 at ...
4 years, 1 month ago (2016-11-14 19:02:55 UTC) #76
bokan
https://codereview.chromium.org/2471523002/diff/230001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2471523002/diff/230001/cc/trees/layer_tree_host_impl.cc#newcode158 cc/trees/layer_tree_host_impl.cc:158: bool isAncestor(LayerImpl* child, LayerImpl* ancestor) { On 2016/11/14 19:02:55, ...
4 years, 1 month ago (2016-11-14 19:04:32 UTC) #77
weiliangc
https://codereview.chromium.org/2471523002/diff/230001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2471523002/diff/230001/cc/trees/layer_tree_host_impl.cc#newcode158 cc/trees/layer_tree_host_impl.cc:158: bool isAncestor(LayerImpl* child, LayerImpl* ancestor) { On 2016/11/14 at ...
4 years, 1 month ago (2016-11-14 20:57:21 UTC) #78
lanwei
https://codereview.chromium.org/2471523002/diff/230001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2471523002/diff/230001/cc/trees/layer_tree_host_impl.cc#newcode158 cc/trees/layer_tree_host_impl.cc:158: bool isAncestor(LayerImpl* child, LayerImpl* ancestor) { On 2016/11/14 20:57:20, ...
4 years, 1 month ago (2016-11-14 22:47:45 UTC) #79
weiliangc
https://codereview.chromium.org/2471523002/diff/230001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2471523002/diff/230001/cc/trees/layer_tree_host_impl.cc#newcode158 cc/trees/layer_tree_host_impl.cc:158: bool isAncestor(LayerImpl* child, LayerImpl* ancestor) { On 2016/11/14 at ...
4 years, 1 month ago (2016-11-15 15:32:35 UTC) #80
lanwei
bokan@, weiliangc@ could you please take another look, thanks?
4 years, 1 month ago (2016-11-15 18:25:26 UTC) #83
weiliangc
https://codereview.chromium.org/2471523002/diff/250001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2471523002/diff/250001/cc/trees/layer_tree_host_impl.cc#newcode167 cc/trees/layer_tree_host_impl.cc:167: if (scroll_node->owner_id == ancestor->id()) Another difference between this function ...
4 years, 1 month ago (2016-11-15 18:50:38 UTC) #84
bokan
https://codereview.chromium.org/2471523002/diff/250001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2471523002/diff/250001/cc/trees/layer_tree_host_impl.cc#newcode167 cc/trees/layer_tree_host_impl.cc:167: if (scroll_node->owner_id == ancestor->id()) On 2016/11/15 18:50:38, weiliangc wrote: ...
4 years, 1 month ago (2016-11-15 19:02:29 UTC) #85
weiliangc
https://codereview.chromium.org/2471523002/diff/250001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2471523002/diff/250001/cc/trees/layer_tree_host_impl.cc#newcode167 cc/trees/layer_tree_host_impl.cc:167: if (scroll_node->owner_id == ancestor->id()) On 2016/11/15 19:02:29, bokan wrote: ...
4 years, 1 month ago (2016-11-15 19:13:47 UTC) #86
bokan
On 2016/11/15 19:13:47, weiliangc wrote: > https://codereview.chromium.org/2471523002/diff/250001/cc/trees/layer_tree_host_impl.cc > File cc/trees/layer_tree_host_impl.cc (right): > > https://codereview.chromium.org/2471523002/diff/250001/cc/trees/layer_tree_host_impl.cc#newcode167 > ...
4 years, 1 month ago (2016-11-15 19:17:34 UTC) #87
weiliangc
https://codereview.chromium.org/2471523002/diff/250001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2471523002/diff/250001/cc/trees/layer_tree_host_impl.cc#newcode167 cc/trees/layer_tree_host_impl.cc:167: if (scroll_node->owner_id == ancestor->id()) On 2016/11/15 at 19:13:46, weiliangc ...
4 years, 1 month ago (2016-11-15 19:43:47 UTC) #88
bokan
On 2016/11/15 19:43:47, weiliangc wrote: > https://codereview.chromium.org/2471523002/diff/250001/cc/trees/layer_tree_host_impl.cc > File cc/trees/layer_tree_host_impl.cc (right): > > https://codereview.chromium.org/2471523002/diff/250001/cc/trees/layer_tree_host_impl.cc#newcode167 > ...
4 years, 1 month ago (2016-11-15 19:47:33 UTC) #89
lanwei
4 years, 1 month ago (2016-11-15 21:09:29 UTC) #97
weiliangc
cc/ LGTM
4 years, 1 month ago (2016-11-15 21:12:24 UTC) #98
bokan
Took a first pass through the rest of the patch https://codereview.chromium.org/2471523002/diff/290001/cc/input/input_handler.h File cc/input/input_handler.h (right): https://codereview.chromium.org/2471523002/diff/290001/cc/input/input_handler.h#newcode200 ...
4 years, 1 month ago (2016-11-15 22:42:40 UTC) #99
lanwei
https://codereview.chromium.org/2471523002/diff/290001/cc/input/input_handler.h File cc/input/input_handler.h (right): https://codereview.chromium.org/2471523002/diff/290001/cc/input/input_handler.h#newcode200 cc/input/input_handler.h:200: virtual EventListenerProperties DoTouchHandlersBlockScrollAt( On 2016/11/15 22:42:40, bokan wrote: > ...
4 years, 1 month ago (2016-11-16 21:13:29 UTC) #115
bokan
Looks good, mostly just some polish on tests. https://codereview.chromium.org/2471523002/diff/370001/cc/input/input_handler.h File cc/input/input_handler.h (right): https://codereview.chromium.org/2471523002/diff/370001/cc/input/input_handler.h#newcode108 cc/input/input_handler.h:108: enum ...
4 years, 1 month ago (2016-11-17 15:39:29 UTC) #118
lanwei
https://codereview.chromium.org/2471523002/diff/370001/cc/input/input_handler.h File cc/input/input_handler.h (right): https://codereview.chromium.org/2471523002/diff/370001/cc/input/input_handler.h#newcode108 cc/input/input_handler.h:108: enum TouchEventDisposition { On 2016/11/17 15:39:28, bokan wrote: > ...
4 years, 1 month ago (2016-11-18 00:54:08 UTC) #122
bokan
lgtm https://codereview.chromium.org/2471523002/diff/370001/cc/trees/layer_tree_host_impl_unittest.cc File cc/trees/layer_tree_host_impl_unittest.cc (right): https://codereview.chromium.org/2471523002/diff/370001/cc/trees/layer_tree_host_impl_unittest.cc#newcode9946 cc/trees/layer_tree_host_impl_unittest.cc:9946: CreateScrollableLayer(27, inner_size, root); On 2016/11/18 00:54:07, lanwei wrote: ...
4 years, 1 month ago (2016-11-18 18:41:36 UTC) #125
dtapuska
https://codereview.chromium.org/2471523002/diff/410001/cc/input/event_listener_properties.h File cc/input/event_listener_properties.h (left): https://codereview.chromium.org/2471523002/diff/410001/cc/input/event_listener_properties.h#oldcode24 cc/input/event_listener_properties.h:24: kBlockingAndPassive, I have a problem with this enum not ...
4 years, 1 month ago (2016-11-21 19:19:30 UTC) #126
lanwei
https://codereview.chromium.org/2471523002/diff/410001/cc/input/event_listener_properties.h File cc/input/event_listener_properties.h (left): https://codereview.chromium.org/2471523002/diff/410001/cc/input/event_listener_properties.h#oldcode24 cc/input/event_listener_properties.h:24: kBlockingAndPassive, On 2016/11/21 19:19:30, dtapuska wrote: > I have ...
4 years ago (2016-11-23 21:57:38 UTC) #146
dtapuska
On 2016/11/23 21:57:38, lanwei wrote: > https://codereview.chromium.org/2471523002/diff/410001/cc/input/event_listener_properties.h > File cc/input/event_listener_properties.h (left): > > https://codereview.chromium.org/2471523002/diff/410001/cc/input/event_listener_properties.h#oldcode24 > ...
4 years ago (2016-11-23 22:01:08 UTC) #147
tdresser
https://codereview.chromium.org/2471523002/diff/490001/ui/events/blink/input_handler_proxy.cc File ui/events/blink/input_handler_proxy.cc (right): https://codereview.chromium.org/2471523002/diff/490001/ui/events/blink/input_handler_proxy.cc#newcode938 ui/events/blink/input_handler_proxy.cc:938: bool maybe_passive_due_to_fling = false; What does this bool actually ...
4 years ago (2016-11-24 19:53:41 UTC) #148
lanwei
https://codereview.chromium.org/2471523002/diff/490001/ui/events/blink/input_handler_proxy.cc File ui/events/blink/input_handler_proxy.cc (right): https://codereview.chromium.org/2471523002/diff/490001/ui/events/blink/input_handler_proxy.cc#newcode938 ui/events/blink/input_handler_proxy.cc:938: bool maybe_passive_due_to_fling = false; On 2016/11/24 19:53:41, tdresser wrote: ...
4 years ago (2016-11-24 20:28:01 UTC) #153
tdresser
https://codereview.chromium.org/2471523002/diff/510001/cc/input/input_handler.h File cc/input/input_handler.h (right): https://codereview.chromium.org/2471523002/diff/510001/cc/input/input_handler.h#newcode110 cc/input/input_handler.h:110: HANDLER_ON_FLINGING_LAYER Same as previous comment - shouldn't this just ...
4 years ago (2016-11-24 20:33:38 UTC) #154
lanwei
4 years ago (2016-11-24 20:51:53 UTC) #159
lanwei
https://codereview.chromium.org/2471523002/diff/510001/cc/input/input_handler.h File cc/input/input_handler.h (right): https://codereview.chromium.org/2471523002/diff/510001/cc/input/input_handler.h#newcode110 cc/input/input_handler.h:110: HANDLER_ON_FLINGING_LAYER On 2016/11/24 20:33:38, tdresser wrote: > Same as ...
4 years ago (2016-11-28 06:20:23 UTC) #164
tdresser
LGTM % comment fix. https://codereview.chromium.org/2471523002/diff/530001/cc/input/input_handler.h File cc/input/input_handler.h (right): https://codereview.chromium.org/2471523002/diff/530001/cc/input/input_handler.h#newcode199 cc/input/input_handler.h:199: // |viewport_point|. This comment is ...
4 years ago (2016-11-28 14:18:48 UTC) #165
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2471523002/550001
4 years ago (2016-11-28 23:03:08 UTC) #172
commit-bot: I haz the power
Try jobs failed on following builders: linux_precise_blink_rel on master.tryserver.blink (JOB_FAILED, no build URL)
4 years ago (2016-11-28 23:09:48 UTC) #174
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2471523002/550001
4 years ago (2016-11-29 04:30:28 UTC) #176
commit-bot: I haz the power
Try jobs failed on following builders: linux_precise_blink_rel on master.tryserver.blink (JOB_FAILED, no build URL)
4 years ago (2016-11-29 04:31:51 UTC) #178
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2471523002/570001
4 years ago (2016-11-29 05:03:59 UTC) #181
commit-bot: I haz the power
Try jobs failed on following builders: linux_precise_blink_rel on master.tryserver.blink (JOB_FAILED, no build URL)
4 years ago (2016-11-29 05:05:00 UTC) #183
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2471523002/570001
4 years ago (2016-11-29 05:29:23 UTC) #190
commit-bot: I haz the power
Committed patchset #13 (id:570001)
4 years ago (2016-11-29 06:51:59 UTC) #193
commit-bot: I haz the power
Patchset 13 (id:??) landed as https://crrev.com/53c12368f78425a27d592f47f814029cf2edaae7 Cr-Commit-Position: refs/heads/master@{#434917}
4 years ago (2016-11-29 06:54:24 UTC) #195
lanwei
4 years ago (2016-12-01 22:44:18 UTC) #196
Message was sent while issue was closed.
https://codereview.chromium.org/2471523002/diff/530001/cc/input/input_handler.h
File cc/input/input_handler.h (right):

https://codereview.chromium.org/2471523002/diff/530001/cc/input/input_handler...
cc/input/input_handler.h:199: // |viewport_point|.
On 2016/11/28 14:18:47, tdresser wrote:
> This comment is confusing.
> 
> This doesn't indicate whether the page "should" suppress scrolling, only if
the
> page should have the opportunity to suppress scrolling.
> 
> Whether the page has a touch handler or not is equivalent to whether it has
the
> opportunity to prevent scrolling, and this comment phrases it as though this
is
> separate information.
> 
> How is this comment different from the previous comment?

Done.

Powered by Google App Engine
This is Rietveld 408576698