aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/xterm.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/xterm.c b/src/xterm.c
index 517bdf57aab..5d491e63778 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -11820,7 +11820,9 @@ x_frame_highlight (struct frame *f)
11820 x_stop_ignoring_errors (dpyinfo); 11820 x_stop_ignoring_errors (dpyinfo);
11821 unblock_input (); 11821 unblock_input ();
11822 gui_update_cursor (f, true); 11822 gui_update_cursor (f, true);
11823 x_set_frame_alpha (f); 11823
11824 if (!FRAME_X_OUTPUT (f)->alpha_identical_p)
11825 x_set_frame_alpha (f);
11824} 11826}
11825 11827
11826static void 11828static void
@@ -11844,7 +11846,15 @@ x_frame_unhighlight (struct frame *f)
11844 unblock_input (); 11846 unblock_input ();
11845 11847
11846 gui_update_cursor (f, true); 11848 gui_update_cursor (f, true);
11847 x_set_frame_alpha (f); 11849
11850 /* Eschew modifying the frame alpha when the alpha values for
11851 focused and background frames are identical; otherwise, this will
11852 upset the order in which changes to the alpha property
11853 immediately subsequent to a focus change are propagated into a
11854 frame's alpha property. (bug#66398) */
11855
11856 if (!FRAME_X_OUTPUT (f)->alpha_identical_p)
11857 x_set_frame_alpha (f);
11848} 11858}
11849 11859
11850/* The focus has changed. Update the frames as necessary to reflect 11860/* The focus has changed. Update the frames as necessary to reflect