This manual page is for Mac OS X version 10.6.3

If you are running a different version of Mac OS X, view the documentation locally:

  • In Terminal, using the man(1) command

Reading manual pages

Manual pages are intended as a quick reference for people who already understand a technology.

  • For more information about the manual page format, see the manual page for manpages(5).

  • For more information about this technology, look for other documentation in the Apple Reference Library.

  • For general information about writing shell scripts, read Shell Scripting Primer.



XSetDeviceFocus(3)                               X FUNCTIONS                              XSetDeviceFocus(3)



NAME
       XSetDeviceFocus, XGetDeviceFocus - control extension input device focus

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

       XGetDeviceFocus(display, device, focus_return, revert_to_return, time_return)
             Display *display;
             Display *device;
             Window *focus_return;
             int *revert_to_return;
             int *time_return;

ARGUMENTS
       display     Specifies the connection to the X server.

       device      Specifies the device whose focus is to be queried or changed.

       focus       Specifies the window, PointerRoot, FollowKeyboard, or None.

       focus_return
                   Returns the focus window, PointerRoot, FollowKeyboard, or None.

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

       revert_to_return
                   Returns the current focus state RevertToParent,  RevertToPointerRoot,  RevertToFollowKey-board, RevertToFollowKeyboard,
                   board, or RevertToNone.

       time_return Returns the last_focus_time for the device.

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

DESCRIPTION
       The XSetDeviceFocus request changes the focus of the specified device and its last-focus-change time.
       It has no effect if the specified time is earlier than the current last-focus-change time or is later
       than  the  current X server time.  Otherwise, the last-focus-change time is set to the specified time
       CurrentTime is replaced by the current X server time).  XSetDeviceFocus causes the X server to gener-ate generate
       ate DeviceFocusIn and DeviceFocusOut events.

       Depending on the focus argument, the following occurs:

           If  focus  is  None  ,  all device 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 device's focus window.  If a generated device  event  would
            normally  be  reported  to  this window or one of its inferiors, the event is reported as usual.
            Otherwise, the event is reported relative to the focus window.

           If focus is PointerRoot, the focus window is dynamically taken to be the root window of whatever
            screen  the  pointer is on at each event from the specified device.  In this case, the revert_to
            argument is ignored.

           If focus is FollowKeyboard, the focus window is dynamically taken to be the window to which  the
            X keyboard focus is set at each input event.

       The  specified  focus  window  must  be viewable at the time XSetDeviceFocus 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 ances-tor), ancestor),
            tor), and the new revert_to value is taken to be RevertToNone.

           If revert_to is RevertToPointerRoot, RevertToFollowKeyboard, or RevertToNone, the focus  reverts
            to PointerRoot, FollowKeyboard, or None, respectively.

       When the focus reverts, the X server generates DeviceFocusIn and DeviceFocusOut events, but the last-focus-change lastfocus-change
       focus-change time is not affected.

       Input extension devices are not required to support the ability to be focused.  Attempting to set the
       focus of a device that does not support this request will result in a BadMatch error.  Whether or not
       given device can support this request can be determined by the information returned  by  XOpenDevice.
       For  those  devices that support focus, XOpenDevice will return an XInputClassInfo structure with the
       input_class field equal to the constant FocusClass (defined in the file XI.h).

       XSetDeviceFocus can generate BadDevice, BadMatch, BadValue, and BadWindow errors.

       The XGetDeviceFocus request returns the focus window and the current focus state.

       Not all input extension devices can be focused.  Attempting to query the focus state of a device that
       can't  be  focused results in a BadMatch error.  A device that can be focused returns information for
       input Class Focus when an XOpenDevice request is made.

       XGetDeviceFocus can generate BadDevice, and BadMatch errors.

DIAGNOSTICS
       BadDevice   An invalid device was specified.  The specified device does not exist  or  has  not  been
                   opened  by  this client via XOpenInputDevice.  This error may also occur if the specified
                   device is the X keyboard or X pointer device.

       BadValue    Some numeric value falls outside the range of values accepted by the request.   Unless  a
                   specific  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.

       BadMatch    This error may occur if an XGetDeviceFocus or XSetDeviceFocus request was made specifying
                   a device that the server implementation does not allow to be focused.

SEE ALSO
       Programming with Xlib



X Version 11                                     libXi 1.2.1                              XSetDeviceFocus(3)

Reporting Problems

The way to report a problem with this manual page depends on the type of problem:

Content errors
Report errors in the content of this documentation with the feedback links below.
Bug reports
Report bugs in the functionality of the described tool or API through Bug Reporter.
Formatting problems
Report formatting mistakes in the online version of these pages with the feedback links below.

Did this document help you? Yes It's good, but... Not helpful...