<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
<PRE>



XSetInputFocus(3X11)	  XLIB FUNCTIONS     XSetInputFocus(3X11)


NAME
       XSetInputFocus, XGetInputFocus - control input focus

SYNTAX
       XSetInputFocus(display, focus, revert_to, time)
	     Display *display;
	     Window focus;
	     int revert_to;
	     Time time;

       XGetInputFocus(display, focus_return, revert_to_return)
	     Display *display;
	     Window *focus_return;
	     int *revert_to_return;

ARGUMENTS
       display	 Specifies the connection to the X server.

       focus	 Specifies the window, PointerRoot, or None.

       focus_return
		 Returns the focus window, PointerRoot, or None.

       revert_to Specifies where the input focus reverts to if
		 the window becomes not viewable.  You can pass
		 RevertToParent, RevertToPointerRoot, or
		 RevertToNone.

       revert_to_return
		 Returns the current focus state (RevertToParent,
		 RevertToPointerRoot, or RevertToNone).

       time	 Specifies the time.  You can pass either a
		 timestamp or CurrentTime.

DESCRIPTION
       The XSetInputFocus function changes the input focus and
       the last-focus-change time.  It has no effect if the spec
       ified time is earlier than the current last-focus-change
       time or is later than the current X server time.	 Other
       wise, the last-focus-change time is set to the specified
       time (CurrentTime is replaced by the current X server
       time).  XSetInputFocus causes the X server to generate
       FocusIn and FocusOut events.

       Depending on the focus argument, the following occurs:

	   If focus is None, all keyboard events are discarded
	    until a new focus window is set, and the revert_to
	    argument is ignored.

	   If focus is a window, it becomes the keyboard's focus
	    window.  If a generated keyboard event would normally
	    be reported to this window or one of its inferiors,



X Version 11		   Release 6.1				1





XSetInputFocus(3X11)	  XLIB FUNCTIONS     XSetInputFocus(3X11)


	    the event is reported as usual.  Otherwise, the event
	    is reported relative to the focus window.

	   If focus is PointerRoot, the focus window is dynami
	    cally taken to be the root window of whatever screen
	    the pointer is on at each keyboard event.  In this
	    case, the revert_to argument is ignored.

       The specified focus window must be viewable at the time
       XSetInputFocus is called, or a BadMatch error results.  If
       the focus window later becomes not viewable, the X server
       evaluates the revert_to argument to determine the new
       focus window as follows:

	   If revert_to is RevertToParent, the focus reverts to
	    the parent (or the closest viewable ancestor), and
	    the new revert_to value is taken to be RevertToNone.

	   If revert_to is RevertToPointerRoot or RevertToNone,
	    the focus reverts to PointerRoot or None, respec
	    tively.  When the focus reverts, the X server gener
	    ates FocusIn and FocusOut events, but the last-focus-
	    change time is not affected.

       XSetInputFocus can generate BadMatch, BadValue, and Bad_
       Window errors.

       The XGetInputFocus function returns the focus window and
       the current focus state.

DIAGNOSTICS
       BadValue	 Some numeric value falls outside the range of
		 values accepted by the request.  Unless a spe
		 cific range is specified for an argument, the
		 full range defined by the argument's type is
		 accepted.  Any argument defined as a set of
		 alternatives can generate this error.

       BadWindow A value for a Window argument does not name a
		 defined Window.

SEE ALSO
       XWarpPointer(3X11)
       Xlib - C Language X Interface













X Version 11		   Release 6.1				2


</PRE>
</BODY>
</HTML>
