aboutsummaryrefslogtreecommitdiff
path: root/src/widgets/EdgeDecoration.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/widgets/EdgeDecoration.cpp')
-rw-r--r--src/widgets/EdgeDecoration.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/widgets/EdgeDecoration.cpp b/src/widgets/EdgeDecoration.cpp
index 7351552..bb114bf 100644
--- a/src/widgets/EdgeDecoration.cpp
+++ b/src/widgets/EdgeDecoration.cpp
@@ -11,7 +11,8 @@
QString default_html_layout = R"HTML(
<script>
- window.__nullbrowser ||= (() => {
+ window._nullbrowser ||= {};
+ window._nullbrowser.rpc ||= (() => {
const invoke = (action, opts = {}) => {
const urlParams = new URLSearchParams(opts);
const url = `nullrpc://${action}?${urlParams.toString()}`;
@@ -93,6 +94,12 @@ void EdgeDecoration::set_url(const QUrl &url) {
webview.value()->setUrl(url);
}
+void EdgeDecoration::run_javascript(const QString &js_code) {
+ if (!webview.has_value())
+ return;
+ webview.value()->run_javascript(js_code);
+}
+
std::optional<WebViewId> EdgeDecoration::get_view_id() {
return webview.has_value() ? std::make_optional(webview.value()->get_id()) : std::nullopt;
}