1234567891011121314151617181920212223242526272829303132333435363738 |
- // Copyright (c) 2012 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 "remoting/protocol/clipboard_thread_proxy.h"
- #include "base/bind.h"
- #include "remoting/proto/event.pb.h"
- namespace remoting {
- namespace protocol {
- ClipboardThreadProxy::~ClipboardThreadProxy() = default;
- ClipboardThreadProxy::ClipboardThreadProxy(
- const base::WeakPtr<ClipboardStub>& clipboard_stub,
- scoped_refptr<base::TaskRunner> clipboard_stub_task_runner)
- : clipboard_stub_(clipboard_stub),
- clipboard_stub_task_runner_(clipboard_stub_task_runner) {
- }
- void ClipboardThreadProxy::InjectClipboardEvent(const ClipboardEvent& event) {
- clipboard_stub_task_runner_->PostTask(
- FROM_HERE,
- base::BindOnce(&ClipboardThreadProxy::InjectClipboardEventStatic,
- clipboard_stub_, event));
- }
- void ClipboardThreadProxy::InjectClipboardEventStatic(
- const base::WeakPtr<ClipboardStub>& clipboard_stub,
- const ClipboardEvent& event) {
- if (clipboard_stub.get()) {
- clipboard_stub->InjectClipboardEvent(event);
- }
- }
- } // namespace protocol
- } // namespace remoting
|