.\" Copyright (c) 1999, Oracle and/or its affiliates. .\" .\" Permission is hereby granted, free of charge, to any person obtaining a .\" copy of this software and associated documentation files (the "Software"), .\" to deal in the Software without restriction, including without limitation .\" the rights to use, copy, modify, merge, publish, distribute, sublicense, .\" and/or sell copies of the Software, and to permit persons to whom the .\" Software is furnished to do so, subject to the following conditions: .\" .\" The above copyright notice and this permission notice (including the next .\" paragraph) shall be included in all copies or substantial portions of the .\" Software. .\" .\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR .\" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, .\" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL .\" THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER .\" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING .\" FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER .\" DEALINGS IN THE SOFTWARE. .\" .TH XkbGetAutoResetControls 3 "libX11 1.8.7" "X Version 11" "XKB FUNCTIONS" .SH NAME XkbGetAutoResetControls \- Gets the current values of the auto-reset controls .SH SYNOPSIS .HP .B Bool XkbGetAutoResetControls .BI "(\^Display *" "dpy" "\^," .BI "unsigned int *" "auto_ctrls" "\^," .BI "unsigned int *" "auto_values" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS .TP .I dpy connection to X server .TP .I auto_ctrls specifies which bits in auto_values are relevant .TP .I auto_values 1 bit => corresponding control has auto-reset on .SH DESCRIPTION .LP You can configure the boolean controls to automatically be enabled or disabled when a program exits. This capability is controlled via two masks maintained in the X server on a per-client basis. There is no client-side Xkb data structure corresponding to these masks. Whenever the client exits for any reason, any boolean controls specified in the .I auto-reset mask are set to the corresponding value from the .I auto-reset values mask. This makes it possible for clients to "clean up after themselves" automatically, even if abnormally terminated. The bits used in the masks correspond to the EnabledControls control bits. For example, a client that replaces the keyboard bell with some other audible cue might want to turn off the AudibleBell control to prevent the server from also generating a sound and avoid cacophony. If the client were to exit without resetting the AudibleBell control, the user would be left without any feedback at all. Setting AudibleBell in both the auto-reset mask and auto-reset values guarantees that the audible bell will be turned back on when the client exits. .I XkbGetAutoResetControls backfills .I auto_ctrls and .I auto_values with the AutoReset control attributes for this particular client. It returns True if successful, and False otherwise. .SH "RETURN VALUES" .TP 15 True The .I XkbGetAutoResetControls function returns True when it successfully backfills .I auto_ctrls and .I auto_values with the AutoReset control attributes for this particular client. .TP 15 False The .I XkbGetAutoResetControls function returns False when it does not successfully backfill .I auto_ctrls and .I auto_values with the AutoReset control attributes for this particular client.