shell-util: Add API to check for X11 extensions
Will be used to disable animations when running inside Xvnc. This was done in gsd-xsettings before. https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/757
This commit is contained in:
parent
059fb5c7cb
commit
7220f6d25b
@ -20,6 +20,8 @@
|
|||||||
#include <glib/gi18n-lib.h>
|
#include <glib/gi18n-lib.h>
|
||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
#include <gdk-pixbuf/gdk-pixbuf.h>
|
#include <gdk-pixbuf/gdk-pixbuf.h>
|
||||||
|
#include <meta/display.h>
|
||||||
|
#include <meta/meta-x11-display.h>
|
||||||
|
|
||||||
#include <locale.h>
|
#include <locale.h>
|
||||||
#ifdef HAVE__NL_TIME_FIRST_WEEKDAY
|
#ifdef HAVE__NL_TIME_FIRST_WEEKDAY
|
||||||
@ -639,3 +641,27 @@ shell_util_sd_notify (void)
|
|||||||
* our environment. */
|
* our environment. */
|
||||||
sd_notify (1, "READY=1");
|
sd_notify (1, "READY=1");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* shell_util_has_x11_display_extension:
|
||||||
|
* @display: A #MetaDisplay
|
||||||
|
* @extension: An X11 extension
|
||||||
|
*
|
||||||
|
* If the corresponding X11 display provides the passed extension, return %TRUE,
|
||||||
|
* otherwise %FALSE. If there is no X11 display, %FALSE is passed.
|
||||||
|
*/
|
||||||
|
gboolean
|
||||||
|
shell_util_has_x11_display_extension (MetaDisplay *display,
|
||||||
|
const char *extension)
|
||||||
|
{
|
||||||
|
MetaX11Display *x11_display;
|
||||||
|
Display *xdisplay;
|
||||||
|
int op, event, error;
|
||||||
|
|
||||||
|
x11_display = meta_display_get_x11_display (display);
|
||||||
|
if (!x11_display)
|
||||||
|
return FALSE;
|
||||||
|
|
||||||
|
xdisplay = meta_x11_display_get_xdisplay (x11_display);
|
||||||
|
return XQueryExtension (xdisplay, extension, &op, &event, &error);
|
||||||
|
}
|
||||||
|
@ -66,6 +66,9 @@ gboolean shell_util_stop_systemd_unit (const char *unit,
|
|||||||
|
|
||||||
void shell_util_sd_notify (void);
|
void shell_util_sd_notify (void);
|
||||||
|
|
||||||
|
gboolean shell_util_has_x11_display_extension (MetaDisplay *display,
|
||||||
|
const char *extension);
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
|
||||||
#endif /* __SHELL_UTIL_H__ */
|
#endif /* __SHELL_UTIL_H__ */
|
||||||
|
Loading…
Reference in New Issue
Block a user