Jamie Zawinski wrote:
xemacs always uniconifies itself if I iconify it before it has
finished
starting up. Here's how to reproduce it:
- get yourself a slow network.
- ssh -f remote-host 'xemacs -q --eval "(shell)"'
- 10 seconds later, the xemacs window is mapped.
- iconify it.
- 27 seconds later, the xemacs window is mapped again.
Yes indeed, it's triggered by the shell, even with none of my .emacs
file loading. This surprised me: I expected it to be related to the
bending-over-backward one must do to exterminate the toolbars, but no.
Plain old shell does it.
So does shell-command, e.g.:
- minimise window
- run: gnuclient -eval '(shell-command "true")'
The relevant calls are:
shell-command
-> shell-command-on-region
-> display-buffer
-> display-buffer-1
display-buffer-1 (in window-xemacs.el) is:
(defun display-buffer-1 (window)
(if (frame-iconified-p (window-frame window))
(make-frame-visible (window-frame window)))
window)
I suppose that you could redefine (or advise) this function to be a
no-op.
Also, the issue would appear to be more general than just shell etc;
anything which calls display-buffer (i.e. lots of stuff) will do the
same.
--
Glynn Clements <glynn(a)gclements.plus.com>