12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// found in the LICENSE file. 42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "remoting/host/ipc_input_injector.h" 62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "remoting/host/desktop_session_proxy.h" 82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace remoting { 102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IpcInputInjector::IpcInputInjector( 122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) scoped_refptr<DesktopSessionProxy> desktop_session_proxy) 132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) : desktop_session_proxy_(desktop_session_proxy) { 142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IpcInputInjector::~IpcInputInjector() { 172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void IpcInputInjector::InjectClipboardEvent( 202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const protocol::ClipboardEvent& event) { 212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) desktop_session_proxy_->InjectClipboardEvent(event); 222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void IpcInputInjector::InjectKeyEvent(const protocol::KeyEvent& event) { 252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) desktop_session_proxy_->InjectKeyEvent(event); 262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 28effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochvoid IpcInputInjector::InjectTextEvent(const protocol::TextEvent& event) { 29effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch desktop_session_proxy_->InjectTextEvent(event); 30effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch} 31effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch 322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void IpcInputInjector::InjectMouseEvent(const protocol::MouseEvent& event) { 332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) desktop_session_proxy_->InjectMouseEvent(event); 342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void IpcInputInjector::Start( 372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) scoped_ptr<protocol::ClipboardStub> client_clipboard) { 382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) desktop_session_proxy_->StartInputInjector(client_clipboard.Pass()); 392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} // namespace remoting 42