emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 14/15] xwidget: Bind "beginning-of-buffer" and "end-of-buffer"


From: Ricardo Wurmus
Subject: [PATCH 14/15] xwidget: Bind "beginning-of-buffer" and "end-of-buffer"
Date: Mon, 24 Oct 2016 18:41:00 +0200

* lisp/xwidget.el: Rebind "beginning-of-buffer" and "end-of-buffer" to
"xwidget-webkit-scroll-top" and "xwidget-webkit-scroll-bottom",
respectively.
(xwidget-webkit-scroll-top,
xwidget-webkit-scroll-bottom): New procedures.
---
 lisp/xwidget.el | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/lisp/xwidget.el b/lisp/xwidget.el
index 871b729..8aa0584 100644
--- a/lisp/xwidget.el
+++ b/lisp/xwidget.el
@@ -129,8 +129,8 @@ Interactively, URL defaults to the string looking like a 
url around point."
 
     ;; (define-key map [remap move-beginning-of-line] 'image-bol)
     ;; (define-key map [remap move-end-of-line]       'image-eol)
-    ;; (define-key map [remap beginning-of-buffer]    'image-bob)
-    ;; (define-key map [remap end-of-buffer]          'image-eob)
+    (define-key map [remap beginning-of-buffer] 'xwidget-webkit-scroll-top)
+    (define-key map [remap end-of-buffer]       'xwidget-webkit-scroll-bottom)
     map)
   "Keymap for `xwidget-webkit-mode'.")
 
@@ -172,6 +172,19 @@ Interactively, URL defaults to the string looking like a 
url around point."
    (xwidget-webkit-current-session)
    "window.scrollBy(-50, 0);"))
 
+(defun xwidget-webkit-scroll-top ()
+  "Scroll webkit to the very top."
+  (interactive)
+  (xwidget-webkit-execute-script
+   (xwidget-webkit-current-session)
+   "window.scrollTo(pageXOffset, 0);"))
+
+(defun xwidget-webkit-scroll-bottom ()
+  "Scroll webkit to the very bottom."
+  (interactive)
+  (xwidget-webkit-execute-script
+   (xwidget-webkit-current-session)
+   "window.scrollTo(pageXOffset, window.document.body.clientHeight);"))
 
 ;; The xwidget event needs to go into a higher level handler
 ;; since the xwidget can generate an event even if it's offscreen.
-- 
2.10.1





reply via email to

[Prev in Thread] Current Thread [Next in Thread]