gtk/gdk
Olivier Fourdan 4c533e17f5 wayland: do not cancel key repeat on key press
The key repeat is stopped as soon as a key is pressed, so if the user
quickly presses a key while another is already pressed and being
repeated, key repeat gets cancelled:

 - key1 press
 - key1 repeat
 - key2 press -> key1 repeat stopped
 - key1 release
 - key 2 is not repeated even though it's kept depressed

This is a different behavior from X11, which confuses migrating users.

To mimic the X11 behavior, keep track of the number of keys pressed
simultaneously and cancel key repeat only when none is pressed.

This way, if a user pressed a key while another one is being repeated,
the new key press can possibly be repeated as well.

Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=778019
2017-02-27 11:53:03 +01:00
..
broadway gdk: Remove testing functions 2017-01-08 03:46:30 +01:00
mir mir: handle surface placement events 2017-01-30 03:06:59 -05:00
quartz gdk: Remove testing functions 2017-01-08 03:46:30 +01:00
resources/glsl Use GLSL version 110 for OpenGL 2 shaders. 2016-11-01 15:42:46 -03:00
wayland wayland: do not cancel key repeat on key press 2017-02-27 11:53:03 +01:00
win32 Visual Studio builds: Move project files to win32/ 2017-01-09 15:38:48 +08:00
x11 gdk: Ensure GdkDragContext instantly updates drag window position 2017-02-17 19:35:42 +01:00
COPYING Change FSF Address 2012-02-27 17:06:11 +00:00
fallback-c89.c gdk/fallback-c89.c: Add fallback for round() 2013-03-13 13:22:46 +08:00
gdk-autocleanup.h gdk: Add support for g_autoptr() 2015-02-02 09:28:22 +01:00
gdk-private.h Drop the GDK_PRIVATE_CALL mechanism 2016-11-23 19:31:16 -05:00
gdk.c Never return NULL from gdk_get_program_class 2017-02-05 15:03:35 +01:00
gdk.h gdk: Remove testing functions 2017-01-08 03:46:30 +01:00
gdkapplaunchcontext.c Remove deprecated gdk_app_launch_context_set_display 2016-10-25 15:52:57 -04:00
gdkapplaunchcontext.h Remove deprecated gdk_app_launch_context_set_display 2016-10-25 15:52:57 -04:00
gdkapplaunchcontextprivate.h Change FSF Address 2012-02-27 17:06:11 +00:00
gdkcairo.c docs: Remove mention of GdkColor 2017-01-18 04:13:56 +01:00
gdkcairo.h API: gdk: Remove ability to render window contents 2016-11-20 11:47:44 +01:00
gdkconfig.h.win32 Clean up the pre-configured gdkconfig.h.win32 2013-05-28 13:04:37 +08:00
gdkconfig.h.win32_vulkan Visual Studio builds: Support Vulkan builds 2016-12-30 14:42:38 +08:00
gdkcursor.c cursor: Remove deprecated API 2016-10-24 09:18:53 +02:00
gdkcursor.h cursor: Remove deprecated API 2016-10-24 09:18:53 +02:00
gdkcursorprivate.h gdk: Add gdk_cursor_get_surface() 2013-08-07 13:34:10 +02:00
gdkdeprecated.c gdkwindow: Remove deprecated API 2016-10-24 12:22:32 +02:00
gdkdevice.c Revert "Remove gdk_device_grab/ungrab from the API" 2016-10-25 21:24:37 -04:00
gdkdevice.h Revert "Remove gdk_device_grab/ungrab from the API" 2016-10-25 21:24:37 -04:00
gdkdevicemanager.c Drop the deprecated gdk_device_manager_get_client_pointer 2016-10-25 21:06:25 -04:00
gdkdevicemanager.h Drop the deprecated gdk_device_manager_get_client_pointer 2016-10-25 21:06:25 -04:00
gdkdevicemanagerprivate.h Change FSF Address 2012-02-27 17:06:11 +00:00
gdkdevicepad.c gdk: Add GdkDevicePad 2016-08-23 21:01:44 +02:00
gdkdevicepad.h gdk: Add GdkDevicePad 2016-08-23 21:01:44 +02:00
gdkdevicepadprivate.h gdk: Add GdkDevicePad 2016-08-23 21:01:44 +02:00
gdkdeviceprivate.h Revert "Remove gdk_device_grab/ungrab from the API" 2016-10-25 21:24:37 -04:00
gdkdevicetool.c gdk: Pass hardware ID on gdk_device_tool_new() 2016-08-23 21:01:44 +02:00
gdkdevicetool.h gdk: Add a getter for the hardware id of a GdkDeviceTool 2016-08-23 21:01:44 +02:00
gdkdevicetoolprivate.h gdk: Pass hardware ID on gdk_device_tool_new() 2016-08-23 21:01:44 +02:00
gdkdisplay.c gdk: Remove attributes_mask from gdk_window_new() 2016-11-07 01:33:43 +01:00
gdkdisplay.h API: gdk: Add gdk_display_is_rgba() and gdk_display_is_composited() 2016-10-29 04:49:47 +02:00
gdkdisplaymanager.c Remove redundant declaration 2016-10-17 11:10:13 +01:00
gdkdisplaymanager.h Add GDK_AVAILABLE_IN_ALL annotations in gdk 2013-05-05 15:38:46 -04:00
gdkdisplaymanagerprivate.h gdk: Unvfuncify gdk_display_manager_open_display() 2013-04-19 16:23:43 -04:00
gdkdisplayprivate.h Rename GDK_WINDOWING_VULKAN 2016-12-09 14:11:37 -05:00
gdkdnd.c gdk: Fix docs typo 2016-10-16 18:17:21 +02:00
gdkdnd.h gdk: Add GdkDragCancelReason enum as argument to GdkDragContext::cancel 2016-02-15 18:35:51 +01:00
gdkdndprivate.h gdk/dnd: Don't use default display when getting cursor 2016-04-26 23:03:24 +08:00
gdkdrawcontext.c Trivial doc fixups 2016-12-09 14:59:46 -05:00
gdkdrawcontext.h gdk: Add GdkDrawContext 2016-12-05 15:02:47 +01:00
gdkdrawcontextprivate.h gdk: Make gdk_window_begin_draw_frame() take a draw context 2016-12-05 15:02:47 +01:00
gdkdrawingcontext.c gdk: Make gdk_window_begin_draw_frame() take a draw context 2016-12-05 15:02:47 +01:00
gdkdrawingcontext.h gdk: Make gdk_window_begin_draw_frame() take a draw context 2016-12-05 15:02:47 +01:00
gdkdrawingcontextprivate.h drawingcontext: Add a private struct 2016-11-23 18:49:48 +01:00
gdkenumtypes.c.template Include config.h in gdkenumtypes.c.template 2013-03-15 09:19:35 -04:00
gdkenumtypes.h.template Fix some oversights with header guards 2014-12-08 19:31:56 -05:00
gdkevents.c gdk: Add pad event structs, enum values, and event mask bit 2016-08-23 21:01:44 +02:00
gdkevents.h gdk: Add pad event structs, enum values, and event mask bit 2016-08-23 21:01:44 +02:00
gdkframeclock.c Trivial whitespace fix 2016-04-30 21:06:38 -04:00
gdkframeclock.h Fix some oversights with header guards 2014-12-08 19:31:56 -05:00
gdkframeclockidle.c frame-clock: avoid g_signal_emit_by_name() 2016-04-18 15:33:53 -07:00
gdkframeclockidle.h GdkFrameClockIdle: Add a missing declaration 2014-09-05 20:44:22 -04:00
gdkframeclockprivate.h frametimings: reuse previous frame timing in common case 2016-04-26 09:06:07 -04:00
gdkframetimings.c frametimings: reuse previous frame timing in common case 2016-04-26 09:06:07 -04:00
gdkframetimings.h Fix some oversights with header guards 2014-12-08 19:31:56 -05:00
gdkgl.c gdk: Remove all code that only existed because of use_gl 2016-12-05 15:02:47 +01:00
gdkglcontext.c gdkgl: Add gdk_gl_context_get_damage() 2016-12-05 15:02:47 +01:00
gdkglcontext.h gdkgl: Add gdk_gl_context_get_damage() 2016-12-05 15:02:47 +01:00
gdkglcontextprivate.h gdkgl: Add gdk_gl_context_get_damage() 2016-12-05 15:02:47 +01:00
gdkglobals.c gdk: Add GDK_VULKAN env variable 2016-12-09 18:35:51 +01:00
gdkinternals.h gdk: Remove unused debug category 2017-01-08 00:48:12 +01:00
gdkintl.h Change FSF Address 2012-02-27 17:06:11 +00:00
gdkkeynames.c Keep XF86 keysym names working 2013-04-19 20:11:39 -04:00
gdkkeys.c Add some missing (nullable) annotations 2016-09-22 14:02:07 +02:00
gdkkeys.h gdkkeys: Add support to _get_scroll_lock_state() 2015-04-27 20:07:52 -03:00
gdkkeysprivate.h gdkkeys: Add support to _get_scroll_lock_state() 2015-04-27 20:07:52 -03:00
gdkkeysyms-compat.h Update gdkkeysyms.h header 2013-04-19 20:11:38 -04:00
gdkkeysyms-update.pl gdkkeysyms-update: Remove workarounds for old bugs 2013-07-17 16:40:05 -04:00
gdkkeysyms.h Update gdkkeysyms.h header 2013-04-19 20:11:38 -04:00
gdkkeyuni.c GDK W32: Cache multiple keyboard layouts simultaneously 2016-08-04 16:37:18 +00:00
gdkmain.h Drop gdk init api 2017-01-19 13:21:12 -05:00
gdkmarshalers.list gdkwindow: add gdk_window_move_to_rect () 2016-07-19 09:38:54 -04:00
gdkmonitor.c GdkMonitor: Fix refresh-rate property 2016-05-02 12:42:13 -04:00
gdkmonitor.h gdk: Fix parameter name mismatch 2016-05-08 15:34:28 +02:00
gdkmonitorprivate.h Add GdkMonitor 2016-04-27 23:18:16 -04:00
gdkpango.c API: screen: Stop storing font options 2016-10-16 18:17:21 +02:00
gdkpango.h Add gdk_pango_context_get_for_display 2016-04-18 07:04:44 -04:00
gdkpixbuf-drawable.c API: gdk: Remove ability to render window contents 2016-11-20 11:47:44 +01:00
gdkpixbuf.h API: gdk: Remove ability to render window contents 2016-11-20 11:47:44 +01:00
gdkprivate.h Make gdk_event_get_pointer_emulated public 2016-05-10 15:16:45 -04:00
gdkproperty.c Trivial formatting fix 2014-08-30 00:53:21 -04:00
gdkproperty.h Add GDK_AVAILABLE_IN_ALL annotations in gdk 2013-05-05 15:38:46 -04:00
gdkrectangle.c Clarify docs for gdk_rectangle_union 2016-01-20 13:44:34 -05:00
gdkrectangle.h gdk: Add gdk_rectangle_equal() 2015-10-03 22:26:27 -04:00
gdkrgba.c API: gdk: Add gdk_rgba_is_clear() and gdk_rgba_is_opaque() 2016-12-20 18:01:12 +01:00
gdkrgba.h API: gdk: Add gdk_rgba_is_clear() and gdk_rgba_is_opaque() 2016-12-20 18:01:12 +01:00
gdkscreen.c gdk: Remove visual APIs from GdkScreen 2016-11-04 00:02:37 +01:00
gdkscreen.h gdk: Remove visual APIs from GdkScreen 2016-11-04 00:02:37 +01:00
gdkscreenprivate.h gdk: Remove visual APIs from GdkScreen 2016-11-04 00:02:37 +01:00
gdkseat.c gdk: Add GdkSeat::tool-added/removed signals 2016-04-06 15:43:29 +02:00
gdkseat.h GdkSeat: Add G_BEGIN_DECLS and G_END_DECLS 2015-12-22 10:33:41 +01:00
gdkseatdefault.c Revert "Remove gdk_device_grab/ungrab from the API" 2016-10-25 21:24:37 -04:00
gdkseatdefaultprivate.h GdkSeatDefault: Add functions to add/remove tools 2016-04-06 15:43:29 +02:00
gdkseatprivate.h gdk: Add GdkSeat::tool-added/removed signals 2016-04-06 15:43:29 +02:00
gdkselection.c gdk: assorted introspection and documentation fixes 2014-05-19 11:47:59 -07:00
gdkselection.h Drop GDK_MULTIHEAD_SAFE 2014-06-11 21:55:15 -04:00
gdkthreads.h gdk: Remove deprecated gdk_threads_set_lock_functions 2016-10-24 10:33:17 +02:00
gdktypes.h vulkan: Add more infrastructure 2016-12-09 18:35:51 +01:00
gdkversionmacros.h.in Add GDK_AVAILABLE_IN_3_90 2016-09-29 17:24:56 +01:00
gdkvisual.c API: gdk: Remove visual querying APIs 2016-10-28 05:22:50 +02:00
gdkvisual.h API: gdk: Remove visual querying APIs 2016-10-28 05:22:50 +02:00
gdkvisualprivate.h gdk: calculate pixel color shift and precision lazily 2016-02-27 12:27:54 +01:00
gdkvulkancontext.c vulkancontext: Improve debug output 2017-01-06 02:02:08 -02:00
gdkvulkancontext.h gdk: Skip GdkVulkanContext methods when building introspection data 2017-01-19 18:18:07 +00:00
gdkvulkancontextprivate.h vulkancontext: Fix header 2017-01-04 13:23:35 +01:00
gdkwindow.c gdk: Remove testing functions 2017-01-08 03:46:30 +01:00
gdkwindow.h gdk: Drop gdk_window_reparent 2016-12-16 12:35:03 +01:00
gdkwindowimpl.c Drop support for offscreen GdkWindows 2016-10-25 09:54:37 +02:00
gdkwindowimpl.h gdk: Remove testing functions 2017-01-08 03:46:30 +01:00
gdkx.h Change FSF Address 2012-02-27 17:06:11 +00:00
gen-keyname-table.pl gdk: Make gen-keyname-table.pl work again 2011-10-26 10:36:43 +01:00
keyname-table.h docs: use proper quotations instead of '*' 2014-02-07 14:22:39 -05:00
keynames-translate.txt Add AudioMicMute 2013-07-17 17:52:19 -04:00
keynames.txt Fix key "Page_Down" identified as "Next" 2013-10-24 18:48:33 -04:00
Makefile.am Visual Studio builds: Move project files to win32/ 2017-01-09 15:38:48 +08:00
makefile.msc Drop support for offscreen GdkWindows 2016-10-25 09:54:37 +02:00