Subject: Re: bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

From: Aaron Jensen <[email-masked]>
Date: Mon, 12 Mar 2018 15:18:30 -0700

On Fri, Jan 19, 2018 at 11:00 AM, Aaron Jensen <[email-masked]> wrote:
> From: martin rudalics (mailto:[email-masked])
>> Can you please give a more detailed scenario of what happens in
>> practice. Is this prevalence of pixel sizes something which occurs
>> after the frameset was restored or already during restoration?
>>
>> Can you please try to do that? How do these parameters get into the
>> way of things?
>
> Sorry, sure. The issue is when you have the frame sized to be a non-multiple of the font-width (pixel sized), save the desktop, then restart emacs and restore the desktop.
>
> At this point you’ll have a pixel width in your frame parameters.
>
> Then if you resize the frame to be a multiple of the font-width and save the desktop, you end up writing the previous pixel widths because they were in frame parameters and we do not reset them unless you are using a non-multiple of the font width.
>
> If that doesn’t make sense I can try and write up a repro when I get a chance.

Unfortunately, I still run into this bug from time to time. I do not
know what the circumstances are, but occasionally emacs will save the
non-pixel width. I wonder if this has to do with the fact that I use
different fonts in different buffers (with variable-pitch-mode).

I cannot find a consistent way to reproduce it, but I see it often.

If it's ok, I'd like to always save as pixels when
`frame-resize-pixelwise' is non-nil rather than skipping the save if
the pixel size happens to fall on a multiple of text pixel width. It
would theoretically be a breaking change, but I can't imagine it being
one that people would be upset about.