| // Copyright 2018 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "chrome/browser/chromeos/arc/pip/arc_picture_in_picture_window_controller_impl.h" |
| |
| #include "chrome/browser/chromeos/arc/pip/arc_pip_bridge.h" |
| |
| namespace arc { |
| |
| ArcPictureInPictureWindowControllerImpl:: |
| ArcPictureInPictureWindowControllerImpl(arc::ArcPipBridge* arc_pip_bridge) |
| : arc_pip_bridge_(arc_pip_bridge) {} |
| |
| ArcPictureInPictureWindowControllerImpl:: |
| ~ArcPictureInPictureWindowControllerImpl() { |
| Close(false); |
| } |
| |
| gfx::Size ArcPictureInPictureWindowControllerImpl::Show() { |
| // Should be a no-op on ARC. This is managed on the Android side. |
| return gfx::Size(); |
| } |
| |
| void ArcPictureInPictureWindowControllerImpl::Close(bool should_pause_video) { |
| // TODO(edcourtney): Currently, |should_pause_video| will always be false |
| // here, but if that changes, we should pause the video on the Android side. |
| arc_pip_bridge_->ClosePip(); |
| } |
| |
| void ArcPictureInPictureWindowControllerImpl::OnWindowDestroyed() { |
| // Should be a no-op on ARC. This is managed on the Android side. |
| } |
| |
| void ArcPictureInPictureWindowControllerImpl::ClickCustomControl( |
| const std::string& control_id) { |
| // Should be a no-op on ARC. This is managed on the Android side. |
| } |
| |
| void ArcPictureInPictureWindowControllerImpl::SetPictureInPictureCustomControls( |
| const std::vector<blink::PictureInPictureControlInfo>& info) { |
| // Should be a no-op on ARC. This is managed on the Android side. |
| } |
| |
| void ArcPictureInPictureWindowControllerImpl::EmbedSurface( |
| const viz::SurfaceId& surface_id, |
| const gfx::Size& natural_size) { |
| // Should be a no-op on ARC. This is managed on the Android side. |
| } |
| |
| content::OverlayWindow* |
| ArcPictureInPictureWindowControllerImpl::GetWindowForTesting() { |
| // Should be a no-op on ARC. This is managed on the Android side. |
| return nullptr; |
| } |
| |
| void ArcPictureInPictureWindowControllerImpl::UpdateLayerBounds() { |
| // Should be a no-op on ARC. This is managed on the Android side. |
| } |
| |
| bool ArcPictureInPictureWindowControllerImpl::IsPlayerActive() { |
| // Should be a no-op on ARC. This is managed on the Android side. |
| return false; |
| } |
| |
| content::WebContents* |
| ArcPictureInPictureWindowControllerImpl::GetInitiatorWebContents() { |
| // Should be a no-op on ARC. This is managed on the Android side. |
| return nullptr; |
| } |
| |
| void ArcPictureInPictureWindowControllerImpl::UpdatePlaybackState( |
| bool is_playing, |
| bool reached_end_of_stream) { |
| // Should be a no-op on ARC. This is managed on the Android side. |
| } |
| |
| bool ArcPictureInPictureWindowControllerImpl::TogglePlayPause() { |
| // Should be a no-op on ARC. This is managed on the Android side. |
| return false; |
| } |
| |
| } // namespace arc |