mirror of
https://github.com/brl/mutter.git
synced 2024-11-23 00:20:42 -05:00
core: Add a copy of GDK_PRIORITY_EVENTS
Quoting Carlos: The META_PRIORITY_EVENTS ± 1 happening below are in order to set these idles and timeouts in a priority that is relative to the literal GDK event priority, making those diverge is a likely way to sneakily break things. But that's unlikely to happen, and decoupling mutter from GTK further should make it moot, so perhaps it's alright after all. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2407>
This commit is contained in:
parent
809eaf6e91
commit
abef37f5ee
@ -25,6 +25,14 @@
|
||||
|
||||
#include "meta/display.h"
|
||||
|
||||
/**
|
||||
* META_PRIORITY_EVENTS: (value 0)
|
||||
*
|
||||
* This is the priority that events from the X server are given in the main loop.
|
||||
*/
|
||||
#define META_PRIORITY_EVENTS (G_PRIORITY_DEFAULT)
|
||||
|
||||
|
||||
void meta_display_init_events (MetaDisplay *display);
|
||||
void meta_display_free_events (MetaDisplay *display);
|
||||
|
||||
|
@ -126,6 +126,9 @@ test_client = executable('mutter-test-client',
|
||||
gio_unix_dep,
|
||||
x11_dep,
|
||||
xext_dep,
|
||||
graphene_dep,
|
||||
json_glib_dep,
|
||||
gsettings_desktop_schemas_dep,
|
||||
],
|
||||
install: have_installed_tests,
|
||||
install_dir: mutter_installed_tests_libexecdir,
|
||||
|
@ -28,6 +28,8 @@
|
||||
#include <string.h>
|
||||
#include <X11/extensions/sync.h>
|
||||
|
||||
#include "core/events.h"
|
||||
|
||||
const char *client_id = "0";
|
||||
static gboolean wayland;
|
||||
GHashTable *windows;
|
||||
@ -156,7 +158,7 @@ ensure_xsource_handler (GdkDisplay *gdkdisplay)
|
||||
x_source->event_poll_fd.events = G_IO_IN;
|
||||
g_source_add_poll (source, &x_source->event_poll_fd);
|
||||
|
||||
g_source_set_priority (source, GDK_PRIORITY_EVENTS - 1);
|
||||
g_source_set_priority (source, META_PRIORITY_EVENTS - 1);
|
||||
g_source_set_can_recurse (source, TRUE);
|
||||
g_source_attach (source, NULL);
|
||||
|
||||
|
@ -31,6 +31,7 @@
|
||||
#include "clutter/clutter.h"
|
||||
#include "cogl/cogl-egl.h"
|
||||
#include "compositor/meta-surface-actor-wayland.h"
|
||||
#include "core/events.h"
|
||||
#include "core/meta-context-private.h"
|
||||
#include "wayland/meta-wayland-activation.h"
|
||||
#include "wayland/meta-wayland-buffer.h"
|
||||
@ -594,7 +595,7 @@ meta_wayland_compositor_new (MetaContext *context)
|
||||
* relating to X clients when we don't know what's happened to them
|
||||
* according to the X protocol.
|
||||
*/
|
||||
g_source_set_priority (wayland_event_source, GDK_PRIORITY_EVENTS + 1);
|
||||
g_source_set_priority (wayland_event_source, META_PRIORITY_EVENTS + 1);
|
||||
g_source_attach (wayland_event_source, NULL);
|
||||
compositor->source = wayland_event_source;
|
||||
g_source_unref (wayland_event_source);
|
||||
|
Loading…
Reference in New Issue
Block a user