[Top][All Lists]

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

Re: Should customizing default-frame-alist change existing frames?

From: Stefan Monnier
Subject: Re: Should customizing default-frame-alist change existing frames?
Date: Fri, 01 Mar 2002 13:33:43 -0500

> > I can see two solutions:
> > 
> > 1. Change the doc string to say that existing frames will not be
> >    affected by setting default-frame-alist, only new ones. 
> > 
> > 2. Add a :set method that applies the frame parameters to all existing
> >    frames.
> > What do you think?
> Perhaps applying the changes to the current frame and any new ones.
> Making a customize change for the frame and not seeing the current frame
> "adapt" to the changes would be confusing for beginners. More often than
> not, the user is going to customize from inside the frame he's working
> on, precisely because he does want to change it.
> If a user makes the mistake of customizing from inside a special frame
> I'd bet he (assuming is not experienced) is doing some exploring 'round
> and he'll be able to understand his error.
> OTOH, changing all existing frames could be fragile, I think.

Many of my frames have slightly different settings (the minibuffer-only
frame is the most obvious one, but I also use many other dedicated frames),
but I think it would still be OK to do something like:

        (dolist (param new-default-frame-alist)
          (dolist (frame (frame-list))
            (when (eq (frame-parameter frame (car param))
                      (cdr (assq (car param) old-default-frame-alist))
              (set-frame-parameter frame (car param) (cdr param)))))

It wouldn't be "perfect" but should be mostly acceptable.

I don't think that leaving dedicated frames as-is is a good answer because
all my dedicated frames use the same background color as the rest and
if I changed the background color of default-frame-alist, I wouldn't
want my dedicated frames to be excluded from the update.


reply via email to

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