mirror of
https://github.com/brl/mutter.git
synced 2025-06-13 16:59:30 +00:00
Add meta_display_set_alarm_filter()
Add a private hook for the test framework to get XSyncAlarmEvent events - this will be used to implement XSyncCounter based synchronization so that the test framework can deterministically wait until Mutter has seen actions performed by an X11 client. https://bugzilla.gnome.org/show_bug.cgi?id=736505
This commit is contained in:
@ -97,6 +97,10 @@ typedef enum {
|
||||
META_EVENT_ROUTE_WINDOW_OP,
|
||||
} MetaEventRoute;
|
||||
|
||||
typedef gboolean (*MetaAlarmFilter) (MetaDisplay *display,
|
||||
XSyncAlarmNotifyEvent *event,
|
||||
gpointer data);
|
||||
|
||||
struct _MetaDisplay
|
||||
{
|
||||
GObject parent_instance;
|
||||
@ -256,6 +260,9 @@ struct _MetaDisplay
|
||||
MetaGestureTracker *gesture_tracker;
|
||||
ClutterEventSequence *pointer_emulating_sequence;
|
||||
|
||||
MetaAlarmFilter alarm_filter;
|
||||
gpointer alarm_filter_data;
|
||||
|
||||
int composite_event_base;
|
||||
int composite_error_base;
|
||||
int composite_major_version;
|
||||
@ -453,4 +460,8 @@ void meta_display_cancel_touch (MetaDisplay *display);
|
||||
|
||||
gboolean meta_display_windows_are_interactable (MetaDisplay *display);
|
||||
|
||||
gboolean meta_display_set_alarm_filter (MetaDisplay *display,
|
||||
MetaAlarmFilter filter,
|
||||
gpointer data);
|
||||
|
||||
#endif
|
||||
|
@ -2954,3 +2954,14 @@ meta_display_is_pointer_emulating_sequence (MetaDisplay *display,
|
||||
|
||||
return display->pointer_emulating_sequence == sequence;
|
||||
}
|
||||
|
||||
gboolean
|
||||
meta_display_set_alarm_filter (MetaDisplay *display,
|
||||
MetaAlarmFilter filter,
|
||||
gpointer data)
|
||||
{
|
||||
g_return_if_fail (filter == NULL || display->alarm_filter == NULL);
|
||||
|
||||
display->alarm_filter = filter;
|
||||
display->alarm_filter_data = data;
|
||||
}
|
||||
|
Reference in New Issue
Block a user