From 3f5325f59ba7f8552d093fdafd9674b713f3cad9 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 20 Apr 2025 22:57:32 +0530 Subject: Add scrolling controls --- src/widgets/WebView.cpp | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'src/widgets/WebView.cpp') diff --git a/src/widgets/WebView.cpp b/src/widgets/WebView.cpp index aead605..0ec2a74 100644 --- a/src/widgets/WebView.cpp +++ b/src/widgets/WebView.cpp @@ -21,3 +21,25 @@ void WebView::open_devtools() { page()->setDevToolsPage(devtools_window->page()); } + +void WebView::scroll_increment(int deltax, int deltay) { + auto code = QString(R"((() => { + const $el = document.scrollingElement; + $el.scrollTo($el.scrollLeft + %1, $el.scrollTop + %2); + })())") + .arg(deltax) + .arg(deltay); + + page()->runJavaScript(code); +} + +void WebView::scroll_to_top() { + auto code = QString(R"(document.scrollingElement.scrollTo(0, 0))"); + page()->runJavaScript(code); +} + +void WebView::scroll_to_bottom() { + auto code = + QString(R"(document.scrollingElement.scrollTo(0, document.scrollingElement.scrollHeight))"); + page()->runJavaScript(code); +} -- cgit v1.3.1