mutter/clutter
Carlos Garnacho 488639eb63 x11: Avoid invalid ClutterInputDevice pointers in the device list
Due to the way add_device() invariably adds to the master/slave device
lists, while keeping ClutterInputDevices 1:1 with device IDs, it may
leave invalid pointers in the list if add_device() is called multiple
times for the same device ID. There are two situations where this may
happen:

1) If devices are disabled and later enabled: devices are added invariably
   to the master/slave lists on constructed(), but then on XIDeviceEnabled
   they'd get added yet again.
2) Racy cases where the ClutterDeviceManager is created around the same time
   XIHierarchyEvents are sent. When getting the XIDeviceInfo on constructed(),
   these devices may already appear as enabled, even though XIDeviceEnabled
   is seen through XIHierarchyEvents processed in the event loop sortly after.

   This last case can be seen when starting gnome-shell on a different tty,
   and entering in the one it's been spawned on, clutter initialization
   happens around the same time devices are added back because of the tty
   switch, and multiple extra ClutterInputDevices are created.

https://bugzilla.gnome.org/show_bug.cgi?id=724971
2014-02-25 10:18:20 +01:00
..
cally a11y: compute properly if there is text selected 2014-01-14 18:43:48 +01:00
cex100 docs: fix some headers paths 2011-11-10 19:05:39 +01:00
cogl stage-cogl: Fix buffer_age code path 2014-02-20 12:00:20 +01:00
deprecated Deprecate ClutterTableLayout 2013-11-19 00:31:53 +00:00
egl EGL: Include cogl-egl.h for prototypes 2012-10-12 15:12:55 +01:00
evdev device-manager-evdev: Stop using deprecated libevdev API 2013-11-21 19:34:15 +01:00
gdk win32: Disable event retrieval in Cogl 2013-07-12 17:59:54 +01:00
osx stage: Remove tracking input devices, it's not used 2012-09-03 21:50:19 +01:00
tslib Deprecate clutter_threads_enter()/leave() 2012-07-11 13:22:19 +01:00
wayland wayland: Implement support for 'cursor-visible' stage property 2013-11-14 18:34:40 +00:00
win32 win32: Disable event retrieval in Cogl 2013-07-12 17:59:54 +01:00
x11 x11: Avoid invalid ClutterInputDevice pointers in the device list 2014-02-25 10:18:20 +01:00
abicheck.sh Make abicheck.sh output TAP 2013-12-12 18:51:11 +00:00
clutter-action.c
clutter-action.h ClutterActor: Add clutter_actor_has_actions 2011-09-29 19:34:32 +02:00
clutter-actor-box.c docs: Fix syntax errors in annotations 2013-12-04 16:09:09 +00:00
clutter-actor-meta-private.h ClutterActor: Add clutter_actor_has_effects 2011-09-29 19:34:24 +02:00
clutter-actor-meta.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-actor-meta.h docs: Documentation fixes 2012-02-23 12:01:11 +00:00
clutter-actor-private.h actor: Add private getter for the active framebuffer 2013-12-04 16:07:17 +00:00
clutter-actor.c actor: Extend :scale-[xyz] factors in the negative range 2014-02-10 18:35:12 +00:00
clutter-actor.h clutter-actor: Make clutter_actor_has_mapped_clones public 2013-07-17 12:43:38 +02:00
clutter-align-constraint.c constraints: Clamp updated allocation to the nearest pixel 2012-06-27 21:28:01 +01:00
clutter-align-constraint.h Move all enumerations to a separate file 2011-10-11 17:59:46 +01:00
clutter-animatable.c animatable: Disable deprecation warnings 2012-04-27 14:21:56 +01:00
clutter-animatable.h Deprecate ClutterAnimation, as well as clutter_actor_animate() 2012-04-27 12:30:48 +01:00
clutter-backend-private.h Add API to restrict the windowing backend to load 2013-09-11 09:54:35 +02:00
clutter-backend.c Documentation fixes 2013-09-19 22:58:43 +01:00
clutter-backend.h Add API to restrict the windowing backend to load 2013-09-11 09:54:35 +02:00
clutter-base-types.c Deprecate ClutterGeometry 2013-04-04 11:53:39 +01:00
clutter-bezier.c debug: Clean up debugging notes 2011-10-17 10:24:25 +01:00
clutter-bezier.h
clutter-bin-layout.c bin-layout: Fix offsets 2013-08-19 23:37:43 +01:00
clutter-bin-layout.h bin-layout: Deprecate BinLayout alignments 2012-04-27 12:30:49 +01:00
clutter-bind-constraint.c Bind constraints: Don't force redraws on source relayout 2013-11-26 11:12:12 -05:00
clutter-bind-constraint.h Move all enumerations to a separate file 2011-10-11 17:59:46 +01:00
clutter-binding-pool.c introspection: assorted annotation fixes ported from Vala 2012-06-12 17:44:16 -07:00
clutter-binding-pool.h docs: Document user_data argument for BindingActionFunc 2012-06-10 23:34:47 +01:00
clutter-blur-effect.c blur-effect: Fix the blur filter 2012-09-03 21:18:43 +01:00
clutter-blur-effect.h Appease the gods in introspection 2011-01-20 16:35:26 +00:00
clutter-box-layout.c box-layout: Fix floating point truncation when calculating a child's size 2013-09-09 19:32:57 -04:00
clutter-box-layout.h box-layout: Deprecate expand/fill/align child properties 2012-06-04 16:16:41 +02:00
clutter-brightness-contrast-effect.c brightness-contrast-effect: Don't actually run if it will have no effect 2012-09-03 05:02:48 -03:00
clutter-brightness-contrast-effect.h Add brightness/contrast effect 2012-03-07 14:02:55 +00:00
clutter-cairo.c Fixes for the API reference 2012-04-27 12:30:48 +01:00
clutter-cairo.h Deprecate ClutterCairoTexture 2012-04-27 12:28:49 +01:00
clutter-canvas.c canvas: Add scale-factor property 2014-01-20 12:26:46 +00:00
clutter-canvas.h canvas: Add scale-factor property 2014-01-20 12:26:46 +00:00
clutter-child-meta.c Remove private helper #define's 2011-03-03 11:47:49 +00:00
clutter-child-meta.h docs: Fixes for cross-references 2011-09-12 13:12:14 +01:00
clutter-click-action.c click-action: disconnect signals and gsources on dispose 2013-09-10 21:48:42 +01:00
clutter-click-action.h action: fix CLUTTER_GESTURE_ACTION_GET_CLASS() 2012-09-11 23:05:15 +02:00
clutter-clone.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-clone.h Avoid the shadowing of 'clone' 2011-10-19 15:23:55 +01:00
clutter-cogl-compat.h Reduce our internal dependence on the Cogl 1.x api 2012-02-21 17:46:11 +00:00
clutter-color-static.h static-colors: Simplify the defines 2011-09-05 17:22:14 +01:00
clutter-color.c color: Fix documentation of 'hsla()' parsing 2014-02-10 17:54:06 +00:00
clutter-color.h color: Add initializers for ClutterColor 2012-04-27 12:30:47 +01:00
clutter-colorize-effect.c Pass a CoglContext when calling cogl_pipeline_new 2012-02-21 17:46:11 +00:00
clutter-colorize-effect.h clutter-color-size-effect: Fix a minor typo in the docs 2011-02-16 14:11:59 +00:00
clutter-config.h.in build: Generate an instealled config header 2011-01-19 14:33:27 +00:00
clutter-config.h.win32 clutter-config.h.win32: Add CLUTTER_INPUT_NULL 2011-11-14 13:33:04 +08:00
clutter-config.h.win32_GDK Visual C++ support: Add support to build GDK backend 2012-05-14 16:18:13 +08:00
clutter-constraint.c Move examples from tests/interactive to a new top-level 2012-05-01 19:00:35 +01:00
clutter-constraint.h ClutterActor: Add clutter_actor_has_contraints 2011-09-29 19:34:31 +02:00
clutter-container.c Use G_VALUE_INIT instead of { 0, } 2012-03-17 16:40:55 +00:00
clutter-container.h Deprecate the old raise/lower API 2012-01-16 23:37:13 +00:00
clutter-content-private.h content: Make get_preferred_size() public 2012-03-16 12:33:37 +00:00
clutter-content.c canvas: Add canvas size to the ::draw signal 2012-03-16 12:33:37 +00:00
clutter-content.h Annotate functionality added in 1.10 2012-03-16 17:30:26 +00:00
clutter-debug.h debug: Simple whitespace cleanups 2011-11-18 17:54:19 +00:00
clutter-deform-effect.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-deform-effect.h build: Re-arrange headers 2010-11-18 18:23:49 +00:00
clutter-deprecated.h Deprecate ClutterTableLayout 2013-11-19 00:31:53 +00:00
clutter-desaturate-effect.c Pass a CoglContext when calling cogl_pipeline_new 2012-02-21 17:46:11 +00:00
clutter-desaturate-effect.h Appease the gods in introspection 2011-01-20 16:35:26 +00:00
clutter-device-manager-private.h device-manager: Select for events on XIAllMasterDevices 2013-07-11 14:09:43 -04:00
clutter-device-manager.c device-manager: Don't emit device-removed with a finalized instance 2013-11-21 19:34:14 +01:00
clutter-device-manager.h device-manager: Select for events on XIAllMasterDevices 2013-07-11 14:09:43 -04:00
clutter-drag-action.c drag-action: don't mix touch and pointer events 2013-11-14 18:34:40 +00:00
clutter-drag-action.h ClutterDragAction: allow constraining the movement of the dragged actor 2012-08-16 18:21:07 +02:00
clutter-drop-action.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-drop-action.h docs: Document ClutterDropAction 2011-06-20 15:25:54 +01:00
clutter-easing.c timeline: Add cubic-bezier() progress functions 2012-07-19 22:13:24 -04:00
clutter-easing.h timeline: Add cubic-bezier() progress functions 2012-07-19 22:13:24 -04:00
clutter-effect-private.h effect: Rename RunFlags to PaintFlags 2011-06-13 16:00:45 +01:00
clutter-effect.c Fixes for the API reference 2012-04-27 12:30:48 +01:00
clutter-effect.h Move all enumerations to a separate file 2011-10-11 17:59:46 +01:00
clutter-enum-types.c.in
clutter-enum-types.h.in
clutter-enums.h gesture: Make threshold-trigger-edge public 2013-12-05 15:20:39 +00:00
clutter-event-private.h Add API to install an event filter 2013-11-14 14:32:17 -05:00
clutter-event-translator.c event/x11: Rework the way we translate X11 events 2011-01-21 10:25:43 +00:00
clutter-event-translator.h event/x11: Rework the way we translate X11 events 2011-01-21 10:25:43 +00:00
clutter-event.c Add API to install an event filter 2013-11-14 14:32:17 -05:00
clutter-event.h Add API to install an event filter 2013-11-14 14:32:17 -05:00
clutter-feature.c Fix missing/redundant declarations 2012-03-07 12:36:43 +00:00
clutter-feature.h Move all enumerations to a separate file 2011-10-11 17:59:46 +01:00
clutter-fixed-layout.c fixed-layout: Remove the NO_LAYOUT flag set 2012-01-27 15:45:11 +00:00
clutter-fixed-layout.h
clutter-flatten-effect.c clutter-actor: Add a 'has_overlaps' virtual 2011-05-13 01:46:32 +01:00
clutter-flatten-effect.h clutter-actor: Add a 'has_overlaps' virtual 2011-05-13 01:46:32 +01:00
clutter-flow-layout.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-flow-layout.h flow-layout: Add :snap-to-grid property 2013-05-11 10:54:38 -04:00
clutter-gesture-action-private.h gesture: Make threshold-trigger-edge public 2013-12-05 15:20:39 +00:00
clutter-gesture-action.c GestureActions: Add per-action thresholds 2014-02-13 18:53:24 +01:00
clutter-gesture-action.h GestureActions: Add per-action thresholds 2014-02-13 18:53:24 +01:00
clutter-grid-layout.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-grid-layout.h Add ClutterGridLayout 2012-06-05 12:28:25 +02:00
clutter-group.h Deprecate ClutterGroup 2012-01-16 23:35:16 +00:00
clutter-id-pool.c clutter-id-pool: fix warning on bad pick 2011-05-26 08:48:13 -04:00
clutter-id-pool.h Privatize all ClutterIdPool functions 2011-02-18 15:53:27 +00:00
clutter-image.c image: Do not premultiply the blend color 2013-10-10 13:40:42 +01:00
clutter-image.h image: Add a data setter using GBytes 2012-06-04 10:34:22 +01:00
clutter-input-device.c input-device: Guard against double free 2013-11-29 15:56:48 +00:00
clutter-input-device.h ClutterInputDevice: add new API for querying the modifier state 2013-09-09 13:18:19 +02:00
clutter-interval.c interval: Call g_object_set_property in set_custom_property() 2013-11-14 18:34:40 +00:00
clutter-interval.h interval: Add is_valid() method 2012-06-08 17:32:51 +01:00
clutter-keyframe-transition.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-keyframe-transition.h keyframe-transition: Add direct accessors for key frames 2012-04-27 12:30:48 +01:00
clutter-keysyms-table.c Fix missing/redundant declarations 2012-03-07 12:36:43 +00:00
clutter-keysyms-update.pl keysyms-update: Add deprecation guards to the deprecated header 2012-06-11 13:46:38 +01:00
clutter-keysyms.h Update keysyms headers 2012-06-11 13:47:29 +01:00
clutter-layout-manager.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-layout-manager.h Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-layout-meta.c
clutter-layout-meta.h docs: Annotation fixes 2012-04-30 17:17:41 +01:00
clutter-list-model.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-list-model.h
clutter-macros.h Add 1.18 version macros 2013-10-10 13:50:10 +01:00
clutter-main.c tests: Use an internal setter for disabling vblank sync 2013-12-12 18:51:11 +00:00
clutter-main.h Add method clutter_disable_accessibility () 2013-03-13 18:56:58 +01:00
clutter-marshal.list swipe-action: Introduce new ::swipe signal 2012-12-18 01:27:32 +00:00
clutter-master-clock.c Add clutter_stage_set_sync_delay() 2013-02-13 09:27:17 -05:00
clutter-master-clock.h timeline: Add an internal function for advancing a timeline 2012-04-27 12:30:48 +01:00
clutter-model-private.h Mark internal symbol as private 2012-02-09 18:40:03 +00:00
clutter-model.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-model.h Eliminate G_CONST_RETURN 2011-06-07 16:06:24 +01:00
clutter-offscreen-effect-private.h offscreen-effect: Add public accessor for target size 2011-02-28 14:34:36 +00:00
clutter-offscreen-effect.c Revert "clutter-offscreen-effect: Allocate the cogl texture directly" 2013-09-02 17:06:49 +01:00
clutter-offscreen-effect.h offscreen-effect: Add a method to get the target area 2013-03-04 12:24:23 +00:00
clutter-page-turn-effect.c Remove private helper #define's 2011-03-03 11:47:49 +00:00
clutter-page-turn-effect.h Appease the gods in introspection 2011-01-20 16:35:26 +00:00
clutter-paint-node-private.h paint-node: Get the framebuffer from the root node 2013-12-04 16:07:17 +00:00
clutter-paint-node.c paint-node: Get the framebuffer from the root node 2013-12-04 16:07:17 +00:00
clutter-paint-node.h Don't do anything special with COGL_ENABLE_EXPERIMENTAL_2_0_API 2013-02-20 23:06:28 +00:00
clutter-paint-nodes.c paint-node: Get the framebuffer from the root node 2013-12-04 16:07:17 +00:00
clutter-paint-nodes.h Don't do anything special with COGL_ENABLE_EXPERIMENTAL_2_0_API 2013-02-20 23:06:28 +00:00
clutter-paint-volume-private.h Optimize culling by doing culling in eye-coordinates 2011-03-07 13:26:20 +00:00
clutter-paint-volume.c actor: Deprecate Geometry-related API 2012-08-10 15:05:43 +01:00
clutter-pan-action.c GestureActions: Set threshold-trigger-edge at right time 2014-02-13 18:53:24 +01:00
clutter-pan-action.h pan-action: Add a simple convenience function to retrieve delta/coords 2012-11-30 17:19:14 -05:00
clutter-path-constraint.c Don't annotate with (transfer full) constructors of GInitiallyUnowned subclasses 2012-10-24 13:17:57 +02:00
clutter-path-constraint.h Appease the gods in introspection 2011-01-20 16:35:26 +00:00
clutter-path.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-path.h Move PathNode definitions into clutter-types.h 2012-06-23 08:23:11 +01:00
clutter-private.h tests: Use an internal setter for disabling vblank sync 2013-12-12 18:51:11 +00:00
clutter-profile.c debug: Clean up profile/debug symbols 2011-11-18 17:44:42 +00:00
clutter-profile.h Fix fallback profile counter macro 2012-03-22 12:00:55 +00:00
clutter-property-transition.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-property-transition.h property-transition: Remove animatable from the ctor 2012-03-20 11:59:32 +00:00
clutter-rotate-action.c GestureActions: Set threshold-trigger-edge at right time 2014-02-13 18:53:24 +01:00
clutter-rotate-action.h action: fix CLUTTER_GESTURE_ACTION_GET_CLASS() 2012-09-11 23:05:15 +02:00
clutter-script-parser.c Fix compilers warnings when debugging is disabled 2013-04-04 11:53:38 +01:00
clutter-script-private.h script: Support ClutterPoint and ClutterSize 2012-04-27 12:30:46 +01:00
clutter-script.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-script.h Deprecate State and Animator 2012-04-27 12:30:48 +01:00
clutter-scriptable.c Eliminate G_CONST_RETURN 2011-06-07 16:06:24 +01:00
clutter-scriptable.h Eliminate G_CONST_RETURN 2011-06-07 16:06:24 +01:00
clutter-scroll-actor.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-scroll-actor.h Add ClutterScrollActor 2012-04-27 12:30:50 +01:00
clutter-settings-private.h Add more sections to the Clutter configuration file 2011-10-11 17:52:17 +01:00
clutter-settings.c settings: Make unscaled-font-dpi override font-dpi 2014-01-23 12:17:09 +00:00
clutter-settings.h Appease the gods in introspection 2011-01-20 16:35:26 +00:00
clutter-shader-effect.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-shader-effect.h clutter-shader-effect: Add a get_static_shader_source virtual 2011-09-30 11:51:37 +01:00
clutter-shader-types.c introspection: assorted annotation fixes ported from Vala 2012-06-12 17:44:16 -07:00
clutter-shader-types.h Eliminate G_CONST_RETURN 2011-06-07 16:06:24 +01:00
clutter-snap-constraint.c Bind constraints: Don't force redraws on source relayout 2013-11-26 11:12:12 -05:00
clutter-snap-constraint.h Move all enumerations to a separate file 2011-10-11 17:59:46 +01:00
clutter-stage-manager-private.h
clutter-stage-manager.c Fix missing/redundant declarations 2012-03-07 12:36:43 +00:00
clutter-stage-manager.h Add deprecated header for ClutterStageManager 2012-02-27 15:21:32 +00:00
clutter-stage-private.h stage: Adjust drawing to include the window scaling factor 2013-09-19 22:51:52 +01:00
clutter-stage-window.c stage-window: Add scaling factor accessors 2013-09-19 22:51:52 +01:00
clutter-stage-window.h stage-window: Add scaling factor accessors 2013-09-19 22:51:52 +01:00
clutter-stage.c stage: Check coordinate validity in do_pick() 2014-01-20 12:26:46 +00:00
clutter-stage.h stage: Add a paint callback 2013-05-06 10:04:21 -07:00
clutter-swipe-action.c GestureActions: Add per-action thresholds 2014-02-13 18:53:24 +01:00
clutter-swipe-action.h swipe-action: Introduce new ::swipe signal 2012-12-18 01:27:32 +00:00
clutter-tap-action.c GestureActions: Set threshold-trigger-edge at right time 2014-02-13 18:53:24 +01:00
clutter-tap-action.h tap-action: Add TapAction, to handle mouse/touch tapping 2012-10-19 13:41:31 +02:00
clutter-test-utils.c tests: Use an internal setter for disabling vblank sync 2013-12-12 18:51:11 +00:00
clutter-test-utils.h Fully rework the conformance test suite 2013-12-12 18:51:11 +00:00
clutter-text-buffer.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-text-buffer.h Annotate all functions available since 1.10 2012-02-27 16:35:09 +00:00
clutter-text.c text: Fix the implementation of delete_chars() 2014-01-24 18:49:18 +00:00
clutter-text.h text: Add ::cursor-changed signal 2013-04-04 11:53:39 +01:00
clutter-texture.h Deprecate ClutterTexture's API 2012-07-11 13:22:21 +01:00
clutter-timeline.c timeline: Fix bad logic in check 2014-02-10 17:43:16 +00:00
clutter-timeline.h timeline: Add progress-based marker API 2013-02-20 23:06:28 +00:00
clutter-transition-group.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-transition-group.h Add ClutterTransitionGroup 2012-04-27 12:30:48 +01:00
clutter-transition.c docs: Explicitly mention that Transition is abstract 2014-02-10 18:32:36 +00:00
clutter-transition.h transition: Add interval convenience API 2012-04-27 12:30:47 +01:00
clutter-types.h Deprecate ClutterGeometry 2013-04-04 11:53:39 +01:00
clutter-units.c Revert "units: Handle negative values in clutter_units_from_string()" 2013-05-22 14:34:22 +01:00
clutter-units.h Move all enumerations to a separate file 2011-10-11 17:59:46 +01:00
clutter-util.c Add interpolation for matrices 2012-09-03 20:54:43 +01:00
clutter-version.h.in Add 1.18 version macros 2013-10-10 13:50:10 +01:00
clutter-zoom-action.c GestureActions: Set threshold-trigger-edge at right time 2014-02-13 18:53:24 +01:00
clutter-zoom-action.h Add zoom action 2012-08-20 18:28:22 +01:00
clutter.h Fully rework the conformance test suite 2013-12-12 18:51:11 +00:00
clutter.pc.in build: Add infrastructure for inserting Requires.private into pkg-config files 2012-01-11 12:23:46 +00:00
clutter.symbols Add missing exported symbols 2014-02-19 13:04:09 +00:00
config.h.win32.in Remove use of XFixes for showing/hiding the cursor 2013-11-14 18:34:40 +00:00
Makefile.am Make abicheck.sh output TAP 2013-12-12 18:51:11 +00:00