mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 04:07:44 +00:00
LibWeb: Begin implementing the Clipboard API
https://w3c.github.io/clipboard-apis/ This implements enough for navigator.clipboard.writeText(String).
This commit is contained in:
parent
78d455e231
commit
4b94b0b561
14 changed files with 303 additions and 0 deletions
|
@ -8,6 +8,7 @@
|
|||
#include <LibJS/Heap/Heap.h>
|
||||
#include <LibJS/Runtime/Realm.h>
|
||||
#include <LibWeb/Bindings/Intrinsics.h>
|
||||
#include <LibWeb/Clipboard/Clipboard.h>
|
||||
#include <LibWeb/HTML/Navigator.h>
|
||||
#include <LibWeb/HTML/Scripting/Environments.h>
|
||||
#include <LibWeb/HTML/Window.h>
|
||||
|
@ -57,6 +58,7 @@ void Navigator::visit_edges(Cell::Visitor& visitor)
|
|||
Base::visit_edges(visitor);
|
||||
visitor.visit(m_mime_type_array);
|
||||
visitor.visit(m_plugin_array);
|
||||
visitor.visit(m_clipboard);
|
||||
}
|
||||
|
||||
JS::NonnullGCPtr<MimeTypeArray> Navigator::mime_types()
|
||||
|
@ -73,4 +75,11 @@ JS::NonnullGCPtr<PluginArray> Navigator::plugins()
|
|||
return *m_plugin_array;
|
||||
}
|
||||
|
||||
JS::NonnullGCPtr<Clipboard::Clipboard> Navigator::clipboard()
|
||||
{
|
||||
if (!m_clipboard)
|
||||
m_clipboard = heap().allocate<Clipboard::Clipboard>(realm(), realm());
|
||||
return *m_clipboard;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue