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

Issue 1415103006: Non-Local Join for Media Router and Presentation API (Closed)

Created:
5 years, 1 month ago by matt.boetger
Modified:
4 years, 11 months ago
CC:
Aaron Boodman, abarth-chromium, arv+watch_chromium.org, ben+mojo_chromium.org, chromium-apps-reviews_chromium.org, chromium-reviews, darin (slow to review), extensions-reviews_chromium.org, feature-media-reviews_chromium.org, jonnymack, mcasas+watch_chromium.org, media-router+watch_chromium.org, posciak+watch_chromium.org, qsr+mojo_chromium.org, viettrungluu+watch_chromium.org, yzshen+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Non-Local Join for Media Router and Presentation API The Cast SDK has a concept of non-local joins. This means that if a Cast session is started on Device A (e.g. an Android phone), a user should be able to join the session via a webpage in Chrome on Device B. This requires the idea of "joinable" routes to enter into the media router. The route queries need a context for this to make sense, and that context is the page's |media_source|. If the route can be joined by the page (given the page's media_source), then a list of route_ids (that are a subset of the routes returned in OnRouteUpdated) signify what routes are joinable. The UI should present a "Join" button if the currently viewed route is joinable. Current Screenshots for MediaRoute Dialog Stop And Join - LTR: https://screenshot.googleplex.com/X814uW7esBU Stop Only - LTR: https://screenshot.googleplex.com/iybKZd1aABh Stop And Join - RTL: https://screenshot.googleplex.com/ffKqawTFgTF Stop Only - RTL: https://screenshot.googleplex.com/HWbR94H5Qef Committed: https://crrev.com/5628601c63e07c7aa04d3e62eaeb90b2d60ea53a Cr-Commit-Position: refs/heads/master@{#368260}

Patch Set 1 : Removing Logging Statements #

Total comments: 4

Patch Set 2 : Auto-Formatting Fixes #

Total comments: 11

Patch Set 3 : Added routes query set #

Patch Set 4 : Presentation ID created by Media Router #

Patch Set 5 : Added Unit Tests #

Total comments: 34

Patch Set 6 : Android media router interface changes #

Patch Set 7 : Refactored to use Route Ids for joinable routes #

Patch Set 8 : Ready for Review #

Total comments: 30

Patch Set 9 : Review Fixes #

Total comments: 32

Patch Set 10 : Review Fixes 2 #

Total comments: 70

Patch Set 11 : Review Fixes 3 * NO UI Work #

Patch Set 12 : Review Fixes 3 * WITH UI Changes #

Total comments: 79

Patch Set 13 : Review Fixes 4 #

Patch Set 14 : UI Fixes from Jonny's Feedback #

Patch Set 15 : Removing default parameter for OnRoutesUpdated #

Total comments: 6

Patch Set 16 : Backwards Compatibility #

Total comments: 38

Patch Set 17 : Added WakeReason UMA Analytics and fixed comments #

Patch Set 18 : Rebasing #

Patch Set 19 : Rebase before commit #

Patch Set 20 : Fixing ChromeOS System Tray Test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+823 lines, -147 lines) Patch
M chrome/app/media_router_strings.grdp 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 chrome/browser/media/android/router/media_router_android.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +6 lines, -0 lines 0 comments Download
M chrome/browser/media/android/router/media_router_android.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 4 chunks +14 lines, -2 lines 0 comments Download
M chrome/browser/media/router/media_router.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +19 lines, -1 line 0 comments Download
M chrome/browser/media/router/media_router.mojom View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 3 chunks +45 lines, -8 lines 0 comments Download
M chrome/browser/media/router/media_router_metrics.h 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
M chrome/browser/media/router/media_router_mojo_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 8 chunks +37 lines, -6 lines 0 comments Download
M chrome/browser/media/router/media_router_mojo_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 9 chunks +132 lines, -29 lines 0 comments Download
M chrome/browser/media/router/media_router_mojo_impl_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 8 chunks +116 lines, -17 lines 0 comments Download
M chrome/browser/media/router/media_routes_observer.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +17 lines, -4 lines 0 comments Download
M chrome/browser/media/router/media_routes_observer.cc View 1 2 1 chunk +4 lines, -2 lines 0 comments Download
M chrome/browser/media/router/mock_media_router.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +6 lines, -0 lines 0 comments Download
M chrome/browser/media/router/test_helper.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 3 chunks +13 lines, -4 lines 0 comments Download
M chrome/browser/media/router/test_helper.cc View 1 2 3 4 5 6 7 8 9 1 chunk +3 lines, -2 lines 0 comments Download
M chrome/browser/resources/media_router/elements/route_details/route_details.css View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +21 lines, -8 lines 0 comments Download
M chrome/browser/resources/media_router/elements/route_details/route_details.html View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +13 lines, -4 lines 0 comments Download
M chrome/browser/resources/media_router/elements/route_details/route_details.js View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +20 lines, -0 lines 0 comments Download
M chrome/browser/resources/media_router/media_router.js View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 2 chunks +27 lines, -2 lines 0 comments Download
M chrome/browser/resources/media_router/media_router_data.js View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +5 lines, -1 line 0 comments Download
M chrome/browser/resources/media_router/media_router_ui_interface.js View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +10 lines, -0 lines 0 comments Download
M chrome/browser/ui/ash/cast_config_delegate_media_router.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 3 chunks +6 lines, -2 lines 0 comments Download
M chrome/browser/ui/ash/system_tray_tray_cast_browsertest_media_router_chromeos.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +4 lines, -2 lines 0 comments Download
M chrome/browser/ui/webui/media_router/media_router_localized_strings_provider.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/ui/webui/media_router/media_router_ui.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 7 chunks +28 lines, -4 lines 0 comments Download
M chrome/browser/ui/webui/media_router/media_router_ui.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 8 chunks +49 lines, -14 lines 0 comments Download
M chrome/browser/ui/webui/media_router/media_router_ui_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 4 chunks +57 lines, -9 lines 0 comments Download
M chrome/browser/ui/webui/media_router/media_router_webui_message_handler.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +3 lines, -1 line 0 comments Download
M chrome/browser/ui/webui/media_router/media_router_webui_message_handler.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 8 chunks +62 lines, -8 lines 0 comments Download
M chrome/browser/ui/webui/media_router/media_router_webui_message_handler_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +8 lines, -2 lines 0 comments Download
M chrome/test/data/webui/media_router/media_router_container_tests.js View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +10 lines, -5 lines 0 comments Download
M chrome/test/data/webui/media_router/route_details_tests.js View 1 2 3 4 5 6 7 8 9 10 11 5 chunks +26 lines, -2 lines 0 comments Download
M extensions/renderer/resources/media_router_bindings.js View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 5 chunks +54 lines, -7 lines 0 comments Download
M tools/metrics/histograms/histograms.xml View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 91 (42 generated)
imcheng
Overall the communication between the WebUI and C++ code for the canJoin bit feels a ...
5 years, 1 month ago (2015-11-03 19:28:03 UTC) #3
matt.boetger
https://codereview.chromium.org/1415103006/diff/20001/chrome/browser/ui/webui/media_router/media_router_ui.cc File chrome/browser/ui/webui/media_router/media_router_ui.cc (right): https://codereview.chromium.org/1415103006/diff/20001/chrome/browser/ui/webui/media_router/media_router_ui.cc#newcode379 chrome/browser/ui/webui/media_router/media_router_ui.cc:379: route_response_callbacks.push_back( On 2015/11/03 19:28:03, imcheng1 wrote: > We shouldn't ...
5 years, 1 month ago (2015-11-03 20:51:40 UTC) #4
mark a. foltz
Looks okay as a first cut. Where is the API for the MRP to give ...
5 years, 1 month ago (2015-11-09 19:12:31 UTC) #10
matt.boetger
This is still a work in progress. I'm currently working on the condition responsible for ...
5 years, 1 month ago (2015-11-09 19:24:35 UTC) #11
imcheng
https://codereview.chromium.org/1415103006/diff/70001/chrome/browser/ui/webui/media_router/media_router_ui.cc File chrome/browser/ui/webui/media_router/media_router_ui.cc (right): https://codereview.chromium.org/1415103006/diff/70001/chrome/browser/ui/webui/media_router/media_router_ui.cc#newcode381 chrome/browser/ui/webui/media_router/media_router_ui.cc:381: std::string presentation_id("non-local-join_"); On 2015/11/09 19:24:35, matt.boetger wrote: > On ...
5 years, 1 month ago (2015-11-09 22:23:15 UTC) #12
imcheng
Overall, I think it looks good. Did you find a reasonable way to implement the ...
5 years, 1 month ago (2015-11-19 18:55:09 UTC) #15
matt.boetger
https://codereview.chromium.org/1415103006/diff/170001/chrome/browser/media/router/media_router.mojom File chrome/browser/media/router/media_router.mojom (right): https://codereview.chromium.org/1415103006/diff/170001/chrome/browser/media/router/media_router.mojom#newcode164 chrome/browser/media/router/media_router.mojom:164: // StopObservingMediaRoutes() is called. On 2015/11/19 18:55:08, imcheng1 wrote: ...
5 years ago (2015-11-24 19:45:24 UTC) #18
imcheng
I reviewed only up to chrome/browser/media/router. Here are my comments so far. https://codereview.chromium.org/1415103006/diff/170001/chrome/browser/resources/media_router/elements/route_details/route_details.js File chrome/browser/resources/media_router/elements/route_details/route_details.js ...
5 years ago (2015-11-26 00:49:46 UTC) #20
whywhat
Re: android, I feel that we can't really implement manual join on Android which means ...
5 years ago (2015-11-26 14:43:04 UTC) #21
mark a. foltz
I'll look at this after you've addressed comments from avayvod@ and imcheng@. Please ping me ...
5 years ago (2015-11-30 23:14:33 UTC) #22
matt.boetger
I reverted a bunch of the Android changes. I moved the location of the 'canJoin' ...
5 years ago (2015-12-01 01:26:56 UTC) #25
whywhat
*/android/*: lgtm
5 years ago (2015-12-01 11:35:18 UTC) #26
imcheng
Thanks for your patience Matt. It's looking much better. https://codereview.chromium.org/1415103006/diff/310001/chrome/browser/media/android/router/media_router_android.cc File chrome/browser/media/android/router/media_router_android.cc (right): https://codereview.chromium.org/1415103006/diff/310001/chrome/browser/media/android/router/media_router_android.cc#newcode273 chrome/browser/media/android/router/media_router_android.cc:273: ...
5 years ago (2015-12-01 23:45:06 UTC) #28
matt.boetger
I updated the code and addressed Derek's review feedback. https://codereview.chromium.org/1415103006/diff/310001/chrome/browser/media/android/router/media_router_android.cc File chrome/browser/media/android/router/media_router_android.cc (right): https://codereview.chromium.org/1415103006/diff/310001/chrome/browser/media/android/router/media_router_android.cc#newcode273 chrome/browser/media/android/router/media_router_android.cc:273: ...
5 years ago (2015-12-03 01:19:21 UTC) #29
mark a. foltz
Some feedback on the API design. If this was a consensus with imcheng@ we should ...
5 years ago (2015-12-03 19:24:23 UTC) #30
mark a. foltz
Caveat: I didn't review the html/css/js in this round. Derek and I discussed this from ...
5 years ago (2015-12-09 00:48:17 UTC) #31
apacible
Please add screenshots of the route details view (ltr and rtl) with: - Close button ...
5 years ago (2015-12-09 19:56:25 UTC) #32
matt.boetger
I brought the code up to date and made the refactorings suggested by Mark. I ...
5 years ago (2015-12-15 19:21:21 UTC) #34
matt.boetger
Performed the UI tweaks suggested by Jennifer and Jonny. Here are the screenshots: Join And ...
5 years ago (2015-12-16 00:21:09 UTC) #35
mark a. foltz
Some minor comments remain (although I still am puzzled by a couple of things in ...
5 years ago (2015-12-16 07:17:35 UTC) #36
mark a. foltz
https://codereview.chromium.org/1415103006/diff/390001/chrome/browser/media/router/media_router_mojo_impl.cc File chrome/browser/media/router/media_router_mojo_impl.cc (right): https://codereview.chromium.org/1415103006/diff/390001/chrome/browser/media/router/media_router_mojo_impl.cc#newcode243 chrome/browser/media/router/media_router_mojo_impl.cc:243: joinable_routes_converted.push_back(joinable_route_ids[i]); If you just want to copy the elements ...
5 years ago (2015-12-16 07:28:05 UTC) #37
imcheng
https://codereview.chromium.org/1415103006/diff/390001/chrome/browser/media/android/router/media_router_dialog_controller_android.cc File chrome/browser/media/android/router/media_router_dialog_controller_android.cc (right): https://codereview.chromium.org/1415103006/diff/390001/chrome/browser/media/android/router/media_router_dialog_controller_android.cc#newcode157 chrome/browser/media/android/router/media_router_dialog_controller_android.cc:157: DCHECK(joinable_route_ids.empty()); This DCHECK is not needed. |joinable_route_ids| is not ...
5 years ago (2015-12-17 02:30:57 UTC) #38
apacible
Minor comments for resources/ and some general formatting. I need to take a closer look ...
5 years ago (2015-12-18 22:34:19 UTC) #40
matt.boetger
The next round of fixes addressing Jennifer's, Derek's and Mark's feedback. https://codereview.chromium.org/1415103006/diff/390001/chrome/app/media_router_strings.grdp File chrome/app/media_router_strings.grdp (right): ...
5 years ago (2015-12-18 23:37:15 UTC) #42
imcheng
https://codereview.chromium.org/1415103006/diff/390001/chrome/browser/media/router/media_routes_observer.h File chrome/browser/media/router/media_routes_observer.h (right): https://codereview.chromium.org/1415103006/diff/390001/chrome/browser/media/router/media_routes_observer.h#newcode37 chrome/browser/media/router/media_routes_observer.h:37: std::vector<MediaRoute::Id>()) {} On 2015/12/18 23:37:15, matt.boetger wrote: > Are ...
5 years ago (2015-12-21 20:00:35 UTC) #43
matt.boetger
I removed the default argument from the OnRoutesUpdated method. https://codereview.chromium.org/1415103006/diff/390001/chrome/browser/media/router/media_routes_observer.h File chrome/browser/media/router/media_routes_observer.h (right): https://codereview.chromium.org/1415103006/diff/390001/chrome/browser/media/router/media_routes_observer.h#newcode37 chrome/browser/media/router/media_routes_observer.h:37: ...
5 years ago (2015-12-22 20:44:52 UTC) #45
imcheng
Minor comments in newest patchset and PS 12, otherwise it's looking good. https://codereview.chromium.org/1415103006/diff/390001/chrome/browser/media/router/media_router_mojo_impl.cc File chrome/browser/media/router/media_router_mojo_impl.cc ...
4 years, 12 months ago (2015-12-29 00:24:42 UTC) #46
matt.boetger
I took Derek's latest feedback into account and made the interface work with the old ...
4 years, 11 months ago (2016-01-05 00:19:48 UTC) #47
imcheng
lgtm lgtm after comment is addressed. Also, does this need to wait for the MRPM ...
4 years, 11 months ago (2016-01-05 02:12:47 UTC) #48
mark a. foltz
LGTM with nit picks around comments addressed. https://codereview.chromium.org/1415103006/diff/510001/chrome/browser/media/router/media_router.h File chrome/browser/media/router/media_router.h (right): https://codereview.chromium.org/1415103006/diff/510001/chrome/browser/media/router/media_router.h#newcode90 chrome/browser/media/router/media_router.h:90: // |route_id|. ...
4 years, 11 months ago (2016-01-05 18:39:40 UTC) #49
stevenjb
Please update the CL description to have a max line length of 72 characters.
4 years, 11 months ago (2016-01-05 19:58:22 UTC) #51
stevenjb
Just reviewed c/b/ui https://codereview.chromium.org/1415103006/diff/510001/chrome/browser/ui/ash/cast_config_delegate_media_router.cc File chrome/browser/ui/ash/cast_config_delegate_media_router.cc (right): https://codereview.chromium.org/1415103006/diff/510001/chrome/browser/ui/ash/cast_config_delegate_media_router.cc#newcode90 chrome/browser/ui/ash/cast_config_delegate_media_router.cc:90: const MediaRouteIds& joinable_route_ids) { unused_joinable_route_ids https://codereview.chromium.org/1415103006/diff/510001/chrome/browser/ui/webui/media_router/media_router_ui.h ...
4 years, 11 months ago (2016-01-05 20:10:23 UTC) #52
apacible
lgtm https://codereview.chromium.org/1415103006/diff/510001/chrome/browser/media/router/media_router_mojo_impl.cc File chrome/browser/media/router/media_router_mojo_impl.cc (right): https://codereview.chromium.org/1415103006/diff/510001/chrome/browser/media/router/media_router_mojo_impl.cc#newcode240 chrome/browser/media/router/media_router_mojo_impl.cc:240: joinable_route_ids.To<std::vector<std::string>>(); nit: indent 4 spaces rather than 2 ...
4 years, 11 months ago (2016-01-05 21:41:58 UTC) #53
matt.boetger
Aside from fixing the comment nits, I also added the SetWakeReason with a new UMA ...
4 years, 11 months ago (2016-01-06 22:49:08 UTC) #56
stevenjb
FWIW, I think this has become complex enough that it should be broken up (e.g. ...
4 years, 11 months ago (2016-01-07 18:00:17 UTC) #57
Alexei Svitkine (slow)
lgtm
4 years, 11 months ago (2016-01-07 19:13:56 UTC) #59
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1415103006/550001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1415103006/550001
4 years, 11 months ago (2016-01-07 22:57:14 UTC) #62
commit-bot: I haz the power
Try jobs failed on following builders: ios_rel_device_ninja on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_rel_device_ninja/builds/155813) mac_chromium_compile_dbg_ng on tryserver.chromium.mac (JOB_FAILED, ...
4 years, 11 months ago (2016-01-07 22:59:45 UTC) #64
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1415103006/570001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1415103006/570001
4 years, 11 months ago (2016-01-07 23:53:01 UTC) #67
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_chromeos_compile_dbg_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_compile_dbg_ng/builds/140288) linux_chromium_chromeos_ozone_rel_ng on tryserver.chromium.linux (JOB_FAILED, ...
4 years, 11 months ago (2016-01-08 00:17:43 UTC) #69
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1415103006/590001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1415103006/590001
4 years, 11 months ago (2016-01-08 00:29:35 UTC) #72
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_ozone_rel_ng/builds/108393) linux_chromium_chromeos_rel_ng on tryserver.chromium.linux (JOB_FAILED, ...
4 years, 11 months ago (2016-01-08 00:49:38 UTC) #74
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1415103006/610001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1415103006/610001
4 years, 11 months ago (2016-01-08 01:19:31 UTC) #76
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_ozone_rel_ng/builds/108421)
4 years, 11 months ago (2016-01-08 01:40:52 UTC) #78
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1415103006/620001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1415103006/620001
4 years, 11 months ago (2016-01-08 01:50:24 UTC) #82
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 11 months ago (2016-01-08 03:01:03 UTC) #84
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1415103006/620001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1415103006/620001
4 years, 11 months ago (2016-01-08 03:05:05 UTC) #87
commit-bot: I haz the power
Committed patchset #20 (id:620001)
4 years, 11 months ago (2016-01-08 03:10:26 UTC) #89
commit-bot: I haz the power
4 years, 11 months ago (2016-01-08 03:11:51 UTC) #91
Message was sent while issue was closed.
Patchset 20 (id:??) landed as
https://crrev.com/5628601c63e07c7aa04d3e62eaeb90b2d60ea53a
Cr-Commit-Position: refs/heads/master@{#368260}

Powered by Google App Engine
This is Rietveld 408576698