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

Issue 8089002: Input event filtering and compositor thread setup. (Closed)

Created:
9 years, 2 months ago by darin (slow to review)
Modified:
9 years, 2 months ago
Reviewers:
jamesr, jam
CC:
chromium-reviews, joi+watch-content_chromium.org, darin-cc_chromium.org, dpranke+watch-content_chromium.org, jam, apatrick_chromium
Visibility:
Public.

Description

Input event filtering and compositor thread setup. There are two new classes: InputEventFilter and CompositorThread. The first sets up a MessageFilter designed to route input events to the compositor thread. CompositorThread sets up the compositor thread and it has a InputEventFilter. When we pass an event to the CompositorThread, we are actually passing it to a WebCompositor, which can respond asynchronously via WebCompositorClient to tell us whether it handled the event or wants us to punt it up to the WebWidget. It can also tell us that it did not handle the event and that we should not bother sending it to the WebWidget. InputEventFilter contains all of the interesting thread marshalling code. CompositorThread has the WebCompositor hookup. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=104258

Patch Set 1 #

Patch Set 2 : '' #

Patch Set 3 : '' #

Patch Set 4 : '' #

Patch Set 5 : '' #

Patch Set 6 : '' #

Patch Set 7 : '' #

Patch Set 8 : '' #

Patch Set 9 : '' #

Patch Set 10 : '' #

Patch Set 11 : '' #

Patch Set 12 : '' #

Patch Set 13 : '' #

Patch Set 14 : '' #

Patch Set 15 : '' #

Patch Set 16 : '' #

Patch Set 17 : '' #

Patch Set 18 : '' #

Total comments: 4

Patch Set 19 : '' #

Patch Set 20 : '' #

Patch Set 21 : '' #

Patch Set 22 : '' #

Patch Set 23 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+661 lines, -27 lines) Patch
M content/browser/renderer_host/render_widget_host.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/renderer_host/render_widget_host.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 3 chunks +4 lines, -16 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 1 chunk +1 line, -3 lines 0 comments Download
M content/common/view_messages.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 2 chunks +4 lines, -4 lines 0 comments Download
M content/content_renderer.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +4 lines, -0 lines 0 comments Download
M content/content_tests.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +1 line, -0 lines 0 comments Download
A content/renderer/gpu/compositor_thread.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +56 lines, -0 lines 0 comments Download
A content/renderer/gpu/compositor_thread.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +114 lines, -0 lines 0 comments Download
A content/renderer/gpu/input_event_filter.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 1 chunk +91 lines, -0 lines 0 comments Download
A content/renderer/gpu/input_event_filter.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 1 chunk +145 lines, -0 lines 0 comments Download
A content/renderer/gpu/input_event_filter_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 1 chunk +218 lines, -0 lines 0 comments Download
M content/renderer/render_thread.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 3 chunks +7 lines, -0 lines 0 comments Download
M content/renderer/render_thread.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 3 chunks +9 lines, -0 lines 0 comments Download
M content/renderer/render_widget.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +3 lines, -3 lines 0 comments Download
M webkit/glue/webthread_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 8 (0 generated)
darin (slow to review)
John, it'd be great if you could review this patch. There are two new classes: ...
9 years, 2 months ago (2011-10-05 21:04:34 UTC) #1
jamesr
http://codereview.chromium.org/8089002/diff/36001/content/renderer/gpu/input_event_filter.h File content/renderer/gpu/input_event_filter.h (right): http://codereview.chromium.org/8089002/diff/36001/content/renderer/gpu/input_event_filter.h#newcode88 content/renderer/gpu/input_event_filter.h:88: std::set<int> routes_; on linux i had to add #include ...
9 years, 2 months ago (2011-10-05 21:16:43 UTC) #2
jamesr
http://codereview.chromium.org/8089002/diff/36001/content/renderer/gpu/compositor_thread.cc File content/renderer/gpu/compositor_thread.cc (right): http://codereview.chromium.org/8089002/diff/36001/content/renderer/gpu/compositor_thread.cc#newcode28 content/renderer/gpu/compositor_thread.cc:28: ~CompositorWrapper() { one more nit: i think this should ...
9 years, 2 months ago (2011-10-05 21:34:42 UTC) #3
jam
lgtm it would be helpful to move more of the message you wrote into the ...
9 years, 2 months ago (2011-10-05 21:41:49 UTC) #4
darin (slow to review)
On 2011/10/05 21:34:42, jamesr wrote: > http://codereview.chromium.org/8089002/diff/36001/content/renderer/gpu/compositor_thread.cc > File content/renderer/gpu/compositor_thread.cc (right): > > http://codereview.chromium.org/8089002/diff/36001/content/renderer/gpu/compositor_thread.cc#newcode28 > ...
9 years, 2 months ago (2011-10-05 22:13:57 UTC) #5
darin (slow to review)
On 2011/10/05 21:16:43, jamesr wrote: > http://codereview.chromium.org/8089002/diff/36001/content/renderer/gpu/input_event_filter.h > File content/renderer/gpu/input_event_filter.h (right): > > http://codereview.chromium.org/8089002/diff/36001/content/renderer/gpu/input_event_filter.h#newcode88 > ...
9 years, 2 months ago (2011-10-05 22:14:08 UTC) #6
darin (slow to review)
On 2011/10/05 21:41:49, John Abd-El-Malek wrote: > lgtm > > it would be helpful to ...
9 years, 2 months ago (2011-10-05 22:23:38 UTC) #7
darin (slow to review)
9 years, 2 months ago (2011-10-05 22:25:16 UTC) #8
On 2011/10/05 22:23:38, darin wrote:
> I didn't want the CompositorThread to depend directly on RenderThread, which
> would be necessary if it had to call AddFilter itself.

^^^ Reason:  I was thinking about creating a CompositorThread unit test.  I
can't quite do that yet, because I need a way to mock out
WebCompositor::fromIdentifer.

Powered by Google App Engine
This is Rietveld 408576698