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

Issue 1775953004: bluetooth: Move writeValue to mojo (Closed)

Created:
4 years, 9 months ago by ortuno
Modified:
4 years, 8 months ago
CC:
Aaron Boodman, abarth-chromium, Anand Mistry (off Chromium), ben+mojo_chromium.org, blink-reviews, blink-reviews-api_chromium.org, chromium-reviews, creis+watch_chromium.org, darin (slow to review), darin-cc_chromium.org, dglazkov+blink, jam, mkwst+moarreviews-renderer_chromium.org, mlamouri+watch-content_chromium.org, nasko+codewatch_chromium.org, ortuno+watch_chromium.org, qsr+mojo_chromium.org, rouslan+watch_chromium.org, scheib+watch_chromium.org, viettrungluu+watch_chromium.org, yzshen+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@my-origin
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

bluetooth: Move writeValue to mojo First step towards moving Web Bluetooth from IPC::Message to Mojo. We will move each functions from BluetoothDispatcherHost to the new BluetoothService one by one. 1. Adds WebBluetoothService to web_bluetooth.mojom. This service will replace BluetoothDispatcherHost. 2. Implements the interface in content/browser/bluetooth: WebBluetoothServiceImpl. For now it only implements RemoteCharacteristicWrite. 3. Modifies WebBluetoothImpl/BluetoothDispatcher so that WebBluetoothImpl can acquire an InterfacePtr to the new BluetoothService. Since we are using mojo there could be races in our tests that rely on IPC:Message ordering. The follow up patch addresses this issue: http://crrev.com/1815483003 BUG=508771 CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation Committed: https://crrev.com/ad6b0feaf45b761f180d0b19a1dfae072e0df3b5 Cr-Commit-Position: refs/heads/master@{#384345}

Patch Set 1 #

Patch Set 2 : GYP and clean up #

Patch Set 3 : Moar cleanup #

Total comments: 16

Patch Set 4 : Move mojom interface to public/platform #

Patch Set 5 : Move mojom interface to public/platform #

Patch Set 6 : Move mojom interface to public/platform #

Patch Set 7 : Move WebBluetoothService to RenderFrameHost #

Patch Set 8 : Rebase #

Patch Set 9 : Small cleanup #

Patch Set 10 : Moar clean up #

Total comments: 2

Patch Set 11 : Moar clean up #

Total comments: 10

Patch Set 12 : Address rockot's comments #

Patch Set 13 : Lint and format #

Patch Set 14 : moar clean up #

Patch Set 15 : Fix typoe #

Patch Set 16 : Moar clean up #

Total comments: 26

Patch Set 17 : Address jyasskin's comments #

Total comments: 12

Patch Set 18 : Address jyasskin's comment #

Patch Set 19 : Merge with ToT #

Total comments: 2

Patch Set 20 : Address palmer's comments #

Total comments: 13

Patch Set 21 : Address scheib's comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+387 lines, -218 lines) Patch
M content/browser/bluetooth/bluetooth_dispatcher_host.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 6 chunks +25 lines, -18 lines 0 comments Download
M content/browser/bluetooth/bluetooth_dispatcher_host.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 6 chunks +25 lines, -105 lines 0 comments Download
A content/browser/bluetooth/web_bluetooth_service_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 +77 lines, -0 lines 0 comments Download
A content/browser/bluetooth/web_bluetooth_service_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +156 lines, -0 lines 0 comments Download
M content/browser/frame_host/render_frame_host_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 4 chunks +13 lines, -0 lines 0 comments Download
M content/browser/frame_host/render_frame_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 3 chunks +15 lines, -0 lines 0 comments Download
M content/child/mojo/type_converters.h View 1 2 3 2 chunks +8 lines, -0 lines 0 comments Download
M content/common/bluetooth/bluetooth_messages.h View 1 2 3 4 2 chunks +0 lines, -21 lines 0 comments Download
M content/content_browser.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +2 lines, -0 lines 0 comments Download
M content/renderer/bluetooth/bluetooth_dispatcher.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 4 chunks +0 lines, -11 lines 0 comments Download
M content/renderer/bluetooth/bluetooth_dispatcher.cc View 1 2 3 4 5 6 4 chunks +0 lines, -50 lines 0 comments Download
M content/renderer/bluetooth/web_bluetooth_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 5 chunks +17 lines, -5 lines 0 comments Download
M content/renderer/bluetooth/web_bluetooth_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 3 chunks +32 lines, -7 lines 0 comments Download
M content/renderer/render_frame_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +2 lines, -1 line 0 comments Download
M third_party/WebKit/public/platform/modules/bluetooth/web_bluetooth.mojom View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +15 lines, -0 lines 0 comments Download

Depends on Patchset:

Messages

Total messages: 56 (27 generated)
ortuno
rockot: PTAL at mojo stuff :) I also left a bunch of questions. https://codereview.chromium.org/1775953004/diff/40001/content/renderer/bluetooth/bluetooth_dispatcher.cc File ...
4 years, 9 months ago (2016-03-09 01:21:23 UTC) #4
Ken Rockot(use gerrit already)
https://codereview.chromium.org/1775953004/diff/40001/content/browser/bluetooth/bluetooth_dispatcher_host.h File content/browser/bluetooth/bluetooth_dispatcher_host.h (right): https://codereview.chromium.org/1775953004/diff/40001/content/browser/bluetooth/bluetooth_dispatcher_host.h#newcode63 content/browser/bluetooth/bluetooth_dispatcher_host.h:63: device::BluetoothDevice* device; instead of intializers in each constructor just ...
4 years, 9 months ago (2016-03-09 19:31:26 UTC) #5
ortuno
rockot: PTAL again. I've moved the Service from the RenderProcessHost to RenderFrameHost. RenderFrameHost now owns ...
4 years, 9 months ago (2016-03-16 16:29:45 UTC) #8
please use gerrit instead
Sorry for the drive-by. https://codereview.chromium.org/1775953004/diff/180001/content/child/mojo/type_converters.h File content/child/mojo/type_converters.h (right): https://codereview.chromium.org/1775953004/diff/180001/content/child/mojo/type_converters.h#newcode25 content/child/mojo/type_converters.h:25: struct TypeConverter<String, blink::WebString> { This ...
4 years, 9 months ago (2016-03-16 22:09:31 UTC) #12
ortuno
https://codereview.chromium.org/1775953004/diff/180001/content/child/mojo/type_converters.h File content/child/mojo/type_converters.h (right): https://codereview.chromium.org/1775953004/diff/180001/content/child/mojo/type_converters.h#newcode25 content/child/mojo/type_converters.h:25: struct TypeConverter<String, blink::WebString> { On 2016/03/16 at 22:09:30, Rouslan ...
4 years, 9 months ago (2016-03-17 17:15:52 UTC) #15
Ken Rockot(use gerrit already)
Exciting :) This generally looks good, but I still have concerns over callback lifetime. https://codereview.chromium.org/1775953004/diff/200001/content/browser/bluetooth/web_bluetooth_service_impl.cc ...
4 years, 9 months ago (2016-03-17 18:16:13 UTC) #16
ortuno
https://codereview.chromium.org/1775953004/diff/200001/content/browser/bluetooth/web_bluetooth_service_impl.cc File content/browser/bluetooth/web_bluetooth_service_impl.cc (right): https://codereview.chromium.org/1775953004/diff/200001/content/browser/bluetooth/web_bluetooth_service_impl.cc#newcode90 content/browser/bluetooth/web_bluetooth_service_impl.cc:90: weak_ptr_on_ui_thread_ = weak_ptr_factory_.GetWeakPtr(); On 2016/03/17 at 18:16:13, Ken Rockot ...
4 years, 9 months ago (2016-03-18 01:19:20 UTC) #17
ortuno
jyasskin: PTAL
4 years, 9 months ago (2016-03-18 01:21:41 UTC) #21
Ken Rockot(use gerrit already)
mojo stuff lgtm On 2016/03/18 at 01:19:20, ortuno wrote: > https://codereview.chromium.org/1775953004/diff/200001/content/browser/bluetooth/web_bluetooth_service_impl.cc > File content/browser/bluetooth/web_bluetooth_service_impl.cc (right): ...
4 years, 9 months ago (2016-03-18 01:24:12 UTC) #22
Jeffrey Yasskin
https://codereview.chromium.org/1775953004/diff/300001/content/browser/bluetooth/bluetooth_dispatcher_host.cc File content/browser/bluetooth/bluetooth_dispatcher_host.cc (right): https://codereview.chromium.org/1775953004/diff/300001/content/browser/bluetooth/bluetooth_dispatcher_host.cc#newcode411 content/browser/bluetooth/bluetooth_dispatcher_host.cc:411: : outcome(CacheQueryOutcome::SUCCESS) {} I'd probably move this to a ...
4 years, 9 months ago (2016-03-25 00:48:24 UTC) #24
ortuno
https://codereview.chromium.org/1775953004/diff/300001/content/browser/bluetooth/bluetooth_dispatcher_host.cc File content/browser/bluetooth/bluetooth_dispatcher_host.cc (right): https://codereview.chromium.org/1775953004/diff/300001/content/browser/bluetooth/bluetooth_dispatcher_host.cc#newcode411 content/browser/bluetooth/bluetooth_dispatcher_host.cc:411: : outcome(CacheQueryOutcome::SUCCESS) {} On 2016/03/25 at 00:48:23, Jeffrey Yasskin ...
4 years, 8 months ago (2016-03-29 17:58:34 UTC) #26
Jeffrey Yasskin
lgtm https://codereview.chromium.org/1775953004/diff/300001/content/browser/bluetooth/bluetooth_dispatcher_host.h File content/browser/bluetooth/bluetooth_dispatcher_host.h (right): https://codereview.chromium.org/1775953004/diff/300001/content/browser/bluetooth/bluetooth_dispatcher_host.h#newcode18 content/browser/bluetooth/bluetooth_dispatcher_host.h:18: #include "content/common/bluetooth/bluetooth_messages.h" On 2016/03/29 17:58:34, ortuno wrote: > ...
4 years, 8 months ago (2016-03-29 20:30:02 UTC) #27
ortuno
https://codereview.chromium.org/1775953004/diff/300001/content/browser/bluetooth/bluetooth_dispatcher_host.h File content/browser/bluetooth/bluetooth_dispatcher_host.h (right): https://codereview.chromium.org/1775953004/diff/300001/content/browser/bluetooth/bluetooth_dispatcher_host.h#newcode18 content/browser/bluetooth/bluetooth_dispatcher_host.h:18: #include "content/common/bluetooth/bluetooth_messages.h" On 2016/03/29 at 20:30:02, Jeffrey Yasskin wrote: ...
4 years, 8 months ago (2016-03-29 22:14:04 UTC) #28
ortuno
jam: PTAL at content/ palmer: PTAL at content/common and third_party/WebKit/public/platform/modules/bluetooth/
4 years, 8 months ago (2016-03-29 22:16:48 UTC) #30
jam
lgtm
4 years, 8 months ago (2016-03-30 00:27:42 UTC) #31
palmer
lgtm https://codereview.chromium.org/1775953004/diff/380001/content/browser/bluetooth/bluetooth_dispatcher_host.h File content/browser/bluetooth/bluetooth_dispatcher_host.h (right): https://codereview.chromium.org/1775953004/diff/380001/content/browser/bluetooth/bluetooth_dispatcher_host.h#newcode58 content/browser/bluetooth/bluetooth_dispatcher_host.h:58: // TODO(ortuno): We temporarily make this a public ...
4 years, 8 months ago (2016-03-30 21:34:51 UTC) #32
ortuno
Thanks! https://codereview.chromium.org/1775953004/diff/380001/content/browser/bluetooth/bluetooth_dispatcher_host.h File content/browser/bluetooth/bluetooth_dispatcher_host.h (right): https://codereview.chromium.org/1775953004/diff/380001/content/browser/bluetooth/bluetooth_dispatcher_host.h#newcode58 content/browser/bluetooth/bluetooth_dispatcher_host.h:58: // TODO(ortuno): We temporarily make this a public ...
4 years, 8 months ago (2016-03-30 22:37:56 UTC) #34
ortuno
@scheib: PTAL
4 years, 8 months ago (2016-03-30 22:38:39 UTC) #38
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1775953004/400001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1775953004/400001
4 years, 8 months ago (2016-03-30 22:48:06 UTC) #40
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_site_isolation on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_site_isolation/builds/1466)
4 years, 8 months ago (2016-03-31 01:22:24 UTC) #42
scheib
https://codereview.chromium.org/1775953004/diff/400001/content/browser/bluetooth/web_bluetooth_service_impl.h File content/browser/bluetooth/web_bluetooth_service_impl.h (right): https://codereview.chromium.org/1775953004/diff/400001/content/browser/bluetooth/web_bluetooth_service_impl.h#newcode32 content/browser/bluetooth/web_bluetooth_service_impl.h:32: // ownership of it. Not thread safe, and created ...
4 years, 8 months ago (2016-03-31 04:17:51 UTC) #43
Jeffrey Yasskin
https://codereview.chromium.org/1775953004/diff/400001/content/browser/frame_host/render_frame_host_impl.h File content/browser/frame_host/render_frame_host_impl.h (right): https://codereview.chromium.org/1775953004/diff/400001/content/browser/frame_host/render_frame_host_impl.h#newcode893 content/browser/frame_host/render_frame_host_impl.h:893: scoped_ptr<WebBluetoothServiceImpl> web_bluetooth_service_; On 2016/03/31 04:17:51, scheib wrote: > WebBluetoothServiceImpl ...
4 years, 8 months ago (2016-03-31 15:26:16 UTC) #44
ortuno
https://codereview.chromium.org/1775953004/diff/400001/content/browser/bluetooth/web_bluetooth_service_impl.h File content/browser/bluetooth/web_bluetooth_service_impl.h (right): https://codereview.chromium.org/1775953004/diff/400001/content/browser/bluetooth/web_bluetooth_service_impl.h#newcode32 content/browser/bluetooth/web_bluetooth_service_impl.h:32: // ownership of it. On 2016/03/31 at 04:17:51, scheib ...
4 years, 8 months ago (2016-03-31 16:56:44 UTC) #45
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1775953004/420001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1775953004/420001
4 years, 8 months ago (2016-03-31 16:57:21 UTC) #47
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: win_chromium_x64_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_rel_ng/builds/190104)
4 years, 8 months ago (2016-03-31 17:02:04 UTC) #49
scheib
LGTM
4 years, 8 months ago (2016-03-31 17:43:35 UTC) #50
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1775953004/420001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1775953004/420001
4 years, 8 months ago (2016-03-31 17:44:20 UTC) #53
commit-bot: I haz the power
Committed patchset #21 (id:420001)
4 years, 8 months ago (2016-03-31 18:49:23 UTC) #54
commit-bot: I haz the power
4 years, 8 months ago (2016-03-31 18:50:57 UTC) #56
Message was sent while issue was closed.
Patchset 21 (id:??) landed as
https://crrev.com/ad6b0feaf45b761f180d0b19a1dfae072e0df3b5
Cr-Commit-Position: refs/heads/master@{#384345}

Powered by Google App Engine
This is Rietveld 408576698