1 Clutter 1.9.8 2012-01-24
2 ===============================================================================
4 • List of changes since Clutter 1.9.6
6 - Fix regressions in users of deprecated API
7 Also, allow to mix the new Actor API with the old Container API without
10 - Add GResource support in ClutterScript
11 GResource is a new infrastructure in GIO that allows to compile resources
12 like UI builder files and image data into a shared library or an
13 executable. A newly added method to ClutterScript makes it possible to
14 load a UI definition from a resource, like it's done for files and
17 - Update the Wayland client backend
18 The SHM transport API has changed upstream, and the Clutter backend has
19 been updated to reflect it.
23 Rob Bradford, Fran Diéguez
25 Clutter 1.9.6 2012-01-19
26 ===============================================================================
28 • List of changes since Clutter 1.9.4
30 - Deprecate clutter_actor_show_all() and clutter_actor_hide_all()
31 The latter never did make a lot of sense: hiding the parent will
32 effectively hide the children as well; the former was there only for
33 convenience, but Actors are visible by default.
35 - Gracefully handle existing code
36 The changes in ClutterActor introduced regressions in existing code
37 because of the new functionaly that was introduced to replace deprecated
38 classes like Box and Group. These regressions have hopefully been fixed;
39 Clutter 1.9.6 has been tested with a project as complex as the GNOME
42 - Fix build with binutils-gold
43 The private dependencies were not used when building Clutter, and this
44 made the Gold linker angry.
46 - Allow tracking of an actor's first and last child
47 ClutterActor has two new properties, :first-child and :last-child; these
48 are read-only properties that can be used by toolkits based on Clutter
49 to track the first and last child whenever they change.
51 - Bump the Cogl dependency
52 The 1.9.4 release depended on Cogl ≥ 1.9.4, but the minimum required
53 version was not bumped along with the changes.
55 • List of bugs fixed since Clutter 1.9.4
58 #668137 - FTBFS: pangoft2 check seems to be broken
60 Clutter 1.9.4 2012-01-17
61 ===============================================================================
63 • List of changes since Clutter 1.9.2
65 - New scene graph API in ClutterActor
66 ClutterActor now provides the API for adding, removing, and iterating
67 over the list of children; this deprecates most of the ClutterContainer
68 API. ClutterActor implements ClutterContainer as well, which means that
69 all actors can be containers.
71 - Layout management updates
72 ClutterActor now have an horizontal and vertical alignment properties
73 that will be used when added to a parent; a margin has also been added
74 to the ClutterActor class. Both margin and alignment will be automatically
75 managed during the allocation, so they will work out of the box. It is
76 also possible to set a ClutterLayoutManager delegate object on any
77 ClutterActor instance: the LayoutManager will take care of the layout
78 policy for the children of an actor.
80 - Add ClutterTextBuffer
81 The ClutterTextBuffer class provides a storage for the contents of
82 a ClutterText actor; the same instance can be shared across different
83 actors as well. The main use for ClutterTextBuffer is implementing
84 secure memory storage for the contents of a ClutterText in password
88 ClutterGroup, ClutterBox, and ClutterRectangle have been deprecated; their
89 functionality is now available directly in ClutterActor. The old child
90 actor management API in ClutterActor and ClutterContainer has been
91 deprecated as well. Other deprecations include the ClutterStage
92 fog-related properties and API; the ClutterContainer.sort_depth_order(),
93 raise(), and lower() virtual functions; the internal child push and
94 pop methods on ClutterActor.
96 - ClutterTimeline can parse markers from ClutterScript
97 Markers can now be defined inside ClutterScript, and a ClutterTimeline
98 will be able to automatically add them from a UI definition.
100 - Add a diagnostic mode
101 Similar to the GLib diagnostic mode, Clutter now supports an environment
102 variable that will print out diagnostic messages for deprecations and
103 warnings that can only be detected at run-time.
105 - Wayland backend updates
106 The wayland backend now tracks the latest API changes in the client API,
107 and Clutter now provides a Wayland surface actor that allows to write
108 Wayland compositors, similarly to the X11TexturePixmap actor for the
111 • List of bugs fixed since Clutter 1.9.2
114 #665040 - The offscreen effect always recreates the texture if
115 create_texture() is overridden to change the size
116 #665052 - The internal effects should queue a repaint on the effect not
117 on the actor when a property changes
118 #664996 - clutter_state_set_key (allow-none)
119 #664336 - path: Fix introspection annotations
120 #664252 - in case GLSL shader fails to compile clutter-shader-effect.c
121 should print out position in source code
122 #664582 - lookingGlass: Fix global key press handler
123 #660997 - Make _clutter_actor_queue_redraw_with_clip or an equivalent
128 Chun-wei Fan, Robert Bragg, Rob Bradford, Neil Roberts, Bastian Winkler,
129 Fran Diéguez, Jasper St. Pierre, Matej Urbančič, Piotr Drąg,
130 Alexander Shopov, Bastien Nocera, Daniel Mustieles, Jeremy Moles,
131 Jovan Naumovski, Kjartan Maraas, Lucian Adrian Grijincu, Manuel Osdoba,
134 Clutter 1.9.2 2011-11-22
135 ===============================================================================
137 • List of changes since Clutter 1.8
139 - Multi-backend build, and run-time backend selection
140 Clutter can be built with support for multiple backends in the same
141 shared library; the backend singleton is determined at run-time,
142 either with the default backend for the platform, or using the value
143 of the CLUTTER_BACKEND environment variable.
145 - GDK windowing system backend
146 A new backend has been added, which uses the GDK API for creating the
147 drawing surface, as well as receiving the windowing system and input
150 - Show a hint when ClutterText is in password mode
151 If the password-hint-time ClutterSettings property is set to a non
152 zero value, the last character entered inside a ClutterText actor when
153 in password mode will be shown in plain for the duration of the timeout,
154 before being replaced by the glyph chosen as the password character.
156 - Improve Windows build support
157 Clutter now provides project files to build the library using Visual
158 Studio 9 and Visual Studio 10. Also, the scripts to build Clutter using
159 MinGW have been improved.
161 - Remove the requirement for using clutter_threads_init()
162 Threads are initialized by default (depending on the platform), so there
163 is no need to call clutter_threads_init().
165 - Deprecate the default ClutterStage
166 The semantics of the default Stage were not obvious, and had the tendency
169 - Move the deprecated headers into their own directory
170 This should help developers identify the deprecated API.
172 - Change deprecation policy
173 Deprecated functions are now marked using compiler annotations, instead
174 of being forcibly disabled through pre-processor directives from the
175 headers. Deprecations will cause compiler warnings, and thus are enabled
176 by default. If you're building your project with compiler flags that
177 consider every warning a fatal error, you can use the symbol
178 CLUTTER_DISABLE_DEPRECATION_WARNINGS to disable the deprecation warnings.
180 - Translation updates
181 Portuguese, Assamese, Punjabi, Tamil, Oriya, Telugu, French, German,
182 Danish, Traditional Chinese (Hong Kong and Taiwan), Catalan, Esperanto,
183 Lithuanian, Galician, Norwegian bokmål, Slovenian, Hebrew, Bulgarian.
185 • List of bugs fixed since Clutter 1.8
187 652588 - add support for password hint in ClutterText
188 659625 - mingw32: Update the build script to compile 1.8.0
189 659601 - offscreen effects on children of containers also with an
190 offscreen effect get a wrong viewport
191 659928 - Two strings are not marked as translatable
192 659893 - clutter-main: Reword translator comment for default:LTR
193 656663 - Remove internal usage of ClutterGeometry in StageWindow
194 660354 - Add paint-deform-tiles option to CLUTTER_DEBUG
195 660471 - ClutterActor: Add clutter_actor_has_effects
196 660512 - ClutterShaderEffect recompiles the shader for every instance
197 660623 - clutter-actor-meta: Fix _clutter_meta_group_has_metas_no_internal
198 660985 - memory leak in clutter_box_layout.c
199 661015 - Add clutter_unicode_to_keyval function
200 660786 - Deprecate clutter_[sg]et_font_flags()
201 661887 - auto-resize of ClutterCairoTexture does not work correctly
202 657434 - Add a GDK backend to Clutter
203 663332 - orca reads my password in gnome-shell policykit dialogs
204 663594 - Minor whitespace parsing bug in clutter_color_from_string
205 663733 - clutter-stage-x11: Make sure to set geometry x and y
206 651718 - Make tests work on platforms supporting only a single stage
207 663999 - The removal of per-backend CLUTTER_VBLANK envvar had unwanted
208 cruft in the Win32 backend
209 663720 - DeformEffect: Avoid redrawing actors on vertices invalidation
210 663636 - Use newer Cogl API in ClutterDeformEffect
214 Chun-wei Fan, for building, testing, and keeping up to date the Visual
215 Studio project files.
219 Neil Roberts, Rico Tzschichholz, Robert Bragg, Adel Gadllah,
220 Lionel Landwerlin, Alexandre Franke, Colin Walters, Daniel Mustieles,
221 Giovanni Campagna, Piotr Drąg, krishnababu k, A S Alam, Alexander Shopov,
222 Algimantas Margevičius, Ask H. Larsen, Bruno Brouard, Carles Ferrando,
223 Chao-Hsiung Liao, Craig R. Hughes, Damien Lespiau, Duarte Loreto,
224 Florian Müllner, Fran Dieguez, Fran Diéguez, Håkon Løvdal, I Felix,
225 Jasper St. Pierre, Jorge González, Joseph Scheuhammer, Kjartan Maraas,
226 Kristjan SCHMIDT, Manoj Kumar Giri, Marc-André Lureau, Mario Blättermann,
227 Matej Urbančič, Matthias Clasen, Nilamdyuti Goswami, Sunjin Yang,
228 Tomeu Vizoso, Yaron Shahrabani, Zan Dobersek, Мирослав Николић.
230 Clutter 1.7.90 2011-09-12
231 ===============================================================================
233 • List of changes since Clutter 1.7.14
235 - Make sure that setting :use-markup does not depend on the order
236 Setting the :use-markup property should yield the same results regardless
237 of whether the :text property is also set before or after. This applies to
238 ClutterText defined using ClutterScript as well.
240 - Protect against multiple unrealize call on ClutterStage
241 This should fix a segmentation fault in clutter-gtk when unrealize() is
242 called multiple times on an already unrealized stage.
244 - Fortify ATK event listener
245 Make sure that we subscribe only to the events we want to, and avoid
246 warnings caused by AT-SPI, as well as a leak.
248 - Documentation fixes
250 - Translation updates
251 Indonesian, British English, Brazilian Portuguese, Oriya, Polish,
252 Latvian, Hindi, Danish, Chinese (Simplified), Lithuanian, Turkish,
253 Russian, Spanish, Asturian.
255 • List of bugs fixed since Clutter 1.7.14
259 #651940 - "use-markup" is ignored when set after "text"
260 #658721 - cally: Fix up event listener registration minimally
262 [bugzilla.clutter-project.org]
264 #2629 - ClutterText thinks priv->text can be NULL, but it can't
268 Muhammet Kara, Andika Triwidada, Manoj Kumar Giri, Piotr Drąg,
269 Aurimas Černius, Bruce Cowan, Edvaldo de Souza Cruz, Jorge González,
270 Kenneth Nielsen, Matthias Clasen, Neil Roberts, Og B. Maciel,
271 Rajesh Ranjan, Ray Wang, Rudolfs Mazurs, Xandru Armesto, Yuri Myasoedov
273 Clutter 1.7.14 2011-09-05
274 ===============================================================================
276 • List of changes since Clutter 1.7.12
278 - Use newer version of ATK
279 Cally now depends on the latest version of ATK, to reduce the amount of
280 ad hoc code needed and to use newer features that simplify the
281 implementation of accessible objects in Clutter.
283 - Allow using Layout Managers with generic containers
284 Layout managers should not assume that they are allocating the whole
285 area available from the Actor using them; this allows actors that
286 support concepts like padding or margin to use a LayoutManager internally
290 Add a recipe on how to bind a ClutterState to the signals of objects
291 defined in ClutterScript. We also install the cookbook examples inside
292 the $datadir/clutter-1.0/cookbook/examples directory.
294 - Improve examples in the API reference
295 Some of the interactive test suite units are actually good examples of
296 how to use the Clutter API; we can use the XInclude tags to include the
297 source code inside the API reference.
299 - Ensure thread safety of the repaint functions add/removal
300 Fix a long standing issue where adding or removing repaint functions
301 was not acquiring a lock; now it's safe to manipulate the repaint
302 functions list from different threads.
304 - Make the ClutterText:line-wrap property work again
305 In 1.2 the :line-wrap property was broken, and ClutterText would paint
306 a PangoLayout wrapping until it fit the height of the allocation
307 regardless of whether the :line-wrap property was set to FALSE or
308 TRUE. Now we clip the PangoLayout before rendering it, if the :line-wrap
309 property is set to FALSE and there is no ellipsization policy set.
311 - Disable redirection to offscreen buffer by default
312 Whenever a ClutterActor with children was not fully opaque, the actor
313 was redirected to an FBO, to perform correct opacity computations.
314 Sadly, this can lead to 3x slowdowns, given the amount of framebuffer
315 objects created and the state changes that have to be performed. We
316 decided to turn off this feature by default, to avoid the performance
317 hit. It is still possible to enable this feature on a per-actor basis,
318 though, and will work to reduce the hit in future versions of Cogl,
319 Clutter and the drivers.
321 • List of bugs fixed since Clutter 1.7.12
325 #657681 - Crash when destroying an actor while dragging it
327 [bugzilla.clutter-project.org]
329 #2339 - ClutterText in 1.4 line-wraps even if line-wrap is disabled
333 Alejandro Piñeiro, Shankar Prasad, Chao-Hsiung Liao, Dan Winship,
334 Daniel Mustieles, Daniel Nylander, Fran Dieguez, Marek Černocký,
337 Clutter 1.7.12 2011-08-29
338 ===============================================================================
340 • List of changes since Clutter 1.7.10
342 - Reload the font caches on X11 when the user installs a new font
343 Whenever the user installs a new font inside one of the directories that
344 ware being watched by a session daemon, or changes the fontconfig
345 configuration, the toolkits using FontConfig (either directly or indirectly
346 e.g. through Pango, like Clutter) should listen to the Fontconfig/Timestamp
347 XSETTINGS key and release all the font configuration caches. This allows
348 selecting the newly installed fonts without requiring the user to restart
351 - Allow using "font-description" as a ClutterScript alias for "font-name"
352 ClutterText:font-description allows passing a PangoFontDescription
353 directly to a ClutterText; when defining a ClutterText instance inside a
354 ClutterScript file, :font-description should be an alias for :font-name,
355 which takes a string and converts it to a PangoFontDescription.
357 - Make sure that LayoutManager subclasses take the allocation origin
358 into account when allocating the children
359 A LayoutManager should be resilient against allocations with an origin
360 not positioned at (0, 0); this allows actors using a layout manager
361 instance to munge the box and implement things like margin and padding
362 without the layout manager having knowledge of those concepts.
365 Always link against libm when building Clutter (and its tests); don't
366 rely on libraries lower on the stack to do so.
368 - Documentation fixes
370 • List of bugs fixed since Clutter 1.7.10
374 #657529 - Build failure
378 Robert Bragg, Daniel Mustieles, Fran Dieguez, Kjartan Maraas
380 Clutter 1.7.10 2011-08-15
381 ===============================================================================
383 • List of changes since Clutter 1.7.8
385 - Do not update the last paint volume when picking
386 Last minute fix for an issue that was most prominently manifesting itself
387 when using GNOME Shell with Clutter 1.7; this should resolve the issue
388 that dragging icons from the dash left around some stale pixels.
390 - Fix building the tests
391 The performance and micro-benchmark tests did not pick up changes in
392 local dependencies, e.g. under a JHBuild root.
394 • List of bugs fixed since Clutter 1.7.8
398 #656588 - Outdated FSF Address in code files
402 Alejandro Piñeiro, Robert Bragg
404 Clutter 1.7.8 2011-08-15
405 ===============================================================================
407 • List of changes since Clutter 1.7.6
409 - Various fixes in Cally
410 Make sure to use Clutter's API and remove old workarounds that were put
411 into place when Cally was a separate project and targeting pre-1.0 API
414 - Add ClutterCairoTexture:auto-resize
415 This property makes it easier to create 2D canvas surfaces by tracking
416 the actor's allocation in a backward compatible way.
418 - Add ClutterAnimatable.interpolate_value()
419 This new virtual function deprecates the animate_property() virtual of the
420 Animatable interface, which was sub-optimal in different ways.
422 - Allow using Animatable implementations with ClutterState
423 Thanks to the new interpolate_value() virtual it is now possible to use
424 the Animatable interface with ClutterState; this allows animating
425 action, constraint and effect properties using the same "@" syntax also
426 used by ClutterAnimation and clutter_actor_animate().
428 - Improve ClutterModel's implementation
429 Avoid a bunch of needless checks, and make sure that the ::row-changed
430 signal is emitted in all cases when a row has been changed through the
431 ClutterModelIter API. The conformance test unit for ClutterModel has
432 also been improved to avoid future regressions.
434 - Improve ClutterStage behaviour on OS X
435 Make sure that the fullscreen, multi-screen and key focusing are
436 well-behaved on OS X, by implementing the correct delegate methods.
438 • List of bugs fixed since Clutter 1.7.6
442 #655387 - Missing GObject introspection annotations
443 #655306 - Added windowDidChangeScreen delegate to fix pick errors when
444 window moved to different screen
445 #655311 - Prevent hiding of unrelated application windows when stage returns
447 #655307 - Fix resource leak on subsequent calls to clutter_stage_osx_realize
448 #648633 - gnome-shell notification pop-ups do not emit
449 object:state-changed:showing
453 Kirk A. Baker, Neil Roberts, Alejandro Piñeiro, Alejo Pacin,
454 Daniel Mustieles, Evan Nemerson, Marek Černocký, Philippe Normand,
458 Clutter 1.7.6 2011-07-26
459 ===============================================================================
461 • List of changes since Clutter 1.7.4
463 - Accessibility fixes in Cally
464 Fix the implementation of the AtkText interface for ClutterText.
466 - Depend on the new Cogl windowing system API.
468 - Add functions for retrieving the clip boundaries on the Stage
469 The clutter_stage_get_redraw_clip_bounds() function is useful for
470 window managers (like Mutter) that need to retrieve the clipped
471 region used on the Stage.
473 - Auto-detect the default flavour when building
474 The default flavour used when building should be set depending
477 - Mark the OSX backend as non-experimental
478 The OSX backend is being developed, and maintained, so it should
479 not be considered experimental.
481 - Make sure that Gestures are cancelled when missing release events
483 - Correct the rounding for paint volumes
484 Try to provide stable results against potential floating point rounding
485 margins when projecting 3D paint volumes into screen bounding boxes;
486 this should avoid re-creating FBOs and always correctly handle clipped
489 - Do not clobber XI2 events data
490 This allows to play along with other toolkits using XI2.
492 - Fix ClutterSnapConstraint's right edge snapping
495 ClutterScore, clutter_texture_new_from_actor(),
496 clutter_cairo_texture_create*()
498 • List of bugs fixed since Clutter 1.7.4
502 #653959 - clutter-actor: Don't apply shaders during picking
503 #654361 - uprof: Rename timers to remove the EGL specific bits
504 #654363 - uprof: Add the units in the name of the "Per Frame"
507 #654656 - Improve XGenericEventCookie allocation wrt other toolkits
508 #654024 - snap-constraint: Fix allocation for CLUTTER_SNAP_EDGE_RIGHT
509 #654066 - ClutterTimeline new-frame signal not working correctly on
511 #654718 - clutter-1.6.16 compile issues
512 #654726 - text: Fix the default value of "editable"
513 #654727 - alpha: Don't use the GClosure to compute the alpha when
515 #655342 - memory leak in clutter_bin_layout_get_preferred_width/height
517 [bugzilla.clutter-project.org]
519 #1733 - AtkText implementation on CallyText is not complete
520 #2421 - Way to get current repaint bounds
524 Robert Bragg, Philippe Normand, Neil Roberts, Damien Lespiau, Tomeu Vizoso,
525 Gil Forcada, Alejandro Piñeiro, Bastian Winkler, Carlos Garnacho,
526 Christian Kirbach, Daniel Mustieles, Dinh Bowman, Kjartan Maraas,
527 Marek Černocký, Mario Blättermann, Matej Urbančič, Piotr Drąg
529 Clutter 1.7.4 2011-07-04
530 ===============================================================================
532 • List of changes since Clutter 1.7.2
534 - Unify the GLX and EGL backends to be a single code base
535 The GLX and EGL backends shared most of their code, and with the split
536 out Cogl, we can unify the code base into a single backend. The API as
537 well as the ABI are preserved.
539 - Restore a wider range of Z values for actors
540 The computation for the near and far planes given the perspective
541 transformation used to set up the viewport was broken in 1.7.2, and
542 the distance from the focal point was greatly reduced. This has now
545 - Bump up the dependency of Cogl
546 New windowing system API in Cogl required bumping the minimum version
547 to the latest development snapshot, 1.7.2.
549 - Add ClutterDropAction
550 The ClutterDropAction is an action for allowing ClutterActors to react
551 when an actor being dragged through ClutterDragAction crosses, or is
554 - Add a performance test suite
555 This suite is an addition to our conformance and interactive test
556 suites; the infrastructure can be used by buildbots and report tools
557 to track performance regressions across various commits.
559 - Documentation and annotation fixes
563 • List of bug fixes since Clutter 1.7.2
567 #650329 - ClutterModifierType: Port fix from GDK to clutter's GDK copy
568 #652566 - Clutter-CRITICAL **: _clutter_stage_get_window: assertion
569 `CLUTTER_IS_STAGE (stage)' failed
570 #651784 - transition=spin / transition=spin-text is broken in pinpoint
572 #652842 - Add a Drop action
573 #653066 - ClutterDragAction does not support multiple pointers
574 #653307 - Change the signature of ClutterTexture::load-finished to give
575 a GError, instead of a gpointer
576 #653607 - Arrays not annotated as such for introspection bindings
577 #651079 - ClutterText "blinks" when deleting text after going out of
579 #650675 - clutter-media: mention the asynchronous behavior of
582 [buzgilla.clutter-project.org]
584 #2625 - The furthest visible z value is really low
588 Robert Bragg, Neil Roberts, Peter Ward, Colin Walters, Daniel Mustieles,
589 Jasper St. Pierre, Samuel Degrande, Øyvind Kolås
591 Clutter 1.7.2 2011-06-13
592 ===============================================================================
594 • List of changes since Clutter 1.6.0
596 - Cogl moved out of tree
597 The Clutter OpenGL abstraction library has been moved to a separate
598 repository and can be used as a stand-alone shared library. Clutter
599 has been modified to depend on Cogl's experimental API.
601 - Correctly composite non fully opaque children
602 Non fully opauqe actors with non fully opaque children will automatically
603 redirect children paint operations to offscreen buffers, which allow
604 correct composition taking into account the overall opacity of the scene's
605 sub-graph. The same mechanism can be used to create a paint cache, and
606 paint that cache when the actor or its children do not change, instead of
607 painting the whole sub-graph again.
609 - Allow connecting signals to ClutterState states in ClutterScript
610 When defining a scene using ClutterScript it's possible to directly
611 connect a state inside a ClutterState object (both defined in
612 ClutterScript or in code) to an object's signal, without using an
613 explicit signal handler in the code.
615 - Long-press handling in ClutterClickAction
616 ClutterClickAction will detect a long-press gesture and emit signals
617 to query, activation and cancellation.
619 - Added ClutterGestureAction and ClutterSwipeAction
620 ClutterGestureAction is a generic "pointer gesture" action; it doesn't
621 provide an implementation: it's up to the developer to add the gesture
622 recognition code. ClutterSwipeAction is a GestureAction sub-class that
623 implement the "swipe" gesture. The GestureAction API is already future
624 proof for multi-device/multi-touch, even though the multi-touch isn't
625 currently implemented.
627 - Allow Effects to influence picking
628 Effects that change the geometry of a ClutterActor should also be
629 allowed to change the picking code to make sure that event handling
630 keeps working. ClutterEffect has a new pick() virtual function for
633 • List of bugs fixes since Clutter 1.6.0
635 [bugzilla.clutter-project.org]
636 #2257 - clutter fails to link on OS X (10.6)
637 #2447 - atkevents example crashes is the accessibility is disabled
638 #2482 - Cally should avoid to provide a default name and description
639 #2484 - It would be nice to have the old cally Changelog
640 #2553 - new ClutterText API to access the Pango layout offsets
641 #2555 - Per-framebuffer journal causes corruptions
642 #2562 - Crash upon running Clutter-based programs
643 #2585 - add ClutterAction for slide gestures
644 #2588 - Assertion failure in _cogl_pipeline_set_layer_texture_target
645 #2595 - clutter-text: Add a selected-text-color
646 #2597 - CallyStage doesn't have a proper parent
647 #2599 - The paint volume for ClutterText is wrong
648 #2602 - Expose events ignored when doing clipped redraws
649 #2610 - Add recipe about implementing a ClutterEffect
650 #2619 - Removes the addition of the .exe extension to unit-test scripts,
652 #2620 - _cogl_offscreen_new_to_texture_full() leaks reference when failing
653 #2621 - Clutter segfaults if you queue a redraw of an unmapped actor inside
654 the notify::mapped callback
655 #2631 - [PATCH] Enable evdev ClutterInputDevice objects on creation, as the
657 #2632 - [PATCH] GL_IMG_TEXTURE_NPOT enables non-power-of-two features
658 #2633 - Make the pick id pool a per-Stage resource
659 #2640 - [patch] allow single-bit imprecision in some conformance tests
660 #2644 - Quartz backend: "Bare" modifier keypresses not generating events
661 #2652 - clutter_actor_queue_redraw() on destroyed stage
662 #2655 - segfault when disposing a slave device without a master
663 #2656 - Clutter can crash when destroying a stage from an event
664 #2667 - git head won't build under Win32
667 #650665 - CallyActor shouldn't add by default "press", "release"
669 #647875 - Use Cairo to dump the pick buffers
670 #647876 - Make the pick if pool a per-Stage resource
671 #650487 - Sync allocation in ClutterBoxLayout with the one in GtkBox
672 #650597 - clutter-id-pool: fix warning on bad pick
673 #650650 - clutter-offscreen-effect: use target size when setting up
675 #651700 - Give a chance to effects for running when picking
676 #652129 - Use "const" instead of G_CONST_RETURN
680 Neil Roberts, Robert Bragg, nobled, Daniel Mustieles, Elliot Smith,
681 Matej Urbančič, Alejandro Piñeiro, Chris Lord, Marek Černocký,
682 Tomeu Vizoso, Jasper St. Pierre, James Athey, Piotr Drąg, Øyvind Kolås,
683 Adam Jackson, Andrej Žnidaršič, Kjartan Maraas, Adel Gadllah,
684 Alexandre Franke, Christian Kirbach, Craig R. Hughes, Dan Winship,
685 Dioselin, Kristjan SCHMIDT, Mario Blättermann, Miguel Bouzada, Peter Ward,
686 Philippe Normand, Samuel Degrande, Viatcheslav Gachkaylo
688 Clutter 1.6.6 2011-02-21
689 ===============================================================================
691 • List of changes since Clutter 1.6.4
693 » Add four mechanisms for migrating textures inside a Cogl atlas; it
694 is possible to change the default by using the environment variable
695 COGL_ATLAS_DEFAULT_BLIT_MODE.
697 » Use the offscreen buffer size to compute the vertices of
700 » Make the FPS counter displayed using CLUTTER_SHOW_FPS per-stage.
702 » Documentation fixes.
704 » Annotation fixes for introspection.
706 • List of bugs fixes since Clutter 1.6.4
708 #2538 - crash in gnome-shell
709 #2558 - backend-glx: Remove redundant glFlush()
710 #2561 - Updates to COGL sources regarding non-standard code usage
711 #2571 - DeformEffect should use the FBO size
717 Clutter 1.6.4 2011-02-14
718 ===============================================================================
720 • List of changes since Clutter 1.6.2
722 » Fix handling of opacity in ClutterOffscreenEffect.
724 » Fix partially off-stage actors in ClutterOffscreenEffect.
726 » Add a recipe in the Cookbook for animating an actor on a path.
728 » Refresh key mapping when notified by X11.
730 » Clean up the ClutterStageWindow redraw implementations.
732 » Update the Wayland backend to match upstream API changes:
733 • allow using shared buffers if DRM fails;
734 • improve checks for the required extensions.
736 » Documentation fixes.
738 » Introspection annotations fixes.
740 » Fix setting the matrix for a pipeline layer.
742 » Fix flushing the framebuffer when switching to it.
744 » Make sure to call glFlush when blitting a stage region to the
745 front buffer, to avoid the driver batching the command for an
746 undefined amount of time.
748 » Fix the windowing system defines for non-X11 platforms.
750 » Fix the location of the shared objects in the Cally pkg-config
753 • List of bugs fixed since Clutter 1.6.2
755 #1024 - test-multistage.c assertion failure
756 #1025 - test-paint-wrapper.c assertion failure
757 #1028 - test-random-text.c hangs with spinning beach ball
758 #1029 - test-cogl-primitives.c hangs with spinning beach ball
759 #1358 - scroll events not handled
760 #2373 - OSX Backend fix
761 #2525 - [PATCH] x11: Handle key map changes
762 #2541 - ClutterOffscreenEffect with multiply the actor's opacity
763 #2546 - [PATCH, git branch] update wayland backend
764 #2549 - Fix lib locations in *.pc.in
765 #2550 - offscreen effects are always clipped to stage boundaries
766 #2551 - Slight drawing lag with larger windows on Intel x3100 (i965)
767 #2554 - Add recipe per animating an actor on a curved path
768 #2555 - Per-framebuffer journal causes corruptions
769 #2558 - backend-glx: Remove redundant glFlush()
770 #2559 - x11: segfault on closing non-default stage window
774 nobled, Chris Lord, Neil Roberts, Robert Bragg, Adel Gadllah, Elliot Smith
776 Clutter 1.6.2 2011-02-07
777 ===============================================================================
779 • List of changes since Clutter 1.6.0
781 » Fix building the Clutter Cookbook from the released tarballs.
783 » Set the input device field in ClutterEvent even when they
784 have been allocated by Clutter.
786 » Fix the color comparison when setting the layer combine constant.
788 » Fix memory corruption when removing the last reference on a
789 Cogl vertex buffer object.
791 » Fixes for the OSX backend.
793 • List of bugs fixed since Clutter 1.6.0
795 #2540 - coobook examples do not build from tarball
796 #2544 - Using vertex buffers causes memory corruption when you unref
798 #2545 - Broken event handling in OS X backend
799 #2549 - Fix lib locations in *.pc.in
803 Neil Roberts, Viatcheslav Gachkaylo
805 Clutter 1.6.0 2011-01-31
806 ===============================================================================
808 • List of changes since Clutter 1.5.14
810 » Remove more private symbols from the X11 backend.
812 » Add CLUTTER_BIND_POSITION and CLUTTER_BIND_SIZE values to the
813 ClutterBindCoordinate enumeration; these are short-hand values
814 for binding both X and Y, or width and height, instead of
815 requiring two ClutterBindConstraint instances.
817 » Clean up in the X11 backend to reduce indirection.
819 » Small clean ups in the Win32 backend.
821 » Make Shift+Backspace behave like Backspace in ClutterText.
823 » Emit the ::new-frame signal even on the first frame of
824 ClutterTimeline, to allow setting up the initial state of an
827 » Fix an invalid memory access in ClutterAnimator.
829 » Flush the per-framebuffer journal when switching between
832 » Generalize updating GLES2 uniforms.
834 » Add debug code for tracing clipping in Cogl.
836 » Improve the OSX event loop, re-using the same implementation
837 as GDK. Also, provide simple, core-like device support.
839 • Bugs fixed since Clutter 1.5.14
841 #2490 - OS X backend event loop improved
842 #2530 - animator: Animator uses key after freeing it
843 #2534 - Incorrect description of function 'clutter_actor_pop_internal'
844 #2535 - Add recipe about creating a composite actor
848 Neil Roberts, Robert Bragg, Elliot Smith, Rob Bradford,
849 Viatcheslav Gachkaylo
851 Clutter 1.5.14 2011-01-24
852 ===============================================================================
854 • List of changes since Clutter 1.5.12
856 » Allow getting the state modifiers from a ClutterClickAction.
858 » Fix ClutterDragAction to never leave the event delivery in
861 » Optimize state changes for texture and data states.
863 » Enable VBO support in Cogl for GLES2.
865 » Fix compilation on GLES1.1.
867 » Documentation fixes.
869 » ClutterGLXTexturePixmap has been deprecated; its parent class
870 ClutterX11TexturePixmap and the low level CoglTexturePixmapX11
871 API provide access to the same features.
873 » Be more resilient against timelines controlling the state of
874 other timelines during the clock tick.
876 » Provide defines for the windowing platforms, to allow portable
877 applications to include the correct header and select the
878 correct API depending on the target.
880 » Introduce a fast path for cogl_read_pixels() that uses the journal
881 to determine the position of a single pixel on the stage; this
882 fast path gracefully degrades to the usual render-based approach,
883 and should speed up picking considerably in the case of opaque
884 quads batched together.
886 » Support XInput axis data on valuator devices, and introduce XInput2
887 support for event translation and device hotplugging. The support
888 for XI and XI2 must still be explicitly enabled by the developer,
889 but it is now compiled in by default. It can be disabled at compile
890 time by passing --disable-xinput to the configure script.
892 » Clean up the unintentionally leaked internal symbols in the X11
895 » Allow defining the contents of the rows of a ListModel using
896 ClutterScript. This completes the ability to fully define a
897 ClutterListModel inside a UI definition file.
899 • Bugs fixed since Clutter 1.5.12
901 #1422, key input handler for eglnative
902 #1456, Hinting mishandling
903 #1721, XInput2 support
904 #2268, EGL backend dependent on X11 headers
905 #2400, Don't enable GL_POINT_SPRITE on GLES
906 #2497, should not throw away a program when just the texture
908 #2512, shader: Don't notify properties when finalizing shaders
909 #2513, script-parser: Also honor properties of type GType
910 #2516, [PATCH] Fails to compile with --with-gles=1.1
911 #2518, introspection: Add missing (out) annotations for get_color()
912 #2520, Add API to get modifier type in ClutterClickAction
913 #2522, ClutterDragAction might indefinitely disable motion events
914 #2524, It's possible to receive a new-frame signal after stopping
916 #2526, model: Fix some GObject-Introspection annotations
917 #2527, model: Change the column argument type to gint for
918 clutter_model_set_sort
919 #2528, model: Add support to define rows in ClutterScript
923 Robert Bragg, Neil Roberts, Bastian Winkler, Lucas Rocha, Adel Gadllah,
924 Chris Lord, Damien Lespiau
926 Clutter 1.5.12 2011-01-11
927 ===============================================================================
929 • List of changes since Clutter 1.5.10
931 » Allow disabling the focus when showing a ClutterStage; this also
932 makes Clutter more compliant to the X11 window manager
935 » Avoid state corruption in relayout cycles.
937 » Do not crash when destroying actors during CLUTTER_LEAVE events.
939 » Remove signal handlers when disposing constraints.
941 » Keep the pixel alignment for ClutterAlignConstraint.
943 » Do not release compiled ClutterShader during their finalization to
946 » Revert an ABI break on the ClutterContainer pre-requisites.
948 » Fix the name of the cogl_normal_in attribute.
950 » Do not assume CoglBitmaps are allocated to height * rowstride.
952 » Fix the core device list creation on X11.
954 » Avoid enabling blending in the Cogl journal, if possible.
956 » Documentation fixes.
958 » Build fixes for mixed autotools version environment.
960 » Improve the performance of getting the number of rows of a
963 » Don't use obsolete API internally.
965 » Build fix for compiling EGL backend with OpenGL under X11.
967 » Parse GType object properties in ClutterScript.
971 Neil Roberts, Johan Bilien, nobled, Adel Gadllah, Damien Lespiau,
972 Kristian Høgsberg, Nguyễn Thái Ngọc Duy, Tomeu Vizoso, Bastian Winkler
974 Clutter 1.5.10 2010-12-17
975 ===============================================================================
977 • List of changes since Clutter 1.5.8
979 » Add an evdev input backend; this adds support for input devices
980 on Linux when using the EGL-based backends.
982 » Update the build scripts for compiling the Windows backend.
984 » Updates for the Cookbook and the API references.
986 » Fix ClutterModel::get_iter_at_row() for filtered ClutterListModels.
988 » Scores of fixes to the pipeline state object for GLES2.
990 » Add code that tries to perform manual clipping to avoid breaking
991 up batches of primitives.
993 » Keep a cache of ARBfp programs indexed by the pipeline state that
994 led to their generation.
996 » Accept G_TYPE_DOUBLE values in ClutterShaderEffect uniforms.
998 » Update the Wayland client backend.
1000 » Update the build for Windows.
1002 » Rename the ClutterTimeline:reverse property introduced in
1003 Clutter 1.5.6 to ClutterTimeline:auto-reverse.
1005 » Clean up the interactive tests suite.
1009 Neil Roberts, Damien Lespiau, Robert Bragg, Elliot Smith,
1010 Jussi Kukkonen, nobled, Alexandre Quessy, Mike Owens,
1013 Clutter 1.5.8 2010-11-29
1014 ===============================================================================
1016 • List of changes since Clutter 1.5.6
1018 » Add a migration guide for code using Behaviours.
1020 » Allow parsing rgb(), rgba(), hls() and hlsa() color definitions.
1022 » Performance improvements for the ClutterX11TexturePixmap.
1024 » For caching purposes, do not discard the Material or the compiled
1025 shaders for Offscreen and Shader effects.
1027 » Fix image height in 3D Cogl textures.
1029 » Create a GLSL generation backend for materials, similar to the
1030 ARBfp one; this backend is the default for GLES2.
1032 » Use FBOs and cogl_read_pixels() to efficiently read back partial
1035 » Various fixes in paint volumes computation and caching.
1037 » Use the internal scene graph walk API to remove the map/unmap
1038 implementation requirement for composite actors and for
1039 containers with internal children.
1041 » Simplify the backend notification of layer changes.
1043 » Queue clipped redraws for Expose events on X11.
1047 » Include a porting guide from Behaviours.
1049 » Add a recipe on scaling animations in the Cookbook.
1053 Neil Roberts, Robert Bragg, Owen W. Taylor, Tomeu Vizoso, Chris Lord,
1054 Alexandre Quessy, Evan Nemerson, Elliot Smith
1056 Clutter 1.5.6 2010-11-19
1057 ===============================================================================
1059 • List of changes since Clutter 1.5.4
1061 » Deprecate ClutterBehaviour and its sub-classes: the same functionality
1062 is available using the animation framework.
1064 » Add ClutterSnapConstraint, a constraint implementation that snaps
1065 together the edges of two actors.
1067 » Add ClutterPathConstraint::node-reached.
1069 » Deprecate ClutterTimeoutPool and ClutterFrameSource: this API is
1070 not used internally any more, and since it's not integrated with
1071 the master clock it's of relative use.
1073 » Add a named, global color palette.
1075 » Add the ClutterTimeline:reverse property, for automatically
1076 reversing the direction of a timeline after the emission of
1077 the ::completed signal.
1079 » Performance improvements in the clip stack.
1081 » Do not use pointer grabs in ClutterClickAction.
1083 » Improve the internally used Cogl API for primitives, paths and
1084 buffers; this is the first step towards Cogl 2.0.
1086 » Allow using the COGL_DEBUG environment variable to disable the
1089 » Plug a nasty infinite loop in the XSETTINGS implementation.
1091 » Internally rename CoglMaterial to CoglPipeline; this should make
1092 it clearer that the API refers to the state of the GPU pipeline.
1094 » Add support for clipped redraws on EGL using the NOK_swap_region
1099 » Use the monotonic clock API if compiling against GLib ≥ 2.27.3.
1101 » Update examples in the Cookbook.
1103 » Add a Cookbook recipe for looping animations.
1105 » Add more documentation on Constraints.
1107 » Documentation fixes.
1109 Translation updates:
1115 Robert Bragg, Neil Roberts, Elliot Smith, Owen W. Taylor,
1116 Damien Lespiau, Lucas Rocha, Maxim Ermilov, Piotr Drąg,
1117 Tomeu Vizoso, muflone
1120 ===============================================================================
1122 • List of changes since Clutter 1.5.2
1124 » Add a backend for Wayland.
1126 » Depend on GLib ≥ 2.26, Cairo ≥ 1.10.
1128 » Do not generate the conformance tests list using the test-conformance
1131 » Implement interval progress functions for ActorBox, Vertex, Geometry,
1134 » Allow overriding the surface creation in Clutter.CairoTexture.
1136 » Add interpolate() method to Clutter.Color.
1138 » Add ClutterPathConstraint, a simple constraint that sets the origin
1139 of an actor's allocation to follow a ClutterPath.
1141 » Plug some memory leaks.
1143 » Fix build of the CEx100 and EGL backends.
1145 » Fixes for the OSX backend.
1147 » Documentation consistency and spell checking fixes.
1151 Translation updates:
1153 Andika Triwidada (id), Damien Lespiau (fr), Piotr Drąg (po)
1157 Damien Lespiau, Neil Roberts, Kristian Høgsberg, Andika Triwidada,
1158 Ole André Vadla Ravnås, Robert Bragg, Owen W. Taylor, Piotr Drąg,
1161 Clutter 1.5.2 (04/10/2010)
1162 ===============================================================================
1164 • List of changes since Clutter 1.4.0
1166 » Add API to ClutterActor to allow any actor to define its 3D paint
1167 volume and its stage-relative 2D bounding box; the paint volume is
1168 the 3D space occupied by an actor during the paint sequence. This
1169 allows better sizing of the FBOs, and opens the door to scenegraph
1170 culling and accurate clipped redraws. The mechanism is opt-in: actors
1171 have to implement the get_paint_volume() virtual function. Callbacks
1172 attached to the ::paint signal will also disable any culling and
1173 clipped redraw in place internally.
1175 » Plug a leak in ClutterActor by disposing all constraints.
1177 » Rework the build system to be as non-recursive as possible; this should
1178 speed up the build of Clutter, and makes the build layout easier to
1179 understand and update.
1181 » Remove the internal copy of JSON-GLib; the internal copy was falling
1182 behind at a spectacular level, and it was actually making the build
1183 rather complicated - also by adding an unwanted, but needed,
1184 introspection data generation. The required JSON-GLib has also been
1185 bumped to the new stable release, 0.12.0.
1187 » Use g_object_install_properties() with GLib 2.26.
1189 » Implement ClutterContainer::child-notify, which slipped through the
1190 cracks of many development cycles without anyone noticing.
1192 » Document and test clutter_actor_contains(), especially the corner
1195 » Plug a leak in CoglTexture2DSliced.
1197 » Plug a leak in ClutterAnimator's handling of timelines.
1199 » Trap glXDestroyPixmap() in CoglTexturePixmapX11 to avoid BadDrawable
1200 errors when the GLX pixmap is destroyed behind Cogl's back.
1213 Clutter 1.4.0 (24/09/2010)
1214 ===============================================================================
1216 • List of changes since Clutter 1.3.14
1218 » Add support for describing ClutterState states using ClutterAnimators
1223 » Include ClutterConstraints into the allocation phase, to avoid layout
1224 cycles and improve the performance.
1226 » Add new recipes to the Cookbook to illustrate constraints-based
1229 » Fix the request mode of ClutterBoxLayout.
1231 » Fix the handling of transformations in ClutterOffscreenEffect.
1233 » Documentation and introspection fixes.
1241 Dominique Leuenberger
1246 Clutter 1.3.14 (15/09/2010)
1247 ===============================================================================
1249 • List of changes since Clutter 1.3.12
1251 » Fix applying layout properties from ClutterScript definitions in case
1252 of multiple children.
1254 » Add a Clutter EGL backend for Intel CEx100 platforms.
1256 » Add new recipes in the Cookbook:
1257 - texture cross-fading
1258 - ClutterScript definitions
1261 - reusing complex animations
1263 » Add methods to retrieve the clicked button and to force a release
1266 » Documentation fixes in the API reference.
1268 » Cache a full pick buffer and re-use it in case the scene does not change
1271 » Fix a Valgrind report of memory corruption in ClutterState.remove_key().
1273 » Allow detaching animations created with clutter_actor_animate().
1275 » Depend on GObject-Introspection >= 0.9.5.
1277 » Provide introspection data for the X11-specific API, like
1278 ClutterX11TexturePixmap
1280 » Use a template material for ClutterTexture to minimize the creation of
1283 » Split ClutterDragAction:drag-threshold into two, per-axis properties:
1284 :x-drag-threshold and :y-drag-threshold.
1286 » Allow disabling the -Bsymbolic flag when linking.
1288 » Use gettext >= 0.17 to handle the localization.
1290 » Flush the framebuffer earlier when drawing the vertex buffers, to fix
1291 a crash when dealing with clip stacks.
1293 » Make sure ClutterX11TexturePixmap removes the Cogl texture handle before
1294 freeing the X11 Pixmap to avoid an error.
1296 » Avoid regenerating the CoglMaterial programs too many times.
1317 Clutter 1.3.12 (16/08/2010)
1318 ===============================================================================
1320 • List of changes since Clutter 1.3.10
1322 » New recipes in the Cookbook:
1323 - create and animate sub-textures
1327 » Set the ClutterTexture:filename property to also be readable.
1329 » Avoid layout cycles when creating ClutterLayoutMeta objects
1330 during the ::allocate implementation
1332 » Add a ClutterTableLayout, a layout manager for tabular layouts.
1334 » Capture ENTER and LEAVE events on the stage within the DragAction.
1336 » Plug memory leaks.
1338 » Use g_object_notify_by_pspec(), if available, to speed up the
1339 emission of the ::notify signal on property changes.
1341 » Re-use the Cogl texture atlas for the CoglPango glyphs cache,
1342 and improve the performance with large font sizes.
1344 » Various fixes in the Materials comparison and inheritance.
1346 » Add the ability to associate a user program to a material.
1357 Clutter 1.3.10 (04/08/2010)
1358 ===============================================================================
1360 • List of changes since Clutter 1.3.8
1362 » Fix a locale-dependent conversion from double to string when
1363 generating ARBfp programs for the materials.
1365 » Use the XKB extension on X11 platforms to convert between hardware
1366 keys to key symbols.
1368 » Documentation fixes in the API reference.
1370 » More recipes, with videos and full examples, in the Cookbook.
1372 » Add localization support and initial translations of error messages
1373 that might be visualized in a user interface.
1375 » Improve debugging output.
1377 » Fix build of the GLX backend on OSX.
1379 » Multiple fixes to the native OSX backend.
1381 » Add support for 3D textures in Cogl.
1383 » Fix shader-related issues and leaks in the new Material code.
1385 » Unify GLSL support in the GL and GLES 2.0 drivers.
1387 » Allow specifying an hint to disable clearing the stage before each
1403 Clutter 1.3.8 (12/07/2010)
1404 ===============================================================================
1406 • List of changes since Clutter 1.3.6
1408 » Merge Cally, the Clutter Accessibility Library, in the Clutter tree.
1410 » Take into consideration the source actor's position in the
1411 AlignConstraint logic.
1413 » Update the internal COGL tesselator with the latest GLU code.
1415 » Fix CoglTexture data readback.
1417 » Use GL_MAX_TEXTURE_SIZE on GLES when checking the supported texture size.
1419 » Add missing public functions from COGL headers.
1421 » Fix GLES build after the Cogl material changes.
1423 » Rename the experimental CoglPixelBuffer API to CoglPixelArray.
1425 » Split the clutter_state_change() method into two:
1426 clutter_state_set_state(), for animated state changes; and
1427 clutter_state_warp_to_state() for immediate state changes.
1429 » Documentation and introspection fixes.
1443 Clutter 1.3.6 (30/06/2010)
1444 ===============================================================================
1446 • List of changes since Clutter 1.3.4
1448 » Provide a fallback on GLX if the MESA_copy_sub_buffer extension is not
1449 available, by using EXT_framebuffer_blit. Both mechanisms are also
1450 throttled to avoid taking all resources when using them in a compositor
1453 » Use (and cache) fragment shaders instead of texture combiners inside
1454 Cogl materials. Cogl will automatically fall back from GLSL to ARBfp
1455 to fixed functions depending on the level of support of the underlying
1458 » Implement a new design for materials; this allows scaling up the
1459 number of materials in a scene, and also makes copying materials
1462 » Make Cogl materials responsible for depth testing, and add new
1465 » Use the (modified) GLU tesselator to draw paths to a vertex buffer
1466 object instead of using the stencil buffer, or the scanline rasterizer
1467 on platforms without a stencil buffer.
1469 » Add ClutterDeformEffect, a base class for effects that deform an
1470 actor's geometry when painting it; ClutterPageTurnEffect is an
1471 implementation of a "page curl" deformation using the DeformEffect
1474 » Always use scissoring when clipping, to reduce the amount of buffer
1475 that has to be cleared.
1477 » Allow ClutterShaderEffect sub-classes to use vertex shaders by setting
1478 a constructor property; the default remains fragment shader.
1480 » Remove the button of the press event from the DragAction::drag-begin
1481 and DragAction::drag-end signals. This is an API break from 1.3.4.
1483 » Do not promote clipped redraws to full redraws.
1485 » Improve the consistency of the default state name in ClutterState,
1486 both in the API and in the serialization format.
1488 » Fix a rounding error with the Text layout size.
1490 » Add utility functions for CoglMatrix and CoglColor.
1492 » Avoid a re-allocation cycle warning when resizing the surface of
1493 a CairoTexture actor from within the allocate() implementation.
1495 » Do not add the GL libraries for the EGL X11 backend.
1497 » Add more checks for size of data passed to the shader types GValue
1500 » Add width and height to the BindConstraint.
1502 » Parse actions, constraints and effects inside an actor definition
1505 » Merge the code of native and x11 backends for EGL into a single
1506 backend; also allow creating GL context with the EGL backend.
1508 » Use XSETTINGS to set up the backend configuration options, like
1509 the font name, resolution, font options and double click options,
1510 on X11; this also allows ClutterText actors created using the
1511 default font name to be updated when the font name and options
1512 change; similarly, this allows ClutterUnits to be updated when
1513 the screen resolution changes.
1515 » Implement the texture_from_pixmap extension support inside Cogl
1516 itself, and unify ClutterX11TexturePixmap and ClutterGLXTexturePixmap.
1518 » Documentation improvements in the API reference and in the cookbook.
1520 » Use the -Bsymbolic-functions linker option on supported platforms
1521 to avoid intra-library PLT jumps.
1523 » Fix painting transparent stages on X11 using the :use-alpha property
1526 » Fix emission of scroll events on Windows.
1545 Clutter 1.3.4 (07/06/2010)
1546 ===============================================================================
1548 • List of changes since Clutter 1.3.2
1550 » Add ClutterEffect, a ClutterActorMeta sub-class that affects the
1551 way an actor paints itself.
1553 » Clutter provides a base class for effects painting to an
1554 offscreen buffer, and a base class for effects using the
1555 GL programmable pipeline (through the GLSL shader language).
1557 » Clutter also provides some simple, shader-based effects:
1558 ClutterBlurEffect, ClutterColorizeEffect and
1559 ClutterDesaturateEffect.
1561 » Effects can be applied to any actor, and can also be stacked.
1563 » Add ClutterClickAction, an action that provides "button-like"
1564 semantics for any ClutterActor.
1566 » ClutterDragAction now moves the actor to which it has been applied
1567 by default, using a class handler for the ::drag-motion signal.
1569 » Add the :pick-with-alpha property to ClutterTexture; this property
1570 allows using the alpha channel of a texture when picking it.
1572 » Regenerate the mipmaps on COGL textures when a texture is modified.
1574 » Documentation and build fixes.
1583 Clutter 1.3.2 (24/05/2010)
1584 ===============================================================================
1586 • List of changes since Clutter 1.2
1588 » Add ActorMeta, a class for run-time composition of actions and
1589 constraints on a ClutterActor:
1591 » Add ClutterAction, a class for implementing business logic
1592 related to event handling.
1594 » Add ClutterConstraint, a class for implementing business
1595 logic related to sizing and positioning.
1597 » ClutterDragAction is an Action sub-class that implements
1598 signals and properties for dragging actors.
1600 » ClutterAlignConstraint and ClutterBindConstraint are two
1601 Constraint sub-classes that allow relative positioning
1602 with fixed layout managers.
1604 » Add ClutterState, an object for defining state transitions.
1606 » Add ClutterBoxLayout:homogeneous property.
1608 » Implement retained clip stacks.
1610 » Support retained paths.
1612 » Add an experimental vector3 API.
1614 » Require GLib >= 2.18.
1616 » Require Atk >= 1.7.
1618 » Make ClutterActor implement AtkImplementor, and allow retrieving
1619 an AtkObject from a ClutterActor.
1621 » Improve ClutterText's Pango layout caching mechanism.
1623 » Fix set up of the GLX_SGI_swap_control extension.
1627 » Documentation fixes for Clutter and COGL.
1629 » Fix the conformance test suite by executing every test unit in
1632 » Add platform-dependent defines for Cogl.
1634 » Update the MingW cross-compilation script.
1636 » New recipe in the Cookbook.
1653 Clutter 1.2.2 (15/03/2010)
1654 ===============================================================================
1656 • List of changes since Clutter 1.2.0
1658 » Fix introspection annotations for ClutterBox
1660 » Compilation fixes for the EGL native backend
1662 » Fix ClutterX11TexturePixmap ::queue-damage-redraw default handler
1663 registration to avoid a run-time warning
1665 » Handle TEXTURE_RECTANGLE_ARB in the 2D sliced textures, and add
1666 a test case for that extension to avoid regressions
1668 » Improve the strictness of the JSON parser in the internal copy
1669 of JSON-GLib to which we fall back in the absence of the system
1672 » Fix a crasher on NVidia drivers when enabling the ARGB visuals
1682 Clutter 1.2.0 (02/03/2010)
1683 ===============================================================================
1685 • List of changes since Clutter 1.1.14
1687 » Improve the Animator API for consistency, and the implementation
1688 to match the intended behaviour, as documented
1690 » Add initial (and internal) support for queueing clipped region updates
1691 and let the GLX texture-from-pixmap actor take advantage of it
1693 » Support any pixel format in cogl_read_pixels()
1695 » Conditionally use G_VALUE_COLLECT_INIT() in functions using variadic
1698 » Consistently use :min-width and :min-height inside the Stage to define
1699 the minimum size of the Stage window
1701 » Implement the Scriptable interface for ClutterModel sub-classes; this
1702 allows setting ClutterModel columns (both types and names) in
1703 ClutterScript definitions
1705 » Add support for unsigned integer indices in the VertexBuffer API
1707 » Documentation fixes for Clutter: the coverage is now 100%
1709 » Fixes for the EGL native backend
1711 » Require libtool >= 2.2.6
1713 » Improve tests coverage
1724 Clutter 1.1.14 (24/02/2010)
1725 ===============================================================================
1727 • List of changes since Clutter 1.1.12
1729 » Fix interaction between user resizable Stages and fullscreen on X11
1731 » Define the semantics of ENTER and LEAVE events when actors are on the
1732 border of the Stage window
1734 » Take the InputDevice of an event into consideration when throttling
1737 » Round the coordinates when clipping to a rectangle in window coordinates
1739 » Always trust the user-provided coordinates when creating a CoglTexture
1740 from a foreign GL texture
1742 » Split Clutter's debug annotations from the pick and paint mode
1743 behavioural modifiers
1745 » Improve the usage of the CLUTTER_ACTOR_NO_LAYOUT flag so that every
1746 actor using a ClutterFixedLayout manager will automatically benefit
1749 » Fix the packing order of ClutterBox so that the convention of
1750 first-in-first-painted is maintained
1752 » Documentation fixes
1760 Clutter 1.1.12 (16/02/2010)
1761 ===============================================================================
1763 • List of changes since Clutter 1.1.10
1765 » Fix compilation on 64bit platforms
1767 » Fix some races of the Stage resizing on X11
1769 » Documentation fixes for Cogl: the coverage is now 100%
1771 » Fix rounding errors in the preferred height of the ClutterText
1774 » Remove redundant type checks in clutter_actor_get_paint_opacity()
1776 » Add support for the GLX_INTEL_swap_event extension; when using this
1777 extension on GLX the glXSwapBuffers() call becomes non-blocking and
1778 Clutter will use an event to control the master clock.
1780 » Improve consistency between ClutterBox and ClutterGroup.
1782 » On X11, do not set the _NET_WM_PID and WM_TITLE properties on a
1783 Stage X window if the window was not created by Clutter itself
1785 » Improve caching of GL constant values
1787 » Optimize creating sub-textures of sub-textures
1789 » Various fixes for the atlas and the journal
1791 » Disable the atlas if FBOs are not supported
1801 Clutter 1.1.10 (09/02/2010)
1802 ===============================================================================
1804 • List of changes since Clutter 1.1.8
1806 » Fixed a regression in textures that caused all the textures to be
1807 drawn as white rectangles.
1809 » Fixed compilation with the Sun C compiler.
1811 » Use SSE2 instructions to premultiply RGBA images, if available.
1813 » Improve readability of ClutterActor::raise/::lower warnings.
1820 Clutter 1.1.8 (08/02/2010)
1821 ===============================================================================
1823 • List of changes since Clutter 1.1.6
1825 » Added ClutterAnimator, a class that allows defining complex
1826 implicit animations involving multiple actors and states; this
1827 class is mostly meant to be used through the ClutterScript
1828 definition format, but it provides a convenience C API for
1829 easily building animations.
1831 » New experimental COGL API to expose "hardware" buffers such as PBOs or
1832 drm surfaces. This API can be used, for instance, to make texture
1835 » Fixed the issues with resizable stages getting a 1x1 window with
1838 » Expose input devices for every event; by default, X11 and Windows
1839 backends expose the core devices only.
1841 » Add the ClutterStage:key-focus property, for key focus tracking.
1843 » Allow setting transformable value types in ClutterAnimation when
1844 calling clutter_animation_bind() and clutter_animation_update().
1846 » Delay the creation of the default Stage until clutter_stage_get_default()
1847 is actually called; this reduces the work of clutter_init().
1849 » Implement Ctrl+Delete and Ctrl+Backspace in ClutterText
1851 » Improve the extendability of CoglTexture with internal backends.
1853 » Add implicit texture atlasing; Cogl will try to put every texture
1854 inside the same texture atlas by default, to avoid state changes
1855 in the driver and (hopefully) improve performance.
1857 » Fix notification of the cursor and selection changes in ClutterText;
1858 this improves the usage of Clutter from A11Y toolkits.
1860 » Do not wait for a frame if the system clock goes backwards.
1862 » Fix the dirtying of the clip state; this unbreaks cogl_path_fill().
1864 » Documentation and build fixes.
1877 Clutter 1.1.6 (18/01/2010)
1878 ===============================================================================
1880 • List of changes since Clutter 1.1.4
1882 » Some fixes for the Win32 backend (bug #1905).
1884 » Profiling support via the UProf library. Configure with
1885 --enable-profile to get a report after each Clutter application is
1888 » Improved conformance tests with coverage reports via gcov.
1890 » ClutterTexture no longer tries to read back texture data into
1891 g_malloc'd memory on unrealize (bug #1842).
1893 » The CGL_• defines from cogl-defines.h have been removed. These
1894 should not have been used by any applications, but if they were
1895 being used then please replace them either with the Cogl enums or
1896 with the appropriate GL_• enum if you are using GL directly.
1898 » Added a delete-event signal to the stage.
1900 » Fix for using cogl_rectangle with different texture coordinates
1901 for multiple layers (bug #1937).
1903 » Fix for using stencil and depth buffers in FBOs on Intel drivers
1904 in Mesa (bug #1873).
1906 » Support for subtitles in ClutterMedia.
1908 » ClutterGLX will now use an RGB visual by default. For
1909 applications (and toolkit integration libraries) that want to
1910 enable the ClutterStage:use-alpha property there is a new
1911 function: clutter_x11_set_use_argb_visual().
1913 » Fix ClutterText to allow using Pango markup and attributes in
1914 the same actor (bug #1940).
1926 Clutter 1.1.4 (03/01/2010)
1927 ===============================================================================
1929 • List of changes since Clutter 1.1.2
1931 » Update the ClutterScript parser to be more resilient, and support
1932 constructor and ChildMeta properties. The parser also respects the
1933 order of the properties in the UI definitions when applying them,
1934 and will apply the properties of an Actor after building the scene
1937 » Simplified the implementation of LayoutManager sub-classes, and added
1938 support for animating a layout manager.
1940 » Allow short-circuiting some layout operations by setting a specific
1941 flag on ClutterActor.
1943 » Improve caching of the preferred size of a ClutterActor.
1945 » Allow declaring "internal children" for a ClutterContainer
1946 implementation: the memory management of these actors will be deferred
1947 entirely to the Container.
1949 » Let the ClutterStage honour the :opacity property and the alpha component
1950 of the stage color. This requires support in the Clutter backend used.
1952 » Improve Windows and OSX backends.
1954 » Simplify the feature detection code for OpenGL; this also reduced the
1955 required OpenGL version to 1.2.
1957 » Improve the matrix stack handling code. The matrices can be debugged by
1958 using the COGL_DEBUG environment variable, assuming that Clutter was
1959 compiled with the right configure-time switch.
1961 » Improve COGL API for draw buffers, and for offscreen buffer support.
1963 » Add support for text direction to ClutterActor.
1965 » Documentation, introspection and build fixes.
1982 Clutter 1.1.2 (23/10/2009)
1983 ===============================================================================
1985 • List of changes since Clutter 1.0
1987 » Add ClutterLayoutManager, an abstract proxy class for easily
1988 writing layout management policies; also add ClutterLayoutMeta,
1989 a class for storing layout properties.
1991 » Add ClutterBox, a generic container actor that relies on a
1992 ClutterLayoutManager instance to manage the layout of its
1995 » Add the following layout managers:
1997 - ClutterFixedLayout - a layout manager implementing the
1998 policy used by ClutterGroup
2000 - ClutterBinLayout - a layout manager for packing actors
2001 as layers inside the same area, with per-actor alignment
2003 - ClutterFlowLayout - a layout manager arranging actors as
2006 - ClutterBoxLayout - a layout manager arranging actors as
2009 » Remove the requirement for the backend-specific implementation
2010 of ClutterStage to be a ClutterActor: a Stage implementation must
2011 only implement the ClutterStageWindow interface. This cleans up
2014 » COGL source tree clean up and rationalization; COGL now
2015 knows the platform, and not only the driver (GL or GLES) so
2016 we can migrate part of the low-level backend code from Clutter
2017 to COGL where it makes sense.
2019 » Remove code duplication across whole COGL.
2021 » The GLES 2.0 driver for COGL, and the EGLX backend for Clutter
2022 have been fixed and confirmed working.
2024 » Add "dump-pick-buffer" to CLUTTER_DEBUG: this debug options
2025 dumps the contents of each pick() buffer into a PNG file, for
2028 » Allow interpolating intervals of ClutterUnits for animating
2029 unit-based properties.
2031 » Increase strictness and correctness of the ClutterUnits
2034 » Add GValue transformation functions for ClutterPath to and
2037 » Fix word movement in ClutterText; implement GObject getter for
2038 :use-markup; emit notification for :position; decouple the
2039 :text property from the :use-markup property.
2041 » Do not queue redraws or relayouts on actors currently being
2044 » Support #rrggbb and #rgb notations for ClutterColor.
2046 » Multiple bug fixes.
2048 » Provide _NET_WM_PID on the X11 stage implementation.
2050 » Documentation and Introspection annotation fixes.
2052 » Add test units for the ClutterActor size requesition.
2056 » Use AM_SILENT_RULES if Automake 1.11 is detected, and fall
2057 back to Shave on older Automake versions.
2077 Clutter 1.0.0 (28/07/2009)
2078 ===============================================================================
2080 • List of changes since 0.9.8
2082 » Allow per-stage disabling of motion event throttling; this should allow
2083 platforms or applications that require all the motion events not for
2084 drawing purposes to get them exactly like Clutter gets them from the
2087 » Various documentation fixes.
2089 » Add per-word key navigation inside ClutterText.
2091 » Fix the RGB<->HLS conversion.
2093 » Various fixes for the OSX backend.
2095 » Various build-related fixes.
2103 Clutter 0.9.8 (17/07/2009)
2104 ===============================================================================
2106 • List of changes since 0.9.6
2108 » Add more introspection annotations for language bindings.
2110 » Fix a bug in clutter_animation_set_alpha(), which also broke the
2111 clutter_actor_animate_with_alpha() function.
2113 » Check if the stage requires a relayout before showing it; this fixes
2114 a bug in the X11-based backends, especially under compositing window
2115 managers, where a 640x480 window would flicker before the default
2116 stage was shown for the first time.
2118 » Performance fixes for Cogl.
2120 » Sliced textures were broken by the COGL journalling.
2122 » Use the redraw cycle when asynchronously loading textures from
2125 » Miscellaneous compilation fixes for the OS X and Windows backends.
2127 » Allow querying from within the paint function of an Actor whether
2128 the actor is currently being directly painted or by a Clone actor.
2130 » In the GLX backend, when using the non-implicit sync-to-vblank inside
2131 glXSwapBuffers(), call glFinish() to avoid potential tearing.
2141 Clutter 0.9.6 (01/07/2009)
2142 ===============================================================================
2144 • List of changes since 0.9.4:
2146 » Allow the manipulation of the actor's transformation matrix, so that is
2147 is possible to apply additional transformations in a way that is
2148 compatible with the transformations already applied by the scene graph.
2150 » Fix a race in the X11 backend that happened between resizing the stage
2151 drawable and the call to glViewport().
2153 » Merge the cogl-journal-batching branch; this branch implements batching
2154 the geometry of the elements of the scene graph before sending it to
2155 OpenGL, thus minimizing the number of state changes and improving the
2156 overall performance of Clutter-based applications.
2158 » Add more debugging states for Clutter and COGL, which allow the developer
2159 to track the state of the journal; to check the VBO fallback paths; to
2160 disable picking for reliable profiling; to disable software-side matrix
2161 transformations in favour of the driver/GPU ones.
2163 » Improve the ability to "break out" of COGL by using gl_begin/gl_end
2164 semantics; applications that drop into raw GL are, though, ignoring all
2165 the caching performed by COGL and might incur in performance issues.
2167 » Fixed the :load-async and :load-data-async properties of Texture by
2168 removing the unneeded G_PARAM_CONSTRUCT flag.
2170 » Added an initial migration guide that shows the porting process from
2171 older releases of Clutter to the 1.0 API; the first chapter deals with
2172 the migration from ClutterEffect to the new implicit animations API.
2174 » Fixed MT-safety for the master clock.
2178 Ole André Vadla Ravnås
2181 Clutter 0.9.4 (19/06/2009)
2182 ===============================================================================
2184 • List of changes since 0.9.2:
2186 » Set the layout height in ClutterText, so that wrapping and ellipsization
2187 work correctly to fill all the allocated area.
2189 » Remove all the units-based API, and migrate all the positional and
2190 dimensional accessors to use floating point values when dealing with
2191 pixels. All the properties dealing with pixels now that a floating
2192 point value as well.
2194 » Add the ability to track wether an actor is going to be painted or not,
2195 using the "mapped" flag. This also allows Clutter to be more strict
2196 in the handling of the scenegraph, ensuring correctness and avoiding
2197 wasting resources on nodes that won't be painted.
2199 » Add debugging facilities for COGL, similar to those of Clutter; through
2200 them is also possible to have an on screen debugging mode that shows the
2201 boundaries of each rectangle sent to the GPU.
2203 » Rework "units" into real logical distance units that can be converted
2204 between millimeters, typographic points and ems into pixels.
2206 » Simplify the Animation class to avoid redundancy and the possibility
2207 of it going out of sync with the Timeline and Alpha instances it uses.
2209 » Move every operation into a single "master clock" source that advances
2210 the timelines, dispatches events and redraws the stages in a predictable
2211 sequence, thus avoiding unneeded redraws. The default is to follow the
2212 sync-to-vblank cycle, if it is supported by the drivers.
2214 » Cache the glyphs geometry into a vertex buffer object to avoid
2215 resubmitting too much information to the GPU.
2217 » Rework the behaviour of ClutterModel when a filter is applied.
2219 » Allow submitting premultiplied texture data; this removes the need
2220 for unpremultiplying data in CairoTexture.
2222 » Add a simple API for submitting blending and texture combining modes
2223 through a string description.
2225 » Move Timelines to pure time-based objects.
2227 » Lots of performance improvements.
2229 » Removal of all the deprecated API.
2231 » Removal of all the fixed point entry points.
2233 » Lots of documentation fixes - the coverage is now 99% of the exported
2234 1600 symbols for Clutter and 80%+ of the 300 exported symbols for COGL.
2236 » Generate the GObject Introspection data for both Clutter and COGL
2239 » Build environment fixes.
2243 Owen W. Taylor <otaylor@fishsoup.net>
2244 Thomas Wood <thomas.wood@intel.com>
2245 Havoc Pennington <hp@pobox.com>
2246 Bastian Winkler <buz@netbuz.org>
2247 Chris Lord <chris@linux.intel.com>
2248 Garry Bodsworth <gjb@camvine.com>
2249 Rob Bradford <rob@linux.intel.com>
2250 Johan Bilien <jobi@litl.com>
2251 Jonas Bonn <jonas@southpole.se>
2252 Raymond Liu <raymond.liu@intel.com>
2253 Damien Lespiau <damien.lespiau@gmail.com>
2254 Dan Winship <danw@gnome.org>
2255 Marc-André Lureau <marcandre.lureau@gmail.com>
2256 Robert Staudinger <robsta@gnome.org>
2257 Tommi Komulainen <tko@litl.com>
2259 Clutter 0.9.2 (16/03/2009)
2260 ===============================================================================
2262 Bastian Winkler (2):
2263 [media] Fix the interface cast macro
2264 Remove redundant declaration in clutter-text.h
2267 [actor] Force a relayout on set_parent()
2269 Christian Persch (1):
2270 Bug 1429 - Redundant declaration in clutter-x11.h
2273 Bug 1491 - Fix hardcoded lib path in .pc files
2274 Typo in clutter-win32.pc.in introduced by commit 24ce19383
2275 [animation] Enhance the bind API
2278 [gitignore] update gitignore files for tests/
2279 [build] Beautify autotools' output
2281 [build] Fix interaction between shave, gtk-doc and libtool 1.x
2282 [build] Fix dist for the newly introduced m4 macro directory
2285 Emmanuele Bassi (111):
2286 Post-release bump to 0.9.1
2287 [text] Merge the attributes with markup enabled
2288 [tests] Update the text-field interactive test
2289 Add Actor::create_pango_layout()
2290 [docs] Add clutter_text_set_markup()
2291 [clone] Allow cloning unparented actors
2292 [text] Use create_pango_layout()
2293 [text] Rename :alignment to :line-alignment
2294 [texture] Consolidate the quality to filter conversions
2295 [texture] Check if the material is valid
2296 [event] Extend KeyEvent for multi-input support
2297 [actor] Check out parameters before setting them
2298 [list-model] Make ClutterListModel subclassable
2299 Bug 1440 - Add clutter_get_current_event_time()
2300 [tests] Add TEST_CONFORM_SKIP() macro
2301 [tests] Add conformance tests for ClutterModel
2302 [ignore] Add the newly created conformance units
2303 [actor] Revert part of commit 402e022c
2304 [animation] Do not bind construct-only properties
2305 [x11] Add backend-specific get_current_event_time()
2306 Initialize a variable to avoid warnings
2307 [cogl] Add cogl_is_material to cogl-material.h
2308 [cogl] Provide GTypes for COGL types
2309 [texture] Use COGL_TYPE_HANDLE for the handle properties
2310 [docs] Clarify the set_cogl_texture() documentation
2311 Merge branch 'build-enhancements'
2312 [docs] Add a missing "return" annotation
2313 [build] Pass the -s switch to cmp
2314 Remove type functions for removed types
2315 [docs] Update the sections file
2316 [tests] Add TEST_CONFORM_TODO macro
2317 [build] Show pkg-config file being generated
2318 [build] Reference the headers with their full path
2319 [docs] Update build for COGL API reference
2320 [build] Update the EXTRA_DIST list
2321 [build] Fix the ChangeLog generation rule
2322 [build] Do not overwrite BUILT_SOURCES
2323 [behaviour] Do not notify empty behaviours
2324 [path] Do not accept NULL descriptions
2325 [timeline] Set the n_markers out paramater
2326 Do not use GL types in Clutter headers
2327 [docs] Require gtk-doc 1.11
2328 [docs] Use the --name-space option
2329 [docs] Add the 1.0 symbols index
2330 [docs] Rename cogl-docs from sgml to xml
2331 Add build machinery for gobject-introspection data
2332 [backend] Update the viewport when updating the GL context
2333 [build] Move all the compiler flags to AM_CFLAGS
2334 [ignore] Update with the introspection files
2335 Add runtime debug messages for COGL
2336 [actor] Remove usage of ClutterFixed
2337 Make disable text mipmapping a command line switch
2338 Make fuzzy picking a command line switch
2339 [docs] Document envvars and command line switches
2340 Remove stray fixed point macro usage
2341 Use a dynamic array for the actors when delivering events
2342 [media] Add sub-second resolution for the duration
2343 [build] Put the X11 pc dependencies in another variable
2344 [build] Do not shave typelib generation
2345 Intern the ClutterScriptable type name
2346 [backend] Constify font options
2347 [cogl] Add a PANGO debug flag for CoglPango use
2348 Clean up of the ClutterColor API
2349 [shader] Unify code paths
2350 Add pkg-config file for COGL
2351 [build] Various fixes for distcheck
2352 [docs] Clarify clutter_actor_animate() behaviour
2353 [docs] Note that grabs are evil
2354 [cogl-fixed] Add a double-to-fixed conversion macro
2355 Move BehaviourScale to CoglFixed
2356 Move ClutterBehaviourEllipse to CoglFixed
2357 Move ClutterBehaviourRotate to CoglFixed
2358 Move ClutterTimeline to CoglFixed
2359 [cogl-fixed] Implement the CoglFixed fundamental GType
2360 [tests] Test CoglFixed, not ClutterFixed
2361 [interval] Update fixed-point handling
2362 [stage] Coalesce fog and perspective API
2363 [texture] Fix ClutterFixed usage
2364 [text] Convert units to the right type
2365 [tests] Use floats, not ClutterFixed
2366 [units] Add more conversion functions
2367 [fixed] Remove ClutterFixed API
2368 [cogl] Fix hardcoded paths in the pc file
2369 [docs] Remove ClutterFixed from the documentation
2370 [docs] Update API reference
2371 [animation] Add vector variants for ::animate()
2372 [cogl] Initialize boolean flag in CoglContext
2373 [cogl] Initialize all members of CoglContext
2374 [color] Fixed HLS to RGB conversion
2375 [docs] Calling g_object_ref() will not dispose an object
2376 [docs] Document the commit message format
2377 [tests] Animate the color during easing
2378 [docs] Reword some of the coding practices
2379 [docs] Add a bindings coding practices
2380 Add more deprecation notices
2381 [deprecated] Add Effect deprecation
2382 Do not cause more size requisitions than necessary
2383 [cogl] Avoid shadowing math.h symbols
2384 [docs] Clarify Animation memory management
2385 [animation] Add an emitter for ::completed
2386 [animation] Add Animation getter
2387 [tests] Remove unused variables
2388 [docs] Add description of queue_redraw
2389 [docs] Update after Animation API changes
2390 [animation] Enhance consistency of the Animation API
2391 [docs] Bring down the undocumented symbols to 2%
2392 Fix release date of 0.9.0
2393 Update release notes
2394 [docs] Fix naming of the interval parameter
2395 [docs] Ignore the TimeoutInterval internal API
2396 Update release notes
2398 Geoff Gustafson (1):
2399 [animation] Broken fixed:: properties
2401 Gordon Williams (1):
2402 [group] Output the group name when debugging paint
2404 Havoc Pennington (4):
2405 Virtualize GL matrix operations and use a client-side matrix when GL is indirect
2406 [actor] Add :clip-to-allocation property
2407 [actor] Add ::queue-redraw signal
2408 [cogl] Flush matrix before clip planes
2410 Jonathan Matthew (1):
2411 Declare the EnumValues for PixelFormat static
2414 [cogl-material] Always bind the new texture handle
2415 Fix building GLES 2 after the material branch merge
2416 [cogl-texture] Fix the count for the number of enabled arrays
2417 [cogl-gles2-wrapper] Remove the FIXME to adjust the fragment color
2418 [clutter-clone] Override the parent opacity to self not self->parent
2419 [clutter-texture] Release the temporary ref taken when setting a texture
2420 [clutter-texture] Unref the Cogl material on dispose
2421 [clutter-texture] Fix the no_slice property
2422 [cogl-texture] Fix offset to next quad when flushing the log
2423 [cogl-texture] Move the destruction of the material to _finalize
2424 [cogl-texture] Fix uninitialised priv var in texture_finalize
2425 Added a test for non-power-of-two sized textures
2426 Emit CLUTTER_LEAVE events when the pointer leaves the stage
2427 Call glActiveTexture and glClientActiveTexture through cogl_get_proc_address
2428 [win32] Track mouse leave messages
2429 [clutter-main] Fix the input device passed to set_motion_last_actor
2430 Override the opacity when painting a clone instead of combining
2431 Allow rotation angle properties to be negative
2432 [ClutterBehaviourRotate] Fix up some breakage from the cogl-float branch merge
2433 [tests/conform] Copy in redhand.png
2434 Replaced ClutterFixed constants in color_{darken,lighten} with float
2435 [cogl-gles2-wrapper] Convert texture unit settings to be a static sized array
2436 [cogl-gles2-wrapper] Actually call glActiveTexture
2437 Add an environment variable to disable mipmapped text
2438 [tests/tools] Don't install libdisable-npots.so
2439 [clutter-texture] Use a GThreadPool for loading async textures
2440 [cogl-pango-glyph-cache] Fix compiler warning on 64-bit
2441 Fix warning in clutter-backend-sdl
2442 [eglnative] Add -I flags for the clutter dir in the src and build dirs
2443 Set the mapped flag on the stage in the SDL and eglnative backends
2444 Fix out of tree builds
2445 Remove use of $(builddir)
2446 [README] Small typo fix
2447 Change cogl_path_rectangle and cogl_path_round_rectangle to take x1,y1,x2,y2
2448 [cogl-path] Minor fix to gtk-doc
2449 Count timeline frames using the FPS instead of an integer interval
2452 Honor ACLOCAL_FLAGS in autogen.sh
2453 Add gobject-introspection annotations
2454 Fix x/y confusion for GL_TEXTURE_RECTANGLE_ARB
2455 Use COGL to establish GL state for ClutterGLXTexturePixmap
2456 Add (out) annotations for ClutterActor
2457 Allow NULL for clutter_text_set_text()
2458 Avoid drawing twice if relayout queues a draw
2461 [text] Crash when multi-byte utf8 text exceeds max_length
2462 [text] Insertion of multi-byte characters broken
2465 [Cogl] Renames cogl_fog_set to cogl_set_fog for consistency
2466 [cogl-material] Fixes some dirty flag checks
2467 [cogl-vertex-buffer] Some fixes for texturing and color arrays
2468 [docs] Various gtk-doc updates for Cogl
2469 [tests] Some improvements for test-pixmap
2470 [Cogl] cogl_clip_{set•,unset} renamed to cogl_clip_{push*,pop}
2471 [Cogl] Renames cogl_paint_init to cogl_clear and adds a cogl_disable_fog function
2472 [cogl-color.c] #include fix for the cogl_set_source_color prototype
2473 [Cogl] the cogl_get_•_matrix functions now work with CoglMatrix types
2474 [Cogl] Fixes automatic handling of the GL blend enable state.
2475 [cogl-material] Always glBindTexture when flushing material state
2476 [Cogl] Remove a debugging assert that was triggering on false positives
2477 [test-vertex-buffer-contiguous] Improves the texturing test
2478 [cogl-matrix] Adds padding to CoglMatrix
2479 [cogl-matrix] Documents that CoglMatrix members should be considered read only
2480 Removes need for casting (const float •) to (GLfloat *) in _cogl_set_clip_planes
2482 Avoid casting CoglMatrix to a GLfloat • when calling glGetFloatv
2483 Explicitly make the modelview-matrix current in cogl_{rotate,transform,etc}
2484 Use Cogl enum when making modelview-matrix current in cogl_{rotate,transform,etc}
2485 Finish GLES{1,2} support for client side matrix stacks
2486 Maintain the Cogl assumption that the modelview matrix is normally current
2487 Merge branch 'cogl-client-matrix-stacks'
2488 [cogl-vertex-buffer] Add a flush of attribute changes in the •_draw() functions
2489 [cogl-vertex-buffer] Allow querying back the number of vertices a buffer represents
2490 [cogl-vertex-buffer] fix cogl_vertex_buffer_draw_elements prototype
2491 [tests] Adds an interactive cogl vertex buffer unit test
2492 [cogl] Don't endlessly print the same warning regarding layer fallbacks
2494 Robert Staudinger (1):
2495 [build] Add cogl.h to the built sources list
2498 Bug 1434 - _NET_WM_NAME not set before realize
2501 Fixed handling of enter and leave events in clutter_x11_handle_event()
2502 Fix clutter_x11_texture_pixmap_get/set_property() following change of PROP_WINDOW type
2503 [x11] Only update cached last event time if we have a real timestamp.
2506 Added a mutex for clutter asynchronous textures threads.
2507 Bail early in clutter_texture_paint if opacity == 0
2508 Add a warning for recursive emit_event
2509 Change the default size of thread pool from 3 to 1
2510 [tests] Added test-texture-async
2511 [clutter-texture] add option to not block on size for loaded images
2512 [clutter-texture] remove load-size-async property
2513 Merge commit 'origin/async-texture-thread-pool' into async-size
2514 [clutter-texture] updated documentation.
2515 [clutter-texture] fixed gtk-doc formatting, and init threads in test.
2516 Merge branch 'async-texture-thread-pool'
2518 Clutter 0.9.0 (30/01/2009)
2519 ===============================================================================
2521 • List of changes between 0.8.6 and 0.9.0
2523 » ClutterText is a new actor allowing text display, text editing
2524 both in multi-line and single-line modes, and text selection using
2525 the pointer devices and the keyboard. ClutterText supercedes both
2526 ClutterLabel and ClutterEntry.
2527 » ClutterClone is a new actor that allows cloning of other actors,
2528 both simple and composite. ClutterClone supercedes ClutterCloneTexture.
2529 » ClutterBindingPool is a new API that allows to easily add key bindings
2531 » ClutterAnimation is a new API for implicit animations, similar to
2532 the tweening API used in toolkits like jQuery, Tween and Flash. This
2533 new API supercedes the ClutterEffect API.
2534 » ClutterAlpha uses "animation modes" instead of raw function
2535 pointers; it is still possible to pass alpha functions. The alpha
2536 functions provided by Clutter have been removed from the public
2537 API. It is possible to register global alpha functions and use
2538 them though a logical id.
2539 » The interval of the ClutterAlpha:alpha property has been changed
2540 to a floating point value in the [ -1.0, 2.0 ] range; this allowed
2541 the addition of "overshooting" easing modes.
2542 » COGL now supports backface culling.
2543 » The COGL-based Pango renderer is public API and it is accessible
2544 to developers. It is also possible to access the PangoContext used
2545 by Clutter in order to create PangoLayouts to render text.
2546 » The ClutterFixed API has been moved to COGL.
2547 » COGL does not depend on Clutter data types anymore.
2548 » The ClutterMedia interface has been overhauled: implementations
2549 now must only override the interface properties. The ranges of
2550 some properties have been changed to normalized values.
2551 » COGL now exposes only floating point entry points, and reserves
2552 the eventual conversion to fixed point only when needed. The
2553 fixed point type and macros are publicly available for developers
2554 concerned about floating point operations.
2555 » COGL has a new Vertex Attribues API that allows submitting an
2556 extensible number of vertex attributes to OpenGL in a way that
2557 does not require format conversions and allows fast re-use.
2558 » COGL has a new Material API that decouples paths from fills; it
2559 is possible to create an arbitrary path and fill it with a COGL
2560 texture. The Material API also allows setting multiple texture
2561 layers and defining the blend modes and colors.
2562 » ClutterTexture has the ability to use a worker thread to asynchronously
2563 load an image from a file, as long as the GLib threading support has
2564 been enabled prior to calling clutter_init().
2565 » Clutter now supports localization of the help output, and it
2566 also supports globally setting the text direction for non left to
2568 » ClutterCairoTexture is a new actor that allows using Cairo
2569 to draw on a ClutterTexture; since Cairo does not have an OpenGL
2570 backend, the drawing is not hardware accelerated.
2571 » Clutter has a unit testing suite, based on the GLib unit test
2572 framework, which can be used to track regressions.
2573 » A ClutterPath object has been added, and it is used by the
2574 BehaviourPath. The Path object allows defining paths using a set
2575 of coordinates and operations. A Path can be "painted" either using
2576 COGL primitives or using Cairo primitives, allowing an easier way
2577 to paint non-rectangular shaped actors.
2578 » ClutterInterval is a simple object, used by ClutterAnimation, that
2579 describes an interval between two values, and interpolates between
2580 the initial and final values of the interval.
2582 • List of bugs fixed since 0.8.6
2584 » #835 - Optimize clutter_actor_real_pick()
2585 » #851 - setting anchor point causes picking problem
2586 » #883 - Outstanding COGL merge issues
2587 » #1003 - Add clutter_actor_take_key_focus
2588 » #1014 - Clutter Animation API Improvements.
2589 » #1049 - Clutter doesn't support most GLSL uniforms
2590 » #1051 - WebKit/Clutter product/component?
2591 » #1058 - Build clutter-box2d with Clutter 0.8
2592 » #1066 - Clipping regression in 0.8
2593 » #1086 - virtualize stage_queue_redraw
2594 » #1105 - low level access to PangoClutter
2595 » #1106 - ClutterText instead of ClutterLabel and ClutterEntry
2596 » #1108 - Enter/Leave events logics wrt. skipped motion events
2597 » #1109 - clutter-0.8.0 fails to compile
2598 » #1123 - Crash when FBO actor is used and the stage is MINIMIZED
2599 » #1144 - Provide an option to load images asynchronously in ClutterTexture
2600 » #1162 - Add unit testing for Clutter
2602 » #1172 - Disjoint paths and clip to path
2603 » #1189 - Backface culling
2604 » #1209 - Move fixed point API in COGL
2605 » #1210 - Add CoglColor API
2606 » #1211 - Drop ClutterFeatureFlags usage from COGL
2607 » #1212 - Allow only a single include file for Clutter
2608 » #1215 - Move the Pango renderer to the public API
2609 » #1219 - Clean up cogl.h
2610 » #1231 - Build fails in gles flavour in revision 3442
2611 » #1233 - CLUTTER_ALPHA_SINE_INC is broken in trunk
2612 » #1251 - Merge the Cairo texture actor in core
2613 » #1252 - Merge ClutterBehaviourPath and ClutterBehaviourBspline
2614 » #1261 - [patch] Minimize differences between gl/cogl-texture.c and
2616 » #1269 - mingw32 building failed at clutter-media.c
2617 » #1270 - Update to mingw-cross-compile.sh
2618 » #1271 - mingw compiling failed: undefined reference to
2619 `_glDrawRangeElements@24'
2620 » #1284 - Return something reasonable from clutter_x11_handle_event()
2621 » #1300 - clutter_score_remove and clutter_score_remove_all are different
2623 » #1310 - font rendering problem
2624 » #1313 - Fix computation of camera distance
2625 » #1314 - clutter_sinx() is more inaccurate than it needs to be
2626 » #1321 - Get Matrix in float
2627 » #1323 - ClutterBehaviorDepth conflicts with other behaviors
2628 » #1325 - ClutterPath to cairo_path_t conversion functions
2629 » #1330 - We should not queue redraw for non-visible actors
2630 » #1334 - Default value for ClutterLabel::text should be "" instead of NULL
2631 » #1344 - clutter_actor_transform_stage_point gives invalid coordinates
2633 » #1352 - Weird cogl-pango.h includes in clutter-[entry|label].c
2634 » #1354 - Floating point exception when set fps>1000 and start timeline
2635 » #1361 - Unused ClutterStage::get_resolution() methods
2636 » #1365 - ClutterEntry doesn't get the cursor when it should
2637 » #1366 - disable-npots fails to build on mac
2638 » #1380 - Return booleans from CLUTTER_ACTOR_IS_• macros
2639 » #1386 - Wrong clipping dimensions for larger actors
2640 » #1387 - Clarify new-frame signal emission with advance()
2641 » #1388 - Clarify signal emission for advance_to_marker()
2642 » #1395 - behaviour_apply and behaviour_get_nth_actor are opposite on
2644 » #1397 - clutter command line is not localized.
2645 » #1402 - Change default tile-waste from 64 to 63
2646 » #1403 - ClutterMedia::get_uri() should return allocated string
2647 » #1404 - ClutterMedia issues
2648 » #1405 - Fix properties that have X11 types to be 'long'
2649 » #1409 - Use G_SIGNAL_RUN_LAST with ::queue-redraw signal
2650 » #1410 - [patch] Implements a generic ClutterActorClone class without fbos
2651 » #1414 - avoid relayout of ClutterTexture if not syncing size
2652 » #1415 - short-circuit setting same clip again
2654 Clutter 0.8.2 (25/09/2008)
2655 ===============================================================================
2657 • List of changes between 0.8.0 and 0.8.2
2659 » Add constructor-only properties for the :container and :actor
2660 properties of ClutterChildMeta
2661 » Resync the Clutter keysyms with X.org ones.
2662 » Documentation fixes and improvements
2663 » Allow defining ClutterColor as an object or an array inside
2664 ClutterScript UI definitions
2665 » Added the missing :perspective property to ClutterStage
2666 » Fixed the upper and lower boundaries for ClutterUnit and
2667 ClutterFixed properties
2668 » Fix a bug that prevented disabling sorting on ClutterModel
2669 » Fix a bug in clutter_timeline_list_markers()
2670 » Queue a redraw when the clip is changed
2671 » Optimize calls to push and pop the matrix when painting
2672 » Add a variable to the pkgconfig file for extracting the
2673 COGL backend, for configure-time checks
2674 » Fix a typo in cogl_path_rel_curve_to()
2675 » Fix showing the cursor after it being hidden once
2676 » Add a function for obtaining Clutter's option group without
2677 initializing Clutter
2679 • List of bugs fixed since 0.8.0
2681 » #856 - Teardown sequence is borked
2682 » #945 - Clipping+fbo cloning bugs
2683 » #1010 - ClutterLabel does not update the layout (again)
2684 » #1020 - TFP resyncing on MapNotify/ConfigureNotify [Andy Wingo]
2685 » #1033 - Manually parsing command line options prevents
2686 initializing clutter
2687 » #1034 - Picking doesn't work on Eee PC
2688 » #1038 - Clutter 0.8 won't build due to redefined functions
2689 » #1044 - cogl_get_viewport error
2690 » #1047 - API documentation from release tarball is not
2691 installed by "make install" [Mirco Müller]
2692 » #1048 - SIGFPE in cogl_texture_set_region() with
2693 nvidia [Gwenole Beauchesne]
2694 » #1062 - clutter_actor_query_coords() replacement in
2695 0.8 [Gwenole Beauchesne]
2696 » #1069 - Warnings with ClutterScore
2697 » #1071 - clutter_timeline_get_duration doesn't always work
2698 » #1075 - Difficult to bind clutter_stage_new
2699 » #1080 - clutter_stage_read_pixels has upside-down y coordinate
2700 » #1082 - Texture bitmap is destroyed in wrong way
2701 » #1085 - Cursor is in wrong position on ClutterEntry if set
2703 » #1090 - Label somtimes returns natural_width < min_width [Johan Bilien]
2704 » #1091 - WM_MOUSEWHEEL (scroll-event) not handled
2705 correctly [Roman Yazmin]
2706 » #1099 - No ClutterScript API to get a list of IDs in a given
2708 » #1100 - WM_SIZE not handled correctly, user_resize and
2709 window_style correction
2710 » #1103 - Two typos in clutter documentation
2711 » #1121 - Setting anchor point doesn't work if set too early
2712 » #1124 - Clutter causes an additional size request in each
2713 allocation [Johan Bilien]
2714 » #1125 - Save an extra pango_layout_get_size in many
2715 cases [Johan Bilien]
2716 » #1130 - CLUTTER_MOTION is not emitted when time goes
2717 backwards. [Pierce Liu]
2718 » #1137 - Setting the anchor point does not trigger a re-paint
2719 » #1145 - Flicker on resize the window
2720 » #1154 - clutter_timeout_pool_new() documentation doesn't say
2721 how to free [Murray Cumming]
2723 Clutter 0.8.0 (10/07/2008)
2724 ===============================================================================
2726 • List of changes between 0.7.6 and 0.8.0
2728 » Assume that non-power-of-two sized textures are always supported
2729 if texture-from-pixmap support is present.
2731 » Increase documentation coverage.
2733 » Disable the XINPUT support by default.
2735 » Improve the behaviour of clutter_actor_get_transformed_size().
2737 » Fix a copy-and-paste bug which broke the vertex shaders.
2739 • List of bugs fixed since 0.7.6
2741 » #983 - cogl-bitmap-fallback.c compiler error/warning due to cast issue
2742 » #985 - MSC math.h / M_PI issue
2743 » #998 - clutter always captures X input events
2744 » #1000 - clutter-x11 should define gtypes for its enumerations
2745 » #1004 - Fix "edge-detect" shader
2746 » #1007 - Fix TFP fallback mechanism
2747 » #1008 - tfp still a bit borked
2748 » #1010 - ClutterLabel does not update the layout
2749 » #1011 - Fix TFP fallback mechanism (take 2)
2750 » #1012 - clutter_stage_read_pixels() has incorrect alpha data
2751 on some (most?) cards"
2752 » #1013 - Per device grabs are not obeyed in pointer device propagation.
2753 » #1015 - Cloning unparented actors with FBOs doesn't work with new
2755 » #1016 - Changing window-redirect-automatic property after creating
2756 ClutterX11TexturePixmap doesn't work
2757 » #1019 - clutter-frame-source.h not included by clutter.h
2758 » #1022 - extern inline functions in clutter-fixed.h
2759 » #1033 - Manually parsing command line options prevents initializing
2762 Clutter 0.7.6 (27/06/2008)
2763 ===============================================================================
2765 • List of changes between 0.7.4 and 0.7.6
2767 » Removed the ClutterBackend::get_display_size() and wrappers.
2769 » Verify that the vertex shaders are successfully compiled when binding
2772 » Increase safety of the ClutterGLXTexturePixmap
2774 • List of bugs fixed since 0.7.4
2776 » #993 - Underline colors are sometimes wrong
2778 Clutter 0.7.4 (25/06/2008), "Killer Koi"
2779 ===============================================================================
2781 • List of changes between 0.7.2 and 0.7.4
2783 » Fix the ClutterEntry actor after the clip API changes in COGL.
2785 » Update the shaders generated for GLES 2.0.
2787 » Add the ability to add search paths and look up files from
2788 ClutterScript. This allows defining directories to store the
2789 images to be loaded by a ClutterTexture.
2791 » Fix the GLES 1.1 support.
2793 » Warn if no usable pointer device are available on X11 backends.
2795 » Improve the request for the best pixel format on win32.
2797 » Fix a regression when sizing the ClutterStage on backends that
2798 only support fixed size stages; now setting any size will result
2799 in Clutter ignoring the request, like it happened in Clutter 0.6.
2801 » Add a method to ClutterBackend to retrieve the display size.
2803 » Fix clutter_sinx() for angles > CFX_2PI - CFX_ONE.
2805 • List of bugs fixed
2807 » #833 - ClutterEntry should clip glyphs rather than itself
2808 » #858 - Support for multiple devices (using XINPUT)
2809 » #879 - sampler2DRect used by test-shader.c doen't work with non-rect textures
2810 » #979 - Wrong call convension for SwapIntervalProc in win32 backend
2811 » #987 - clutter-event.c c99 variable declaration
2812 » #988 - cursor position wrong with multibyte invisible char
2813 » #989 - Add a search path for clutter script assets
2815 Clutter 0.7.2 (23/06/2008), "Kedoke"
2816 ===============================================================================
2818 • List of changes between 0.7.0 and 0.7.2
2820 » ClutterTexture has a new :keep-aspect-ratio property; when it is set
2821 to TRUE the texture will return a preferred width maintaining the
2822 aspect ratio with the given height and a preferred height maintaining
2823 the aspect ratio with the given width. This allows to set the width or
2824 the height and have the texture automatically request the height or the
2825 width respectively while maintaining the aspect ratio of the original
2828 » Added XINPUT support on the X11 backends; this provides an initial
2829 support for multiple input devices. The API is X11-specific, and
2830 provides support for querying at run-time support for XINPUT, for
2831 getting a list of input devices and for getting the type of each
2834 » The 'fruity' backend also features multiple device support.
2836 • List of bugs fixed
2838 » #816 - clutter_actor_request_coords() should take a const box.
2839 » #836 - Optimize clutter_label_query_coords()
2840 » #905 - Paint cursor directly
2841 » #918 - Group doesn't clip if it's children are clipped
2842 » #953 - Actors are not hidden before unrealized or disposed
2843 » #960 - PangoContext creation code should not be duplicated
2844 » #970 - clutter_actor_get_paint_area confusion
2845 » #971 - Minor ClutterActor cleanups
2846 » #972 - Better parenting
2847 » #973 - unreffing ClutterScore may segfault
2848 » #981 - clutter_stage_read_pixels temprow fix
2849 » #982 - __COGL_GET_CONTEXT MS compiler issue
2850 » #984 - pango_clutter_render_layout() declared void
2852 Clutter 0.7.0 (13/06/2008), "Booska"
2853 ===============================================================================
2855 • List of changes between 0.6 and 0.7.0
2857 » COGL, the underlying GL abstraction layer in Clutter, has been
2858 completely rewritten from the ground up. Its no longer a conceptual
2859 hack but a documented, fully featured library pretty much in its
2860 own right. COGL abstracts over Open GL, Open GL ES 1.1 and now
2861 OpenGL ES 2.0, providing a smart uniform API over these libraries
2862 with various utility features such as texture tiling abstractions,
2863 paths and primitive rendering, FBO, shaders, etc.
2865 » Clutter now provides an experimental backend for the Apple(tm)
2866 iPhone and iPod Touch families of products.
2868 » The Windows platform is now natively supported instead of
2869 relying on the SDL libraries. The win32 backend is still
2872 » The X11 based backends now feature support for Actors that wrap
2873 external X drawables (i.e the texture-from-pixmap extension and
2876 » Clutter now seamlessly supports multiple stages on the backends
2877 that allow this feature.
2879 » The custom Pango renderer has been completely rewritten, now using
2880 the more modern and maintained PangoCairo (instead of FT2), and avoids
2881 nasty subclassing hacks, supports smooth fast scaling of text, has
2882 many edge case issues fixed and it still is very efficient (using
2883 a texture glyph cache). It is even a little bit faster.
2885 » Better texture support, timeline improvements, ClutterLabel and
2886 ClutterEntry improvements, and container child properties are among
2887 the new features - too many to fit in the NEWS file.
2891 » #358 - "window resizing doesn't show scaled stage"
2892 » #425 - "COGL enhancements"
2893 » #439 - "timing related pong lockup due to timeline_rewind somtimes
2894 being ignored by timeline_timeout_func"
2895 » #450 - "ClutterScore API enhancements"
2896 » #641 - "add markers to timelines"
2897 » #666 - "Large font size leads to missing ""W"" and wrong ""J"" character"
2898 » #713 - "texture from pixmap"
2899 » #791 - "default actors to visible"
2900 » #800 - "CLUTTER_ALPHA_EXP_INC overflows"
2901 » #804 - "clutter_actor_get_opacity returns composited alpha"
2902 » #810 - "100 % CPU load with clutter_main()"
2903 » #815 - "Split up request
2904 » #816 - "clutter_actor_request_coords() should take a const box."
2905 » #822 - "Fix clutter_actor_lower()"
2906 » #823 - "Clean-up GLism's in clutter-core (below cogl)"
2907 » #824 - "ClutterEntry should handle its own key events"
2908 » #825 - "Removes GLisms from clutter-main.c"
2909 » #831 - "configure.ac missing osx flavour help"
2910 » #834 - "add ability to set anchor in json"
2911 » #836 - "Optimize clutter_label_query_coords()"
2912 » #839 - "Crash if put cursor over topmost pixel"
2913 » #840 - "Implement prepare-paint and finish-paint signals."
2914 » #848 - "Events dispatch doesn't work in GLX Xephyr"
2915 » #850 - "Impossible to set ClutterRectangle border opacity to a value
2916 different from the surface opacity"
2917 » #857 - "cogl_color doesn't work in PowerVR PC Viewer"
2918 » #860 - "ClutterAlpha leaks"
2919 » #864 - "Allow instantiating and subclassing of ClutterStage"
2920 » #871 - "Two problems with closing stages"
2921 » #873 - "clutter_x11/glx_texture_pixmap issues"
2922 » #874 - "Clipping on GL ES"
2923 » #875 - "Clutter Label Issues"
2924 » #881 - "Timelines require precise system timing"
2925 » #882 - "Allow child properties for containers implementing the
2926 ClutterContainer interface"
2927 » #884 - "Add clutter_alpha_set_closure"
2928 » #889 - "Error when building clutter-ivan with eglx"
2929 » #891 - "assertion failed when test-behave exits"
2930 » #892 - "Incorrect results using rotation-[center|angle] properties"
2931 » #894 - "Artifacts with the pango renderer"
2932 » #900 - "clutter_actor_lower() and friends do not queue redraw"
2933 » #906 - "Implement timing of the events"
2934 » #908 - "Support transform from G_TYPE_INT to ClutterUnit"
2935 » #909 - "OSX: missing NULL pointer handling"
2936 » #910 - "OSX: missing memory pool"
2937 » #911 - "OSX: add multistage support"
2938 » #912 - "Invalid use of int• as parameter for glGetIntegerv"
2939 » #913 - "cogl fails to build on OSX"
2940 » #914 - "ClutterEntry is confused about characters vs. bytes"
2941 » #915 - "clutter_entry_set_max_length(-1) misbehaves"
2942 » #916 - "ClutterKeyEvent:unicode_value is ignored"
2943 » #919 - "Replacement pango renderer"
2944 » #927 - "Created ports for clutter
2945 » #928 - "Reparenting a child that itself is a container doesn't work"
2946 » #930 - "add support for quartz imagebackend"
2947 » #931 - "suspicious size allocation for pixel data"
2948 » #933 - ""X Error of failed request" when attempting to call
2949 clutter_actor_request_coords()"
2950 » #934 - "Update clutter-tutorial to build with clutter from svn trunk."
2951 » #947 - "Destroying a stage is messy"
2952 » #948 - "Remove texture rectangle support"
2953 » #950 - "AltGr not handled"
2954 » #951 - "Fix clutter_entry_init() in trunk"
2955 » #952 - "Fix test-textures in trunk"
2956 » #953 - "Actors are not hidden before unrealized or disposed"
2957 » #955 - "ClutterLabel is missing fallback resolution handling"
2958 » #959 - "Multiple minor improvements"
2959 » #960 - "PangoContext creation code should not be duplicated"
2960 » #961 - "Fails to build on OSX (query/request_coords is gone)"
2961 » #964 - """unrealized"" signal of ClutterActor wrongly named"
2963 Clutter 0.6.0 (18/02/2008)
2964 ==========================
2966 • List of changes between 0.5.6 and 0.6.0
2968 » New documentation sections inside the API reference, describing
2969 the animation framework.
2971 » New API in ClutterActor for computing the actor's vertices in
2972 the plane of a given ancestor and accessors to query whether an
2973 actor is scaled or rotated
2977 » #613 - Extend point transformation API
2978 » #779 - Rounding error in ClutterBehaviourScale [Havoc Pennington]
2979 » #787 - tiled textures are broken
2980 » #796 - segmentation fault when setting label text
2982 Clutter 0.5.6 (11/02/2008)
2983 ==========================
2985 • List of changes between 0.5.4 and 0.5.6
2987 » Reverted a last minute change in the depth sorting function of
2990 » Added the clutter_actor_move_anchor_point() family of functions,
2991 which will set the anchor point at the given coordinates while
2992 adjusting the actor postion so that the relative position of the
2993 actor toward its parent remains the same.
2995 » Provide a fallback for finding the Clutter alpha functions inside
2996 a UI definition for ClutterScript in case g_module_open() fails.
2998 » Add initial Frame Buffer Objects support in ClutterTexture; using
2999 FBOs, where supported by the hardware and drivers, it's possible to
3000 create a ClutterTexture from any actor.
3002 • List of bugs fixed
3004 » #386 - Stage is white unless a timeline is present
3005 » #439 - timing related pong lockup due to timeline rewind...
3006 » #440 - 1 pixel line flickering
3007 » #442 - Shader support
3008 » #451 - Improve font rendering quality (Pango)
3009 » #452 - Textures are shown with distortion on Solaris/SPARC
3010 » #526 - OSX backend
3011 » #533 - Clutter stage is not shown under some conditions
3012 » #540 - ClutterStage isn't always respecting requests to change size
3013 » #549 - Backend offscreen API is broken
3014 » #613 - Extend point transformation API
3015 » #635 - Fix buffer overflow in clutter_texture_get_pixbuf() [Gwenole
3017 » #643 - Superfluous "filter-quality" setting in texture_upload_data()?
3018 [Gwenole Beauchesne]
3019 » #689 - Rotating actor through layers does not handle opacity
3020 correctly [Josh Stewart]
3021 » #710 - Make "box-blur" test shader work in some way [Gwenole Beauchesne]
3022 » #719 - X11 backend does not check window field in events [Havoc
3024 » #724 - ClutterLabel reports wrong height when lines > 1
3025 » #749 - "reactive" property does not change
3026 » #751 - missing XSync in clutter-event-x11.c:xembed_set_info() [Havoc
3028 » #756 - clutter_actor_get_abs_size returns bogus values
3029 » #769 - OSX backend fails to build
3030 » #770 - OSX: passing incompatible pointer type
3032 Clutter 0.5.4 (25/01/2008)
3033 ==========================
3035 • List of changes between 0.5.2 and 0.5.4
3037 » A clutter-x11-<major>.<minor> pkg-config file is installed along
3038 with the clutter-<major>.<minor> and clutter-<backend>-<major>.<minor>
3039 ones, for libraries and applications depending on the X11-based
3040 backends (GLX and EGLX).
3042 » Textures are correctly unrealized before changing and freeing the
3045 » It is now possible to block the automatic call to clutter_main_quit()
3046 when closing the stage window using the frame controls by connecting
3047 an handler for the ::event signal on the Clutter stage and checking
3048 for the CLUTTER_DELETE event type and returning TRUE. This allows
3049 the usage of other main loops with GLib reactors (like Python's twisted)
3050 with Clutter without triggering assertions by closing the stage window.
3052 • List of bugs fixed
3054 » #564 - Add more precise clutter_qdivx() [Gwenole Beauchesne]
3055 » #614 - ClutterActor API inconsistencies
3056 » #640 - ClutterTexture unrealized with no GL context
3057 » #654 - Under heavy load clutter sometimes drops the last frame of
3058 a timeline [Johan Bilien]
3059 » #672 - Event handling in osx backend is broken [Tommi Komulainen]
3060 » #684 - Improve test-scale by also using anchor point [Jaap A. Haitsma]
3061 » #695 - clutter-shader: Invalid format string for
3062 gssize [Tommi Komulainen]
3063 » #696 - cogl_get_proc_address requires GLX [Tommi Komulainen]
3064 » #709 - clutter_effect_scale inconsistent with clutter_actor_set_scale
3065 » #714 - clutter_event_copy for enter/leave event generates
3066 extra unref [Neil Roberts]
3067 » #715 - Type errors in test-shader
3068 » #720 - BehaviourScale not working in python after recent
3069 API change [Josh Stewart]
3071 Clutter 0.5.2 (14/01/2008)
3072 ==========================
3074 • List of changes between 0.5.0 and 0.5.2
3076 » ClutterModelDefault has been renamed to ClutterListModel
3078 » ClutterModel now has vector-based variants for append, prepend and
3079 insert methods; these methods are useful for bindings
3081 » Add units-based variant for clutter_actor_move_by()
3083 • List of bugs fixed
3085 » #694 - Handle GLhandleARB on OS X [Tommi Komulainen]
3086 » #700 - Fix for clutter_effect_rotate() [Neil Roberts]
3088 Clutter 0.5.0 (02/01/2008)
3089 ==========================
3091 • List of changes between 0.4.2 and 0.5.0
3093 » New event handling system: every actor with the CLUTTER_ACTOR_REACTIVE
3094 flag set will receive events from the underlying backend; the event
3095 propagation chain will be walked in two directions (from the actor to
3096 the top-level container and back) with the ability to block it in
3099 » ClutterShader, an abstraction over the programmable OpenGL pipeline.
3101 » ClutterScore, an object for controlling timelines; using a score
3102 instance is possible to start multiple timelines at once, or start
3103 a timeline after another has emitted the ::complete signal.
3105 » ClutterScript, an object for parsing a scene from an external file or
3106 a buffer; the scene is described using JSON (JavaScript Object Notation):
3107 every object is defined using its class and properties, and container
3108 objects can have their children defined as well. It is also possible
3109 do describe top-level objects such as timelines and behaviours, and to
3110 automatically connect signal handlers to signal names.
3112 » ClutterTimelines duration can now be set in milliseconds using the
3113 :duration property; the default framerate will be used to compute the
3114 actual duration in frames. The default framerate will be set by the
3115 backend, and can be overridden by the application.
3117 » ClutterTimelines direction can now be set using the :direction
3118 property; a timeline can be set to proceed forward or backward,
3119 and the direction can also be change while the timeline is still
3122 » New, experimental OSX backend.
3124 » Build environment for MS VisualStudio 2005.
3126 » ClutterModel, a generic list-based model object that can be used to
3127 implement actors following the Model-Viewer-Controller design pattern.
3128 Clutter provides a default implementation of ClutterModel, called
3129 ClutterModelDefault and using the GSequence data structure from GLib
3130 to optimize insertion and look up.
3132 » Add the ability to grab pointer and keyboard events: if an actor
3133 is set to have a grab it'll be the only one receiving events until
3134 it releases the grab.
3136 » Add the ability for an actor to receive the key focus; an actor
3137 with key focus will always receive the key events, even if it did
3138 not acquire the keyboard grab.
3140 » It is now possible to set the GL "fog" (also known as "depth cueing")
3141 effect on the ClutterStage; if the fog is enabled, actors farther
3142 away from the view point will fade into the stage background color.
3144 » Each actor now has an "anchor point", a point defined in the actor's
3145 coordinate space that will be used as the origin when scaling and
3146 rotation transformations.
3148 » Every pixel-based API has been doubled with a corresponding
3149 ClutterUnits-based function (postfixed with a '-u'), for instance:
3151 clutter_actor_set_position() - clutter_actor_set_positionu()
3152 clutter_actor_set_size() - clutter_actor_set_sizeu()
3153 clutter_actor_set_depth() - clutter_actor_set_depthu()
3155 This allows sub-pixel precision and device independence.
3157 » The ClutterLabel actor now tries very hard to provide a sane
3158 default size, if no bounding box has been requested; this fixes
3159 the :alignment property and allows the addition of the :justify
3162 » The SDL backend can now be compiled under win32 with MingW; this
3163 backend is still marked as experimental.
3165 » The OSX backend allows the compilation of Clutter under OS X; this
3166 backend is experimental.
3168 • List of bugs fixed
3170 » #423 - All actors should emit events rather than just the stage
3171 » #424 - Interface definition files
3172 » #443 - ClutterModel implementation
3173 » #480 - Uninitialized variable in
3174 path_alpha_to_position() [Gwenole Beauchesne]
3175 » #511 - clutter_stage_get_actor_at_pos problem
3176 » #512 - clutter window moves when stage actor is scaled
3177 » #518 - XEMBED not supported in eglx backend
3178 » #519 - Should have an Atom cache initialized on start up
3179 » #520 - Delete after multibyte unicode chars in
3180 ClutterEntry [Tommi Komulainen]
3181 » #522 - Array out of bounds indexing [Tommi Komulainen]
3182 » #523 - cogl portability fixes [Tommi Komulainen]
3183 » #524 - missing config.h includes [Tommi Komulainen]
3184 » #525 - Redundant include in cogl/gl [Tommi Komulainen]
3185 » #531 - Extraneous "new-frame" signal generated
3186 » #532 - clutter_actor_set_scale_with_gravityx()
3187 precision [Gwenole Beauchesne]
3188 » #544 - clutter_color_to_hlsx is broken [Neil Roberts]
3189 » #546 - ClutterStageState doesn't make sense
3190 » #550 - Wanted: Set Actor's position based on center or other
3191 edges/corners of quadrangle
3192 » #557 - ClutterScript should support complex properties for third
3194 » #558 - Unmerge UI definitions
3195 » #566 - ClutterEntry does not scroll the text to the
3196 right [Gwenole Beauchesne]
3197 » #577 - Inconsistent naming of behaviour properties
3198 » #580 - Fix call to cogl_enable() [Gwenole Beauchesne]
3199 » #582 - api naming inconsistence between
3200 clutter_behaviour_path_append_knots and
3201 clutter_behaviour_bspline_append
3202 » #584 - Typo on clutter_effect_rotate_x documentation page
3203 » #592 - Fix build on trunk [Gwenole Beauchesne]
3204 » #596 - ClutterTexture tileing logic is a little borked
3205 » #597 - ClutterGroups not pickable
3206 » #600 - fix ClutterLabel layout computing when no box has been set
3207 » #604 - Color param for Label constructor should be
3208 const [Jonathon Jongsma]
3209 » #606 - enable depth test in GL
3210 » #608 - Control motion events frequency
3211 » #614 - ClutterActor API inconsistencies
3212 » #616 - ClutterTexture doesn't respect width set from clutterscript
3213 » #617 - ClutterEffect Improvements
3214 » #618 - ClutterScript name/id confusion
3215 » #619 - clutter_behavior_rotate angle properties should accept
3217 » #628 - clutter_actor_rotate_x() is a setter, not a modifier
3218 » #629 - There is no clutter_actor_get_position()
3219 » #634 - clutter_behaviour_path_new() documentation unclear
3220 » #637 - add depth cueing support to the stage
3221 » #645 - Fix crash in clutter_label_new_full() [Gwenole Beauchesne]
3222 » #647 - Cannot hide the stage
3223 » #648 - Hidden fullscreen stage doesn't come back as fullscreen
3224 » #652 - reference needed on actor being source of last motion_event
3225 » #661 - clutter_actor_set_width() documentation is vague
3226 » #662 - clutter_actor_set_opacity() documentation doesn't describe values
3227 » #665 - ClutterBehaviourEllipse tilts are broken
3228 » #670 - Fix clutter_container_lower_child() [Gwenole Beauchesne]
3229 » #673 - ClutterActor "captured-events" signal documentation wrong
3230 » #674 - ClutterActor::get_depth() and set_depth() vfuncs not
3231 used [Murray Cumming]
3232 » #675 - update subregions of cluttertextures
3233 » #678 - ClutterLabel size allocation still bogus
3235 Clutter 0.4.0 (07/08/2007)
3236 ========================
3238 • List of changes between 0.3.1 and 0.4.0
3240 » Many documentation additions and improvements.
3242 » Display DPI now honours on backends its can be queried.
3244 » Various big endian related fixes.
3246 » ClutterBehaviourEllipse and ClutterBehaviourRotate API and
3247 internals improvements.
3249 » Add basic tslib support to eglnative backend (for touchscreen events)
3251 » clutter_stage_get_actor_at_pos should now work on 16bpp displays.
3253 » New ClutterEffect rotation calls.
3255 » Allowing user resizing of the stage now optional.
3256 (implemented by glx backend only currently)
3258 » ClutterEntry UTF8 fixes and improved automatic initial sizing.
3260 » Make ClutterActor GInitiallyUnowned.
3262 » New ClutterBox API: each box has now a colour and a margin (distance
3263 between the inner-border and the children); plus, each packed child
3264 has a padding. Margins and paddings are expressed in ClutterUnits,
3265 to ease the transition to the device independent units. You can use
3266 clutter_box_set_default_padding() if you want the same padding for
3270 » #390 - clutter_stage_get_actor_at_pos broken on 16bpp displays.
3271 » #398 - inconsistent type for return value of clutter_event_get_state
3272 » #403 - Critical error when removing texture actor
3273 » #404 - Solaris build error with OpenGL, missing
3274 GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB and GL_TEXTURE_RECTANGLE_ARB
3275 » #409 - depth mismatch between visual (32) and window (24)
3276 » #407 - metadata-available signal #ifdef'ed out
3277 » #413 - Clutter compile error with Sun Studio C compiler
3278 » #426 - typo in sdl_backend
3279 » #414 - ClutterEntry invisible if size not set
3280 » #434 - clutter_color_from_pixel incorrectly interprets alpha value
3281 » #435 - clutter_color_subtract does the opposite of its documentation
3282 » #436 - clutter-behaviour-depth always perform "from deep to shallow"
3284 Clutter 0.3.1 (06/07/2007)
3285 ========================
3287 • List of changes between 0.3 and 0.3.1
3288 » EGL. There are now 2 experimental EGL backends;
3289 - 'eglx', the former EGL on X11 implementation (now renamed)
3290 - 'eglnative', a new EGL 'native' backend which supporting non
3291 X11 EGL implementations (i.e framebuffer).
3293 » ClutterGroup now returns correct size when a child is removed.
3295 » Missing redhand.png added to distro tarball (fixing tests that require
3298 » Fix picking in ClutterBox
3300 » Rectangle border creation fixed.
3302 » Fix overflow in Exponential Alpha funcs.
3304 » Many API documentation fixes and improvements.
3306 » ClutterEffect cleanups.
3308 » ClutterEntry cleanups.
3310 » Check for versioned XFixes library (GLX backend).
3312 » More X error traps in GLX backend.
3314 Clutter 0.3 (29/06/2007)
3315 ========================
3317 • List of changes between 0.2.3 and 0.3
3318 » Clutter now supports both switchable windowing system and GL backends.
3319 Window systems supported include GLX, EGL and SDL.
3321 GL support includes OpenGL 1.2+ and OpenGL ES 1.1. This is
3322 provided by a small basic abstraction layer 'cogl.h'. Cogl is not
3323 yet documented - usage external to Clutter is not yet advised.
3325 Backends may provide specific command line options.
3331 The GLX backend is built by default and is currently the most
3332 developed, supported and featured windowing system backend. Only
3333 OpenGL is supported via GLX.
3337 Clutter has experimental support for using SDL. Open GL is supported as
3338 is OpenGL ES via Dogles (very experimental).
3342 Clutter has experimental support for using EGL. Only Open GL ES
3343 is supported by EGL.
3345 EGL support assumes an EGL implementation running atop X Windows.
3350 Clutter now has experimental support for Open GL ES.
3351 Current known issues;
3353 + Unrealising a ClutterTexture will not move pixel data from video
3354 into system memory but simply destroy it.
3355 + BGRA, YUV Texture data not currently supported.
3357 (Use the clutter_feature API to probe for above at runtime)
3359 Open Source ES implementations this has been tested against
3360 include `Vincent' and `dgles'. Support for commerical
3361 implementations may require modifications to the configure.ac
3364 vincent: http://ogl-es.sourceforge.net/
3365 (Also see: http://svn.o-hand.com/repos/misc/trunk/ogles/ )
3367 dgles: http://developer.hybrid.fi/dgles/index.html
3369 » New ClutterEffect class provides a simplified (and thus less flexible)
3370 API wrapping around behaviours, alphas and timelines.
3371 » New Behaviours - bspline, ellipsis, rotation.
3372 » New built in Alpha functions;
3373 CLUTTER_ALPHA_SINE_INC
3374 CLUTTER_ALPHA_SINE_DEC
3375 CLUTTER_ALPHA_SINE_HALF
3376 CLUTTER_ALPHA_SQUARE
3377 CLUTTER_ALPHA_SMOOTHSTEP_INC
3378 CLUTTER_ALPHA_SMOOTHSTEP_DEC
3379 CLUTTER_ALPHA_EXP_INC
3380 CLUTTER_ALPHA_EXP_DEC
3381 » New Actors and interfaces
3382 + ClutterLayout, for writing extended layout support in actors
3383 + ClutterContainer, for generic container actors
3384 + ClutterBox, ClutterVBox and ClutterHBox layout actors.
3385 + ClutterEntry, text entry actor
3386 » ClutterTexture now handles BGRA, YUV and premultiplied alpha data.
3387 » All internal math now fixed point based.
3388 » Clutter now has it own internal event queue.
3389 » ClutterStage new features;
3390 + Title property for naming in window decorations.
3391 + Perspective setting - The stages perspective can now be modified.
3392 » New Clutter_actor •project API calls allow for querying of tranformed
3393 actor vertices and points.
3394 » New Clutter Feature checks.
3395 » Initial ClutterUnit implementation for device independant positioning.
3396 • List of Bugs fixed
3397 » Various issues with very poor performance and Intel drivers.
3398 » #138 Fix typo in x rotation transform.
3400 Clutter 0.2.3 (2007-04-11)
3401 ==========================
3403 • List of changed between 0.2.2 and 0.2.3
3404 » Fixes to tile based textures and again clutter_texture_get_pixbuf(). [Matthew]
3405 » Implement Gravity for ClutterScaleBehaviour. [Matthew, Rob]
3407 Clutter 0.2.2 (2007-03-22)
3408 ==========================
3410 • List of changed between 0.2.1 and 0.2.2
3411 » Addition of basic XEMBED support for clutter stage. [Matthew]
3412 » Fixes to clutter_texture_get_pixbuf(). [Matthew]
3413 » Export clutter_group_remove_all and add associated fixes. [Matthew]
3415 Clutter 0.2.1 (2007-02-07)
3416 ==========================
3418 • List of changed between 0.2.0 and 0.2.1
3419 » Add even faster double to integer (and back) conversion
3421 » Fix some errors in the fixed point sine waveform
3423 » Use fixed point math in the Pango renderer. [Tomas]
3424 » Improve the GL version check. [Matthew]
3425 » Add a square waveform function. [Emmanuele]
3426 • List of bugs fixed
3427 » #215 - macro CLUTTER_MARK() not disabled for non-debug builds
3429 Clutter 0.2 (18-01-2007)
3430 ========================
3432 • List of changes between 0.2 and 0.1
3433 » Bindings, GStreamer and GTK+ dependencies moved out of tree:
3434 now Clutter strictly depends on Xlibs, OpenGL and GdkPixbuf only.
3435 » Actors now have an initial floating reference; this means you
3436 don't have to explicitely unref them: every memory an actor
3437 allocates will be freed when the group containing the actor will
3439 » Add basic run-time detection of GL features.
3440 + Use GL_TEXTURE_RECTANGLE_ARB if available.
3441 + Attempt to set up sync to vblank (set CLUTTER_VBLANK=none to disable)
3442 » Add API for behaviours. A ClutterBehaviour is an object which
3443 drives a set of actors using one or more properties depending
3444 on the value of an "alpha" function.
3445 + Provide simple behaviours: ClutterBehaviourOpacity,
3446 ClutterBehaviourPath and ClutterBehaviourScale.
3447 + Provide simple alpha functions for ramps and sine waveforms.
3448 » Add fixed point API for embedded platforms with no FPU.
3449 » Add support for command line switches to Clutter, like debug
3450 flags and abort on warnings; also allow application to hook up
3451 into the initialisation sequence to add their own command line
3453 » Add Pango GL renderer for Clutter, and use it to render text
3454 inside the ClutterLabel actor; this decrease texture memory
3456 » Redo Clutter Label widget, using the new Pango renderer.
3457 » Clutter Textures do not store local pixbuf copy (of texture).
3458 » Redo group and actor scale/sizing API and functionality.
3459 » Add memory management API for ClutterColor, and string parsing.
3461 » #199 - Little group handling fix?
3462 » #198 - Detect NPOT support on more systems
3463 » #197 - Tiled textures are broken
3464 » #196 - Rebuild the examples when the library changes
3465 » #156 - clutter_actor_set_position not using the absolute size
3466 » #155 - Don't test for XInitThreads [Bastien Nocera]
3467 » #154 - Key presses not working in super-oh example [Bastien Nocera]
3468 » #152 - Misc fixes [Bastien Nocera]
3469 » #143 - Faulty ref-counting in clutter_group_remove [Frederic Riss]
3470 » #141 - Copy-pasto in clutter_media_set_volume [Frederic Riss]
3471 » #101 - No package 'x11' found -- wrong configure [Tomasz Torcz]
3472 » #98 - Enabling trails in super-oh crashes
3474 Clutter 0.1 (22/06/2006)
3475 ========================
3477 • First 'official' release, expect bugs aplenty.
3479 » Hopefully enough functionality to build things.
3480 » Basic gstreamer 0.10 video playback support.
3481 » Fairly stable API, though in no way totally stable.
3482 Expect CHANGES in future versions.
3483 » Some simple examples ( also see OPT ).
3484 » An experimental GTK-Clutter widget.
3485 » Fairly complete Python bindings.
3486 » Non complete but hopefully useful API documentation.
3487 • If you want to help out see the TODO file.