Subject: bug#18451: 24.4.50; 'toggle-frame-fullscreen' can cut off minibuffer

From: Jan Djärv <[email-masked]>
Date: Wed, 17 Sep 2014 18:05:49 +0200

Hello.

16 sep 2014 kl. 21:16 skrev Matthew Leach <[email-masked]>:

> Hello
> 
> Jan Djärv <[email-masked]> writes:
> 
> [...]
> 
>> The question is where does change_frame_size get called from from if
>> they are not from xg_frame_resized?
> 
> Hm, sorry I think there was a problem in my original trace, I've given
> it another shot.
> 
> Here is a bug-free trace:
> 
> Received ConfigureNotify event for frame: 0x6781b0
> Received ConfigureNotify event for frame: 0x6781b0
> Received ConfigureNotify event for frame: (nil)
> xg_frame_resized(0x6781b0, 1366, 768);
> configure_frame_size(0x6781b0, 1350, 768, 330584, 1, 0, 1);
> configure_frame_size(0x6781b0, 1350, 768, 330584, 0, 0, 1);
> Received ConfigureNotify event for frame: 0x6781b0
> 
> 
> And a buggy-trace:
> 
> Received ConfigureNotify event for frame: 0x6781b0
> Received ConfigureNotify event for frame: (nil)
> xg_frame_resized(0x6781b0, 1366, 768);
> configure_frame_size(0x6781b0, 1350, 768, 330584, 1, 0, 1);
> configure_frame_size(0x6781b0, 1350, 768, 330584, 0, 0, 1);
> Received ConfigureNotify event for frame: 0x6781b0
> Received ConfigureNotify event for frame: 0x6781b0

Not much difference. I think it is a timing issue between when Emacs sets wm hints and when Emacs resizes its widgets.  These kind of problems are very hard to fix, as they often are timing bugs in the window manager.

> 
>> 
>> 
>> As a long shot, try removing this line:
>> 
>> do_pending_window_change (0);
>> 
>> in xg_frame_resized.
> 
> I'm afraid that didn't help.

Oh well, it was a shot in the dark.

	Jan D.