From: Chong Yidong <cyd@stupidchicken.com>
Date: Thu, 9 Oct 2008 19:31:51 +0000 (+0000)
Subject: (command-line): Enable tool-bar-mode as long as it is not suppressed
X-Git-Tag: emacs-pretest-23.0.90~2580
X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=008330eadaa236adb62611f4ad12c944b2309906;p=emacs.git

(command-line): Enable tool-bar-mode as long as it is not suppressed
by X resources, regardless of the terminal.
---

diff --git a/lisp/startup.el b/lisp/startup.el
index 11ab1593463..0ffb6b8ffec 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -898,14 +898,16 @@ opening the first frame (e.g. open a connection to an X server).")
 			  (<= (frame-parameter nil 'menu-bar-lines) 0)))))
     (menu-bar-mode 1))
 
-  ;; If we run as a daemon or frame was created with a tool bar,
-  ;; switch tool-bar-mode on.
-  (when (or (daemonp)
-	   (not (or noninteractive
-		    emacs-basic-display
-		    (not (display-graphic-p))
-		    (<= (frame-parameter nil 'tool-bar-lines) 0))))
-	   (tool-bar-mode 1))
+  ;; Enable tool-bar-mode if necessary.  Note that we might enable it
+  ;; even in tty frames, which means that there is a tool-bar if Emacs
+  ;; later opens a graphical frame.
+  (unless (or noninteractive emacs-basic-display
+  	      ;; The tool-bar-lines parameter is nil if starting on a
+  	      ;; tty; it is 0 if starting on a graphical display with
+  	      ;; the toolbar disabled via X resources.
+  	      (and (numberp (frame-parameter nil 'tool-bar-lines))
+  		   (<= (frame-parameter nil 'tool-bar-lines) 0)))
+    (tool-bar-mode 1))
 
   ;; Can't do this init in defcustom because the relevant variables
   ;; are not set.