unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: David Reitter <david.reitter@gmail.com>
Cc: Emacs-Devel ' <emacs-devel@gnu.org>
Subject: Re: menu-bar: disable items when no frame visible
Date: Sat, 24 Dec 2005 23:59:24 +0100	[thread overview]
Message-ID: <C8037288-EE4E-4B6C-B311-BAAF44058922@gmail.com> (raw)
In-Reply-To: <87slsipb4c.fsf@jurta.org>

On 24 Dec 2005, at 21:07, Juri Linkov wrote:

>> (This made sense in my own setup because I have advised switch-to-
>> buffer to show most buffers in a new frame, so I don't usually get
>> that error.)
>
> This looks like what `pop-up-frames' is intended for.

Doesn't open new frames when you find-file or, in general, during  
switch-to-buffer.
Instead, it opens new frames for *Completions* etc, which is very  
annoying and not what I find useful.

I want much more fine-control over what is opened where. I have a  
mode called `one-buffer-one-frame' which will display newly visited  
files in separate frames and generally create new frames for things,  
with the exception of stuff like completions buffers or other  
buffers, usually *...* ones. A more compatible way to do this (better  
than to advise switch-to-buffer and use my own display-buffer  
function) would be much appreciated, of course.

Besides, display-buffer is documented to show the buffer in a new  
window without selecting it. When pop-up-frames is non-nil, it  
creates a new frame, but selects it, which is annoying when you want  
to, e.g. display a quick *Help* but keep working in the original  
frame. The behavior seems to be pretty much against the spirit of  
display-buffer, maybe you could consider it a bug...  (maybe only in  
the Carbon port, haven't checked this.) I remember reading somewhere  
that the system may itself select new frames, and Emacs will accept  
that. Fair enough, but I find my display-buffer function rather useful.

(defun aquamacs-display-buffer (&rest args)
        (let ((display-buffer-function nil))
	 (if (and
	      one-buffer-one-frame
	      (open-in-other-frame-p (car args)))
	     (let ((pop-up-frames t)
		   (sframe (selected-frame))
		   (swin (selected-window)))
	       (let ((ret (apply (function display-buffer) args)))
	       ;; make sure the old frame stays the selected one
	       (select-frame sframe)
	       (select-window swin)
	      ret))
	   (apply (function display-buffer) args))))

  reply	other threads:[~2005-12-24 22:59 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-11-10 15:57 menu-bar: disable items when no frame visible David Reitter
2005-11-10 16:03 ` David Reitter
2005-11-10 21:12   ` David Reitter
2005-11-12  3:38     ` Richard M. Stallman
2005-11-12  7:11       ` Eli Zaretskii
2005-11-12 21:21         ` Richard M. Stallman
2005-11-12 22:44           ` Eli Zaretskii
2005-11-28  0:21         ` David Reitter
2005-11-28  5:32           ` Eli Zaretskii
2005-11-28 20:23             ` Juri Linkov
2005-11-28 21:00             ` Richard M. Stallman
2005-11-28 22:20               ` David Reitter
2005-11-28 22:46               ` Jason Rumney
2005-11-29 10:32                 ` Reiner Steib
2005-11-29 21:48                 ` Richard M. Stallman
2005-12-06  0:54                   ` Juri Linkov
2005-12-06 16:43                     ` Richard M. Stallman
2005-12-07  0:45                       ` Juri Linkov
2005-12-07 22:58                         ` Richard M. Stallman
2005-12-12  8:23                           ` Jan D.
2005-12-12 21:14                             ` Eli Zaretskii
2005-12-13  7:19                               ` Jan Djärv
2005-12-13 20:24                                 ` Eli Zaretskii
2005-12-14 17:03                                   ` Juri Linkov
2005-12-14 19:25                                     ` Eli Zaretskii
2005-12-16  9:04                                       ` Juri Linkov
2005-12-16 11:29                                         ` Eli Zaretskii
2005-12-16 12:55                                           ` Juri Linkov
2005-12-16 13:14                                             ` Eli Zaretskii
2005-12-16 14:27                                               ` Juri Linkov
2005-12-16 15:24                                                 ` Eli Zaretskii
2005-12-17 10:54                                                   ` Juri Linkov
2005-12-14 21:25                                     ` Drew Adams
2005-12-15  4:33                                       ` Eli Zaretskii
2005-12-13  3:15                             ` Richard M. Stallman
2005-12-16  9:05                             ` Juri Linkov
2005-12-16 17:40                               ` Jan Djärv
2005-12-17 10:47                                 ` Juri Linkov
2005-12-20 21:55       ` Juri Linkov
2005-12-23 20:43         ` Juri Linkov
2005-12-24 12:15           ` David Reitter
2005-12-24 20:07             ` Juri Linkov
2005-12-24 22:59               ` David Reitter [this message]
2005-12-25 16:54                 ` Stefan Monnier
2005-12-25  2:51             ` Richard M. Stallman
2005-12-25  6:44               ` Eli Zaretskii
2005-12-26  2:19                 ` Richard M. Stallman
2005-12-26  5:06                   ` Eli Zaretskii
2005-12-25  9:54               ` David Reitter
2005-12-26  2:19                 ` Richard M. Stallman
2005-12-25 16:58               ` Stefan Monnier
     [not found]               ` <87x6v29lvv.fsf-monnier+emacs@gnu.org>
2005-12-26  2:20                 ` Richard M. Stallman
2005-12-26 16:02                   ` Stefan Monnier
2005-12-26 21:56                     ` Richard M. Stallman
2005-12-27 19:01                       ` Juri Linkov
2005-12-27 19:55                         ` Stefan Monnier
2005-12-24 16:32           ` Richard M. Stallman
2005-12-24 20:12             ` Juri Linkov
2005-11-10 19:34 ` Eli Zaretskii
2005-11-10 19:39   ` David Reitter
2005-11-11  8:33     ` Eli Zaretskii
2005-11-12  3:38       ` Richard M. Stallman
2005-11-28 20:23 ` Juri Linkov
2005-11-28 22:17   ` David Reitter
2005-11-28 22:44     ` Juri Linkov
2005-11-29  0:08       ` David Reitter
2005-11-29  9:03         ` Juri Linkov
2005-11-29  9:02       ` Juri Linkov
2005-11-29  3:10   ` Richard M. Stallman
2005-11-29  9:01     ` Juri Linkov
2005-11-29 21:47       ` Richard M. Stallman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=C8037288-EE4E-4B6C-B311-BAAF44058922@gmail.com \
    --to=david.reitter@gmail.com \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).