mutter/clutter
Carlos Garnacho 45935fbe29 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:15:03 +01:00
..
cally Updated FSF's address 2014-01-23 12:47:12 +01:00
cex100 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
cogl Add clutter_stage_set_sync_delay() 2013-02-13 09:27:17 -05:00
egl 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
evdev 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
gdk GDK: fix build when the X11 backend is disabled 2013-04-29 08:56:21 +02: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: Check for NULL surface on pointer leave events 2013-09-09 18:19:28 +01:00
win32 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
x11 x11: Avoid invalid ClutterInputDevice pointers in the device list 2014-02-25 10:15:03 +01:00
abicheck.sh 2.0: Bump clutter-1.0 to clutter-2.0 2013-04-05 18:47:59 +01:00
clutter-action.c
clutter-action.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-actor-box.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-actor-meta-private.h ClutterActor: Add clutter_actor_has_effects 2011-09-29 19:34:24 +02:00
clutter-actor-meta.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-actor-meta.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-actor-private.h Bind constraints: Don't force redraws on source relayout 2013-11-26 12:35:07 -05:00
clutter-actor.c Don't queue redraws when reallocating actor that haven't moved 2013-11-26 12:35:33 -05:00
clutter-actor.h clutter-actor: Make clutter_actor_has_mapped_clones public 2013-07-17 12:38:07 +02:00
clutter-align-constraint.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-align-constraint.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-animatable.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-animatable.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-backend-private.h clutter-backend: Use the Cogl main loop mechanism 2012-02-09 16:34:25 +00:00
clutter-backend.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-backend.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-base-types.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-bezier.c Migrated ClutterPathNode to use ClutterPoint 2013-05-03 10:11:25 -04:00
clutter-bezier.h Migrated ClutterPathNode to use ClutterPoint 2013-05-03 10:11:25 -04:00
clutter-bin-layout.c 2.0: Remove unused arguments from doc annotations 2013-04-05 18:48:02 +01:00
clutter-bin-layout.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-bind-constraint.c Bind constraints: Don't force redraws on source relayout 2013-11-26 12:35:07 -05:00
clutter-bind-constraint.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-binding-pool.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-binding-pool.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-blur-effect.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-blur-effect.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-box-layout.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-box-layout.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-brightness-contrast-effect.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-brightness-contrast-effect.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-cairo.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-cairo.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-canvas.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-canvas.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-child-meta.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-child-meta.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-click-action.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-click-action.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-clone.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-clone.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +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 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-color.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-colorize-effect.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-colorize-effect.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01: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 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-container.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-container.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-content-private.h content: Make get_preferred_size() public 2012-03-16 12:33:37 +00:00
clutter-content.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-content.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-debug.h debug: Simple whitespace cleanups 2011-11-18 17:54:19 +00:00
clutter-deform-effect.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-deform-effect.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-deprecated.h 2.0: Remove deprecated symbols from the installed headers 2013-04-05 18:48:01 +01:00
clutter-desaturate-effect.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-desaturate-effect.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-device-manager-private.h input-device: don't reset a device's stage until all touch points are gone 2012-09-03 21:50:24 +01:00
clutter-device-manager.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-device-manager.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-drag-action.c ClutterDragAction: do not dereference a NULL priv->stage 2013-04-30 17:44:51 +01:00
clutter-drag-action.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-drop-action.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-drop-action.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +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 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-effect.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-enum-types.c.in
clutter-enum-types.h.in
clutter-enums.h 2.0: Remove unused enumerations 2013-04-05 18:48:03 +01:00
clutter-event-private.h x11: Add support for touch events 2012-03-19 14:29:24 +00: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 ClutterEvent: Mention _get_source_device() in docs 2013-10-08 14:59:13 +02:00
clutter-event.h ClutterEvent: Mention _get_source_device() in docs 2013-10-08 14:59:13 +02:00
clutter-feature.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-feature.h Move all enumerations to a separate file 2011-10-11 17:59:46 +01:00
clutter-fixed-layout.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-fixed-layout.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
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 flow-layout: Add :snap-to-grid property 2013-05-11 11:04:40 -04:00
clutter-flow-layout.h flow-layout: Add :snap-to-grid property 2013-05-11 11:04:40 -04:00
clutter-gesture-action-private.h gesture-action: fix typo 2013-04-23 17:33:20 +01:00
clutter-gesture-action.c gesture-action: refactor event handling function 2013-04-23 17:34:39 +01:00
clutter-gesture-action.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-grid-layout.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-grid-layout.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01: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 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-image.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-input-device.c input-device: Guard against double free 2013-12-02 00:29:47 +01:00
clutter-input-device.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-interval.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-interval.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-keyframe-transition.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-keyframe-transition.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-keysyms-table.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-keysyms-update.pl 2.0: Remove compatibility header from keysyms update script 2013-04-05 18:48:02 +01:00
clutter-keysyms.h Update keysyms headers 2012-06-11 13:47:29 +01:00
clutter-layout-manager.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-layout-manager.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-layout-meta.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-layout-meta.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-list-model.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-list-model.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-macros.h 2.0: Fix up the versioning macros 2013-04-05 18:48:03 +01:00
clutter-main.c 2.0: Remove deprecated symbols from the tree 2013-04-05 18:48:03 +01:00
clutter-main.h 2.0: Remove deprecated symbols from the tree 2013-04-05 18:48:03 +01:00
clutter-marshal.list swipe-action: Introduce new ::swipe signal 2012-12-18 01:27:32 +00:00
clutter-master-clock.c 2.0: Remove deprecated symbols from the tree 2013-04-05 18:48:03 +01: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 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-model.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +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 clutter-offscreen-effect: Allocate the cogl texture directly 2013-06-25 20:28:39 +02:00
clutter-offscreen-effect.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-page-turn-effect.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-page-turn-effect.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-paint-node-private.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-paint-node.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-paint-node.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-paint-nodes.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-paint-nodes.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01: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 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-pan-action.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-pan-action.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-path-constraint.c Migrated ClutterPathNode to use ClutterPoint 2013-05-03 10:11:25 -04:00
clutter-path-constraint.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-path.c Removed unused ClutterKnot 2013-05-03 10:16:25 -04:00
clutter-path.h Migrated ClutterPathNode to use ClutterPoint 2013-05-03 10:11:25 -04:00
clutter-private.h 2.0: Remove deprecated symbols from the tree 2013-04-05 18:48:03 +01: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 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-property-transition.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-rotate-action.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-rotate-action.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-script-parser.c Removed unused ClutterKnot 2013-05-03 10:16:25 -04:00
clutter-script-private.h Removed unused ClutterKnot 2013-05-03 10:16:25 -04:00
clutter-script.c 2.0: Remove deprecated symbols from the tree 2013-04-05 18:48:03 +01:00
clutter-script.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-scriptable.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-scriptable.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-scroll-actor.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-scroll-actor.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +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 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-settings.h Appease the gods in introspection 2011-01-20 16:35:26 +00:00
clutter-shader-effect.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-shader-effect.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-shader-types.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-shader-types.h 2.0: Fix up documentation annotations 2013-04-05 18:48:04 +01:00
clutter-snap-constraint.c Bind constraints: Don't force redraws on source relayout 2013-11-26 12:35:07 -05:00
clutter-snap-constraint.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-stage-manager-private.h Add copyright notices 2010-10-21 13:13:00 +01:00
clutter-stage-manager.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-stage-manager.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-stage-private.h Add clutter_stage_set_sync_delay() 2013-02-13 09:27:17 -05:00
clutter-stage-window.c Add clutter_stage_set_sync_delay() 2013-02-13 09:27:17 -05:00
clutter-stage-window.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-stage.c stage: implement touch event throttling 2013-10-09 21:58:16 +01:00
clutter-stage.h 2.0: Remove deprecated symbols from the tree 2013-04-05 18:48:03 +01:00
clutter-swipe-action.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-swipe-action.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-table-layout.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-table-layout.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-tap-action.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-tap-action.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-text-buffer.c Updated FSF's address 2014-01-23 12:47:12 +01:00
clutter-text-buffer.h Updated FSF's address 2014-01-23 12:47:12 +01:00
clutter-text.c text: relayout on cursor visibility change 2013-06-20 10:04:25 -07:00
clutter-text.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-timeline.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-timeline.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-transition-group.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-transition-group.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-transition.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-transition.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter-types.h Removed unused ClutterKnot 2013-05-03 10:16:25 -04:00
clutter-units.c 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-units.h 2.0: Remove all Since: annotations 2013-04-05 18:48:01 +01:00
clutter-util.c 2.0: Fix up documentation annotations 2013-04-05 18:48:04 +01:00
clutter-version.h.in 2.0: Fix up the versioning macros 2013-04-05 18:48:03 +01:00
clutter-zoom-action.c zoom-action: improve zooming behavior 2013-04-23 17:34:39 +01:00
clutter-zoom-action.h 2.0: Remove CLUTTER_AVAILABLE_IN_1_* 2013-04-05 18:48:02 +01:00
clutter.h 2.0: Remove deprecated symbols from the tree 2013-04-05 18:48:03 +01:00
clutter.pc.in 2.0: Remove backward compat variables from the pkgconfig file 2013-04-05 18:48:02 +01:00
clutter.symbols wayland: Add foreign surface support to stage 2013-07-23 18:27:52 +01:00
config.h.win32.in build: Move config.h under clutter/ 2012-07-30 10:54:18 +01:00
Makefile.am 2.0: Remove deprecated headers from the build 2013-04-05 18:48:00 +01:00