GNU bug report logs - #33871
27.0.50; Revert Dired window saved in window configuration

Previous Next

Package: emacs;

Reported by: Juri Linkov <juri <at> linkov.net>

Date: Tue, 25 Dec 2018 21:43:01 UTC

Severity: minor

Found in version 27.0.50

Fixed in version 30.0.50

Done: Juri Linkov <juri <at> linkov.net>

Bug is archived. No further changes may be made.

Full log


Message #137 received at 33871 <at> debbugs.gnu.org (full text, mbox):

From: Juri Linkov <juri <at> linkov.net>
To: martin rudalics <rudalics <at> gmx.at>
Cc: 33871 <at> debbugs.gnu.org
Subject: Re: bug#33871: 27.0.50; Revert Dired window saved in window
 configuration
Date: Sat, 23 Mar 2024 20:31:57 +0200
>> Ok, let's add new code to separate functions
>> 'window-set-context' and 'window-use-context'.
>> Below is the patch with these new functions.
>> Maybe they could be moved from tab-bar.el to window.el?
>
> I think you should do that.

OTOH, tab-bar.el is preloaded as well, so no problem to leave this
in tab-bar.el, since window.el is too large already.

> Maybe 'window-restore-set-context' and 'window-restore-use-context'
> would be more indicative names.

The name 'window-restore-set-context' looks quite self-contradictory.
If your intention was to use a unique prefix, then maybe we could use the
prefix 'window-context' like in 'window-context-set', 'window-context-use'.

> Note that when a buffer is killed, the values of its local variables may
> be lost.  I don't know whether this is an issue here.  Alternatively, we
> could have 'set_window_buffer' set the 'context' window parameter from
> the buffer-local value which would, however, mean that whenever one
> changes the buffer-local value, one would have to simultaneously update
> the parameters in all windows showing that buffer.  Something that could
> be done with the help of an advice, though...

This doesn't look like an issue here because the context is stored
in a window parameter.  And when the buffer is killed, there is no need
to restore a context in the killed buffer.

The format of the window parameter

  '(BUFFER-NAME . ((dired-filename . FILENAME)))

uses BUFFER-NAME to check whether the buffer was killed,
and when the current window's buffer doesn't match BUFFER-NAME,
then do nothing.




This bug report was last modified 1 year and 102 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.