summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorOlivier Fourdan <ofourdan@redhat.com>2021-03-11 09:27:06 +0100
committerOlivier Fourdan <ofourdan@redhat.com>2021-05-10 15:58:53 +0200
commit883f89dd39dcdae9a38e46f74a43b316180c8a19 (patch)
tree700487f5b62d491519f02a3c9104cbded03869b9 /include
parent174a94975af710247719310cfc53bd13e1f3b44d (diff)
xfixes: Add ClientDisconnectMode
The Xserver itself is capable of terminating itself once all X11 clients are gone, yet in a typical full session, there are a number of X11 clients running continuously (e.g. the Xsettings daemon, IBus, etc.). Those always-running clients will prevent the Xserver from terminating, because the actual number of X11 clients will never drop to 0. To solve this issue directly at the Xserver level, this add new entries to the XFixes extension to let the X11 clients themselves specify the disconnect mode they expect. Typically, those X11 daemon clients would specify the disconnect mode XFixesClientDisconnectFlagTerminate to let the Xserver know that they should not be accounted for when checking the remaining clients prior to terminate. Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Diffstat (limited to 'include')
-rw-r--r--include/X11/extensions/Xfixes.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/include/X11/extensions/Xfixes.h b/include/X11/extensions/Xfixes.h
index 8995d14..b62b95b 100644
--- a/include/X11/extensions/Xfixes.h
+++ b/include/X11/extensions/Xfixes.h
@@ -1,6 +1,6 @@
/*
* Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2011 Red Hat, Inc.
+ * Copyright 2011, 2021 Red Hat, Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -264,6 +264,16 @@ XFixesDestroyPointerBarrier(Display *dpy, PointerBarrier b);
#endif /* XFIXES_MAJOR >= 5 */
+#if XFIXES_MAJOR >= 6
+
+void
+XFixesSetClientDisconnectMode(Display *dpy, int disconnect_mode);
+
+int
+XFixesGetClientDisconnectMode(Display *dpy);
+
+#endif /* XFIXES_MAJOR >= 6 */
+
_XFUNCPROTOEND
#endif /* _XFIXES_H_ */