diff options
| author | Simon Josefsson | 2005-02-22 14:11:48 +0000 |
|---|---|---|
| committer | Simon Josefsson | 2005-02-22 14:11:48 +0000 |
| commit | fe77c061abf9a02a9fd151232944cbe81fa3ea93 (patch) | |
| tree | db7e276367fe46a1e43f30859d61e459101f60af | |
| parent | e3198b7748fa446ffc4025fc6515b730462dab8e (diff) | |
| download | emacs-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/ChangeLog | 7 | ||||
| -rw-r--r-- | lisp/net/browse-url.el | 47 |
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 @@ | |||
| 1 | 2005-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 | |||
| 1 | 2005-02-22 Kim F. Storm <storm@cua.dk> | 8 | 2005-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. | ||
| 392 | If non-nil, then open the URL in a new tab rather than a new | ||
| 393 | window if `browse-url-netscape' is asked to open it in a new | ||
| 394 | window." | ||
| 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. |
| 392 | Passing an interactive argument to \\[browse-url], or specific browser | 400 | Passing 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 | |||
| 834 | random existing one. A non-nil interactive prefix argument reverses | 842 | random existing one. A non-nil interactive prefix argument reverses |
| 835 | the effect of `browse-url-new-window-flag'. | 843 | the effect of `browse-url-new-window-flag'. |
| 836 | 844 | ||
| 845 | If `browse-url-netscape-new-window-is-tab' is non-nil, then | ||
| 846 | whenever a document would otherwise be loaded in a new window, it | ||
| 847 | is loaded in a new tab in an existing window instead. | ||
| 848 | |||
| 837 | When called non-interactively, optional second argument NEW-WINDOW is | 849 | When called non-interactively, optional second argument NEW-WINDOW is |
| 838 | used instead of `browse-url-new-window-flag'." | 850 | used 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))))) |