Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "components/arc/arc_bridge_service_impl.h" | 5 #include "components/arc/arc_bridge_service_impl.h" |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "base/files/file_path.h" | 8 #include "base/files/file_path.h" |
| 9 #include "base/files/file_util.h" | 9 #include "base/files/file_util.h" |
| 10 #include "base/prefs/pref_registry_simple.h" | 10 #include "base/prefs/pref_registry_simple.h" |
| (...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 149 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); | 149 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); |
| 150 if (state() != State::READY) { | 150 if (state() != State::READY) { |
| 151 LOG(ERROR) << "Called RequestAppIcon when the service is not ready"; | 151 LOG(ERROR) << "Called RequestAppIcon when the service is not ready"; |
| 152 return false; | 152 return false; |
| 153 } | 153 } |
| 154 return ipc_channel_->Send(new ArcInstanceMsg_RequestAppIcon(package, | 154 return ipc_channel_->Send(new ArcInstanceMsg_RequestAppIcon(package, |
| 155 activity, | 155 activity, |
| 156 scale_factor)); | 156 scale_factor)); |
| 157 } | 157 } |
| 158 | 158 |
| 159 bool ArcBridgeServiceImpl::SendClipboardContentToAndroid( | |
| 160 const ClipboardData data) { | |
| 161 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); | |
| 162 if (state() != State::READY) { | |
| 163 LOG(ERROR) << "Called SendClipboardContentToAndroid when the service is" | |
|
jochen (gone - plz use gerrit)
2015/12/07 15:45:09
no LOG
please use DVLOG/VLOG
the user won't see
| |
| 164 << " not ready"; | |
| 165 return false; | |
| 166 } | |
| 167 | |
| 168 return ipc_channel_->Send( | |
| 169 new ArcInstanceMsg_SendClipboardContentToAndroid(data)); | |
| 170 } | |
| 171 | |
| 159 void ArcBridgeServiceImpl::SocketConnect(const base::FilePath& socket_path) { | 172 void ArcBridgeServiceImpl::SocketConnect(const base::FilePath& socket_path) { |
| 160 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); | 173 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); |
| 161 if (state() != State::STOPPED) { | 174 if (state() != State::STOPPED) { |
| 162 VLOG(1) << "SocketConnect() called when instance is not stopped"; | 175 VLOG(1) << "SocketConnect() called when instance is not stopped"; |
| 163 return; | 176 return; |
| 164 } | 177 } |
| 165 SetState(State::CONNECTING); | 178 SetState(State::CONNECTING); |
| 166 base::PostTaskAndReplyWithResult( | 179 base::PostTaskAndReplyWithResult( |
| 167 file_task_runner_.get(), FROM_HERE, | 180 file_task_runner_.get(), FROM_HERE, |
| 168 base::Bind(&base::CreateDirectory, socket_path.DirName()), | 181 base::Bind(&base::CreateDirectory, socket_path.DirName()), |
| (...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 287 | 300 |
| 288 IPC_BEGIN_MESSAGE_MAP(ArcBridgeServiceImpl, message) | 301 IPC_BEGIN_MESSAGE_MAP(ArcBridgeServiceImpl, message) |
| 289 IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_InstanceBootPhase, | 302 IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_InstanceBootPhase, |
| 290 OnInstanceBootPhase) | 303 OnInstanceBootPhase) |
| 291 IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_AppListRefreshed, OnAppListRefreshed) | 304 IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_AppListRefreshed, OnAppListRefreshed) |
| 292 IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_AppIcon, OnAppIcon) | 305 IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_AppIcon, OnAppIcon) |
| 293 IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_NotificationPosted, | 306 IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_NotificationPosted, |
| 294 OnNotificationPostedFromAndroid) | 307 OnNotificationPostedFromAndroid) |
| 295 IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_NotificationRemoved, | 308 IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_NotificationRemoved, |
| 296 OnNotificationRemovedFromAndroid) | 309 OnNotificationRemovedFromAndroid) |
| 310 IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_SetClipboardContent, | |
| 311 OnSetClipboardContent) | |
| 312 IPC_MESSAGE_HANDLER(ArcInstanceHostMsg_GetClipboardContent, | |
| 313 OnGetClipboardContent) | |
| 297 IPC_MESSAGE_UNHANDLED(handled = false) | 314 IPC_MESSAGE_UNHANDLED(handled = false) |
| 298 IPC_END_MESSAGE_MAP() | 315 IPC_END_MESSAGE_MAP() |
| 299 | 316 |
| 300 if (!handled) | 317 if (!handled) |
| 301 LOG(ERROR) << "Invalid message with type = " << message.type(); | 318 LOG(ERROR) << "Invalid message with type = " << message.type(); |
| 302 return handled; | 319 return handled; |
| 303 } | 320 } |
| 304 | 321 |
| 305 void ArcBridgeServiceImpl::OnAppListRefreshed( | 322 void ArcBridgeServiceImpl::OnAppListRefreshed( |
| 306 const std::vector<arc::AppInfo>& apps) { | 323 const std::vector<arc::AppInfo>& apps) { |
| 307 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); | 324 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); |
| 308 FOR_EACH_OBSERVER(AppObserver, app_observer_list(), OnAppListRefreshed(apps)); | 325 FOR_EACH_OBSERVER(AppObserver, app_observer_list(), OnAppListRefreshed(apps)); |
| 309 } | 326 } |
| 310 | 327 |
| 311 void ArcBridgeServiceImpl::OnAppIcon( | 328 void ArcBridgeServiceImpl::OnAppIcon( |
| 312 const std::string& package, | 329 const std::string& package, |
| 313 const std::string& activity, | 330 const std::string& activity, |
| 314 ScaleFactor scale_factor, | 331 ScaleFactor scale_factor, |
| 315 const std::vector<uint8_t>& icon_png_data) { | 332 const std::vector<uint8_t>& icon_png_data) { |
| 316 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); | 333 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); |
| 317 FOR_EACH_OBSERVER(AppObserver, | 334 FOR_EACH_OBSERVER(AppObserver, |
| 318 app_observer_list(), | 335 app_observer_list(), |
| 319 OnAppIcon(package, activity, scale_factor, icon_png_data)); | 336 OnAppIcon(package, activity, scale_factor, icon_png_data)); |
| 320 } | 337 } |
| 321 | 338 |
| 339 void ArcBridgeServiceImpl::OnSetClipboardContent( | |
| 340 const ClipboardData& data) { | |
| 341 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); | |
| 342 FOR_EACH_OBSERVER(ClipboardObserver, clipboard_observer_list(), | |
| 343 OnSetClipboardContent(data)); | |
| 344 } | |
| 345 | |
| 346 void ArcBridgeServiceImpl::OnGetClipboardContent() { | |
| 347 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); | |
| 348 FOR_EACH_OBSERVER(ClipboardObserver, clipboard_observer_list(), | |
| 349 OnGetClipboardContent()); | |
| 350 } | |
| 351 | |
| 322 void ArcBridgeServiceImpl::OnArcAvailable(bool arc_available) { | 352 void ArcBridgeServiceImpl::OnArcAvailable(bool arc_available) { |
| 323 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); | 353 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); |
| 324 if (available() == arc_available) | 354 if (available() == arc_available) |
| 325 return; | 355 return; |
| 326 SetAvailable(arc_available); | 356 SetAvailable(arc_available); |
| 327 PrerequisitesChanged(); | 357 PrerequisitesChanged(); |
| 328 } | 358 } |
| 329 | 359 |
| 330 void ArcBridgeServiceImpl::OnInstanceStopped(bool success) { | 360 void ArcBridgeServiceImpl::OnInstanceStopped(bool success) { |
| 331 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); | 361 DCHECK(origin_task_runner()->RunsTasksOnCurrentThread()); |
| 332 // STOPPING is the only valid state for this function. | 362 // STOPPING is the only valid state for this function. |
| 333 // DCHECK on enum classes not supported. | 363 // DCHECK on enum classes not supported. |
| 334 DCHECK(state() == State::STOPPING); | 364 DCHECK(state() == State::STOPPING); |
| 335 ipc_channel_.reset(); | 365 ipc_channel_.reset(); |
| 336 SetState(State::STOPPED); | 366 SetState(State::STOPPED); |
| 337 } | 367 } |
| 338 | 368 |
| 339 } // namespace arc | 369 } // namespace arc |
| OLD | NEW |