aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Josefsson2005-02-22 14:11:48 +0000
committerSimon Josefsson2005-02-22 14:11:48 +0000
commitfe77c061abf9a02a9fd151232944cbe81fa3ea93 (patch)
treedb7e276367fe46a1e43f30859d61e459101f60af
parente3198b7748fa446ffc4025fc6515b730462dab8e (diff)
downloademacs-fe77c061abf9a02a9fd151232944cbe81fa3ea93.tar.gz
emacs-fe77c061abf9a02a9fd151232944cbe81fa3ea93.zip
(browse-url-netscape-new-window-is-tab): New variable.
(browse-url-netscape): Use it. Suggested by "Johann 'Myrkraverk' Oskarsson" <myrkraverk@users.sourceforget.net>.
-rw-r--r--lisp/ChangeLog7
-rw-r--r--lisp/net/browse-url.el47
2 files changed, 38 insertions, 16 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index c57b405388f..26d9f63f2db 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,10 @@
12005-02-22 Simon Josefsson <jas@extundo.com>
2
3 * net/browse-url.el (browse-url-netscape-new-window-is-tab): New
4 variable.
5 (browse-url-netscape): Use it. Suggested by "Johann 'Myrkraverk'
6 Oskarsson" <myrkraverk@users.sourceforget.net>.
7
12005-02-22 Kim F. Storm <storm@cua.dk> 82005-02-22 Kim F. Storm <storm@cua.dk>
2 9
3 * mouse.el (mouse-on-link-p): If arg POS is a mouse event, 10 * mouse.el (mouse-on-link-p): If arg POS is a mouse event,
diff --git a/lisp/net/browse-url.el b/lisp/net/browse-url.el
index 6e679876eef..78c8e976269 100644
--- a/lisp/net/browse-url.el
+++ b/lisp/net/browse-url.el
@@ -1,6 +1,6 @@
1;;; browse-url.el --- pass a URL to a WWW browser 1;;; browse-url.el --- pass a URL to a WWW browser
2 2
3;; Copyright (C) 1995, 96, 97, 98, 99, 2000, 2001, 2004 3;; Copyright (C) 1995, 96, 97, 98, 99, 2000, 2001, 2004, 2005
4;; Free Software Foundation, Inc. 4;; Free Software Foundation, Inc.
5 5
6;; Author: Denis Howe <dbh@doc.ic.ac.uk> 6;; Author: Denis Howe <dbh@doc.ic.ac.uk>
@@ -387,6 +387,14 @@ If non-nil, then open the URL in a new tab rather than a new window if
387 :type 'boolean 387 :type 'boolean
388 :group 'browse-url) 388 :group 'browse-url)
389 389
390(defcustom browse-url-netscape-new-window-is-tab nil
391 "*Whether to open up new windows in a tab or a new window.
392If non-nil, then open the URL in a new tab rather than a new
393window if `browse-url-netscape' is asked to open it in a new
394window."
395 :type 'boolean
396 :group 'browse-url)
397
390(defcustom browse-url-new-window-flag nil 398(defcustom browse-url-new-window-flag nil
391 "*If non-nil, always open a new browser window with appropriate browsers. 399 "*If non-nil, always open a new browser window with appropriate browsers.
392Passing an interactive argument to \\[browse-url], or specific browser 400Passing an interactive argument to \\[browse-url], or specific browser
@@ -834,6 +842,10 @@ non-nil, load the document in a new Netscape window, otherwise use a
834random existing one. A non-nil interactive prefix argument reverses 842random existing one. A non-nil interactive prefix argument reverses
835the effect of `browse-url-new-window-flag'. 843the effect of `browse-url-new-window-flag'.
836 844
845If `browse-url-netscape-new-window-is-tab' is non-nil, then
846whenever a document would otherwise be loaded in a new window, it
847is loaded in a new tab in an existing window instead.
848
837When called non-interactively, optional second argument NEW-WINDOW is 849When called non-interactively, optional second argument NEW-WINDOW is
838used instead of `browse-url-new-window-flag'." 850used instead of `browse-url-new-window-flag'."
839 (interactive (browse-url-interactive-arg "URL: ")) 851 (interactive (browse-url-interactive-arg "URL: "))
@@ -843,21 +855,24 @@ used instead of `browse-url-new-window-flag'."
843 (setq url (replace-match 855 (setq url (replace-match
844 (format "%%%x" (string-to-char (match-string 0 url))) t t url))) 856 (format "%%%x" (string-to-char (match-string 0 url))) t t url)))
845 (let* ((process-environment (browse-url-process-environment)) 857 (let* ((process-environment (browse-url-process-environment))
846 (process (apply 'start-process 858 (process
847 (concat "netscape " url) nil 859 (apply 'start-process
848 browse-url-netscape-program 860 (concat "netscape " url) nil
849 (append 861 browse-url-netscape-program
850 browse-url-netscape-arguments 862 (append
851 (if (eq window-system 'w32) 863 browse-url-netscape-arguments
852 (list url) 864 (if (eq window-system 'w32)
853 (append 865 (list url)
854 (if new-window '("-noraise")) 866 (append
855 (list "-remote" 867 (if new-window '("-noraise"))
856 (concat "openURL(" url 868 (list "-remote"
857 (if (browse-url-maybe-new-window 869 (concat "openURL(" url
858 new-window) 870 (if (browse-url-maybe-new-window
859 ",new-window") 871 new-window)
860 ")")))))))) 872 (if browse-url-netscape-new-window-is-tab
873 ",new-tab"
874 ",new-window"))
875 ")"))))))))
861 (set-process-sentinel process 876 (set-process-sentinel process
862 `(lambda (process change) 877 `(lambda (process change)
863 (browse-url-netscape-sentinel process ,url))))) 878 (browse-url-netscape-sentinel process ,url)))))