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

Issue 1695783002: IPC::ParamTraits for ui::Event (towards ui::Events over mojo IPC) (Closed)

Created:
4 years, 10 months ago by Mark Dittmer
Modified:
4 years, 9 months ago
CC:
chromium-reviews, tdresser+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Implements and tests IPC::ParamTraits for ui::Event (towards ui::Events over mojo IPC). Support for (scoped) pointers for abstract ui::Event objects implemented using ui::ScopedEvent, and trusting ui::EventType information to instantiate the correct concrete type. BUG=584687 Committed: https://crrev.com/482ddfefe2602f440146eebf4b56e8e040fb81fa Cr-Commit-Position: refs/heads/master@{#378821} Committed: https://crrev.com/74b231ad33ec44bc2662fef2831a3cd90e1f3834 Cr-Commit-Position: refs/heads/master@{#379094} Committed: https://crrev.com/49745c73debc0b61be1f35ff6b01fe8ca6a14356 Cr-Commit-Position: refs/heads/master@{#379348}

Patch Set 1 #

Patch Set 2 : Fix improper use of base::PickleIterator::ReadBytes() #

Total comments: 6

Patch Set 3 : More accurate ctor and friend struct comments #

Patch Set 4 : Fix gyp/gn build targets #

Patch Set 5 : #

Total comments: 15

Patch Set 6 : Implement (most) comments from tsepez #

Patch Set 7 : Fix events_unittests gyp dependency on gfx_ipc #

Patch Set 8 : Fix events gyp dependency on gfx_ipc #

Patch Set 9 : Refactor ui::Events ParamTraits to live in components/mus/public/cpp #

Patch Set 10 : Add explicit dependency on ipc:ipc to components/mus/public/cpp:cpp #

Patch Set 11 : Move event_param_traits from components/mus/public/cpp to components/mus/common #

Patch Set 12 : Remove erroneous ui/events dep on ipc; add missing components/mus/common dep on ipc and ui/events #

Total comments: 4

Patch Set 13 : Add components/mus/common dep //ui/gfx/ipc #

Patch Set 14 : Address nits from tsepez #

Patch Set 15 : rebase #

Patch Set 16 : Fix: typeof(cancelable) = bool #

Patch Set 17 : Remove dead MetroViewerHostMsg_MouseButton from metro_viewer; conflicts with new param traits #

Patch Set 18 : Make mus_common a component to fix Windows build failure #

Patch Set 19 : Explicate MUS_COMMON_EXPORT in header and impl #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+1135 lines, -39 lines) Patch
M ash/mus/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +1 line, -1 line 0 comments Download
M components/mus/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 3 chunks +4 lines, -4 lines 0 comments Download
M components/mus/DEPS View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +1 line, -1 line 0 comments Download
M components/mus/common/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +34 lines, -1 line 0 comments Download
M components/mus/common/args.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +3 lines, -1 line 0 comments Download
M components/mus/common/args.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +2 lines, -1 line 0 comments Download
A components/mus/common/event_param_traits.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +95 lines, -0 lines 0 comments Download
A components/mus/common/event_param_traits.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +277 lines, -0 lines 0 comments Download
A components/mus/common/event_param_traits_macros.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +101 lines, -0 lines 0 comments Download
A components/mus/common/event_param_traits_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +468 lines, -0 lines 1 comment Download
A components/mus/common/mus_common_export.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +29 lines, -0 lines 0 comments Download
M components/mus/public/cpp/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +1 line, -1 line 0 comments Download
M components/mus/public/cpp/tests/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +1 line, -1 line 0 comments Download
M components/mus/ws/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 4 chunks +4 lines, -4 lines 0 comments Download
M mash/wm/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +1 line, -1 line 0 comments Download
M ui/events/event.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 13 chunks +67 lines, -3 lines 0 comments Download
M ui/events/event.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +3 lines, -0 lines 0 comments Download
M ui/events/events.gyp View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -1 line 0 comments Download
M ui/events/gesture_event_details.h View 1 2 3 4 5 6 7 8 9 10 11 3 chunks +18 lines, -0 lines 0 comments Download
M ui/events/ipc/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -0 lines 0 comments Download
M ui/events/keycodes/dom/dom_key.h View 2 chunks +3 lines, -0 lines 0 comments Download
M ui/gfx/ipc/gfx_param_traits.h View 3 chunks +3 lines, -0 lines 0 comments Download
M ui/gfx/ipc/gfx_param_traits.cc View 3 chunks +16 lines, -0 lines 0 comments Download
M ui/metro_viewer/metro_viewer_messages.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +0 lines, -19 lines 0 comments Download

Messages

Total messages: 110 (48 generated)
sadrul
+rockot@ So turns out I don't actually know about this stuff enough to be able ...
4 years, 10 months ago (2016-02-17 21:05:31 UTC) #5
sadrul
Oh, about the CL description: we don't have any set rules, but a lot of ...
4 years, 10 months ago (2016-02-17 21:06:14 UTC) #6
Ken Rockot(use gerrit already)
Sorry for lacking some context here, but why are you introducing new ParamTraits if they're ...
4 years, 10 months ago (2016-02-17 21:31:47 UTC) #7
Ken Rockot(use gerrit already)
After taking a closer look, I see there's enough complexity to supporting ui::Event with StructTraits ...
4 years, 10 months ago (2016-02-17 21:47:53 UTC) #8
Ken Rockot(use gerrit already)
generally lgtm but you'll need a security review for the IPC stuff anyway https://codereview.chromium.org/1695783002/diff/20001/ui/events/event.h File ...
4 years, 10 months ago (2016-02-17 22:05:22 UTC) #9
Mark Dittmer
Comments noted/fixed. rockot@, RSVP re: equality operator vs. SpeciallyNamedNotionOfEquality. https://codereview.chromium.org/1695783002/diff/20001/ui/events/event.h File ui/events/event.h (right): https://codereview.chromium.org/1695783002/diff/20001/ui/events/event.h#newcode241 ui/events/event.h:241: ...
4 years, 10 months ago (2016-02-18 14:51:05 UTC) #10
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1695783002/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1695783002/40001
4 years, 10 months ago (2016-02-18 16:16:59 UTC) #13
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: android_chromium_gn_compile_dbg on tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_chromium_gn_compile_dbg/builds/23767) cast_shell_linux on ...
4 years, 10 months ago (2016-02-18 16:21:57 UTC) #15
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1695783002/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1695783002/60001
4 years, 10 months ago (2016-02-18 17:24:57 UTC) #18
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_chromium_compile_dbg_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_compile_dbg_ng/builds/51922) mac_chromium_gn_rel on ...
4 years, 10 months ago (2016-02-18 17:36:33 UTC) #20
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1695783002/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1695783002/60001
4 years, 10 months ago (2016-02-18 18:20:02 UTC) #22
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: android_chromium_gn_compile_dbg on tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_chromium_gn_compile_dbg/builds/23840) android_chromium_gn_compile_rel on ...
4 years, 10 months ago (2016-02-18 18:31:18 UTC) #24
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1695783002/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1695783002/80001
4 years, 10 months ago (2016-02-18 18:39:52 UTC) #26
Tom Sepez
+jam so we can discuss IPC serializers as friends of higher layer classes (vs. public ...
4 years, 10 months ago (2016-02-18 18:46:10 UTC) #28
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_android_rel_ng on tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_android_rel_ng/builds/25210) mac_chromium_compile_dbg_ng on ...
4 years, 10 months ago (2016-02-18 19:11:51 UTC) #30
Mark Dittmer
Implemented most comments from tsepez. RSVP a couple. https://codereview.chromium.org/1695783002/diff/80001/ui/events/event.h File ui/events/event.h (right): https://codereview.chromium.org/1695783002/diff/80001/ui/events/event.h#newcode36 ui/events/event.h:36: On ...
4 years, 10 months ago (2016-02-18 19:12:57 UTC) #31
jam
https://codereview.chromium.org/1695783002/diff/80001/ui/events/event.h File ui/events/event.h (right): https://codereview.chromium.org/1695783002/diff/80001/ui/events/event.h#newcode247 ui/events/event.h:247: friend struct IPC::ParamTraits<ui::ScopedEvent>; On 2016/02/18 19:12:56, Mark Dittmer wrote: ...
4 years, 10 months ago (2016-02-18 21:01:26 UTC) #32
Mark Dittmer
On 2016/02/18 21:01:26, jam wrote: > https://codereview.chromium.org/1695783002/diff/80001/ui/events/event.h > File ui/events/event.h (right): > > https://codereview.chromium.org/1695783002/diff/80001/ui/events/event.h#newcode247 > ...
4 years, 10 months ago (2016-02-22 15:52:11 UTC) #33
Fady Samuel
On 2016/02/22 15:52:11, Mark Dittmer wrote: > On 2016/02/18 21:01:26, jam wrote: > > https://codereview.chromium.org/1695783002/diff/80001/ui/events/event.h ...
4 years, 10 months ago (2016-02-22 16:08:55 UTC) #34
jam
On 2016/02/22 16:08:55, Fady Samuel wrote: > On 2016/02/22 15:52:11, Mark Dittmer wrote: > > ...
4 years, 10 months ago (2016-02-22 17:13:24 UTC) #35
Mark Dittmer
On 2016/02/22 17:13:24, jam wrote: > On 2016/02/22 16:08:55, Fady Samuel wrote: > > On ...
4 years, 10 months ago (2016-02-22 19:25:31 UTC) #36
Fady Samuel
On 2016/02/22 19:25:31, Mark Dittmer wrote: > On 2016/02/22 17:13:24, jam wrote: > > On ...
4 years, 10 months ago (2016-02-23 15:30:06 UTC) #37
jam
On 2016/02/22 19:25:31, Mark Dittmer wrote: > On 2016/02/22 17:13:24, jam wrote: > > On ...
4 years, 10 months ago (2016-02-23 16:45:15 UTC) #38
Fady Samuel
On 2016/02/23 16:45:15, jam wrote: > On 2016/02/22 19:25:31, Mark Dittmer wrote: > > On ...
4 years, 10 months ago (2016-02-23 16:47:58 UTC) #39
jam
lgtm
4 years, 10 months ago (2016-02-23 18:42:07 UTC) #40
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1695783002/200001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1695783002/200001
4 years, 10 months ago (2016-02-23 18:54:49 UTC) #43
commit-bot: I haz the power
Try jobs failed on following builders: android_chromium_gn_compile_dbg on tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_chromium_gn_compile_dbg/builds/26045) android_chromium_gn_compile_rel on tryserver.chromium.android (JOB_FAILED, ...
4 years, 10 months ago (2016-02-23 19:15:01 UTC) #45
Mark Dittmer
Remove erroneous ui/events dep on ipc; add missing components/mus/common dep on ipc and ui/events
4 years, 10 months ago (2016-02-23 19:43:33 UTC) #46
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1695783002/220001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1695783002/220001
4 years, 10 months ago (2016-02-23 19:50:23 UTC) #48
Tom Sepez
lgtm https://codereview.chromium.org/1695783002/diff/220001/components/mus/DEPS File components/mus/DEPS (right): https://codereview.chromium.org/1695783002/diff/220001/components/mus/DEPS#newcode11 components/mus/DEPS:11: "+mojo/shell", nit: duplicate. https://codereview.chromium.org/1695783002/diff/220001/components/mus/common/event_param_traits_unittest.cc File components/mus/common/event_param_traits_unittest.cc (right): https://codereview.chromium.org/1695783002/diff/220001/components/mus/common/event_param_traits_unittest.cc#newcode24 ...
4 years, 10 months ago (2016-02-23 19:53:06 UTC) #49
Mark Dittmer
Add components/mus/common dep //ui/gfx/ipc
4 years, 10 months ago (2016-02-23 20:08:07 UTC) #50
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: cast_shell_android on tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/cast_shell_android/builds/25916) cast_shell_linux on ...
4 years, 10 months ago (2016-02-23 20:11:42 UTC) #51
Mark Dittmer
Address nits from tsepez
4 years, 10 months ago (2016-02-23 20:12:46 UTC) #52
Mark Dittmer
https://codereview.chromium.org/1695783002/diff/220001/components/mus/DEPS File components/mus/DEPS (right): https://codereview.chromium.org/1695783002/diff/220001/components/mus/DEPS#newcode11 components/mus/DEPS:11: "+mojo/shell", On 2016/02/23 19:53:06, Tom Sepez wrote: > nit: ...
4 years, 10 months ago (2016-02-23 20:12:50 UTC) #53
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1695783002/260001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1695783002/260001
4 years, 10 months ago (2016-02-23 20:16:39 UTC) #56
commit-bot: I haz the power
Try jobs failed on following builders: win8_chromium_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win8_chromium_ng/builds/107555)
4 years, 10 months ago (2016-02-23 22:16:48 UTC) #58
Mark Dittmer
rebase
4 years, 9 months ago (2016-03-02 13:43:55 UTC) #59
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1695783002/280001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1695783002/280001
4 years, 9 months ago (2016-03-02 13:45:31 UTC) #61
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_chromium_chromeos_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_rel_ng/builds/175225)
4 years, 9 months ago (2016-03-02 14:00:01 UTC) #63
Mark Dittmer
Fix: typeof(cancelable) = bool
4 years, 9 months ago (2016-03-02 14:39:08 UTC) #64
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1695783002/300001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1695783002/300001
4 years, 9 months ago (2016-03-02 14:40:12 UTC) #66
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: mac_chromium_compile_dbg_ng on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_compile_dbg_ng/builds/167550)
4 years, 9 months ago (2016-03-02 14:59:32 UTC) #68
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1695783002/300001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1695783002/300001
4 years, 9 months ago (2016-03-02 16:09:22 UTC) #71
commit-bot: I haz the power
Try jobs failed on following builders: win8_chromium_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win8_chromium_ng/builds/111821)
4 years, 9 months ago (2016-03-02 17:19:41 UTC) #73
Mark Dittmer
Remove dead MetroViewerHostMsg_MouseButton from metro_viewer; conflicts with new param traits
4 years, 9 months ago (2016-03-02 19:30:33 UTC) #75
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1695783002/320001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1695783002/320001
4 years, 9 months ago (2016-03-02 19:31:47 UTC) #78
commit-bot: I haz the power
Committed patchset #17 (id:320001)
4 years, 9 months ago (2016-03-02 20:45:20 UTC) #80
commit-bot: I haz the power
Patchset 17 (id:??) landed as https://crrev.com/482ddfefe2602f440146eebf4b56e8e040fb81fa Cr-Commit-Position: refs/heads/master@{#378821}
4 years, 9 months ago (2016-03-02 20:47:07 UTC) #82
Dmitry Titov
A revert of this CL (patchset #17 id:320001) has been created in https://codereview.chromium.org/1755703004/ by dimich@chromium.org. ...
4 years, 9 months ago (2016-03-02 21:39:40 UTC) #83
Mark Dittmer
Make mus_common a component to fix Windows build failure
4 years, 9 months ago (2016-03-03 20:03:14 UTC) #85
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1695783002/340001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1695783002/340001
4 years, 9 months ago (2016-03-03 20:07:40 UTC) #87
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 9 months ago (2016-03-03 21:22:24 UTC) #89
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1695783002/340001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1695783002/340001
4 years, 9 months ago (2016-03-03 21:26:04 UTC) #92
commit-bot: I haz the power
Committed patchset #18 (id:340001)
4 years, 9 months ago (2016-03-03 21:33:23 UTC) #94
commit-bot: I haz the power
Patchset 18 (id:??) landed as https://crrev.com/74b231ad33ec44bc2662fef2831a3cd90e1f3834 Cr-Commit-Position: refs/heads/master@{#379094}
4 years, 9 months ago (2016-03-03 21:34:43 UTC) #96
Ken Rockot(use gerrit already)
On 2016/03/03 at 21:34:43, commit-bot wrote: > Patchset 18 (id:??) landed as https://crrev.com/74b231ad33ec44bc2662fef2831a3cd90e1f3834 > Cr-Commit-Position: ...
4 years, 9 months ago (2016-03-03 22:36:02 UTC) #97
Dmitry Titov
A revert of this CL (patchset #18 id:340001) has been created in https://codereview.chromium.org/1765693002/ by dimich@chromium.org. ...
4 years, 9 months ago (2016-03-03 22:39:08 UTC) #98
Mark Dittmer
Explicate MUS_COMMON_EXPORT in header and impl
4 years, 9 months ago (2016-03-04 16:29:09 UTC) #99
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1695783002/360001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1695783002/360001
4 years, 9 months ago (2016-03-04 19:07:50 UTC) #104
commit-bot: I haz the power
Committed patchset #19 (id:360001)
4 years, 9 months ago (2016-03-04 20:53:34 UTC) #106
commit-bot: I haz the power
Patchset 19 (id:??) landed as https://crrev.com/49745c73debc0b61be1f35ff6b01fe8ca6a14356 Cr-Commit-Position: refs/heads/master@{#379348}
4 years, 9 months ago (2016-03-04 20:56:09 UTC) #108
brucedawson
4 years, 9 months ago (2016-03-08 21:43:37 UTC) #110
Message was sent while issue was closed.
https://codereview.chromium.org/1695783002/diff/360001/components/mus/common/...
File components/mus/common/event_param_traits_unittest.cc (right):

https://codereview.chromium.org/1695783002/diff/360001/components/mus/common/...
components/mus/common/event_param_traits_unittest.cc:90: ASSERT_EQ(!!a->flags()
& MouseEventFlags::EF_FROM_TOUCH,
This ASSERT_EQ doesn't make sense. Each parameter is a bool masked against an
enum such that both parameters will always be zero. VS 2015 refuses to compile
it.

Presumably either the !! should be deleted, or parentheses are needed around the
& expression.

https://codereview.chromium.org/1773813004 is a possible fix.

Powered by Google App Engine
This is Rietveld 408576698