Clutter 1.4.2 (30/11/2010)
===============================================================================
* List of changes since Clutter 1.4.0
>> Optimize ClutterText's preferred height computations when
in single line mode.
>> Fix build for CEx100 backend.
>> Fix the example code in the Cookbook recipes to be C90 compliant.
>> Add optimizations in ClutterActor for show, hide and queue_relayou().
>> Build fixes for introspection data.
>> Trap glXDestroyPixmap() to avoid an ordering issue when freeing
pixmaps.
>> Fix segfaults with empty XSettings and font names.
>> Do not use exclusive pointer grabs in ClickAction.
>> Fixes for the win32 backend.
>> Do not destroy materials and shaders when not needed.
>> Leaks fixed.
Release Notes for Clutter 1.4
-------------------------------------------------------------------------------
* ClutterLayoutManager sub-classes overriding the set_container() virtual
function should chain up to the parent class's implementation.
* The ClutterTexture:filename property is now readable, as well as writable;
this allows querying the Texture for the filename storing the image data.
The value will be unset when using the set_from_*_data() family of
functions.
* If both the :sync-size and the :keep-aspect-ratio properties of a
ClutterTexture are set to TRUE, then the texture actor will update its
ClutterActor:request-mode property depending on the orientation of the
image data - height-for-width for landscape, and width-for-height for
portrait. Square image data will default to height-for-width, like all
actors. You can still explicitly override the :request-mode value, or
you can unset the :sync-size property to control the size yourself.
* All the key symbol macros have been renamed from CLUTTER_* to
CLUTTER_KEY_*. The old names are still available inside the
clutter-keysyms-compat.h header, which is included by clutter-keysyms.h
unless CLUTTER_DISABLE_DEPRECATED is defined.
Clutter 1.2.14 (24/09/2010)
===============================================================================
* List of changes since Clutter 1.2.12
> Backport GLES detection logic, and remove an unwanted GL dependency
when building EGLX backends against Mesa.
> Fix build on Quartz.
> Plug leaks in CoglProgram and CoglShader.
> Fixes for CoglShader usage on GLES2.
> Backport a fix in the request mode of ClutterBoxLayout.
> Documentation fixes.
Many thanks to:
Neil Roberts
Alexandros Frantzis
Nate Stedman
Clutter 1.2.12 (14/07/2010)
===============================================================================
* List of changes since Clutter 1.2.10
> Provide a fallback for MESA_copy_sub_buffer by using the
EXT_blit_framebuffer extension. (BCP#2128)
> Never promote clipped redraws to fullscreen redraws. (BCP#2136)
> Fix rounding error in ClutterText. (BCP#2170)
> Fix drawing of transparent stages on X11. (BCP#2050)
> ClutterAnimator bug fixes.
> ClutterAnimation fixes for vector-based API. (BCP#2149)
> Fixes for the Windows backend event handling. (BCP#2135)
> Fixes for the setup of the GL context on OSX. (BCP#1394)
> Documentation improvements. (BCP#2081, BCP#2133)
> Build fixes for the conformance test suite. (BCP#1930)
Clutter 1.2.10 (08/06/2010)
===============================================================================
• List of changes since Clutter 1.2.8
» Update the EGL X11 backend.
» Build fixes for out of dir builds.
» Regenerate the mipmaps whenever a texture is modified.
» Reset the blend constants and equations even if they are the same
» Flush the Journal when creating an FBO.
Clutter 1.2.8 (10/05/2010)
===============================================================================
* List of changes since Clutter 1.2.6
> Ignore unexpected GLX_BufferSwapComplete coming from Mesa (bug #2102)
> Use the correct function for the GL_OES_framebuffer_object extension
> Fix the chaining up of the GLX backend when dealing with redirected
event handling (e.g. by Mutter) (bug #2101)
> Do not attempt to use GL to convert formats under GLES (bug #2059)
> Improve the robustness of the checks dealing with the maximum
amount of layers in a CoglMaterial (bug #2064)
> Fix cogl_read_pixels() on GLES (bug #2057)
> Do not try to union sub paths (bug #2088)
> Fix the clip stack (bug #2079)
> Fix clutter_event_get_coords() for ENTER and LEAVE events.
> Documentation fixes in the Cogl path API
> Fix typos in the introspection annotations
Clutter 1.2.6 (19/04/2010)
===============================================================================
* List of changes since Clutter 1.2.4
> Check if the TexturePixmap actor have an allocation before
asking for its allocation box, to avoid a costly re-layout.
> Handle spurious GLX_BufferSwapComplete events more gracefully
than an assertion failure.
> Fix a memory leak in the atlas.
> Use the right constant when calling GetClassLongPtr() in the
win32 event handling code; this fixes a compilation issue on
win64.
> Check the size of the Pango layouts in the cache to avoid
blowing cache slots.
> Remove the need for using a function introduced by GLib 2.18,
to keep our current requirements.
> Documentation fixes in Clutter and COGL
Many thanks to:
Fridrich Strba
Neil Roberts
Owen W. Taylor
Rob Bradford
Robert Bragg
Clutter 1.2.4 (22/03/2010)
===============================================================================
• List of changes since Clutter 1.2.2
» Revert patch for bug 2017 which broke subclassing ClutterListModel
» Add more error reporting in case the GLX context creation failed
» Fix cogl_texture_get_data() returning garbage
» Fix the computation of the stage bounding rectangle when submitting
clipped redraw requests
» Switch texture units before setting the Cogl texture filters
» Make sure that GLX_SGI_swap_control is set up correctly
Many thanks to:
Owen W. Taylor
Adel Gadllah
Clutter 1.2.2 (15/03/2010)
===============================================================================
• List of changes since Clutter 1.2.0
» Fix introspection annotations for ClutterBox
» Compilation fixes for the EGL native backend
» Fix ClutterX11TexturePixmap ::queue-damage-redraw default handler
registration to avoid a run-time warning
» Handle TEXTURE_RECTANGLE_ARB in the 2D sliced textures, and add
a test case for that extension to avoid regressions
» Improve the strictness of the JSON parser in the internal copy
of JSON-GLib to which we fall back in the absence of the system
one
» Fix a crasher on NVidia drivers when enabling the ARGB visuals
by default on GLX.
Many thanks to:
José Dapena Paz
Neil Roberts
Owen W. Taylor
Øyvind Kolås
Clutter 1.2.0 (02/03/2010)
===============================================================================
• List of changes since Clutter 1.1.14
» Improve the Animator API for consistency, and the implementation
to match the intended behaviour, as documented
» Add initial (and internal) support for queueing clipped region updates
and let the GLX texture-from-pixmap actor take advantage of it
» Support any pixel format in cogl_read_pixels()
» Conditionally use G_VALUE_COLLECT_INIT() in functions using variadic
arguments lists
» Consistently use :min-width and :min-height inside the Stage to define
the minimum size of the Stage window
» Implement the Scriptable interface for ClutterModel sub-classes; this
allows setting ClutterModel columns (both types and names) in
ClutterScript definitions
» Add support for unsigned integer indices in the VertexBuffer API
» Documentation fixes for Clutter: the coverage is now 100%
» Fixes for the EGL native backend
» Require libtool >= 2.2.6
» Improve tests coverage
Many thanks to:
Neil Roberts
Øyvind Kolås
Robert Bragg
Bastian Winkler
Chris Lord
Owen W. Taylor
Clutter 1.1.14 (24/02/2010)
===============================================================================
• List of changes since Clutter 1.1.12
» Fix interaction between user resizable Stages and fullscreen on X11
» Define the semantics of ENTER and LEAVE events when actors are on the
border of the Stage window
» Take the InputDevice of an event into consideration when throttling
MOTION events
» Round the coordinates when clipping to a rectangle in window coordinates
» Always trust the user-provided coordinates when creating a CoglTexture
from a foreign GL texture
» Split Clutter's debug annotations from the pick and paint mode
behavioural modifiers
» Improve the usage of the CLUTTER_ACTOR_NO_LAYOUT flag so that every
actor using a ClutterFixedLayout manager will automatically benefit
from it
» Fix the packing order of ClutterBox so that the convention of
first-in-first-painted is maintained
» Documentation fixes
Many thanks to:
Robert Bragg
Chris Lord
Neil Roberts
Clutter 1.1.12 (16/02/2010)
===============================================================================
• List of changes since Clutter 1.1.10
» Fix compilation on 64bit platforms
» Fix some races of the Stage resizing on X11
» Documentation fixes for Cogl: the coverage is now 100%
» Fix rounding errors in the preferred height of the ClutterText
actor
» Remove redundant type checks in clutter_actor_get_paint_opacity()
» Add support for the GLX_INTEL_swap_event extension; when using this
extension on GLX the glXSwapBuffers() call becomes non-blocking and
Clutter will use an event to control the master clock.
» Improve consistency between ClutterBox and ClutterGroup.
» On X11, do not set the _NET_WM_PID and WM_TITLE properties on a
Stage X window if the window was not created by Clutter itself
» Improve caching of GL constant values
» Optimize creating sub-textures of sub-textures
» Various fixes for the atlas and the journal
» Disable the atlas if FBOs are not supported
Many thanks to:
Robert Bragg
Neil Roberts
Damien Lespiau
Bastian Winkler
Chris Lord
Clutter 1.1.10 (09/02/2010)
===============================================================================
• List of changes since Clutter 1.1.8
» Fixed a regression in textures that caused all the textures to be
drawn as white rectangles.
» Fixed compilation with the Sun C compiler.
» Use SSE2 instructions to premultiply RGBA images, if available.
» Improve readability of ClutterActor::raise/::lower warnings.
Many thanks to:
Neil Roberts
Halton Huo
Clutter 1.1.8 (08/02/2010)
===============================================================================
• List of changes since Clutter 1.1.6
» Added ClutterAnimator, a class that allows defining complex
implicit animations involving multiple actors and states; this
class is mostly meant to be used through the ClutterScript
definition format, but it provides a convenience C API for
easily building animations.
» New experimental COGL API to expose "hardware" buffers such as PBOs or
drm surfaces. This API can be used, for instance, to make texture
uploading faster.
» Fixed the issues with resizable stages getting a 1x1 window with
the X11 backends
» Expose input devices for every event; by default, X11 and Windows
backends expose the core devices only.
» Add the ClutterStage:key-focus property, for key focus tracking.
» Allow setting transformable value types in ClutterAnimation when
calling clutter_animation_bind() and clutter_animation_update().
» Delay the creation of the default Stage until clutter_stage_get_default()
is actually called; this reduces the work of clutter_init().
» Implement Ctrl+Delete and Ctrl+Backspace in ClutterText
» Improve the extendability of CoglTexture with internal backends.
» Add implicit texture atlasing; Cogl will try to put every texture
inside the same texture atlas by default, to avoid state changes
in the driver and (hopefully) improve performance.
» Fix notification of the cursor and selection changes in ClutterText;
this improves the usage of Clutter from A11Y toolkits.
» Do not wait for a frame if the system clock goes backwards.
» Fix the dirtying of the clip state; this unbreaks cogl_path_fill().
» Documentation and build fixes.
Many thanks to:
Neil Roberts
Chris Lord
Damien Lespiau
Alejandro Piñeiro
Jussi Kukkonen
Kristian Høgsberg
Robert Bragg
Øyvind Kolås
Clutter 1.1.6 (18/01/2010)
===============================================================================
• List of changes since Clutter 1.1.4
» Some fixes for the Win32 backend (bug #1905).
» Profiling support via the UProf library. Configure with
--enable-profile to get a report after each Clutter application is
run.
» Improved conformance tests with coverage reports via gcov.
» ClutterTexture no longer tries to read back texture data into
g_malloc'd memory on unrealize (bug #1842).
» The CGL_• defines from cogl-defines.h have been removed. These
should not have been used by any applications, but if they were
being used then please replace them either with the Cogl enums or
with the appropriate GL_• enum if you are using GL directly.
» Added a delete-event signal to the stage.
» Fix for using cogl_rectangle with different texture coordinates
for multiple layers (bug #1937).
» Fix for using stencil and depth buffers in FBOs on Intel drivers
in Mesa (bug #1873).
» Support for subtitles in ClutterMedia.
» ClutterGLX will now use an RGB visual by default. For
applications (and toolkit integration libraries) that want to
enable the ClutterStage:use-alpha property there is a new
function: clutter_x11_set_use_argb_visual().
» Fix ClutterText to allow using Pango markup and attributes in
the same actor (bug #1940).
Many thanks to:
Alejandro Piñeiro
Damien Lespiau
Emmanuele Bassi
Gord Allot
Halton Huo
Robert Bragg
Samuel Degrande
Clutter 1.1.4 (03/01/2010)
===============================================================================
• List of changes since Clutter 1.1.2
» Update the ClutterScript parser to be more resilient, and support
constructor and ChildMeta properties. The parser also respects the
order of the properties in the UI definitions when applying them,
and will apply the properties of an Actor after building the scene
graph.
» Simplified the implementation of LayoutManager sub-classes, and added
support for animating a layout manager.
» Allow short-circuiting some layout operations by setting a specific
flag on ClutterActor.
» Improve caching of the preferred size of a ClutterActor.
» Allow declaring "internal children" for a ClutterContainer
implementation: the memory management of these actors will be deferred
entirely to the Container.
» Let the ClutterStage honour the :opacity property and the alpha component
of the stage color. This requires support in the Clutter backend used.
» Improve Windows and OSX backends.
» Simplify the feature detection code for OpenGL; this also reduced the
required OpenGL version to 1.2.
» Improve the matrix stack handling code. The matrices can be debugged by
using the COGL_DEBUG environment variable, assuming that Clutter was
compiled with the right configure-time switch.
» Improve COGL API for draw buffers, and for offscreen buffer support.
» Add support for text direction to ClutterActor.
» Documentation, introspection and build fixes.
Many thanks to:
Robert Bragg
Neil Roberts
Damien Lespiau
Joshua Lock
Bastian Winkler
Rob Bradford
Samuel Degrande
Christian Persch
Colin Walters
Johan Bilien
Raymond Liu
Tim Horton
Clutter 1.1.2 (23/10/2009)
===============================================================================
• List of changes since Clutter 1.0
» Add ClutterLayoutManager, an abstract proxy class for easily
writing layout management policies; also add ClutterLayoutMeta,
a class for storing layout properties.
» Add ClutterBox, a generic container actor that relies on a
ClutterLayoutManager instance to manage the layout of its
children.
» Add the following layout managers:
- ClutterFixedLayout - a layout manager implementing the
policy used by ClutterGroup
- ClutterBinLayout - a layout manager for packing actors
as layers inside the same area, with per-actor alignment
- ClutterFlowLayout - a layout manager arranging actors as
a reflowing grid
- ClutterBoxLayout - a layout manager arranging actors as
a single line
» Remove the requirement for the backend-specific implementation
of ClutterStage to be a ClutterActor: a Stage implementation must
only implement the ClutterStageWindow interface. This cleans up
the backend code.
» COGL source tree clean up and rationalization; COGL now
knows the platform, and not only the driver (GL or GLES) so
we can migrate part of the low-level backend code from Clutter
to COGL where it makes sense.
» Remove code duplication across whole COGL.
» The GLES 2.0 driver for COGL, and the EGLX backend for Clutter
have been fixed and confirmed working.
» Add "dump-pick-buffer" to CLUTTER_DEBUG: this debug options
dumps the contents of each pick() buffer into a PNG file, for
debugging purposes.
» Allow interpolating intervals of ClutterUnits for animating
unit-based properties.
» Increase strictness and correctness of the ClutterUnits
grammar parser.
» Add GValue transformation functions for ClutterPath to and
from a string.
» Fix word movement in ClutterText; implement GObject getter for
:use-markup; emit notification for :position; decouple the
:text property from the :use-markup property.
» Do not queue redraws or relayouts on actors currently being
destroyed.
» Support #rrggbb and #rgb notations for ClutterColor.
» Multiple bug fixes.
» Provide _NET_WM_PID on the X11 stage implementation.
» Documentation and Introspection annotation fixes.
» Add test units for the ClutterActor size requesition.
» Build fixes.
» Use AM_SILENT_RULES if Automake 1.11 is detected, and fall
back to Shave on older Automake versions.
Many thanks to:
Robert Bragg
Damien Lespiau
Neil Roberts
Thomas Wood
Owen W. Taylor
Øyvind Kolås
Götz Waschk
Zhou Jiangwei
Colin Walters
Jonas Bonn
Joshua Lock
Jussi Kukkonen
Samuel Degrande
Vladimir Nadvornik
Xu Li
Clutter 1.0.10 (11/01/2010)
===============================================================================
* List of changes since 1.0.8
o Fix the internal copy of JSON-GLib to cope with doubles
o Force a relayout when showing an actor
o Fix cursor position in ClutterText when using a pre-edit string
o Fix the CoreGraphics bitmap loader when dealing with JPEG images
o Emulate XKB's detectable key auto-repeat on X11
o Fix HLS-to-RGB conversion on 64bit platforms
o Let ClutterAnimation keep a weak reference on actors
o Do not take into account the left edges of the children of a
ClutterGroup when calculating the group's preferred size
Clutter 1.0.8 (19/10/2009)
===============================================================================
* List of changes since 1.0.6
o Documentation fixes and updates
o Unset the IN_DESTRUCTION flag when leaving ::destroy
o Fix components validation in the Vertex Buffer API
o Allow omitting the alpha when converting from string to color
o Do not overwrite the :use-markup property when setting the :text one
o Add support for pre-edit strings in ClutterText; this is an
API addition.
o Clarify the ID pool warning
o Notify the :position property of ClutterText when it changes
Many thanks to:
Damien Lespiau
Neil Roberts
Robert Bragg
Thomas Wood
Clutter 1.0.6 (22/09/2009)
===============================================================================
* List of changes since 1.0.4
o Various documentation improvements including a new ClutterPath migration
guide, a Glossary and objects index
o A couple of new unit tests for: initial actor sizing, preferred actor
size and ClutterGroup depth sorting
o Fix ClutterGroup depth sorting
o Fix double to float type conversions in ClutterScript and update
test-script.json so it doesn't refer to old Actor types such as
ClutterLabel.
o Do not attempt to free empty ClutterModel column names
o Fix the BlendString parser so numbers can be part of function names
allowing use of DOT3_RGB
o Fix the parsing of special "signal-" property names available when
using the ClutterAnimation vararg API
o Adds a "use-markup" property getter for ClutterText
o Account for clock roll backs between frames so timelines don't simply
hang
o Disable mipmap filters before checking framebuffer object completeness
since some drivers consider texture objects incomplete if a mipmap
filter is set but the mipmap data hasn't yet been uploaded.
o Various Makefile fixes, including fixes for the %.c: %.glsl codegen rules
for GLES2, use AM_SILENT_RULES for automake > 1.11, use a shared set of
defines for silencing make rules (Makefile.am.silent) and cleanup some
misuse of CLUTTER_MAJORMINOR.
o Fix cogl_clear so the alpha component isn't ignored
o Fix for the GLES 2.0 Cogl backend and the eglx Clutter backend
Many thanks to:
Damien Lespiau
Emmanuele Bassi
Neil Roberts
Øyvind Kolås
Samuel Degrande
Zhou Jiangwei
Clutter 1.0.4 (25/08/2009)
===============================================================================
* List of changes since 1.0.2
o Depend on GObject-Introspection 0.6.4, to fix the generation of
introspection data from uninstalled libraries
o Fix a crash when closing multiple stages
o Help gtk-doc pick up ClutterInterval as an object
o Do not premultiply the color twice inside the CoglPango renderer
o Fix keyboard navigation of works inside ClutterText
o Allow key events to bubble up to its parent container if the
event contains the control modifier is detected
Many thanks to:
Jonas Bonn
Jussi Kukkonen
Owen W. Taylor
Clutter 1.0.2 (14/08/2009)
===============================================================================
* List of changes since 1.0.0
o Documentation fixes
o Build fixes
o Update the MingW script for building Clutter on Windows
o Update the build instructions for OS X
o On X11, make sure to destroy the stage Window when switching to
a foreign one
o Fix a bug where clutter_actor_apply_relative_transform() was no
using the right vertex to perform the transformation
Many thanks to:
Damien Lespiau
Colin Walters
Joshua Lock
Xu Li
Clutter 1.0.0 (28/07/2009)
===============================================================================
* List of changes since 0.9.8
o Allow per-stage disabling of motion event throttling; this should allow
platforms or applications that require all the motion events not for
drawing purposes to get them exactly like Clutter gets them from the
windowing system.
o Various documentation fixes.
o Add per-word key navigation inside ClutterText.
o Fix the RGB<->HLS conversion.
o Various fixes for the OSX backend.
o Various build-related fixes.
Many thanks to:
Geoff Gustafson
Michael Mortensen
Owen W. Taylor
Clutter 0.9.8 (17/07/2009)
===============================================================================
* List of changes since 0.9.6
o Add more introspection annotations for language bindings.
o Fix a bug in clutter_animation_set_alpha(), which also broke the
clutter_actor_animate_with_alpha() function.
o Check if the stage requires a relayout before showing it; this fixes
a bug in the X11-based backends, especially under compositing window
managers, where a 640x480 window would flicker before the default
stage was shown for the first time.
o Performance fixes for Cogl.
o Sliced textures were broken by the COGL journalling.
o Use the redraw cycle when asynchronously loading textures from
files.
o Miscellaneous compilation fixes for the OS X and Windows backends.
o Allow querying from within the paint function of an Actor whether
the actor is currently being directly painted or by a Clone actor.
o In the GLX backend, when using the non-implicit sync-to-vblank inside
glXSwapBuffers(), call glFinish() to avoid potential tearing.
Many thanks to:
Colin Walters
Evan Martin
Marcos
Owen W. Taylor
Xu Li
Clutter 0.9.6 (01/07/2009)
===============================================================================
* List of changes since 0.9.4:
o Allow the manipulation of the actor's transformation matrix, so that is
is possible to apply additional transformations in a way that is
compatible with the transformations already applied by the scene graph.
o Fix a race in the X11 backend that happened between resizing the stage
drawable and the call to glViewport().
o Merge the cogl-journal-batching branch; this branch implements batching
the geometry of the elements of the scene graph before sending it to
OpenGL, thus minimizing the number of state changes and improving the
overall performance of Clutter-based applications.
o Add more debugging states for Clutter and COGL, which allow the developer
to track the state of the journal; to check the VBO fallback paths; to
disable picking for reliable profiling; to disable software-side matrix
transformations in favour of the driver/GPU ones.
o Improve the ability to "break out" of COGL by using gl_begin/gl_end
semantics; applications that drop into raw GL are, though, ignoring all
the caching performed by COGL and might incur in performance issues.
o Fixed the :load-async and :load-data-async properties of Texture by
removing the unneeded G_PARAM_CONSTRUCT flag.
o Added an initial migration guide that shows the porting process from
older releases of Clutter to the 1.0 API; the first chapter deals with
the migration from ClutterEffect to the new implicit animations API.
o Fixed MT-safety for the master clock.
Many thanks to:
Ole André Vadla Ravnås
Tim Horton
Clutter 0.9.4 (19/06/2009)
===============================================================================
* List of changes since 0.9.2:
o Set the layout height in ClutterText, so that wrapping and ellipsization
work correctly to fill all the allocated area.
o Remove all the units-based API, and migrate all the positional and
dimensional accessors to use floating point values when dealing with
pixels. All the properties dealing with pixels now that a floating
point value as well.
o Add the ability to track wether 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.
o 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.
o Rework "units" into real logical distance units that can be converted
between millimeters, typographic points and ems into pixels.
o Simplify the Animation class to avoid redundancy and the possibility
of it going out of sync with the Timeline and Alpha instances it uses.
o 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.
o Cache the glyphs geometry into a vertex buffer object to avoid
resubmitting too much information to the GPU.
o Rework the behaviour of ClutterModel when a filter is applied.
o Allow submitting premultiplied texture data; this removes the need
for unpremultiplying data in CairoTexture.
o Add a simple API for submitting blending and texture combining modes
through a string description.
o Move Timelines to pure time-based objects.
o Lots of performance improvements.
o Removal of all the deprecated API.
o Removal of all the fixed point entry points.
o 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.
o Generate the GObject Introspection data for both Clutter and COGL
at build time.
o Build environment fixes.
Many thanks to:
Owen W. Taylor <otaylor@fishsoup.net>
Thomas Wood <thomas.wood@intel.com>
Havoc Pennington <hp@pobox.com>
Bastian Winkler <buz@netbuz.org>
Chris Lord <chris@linux.intel.com>
Garry Bodsworth <gjb@camvine.com>
Rob Bradford <rob@linux.intel.com>
Johan Bilien <jobi@litl.com>
Jonas Bonn <jonas@southpole.se>
Raymond Liu <raymond.liu@intel.com>
Damien Lespiau <damien.lespiau@gmail.com>
Dan Winship <danw@gnome.org>
Marc-André Lureau <marcandre.lureau@gmail.com>
Robert Staudinger <robsta@gnome.org>
Tommi Komulainen <tko@litl.com>
Clutter 0.9.2 (16/03/2009)
===============================================================================
Bastian Winkler (2):
[media] Fix the interface cast macro
Remove redundant declaration in clutter-text.h
Chris Lord (1):
[actor] Force a relayout on set_parent()
Christian Persch (1):
Bug 1429 - Redundant declaration in clutter-x11.h
Colin Walters (3):
Bug 1491 - Fix hardcoded lib path in .pc files
Typo in clutter-win32.pc.in introduced by commit 24ce19383
[animation] Enhance the bind API
Damien Lespiau (6):
[gitignore] update gitignore files for tests/
[build] Beautify autotools' output
[build] Add dolt
[build] Fix interaction between shave, gtk-doc and libtool 1.x
[build] Fix dist for the newly introduced m4 macro directory
Update shave
Emmanuele Bassi (111):
Post-release bump to 0.9.1
[text] Merge the attributes with markup enabled
[tests] Update the text-field interactive test
Add Actor::create_pango_layout()
[docs] Add clutter_text_set_markup()
[clone] Allow cloning unparented actors
[text] Use create_pango_layout()
[text] Rename :alignment to :line-alignment
[texture] Consolidate the quality to filter conversions
[texture] Check if the material is valid
[event] Extend KeyEvent for multi-input support
[actor] Check out parameters before setting them
[list-model] Make ClutterListModel subclassable
Bug 1440 - Add clutter_get_current_event_time()
[tests] Add TEST_CONFORM_SKIP() macro
[tests] Add conformance tests for ClutterModel
[ignore] Add the newly created conformance units
[actor] Revert part of commit 402e022c
[animation] Do not bind construct-only properties
[x11] Add backend-specific get_current_event_time()
Initialize a variable to avoid warnings
[cogl] Add cogl_is_material to cogl-material.h
[cogl] Provide GTypes for COGL types
[texture] Use COGL_TYPE_HANDLE for the handle properties
[docs] Clarify the set_cogl_texture() documentation
Merge branch 'build-enhancements'
[docs] Add a missing "return" annotation
[build] Pass the -s switch to cmp
Remove type functions for removed types
[docs] Update the sections file
[tests] Add TEST_CONFORM_TODO macro
[build] Show pkg-config file being generated
[build] Reference the headers with their full path
[docs] Update build for COGL API reference
[build] Update the EXTRA_DIST list
[build] Fix the ChangeLog generation rule
[build] Do not overwrite BUILT_SOURCES
[behaviour] Do not notify empty behaviours
[path] Do not accept NULL descriptions
[timeline] Set the n_markers out paramater
Do not use GL types in Clutter headers
[docs] Require gtk-doc 1.11
[docs] Use the --name-space option
[docs] Add the 1.0 symbols index
[docs] Rename cogl-docs from sgml to xml
Add build machinery for gobject-introspection data
[backend] Update the viewport when updating the GL context
[build] Move all the compiler flags to AM_CFLAGS
[ignore] Update with the introspection files
Add runtime debug messages for COGL
[actor] Remove usage of ClutterFixed
Make disable text mipmapping a command line switch
Make fuzzy picking a command line switch
[docs] Document envvars and command line switches
Remove stray fixed point macro usage
Use a dynamic array for the actors when delivering events
[media] Add sub-second resolution for the duration
[build] Put the X11 pc dependencies in another variable
[build] Do not shave typelib generation
Intern the ClutterScriptable type name
[backend] Constify font options
[cogl] Add a PANGO debug flag for CoglPango use
Clean up of the ClutterColor API
[shader] Unify code paths
Add pkg-config file for COGL
[build] Various fixes for distcheck
[docs] Clarify clutter_actor_animate() behaviour
[docs] Note that grabs are evil
[cogl-fixed] Add a double-to-fixed conversion macro
Move BehaviourScale to CoglFixed
Move ClutterBehaviourEllipse to CoglFixed
Move ClutterBehaviourRotate to CoglFixed
Move ClutterTimeline to CoglFixed
[cogl-fixed] Implement the CoglFixed fundamental GType
[tests] Test CoglFixed, not ClutterFixed
[interval] Update fixed-point handling
[stage] Coalesce fog and perspective API
[texture] Fix ClutterFixed usage
[text] Convert units to the right type
[tests] Use floats, not ClutterFixed
[units] Add more conversion functions
[fixed] Remove ClutterFixed API
[cogl] Fix hardcoded paths in the pc file
[docs] Remove ClutterFixed from the documentation
[docs] Update API reference
[animation] Add vector variants for ::animate()
[cogl] Initialize boolean flag in CoglContext
[cogl] Initialize all members of CoglContext
[color] Fixed HLS to RGB conversion
[docs] Calling g_object_ref() will not dispose an object
[docs] Document the commit message format
[tests] Animate the color during easing
[docs] Reword some of the coding practices
[docs] Add a bindings coding practices
Add more deprecation notices
[deprecated] Add Effect deprecation
Do not cause more size requisitions than necessary
[cogl] Avoid shadowing math.h symbols
[docs] Clarify Animation memory management
[animation] Add an emitter for ::completed
[animation] Add Animation getter
[tests] Remove unused variables
[docs] Add description of queue_redraw
[docs] Update after Animation API changes
[animation] Enhance consistency of the Animation API
[docs] Bring down the undocumented symbols to 2%
Fix release date of 0.9.0
Update release notes
[docs] Fix naming of the interval parameter
[docs] Ignore the TimeoutInterval internal API
Update release notes
Geoff Gustafson (1):
[animation] Broken fixed:: properties
Gordon Williams (1):
[group] Output the group name when debugging paint
Havoc Pennington (4):
Virtualize GL matrix operations and use a client-side matrix when GL is indirect
[actor] Add :clip-to-allocation property
[actor] Add ::queue-redraw signal
[cogl] Flush matrix before clip planes
Jonathan Matthew (1):
Declare the EnumValues for PixelFormat static
Neil Roberts (36):
[cogl-material] Always bind the new texture handle
Fix building GLES 2 after the material branch merge
[cogl-texture] Fix the count for the number of enabled arrays
[cogl-gles2-wrapper] Remove the FIXME to adjust the fragment color
[clutter-clone] Override the parent opacity to self not self->parent
[clutter-texture] Release the temporary ref taken when setting a texture
[clutter-texture] Unref the Cogl material on dispose
[clutter-texture] Fix the no_slice property
[cogl-texture] Fix offset to next quad when flushing the log
[cogl-texture] Move the destruction of the material to _finalize
[cogl-texture] Fix uninitialised priv var in texture_finalize
Added a test for non-power-of-two sized textures
Emit CLUTTER_LEAVE events when the pointer leaves the stage
Call glActiveTexture and glClientActiveTexture through cogl_get_proc_address
[win32] Track mouse leave messages
[clutter-main] Fix the input device passed to set_motion_last_actor
Override the opacity when painting a clone instead of combining
Allow rotation angle properties to be negative
[ClutterBehaviourRotate] Fix up some breakage from the cogl-float branch merge
[tests/conform] Copy in redhand.png
Replaced ClutterFixed constants in color_{darken,lighten} with float
[cogl-gles2-wrapper] Convert texture unit settings to be a static sized array
[cogl-gles2-wrapper] Actually call glActiveTexture
Add an environment variable to disable mipmapped text
[tests/tools] Don't install libdisable-npots.so
[clutter-texture] Use a GThreadPool for loading async textures
[cogl-pango-glyph-cache] Fix compiler warning on 64-bit
Fix warning in clutter-backend-sdl
[eglnative] Add -I flags for the clutter dir in the src and build dirs
Set the mapped flag on the stage in the SDL and eglnative backends
Fix out of tree builds
Remove use of $(builddir)
[README] Small typo fix
Change cogl_path_rectangle and cogl_path_round_rectangle to take x1,y1,x2,y2
[cogl-path] Minor fix to gtk-doc
Count timeline frames using the FPS instead of an integer interval
Owen W. Taylor (7):
Honor ACLOCAL_FLAGS in autogen.sh
Add gobject-introspection annotations
Fix x/y confusion for GL_TEXTURE_RECTANGLE_ARB
Use COGL to establish GL state for ClutterGLXTexturePixmap
Add (out) annotations for ClutterActor
Allow NULL for clutter_text_set_text()
Avoid drawing twice if relayout queues a draw
Raymond Liu (2):
[text] Crash when multi-byte utf8 text exceeds max_length
[text] Insertion of multi-byte characters broken
Robert Bragg (28):
[Cogl] Renames cogl_fog_set to cogl_set_fog for consistency
[cogl-material] Fixes some dirty flag checks
[cogl-vertex-buffer] Some fixes for texturing and color arrays
[docs] Various gtk-doc updates for Cogl
[tests] Some improvements for test-pixmap
[Cogl] cogl_clip_{set*,unset} renamed to cogl_clip_{push*,pop}
[Cogl] Renames cogl_paint_init to cogl_clear and adds a cogl_disable_fog function
[cogl-color.c] #include fix for the cogl_set_source_color prototype
[Cogl] the cogl_get_*_matrix functions now work with CoglMatrix types
[Cogl] Fixes automatic handling of the GL blend enable state.
[cogl-material] Always glBindTexture when flushing material state
[Cogl] Remove a debugging assert that was triggering on false positives
[test-vertex-buffer-contiguous] Improves the texturing test
[cogl-matrix] Adds padding to CoglMatrix
[cogl-matrix] Documents that CoglMatrix members should be considered read only
Removes need for casting (const float *) to (GLfloat *) in _cogl_set_clip_planes
80 char fix
Avoid casting CoglMatrix to a GLfloat * when calling glGetFloatv
Explicitly make the modelview-matrix current in cogl_{rotate,transform,etc}
Use Cogl enum when making modelview-matrix current in cogl_{rotate,transform,etc}
Finish GLES{1,2} support for client side matrix stacks
Maintain the Cogl assumption that the modelview matrix is normally current
Merge branch 'cogl-client-matrix-stacks'
[cogl-vertex-buffer] Add a flush of attribute changes in the *_draw() functions
[cogl-vertex-buffer] Allow querying back the number of vertices a buffer represents
[cogl-vertex-buffer] fix cogl_vertex_buffer_draw_elements prototype
[tests] Adds an interactive cogl vertex buffer unit test
[cogl] Don't endlessly print the same warning regarding layer fallbacks
Robert Staudinger (1):
[build] Add cogl.h to the built sources list
Shane Bryan (1):
Bug 1434 - _NET_WM_NAME not set before realize
Tomas Frydrych (3):
Fixed handling of enter and leave events in clutter_x11_handle_event()
Fix clutter_x11_texture_pixmap_get/set_property() following change of PROP_WINDOW type
[x11] Only update cached last event time if we have a real timestamp.
Øyvind Kolås (11):
Added a mutex for clutter asynchronous textures threads.
Bail early in clutter_texture_paint if opacity == 0
Add a warning for recursive emit_event
Change the default size of thread pool from 3 to 1
[tests] Added test-texture-async
[clutter-texture] add option to not block on size for loaded images
[clutter-texture] remove load-size-async property
Merge commit 'origin/async-texture-thread-pool' into async-size
[clutter-texture] updated documentation.
[clutter-texture] fixed gtk-doc formatting, and init threads in test.
Merge branch 'async-texture-thread-pool'
Clutter 0.9.0 (30/01/2009)
===============================================================================
* List of changes between 0.8.6 and 0.9.0
o ClutterText is a new actor allowing text display, text editing
both in multi-line and single-line modes, and text selection using
the pointer devices and the keyboard. ClutterText supercedes both
ClutterLabel and ClutterEntry.
o ClutterClone is a new actor that allows cloning of other actors,
both simple and composite. ClutterClone supercedes ClutterCloneTexture.
o ClutterBindingPool is a new API that allows to easily add key bindings
to an actor.
o ClutterAnimation is a new API for implicit animations, similar to
the tweening API used in toolkits like jQuery, Tween and Flash. This
new API supercedes the ClutterEffect API.
o ClutterAlpha uses "animation modes" instead of raw function
pointers; it is still possible to pass alpha functions. The alpha
functions provided by Clutter have been removed from the public
API. It is possible to register global alpha functions and use
them though a logical id.
o The interval of the ClutterAlpha:alpha property has been changed
to a floating point value in the [ -1.0, 2.0 ] range; this allowed
the addition of "overshooting" easing modes.
o COGL now supports backface culling.
o The COGL-based Pango renderer is public API and it is accessible
to developers. It is also possible to access the PangoContext used
by Clutter in order to create PangoLayouts to render text.
o The ClutterFixed API has been moved to COGL.
o COGL does not depend on Clutter data types anymore.
o The ClutterMedia interface has been overhauled: implementations
now must only override the interface properties. The ranges of
some properties have been changed to normalized values.
o COGL now exposes only floating point entry points, and reserves
the eventual conversion to fixed point only when needed. The
fixed point type and macros are publicly available for developers
concerned about floating point operations.
o COGL has a new Vertex Attribues API that allows submitting an
extensible number of vertex attributes to OpenGL in a way that
does not require format conversions and allows fast re-use.
o COGL has a new Material API that decouples paths from fills; it
is possible to create an arbitrary path and fill it with a COGL
texture. The Material API also allows setting multiple texture
layers and defining the blend modes and colors.
o ClutterTexture has the ability to use a worker thread to asynchronously
load an image from a file, as long as the GLib threading support has
been enabled prior to calling clutter_init().
o Clutter now supports localization of the help output, and it
also supports globally setting the text direction for non left to
right locales.
o ClutterCairoTexture is a new actor that allows using Cairo
to draw on a ClutterTexture; since Cairo does not have an OpenGL
backend, the drawing is not hardware accelerated.
o Clutter has a unit testing suite, based on the GLib unit test
framework, which can be used to track regressions.
o A ClutterPath object has been added, and it is used by the
BehaviourPath. The Path object allows defining paths using a set
of coordinates and operations. A Path can be "painted" either using
COGL primitives or using Cairo primitives, allowing an easier way
to paint non-rectangular shaped actors.
o ClutterInterval is a simple object, used by ClutterAnimation, that
describes an interval between two values, and interpolates between
the initial and final values of the interval.
* List of bugs fixed since 0.8.6
o #835 - Optimize clutter_actor_real_pick()
o #851 - setting anchor point causes picking problem
o #883 - Outstanding COGL merge issues
o #1003 - Add clutter_actor_take_key_focus
o #1014 - Clutter Animation API Improvements.
o #1049 - Clutter doesn't support most GLSL uniforms
o #1051 - WebKit/Clutter product/component?
o #1058 - Build clutter-box2d with Clutter 0.8
o #1066 - Clipping regression in 0.8
o #1086 - virtualize stage_queue_redraw
o #1105 - low level access to PangoClutter
o #1106 - ClutterText instead of ClutterLabel and ClutterEntry
o #1108 - Enter/Leave events logics wrt. skipped motion events
o #1109 - clutter-0.8.0 fails to compile
o #1123 - Crash when FBO actor is used and the stage is MINIMIZED
o #1144 - Provide an option to load images asynchronously in ClutterTexture
o #1162 - Add unit testing for Clutter
o #1164 - Mesh API
o #1172 - Disjoint paths and clip to path
o #1189 - Backface culling
o #1209 - Move fixed point API in COGL
o #1210 - Add CoglColor API
o #1211 - Drop ClutterFeatureFlags usage from COGL
o #1212 - Allow only a single include file for Clutter
o #1215 - Move the Pango renderer to the public API
o #1219 - Clean up cogl.h
o #1231 - Build fails in gles flavour in revision 3442
o #1233 - CLUTTER_ALPHA_SINE_INC is broken in trunk
o #1251 - Merge the Cairo texture actor in core
o #1252 - Merge ClutterBehaviourPath and ClutterBehaviourBspline
o #1261 - [patch] Minimize differences between gl/cogl-texture.c and
gles/cogl-texture.c
o #1269 - mingw32 building failed at clutter-media.c
o #1270 - Update to mingw-cross-compile.sh
o #1271 - mingw compiling failed: undefined reference to
`_glDrawRangeElements@24'
o #1284 - Return something reasonable from clutter_x11_handle_event()
o #1300 - clutter_score_remove and clutter_score_remove_all are different
in object remove
o #1310 - font rendering problem
o #1313 - Fix computation of camera distance
o #1314 - clutter_sinx() is more inaccurate than it needs to be
o #1321 - Get Matrix in float
o #1323 - ClutterBehaviorDepth conflicts with other behaviors
o #1325 - ClutterPath to cairo_path_t conversion functions
o #1330 - We should not queue redraw for non-visible actors
o #1334 - Default value for ClutterLabel::text should be "" instead of NULL
o #1344 - clutter_actor_transform_stage_point gives invalid coordinates
for big actors
o #1352 - Weird cogl-pango.h includes in clutter-[entry|label].c
o #1354 - Floating point exception when set fps>1000 and start timeline
o #1361 - Unused ClutterStage::get_resolution() methods
o #1365 - ClutterEntry doesn't get the cursor when it should
o #1366 - disable-npots fails to build on mac
o #1380 - Return booleans from CLUTTER_ACTOR_IS_* macros
o #1386 - Wrong clipping dimensions for larger actors
o #1387 - Clarify new-frame signal emission with advance()
o #1388 - Clarify signal emission for advance_to_marker()
o #1395 - behaviour_apply and behaviour_get_nth_actor are opposite on
actors sequence
o #1397 - clutter command line is not localized.
o #1402 - Change default tile-waste from 64 to 63
o #1403 - ClutterMedia::get_uri() should return allocated string
o #1404 - ClutterMedia issues
o #1405 - Fix properties that have X11 types to be 'long'
o #1409 - Use G_SIGNAL_RUN_LAST with ::queue-redraw signal
o #1410 - [patch] Implements a generic ClutterActorClone class without fbos
o #1414 - avoid relayout of ClutterTexture if not syncing size
o #1415 - short-circuit setting same clip again
Clutter 0.8.8 (20/02/2009)
===============================================================================
* List of changes between 0.8.6 and 0.8.8
Emmanuele Bassi (5):
Pots-release bump to 0.8.7
Bug 1365 - ClutterEntry doesn't get the cursor when it should
[behaviour-path] Bail out if we don't have knots
[behaviour] Do not notify empty behaviours
[backport] Update the viewport when updating the GL context
Neil Roberts (2):
[backport] Remove backwards timelines check in get_progress
[backport] Set the SYNC_MATRICES flag when a stage is first realized
Owen W. Taylor (2):
Fix properties that have X11 types to be 'long'
Change default tile-waste from 64 to 63
Tomas Frydrych (2):
Fixed handling of enter and leave events in clutter_x11_handle_event()
Fix clutter_x11_texture_pixmap_get/set_property() following change
of PROP_WINDOW type.
Clutter 0.8.6 (14/01/2009)
===============================================================================
* List of changes between 0.8.4 and 0.8.6
o Improve performance of the text layout by drawing multiple
glyphs in a single GL call
o Use a RGB texture for 24bpp pixmaps with the GLX texture-from-pixmap
actor
o Fix a race condition in the X11 backend when resizing the stage
o Fix an off-by-one error in clutter_stage_read_pixels()
o Use ARB_texture_rectangle inside the GLX texture-from-pixmap actor,
if the GL implementation does not provide NPOT textures
o Improved ocumentation and parameters checks
* List of bugs fixed since 0.8.4
o #1305 - NPOT textures unaligned to a pixel sometimes have border
artifacts
o #1303 - clutter_glx_texture_pixmap_using_extenstion doesn't check
if fallbacks are being used
o #1297 - Bring back support for GL_ARB_texture_rectangle
o #1309 - ClutterBehaviourDepth conflicts with orher behaviours
o #1351 - Extra ; in clutter-behaviour-ellipse.c
o #1392 - behaviour_set_alpha set same alpha twice lead to warning
and destroy the input alpha
o #1289 - Draw multiple glyphs at once
The clutter build failed because GLX_FRONT_LEFT_EXT and
GLX_BIND_TO_TEXTURE_RGBA_EXT were not defined. (I had MesaLib-6.4.2nb3
installed.)
So add BUILDLINK_API_DEPENDS.MesaLib+= MesaLib>=7.0
This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.