GNOME Bugzilla – Bug 669239
Remove override of map/unmap
Last modified: 2012-02-08 19:56:00 UTC
Clutter does not require explicit map/unmap implementations since Clutter 1.8 (the requirement was relaxed by the commit 186d5698ceb32e3b99d52390e29c5609fa3a8ae2, in October 2010). With the recent changes in Clutter, the unmap() will be called after to the dispose()/destroy() implementation, so the children mapped and unmapped unconditionally will have gone away by the time unmap() is reached, and generate a (harmless, but annoying) critical warning. Instead of guarding every call to clutter_actor_map() and clutter_actor_unmap(), we can simply get rid of those calls and let Clutter do its own thing.
Created attachment 206621 [details] [review] Remove override of map/unmap Clutter, since version 1.8, does The Right Thing™ inside the default implementation of ClutterActor::map and ClutterActor::unmap, even for non-container actors: it will iterate over the list of children and map, or unmap, each one of them, respectively. This means that the requirement to override map and unmap for composite actors to map and unmap the internal children has been dropped.
Review of attachment 206621 [details] [review]: Yes.
Comment on attachment 206621 [details] [review] Remove override of map/unmap pushed to master.
This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report.
(In reply to comment #4) > This problem has been fixed in the development version. The fix will be > available in the next major software release. Thank you for your bug report. Adding fancy comment != close bug ;)