From: Po Lu Date: Fri, 8 Jul 2022 13:16:15 +0000 (+0800) Subject: Ensure correct position is returned after child frame movement X-Git-Tag: emacs-29.0.90~1447^2~1094 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=9e0f52b7d941d55b658d39d452d84652026bdb84;p=emacs.git Ensure correct position is returned after child frame movement * src/xterm.c (x_set_offset): Synchronize child frame movement correctly. --- diff --git a/src/xterm.c b/src/xterm.c index 9651c4e119e..23a784ade89 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -24067,6 +24067,11 @@ x_set_offset (struct frame *f, int xoff, int yoff, int change_gravity) && FRAME_X_OUTPUT (f)->move_offset_top == 0)))) x_check_expected_move (f, modified_left, modified_top); } + /* Instead, just wait for the last ConfigureWindow request to + complete. No window manager is involved when moving child + frames. */ + else + XSync (FRAME_X_DISPLAY (f), False); unblock_input (); } @@ -24769,7 +24774,6 @@ x_sync_with_move (struct frame *f, int left, int top, bool fuzzy) wait_reading_process_output (0, 500000000, 0, false, Qnil, NULL, 0); } - /* Wait for an event on frame F matching EVENTTYPE. */ void x_wait_for_event (struct frame *f, int eventtype)