1// Copyright (c) 2012 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "remoting/host/ipc_input_injector.h"
6
7#include "remoting/host/desktop_session_proxy.h"
8
9namespace remoting {
10
11IpcInputInjector::IpcInputInjector(
12    scoped_refptr<DesktopSessionProxy> desktop_session_proxy)
13    : desktop_session_proxy_(desktop_session_proxy) {
14}
15
16IpcInputInjector::~IpcInputInjector() {
17}
18
19void IpcInputInjector::InjectClipboardEvent(
20    const protocol::ClipboardEvent& event) {
21  desktop_session_proxy_->InjectClipboardEvent(event);
22}
23
24void IpcInputInjector::InjectKeyEvent(const protocol::KeyEvent& event) {
25  desktop_session_proxy_->InjectKeyEvent(event);
26}
27
28void IpcInputInjector::InjectTextEvent(const protocol::TextEvent& event) {
29  desktop_session_proxy_->InjectTextEvent(event);
30}
31
32void IpcInputInjector::InjectMouseEvent(const protocol::MouseEvent& event) {
33  desktop_session_proxy_->InjectMouseEvent(event);
34}
35
36void IpcInputInjector::Start(
37    scoped_ptr<protocol::ClipboardStub> client_clipboard) {
38  desktop_session_proxy_->StartInputInjector(client_clipboard.Pass());
39}
40
41}  // namespace remoting
42