New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 686706 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Email to this user bounced
Closed: May 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug

Blocked on:
issue 686704
issue 698664

Blocking:
issue 612322
issue 686707



Sign in to add a comment

Port //device/sensors Mojo interfaces from being hosted by //content/browser to being hosted by Device Service

Project Member Reported by blundell@chromium.org, Jan 30 2017

Issue description

The one interesting complexity is that the interfaces are registered on the UI thread on Android (via AddUIThreadInterface()) and the IO thread on other platforms. Will need to determine the right way to preserve this behavior in the Device Service.

As part of (or immediately following) this effort, the interfaces (and cpp client library) should be moved from //device/sensors to //services/device/public.
 
Blocking: 686707

Comment 2 by ke...@intel.com, Feb 15 2017

I think we don't need to move the interfaces into //services/device/public in the patch for this CL. Because doing so will bring dependency from //device/sensors onto //services.
The interfaces and cpp client library will be moved into //services together with other files of //device/sensors.  

Comment 3 by ke...@intel.com, Mar 6 2017

Blockedon: 698664
Project Member

Comment 4 by bugdroid1@chromium.org, Mar 23 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/57f4387cd58afa6949c3fa158271d49690ca8d81

commit 57f4387cd58afa6949c3fa158271d49690ca8d81
Author: ke.he <ke.he@intel.com>
Date: Thu Mar 23 07:40:03 2017

Port device_sensors to be hosted in Device Service

This patch moves device_sensors to be hosted by the Device Service.
Before this patch, device_sensors were registered in RenderProcessHostImpl, the
function DeviceSensorHost::Create() which makes StrongBinding is run on IO
Thread(if Android platform) or UI thread(if other platforms).

In this patch, we add a member |io_task_runner_| in DeviceService and use
PostTask() to make sure the StrongBindings still happen in same threads as
before.

TODO: The mojom and cpp library are still in //device/sensors, will move them
into //services/device later (when move //device/sensors/ implementations into
//service).

BUG= 686706 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation

Review-Url: https://codereview.chromium.org/2692993006
Cr-Commit-Position: refs/heads/master@{#459015}

[modify] https://crrev.com/57f4387cd58afa6949c3fa158271d49690ca8d81/content/browser/BUILD.gn
[modify] https://crrev.com/57f4387cd58afa6949c3fa158271d49690ca8d81/content/browser/renderer_host/render_process_host_impl.cc
[modify] https://crrev.com/57f4387cd58afa6949c3fa158271d49690ca8d81/content/public/app/mojo/content_browser_manifest.json
[modify] https://crrev.com/57f4387cd58afa6949c3fa158271d49690ca8d81/content/public/app/mojo/content_renderer_manifest.json
[modify] https://crrev.com/57f4387cd58afa6949c3fa158271d49690ca8d81/content/renderer/BUILD.gn
[modify] https://crrev.com/57f4387cd58afa6949c3fa158271d49690ca8d81/content/renderer/device_sensors/device_sensor_event_pump.h
[modify] https://crrev.com/57f4387cd58afa6949c3fa158271d49690ca8d81/content/test/BUILD.gn
[modify] https://crrev.com/57f4387cd58afa6949c3fa158271d49690ca8d81/services/device/BUILD.gn
[modify] https://crrev.com/57f4387cd58afa6949c3fa158271d49690ca8d81/services/device/device_service.cc
[modify] https://crrev.com/57f4387cd58afa6949c3fa158271d49690ca8d81/services/device/device_service.h
[modify] https://crrev.com/57f4387cd58afa6949c3fa158271d49690ca8d81/services/device/manifest.json

Comment 5 by ke...@intel.com, May 19 2017

Status: Fixed (was: Assigned)
Components: Internals>Services>Device

Sign in to add a comment