mirror of
https://github.com/brl/mutter.git
synced 2025-01-11 20:22:23 +00:00
backends/native: Use ClutterEvent getter methods
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3153>
This commit is contained in:
parent
8f3e503c04
commit
dbbfd03436
@ -292,10 +292,10 @@ find_pending_event_by_keycode (gconstpointer a,
|
||||
gconstpointer b)
|
||||
{
|
||||
const SlowKeysEventPending *pa = a;
|
||||
const ClutterKeyEvent *ka = (ClutterKeyEvent *) pa->event;
|
||||
const ClutterKeyEvent *kb = b;
|
||||
const ClutterEvent *ea = pa->event;
|
||||
const ClutterEvent *eb = b;
|
||||
|
||||
return kb->hardware_keycode - ka->hardware_keycode;
|
||||
return clutter_event_get_key_code (eb) - clutter_event_get_key_code (ea);
|
||||
}
|
||||
|
||||
static GSource *
|
||||
@ -321,9 +321,8 @@ start_slow_keys (ClutterEvent *event,
|
||||
MetaInputDeviceNative *device)
|
||||
{
|
||||
SlowKeysEventPending *slow_keys_event;
|
||||
ClutterKeyEvent *key_event = (ClutterKeyEvent *) event;
|
||||
|
||||
if (key_event->flags & CLUTTER_EVENT_FLAG_REPEATED)
|
||||
if (clutter_event_get_flags (event) & CLUTTER_EVENT_FLAG_REPEATED)
|
||||
return TRUE;
|
||||
|
||||
slow_keys_event = g_new0 (SlowKeysEventPending, 1);
|
||||
@ -397,7 +396,7 @@ start_bounce_keys (ClutterEvent *event,
|
||||
{
|
||||
stop_bounce_keys (device);
|
||||
|
||||
device->debounce_key = ((ClutterKeyEvent *) event)->hardware_keycode;
|
||||
device->debounce_key = clutter_event_get_key_code (event);
|
||||
device->debounce_timer =
|
||||
timeout_source_new (device->seat_impl,
|
||||
get_debounce_delay (CLUTTER_INPUT_DEVICE (device)),
|
||||
@ -422,13 +421,13 @@ static gboolean
|
||||
debounce_key (ClutterEvent *event,
|
||||
MetaInputDeviceNative *device)
|
||||
{
|
||||
return (device->debounce_key == ((ClutterKeyEvent *) event)->hardware_keycode);
|
||||
return (device->debounce_key == clutter_event_get_key_code (event));
|
||||
}
|
||||
|
||||
static gboolean
|
||||
key_event_is_modifier (ClutterEvent *event)
|
||||
{
|
||||
switch (event->key.keyval)
|
||||
switch (clutter_event_get_key_symbol (event))
|
||||
{
|
||||
case XKB_KEY_Shift_L:
|
||||
case XKB_KEY_Shift_R:
|
||||
@ -694,16 +693,21 @@ static void
|
||||
handle_enablekeys_press (ClutterEvent *event,
|
||||
MetaInputDeviceNative *device)
|
||||
{
|
||||
if (event->key.keyval == XKB_KEY_Shift_L || event->key.keyval == XKB_KEY_Shift_R)
|
||||
uint32_t keyval, time_ms;
|
||||
|
||||
keyval = clutter_event_get_key_symbol (event);
|
||||
time_ms = clutter_event_get_time (event);
|
||||
|
||||
if (keyval == XKB_KEY_Shift_L || keyval == XKB_KEY_Shift_R)
|
||||
{
|
||||
start_toggle_slowkeys (device);
|
||||
|
||||
if (event->key.time > device->last_shift_time + 15 * 1000 /* 15 secs */)
|
||||
if (time_ms > device->last_shift_time + 15 * 1000 /* 15 secs */)
|
||||
device->shift_count = 1;
|
||||
else
|
||||
device->shift_count++;
|
||||
|
||||
device->last_shift_time = event->key.time;
|
||||
device->last_shift_time = time_ms;
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -716,7 +720,11 @@ static void
|
||||
handle_enablekeys_release (ClutterEvent *event,
|
||||
MetaInputDeviceNative *device)
|
||||
{
|
||||
if (event->key.keyval == XKB_KEY_Shift_L || event->key.keyval == XKB_KEY_Shift_R)
|
||||
uint32_t keyval;
|
||||
|
||||
keyval = clutter_event_get_key_symbol (event);
|
||||
|
||||
if (keyval == XKB_KEY_Shift_L || keyval == XKB_KEY_Shift_R)
|
||||
{
|
||||
stop_toggle_slowkeys (device);
|
||||
if (device->shift_count >= 5)
|
||||
@ -1027,7 +1035,8 @@ static void
|
||||
start_mousekeys_move (ClutterEvent *event,
|
||||
MetaInputDeviceNative *device)
|
||||
{
|
||||
device->last_mousekeys_key = event->key.keyval;
|
||||
device->last_mousekeys_key =
|
||||
clutter_event_get_key_symbol (event);
|
||||
|
||||
if (device->move_mousekeys_timer != 0)
|
||||
return;
|
||||
@ -1039,7 +1048,7 @@ static gboolean
|
||||
handle_mousekeys_press (ClutterEvent *event,
|
||||
MetaInputDeviceNative *device)
|
||||
{
|
||||
if (!(event->key.flags & CLUTTER_EVENT_FLAG_SYNTHETIC))
|
||||
if (!(clutter_event_get_flags (event) & CLUTTER_EVENT_FLAG_SYNTHETIC))
|
||||
stop_mousekeys_move (device);
|
||||
|
||||
/* Do not handle mousekeys if NumLock is ON */
|
||||
@ -1047,7 +1056,7 @@ handle_mousekeys_press (ClutterEvent *event,
|
||||
return FALSE;
|
||||
|
||||
/* Button selection */
|
||||
switch (event->key.keyval)
|
||||
switch (clutter_event_get_key_symbol (event))
|
||||
{
|
||||
case XKB_KEY_KP_Divide:
|
||||
device->mousekeys_btn = CLUTTER_BUTTON_PRIMARY;
|
||||
@ -1063,7 +1072,7 @@ handle_mousekeys_press (ClutterEvent *event,
|
||||
}
|
||||
|
||||
/* Button events */
|
||||
switch (event->key.keyval)
|
||||
switch (clutter_event_get_key_symbol (event))
|
||||
{
|
||||
case XKB_KEY_KP_Begin:
|
||||
case XKB_KEY_KP_5:
|
||||
@ -1086,7 +1095,7 @@ handle_mousekeys_press (ClutterEvent *event,
|
||||
}
|
||||
|
||||
/* Pointer motion */
|
||||
switch (event->key.keyval)
|
||||
switch (clutter_event_get_key_symbol (event))
|
||||
{
|
||||
case XKB_KEY_KP_1:
|
||||
case XKB_KEY_KP_2:
|
||||
@ -1121,7 +1130,7 @@ handle_mousekeys_release (ClutterEvent *event,
|
||||
if (is_numlock_active (device))
|
||||
return FALSE;
|
||||
|
||||
switch (event->key.keyval)
|
||||
switch (clutter_event_get_key_symbol (event))
|
||||
{
|
||||
case XKB_KEY_KP_0:
|
||||
case XKB_KEY_KP_1:
|
||||
@ -1163,10 +1172,13 @@ meta_input_device_native_process_kbd_a11y_event_in_impl (ClutterInputDevice *dev
|
||||
ClutterEvent *event)
|
||||
{
|
||||
MetaInputDeviceNative *device_evdev = META_INPUT_DEVICE_NATIVE (device);
|
||||
ClutterEventType event_type;
|
||||
|
||||
event_type = clutter_event_type (event);
|
||||
|
||||
if (device_evdev->a11y_flags & META_A11Y_KEYBOARD_ENABLED)
|
||||
{
|
||||
if (event->type == CLUTTER_KEY_PRESS)
|
||||
if (event_type == CLUTTER_KEY_PRESS)
|
||||
handle_enablekeys_press (event, device_evdev);
|
||||
else
|
||||
handle_enablekeys_release (event, device_evdev);
|
||||
@ -1174,10 +1186,10 @@ meta_input_device_native_process_kbd_a11y_event_in_impl (ClutterInputDevice *dev
|
||||
|
||||
if (device_evdev->a11y_flags & META_A11Y_MOUSE_KEYS_ENABLED)
|
||||
{
|
||||
if (event->type == CLUTTER_KEY_PRESS &&
|
||||
if (event_type == CLUTTER_KEY_PRESS &&
|
||||
handle_mousekeys_press (event, device_evdev))
|
||||
return TRUE; /* swallow event */
|
||||
if (event->type == CLUTTER_KEY_RELEASE &&
|
||||
if (event_type == CLUTTER_KEY_RELEASE &&
|
||||
handle_mousekeys_release (event, device_evdev))
|
||||
return TRUE; /* swallow event */
|
||||
}
|
||||
@ -1185,30 +1197,32 @@ meta_input_device_native_process_kbd_a11y_event_in_impl (ClutterInputDevice *dev
|
||||
if ((device_evdev->a11y_flags & META_A11Y_BOUNCE_KEYS_ENABLED) &&
|
||||
(get_debounce_delay (device) != 0))
|
||||
{
|
||||
if ((event->type == CLUTTER_KEY_PRESS) && debounce_key (event, device_evdev))
|
||||
if ((event_type == CLUTTER_KEY_PRESS) && debounce_key (event, device_evdev))
|
||||
{
|
||||
notify_bounce_keys_reject (device_evdev);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
else if (event->type == CLUTTER_KEY_RELEASE)
|
||||
start_bounce_keys (event, device_evdev);
|
||||
else if (event_type == CLUTTER_KEY_RELEASE)
|
||||
{
|
||||
start_bounce_keys (event, device_evdev);
|
||||
}
|
||||
}
|
||||
|
||||
if ((device_evdev->a11y_flags & META_A11Y_SLOW_KEYS_ENABLED) &&
|
||||
(get_slow_keys_delay (device) != 0))
|
||||
{
|
||||
if (event->type == CLUTTER_KEY_PRESS)
|
||||
if (event_type == CLUTTER_KEY_PRESS)
|
||||
return start_slow_keys (event, device_evdev);
|
||||
else if (event->type == CLUTTER_KEY_RELEASE)
|
||||
else if (event_type == CLUTTER_KEY_RELEASE)
|
||||
return stop_slow_keys (event, device_evdev);
|
||||
}
|
||||
|
||||
if (device_evdev->a11y_flags & META_A11Y_STICKY_KEYS_ENABLED)
|
||||
{
|
||||
if (event->type == CLUTTER_KEY_PRESS)
|
||||
if (event_type == CLUTTER_KEY_PRESS)
|
||||
return handle_stickykeys_press (event, device_evdev);
|
||||
else if (event->type == CLUTTER_KEY_RELEASE)
|
||||
else if (event_type == CLUTTER_KEY_RELEASE)
|
||||
return handle_stickykeys_release (event, device_evdev);
|
||||
}
|
||||
|
||||
|
@ -61,7 +61,7 @@ meta_seat_native_handle_event_post (ClutterSeat *seat,
|
||||
{
|
||||
MetaSeatNative *seat_native = META_SEAT_NATIVE (seat);
|
||||
ClutterInputDevice *device = clutter_event_get_source_device (event);
|
||||
ClutterEventType event_type = event->type;
|
||||
ClutterEventType event_type = clutter_event_type (event);
|
||||
|
||||
if (event_type == CLUTTER_PROXIMITY_OUT)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user