]> code.delx.au - gnu-emacs/commitdiff
browse-url-firefox: update for firefox 36's removal of -remote
authorGlenn Morris <rgm@gnu.org>
Tue, 24 Feb 2015 23:02:11 +0000 (18:02 -0500)
committerGlenn Morris <rgm@gnu.org>
Tue, 24 Feb 2015 23:02:11 +0000 (18:02 -0500)
Ref: https://bugzilla.mozilla.org/show_bug.cgi?id=1080319

* lisp/net/browse-url.el (browse-url-firefox-startup-arguments):
Make obsolete.
(browse-url-firefox): Doc fix.  Remove -remote.
(browse-url-firefox-sentinel): Remove function.

* etc/NEWS: Mention this.

Fixes: debbugs:19921
etc/NEWS
lisp/ChangeLog
lisp/net/browse-url.el

index 0b26d7abb1809ae469e0e22b9a1d1897a528a307..7d9e1f0d83f3fdc0e84e430a57910e2a6de199ea 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -29,6 +29,8 @@ with a prefix argument or by typing C-u C-h C-n.
 ** `call-process-shell-command' and `process-file-shell-command' no longer
 take "&rest args".
 
+** The option `browse-url-firefox-startup-arguments' no longer has an effect.
+
 ** ERC
 
 *** New option `erc-rename-buffers'.
index 14a12b53a35e8d1930a1cbee12ce848e9207b562..a5603941ad1b311fd07a47b39d67d6862910ae73 100644 (file)
@@ -1,3 +1,11 @@
+2015-02-24  Glenn Morris  <rgm@gnu.org>
+
+       * net/browse-url.el (browse-url-firefox-startup-arguments):
+       Make obsolete.
+       (browse-url-firefox): Doc fix.  Remove -remote, which no longer
+       exists in Firefox 36.  (Bug#19921)
+       (browse-url-firefox-sentinel): Remove function.
+
 2015-02-23  Eli Zaretskii  <eliz@gnu.org>
 
        * frame.el (blink-cursor-timer-function): Don't increment
index e6ae0d7df0645b58f68e182a4dfc410c60872250..4819cdc20f6117220d3314bd1df7fbe4b833bc75 100644 (file)
@@ -337,6 +337,9 @@ Defaults to the value of `browse-url-firefox-arguments' at the time
   :type '(repeat (string :tag "Argument"))
   :group 'browse-url)
 
+(make-obsolete-variable 'browse-url-firefox-startup-arguments
+                        "it no longer has any effect." "24.5")
+
 (defcustom browse-url-chromium-program
   (let ((candidates '("chromium" "chromium-browser")))
     (while (and candidates (not (executable-find (car candidates))))
@@ -1102,68 +1105,39 @@ used instead of `browse-url-new-window-flag'."
 ;;;###autoload
 (defun browse-url-firefox (url &optional new-window)
   "Ask the Firefox WWW browser to load URL.
-Default to the URL around or before point.  The strings in
-variable `browse-url-firefox-arguments' are also passed to
-Firefox.
+Defaults to the URL around or before point.  Passes the strings
+in the variable `browse-url-firefox-arguments' to Firefox.
 
-When called interactively, if variable
-`browse-url-new-window-flag' is non-nil, load the document in a
-new Firefox window, otherwise use a random existing one.  A
-non-nil interactive prefix argument reverses the effect of
-`browse-url-new-window-flag'.
+Interactively, if the variable `browse-url-new-window-flag' is non-nil,
+loads the document in a new Firefox window.  A non-nil prefix argument
+reverses the effect of `browse-url-new-window-flag'.
 
 If `browse-url-firefox-new-window-is-tab' is non-nil, then
 whenever a document would otherwise be loaded in a new window, it
 is loaded in a new tab in an existing window instead.
 
-When called non-interactively, optional second argument
-NEW-WINDOW is used instead of `browse-url-new-window-flag'.
+Non-interactively, this uses the optional second argument NEW-WINDOW
+instead of `browse-url-new-window-flag'.
 
-On MS-Windows systems the optional `new-window' parameter is
-ignored.  Firefox for Windows does not support the \"-remote\"
-command line parameter.  Therefore, the
-`browse-url-new-window-flag' and `browse-url-firefox-new-window-is-tab'
-are ignored as well.  Firefox on Windows will always open the requested
-URL in a new window."
+On MS Windows, this ignores `browse-url-new-window-flag' and
+`browse-url-firefox-new-window-is-tab', as well as the NEW-WINDOW argument.
+It always uses a new window."
   (interactive (browse-url-interactive-arg "URL: "))
   (setq url (browse-url-encode-url url))
-  (let* ((process-environment (browse-url-process-environment))
-        (use-remote
-         (not (memq system-type '(windows-nt ms-dos))))
-        (process
-         (apply 'start-process
-                (concat "firefox " url) nil
-                browse-url-firefox-program
-                (append
-                 browse-url-firefox-arguments
-                 (if use-remote
-                     (list "-remote"
-                           (concat
-                            "openURL("
-                            url
-                            (if (browse-url-maybe-new-window new-window)
-                                (if browse-url-firefox-new-window-is-tab
-                                    ",new-tab"
-                                  ",new-window"))
-                            ")"))
-                   (list url))))))
-    ;; If we use -remote, the process exits with status code 2 if
-    ;; Firefox is not already running.  The sentinel runs firefox
-    ;; directly if that happens.
-    (when use-remote
-      (set-process-sentinel process
-                           `(lambda (process change)
-                              (browse-url-firefox-sentinel process ,url))))))
-
-(defun browse-url-firefox-sentinel (process url)
-  "Handle a change to the process communicating with Firefox."
-  (or (eq (process-exit-status process) 0)
-      (let* ((process-environment (browse-url-process-environment)))
-       ;; Firefox is not running - start it
-       (message "Starting Firefox...")
-       (apply 'start-process (concat "firefox " url) nil
-              browse-url-firefox-program
-              (append browse-url-firefox-startup-arguments (list url))))))
+  (let* ((process-environment (browse-url-process-environment)))
+    (apply 'start-process
+           (concat "firefox " url) nil
+           browse-url-firefox-program
+           (append
+            browse-url-firefox-arguments
+            ;; FIXME someone should check if this limitation
+            ;; still applies.
+            (unless (memq system-type '(windows-nt ms-dos))
+              (if (browse-url-maybe-new-window new-window)
+                  (if browse-url-firefox-new-window-is-tab
+                      '("-new-tab")
+                    '("-new-window"))))
+            (list url)))))
 
 ;;;###autoload
 (defun browse-url-chromium (url &optional _new-window)