15f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved.
25f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
35f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)// found in the LICENSE file.
45f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
55f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#include "remoting/host/fake_desktop_environment.h"
65f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
75f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#include "remoting/host/audio_capturer.h"
86e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)#include "remoting/host/fake_desktop_capturer.h"
95f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#include "remoting/host/gnubby_auth_handler.h"
105f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#include "remoting/host/input_injector.h"
115f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
125f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)namespace remoting {
135f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
145f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)FakeInputInjector::FakeInputInjector() {}
155f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)FakeInputInjector::~FakeInputInjector() {}
165f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
175f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)void FakeInputInjector::Start(
185f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)    scoped_ptr<protocol::ClipboardStub> client_clipboard) {
195f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
205f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
215f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)void FakeInputInjector::InjectKeyEvent(const protocol::KeyEvent& event) {
225f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
235f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
245f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)void FakeInputInjector::InjectTextEvent(const protocol::TextEvent& event) {
255f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
265f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
275f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)void FakeInputInjector::InjectMouseEvent(const protocol::MouseEvent& event) {
285f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
295f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
305f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)void FakeInputInjector::InjectClipboardEvent(
315f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)    const protocol::ClipboardEvent& event) {
325f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
335f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
345f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)FakeScreenControls::FakeScreenControls() {}
355f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)FakeScreenControls::~FakeScreenControls() {}
365f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
375f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)void FakeScreenControls::SetScreenResolution(
385f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)    const ScreenResolution& resolution) {
395f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
405f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
415f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)FakeDesktopEnvironment::FakeDesktopEnvironment() {}
425f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
435f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)FakeDesktopEnvironment::~FakeDesktopEnvironment() {}
445f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
455f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)// DesktopEnvironment implementation.
465f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)scoped_ptr<AudioCapturer> FakeDesktopEnvironment::CreateAudioCapturer() {
475f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  return scoped_ptr<AudioCapturer>();
485f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
495f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
505f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)scoped_ptr<InputInjector> FakeDesktopEnvironment::CreateInputInjector() {
515f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  return scoped_ptr<InputInjector>(new FakeInputInjector());
525f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
535f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
545f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)scoped_ptr<ScreenControls> FakeDesktopEnvironment::CreateScreenControls() {
555f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  return scoped_ptr<ScreenControls>(new FakeScreenControls());
565f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
575f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
586e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)scoped_ptr<webrtc::DesktopCapturer>
595f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)FakeDesktopEnvironment::CreateVideoCapturer() {
606e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  scoped_ptr<FakeDesktopCapturer> result(new FakeDesktopCapturer());
615f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  if (!frame_generator_.is_null())
625f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)    result->set_frame_generator(frame_generator_);
636e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  return result.PassAs<webrtc::DesktopCapturer>();
646e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)}
656e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)
666e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)scoped_ptr<webrtc::MouseCursorMonitor>
676e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)FakeDesktopEnvironment::CreateMouseCursorMonitor() {
686e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  return scoped_ptr<webrtc::MouseCursorMonitor>(new FakeMouseCursorMonitor());
695f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
705f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
715f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)std::string FakeDesktopEnvironment::GetCapabilities() const {
725f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  return std::string();
735f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
745f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
755f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)void FakeDesktopEnvironment::SetCapabilities(const std::string& capabilities) {}
765f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
775f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)scoped_ptr<GnubbyAuthHandler> FakeDesktopEnvironment::CreateGnubbyAuthHandler(
785f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)    protocol::ClientStub* client_stub) {
795f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  return scoped_ptr<GnubbyAuthHandler>();
805f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
815f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
825f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)FakeDesktopEnvironmentFactory::FakeDesktopEnvironmentFactory() {}
835f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)FakeDesktopEnvironmentFactory::~FakeDesktopEnvironmentFactory() {}
845f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
855f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)// DesktopEnvironmentFactory implementation.
865f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)scoped_ptr<DesktopEnvironment> FakeDesktopEnvironmentFactory::Create(
875f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)    base::WeakPtr<ClientSessionControl> client_session_control) {
885f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  scoped_ptr<FakeDesktopEnvironment> result(new FakeDesktopEnvironment());
895f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  result->set_frame_generator(frame_generator_);
905f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  return result.PassAs<DesktopEnvironment>();
915f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
925f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
935f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)void FakeDesktopEnvironmentFactory::SetEnableCurtaining(bool enable) {}
945f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
955f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)bool FakeDesktopEnvironmentFactory::SupportsAudioCapture() const {
965f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  return false;
975f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
985f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
995f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)void FakeDesktopEnvironmentFactory::SetEnableGnubbyAuth(bool enable) {}
1005f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
1015f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
1025f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}  // namespace remoting
103