device: Allow updating devices from embedding toolkits
authorEmmanuele Bassi <ebassi@linux.intel.com>
Wed, 17 Feb 2010 18:21:50 +0000 (18:21 +0000)
committerEmmanuele Bassi <ebassi@linux.intel.com>
Wed, 17 Feb 2010 18:21:50 +0000 (18:21 +0000)
commit51a3e49c8228a22c1fbcd42971ad27d26d83991b
treefe4d266ca9a8b46d08aa758a2976b33af43bc74f
parentb398292089b0f70b9457985426d6b962d9179fa7
device: Allow updating devices from embedding toolkits

Embedding toolkits most likely will disable the event handling, so all
the input device code will not be executed. Unfortunately, the newly
added synthetic event generation of ENTER and LEAVE event pairs depends
on having input devices.

In order to unbreak things without reintroducing the madness of the
previous code we should allow embedding toolkits to just update the
state of an InputDevice by using the data contained inside the
ClutterEvent. This strategy has two obvious reasons:

  • the embedding toolkit is creating a ClutterEvent by translating
    a toolkit-native event anyway

  • this is exactly what ClutterStage does when processing events

We are, essentially, deferring input device handling to the embedding
toolkits, just like we're deferring event handling to them.
clutter/clutter-event.h
clutter/clutter-input-device.c
clutter/clutter-input-device.h
clutter/clutter-types.h
doc/reference/clutter/clutter-sections.txt