Skip to content

Instantly share code, notes, and snippets.

@ebassi
Created February 4, 2019 12:44
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ebassi/e2e698029af1cfc9a54ffaa8157be819 to your computer and use it in GitHub Desktop.
Save ebassi/e2e698029af1cfc9a54ffaa8157be819 to your computer and use it in GitHub Desktop.
After a grab (either a clutter grab or an X grab involving windows overlapping
the stage), clutter can be confused about what actor contains the pointer.
For https://bugzilla.gnome.org/show_bug.cgi?id=630842, when we suspect that
clutter might be out of sync, we recover by posting a fake CLUTTER_MOTION
event, which as a side effect will result in clutter eventually calling
_clutter_input_device_update(). But it would be nicer to have a guaranteed way
of doing this.
At first I thought we could just make _clutter_device_manager_update_devices()
public, but that's not quite enough, because that will used cached values for,
eg, the device coordinates, rather than looking up the current ones. (However,
note that nothing is currently using _clutter_device_manager_update_devices()
anyway, so its semantics could be changed to include this step as well.)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment