summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2022-09-12 14:01:52 +0800
committerPo Lu <luangruo@yahoo.com>2022-09-12 14:01:52 +0800
commit239bad7921fc38891dc4ee09b57c96d32100f19f (patch)
tree68aab5e898ca5238cb0efa105fa97a55684597df
parente0f137f079c346c5cb05f738ed96e9a09aaad4e6 (diff)
downloademacs-239bad7921fc38891dc4ee09b57c96d32100f19f.tar.gz
Fix focus restoration upon x_mouse_leave again
* src/xterm.c (x_mouse_leave): Call xi_handle_focus_change after changing the implicit focus.
-rw-r--r--src/xterm.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/xterm.c b/src/xterm.c
index 12234351a32..48502f12d8d 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -13213,8 +13213,13 @@ x_mouse_leave (struct x_display_info *dpyinfo)
device = xi_device_from_id (dpyinfo, dpyinfo->client_pointer_device);
- if (device)
- device->focus_implicit_frame = NULL;
+ if (device && device->focus_implicit_frame)
+ {
+ device->focus_implicit_frame = NULL;
+
+ /* The focus might have changed; compute the new focus. */
+ xi_handle_focus_change (dpyinfo);
+ }
}
#endif
}