blob: 98b0ac9c299a0d5146ba016c4f8e3696f734c63c [file] [log] [blame]
// Copyright 2017 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 "core/clipboard/Clipboard.h"
#include "bindings/core/v8/ScriptPromiseResolver.h"
#include "core/clipboard/ClipboardPromise.h"
namespace blink {
Clipboard::Clipboard(ExecutionContext* context)
: ContextLifecycleObserver(context) {}
ScriptPromise Clipboard::read(ScriptState* script_state) {
return ClipboardPromise::CreateForRead(script_state);
}
ScriptPromise Clipboard::readText(ScriptState* script_state) {
return ClipboardPromise::CreateForReadText(script_state);
}
ScriptPromise Clipboard::write(ScriptState* script_state, DataTransfer* data) {
return ClipboardPromise::CreateForWrite(script_state, data);
}
ScriptPromise Clipboard::writeText(ScriptState* script_state,
const String& data) {
return ClipboardPromise::CreateForWriteText(script_state, data);
}
const AtomicString& Clipboard::InterfaceName() const {
return EventTargetNames::Clipboard;
}
ExecutionContext* Clipboard::GetExecutionContext() const {
return ContextLifecycleObserver::GetExecutionContext();
}
DEFINE_TRACE(Clipboard) {
EventTarget::Trace(visitor);
ContextLifecycleObserver::Trace(visitor);
}
} // namespace blink