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

Issue 14328027: Route input-related IPCs through compositor thread filter to preserve order (Closed)

Created:
7 years, 8 months ago by jamesr
Modified:
7 years, 8 months ago
CC:
chromium-reviews, joi+watch-content_chromium.org, darin-cc_chromium.org, jam, apatrick_chromium, piman, ananta, cpu_(ooo_6.6-7.5)
Visibility:
Public.

Description

Route input-related IPCs through compositor thread filter to preserve order The compositor thread input filter redirects some IPC messages in the render process to the compositor thread for handling in order to accelerate scrolling, pinch zooming, and related gestures. IPC messages that the compositor thread cannot handle are redirected to the main thread for normal processing. This thread hop can result in the IPC messages being received on the render process main thread in a different order than they were sent from the browser. This can break things for input-related messages, for instance changing the order of a MouseCaptureLost and MouseUp event can result in the mouse up not being delivered to the capturing element. This forces a compositor thread hop to preserve order for a set of IPC types that appear (mostly by inspection and guessing) to need their order preserved relative to input events. BUG=233365, 231532 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=195329

Patch Set 1 #

Total comments: 1

Patch Set 2 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+148 lines, -44 lines) Patch
M content/renderer/gpu/input_event_filter.cc View 1 2 chunks +36 lines, -1 line 0 comments Download
M content/renderer/gpu/input_event_filter_unittest.cc View 4 chunks +112 lines, -43 lines 0 comments Download

Messages

Total messages: 9 (0 generated)
jamesr
This fixes the referenced bug and appears to work, but the set of things filtered ...
7 years, 8 months ago (2013-04-19 00:34:48 UTC) #1
piman
lgtm
7 years, 8 months ago (2013-04-19 00:43:29 UTC) #2
darin (slow to review)
LGTM https://codereview.chromium.org/14328027/diff/1/content/renderer/gpu/input_event_filter.cc File content/renderer/gpu/input_event_filter.cc (right): https://codereview.chromium.org/14328027/diff/1/content/renderer/gpu/input_event_filter.cc#newcode148 content/renderer/gpu/input_event_filter.cc:148: // Save this message for later, in case ...
7 years, 8 months ago (2013-04-19 06:13:27 UTC) #3
darin (slow to review)
I think a separate IPC class might still be handy. If those were defined in ...
7 years, 8 months ago (2013-04-19 06:15:19 UTC) #4
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jamesr@chromium.org/14328027/7001
7 years, 8 months ago (2013-04-19 19:51:10 UTC) #5
commit-bot: I haz the power
Retried try job too often on mac_rel for step(s) base_unittests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=mac_rel&number=119861
7 years, 8 months ago (2013-04-19 21:05:54 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jamesr@chromium.org/14328027/7001
7 years, 8 months ago (2013-04-19 22:57:29 UTC) #7
jamesr
On 2013/04/19 21:05:54, I haz the power (commit-bot) wrote: > Retried try job too often ...
7 years, 8 months ago (2013-04-19 22:57:38 UTC) #8
commit-bot: I haz the power
7 years, 8 months ago (2013-04-19 23:16:52 UTC) #9
Message was sent while issue was closed.
Change committed as 195329

Powered by Google App Engine
This is Rietveld 408576698