config: Return errors as negative numbers, device ids as positive numbers.
Update dbus-api documentation.
This commit is contained in:
parent
c6972c8933
commit
e1f0b3e70b
|
@ -308,12 +308,15 @@ configMessage(DBusConnection *connection, DBusMessage *message, void *closure)
|
|||
|
||||
if (ret != BadDrawable && ret != BadAlloc) {
|
||||
if (!strlen(dbus_message_get_signature(reply)))
|
||||
{
|
||||
ret = -ret; /* return errors as negative numbers */
|
||||
if (!dbus_message_iter_append_basic(&r_iter, DBUS_TYPE_INT32, &ret)) {
|
||||
ErrorF("[config] couldn't append to iterator\n");
|
||||
dbus_message_unref(reply);
|
||||
dbus_error_free(&error);
|
||||
return DBUS_HANDLER_RESULT_HANDLED;
|
||||
}
|
||||
}
|
||||
|
||||
if (!dbus_connection_send(bus, reply, NULL))
|
||||
ErrorF("[config] failed to send reply\n");
|
||||
|
|
|
@ -15,25 +15,23 @@ org.x.config.input:
|
|||
Option names beginning with _ are not allowed; they are reserved
|
||||
for internal use.
|
||||
|
||||
Returns one int32, which is an X Status, as defined in X.h. If
|
||||
everything is successful, Success will be returned. BadMatch will
|
||||
be returned if the options given do not match any device. BadValue
|
||||
is returned for a malformed message.
|
||||
Returns one signed int32, which is the device id of the new device.
|
||||
If the return value is a negative number, it represents the X
|
||||
Status, as defined in X.h. BadMatch will be returned if the options
|
||||
given do not match any device. BadValue is returned for a malformed
|
||||
message. (Example: 8 is new device id 8. -8 is BadMatch.)
|
||||
|
||||
Notably, BadAlloc is never returned: the server internally signals
|
||||
to D-BUS that the attempt failed for lack of memory.
|
||||
|
||||
The return does not notify the client of which devices were created
|
||||
or modified as a result of this request: clients are encouraged to
|
||||
listen for the XInput DevicePresenceNotify event to monitor changes
|
||||
in the device list.
|
||||
|
||||
org.x.config.input.remove:
|
||||
Takes one int32 argument, which is the device ID to remove, i.e.:
|
||||
i
|
||||
is the signature.
|
||||
Same return values as org.x.config.input.add.
|
||||
|
||||
Returns one signed int32 which represents an X status as defined in
|
||||
X.h. See org.x.config.input.add. Error codes are negative numbers.
|
||||
|
||||
org.x.config.input.listDevices:
|
||||
Lists the currently active devices.
|
||||
Lists the currently active devices. No argument.
|
||||
Return value is sequence of <id> <name> <id> <name> ...
|
||||
|
|
Loading…
Reference in New Issue
Block a user