diff options
Diffstat (limited to 'lisp/net/webjump.el')
-rw-r--r-- | lisp/net/webjump.el | 46 |
1 files changed, 34 insertions, 12 deletions
diff --git a/lisp/net/webjump.el b/lisp/net/webjump.el index b2ef47898cd..9886a4c79d8 100644 --- a/lisp/net/webjump.el +++ b/lisp/net/webjump.el @@ -79,6 +79,14 @@ :prefix "webjump-" :group 'browse-url) +(defcustom webjump-use-internal-browser nil + "Whether or not to force the use of an internal browser. +If non-nil, WebJump will always use an internal browser (such as +EWW or xwidget-webkit) to open web pages, as opposed to an +external browser like IceCat." + :version "29.1" + :type 'boolean) + (defconst webjump-sample-sites '( ;; FSF, not including Emacs-specific. @@ -255,18 +263,32 @@ Please submit bug reports and other feedback to the author, Neil W. Van Dyke webjump-sites t)) (name (car item)) (expr (cdr item))) - (browse-url (webjump-url-fix - (cond ((not expr) "") - ((stringp expr) expr) - ((vectorp expr) (webjump-builtin expr name)) - ((listp expr) (eval expr t)) - ((symbolp expr) - (if (fboundp expr) - (funcall expr name) - (error "WebJump URL function \"%s\" undefined" - expr))) - (t (error "WebJump URL expression for \"%s\" invalid" - name))))))) + (if webjump-use-internal-browser + (browse-url-with-browser-kind + 'internal (webjump-url-fix + (cond ((not expr) "") + ((stringp expr) expr) + ((vectorp expr) (webjump-builtin expr name)) + ((listp expr) (eval expr t)) + ((symbolp expr) + (if (fboundp expr) + (funcall expr name) + (error "WebJump URL function \"%s\" undefined" + expr))) + (t (error "WebJump URL expression for \"%s\" invalid" + name))))) + (browse-url (webjump-url-fix + (cond ((not expr) "") + ((stringp expr) expr) + ((vectorp expr) (webjump-builtin expr name)) + ((listp expr) (eval expr t)) + ((symbolp expr) + (if (fboundp expr) + (funcall expr name) + (error "WebJump URL function \"%s\" undefined" + expr))) + (t (error "WebJump URL expression for \"%s\" invalid" + name)))))))) (defun webjump-builtin (expr name) (if (< (length expr) 1) |