Chromium Code Reviews| Index: components/arc/arc_bridge_service_impl.cc |
| diff --git a/components/arc/arc_bridge_service_impl.cc b/components/arc/arc_bridge_service_impl.cc |
| index be5fdad77d453ec54c6620dca3f0dcd4cbfafc59..41f8f27fedf036f99eb43f6d89fdea0cd204d66e 100644 |
| --- a/components/arc/arc_bridge_service_impl.cc |
| +++ b/components/arc/arc_bridge_service_impl.cc |
| @@ -108,6 +108,39 @@ bool ArcBridgeServiceImpl::RegisterInputDevice(const std::string& name, |
| name, device_type, base::FileDescriptor(fd.Pass()))); |
| } |
| +bool ArcBridgeServiceImpl::RefreshApps() { |
| + DCHECK(origin_task_runner_->RunsTasksOnCurrentThread()); |
| + if (state() != State::READY) { |
| + LOG(ERROR) << "Called RefreshApps when the service is not ready"; |
| + return false; |
| + } |
| + return ipc_channel_->Send(new ArcInstanceMsg_RefreshApps()); |
| +} |
| + |
| +bool ArcBridgeServiceImpl::LaunchApp(const std::string& package, |
| + const std::string& activity) { |
| + DCHECK(origin_task_runner_->RunsTasksOnCurrentThread()); |
| + if (state() != State::READY) { |
| + LOG(ERROR) << "Called LaunchApp when the service is not ready"; |
| + return false; |
| + } |
| + |
| + return ipc_channel_->Send(new ArcInstanceMsg_LaunchApp(package, activity)); |
| +} |
| + |
| +bool ArcBridgeServiceImpl::RequestIcon(const std::string& package, |
| + const std::string& activity, |
| + int scale_factor) { |
| + DCHECK(origin_task_runner_->RunsTasksOnCurrentThread()); |
| + if (state() != State::READY) { |
| + LOG(ERROR) << "Called RequestIcon when the service is not ready"; |
| + return false; |
| + } |
| + return ipc_channel_->Send(new ArcInstanceMsg_RequestIcon(package, |
| + activity, |
| + scale_factor)); |
| +} |
| + |
| void ArcBridgeServiceImpl::SocketConnect(const base::FilePath& socket_path) { |
| DCHECK(origin_task_runner_->RunsTasksOnCurrentThread()); |
| if (state() != State::STOPPED) { |
| @@ -226,6 +259,8 @@ bool ArcBridgeServiceImpl::OnMessageReceived(const IPC::Message& message) { |
| IPC_BEGIN_MESSAGE_MAP(ArcBridgeServiceImpl, message) |
| IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_InstanceBootPhase, |
| OnInstanceBootPhase) |
| + IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_AppsRefreshed, OnAppsRefreshed) |
| + IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_AppIcon, OnAppIcon) |
| IPC_MESSAGE_UNHANDLED(handled = false) |
| IPC_END_MESSAGE_MAP() |
| @@ -234,6 +269,23 @@ bool ArcBridgeServiceImpl::OnMessageReceived(const IPC::Message& message) { |
| return handled; |
| } |
| +void ArcBridgeServiceImpl::OnAppsRefreshed( |
| + const std::vector<arc::AppInfo>& apps) { |
| + DCHECK(origin_task_runner_->RunsTasksOnCurrentThread()); |
| + FOR_EACH_OBSERVER(Observer, observer_list_, OnAppsRefreshed(apps)); |
| +} |
| + |
| +void ArcBridgeServiceImpl::OnAppIcon(const std::string& package, |
| + const std::string& activity, |
|
Luis Héctor Chávez
2015/11/25 21:53:40
nit: Misaligned
|
| + int scale_factor, |
| + const std::vector<uint8_t>& icon_png_data) { |
| + DCHECK(origin_task_runner_->RunsTasksOnCurrentThread()); |
| + FOR_EACH_OBSERVER(Observer, observer_list_, OnAppIcon(package, |
| + activity, |
| + scale_factor, |
| + icon_png_data)); |
| +} |
| + |
| void ArcBridgeServiceImpl::OnArcAvailable(bool arc_available) { |
| DCHECK(origin_task_runner_->RunsTasksOnCurrentThread()); |
| if (available() == arc_available) |