Fix restoring in GUI sessions desktop saved in TTY sessions

* lisp/frameset.el (frameset-filter-font-param): New function.
(frameset-persistent-filter-alist): Use it for processing the
'font' frame parameter.  (Bug#17352)
This commit is contained in:
Eli Zaretskii 2017-09-22 17:52:47 +03:00
parent 51cbd85454
commit 908af46abd

View file

@ -447,7 +447,7 @@ DO NOT MODIFY. See `frameset-filter-alist' for a full description.")
(buffer-predicate . :never)
(buried-buffer-list . :never)
(delete-before . :never)
(font . frameset-filter-shelve-param)
(font . frameset-filter-font-param)
(foreground-color . frameset-filter-sanitize-color)
(fullscreen . frameset-filter-shelve-param)
(GUI:font . frameset-filter-unshelve-param)
@ -631,6 +631,17 @@ see `frameset-filter-alist'."
(setcdr found val)
nil))))
(defun frameset-filter-font-param (current filtered parameters saving
&optional prefix)
"When switching from a tty frame to a GUI frame, remove the FONT param.
When switching from a GUI frame to a tty frame, behave
as `frameset-filter-shelve-param' does."
(or saving
(if (frameset-switch-to-gui-p parameters)
(frameset-filter-shelve-param current filtered parameters saving
prefix))))
(defun frameset-filter-iconified (_current _filtered parameters saving)
"Remove CURRENT when saving an iconified frame.
This is used for positional parameters `left' and `top', which are