


XFocusChangeEvent(3X11)				      XFocusChangeEvent(3X11)
X11R5									X11R5



NAME
  XFocusChangeEvent - FocusIn and FocusOut event structure

STRUCTURES
  The structure	for _F_o_c_u_s_I_n and	_F_o_c_u_s_O_u_t events	contains:

  typedef struct {
	  int type;	  /* FocusIn or	FocusOut */
	  unsigned long	serial;	  /* # of last request processed by server */
	  Bool send_event;	  /* true if this came from a SendEvent	request	*/
	  Display *display;	  /* Display the event was read	from */
	  Window window;  /* window of event */
	  int mode;	  /* NotifyNormal, NotifyGrab, NotifyUngrab */
	  int detail;
		  /*
		  * NotifyAncestor, NotifyVirtual, NotifyInferior,
		  * NotifyNonlinear,NotifyNonlinearVirtual, NotifyPointer,
		  * NotifyPointerRoot, NotifyDetailNone
		  */
  } XFocusChangeEvent;
  typedef XFocusChangeEvent XFocusInEvent;
  typedef XFocusChangeEvent XFocusOutEvent;

  When you receive these events, the structure members are set as follows.

  The type member is set to the	event type constant name that uniquely iden-
  tifies it.  For example, when	the X server reports a _G_r_a_p_h_i_c_s_E_x_p_o_s_e event
  to a client application, it sends an _X_G_r_a_p_h_i_c_s_E_x_p_o_s_e_E_v_e_n_t structure with
  the type member set to _G_r_a_p_h_i_c_s_E_x_p_o_s_e.  The display member is	set to a
  pointer to the display the event was read on.	 The send_event	member is set
  to _T_r_u_e if the event came from a _S_e_n_d_E_v_e_n_t protocol request.	The serial
  member is set	from the serial	number reported	in the protocol	but expanded
  from the 16-bit least-significant bits to a full 32-bit value.  The window
  member is set	to the window that is most useful to toolkit dispatchers.

  The window member is set to the window on which the _F_o_c_u_s_I_n or _F_o_c_u_s_O_u_t
  event	was generated.	This is	the window used	by the X server	to report the
  event. The mode member is set	to indicate whether the	focus events are nor-
  mal focus events, focus events while grabbed,	focus events when a grab
  activates, or	focus events when a grab deactivates.  The X server can	set
  the mode member to _N_o_t_i_f_y_N_o_r_m_a_l, _N_o_t_i_f_y_W_h_i_l_e_G_r_a_b_b_e_d, _N_o_t_i_f_y_G_r_a_b, or
  _N_o_t_i_f_y_U_n_g_r_a_b.

  All _F_o_c_u_s_O_u_t events caused by	a window unmap are generated after any _U_n_m_a_p_-
  _N_o_t_i_f_y event;	however, the X protocol	does not constrain the ordering	of
  _F_o_c_u_s_O_u_t events with respect to generated _E_n_t_e_r_N_o_t_i_f_y, _L_e_a_v_e_N_o_t_i_f_y, _V_i_s_i_-
  _b_i_l_i_t_y_N_o_t_i_f_y,	and _E_x_p_o_s_e events.

  Depending on the event mode, the detail member is set	to indicate the
  notify detail	and can	be _N_o_t_i_f_y_A_n_c_e_s_t_o_r, _N_o_t_i_f_y_V_i_r_t_u_a_l, _N_o_t_i_f_y_I_n_f_e_r_i_o_r,
  _N_o_t_i_f_y_N_o_n_l_i_n_e_a_r, _N_o_t_i_f_y_N_o_n_l_i_n_e_a_r_V_i_r_t_u_a_l, _N_o_t_i_f_y_P_o_i_n_t_e_r, _N_o_t_i_f_y_P_o_i_n_t_e_r_R_o_o_t,
  or _N_o_t_i_f_y_D_e_t_a_i_l_N_o_n_e.

SEE ALSO
  XAnyEvent(3X11), XButtonEvent(3X11), XCreateWindowEvent(3X11),
  XCirculateEvent(3X11), XCirculateRequestEvent(3X11), XColormapEvent(3X11),
  XConfigureEvent(3X11), XConfigureRequestEvent(3X11), XCrossingEvent(3X11),
  XDestroyWindowEvent(3X11), XErrorEvent(3X11),	XExposeEvent(3X11),
  XGraphicsExposeEvent(3X11), XGravityEvent(3X11), XKeymapEvent(3X11),
  XMapEvent(3X11), XMapRequestEvent(3X11), XPropertyEvent(3X11),
  XReparentEvent(3X11),	XResizeRequestEvent(3X11),
  XSelectionClearEvent(3X11), XSelectionEvent(3X11),
  XSelectionRequestEvent(3X11),	XUnmapEvent(3X11), XVisibilityEvent(3X11)
  _X_l_i_b - _C _L_a_n_g_u_a_g_e _X _I_n_t_e_r_f_a_c_e




























































