emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: suggested feature -- console-mode frame title sets Xterm title


From: Miles Bader
Subject: Re: suggested feature -- console-mode frame title sets Xterm title
Date: 16 Oct 2003 18:07:07 +0900

Martin Pool <address@hidden> writes:
> The obvious thing would be to make it set the name (f->name).  It's
> documented only in the context of replacing F%d with something more
> meaningful.
> 
> However, on X frames it has the user-visible behaviour of setting the
> title, although inside emacs it is really setting f->name.  Once you
> have done this, the format produced by frame-title-format is no longer
> seen.  I wonder if any users count on this?

I wouldn't be surprised if applications that want to create `special'
frames use `set-frame-name' and expect it to override frame-title-format
(which it currently does on X).

> I can't think of any consistent way to resolve it, so I propose that
> we make set-frame-name simply set the name, and we let people set the
> title using the existing mechanisms (frame-title-format, etc).  

It looks like you basically just have to always be sure that an
_explicitly_ set frame-name overrides the frame-title; under X, the
default frame name is apparently "Emacs", setting it explicitly with
set-frame-name overrides that, but if you do (set-frame-name nil), you
get the default back.  So there really seem to be _two_ frame names,
the `user set' name, and the `automatic name', acting sort of like:

  (defun frame-title (f)
    (or (frame-name f)
        (format-frame-title frame-title-format f))))

  (defun frame-name-for-modeline (f)
    (or (frame-name f)
        (frame-automatic-name f)))

where the initial `user name' is each frame is nil, and the `automatic
name' is "Emacs" on X, and "F..." on ttys.

The main difference between X and ttys seems to be that
`select-frame-by-name' uses `frame-title' (above) to get the list of
names, whereas it uses `frame-name-for-modeline' on ttys.  If it were
to use _both_ then it the resulting single function would be properly
backward compatible on both X and ttys.

So perhaps if the `automatic name' were changed to use the tty-style
"F..." everywhere and select-frame-by-name changed as above, everything
would work properly.

-miles
-- 
Saa, shall we dance?  (from a dance-class advertisement)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]