doomemacs/modules/tools/lookup/autoload/xwidget.el
Seong Yong-ju 9caf05ffe4 Update :tools/lookup +xwidget support
Remove :tools/lookup +xwidget. Provide
`+lookup-xwidget-webkit-open-url-fn` so that we can manually configure
Xwidget WebKit browser for `+lookup/online` or `+lookup/in-docsets`.
2020-06-24 12:37:56 +09:00

20 lines
1.1 KiB
EmacsLisp

;;; tools/lookup/autoload/xwidget.el -*- lexical-binding: t; -*-
(defvar +lookup--xwidget-webkit-last-session-buffer nil)
;;;###autoload
(defun +lookup-xwidget-webkit-open-url-fn (url &optional new-session)
(if (not (display-graphic-p))
(browse-url url)
(unless (featurep 'xwidget-internal)
(user-error "Your build of Emacs lacks Xwidgets support and cannot open Xwidget WebKit browser"))
(let ((orig-last-session-buffer (if (boundp 'xwidget-webkit-last-session-buffer)
xwidget-webkit-last-session-buffer
nil)))
(setq xwidget-webkit-last-session-buffer +lookup--xwidget-webkit-last-session-buffer)
(save-window-excursion
(xwidget-webkit-browse-url url new-session))
(with-popup-rules! '(("^\\*xwidget" :vslot -11 :size 0.35 :select nil))
(pop-to-buffer xwidget-webkit-last-session-buffer))
(setq +lookup--xwidget-webkit-last-session-buffer xwidget-webkit-last-session-buffer
xwidget-webkit-last-session-buffer orig-last-session-buffer))))