Clutter 0.9.4 - developers snapshot

hi everyone;

Clutter 0.9.4 is now available for download at:

http://www.clutter-project.org/sources/clutter/0.9/

MD5 Checksums:

  912974d177f748b5dbf2b9c7fd39a57c  clutter-0.9.4.tar.gz
  f2bddf6ceabd7294996463a1e9637b3f  clutter-0.9.4.tar.bz2

Clutter is an open source software library for creating fast, visually rich and animated graphical user interfaces. Clutter is licensed under the terms of the GNU Lesser General Public License version 2.1.

Clutter currently requires:

  • GLib >= 2.16.0
  • Cairo >= 1.6
  • Pango >= 1.20
  • OpenGL >= 1.4, OpenGL ES 1.1 or OpenGL ES 2.0
  • GLX, SDL, WGL, Quartz or an EGL Implementation

To subscribe to the Clutter mailing list, send mail to: clutter+subscribe_at_o-hand.com
The official mailing list archive is: http://lists.o-hand.com/clutter/
API reference: Clutter, COGL

Notes

  • This is a development release of Clutter 0.9 leading towards the 1.0 stable cycle. It is the first release candidate for the 1.0.0 release: the Clutter high-level API is to be considered frozen, though there might be last minutes additions to the COGL low-level API to accommodate the performance improvements done in the cogl-journal-batching branch that is going to be merged next week.
  • This version is fully API and ABI incompatible with the previous 0.8 releases.
  • This version is parallel installable with Clutter 0.8.
  • Installing this version will overwrite the files from the installation of a git clone of the current development branch (master).
  • Bugs should be reported to: http://bugzilla.o-hand.com

What's new in Clutter 0.9.4

  • Set the layout height in ClutterText, so that wrapping and ellipsization work correctly to fill all the allocated area.
  • Remove all the units-based API from ClutterActor, and migrate all the positional and dimensional accessors to use floating point values when dealing with pixels. All the properties dealing with pixels now take a floating point value as well. This change does have repercussions on functions with variadic arguments like clutter_actor_animate(), g_object_new(), g_object_set() and g_object_get().
  • Add the ability to track whether an actor is going to be painted or not, using the "mapped" flag. This also allows Clutter to be more strict in the handling of the scenegraph, ensuring correctness and avoiding wasting resources on nodes that won't be painted.
  • Add debugging facilities for COGL, similar to those of Clutter; through them is also possible to have an on screen debugging mode that shows the boundaries of each rectangle sent to the GPU.
  • Rework "units" into real logical distance units that can be converted between millimeters, typographic points and ems, into pixels.
  • Simplify the Animation class to avoid redundancy and the possibility of it going out of sync with the Timeline and Alpha instances it uses.
  • Move every operation into a single "master clock" source that advances the timelines, dispatches events and redraws the stages in a predictable sequence, thus avoiding unneeded redraws. The default is to follow the sync-to-vblank cycle, if it is supported by the drivers.
  • Cache the glyphs geometry into a vertex buffer object to avoid resubmitting too much information to the GPU.
  • Rework the behaviour of ClutterModel when a filter is applied.
  • Allow submitting premultiplied texture data; this removes the need for unpremultiplying data in CairoTexture.
  • Add a simple API for submitting blending and texture combining modes through a string description.
  • Move Timelines to pure time-based objects.
  • The Input devices API has been cleaned up. Currently, the X11 support for XInput 1.x is disabled by default, and Clutter must be configured with --enable-xinput in order to enable it; XInput 1.x is going to be replaced by XInput2, which is a far better API. Support for XInput2 will be added during the 1.x cycle.
  • Lots of performance improvements.
  • Removal of all the deprecated API.
  • Removal of all the fixed point entry points.
  • Lots of documentation fixes - the coverage is now 99% of the exported 1600 symbols for Clutter and 80%+ of the 300 exported symbols for COGL.
  • Generate the GObject Introspection data for both Clutter and COGL at build time.
  • Build environment fixes.

Many thanks to:

Owen W. Taylor
Thomas Wood
Havoc Pennington
Bastian Winkler
Chris Lord
Garry Bodsworth
Rob Bradford
Johan Bilien
Jonas Bonn
Raymond Liu
Damien Lespiau
Dan Winship
Marc-André Lureau
Robert Staudinger
Tommi Komulainen