Subject: bug#1754 closed by martin rudalics <[email-masked]> (Re: bug#1754: 23.0.60; tool-bar is shown with tool-bar-mode off)

From: [email-masked] (Emacs bug Tracking System)
Date: Sat, 10 Jan 2009 10:20:03 +0000

This is an automatic notification regarding your bug report
which was filed against the emacs package:

#1754: 23.0.60; tool-bar is shown with tool-bar-mode off

It has been closed by martin rudalics <[email-masked]>.

Their explanation is attached below along with your original report.
If this explanation is unsatisfactory and you have not received a
better one in a separate message then please contact martin rudalics <[email-masked]> by
replying to this email.

-- 
1754: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=1754
Emacs Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#1754: 23.0.60; tool-bar is shown with tool-bar-mode off
From: martin rudalics <[email-masked]>
To: [email-masked]
Cc: Chong Yidong <[email-masked]>
Date: Sat, 10 Jan 2009 11:09:41 +0100

 >> IMHO, we should either not call `modify-all-frames-parameters' in
 >> either case or call them in both cases as in the (attached)
 >> tool-bar.el patch I proposed earlier.
 >
 > Patch looks OK; go ahead and install if you like.

Done.  Not that I liked it, but I'd rather find out now whether asking
for non-zero tool-bar-lines may cause problems on text-only terminals.

martin

Subject: 23.0.60; tool-bar is shown with tool-bar-mode off
From: "Drew Adams" <[email-masked]>
To: <[email-masked]>
Date: Wed, 31 Dec 2008 14:15:46 -0800

This is a regression wrt Emacs 20, 21, and 22.
 
1. Put this code in a file named `bug-tool-bar.el':
 
(tool-bar-mode -1)
(defvar my-minibuffer-frame nil "")
(defun foo () ""
  (interactive)
  (setq default-frame-alist
        (append (list (cons 'tool-bar-lines 1))
                default-frame-alist))
  (setq pop-up-frames      t
        pop-up-frame-alist (append default-frame-alist
                                   pop-up-frame-alist))
  (setq minibuffer-frame-alist
        (append (list (cons 'minibuffer 'only))
                minibuffer-frame-alist))
  (if my-minibuffer-frame
      (modify-frame-parameters my-minibuffer-frame
                               (list (cons 'minibuffer 'only)))
    (setq my-minibuffer-frame
          (let ((after-make-frame-functions nil))
            (make-frame (list (cons 'minibuffer 'only)))))))
 
It doesn't matter where the (tool-bar-mode -1) is, and you could
alternatively leave it out altogether and then do `M-x tool-bar-mode'
to turn it off (step 3).
 
2. Start Emacs this way:
 
runemacs.exe -Q --debug-init -l "bug-tool-bar.el" -f "foo"
 
You get one frame with buffer *scratch* and a standalone minibuffer
frame. Neither frame has a tool bar. However, `tool-bar-mode' is t -
it should be nil. You can see this by typing `tool-bar-mode' in buffer
*scratch* and using `C-x C-e'.
 
3. Optional step: `M-x tool-bar-mode'. This turns off tool-bar mode,
though it should already have been off because of the code in
`bug-tool-bar.el'.
 
4. Do `C-x 4 f some-file.el'. The file is visited in a new frame, and
the frame has a tool bar. And tool-bar mode is now on. And this is so
regardless of whether you skip step 3.

The mode should remain off, and no tool bar should be shown.

In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600)
 of 2008-12-30 on LENNART-69DE564
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4) --no-opt --cflags -Ic:/g/include
-fno-crossjumping'