comparison src/xterm.c @ 53061:4835b200fafe

* xterm.c (x_detect_focus_change): Do not change focus frame for Enter/LeaveNotify if the current focus frame has explicit focus.
author Jan Djärv <jan.h.d@swipnet.se>
date Fri, 14 Nov 2003 19:13:02 +0000
parents ea521a9007e2
children 1218a42792ea
comparison
equal deleted inserted replaced
53060:0327b225b8d0 53061:4835b200fafe
3207 3207
3208 switch (event->type) 3208 switch (event->type)
3209 { 3209 {
3210 case EnterNotify: 3210 case EnterNotify:
3211 case LeaveNotify: 3211 case LeaveNotify:
3212 if (event->xcrossing.detail != NotifyInferior 3212 {
3213 && event->xcrossing.focus 3213 struct frame *focus_frame = dpyinfo->x_focus_event_frame;
3214 && ! (frame->output_data.x->focus_state & FOCUS_EXPLICIT)) 3214 int focus_state
3215 nr_events = x_focus_changed ((event->type == EnterNotify 3215 = focus_frame ? focus_frame->output_data.x->focus_state : 0;
3216 ? FocusIn : FocusOut), 3216
3217 FOCUS_IMPLICIT, 3217 if (event->xcrossing.detail != NotifyInferior
3218 dpyinfo, 3218 && event->xcrossing.focus
3219 frame, 3219 && ! (focus_state & FOCUS_EXPLICIT))
3220 bufp, 3220 nr_events = x_focus_changed ((event->type == EnterNotify
3221 numchars); 3221 ? FocusIn : FocusOut),
3222 FOCUS_IMPLICIT,
3223 dpyinfo,
3224 frame,
3225 bufp,
3226 numchars);
3227 }
3222 break; 3228 break;
3223 3229
3224 case FocusIn: 3230 case FocusIn:
3225 case FocusOut: 3231 case FocusOut:
3226 nr_events = x_focus_changed (event->type, 3232 nr_events = x_focus_changed (event->type,