Index: remoting/host/event_executor_linux.cc |
diff --git a/remoting/host/event_executor_linux.cc b/remoting/host/event_executor_linux.cc |
index fe64ad23e446d2c9260b56c8cc66430ab1e1f46a..04fe441ccf6f0ce56700d8006e7a4169c8eaee4b 100644 |
--- a/remoting/host/event_executor_linux.cc |
+++ b/remoting/host/event_executor_linux.cc |
@@ -17,6 +17,7 @@ |
#include "base/location.h" |
#include "base/logging.h" |
#include "base/single_thread_task_runner.h" |
+#include "remoting/host/clipboard.h" |
#include "remoting/proto/internal.pb.h" |
#include "third_party/skia/include/core/SkPoint.h" |
@@ -73,6 +74,8 @@ class EventExecutorLinux : public EventExecutor { |
int test_event_base_; |
int test_error_base_; |
+ scoped_ptr<Clipboard> clipboard_; |
+ |
DISALLOW_COPY_AND_ASSIGN(EventExecutorLinux); |
}; |
@@ -275,7 +278,8 @@ EventExecutorLinux::EventExecutorLinux( |
: task_runner_(task_runner), |
latest_mouse_position_(SkIPoint::Make(-1, -1)), |
display_(XOpenDisplay(NULL)), |
- root_window_(BadValue) { |
+ root_window_(BadValue), |
+ clipboard_(Clipboard::Create()) { |
} |
EventExecutorLinux::~EventExecutorLinux() { |
@@ -304,7 +308,7 @@ bool EventExecutorLinux::Init() { |
} |
void EventExecutorLinux::InjectClipboardEvent(const ClipboardEvent& event) { |
- // TODO(simonmorris): Implement clipboard injection. |
+ clipboard_->InjectClipboardEvent(event); |
} |
void EventExecutorLinux::InjectKeyEvent(const KeyEvent& event) { |
@@ -441,11 +445,11 @@ void EventExecutorLinux::InjectMouseEvent(const MouseEvent& event) { |
void EventExecutorLinux::OnSessionStarted( |
scoped_ptr<protocol::ClipboardStub> client_clipboard) { |
- return; |
+ clipboard_->Start(client_clipboard.Pass()); |
} |
void EventExecutorLinux::OnSessionFinished() { |
- return; |
+ clipboard_->Stop(); |
} |
} // namespace |