diff --git a/ChangeLog b/ChangeLog index 1701dae8b..afcea3808 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,15746 +1,5 @@ -2008-12-10 Neil Roberts - - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gl/cogl-defines.h.in: - * clutter/cogl/gl/cogl-context.h: - * clutter/cogl/common/cogl-mesh.c: Rename the glBufferDataSub - function to glBufferSubData. When calling glXGetProcAddress with - the former Mesa returns a stub dispatch function which will - segfault if you try to use it. With NVIDIA it returns NULL so - _cogl_features_init decides the card doesn't have VBO support. - -2008-12-10 Neil Roberts - - Bug 1323 - ClutterBehaviorDepth conflicts with other behaviors - - * clutter/clutter-behaviour-ellipse.c (actor_apply_knot_foreach): - Don't set the depth if there is no x or y tilt. That way it can - still be used in conjunction with ClutterBehaviourDepth. Thanks to - Tonny Tzeng. - 2008-12-08 Emmanuele Bassi - * clutter/clutter-binding-pool.h: Fix the ActivateFunc - documentation by adding a "return value" annotation. - -2008-12-08 Emmanuele Bassi - - * clutter/Makefile.am: - * clutter/clutter.h: Add ClutterBindingPool to the build. - - * clutter/clutter-binding-pool.c: - * clutter/clutter-binding-pool.h: Add ClutterBindingPool, a data - structure meant to hold (key symbol, modifiers) pairs and associate - them to a closure. The ClutterBindingPool can be used to install - key bindings for actors and then execute closures inside the - key-press-event signal handlers, removing the need for big - switch() or if() blocks for each key. - - * clutter/clutter-event.c: Consistently use "key symbol" instead - of "key value". - - * clutter/clutter-event.h: Add more modifier masks. - - * clutter/clutter-marshal.list: - - * tests/conform/Makefile.am: - * tests/conform/test-binding-pool.c: - * tests/conform/test-conform-main.c: Add ClutterBindingPool - conformance test. - - * tests/interactive/Makefile.am: - * tests/interactive/test-binding-pool.c: Add interactive test (and - example code) for the ClutterBindingPool usage. - -2008-12-08 Neil Roberts - - * clutter/clutter-main.c (_clutter_do_pick): Restore the GL_DITHER - state after reading the pixel value instead of before. Suggested - in bug 1328 thanks to Guy Zadickario. - -2008-12-05 Emmanuele Bassi - - Bug 1309 - clutter_timeline_new and clutter_timeline_set_speed - have two standard of the fps limitation - - * clutter/clutter-timeline.c: - (clutter_timeline_class_init): Set the maximum value of the - :fps property to be G_MAXUINT. (Zhang Wei) - -2008-12-05 Neil Roberts - - * clutter/clutter-entry.c: Fix the 'Since' annotation in the - gtk-doc. - -2008-12-05 Neil Roberts - - * clutter/clutter-timeline.c: - * clutter/clutter-texture.c: - * clutter/clutter-stage.c: - * clutter/clutter-label.c: - * clutter/clutter-behaviour-path.c: - * clutter/clutter-actor.c: Fix the 'Since' annotation in the - gtk-doc. - -2008-12-05 Neil Roberts - - Bug 1252 - Merge ClutterBehaviourPath and ClutterBehaviourBspline - - * clutter/clutter-path.h: - * clutter/clutter-path.c: Implementation of new ClutterPath object - to represent a path combining straight line and bezier curve - elements. - - * clutter/clutter.h: Include clutter-path.h and remove - clutter-behaviour-bspline.h - - * tests/interactive/test-threads.c (test_threads_main): - * tests/interactive/test-script.c: - * tests/interactive/test-behave.c (test_behave_main): Use new path - API - - * clutter/clutter-effect.c: Use the new ClutterBehaviourPath API. - - * clutter/clutter-bezier.h: - * clutter/clutter-bezier.c: Moved bezier curve handling code out - from clutter-behaviour-bspline.c to a separate file. - - * clutter/clutter-behaviour-path.h: - * clutter/clutter-behaviour-path.c: Reimplemented to work with a - ClutterPath - - * clutter/clutter-behaviour-bspline.h: - * clutter/clutter-behaviour-bspline.c: Removed - - * clutter/Makefile.am: Add clutter-path and clutter-bezier, remove - clutter-behaviour-bspline. - - * tests/conform/test-path.c: New automatic test for ClutterPath - consistency - - * tests/conform/test-conform-main.c (main): Add test_path - - * tests/conform/Makefile.am (test_conformance_SOURCES): Add - test-path.c - - * clutter/clutter-sections.txt: Add ClutterPath docs - - * clutter/clutter.types: - * clutter/clutter-docs.xml: - * doc/reference/clutter/clutter-animation-tutorial.xml: Remove - mention of ClutterBehaviourBspline - - * clutter/clutter-marshal.list: Add VOID:UINT - -2008-12-04 Neil Roberts - - Bug 1297 - Bring back support for GL_ARB_texture_rectangle - - * clutter/cogl/gl/cogl-texture.c (cogl_texture_new_from_foreign, - (_cogl_texture_quad_hw, cogl_texture_polygon), - (_cogl_texture_quad_sw): Support GL_ARB_texture_rectangle textures - - * clutter/glx/clutter-glx-texture-pixmap.c: Use rectangle textures - when NPOTs are not available or it is forced by the - CLUTTER_PIXMAP_TEXTURE_RECTANGLE environment variable. - - * clutter/cogl/gl/cogl.c (cogl_enable): Allow enabling - GL_TEXTURE_RECTANGLE_ARB. - -2008-12-04 Neil Roberts - - Bug 1172 - Disjoint paths and clip to path - - * clutter/cogl/cogl-path.h: - * clutter/cogl/common/cogl-primitives.c: - * clutter/cogl/common/cogl-primitives.h: - * clutter/cogl/gl/cogl-primitives.c: - * clutter/cogl/gles/cogl-primitives.c: Changed the semantics of - cogl_path_move_to. Previously this always started a new path but - now it instead starts a new disjoint sub path. The path isn't - cleared until you call either cogl_path_stroke, cogl_path_fill or - cogl_path_new. There are also cogl_path_stroke_preserve and - cogl_path_fill_preserve functions. - - * clutter/cogl/gl/cogl-context.c: - * clutter/cogl/gl/cogl-context.h: - * clutter/cogl/gles/cogl-context.c: - * clutter/cogl/gles/cogl-context.h: Convert the path nodes array - to a GArray. - - * clutter/cogl/gl/cogl-texture.c: - * clutter/cogl/gles/cogl-texture.c: Call cogl_clip_ensure - - * clutter/cogl/common/cogl-clip-stack.c: - * clutter/cogl/common/cogl-clip-stack.h: Simplified the clip - stack code quite a bit to make it more maintainable. Previously - whenever you added a new clip it would go through a separate route - to immediately intersect with the current clip and when you - removed it again it would immediately rebuild the entire clip. Now - when you add or remove a clip it doesn't do anything immediately - but just sets a dirty flag instead. - - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/cogl.c: Taken away the code to intersect - stencil clips when there is exactly one stencil bit. It won't work - with path clips and I don't know of any platform that doesn't have - eight or zero stencil bits. It needs at least three bits to - intersect a path with an existing clip. cogl_features_init now - just decides you don't have a stencil buffer at all if you have - less than three bits. - - * clutter/cogl/cogl.h.in: New functions and documentation. - - * tests/interactive/test-clip.c: Replaced with a different test - that lets you add and remove clips. The three different mouse - buttons add clips in different shapes. This makes it easier to - test multiple levels of clipping. - - * tests/interactive/test-cogl-primitives.c: Use - cogl_path_stroke_preserve when using the same path again. - - * doc/reference/cogl/cogl-sections.txt: Document the new - functions. - -2008-12-03 Robert Bragg - - Bug 1303 - clutter_glx_texture_pixmap_using_extension doesn't check if - fallbacks are being used - - * glx/clutter-glx-texture-pixmap.c: - clutter_glx_texture_pixmap_using_extension now checks to see if - priv->use_fallback is TRUE not just that the tfp extension is - available. - -2008-12-01 Neil Roberts - - Bug 1305 - NPOT textures unaligned to a pixel sometimes have - border artifacts - - * clutter/cogl/gl/cogl-texture.c: Set the wrap mode of a texture - on demand - - Instead of setting the wrap mode once per texture at creation, it - is now changed whenever the texture is drawn. The previous value - is cached so that it isn't changed if the value is the same. - - This is used in _cogl_texture_quad_hw to only enable GL_REPEAT - mode when the coordinates are not in the range [0,1]. Otherwise it - can pull in pixels from the other edge when the texture is - rendered off-pixel. - -2008-11-28 Neil Roberts - - * tests/conform/test-backface-culling.c (TEXTURE_SIZE): Don't set - to a funny size on GLES because it will break cogl_texture_polygon - -2008-11-28 Neil Roberts - - * tests/conform/test-backface-culling.c: New test for backface - culling - - * tests/conform/test-conform-main.c (main): Add - /texture/test_backface_culing - - * tests/conform/Makefile.am (test_conformance_SOURCES): Add - test-backface-culling.c - -2008-11-28 Neil Roberts - - * tests/conform/test-mesh-mutability.c: - * tests/conform/test-mesh-interleved.c: - * tests/conform/test-mesh-contiguous.c: Remove the idle source - after the test is complete so that it won't interfere with other - tests. - -2008-11-26 Emmanuele Bassi - - * clutter/clutter-group.c: - (clutter_group_real_raise), (clutter_group_real_lower): Repaint - the Group on raise and lower. - -2008-11-26 Neil Roberts - - * clutter/cogl/gl/cogl-texture.c (cogl_texture_rectangle): Fixed - the test for whether to use hardware tiling. Previously it assumed - that texture coordinates are in increasing order but this is not - the case since bug 1057 was fixed. The texture coordinates are now - sorted later. It also allowed negative coordinates which doesn't - make sense if the texture has waste. - -2008-11-25 Emmanuele Bassi - - * configure.ac: Remove stray dependency on gdk-pixbuf-xlib; we - don't use the xlib specific API anymore. (thanks to Matthias - Clasen) - -2008-11-25 Neil Roberts - - Bug 1299 - clutter_score_remove will segmentation fault if - timelines are more than 52 and continue to remove them - - * clutter/clutter-score.c (traverse_children): Don't destroy the - entry in the handler for REMOVE_BY_ID. It will be removed again - anyway in the call to g_node_traverse. This was causing a - crash. Thanks to zhangwei for spotting. - -2008-11-24 Neil Roberts - - Add a wrapper library to help testing without NPOTs. - - * tests/tools/Makefile.am: Optionally build the - libdisable-npots.la library depending on whether libdl was - detected in the configure script. A helper script is also - generated to setup the LD_PRELOAD. - - * tests/conform/Makefile.am: There are now two versions of the - test-report and full-report rules. test-report-normal is the same - as before and test-report-disable-npots runs the tests with the - disable-npots wrapper script. The full-report rule runs both of - them and displays two separate HTML files. The test-report rule - just runs the normal version as before. - - * configure.ac: Add a test for libdl - - * tests/tools/disable-npots.sh.in: New file. Template for the - helper script - - * tests/tools/disable-npots.c: New file - -2008-11-24 Neil Roberts - - * clutter/cogl/gl/cogl-texture.c (cogl_texture_polygon): Fix the - equation for calculating texture coordinates when using sliced - textures. This became broken in revision 3520. - -2008-11-21 Neil Roberts - - Bug 1270 - Update to mingw-cross-compile.sh - - * build/mingw/mingw-cross-compile.sh: Update to download latest - binaries. Patch thanks to David Kedves. - -2008-11-21 Neil Roberts - - Bug 1271 - mingw compiling failed: undefined reference to - `_glDrawRangeElements@24' - - Resolve glDrawRangeElements with cogl_get_proc_address instead of - calling it directly because functions defined in GL > 1.1 are not - directly exported under Windows. - - * clutter/cogl/common/cogl-mesh.c: Use the function pointer from - the context - - * clutter/cogl/gl/cogl-context.c (cogl_create_context): Initialise - function pointer. - - * clutter/cogl/gl/cogl-context.h (CoglContext): Add a function - pointer - - * clutter/cogl/gl/cogl-defines.h.in: Add a typedef for the - function pointer. - - * clutter/cogl/gl/cogl.c (_cogl_features_init): Resolve - glDrawRangeElements - -2008-11-21 Neil Roberts - - * tests/interactive/Makefile.am: - * tests/conform/Makefile.am: Use $(EXEEXT) when specifying a - dependency on an executable otherwise there won't be a rule to - build it on Windows. - -2008-11-21 Neil Roberts - - Bug 1269 - mingw32 building failed at clutter-media.c - - * clutter/clutter-media.c: Rename the 'ERROR' signal enum to - 'ERROR_SIGNAL' otherwise it clashes with windgi.h. Thanks to David - Kedves - -2008-11-21 Neil Roberts - - * clutter/pango/cogl-pango.h: Include pango/pango.h to get - pango-renderer.h. In versions prior to 1.18.4 pangocairo.h does - not include pango-renderer.h - -2008-11-21 Neil Roberts - - Bug 1280 - clutter_score_append_at_marker lead to segmentation - fault in trunk and incorrect appearance in clutter-0.8 - - * clutter/clutter-score.c (start_children_entries): Check whether - the child timeline is actually attached at a marker before - comparing whether the marker's name matches the marker - reached. This fixes a crash that happens when a marker is reached - on a timeline that also has child timelines attached at the - end. Thanks to zhangwei for spotting. - -2008-11-20 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_set_property): Add sanity checks for NULL - boxed values when setting the rotation center. - - * tests/interactive/test-animation.c: - (on_button_press): Add an example on how to use the rotation - properties to animate an actor. - -2008-11-18 Neil Roberts - - Fixed some trivial compiler warnings - - * tests/interactive/test-pixmap.c (create_pixmap): Use a format - string instead of passing the error message directly to g_error. - - * tests/interactive/test-easing.c (test_easing_main) - (on_button_press): - * tests/interactive/test-animation.c (on_button_press): Use - unsigned variables for the results from clutter_actor_get_size - otherwise it complains about the pointer signedness being - different. - - * clutter/clutter-script.c (clutter_script_add_search_paths): Use - G_GSIZE_FORMAT instead of %d for a gsize parameter otherwise it - gets upset on 64-bit. - -2008-11-18 Neil Roberts - - * tests/conform/test-timeline.c (test_timeline): Remove the delay - idle handler after the test is finished, otherwise it will - continue running during subsequent tests. This was breaking - test_timeline_interpolate. - -2008-11-18 Robert Bragg - - * clutter/cogl/common/cogl-mesh.c: - Re-works validate_custom_attribute_name() so it doesn't access an - un-initialised variable. - -2008-11-18 Robert Bragg - - A comparison of gl/cogl-texture.c and gles/cogl-texture.c, to reduce - differences and improve maintainability. - - * clutter/cogl/gl/cogl-context.h: - Adds a CoglTextureGLVertex typedef + texture_vertices and - texture_vertices_size members to CoglContext for using vertex arrays - like GLES does - - * clutter/cogl/gl/cogl-context.c: - Initializes texture_vertices + texture_vertices_size members - - * clutter/cogl/gl/cogl-internal.h: - Adds COGL_ENABLE_COLOR_ARRAY - - * clutter/cogl/gl/cogl.c: - Add COGL_ENABLE_COLOR_ARRAY support to cogl_enable - - * clutter/cogl/gles/cogl-context.h: - Change the CoglTextureGLVertex to use GLfloat for the position - and texture coord attributes and GLubyte for the color. - - * clutter/cogl/gles/cogl-texture-private.h: - Adds a wrap_mode member like GL has. - - * clutter/cogl/gl/cogl-texture.c - * clutter/cogl/gles/cogl-texture.c: - Improves the comparability of the files, such that the remaining - differences, better reflect the fundamental differences needed - between GL and GLES. Notably GL no longer uses glBegin/glEnd for - submitting vertices, it uses vertex arrays like GLES and this gives - a small but measurable fps improvement for test-text. - -2008-11-18 Robert Bragg - - * clutter/cogl/gl/cogl-internal.h - * clutter/cogl/gles/cogl-internal.h: - Removes semicolon after the GE() macro since that breaks using it as a - single statement. - -2008-11-18 Emmanuele Bassi - - * clutter/clutter.h: Add clutter-shader.h and - clutter-shader-types.h to the global include. - -2008-11-18 Emmanuele Bassi - - * clutter/cogl/cogl-shader.h: Add a function for setting an - integer uniform, similar to cogl_program_uniform_1f(). - - * clutter/cogl/gl/cogl-program.c: Implement the GL version - of cogl_program_uniform_1i(). - - * clutter/cogl/gles/cogl-program.c: Implement the GLES version - of cogl_program_uniform_1i(). - -2008-11-18 Emmanuele Bassi - - Bug 1049 - Clutter doesn't support most GLSL uniforms (patch - by Chris Lord and Neil Roberts) - - * README: Update release notes. - - * clutter/Makefile.am: - * clutter/clutter-shader-types.[ch]: Add GValue types for - shader values. - - * clutter/clutter-actor.[ch]: Update the shader API to use - the newly added GValue support for GLSL shader uniform - setters. - - * clutter/clutter-shader.[ch]: Add float and integer convenience - API for single value GLSL uniform setters. - - * clutter/cogl/cogl-shader.h: Add new uniform setters. - - * clutter/cogl/gl/cogl-context.c: - * clutter/cogl/gl/cogl-context.h: - * clutter/cogl/gl/cogl-defines.h.in: - * clutter/cogl/gl/cogl-program.c: - * clutter/cogl/gl/cogl.c: Update the GL implementation of COGL - to handle the GLSL uniform setters. - - * clutter/cogl/gles/cogl-gles2-wrapper.c: - * clutter/cogl/gles/cogl-gles2-wrapper.h: - * clutter/cogl/gles/cogl-internal.h: - * clutter/cogl/gles/cogl-program.c: Update the GLES 2.0 implementation - of COGL to handle the GLSL uniform setters. - - * doc/reference/clutter/clutter-sections.txt: - * doc/reference/cogl/cogl-sections.txt: Update the documentation. - - * tests/interactive/test-fbo.c: - * tests/interactive/test-shader.c: Update the shader tests. - -2008-11-18 Emmanuele Bassi - - * clutter/clutter-texture.c: - (clutter_texture_get_preferred_width): Fix the usage of the - fixed point division macro. - -2008-11-18 Emmanuele Bassi - - * tests/conform/test-conform-main.c (main): Do not run the - conformance test suite if we are on X11 but we do not have - a DISPLAY available. Some of the tests require a DISPLAY, - and everything passes through a clutter_init() call which will - fail anyway. If we are running make distcheck on an headless - box we might as well just skip the conformance test suite - without a meaningless error. - -2008-11-18 Emmanuele Bassi - - * tests/conform/test-mesh-contiguous.c: - * tests/conform/test-mesh-interleved.c: - * tests/conform/test-mesh-mutability.c: Remove the last bare - g_print() from the conformance test suite. - -2008-11-18 Emmanuele Bassi - - * clutter/clutter-alpha.h: - * clutter/clutter-alpha.c: - (clutter_alpha_set_mode): Use a lookup table to find the alpha - function given the animation mode. - - (clutter_exp_in_func), - (clutter_exp_out_func), - (clutter_exp_in_out_func): Add new exponential functions. - - * clutter/clutter-script.c: Update the lookup table with the - new animation modes; match "linear" to the ramp-inc alpha - function. - - * clutter/clutter-types.h: Add new AnimationMode values. - - * tests/interactive/test-easing.c: Update the easing functions - test. - -2008-11-18 Neil Roberts - - * tests/conform/test-pick.c (test_pick): The final result message - when --verbose is used was the wrong way around - -2008-11-18 Neil Roberts - - * tests/conform/test-conform-main.c (main): Fixed a typo in the - name of the path for test_realized. - -2008-11-17 Emmanuele Bassi - - Bug 1014 - Clutter Animation API Improvements - - * clutter/Makefile.am: - * clutter/clutter.h: Update the build - - * clutter/clutter-types.h: Add AnimationMode, an enumeration - for easing functions. - - * clutter/clutter-alpha.[ch]: Add the :mode property to - control the function bound to an Alpha instance using an - enumeration value. Also add six new alpha functions: - - - ease-in, ease-out, ease-in-out - - sine-in, sine-out, sine-in-out - - * clutter/clutter-deprecated.h: Deprecate the #defines for - the alpha functions. They will be replaced by entries in the - ClutterAnimationMode. - - * clutter/clutter-interval.[ch]: Add ClutterInterval, an - object for defining, validating and computing an interval - between two values. - - * clutter/clutter-animation.[ch]: Add ClutterAnimation, an - object responsible for animation the properties of a single - actor along an interval of values. ClutterAnimation memory - management is automatic. A simple wrapper method for - ClutterActor is provided: - - clutter_actor_animate() - - which will create, or update, an animation for the passed - actor. - - * clutter/clutter-debug.h: - * clutter/clutter-main.c: Add a new 'animation' debug note. - - * clutter/clutter-script.c: Clean up the alpha functions - whitelist, and add the new functions. - - * doc/reference/clutter/Makefile.am: - * doc/reference/clutter/clutter-sections.txt: Update the - API reference. - - * doc/reference/clutter/clutter-animation.xml: Renamed to - doc/reference/clutter/clutter-animation-tutorial.xml to - avoid clashes with the ClutterAnimation section. - - * doc/reference/clutter/clutter-docs.sgml: Renamed to - doc/reference/clutter/clutter-docs.xml, as it was an XML - file and not a SGML file. - - * tests/Makefile.am: - * tests/interactive/Makefile.am: - * tests/interactive/test-animation.c: - * tests/interactive/test-easing.c: Add two tests for the - new simple animation API and the easing functions. - - * tests/interactive/test-actors.c: - * tests/interactive/test-behave.c: - * tests/interactive/test-depth.c: - * tests/interactive/test-effects.c: - * tests/interactive/test-layout.c: - * tests/interactive/test-multistage.c: - * tests/interactive/test-paint-wrapper.c: - * tests/interactive/test-rotate.c: - * tests/interactive/test-scale.c: - * tests/interactive/test-texture-quality.c: - * tests/interactive/test-threads.c: - * tests/interactive/test-viewport.c: Update interactive tests - to the deprecations and new alpha API. - -2008-11-17 Emmanuele Bassi - - * clutter/clutter-entry.c: - * clutter/clutter-label.c: - * clutter/clutter-rectangle.c: - * clutter/clutter-script.c: - * clutter/clutter-stage.c: Use the ParamSpecColor and GValue - API for ClutterColor-based properties. - -2008-11-14 Robert Bragg - - * tests/interactive/Makefile.am - * tests/interactive/test-pixmap.c: - test-pixmap + test-devices accidentally got dropped from the makefiles - when changing the unit test layout; this puts them back. - -2008-11-14 Emmanuele Bassi - - Bug 1265 - ClutterScore doesn't emit 'started' signal (Bastian - Winkler) - - * clutter/clutter-score.c: Emit the ::started signal. - - * tests/interactive/test-score.c: Check the emission of the - Score signals. - -2008-11-13 Neil Roberts - - * clutter/cogl/gles/cogl-gles2-wrapper.h: - * clutter/cogl/gles/cogl-gles2-wrapper.c: - Initialise the 'tex' sampler uniform to 0. The GLSL spec - specifically says that you must initialize sampler uniforms. This - fixes texturing for GLES 2 when using the PowerVR simulator via - software Mesa. - -2008-11-13 Robert Bragg - - Gets the mesh API working with GLES2 - - * clutter/cogl/common/cogl-mesh.c: - Make sure we use the appropriate cogl_wrap_gl* funcs as appropriate - - * clutter/cogl/gles/cogl-gles2-wrapper.c - * clutter/cogl/gles/cogl-gles2-wrapper.h: - In our glColorPointer wrapper we needed to mark our color attribute - as normalized. - - * tests/conform/Makefile.am: - When creating unit test symlinks we use the -l gtester option to - list tests, but when using the PVR SDK the test binary also spews - out some extra info that caused lots of random symlinks to be - created. We now grep for lines starting with a '/' - - * tests/conform/test-mesh-contiguous.c - * tests/conform/test-mesh-mutability.c: - Use cogl_set_source_color instead of directly calling glColor4ub - -2008-11-13 Neil Roberts - - * clutter/clutter-actor.c (clutter_actor_get_paint_visibility): - Fix logic so that it won't return TRUE for a hidden stage. - -2008-11-13 Emmanuele Bassi - - * clutter/clutter-behaviour-ellipse.c: - (clutter_behaviour_ellipse_applied): Do not reset the depth - of the actors to which the Ellipse behaviour has been applied - to, unless the behaviour is going to update it because it has - a tilt on the X or Y axis. - -2008-11-13 Neil Roberts - - * clutter/clutter-actor.c (clutter_actor_get_reactive) - (clutter_actor_get_paint_visibility): Be sure to return exactly - TRUE or FALSE instead of zero or some non-zero value in these - functions that return a gboolean. Thanks to Kai Wei for spotting. - -2008-11-12 Emmanuele Bassi - - * tests/conform/Makefile.am: - * tests/conform/test-conform-main.c: - * tests/conform/test-paint-opacity.c: Add test unit for label, - rectangle and paint opacity. - -2008-11-12 Emmanuele Bassi - - * clutter/cogl/cogl-color.h: - * clutter/cogl/cogl-path.h: - * clutter/cogl/cogl-types.h: - * clutter/cogl/common/cogl-color.c: Deprecated cogl_color() - in favour of cogl_set_source_color() and friends; store the - CoglColor components as unsigned bytes instead of fixed point - normalized values; add functions for allocating, copying and - freeing CoglColor, for use of language bindings. - - * clutter/cogl/cogl.h.in: - * clutter/cogl/cogl-deprecated.h: Added cogl-deprecated.h, - an header file containing the deprecation symbols similar - to clutter-deprecated.h. - - * clutter/cogl/gl/Makefile.am: - * clutter/cogl/gl/cogl-texture.c: - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/Makefile.am: - * clutter/cogl/gles/cogl-texture.c: - * clutter/cogl/gles/cogl.c: Update the GL and GLES implementations - of COGL after the CoglColor changes. - - * clutter/clutter-actor.c: - * clutter/clutter-clone-texture.c: - * clutter/clutter-entry.c: - * clutter/clutter-label.c: - * clutter/clutter-rectangle.c: - * clutter/clutter-texture.c: Do not use CoglColor whenever it - is possible, and use cogl_set_source_color4ub() instead. - - * clutter/pango/cogl-pango-render.c: Ditto as above. - - * doc/reference/clutter/subclassing-ClutterActor.xml: - * doc/reference/cogl/cogl-sections.txt: Update the documentation. - - * tests/interactive/test-cogl-offscreen.c: - * tests/interactive/test-cogl-primitives.c: - * tests/interactive/test-cogl-tex-convert.c: - * tests/interactive/test-cogl-tex-foreign.c: - * tests/interactive/test-cogl-tex-getset.c: - * tests/interactive/test-cogl-tex-polygon.c: - * tests/interactive/test-cogl-tex-tile.c: - * tests/interactive/test-paint-wrapper.c: Drop the usage of - CoglColor whenever it is possible. - -2008-11-12 Neil Roberts - - Bug 1057 - cogl_texture_rectangle doesn't support backward - coordinates - - * clutter/cogl/gl/cogl-texture.c: Instead of sorting the vertex - and texture coordinates passed to cogl_texture_rectangle, just - swap both sets whenever the texture coordinates are backward. - -2008-11-12 Neil Roberts - - * clutter/clutter-rectangle.c (clutter_rectangle_paint): Fixed so - that it doesn't use the alpha value from the border colour to draw - the rectangle - -2008-11-12 Neil Roberts - - * clutter/cogl/gles/Makefile.am (libclutterinclude_HEADERS): - * clutter/cogl/gl/Makefile.am (libclutterinclude_HEADERS): - * clutter/cogl/common/Makefile.am - (libclutter_cogl_common_la_SOURCES): Move cogl-mesh.h into the - headers for libclutter so that it will get installed. - -2008-11-12 Neil Roberts - - Fix warnings in mesh tests - - * tests/conform/test-mesh-mutability.c (on_paint): - * tests/conform/test-mesh-interleved.c (on_paint): - * tests/conform/test-mesh-contiguous.c (on_paint): Use g_usleep - instead of sleep - - * tests/conform/test-mesh-mutability.c (queue_redraw): - * tests/conform/test-mesh-interleved.c (queue_redraw): - * tests/conform/test-mesh-contiguous.c (queue_redraw): Added - missing return statement - - * clutter/cogl/cogl-mesh.h: Add a declaration for - cogl_mesh_submit - - * clutter/cogl/common/cogl-mesh.c (cogl_mesh_submit): Move the - documentation to cogl-mesh.h to match the rest of the functions - -2008-11-10 Robert Bragg - - Bug 1164 - Implements the proposed Mesh API - - * clutter/cogl/cogl-mesh.h - * clutter/cogl/cogl-types.h - * clutter/cogl/cogl.h.in - * clutter/cogl/common/Makefile.am - * clutter/cogl/common/cogl-mesh-private.h - * clutter/cogl/common/cogl-mesh.c - * clutter/cogl/gl/cogl-context.c - * clutter/cogl/gl/cogl-context.h - * clutter/cogl/gl/cogl-defines.h.in - * clutter/cogl/gl/cogl.c - * clutter/cogl/gles/cogl-context.c - * clutter/cogl/gles/cogl-context.h: - The Mesh API provides a means for submitting an extensible number of - per vertex attributes to OpenGL in a way that doesn't require format - conversions and so that the data can be mapped into the GPU (in vertex - buffer objects) for - hopefully - fast re-use. - - There are a number of things we can potentially use this API for, but - right now this just provides a foundation to build on. Please read - the extensive list of TODO items in cogl-mesh.c for examples. - - Please refer to the cogl-mesh section in the reference manual for - documentation of the API. - - * tests/conform/Makefile.am - * tests/conform/test-conform-main.c - * tests/conform/test-mesh-contiguous.c - * tests/conform/test-mesh-interleved.c - * tests/conform/test-mesh-mutability.c: - Privides basic coverage testing for the mesh API. - -2008-11-10 Robert Bragg - - Bug 1164 - Implements the proposed Mesh API - - * clutter/cogl/cogl-mesh.h - * clutter/cogl/cogl-types.h - * clutter/cogl/cogl.h.in - * clutter/cogl/common/Makefile.am - * clutter/cogl/common/cogl-mesh-private.h - * clutter/cogl/common/cogl-mesh.c - * clutter/cogl/gl/cogl-context.c - * clutter/cogl/gl/cogl-context.h - * clutter/cogl/gl/cogl-defines.h.in - * clutter/cogl/gl/cogl.c - * clutter/cogl/gles/cogl-context.c - * clutter/cogl/gles/cogl-context.h: - The Mesh API provides a means for submitting an extensible number of - per vertex attributes to OpenGL in a way that doesn't require format - conversions and so that the data can be mapped into the GPU (in vertex - buffer objects) for - hopefully - fast re-use. - - There are a number of things we can potentially use this API for, but - right now this just provides a foundation to build on. Please read - the extensive list of TODO items in cogl-mesh.c for examples. - - Please refer to the cogl-mesh section in the reference manual for - documentation of the API. - - * tests/conform/Makefile.am - * tests/conform/test-conform-main.c - * tests/conform/test-mesh-contiguous.c - * tests/conform/test-mesh-interleved.c - * tests/conform/test-mesh-mutability.c: - Privides basic coverage testing for the mesh API. - -2008-11-10 Robert Bragg - - * tests/conform/ADDING_NEW_TESTS - * tests/conform/test-conform-common.c - * tests/conform/test-pick.c: - Instead of using clutter_stage_new /clutter_actor_destroy as a way to - avoid cascading side effects between unit tests, due to left over - actors, we now destroy all children of the default stage between - tests instead. - - * tests/conform/wrapper.sh: - Adds a convenience note about how to run valgrind for an individual - unit test - -2008-11-10 Neil Roberts - - * tests/interactive/test-main.c (main): Allow more than two - arguments so that the remaining arguments can be passed to the - test. This is needed for test-behave for example which can take a - --path argument. - -2008-11-10 Emmanuele Bassi - - * clutter/clutter-texture.c: Remove an unused function. - -2008-11-10 Emmanuele Bassi - - * tests/conform/test-label-cache.c: - * tests/conform/test-pick.c: - * tests/conform/test-timeline.c: Show all the output messages only - if the test was done with the verbose flag turned on. - - * tests/interactive/test-main.c: Do not use the (gpointer*) cast, - but use a temporary gpointer instead. - -2008-11-10 Robert Bragg - - * tests/conform/Makefile.am: - * tests/conform/wrapper.sh: - * tests/conform/test-conform-main.c: - * tests/conform/test-timeline.c: - Adds Neil's updates to test-timeline.c so it now works with the new - unit testing infrastructure. - - Also some fixes to ensure wrappers get setup correctly for the - timeline tests. - - * tests/interactive/test-main.c: - cast the symbol return pointer as (gpointer *) to avoid warning - - * tests/conform/test-pick.c: - g_assert that the test passes, instead of using exit() - - * test/conform/ADDING_NEW_TESTS: - Fixes a silly typo - -2008-11-08 Emmanuele Bassi - - * tests/conform/Makefile.am: - * tests/conform/test-actor-invariants.c: - * tests/conform/test-conform-main.c: Move the actor invariants - unit to the conform section of the test suite. - - * tests/interactive/Makefile.am: - * tests/interactive/test-entry-auto.c: - * tests/interactive/test-invariants.c: Remove the entry-auto - and invariants test, since those two belong to the conform - section. - -2008-11-07 Robert Bragg - - Bug 1162 - Re-works the tests/ to use the glib-2.16 unit testing - framework - - * configure.ac: - * tests/*: - The tests have been reorganised into different categories: conformance, - interactive and micro benchmarks. - - conformance tests can be run as part of automated tests - - interactive tests are basically all the existing tests - - micro benchmarks focus on a single performance metric - - I converted the timeline tests to conformance tests and also added some - tests from Neil Roberts and Ebassi. - - Note: currently only the conformance tests use the glib test APIs, - though the micro benchmarks should too. - - The other change is to make the unit tests link into monolithic binaries - which makes the build time for unit tests considerably faster. To deal - with the extra complexity this adds to debugging individual tests I - have added some sugar to the makefiles so all the tests can be run - directly via a symlink and when an individual test is run this way, - then a note is printed to the terminal explaining exactly how that test - may be debugged using GDB. - - There is a convenience make rule: 'make test-report', that will run all - the conformance tests and hopefully even open the results in your web - browser. It skips some of the slower timeline tests, but you can run - those using 'make full-report' - -2008-11-07 Emmanuele Bassi - - * clutter/clutter-media.c: Improve documentation of the - ClutterMedia interface. - -2008-11-07 Matthew Allum - - Bug 1238 - [PATCH] Pack bitfields in ClutterTexturePrivate - - * clutter/clutter-texture.c: - - Using 'guint my_field : 1' for booleans to save space only - makes sense if you group all such fields together. Fix - grouping for ClutterTexturePrivate. Thanks to Owen Taylor for - patch. - -2008-11-07 Matthew Allum - - Bug 1237 - clutter_texture_set_filter_quality calls - clutter_texture_[un]realize - - * clutter/clutter-texture.c: (clutter_texture_set_filter_quality): - Call clutter_actor_[un]realize and keep visibility state - -2008-11-07 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * clutter/clutter-clone-texture.c: - * clutter/clutter-private.h: - * clutter/clutter-texture.c: - * clutter/x11/clutter-x11-texture-pixmap.c: - - Attempt to lower overhead of updating TFP's (particularly mipmaped). - Compresses mipmap updates only for visible TFPs. - Avoiding updates for non visible TFP's whilst keeping visible - clones working ok. - -2008-11-06 Neil Roberts - - Bug 1230 - Pick fails on low precision color buffers - - * clutter/clutter-main.c (_clutter_id_to_color): When using fuzzy - picking to pick a color for an actor, it would previously set the - fuzzy bit and then all but the most significant of the remaining - unused bits. This meant that for 16-bit displays it would end up - with a strange pattern for the unused bits like 1011 which could - cause it to round up. Now it just sets all but the most - significant of all of the unused bits giving a pattern like - 0111. Thanks to Guy Zadickario for the patch. - -2008-11-06 Neil Roberts - - * clutter/cogl/gles/cogl.c (cogl_perspective): - * clutter/cogl/common/cogl-fixed.c (cogl_fixed_sin) - (cogl_angle_sin, cogl_angle_tan, cogl_fixed_sqrt): Replaced uses - of 1 + ~x with just -x which is equivalent and easier to - understand. - -2008-11-06 Emmanuele Bassi - - Bug 1233 - CLUTTER_ALPHA_SINE_INC is broken in trunk - - * clutter/clutter-alpha.c: Fix a rollover in the sine functions. - -2008-11-05 Neil Roberts - - * clutter/clutter-color.c (clutter_color_new): Remove CLAMP macros - around the component parameters because they are guint8 anyway so - the CLAMP is redundant and it causes a warning. - -2008-11-04 Thomas Wood - - * clutter/clutter-color.c: Update ClutterColor documentation as - changes have been backported to 0.8.4. - -2008-11-04 Emmanuele Bassi - - * clutter/clutter-script.c: Document the "is-default" member of - a ClutterStage definition. - -2008-11-04 Neil Roberts - - * clutter/cogl/gl/cogl.c (cogl_perspective): Use the accurate - 64-bit multiplication macro instead of COGL_FIXED_FAST_DIV for - calculating xmax as was done previously. This fixes - test-perspective and other tests that had a gone a bit skewiff. - -2008-11-04 Neil Roberts - - Bug 1181 - In Score, timelines, appended at markers, are also - called on complete - - * clutter/clutter-score.c (start_children_entries): Use the name - of the marker to start as the data parameter and only start child - timelines that have the same marker name. Previously the - ClutterScore would just start all child entries when a marker was - reached or the timeline completed regardless of whether they were - added with a marker or not. Thanks to Mihail Naydenov for - reporting the bug. - -2008-11-03 Emmanuele Bassi - - * clutter/cogl/gl/Makefile.am: Whitespace fixes. - - * clutter/cogl/gles/Makefile.am: Put back a missing backslash - that broke the GLES build. - -2008-11-03 Emmanuele Bassi - - Bug 1231 - Build fails in gles flavour in revision 3442 - - * clutter/cogl/gles/cogl-context.h: Fix remaining use of - ClutterFixed over CoglFixed. (Michael Boccara) - -2008-11-03 Neil Roberts - - Bug 1207 - Timelines sometime miss markers - - * clutter/clutter-timeline.c (timeline_timeout_func): Move the - code for firing the new-frame and marker-reached signals into a - separate static function so that it can also be called when the - last frame is reached. Also fix an issue where the frame numbers - were changed in the wrong direction when detecting missed markers - in a reversed timeline. Based on a patch by Michael Boccara. - - * tests/test-timeline.c: Now tries to automatically verify whether - the test worked by keeping track of all the signal emissions. The - timelines are run a second time with an extra timeout that causes - delays to simulate skipped frames. - -2008-10-31 Emmanuele Bassi - - * clutter/pango/cogl-pango-fontmap.c: - * clutter/pango/cogl-pango-render.c: Whitespace fixes and code - duplication removal. Plus, start documenting the CoglPango API. - -2008-10-31 Matthew Allum - - * clutter/clutter-texture.c: (clutter_texture_set_filter_quality), - (clutter_texture_get_filter_quality): - Fix up some logic, typos. - - * clutter/glx/clutter-glx-texture-pixmap.c: - Improve support for mipmaped TFP textures. - -2008-10-31 Emmanuele Bassi - - Bug 1200 - Crash with invalid DISPLAY - - * clutter/clutter-main.c: Use the ClutterBackend wrapper API - instead of directly checking the class structure. - - * clutter/glx/clutter-backend-glx.c: Return the correct value - in case of failure. - - * clutter/x11/clutter-backend-x11.c: Bail out if XOpenDisplay() - failed. - -2008-10-30 Emmanuele Bassi - - * clutter/cogl/cogl-color.h: - * clutter/cogl/cogl-fixed.h: - * clutter/cogl/cogl-offscreen.h: - * clutter/cogl/cogl-path.h: - * clutter/cogl/cogl-shader.h: - * clutter/cogl/cogl-texture.h: - * clutter/cogl/cogl-types.h: Add copyright and licensing - notice to the newly added files. - -2008-10-30 Emmanuele Bassi - - Bug 1219 - Clean up cogl.h - - * clutter/cogl/cogl.h.in: - * clutter/cogl/cogl-offscreen.h: - * clutter/cogl/cogl-path.h: - * clutter/cogl/cogl-shader.h: - * clutter/cogl/cogl-texture.h: - * clutter/cogl/cogl-types.h: Split up the massive cogl.h file - into sub-header for each section of the API. - - * clutter/cogl/gl/*: - * clutter/cogl/gles/*: Update the GL and GLES implementations - of COGL to cope with the new header structure. - - * doc/reference/cogl/Makefile.am: Fix symbol retrieval. - -2008-10-30 Emmanuele Bassi - - Bug 1215 - Move the Pango renderer to the public API - - * clutter/pango/*: Rename PangoClutter -> CoglPango. - - * clutter/Makefile.am: - * clutter/clutter-backend.c: - * clutter/clutter-entry.c: - * clutter/clutter-label.c: - * clutter/clutter-main.[ch]: - * clutter/clutter-private.h: Update the users of the Pango - renderer API. - - * README: Update release notes. - -2008-10-30 Emmanuele Bassi - - Bug 1212 - Allow only a single include file for Clutter - - * clutter/*.h: Only allow including clutter.h in third - party code. - - * clutter/cogl/cogl-color.h: - * clutter/cogl/cogl-fixed.h: - * clutter/cogl/cogl.h.in: Only allow including cogl.h in - third party code. - - * clutter/cogl/common/Makefile.am: - * clutter/cogl/gl/Makefile.am: - * clutter/cogl/gles/Makefile.am: - * clutter/eglnative/Makefile.am: - * clutter/eglx/Makefile.am: - * clutter/fruity/Makefile.am: - * clutter/glx/Makefile.am: - * clutter/glx/clutter-glx.h: - * clutter/osx/Makefile.am: - * clutter/pango/Makefile.am: - * clutter/sdl/Makefile.am: - * clutter/win32/Makefile.am: - * clutter/x11/Makefile.am: Fix build environment. - - * clutter/x11/clutter-x11-texture-pixmap.h: - * clutter/x11/clutter-x11.h: Fix inclusion rules. - - * tests/test-pixmap.c: Fix inclusion of GdkPixbuf header. - - * README: Update release notes. - -2008-10-30 Emmanuele Bassi - - Bug 1211 - Drop ClutterFeatureFlags usage from COGL - - * clutter/cogl/cogl.h.in: - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/cogl.c: Do not use ClutterFeatureFlags - when CoglFeatureFlags will do. This removes the last usage - of Clutter API inside COGL. - -2008-10-30 Emmanuele Bassi - - Bug 1210 - Add CoglColor API - - * clutter/cogl/cogl-color.h: - * clutter/cogl/cogl.h.in: - * clutter/cogl/common/Makefile.am: - * clutter/cogl/common/cogl-color.c: - * clutter/cogl/gl/Makefile.am: - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/Makefile.am: - * clutter/cogl/gles/cogl-texture.c: - * clutter/cogl/gles/cogl.c: Add a new color-type, to be used by - COGL. CoglColor is optimized to allow the minimum amount of - conversions possible for both GL and GLES implementations. - - * clutter/clutter-actor.c: - * clutter/clutter-clone-texture.c: - * clutter/clutter-entry.c: - * clutter/clutter-main.c: - * clutter/clutter-rectangle.c: - * clutter/clutter-stage.c: - * clutter/clutter-texture.c: Use CoglColor when needed. - - * clutter/pango/pangoclutter-render.c: Use CoglColor when needed. - - * doc/reference/cogl/cogl-docs.sgml: - * doc/reference/cogl/cogl-sections.txt: Update the documentation. - - * tests/test-cogl-offscreen.c: - * tests/test-cogl-primitives.c: - * tests/test-cogl-tex-convert.c: - * tests/test-cogl-tex-foreign.c: - * tests/test-cogl-tex-getset.c: - * tests/test-cogl-tex-polygon.c: - * tests/test-cogl-tex-tile.c: - * tests/test-paint-wrapper.c: Update the tests. - - * README: Update release notes. - -2008-10-30 Emmanuele Bassi - - Bug 1209 - Move fixed point API in COGL - - * clutter/cogl/cogl-fixed.h: - * clutter/cogl/cogl.h.in: - * clutter/cogl/common/Makefile.am: - * clutter/cogl/common/cogl-fixed.c: Add fixed point API, modelled - after the ClutterFixed. The CoglFixed API supercedes the ClutterFixed - one and avoids the dependency of COGL on Clutter's own API. - - * clutter/cogl/common/cogl-clip-stack.c: - * clutter/cogl/common/cogl-primitives.c: - * clutter/cogl/common/cogl-primitives.h: Update internal usage of - ClutterFixed to CoglFixed. - - * clutter/cogl/gl/Makefile.am: - * clutter/cogl/gl/cogl-primitives.c: - * clutter/cogl/gl/cogl-texture.c: - * clutter/cogl/gl/cogl.c: Ditto, in the GL implementation of the - COGL API. - - * clutter/cogl/gles/Makefile.am: - * clutter/cogl/gles/cogl-fbo.c: - * clutter/cogl/gles/cogl-gles2-wrapper.c: - * clutter/cogl/gles/cogl-primitives.c: - * clutter/cogl/gles/cogl-texture.c: - * clutter/cogl/gles/cogl.c: Ditto, in the GLES implementation of - the COGL API. - - * clutter/pango/pangoclutter-glyph-cache.c: - * clutter/pango/pangoclutter-glyph-cache.h: Ditto, in the Pango - renderer glyphs cache. - - * clutter/clutter-fixed.c: - * clutter/clutter-fixed.h: ClutterFixed and related API becomes - a simple transition API for bindings and public Clutter API. - - * clutter/clutter-actor.c: - * clutter/clutter-alpha.c: - * clutter/clutter-backend.c: - * clutter/clutter-behaviour-depth.c: - * clutter/clutter-behaviour-ellipse.c: - * clutter/clutter-behaviour-path.c: - * clutter/clutter-behaviour-rotate.c: - * clutter/clutter-behaviour-scale.c: - * clutter/clutter-clone-texture.c: - * clutter/clutter-color.c: - * clutter/clutter-entry.c: - * clutter/clutter-stage.c: - * clutter/clutter-texture.c: - * clutter/clutter-timeline.c: - * clutter/clutter-units.h: Move from the internal usage of - ClutterFixed to CoglFixed. - - * doc/reference/clutter/clutter-sections.txt: - * doc/reference/cogl/cogl-docs.sgml: - * doc/reference/cogl/cogl-sections.txt: Update the documentation. - - * tests/test-cogl-tex-tile.c: - * tests/test-project.c: Fix tests after the API change - - * README: Add release notes. - -2008-10-29 Neil Roberts - - Bug 1074 - FBOs on GLES - - * clutter/cogl/gles/cogl-fbo.c: Copy the code from gl/cogl-fbo but - use the API calls directly instead of loading an extension because - it is part of the core in GLES 2. - - * clutter/cogl/gles/cogl.c (_cogl_features_init): Report - COGL_FEATURE_OFFSCREEN. - - * clutter/cogl/gles/cogl-fbo.h (CoglFbo): Add gl_stencil_handle. - - * clutter/cogl/gles/cogl-context.h (CoglContext): Add - viewport_store - - * tests/test-fbo.c (make_shader): Conditionally use the GLES 2 - names of the shader variables - -2008-10-29 Neil Roberts - - Bug 1206 - Picking disabled dithering - - * clutter/clutter-main.c (_clutter_do_pick): After picking is - finished, restore the state of glEnable (GL_DITHER). Otherwise it - will cause the scene to look different after the first pick on low - depth displays. (Thanks to Michael Boccara for the patch) - -2008-10-28 Thomas Wood - - * clutter/clutter-color.c (param_color_set_default): Set the no copy - flag when setting the default param spec value to prevent invalid - frees. - -2008-10-27 Neil Roberts - - Bug 1189 - Backface culling - - * clutter/cogl/gl/cogl-texture.c (cogl_texture_polygon) - (_cogl_texture_quad_sw, _cogl_texture_quad_hw): - * clutter/cogl/gles/cogl-texture.c (cogl_texture_polygon) - (_cogl_texture_quad_sw, _cogl_texture_quad_hw): Enable backface - culling in GL if it is requested. - - * clutter/cogl/gles/cogl-texture.c (_cogl_texture_quad_sw) - (_cogl_texture_quad_hw): - * clutter/cogl/gl/cogl-texture.c (_cogl_texture_quad_sw) - (_cogl_texture_quad_hw): Reorder the - vertices so that they are counter-clockwise. - - * clutter/cogl/gles/cogl-context.h (CoglContext): - * clutter/cogl/gl/cogl-context.h (CoglContext): Added a flag to - store whether backface culling is currently enabled. - - * clutter/cogl/gles/cogl.c (cogl_enable_backface_culling): - * clutter/cogl/gl/cogl.c (cogl_enable_backface_culling): New - function - - * doc/reference/cogl/cogl-sections.txt: Add - cogl_enable_backface_culling - -2008-10-27 Neil Roberts - - Bug 1196 - Texture border drawing problems - - * clutter/cogl/gl/cogl-texture.c (_cogl_texture_upload_subregion_to_gl) - (_cogl_texture_upload_to_gl): - - * clutter/cogl/gles/cogl-texture.c (_cogl_texture_upload_to_gl) - (_cogl_texture_upload_subregion_to_gl): - - When uploading data to a sliced texture, fill the waste pixels - with copies of the edge of the real texture data. Otherwise the - value of the waste pixels are undefined so it will show artifacts - when the texture is scaled with GL_LINEAR and the pixels are - blended in. - -2008-10-22 Thomas Wood - - * tests/test-actors.c: Don't adjust the radius based on the number of - actors - -2008-10-21 Emmanuele Bassi - - * clutter/clutter-color.[ch] (clutter_value_set_color): Constify - colors and values where needed. - -2008-10-21 Emmanuele Bassi - - Bug 1197 - Missing const for clutter_init_with_args * - - * clutter/clutter-main.[ch] (clutter_init_with_args): Constify - the string parameters. (Owen Taylor) - -2008-10-20 Emmanuele Bassi - - * configure.ac: Use gmodule-no-export-2.0, not gmodule-2.0, - to avoid breaking the symbol hiding. (thanks to Ross Burton - and Laurent Bigonville) - -2008-10-20 Neil Roberts - - Bug 1043 - COGL calls glTexSubImage2D() with out-of-bounds - values (SIGSEGV) - - * clutter/cogl/gl/cogl-texture.c - (_cogl_texture_upload_subregion_to_gl): When iterating over the - slices, discard ones that don't intersect immediatly otherwise it - will call glTexSubImage2D with a negative width/height and then - move the source position incorrectly. Thanks to Gwenole - Beauchesne. - -2008-10-20 Emmanuele Bassi - - * clutter/clutter-color.h: Declare clutter_color_new() in the - installed header. - -2008-10-20 Neil Roberts - - Bug 1195 - ClutterBehaviourBspline only works for very short paths - - * clutter/clutter-behaviour-bspline.c: Changed the CBZ_T_POW3 and - CBZ_T_MUL functions so that they preserve more of the least - significant bits. This fixes some of the jaggy behaviour with - longer paths. - -2008-10-17 Thomas Wood - - reviewed by: Emmanuele Bassi - - * clutter/clutter-color.[ch]: Add GParamSpec and GValue integration - for ClutterColor. With ClutterParamSpecColor it is possible to define - color properties; with the GValue integration it's possible to - automatically transform strings into colors and vice versa. - - (clutter_color_free): Allow NULL parameter to match other boxed - types destructors. - - (clutter_color_new): Add a constructor for the ClutterColor boxed - type, mostly for bindings. - -2008-10-17 Emmanuele Bassi - - * clutter/clutter-color.c (clutter_color_parse): Add checks - for the arguments, to avoid trying to parse NULL strings. - -2008-10-16 Emmanuele Bassi - - * clutter/clutter-container.[ch]: Add checks to the Container - interface invocation methods, to avoid crashing or corrupting - the stack when an actor does not implement every virtual - function of the Container interface vtable. GObject allows this - to happen so we must handle the case gracefully. This also means - that we can classify some virtual function as mandatory (as is - the case for ::add, ::remove and ::foreach) and some other - optional. - -2008-10-08 Emmanuele Bassi - - * tests/test-depth.c (raise_top), (main): Fix a shadowing - with raise() from signal.h. - -2008-10-01 Øyvind Kolås - - Bug 1108 - Enter/Leave events logics wrt. skipped motion events - - Handle dropped motion events when computing crossing events, - based on a patch from Gwenole Beauchesne. - - * clutter/clutter-main.c: (clutter_event_get_device): internal static - utility function. - (clutter_do_event): generate enter/leave events for all pointer - events. - (generate_enter_leave_events): modified enter/leave events generator - to work for all pointer event types. Enter/leave events are now - delivered before the motion/button event that caused the crossing to - happen. - * clutter/clutter-event.c: (clutter_event_copy), (clutter_event_free): - removed reference counting logic that is not needed when the crossing - events are directly delivered. - -2008-09-29 Emmanuele Bassi - - * configure.ac: Post branch bump to 0.9.0 - -2008-09-25 Emmanuele Bassi - - * configure.ac: Post release bump to 0.8.3 - -======== Release 0.8.2 ======================================================== - -2008-09-25 Emmanuele Bassi - - * configure.ac: - * README: - * NEWS: Release 0.8.2 - -2008-09-25 Emmanuele Bassi - - * clutter/clutter-event.h: Fix missing documentation. - -2008-09-24 Emmanuele Bassi - - Bug 1130 - CLUTTER_MOTION is not emitted when time goes backwards. - - * clutter/clutter-main.c (clutter_do_event): Check for time - rollbacks inside the motion event throttling. (Pierce Liu) - -2008-09-23 Emmanuele Bassi - - * clutter/clutter-timeout-pool.c: Reword previous commit. - -2008-09-23 Emmanuele Bassi - - * clutter/clutter-timeout-pool.c: - (clutter_timeout_pool_new): Fix previous commit: g_source_unref() - is not needed. (Thanks to Neil Roberts) - -2008-09-23 Emmanuele Bassi - - Bug 1154 - clutter_timeout_pool_new() documentation doesn't say - how to free - - * clutter/clutter-timeout-pool.c: Update the documentation to - note that you must use g_source_unref() to free the timeout - pool. (Murray Cumming) - -2008-09-23 Emmanuele Bassi - - Bug 1124 - Clutter causes an additional size request in each - allocation - - * clutter/clutter-actor.c: - (clutter_actor_store_old_geometry): Store the allocation instead - of causing a new size-request cycle. (Johan Bilien) - -2008-09-23 Emmanuele Bassi - - Bug 1125 - Save an extra pango_layout_get_size in many cases - - * clutter/clutter-label.c: - (clutter_label_create_layout_no_cache): Add a simple check - before calling pango_layout_get_size(). (Johan Bilien) - -2008-09-23 Emmanuele Bassi - - * clutter/clutter-alpha.c: - (clutter_alpha_get_alpha): Do not return the cached value but - just compute the current alpha value. The use case is pretty - much straightforward: stop a timeline, advance it, and retrieve - the alpha value before starting the timeline to adjust an - animation dependent on the alpha. Caching the alpha value is - not needed because the behaviours will always pass the alpha - value inside the ::alpha-notify virtual function anyway, so - there is no need for them to call clutter_alpha_get_alpha(). - - This change makes it also possible to reliably unit-test - ClutterAlpha. - - (timeline_new_frame_cb): Call clutter_alpha_get_alpha(). - -2008-09-23 Tomas Frydrych - - * clutter/clutter-main.c: - * clutter/clutter-main.h: - * clutter/clutter-private.h: - * clutter/x11/clutter-backend-x11.c: - (clutter_get_option_group_without_init): - Function to obtain clutter option group without opening display - (for use with foreign display and gtk_clutter_init). Bug 1033. - - Stripped trailing whitespace. - -2008-09-22 Neil Roberts - - Bug 856 - Teardown sequence is borked - - * clutter/clutter-main.c: Don't free the ClutterMainContext so - that the main loop can be restarted. - - * clutter/eglx/clutter-backend-egl.c: - * clutter/eglnative/clutter-backend-egl.c: Register an atexit - handler which disposes the backend object so that we are still - guaranteed to call eglTerminate on GLES. - -2008-09-22 Neil Roberts - - * tests/test-unproject.c (on_event): - * tests/test-project.c (on_event): Use a return value for the - 'event' signal handler, otherwise it might accidentally return - TRUE for unhandled events and you won't be able to close the - window. - -2008-09-19 Emmanuele Bassi - - Bug 1033 - Manually parsing command line options prevents - initializing clutter - - * clutter/clutter-main.c: - (post_parse_hook), (clutter_init_with_args), - (clutter_parse_args), (clutter_init): Move the initialization - of Clutter at the end of the post-parse hook of Clutter's - GOptionGroup. Clutter must be initialized at the end of the - argument parsing. - -2008-09-19 Emmanuele Bassi - - * clutter/clutter-main.c: Properly document the - clutter_get_option_group() function and the invariant that - after parsing Clutter's option group the library will be - initialized. (Thanks to Tomas Frydrych for pointing this - out) - -2008-09-19 Emmanuele Bassi - - * clutter/x11/clutter-backend-x11.c: Properly document the - usage of clutter_x11_set_display(). - - * clutter/x11/clutter-x11.h: clutter_x11_set_display() is - public API and should be declared in the header we install. - -2008-09-18 Neil Roberts - - Bug 1048 - SIGFPE in cogl_texture_set_region() with nvidia - - * clutter/cogl/gl/cogl-texture.c (cogl_texture_set_region): - * clutter/cogl/gles/cogl-texture.c (cogl_texture_set_region): - Don't attempt to upload any data if the width or height of the - subregion is zero. Thanks to Gwenole Beauchesne. - -2008-09-18 Neil Roberts - - Bug 1044 - cogl_get_viewport error - - * clutter/cogl/gles/cogl.c (cogl_get_viewport): Use glGetIntegerv - instead of glGetFixedv to read the viewport because the latter - converts incorrectly on some hardware. - -2008-09-18 Neil Roberts - - Bug 1080 - clutter_stage_read_pixels has upside-down y coordinate - - * clutter/clutter-stage.c (clutter_stage_read_pixels): Use - OpenGL's coordinate system for the arguments to glReadPixels (so - that y zero is the bottom of the window). Use clutter_redraw - instead of clutter_stage_paint to ensure the right GL context is - selected. Set some of the glPixelStore parameters that might have - been changed by Cogl. - - * tests/test-stage-read-pixels.c: Replace with a different test - that gets a sub-region of the stage around the cursor. - -2008-09-17 Neil Roberts - - Bug 1145 - Flicker on resize the window - - * clutter/glx/clutter-stage-glx.c (clutter_stage_glx_realize): - Don't set a backing pixel on the X window. Otherwise when the - window resizes it will flicker when X paints the background - immediatly before Clutter repaints the whole stage. - -2008-09-17 Neil Roberts - - * clutter/clutter-types.h: Swap left and right in the - documentation for ClutterGravity. - -2008-09-17 Neil Roberts - - Bug 1121 - Setting anchor point doesn't work if set too early - - * clutter/clutter-actor.c - (clutter_actor_set_anchor_point_from_gravity) - (clutter_actor_move_anchor_point_from_gravity): Add documentation - to make it clear that the anchor point won't move when the actor - is resized. - -2008-09-16 Neil Roberts - - Bug 1100 - WM_SIZE not handled correctly, user_resize and - window_style correction. - - * clutter/win32/clutter-stage-win32.c (get_window_style): Remove - the WS_MAXIMIZEBOX style if the stage isn't resizable. - (clutter_stage_win32_set_user_resize): Queue a redraw of the - window frame when the user_resize property is changed. - - * clutter/win32/clutter-event-win32.c (message_translate): Don't - update the size of the stage when handling WM_SIZE messages that - result from the stage being minimized. Thanks to Roman Yazmin. - -2008-09-16 Tomas Frydrych - - * clutter/glx/clutter-glx-texture-pixmap.c: - * clutter/x11/clutter-x11-texture-pixmap.c: - TFP resyncing on MapNotify/ConfigureNotify (bug 1020; patch by - Andy Wingo ). - -2008-09-15 Øyvind Kolås - - * clutter/clutter-main.c: amended typo in gtk-doc. - -2008-09-12 Neil Roberts - - Bug 1034 - Picking doesn't work on Eee PC - - * clutter/clutter-main.c (_clutter_id_to_color): When choosing a - pick color, set all but the most significant of the unused - bits. This should make make it more likely that the GL - implementation will round down to the right value. - - * tests/test-pick.c: Test case for picking. It creates 192 actors - at known positions and stores their gids. It then calls - clutter_stage_get_actor_at_pos with each position to check that - the right gid is returned. - - * tests/Makefile.am (noinst_PROGRAMS): Add test-pick - -2008-09-12 Neil Roberts - - Bug 1010 - ClutterLabel does not update the layout (again) - - * clutter/clutter-label.c: Bring back layout caching. This time it - will cache up to three different layouts. The width for which each - layout was generated is stored so that if the same width is - requested again it can use the cached version. If no cached - version is available it will try to replace the oldest - layout. 'Age' is determined by a counter which is incremented - every time a layout is created. The cache is cleared after any - property changes that might affect the layout. - (struct _ClutterLabelPrivate): Removed extents_width, - extents_height and context because they weren't used anywhere. - - * tests/test-label-cache.c: Add a test which checks whether the - label is using a different layout when properties are - changed. Also compares the extents of the label's layout with an - independent layout and fails if they aren't the same. - - * tests/Makefile.am (noinst_PROGRAMS): Add test-label-cache - -2008-09-10 Neil Roberts - - Bug 1137 - Setting the anchor point does not trigger a re-paint - - * clutter/clutter-actor.c (clutter_actor_set_property): When - changing the anchor point properties, use set_anchor_pointu - instead of changing the value directly so that a redraw will be - queued. - (clutter_actor_set_anchor_pointu): Queue a redraw when the anchor - point is changed. Thanks to Johan Bilien. - -2008-08-27 Emmanuele Bassi - - Bug 1082 - Texture bitmap is destroyed in wrong way - - * clutter/cogl/common/cogl-bitmap-pixbuf.c: - (_cogl_bitmap_from_file): Make a copy of the pixbuf data in - the internal image loader so that we can keep working under - the assumption that we are using the GLib memory allocation - and deallocation functions. - -2008-08-27 Emmanuele Bassi - - Bug 1099 - No ClutterScript API to get a list of IDs in a given file - - * clutter/clutter-script.[ch]: Add clutter_script_list_objects(), - a function for retrieving all the objects built by a ClutterScript - instance. (Based on a patch by Noah Gibbs) - -2008-08-26 Emmanuele Bassi - - Bug 1090 - Label somtimes returns natural_width < min_width - - * clutter/clutter-label.c: - (clutter_label_get_preferred_width): Check that the width of the - layout is always greater than 0. (Johan Bilien) - -2008-08-19 Neil Roberts - - Bug 1103 - Two typos in clutter documentation - - * doc/reference/clutter/subclassing-ClutterActor.xml: Update the - custom actor example since the Cogl API was changed to namespace - all of the path related functions in cogl_path_*. Thanks to Nati - Berkover. - - * clutter/clutter-score.c: Add missing parameter in example of - calling clutter_score_start(). - -2008-08-18 Neil Roberts - - Bug 1085 - Cursor is in wrong position on ClutterEntry if set - x-align property - - * clutter/clutter-entry.c (clutter_entry_paint): When calculating - the position to draw the cursor at, take into account the - alignment of the text. Queue a redraw when the x-align property is - changed. - -2008-08-07 Neil Roberts - - Bug 1091 - WM_MOUSEWHEEL (scroll-event) not handled correctlly - - * clutter/win32/clutter-event-win32.c (message_translate): The - coordinates in a WM_MOUSEWEEL message are given relative to the - screen so they need to be converted to client coordinates before - use. Thanks to Roman Yazmin. - -2008-08-06 Emmanuele Bassi - - * clutter/clutter-child-meta.c: - (clutter_child_meta_set_property), - (clutter_child_meta_class_init): Make the :container and - :actor properties of ChildMeta construct-only, to allow - bindings to actually use ChildMeta without abusing the API. - - * clutter/clutter-container.c (create_child_meta): Instead of - setting the members of the ChildMeta structure, use the - constructor properties. - -2008-08-04 Emmanuele Bassi - - * clutter/clutter-keysyms.h: Resync with keysymdef.h inside Xorg. - -2008-08-04 Emmanuele Bassi - - * clutter/clutter-script.c: - (clutter_script_default_connect): Improve wording and debug - messages in the default autoconnection for signal handlers. - -2008-08-04 Emmanuele Bassi - - * clutter/clutter-script-parser.c: - * clutter/clutter-script-private.h: Clean up the code; add a - conversion function for reading a ClutterColor out of a - JSON object or array definition. - - * clutter/clutter-script.c: Clean up the code; document properly - how we translate from type name to type function. - -2008-08-04 Emmanuele Bassi - - * clutter/clutter-main.c: Rework and improve the documentation - of the thread-safe timeout and idle source installer functions. - -2008-08-01 Neil Roberts - - Bug 945 - Clipping+fbo cloning bugs - - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/cogl.c: - * clutter/cogl/cogl.h.in: Add cogl_clip_stack_save, - cogl_clip_stack_restore, cogl_viewport and cogl_frustum. - - * clutter/cogl/gl/cogl-fbo.h: - * clutter/cogl/gl/cogl-fbo.c: Try to attach a stencil buffer when - creating an FBO. - - * clutter/cogl/common/cogl-clip-stack.c: Add functions to save and - restore the whole state of the stack. - - * clutter/clutter-texture.c (clutter_texture_paint): When - rendering the FBO source, setup a temporary asymmetric perspective - projection matrix to render it as it would appear on screen. - - * clutter/clutter-private.h: - * clutter/clutter-actor.c - (_clutter_actor_apply_modelview_transform_recursive): No longer - static and exported in clutter-private.h - -2008-08-01 Neil Roberts - - Bug 1071 - clutter_timeline_get_duration doesn't always work - - * clutter/clutter-timeline.c: Calculate the 'duration' property - on-demand instead of storing it as a member variable. Notify - duration property changes whenever the fps or num_frames changes. - -2008-08-01 Neil Roberts - - Bug 1069 - Warnings with ClutterScore - - * clutter/clutter-score.c (clutter_score_is_playing): Check - whether priv->running_timelines is NULL before checking its - length. - (foreach_running_timeline): Remove the completed signal handler - when stopping the score. Otherwise the completed callback will get - called multiple times if the timeline is started later. - -2008-07-31 Neil Roberts - - Bug 1075 - Difficult to bind clutter_stage_new - - * clutter/clutter-stage.c (clutter_stage_dispose): Unrealize the - stage before removing the update idle handler. Otherwise - unrealizing causes another redraw to be queued and if the stage - object remains alive it will cause an assert and abort. - -2008-07-30 Neil Roberts - - * clutter/clutter-stage.c (clutter_stage_class_init): Added the - 'perspective' property. All of the machinery was there to - implement the property but somehow the call that actually installs - it was missing. - -2008-07-30 Emmanuele Bassi - - * clutter/clutter-fixed.h: - * clutter/clutter-units.h: Fix the upper and lower boundaries of - ClutterFixed and ClutterUnit types; G_MAXINT16 and G_MININT16 - were not enough to describe those values. - -2008-07-30 Ross Burton - - * clutter/clutter-main.c: - Destroy the debugging timer when the context is freed. - - * clutter/clutter-stage.c: - Free the stage title when the stage is finalized. - -2008-07-30 Neil Roberts - - * clutter/clutter-model.c (clutter_model_set_sorting_column): This - function is supposed to accept -1 to disable sorting. However it - checks for whether the column is >= the number of columns, but - clutter_model_get_n_columns() returns an unsigned int so the - column number also gets promoted to unsigned for the - comparison. Therefore -1 is always greater than the number of - columns so it wouldn't let you set it. - -2008-07-26 Neil Roberts - - * clutter/clutter-timeline.c (clutter_timeline_list_markers): When - requesting the list of markers it was returning the marker data as - a string instead of the name so it was copying garbage. - -2008-07-25 Neil Roberts - - * clutter/clutter-actor.c (clutter_actor_remove_clip) - (clutter_actor_set_clipu): Queue a redraw when the clip is - changed. - -2008-07-24 Neil Roberts - - * clutter/clutter-script.c: The example in the documentation - showed a color being specified as '0xff0000ff' but it should be - '#ff0000ff' - -2008-07-23 Emmanuele Bassi - - Bug 1062 - clutter_actor_query_coords() replacement in 0.8 - - * clutter/clutter-deprecated.h: Fix the deprecation warning - for clutter_actor_query_coords(). (Gwenole Beauchesne) - -2008-07-17 Emmanuele Bassi - - Bug 1047 - API documentation from release tarball is not - installed by "make install" - - * configure.ac: - * Makefile.am: Make the recursion into the documentation - directory depend on on whether we explicitly enable it or - if we are not inside an SVN checkout. - -2008-07-17 Neil Roberts - - * clutter/clutter-texture.c: - * clutter/clutter-rectangle.c: - * clutter/clutter-group.c: - * clutter/clutter-entry.c: - * clutter/clutter-clone-texture.c: Remove unnecessary calls to - cogl_{push,pop}_matrix. The matrix is preserved in - clutter_actor_paint whenever the actor's transformation is applied - so there should be no need to push the matrix in actor paint - implementations unless it does some additional transformations - itself. - -2008-07-16 Emmanuele Bassi - - * clutter.pc.in: Add a variable containing the COGL backend - inside the pkg-config file, for configure-time checks. - -2008-07-14 Neil Roberts - - * clutter/cogl/common/cogl-primitives.c (cogl_path_rel_curve_to): - Fixed a typo in the second parameter which meant the curve was - drawn incorrectly. - -2008-07-14 Emmanuele Bassi - - * clutter/clutter.h: Include missing installed files. - -2008-07-14 Tomas Frydrych - - * clutter/clutter-stage.c: - (clutter_stage_hide_cursor): - Fixed C&P bug that made it impossible to show cursor once hidden. - - Stripped trailing whitespace. - -2008-07-13 Matthew Allum - - * clutter/x11/clutter-x11-texture-pixmap.c: - Call XSync in unredirect X error trap (Thanks to Andy Wingo) - -2008-07-13 Neil Roberts - - * build/mingw/mingw-cross-compile.sh: Avoid using the --strip - option to tar because it isn't supported in the version shipped - with MSYS. - -2008-07-11 Tomas Frydrych - - * clutter/clutter-fixed.c: - Move G_IMPLEMENT_INLINES before all other #include statements (bug - #1038). - -2008-07-11 Tomas Frydrych - - * clutter/clutter-fixed.c: - Changed #define G_IMPLEMENTS_INLINES to G_IMPLEMENT_INLINES (bug - #1038). - -2008-07-10 Emmanuele Bassi - - * configure.ac: Post release bump to 0.3.1. - -======== Release 0.8.0 ======================================================== - -2008-07-10 Emmanuele Bassi - - * configure.ac: - * NEWS: Release 0.8.0. - -2008-07-10 Matthew Allum - - * clutter/cogl/gles/cogl-fbo.c: - * clutter/cogl/gles/cogl-texture.c: - Fix warnings with eglnative build - -2008-07-10 Matthew Allum - - * README: - Sync up/improve ready for 0.8 release. - - * AUTHORS: - Sync up to date - hope I havn't missed anyone.. - -2008-07-10 Matthew Allum - - * clutter/glx/clutter-glx-texture-pixmap.c: - Assume TFP npots sized textures are always supported if TFP ext is! - (Based on patch from James Ketrenos) - -2008-07-08 Matthew Allum - - Bug 1011 - Fix TFP fallback mechanism (take 2) - - * clutter/glx/clutter-glx-texture-pixmap.c: - * tests/test-pixmap.c: - Slightly modified patch from Gwenole Beauchesne applied - to better handle both falling back to non accelerated tfp - and improvements to the test case. - -2008-07-07 Matthew Allum - - Bug 1016 - Changing window-redirect-automatic property after - creating ClutterX11TexturePixmap doesn't work. - - * clutter/x11/clutter-x11-texture-pixmap.c: - (clutter_x11_texture_pixmap_set_window): - Sync up redirection prop correctly (Jason Tackaberry) - -2008-07-07 Matthew Allum - - Bug 1019 - clutter-frame-source.h not included by clutter.h - - * clutter/clutter.h: - Add missing header include. - -2008-07-05 Neil Roberts - - * clutter/clutter-actor.h: Remove redundant duplicate declaration - of clutter_actor_allocate_preferred_size - -2008-07-05 Emmanuele Bassi - - Bug 1033 - Manually parsing command line options prevents - initializing clutter (Armin Burgmeier) - - * clutter/clutter-main.c: - (post_parse_hook), (clutter_init_real): Set the is_initialized - flag inside the real initialization function. - -2008-07-04 Emmanuele Bassi - - * clutter/clutter-label.c: Properly document the behaviour - of the :alignment property. - -2008-07-04 Neil Roberts - - * build/mingw/mingw-cross-compile.sh: Default to the win32 flavour - instead of the SDL flavour - -2008-07-04 Neil Roberts - - Bug 1015 - Cloning unparented actors with FBOs doesn't work with - new layout code - - * clutter/clutter-texture.c (clutter_texture_new_from_actor): Now - parents the source actor if it doesn't already have a parent so - that it will get an allocation during layout. - - * tests/test-fbo.c: One of the tests tries to ensure that the - ClutterTexture clone keeps the source actor alive by derefing - it. However as actors have a floating reference then test-fbo - doesn't have its own reference once the source is parented so - unrefing just steals the parent's reference and causes - badness. The test now claims the floating reference before cloning - the source so that it can safely be unref'd later. - -2008-07-03 Emmanuele Bassi - - * clutter/x11/Makefile.am: Fix distchecking by adding the - generated enum types files to DISTCLEANFILES. - -2008-07-03 Tomas Frydrych - - * clutter/clutter-fixed.h: - * clutter/clutter-fixed.c - Fixed inlining of clutter_qmulx() and clutter_qdivx() (bug 1022). - -2008-07-03 Neil Roberts - - * clutter/clutter-shader.c (bind_glsl_shader): Fix a cut-and-paste - error which broke vertex shaders - -2008-07-03 Øyvind Kolås - - * clutter/cogl/common/cogl-bitmap-pixbuf.c: - (_cogl_bitmap_from_file): removed debug g_printf that announces each - successful image load done by the internal image backend. - -2008-07-02 Neil Roberts - - * clutter/clutter-actor.c - (clutter_actor_get_abs_allocation_vertices): The initialization of - the local stage pointer got moved away in revision 3081 so it was - crashing if the function is called before the layout is run. - -2008-07-02 Emmanuele Bassi - - * clutter/clutter-label.c: - (clutter_label_create_layout_no_cache), - (clutter_label_create_layout): Split the layout creation in two - functions: one creating the layout, the other creating the layout - and hitting the glyphs cache. The first one is for the offscren - operations - like requesting the preferred size; the second one - is for paint and allocation. - - (clutter_label_allocate): Try to aggressively cache the PangoLayout - between allocations - to avoid recreating it even when the label - just moved because of an animation. See bug #1010. - -2008-07-02 Øyvind Kolås - - * clutter/fruity/clutter-fruity.c: made the multi touch code more - robust. There are situations though where the device seems to stop - generating any touch events until all fingers have been lifted and - a new interaction session is started. - -2008-07-02 Neil Roberts - - * clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize): - Use clutter_x11_has_event_retrieval() instead of - !backend_x11->no_xevent_retrieval to reflect the changes to the - GLX backend in revision 3078 - -2008-07-02 Emmanuele Bassi - - Bug 1010 - ClutterLabel does not update the layout (Lee Jusung) - - * clutter/clutter-actor.c: - (clutter_actor_queue_relayout): Remove some pointer dereferencing. - - * clutter/clutter-label.c: - (clutter_label_allocate): Revert the change of r2883 and remove the - layout width cache and force a recreation of the layout every time - we receive an allocation. - -2008-07-01 Neil Roberts - - * clutter/clutter-actor.c (clutter_actor_get_transformed_sizeu): - This is now do-what-I-mean like clutter_actor_get_size so that if - the allocation box is available it will use that, otherwise it - will use the preferred size. clutter_actor_transform_vertices has - been converted to clutter_actor_transform_and_project_box so that - it can be used by both functions. Based on a patch by Emmanuele - Bassi. - (clutter_actor_get_abs_allocation_vertices) - (clutter_actor_get_allocation_vertices): These two functions now - force a relayout if the allocation box is not available. - - * tests/test-fbo.c: Fixed the shader to use texture2D instead of - texture2DRect now that GL_EXT_texture_rectangle is no longer used. - -2008-07-01 Chris Lord - - * clutter/clutter-stage.c: - Add a note to the clutter_stage_read_pixels doc that the alpha channel - isn't guaranteed to contain sensible data - - * tests/test-stage-read-pixels.c: (update_snapshot): - Overwrite the alpha data when using clutter_stage_read_pixels; fixes - this test on non-nvidia drivers - -2008-07-01 Matthew Allum - - * clutter/glx/clutter-stage-glx.c: - * clutter/x11/clutter-backend-x11.c: - * clutter/x11/clutter-backend-x11.h: - * clutter/x11/clutter-event-x11.c: - * clutter/x11/clutter-x11.h: - * tests/test-devices.c: - Disable use of XInput and add an explicit clutter_x11_enable_xinput - to enable it. - Also fix up the x11 pre-init calls to not need g_type_init. - -2008-07-01 Øyvind Kolås - - Bug 1013 - Per device grabs are not obeyed in pointer device - propagation. - - * clutter/clutter-event.c: (clutter_event_get_device_id): swap - arguments of g_return_val_if_fail around. - * clutter/clutter-event.h: added *device field to crossing events as - well. - * clutter/clutter-main.c: (emit_pointer_event): added a device - argument and check for per device grabs if this device is passed. - (clutter_do_event): pass the device if present for all pointer event - emissions. - (generate_enter_leave_events): copy the device from the motion events - when generating enter/leave events. - -2008-07-01 Chris Lord - - * clutter/clutter-texture.c: - Correct documentation about accepted pixel formats - - * tests/test-stage-read-pixels.c: (main): - Don't try to free a ClutterTexture after main, fixes segfault on quit - -2008-07-01 Emmanuele Bassi - - * clutter/clutter-behaviour-bspline.h: - * clutter/clutter-behaviour.h: - * clutter/clutter-event.h: - * clutter/clutter-texture.h: Add missing documentation and - change the copyright and licensing notice to use the FSF - website instead of its address. (#512) - -2008-06-30 Matthew Allum - - Bug 1008 - tfp still a bit borked - - * clutter/x11/clutter-x11-texture-pixmap.c: - Fix from Andy Wingo for sync_window borkage - -2008-06-30 Neil Roberts - - Bug 985 - MSC math.h / M_PI issue - - * clutter/cogl/gl/cogl.c (set_clip_plane): - * clutter/clutter-alpha.c (sinc_func): Use G_PI instead of M_PI - because M_PI isn't defined in MSVC without a special - #define. Thanks to Haakon Sporsheim - -2008-06-30 Neil Roberts - - * clutter/win32/clutter-backend-win32.c (check_vblank_env): Use - g_ascii_strcasecmp instead of strcasecmp because strcasecmp isn't - available in MSVC. - -2008-06-30 Matthew Allum - - Bug 1007 - Fix TFP fallback mechanism - - * clutter/glx/clutter-glx-texture-pixmap.c: - * clutter/x11/clutter-x11-texture-pixmap.c: - Add some extra safety to glx pixmap creations and tidy up some notes. - Patch from Gwenole Beauchesne. - -2008-06-30 Neil Roberts - - * clutter/x11/clutter-event-x11.c: - * clutter/win32/clutter-event-win32.c: Use the HAVE_CONFIG_H guard - around #include "config.h" - -2008-06-30 Emmanuele Bassi - - * clutter/Makefile.am: - * clutter/eglx/Makefile.am: - * clutter/glx/Makefile.am: Build the X11 base backend before - the backends that depend on it. - -2008-06-30 Emmanuele Bassi - - Bug 1000 - clutter-x11 should define gtypes for its enumerations - - * clutter/x11/Makefile.am: - * clutter/x11/clutter-event-x11.c: - * clutter/x11/clutter-x11-enum-types.c.in: - * clutter/x11/clutter-x11-enum-types.h.in: - * clutter/x11/clutter-x11.h: Add the GTypes for the X11-specific - enumerations, so that they can be used by the bindings. (Andy - Wingo) - -2008-06-30 Chris Lord - - * tests/test-shader.c: - Fix edge-detect shader on ATI, thanks Gwenole Beauchesne - -2008-06-30 Matthew Allum - - Bug 997 - automatic updates not working for named TFP pixmaps, - at least in x11 - - * clutter/glx/clutter-glx-texture-pixmap.c: - * clutter/glx/clutter-glx-texture-pixmap.h: - * clutter/x11/clutter-backend-x11.c: - * clutter/x11/clutter-x11-texture-pixmap.c: - * clutter/x11/clutter-x11-texture-pixmap.h: - * clutter/x11/clutter-x11.h: - * configure.ac: - * tests/test-pixmap.c: - Rework Andy Wingos patch a little adding more safety for now also - handling redirect Windows (as well as pixmaps) - -2008-06-30 Emmanuele Bassi - - Bug 980 - cogl-bitmap-fallback.c compiler error/warning due to - cast issue (Haakon Sporsheim) - - * clutter/cogl/common/cogl-bitmap-fallback.c: - (_cogl_unpremult_alpha_last), - (_cogl_unpremult_alpha_first): Cast to avoid a compiler warning - with MSC. - -2008-06-30 Chris Lord - - * tests/test-shader.c: (main): - Add a new shader to test-shaders (Sobel operator edge-detect) - -2008-06-30 Øyvind Kolås - - Disable XInput handling for keyboard events, re-enabling key press and - release events when pointer is outside window as well as re-enabling - keyrepeat. - - * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize): select - for KeyPressMask and KeyReleaseMask even with XInput enabled. - * clutter/x11/clutter-backend-x11.c: (_clutter_x11_register_xinput): - Disabled the XInput keyboard code paths (comments and #if 0's) - * clutter/x11/clutter-event-x11.c: (event_translate): always handle - keyboard events without regard to XInput. - -2008-06-29 Matthew Allum - - * clutter/x11/clutter-event-x11.c: - ifdef convert_xdevicekey_to_xkey () with XINPUT check. - (fix via Andy Wingo) - -2008-06-29 Tommi Komulainen - - * clutter/osx/clutter-osx.h (_clutter_event_osx_put) - * clutter/osx/clutter-event-osx.c (clutter_event_osx_translate, - NSEvent:clutterStage:) - * clutter/osx/clutter-stage-osx.c (EVENT_HANDLER): Since events are - delivered to ClutterGLView, pass the associated ClutterStage directly - to event translation. Avoids relying on being embedded in - ClutterGLWindow, which makes it easier to implement clutter-gtk. - -2008-06-29 Tommi Komulainen - - * clutter/osx/clutter-event.osx.c (NSEvent:clutterKeyVal:): Add - comment, on OSX backend the Shift modifier is included in 'keyval' - making it identical to 'unicode_value' Instead of a or - 3 you'd get A and # - -2008-06-27 Matthew Allum - - * clutter/cogl/gl/cogl.c: - Temp workaround for 10.4 ATI card OSX folks, see #929 - (Tommi Komulainen) - - Bug 998 - clutter always captures X input events - - * clutter/eglx/clutter-stage-egl.c: - * clutter/glx/clutter-stage-glx.c: - When we disable X event retrival, dont still select for window - events. - -2008-06-27 Emmanuele Bassi - - * clutter/clutter-event.h: - * clutter/clutter-main.c: - * clutter/x11/clutter-backend-x11.c: Add further documentation, - and increase the coverage to 94%. - -2008-06-27 Emmanuele Bassi - - * configure.ac: Post release bump to 0.7.7. - -======== Release 0.7.6 ======================================================== - -2008-06-27 Emmanuele Bassi - - * configure.ac: - * NEWS: Release 0.7.6. - -2008-06-27 Neil Roberts - - Bug 993 - Underline colors are sometimes wrong - - * clutter/pango/pangoclutter-render.c: Fixed so that instead - of trying to set the color in prepare_run it uses draw_glyphs - to draw groups of glyphs and requests the color for each part - from Pango. - -2008-06-26 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_set_min_width), - (clutter_actor_set_min_height), - (clutter_actor_set_natural_width), - (clutter_actor_set_natural_height): Ignore any override of the - minimum and natural size of the stage on backends that only - support static stages. - - * clutter/clutter-stage.c (clutter_stage_allocate): Use the - preferred size of the ClutterStage implementation instead of - the display size. - - * clutter/clutter-backend.[ch]: Remove get_display_size() and - clutter_backend_get_display_size(). - - * clutter/eglnative/clutter-backend-egl.c: - * clutter/fruity/clutter-backend-fruity.c: - * clutter/osx/clutter-backend-osx.c: - * clutter/sdl/clutter-backend-sdl.c: - * clutter/win32/clutter-backend-win32.c: - * clutter/x11/clutter-backend-x11.c: Remove get_display_size() - implementations. - -2008-06-26 Emmanuele Bassi - - * clutter/clutter-shader.c (bind_glsl_shader): Verify that the - vertex shader has been successfully compiled, like we do with - the fragment shader. - -2008-06-26 Emmanuele Bassi - - * clutter/osx/clutter-backend-osx.c: - (clutter_backend_osx_get_display_size): Fix the allocation pool - macro name. - -2008-06-26 Matthew Allum - - * clutter/glx/clutter-glx-texture-pixmap.c: - Move the gl extension probe into the regular object init() rather than - class_init. Should be a little safer. - -2008-06-26 Matthew Allum - - * tests/test-pixmap.c: (main): - Use strtol on arg as to take hex values. Tweak from James Ketrenos - -2008-06-25 Emmanuele Bassi - - * configure.ac: Post release bump to 0.7.5. - -======== Release 0.7.4 ======================================================== - -2008-06-25 Emmanuele Bassi - - * configure.ac: - * NEWS: Release 0.7.4. - -2008-06-25 Neil Roberts - - * clutter/win32/clutter-backend-win32.c - (clutter_backend_win32_get_display_size): Implement - get_display_size on the Win32 backend. - -2008-06-25 Emmanuele Bassi - - * clutter/clutter-main.h: Make the priority constants public. - - * clutter/clutter-stage.c: Use CLUTTER_PRIORITY_REDRAW. - - * clutter/clutter-timeline.c: Use CLUTTER_PRIORITY_TIMELINE. - -2008-06-25 Emmanuele Bassi - - * clutter/osx/clutter-backend-osx.c: - (clutter_backend_osx_get_display_size), - (clutter_backend_osx_class_init): Implement the get_display_size - function. - -2008-06-25 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_set_min_width), - (clutter_actor_set_min_height), - (clutter_actor_set_natural_width), - (clutter_actor_set_natural_height): Add a comment explaining - the override in place for backends providing a fixed size - on a stage. - -2008-06-25 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_set_min_width), - (clutter_actor_set_min_height), - (clutter_actor_set_natural_width), - (clutter_actor_set_natural_height): If setting the minimum - and natural width and height on a top-level actor, and on - a backend that provides only static stages, then override - the value and use the size of the display as returned by - the backend. - - * clutter/eglnative/clutter-stage-egl.c: - (clutter_stage_egl_realize): Remove the setting of the - minimum and natural width and height. - -2008-06-25 Emmanuele Bassi - - * clutter/clutter-stage.c: - (clutter_stage_allocate): Minor optimization. - - (clutter_stage_init): Do not set the minimum size of the - stage wrapper, and require that the backends set the size - themselves. - -2008-06-25 Emmanuele Bassi - - * clutter/eglnative/clutter-stage-egl.c: - (clutter_stage_egl_realize): Try to force the minimum and - natural size on realization. - -2008-06-25 Emmanuele Bassi - - * clutter/clutter-backend.c: - (clutter_backend_get_display_size): Provide a fallback for - backends not implementing get_display_size(). - - * clutter/clutter-stage.c: - (clutter_stage_allocate): Add debug messages. - - * clutter/sdl/clutter-backend-sdl.c: - (clutter_backend_sdl_get_display_size), - (clutter_backend_sdl_class_init): Implement get_display_size() - on the SDL backend. - -2008-06-25 Chris Lord - - * clutter/clutter-fixed.c: (clutter_sinx): - Fix clutter_sinx for angles > CFX_2PI - CFX_ONE. Also add note to - documentation about being able to use modulus with ClutterFixed - -2008-06-25 Emmanuele Bassi - - * clutter/clutter-backend.h: - * clutter/clutter-backend.c: - (clutter_backend_get_display_size): Add a function for getting the - display size out of the backend. - - * clutter/clutter-stage.c: - (clutter_stage_allocate): When allocating on a backend with a - static stage, we simply ignore the passed box and override it with - the size of the display. - - * clutter/eglnative/clutter-backend-egl.c: - (clutter_backend_egl_get_display_size), - (clutter_backend_egl_class_init): Implement get_display_size() by - returning the size of the EGL surface. - - * clutter/fruity/clutter-backend-fruity.c: - (clutter_backend_egl_get_display_size), - (clutter_backend_egl_class_init): Ditto as above. - - * clutter/x11/clutter-backend-x11.c: - (clutter_backend_x11_get_display_size), - (clutter_backend_x11_class_init): Implement get_display_size() by - returning the DisplayWidth and DisplayHeight of the current - screen. - -2008-06-25 Neil Roberts - - * clutter/win32/clutter-stage-win32.c - (clutter_stage_win32_realize): Use a more direct method to choose - the best pixel format instead of ChoosePixelFormat because - otherwise if the display's depth is 16 then it will prefer the - non-accelerated software implementation when the requested depth - is 24. - -2008-06-25 Emmanuele Bassi - - * clutter/clutter-stage.c (clutter_stage_allocate): Fix condition; - should always test before committing. - -2008-06-25 Matthew Allum - - * clutter/x11/clutter-backend-x11.c: (_clutter_x11_register_xinput) - Add extra safety and fallback if no useable pointing devices are - found. - -2008-06-25 Emmanuele Bassi - - * clutter/clutter-stage.c: - (clutter_stage_allocate): Check if the stage provided by the - backend is static (i.e. a framebuffer that cannot be resized) - and interrupt the allocation chain there. - - * clutter/eglnative/clutter-stage-egl.c: - (clutter_stage_egl_class_init): Remove the ::allocate empty - stub. - -2008-06-25 Matthew Allum - - * clutter/eglnative/clutter-stage-egl.c: - * clutter/eglx/clutter-stage-egl.c: - Disable passing of attribs to eglCreateContext() on GLES 1.1 h/w - -2008-06-25 Neil Roberts - - * clutter/clutter-actor.c (clutter_actor_paint): Guard against the - actor clip being enabled or disabled in an actor paint - method. Otherwise the clip stack can be become unbalanced. This - was happening in ClutterEntry until it was fixed in revision 2983. - -2008-06-24 Neil Roberts - - Bug 979 - Wrong call convension for SwapIntervalProc in win32 backend - - * clutter/win32/clutter-backend-win32.c: Use the correct calling - convention for SwapInterval. Thanks to Haakon Sporsheim. - -2008-06-24 Emmanuele Bassi - - Bug 989 - Add a search path for clutter script assets - - * clutter/clutter-script.h: - * clutter/clutter-script.c: - (clutter_script_finalize), - (clutter_script_add_search_paths), - (clutter_script_lookup_filename): Add the ability to define multiple - search paths inside ClutterScript and to look up a specific filename - inside those search paths. This is useful to define a set of - directories where the assets for a UI definition are and still - reference those assets by their name instead of the full path. (989, - based on a patch by Matthew Allum) - - * clutter/clutter-texture.c: - (clutter_texture_set_custom_property): Use the newly added - clutter_script_lookup_filename() function. - -2008-06-24 Neil Roberts - - * clutter/cogl/gles/cogl-gles2-wrapper.h: - * clutter/cogl/gles/cogl-gles2-wrapper.c: All of the settings and - uniforms are now proxied into COGL variables instead of setting - the GL uniforms directly. Just before glDrawArrays is executed a - shader is generated using the given settings to avoid using 'if' - statements. The shaders are cached. - - * clutter/cogl/gles/cogl-fixed-vertex-shader.glsl: - * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: The shaders - are now split into parts using comments instead of 'if' statements - so that the simplest shader can be generated on the fly. - - * clutter/cogl/gles/stringify.sh: Now splits up the shader sources - into separate C strings where deliminated by special comments. - - * clutter/cogl/gles/cogl-program.h: - * clutter/cogl/gles/cogl-program.c: A custom shader can no longer - be directly linked with the fixed-functionality replacement - because the replacement changes depending on the settings. Instead - the bound shader is linked with the appropriate replacement shader - just before glDrawArrays is executed. The custom uniform variables - must also be proxied through COGL variables because their location - can change when relinked. - -2008-06-24 Øyvind Kolås - - * clutter/fruity/clutter-fruity.c: removed dead code and unused - variables. - -2008-06-24 Øyvind Kolås - - * configure.ac: better alignment of list of enabled experimental - features. - -2008-06-24 Emmanuele Bassi - - * doc/clutter-actor-invariants.txt: Fix grammar and spelling, - document the ::parent-set signal emission. - -2008-06-24 Emmanuele Bassi - - * clutter/clutter-entry.c: - (clutter_entry_ensure_layout): Convert the invisible char - to UTF-8 to avoid Pango barfing on us. - -2008-06-24 Matthew Allum - - * clutter/eglnative/clutter-stage-egl.c: - Add an extra debug note. - * configure.ac: - Generate version.xml for COGL API docs - -2008-06-24 Chris Lord - - Bug 988 - cursor position wrong with multibyte invisible char - - * clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position): - Fix cursor position calculation when using invisible text - -2008-06-23 Emmanuele Bassi - - * clutter/x11/clutter-event-x11.c (event_translate): Set the - event type explicitly in the union members as well for the - key events, like we do for all the other events. - -2008-06-23 Neil Roberts - - * clutter/clutter-entry.c (clutter_entry_paint): Set the clip - using COGL directly instead of setting the actor clip. Otherwise - the clip stack will be unbalanced after the first draw. This also - frees up the actor clip to be set by an application. - -2008-06-23 Matthew Allum - - * NEWS: - Add a quick note on fruity multiple deivce support. - * README: - Add multiple device support details and some tweaks on - Clutter requirements (i.e GdkPixbuf). - -2008-06-23 Matthew Allum - - Bug 987 - clutter-event.c c99 variable declaration - - * clutter/clutter-event.c: - Remove c99ism. - -2008-06-23 Emmanuele Bassi - - * configure.ac: Post release bump to 0.7.3. - -======== Release 0.7.2 ======================================================== - -2008-06-23 Emmanuele Bassi - - * configure.ac: - * NEWS: Release 0.7.2. - -2008-06-23 Emmanuele Bassi - - * clutter/clutter-texture.c: - (clutter_texture_get_preferred_width), - (clutter_texture_get_preferred_height), - (clutter_texture_set_property), - (clutter_texture_get_property), - (clutter_texture_class_init), - (clutter_texture_init): Add the new :keep-aspect-ratio property - to ClutterTexture; when set to TRUE the texture will return a - preferred width maintaining the aspect ratio with the given height - and a preferred height maintaining the aspect ratio with the - given width. This allows to set the width or the height and have - the texture automatically request the height or the width respectively - while maintaining the aspect ratio of the original image. - - * tests/test-script.json: Update to test the new :keep-aspect-ratio - property. - -2008-06-23 Neil Roberts - - Bug 918 - Group doesn't clip if it's children are clipped - - * clutter/cogl/common/cogl-clip-stack.h: - * clutter/cogl/common/cogl-clip-stack.c: Added functions to - maintain a stack of clipping rectangles. - - * clutter/cogl/gles/cogl.c: - * clutter/cogl/gl/cogl.c: The cogl_clip_set and unset functions - have moved into cogl-clip-stack.c which calls back to cogl.c to - set the actual rectangles. Multiple clip rectangles are combined - by merging the stencil buffers. - - * clutter/cogl/gles/cogl-primitives.c (_cogl_path_fill_nodes): - * clutter/cogl/gl/cogl-primitives.c (_cogl_path_fill_nodes): Merge - the stencil buffer with the contents of the clipping stack after - drawing the path. - - * clutter/cogl/gles/cogl-context.h (CoglContext): - * clutter/cogl/gl/cogl-context.h (CoglContext): Store the number - of available stencil bits. - - * clutter/cogl/common/Makefile.am - (libclutter_cogl_common_la_SOURCES): Added cogl-clip-stack.c - -2008-06-23 Robert Bragg - - * clutter/eglx/clutter-stage-egl.c: Makes sure the eglx backend - passes the EGL_OPENGL_ES2_BIT surface attrib when using - GLES2.0 under cogl - -2008-06-23 Chris Lord - - * clutter/x11/clutter-event-x11.c: (convert_xdevicekey_to_xkey), - (translate_key_event), (event_translate): - Change the xinput event handling to use translate_key (fixes modifier - handling with xinput key events) - -2008-06-23 Emmanuele Bassi - - Bug 982 - __COGL_GET_CONTEXT MS compiler issue (Haakon Sporsheim) - - * clutter/cogl/common/cogl-handle.h: - * clutter/cogl/common/cogl-primitives.c: Remove C99-isms. - - * clutter/cogl/gl/cogl-fbo.c: - * clutter/cogl/gl/cogl-primitives.c: - * clutter/cogl/gl/cogl-texture.c: - * clutter/cogl/gl/cogl.c: Ditto as above. - - * clutter/cogl/gles/cogl-fbo.c: - * clutter/cogl/gles/cogl-primitives.c: - * clutter/cogl/gles/cogl-texture.c: Ditto as above. - -2008-06-23 Emmanuele Bassi - - Bug 984 - pango_clutter_render_layout() declared void, but - returns (Haakon Sporsheim) - - * clutter/pango/pangoclutter-render.c: - (pango_clutter_render_layout): Do not use a return statement. - -2008-06-23 Emmanuele Bassi - - Bug 905 - Paint cursor directly (Xan López) - - * clutter/clutter-entry.c: - (clutter_entry_paint_cursor), - (clutter_entry_init), - (clutter_entry_set_color): Directly paint the cursor on the - entry instead of using an actor. - -2008-06-23 Emmanuele Bassi - - Bug 981 - clutter_stage_read_pixels temprow fix (Haakon Sporsheim) - - * clutter/clutter-stage.c (clutter_stage_read_pixels): Allocate - the temporary row data used to flip the buffer from glReadPixels() - in order to fix compilation under MSVC. Also validate the input - parameters to avoid random segfaults. - -2008-06-23 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * clutter/clutter-event.c: - * clutter/clutter-event.h: - * clutter/clutter-main.c: - * clutter/clutter-main.h: - * clutter/clutter-private.h: - * clutter/eglx/clutter-stage-egl.c: - * clutter/fruity/clutter-backend-fruity.c: - * clutter/fruity/clutter-backend-fruity.h: - * clutter/fruity/clutter-fruity.c: - * clutter/glx/clutter-stage-glx.c: - * clutter/x11/clutter-backend-x11.c: - * clutter/x11/clutter-backend-x11.h: - * clutter/x11/clutter-event-x11.c: - * clutter/x11/clutter-stage-x11.h: - * clutter/x11/clutter-x11.h: - * configure.ac: - * tests/Makefile.am: - * tests/test-devices.c: - Merge of 'xinput' branch giving initial basic support of - multiple input devices. - -2008-06-23 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * clutter/clutter-group.c: - Remove uneeded (at least for now) paint_area method (#970) - -2008-06-19 Emmanuele Bassi - - * clutter/clutter-script.c: Be more explicit about the fact that - the script id is not the name of an actor, and that it is retrieved - by using clutter_get_script_id(). - -2008-06-17 Emmanuele Bassi - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - (clutter_actor_allocate_preferred_size): Add more documentation - and notes on where it's appropriate to call this function. - -2008-06-17 Chris Lord - - * clutter/clutter-texture.c: (clutter_texture_get_preferred_width), - (clutter_texture_get_preferred_height): - Maintain aspect ratio with natural width/height when for_width/height - are specified - -2008-06-17 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - Clean up of parenting code (see #972) - Doc updates to section intro. - Add clutter_actor_allocate_preferred_size () utility call - - * clutter/clutter-group.c: (clutter_fixed_layout_allocate): - Use clutter_actor_allocate_preferred_size () - - * doc/clutter-actor-invariants.txt: - Add some more notes - -2008-06-17 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_set_parent): Do not emit ::parent-set when - reparenting. - - (clutter_actor_unparent): Ditto, as above. - - (clutter_actor_reparent): Emit ::parent-set with the old - parent and set the IN_REPARENT flag unconditionally. - -2008-06-17 Emmanuele Bassi - - * doc/clutter-actor-invariants.txt: Document the flags, the - invariants, the state changes and the minimum requirements for - actor implementations. Needs to be tweaked and fleshed out - before 0.8.0, and we obviously need to enforce the invariants. - -2008-06-17 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_set_parent): Document and maintain the invariant - that after setting a realized parent on an actor, the actor is - also going to be realized. - - (clutter_actor_unparent): Change the invariant that an unparented - actor is also unrealized: the paint is fast enough to avoid - unrealizing, since it also causes more problems that what it's - worth. - - * tests/test-invariants.c (test_show_on_set_parent): Update the - invariants test because we changed the invariants. - -2008-06-17 Jussi Kukkonen - - * clutter/clutter-score.c (clutter_score_append): - initialize "marker" string and "complete_id" signal id when creating a - ClutterScoreEntry. - -2008-06-16 Tomas Frydrych - - * clutter/clutter-actor.c: - (clutter_actor_move_anchor_point_from_gravity): - Fixed incorrect sign of position adjustment (revert of earlier - change). - -2008-06-16 Emmanuele Bassi - - * clutter/clutter-actor.c (clutter_actor_unparent): Reset the - :show-on-set-parent property to TRUE when unparenting. - - * tests/Makefile.am: Add test-invariant to the build. - - * tests/test-invariants.c: Test the invariants that we are going - to honour (and document, at some point). - -2008-06-16 Emmanuele Bassi - - * clutter/eglnative/clutter-stage-egl.c: Ignore any size allocation - we receive from the user. - - * clutter/fruity/clutter-stage-fruity.c: Ditto as above. - -2008-06-16 Tomas Frydrych - - * clutter/clutter-actor.c: - (clutter_actor_move_anchor_point): - (clutter_actor_move_anchor_pointu): - (clutter_actor_move_anchor_point_from_gravity): - Fixed incorrect sign of position adjustment. - Fixed replace call to _move_by with move_byu in - _move_anchor_pointu. - - Stripped trailing whitespace. - -2008-06-15 Emmanuele Bassi - - Bug #967 - Mismatch of Timeline::marker-reached signal signature - - * clutter/clutter-marshal.list: - * clutter/clutter-timeline.c: - (clutter_timeline_class_init): Fix the type of the frame_num - argument in the ::marker-reached signal creation to match the - signal class handler. (Armin Burgmeier) - -2008-06-14 Emmanuele Bassi - - * README: We depend on PangoCairo, now; also add all the missing - release notes entries and the missing backends configuration notes. - -2008-06-14 Matthew Allum - - * README: - Make needed GL version 1.4, note GLES2 support, add some notes - for COGL. - -2008-06-13 Emmanuele Bassi - - * configure.ac: Post release bump to 0.7.1. - -======== Release 0.7.0 ======================================================== - -2008-06-13 Emmanuele Bassi - - * README: - * NEWS: - * configure.ac: Release 0.7.0, "Booska". - -2008-06-13 Emmanuele Bassi - - * tests/test-cogl-offscreen.c: - * tests/test-cogl-primitives.c: - * tests/test-cogl-tex-convert.c: - * tests/test-cogl-tex-foreign.c: - * tests/test-cogl-tex-getset.c: - * tests/test-cogl-tex-tile.c: - * tests/test-layout.c: - * tests/test-pixmap.c: - * tests/test-texture-quality.c: Miscellaneous fixes for distcheck - to pass. - -2008-06-13 Emmanuele Bassi - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * tests/test-cogl-primitives.c: - * tests/test-events.c: - * tests/test-multistage.c: - * tests/test-textures.c: - * tests/test-timeline.c: Miscellaneous fixes for distcheck to - pass. - -2008-06-13 Emmanuele Bassi - - * clutter/clutter-texture.c: - (clutter_texture_unrealize), (clutter_texture_dispose): Add a - guard against reading back memory during the unrealization on - dispose. - -2008-06-13 Emmanuele Bassi - - Bug #953 - Actors are not hidden before unrealized or - disposed (Tommi Komulainen) - - * clutter/clutter-actor.c: - (clutter_actor_unrealize): Hide a visible actor when unrealizing - it. - - (clutter_actor_dispose): Make sure to unrealize an actor when - disposing it. - -2008-06-13 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_dispose), (clutter_actor_destroy), - (clutter_actor_unparent): Clean up the actor's destruction - sequence, making sure that every operation is performed - under the CLUTTER_ACTOR_IN_DESTRUCTION internal flag. (thanks - to Tomas Frydrych, Neil Roberts and Matthew Allum) - -2008-06-13 Emmanuele Bassi - - Bug #960 - PangoContext creation code should not be duplicated - - * clutter/clutter-private.h: - * clutter/clutter-main.c: - (_clutter_context_create_pango_context): Abstract the creation - of the PangoContext inside its own function, to avoid code and - bugs duplication. (Tommi Komulainen) - - * clutter/clutter-entry.c (clutter_entry_init): Use the newly - added PangoContext creation function. - - * clutter/clutter-label.c (clutter_label_init): Ditto as above. - -2008-06-12 Emmanuele Bassi - - Bug #964 - "unrealized" signal of ClutterActor wrongly named - - * clutter/clutter-actor.c (clutter_actor_class_init): Fix typo - in the ::unrealize signal name. (Armin Burgmeier) - -2008-06-12 Emmanuele Bassi - - * doc/reference/cogl/Makefile.am: Ignore cogl/gl and cogl/gles - when building the documentation. - - * clutter/cogl/cogl.h.in: Add sections in the header file. - -2008-06-12 Emmanuele Bassi - - * clutter/clutter-actor.c: Add more clarifications on the - size and position accessors and the distinction between - transformed and untransformed actor box inside the actor's - description. - -2008-06-12 Emmanuele Bassi - - * clutter/clutter-actor.c: Clarify the documentation of the - accessors of the width and height. - -2008-06-12 Neil Roberts - - * clutter/win32/clutter-stage-win32.c: Updated to the new layout - API. All code to do with positioning the stage has been removed so - the window is left where Windows wants to put it and it can not be - moved with clutter_actor_set_position. - - * clutter/win32/clutter-stage-win32.h (ClutterStageWin32): Remove - win_xpos and win_ypos. - - * clutter/win32/clutter-event-win32.c (message_translate): Remove - the handler for WM_MOVE because the stage no longer cares where it - is positioned. - -2008-06-12 Emmanuele Bassi - - * clutter/clutter-actor.[ch]: Documentation fixes. - - * clutter/clutter-backend.c: Documentation fixes. - - * clutter/clutter-container.h: Documentation fixes. - - * clutter/clutter-fixed.c (clutter_qdivx): Fix the return - value to be after the description. - - * clutter/clutter-texture.[ch]: Documentation fixes. - - * clutter/clutter-timeline.c: Documentation fixes. - -2008-06-11 Emmanuele Bassi - - * tests/test-layout.c: Take into account the origin of the - parent, if it has changed, and queue a relayout if we are - using the transformed box when computing the layout. - -2008-06-11 Emmanuele Bassi - - * clutter/eglnative/clutter-stage-egl.c: Remove a duplicate - get_preferred_width() implementation. (thanks to Iain Holmes) - -2008-06-11 Neil Roberts - - * clutter/clutter-actor.c (clutter_actor_allocate): Fixed the - logic when detecting whether the actor has moved. - -2008-06-11 Iain Holmes - - * configure.ac: Detect the GL headers in flavour=fruity - - * clutter/fruity/clutter-stage-fruity.c: Update the Fruity backend to - use the new size negotiation API. - -2008-06-11 Emmanuele Bassi - - * clutter/clutter-label.c (clutter_label_allocate): Keep the - layout if the size of the allocation is the same as the last - allocation received by the label. - -2008-06-11 Emmanuele Bassi - - * clutter/clutter-actor.c: Notify :x, :y, :width and :height - properties using ClutterUnits, not pixels. - -2008-06-11 Emmanuele Bassi - - * clutter/eglnative/clutter-stage-egl.c: Update the EGL native - backend to use the new size negotiation API. - -2008-06-11 Emmanuele Bassi - - * clutter/sdl/clutter-stage-sdl.c: Update the SDL backend to - use the new size negotiation API. - -2008-06-11 Emmanuele Bassi - - Bug #961 - Fails to build on OSX - - * clutter/osx/clutter-stage-osx.c: Update the OSX backend to - use the new size negotiation API. - -2008-06-11 Emmanuele Bassi - - * autogen.sh: Force overwriting when glib-gettextize is - invoked by autogen.sh. - -2008-06-10 Neil Roberts - - * clutter/clutter-main.c: Include for setlocale() - -2008-06-10 Emmanuele Bassi - - * clutter/clutter-child-meta.c: Fix section name - - * clutter/clutter-container.c: - (clutter_container_child_set_property), - (clutter_container_child_get_property): Fix gtk-doc parameter - name. - - * clutter/clutter-container.h: Fix documentation of the - interface vfuncs. - - * clutter/clutter-event.h: Fix documentation. - - * clutter/clutter-feature.h: Fix documentation. - - * clutter/clutter-types.h: Add ClutterRequestMode. - - * clutter/x11/clutter-event-x11.c: Fix documentation. - - * tests/test-fullscreen.c: Verify that the stage size has been - changed by clutter_stage_fullscreen(). - -2008-06-10 Emmanuele Bassi - - Bug #815 - Split up request, allocation, and paint box - - * clutter/clutter-actor.[ch]: Rework the size allocation, - request and paint area. Now ::request_coords() is called - ::allocate(), and ::query_coords() has been split into - ::get_preferred_width() and ::get_preferred_height(). See - the documentation and the layout test on how to implement - a container and layout manager with the new API. (#915, - based on a patch by Havoc Pennington, Lucas Rocha and Johan - Bilien) - - * clutter/clutter-clone-texture.c: Port CloneTexture to - the new size negotiation API; it just means forwarding - the requests to the parent texture. - - * clutter/clutter-deprecated.h: Add deprecated and replaced - API. - - * clutter/clutter-entry.c: Port Entry to the new size - negotiation API. - - * clutter/clutter-group.c: Port Group to the new size - negotiation API; the semantics of the Group actor do not - change. - - * clutter/clutter-label.c: Port Label to the new size - negotiation API, and vastly simplify the code. - - * clutter/clutter-main.[ch]: Add API for executing a - relayout when needed. - - * clutter/clutter-private.h: Add new Stage private API. - - * clutter/clutter-rectangle.c: Update the get_abs_opacity() - call to get_paint_opacity(). - - * clutter/clutter-stage.c: - (clutter_stage_get_preferred_width), - (clutter_stage_get_preferred_height), - (clutter_stage_allocate), - (clutter_stage_class_init): Port Stage to the new size - negotiation API. - - * clutter/clutter-texture.c: Port Texture to the new size - negotiation API. - - * clutter/clutter-types.h: Add ClutterRequestMode enumeration. - - * clutter/x11/clutter-stage-x11.c: Port the X11 stage - implementation to the new size negotiation API. - - * tests/Makefile.am: Add the layout manager test case. - - * tests/test-opacity.c: Update. - - * tests/test-project.c: Update. - - * tests/test-layout.c: Test case for a layout manager implemented - using the new size negotiation API; the layout manager handles - both transformed and untransformed children. - -2008-06-10 Emmanuele Bassi - - * Makefile.am: Add the po/ directory to the build. - -2008-06-10 Emmanuele Bassi - - * autogen.sh: Check for, and run glib-gettextize. - - * configure.ac: Set up the localization support. - - * clutter/clutter-main.c: Do not define the GETTEXT_PACKAGE, - but use the one from the configure script. - - * po/POTFILES.in: Template for the translatable files. - -2008-06-10 Chris Lord - - * clutter/clutter-main.c: (pre_parse_hook): - Call setlocale on init - - * clutter/x11/clutter-event-x11.c: (translate_key_event): - Fix typo and use the same buffer size as xev - -2008-06-10 Øyvind Kolås - - * clutter/clutter-texture.c: improved documentation for - clutter_texture_set_filter_quality. - -2008-06-10 Chris Lord - - Bug #916 - ClutterKeyEvent:unicode_value is ignored - Bug #950 - AltGr not handled - - * clutter/osx/clutter-event-osx.c: (clutter_event_osx_translate): - * clutter/x11/clutter-event-x11.c: (translate_key_event): - * tests/test-events.c: (fill_keybuf), (input_cb): - Apply patch from Tommi Komulainen, fill the unicode_value attribute of - the ClutterKeyEvent struct. Also use XKeycodeToKeysym, as suggested in - bug #950, comment #2 - -2008-06-10 Matthew Allum - - * clutter/clutter-texture.c: - Minor reformatting cleanups. Emit filter-quality prop on change. - * clutter/glx/clutter-glx-texture-pixmap.c: - Support mipmaps via filter quality prop. - -2008-06-10 Chris Lord - - * tests/Makefile.am: - * tests/test-entry-auto.c: - Add automatic test for ClutterEntry, by Tommi Komulainen - -2008-06-10 Chris Lord - - * clutter/cogl/common/cogl-primitives.c: (_cogl_path_arc): - Draw as expected when end angle is lower than start angle (i.e. do not - swap the angles). This aligns with cairo behaviour. - -2008-06-10 Tommi Komulainen - - Bug#959 - Multiple minor improvements - - * configure.ac: pick up GDKPIXBUF_PREFIX from gdk-pixbuf-2.0 - module, not pango - - * clutter/clutter-keysyms-table.h: cosmetic fix for ifdef guard - name in the comment (leftover from earlier commit) - - * tests/test-textures.c: don't depend on GdkPixbuf as we're not - using any actual features from it, just plain pixel buffer - manipulation - - * clutter/clutter-timeline.c - * clutter/clutter-timeline.h (clutter_timeline_list_markers): Use - gsize* to return number of items, not guint* - * tests/test-paint-wrapper.c: use correct type (guint*) in call - to clutter_actor_get_size() - - * tests/test-depth.c (janus_group): properly take height2 into - account when calculating needed height for the rectangle - - * tests/test-cogl-tex-getset.c: use rowstride, not width*4, when - calculating pixel offsets - - * tests/test-cogl-tex-getset.c: Don't assume/force RGBA format, - also support ARGB format (needed with quartz imageloader.) - -2008-06-09 Tommi Komulainen - - * clutter/osx/clutter-backend-osx.c (clutter_backend_osx_post_parse): - Print GL_VENDOR, GL_RENDERER, GL_VERSION and GL_EXTENSIONS to aid - debugging. - -2008-06-09 Tommi Komulainen - - Bug #930 - add support for quartz imagebackend - - * clutter/cogl/common/cogl-bitmap-pixbuf.c - (_cogl_bitmap_from_file): When USE_QUARTZ is defined implement - using Core Graphics. - * configure.ac: support --with-imagebackend=quartz and print - which imagebackend is selected. Make quartz default on OSX - -2008-06-09 Øyvind Kolås - - * clutter/cogl/common/cogl-primitives.c: (cogl_path_rel_curve_to): - fixed naming of implementation of cogl_path_rel_curve_to (it was - called just cogl_rel_curve_to). - -2008-06-09 Emmanuele Bassi - - * configure.ac: Clean up a bit the X11 and X extensions - checks with PKG_CHECK_EXISTS(). Since we are filling up the - X11_CFLAGS and X11_LIBS variables ourselves there is no - point in polluting the Makefiles with unused variables. - - * clutter/Makefile.am: Remove the pkg-config variable - evaluation and use the values retrieved from the configure - script. - -2008-06-09 Chris Lord - - Bug #914 - ClutterEntry is confused about characters vs. bytes - - * clutter/clutter-entry.c: (clutter_entry_ensure_layout), - (clutter_entry_handle_key_event_internal), - (clutter_entry_set_text): - Fix mix-up of character and byte counts, handle unicode correctly. - Use clutter_key_event_unicode() instead of - clutter_keysym_to_unicode(). - - * clutter/clutter-event.c: (clutter_key_event_unicode): - Don't ignore ClutterKeyEvent.unicode_value - - * clutter/clutter-keysyms-table.h: - Rename header define so as not to conflict with clutter-keysyms.h - - Patch originally by Emmanuele Bassi, with input from Tommi Komulainen. - -2008-06-07 Øyvind Kolås - - * clutter/clutter-texture.c: made the filter-quality proeprty also - control the use of mipmapping. - * clutter/clutter-texture.h: added ClutterTextureQuality enum. - * tests/test-texture-quality.c: new test. - * tests/Makefile.am: added test-texture-quality - -2008-06-06 Emmanuele Bassi - - * clutter/clutter-texture.c: - (clutter_texture_class_init): Do not unrealize on hide(), and - do not realize() on show. By default, clutter_actor_show() will - realize ourselves, and we don't want to unrealize when hidden - to avoid paying the penalty of reading back the texture data - from the video memory. - - * tests/test-actors.c: Show all textures again when pressing - the 'r' key. - -2008-06-06 Neil Roberts - - * tests/test-shader.c: Use the special wrapper vars when building - for GLES 2 and automatically cycle the shaders because it's - difficult to right-click. - -2008-06-06 Neil Roberts - - * tests/test-shader.c: Fixed to use sampler2D instead of - sampler2DRect now that GL_TEXTURE_RECTANGLE support is disabled in - revision 2834. The ClutterTexture actor now has the - 'disable-slicing' property set. The distance in texture - coordinates between pixels is passed in as a uniform so that the - box-blur shader can still work. - -2008-06-06 Emmanuele Bassi - - Bug #952 - Fix test-textures in trunk - - * tests/test-textures.c: Use USE_GDKPIXBUF instead of - USE_PIXBUF. (#952, Gwenole Beauchesne) - -2008-06-06 Emmanuele Bassi - - Bug #951 - Fix clutter_entry_init() in trunk - - * clutter/clutter-entry.c (clutter_entry_init): Remove a - variable shadowing another one. (#951, Tommi Komulainen) - -2008-06-06 Emmanuele Bassi - - Bug #955 - ClutterLabel is missing fallback resolution handling - - * clutter/clutter-label.c (clutter_label_init): Handle - clutter_backend_get_resolution() return value -1 similar to - ClutterEntry (falling back to 96.0). (#955, Tommi Komulainen) - -2008-06-06 Neil Roberts - - * clutter/eglnative/clutter-stage-egl.c - (clutter_stage_egl_realize): Use ES 2 renderable type when - building for GLES 2. - - * clutter/eglnative/clutter-event-egl.c (get_backend_time): Added - a NULL for the microseconds parameter of g_timer_elapsed. - - * clutter/eglnative/clutter-stage-egl.h: - * clutter/eglnative/clutter-egl.h: - * clutter/eglnative/clutter-backend-egl.h: Include - clutter-egl-headers.h instead of including the GL headers directly - so it can include gl2.h when building for GLES 2. - - * clutter/eglnative/clutter-egl-headers.h: - * clutter/eglnative/Makefile.am (libclutter_eglnative_la_SOURCES): - Added clutter-egl-headers.h - - * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: GLES 2 - doesn't provide a default precision for floats in the fragment - shader and it will reject the shader if there isn't one. - -2008-06-06 Matthew Allum - - Bug #948 - Remove texture rectangle support - - * clutter/clutter-feature.c: - * clutter/clutter-feature.h: - * clutter/clutter-texture.c: - * clutter/cogl/gl/cogl.c: - * clutter/glx/clutter-glx-texture-pixmap.c: - Remove support for GL_TEXTURE_RECTANGLE_ARB (now using just regular - 2D textures, with optional npots extension). Simplifys code, + makes - mipmap & shader support much more sane. - -2008-06-06 Øyvind Kolås - - Bug #931 - suspicious size allocation for pixel data. - - * clutter/cogl/common/cogl-bitmap-pixbuf.c: - (_cogl_bitmap_from_file): allocate height×rowstride and not duplicate - gdkpixbuf's strange optimization saving some bytes at the end of the - pixbuf. - -2008-06-05 Tommi Komulainen - - Bug 913 - cogl fails to build on OSX - - * clutter/cogl/gl/cogl-fbo.c: define GL_READ_FRAMEBUFFER_EXT and - GL_DRAW_FRAMEBUFFER_EXT if not defined in the build system. The - #ifdef can fail if they're not #defines but variables or enums. - As the values are supposed to be industry standard even then - it shouldn't have ill effects. - -2008-06-05 Tommi Komulainen - - Bug #911 - OSX: add multistage support - - * clutter/osx/clutter-backend-osx.{c,h} - (clutter_backend_osx_init_stage, clutter_backend_osx_get_stage, - clutter_backend_osx_redraw, clutter_backend_osx_create_stage, - clutter_backend_osx_ensure_context, clutter_backend_osx_class_init, - clutter_backend_osx_dispose, ClutterGLView:drawRect:): - * clutter/osx/clutter-stage-osx.{c,h} (clutter_stage_osx_realize, - ClutterGLWindow:setFrameSize:): - Adapt to new multistage backend API. Don't keep a pointer to - default stage. Derive from ClutterActor instead of ClutterStage. - Implement ClutterStageWindow interface. Paint, resize and - otherwise manipulate the wrapper rather than self when necessary. - - (clutter_backend_post_parse): Create our singleton GL context - here. We could probably create the context when the default - stage is created, but I think this is more clean. - - * clutter/osx/clutter-event-osx.c (clutter_event_osx_translate) - * clutter/osx/clutter-stage-osx.c (clutter_stage_osx_state_update, - ClutterGLWindow:windowShouldClose:): - * clutter/osx/clutter-stage-osx.h: Export ClutterGLWindow interface - for clutter-event-osx.c to easily get the stage for NSWindow. - Fill in ClutterEventAny::stage on our events. - -2008-06-05 Tommi Komulainen - - Bug #910 - OSX: missing memory pool - - * clutter/osx/clutter-backend-osx.c (clutter_backend_osx_redraw): - Add missing memory pool wrapup. - -2008-06-05 Tommi Komulainen - - Bug #909 - OSX: missing NULL pointer handling - - * clutter/osx/clutter-stage-osx.c (ClutterGLWindow, - clutter_stage_osx_set_title): NSString:stringWithUTF8String: - does not accept NULL values, use empty string ("") instead. - Avoids potential crash. - -2008-06-05 Emmanuele Bassi - - * tests/Makefile.am: - * tests/test-paint-wrapper.c: Add a test case (merely, a copy - of test-actors.c) that verifies that handlers to the ::paint - signal are called in the right order. - -2008-06-05 Emmanuele Bassi - - Bug #840 - Implement prepare-paint and finish-paint signals. - - * clutter/clutter-actor.c: - (clutter_actor_class_init): Add the ::paint, ::realize and - ::unrealize signals to ClutterActor. It is possible to - override the paint, realization and unrealization of an - actor without subclassing it. The ::paint signal handlers - have the same limitations of a ClutterActor::paint implementation - inside a subclass. - - (clutter_actor_realize), - (clutter_actor_unrealize), - (clutter_actor_paint): Emit the signals instead of calling - the functions from the class vtable. - -2008-06-05 Emmanuele Bassi - - * ChangeLog-ivan: Remove the ChangeLog of the clutter-ivan - branch; the branch already contains it. - -2008-06-05 Matthew Allum - - * clutter/glx/clutter-glx-texture-pixmap.h: - Actually export clutter_glx_texture_pixmap_using_extension () - -2008-06-05 Chris Lord - - * clutter/clutter-entry.c: - Correct the documentation for clutter_entry_set_max_length, fixes bug - #915. - -2008-06-04 Robert Bragg - - * tests/test-clip.c: - Removes a spurious #include which may not - be found if using --with-imagebackend=internal - -2008-06-04 Robert Bragg - - * configure.ac: - Checks that for pangocairo >= 1.18, since - pangocairo-font.c uses pango_cairo_font_get_scaled_font which isn't - otherwise available. - -2008-06-03 Neil Roberts - - Applied patch from bug #947 - - * clutter/clutter-stage.c (clutter_stage_get_default): Don't grab - the floating reference when creating the default stage. The stage - manager will take a reference to it so it will behave as any other - stage. - (clutter_stage_new): Don't take the floating reference to the new - stage but let the stage manager keep it instead. - - * clutter/clutter-stage-manager.c - (_clutter_stage_manager_add_stage): Take a reference to the stage - when it is added to the list. - (_clutter_stage_manager_remove_stage): Unref the stage when it is - removed from the list. - (clutter_stage_manager_dispose): Keep track of the 'next' pointer - as a separate variable so we can cope when the stage being - destroyed removes itself from the list as the list is being - iterated. - - * clutter/clutter-actor.c (clutter_actor_destroy): Take a - reference at the beginning of the function even if there is no - parent container so that overall the reference count is not - changed when the actor is unref'd again at the bottom of the - function. Previously it would have a net effect of leaving the - reference count alone unless it is a top level actor in which case - it would unref it. - -2008-06-03 Matthew Allum - - * clutter/glx/clutter-glx-texture-pixmap.c: - Dont always fallback to x11 (slow) updates for a single - failed pixmap. - Minor cleanups. - * clutter/x11/clutter-x11-texture-pixmap.c: - Move shm allocation to only area updates. - -2008-06-03 Øyvind Kolås - - * clutter/clutter-container.c: (container_get_child_property): - s/g_object_set_property/g_object_get_property/ - -2008-06-02 Neil Roberts - - * clutter/pango/pangoclutter-glyph-cache.c - (pango_clutter_glyph_cache_set): When creating a new band, make - sure the texture is wide enough for the glyph, not just tall - enough. - -2008-06-02 Neil Roberts - - Applied 'final patch' from bug #874 - - * clutter/cogl/gles/cogl.c: - * clutter/cogl/gl/cogl.c: The clip planes are now set using the - inverse projection matrix as the modelview matrix so that they can - be specified in screen coordinates. - - * clutter/cogl/gles/cogl-context.h (CoglContext): - * clutter/cogl/gl/cogl-context.h (CoglContext): Added a member to - cache the inverse projection matrix - - * clutter/clutter-fixed.h: Added a constant for converting from - radians to degrees. - - * clutter/clutter-fixed.c (clutter_atani, clutter_atan2i): Added - fixed-point versions of atan and atan2. - - * tests/test-clip.c: Added a test for clipping with various - rotations and depths. - - * tests/Makefile.am (noinst_PROGRAMS): Added test-clip - -2008-06-02 Neil Roberts - - * clutter/cogl/gles/cogl-gles2-wrapper.h: The uniform numbers are - now stored in a separate struct so they can be stored for - application program objects as well. - - * clutter/cogl/gles/cogl.c: Moved stub shader functions into - separate files. - (_cogl_features_init): Report support for the shaders feature on - GLES 2 - - * clutter/cogl/gles/cogl-shader.h: - * clutter/cogl/gles/cogl-shader.c: - * clutter/cogl/gles/cogl-program.h: - * clutter/cogl/gles/cogl-program.c: Separate files to handle - shaders on programs on GLES. If version 1.1 is being used then the - stub functions which all fail are still used. - - * clutter/cogl/gles/cogl-gles2-wrapper.c - (cogl_gles2_wrapper_init, cogl_gles2_wrapper_bind_attributes), - (cogl_gles2_wrapper_get_uniforms): Move the uniforms and attribute - bindings into a separate function so they can be used to bind on - application shaders as well. - (cogl_gles2_wrapper_update_matrix): Now takes a parameter and is - no longer static so that it can be used to update all of the - matrices when a new shader is bound. - - * clutter/cogl/gles/cogl-defines.h.in: Use GL_COMPILE_STATUS for - CGL_OBJECT_COMPILE_STATUS if the latter isn't available (for - example on GLES 2). - - * clutter/cogl/gles/cogl-context.h (CoglContext): Added handle - arrays for programs and shaders. - - * clutter/cogl/gles/cogl-context.c (cogl_create_context) - (cogl_destroy_context): Initialize and destroy program and shader - handle array. - - * clutter/cogl/gles/Makefile.am (libclutter_cogl_la_SOURCES): Add - cogl-{shader,program}.{c,h} - -2008-06-02 Neil Roberts - - * clutter/cogl/gl/cogl-context.c (cogl_destroy_context): Fix - cut-and-paste error where the wrong arrays were being freed. - -2008-06-01 Emmanuele Bassi - - Merge from clutter-0-6: - - * clutter/clutter-model.c: - (clutter_model_iter_set_internal_valist): Add an internal function - wrapping ClutterModelIter::set_value that does not emit the - ::row-changed signal. Emitting this signal before the ::row-added - one is wrong: a row cannot change before being inserted. - - (clutter_model_append), (clutter_model_prepend), - (clutter_model_insert): Use the non-signal emitting variant of - clutter_model_iter_set_valist(). - - (clutter_model_iter_set_valist): Use the internal version and emit - the ::row-changed signal at the end. - -2008-05-31 Emmanuele Bassi - - Bug #943 - Signals are only emitted within a certain area of - the stage - - * clutter/clutter-main.c (clutter_do_event): Use the proper - API and not the macros for the default stage, in case we are - using a backend supporting multiple stages. (Julian Aron Prenner) - -2008-05-30 Emmanuele Bassi - - * clutter/pango/pangoclutter-fontmap.c: - * clutter/pango/pangoclutter-renderer.c: - * clutter/pango/pangoclutter.h - * clutter/pango/pangoclutter-private.h: Add a function retrieving - the font mipmapping setting. - -2008-05-29 Neil Roberts - - * clutter/cogl/gles/cogl-gles2-wrapper.h (CoglGles2Wrapper): Added - uniforms for alpha testing. - - * clutter/cogl/gles/cogl-gles2-wrapper.c - (cogl_gles2_wrapper_init): Get the uniforms for alpha testing - settings. - (cogl_wrap_glEnable, cogl_wrap_glDisable): Enable/disable alpha - testing. - (cogl_wrap_glAlphaFunc): Filled in the wrapper. - - * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: Added alpha - testing. - - * clutter/cogl/gles/cogl-gles2-wrapper.h: - * clutter/cogl/gles/cogl-gles2-wrapper.c - (cogl_wrap_glGetIntegerv): Added a wrapper for glGetIntegerv so - that it can report zero clip planes. - - * clutter/cogl/gles/cogl.c: - * clutter/cogl/gles/cogl-texture.c: Use the wrapped version of - glGetIntegerv - - * clutter/cogl/gles/cogl-primitives.c (_cogl_path_fill_nodes): Use - _cogl_features_available to check for the stencil buffer instead - of an #ifdef. The stencil buffer is available in the default - profile for the GLES 2 simulator. - -2008-05-29 Emmanuele Bassi - - * configure.ac: Check the --with switches as soon as we have them, - to avoid further checks that will fail anyway. - -2008-05-29 Emmanuele Bassi - - * README: Update the configure arguments list. - -2008-05-28 Neil Roberts - - * clutter/cogl/gles/cogl-gles2-wrapper.c - (cogl_gles2_wrapper_init): Get uniforms for fog parameters and - initialise them. - (cogl_wrap_glDrawArrays): Store the modelview matrix in a uniform - as well so that it can be used for fogging calculations. - (cogl_wrap_glEnable, cogl_wrap_glDisable): Enable/disable fogging. - (cogl_wrap_glFogx, cogl_wrap_glFogxv): Fill in wrapper to set - fogging parameters. - - * clutter/cogl/gles/cogl-fixed-vertex-shader.glsl: Calculate the - fog amount if fogging is enabled. - - * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: Mix with fog - color. - - * clutter/cogl/gles/cogl-gles2-wrapper.h (CoglGles2Wrapper): Add - uniforms for fogging. - -2008-05-28 Emmanuele Bassi - - * clutter/pango/pangoclutter-font.c: Remove unneeded file. - - * tests/Makefile.am: - * tests/test-random-text.c: Add a test for checking the - glyph cache. - -2008-05-28 Emmanuele Bassi - - Bug #919 - Replacement pango renderer (Neil Roberts) - - * clutter/clutter-backend.h: - * clutter/clutter-backend.c: - (clutter_backend_set_font_options), - (clutter_backend_get_font_options): Add the ability to set - the cairo_font_options_t* for the backend at construction - time, so that backend implementations can have their own - options. - - * clutter/clutter-color.c: Include pango/pango-attributes.h - for the pango_color_parse() function. - - * clutter/clutter-label.c: - (clutter_label_ensure_layout), - (clutter_label_init), (clutter_label_set_text), - (clutter_label_set_font_name), (clutter_label_set_ellipsize), - (clutter_label_set_use_markup): Ensure that the cache is - always primed when the Label changes; this makes sure that - the cache is rebuilt outside the paint run, which should - make the painting perform better especially on embedded - devices. - - * clutter/clutter-entry.c: - (clutter_entry_ensure_layout), - (clutter_entry_init), (clutter_entry_set_text), - (clutter_entry_set_font_name): Ditto as above. - - * clutter/clutter-private.h: - * clutter/clutter-main.[ch]: Create the font-map inside the - main context; add two new functions: - - clutter_clear_glyph_cache() - clutter_set_use_mipmapped_text() - - that control the glyphs cache. - - * clutter/pango/Makefile.am: - * clutter/pango/pangoclutter-fontmap.c: - * clutter/pango/pangoclutter-private.h: - * clutter/pango/pangoclutter-render.c: - * clutter/pango/pangoclutter.h: Rewrite the Pango renderer - using a PangoCairo context and saving the glyphs inside a - more efficient cache. - - * configure.ac: Depend on pangocairo instead of pangoft2. - -2008-05-28 Emmanuele Bassi - - Bug 882 - Allow child properties for containers implementing the - ClutterContainer interface (Øyvind Kolås) - - * clutter/clutter-child-meta.[ch]: Base class for the metadata - of a ClutterActor inside a ClutterContainer; the ChildMeta - object implements a wrapper for storing data that is attached - to a ClutterActor only when it's part of a ClutterContainer. - The ChildMeta object is used to store the child properties - accessible through the ClutterContainer API. - - * clutter/clutter-container.[ch]: Creates the ChildMeta for - each actor, in case the Container specifies the ChildMeta - type to use. - - * clutter/Makefile.am: Add clutter-child-meta.[ch] to the build. - - * clutter/clutter-marshal.list: Add the marshaller for the - ClutterContainer::child-notify signal. - - * clutter/clutter-types.h: Declare ClutterContainer and - ClutterChildMeta to avoid recursive inclusion. - -2008-05-28 Neil Roberts - - * clutter/cogl/gles/Makefile.am: Use old-style Makefile rules for - the stringify script so that automake won't complain. - -2008-05-28 Emmanuele Bassi - - * tests/test-script.c: - * tests/test-script.json: Test merging the same actor from two - different sources. - -2008-05-28 Emmanuele Bassi - - Fix merging of objects with the same id. - - * clutter/clutter-script.c: - (json_object_end): If there already is an ObjectInfo under the - parsed id, merge the construction with the currently stored - state. - - (parse_children), (parse_signals), - (parse_behaviours): Append the newly parsed children, signals - and behaviours, in case the ObjectInfo already has unresolved - items. - - (clutter_script_construct_object): Fix a typo in the type check. - - (clutter_script_init): Do not copy the key inside the hash - table holding the objects - we are already holding it inside - the value. - -2008-05-28 Neil Roberts - - * clutter/cogl/gles/cogl-gles2-wrapper.c (cogl_wrap_glGetFixedv): - Filled in the wrapper for glGetFixedv - -2008-05-28 Neil Roberts - - * clutter/cogl/gles/cogl-texture.c: Use the wrapper for - glTexParameteri. Call glGenerateMipmap after every change to the - texture image data. - - * clutter/cogl/gles/cogl-gles2-wrapper.h: - * clutter/cogl/gles/cogl-gles2-wrapper.c: Added a wrapper for - glTexParameteri so that it can ignore requests to set - GL_GENERATE_MIPMAP. Added a wrapper for glGenerateMipmap that does - nothing on GLES 1 - -2008-05-28 Emmanuele Bassi - - * clutter/clutter-script.c: - (clutter_script_construct_object): Mark top-level objects, - that is objects that don't have their ownership transferred - when building up a ClutterScript. - - (object_info_free): Merge a fix from the stable branch, but - do not check the type - check whether the object is a top - level (we still need the ClutterActor type check in order to - call clutter_actor_destroy()). - -2008-05-28 Emmanuele Bassi - - * clutter/clutter-rectangle.c: - (clutter_rectangle_paint): Remove commented out call to - cogl_enable(); the call is not needed and the comment is - in C99. - -2008-05-27 Neil Roberts - - * clutter/eglx/clutter-stage-egl.h: - * clutter/eglx/clutter-egl-headers.h: - * clutter/eglx/clutter-backend-egl.h: - * clutter/eglx/Makefile.am: Include the GLES and EGL headers via - clutter-egl-headers.h so that the right version can be used - depending on whether the GLES 2 wrapper is being used. - - * configure.ac: Added an automake conditional for whether the GLES - 2 wrapper should be used. - - * clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize): - Remove the call to glGetIntegerv to get the max texture size. It - was being called before the GL context was bound so it didn't work - anyway and it was causing trouble for the GLES 2 simulator. - - * clutter/cogl/gles/stringify.sh: Shell script to convert the - shaders into a C string. - - * clutter/cogl/gles/cogl-gles2-wrapper.h: - * clutter/cogl/gles/cogl-gles2-wrapper.c: Wrappers for most of the - missing GL functions in GLES 2. - - * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: - * clutter/cogl/gles/cogl-fixed-vertex-shader.glsl: New shaders for - GLES 2 - - * clutter/cogl/gles/cogl-defines.h.in: Use the @CLUTTER_GL_HEADER@ - macro instead of always using the GLES 1 header. - - * clutter/cogl/gles/cogl-context.h (CoglContext): Include a field - for the state of the GLES 2 wrapper. - - * clutter/cogl/gles/cogl-texture.c: - * clutter/cogl/gles/cogl-primitives.c: - * clutter/cogl/gles/cogl.c: Use wrapped versions of the GL - functions where neccessary. - - * clutter/cogl/gles/Makefile.am: Add sources for the GLES 2 - wrapper and an extra build step to put the GLSL files into a C - string whenever the files change. - -2008-05-26 Matthew Allum - - * clutter/x11/clutter-stage-x11.c: (clutter_stage_x11_request_coords): - Dont allow the window to be resize to 0 dimentions. (fixes #933) - -2008-05-23 Emmanuele Bassi - - Bug #912 - Invalid use of int* as parameter for glGetIntegerv - - * clutter/cogl/gl/cogl.c (_cogl_features_init): Use GLint - instead of int. (#912, Tommi Komulainen) - -2008-05-23 Emmanuele Bassi - - Bug #928 - Reparenting a child that itself is a container - doesn't work - - * clutter/clutter-actor.c (clutter_actor_set_parent): Realize - an actor when setting its parent, if the parent is realized. - - * clutter/clutter-group.c: - (clutter_group_realize), (clutter_group_class_init): Add the - missing implementation of the ::realize() virtual function; this - makes sure that the children of a Group are realized if the Group - is realized. (#928) - -2008-05-21 Neil Roberts - - * clutter/cogl/gl/cogl.c (error_string): - * clutter/cogl/gles/cogl.c (error_string): Rename to - _cogl_error_string and remove the static scoping so that it can be - called in cogl-texture etc. - - * clutter/cogl/gl/cogl-texture.c (cogl_texture_new_from_foreign): - * clutter/cogl/gles/cogl-texture.c (cogl_texture_new_from_foreign): - GE(*) can't be used to wrap around calls that use the return - value. - - * clutter/cogl/gl/cogl-texture.c (_cogl_texture_quad_sw) - (_cogl_texture_quad_hw, cogl_texture_polygon): Remove GE(*) - wrapper around calls in the middle of a glBegin/glEnd pair which - otherwise always generate an error because glGetError can only be - called outside of the pair. - - * clutter/cogl/gl/cogl-internal.h: Include stdio.h when definig - COGL_DEBUG and declare a prototype for _cogl_error_string. - - * clutter/cogl/gles/cogl-internal.h: Match GE(*) macro to GL - version. - -2008-05-21 Ivan Leben - - * clutter/cogl/gles/cogl-texture.c: - (_cogl_texture_download_from_gl:) Only comment out the broken - check for framebuffer alpha bits, not the check for alpha in - texture format. - -2008-05-20 Øyvind Kolås - - Decouple actor opacity from fill opacity in ClutterRectangle (fixes - race when both are set from clutter script also makes it more - consistent with the behavior of other actors.) - - * clutter/clutter-rectangle.c: (clutter_rectangle_set_color): stop - setting the opacity of the actor from the specified color. - (clutter_rectangle_paint): combine the absolute opacity of the actor - with the alpha of the color when painting. - -2008-05-20 Ivan Leben - - * clutter/cogl/gles/cogl-texture.c: - (cogl_texture_download_from_gl:) Implemented a workaround - for missing alpha framebuffer channel. There are still - some issues with detecting whether alpha is present in the - framebuffer. See comments in code. Test-cogl-tex-getset now - successfully retrieves a RGBA texture image data. - -2008-05-19 Ivan Leben - - * clutter/cogl/gles/cogl-texture.c: - (cogl_texture_download_from_gl:) Store old blending factors - and restore them when done. The lack of ability to retrieve - the alpha channel now more noticable in test-cogl-tex-getset - since the edges of the hand are not antialiased. - - * clutter/cogl/gl(es)/cogl-internal.h: Declare - cogl_blend_func to avoid "implicit implementation" compile - warning. - -2008-05-19 Ivan Leben - - * clutter/cogl/gl(es)/cogl.c: New internal function - cogl_blend_func caches blending setup much like cogl_enable - does with the enable flags. This separates blending factors - setup from the enable/disable operation in preparation of - the texture image retrieval fix for alpha channel on GLES. - (cogl_enable:) Does not modify blending factors anymore. - - * clutter/cogl/gl(es)/cogl-context.h: CoglContext holds two - new variables to cache blending src and dst factors. - - * clutter/cogl/gl(es)/cogl-context.c: - (cogl_create_context:) Initialize blending factors. - - * clutter/cogl/gles/cogl-texture.c: - (cogl_texture_download_from_gl:) Set blending factors to - CGL_ONE, CGL_ZERO which fixes the slighlty improper behavior - where source colour was actually multiplied with its alpha - value in the result (not noticable on current tests). - -2008-05-19 Emmanuele Bassi - - * clutter/eglx/Makefile.am: Fix the INCLUDE directives to - properly include the X11 backend headers. - - * clutter/glx/Makefile.am: Add the libclutter-x11.la static - library to the LDADD directives. - -2008-05-19 Tomas Frydrych - - * clutter/x11/clutter-x11.h: - * clutter/glx/clutter-glx.h: - Include texture pixmap headers. - -2008-05-16 Neil Roberts - - * clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize): - Fix name of parent class variable which otherwise breaks the - build. - -2008-05-16 Neil Roberts - - Use the Mesa headers instead of depending on GLee for Win32 - builds. - - * configure.ac: No longer check for GLee - - * clutter/cogl/gl/cogl-defines.h.in: Don't bother including GLee.h - - * build/mingw/mingw-cross-compile.sh: No longer downloads libGLee - but downloads the Mesa library instead and installs the headers - from that. Fixed the libpng version. - -2008-05-16 Tomas Frydrych - - * clutter/glx/Makefile.am: - * clutter/x11/Makefile.am: - Install glx and x11 specific includes into clutter/glx and - clutter/x11 so that header files that include glx/*.h or x11/*.h - when installed. - -2008-05-16 Neil Roberts - - * clutter/win32/clutter-event-win32.c (message_translate): Fix - signedness of old_xpos and old_ypos to get rid of compiler - warnings. - - * clutter/win32/clutter-backend-win32.c - (clutter_backend_win32_get_features): Cast the result of - glGetString to a signed char pointer to avoid compiler warnings. - -2008-05-15 Neil Roberts - - * clutter/win32/clutter-stage-win32.c: - * clutter/win32/clutter-backend-win32.c: Reflect changes to the - GLX/X11 backend in revisions 2708-2709 and 2713-2715 which - simplify the backend a little. - -2008-05-15 Emmanuele Bassi - - * clutter/x11/clutter-backend-x11.c: - * clutter/clutter-event.h: - * clutter/clutter-feature.h: - * clutter/clutter-fixed.c: - * clutter/clutter-model.h: Fix documentation. - - * clutter/eglnative/clutter-backend-egl.[ch]: - * clutter/eglnative/clutter-event-egl.c: Add the same solution - used for the SDL backend in order to get the time of an event. - This should fix the motion event throttling and the click count - on button press. (#906) - - * tests/test-pixmap.c (create_pixmap), (main): Fix preprocessor - directives. - -2008-05-14 Emmanuele Bassi - - * tests/test-threads.c: Add a "progress bar" actor and - make the test take less amount of time to complete. - -2008-05-14 Emmanuele Bassi - - * tests/test-events.c: Clean up a bit, and print out more - messages when pressing one of the rectangles. - - * tests/test-threads.c: Be more verbose in the console, and - apply another behaviour on the rectangle, to show that we - are not blocking. - -2008-05-14 Øyvind Kolås - - * clutter/cogl/gles/cogl.c: (_cogl_features_init): do not set - COGL_FEATURE_TEXTURE_READ_PIXELS, since it is not available. - -2008-05-14 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-main.c: - * clutter/clutter-private.h: - Rejid Øyvind's previous commit a little moving more into - clutter-main.c and using ClutterContext. - Also Refactor clutter_init & clutter_init_with_args to share - same core init code. - -2008-05-13 Øyvind Kolås - - Made it possible to do picking when the colors stored in the - framebuffer are only approximately the correct value. - - * clutter/clutter-actor.c: - (init_bits): initialize constants about how many bits are - available/will be used for r,g,b components. - (_clutter_pix_to_id): now own function, compute an id from a - pixel into its own function (used from _clutter_do_pick). - (_clutter_id_to_col): now own function, computes the color to use for - a given id. - (clutter_actor_paint): use clutter_id_to_col. - * clutter/clutter-main.c: - (_clutter_do_pick): use _clutter_pix_to_id - (clutter_main): re-enable invocation of fruity app shell. - -2008-05-13 Emmanuele Bassi - - * clutter/fruity/clutter-stage-fruity.c: - (clutter_stage_egl_show), (clutter_stage_egl_hide): Don't chain - up and set flags, as it is not needed anymore. - - (clutter_stage_egl_realize): Set the REALIZED flag. - - * clutter/eglnative/clutter-stage-egl.c: - (clutter_stage_egl_show), (clutter_stage_egl_hide): Don't chain - up and set flags, as it is not needed anymore. - -2008-05-13 Emmanuele Bassi - - * clutter/glx/clutter-stage-glx.c: - (clutter_stage_glx_unrealize): Move the shaders release from here... - - * clutter/glx/clutter-backend-glx.c: - (clutter_backend_glx_dispose): ... to here. Shaders should be - released when the GL context is being destroyed, and that only - happens when the backend is being disposed, now that we support - multiple stages. - -2008-05-13 Emmanuele Bassi - - * clutter/clutter-backend.c: - (_clutter_backend_create_stage): Call _clutter_stage_set_window() - ourselves, thus removing yet another action that backends must - implement and might get wrong; also cuts a backend-agnostic piece - of code duplication. - - * clutter/eglnative/clutter-backend-egl.c: - (clutter_backend_egl_create_stage): Update the EGL native backend. - - * clutter/eglx/clutter-backend-egl.c: - (clutter_backend_egl_create_stage): Update the EGLX backend. - - * clutter/fruity/clutter-backend-fruity.c: - (clutter_backend_egl_create_stage): Update the fruity backend - - * clutter/glx/clutter-backend-glx.c: - (clutter_backend_glx_create_stage): Update the GLX backend. - - * clutter/sdl/clutter-backend-sdl.c: - (clutter_backend_sdl_create_stage): Update the SDL backend. - - * HACKING.backends: Update the ::create_stage() description. - -2008-05-13 Emmanuele Bassi - - * clutter/x11/clutter-event-x11.c (event_translate): Remove the - cheap Expose event compression, as it seems to play games when a - composite manager is running. It's also not really needed, as - the redraw queue will avoid redraws too close to each other - anyway. - - * clutter/x11/clutter-stage-x11.c: - (clutter_stage_x11_show), (clutter_stage_x11_hide): Do not chain - up just to set the flags. This fixes a critical warning coming - from ClutterActor::hide() default implementation. - -2008-05-13 Ivan Leben - - * clutter/cogl/gl/cogl-defines.h.in: - Fix GL function prototypes on OS X by #definining APIENTRY and - APIENTRYP if missing. - -2008-05-12 Ivan Leben - - * clutter/cogl/gl/cogl-defines.h.in: - Defined GL extension functions used by Cogl inside the COGL_ - namespace. - - * clutter/cogl/gl/cogl-context.h: - * clutter/cogl/gl/cogl.c: - Use COGL_ extension function prototypes instead of relying - on glext.h to define them. Should fix the mac compilability - bug, but haven't tested it yet. - -2008-05-12 Matthew Allum - - * clutter/x11/clutter-x11-texture-pixmap.c: - * configure.ac: - * tests/Makefile.am: - Remove the XComposite dep from Clutter itself, just use - in test-pixmap (if available) - -2008-05-12 Emmanuele Bassi - - Rework the stage wrapper/implementation relation: remove - duplicated code and all the bookkeeping from the backends into - ClutterStage whenever possible, to reduce the amount of work a - backend must do (and possibly get wrong). Thanks to Tommi - Komulainen. - - * clutter/clutter-main.c: - (clutter_init_with_args), (clutter_init): Realize the default - stage after creation. The default stage is special, because we - use it in the initialization sequence. This removes the burden - from the backends and reduces the things a backend can get - wrong. - - * clutter/clutter-stage.c: - (clutter_stage_show): Make sure to realize the implementation if - it hasn't been realized yet. - - (clutter_stage_realize): Set the REALIZED flag and call - clutter_stage_ensure_current() if the implementation was - successfully realized. - - (clutter_stage_unrealized): Call clutter_stage_ensure_current() - on unrealize. - - * clutter/glx/clutter-backend-glx.c: - (clutter_backend_glx_create_stage): Do not realize the stage anymore - when creating it, and let the normal realization sequence take - place. - - (clutter_backend_glx_ensure_context): Trap for X11 errors. - - * clutter/glx/clutter-stage-glx.c: - (clutter_stage_glx_realize): Chain up to the X11 implementation - so that we can set up the window state (title, cursor visibility) - when we actually have a X window. Also, do not call - clutter_stage_ensure_current(), and rely on the wrapper to do - it for us. This means we can drop setting the REALIZED flag on - the wrapper. - - (clutter_stage_glx_unrealize): Do not call - clutter_stage_ensure_current() ourselves, and rely on the wrapper - to do it for us. - - * clutter/x11/clutter-stage-x11.c: - (set_wm_title), (set_cursor_visible): Move the WM title and - cursor visibility code inside their own functions. - - (clutter_stage_x11_realize): Set the window title and whether the - cursor is visible or not after realizing the stage. - - (clutter_stage_x11_set_cursor_visible), - (clutter_stage_x11_set_title): Call set_wm_title() and - set_cursor_visible(). - - (clutter_stage_x11_finalize): Free the title string. - - * clutter/x11/clutter-stage-x11.h: Save more of the stage state, - so that we can set it even when the stage hasn't been realized - yet. - - * clutter/eglnative/clutter-backend-egl.c: - (clutter_backend_egl_create_stage): - * clutter/eglnative/clutter-stage-egl.c: - (clutter_stage_egl_unrealize), - (clutter_stage_egl_realize): Update the eglnative backend. - - * clutter/eglx/clutter-backend-egl.c: - (clutter_backend_egl_ensure_context), - (clutter_backend_egl_create_stage): - * clutter/eglx/clutter-stage-egl.c: - (clutter_stage_egl_unrealize), - (clutter_stage_egl_realize): Update the eglx backend. - - * clutter/sdl/clutter-backend-sdl.c: - (clutter_backend_sdl_create_stage): - * clutter/sdl/clutter-stage-sdl.c: - (clutter_stage_sdl_realize): Update the sdl backend. - - * clutter/fruity/clutter-backend-fruity.c: - (clutter_backend_fruity_create_stage): - * clutter/sdl/clutter-stage-fruity.c: - (clutter_stage_fruity_realize): Update the fruity backend. - - * tests/test-multistage.c (on_button_press): Bail out if - clutter_stage_new() returns NULL. - - * HACKING.backends: Update backend writing documentation. - -2008-05-12 Robert Bragg - - * clutter/clutter-timeline.c: - Adds clutter-timeline documentation RE: r2337, explaining - the current timeline semantics. - -2008-05-12 Emmanuele Bassi - - * HACKING.backends: Update documentation. - - * clutter/glx/clutter-stage-glx.c: - (clutter_stage_glx_realize): Avoid setting more flags than - necessary. - -2008-05-09 Neil Roberts - - * clutter/clutter-frame-source.c (clutter_frame_source_add) - (clutter_frame_source_add_full): Add gtk-doc and rename the - 'function' parameter to 'func'. - - * clutter/clutter-frame-source.h: Rename the 'function' parameters - to 'func'. - - * clutter/Makefile.am (source_h): Make clutter-frame-source.h a - public header. - - * clutter/clutter-main.c (clutter_threads_add_frame_source_full): - Improve gtk-doc - -2008-05-09 Emmanuele Bassi - - * clutter/clutter-script-private.h: Add a flag for the - default stage. - - * clutter/clutter-script.c: - (json_object_end): If the "type" member is "ClutterStage" - and we have a "is-default" member set to true then this - is the default stage. - - (clutter_script_construct_object): Special case the default - stage instead of each ClutterStage. - - (object_info_free): Ditto as above. - - * tests/test-script.json: Test the creation of a non-default - stage and the ::destroy handler to quit. - -2008-05-09 Emmanuele Bassi - - Bug #908 - Support transform from G_TYPE_INT to ClutterUnit - - * clutter/clutter-units.c: - (clutter_value_transform_int_unit), - (clutter_unit_get_type): Add GValue transformation function from - integer values to ClutterUnit. (#908) - - (param_unit_validate): Fix validation for ClutterParamSpecUnit; - this allows writable ClutterUnit properties. - - * clutter/clutter-fixed.c: - (clutter_value_transform_int_fixed), - (clutter_value_transform_double_fixed), - (clutter_value_transform_float_fixed): Add GValue transformation - functions from native types (int, double, float) to ClutterFixed. - - (clutter_fixed_get_type): Register the new transformation functions. - - (param_fixed_validate): Fix validation for ClutterParamSpecUnit; - this allows writable ClutterFixed properties. - -2008-05-07 Ivan Leben - - * clutter/cogl/cogl.h.in: - * clutter/cogl/gl(es)/cogl-texture.h: - * clutter/cogl/gl(es)/cogl-texture.c: - cogl_texture_new_* functions take a gboolean auto_mipmap argument. - If TRUE automatic mipmap generation is enabled during the process - of slice texture object creation. - (cogl_texture_new_from_foreign:) now allows mipmap min filter - flags. - - * clutter/clutter-texture.c: - * clutter/glx/clutter-glx-texture-pixmap.c: - * tests/test-cogl-offscreen.c: - * tests/test-cogl-tex-tile.c: - * tests/test-cogl-tex-convert.c: - * tests/test-cogl-tex-polygon.c: - * tests/test-cogl-tex-getset.c: - Pass FALSE for auto_mipmap to cogl_texture_new_*. - - * clutter/pango/pangoclutter-render.c: - (tc_get:) Pass TRUE to cogl_texture_new_with_size and use mipmap - min filter for nicer glyphs at small scales. As a result test-text - has gone all beautiful now. - -2008-05-07 Neil Roberts - - * clutter/clutter-frame-source.h: Added the missing G_BEGIN_DECLS - and G_END_DECLS - -2008-05-07 Emmanuele Bassi - - * clutter/sdl/clutter-backend-sdl.c: - (clutter_backend_sdl_dispose): Destroy the timer that we created... - (clutter_backend_sdl_init): ... here. - - * clutter/sdl/clutter-backend-sdl.h: Add a GTimer for time-based - operations, like the event time. - - * clutter/sdl/clutter-event-sdl.c: - (get_backend_time): Get the elapsed milliseconds for the SDL - backend. - - (_clutter_events_init): Start the timer provided by the backend... - (_clutter_events_uninit): ... and the stop it. - - (key_event_translate), (event_translate): Use the backend time - to fill out the time field of the event structures. This fixes - the motion notification throttling on the SDL backend. - -2008-05-06 Matthew Allum - - * clutter/glx/clutter-glx-texture-pixmap.c: - * clutter/x11/clutter-x11-texture-pixmap.c: - More cleanups, safety additions. - -2008-05-05 Øyvind Kolås - - * clutter/cogl/gl/cogl-primitives.c: - * clutter/cogl/gles/cogl-primitives.c: - * clutter/cogl/common/cogl-primitives.c: moved declaration of - gegl_rectangle and gegl_rectanglex here to satisfy linking - requirements when building the fruity backend. - -2008-05-05 Øyvind Kolås - - * clutter/cogl/cogl.h.in: api review touch ups. - * clutter/cogl/common/cogl-primitives.c: api review touch ups. - * clutter/cogl/gl/cogl-primitives.c: (cogl_path_fill), - (cogl_path_stroke): indentation. - * clutter/cogl/gles/cogl-primitives.c: - (_cogl_path_fill_nodes): free allocated resources. - - * tests/test-cogl-primitives.c: updated to new API, added rotation to - test to show that cogl renders paths correct under perspective - distortion. - -2008-05-02 Emmanuele Bassi - - Bug #900 - clutter_actor_lower() and friends do not queue redraw - - * clutter/clutter-actor.c: - (clutter_actor_raise), - (clutter_actor_lower): Queue a redraw after raising and lowering - and actor in the paint order stack. (#900) - -2008-05-01 Richard Purdie - - * configure.ac: - Set CLUTTER_COGL for fruity. - -2008-05-01 Emmanuele Bassi - - Build fixes for the SDL flavour. - - * clutter/sdl/clutter-backend-sdl.c: Remove an unused function. - - * clutter/sdl/clutter-event-sdl.c: - (clutter_event_dispatch): Properly cast the stage pointer. - - * clutter/sdl/clutter-stage-sdl.c: - (clutter_stage_window_iface_init): Remove the draw_to_pixbuf() - stub and assignment. - -2008-05-01 Richard Purdie - - * configure.ac: - Fix up fruity flavour configure option. - -2008-05-01 Øyvind Kolås - - * clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes): draw - the rasterized scanlines as an array of triangles. - -2008-05-01 Emmanuele Bassi - - * clutter/clutter-behaviour.c: - (clutter_behaviour_remove_all): Disconnect the ::destroy - handler when removing all actors, to match the behaviour - of clutter_behaviour_remove(). - -2008-05-01 Matthew Allum - - * clutter/glx/clutter-glx-texture-pixmap.c: - * tests/test-pixmap.c: - Fix up texture-pixmap, now works. - Thanks to Neil for spotting we were actually using - wrong texture type in fbconfig (COGL change). - -2008-04-30 Øyvind Kolås - - * clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes): - keep track of direction we are drawing in and make sure we leave - two intersection points when we have changed direction. - -2008-04-30 Øyvind Kolås - - * clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes): - scanline rasterizer fallback for GLES without working stencil - buffer (would benefit from optimization/smarter choice of - datastructures). - -2008-04-30 Emmanuele Bassi - - * clutter/clutter-effect.c: - (clutter_effect_closure_destroy): Do not remove the actor - from the behaviour; the behaviour is an internal detail of the - effect, and it will remove the actors anyway when finalized - when g_object_unref() is called. This should guard against - actors being destroyed while an effect is running. - -2008-04-30 Øyvind Kolås - - * clutter/cogl/common/Makefile.am: - * clutter/cogl/common/cogl-primitives.c: - * clutter/cogl/common/cogl-primitives.h: - * clutter/cogl/gl/Makefile.am: - * clutter/cogl/gl/cogl-primitives.c: - * clutter/cogl/gl/cogl-primitives.h: - * clutter/cogl/gles/Makefile.am: - * clutter/cogl/gles/cogl-primitives.c: - * clutter/cogl/gles/cogl-primitives.h: moved duplicated code to the - common directory. - -2008-04-30 Robert Bragg - - * clutter/clutter/x11/clutter-x11-texture-pixmap.c: - In _update_area_real with depth=16 we weren't setting up the alpha - channel. - -2008-04-29 Matthew Allum - - * clutter/glx/Makefile.am: - * clutter/x11/Makefile.am: - Revert header install locations (Mistake in previous commit, - fixes #898) - -2008-04-29 Neil Roberts - - * clutter/clutter-actor.c (clutter_actor_move_anchor_point): The - actor position was being moved in the wrong direction. Perhaps - this was a cut-and-paste bug from move_anchor_point_from_gravity - because in that function ax and ay represent the old anchor - position, but in this function they represent the new. - -2008-04-29 Matthew Allum - - * clutter/glx/Makefile.am: - * clutter/glx/clutter-glx-texture-pixmap.c: - * clutter/glx/clutter-glx-texture-pixmap.h: - * clutter/x11/Makefile.am: - * clutter/x11/clutter-x11-texture-pixmap.c: - * tests/test-pixmap.c: - Commit newer x11 texture pixmap stuff (optionally using SHM). - Also seemingly still broken overhauled glx-texture-pixmap - (code by Robert and myself) - - * configure.ac: - Minor formatting change. - -2008-04-29 Neil Roberts - - Removed COGLhandle and changed shader and program functions to be - wrapped in reference-counted CoglHandles instead. - - * clutter/cogl/gl/cogl-shader.c: - * clutter/cogl/gl/cogl-shader.h: - * clutter/cogl/gl/cogl-program.c: - * clutter/cogl/gl/cogl-program.h: - New files to hold the shader and program functions. - - * clutter/cogl/gl/cogl.c: Removed shader and program functions. - - * clutter/cogl/common/cogl-handle.h: New header to define - COGL_HANDLE_DEFINE which helps build functions to create - reference-counted handles. This reduces the amount of duplicated - code. - - * clutter/cogl/gl/cogl-texture.c: - * clutter/cogl/gles/cogl-texture.c: - * clutter/cogl/gl/cogl-fbo.c: Converted to use COGL_HANDLE_DEFINE - from cogl-handle.h to avoid duplicating some of the common code. - - * clutter/cogl/gles/cogl-defines.h.in: - * clutter/cogl/gl/cogl-defines.h.in: Removed COGLhandle - - * clutter/cogl/gl/cogl-context.h: Added handle arrays for programs - and shaders. - - * clutter/cogl/gl/cogl-context.c (cogl_create_context): Added - initialisers for shader_handles and program_handles. - (cogl_destroy_context): Added calls to g_array_free for all handle - arrays. - - * clutter/cogl/gl/Makefile.am (libclutter_cogl_la_SOURCES): Added - cogl-{program,shader}.{c,h} - - * clutter/cogl/common/Makefile.am - (libclutter_cogl_common_la_SOURCES): Added cogl-handle.h - - * clutter/cogl/gles/cogl.c: - * clutter/cogl/cogl.h.in: Programs and shaders are now wrapped in - CoglHandles instead of COGLhandles. cogl_program_destroy and - cogl_shader_destroy is now replaced with cogl_program_unref and - cogl_shader_unref. cogl_program_ref and cogl_shader_ref are also - added. - - * clutter/clutter-shader.c: Converted to use CoglHandles for the - programs and shaders instead of COGLhandles. - -2008-04-29 Øyvind Kolås - - * clutter/cogl/cogl.h.in: renaming of API's in cogl to make the - primitives and path API a bit smaller and more resembling cairo. - * clutter/cogl/gl/cogl-primitives.c: - * clutter/cogl/gles/cogl-primitives.c: - * clutter/cogl/gles/cogl.c: - - * clutter/clutter-actor.c: - * clutter/clutter-rectangle.c: - * tests/test-cogl-offscreen.c: - * tests/test-cogl-primitives.c: - * tests/test-cogl-tex-convert.c: - * tests/test-cogl-tex-foreign.c: - * tests/test-cogl-tex-getset.c: - * tests/test-cogl-tex-tile.c: updated according to changes in cogl. - -2008-04-29 Robert Bragg - - * clutter/x11/clutter-x11-texture-pixmap.c: - In clutter_x11_texture_pixmap_set_pixmap, dont assume that the actor - size should be changed to match the size of the pixmap. - -2008-04-29 Robert Bragg - - * clutter/cogl/gles/cogl-texture.c: - Replaces an malloc call with g_malloc. - -2008-04-29 Robert Bragg - - * clutter/configure.ac: - When looking for a GLES 1 library, also try the name "GLESv1_CM". - - This also reduces the xfixes version requirement to v3, since we dont - need support for Show/HideCursor. - -2008-04-28 Neil Roberts - - Fixed 'make dist' - - * clutter/cogl/Makefile.am (EXTRA_DIST): Distribute cogl.h.in - instead of cogl.h - (DIST_SUBDIRS): Added common folder - - * clutter/cogl/gl/Makefile.am (libclutter_cogl_la_SOURCES): Remove - cogl-defines.h and use the right location for cogl-defines.gl.h - (EXTRA_DIST): Distribute cogl-defines.h.in - - * clutter/cogl/gles/Makefile.am (libclutter_cogl_la_SOURCES): - Remove cogl-defines.h and use the right location for - cogl-defines.gles.h - (EXTRA_DIST): Distribute cogl-defines.h.in - - * clutter/Makefile.am (DIST_SUBDIRS): Add fruity - -2008-04-28 Neil Roberts - - * clutter/cogl/cogl.h.in (COGL_A_BIT): Added the missing comma - after COGL_PIXEL_FORMAT_G_8 - -2008-04-28 Emmanuele Bassi - - * autogen.sh: Do not just touch the gtk-doc.make file, if we - could not find gtkdocize, but echo an empty EXTRA_DIST into it - so that the automake won't complain later on. - -2008-04-28 Øyvind Kolås - - * clutter/cogl/cogl.h.in: reindented. - -2008-04-28 Emmanuele Bassi - - * clutter/clutter-actor.c: - (parse_rotation_array), - (clutter_actor_set_custom_property): Use the internal, unit based - rotation setter when parsing the rotation from a ClutterScript - file. - - (clutter_geometry_copy), - (clutter_vertex_copy), - (clutter_actor_box_copy): Use the more efficient g_slice_dup(). - - (clutter_actor_get_stage): Add documentation. - - * clutter/clutter-group.c: Documentation fix. - -2008-04-28 Øyvind Kolås - - * clutter/cogl/cogl.h.in: moved the documentation of the cogl - primitives to the main public header. - * clutter/cogl/gl/cogl-primitives.c: from here .. - * clutter/cogl/gles/cogl-primitives.c: .. _and_ here. - -2008-04-28 Øyvind Kolås - - * clutter/cogl/cogl.h.in: added documentation. - -2008-04-28 Emmanuele Bassi - - * clutter/clutter-units.c (param_unit_init): Use the right - macros to set the default minimum and maximum values. - - * clutter/clutter-fixed.c (param_fixed_init): Ditto as above. - -2008-04-28 Matthew Allum - - * autogen.sh: - Dont display 'make' if configure fails. - * configure.ac: - Add new --with-gles version option for eventual GLES2 support - Also minor tidyups. - -2008-04-28 Neil Roberts - - * tests/test-cogl-tex-polygon.c: Added buttons to toggle whether - slicing and linear filtering is enabled. By default slicing is - disabled to help test on GL ES. - -2008-04-28 Neil Roberts - - * tests/Makefile.am (INCLUDES): Added $(top_srcdir)/clutter to the - include path. Otherwise the tests will fail to build trying to - include "json/json-types.h" when building out-of-tree. - -2008-04-28 Emmanuele Bassi - - * clutter/eglnative/clutter-backend-egl.c: - (clutter_backend_egl_redraw): Whitespace fixes. - - * clutter/eglnative/clutter-stage-egl.c: - (clutter_stage_egl_hide): Indentation fixes. - - (clutter_stage_egl_realize): Use g_critical() to report failure, - unset the flags and bail out instead of continuing the realization - of the stage. - -2008-04-25 Neil Roberts - - Merged in the clutter-ivan branch which contained the new public - COGL API. - -2008-04-25 Emmanuele Bassi - - * clutter/sdl/clutter-stage-sdl.[ch]: Port the SDL stage to - the new stage implementation API. - - * clutter/sdl/clutter-backend-sdl.[ch]: Port the SDL backend - to the new backend API. - - * clutter/sdl/clutter-event-sdl.c: - (clutter_event_dispatch): Assign the default stage as the - origin of the event. - -2008-04-24 Emmanuele Bassi - - * configure.ac: Add the --with-json configure switch to - allow building Clutter with the external dependency on - the system JSON-GLib; the default is to use the internal - copy unless explicitly asked to check. - -2008-04-24 Emmanuele Bassi - - * Makefile.am: Add HACKING.backends to the EXTRA_DIST. - -2008-04-24 Emmanuele Bassi - - * HACKING.backends: Add documentation on how to write a - backend for Clutter. - -2008-04-24 Emmanuele Bassi - - * clutter/eglnative/clutter-backend-egl.c: - (clutter_backend_egl_create_stage): Fix checks using a - non assigned member of the ClutterBackendEGL structure. - -2008-04-23 Emmanuele Bassi - - * clutter/eglnative/clutter-backend-egl.[ch]: - * clutter/eglnative/clutter-stage-egl.[ch]: - * clutter/eglnative/clutter-event-egl.c: Port to the new stage - and backend APIs. *WARNING* untested and not compiled. - - * clutter/eglx/clutter-backend-egl.c: - (clutter_backend_egl_init): Set some defaults. - -2008-04-23 Emmanuele Bassi - - * tests/test-script.json: Remove the explicit "visible" - member to test that the visibility of actors is TRUE - by default. - -2008-04-23 Emmanuele Bassi - - * configure.ac: - * clutter/Makefile.am: Do not build the internal JSON-GLib - copy if there is a system installed one. - - * clutter/clutter-json.h: Remove. - - * clutter/clutter-json.h.in: Template for the clutter-json.h - header file, used to opaquely include the JSON-GLib types. - -2008-04-23 Emmanuele Bassi - - * clutter/clutter-actor.c: Document :show-on-set-parent and - the fact that calling clutter_actor_show() and hide() on an - unparented actor will change that property as well as a side - effect. - -2008-04-23 Emmanuele Bassi - - * clutter/clutter-actor.c (clutter_actor_set_property): Use the - internal setter for the rotation center. - -2008-04-23 Emmanuele Bassi - - * clutter/clutter-actor.[ch]: Add units based variant of the - rotation accessors. - -2008-04-23 Emmanuele Bassi - - Bug 892 - Incorrect results using rotation-[center|angle] properties - - * clutter/clutter-actor.c: - (clutter_actor_set_rotation_internal): Inline function for setting - the rotation using fixed point for the angle and units for the - center of rotation. - - (clutter_actor_set_property), - (clutter_actor_set_rotationx): Use the internal setter to avoid - loss of precision and too many conversions to and from units. - -2008-04-23 Emmanuele Bassi - - Bug 891 - assertion failed when test-behave exits - - * clutter/clutter-behaviour.c: - (remove_actor_on_destroy), - (clutter_behaviour_apply), - (clutter_behaviour_remove): Remove the actor if it gets - destroyed before the behaviour. - -2008-04-18 Emmanuele Bassi - - Bug #884 - Add clutter_alpha_set_closure - - * clutter/clutter-alpha.[ch]: Add clutter_alpha_set_closure(), - a GClosure variant of clutter_alpha_set_func(), and reimplement - the latter as a special case of the former. (#884, Xan López) - -2008-04-18 Neil Roberts - - * clutter/clutter-timeline.c (clutter_timeline_get_progressx): - Changed to use clutter_qdiv instead of CLUTTER_FIXED_DIV otherwise - it can't cope with timelines with more than 255 frames. - -2008-04-17 Emmanuele Bassi - - * clutter/clutter-frame-source.c: Small coding style fixes. - -2008-04-17 Neil Roberts - - Applied patch from bug #881 - - * clutter/clutter-frame-source.h: - * clutter/clutter-frame-source.c: - New files that contain a replacement for g_timeout that try to - cope with system delays. - - * clutter/Makefile.am: Added clutter-frame-source.{c,h} - - * clutter/clutter-timeline.c (timeout_add): Use a frame source - instead of a g_timeout. - - * clutter/clutter-main.c (clutter_threads_add_frame_source_full) - (clutter_threads_add_frame_source): New public functions to wrap a - frame source and grab the Clutter mutex. - - * clutter/clutter-timeout-pool.c: Now calculates the timeout - expiration times in the same way as a frame source does so that it - counts time in frame intervals instead of setting the next - expiration time as an offset from the current time. - -2008-04-17 Emmanuele Bassi - - * clutter/clutter-fixed.c: - (clutter_value_transform_fixed_int), - (clutter_value_transform_fixed_double), - (clutter_value_transform_fixed_float), - (clutter_fixed_get_type): Add GValue transformation functions - for ClutterFixed; copying a CLUTTER_TYPE_FIXED GValue into - a G_TYPE_FLOAT/G_TYPE_DOUBLE one will automatically transform - the fixed point representation into a floating point one. Also - add the G_TYPE_INT transformation function to do a plain - fixed->int copy. - - * clutter/clutter-units.c: - (clutter_value_transform_unit_int), - (clutter_unit_get_type): Add a unit->int transformation function. - -2008-04-17 Emmanuele Bassi - - * clutter/clutter-fixed.c (clutter_value_get_fixed): Fix typo - in the function name. - -2008-04-17 Emmanuele Bassi - - * clutter/clutter-units.c (clutter_value_get_unit): Fix typo - in the function name. - -2008-04-17 Emmanuele Bassi - - * HACKING: Amend coding style and tenets, as it is now possible - to install and use unit based properties in a safe way. - -2008-04-17 Emmanuele Bassi - - * clutter/clutter-units.h: - * clutter/clutter-fixed.h: Add boundaries for fixed point - and units values. - - * doc/reference/clutter-sections.txt: Update the documentation. - -2008-04-17 Emmanuele Bassi - - * autogen.sh: Try to continue even if we don't have gtk-doc - installed; this will obviously won't work if you don't pass - --disable-docs --disable-gtk-doc to autogen.sh as well. - -2008-04-17 Emmanuele Bassi - - * clutter/clutter-fixed.[ch]: Add a ClutterFixed fundamental - type, and wrappers for storing it into GValues; also add a - GParamSpec subclass for defining parameters holding - ClutterFixed values. This allows creating GObject properties - using fixed point values. - - * doc/reference/clutter-sections.txt: Document the newly - added API. - -2008-04-17 Emmanuele Bassi - - * clutter/Makefile.am: Add clutter-units.c - - * clutter/clutter-units.[ch]: Add a ClutterUnit fundamental - type, and wrappers for storing it into GValues; also add a - GParamSpec subclass for defining parameters holding ClutterUnit - values. This allows creating GObject properties using units. - - * doc/reference/clutter-sections.txt: Document the newly - added API. - -2008-04-15 Matthew Allum - - Work related to #873; - - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-backend-glx.h: - * clutter/x11/clutter-x11-texture-pixmap.c: - * clutter/x11/clutter-x11-texture-pixmap.h: - General cleanup of texture pixmap code, adding; - - Pixmap dimentions and depth now auto probed, read only props. - - More X safety traps - - Add support for optionally tracking damage and automatically - updating texture. - - * clutter/glx/clutter-glx-texture-pixmap.c: - * clutter/glx/clutter-glx-texture-pixmap.h: - General cleanup and some safety additions. Needs more work so - 'proper' subclass - dependent on new COGL. - - * clutter/x11/clutter-backend-x11.c: (clutter_x11_remove_filter): - Invert g_return_if check. - - * configure.ac: - Pull in XComposite and XDamage (at least for now) - - * tests/Makefile.am: - * tests/test-pixmap.c: - Add a modified test from Johan for above. - -2008-04-15 Neil Roberts - - Added support for foreign windows to the Win32 backend. - - * clutter/win32/clutter-stage-win32.c - (clutter_stage_win32_request_coords): Don't resize foreign - windows. - (clutter_stage_win32_unrealize): Don't destroy foreign windows. - (clutter_stage_win32_init): Added initialiser for is_foreign_win. - (clutter_win32_get_stage_from_window): Resort to looking in the - stage list if the window isn't the right window class so that it - can still find stages with foreign windows. - (clutter_win32_set_stage_foreign): New public function to set a - foreign window for a stage. - - * clutter/win32/clutter-event-win32.c - (clutter_win32_disable_event_retrieval): New public function to - disable event retrieval. - (message_translate): Don't handle WM_SIZE or WM_MOVE for foreign - windows. - - * clutter/win32/clutter-backend-win32.h (struct - _ClutterBackendWin32): Added a flag to disable event retrieval - - * clutter/win32/clutter-backend-win32.c - (clutter_backend_win32_ensure_context): Update debug note to - include whether the stage is foreign or not. - -2008-04-15 Øyvind Kolås - - * clutter/clutter-actor.c: (clutter_actor_set_shader_param): queue a - redraw when a shader_param is set. Normalized some gtk-doc syntax in - some of the api documentation. - -2008-04-15 Øyvind Kolås - - * clutter/clutter-group.c: fixed typo in docs. - -2008-04-14 Matthew Allum - - * clutter/eglx/clutter-stage-egl.c: - Actually set wm protocols on eglx stage windows. Fixes issues with - cloising stages and cleanup. - -2008-04-14 Matthew Allum - - * clutter/cogl/gles/cogl.c: (cogl_color): - Disable use of color4ub, issues with latest MBX SDL (#857) - - * clutter/eglx/clutter-backend-egl.c: - * clutter/eglx/clutter-stage-egl.c: - * configure.ac: - Fixup for the eglx backend to work with new backend/multistage code. - Some issues remain in destroying stages. - -2008-04-14 Neil Roberts - - Bug #853 - - * clutter/clutter-timeline.c (clutter_timeline_get_progressx): Fix - arithmetic for calculating the reverse progress when the timeline - is backward. (Should subtract from one instead of taking the - reciprocal). - -2008-04-13 Neil Roberts - - Upgraded the Win32 backend to work with the multi-stage - subclassing code. - - * clutter/win32/clutter-stage-win32.h: - * clutter/win32/clutter-stage-win32.c: Now inherits from - ClutterGroup and implements ClutterStageWindow instead of - inheriting directly from ClutterStage. - - * clutter/win32/clutter-event-win32.c (message_translate): Now - takes an extra parameter to return whether DefWindowProc should be - called. This is needed to prevent the default WM_CLOSE handler - from destroying the window. - - * clutter/win32/clutter-backend-win32.c - (clutter_backend_win32_dispose): Destroy all of the stages using - g_slist_foreach as per bug #871. Now also destroys the GL context. - (clutter_backend_win32_get_features): Added assertions to ensure - there is a valid GL context. - (clutter_backend_win32_ensure_context): Accepts NULL stage. Gets - implementation pointer from the stage. - -2008-04-11 Emmanuele Bassi - - * clutter/clutter-container.c: - (clutter_container_get_type): Relax the precondition on the - implementations of ClutterContainer from ClutterActor to - GObject. - -2008-04-11 Emmanuele Bassi - - * README: Add a note about the Shader API changes. - - * clutter/clutter-deprecated.h: Add deprecation symbols. - - * clutter/clutter-shader.[ch]: Rename the :bound read-only - property to :compiled. Also rename clutter_shader_bind() - and clutter_shader_is_bound() to clutter_shader_compil() and - clutter_shader_is_compiled(), respectively. - - * clutter/glx/clutter-stage-glx.c: - (clutter_stage_glx_unrealize): Update after - clutter_shader_release_all() rename. - - * tests/test-shader.c (button_release_cb), (main): Update. - -2008-04-10 Emmanuele Bassi - - * clutter/eglx/clutter-backend-egl.c: - (clutter_backend_egl_ensure_context): Sync up with the GLX - backend. - - (clutter_backend_egl_create_stage): Dumb compilation fix. - - * clutter/glx/clutter-backend-glx.c: - (clutter_backend_glx_create_stage): Unref the stage if we are - erroring out. - -2008-04-10 Emmanuele Bassi - - * clutter/eglx/clutter-stage-egl.c: - (clutter_stage_egl_realize): Sync up with the GLX backend. - -2008-04-09 Emmanuele Bassi - - * clutter/Makefile.am: Update the regular expression to match - all the namespaces we actually use. Thanks to Neil Roberts for - spotting this. A make distclean is needed. - - * clutter/cogl/gl/Makefile.am: - * clutter/cogl/gles/Makefile.am: - * clutter/json/Makefile.am: - * clutter/pango/Makefile.am: Revert previous commit. - -2008-04-09 Emmanuele Bassi - - * clutter/cogl/Makefile.am: - * clutter/cogl/gl/Makefile.am: - * clutter/cogl/gles/Makefile.am: - * clutter/json/Makefile.am: - * clutter/pango/Makefile.am: Fix the visibility of all the - symbols, for the main library and the statically linked ones. - -2008-04-09 Emmanuele Bassi - - * autogen.sh: Clean up a bit - - * clutter/clutter-fixed.[ch]: - (clutter_double_to_fixed), - (clutter_double_to_int), - (clutter_double_to_uint): Make these functions public, as they - are expanded by their respective macros. This fixes the errors - from the linker trying to resolve their name. - -2008-04-09 Neil Roberts - - Applied patch from bug #871 - - * clutter/x11/clutter-backend-x11.c (clutter_backend_x11_dispose): - Call g_slist_foreach instead of iterating over the stage_manager - list manually when deleting stages. Otherwise the 'next' pointer - of the list node can get corrupted when the actor removes itself - from the list. - - * clutter/clutter-stage.c (clutter_stage_dispose): Call - clutter_actor_unrealize in the dispose handler. This fixes - problems where the dispose handler for the ClutterStageWrapper - can't deselect the GL context until the stage is unrealized. - -2008-04-04 Emmanuele Bassi - - * clutter/clutter-backend.c: Add more debug messages - - * clutter/clutter-stage.h: - * clutter/clutter-stage.c: - (clutter_stage_is_default): Add a function to check if the - stage is the default one. - - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-stage-glx.c: - * clutter/x11/clutter-stage-x11.c: Keep the stage wrapper - and implementation flags in sync, to ensure that the GL - context is always set. - -2008-04-04 Neil Roberts - - * README: Fixed typo - -2008-04-04 Matthew Allum - - * README: - Add a note on new show-on-set-parent prop and stage subclassing. - -2008-04-04 Emmanuele Bassi - - Bug #864 - Allow instantiating and subclassing of ClutterStage - - * clutter/Makefile.am: Add clutter-stage-window.[ch] - - * clutter/clutter-stage-manager.c: - (_clutter_stage_manager_remove_stage): Do not warn if removing - a stage we don't manage, as we might be invoked multiple times - during a ClutterState dispose sequence. - - * clutter/clutter-actor.c: - * clutter/clutter-backend.[ch]: - * clutter/clutter-main.c: - * clutter/clutter-private.h: - * clutter/clutter-stage.[ch]: Make ClutterStage a proxy actor, - with a private actor implementing the ClutterStageWindow - interface for handling the per-backend realization, painting - and unrealization, plus all the windowing system abstraction. - - * clutter/x11/clutter-event-x11.c: - * clutter/x11/clutter-stage-x11.[ch]: Port the X11 backend - to the new backend and stage API and semantics. - - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-stage-glx.c: Port the GLX backend to - the new backend and stage API and semantics. - - * clutter/eglx/clutter-backend-egl.[ch]: - * clutter/eglx/clutter-stage-egl.[ch]: Port the EGLX backend - to the new backend and stage API and semantics (untested). - - * tests/test-multistage.c (on_button_press): Rename - clutter_stage_create_new() to clutter_stage_new(). - -2008-04-04 Neil Roberts - - Applied patch from bug #810. - - * clutter/x11/clutter-event-x11.c (event_translate): Set a flag - when resizing the stage from a ConfigureNotify event. - - * clutter/x11/clutter-stage-x11.c - (clutter_stage_x11_request_coords): Don't try to resize the window - again if the flag is set. - (clutter_stage_x11_init): Added initialiser for the flag. - - * clutter/x11/clutter-stage-x11.h (struct _ClutterStageX11): Added - the flag. - -2008-04-04 Matthew Allum - - * clutter/clutter-actor.c: - Remove uneeded stage private member. - Add show-on-set-parent prop and make so by default Actors are - now automatically shown when reparented (#791) - - * clutter/eglx/clutter-backend-egl.c: - * clutter/cogl/gles/cogl.c: - A couple of minor comments. - - * clutter/eglnative/Makefile.am: - Add missing clutter-egl.h header (back port from trunk) - - * tests/test-actors.c: - Modify to take advantage of new show-on-set-parent functionality. - -2008-04-03 Emmanuele Bassi - - * clutter/Makefile.am: Only export symbols matching "^clutter.*", - to avoid exposing the library-private symbols starting with - an underscore. - -2008-04-03 Emmanuele Bassi - - * clutter/clutter-alpha.c: ClutterAlpha is an InitiallyUnowned - subclass. This should fix a lot of leakage. (#860, Neil Roberts) - -2008-04-03 Emmanuele Bassi - - * clutter/glx/clutter-backend-glx.c: - (clutter_backend_glx_get_features): Assert if we don't have a - GL context here or if it's not matched to a drawable. Asserting - might seem too drastic, but if we don't have a valid GL context - here then Clutter will segfault anyway, and I'll take an assert() - over a hard to read, deep in GLX guts backtrace any day (and - twice on a monday). - - * clutter/x11/clutter-backend-x11.c: - (clutter_backend_x11_get_features): No need for a variable here. - -2008-04-01 Matthew Allum - - * clutter/clutter-backend.c: - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-stage-glx.c: - Allow NULL to be passed to _clutter_backend_ensure_context - which essentially clears GL context. This is hooked into stage - unrealisation. Isn't yet quite bulletproof. - Fixes issues with gtk-embed crasher (thanks to Neil). - -2008-04-1 Robert Bragg - - * clutter/glx/clutter-glx-texture-pixmap.c: - In clutter_glx_texture_pixmap_dispose; trap X errors around - glXDestroyGLXPixmap so we can't die due to BadDrawable errors. - -2008-03-31 Matthew Allum - - * README: - Add notes on new multistage feature. - - * clutter/clutter-stage-manager.c: - Dont ref contained stages. - - * clutter/clutter-stage.c: - Automatically remove stage from stage manager on finalisation. - Cleans up warnings when a stage is destroyed. - - * clutter/clutter-backend.h: - * clutter/glx/clutter-backend-glx.c: - Minor formatting cleanups. - - * clutter/glx/clutter-stage-glx.c: - * configure.ac: - * clutter/clutter-version.h.in: - Add a general CLUTTER_STAGE_TYPE define, should be useful for - evntual stage subclassing and creating with g_object_new() - -2008-03-30 Neil Roberts - - * clutter/win32/clutter-backend-win32.c - (clutter_backend_win32_init): Added a call to - timeBeginPeriod. Without this the frame rates are terrible because - the glib timeouts are not accurate enough. However this requires - Glib >= 2.16.0 to take any effect because of a change in the way - g_poll is implemented. See revision 6597 of glib. - (clutter_backend_win32_finalize): Added a call to timeEndPeriod. - - * configure.ac: Added -lwinmm to the library dependencies for the - Win32 backend. - -2008-03-30 Neil Roberts - - * clutter/win32/clutter-win32.h: - * clutter/win32/clutter-stage-win32.h: - * clutter/win32/clutter-stage-win32.c: - * clutter/win32/clutter-event-win32.c: - * clutter/win32/clutter-backend-win32.h: - * clutter/win32/clutter-backend-win32.c: - Upgraded for multi-stage support. - - * clutter/win32/clutter-stage-win32.c - (clutter_stage_win32_request_coords): Fixed so that it doesn't set - the position or size if it hasn't changed. This was causing - problems when the window was resized using the top left corner. In - that case the window receives resize and move messages separately - which caused the window to flash at a different size or position - while one message was handled before the other. - (clutter_stage_win32_realize): Added PFD_GENERIC_ACCELERATED to - the list of pixel format flags to force it to use hardware - acceleration. - -2008-03-28 Matthew Allum - - * clutter/Makefile.am: - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * clutter/clutter-backend.c: - * clutter/clutter-backend.h: - * clutter/clutter-debug.h: - * clutter/clutter-event.c: - * clutter/clutter-event.h: - * clutter/clutter-feature.h: - * clutter/clutter-group.h: - * clutter/clutter-main.c: - * clutter/clutter-main.h: - * clutter/clutter-private.h: - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - * clutter/clutter-stage-manager.c - * clutter/clutter-stage-manager.h - * clutter/clutter-types.h: - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-backend-glx.h: - * clutter/glx/clutter-stage-glx.c: - * clutter/glx/clutter-stage-glx.h: - * clutter/x11/clutter-backend-x11.c: - * clutter/x11/clutter-backend-x11.h: - * clutter/x11/clutter-event-x11.c: - * clutter/x11/clutter-stage-x11.c: - * clutter/x11/clutter-x11.h: - * tests/Makefile.am: - * tests/test-multistage.c: - Initial commit of multi stage support (mostly a merge from the - clutter-multistage branch). - Note, this commit will break all backends except glx. - -2008-03-26 Neil Roberts - - * clutter/win32/clutter-win32.h: Added gtk-doc documentation for - the Win32 backend section. - - * clutter/win32/clutter-stage-win32.c - (clutter_win32_get_stage_window): Fixed punctuation in the - documentation. - - * README: Added notes about the Win32 backend. - -2008-03-26 Neil Roberts - - * clutter/win32/clutter-event-win32.c (clutter_event_check): - Removed the pointless parameter in the call to check_msg_pending. - (check_msg_pending): Fixed to use PeekMessageW instead of - PeekMessage. - -2008-03-25 Neil Roberts - - Added a native Win32 WGL backend. - - * configure.ac: Added the 'win32' flavour. - - * clutter/cogl/gl/cogl.c (cogl_get_proc_address): Added an ifdef - to use wglGetProcAddress with the Win32 backend. - - * clutter/Makefile.am (DIST_SUBDIRS): Added the win32 directory. - - * clutter/win32/clutter-win32.pc.in: - * clutter/win32/clutter-win32.h: - * clutter/win32/clutter-stage-win32.h: - * clutter/win32/clutter-stage-win32.c: - * clutter/win32/clutter-event-win32.c: - * clutter/win32/clutter-backend-win32.h: - * clutter/win32/Makefile.am: - * clutter/win32/clutter-backend-win32.c: New files. - -2008-03-19 Emmanuele Bassi - - * clutter/clutter-model.[ch]: Add a ::copy() virtual function - for copying iterators. - - * clutter/clutter-list-model.c: - (clutter_list_model_iter_copy), - (clutter_list_model_iter_class_init): Implement the ::copy() - function inside the ListModel iterator subclass. - -2008-03-19 Emmanuele Bassi - - * clutter/clutter-group.c: - * clutter/clutter-texture.c: Use CLUTTER_ACTOR_IS_VISIBLE() - and not CLUTTER_ACTOR_IS_MAPPED(). - -2008-03-19 Emmanuele Bassi - - * clutter/clutter-score.[ch]: Small clean ups and refactoring. - Use gulong instead of guint, so we have a bigger id space for - the timelines inside a Score. - -2008-03-19 Chris Lord - - * clutter/clutter-actor.c: - (_clutter_actor_apply_modelview_transform), (clutter_actor_paint): - Apply clip inside paint function instead of transform function - -2008-03-18 Emmanuele Bassi - - * clutter/clutter-score.c: Update documentation. - -2008-03-18 Emmanuele Bassi - - * clutter/clutter-score.[ch]: Remove all the API changes, and - just add a clutter_score_append_at_marker(); the implementation - remains the same, but the marker must be explicitly created by - the developer. The ids are no longer used to create implicit - markers, so they can return to be unsigned integers. (#450) - - * clutter/clutter-timeline.[ch]: - (clutter_timeline_has_marker): Add a function to query a timeline - for a marker being set. - - * tests/test-score.c (main): Update with the API changes. - - * clutter.symbols: Update exported symbols. - -2008-03-18 Emmanuele Bassi - - * clutter/clutter-texture.c: Small clean ups in the coding style. - -2008-03-18 Emmanuele Bassi - - * clutter.symbols: Add new symbols - - * clutter/clutter-score.[ch]: Use the newly added marker API - on the timelines to implement attaching timelines at specific - points, using either milliseconds or frames. - - * tests/test-score.c (main): Test the new API. - -2008-03-18 Emmanuele Bassi - - * clutter/clutter-marshal.list: Add signature for the - ::marker-reached signal marshaller. - - * clutter/clutter-timeline.[ch]: Add timeline marker API; - using markers it is possible to add a unique identifier to - a particular frame of the timeline, and receive a signal - notification when reaching that particular marker while - playing the timeline. (#641) - - * tests/test-timeline.c: Update the test case to check for - the marker-reached signal emission. - - * clutter.symbols: Add new symbols. - -2008-03-10 Øyvind Kolås - - * tests/test-shader.c: improved readability of fragment shader - examples by factoring out common bits into FRAGMENT_SHADER_BEGIN and - FRAGMENT_SHADER_END macros. - -2008-03-09 Matthew Allum - - * clutter/clutter-id-pool.c: (clutter_id_pool_free): - Use g_slice_free not g_free. - * clutter/clutter-main.c: (_clutter_do_pick): - Dont 'over read' the framebuffer when picking (#839, Neil Roberts) - -2008-03-07 Øyvind Kolås - - Refactored the integer id->ClutterActor mapping code to be a self - contained data structure. - - * clutter/clutter-id-pool.[ch]: new files. - * clutter/Makefile.am: added clutter-id-pool.[ch] - * clutter/clutter-private.h: use a ClutterIDPool instead of GArray and - GSList to keep track of the reusable ids. - * clutter/clutter-actor.c: moved id pool logic away. - * clutter/clutter-main.c: simplified id pool creation/finalization. - -2008-03-07 Robert Bragg - - * clutter/clutter-timeline.c: - Timeline changes to fix the issues identified in bugzilla #439 - - Notably, this includes some tweaks to timeline semantics. - So e.g. for a - - 10 frame timeline here are some points about the new timeline code: - - - When you create a timeline it starts with current_frame_num == 0 - - - After starting a timeline, the first timeout is for - current_frame_num == 1 (Notably it isn't 0 since there is a delay - before the first timeout signals so re-asserting the starting point - would give a longer than average first frame.) - - - For a non looping timeline the last timeout would be for - current_frame_num == 10 - - - For a looping timeline the timeout for current_frame_num == - 10 would be followed by a timeout for current_frame_num == 1 - and frame 0 is considered == frame 10. - - - Asking for a timeline of N frames might better be described - as asking for a timeline of _length_ N. - - Warning: Although I tried to test things, I guess it's quite - likely that this breaks somthing depending on a specific quirk - of the previous timeline code. - -2008-03-06 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_set_anchor_point_from_gravity): Fix a stupid - conversion from pixels to units that should I not have made. - -2008-03-06 Emmanuele Bassi - - * README: Update the release notes. - -2008-03-06 Gwenole Beauchesne - - Signed off by: Emmanuele Bassi - - * clutter/clutter-group.c (clutter_group_real_lower): Fix to - actually lower the actor under the 'above' actor. (#822) - -2008-03-06 Emmanuele Bassi - - * clutter/clutter-entry.h: - * clutter/clutter-entry.c: - (clutter_entry_handle_key_event_internal), - (clutter_entry_key_press), (clutter_entry_class_init), - (clutter_entry_handle_key_event): Provide a default class handler - for the key-press-event, so that giving key focus to an entry will - automatically make it work. This deprecates the - clutter_entry_handle_key_event() function. (#824) - - * tests/test-entry.c (main): Remove the handle_key_event() - machinery, and just give focus to the entry. - -2008-03-06 Chris Lord - - * clutter/clutter-model.c: (clutter_model_set_sorting_column): - Don't disable sorting on column 0 - -2008-03-06 Emmanuele Bassi - - Add support for the anchor point inside ClutterScript (#834, - David Stanczak) - - * clutter/clutter-actor.c: - (clutter_actor_set_property), - (clutter_actor_get_property), - (clutter_actor_class_init): Add the :anchor-x and :anchor-y - properties to the ClutterActor class. - - (clutter_actor_set_anchor_point), - (clutter_actor_set_anchor_pointu), - (clutter_actor_set_anchor_point_from_gravity): Reimplement - the pixel based and gravity based API using the units based - one. Emit the ::notify signal for the :anchor-x and :anchor-y - properties. - - (parse_units), - (clutter_actor_parse_custom_node): Parse the :anchor-x and - :anchor-y properties using the custom units format (mm, px, - pt and %). - - * tests/test-script.json: Test the newly added properties. - -2008-03-05 Emmanuele Bassi - - * configure.ac: Add "osx" the the AC_HELP_STRING of the flavour - selection. (#831, Peter Enzerink) - -2008-03-04 Emmanuele Bassi - - * clutter/clutter-main.c (clutter_do_event): Do not throttle the - motion events if the per-actor delivery has been disabled. - -2008-03-04 Øyvind Kolås - - * clutter/pango/pangoclutter-render.c: (draw_glyph): use g_slice_new0 - instead of g_slice_new when allocating the glyph_info, avoiding a - branch based on uninitialized memory. - -2008-03-03 Emmanuele Bassi - - * Makefile.am: Do not recurse into doc if we did not explicitly - enabled the documentation build; we just recurse into doc if we - are doing a dist or a distcheck. - -2008-02-29 Øyvind Kolås - - Reuse the numeric id's used for picking actors to avoid the potential - of overflowing the id numbers when continusly creating and destroying - actors on long running applications for 16bpp. - - * clutter/clutter-private.h: replaced hashtable with GArray and a - GSList for available slots in the array. - * clutter/clutter-actor.c: (create_actor_id): function to create an - actor->id mapping, (release_actor_id): function to mark an existing id - as available for reuse. - * clutter/clutter-main.c: (clutter_context_free): added utility - function for cleaning up the context, - (clutter_get_actor_by_gid): use the GArray for looking up actors. - -2008-02-26 Emmanuele Bassi - - * clutter/clutter-alpha.c: - (clutter_exp_inc_func), (clutter_exp_dec_func): Clamp the value - of the alpha function between [0, MAX_ALPHA]. (#800) - -2008-02-25 Emmanuele Bassi - - * clutter/clutter-main.c (emit_event): Fix the last commit - which inverted a condition. - -2008-02-25 Emmanuele Bassi - - * clutter/clutter-actor.c: Remove the usage of g_return_if_fail() - from static functions: either assert or use g_warning() to check - internal state, as g_return_if_fail() can be compiled out. - - * clutter/clutter-main.c: Ditto as above. - -2008-02-25 Tomas Frydrych - - * clutter/clutter-texture.c: - (texture_update_data): - Set alignment based on actual data rowstride, not the texture - width. - -2008-02-21 Tomas Frydrych - - * clutter/x11/clutter-backend-x11.h: - * clutter/x11/clutter-event-x11.c: - * clutter/x11/clutter-x11.h: - (clutter_x11_handle_event): - (clutter_x11_disable_event_retrieval): - Functions to allow to hook into external XEvent retrieval (for - example when using clutter with gtk); NB: this API is tentative. - -2008-02-21 Emmanuele Bassi - - * clutter/x11/clutter-event-x11.c (event_translate): Ignore - PropertyNotify events if they don't match our window. - - * clutter/x11/clutter-stage-x11.c: - (clutter_stage_x11_request_coords): Chain up to the parent's - request coords. - -2008-02-21 Emmanuele Bassi - - * clutter/x11/clutter-event-x11.c (event_translate): Ignore - ConfigureNotify events if we are painting on a foreign window. - - * clutter/x11/clutter-stage-x11.c: - (clutter_stage_x11_request_coords): Reliquish control of the - window size, if we are painting on a foreign window. This fixes - the GtkClutterEmbed widget. - -2008-02-20 Emmanuele Bassi - - * clutter/clutter-timeline.c (clutter_timeline_set_delay): Relax - the condition to allow 0 msecs of delay (meaning: no delay). - -2008-02-20 Tomas Frydrych - - * clutter/Makefile.am: - Added libclutter_ ... _la_DEPENDENCIES to fix dependency tracking. - -2008-02-20 Tomas Frydrych - - * clutter/x11/clutter-x11.h: - * clutter/x11/clutter-backend-x11.c: - (clutter_x11_set_display): - Function to set X display connection prior to calling - clutter_init(); stripped loads of trailing space. - -2008-02-20 Tomas Frydrych - - * clutter/clutter-marshal.list: - * clutter/glx/Makefile.am: - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-backend-glx.h: - * clutter/glx/clutter-glx.h: - * clutter/x11/Makefile.am: - ClutterX11TexturePixmap and ClutterGLXTexturePixmap actors (#713; - patch by Johan Bilien). - -2008-02-20 Emmanuele Bassi - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - (clutter_actor_get_abs_opacity): Add function that does what - get_opacity() does now... - - (clutter_actor_get_opacity): ... and make get_opacity() do what - it's supposed to be doing. The original get_opacity() returned - a composited value, and there's no way to actually extract the - real opacity value set with set_opacity(). - - * clutter/clutter-clone-texture.c: - * clutter/clutter-rectangle.c: - * clutter/clutter-texture.c: Update to use get_abs_opacity(). - - * clutter/clutter-entry.c: - * clutter/clutter-label.c: Ditto. Also, never change the stored - alpha value. (#804) - - * tests/Makefile.am: - * tests/test-opacity.c: Test suite for the get_opacity() and - get_abs_opacity() API, and correct opacity handling. - - * README: Add note about the change in get_opacity(). - -2008-02-19 Chris Lord - - * clutter/clutter-model.c: (clutter_model_resort): - Don't return when there's no sort function set, leave that to the - model sub-class - -2008-02-18 Emmanuele Bassi - - * configure.ac: - * README: Post stable release bump to 0.7.1 - -2008-02-18 Emmanuele Bassi - - * README: - * NEWS: Release 0.6.0 - -2008-02-18 Emmanuele Bassi - - * clutter/clutter-list-model.c: - (clutter_list_model_iter_set_value): Fix a typo in the conversion - code. - -2008-02-18 Chris Lord - - * README: - Fix spelling mistake and a typo - -2008-02-18 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_get_box_from_vertices): Avoid a masking warning - caused by math.h utter braindamage. - -2008-02-18 Emmanuele Bassi - - * clutter/clutter-actor.c: Document the fact that ancestor can - be NULL in the relative transformation API, and what are the - effects. - -2008-02-15 Matthew Allum - - * clutter/pango/pangoclutter-render.c: (draw_glyph): - More safety checks (#796, Tero Saarni) - -2008-02-15 Chris Lord - - * clutter/clutter-entry.c: - * clutter/clutter-group.c: - * clutter/clutter-label.c: - * clutter/clutter-rectangle.c: - * clutter/clutter-texture.c: - More documentation fixes - -2008-02-15 Chris Lord - - * clutter/clutter-entry.c: (clutter_entry_class_init): - More documentation fixes - -2008-02-15 Chris Lord - - * clutter/clutter-label.c: (clutter_label_class_init): - More documentation fixes - -2008-02-15 Chris Lord - - * clutter/clutter-clone-texture.c: - * clutter/clutter-texture.c: (clutter_texture_class_init): - More documentation fixes - -2008-02-15 Chris Lord - - * clutter/clutter-actor.c: - * clutter/clutter-container.c: - * clutter/clutter-media.c: - * clutter/clutter-rectangle.c: - * clutter/clutter-stage.c: (clutter_stage_class_init): - * clutter/clutter-stage.h: - * clutter/clutter-texture.c: - * doc/reference/clutter-docs.sgml: - Fix more documentation - -2008-02-15 Emmanuele Bassi - - * clutter/clutter-actor.[ch]: - * clutter/clutter-types.h: - * doc/reference/clutter-docs.sgml: Fix a lot of documentation. - -2008-02-15 Matthew Allum - - * clutter/cogl/gles/cogl.c: (cogl_paint_init): - Remove depth test getting turned on by default (unlike GL backend) - -2008-02-15 Tomas Frydrych - - * configure.ac: - * clutter/clutter-version.h.in: - * build/msvc_2k5/clutter-version.h: - Removed unused --without-fpu configure option and CLUTTER_NO_FPU - macro - -2008-02-15 Tomas Frydrych - - * build/mingw/README: - * build/mingw/mingw-cross-compile.sh: - Script that automates cross compilation with mingw by Neil Roberts - - -2008-02-15 Emmanuele Bassi - - * clutter/clutter-actor.[ch]: Rename - clutter_actor_get_box_from_vertices() to - clutter_actor_box_get_from_vertices(). - - * clutter/clutter-group.c (clutter_group_query_coords): Fix the - query_coords() implementation. - -2008-02-15 Tomas Frydrych - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - (clutter_group_query_coords): - Added function to translate vertex array to a bounding box. - - (clutter_actor_is_scaled): - (clutter_actor_is_rotated): - Fixed documentation. - -2008-02-15 Tomas Frydrych - - * clutter/clutter-group.c: (clutter_group_query_coords): - Disabled new code taking into account actor scale and rotation. - -2008-02-14 Tomas Frydrych - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - (clutter_actor_is_scaled): - (clutter_actor_is_rotated): - Convenience functions to test whether actor is scaled or rotated. - - (clutter_actor_apply_relative_transform_to_point): - Removed unused variable. - - * clutter/clutter-group.c: - (clutter_group_query_coords): - Use clutter_actor_get_relative_vertices() to calculate bounding - boxes of children that are scaled or rotated. - -2008-02-14 Tomas Frydrych - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - (clutter_actor_get_relative_vertices): - (clutter_actor_apply_relative_transform_to_point): - Functions to calculate actor vertices in the plane of a given - ancestor. - -2008-02-12 Chris Lord - - * clutter/clutter-texture.c: (texture_get_tile_pixbuf), - (clutter_texture_get_pixbuf): - Fix copying textures to pixbufs for tiled textures and correct #ifndef - typo - - * clutter/clutter-util.c: - Amend documentation - -2008-02-12 Matthew Allum - - * clutter/clutter-texture.c: (texture_get_tile_pixbuf): - ifdef out 'leaked' GL only API call. - -2008-02-12 Tomas Frydrych - - * clutter/clutter-texture.c (texture_update_data): - Fixed incorrect calculation of offset into texture data (needs to - use width of the texture, not of the updated area). - -2008-02-12 Tomas Frydrych - - * clutter/clutter-texture.c (texture_update_data): - Fixed incorrect aligment of texture data. - -2008-02-12 Tomas Frydrych - - * clutter/x11/clutter-event-x11.c (event_translate): - Ignore events not directed at the stage window once they have been - passed to the filter functions. - -2008-02-11 Matthew Allum - - * clutter/clutter-actor.c: - Minor documentation tweak to class description. - - * clutter/clutter-behaviour-scale.c: - 'Force' start + end vals of scale behaviour - (#779, Havoc Pennington) - -2008-02-11 Emmanuele Bassi - - * README: - * NEWS: Release 0.5.6 - - * configure.ac: Post release bump to 0.5.7. - - * clutter/clutter-behaviour-scale.c: - * tests/test-fbo.c: Fix compilation warnings. - -2008-02-11 Tomas Frydrych - - * clutter/clutter-actor.c (clutter_actor_transform_stage_point): - Moved part of the calculation to floating point to avoid overflow - of ClutterFixed range for large actors (bug 613). - -2008-02-10 Matthew Allum - - * clutter/osx/clutter-stage-osx.c - Fix up a couple of typos breaking build. - -2008-02-08 Emmanuele Bassi - - * clutter/clutter-actor.c: Add actor box diagram and notes. - -2008-02-08 Emmanuele Bassi - - * clutter/clutter-behaviour-path.c: Move the nice graph and - description from the Path behaviour... - - * clutter/clutter-behaviour.c: ... to the main Behaviour class. - -2008-02-08 Emmanuele Bassi - - * clutter/clutter-behaviour-path.c: Add a paragraph describing - the effects of different alpha functions on the path behaviour. - -2008-02-08 Emmanuele Bassi - - * clutter/clutter-actor.c: Reference the newly added event-flow.png - - * clutter/clutter-alpha.c: Ditto, with alpha-func.png - - * clutter/clutter-texture.c: Fix the XML. - -2008-02-08 Emmanuele Bassi - - * clutter/clutter-behaviour-path.c: Reference the newly - added image showing the effects of different alpha functions - on the same path behaviour. - - * configure.ac: Find out the prefix of some of the libraries - we depend upon, so that gtk-doc can fix the references for us. - -2008-02-08 Matthew Allum - - * clutter/clutter-texture.c: - Tidy up offscreen code, adding into realize/unrealize. - Add more safety code. - Improve documentation. - -2008-02-08 Emmanuele Bassi - - * clutter/clutter-script.c: - (resolve_alpha_func): Use a whitelist containing the alpha function - provided by Clutter, as a fallback in case g_module_open() does not - work. - - (clutter_script_parse_alpha): Add an explicit warning in case we - cannot find the alpha function used inside a UI definition. - -2008-02-07 Tomas Frydrych - - * clutter/clutter-group.c (clutter_group_query_coords): - Take into account the anchor point when calculating the box size. - -2008-02-07 Emmanuele Bassi - - * clutter/clutter-actor.c: Add a note on clutter_actor_set_size() - reguarding groups. - - * clutter/clutter-group.c: Clarify group sizing. - -2008-02-07 Øyvind Kolås - - * tests/test-shader.c: (button_release_cb): added simplified - implementation of a box-blur shader from Gwenole Beauchesne that - should work on GLSL implementing low-end IGPs not implementing - dynamic branching. The original code used crashed some of these - due to bugs in drivers or similar. Resolves bug #710. - -2008-02-07 Tomas Frydrych - - * tests/test-actors.c: - Reverted previous change. - -2008-02-07 Tomas Frydrych - - * clutter/clutter-actor.c: - (clutter_actor_set_property): - Fixed handling of PROP_ROTATE_CENTER_Y, ROTATE_CENTER_Z - - * tests/test-actors.c: - Adjusted to use anchor point for both group and hands. - -2008-02-07 Neil J. Patel - - * tests/test-actors.c: (frame_cb), (main): - Changed set_anchor to move_anchor. - Changed clutter_actor_rotate x & y values to 0,0. - Switched on scaling because it seems to work without drifting. - -2008-02-07 Emmanuele Bassi - - * clutter/clutter-script-parser.c: - (clutter_script_get_type_from_symbol), - (clutter_script_get_type_from_class): Use BIND_LAZY flag - when looking at the symbols, so we don't load them all up. - - * clutter/clutter-script.c (resolve_alpha_func): Ditto as above. - -2008-02-07 Øyvind Kolås - - * clutter/clutter-actor.c: - (_clutter_actor_apply_modelview_transform): perform translation as - well as anchor point adjustment based on self not being stage (and - not by self not being an orphan). - -2008-02-07 Matthew Allum - - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - * clutter/eglnative/clutter-stage-egl.c: - * clutter/eglx/clutter-stage-egl.c: - * clutter/osx/clutter-stage-osx.c: - * clutter/sdl/clutter-stage-sdl.c: - * clutter/x11/clutter-stage-x11.c: - Add at least somne basic offscreen handling into all backends. - Remove unused clutter_stage_set_offscreen vfunc. (#549) - - * clutter/clutter-texture.c: - Minor API doc tweak, noting rowstride source in set_area - -2008-02-07 Emmanuele Bassi - - * clutter/clutter-score.c (traverse_children): Actually implement - clutter_score_list_timelines(). - - * tests/test-score.c (main): Test clutter_score_list_timelines(). - -2008-02-07 Matthew Allum - - * clutter/pango/pangoclutter-render.c: - Warn if requested glyph is too big for underlying texture cache. - (see #666) - -2008-02-07 Matthew Allum - - * clutter/clutter-texture.c: (texture_upload_data): - Remove random appearing 'priv->filter_quality =1' (#643) - -2008-02-06 Matthew Allum - - * clutter/clutter-texture.c: - Minor clean up from last commit. - - * tests/test-fbo.c: - Small tweak (rotate offscreen, rather than resize) - -2008-02-06 Matthew Allum - - * clutter/clutter-texture.c: - Initial attempt at handling resizing/tranformed source textures. - - * clutter/pango/pangoclutter-render.c: (draw_glyph): - Guards against freetype returning NULL bitmaps and - thus causing device by zeros on NVIDIA drivers. (see ml) - -2008-02-05 Matthew Allum - - * clutter/clutter-actor.c: (clutter_actor_get_vertices): - Make sure GL related Matrices are initialised. Fixes #756 - - * clutter/clutter-texture.c: - Fix up code from Norways answer to Jean-Michel Basquiat. - (warning on tile_get_pixbuf) - -2008-02-05 Øyvind Kolås - - * clutter/clutter-texture.c: removed spurious left over debug printf. - -2008-02-05 Øyvind Kolås - - * clutter/clutter-texture.c: applied modified patch from Gwenole - Beuchesne adressing bug #635. Adressing a buffer overflow in - clutter_texture_get_pixbuf() when tiling is forced. - -2008-02-04 Emmanuele Bassi - - * clutter/clutter-shader.c (clutter_shader_constructor): Keep the - constructor line under the 80 columns using a variable. - -2008-02-04 Emmanuele Bassi - - * clutter/clutter-actor.c: - * clutter/clutter-shader.c: Small documentation and style fixes - - * tests/test-scale.c: Constify the gravities array. - -2008-02-04 Chris Lord - - * clutter/clutter-actor.c: (clutter_actor_transform_stage_point): - Check that x_out and y_out != NULL before setting their contents - -2008-02-04 Øyvind Kolås - - * clutter/clutter-timeline.c: (clutter_timeline_rewind): updated - documentation to take direction into account. - -2008-02-04 Øyvind Kolås - - * tests/test-fbo.c: (make_shader): - * tests/test-shader.c: (main): multiply the resulting gl_FragColor - with gl_Color before being done to take opacity into account in the - GLSL fragments. - -2008-02-04 Øyvind Kolås - - * clutter/clutter-actor.[ch]: added clutter_actor_get_shader and - renamed clutter_actor_apply_shader to be clutter_actor_set_shader. - Reindented/aligned header. - * clutter/clutter-texture.c: (clutter_texture_paint): temporarily - disable the shader on top of the clutter context's shader stack while - rendering into the FBO. - * tests/test-fbo.c: (main): s/apply_shader/set_shader/ - * tests/test-shader.c: (button_release_cb), (main): - s/apply_shader/set_shader/ - -2008-02-03 Matthew Allum - - * clutter/clutter-actor.c: (clutter_actor_set_rotationx): - Add notify signal for set_rotate - - * clutter/clutter-texture.c: - Add basic cleanup code for fbo's - - * tests/test-fbo.c: (main): - Minor notes. - - * clutter/osx/clutter-stage-osx.c: (clutter_stage_osx_realize): - Turn on vblanking. - -2008-02-03 Matthew Allum - - * clutter/clutter-shader.c: - Minor formatting cleanups to fit in 80 cols. - - * clutter/clutter-texture.c: - More safety checks, clean ups in clutter_texture_new_from_actor() - - * clutter/cogl/gl/cogl.c: - Always clear the FBO initially when rendering - - * tests/test-fbo.c: - Overhall the test as to be more useful (and show current issues) - -2008-02-02 Matthew Allum - - * clutter/clutter-timeline.c: - Document frame number limits in new-frame signal. - - * clutter/x11/clutter-event-x11.c: - Remove uneeded error trap (#751) - -2008-02-01 Matthew Allum - - * clutter/cogl/cogl.h: - * clutter/cogl/gl/cogl.c: (cogl_paint_init), (cogl_enable): - * clutter/cogl/gles/cogl.c: (cogl_enable): - - Disable the depth test and buffer as has some strange side - effects, mainly on x/y axis rotation with multiple layers at - same depth (eg rotating text on a bg has very strange - effect). Seems no clean 100% effective way to fix without other - odd issues.. So for now move to application to handle and add - cogl_enable_depth_test() as for custom actors (i.e groups) to - enable if need be. - - -2008-02-01 Matthew Allum - - * clutter/clutter-texture.c: (clutter_texture_new_from_actor): - Fix typo breaking FBO rendering on anything other than a cloned - texture. - -2008-02-01 Matthew Allum - - * clutter/clutter-feature.h: - * clutter/clutter-texture.c: - * clutter/clutter-texture.h: - * clutter/cogl/cogl.h: - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/cogl.c: - * tests/Makefile.am: - * tests/test.fbo.c: - Add initial support for FBO's in Clutter (OpenGL only so far). - See new clutter_texture_new_from_actor() - Initial implementation, needs work. - - * clutter/x11/clutter-stage-x11.c: - (clutter_stage_x11_set_cursor_visible): - Fall back to again not relying on xfixes to hide cursor. *sigh* - - * clutter/clutter-deprecated.h: - Add clutter_group_find_child_by_id - -2008-02-01 Øyvind Kolås - - * clutter/cogl/gles/cogl.c: (cogl_rectangle_internal): increase size - of GLfixed[] array to make contents fit. - -2008-02-01 Emmanuele Bassi - - * clutter/clutter-actor.h: Clean up a bit the flag-related macros. - -2008-02-01 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_get_property): Use clutter_actor_get_reactive() - instead of the IS_REACTIVE() macro. - - (clutter_actor_set_reactive): Emit the notify signal for the - reactive property. - - * clutter/clutter-timeline.c: - (timeline_timeout_func), - (clutter_timeline_get_delta): Coding style fixes. - -2008-01-31 Rob Bradford - - * clutter/glx/clutter-stage-glx.c: - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-backend-glx.h: - Fix formatting. - -2008-01-31 Emmanuele Bassi - - * clutter/clutter-timeline.c (clutter_timeline_skip): Don't - add the frames outside the direction check. (thanks to benoar - on clutter-list for spotting it) - -2007-01-31 Tomas Frydrych - - * clutter/clutter-actor.c: - (clutter_actor_transform_vertices): - Call clutter_actor_query_coords() instead of accessing the actor - box, so that actors that calculate their bounding box on the fly - (like ClutterGroup) work. - - * (_clutter_actor_apply_modelview_transform_recursive): - Made to work for parentless actors. - -2008-01-31 Øyvind Kolås - - * tests/test-depth.c: added a box of cloned hands to further expand - the scope of depth testing scenarios exercised by test-depth. - -2008-01-31 Øyvind Kolås - - * tests/test-depth.c: (timeline_completed): make use of - clutter_timeline_set_direction instead of static state. - (raise_top): made rectangle remain at fixed depth and raise - above each other. - (janus_group): added a rectangle with two faces, one red and - one green, that spins around. - -2008-01-31 Emmanuele Bassi - - * clutter/clutter-entry.h: - * clutter/clutter-entry.c: - (clutter_entry_set_cursor_position), - (clutter_entry_get_cursor_position): Rename [gs]et_position() - to [gs]set_cursor_position(), and avoid method name collisions - with bindings for high-level languages. - - * clutter/clutter-deprecated.h: Add replacement warnings for the - renamed methods. - -2008-01-31 Emmanuele Bassi - - * clutter/clutter-actor.c (clutter_actor_init): Explicitly - memset() to 0 the clip container, so if you get the clip without - having set it, you won't get garbage. - -2008-01-31 Rob Bradford - - * clutter/x11/clutter-backend-x11-private.h: - Add missing start to comment - - * clutter/x11/clutter-backend-x11.c: - * clutter/x11/clutter-event-x11.c: - * clutter/x11/clutter-stage-x11.c: - * clutter/x11/clutter-x11.h: - Remove tabs. - -2008-01-30 Emmanuele Bassi - - * README: Add the osx flavour, and mark it experimental, - along with the sdl backend. EGL-based backends should not be - considered experimental anymore, even though they might require - tweaking. - -2008-01-30 Emmanuele Bassi - - * HACKING: Expand the "document API" point, and the release - process. - - * README: Update the release notes regarding the scale behaviour, - now that the gravity has been removed. - -2007-01-30 Tomas Frydrych - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - Added new clutter_actor_move_anchor_point_ API. - - * clutter/clutter-behaviour-scale.c: - * clutter/clutter-behaviour-scale.h: - * clutter/clutter-effect.c: - * clutter/clutter-effect.h: - * tests/test-actors.c: - * tests/test-effects.c: - * tests/test-scale.c: - Removed gravity from ClutterBehaviourScale. - -2008-01-27 Emmanuele Bassi - - * tests/test-depth.c (main): Use a group instead of pushing - the actors on the stage. - -2008-01-25 Emmanuele Bassi - - * clutter/clutter-group.c (sort_z_order): Invert condition to - return to the same as in revision 1976. - -2008-01-25 Emmanuele Bassi - - * clutter/clutter-label.c (clutter_label_query_coords): Check - if the layout logical rectangle size is bigger than the bounding - box; this usually means that the bounding box changed in one - point and the label private allocation needs to be - updated. (#724) - -2008-01-25 Emmanuele Bassi - - * clutter/x11/Makefile.am: Add the generated clutter-x11 pkg-config - file to CLEANFILES, to pass distcheck. - - * Makefile.am: - * clutter/Makefile.am: Tweak up the Makefiles. - - * README: - * NEWS: Release 0.5.4 - - * configure.ac: Post-release bump to 0.5.5 - -2008-01-25 Emmanuele Bassi - - * clutter/clutter-group.c: Use a shorter Z order sorting function, - avoiding the checks. - -2008-01-25 Øyvind Kolås - - * clutter/clutter-shader.c: added documentation strings for - ClutterShader. - -2008-01-23 Emmanuele Bassi - - * Makefile.am: Use variables, instead of substitutions. - - * clutter/clutter-private.h: - * clutter/clutter-main.h: Make clutter_do_event() public again, - as we need it in clutter-gtk. - - * configure.ac: - * clutter/x11/Makefile.am: - * clutter/x11/clutter-x11.pc.in: Add a clutter-x11 pkg-config - file for clutter-gtk, as it depends on the X11 backend API, as - implemented by the GLX and EGLX backends. - - * clutter/x11/clutter-event-x11.c (event_translate): Do not - propagate DestroyNotify events if the stage doesn't own the - window. - - * tests/test-scale.c (main): Set values different from the default. - -2008-01-21 Emmanuele Bassi - - * clutter/clutter-behaviour-scale.c: - (clutter_behaviour_scale_set_property), - (clutter_behaviour_scale_class_init): Fix stupid typo in the - y-scale-end property declaration. (#720) - -2008-01-21 Emmanuele Bassi - - * clutter/clutter-behaviour-depth.h: - * clutter/clutter-behaviour-depth.c: - (clutter_behaviour_depth_set_bounds), - (clutter_behaviour_depth_get_bounds): Add the depth-start and - depth-end accessors. - - * tests/test-depth.c (timeline_completed): Use set_bounds() - instead of g_object_set(). - - * clutter.symbols: Add clutter_behaviour_depth_set_bounds() - and clutter_behaviour_opacity_get_bounds() to the list of - public symbols. - -2008-01-21 Emmanuele Bassi - - * clutter/clutter-behaviour-scale.c: Use separate variables for - storing the scale boundaries; apparently, using arrays broke - the python bindings. (#720) - -2008-01-21 Matthew Allum - - * clutter/clutter-group.c: - Make sure unrealizing a group also unrealizes children. - - * clutter/glx/clutter-stage-glx.c: - Chain up to group unrealize to make sure textures get unrealized - when changing context (see #718) - - * clutter/clutter-texture.c: - Formatting cleanups - -2008-01-21 Øyvind Kolås - - * tests/test-shader.c: fix incompatible types in shader programs - - Apparently floats can't be multiplied or divided with ints without - explicit type casts. Use 2.0 or float(var) where appropriate. Patch - from Tommi Komulainen (#715). - -2008-01-19 Emmanuele Bassi - - * clutter/clutter-main.c (generate_enter_leave_events): Do not - take the explicit reference, and let clutter_event_copy() do it - for us. (#714, Neil Roberts) - -2008-01-19 Emmanuele Bassi - - * clutter/clutter-event.c (clutter_event_copy): Take an extra - reference on the related actor in ClutterEventCrossing that we - explicitly unref in clutter_event_free(). (#714, Neil Roberts) - -2008-01-18 Emmanuele Bassi - - * tests/test-actors.c (input_cb): Fix the callback signature; - hide the clicked actor only if it's a hand. - -2008-01-18 Emmanuele Bassi - - * clutter/clutter-main.c (clutter_do_event): Check the - return value of the ::event signal for the CLUTTER_DELETE - event type. - - * clutter/clutter-stage.c (clutter_stage_event): Emit the - ::event signal when receiving the CLUTTER_DELETE event; this - allows to intercept the user's closing of the stage window. - -2007-01-18 Tomas Frydrych - - * clutter/clutter-fixed.h: - Added missing proto for clutter_fixed_qdivx(). - -2007-01-18 Tomas Frydrych - - * clutter/clutter-fixed.h: - * clutter/clutter-fixed.c: - Added CLUTTER_QDIV() for 64-bit division (bug 564, patch by - Gwenole Beauchesne). - -2008-01-18 Emmanuele Bassi - - * clutter/clutter-event.h: Add a gunichar field for the Unicode - representation of the key. (#555) - -2008-01-18 Emmanuele Bassi - - * clutter/clutter-actor.h: - * clutter/clutter-script.h: - * clutter/clutter-stage.h: - * clutter/clutter-units.h: Documentation fixes and additions. - -2008-01-18 Emmanuele Bassi - - * clutter.symbols: Add ClutterBehaviourOpacity accessors. - - * clutter/clutter-behaviour-opacity.h: - * clutter/clutter-behaviour-opacity.c: - (clutter_behaviour_opacity_set_bounds), - (clutter_behaviour_opacity_get_bounds): Add accessors for the - opacity-start and opacity-end properties. - - * clutter/clutter-behaviour-scale.h: Fix the argument name to - avoid complaints by gtk-doc. - -2008-01-17 Emmanuele Bassi - - * clutter/clutter-behaviour-scale.c: - (clutter_behaviour_scale_set_gravity): Notify on the right property - name. - -2008-01-17 Emmanuele Bassi - - * clutter.symbols: Add new ClutterBehaviourScale setters. - - * clutter/clutter-behaviour-scale.[ch]: Split the scaling factors - on both axis. Add setters for all the behaviour properties. - - * clutter/clutter-effect.h: - * clutter/clutter-effect.c (clutter_effect_scale): Split the - final scale factor to match the ClutterBehaviourScale changes. (#709) - - * tests/test-actors.c: - * tests/test-effects.c: - * tests/test-rotate.c: - * tests/test-scale.c: Update after API change. - -2008-01-16 Emmanuele Bassi - - * clutter/cogl/cogl.h: Rename COGLhandleARB to COGLhandle. - - * clutter/cogl/gl/cogl-defines.h.in: - * clutter/cogl/gl/cogl.c: Update GL implementation of COGL. - - * clutter/cogl/gles/cogl-defines.h: - * clutter/cogl/gles/cogl.c: Update GLES implementation of COGL. - - * clutter/clutter-shader.c: Fix ClutterShader to use the new - COGLhandle type instead of COGLhandlerARB. - -2008-01-16 Emmanuele Bassi - - Define COGLhandleARB. (patch by Johan Bilien) - - * clutter/cogl/gles/cogl-defines.h: Define COGLhandleARB on - GLES as well (using GLuint) - - * clutter/cogl/gles/cogl.c: Use COGLhandleARB. - -2008-01-14 Tommi Komulainen - - reviewed by: Emmanuele Bassi - - * clutter/osx/clutter-event-osx.c (_clutter_event_osx_put): - Initialize ClutterEvent structure with zeroes (#672) - - The 'source' member was uninitialized and being referenced in - clutter_do_event leading to crash. - -2008-01-14 Emmanuele Bassi - - * tests/test-scale.c: Improve test case for scaling (#684, - Jaap A. Haitsma) - -2008-01-14 Emmanuele Bassi - - * clutter/clutter-timeline.c (timeline_timeout_func): Fix - check if the last frame was reached by skipping a frame (#654, - Johan Bilien) - -2008-01-14 Emmanuele Bassi - - * clutter/clutter-shader.c: Use correct format string for - gssize. (#695, Tommi Komulainen) - -2008-01-14 Emmanuele Bassi - - * clutter/cogl/gl/cogl.c (cogl_get_proc_address): Implement non-GLX - version using GModule and looking up the symbol from the running - process. It should work when linked to library providing the - requested function. (#696, Tommi Komulainen) - -2008-01-14 Emmanuele Bassi - - * configure.ac: Post-release bump to 0.5.3 - - * README: - * NEWS: Release 0.5.2 - -2008-01-14 Emmanuele Bassi - - * clutter.symbols: Add clutter_model_insertv() - - * clutter/clutter-model.[ch] (clutter_model_insertv): Add a vector - based insertion API, for language bindings - -2008-01-12 Emmanuele Bassi - - * clutter/clutter-effect.c (clutter_effect_rotate): Make the - rotate effect work on the passed axis, instead of hardcoding - the X axis. (#700, Neil Roberts) - -2008-01-10 Øyvind Kolås - - Added COGLhandleARB since the underlying type on OSX is void*, - patch from Tommi Komulainen , (#694) - - * clutter/cogl/gl/cogl-defines.h.in: Added COGLhandleARB typedef. - * clutter/cogl/cogl.h: - * clutter/cogl/gl/cogl.c: - * clutter/clutter-shader.c: Use COGLhandleARB instead of COGLint when - referring to program or shader handles. - -2008-01-09 Emmanuele Bassi - - * clutter/Makefile.am: - * clutter/clutter.h: - * clutter/clutter-list-model.[ch]: Complete the ClutterModelDefault - to ClutterListModel rename by renaming the source files - -2008-01-09 Emmanuele Bassi - - * clutter/clutter-model-default.[ch]: Rename ClutterModelDefault - into ClutterListModel, to make it clear that the default - ClutterModel implementation is list-based - - * tests/test-model.c: Update call - -2008-01-09 Emmanuele Bassi - - * clutter/clutter-model-default.c: - (clutter_model_default_new), - (clutter_model_default_newv): Move the constructors in the - right file - - * clutter/clutter-model-private.h: Add a private header for - the ClutterModel implementations - - * clutter/clutter-model.c: - (clutter_model_check_type), - (clutter_model_set_n_columns), - (clutter_model_set_column_type): Mark as private to Clutter, - not static to ClutterModel - - * clutter/Makefile.am: Add clutter-model-private.h - -2008-01-09 Emmanuele Bassi - - * clutter/clutter-label.c: - (clutter_label_ensure_layout): Fix the ClutterUnits to Pango - scale conversion. - -2008-01-08 Emmanuele Bassi - - * clutter/clutter-model.c: - (clutter_model_appendv), - (clutter_model_prependv): Fix the columns length pre-condition - -2008-01-07 Emmanuele Bassi - - * clutter/clutter-model-default.[ch]: Remove the ClutterModelDefault - iterator symbols from the public API; the iterator implementation - is a detail of the default ClutterModel class - - * clutter.symbols: Update - -2008-01-07 Emmanuele Bassi - - * clutter/clutter-model.h: - * clutter/clutter-model.c: - (clutter_model_appendv), - (clutter_model_prependv): Add vector based API for bindings. - - (clutter_model_get_column_name), - (clutter_model_get_column_type), - (clutter_model_set_sorting_column): Fix the check in the condition - on the column index. - - * tests/test-scale.c (on_timeline_completed), (main): Fix spelling - - * clutter.symbols: Update public symbols - -2008-01-04 Emmanuele Bassi - - * clutter.symbols: Add clutter_actor_move_byu() - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - (clutter_actor_move_by), - (clutter_actor_move_byu): Add a units-based variant of the - clutter_actor_move_by() function - -2008-01-02 Johan Bilien - - reviewed by: Emmanuele Bassi - - * configure.ac: Use AC_DEFINE_UNQUOTED to expand the - variable. Fixes EGL backend build - -2008-01-02 Emmanuele Bassi - - * configure.ac: Post release bump to 0.5.1 - -2008-01-02 Emmanuele Bassi - - * README: - * NEWS: Release 0.5.0 - -2008-01-02 Emmanuele Bassi - - * clutter/clutter-model-default.c: - (clutter_model_default_get_iter_at_row), - (clutter_model_default_insert_row): Fix off-by-one errors - - (clutter_model_default_class_init): - (clutter_model_default_remove_row): Move the actual removal of the - row to... - - (clutter_model_default_row_removed): ... the signal class handler - of ::row-removed; this way, signal handlers connected to - ::row-removed will get a valid iterator, while signal handlers - connected to ::row-removed with the AFTER flag will get an updated - model - -2007-12-31 Tomas Frydrych - - * configure.ac: - * clutter/Makefile.am: - Added -no-undefined to libtool LDFLAGS for mingw/SDL backend, to - allow building of shared libraries for win32. - -2007-12-31 Tomas Frydrych - - * configure.ac: - * clutter.pc.in: - Added CLUTTER_REQUIRES automake var to allow deps in clutter.pc to - be backend-specific. - -2007-12-28 Emmanuele Bassi - - * clutter/clutter-texture.c: - (clutter_texture_unrealize): Do not read the pixels back if the - texture is being destroyed - -2007-12-28 Emmanuele Bassi - - * clutter/clutter-model.c: - (clutter_model_real_get_n_rows), (clutter_model_class_init), - (clutter_model_get_n_rows): Provide a default implementation of - the get_n_rows() method, so that subclasses do not strictly need - to override it - -2007-12-25 Emmanuele Bassi - - * clutter/clutter-actor.c: - (parse_rotation_array): Inline, and get the JsonArray as a parameter - - (parse_rotation): Update - - * clutter/clutter-script.c: - (warn_missing_attribute): Fix for emacs-style warnings - - (clutter_script_parse_node): Remove an ifdeffed out section - - (clutter_script_construct_parameters), - (clutter_script_construct_object): Rename get_parameters, so - it's obvious what it does - -2007-12-25 Emmanuele Bassi - - * tests/test-script.json: Fix the JSON syntax - -2007-12-25 Emmanuele Bassi - - * clutter/clutter-enum-types.c.in: Fix the template - -2007-12-24 Emmanuele Bassi - - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - * clutter/clutter-texture.c: Remove some of the remaining FIXMEs - in the API documentation - -2007-12-24 Emmanuele Bassi - - * clutter/clutter-color.c: - * clutter/clutter-event.c: - * clutter/clutter-stage.c: Intern more strings using the I_() macro - - * clutter/clutter-enum-types.c.in: Call g_intern_static_string() - in the enum types template - -2007-12-24 Emmanuele Bassi - - * clutter.symbols: Add clutter_actor_set_clipu() and - clutter_actor_get_clipu() - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - (clutter_actor_set_clipu), (clutter_actor_get_clipu): Add the - new units-based versions of the clip accessors - - (clutter_actor_set_clip), (clutter_actor_get_clip): Reimplement - the pixels-based clip accessors as proxies for the units-based - ones - -2007-12-24 Emmanuele Bassi - - * clutter/cogl/cogl.h: Update cogl_clip_set() to accept the - clip components as ClutterFixed values - - * clutter/cogl/gl/cogl.c (cogl_clip_set): Update the GL implementation - of cogl_clip_set() - - * clutter/cogl/gles/cogl.c: - (cogl_rectangle_internal): Provide an internal, inlined rectangle - drawing function using fixed point values, to be shared by - cogl_clip_set() and cogl_rectangle() - - (cogl_clip_set), (cogl_rectangle): Update the GLES implementation - of cogl_clip_set() and cogl_rectangle() to use the new internal - rectangle drawing function - - * clutter/clutter-actor.c: Make the clip an array of ClutterUnit - values instead of pixel-based; this allows higher precision and - device independence - - (_clutter_actor_apply_modelview_transform): Pass the clip - components converting from units to fixed point values, using - the new cogl_clip_set() signature - - (clutter_actor_get_property), (clutter_actor_set_clip), - (clutter_actor_get_clip): Update the accessors of the clip - property - -2007-12-21 Emmanuele Bassi - - * clutter/clutter-actor.h: Remove the unused ::set_depth() and - ::get_depth() virtual functions. (#674, Murray Cumming) - -2007-12-21 Emmanuele Bassi - - * clutter/clutter-group.c: - * clutter/clutter-group.h: Add the clutter_group_add() convenience - function; it's now "undeprecated" and implemented as a macro - - * clutter/clutter-stage.h: Add clutter_stage_add() as a convenience - macro - - * clutter/cogl/cogl.h: Include just the needed headers instead - of the whole clutter.h; this avoids rebuild cogl when not needed - -2007-12-21 Emmanuele Bassi - - * Makefile.am: Move tests build before docs, to cut down the - distcheck failure discovery - - * clutter.symbols: Add clutter_texture_set_area_from_rgb_data() - - * clutter/clutter-actor.c: - * clutter/clutter-script.c: - * clutter/clutter-texture.c: - * clutter/json/json-generator.c: - * clutter/json/json-parser.c: Compilation fixes for passing distcheck - - * tests/test-grab.c: - * tests/test-score.c: - * tests/test-script.c: - * tests/test-shader.c: - * tests/test-unproject.c: Ditto as above - -2007-12-21 Emmanuele Bassi - - * clutter/clutter-label.c: - (clutter_label_ensure_layout): Avoid rounding errors in the layout - computing when switching between Clutter units and Pango units. - -2007-12-19 Øyvind Kolås - - * clutter/clutter-texture.[ch]: (bug #675) added - clutter_texture_set_area_from_rgb_data, sharing some of the - initialization infrastructure with clutter_texture_set_from_rgb_data. - -2007-12-20 Emmanuele Bassi - - * clutter/clutter-container.c: - (clutter_container_lower_child): Fix interface method call - to actually call ClutterContainer::lower. (#670, Gwenole - Beauchesne) - -2007-12-20 Emmanuele Bassi - - * clutter/clutter-label.c: - (clutter_label_query_coords): Return the bounding box set inside - request_coords(), if any; otherwise, return the natural allocation - of the label. (#678, reported by Gwenole Beauchesne) - - * tests/test-rotate.c: Align the label - -2007-12-19 Tomas Frydrych - - * clutter/Makefile.am: - * clutter/cogl/gl/cogl-defines.h.in: - * clutter/pango/pangoclutter-render.c: - * configure.ac: - Fixes to allow cross-compilation with mingw (patch by Neil - Roberts). - Removed trailing whitespace. - -2007-12-18 Øyvind Kolås - - * clutter/clutter-main.c: (generate_enter_leave_events): synthesize - enter event (without related) and corresponding leave event when the - actor the cursor is over has been destroyed. - * clutter/clutter-event.c: (clutter_event_free): only unref the - related_actor when it actually is set. - -2007-12-18 Emmanuele Bassi - - * clutter/clutter-main.c: - (unset_motion_last_actor), - (generate_enter_leave_events): Attach a callback to the destroy - signal on the last motion actor, so if it goes away while the - pointer is in the middle of it we can unset the pointer. - - * clutter/clutter-private.h: Store the last motion actor inside - the global context. - -2007-12-17 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_should_pick_paint), - (clutter_actor_apply_transform_to_point): Fix the whitespace. - - (clutter_actor_set_rotation): Clarify that the coordinates of - the centre of rotation are relative to the anchor point or, - if not set, to the upper left corner of the bounding box. - -2007-12-17 Tomas Frydrych - - * clutter/clutter-behaviour-ellipse.c: - * clutter/clutter-behaviour-rotate.c: - Clamping of start and end angles to <0, 360). - -2007-12-17 Emmanuele Bassi - - * clutter/clutter-behaviour-path.c: Clarify the equivalence - between the upper and lower bounds of the ClutterAlpha and - the position in the path. (#634) - -2007-12-17 Emmanuele Bassi - - * clutter/clutter-texture.c: Mention the fact that a ClutterTexture - will scale its contents to fit inside the requested bounding - box. (#661) - -2007-12-17 Emmanuele Bassi - - * clutter/clutter-actor.c: Fix documentation for - the ::captured-event signal. (#673) - -2007-12-17 Emmanuele Bassi - - * clutter/clutter-actor.c: Clarify the set_clip() method - documentation, pointing out that the clip area origin is - always the top-left corner of an actor. - -2007-12-15 Emmanuele Bassi - - * clutter/clutter-actor.c: - * clutter/clutter-alpha.h: - * clutter/clutter-event.h: - * clutter/clutter-fixed.[ch]: - * clutter/clutter-model.h: - * clutter/clutter-shader.[ch]: - * clutter/clutter-stage.c: Documentation fixes. - -2007-12-15 Emmanuele Bassi - - * clutter/clutter-model-default.c: - (clutter_model_default_iter_next), - (clutter_model_default_iter_prev): Do not instantiate a new - iterator, and update the passed one instead, as we say we do - in the documentation. This avoid leaking tons of iterators. - - * clutter/clutter-model.[ch]: Update the documentation. - - * tests/test-model.c: Prettify some output. - -2007-12-14 Emmanuele Bassi - - * clutter/clutter-behaviour.c: - (clutter_knot_get_type): Use the I_() macro. - - * clutter/clutter-model.[ch]: Make ClutterModel and ClutterModelIter - abstract classes; also, provide more virtual functions inside the - ClutterModel vtable, to allow subclasses and language bindings to - override the entire ClutterModel using other/native data types - to store the rows. - - * clutter/clutter-model-default.[ch]: ClutterModelDefault is a - default implementation of ClutterModel and ClutterModelIter using - GSequence. - - * clutter/Makefile.am: - * clutter/clutter.h: Build glue for ClutterModelDefault. - - * tests/test-model.c: Update for constructor changes. - - * tests/test-shader.c: Fix a typo. - -2007-12-14 Matthew Allum - - * clutter/cogl/gl/cogl-defines.h.in: - * clutter/cogl/gles/cogl-defines.h: - Add CLUTTER_COGL_HAS_GL/GLES defines - -2007-12-11 Øyvind Kolås - - Refined the ClutterShader API based on a patch from Emmanuele Bassi. - - * clutter/clutter-actor.c: (clutter_actor_paint), - (clutter_actor_apply_shader): queue a redraw of actor when shader is - set. - * clutter/clutter-actor.h: indentation. - * clutter/clutter-shader.[ch]: made the fragment and vertex shader - sources properties. Report error through GError when binding shaders. - * tests/test-shader.c: modified to use newer API. - -2007-12-10 Emmanuele Bassi - - * clutter/clutter-model.c: - (clutter_model_get_sorting_column): Fix wrong type check. - -2007-12-10 Emmanuele Bassi - - * clutter/clutter-model.[ch]: Allow unsorting the model (passing - -1 as the sorting column) - - (clutter_model_iter_get_valist): Do not initialise twice che - return value. - -2007-12-10 Emmanuele Bassi - - * clutter/clutter-model.c (clutter_model_iter_get_value): Initialise - the passed GValue like the other getters do. - -2007-12-10 Emmanuele Bassi - - * clutter/clutter-model.h: - * clutter/clutter-model.c: - (clutter_model_append_value), - (clutter_model_prepend_value), - (clutter_model_insert_value): Add a _value() variant for the - insertion methods, for use of the language bindings. - - (clutter_model_append), - (clutter_model_prepend), - (clutter_model_insert): Do not return a boolean: insertion should - never fail unless for a programming error, in which case we have - plenty of warnings. - -2007-12-10 Emmanuele Bassi - - * clutter/clutter-behaviour-ellipse.c: - (clutter_behaviour_ellipse_get_angle_tilt), - (clutter_behaviour_ellipse_get_angle_tiltx), - (clutter_behaviour_ellipse_set_tilt): Fix a double conversion - that was messing up the returned results. (#665) - -2007-12-10 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_set_property), - (clutter_actor_get_property), - (clutter_actor_class_init): Add the rotation-* properties, - controlling the rotation angle and center on each axis. (#614) - - (parse_rotation_array), (parse_rotation), - (clutter_actor_parse_custom_node), - (clutter_actor_set_custom_property), - (clutter_scriptable_iface_init): Add a new "rotation" custom - property for expressing the rotation along each axis in a - compact way: - - "rotation" : [ - { "x-axis" : [ , [ , ] ] }, - { "y-axis" : [ , [ , ] ] }, - { "z-axis" : [ , [ , ] ] } - ] - - (clutter_geometry_get_type),(clutter_vertex_get_type), - (clutter_actor_box_get_type): Use the I_() macro instead of - directly calling g_intern_static_string(). - - * clutter/clutter-entry.c (clutter_entry_request_coords): - * clutter/clutter-label.c (clutter_label_ensure_layout), - (clutter_label_request_coords): Use CLUTTER_UNITS_FROM_DEVICE() - instead of CLUTTER_UNITS_FROM_INT(), as "device" means "pixels". - - * clutter/clutter-private.h: Add the I_() macro for intern - static strings. - - * tests/test-script.json: Test the newly added "rotation" - custom property. - -2007-12-10 Tomas Frydrych - - * tests/Makefile.am: - Fixed a typo. - -2007-12-10 Tomas Frydrych - - * tests/test-viewport.c: - * tests/Makefile.am: - Added a simple viewport test. - -2007-12-10 Tomas Frydrych - - * clutter/clutter-actor.c: - (_clutter_actor_apply_modelview_transform): - Moved offset translation after rotation so that rotation coords - are also relative to the offset point. - - -2007-12-09 Emmanuele Bassi - - * tests/test-events.c (input_cb): - * tests/test-text.c (main): Fix compiler errors. (#592, - Gwenole Beauchesne) - -2007-12-09 Emmanuele Bassi - - * clutter/clutter-actor.c: Document the values for full - transparency and full opacity in the set_opacity() - method. (#662) - - * clutter/clutter-behaviour-ellipse.c: Improve consistency - in the apidoc. - -2007-12-08 Emmanuele Bassi - - * configure.ac: Make libtool respect the -s switch of make - and be quiet. - -2007-12-07 Emmanuele Bassi - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - (clutter_actor_get_sizeu), - (clutter_actor_get_positionu): Add unit-based accessors to - the size and position. - -2007-12-07 Tomas Frydrych - - * clutter/clutter-behaviour-ellipse.c: - (clutter_behaviour_ellipse_set_angle_start): - (clutter_behaviour_ellipse_set_angle_end): - (clutter_behaviour_ellipse_set_angle_tilt): - (clutter_behaviour_ellipse_set_tilt): - Removed strayed degree -> ClutterAngle conversions left over from - API changes. - - (clutter_behaviour_ellipse_set_angle_tiltx): - Removed stray printf. - -2007-12-07 Tomas Frydrych - - * clutter/clutter-behaviour-ellipse.c: - Fixed tilt setters and getters. - -2007-12-06 Tomas Frydrych - - * clutter/clutter-fixed.c: - * clutter/clutter-fixed.h: - (clutter_sqrti): - Added extra iteration to the Newton-Rapson algorithm for arguments - lesser than 342 to improve precission. - -2007-12-06 Emmanuele Bassi - - * clutter/clutter-main.c: - (clutter_set_motion_events_frequency): Never allow the motion - events devlivery frequency to exceed the default frame rate. - -2007-12-06 Emmanuele Bassi - - * clutter/json/json-parser.[ch]: Use gssize, size we allow -1 - as a length (meaning "use the whole string"). - - (json_parser_load_from_data): Use the passed length instead of - using strlen() all the time. - - * clutter/clutter-script.[ch]: Ditto as above. - -2007-12-06 Emmanuele Bassi - - * clutter/pango/pangoclutter-render.c: Hush a compiler warning - by removing a unused variable. - -2007-12-06 Emmanuele Bassi - - * clutter/clutter-label.c (clutter_label_ensure_layout): If the - label has a requested size, force it when ensuring the layout. - -2007-12-06 Emmanuele Bassi - - * tests/test-unproject.c: Fix type comparison. - - * tests/test-score.c: Save the returned ids. - -2007-12-05 Matthew Allum - - reviewed by: - - * clutter/pango/pangoclutter-render.c: (tc_get), (free_glyph_info), - (draw_glyph), (draw_trapezoid), (pango_clutter_render_layout), - (pango_clutter_render_layout_line), - (pango_clutter_render_clear_caches), (prepare_run), (draw_begin): - -2007-12-05 Emmanuele Bassi - - * clutter/clutter-score.h: Rearrange declarations. - - * clutter/clutter-score.c: More documentation in the long - description of the ClutterScore section. - - * clutter/clutter-debug.h: - * clutter/clutter-main.c: Add the CLUTTER_DEBUG_SHADER flag, - for debugging the shader calls. - - * clutter/clutter-feature.h: Fix the documentation of the - feature flags. - - * clutter/Makefile.am: Remove trailing whitespace. - -2007-12-05 Tomas Frydrych - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * tests/Makefile.am: - * tests/test-unproject: - (clutter_actor_transform_stage_point): - Added new function for translating stage coordinates into local - actor coordinates. - -2007-12-04 Emmanuele Bassi - - * clutter/clutter-score.c: Better document ClutterScore - and its API. - -2007-12-04 Emmanuele Bassi - - * clutter/clutter-score.[ch]: Reimplement ClutterScore using - a N-ary tree to store the timelines. Remove clutter_score_add(): - the same functionality can be achieved by passing a NULL - parent to clutter_score_append(). - - * tests/test-score.c: Update ClutterScore test unit, and add - debug printouts. - -2007-12-04 Øyvind Kolås - - * clutter/clutter-shader.c: (bind_glsl_shader): use gchar instead of - GLcharARB. - -2007-12-03 Øyvind Kolås - - * clutter/clutter-shader.[ch]: do not include GL.h. - -2007-12-03 Øyvind Kolås - - Support for shaders in clutter. At the moment limited to drivers - providing GLSL support. - - * clutter/cogl/cogl.h: added rather direct binding of needed for glsl - shaders. - * clutter/cogl/gl/cogl-defines.h.in: - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/cogl-defines.h: added stubs. - * clutter/cogl/gles/cogl.c: added stubs. - - * clutter/glx/clutter-stage-glx.c: - (clutter_stage_glx_realize): unrelated memory management sanity fix. - (clutter_stage_glx_unrealize): unbind all shaders on stage unrealize. - - * clutter/Makefile.am: added clutter-shader.[ch] - * clutter/clutter-actor.[ch]: adding shader capability to - actors. - * clutter/clutter-feature.h: added CLUTTER_FEATURE_SHADERS_GLSL - * clutter/clutter-private.h: added stack of shaders to context. - * clutter/clutter-shader.[ch]: new. - - * tests/Makefile.am: added shader test. - * tests/test-shader.c: (frame_cb), (main): simple shader test, - cycle through the inline shader with right/left mouse buttons. - -2007-12-03 Øyvind Kolås - - * clutter/glx/clutter-stage-glx.c: for extra sanity, set - stage_x11->xvisinfo = NULL after XFree. Makes using the root window - as foreign window possible. - -2007-11-30 Øyvind Kolås - - * clutter/clutter-timeline.c: (clutter_timeline_get_delta): return the - number of milliseconds passed between new-frame events instead of - since new-frame events, thus making sure that the sum of _get_delta's - returned for all new-frame events is equal to total time elapsed. - -2007-11-30 Emmanuele Bassi - - * clutter/clutter-actor.c (parse_units), - (clutter_actor_parse_custom_node): Do not allow using percentages - of the stage on the stage itself, as it makes little to no - sense. - - * clutter/clutter-script.c: - (clutter_script_construct_object): Rearrange code. - - * tests/test-script.json: Do not set the size of the stage, to - test for the stage size percentage. - -2007-11-30 Emmanuele Bassi - - * clutter/clutter-model.h: Complete the documentation of - the ClutterModelClass structure members. - -2007-11-30 Emmanuele Bassi - - * clutter/clutter-timeline.h: - * clutter/clutter-timeline.c - (timeline_timeout_func), - (clutter_timeline_get_delta): Add a function for retrieving - the number of frames and the time (in milliseconds) elapsed - since the last timeline ::new-frame signal. This can be useful - for implementing a physics engine or just for knowing how if - and how many frames have been skipped. - -2007-11-30 Emmanuele Bassi - - * clutter/clutter-actor.c (parse_units), - (clutter_actor_parse_custom_node), - (clutter_scriptable_iface_init): Override the parsing code - for the x, y, width and height properties of ClutterActor, - to allow strings with modifiers when defining the position - and/or the dimensions of an actor. Bare integers are assumed - as pixels; floating point values in the [0, 1] interval are - assumed as percentages; strings can have these modifiers: - - - px - pixels - - mm - millimeters - - pt - points (at the current resolution) - - % - percentage of the stage - - * clutter/clutter-units.h: Fix the conversion macros - - * tests/test-script.json: Test the new values. - -2007-11-29 Emmanuele Bassi - - * clutter/clutter-model.[ch]: Slight API change in the constructor - functions for ClutterModel: clutter_model_new() now takes a list - of GType/string pairs for both the column type and the column name. - - (clutter_model_set_n_columns), - (clutter_model_set_names), - (clutter_model_set_types): Subclasses of ClutterModel will be able - to call clutter_model_set_types() and clutter_model_set_names() in - any order, provided that they don't call each function more than - once. - - * tests/test-model.c: Update the test case. - -2007-11-29 Tomas Frydrych - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - Converted depth and rotation offsets to ClutterUnit. - - (clutter_actor_set_depthu): - (clutter_actor_get_depthu): - Additional ClutterUnit API. - - (_clutter_actor_apply_modelview_transform): - Use cogl_translatex() in place of cogl_translate(). - -2007-11-29 Emmanuele Bassi - - * *: Add svn:ignore property to every directory, so that - svn status starts being useful. - -2007-11-29 Matthew Allum - - * clutter/clutter-main.c: (generate_enter_leave_events): - Minor formatting tweak. - * configure.ac: - Typo fix from Damien Lespiau (via mailing list) - -2007-11-28 Emmanuele Bassi - - Add more introspection capabilities to the base model class - - * clutter/clutter-model.h: - * clutter/clutter-model.c: - (clutter_model_finalize): Do no leak the column types array. - - (clutter_model_get_n_columns): Function for getting the number - of columns inside a model. - - (clutter_model_set_names): Add API for setting the names of the - columns. - - (clutter_model_get_column_name), - (_model_get_column_type): Add API for getting each column's name, - and the default implementation for ClutterModel. - - (clutter_model_get_column_type), - (_model_get_iter_at_row): Add API for getting each column's type, - and the default implementation for ClutterModel. - - * clutter.symbols: Add ClutterModel and ClutterModelIter symbols, - and keep the symbols file sorted. - -2007-11-28 Tomas Frydrych - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - (clutter_actor_set_positionu): - (clutter_actor_set_sizeu): - (clutter_actor_get_widthu): - (clutter_actor_get_heightu): - (clutter_actor_set_widthu): - (clutter_actor_set_heightu): - (clutter_actor_get_xu): - (clutter_actor_get_yu): - (clutter_actor_set_xu): - (clutter_actor_set_yu): - Expanded ClutterActor API with new ClutterUnit-base functions. - - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - (clutter_stage_get_resolution): - (clutter_stage_get_resolutionx): - New function to query stage resolution (floating and fixed point - versions). - - * clutter/clutter-units.h: - (CLUTTER_UNITS_FROM_STAGE_WIDTH_PERCENTAGE): - (CLUTTER_UNITS_FROM_STAGE_HEIGHT_PERCENTAGE): - (CLUTTER_UNITS_FROM_PARENT_WIDTH_PERCENTAGE): - (CLUTTER_UNITS_FROM_PARENT_HEIGHT_PERCENTAGE): - (CLUTTER_UNITS_FROM_MM): - (CLUTTER_UNITS_FROM_MMX): - (CLUTTER_UNITS_FROM_POINTS): - (CLUTTER_UNITS_FROM_POINTSX): - New macros for conversions to ClutterUnits. - - * clutter.symbols: - Added: - ClutterActor anchor_point functions, - clutter_stage_get_resolution functions. - - Removed: - clutter_actor_scale_with_gravity functions. - -2007-11-28 Emmanuele Bassi - - * clutter/clutter-actor.[ch]: Documentation fixes. - -2007-11-28 Emmanuele Bassi - - Remove the layout containers: they will be moved to a - high-level library. - - * clutter/clutter.h: - * clutter/Makefile.am: Remove layout and boxes from the - build. - - * clutter/clutter-layout.[ch]: Remove the ClutterLayout - interface. - - * clutter/clutter-box.[ch]: - * clutter/clutter-hbox.[ch]: - * clutter/clutter-vbox.[ch]: Remove ClutterBox and its - subclasses. - - * clutter/clutter-label.c: Remove ClutterLayout implementation - - * clutter/clutter-script-private.h: - * clutter/clutter-script-parser.c: - * clutter/clutter-script.c: - (clutter_script_parse_node): Remove special parsing for - ClutterMargin and ClutterPadding. - - * clutter/clutter-types.h: Remove ClutterPadding and ClutterMargin. - - * tests/Makefile.am: - * tests/test-boxes.c: Remove the boxes test case. - -2007-11-28 Tomas Frydrych - - * clutter/NEWS: - Started 0.6.0 section with comment on actor anchor point. - - * clutter/clutter/clutter-actor.c: - * clutter/clutter/clutter-actor.h: - * clutter/clutter/clutter-behaviour-scale.c: - * clutter/clutter/clutter-deprecated.h: - (clutter_actor_set_anchor_point): - (clutter_actor_set_anchor_pointu): - (clutter_actor_get_anchor_point): - (clutter_actor_get_anchor_pointu): - (clutter_actor_set_anchor_point_from_gravity): - New anchor point API deprecating old gravity scaling, added - comments on modelview matrix construction to ClutterActor - documentation. - - (clutter_actor_set_scale_with_gravity): - (clutter_actor_set_scale_with_gravityx): - Deprecated; use clutter_actor_set_anchor_point_from_gravity() instead. - -2007-11-28 Emmanuele Bassi - - * clutter/clutter-effect.[ch]: Add clutter_effect_template_construct() - function, for language bindings that need to set the alpha function - but cannot call the clutter_effect_template_new() ctor themselves. - -2007-11-27 Tomas Frydrych - - * clutter/clutter-behaviour-ellipse.c: - * clutter/clutter-behaviour-ellipse.h: - (clutter_behaviour_ellipse_get_angle_startx): - (clutter_behaviour_ellipse_set_angle_startx): - (clutter_behaviour_ellipse_get_angle_endx): - (clutter_behaviour_ellipse_set_angle_endx): - (clutter_behaviour_ellipse_get_angle_tiltx): - (clutter_behaviour_ellipse_set_angle_tiltx): - Changed to take and return angles in degrees represented as - ClutterFixed. - -2007-11-27 Emmanuele Bassi - - * clutter/clutter-actor.c (clutter_actor_destroy): Remove the - reference we hold on the actor, as it was preventing the finalization - of every child on the stage. - -2007-11-26 Emmanuele Bassi - - * clutter/x11/clutter-stage-x11.c: - (clutter_stage_x11_set_cursor_visible): Restore the XFixes usage, - as it now seems to be have been fixed. - -2007-11-26 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_real_show), - (clutter_actor_real_hide): Do not set the MAPPED flag on the actor - if it is a top-level one (like ClutterStage); the backends are - responsible for setting that flag, as it might be the result of an - asynchronous operation (e.g. on X11). - - * clutter/eglnative/clutter-stage-egl.c: - (clutter_stage_egl_show), - (clutter_stage_egl_hide): Set/unset the CLUTTER_ACTOR_MAPPED flag - on show and hide respectively. - - * clutter/osx/clutter-stage-osx.c: - (clutter_stage_osx_show), - (clutter_stage_osx_hide): Ditto as above. - - * clutter/sdl/clutter-stage-sdl.c: - (clutter_stage_sdl_show), - (clutter_stage_sdl_hide): Ditto as above, plus chain up to the - parent class show/hide virtual functions. - - * clutter/x11/clutter-event-x11.c (event_translate): Use the MapNotify - and UnmapNotify events to call the X11 stage map/unmap functions. - - * clutter/x11/clutter-stage-x11.[ch]: - (clutter_stage_x11_set_fullscreen): Set the fullscreen_on_map flag - with the fullscreen value. - - (clutter_stage_x11_map), (clutter_stage_x11_unmap): Set the MAPPED - flag on the stage actor and redraw; also, if the fullscreen_on_map - flag was set, call clutter_stage_fullscreen() as well. (#648) - - * tests/Makefile.am: - * tests/test-fullscreen.c: Add a fullscreen test case for checking - whether fullscreen works on every backend/platform. - -2007-11-23 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_real_request_coords), - (clutter_actor_request_coords), - (clutter_actor_class_init): Provide a default ::request_coords() - implementation in ClutterActor and use it to store the bounding - box passed to clutter_actor_request_coords(). This makes the code - more reliable and clean, and avoids a call to the subclass - request_coords() method if the bounding box did not change. Now, - every class overriding ClutterActor::request_coords() *must* chain - up to the parent class method or the bounding box will not be - saved inside the ClutterActor structure. - - * clutter/clutter-entry.c: - * clutter/clutter-group.c: - * clutter/clutter-hbox.c: - * clutter/clutter-label.c: - * clutter/clutter-texture.c: - * clutter/clutter-vbox.c: Chain up to the parent class - request_coords() method. - -2007-11-23 Emmanuele Bassi - - * clutter/clutter-event.h: Add more documentation. - -2007-11-23 Emmanuele Bassi - - * tests/test-event.c: Back out an accidental commit. - -2007-11-23 Emmanuele Bassi - - * clutter/clutter-actor.c: - * clutter/clutter-alpha.c: - * clutter/clutter-effect.c: - * clutter/clutter-event.c: - * clutter/clutter-event.h: - * clutter/clutter-group.h: - * clutter/clutter-model.c:, - * clutter/clutter-script.c: - * clutter/clutter-scriptable.h: - * clutter/clutter-stage.c: Documentation fixes. - - * clutter/clutter-score.c: Fix implementation. - -2007-11-23 Emmanuele Bassi - - * clutter/x11/clutter-stage-x11.c: Chain up the hide and show - to the parent's implementation. - -2007-11-23 Emmanuele Bassi - - * clutter/clutter-effect.[ch]: Update the effects API to remove - the start value for most of them. - - (clutter_effect_move): Make it a simple "move from current - position to new coordinates" effect. - - (clutter_effect_path): Rename from clutter_effect_move(). - - (clutter_effect_rotate): Sync up with the new actor rotation API. - - * tests/test-effects.c: Regression test for the effects. - - * tests/Makefile.am: Build glue for test-effects - - * tests/test-behave.c: Emulate a full ramp by using a looping - timeline changing its direction when reaching the last frame. - -2007-11-23 Emmanuele Bassi - - * clutter/clutter-actor.c (clutter_actor_destroy): Bail out - if clutter_actor_destroy() was called on the stage: the stage - is not for the user to destroy. - - * clutter/x11/clutter-backend-x11.c: - * clutter/eglnative/clutter-backend-egl.c: - * clutter/sdl/clutter-backend-sdl.c: - * clutter/osx/clutter-backend-osx.c: Unset the top-level private - flag on the stage when disposing it, so the backends can safely - call clutter_actor_destroy(). - - * clutter/clutter-private.h: Tweak the private flags accessors, - to avoid the typecheck. - -2007-11-22 Emmanuele Bassi - - * clutter/clutter-label.c (clutter_label_new_full): Set the - terminating NULL which was removed when applying patch for - fixing #606. (#645, Gwenole Beauchesne) - -2007-11-22 Øyvind Kolås - - * clutter/clutter-actor.c: mended a couple of typos in documentation. - -2007-11-21 Matthew Allum - - * clutter/cogl/gles/cogl.c: (cogl_fog_set): - Minor fixes for fog on GLES. - -2007-11-21 Emmanuele Bassi - - * clutter/cogl/cogl.h: Add cogl_fog_set() abstracting the - glFog() functions and enabling the GL_FOG flag. - - * clutter/cogl/gl/cogl.c: Add GL implementation of cogl_fog_set(). - - * clutter/cogl/gles/cogl.c: Add GL/ES implementation of - cogl_fog_set(). - - * clutter.symbols: Add new symbols. - - * clutter/clutter-stage.h: Add API to enable depth cueing on - the stage using a linear GL fog, and to set the parameters - for it (#637). - - * clutter/clutter-stage.c (clutter_stage_paint): Enable the - GL fog if the ClutterStage:use-fog property is true. - - * tests/test-depth.c: Test the new stage API. - -2007-11-20 Øyvind Kolås - - * clutter/clutter-main.c: (event_click_count_generate): generalized - click_count generation code. - * tests/test-events.c: (input_cb): extended test to report click_count - for release and scroll events as well as press events. - -2007-11-20 Øyvind Kolås - - * clutter/clutter-main.c: (clutter_do_event): avoid computing source - of events if it is already set (for synthetic events.) - * clutter/clutter-event.c: Add more information to the documentation - of clutter_event_put. - -2007-11-20 Emmanuele Bassi - - * README: Add diff example command lines for submitting patches. - -2007-11-20 Emmanuele Bassi - - * clutter/clutter-actor.c:: - * clutter/clutter-behaviour-opacity.c: - * clutter/clutter-clone-texture.c: - * clutter/clutter-effect.c: - * clutter/clutter-label.c: Remove the usage of G_PARAM_CONSTRUCT - without an override for the ::construct virtual function; using - G_PARAM_CONSTRUCT to set the default value of a property is not - the recommended approach; default values are set inside the - instance init function. - -2007-11-20 Emmanuele Bassi - - * clutter/clutter-texture.c (clutter_texture_init): Set filter-quality - value to 1, to fix the regression caused when applying the patch for - buf #616. - -2007-11-19 Emmanuele Bassi - - * clutter/clutter-label.[ch]: Fix ClutterLabel size allocation when - no bounding box has been provided, and store the box set by the - user so that it can be reused when recomputing the layout. (#600) - - (clutter_label_class_init), - (clutter_label_init): Set the :wrap property default to FALSE. - - * clutter/clutter-units.h: Add ClutterUnit-to-PangoUnit conversion - macro. - - * tests/test-rotate.c: Fix string. - -2007-11-19 Emmanuele Bassi - - * clutter/clutter-behaviour-bspline.c: - * clutter/clutter-behaviour-depth.c: - * clutter/clutter-behaviour-ellipse.c: - * clutter/clutter-behaviour-opacity.c: - * clutter/clutter-behaviour-path.c: - * clutter/clutter-behaviour-rotate.c: - * clutter/clutter-behaviour-scale.c: Fix gtk-doc short description. - -2007-11-19 Emmanuele Bassi - - * clutter.symbols: Update - - * clutter/clutter-actor.h: Rename the angle argument for - set_rotationx() to avoid gtk-doc complaining - - * clutter/clutter-main.h: - * clutter/clutter-main.c: - (clutter_set_motion_events_enabled): Rename for consistency - - (clutter_get_motion_events_frequency), - (clutter_set_motion_events_frequency): Add accessors for the default - motion events deliver frequency. - - (clutter_do_event): Throttle down motion events delivery using the - motion events frequency setting, to avoid excessive redraws. (#608) - - (clutter_context_get_default): Enable per-actor motion events, at - least for now. - - * tests/test-events.c (red_button_cb): - * tests/test-grab.c (green_press_cb): Update. - -2007-11-19 Emmanuele Bassi - - * clutter/clutter-timeline.c (timeline_timeout_func): Do not emit the - ::new-frame signal twice for the last frame. (#531) - -2007-11-19 Øyvind Kolås - - * clutter/clutter-actor.[ch]: (clutter_actor_set_rotationx), - (clutter_actor_set_rotation): swapped axis and angle around, - the new argument order is: (axis, angle, x, y, z). Also removed - deprecated rotation functions from header. - - Updated use of clutter_actor_set_rotation? in the following files: - - * clutter/clutter-behaviour-rotate.c: - * clutter/clutter-effect.c: - * tests/test-actors.c: - * tests/test-project.c: - -2007-11-19 Emmanuele Bassi - - * clutter/clutter-label.[ch]: Constify the color argument - for the ClutterLabel ctor. (#604) - -2007-11-18 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * clutter/clutter-group.c: - * clutter/clutter-main.c: - * clutter/clutter-stage.c: - * tests/test-events.c: - Parent Actors no longer need to be set reactive for reactive - children to get events. Also makes groups now pickable. - (#597, #423) - - * clutter/clutter-texture.c: - Handle case when 1x1 tiled texture is created, - falling 'back' to being non tiled. (#596) - - * clutter/eglx/clutter-backend-egl.c: - Call EglTerminate on backend shutdown. - -2007-11-18 Emmanuele Bassi - - * clutter.pc.in: Bump up glib-2.0 dependency. - -2007-11-18 Emmanuele Bassi - - * clutter/clutter-model.c: Add gtk-doc section for - ClutterModelIter - - * clutter/clutter-script.h: Fix argument name. - - * clutter/x11/clutter-x11.h: - * clutter/x11/clutter-event-x11.c: - * clutter/x11/clutter-backend-x11.c: Document functions and - types. - -2007-11-18 Emmanuele Bassi - - * clutter.symbols: Update exported symbols. - - * clutter/clutter-actor.[ch]: Remove clutter_actor_rotate_* - and clutter_actor_get_rx* and provide a simpler rotation API: - clutter_actor_set_rotation() and clutter_actor_get_rotation(). - - * clutter/clutter-deprecated.h: Deprecate the old rotation API. - - * clutter/clutter-behaviour-bspline.c: - * clutter/clutter-behaviour-rotate.c: - * clutter/clutter-effect.c: Update internal usage of the - rotation API. - - * tests/test-project.c: Ditto as above. - -2007-11-17 Emmanuele Bassi - - Optimise Atoms usage in the X11 and X11-based backends. - - * clutter/x11/clutter-backend-x11.c: - (clutter_backend_x11_post_parse): Call XInternAtoms() here and - get all the atoms from X in one call. - - * clutter/x11/clutter-backend-x11.h: Store all the atoms inside - the ClutterBackendX11 structure. - - * clutter/x11/clutter-event-x11.c: - (xembed_send_message), (xembed_set_info), - (_clutter_backend_x11_events_init), - (set_user_time), (handle_wm_protocols_event), - (handle_xembed_event), (event_translate): Do not cache atoms - or call XInternAtom() directly, and use the atoms off the X11 - backend structure instead. - - * clutter/x11/clutter-stage-x11.c: - (send_wmspec_change_state), (clutter_stage_x11_set_wm_protocols), - (clutter_stage_x11_set_fullscreen), - (clutter_stage_x11_set_title): Ditto as above. - - * clutter/x11/clutter-stage-x11.h: Update the set_wm_protocols() - method to take the X11 stage implementation. - - * clutter/glx/clutter-stage-glx.c: - (clutter_stage_glx_realize): Update for the set_wm_protocols() - change. - - * tests/test-project.c: (main): Test clutter_stage_set_title(). - -2007-11-17 Emmanuele Bassi - - * configure.ac: Depend on GLib >= 2.14 because of ClutterModel - usage of GSequence. - -2007-11-16 Øyvind Kolås - - * clutter/clutter-main.c: (emit_event): renamed from deliver_event, - (emit_pointer_event): utility function to emit pointer event signals - (which takes pointer grab into account). - (emit_keyboard_event): utility function to emit keyboard event signals - (which takes keyboard grab into account). - (clutter_do_event): use the above utility functions, also reindented - the source. - -2007-11-16 Øyvind Kolås - - * tests/test-grab.c: (main): fix use of clutter_actor_set_reactive - -2007-11-15 Øyvind Kolås - - * clutter/clutter-main.[ch]: added clutter_grab_keyboard, - clutter_ungrab_keyboard and clutter_get_keyboard_grab, in - clutter_do_event deliver keyboard related events only to the - actor with the keyboard grab if a grab exists. - * clutter/clutter-private.h: added keyboard_grab_actor to context. - * tests/test-grab.c: added testing for testing the keyboard grab. - -2007-11-15 Emmanuele Bassi - - * clutter/clutter-texture.c: - (clutter_texture_request_coords), (clutter_texture_class_init), - (clutter_texture_init): Unset :sync-size if explicitly setting - the texture size. (#616) - -2007-11-15 Emmanuele Bassi - - * clutter/clutter-actor.[ch]: Massive API clean-ups. Initial - fixes for bugs #614 and #628. - - * clutter/clutter-main.c: - * clutter/clutter-stage.c: Update internal usage of the actor - API. - - * tests/test-events.c: Update test suite. - -2007-11-15 Øyvind Kolås - - * clutter/clutter-main.c: (generate_enter_leave_events), - (clutter_do_event): moved the generation of enter/leave events - to a utility function. - -2007-11-15 Neil J. Patel - - * clutter/clutter-model.c: - Added some more examples to the documentation, plus explained how the - iters work internally. - -2007-11-15 Øyvind Kolås - - * clutter/clutter-main.[ch]: added clutter_grab_pointer, - clutter_ungrab_pointer and clutter_get_pointer_grab, in - clutter_do_event deliver pointer related events only to the - actor with the pointer grab if a grab exists. - * clutter/clutter-private.h: added pointer_grab_actor to context. - * tests/Makefile.am: - * tests/test-grab.c: added test for testing the pointer grab. - -2007-11-15 Emmanuele Bassi - - * clutter/clutter-timeline.[ch]: Add ClutterTimeline:direction - property, defining the direction (forward or backward) of the - timeline. - - * tests/test-timeline.c: Test the direction property. - - * clutter.symbols: Update exported symbols - -2007-11-15 Emmanuele Bassi - - * clutter/clutter-effect.h: - * clutter/clutter-effect.c: - (clutter_effect_template_new_for_duration): Add a simple constructor - for implicitly creating a ClutterTimeline with a given duration. - -2007-11-15 Emmanuele Bassi - - * clutter.symbols: Update with the new public symbols - - * clutter/clutter-script.h: - * clutter/clutter-script-private.h: - * clutter/clutter-script.c: - (parse_signals), (json_object_end), - (signal_info_free), (object_info_free): Parse the "signals" - member for GObjects. - - (clutter_script_connect_signals), - (clutter_script_connect_signals_full): Add new API for autoconnecting - signal handlers using the UI definition files. - - * tests/test-script.c: - * tests/test-script.json: Test signal autoconnection. - -2007-11-15 Matthew Allum - - * clutter/Makefile.am: - * clutter/eglx/Makefile.am: - * clutter/eglx/clutter-backend-egl.c: - * clutter/eglx/clutter-backend-egl.h: - * clutter/eglx/clutter-eglx.h: - * clutter/eglx/clutter-event-egl.c: - * clutter/eglx/clutter-stage-egl.c: - * clutter/eglx/clutter-stage-egl.h: - * clutter/glx/Makefile.am: - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-backend-glx.h: - * clutter/glx/clutter-event-glx.c: - * clutter/glx/clutter-glx.h: - * clutter/glx/clutter-stage-glx.c: - * clutter/glx/clutter-stage-glx.h: - * clutter/x11/Makefile.am: - * clutter/x11/clutter-backend-x11-private.h: - * clutter/x11/clutter-backend-x11.c: - * clutter/x11/clutter-backend-x11.h: - * clutter/x11/clutter-event-x11.c: - * clutter/x11/clutter-stage-x11.c: - * clutter/x11/clutter-stage-x11.h: - * clutter/x11/clutter-x11.h: - Create a new X11 backend class of which EGL and GLX 'real' backends - then subclass. Effectively shares all X11 code between both backends - avoids code duplication and brings many missing features to EGL X - backend. Requires some cleanup and testing. (#518) - - * clutter/cogl/gles/cogl.c: (cogl_color): - Add define to use color4ub only if configure finds it. - If not fall back to old code. - - * configure.ac: - Drop support for vincent checks. - Drop sdles backend. - Specifically check for color4ub call. - -2007-11-15 Neil J. Patel - - * clutter/Makefile.am: - * clutter/clutter-model.c: - * clutter/clutter-model.h: - * clutter/clutter.h: - * tests/Makefile.am: - * tests/test-model.c: - Merged ClutterModel, which closes #443. - -2007-11-14 Emmanuele Bassi - - * clutter/clutter-clone-texture.c (set_parent_texture): Hide the - clone texture only if it was visible, and show it again if we - are adding a visible texture. - - * tests/test-script.json: Test the CloneTexture actor. - -2007-11-14 Emmanuele Bassi - - * clutter/clutter-actor.[ch]: Rename clutter_actor_get_id() to - clutter_actor_get_gid(). - - (clutter_actor_set_parent): Use GUINT_TO_POINTER(). - - * clutter/clutter-deprecated.h: Add a replacement warning for - clutter_actor_get_id(). - - * clutter/clutter-texture.c (texture_upload_data): Use - clutter_actor_get_gid(), and don't leak the filename string. - -2007-11-14 Emmanuele Bassi - - * clutter/clutter-scriptable.[ch]: Rename ::set_name and ::get_name - to ::set_id and ::get_id, to avoid potential confusion with the - ClutterActor:name property. - - * clutter/clutter-script.h: - * clutter/clutter-script.c (clutter_script_construct_object): Use - clutter_scriptable_set_id(). - - (clutter_get_script_id): Add a public function to retrieve the ID - used in the UI definition files from an object. - - * clutter/clutter-actor.c: Do not set the name of the actor with - the ID set in the UI definition files. - - * tests/test-script.c: Test clutter_get_script_id(). - - * clutter.symbols: Update with the new symbols. - -2007-11-14 Emmanuele Bassi - - * clutter/cutter-deprecated.h: Don't let everyone know from where - we have stolen^Wtaken inspiration for the deprecation warnings. - -2007-11-13 Øyvind Kolås - - * clutter/clutter-behaviour-bspline.[ch]: - Replaced clutter_behaviour_bspline_append with - clutter_behaviour_bspline_append_knots. Fixes bug #582. - * clutter/clutter-deprecated.h: added deprecation macro reflecting the - API change. - -2007-11-13 Øyvind Kolås - - * clutter/Makefile.am: - * clutter/clutter.h: include clutter-deprecated.h - * clutter/clutter-deprecated.h: added file containing macros that - provides more meaningful errors when compiling clutter using code that - uses deprecated functions. - -2007-11-13 Øyvind Kolås - - Renamed all properties of behaviours (and related - functions/variables/parameters) - to match the pattern something-start, something-end. Fixes bug #577. - - * clutter/clutter-behaviour-depth.c: - * clutter/clutter-behaviour-depth.h: - * clutter/clutter-behaviour-ellipse.c: - * clutter/clutter-behaviour-ellipse.h: - * clutter/clutter-behaviour-path.c: - * clutter/clutter-behaviour-rotate.c: - * clutter/clutter-behaviour-rotate.h: - * clutter/clutter-behaviour-scale.c: - * clutter/clutter-behaviour-scale.h: - * clutter/clutter-effect.c: - * clutter/clutter-effect.h: - * clutter/clutter-script.c: - * tests/test-depth.c: - * tests/test-script.c: - -2007-11-06 Øyvind Kolås - - * clutter/clutter-event.h: made ClutterEventAny have a source field, - rearanged other structs to have source in the same position. - * clutter/clutter-event.c: (clutter_event_get_source): modified to use - the any event. - (clutter_event_free): removed unused variable. - * clutter/clutter-main.c: (deliver_event), (clutter_do_event): reduced - amount of code. As well as deliver button-release events to the stage. - -2007-11-08 Rob Bradford - - * clutter/glx/clutter-glx.h: - Include needed for the definition of XVisualInfo. - -2007-11-08 Rob Bradford - - * clutter/cogl/gles/cogl.c: (cogl_color): - Switch over to using glColor4ub in the GLES backend. It's available in - the header file but missing in the reference manual. - -2007-11-07 Emmanuele Bassi - - * clutter/clutter-actor.[ch]: Fix the declaration of the - class handlers for the ::captured-event, ::enter-event and - ::leave-event signals; the function signatures were missing - the return value the signals marshallers were expecting, and - their names weren't respecting the convention for event-related - signals. - -2007-11-06 Tomas Frydrych - - * clutter/clutter-fixed.h: - Added CLUTTER_SQRTI_ARG_MAX, CLUTTER_SQRTI_5_PERCENT, - CLUTTER_SQRTI_10_PERCENT expressing clutter_sqrti limits. - Stripped trailing whitespace. - - * clutter/clutter-fixed.c: - (clutter_sqrti): - Updated documentation, stripped trailing whitespace. - - * clutter/clutter-behaviour-path.c: - (node_distance): - Use clib sqrt if clutter_sqrti() precission would be worse than - 10%. - Stripped trailing whitespace. - -2007-11-06 Emmanuele Bassi - - * clutter/clutter-layout.h: Add commodity macros to test for - a specific layout flag in one line. - -2007-11-06 Emmanuele Bassi - - * clutter/clutter-box.c (clutter_box_dispose): Call unparent() - on the children, instead of destroy(), to avoid a double free - and a crash when destroying a ClutterBox. - -2007-11-06 Emmanuele Bassi - - * clutter/clutter-label.c: Break the references in ::dispose, - and free the resources in ::finalize. - -2007-11-05 Øyvind Kolås - - * clutter/clutter-container.[ch]: removed find_child_by_id method - from interface (and all implementations of it) since this - functionality is now implemented using a global hash. - * clutter/clutter-box.c: - * clutter/clutter-group.c: - -2007-11-01 Emmanuele Bassi - - * clutter/clutter-script.c: Do not keep ownership of the - pixbufs we load. - -2007-10-31 Øyvind Kolås - - * clutter/clutter-main.c: (_clutter_do_pick): disable dithering - when painting in pick mode. - -2007-10-31 Matthew Allum - - * clutter/clutter-score.c: - Various minor improvements to ClutterScore. - -2007-10-30 Emmanuele Bassi - - * clutter/clutter-layout.c: Fix documentation, with regards to - the containers handling of the children implementing the - ClutterLayout interface. - -2007-10-29 Emmanuele Bassi - - * configure.ac: - * clutter/cogl/gl/cogl-defines.h.in: The OS X backend has a funny - OpenGL header location, so it basically did break every application - including clutter/cogl.h because the GL header inclusion depended - on symbols defined into Clutter's config.h. Now, we define the - GL header into the configure template and use it to create the - cogl-defines.h file cogl.h includes. - -2007-10-29 Emmanuele Bassi - - * clutter/json/json-parser.c: Enable parsing of negative numbers; - GScanner splits negative numbers into two tokens, so we need to - special case them. - -2007-10-29 Emmanuele Bassi - - * clutter/clutter-script.c: Add the :filename and :filename-set - properties, to retrieve the path of the currently parsed file (if - :filename-set is TRUE) from the ClutterScriptable implementations. - -2007-10-28 Matthew Allum - - * clutter/clutter-effect.c: - Small doc fix (#584) - -2007-10-27 Emmanuele Bassi - - * clutter/json/json-parser.c: - (json_scanner_msg_handler): Set the GError to be returned by - the parsing functions into the GScanner error message handler. - - (json_parser_object): Return the symbol token in case we have - a parse error after the member name. - - (json_parser_load_from_data): Propagate the error set in the - message handler, if any. - - * clutter/json/json-node.c (json_node_free): Unref the objects - only if are set, to avoid a couple of needless criticals we - get on error. - - * tests/test-script.json: More properties. - -2007-10-27 Emmanuele Bassi - - * clutter/clutter-script.[ch]: Slight API change in the - clutter_script_get_objects() function: now it takes - object name/object return location pairs and returns the - number of objects found and returned. - - * tests/test-script.c: Exercise the clutter_script_get_objects() - function. - -2007-10-27 Emmanuele Bassi - - * clutter/clutter-rectangle.c (clutter_rectangle_paint): Use - CGL_ENABLE_BLEND flag instead of CGL_BLEND value. (#580, - Gwenole Beauchesne) - -2007-10-27 Emmanuele Bassi - - * clutter/clutter-color.c (clutter_color_to_string): Update the - documentation for the format of the returned string, and remove - the note: now clutter_color_parse() can parse the string this - function returns. - -2007-10-27 Emmanuele Bassi - - * clutter/pango/pangoclutter-render.c: Last usage of guint - replaced with COGLuint. (Tommi Komulainen) - -2007-10-26 Matthew Allum - - * clutter/clutter-texture.c: - * clutter/cogl/cogl.h: - * clutter/cogl/gl/cogl-defines.h: - * clutter/cogl/gles/cogl-defines.h: - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/cogl.c: - Switch from use of guint to COGLuint. Avoids problems when - guint != GLuint on some platforms, i.e OSX. - (Tommi Komulainen, #525, #523) - - * clutter/Makefile.am: - * clutter/osx/Makefile.am: - * clutter/osx/clutter-backend-osx.c: - * clutter/osx/clutter-backend-osx.h: - * clutter/osx/clutter-event-osx.c: - * clutter/osx/clutter-osx.h: - * clutter/osx/clutter-stage-osx.c: - * clutter/osx/clutter-stage-osx.h: - * configure.ac: - Add initial Cocoa/OSX Backend (by Tommi Komulainen, see #526) - -2007-10-26 Emmanuele Bassi - - * clutter/clutter-entry.c: Add a :x-align property for aligning - the text in the entry, in case the actor is wider than the - text it shows. - -2007-10-26 Emmanuele Bassi - - * clutter/clutter-main.c: Add a --clutter-default-fps run-time - switch and CLUTTER_DEFAULT_FPS environment variable support for - setting the default frame-rate at run-time. - -2007-10-26 Emmanuele Bassi - - * clutter/clutter-script.h: - * clutter/clutter-script.c: Add a ::get_type_from_name() virtual - function for bindings to override. The current implementation - calls g_type_from_name() and our lazy class resolver. - - * clutter.symbols: Update. - - * doc/reference/clutter-sections.txt: Update. - -2007-10-25 Emmanuele Bassi - - * clutter/clutter-behaviour-path.c: Reverse the list of - parsed knots, to preserve the real ordering after prepending - them (thanks to Øyvind for spotting this). - - * clutter/clutter-behaviour-bspline.c: Ditto as above. - -2007-10-25 Emmanuele Bassi - - * clutter/clutter-script-parser.c: Unset the GValue when - getting a ClutterUnit from a JSON node. - -2007-10-25 Emmanuele Bassi - - * clutter/clutter-behaviour-bspline.c: Implement the - ClutterScriptableIface to parse the custom "knots" property. - -2007-10-25 Emmanuele Bassi - - * tests/test-script.c: - * tests/test-script.json: Rejig the test case and add a - path behaviour to test the knot parsing code. - -2007-10-25 Emmanuele Bassi - - * clutter/cogl/cogl.h: Do not include . - -2007-10-25 Emmanuele Bassi - - * clutter/clutter-behaviour-path.c: Implement the - ClutterScriptableIface to parse the custom "knots" property. - -2007-10-25 Emmanuele Bassi - - * clutter/clutter-texture.c (clutter_texture_set_property): Do - not try to set NULL pixbufs. - -2007-10-25 Emmanuele Bassi - - * clutter/clutter-actor.c: Implement part of the ClutterScriptable - interface, using the ClutterActor API to set and get the name - of an actor. - - (clutter_geometry_copy), (clutter_geometry_free): Use - the slice allocator to avoid fragmentation when setting - properties and emitting signals (that is: when packing - boxed types into GValues). - - (clutter_actor_box_copy), (clutter_actor_box_free), - (clutter_vertex_copy), (clutter_vertex_free): Ditto. - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - (clutter_actor_push_transform_child), - (clutter_actor_pop_transfomr_child): Simple wrappers around - COGL API, which avoid including clutter/cogl.h when writing - container actors outside Clutter. - -2007-10-25 Emmanuele Bassi - - * clutter/Makefile.am: - * clutter/clutter.h: - * clutter/clutter-scriptable.[ch]: Add the ClutterScriptable - interface; by implementing this interface, a class can - override the UI definition parsing and transform complex data - types into GObject properties, or allow custom properties. - - * clutter/clutter-script.c: - * clutter/clutter-script-parser.c: - * clutter/clutter-script-private.h: Rearrange the code and - use the ClutterScriptable interface to parse and build the - custom properties. This cleans up the code and also it makes - it more reliable (the complex type parsing is now done using - the target type and not just the name of the property). - -2007-10-25 Emmanuele Bassi - - * clutter/clutter-json.h: Header for including the JSON - parsing and data types. - - * clutter/json/json-types.h: Add JSON_NODE_VALUE_TYPE() macro. - - * clutter/json/Makefile.am: Install the JSON headers into a - private location. This might change in the future, and might - also cause collisions if you're using JSON-GLib and Clutter - at the same time, so be warned. - -2007-10-22 Emmanuele Bassi - - * clutter/clutter-label.c (clutter_label_request_coords): If - we get a size requisition, and we have ellipsization active, - check if we are getting less space than what the layout needs - and recompute the width. - -2007-10-22 Emmanuele Bassi - - * clutter/clutter-color.c (clutter_color_to_string): Change - the print format to "%02x%02x%02x%02x" because we use guint8 - for each component, not guint16. - -2007-10-19 Emmanuele Bassi - - * clutter/clutter-entry.c (clutter_entry_paint): Fixed off by - one error. (#566, Gwenole Beauchesne) - -2007-10-18 Øyvind Kolås - - * clutter/clutter-timeline.c: (clutter_timeline_set_duration): - rearranged arithemetic to allow specifying duration with sub second - precision (also enables durations smaller than one second). - -2007-10-18 Emmanuele Bassi - - * clutter/clutter-script-private.h: - * clutter/clutter-script.h: - * clutter/clutter-script.c: Allow id-less objects: as long - as they have a "type" member, a unique id will be provided. - - (json_object_end): Add merge id to the object information - structure. - - (apply_behaviours), (add_children): Keep the unresolved - objects around. - - (construct_stage), (clutter_script_construct_object): If an - object has unresolved children or behaviours try resolving - them when we ask for it. - - (json_parse_end), (clutter_script_ensure_objects): Ensure - that the objects are fully constructed as best as we can when - finished parsing. - - (object_info_free), (remove_by_merge_id): - (clutter_script_unmerge_objects): Remove objects under the - same merge id returned by the loading functions. (Fixes - bug #558) - - * test/test-script.c: - * test/test-script.json: Test unresolved merging and unmerging - in ClutterScript. - -2007-10-18 Matthew Allum - - * clutter/clutter-score.c: - * clutter/clutter-score.h: - * tests/test-score.c: - Implement more ClutterScore functionality. - -2007-10-17 Emmanuele Bassi - - * clutter/clutter-actor.c: - (clutter_actor_set_property), (clutter_actor_get_property), - (clutter_actor_class_init): Add the :reactive property, to - control reactiveness using the UI definition files. - - (clutter_actor_reparent): Do not assume the parent is a - ClutterContainer, and call the container API only if needed. - - (clutter_actor_destroy): Remove from the parent if needed, - just like the documentation says. - -2007-10-16 Øyvind Kolås - - * clutter/pango/pangoclutter-render.c: (tc_get): Provide for blank - rows/columns of pixels between adjecant glyphs in the texture cache to - avoid bilinear interpolation spillage at edges of glyphs. - -2007-10-16 Øyvind Kolås - - * clutter/clutter-main.c: (clutter_do_event): allow motion events - only delivered to stage to be caught in the capture phase as well - as the bubbling phase. - -2007-10-16 Emmanuele Bassi - - * clutter/json/json-object.c: Automatically transform every - delimiter into an underscore. - - * clutter/clutter-script.c: Implement the "parent_texture" - property translation for ClutterCloneTextures, using the - passed id of the parent texture. - -2007-10-16 Emmanuele Bassi - - * clutter/clutter-timeline.[ch]: Added ClutterTimeline:duration, - a property for setting the duration of a timeline in milliseconds. - The property comes with accessors and a new constructor. The - frame rate used is the default value. - - * clutter/clutter-private.h: - * clutter/clutter-main.[ch]: Add clutter_get_default_frame_rate() - and clutter_set_default_frame_rate(); these two functions control - the default frame rate to be used when creating timelines. Currently - is set to 60 frames-per-second. - -2007-10-16 Tomas Frydrych - - * build/msvc_2k5: - Added MSVC project files. - -2007-10-16 Emmanuele bassi - - * clutter/clutter-color.c: Copy the alpha when shading. - -2007-10-16 Tomas Frydrych - - * clutter.symbols: - Added a bunch of missing symbols. - - * clutter/clutter-script.c: - * json/json-node.c: - Use g_slice_new0 instead of g_slice_new to avoid passing - garbage to functions. - - * tests/test-threads.c: - Replaced non-portable sleep() with g_usleep(). - -2007-10-15 Tomas Frydrych - - * clutter/cogl/gl/cogl-defines.h: - * clutter/cogl/gl/cogl.c: - Fixup GL include for windows. - -2007-10-15 Matthew Allum - - * clutter/clutter-actor.c: - More events documentation. - - * clutter/clutter-event.c: - * clutter/clutter-event.h: - Add synthetic flag and make put_event use it - (via modded patch from pippin) - - * clutter/clutter-main.c: (clutter_do_event): - dont use put event anymore when pushing enter/leave events. - -2007-10-15 Emmanuele Bassi - - * clutter/pango/Makefile.am: Compile with the debug flags, if - set. - -2007-10-12 Emmanuele Bassi - - * clutter.symbols: Remove non-public symbols. - -2007-10-12 Tomas Frydrych - - * clutter.symbols: - A list of public symbols, one per line; semi-autogenerated, so - might not be complete -- PLEASE when adding new public APIs, add - the function name to this file. - -2007-10-12 Emmanuele Bassi - - * clutter/clutter-actor.c: Add a :depth property, so we can - set the initial depth of an actor inside the UI definition - files. - -2007-10-12 Tomas Frydrych - - * tests/test-actors.c: - When using MSVC, define _USE_MATH_DEFINES before including - math.h, otherwise constants like M_PI will not be defined. - -2007-10-12 Emmanuele Bassi - - * clutter/clutter-script.c (construct_timline), - (parse_member_to_property): Transfer ownership of the - implicit timelines to the behaviour, so that they get - unreferenced when the behaviour is destroyed. - - (parse_member_to_property): Reverse the list of children - and behaviours. - -2007-10-12 Tomas Frydrych - - Portability fixes: - - * clutter/clutter-private.h: - Bracket #include "unistd.h" with #ifdef HAVE_UNISTD_H - - * clutter/clutter-fixed.c: - Use "", not <> for inclusion of local files. - - (clutter_sqrtx): forward declare local variables. - - * clutter/clutter-debug.h: - Added non-gcc (c99) implementation of variadic debug macros for - when not compiling with gcc. - - * clutter/pango/pangoclutter-render.c: - Fixed some strange uses of CLUTTER_NOTE() + stripped trailing - whitespace. - -2007-10-12 Tomas Frydrych - - * clutter/clutter-actor.c: - * clutter/clutter-backend.c: - * clutter/clutter-behaviour-depth.c: - * clutter/clutter-box.c: - * clutter/clutter-clone-texture.c: - * clutter/clutter-container.c: - * clutter/clutter-entry.c: - * clutter/clutter-feature.c: - * clutter/clutter-fixed.c: - * clutter/clutter-group.c: - * clutter/clutter-hbox.c: - * clutter/clutter-label.c: - * clutter/clutter-layout.c: - * clutter/clutter-media.c: - * clutter/clutter-rectangle.c: - * clutter/clutter-score.c: - * clutter/clutter-script.c: - * clutter/clutter-stage.c: - * clutter/clutter-texture.c: - * clutter/clutter-timeline.c: - * clutter/clutter-timeout-pool.c: - * clutter/clutter-vbox.c: - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/cogl.c: - * clutter/eglnative/clutter-backend-egl.c: - * clutter/eglnative/clutter-event-egl.c: - * clutter/eglnative/clutter-stage-egl.c: - * clutter/eglx/clutter-backend-egl.c: - * clutter/eglx/clutter-event-egl.c: - * clutter/eglx/clutter-stage-egl.c: - * clutter/glx/clutter-event-glx.c: - * clutter/json/json-array.c: - * clutter/json/json-generator.c: - * clutter/json/json-node.c: - * clutter/json/json-object.c: - * clutter/json/json-parser.c: - * clutter/sdl/clutter-backend-sdl.c: - * clutter/sdl/clutter-event-sdl.c: - * clutter/sdl/clutter-stage-sdl.c: - - Fixedup config.h inclusion (must always be bracketed with #ifdef - HAVE_CONFIG_H). - -2007-10-11 Tomas Frydrych - - * clutter/clutter-entry.c: - Avoid using C++ reserverd words to name variables. - -2007-10-11 Øyvind Kolås - - Improve the quality of text when the scale it is shown at screen is - smaller than the original, seems to work well down to about a scale - of 50%. - - * clutter/pango/pangoclutter-fontmap.c: - (pango_clutter_font_map_default_substitute): turn off hinting. - * clutter/pango/pangoclutter-render.c: request linear filtering - instead of nearest neighbour when scaling down. - * tests/test-text.c: replaced test with a a test that renders a sample - grid with various pixel sizes and scales for visual inspection of - text rendering quality. - -2007-10-10 Emmanuele Bassi - - * clutter/glx/clutter-backend-glx.c: Fix documentation of the - filter function API. - - * clutter/clutter-score.c: - * clutter/clutter-effect.c: - * clutter/clutter-actor.c: Documentation fixes. - - * clutter/clutter-actor.h: Automatically typecast to ClutterActor - when setting/checking flags. - -2007-10-10 Emmanuele Bassi - - * clutter/clutter-actor.c: Beautify the ClutterActor documentation. - -2007-10-10 Emmanuele Bassi - - * clutter/clutter-actor.c: Remove the ::event-after signal: - three event layers to connect to seems a bit overkill. - - (clutter_actor_event): Return FALSE, not TRUE by default, - as g_signal_emit() will change the return value if no - handlers are connected - - * clutter/clutter-stage.c: Emit ::notify when we change - the fullscreen property. - - * clutter/clutter-script.c: Add more documentation for the - definition format and keywords. - - (translate_property): Collapse the G_TYPE_ENUM and G_TYPE_FLAGS - cases into one, to simplify the code. - - * tests/test-script.c: Test enumeration conversion by using - a value different from the default. - -2007-10-10 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * clutter/clutter-event.c: - * clutter/clutter-main.c: - * tests/test-events.c: - Add basic W3 DOM event 'capture' like functionality. - -2007-10-10 Emmanuele Bassi - - * clutter/clutter-script-private.h: - * clutter/clutter-script.c: Parse flags like we parse enums. - -2007-10-10 Emmanuele Bassi - - * clutter/json/json-types.h: - * clutter/json/json-array.c: - * clutter/json/json-object.c: Resync with the upstream copy - of JSON-GLib; add json_object_remove_member() and - json_array_remove_element() and fix the g_hash_table_get_keys() - replacement for GLib 2.12. - - * clutter/clutter-script.c: Clean up the complex properties - parsing code. - -2007-10-10 Emmanuele Bassi - - * clutter/clutter-script.c (json_object_end): Add "type_func" - to the list of attributes we skip. - -2007-10-10 Emmanuele Bassi - - * clutter/json/json-parser.c: Use the commodity JsonNode API - and accept bare values as root nodes. - - * clutter/clutter-script-private.h: - * clutter/clutter-script.c: Unreference the created objects - only if they are top-levels, like ClutterBehaviour and - ClutterTimelines. Actors have floating references, so we - just transfer ownership to their containers, and the stage - is owned by the backend. Add the "type_func" key to the - object definition, so the user can supply its own GType - function if the class name doesn't follow the GObject rules. - Document the ClutterScript public API. - -2007-10-10 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - Add missing enter/leave event signals - - * clutter/clutter-main.c: (clutter_do_event): - Set time in crossing events. - Protect against do_pick() failing. - -2007-10-09 Emmanuele Bassi - - * clutter/clutter-script.c (resolve_alpha_func): Fix the - ClutterAlphaFunc resolution function. - -2007-10-09 Emmanuele Bassi - - * tests/Makefile.am: - * tests/test-script.c: - * tests/test-script.json: Move part of the UI definition into - its own file and exercise clutter_script_load_from_file(). - -2007-10-09 Emmanuele Bassi - - * clutter/clutter-script.c (clutter_script_get_object): Construct - the requested object if it hasn't been already. This allows - referencing objects within the same snippet. - - * tests/test-script.c: Declare a timeline and use it inside - multiple behaviours; apply multiple behaviours to various - actors, then retrieve the timeline to start it when the test - runs. - -2007-10-09 Emmanuele Bassi - - * clutter/clutter-script-private.h: - * clutter/clutter-script.c: Allow applying behaviours directly - inside the UI definition data. - - * tests/test-script.c: Test the "behaviours" member. - -2007-10-09 Rob Bradford - - * clutter/eglnative/clutter-backend-egl.c: - (clutter_backend_egl_dispose): - Call eglTerminate() on the display when the backend is disposed of. - - * clutter/eglnative/clutter-stage-egl.c: - (clutter_stage_egl_realize): - Don't use the createNativeWindow() call, it's not generic EGL. - -2007-10-09 Emmanuele Bassi - - * clutter/clutter-script-private.h: - * clutter/clutter-script.h: - * clutter/clutter-script.c: Add licensing information to - the newly added files. - - * clutter/clutter-script.c: Support creating behaviours with - ClutterScript. ClutterAlpha objects are implicit, but - timelines can be both explicit objects using their id or - implicit objects. Make the property resolution and translation - more robust. Support the pixbuf property. - - * tests/test-script.c: Test the newly added features. - - * docs/reference/clutter-docs.sgml: - * docs/reference/clutter-sections.txt: Add ClutterScript. - -2007-10-09 Emmanuele Bassi - - * clutter/clutter-fixed.h: Add deprecation guards around - CLUTTER_FIXED_INT(). - -2007-10-08 Emmanuele Bassi - - * clutter/clutter-script.c: Parse ClutterMargin and ClutterPadding - properties from arrays or integers (assume pixels). - -2007-10-08 Emmanuele Bassi - - * clutter/clutter-script-private.h: - * clutter/clutter-script.c: Allow defining childrens for every - container actor inside the UI definition files. - -2007-10-08 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * clutter/clutter-private.h: - * clutter/clutter-main.c: - Add a hash to global clutter context mapping all parented actor - id's to actors. - Add clutter_get_actor_by_id() call. - Convert picking machinery to use above. - (performance/simpler composite actor creation) - - * clutter/clutter-stage.c: (clutter_stage_fullscreen), - (clutter_stage_unfullscreen), (clutter_stage_event): - Only set the fullscreen property on stage state fullscreen event(#545) - Experimental as could be painful to implement on non X backends. - -2007-10-08 Emmanuele Bassi - - * clutter/clutter-script.c (json_parse_end): - * clutter/json/json-object.c (json_object_get_members): Replace - the GLib 2.14 API with the equivalent code for GLib < 2.14. - - * configure.ac: Revert the dependency bump. - -2007-10-08 Emmanuele Bassi - - Initial implementation of the UI definition files. (#424) - - * clutter/json/Makefile.am: - * clutter/json/*.[ch]: In-tree copy of JSON-GLib, a GLib-based - JSON parser/generator library. We use it in-tree because we might - need to change the API. Ideally, we'd depend on it. - - * clutter/clutter.h: - * clutter/clutter-script-private.h: - * clutter/clutter-script.[ch]: ClutterScript, the scenegraph - generator class. It parses JSON streams in form of buffers and - files and builds the scene. - - * clutter/clutter-debug.h: - * clutter/clutter-main.c: Add a "script" debug flag - - * clutter/Makefile.am: Build glue. - - * tests/Makefile.am: - * tests/test-script.c: Add a test case for the ClutterScript. - - * configure.ac: Depend on GLib 2.14, so we can use the - g_hash_table_get_key() and g_hash_table_get_values() functions - for the time being; we can probably reimplement those, but we - are going to need 2.14 anyway if we are going to implement a - list model using GSequence. - -2007-10-08 Emmanuele Bassi - - * tests/test-behave.c: Use the right return type for the - event callbacks. - -2007-10-03 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-event.c: - * clutter/clutter-event.h: - * clutter/clutter-main.c: - * clutter/clutter-private.h: - * clutter/eglnative/clutter-event-egl.c: - * clutter/eglx/clutter-event-egl.c: - * clutter/glx/clutter-event-glx.c: - * clutter/sdl/clutter-event-sdl.c: - Remove seperate double/triple click events and replace with - a click_count member. - Move calculating click counts from backend to do_event() - Initial implementation of ENTER/LEAVE events. - - * tests/test-events.c: - Add code to test above. - - * tests/test-behave.c: - Sync with newer API. - - * clutter/clutter-score.c: - Silence a warning. - -2007-10-01 Emmanuele Bassi - - * clutter/clutter-fixed.h: Add CLUTTER_FIXED_TO_INT() and - deprecate CLUTTER_FIXED_INT(), for symmetry with - CLUTTER_FIXED_FROM_INT(). - - * clutter/clutter-alpha.c: - * clutter/clutter-behaviour-depth.c: - * clutter/clutter-behaviour-ellipse.c: - * clutter/clutter-behaviour-path.c: - * clutter/clutter-fixed.h: Use CLUTTER_FIXED_TO_INT(). - -2007-10-01 Emmanuele Bassi - - * clutter/clutter-actor.c (clutter_actor_get_size): Implement - get_size() as a wrapper around clutter_actor_query_coords() - instead of calling g_object_get() twice. - - (clutter_actor_init): Initialise the box in one call. - -2007-10-01 Emmanuele Bassi - - * clutter/clutter-actor.[ch]: Remove the ::event-after signal - class handler, as it's not meant to be overridden by sub-classes. - - (clutter_actor_class_init): - Make every event-related signal return a boolean: return TRUE - in a signal handler to block the emission. The value is accumulated - automatically by the signal API. - - (clutter_actor_event): If ::event returns TRUE, skip to emitting - ::event-after. Return the value accumulated by the signal emission - chain. - - * clutter/clutter-private.h: Rename _clutter_boolean_accumlator(). - - * clutter/clutter-main.c (clutter_do_event): If clutter_actor_event() - returns TRUE then stop the event emission chain from child to parent. - - * clutter/clutter-stage.c (clutter_stage_event): Behave like - clutter_actor_event(). - - (clutter_stage_get_key_focus), - (clutter_stage_set_key_focus): Avoid a nasty circular reference - issue: if the actor passed to set_key_focus is NULL then the stage - has the key focus. - - * tests/test-events.c: Update the events test with the API - changes. - -2007-10-01 Tomas Frydrych - - * clutter/clutter-actor.c: - (clutter_actor_set_scale_with_gravityx): - Use CLUTTER_QMUL for better precission (#532, patch by Gwenole - Beauchesne). - - * clutter/clutter-color.c: - (clutter_color_to_hlsx): - Added missing CLUTTER_INT_TO_FIXED conversion (#544, patch by Neil - Roberts). - -2007-10-01 Neil J. Patel - - Patch by: Tommi Komulainen - - * clutter/clutter-entry.c: (clutter_entry_delete_text): - Fix characters vs. bytes inconsistency (#520). - -2007-09-30 Matthew Allum - - * clutter/clutter-event.h: - Removed unused POINTER_ENTER and POINTER_LEAVE states. (#546) - * clutter/clutter-stage.c: (clutter_stage_fullscreen), - (clutter_stage_unfullscreen): - Only Change fullscreen prop if the backend implements fullscreen - methods. (#545) - -2007-09-28 Øyvind Kolås - - * clutter/clutter-container.[ch]: added - clutter_container_find_child_by_name. - -2007-09-28 Øyvind Kolås - - * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize): - removed unused variable perspective. - * tests/test-events.c: (main): added CLUTTER_STAGE() cast. - * tests/test-threads.c: include unistd.h for sleep(). - -2007-09-28 Øyvind Kolås - - * clutter/clutter-label.c: (clutter_label_ensure_layout): avoid - calling pango_layout_set_text|markup before we've got any text. - -2007-09-27 Matthew Allum - - * tests/test-scale.c: - Fix out of about array addressing (#522, Tommi Komulainen) - -2007-09-27 Matthew Allum - - * clutter/clutter-clone-texture.c: - * clutter/clutter-rectangle.c: - Include "config.h" in all c files (#524, Tommi Komulainen) - -2007-09-27 Matthew Allum - - Merge from stable. - - * clutter/clutter-behaviour-path.c: (path_alpha_to_position) - Fix uninitialized variable (#480, Gwenole Beauchesne) - -2007-09-27 Matthew Allum - - * clutter/clutter-event.c: - * clutter/clutter-event.h: - * clutter/clutter-main.c: - Further event tweaks; - - Ref the event actor source - - Protect against off stage events (button releases) (#511) - - Move more into ClutterEventAny - - Add a click count to button event (as yet unused) - - Minor cleanups - - * clutter/clutter-actor.c: - Make scale x/y a property. - - * clutter/clutter-private.h: - Remove _clutter_actor_apply_modelview* - - * clutter/eglx/clutter-backend-egl.c: - Warning cleanup - - * clutter/eglx/clutter-stage-egl.c: - * clutter/glx/clutter-stage-glx.c: - * clutter/sdl/clutter-stage-sdl.c: - Avoid setting viewport directly, but set sync flag. - - * clutter/pango/pangoclutter-render.c: (draw_glyph): - Minor cleanups. - - * clutter/Makefile.am: - * tests/Makefile.am: - * tests/test-score.c - * clutter/clutter.h: - * clutter/clutter-score.h: - * clutter/clutter-score.c: - Add very initial (broken) ClutterScore implementation. - -2007-09-25 Ross Burton - - Merge from stable. - - * clutter/clutter-group.c: - Optimise sort_z_order. - -2007-09-17 Emmanuele Bassi - - Merge from stable - - * clutter/eglnative/clutter-event-egl.c: - Flag every device click after the first as motion events - instead of button presses. (#505, Shreyas Srinivasan) - -2007-09-10 Matthew Allum - - Port from stable branch. - - * clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch): - Only declare tsevent if we have tslib (#498, Robert Bragg) - -2007-09-06 Emmanuele Bassi - - * clutter/clutter-stage.c: Remove stray include - in ClutterStage: the code requesting it was moved in the backends. - -2007-08-31 Emmanuele Bassi - - * clutter/clutter-rectangle.c: Fix the border drawing: do not - overdraw the rectangle on the border and fix the check for - different border colour. (#488, Neil Roberts) - -2007-08-29 Matthew Allum - - * clutter/clutter-effect.c: (clutter_effect_template_set_property): - Add missing break statement. Whoops. - -2007-08-29 Matthew Allum - - * clutter/clutter-main.c: (_clutter_do_pick): - Call glFinish before reading pixels - * clutter/eglx/clutter-stage-egl.c: (clutter_stage_egl_realize): - Add missing read surface in making context current. - Above fixes via Kate Alhola. - - * clutter/glx/clutter-glx.h: - Add missing filter funcs so there actually exported - -2007-08-24 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-event.h: - * clutter/clutter-main.c: - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-backend-glx.h: - * clutter/glx/clutter-event-glx.c: - * clutter/glx/clutter-stage-glx.c: - * clutter/glx/clutter-stage-glx.h: - Add initial support for stage state events. - Fix fullscreening for an already mapped stage. - - * tests/test-events.c: - Print out info from the above. Blue button now toggles - fullscreen. - - * clutter/clutter-effect.c: - * clutter/clutter-effect.h: - Add a setting for templates to ref or clone underlying - timelines. (As to improve sync issues like those in foofone) - - * tests/test-timeline.c: - Also add completed signals. - - * clutter/cogl/gles/cogl.c: (cogl_texture_image_2d): - * configure.ac: - Forward port from stable branch. RGB Image fixes gles - and check for lower case libgles_cm. - - -2007-08-24 Tomas Frydrych - - * clutter/clutter-actor.c: - (_clutter_actor_apply_modelview_transform): - - Fixed rotation around x axis (bug 486). - -2007-08-23 Emmanuele Bassi - - * clutter/clutter-private.h: - * clutter/clutter-event.c: Revert the event queue ordering - commit. - - * clutter/eglx/clutter-event-egl.c: - * clutter/glx/clutter-event-glx.c: - * clutter/sdl/clutter-event-sdl.c: Update backends. - -2007-08-22 Tomas Frydrych - - * clutter/clutter-behaviour-rotate.c: - * clutter/clutter-behaviour-ellipse.c: - - Fixed CCW rotation in rotate behaviour (bug 483); fixed overall - path length calculation for angles > 360 in rotate and ellipse. - -2007-08-22 Emmanuele Bassi - - * clutter/clutter-main.c (clutter_threads_dispatch_free): Remove - the main threads locking calls: the main loop might remove the - source while dispatching it, so whether or not we are already - holding the lock is unpredictable for the library. Leave a comment - with the relevant bug number in GNOME's Bugzilla and wait for a - fix in GLib. - -2007-08-21 Emmanuele Bassi - - * clutter/clutter-event.c: Correctly initialise the state - variables used to detect multiple clicks. - - (clutter_event_get_coords): Return the coordinates for - CLUTTER_3BUTTON_PRESS events. - - (clutter_events_pending): Check from the tail of the queue backward, - like we do in clutter_event_get() and clutter_event_peek(). - -2007-08-21 Emmanuele Bassi - - Preserve the ordering of the events in the queue when sythesising - new events in the event translation sequence. (#481) - - * clutter/clutter-event.c: - * clutter/clutter-private.h: Allow flagging new events on the - events queue without breaking ClutterEvent using a masked type. - - (clutter_event_get), (clutter_event_put), - (clutter_event_pending): Ignore events with the CLUTTER_EVENT_PENDING - flag set when walking the events queue. - - * clutter/eglx/clutter-event-egl.c: - * clutter/glx/clutter-event-glx.c: - * clutter/sdl/clutter-event-sdl.c: Push the new events straight - on the queue, with the CLUTTER_EVENT_PENDING flag set; remove the - flag if the event translation was succesful, or remove the event - altogether. - -2007-08-21 Emmanuele Bassi - - * clutter/clutter-stage.c: Add missing documentation for the - ClutterStage properties. - -2007-08-21 Tomas Frydrych - - * clutter/clutter-fixed.c: - (clutter_sqrti): - - Fixes for 64-bit platforms; use of SSE builtin when available - (bugs 478, 479, patches by Gwenole Beauchesne). - -2007-08-20 Emmanuele Bassi - - * clutter/Makefile.am: - * clutter/clutter-enum-types.h.in: - * clutter/clutter-enum-types.c.in: Use template files for - glib-mkenums; this makes the Makefile template a bit more - clean and the enum types generation more customisable (e.g. - when GLib 2.14 has been released, we can use g_once_init_enter() - and g_once_init_leave() to have thread-safe GType functions - for the enum types as well). - -2007-08-20 Emmanuele Bassi - - * clutter/clutter-version.h.in: Fix CLUTTER_CHECK_VERSION() - macro to accept micro versions. (#477, Neil Roberts) - -2007-08-19 Emmanuele Bassi - - Various timeline related changes. - - * clutter/clutter-timeout-pool.c: Use g_list_insert_sorted() to - fix a timeout pool reversal happening with our homegrown - sorted insertion function. (see #470) - - * tests/Makefile.am: - * tests/test-timeline.c: Add a ClutterTimeline test suite, for - finding regressions in the behaviour of the timelines. (#470, - Rob Bradford) - - * clutter/clutter-main.c (clutter_do_event): Use an EVENT note, - not a SCHEDULER one; SCHEDULER is for timelines and idle sources - only. - - * clutter/clutter-version.h.in: Protect the bare numbers of - the version components. - - * clutter/clutter-effect.c: Do not unref the ClutterAlpha, as - the ownership is already of the behaviour used by the effect - closure. - - * clutter/clutter-timeline.c: Emit the ::new-frame signal only - if the timeline is still active - - Always advance at least of one frame. (#471, Rob Bradford) - - Do not rewind the timeline if the user paused it in the ::new-frame - signal handler: either the user has already done it with - clutter_timeline_stop() or it's not what he's expecting if he - called clutter_timeline_pause(). (#372, Johan Bilien) - - If we skipped the last frame before emitting the ::complete - signal, emit ::new-frame with the last frame. - - Do not call clutter_timeline_stop() at the end of a non-looping - timeline, as it emits the ::pause signal as well. Also, rewind the - timeline *after* emitting ::complete, so that calling - clutter_timeline_get_current_frame() in a signal handler still - works. - -2007-08-19 Matthew Allum - - * clutter/eglx/clutter-event-egl.c: (clutter_event_dispatch): - Fix clutter_thread typo (Kate Alhola) - -2007-08-18 Emmanuele Bassi - - * clutter/clutter-effect.c: - * clutter/clutter-main.c: Update the Since: tag for the - backported API. - - * clutter/clutter-behaviour-rotate.c: Fix a typo in the get_center() - method. (#468, Neil Roberts) - - Freeze and thaw the notification queue when changing multiple - properties in the same method. Fix some coding style issues. - -2007-08-15 Emmanuele Bassi - - * clutter/clutter-actor.c: Add checks for the "reactive" flag - accessors. - -2007-08-15 Emmanuele Bassi - - * clutter/clutter-effect.[ch]: Add clutter_effect_depth(), a - simple wrapper around ClutterBehaviourDepth. (#464, Ali Sabil) - -2007-08-15 Emmanuele Bassi - - * clutter/clutter-alpha.c (clutter_smoothstep_inc): Use the - correct type for parameters, to avoid overflow (Ali Sabil). - - * clutter/clutter-behaviour-opacity.c: Use the right format - when printing the unsigned alpha value and opacity to the - debug output. - -2007-08-14 Emmanuele Bassi - - * clutter/clutter-container.[ch]: - * clutter/clutter-actor.c: - * clutter/clutter-group.c: Rename clutter_container_raise() to - clutter_container_raise_child(), and clutter_container_lower() - to clutter_container_lower_child() to avoid clashing with - ClutterActor raise() and lower() respectively. - -2007-08-13 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * clutter/clutter-event.c: - * clutter/clutter-event.h: - * clutter/clutter-main.c: - * clutter/clutter-main.h: - * clutter/clutter-private.h: - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - * clutter/clutter-types.h: - Initial implementation of actors emmitting event signals (423); - - Actors set_reactive() to receive mouse events. - (call clutter_enable_motion_events() for per action motion events) - - clutter_stage_set_key_focus () to direct key events. - - Events bubble up to parents (ending at stage) - (original source identified by clutter_event_get_source()) - TODO: - - enter/leave notifys for actors. - - stage specific events - fullscreen - - grabs - - * tests/test-events.c: - Extend a little to use new API - - * clutter/cogl/gl/cogl.c: - * clutter/glx/clutter-backend-glx.c: - Move get_proc_address into cogl and out of backend. - (shaders will need it) - - * clutter/clutter-group.c: (clutter_group_real_lower): - Fix a minor compile warning. - - * TODO: - Sync up. - -2007-08-13 Emmanuele Bassi - - * clutter/clutter-container.[ch]: Add find_child_by_id(), - raise(), lower() and sort_depth_order() virtual functions to - ClutterContainer. - - * clutter/clutter-group.[ch]: Deprecate the redundant calls - from ClutterGroup, and make ClutterGroup implement them as part - of the ClutterContainer interface implementation. - - * clutter/clutter-box.c: Implement the newly added ClutterContainer - methods; now clutter_stage_get_actor_at_pos() works with boxes - as well as groups. - - * clutter/clutter-stage.c: - * clutter/clutter-actor.c: Replace calls to ClutterGroup functions - with ClutterContainer ones. - -2007-08-12 Emmanuele Bassi - - * clutter/clutter-timeout-pool.c: Fix removing and adding timeouts - to the timeout pool during a dispatch of a timeout source already - inside the pool. (#456, based on a patch by Neil Roberts) - - (clutter_timeout_dispatch), (clutter_timeout_pool_dispatch): Hold - the main Clutter lock in the pool dispatch function, instead of - the per-timeout dispatch; this guarantees that the ref+unref of - the single timeouts are done under the main lock. - -2007-08-12 Matthew Allum - - * clutter/clutter-texture.c: (texture_upload_data): - Align texture data correctly for edge tiles. - (#422 - Neil Roberts) - -2007-08-11 Matthew Allum - - * clutter/clutter-texture.c: - Fix typo in clutter_texture_get_pixbuf (#458, Neil Roberts). - Use take_object when getting pixbuf prop to avoid ref leak. (Neil - Roberts) - -2007-08-09 Emmanuele Bassi - - * clutter/clutter-box.c: Rename a variable to fix a compiler - warning. - -2007-08-08 Emmanuele Bassi - - * clutter/clutter-behaviour-ellipse: - (clutter_behaviour_ellipse_get_tiltx): Remove useless - "Return" in the API documentation. - -2007-08-08 Emmanuele Bassi - - * clutter/clutter-timeout-pool.c: Fix sorting of the pool - when inserting and removing timeout sources. (#449, Neil - Roberts) - -2007-08-08 Emmanuele Bassi - - * clutter/clutter-main.c (clutter_get_timestamp): Remove - the microseconds remainder, which is mostly useless. (#447) - -2007-08-08 Emmanuele Bassi - - * clutter/clutter-main.c (clutter_get_timestamp): Return the - correct number of microseconds (#447, Neil Roberts) - -2007-08-08 Emmanuele Bassi - - Merge the clutter.git/threading branch. - - * clutter/clutter-main.c: - * clutter/clutter-main.h: - * clutter/clutter-private.h: Add threading locking and unlocking - functions, to mark a critical section and access the Clutter API - from differen threads. Add an initialisation function and a function - to override the default lock aquisition and release functions, for - bindings and application-specific locking handling. Add MT-safe - versions of g_idle_add() and g_timeout_add() which will call the - functions under the main Clutter lock and without races. The - Clutter thread-safe implementation is basically the same used by - GDK, so the same caveats apply. - - * clutter/clutter-actor.c: - * clutter/clutter-timeline.c: - * clutter/clutter-timeout-pool.c: Use the new threading API when - invoking idle and timeouts. - - * clutter/eglnative/clutter-event-egl.c: - * clutter/eglx/clutter-event-egl.c: - * clutter/glx/clutter-event-glx.c: - * clutter/sdl/clutter-event-sdl.c: Acquire and release the main - Clutter lock when preparing, checking and dispatching the events - on the queue in every backend. - - * tests/Makefile.am: - * tests/test-threads.c: Add a test case, showing how to use the - threading API and write thread-safe Clutter applications. - -2007-08-08 Emmanuele Bassi - - * configure.ac: Bump up to 0.5.0 and start the new development - branch. - -2007-08-07 Emmanuele Bassi - - * configure.ac: Bump up to 0.4.0. - -2007-08-07 Emmanuele Bassi - - * clutter/clutter-entry.c: - * clutter/clutter-fixed.c: - * clutter/pango/pangoclutter.h: Small fixes for passing the - distcheck phase with extra-strict compiler flags. - -2007-08-07 Emmanuele Bassi - - * clutter/clutter-actor.h: - * clutter/clutter-alpha.h: - * clutter/clutter-behaviour-ellipse.[ch]: - * clutter/clutter-behaviour-path.h: - * clutter/clutter-behaviour-rotate.c: - * clutter/clutter-behaviour.h: - * clutter/clutter-box.h: - * clutter/clutter-color.h: - * clutter/clutter-container.h: - * clutter/clutter-effect.h: - * clutter/clutter-entry.h: - * clutter/clutter-fixed.h: - * clutter/clutter-layout.h: - * clutter/clutter-main.h: - * clutter/clutter-stage.h: - * clutter/clutter-texture.h: - * clutter/clutter-units.h: - * clutter/clutter-version.h.in: - * clutter/glx/clutter-glx.h: Documentation additions and - various fixes. - -2007-08-07 Matthew Allum - - * clutter/clutter-behaviour-ellipse.c: - Add a documentation note regarding ellipse setting - the applied actors position. - -2007-08-07 Matthew Allum - - * NEWS: - * README: - More updates ready for 0.4.0 - -2007-08-07 Matthew Allum - - * clutter/clutter-fixed.c: - * clutter/clutter-fixed.h: - Add documentation. - - * clutter/cogl/gl/cogl.c: (cogl_perspective): - Remove CFX_* shortened macros - -2007-08-06 Emmanuele Bassi - - * clutter/clutter-main.[ch]: Remove clutter_threads_enter() - and clutter_threads_leave(); both are no-ops and they just - confuse things. The thread-awareness in Clutter is planned - for 0.4.1/0.5.0. - - * README: - * NEWS: Update. - -2007-08-06 Emmanuele Bassi - - * clutter/clutter-box.[ch]: Implement margin, color and default - padding for ClutterBox. Provide API to pack a child by specifying - every packing detail or just pack with the defaults. ClutterBox - works like the HTML boxing model, API-wise: a box with margins - and padding around each child. Needs work, still. - - * clutter/clutter-hbox.c: - * clutter/clutter-vbox.c: Update with the new API and new attributes. - - * clutter/clutter-types.h: Add ClutterMargin and ClutterPadding. - - * test/test-boxes.c: Exercise the new API. - -2007-08-06 Matthew Allum - - * clutter/clutter-texture.c: - Correct set pixbuf property as GDK_TYPE_PIXBUF - (fix via Neil Roberts) - -2007-08-06 Matthew Allum - - * clutter/clutter-behaviour-depth.c: - Modify to work like all other behvaiours in not forcing - increasing order in behaviour 'limits'. (#436) - Rename limit min/max props to start/end. - - * tests/test-depth.c: - Simplify test-case to work with above change and - without multiple ramps - - * clutter/clutter-behaviour-rotate.c: - Handle CW rotation when end > start and similar for CCW just - like ellipse behaviour. - -2007-08-05 Matthew Allum - - * README: - * clutter/clutter-actor.c: - Document show/hide_all behaviour correctly. - -2007-08-05 Emmanuele Bassi - - * clutter/clutter-behaviour-depth.c: Fix typo in the description. - -2007-08-04 Emmanuele Bassi - - * clutter/clutter-behaviour-depth.c: Clarify the depth behaviour - even more in the description used by the API reference. - -2007-08-04 Emmanuele Bassi - - * clutter/clutter-behaviour-depth.[ch]: Clarify that what drives - the movement along the Z axis is the ClutterAlpha object (we - don't have the luxury of a rollover like the opacity does); - so, if you want to go from 0 to -100 you have to use a - decreasing function, just as well if you want to go from 100 - to 0. Using a min-depth of 100 and a max-depth of 0 and an - increasing function is undefined behaviour. - - * tests/Makefile.am: - * tests/test-depth.c: Add a test case for the depth behaviour. - -2007-08-04 Emmanuele Bassi - - * clutter/clutter-actor.c (clutter_actor_set_opacity): Queue - a redraw when setting the opacity of an actor. - -2007-08-03 Emmanuele Bassi - - * clutter/clutter-behaviour-ellipse.c: - (clutter_behaviour_ellipse_get_angle_tilt): Avoid recursion - by fixing a typo. - - (clutter_behaviour_ellipse_get_angle_begin), - (clutter_behaviour_ellipse_get_angle_end): Correct the angles - here too. - -2007-08-03 Emmanuele Bassi - - * clutter/clutter-behaviour-ellipse.c: - (clutter_behaviour_ellipse_get_property): Do not forget to - correct the angles when returning them. - -2007-08-03 Tomas Frydrych - - * clutter/clutter-behaviour-ellipse.c: - * clutter/clutter-behaviour-ellipse.h: - (clutter_behaviour_ellipse_new): - (clutter_behaviour_ellipse_newx): - - Added direction parameter; made behaviour to respect direction - parameter; unclumped angle_begin and angle_end values. - -2007-08-02 Matthew Allum - - * NEWS: - * README: - Initial updating ready for release. - -2007-08-02 Emmanuele Bassi - - * clutter/eglnative/clutter-backend-egl.c: - * clutter/eglx/clutter-backend-egl.c: - * clutter/sdl/clutter-backend-sdl.c: Set the default resolution - as 96.0 dpi for every backend (we already were under this - assumption anyway, and this makes it easier to change this - setting per-backend). - - * clutter/pango/pangoclutter-fontmap.c: - * clutter/pango/pangoclutter.h: Allow setting the resolution - for the PangoClutterFontMap object and provide the implementation - for the PangoFcFontMap::get_resolution() virtual function. This - allows to set the resolution of the PangoContext when retrieving - it. - - * clutter/clutter-label.c (clutter_label_init): Set the - resolution of the font map with the one the backend gives us. - - * clutter/clutter-entry.c (clutter_entry_init): Ditto. - -2007-08-02 Emmanuele Bassi - - * clutter/clutter-color.c (clutter_color_subtract): Invert the - operands and match what the function says it does. (#435) - -2007-08-01 Matthew Allum - - * clutter/clutter-color.c: (clutter_color_from_pixel): - Fix typo in alpha channel extraction (#434) - -2007-08-01 Emmanuele Bassi - - * clutter/clutter-actor.[ch]: Add floating-point variant of the - clutter_actor_get_r[xyz]angx() functions. - -2007-07-31 Emmanuele Bassi - - * clutter/clutter-stage.[ch]: Fix clutter_stage_set_user_resizable() - name, and add a getter for the property. - - * clutter/glx/clutter-stage-glx.c: Use the accessor, not - g_object_get() to retrieve the value of the resizable property. - -2007-07-31 Emmanuele Bassi - - * clutter/clutter-backend.[ch]: Add clutter_backend_set_resolution() - and clutter_backend_get_resolution(); backends should use the former - to set the resolution of the display when initialising, while actors - should use the latter when sizing themselves depending on the - resolution or the font size. - - * clutter/glx/clutter-backend-glx.c: Set the resolution as 96 dpi - as a default and query the X server when opening the display. - - * clutter/clutter-entry.c: Drop the hardcoded dpi value and use - clutter_backend_get_resolution() to compute the default size. - -2007-07-31 Emmanuele Bassi - - * clutter/clutter-entry.c (clutter_entry_init): Set the default - size of the entry based on the size of the default font. (#414). - -2007-07-31 Emmanuele Bassi - - * clutter/sdl/clutter-backend-sdl.c: Fix a typo in - clutter_backend_sdl_get_features() (#426, Pan Bohui) - -2007-07-30 Matthew Allum - - * AUTHORS: - * HACKING: - * README: - Various updates and improvements. - - * configure.ac: - Remove --disable-fast-fp-conversions - -2007-07-30 Tomas Frydrych - - * clutter/clutter-behaviour-ellipse: - (clutter_behaviour_ellipse_advance): - - Fixed invalid assumption about z cooordiance in calculation of - tilt in y axis. - -2007-07-30 Tomas Frydrych - - * clutter/clutter-actor.c: - - Fixed incorrect order of modelview matrix stack in calculating - actor vertices. - -2007-07-30 Matthew Allum - - * clutter/clutter-backend.h: - Remove #if 0's old backend_api - (generating uneeded documentation) - -2007-07-30 Matthew Allum - - * clutter/clutter-texture.c: - Fix re-relisation for large tiled textures. - * tests/test-textures.c: (main): - Add a show/hide to trigger above (see #442) - -2007-07-29 Emmanuele Bassi - - * clutter/clutter-types.h: Document ClutterGravity enumeration - and remove the only incomplete symbol of the api reference. Now - we are up to 79% documented symbols. - -2007-07-29 Emmanuele Bassi - - * clutter/clutter-media.c: Document ClutterMedia signals; - replace the implementation of clutter_media_set_filename() with - something a wee bit more robust (and portable) than a sprintf(). - -2007-07-29 Emmanuele Bassi - - * clutter/clutter-behaviour-ellipse.c: Documentation - fixes; kill some indirections; freeze the notification - queue when (potentially) emitting multiple notify - signals. - - * clutter/clutter-alpha.h: Remove the unused macro - CLUTTER_TYPE_SMOOTHSTEP. - -2007-07-28 Emmanuele Bassi - - * clutter/clutter-actor.[ch]: Use GInitiallyUnowned - as the parent structure in the ClutterActor structure - definition; somehow, this has escaped everyone attention - in one year and a half. Luckily, GInitiallyUnowned is - as big as GObject. - - (clutter_actor_get_abs_position_units), - (clutter_actor_get_abs_position): Check parameters. - - * clutter/clutter-texture.h: Unmangle the flags enum - type declaration, so that dumb parsers like h2defs.py - are not fooled. - - * clutter/clutter-behaviour-ellipse.[ch]: - * clutter/clutter-effect.c: Fix some documentation - issues and make gtk-doc happy. - -2007-07-27 Tomas Frydrych - - * clutter/clutter-behaviour-ellipse.h: - * clutter/clutter-behaviour-ellipse.c: - * tests/test-behave.c: - (clutter_behaviour_ellipse_get_angle_tilt): - (clutter_behaviour_ellipse_set_angle_tilt): - - Pruned ClutterBehaviourEllipse api. - -2007-07-27 Tomas Frydrych - - * clutter/clutter-behaviour-ellipse.h: - * clutter/clutter-behaviour-ellipse.c: - (clutter_behaviour_ellipse_set_angle_tilt_x): - (clutter_behaviour_ellipse_set_angle_tilt_xx): - (clutter_behaviour_ellipse_get_angle_tilt_x): - (clutter_behaviour_ellipse_get_angle_tilt_xx): - (clutter_behaviour_ellipse_set_angle_tilt_y): - (clutter_behaviour_ellipse_set_angle_tilt_yx): - (clutter_behaviour_ellipse_get_angle_tilt_y): - (clutter_behaviour_ellipse_get_angle_tilt_yx): - (clutter_behaviour_ellipse_set_angle_tilt_z): - (clutter_behaviour_ellipse_set_angle_tilt_zx): - (clutter_behaviour_ellipse_get_angle_tilt_z): - (clutter_behaviour_ellipse_get_angle_tilt_zx): - (clutter_behaviour_ellipse_set_tilt): - (clutter_behaviour_ellipse_set_tiltx): - (clutter_behaviour_ellipse_get_tilt): - (clutter_behaviour_ellipse_get_tiltx): - - * tests/test-behave.c: - - Allow tilting ClutterBehaviourEllipse in all three axis; affects - any code using the previous tilt api. - - -2007-07-26 Matthew Allum - - * clutter/clutter-feature.h: - Add new stage feature flags and document. - - * clutter/eglnative/clutter-backend-egl.c: - * clutter/eglx/clutter-backend-egl.c: - * clutter/sdl/clutter-backend-sdl.c: - Set new feature flags. - - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-stage-glx.c: - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - Add a 'user_resizeable' setting to the backend and implement - for glx backend. - -2007-07-26 Emmanuele Bassi - - * clutter/clutter-behaviour-ellipse.c: - * clutter/clutter-behaviour.h: - * clutter/clutter-event.c: - * clutter/clutter-texture.h: - * clutter/clutter-types.h: Add missing documentation and fix - parameters names to make gtk-doc happy. - -2007-07-26 Tomas Frydrych - - * clutter/clutter-behaviour-ellipse.h: - * clutter/clutter-behaviour-ellipse.c: - * tests/test-behave.c: - - Removed tilt paramter from ClutterBehaviourEllipse constructors; - Made angles to be relative to 12 o'clock; - Added direction property; - -2007-07-26 Emmanuele Bassi - - * clutter/clutter-types.h: - * clutter/Makefile.am: Add a header for common types, to avoid - inclusion hell. - - * clutter/clutter-actor.h: - * clutter/clutter-behaviour.h: - * clutter/clutter-behaviour-rotate.h: - * clutter/clutter-behaviour-scale.h: Move some boxed types and som - enums to clutter-types.h. - -2007-07-26 Neil J. Patel - - * clutter/clutter-entry.c: (offset_to_bytes), - (clutter_entry_ensure_cursor_position), - (clutter_entry_new_with_text), (clutter_entry_new), - (clutter_entry_insert_unichar), (clutter_entry_delete_chars): - - Fixed utf8 support so it actually works now, for both - inserting and deleting chars. Fixed positioning of cursor for - utf8 chars. Both GString and Pnago need bytes (not - documented!) for string manipulation, so making sure all - values were bytes and not char positions fixed the issue. Set - a default size of 50x50 for the entry, otherwise no chars can - be seen if the size is not set after creation (which confuses - the developer). - -2007-07-26 Emmanuele Bassi - - * clutter/clutter-timeline.c: - Do not accept zero as a value for the num-frames and fps properties - in both the constructor and the setter functions. - -2007-07-26 Emmanuele Bassi - - * clutter/clutter-actor.[ch]: - * clutter/clutter-behaviour-bspline.c: - * clutter/clutter-behaviour.c: - * clutter/clutter-box.[ch]: - * clutter/clutter-clone-texture.c: - * clutter/clutter-entry.c: - * clutter/clutter-group.[ch]: - * clutter/clutter-texture.c: - * clutter/pango/pangoclutter-render.c: - * tests/test-actors.c: - * tests/test-behave.c: - * tests/test-entry.c: - * tests/test-events.c: - * tests/test-project.c: - * tests/test-rotate.c: - * tests/test-scale.c: - * tests/test-text.c: - * tests/test-textures.c: Miscellaneous compiler warning fixes. - -2007-07-26 Emmanuele Bassi - - * configure.ac: - * Makefile.am: Add a configure switch to enable strict - compiler flags, and turn it on when we are doing a distcheck. - -2007-07-25 Matthew Allum - - * Makefile.am: - * HACKING: - Add with initial notes on coding bits and bobs. - - * clutter/clutter-behaviour-scale.c: - Doc fixes. - - * clutter/clutter-event.c: (clutter_event_put): - Doc fixes. - - * clutter/glx/clutter-stage-glx.c: - Disable wm user resizing of stage (At least for now) - Doc fixes. - -2007-07-25 Tomas Frydrych - - * clutter/clutter-fixed.c: - - Fixed endianness issue in fast fp conversions. - -2007-07-25 Tomas Frydrych - - * configure.ac: - * clutter/clutter-fixed.c: - - Added --disable-fast-fp-conversion option. - -2007-07-25 Emmanuele Bassi - - * clutter/clutter-label.[ch]: Ouch, clutter_label_get_alignment() - returns a PangoAlignment, not a boolean. - -2007-07-25 Emmanuele Bassi - - * clutter/clutter-behaviour.h: - * clutter/clutter-behaviour.c: Rename clutter_behaviour_clear() - to clutter_behaviour_remove_all() to avoid method clashes in - bindings. - -2007-07-25 Tomas Frydrych - - * tests/test-rotate.c: - * tests/Makefile.am: - - Added test-rotate. - -2007-07-25 Emmanuele Bassi - - * clutter/clutter-behaviour-bspline.c: Kill off some deep pointer - indirections; use CLUTTER_NOTE() instead of ifdeffed out g_debug(); - add checks in every public entry point; move some initialisations - of private data structures out of the constructor and into the - init function, where they belong. - -2007-07-25 Matthew Allum - - * clutter/clutter-behaviour-rotate.c: - * clutter/clutter-behaviour-rotate.h: - Split 'center' prop into 3 seperate props for each axis. - Use clutter_behaviour_actors_foreach() rather than - clutter_behaviour_get_actors() to avoid copying list. - Call fixed point rotation funcs internally. - - * clutter/clutter-effect.c: - * clutter/clutter-effect.h: - Add new simple rotation based effect funcs. - -2007-07-25 Emmanuele Bassi - - * clutter/clutter.h: Include clutter-behaviour-depth.h - -2007-07-24 Emmanuele Bassi - - * clutter/clutter-behaviour-rotate.[ch]: Add a center property - for the center or rotation; implement the set_bounds() methods. - -2007-07-24 Emmanuele Bassi - - * clutter/eglx/clutter-backend-egl.c: - * clutter/eglnative/clutter-backend-egl.c: - * clutter/sdl/clutter-backend-sdl.c: Destroy the stage in every - backend. - -2007-07-24 Emmanuele Bassi - - * clutter/glx/clutter-backend-glx.c: Destroy the stage, don't - just unref it. - -2007-07-24 Emmanuele Bassi - - * clutter/clutter-main.c: Add debug markers. - -2007-07-24 Emmanuele Bassi - - * clutter/clutter-texture.[ch]: Add a ClutterTextureError - to be returned by the loader functions; use the GObject API - to allocate the private data structure instead of managing it - ourselves; add documentation. - -2007-07-24 Emmanuele Bassi - - * clutter/clutter-actor.c: - * clutter/clutter-box.h: - * clutter/clutter-stage.c: Documentation fixes. - -2007-07-24 Matthew Allum - - * clutter/cogl/gl/cogl-defines.h: - Add CGL_UNSIGNED_INT_8_8_8_8_REV (for big endian machines) - -2007-07-24 Matthew Allum - - * clutter/cogl/gl/cogl-defines.h: - Another GL_TEXTURE_RECTANGLE_ARB related fix (#404) - -2007-07-24 Matthew Allum - - * clutter/clutter-backend.c: - Minor build fixes (#413) - -2007-07-24 Emmanuele Bassi - - * clutter/clutter-effect.h: - * clutter/clutter-effect.c: Add a secondary constructor for - ClutterEffectTemplate, for use of the bindings. - -2007-07-24 Matthew Allum - - * clutter/cogl/gles/cogl.c: (cogl_get_bitmasks): - Fix typo calling glGetIntegerv rather than glGetInteger - -2007-07-24 Matthew Allum - - * clutter/cogl/gl/cogl.c: (cogl_get_features): - learn to use cpp properly. - -2007-07-24 Matthew Allum - - * clutter/clutter-media.c: (clutter_media_base_init): - Remove #if 0! signal - assume causing issues with binding generation. - (#407) - - * clutter/cogl/gl/cogl.c: - Check GL_TEXTURE_RECTANGLE_ARB and GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB - are defined in gl.h (#404) - -2007-07-24 Matthew Allum - - * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize): - Create stage window with correct depth/visual. Via patch from - Robert Bragg (#409). - -2007-07-23 Matthew Allum - - * clutter/clutter-texture.c: (texture_render_to_gl_quad), - (clutter_texture_paint): - Dont be over aggressive in throwing criticals for unrealized - textures. Doesn't make sense for sub classes. (#403) - -2007-07-22 Emmanuele Bassi - - Two small fixes for correctly debugging the deinitialisation - phase of the backend: - - * clutter/glx/clutter-backend-glx.c: Remove the event source - after we unref the main stage. - - * clutter/glx/clutter-stage-glx.c: Add a mark at the end of the - unrealize call (the perl bindings seem to crash before we reach - this point). - -2007-07-22 Emmanuele Bassi - - * clutter/clutter-behaviour-ellipse.c: Remove pointer indirections; - add sanity checks on the public entry points; make all the public - properties floating point (where needed) andconvert them to fixed - point internally. (Partial fix for #389) - -2007-07-22 Emmanuele Bassi - - * clutter/clutter-behaviour.[ch]: Rename ClutterBehaviour::apply - and ClutterBehaviour::remove to ClutterBehaviour::applied and - ClutterBehaviour::removed respectively, and emit them when the - behaviour has been applied (or does no longer apply) to an actor. - - (clutter_behaviour_dispose), (clutter_behaviour_finalize), - (clutter_behaviour_class_init): Move the actor removal to the - ::dispose virtual function, and remove the ::finalize one; - document the missing properties and signals. - - (clutter_behaviour_clear): Add function to clear a behaviour: - every actor will be unreffed and the ClutterBehaviour::removed - signal will be emitted. - -2007-07-21 Matthew Allum - - * clutter/clutter-event.c: - Correct clutter_event_get_state () return type. Fixes #398 - - * clutter/glx/clutter-stage-glx.c: - Disable use XFixes cursor visibility funcs. Appears to have issues - on feisty X Server at least. Fallback should work generally better. - - Fix non offscreen clutter_stage_snapshot to also rotate read pixel - data to correct orientation. - -2007-07-12 Matthew Allum - - * clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch): - Avoid sending too many events which are just pressure changes. - -2007-07-12 Matthew Allum - - * clutter/clutter-actor.c: (clutter_actor_paint): - * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos): - * clutter/cogl/cogl.h: - * clutter/cogl/gl/cogl.c: (cogl_get_viewport): - * clutter/cogl/gles/cogl.c: (cogl_get_viewport): - Hopefully fix clutter_actor_at_pos on !32bpp displays. - Based on patch from Pan Bohui, See; - http://bugzilla.openedhand.com/show_bug.cgi?id=390 - - * TODO: - More misc updates. - -2007-07-11 Emmanuele Bassi - - * clutter/clutter-behaviour-opacity.c: - Don't check direction in opacity. - -2007-07-11 Tomas Frydrych - - * clutter/clutter-fixed.h: - Fixed CLUTTER_ANGLE_ macros. - - * clutter/clutter-behaviour-ellipse.h: - * clutter/clutter-behaviour-ellipse.c: - Implemented "apply" signal closer to position actor on the start - of the elliptic path. - - (clutter_behaviour_ellipse_get_angle_begin): - (clutter_behaviour_ellipse_set_angle_begin): - (clutter_behaviour_ellipse_get_angle_end): - (clutter_behaviour_ellipse_set_angle_end): - (clutter_behaviour_ellipse_get_angle_tilt): - (clutter_behaviour_ellipse_set_angle_tilt): - Renamed with an x suffix; added versions for angles in degrees. - -2007-07-09 Matthew Allum - - * TODO: - Updates. - * clutter/clutter-stage.c: - * clutter/glx/clutter-stage-glx.c: - Fix cursor visibility property. - Force a repaint before mapping to attempt to avoid flicker. - -2007-07-09 Richard Purdie - - * clutter/eglnative/clutter-event-egl.c: - * configure.ac: - Add tslib support to eglnative backend. - -2007-07-09 Richard Purdie - - * clutter/eglnative/clutter-backend-egl.c: - Tweaks to the eglnative backend. - -2007-07-09 Richard Purdie - - * clutter/clutter-backend.c: - Make the backend add_option function optional. - -2007-07-09 Emmanuele Bassi - - * clutter/clutter-behaviour-depth.h: - * clutter/clutter-behaviour-depth.c: - * clutter/Makefile.am: Add ClutterBehaviourDepth, a simple - behaviour controlling the depth of a set of actors. - - * clutter/clutter-behaviour-opacity.c: Always make sure that - the opacity applied to the actors is a positive integer, even - in case where the start and end opacity are reversed; use the - correct cast macros for passing the opacity as a pointer. - -2007-07-06 ====================== 0.3.1 Release ======================== - -2007-07-06 Matthew Allum - - * NEWS: - * configure.ac: - Update for 0.3.1 - -2007-07-06 Matthew Allum - - * clutter/eglx/Makefile.am: - * clutter/eglx/clutter-egl.h: - * clutter/eglx/clutter-event-egl.c: - * clutter/eglx/clutter-stage-egl.c: - Rename clutter-egl.h -> clutter-eglx.h - - * NEWS: - * README: - Add info re EGL split. - -2007-07-06 Matthew Allum - - * clutter/Makefile.am: - * clutter/eglnative/Makefile.am: - * clutter/eglnative/clutter-backend-egl.c: - * clutter/eglnative/clutter-backend-egl.h: - * clutter/eglnative/clutter-egl.h: - * clutter/eglnative/clutter-event-egl.c: - * clutter/eglnative/clutter-stage-egl.c: - * clutter/eglnative/clutter-stage-egl.h: - * clutter/eglx/Makefile.am: - * clutter/eglx/clutter-backend-egl.c: - * clutter/eglx/clutter-egl.h: - * clutter/eglx/clutter-event-egl.c: - * clutter/eglx/clutter-stage-egl.c: - * configure.ac: - Add a new 'native' EGL backend for non X based EGL's - (i.e on framebuffer). - Rename old backend to 'eglx' and namespace public funcs with this. - - * clutter/pango/pangoclutter-private.h: - Add extra checks for expected defines. - -2007-07-06 Matthew Allum - - * NEWS: - * README: - Updates for upcoming 0.3.1 release. - * clutter/egl/Makefile.am: - * clutter/egl/clutter-backend-egl.c: - * clutter/egl/clutter-backend-egl.h: - * clutter/egl/clutter-egl.h: - * clutter/egl/clutter-event-egl.c: - * clutter/egl/clutter-stage-egl.c: - * clutter/egl/clutter-stage-egl.h: - * configure.ac: - Move egl -> eglx - -2007-07-06 Matthew Allum - - * clutter/clutter-box.c: (clutter_box_pick): - Call clutter_box_paint rather than actor paint method avoiding - infinte loop (Fixes test-boxes crasher). - - * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_unrealize): - Trap the X calls to avoid potential X errors. - -2007-07-06 Ross Burton - - * tests/Makefile.am: - Dist redhand.png. - -2007-07-05 Tomas Frydrych - - * cluter/clutter-group.c: - (clutter_group_query_coords:) - Reset box size to zero width and height to report correct size if - the contents of the group shrink. - -2007-07-05 Emmanuele Bassi - - * clutter/clutter-rectangle.c: Fix off-by-border-width bug - in the border creation of a ClutterRectangle. - -2007-07-05 Tomas Frydrych - - * clutter/clutter-fixed.h: - * clutter/clutter-fixed.c: - Added CLUTTER_FLOAT_TO_UINT macro; - (clutter_pow2x): - Fixed sign issue. - -2007-07-04 Emmanuele Bassi - - * clutter/*: Loads of fixes for the API reference. - -2007-07-04 Emmanuele Bassi - - Merge from clutter/work - - * clutter/clutter-alpha.[ch]: Fix the argument names for - the smoothstep alpha functions, for gtk-doc. - - * clutter/clutter-group.c (clutter_group_remove_all): Fix - the iteration on the children list. - -2007-07-04 Emmanuele Bassi - - * clutter/clutter-main.c (clutter_redraw): Move the stage - paint init call from the main redraw function... - - * clutter/clutter-stage.c (clutter_stage_paint): ... to the - ClutterActor::paint() overridden method in ClutterStage. - -2007-07-04 Emmanuele Bassi - - * clutter/clutter.h: - * clutter/Makefile.am: ClutterBackend is marked as public API, - so install the clutter-backend.h header and include it when - including clutter.h. - -2007-07-04 Emmanuele Bassi - - * clutter/clutter-entry.[ch]: Various fixes to ClutterEntry: - fix code style issues; add documentation for the various - properties; add ClutterEntry:entry-padding property, for controlling - the text padding (until we have style properties separated from - the object properties); notify property changes; free resources - in the ::finalize method; rename clutter_entry_add() to - clutter_entry_insert_unichar(), and clutter_entry_remove() to - clutter_entry_delete_chars() - for bindings and for matching the - insert_text() and delete_text() existing methods; add a getter - method for the max-length property. - -2007-07-04 Emmanuele Bassi - - * clutter/clutter-actor.[ch]: Use the right get_type() function - name for ClutterVertex, and add the CLUTTER_TYPE_VERTEX macro. - -2007-07-03 Ross Burton - - * configure.ac: - Check for XFixes 4 and above. - -2007-07-02 Tomas Frydrych - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - * tests/test-project.c: - (clutter_actor_apply_transform_to_point): - Use ClutterVertex for input and output parameters. - -2007-07-01 Emmanuele Bassi - - Merge from clutter.git/work branch - - * clutter/clutter-effect.[ch]: Clean up ClutterEffect; use a - pointer to access the private data structure, instead of doing - a type check every time. Add description for the API reference. - - * docs/reference/clutter-sections.txt: - * clutter/*.[ch]: Add various documentation fixes. - - * clutter/clutter-entry.c: Remove a stray g_print() call. - -2007-06-29 Neil J. Patel - - * clutter/clutter-entry.c: (clutter_entry_handle_key_event), - (clutter_entry_add), (clutter_entry_remove): - Check if unichar == 0, and if so, return, as it will cause a delete in - the GString. - -2007-06-20 ============== 0.3 Release ==================================== - -2007-06-29 Matthew Allum - - * clutter/clutter-texture.c: (texture_upload_data): - Fix a SEGV for GL ES textures. - - * clutter/cogl/gles/cogl.c: (cogl_setup_viewport): - Tweak default z_camera for 60 degrees like GL. - - * clutter/egl/clutter-backend-egl.c:: - * clutter/egl/clutter-stage-egl.c: - Fix edpy usage (thanks to Kaj Gronholm). - -2007-06-29 Tomas Frydrych - - * clutter/clutter-group.c: - (clutter_group_query_coords): - Fixed box calculation. - -2007-06-28 Tomas Frydrych - - * clutter/clutter-group.c: - (clutter_group_raise): - (clutter_group_lower): - Fixed SIGSEGV when attempting to raise / lower an only child. - -2007-06-28 Matthew Allum - - * clutter/cogl/gl/cogl.c: (cogl_setup_viewport): - Improve fixed z_camera value for defualt perspective. - Appears pixel perfect on ATI and Intel at least - -2007-06-28 Tomas Frydrych - - * tests/test-perspective.c: - Moved red dots to be positioned 1px off each corner. - -2007-06-28 Matthew Allum - - * tests/Makefile.am: - * tests/test-perspective.c: - Add simple perspective test - -2007-06-27 Tomas Frydrych - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - * tests/test-project.c: - Renamed clutter_actor_project_point() to - clutter_actor_apply_trasform_to_point() and - clutter_actor_project_vertices() to clutter_actor_get_vertices(). - -2007-06-27 Tomas Frydrych - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - * tests/test-project.c: - (clutter_actor_project_point): - Separated input from output parameters. - -2007-06-27 Matthew Allum - - * Makefile.am: - Dont remove README on make clean - -2007-06-27 Tomas Frydrych - - * clutter/clutter-actor.c: - (_clutter_actor_apply_modelview_transform): - Fixed incorrect order of scaling an rotation that was causing - objects that were both rotated and scaled to change position. - -2007-06-27 Tomas Frydrych - - * clutter/clutter-actor.c: - (clutter_actor_scale_with_gravityx): - Made to work after changes to the behavivour of - clutter_actor_get_absolute_size() for rotated actors. - -2007-06-26 Tomas Frydrych - - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/cogl.c: - (cogl_setup_viewport): - For default perspective angle of 60 degrees, use a hardcoded - z_camera constant that provides minimal artefacts when rendering - text; for other angles we calculate. - -2007-06-26 Tomas Frydrych - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - Added fixed point version of clutter_actor_rotate_*() functions - and accessors for rotation angles. - -2007-06-25 Matthew Allum - - * README: - Update a little more. - * clutter/clutter-effect.c: - Add missing func documentation - * clutter/clutter-rectangle.c: - Fix border drawing. - -2007-06-25 Tomas Frydrych - - * clutter/clutter-fixed.h: - Fixed definition of clutter_cosx() macro. - - * clutter/clutter-stage.c: - * clutter/cogl/cogl.h: - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/cogl.c: - Changed ClutterPerspective.fovy from ClutterAngle to degrees to - improve precission in Z-camera calculations. - -2007-06-22 Matthew Allum - - * README: - * README.in: - * autogen.sh: - * configure.ac: - Move back to regular README naming at least for now. - -2007-06-22 Matthew Allum - - * NEWS: - * README.in: - * TODO: - Update for 0.3 release. - - * clutter/clutter-actor.c: - Minor doc fixups - - * clutter/clutter-texture.c: - Various minor additions for handling non RGBA data. - Fix a typo breaking clutter_texture_get_pixbuf() on tiled textures. - - * tests/test-actors.c: - Disable scaling to avoid drifting (temporary till API is fixed) - -2007-06-21 Emmanuele Bassi - - * clutter/clutter-timeline.c: Allow disabling the timeline pool - by using the CLUTTER_TIMELINE environment variable set to - "no-pool". - -2007-06-19 Emmanuele Bassi - - * README.in: Update release notes. - -2007-06-19 Matthew Allum - - * clutter/clutter-main.c: (clutter_init_with_args), (clutter_init): - Safer checks for setting progname if NULL is passed in init. - -2007-06-19 Emmanuele Bassi - - * autogen.sh: autoreconf needs a README. - -2007-06-19 Matthew Allum - - * TODO: - Sync up a little. - * clutter/clutter-main.c: - Set a default window title based on g_prgname(). - - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - * clutter/egl/clutter-stage-egl.c: - * clutter/glx/clutter-stage-glx.c: - * clutter/sdl/clutter-stage-sdl.c: - Alter draw_to_pixbuf to return a pixbuf - - * configure.ac: - Only full in gdk-pixbuf-xlib as a GLX backend dep. - - * tests/test-entry.c: - Fix a couple of warnings. - -2007-06-19 Emmanuele Bassi - - * Makefile.am: Add README.in to the EXTRA_DIST. - -2007-06-19 Emmanuele Bassi - - * configure.ac: - * README.in: Use a template for the README file, so that - it gets the right version number. - -2007-06-19 Matthew Allum - - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - * clutter/glx/clutter-stage-glx.c: - * clutter/sdl/clutter-stage-sdl.c: - Add window title setting/getting functionality. - - * clutter/clutter-event.c: (clutter_key_event_unicode): - Remove uneeded convert case call. - - * clutter/cogl/gl/cogl.c: (cogl_rectangle) - Use parameters correctly for underlying GL rect call. - - * tests/test-entry.c: - Add a window title. - -2007-06-18 Matthew Allum - - * clutter/sdl/clutter-event-sdl.c: - Seemingly fix SDL Event source. - Add some very basic SDL keysym translation. - (Thanks to Thomas Van Machelen for initial translation code) - - * tests/test-events.c: - Dump some info on keysyms pressed. - -2007-06-16 Emmanuele Bassi - - * clutter/clutter-actor.h: - * clutter/clutter-stage.h: Add 32 padding slots; when we - reach 1.0 it'll be a long road until the following ABI - break. - - * tests/test-behave.c: Don't forget to include headers. - -2007-06-16 Emmanuele Bassi - - * clutter/clutter-container.h: - * clutter/clutter-layout.h: Interfaces are not checked - at compile-time, so there's not need to add padding to - avoid ABI breaks. - -2007-06-16 Emmanuele Bassi - - * configure.ac: Partially revert last commit, and fail - with AC_MSG_ERROR() instead of disabling the manual build - if no jw and xmlto were found. - -2007-06-16 Emmanuele Bassi - - * configure.ac: If the programs required to build the manual - are not found and --enable-manual was passed, then just print - a warning and disable the manual build instead of aborting the - configure. - - * doc/manual/Makefile.am: Use the full path gathered by the - configure script when invoking jw and xmlto. - -2007-06-16 Matthew Allum - - * clutter/clutter-actor.c: - Fix typo in x rotation transform (Thanks to Johan Billen #138) - - * configure.ac: - * doc/manual/Makefile.am: - Fix manual build and required program check. - - * tests/Makefile.am: - Another typo fix. - -2007-06-15 Tomas Frydrych - - * clutter/clutter-actor.c: - Added some comments; renamed MTX_GL_SCALE to MTX_GL_SCALE_X for - consistency; removed some debug output. - -2007-06-14 Tomas Frydrych - - * clutter/clutter-vbox.c: - * clutter/clutter-hbox.c: - (clutter_vbox_pack_child): - (clutter_hbox_pack_child): - Fixed child coords. - -2007-06-14 Emmanuele Bassi - - * clutter/clutter-box.[ch]: Base class for layout containers. - - * clutter/clutter-hbox.[ch]: Horizontal box actor. - - * clutter/clutter-vbox.[ch]: Vertical box actor. - - * clutter/clutter.h: - * clutter/Makefile.am: Build glue - - * tests/Makefile.am: - * tests/test-boxes.c: Test suite for ClutterBox API and - implementations. - -2007-06-14 Matthew Allum - - * clutter/cogl/gl/cogl.c: (cogl_check_extension): - Actually populate this func and remove the static alternate - named one. Means GLX actually checks for available extensions. - Other minor tidy ups. - - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-backend-glx.h: - Add support for GLX_SGI_swap_control to do vblanking prefering - over glXGetVideoSyncSGI. Should fix issues on Intel chips with - very slow frame rates due to vblank problems. - Thanks to Michel Danzer for tips, see; - http://bugs.freedesktop.org/show_bug.cgi?id=10542 - - * test/test-actors.c: - Change FPS to 60. - -2007-06-14 Emmanuele Bassi - - * clutter/clutter-timeout-pool.c: Make ClutterTimeoutPool - more thread-safe, using a static lock. - - (clutter_timeout_pool_dispatch), (clutter_timeout_pool_remove): Fix - a race condition-turned-in-memory corruption bug, triggered by - removing a timeout from the pool while still spinning the pool - source. - -2007-06-14 Emmanuele Bassi - - * configure.ac: - * doc/manual/Makefile.am: Find xmlto and jw in the path and - use the symbolic names when building the manual. - -2007-06-14 Tomas Frydrych - - * clutter/clutter-actor.c: - (clutter_actor_get_abs_position): - (clutter_actor_get_abs_size): - Reimplement using clutter_actor_project_point() and - clutter_actor_project_vertices(). - - * tests/test-project.c: - Rename clutter_actor_allocate_coords -> clutter_actor_query_coords - -2007-06-14 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * clutter/clutter-group.c: - * clutter/clutter-label.c: - * clutter/egl/clutter-stage-egl.c: - * clutter/glx/clutter-stage-glx.c: - * clutter/sdl/clutter-stage-sdl.c: - Rename clutter_actor_allocate_coords -> clutter_actor_query_coords - - Change repaints to G_PRIORITY_DEFAULT + 10. - (timelines are G_PRIORITY_DEFAULT + 30, events G_PRIORITY_DEFAULT) - - * clutter/glx/clutter-event-glx.c: - Handle shift modifier in keycode -> keysym translation. - - * tests/test-actors.c: - Remove (broken) screen saver code. - Add scaling behaviour, clean code a little. - -2007-06-13 Tomas Frydrych - - * clutter/clutter-actor.c: - (clutter_actor_project_vertices): - (clutter_actor_project_proint): - Fixed translation of Y coords to match the windowing system. - - * clutter/egl/clutter-stage-egl.c: - * clutter/glx/clutter-stage-glx.c: - * clutter/sdl/clutter-stage-sdl.c: - (clutter_stage_*_request_size): - Initialize viewport when setting/resetting stage side. - - * tests/Makefile.am - * tests/test-project.c: - An interactive test of the projection stuff. - -2007-06-12 Tomas Frydrych - - * clutter/clutter-main.c: - (clutter_redraw): - Clear CLUTTER_ACTOR_SYNC_MATRICES flag after setting up viewport. - -2007-06-12 Matthew Allum - - * doc/manual/Makefile.am: - Fix typo in Makefile so PDF's actually get built. - - * doc/manual/clutter-manual.xml.in: - Add an FAQ section with initial entry. - -2007-06-12 Tomas Frydrych - - * clutter/clutter-fixed.h: - Added shorthand CFX_QMUL macro. - - * clutter/clutter-private.h: - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - Replaced ClutterVertices with ClutterVertex; - - (clutter_actor_get_transformed_vertices): - (clutter_actor_get_transformed_point): - Replaced with clutter_actor_projected_vertices and - clutter_actor_projected_point. - - (_clutter_actor_apply_modelview_transform): - (_clutter_actor_apply_modelview_transform_recursive): - Private functions to push actor modelview transforms on OpenGL - stack. - - * clutter/cogl/cogl.h: - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/cogl.c: - (cogl_get_viewport): - (cogl_get_modelview_matrix): - (cogl_get_projection_matrix): - Functions to access OpenGL transforms. - -2007-06-12 Matthew Allum - - * clutter/clutter-alpha.c: - Remove stray g_debug. - - * clutter/clutter-behaviour-rotate.c: - Register private class member. - - * clutter/clutter-behaviour.c: - * clutter/clutter-behaviour.h: - Add applied and removed signals. - - * Makefile.am: - * configure.ac: - * examples/Makefile.am: - * examples/README: - * examples/behave.c: - * examples/slider.c: - * examples/super-oh.c: - * examples/test-entry.c: - * examples/test-text.c: - * examples/test.c: - * tests/Makefile.am: - Remove examples, moving applicable code into tests. - -2007-06-11 Tomas Frydrych - - * clutter/clutter-alpha.c: - (clutter_alpha_sine_inc): - (clutter_alpha_sine_dec): - (clutter_alpha_sine_half): - Fixed unsigned overflow. - -2007-06-11 Emmanuele Bassi - - * clutter/clutter-event.h: Add full modifier masks enums. - - * clutter/glx/clutter-event-glx.c: Copy the modifier masks from - the native X event structure. - - * clutter/clutter-event.c: Convert to upper case if the - shift or the lock masks are applied. - -2007-06-09 Emmanuele Bassi - - * clutter/clutter.h: - * clutter/clutter-timeout-pool.[ch]: Add a timeout pool source; - every timeout added to this pool will use a single slice of the - main loop. - - * clutter/clutter-timelince.c: Use a per-class timeout pool for - every timeline. - -2007-06-08 Matthew Allum - - * clutter/clutter-texture.c: (clutter_texture_get_pixbuf): - Remove stray printf. - -2007-06-08 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-debug.h: - * clutter/clutter-main.c: - * clutter/clutter-main.h: - * clutter/clutter-private.h: - * clutter/clutter-timeline.c: - Add 'schedule' debug flag and new CLUTTER_TIMESTAMP macro. - - * clutter/clutter-texture.c: - * clutter/clutter-texture.h: - * clutter/cogl/cogl.h: - * clutter/cogl/gl/cogl-defines.h: - * clutter/cogl/gles/cogl-defines.h: - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/cogl.c: - Add initial experiemental YUV texture support. - Move texture rect size checks into cogl. - Better handle moving texture data from video -> system memory - (if support available). - -2007-06-07 Neil J. Patel - - * clutter/clutter-entry.c: (clutter_entry_class_init), - (clutter_entry_handle_key_event): - * clutter/clutter-entry.h: - Added an 'activated' signal, which is emitted when the 'Enter' key is - pressed. - - * examples/test-entry.c: (on_entry_activated), (main): - Added a test handler for the activated signal. - -2007-06-07 Emmanuele Bassi - - * clutter/*: Move documentation from the templates into the - source code. - -2007-06-07 Emmanuele Bassi - - * clutter/clutter-container.[ch]: Add a generic actor container - interface, for actors to implement without subclassing ClutterGroup. - - * clutter/clutter-group.[ch]: Make ClutterGroup implement the - ClutterContainer interface, and deprecate the colliding methods. - - * clutter/clutter-layout.[ch]: Add extended layout interface. - Actors and containers requiring or honouring complex layout - management should implement this interface and provide at least - one of the available layout types: width for height, height for - width, natural size, iterative size request. - - * clutter/clutter-label.c: A ClutterLabel requires height for - width layout management, so it implements the ClutterLayout - interface. - - * clutter/Makefile.am: Add new files to the build. - - * tests/*.c: - * examples/*.c: Update tests and examples code to use the - new ClutterContainer API instead of ClutterGroup. - -2007-06-07 Emmanuele Bassi - - * clutter/clutter-timeline.[ch]: Add a "delay" property, which - delays the real start of the timeline by a number of milliseconds. - - (clutter_timeline_clone): Rename clutter_timeline_copy() to - clutter_timeline_clone(), for consistency. - -2007-06-01 Neil J. Patel - - * clutter/clutter-entry.c: (clutter_entry_set_property), - (clutter_entry_get_property), (clutter_entry_class_init), - (clutter_entry_init), (clutter_entry_set_text), - (clutter_entry_set_max_length): - * clutter/clutter-entry.h: - * examples/test-entry.c: (main): - Added a max-length property whihc limits the length of the text in the - entry. - -2007-06-01 Neil J. Patel - - * clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position), - (clutter_entry_paint), (clutter_entry_init), - (clutter_entry_handle_key_event): - Clipping within the entry class to stop it over-slipping its - boundries. - Text will move within the clip region to keep the cursor always - visible. - Added some padding to the left and right to make sure cursor is - always show. - -2007-06-01 Tomas Frydrych - - * clutter/clutter-actor.c: - * clutter/clutter-stage.c: - * clutter/clutter-private.h: - Removed perspective matrix caching from ClutterStage. - -2007-06-01 Neil J. Patel - - * clutter/clutter-entry.c: (clutter_entry_set_property), - (clutter_entry_get_property), (clutter_entry_ensure_layout), - (clutter_entry_class_init), (clutter_entry_init), - (clutter_entry_set_visibility), (clutter_entry_get_visibility), - (clutter_entry_set_invisible_char), - (clutter_entry_get_invisible_char): - * clutter/clutter-entry.h: - Added text-visibility, which will allow you to show all entered text - as a nominated charaecter ('*' is default). - - * examples/test-entry.c: (main): - -2007-06-01 Neil J. Patel - - * clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position), - (clutter_entry_clear_cursor_position), - (clutter_entry_paint_cursor), (clutter_entry_paint), - (clutter_entry_class_init), (clutter_entry_set_text), - (clutter_entry_set_position): - * clutter/clutter-entry.h: - Added a signla to track cursor movements. - Moved the sursor painting function so it can be subclassed. - -2007-06-01 Tomas Frydrych - - * clutter/clutter-actor.c: - (clutter_actor_get_transformed_point): - Make input again relative to the actor; feed depth into transform. - -2007-06-01 Neil J. Patel - - * clutter/clutter-entry.c: (clutter_entry_class_init), - (clutter_entry_set_text): - * clutter/clutter-entry.h: - * examples/test-entry.c: (on_entry_text_changed), (main): - Added a text-changed signal to the entry. - -2007-06-01 Neil J. Patel - - * clutter/clutter-effect.h: - Removed extra G_END_DECLS outside the #endif - - * clutter/clutter-entry.c: (clutter_entry_handle_key_event), - (clutter_entry_add): - * clutter/clutter-entry.h: - * examples/test-entry.c: (on_key_release_cb): - Added a function to deal with ClutterKeyEvents. Handles the majority - of entry-related keyboard keys. However modifiers still need to be - implemented. - -2007-06-01 Tomas Frydrych - - * clutter/clutter-actor.c: - (mtx_create): - Apply perspective transform before all other transforms. - -2007-06-01 Tomas Frydrych - - * clutter/clutter-stage.c: - (clutter_stage_init): - Call _clutter_stage_refresh_perspective_matrix to initialize the - matrix for default values. - -2007-06-01 Tomas Frydrych - - * clutter/clutter-fixed.h: - * clutter/clutter-behaviour-ellipse.h: - * clutter/clutter-behaviour-ellipse.c: - * clutter/clutter-behaviour-bspline.h: - * clutter/clutter-behaviour-bspline.c: - Documentation fixes. - -2007-05-31 Tomas Frydrych - - * clutter/clutter-stage.c: - * clutter/clutter-private.h: - (_clutter_stage_get_perspective_matrix): - New function. - - * clutter/clutter-actor.c: - (clutter_actor_get_tranformed_vertices): - (clutter_actor_get_tranformed_point): - Apply perspective matrix on the top of actor transform matrix. - -2007-05-31 Neil J Patel - - * clutter/Makefile.am: - * clutter/clutter-entry.c: (clutter_entry_set_property), - (clutter_entry_get_property), (clutter_entry_ensure_layout), - (clutter_entry_clear_layout), - (clutter_entry_ensure_cursor_position), (clutter_entry_paint), - (clutter_entry_request_coords), (clutter_entry_dispose), - (clutter_entry_finalize), (clutter_entry_class_init), - (clutter_entry_init), (clutter_entry_new_with_text), - (clutter_entry_new_full), (clutter_entry_new), - (clutter_entry_get_text), (clutter_entry_set_text), - (clutter_entry_get_font_name), (clutter_entry_set_font_name), - (clutter_entry_set_color), (clutter_entry_get_color), - (clutter_entry_get_layout), (clutter_entry_set_alignment), - (clutter_entry_get_alignment), (clutter_entry_set_position), - (clutter_entry_get_position), (clutter_entry_add), - (clutter_entry_remove), (clutter_entry_insert_text), - (clutter_entry_delete_text), (clutter_entry_set_visible_cursor), - (clutter_entry_get_visible_cursor): - * clutter/clutter-entry.h: - * clutter/clutter.h: - * examples/Makefile.am: - Initial import of ClutterEntry actor. - - * examples/test-entry.c: (on_key_release_cb), (main): - A basic test for ClutterEntry - -2007-05-31 Tomas Frydrych - - * clutter/clutter-actor.c: - (clutter_actor_get_transformed_point): - Fixed coordinance translation. - -2007-05-31 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - Add clutter_actor_get_transformed_point() - - * clutter/clutter-main.c: - Plug in perspective setup to redraw - - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - Remove audience code for now. - -2007-05-31 Matthew Allum - - * clutter/egl/clutter-backend-egl.c: - * clutter/egl/clutter-backend-egl.h: - * clutter/egl/clutter-event-egl.c: - * clutter/egl/clutter-stage-egl.c: - * clutter/egl/clutter-stage-egl.h: - Rename Egl -> EGL - -2007-05-31 Matthew Allum - - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-backend-glx.h: - * clutter/glx/clutter-event-glx.c: - * clutter/glx/clutter-glx.h: - * clutter/glx/clutter-stage-glx.c: - * clutter/glx/clutter-stage-glx.h: - Change type nameing from Glx -> GLX. - Add basic event filtering functionality - -2007-05-31 Tomas Frydrych - - * clutter/clutter-behaviour-ellipse.c: - Changed behaviour so that a beginning angle of 0 would correspond - to 12 o'clock. - -2007-05-31 Tomas Frydrych - - * clutter/clutter-fixed.h: - * clutter/clutter-fixed.c: - (_clutter_double_to_int): - Fixed return value to gint; added missing cast that broke negative - number conversions. - - (CLUTTER_ANGLE_FROM_DEGX): - Swapped division and multiplication around to avoid overflows. - - * clutter/clutter-behaviour-ellipse.c: - Fixed incorrectly set lower bounds for angle properties. - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - Added ClutterVertices type. - (clutter_actor_get_transformed_vertices): - New function. - -2007-05-31 Matthew Allum - * TODO: - Sync up for whats left for 0.4 release (and 0.6 ideas) - -2007-05-31 Matthew Allum - - * clutter/clutter-behaviour-ellipse.c: - Remove uneeded knot signal - - * clutter/clutter-behaviour-path.c: - Fix so knot signal is emitted only when a knot is reached. - - * clutter/clutter-effect.c: - * clutter/clutter-effect.h: - Add a scale effect. - - * configure.ac: - * doc/manual/Makefile.am: - * doc/manual/clutter-manual.xml.in: - * doc/manual/manual.xsl: - * doc/manual/style.css: - Add various bits for application developers manual. - -2007-05-30 Tomas Frydrych - - * clutter/clutter-alpha.h: - * clutter/clutter-alpha.c: - Removed ClutterSmoothstep struct - (clutter_smoothstep_inc_func): - Renamed to clutter_smoothstep_func. - (clutter_smoothstep_added_func): - Added. - -2007-05-29 Tomas Frydrych - - * clutter/clutter-fixed.h: - (clutter_cosx): - (clutter_cosi): - Fixed wrong sign in cos -> sin tranformation. - - * clutter/clutter-behaviour-ellipse.c: - (clutter_behaviour_ellipse_advance): - Replaced coordinace calculation for tilted ellipse with a sane - algorithm. - - * examples/behave.c: - Added tilt parameter to the example ellptic path. - -2007-05-29 Tomas Frydrych - - * clutter/cogl/gles/cogl.c: - (cogl_setup_viewport): - Fixed z_camera calculation. - -2007-05-28 Matthew Allum - - * clutter/clutter-texture.c: (clutter_texture_unrealize): - Dont even try to move texture pixels from video -> system - ram on unrealisation for GL/ES - -2007-05-28 Matthew Allum - - * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos): - Fix for GL/ES. Barring texture reads this means all clutter - functionality now works on GL/ES! (no doubt with a few yet to - be discovered bugs) - -2007-05-28 Matthew Allum - - * clutter/clutter-backend.c: - * clutter/clutter-backend.h: - * clutter/glx/clutter-stage-glx.c: - * clutter/glx/clutter-backend-glx.c: - Fix up rendering pipeline removing clutter_backend_XXX_stage_paint - and adding clutter_backend_XXX_redraw instead. Duplicates less - code in backends, avoids clutter_actor_paint() getting called - before stage is set up (viewport wise) and unbreaks things like - picking. - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * clutter/clutter-main.c: - * clutter/clutter-private.h: - * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos): - Redo picking functionality a different way (via color indexing) - as to provide more flexibility, possibly speed and more likely - work with GL/ES (doesn't currently however - not sure why). - - * clutter/clutter-group.c: - Add groups own 'pick' method. - - * clutter/cogl/cogl.h: - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/cogl.c: - Move clipping funtionality into cogl. - - * clutter/cogl/gles/cogl-defines.h: - Hack around missing BGR format in GL/ES. - - * clutter/egl/clutter-backend-egl.c: - * clutter/egl/clutter-backend-egl.h: - * clutter/egl/clutter-stage-egl.c: - * clutter/sdl/clutter-backend-sdl.c: - * clutter/sdl/clutter-backend-sdl.h: - * clutter/sdl/clutter-event-sdl.c: - * clutter/sdl/clutter-stage-sdl.c: - Update backends to newer API. - Add basic mouse event translation to SDL. - -2007-05-25 Matthew Allum - - * clutter/clutter-color.c: (clutter_color_parse): - Handle #rrggbbaa color setting strings (i.e with alpha). - Set alpha to 0xff if it is not specified. - - * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos) - Increase select buffer. - - * examples/super-oh.c: - Fix up use of clutter_group_show_all() - -2007-05-25 Tomas Frydrych - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - Renamed clutter_actor_scalex() to clutter_actor_set_scale_with_gravityx - Added floating point version clutter_actor_set_scale_with_gravity. - - * clutter/clutter-units.h: - * clutter/clutter-actor.h: - typedef ClutterUnit - - * clutter/clutter-fixed.h: - * clutter/clutter-stage.c: - CLUTTER_ANGLE_FROM_DEG(), CLUTTER_ANGLE_FROM_DEGX() - renamed CLUTTER_DEGF_TO_CLUTTER_ANGLE to CLUTTER_ANGLE_FROM_DEGF - - * clutter/clutter-behaviour-ellipse.h: - * clutter/clutter-behaviour-ellipse.c: - * examples/behave.c: - (clutter_behaviour_ellipse_new): - Changed signature to take angles in degrees, and x,y offsets. - (clutter_behaviour_ellipse_newx): - Fixed version clutter_behaviour_ellipse_new. - (clutter_behaviour_ellipse_set_center): - (clutter_behaviour_ellipse_get_center): - Changed signature to take x,y coords instead of ClutterKnot. - - clutter/cogl/gl/cogl.c: - clutter/cogl/gles/cogl.c: - (cogl_setup_viewport): - Added z_camera calculation. - -2007-05-25 Matthew Allum - - * Makefile.am: - Install a default flavour .pc file. - - * clutter/clutter-actor.c: - Translate units correctly for translate() - - * clutter/clutter-feature.h: - Add new texture features. - - * clutter/clutter-fixed.h: - Add clutter angle conversion defines. - - * clutter/clutter-group.c: - Use cogl not GL. Dont recurse on show all. - - * clutter/clutter-private.h: - Remove sync_viewport. - - * clutter/clutter-rectangle.c: - Fix cogl typo. - - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - Add perspective settings. Remove viewport_sync. - Add audience stubs. Fix up actor_at_pos a little (still broken) - - * clutter/clutter-texture.h: - * clutter/clutter-texture.c: - Redo pixel uploading. Add initial (disabled) YUV support. - - * clutter/clutter-timeline.c: - Fire 'completed' signal when looping. - - * clutter/cogl/gl/cogl.c: - Move some backend checks here. - - * clutter/glx/clutter-backend-glx.c: - Actually check target display has GLX ext. - - * clutter/glx/clutter-stage-glx.c: - Handle offscreen failing more gracefully. - - * examples/Makefile.am: - Use AM_LDFLAGS. - - * clutter/clutter-main.c: - * clutter/clutter-feature.c: - * clutter/clutter-backend.c: - * clutter/clutter-alpha.c: - Fix a compile warnings. - - * tests/Makefile.am: - * tests/test-offscreen.c: - * tests/test-scale.c: - More tests. - -2007-05-23 Tomas Frydrych - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - (clutter_actor_get_abs_size_units): - (clutter_actor_get_abs_position_units): - removed from public api - -2007-05-22 Tomas Frydrych - - * configure.ac: - * Makefile.am: - * clutter.pc.in: - * clutter/Makefile.am: - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * clutter/clutter-group.c: - * clutter/clutter-label.c: - * clutter/clutter-real.h: - * clutter/clutter-units.h: - * clutter/clutter.h: - * clutter/egl/clutter-stage-egl.c: - * clutter/glx/clutter-stage-glx.c: - * clutter/sdl/clutter-stage-sdl.c: - * examples/Makefile.am: - * tests/Makefile.am: - Removed ClutterReal; added clutter-units. - -2007-05-18 Tomas Frydrych - - * configure.ac: - * Makefile.am: - * clutter.pc.in: - * clutter/Makefile.am: - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * clutter/clutter-behaviour-scale.c: - * clutter/clutter-behaviour-scale.h: - * clutter/clutter-group.c: - * clutter/clutter-label.c: - * clutter/clutter-real.h: - * clutter/egl/clutter-stage-egl.c: - * clutter/glx/clutter-stage-glx.c: - * examples/Makefile.am: - * tests/Makefile.am: - ClutterReal type. - -2007-05-17 Emmanuele Bassi - - * clutter/clutter-main.c: Use clutter_base_init() inside the - initialisation process, instead of calling g_type_init() directly. - - * clutter/clutter-alpha.c: - * clutter/clutter-behaviour-bspline.c: - * clutter/clutter-behaviour-ellipse.c: Fix API documentation. - -2007-05-17 Matthew Allum - - * configure.ac: - Fix CLUTTER_NO_FPU typo. - -2007-05-17 Tomas Frydrych - - * clutter/clutter-alpha.h: - * clutter/clutter-alpha.c: - * doc/reference/clutter-sections.txt: - Added clutter_exp_inc_func() and clutter_exp_dec_func(). - -2007-05-16 Emmanuele Bassi - - * clutter/clutter-main.[ch]: Add clutter_base_init(), semi-private - function to initialise just the base Clutter functionalities; it's - only used by gtk-doc to introspect the classes. - - * clutter/clutter-feature.c: Do not access the private features - data structure unless it has been initialised. - -2007-05-16 Tomas Frydrych - - * clutter/clutter-alpha.h: - * clutter/clutter-alpha.c: - * doc/reference/clutter-sections.txt: - Added clutter_sine_half(). - -2007-05-16 Tomas Frydrych - - * clutter/clutter-alpha.h: - * clutter/clutter-alpha.c: - * doc/reference/clutter-sections.txt: - Fixed clutter_sine_inc(), added clutter_sine_dec(). - -2007-05-16 Tomas Frydrych - - * clutter/clutter-alpha.h: - * clutter/clutter-alpha.c: - * doc/reference/clutter-sections.txt: - * doc/rererence/clutter.types: - * doc/reference/tmpl/clutter-alpha.sgml: - clutter_smoothstep_func alpha function, - ClutterSmoothstep struct for smoothstep function data. - -2007-05-16 Matthew Allum - - * clutter/clutter-backend.c: - * clutter/clutter-backend.h: - * clutter/clutter-feature.c: - * clutter/clutter-feature.h: - * clutter/clutter-main.c: - * clutter/clutter-main.h: - * clutter/clutter-private.h: - * clutter/clutter-stage.c: - * clutter/cogl/cogl.h: - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/cogl.c: - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-backend-glx.h: - * clutter/glx/clutter-glx.h: - * clutter/glx/clutter-stage-glx.c: - * clutter/glx/clutter-stage-glx.h: - Rejig the features() foo, moving mostly into backends/cogl. - -2007-05-15 Tomas Frydrych - - * clutter/clutter-actor.c: - (clutter_actor_get_abs_position): - Removed unnecessary CFX_MUL(). - -2007-05-15 Tomas Frydrych - - * clutter/clutter-behaviour-ellipse.h: - * clutter/clutter-behaviour-ellipse.c: - (clutter_behaviour_ellipse_new): - Added a tilt parameter. - -2007-05-14 Matthew Allum - - * clutter/clutter-behaviour-path.c: - Fix bug where last knot position wouldn't get reached. - - * clutter/clutter-group.c: - Add some docs - - * clutter/clutter-timeline.h: - * clutter/clutter-timeline.c: - Add clutter_timeline_copy (needed for ClutterEffect) - - * clutter/clutter-version.h.in: - Export windowing system / GL backend etc defines. - - * clutter/Makefile.am: - * clutter/clutter-effect.c: - * clutter/clutter-effect.h: - * clutter/clutter.h: - - * clutter/glx/clutter-backend-glx.c: - Minor clean ups. - - * clutter/clutter-alpha.h: - Add a fixme. - - * configure.ac: - Add FPU define. - - * examples/Makefile.am: - * examples/slider.c: - Add Robs slider game. - -2007-05-10 Matthew Allum - - * clutter/egl/clutter-backend-egl.c: - * clutter/egl/clutter-event-egl.c: - * clutter/sdl/clutter-backend-sdl.c: - * clutter/sdl/clutter-event-sdl.c: - Fix SDL & EGL backends to work with newer backend code. - -2007-05-10 Tomas Frydrych - - * clutter/clutter-color.h: - * clutter/clutter-color.c: - Added clutter_color_to/from_hlsx() - (clutter_color_to/from_hls): - Clobber hue to 0 .. 250 - -2007-05-10 Matthew Allum - - * clutter/clutter-backend.c: - * clutter/clutter-backend.h: - * clutter/clutter-event.c: - * clutter/clutter-main.c: - * clutter/clutter-private.h: - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-backend-glx.h: - * clutter/glx/clutter-event-glx.c: - Rejig backend event code as to simplify a little. - NOTE: This breaks non glx backends. - - * tests/Makefile.am: - * tests/test-events.c: - Add a very simple event test. - - * tests/test-textures.c: (main): - Add some more sizes to the test. - -2007-05-05 Matthew Allum - - * clutter/clutter-texture.c: - Fix typos with new cogl using texture code. Fixes tiled textures. - Add a check for max npots size. - - * configure.ac: - * Makefile.am: - * tests/Makefile.am: - * tests/test-textures.c: - Add a simple texture test. - -2007-05-02 Matthew Allum - - * clutter/Makefile.am: - * clutter/clutter-stage.c: - * clutter/sdl/Makefile.am: - * clutter/sdl/clutter-backend-sdl.c: - * clutter/sdl/clutter-backend-sdl.h: - * clutter/sdl/clutter-event-sdl.c: - * clutter/sdl/clutter-sdl.h: - * clutter/sdl/clutter-stage-sdl.c: - * clutter/sdl/clutter-stage-sdl.h: - * configure.ac: - Add a basic SDL based backend. Lacks real input event handling - (translation) as yet. - Also allows for clutter to be built against dgles. - -2007-05-02 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/cogl/gles/cogl.c: - Fix rotation + other fixed point cleanups. - - * clutter/clutter-texture.h: - Sketch out an updated API. - -2007-05-01 Matthew Allum - - * clutter/clutter-rectangle.c: - Comment out color match check for now as appears to be causing - borders to always get pained. - - * clutter/clutter-texture.h: - Add some format defines (unused as yet) - - * clutter/cogl/gles/cogl.c: - * clutter/egl/clutter-stage-egl.c: - * configure.ac: - Various OpenGL ES backend related fixes and tweaks. - -2007-04-30 Tomas Frydrych - - * clutter/clutter-fixed.c (clutter_sini): - Fixed bug in reducing angle to 0-2pi. - - * clutter/clutter-behaviour-ellipse.h: - * clutter/clutter-behaviour-ellipse.c: - * clutter/clutter.h: - * clutter/Makefile.am: - * doc/clutter.types: - * doc/clutter-docs.sgml: - Added ClutterBehaviourEllipse for movement along - elliptic paths. - - * examples/bspline.c: - * examples/behave.c: - * examples/Makefile.am: - Added --path commandline option to behave to choose different - path types (poly, ellipse, bspline) and dropped bspline example. - -2007-04-28 Matthew Allum - - * clutter/Makefile.am: - * clutter/clutter-debug.h: - * clutter/clutter-fixed.h: - * clutter/clutter-main.c: - * clutter/cogl/gles/Makefile.am: - * clutter/cogl/gles/cogl-defines.h: - * clutter/cogl/gles/cogl.c: - * clutter/egl/clutter-backend-egl.c: - * clutter/egl/clutter-backend-egl.h: - * clutter/egl/clutter-stage-egl.c: - * configure.ac: - Populate most stubs for cogl GL/ES implementation. - (against vincent - see http://svn.o-hand.com/repos/misc/ogles) - Add various fixups to EGL backend. - Code builds and runs (on 16bpp) but yet displays much (is close!) - - * clutter/pango/pangoclutter-render.c: - comment out some rouge glBegin/end calls. - -2007-04-27 Matthew Allum - - * clutter/Makefile.am: - * clutter/clutter-actor.c: - * clutter/clutter-clone-texture.c: - * clutter/clutter-rectangle.c: - * clutter/clutter-stage.c: - * clutter/clutter-texture.c: - * clutter/cogl/cogl.h: - * clutter/cogl/gl/Makefile.am: - * clutter/cogl/gl/cogl-defines.h: - * clutter/cogl/gl/cogl.c: - * clutter/cogl/gles/Makefile.am: - * clutter/cogl/gles/cogl-defines.h: - * clutter/cogl/gles/cogl.c: - * clutter/glx/Makefile.am: - * clutter/glx/clutter-stage-glx.c: - * clutter/pango/Makefile.am: - * clutter/pango/pangoclutter-render.c: - * configure.ac: - Add initial 'cogl' implementation. 'cogl' is a simple abstration - layer over GL and GL/ES used by clutter internally. It should - eventually allow clutter applications to be run on both GL and GL/ES - with just a recompile as well as provide more debugging and potentially - profiling information for GL and GL/ES usage. - - This commit contains the initial GL implementation. - -2007-04-26 Emmanuele Bassi - - Merge from clutter-0-2 - - * clutter/clutter-label.c: Unbreak the "use-markup" property - by actually passing the markup to pango_layout_set_markup(). - -2007-04-25 Emmanuele Bassi - - Merge from clutter.git/master - - * clutter/glx/clutter-event-glx.c: - * clutter/glx/clutter-stage-glx.c: Implement the _NET_WM_PING - protocol handling on the main stage window. - - * clutter/clutter-stage.h: - * clutter/clutter-stage.c: - * clutter/clutter-main.c: Handle CLUTTER_DELETE events internally, - by calling clutter_main_quit(), and remove the ::delete-event - signal from ClutterStage; clean up the signal emission sequence - for the events: emit the ::event signal before emitting any signal - and the ::event-after signal after the signal has been emitted; move - the signal emission calls inside ClutterStage so we can call - g_signal_emit() instead of g_signal_emit_by_name(), thus sparing us - a lookup for each event. - - * examples/test.c: Remove ::delete-event signal handling. - -2007-04-19 Emmanuele Bassi - - Merge from clutter.git/master - - * clutter/clutter-backend.h: - * clutter/clutter-backend.c: Add API for getting screen/display - properties from the backend. - - * clutter/glx/clutter-backend-glx.c: - * clutter/glx/clutter-backend-egl.c: Retrieve screen/display - properties inside the backends init function. - - * clutter/glx/clutter-event-glx.c: Handle the WM_PROTOCOLS - ClientMessage events. - - * clutter/glx/clutter-stage-glx.c: Use XSetWMProtocols to enable - the WM_PROTOCOLS ClientMessage events on the stage window. - - * clutter/glx/clutter-glx.h: Return the Screen pointer and not - the screen number in clutter_glx_get_default_screen(). The screen - number is returned by clutter_backend_get_screen_number(), or - by calling XScreenNumberOfScreen on the returned pointer. - - * clutter/clutter-event.h: Add CLUTTER_DELETE to the event types. - - * clutter/clutter-main.c: Emit the ClutterStage::delete-event - when receiving a CLUTTER_DELETE event; if the signal handlers - return FALSE, call clutter_main_quit(). - - * clutter/clutter-marshal.list: - * clutter/clutter-stage.c: Use the right marshaller function - for the delete-event closure. - - * examples/test.c: Test the "delete-event" signal handler. - -2007-04-16 Emmanuele Bassi - - Merge from clutter.git/merge-from-stable - - * clutter/clutter-event.h: - * clutter/glx/clutter-event-glx.c: Add the XEMBED protocol support - in the GLX backend, for embedding the stage window into another - X window. This allows cross-toolkit inclusion and makes clutter-gtk - possible. - - * clutter/clutter-behaviour-scale.c: Implement every ClutterGravity - value inside the scale behaviour and make the actors anchor to a - gravity when scaling up and down. - - * clutter/clutter-texture.c: Revert to copying GdkPixbuf areas to - correctly implement the texture tiling. This fixes segmentation - faults occurring with cards with a small texture memory area. - - * clutter/clutter-actor.c: Call g_object_freeze_notify() (and take - a reference on the actor) inside clutter_actor_request_size() so - that the notifications get unqueued at the end of the size request. - -2007-04-16 Emmanuele Bassi - - Merge from clutter.git/work - - * clutter/clutter-behaviour-bspline.[ch]: Return a ClutterBehaviour - when splicing the b-spline; fix the header and the API documentation; - hush the compiler warnings; kill of some pointer indirections. - - * clutter/clutter-behaviour-rotate.[ch]: Add a rotate behaviour, - with user defined axis, direction and sweep angle. - - * clutter/clutter-behaviour.c (clutter_behaviour_is_applied): Add - a parameter ISA check and return FALSE if it fails. - -2007-04-12 Tomas Frydrych - - * clutter/clutter-behaviour.h: - * clutter/clutter-behaviour.c: - * clutter/clutter-behaviour-path.h: - * clutter/clutter-behaviour-path.c: - Moved declaration of ClutterKnot from clutter-behaviour path - into clutter-behaviour. - - * clutter/clutter-fixed.h - * clutter/clutter-fixed.c - Added myself as an author. - - * clutter/Makefile.am: - * clutter/clutter.h: - * clutter/clutter-behaviour-bspline.h: - * clutter/clutter-behaviour-bspline.c: - Added new bezier spline behaviour. - - * examples/bspline.c: - * examples/Makefile.am: - An example of using bspline path. - -2007-04-07 Matthew Allum - - * clutter/glx/clutter-backend-glx.c: - Fix version check. - -2007-03-29 Tomas Frydrych - - * clutter/clutter-stage.c: - (perspective): fixed degree -> rad conversion for fovy angle - (perspectivex): fixed degree -> rad conversion for fovy angle, - added code for gle glMultMatrixx(). - -2007-03-29 Tomas Frydrych - - * configure.ac: fixed typo - - * clutter/clutter-fixed.c: - * clutter/clutter-fixed.h: - (clutter_tani): fast implementation of tan() - (clutter_qmulx): improved-precission fixed point multiply - - * clutter/clutter-stage.c: - (perspectivex): fixed point implementaiton of perspective() - (_clutter_stage_sync_viewport): - (clutter_stage_get_actor_at_pos): - use perspectivex() instead of perspective() - -2007-03-27 Matthew Allum - - * clutter/cogl/Makefile.am: - * clutter/cogl/cogl.h: - * clutter/cogl/gles/Makefile.am: - * clutter/cogl/gles/cogl.c: - Begin poplulating cogl GLES code. - - * configure.ac: - * clutter/egl/clutter-event-egl.c: - * clutter/egl/clutter-stage-egl.c: - * clutter/egl/clutter-stage-egl.h: - * clutter/egl/clutter-backend-egl.c: - * clutter/egl/clutter-backend-egl.h: - * clutter/egl/clutter-egl.h: - Add initial EGL/X backend work mostly ported from backend branch. - Builds but untested as yet. - - * clutter/glx/clutter-stage-glx.c: - Only include XFixes Header if we have have it. - - * clutter/clutter-behaviour.c: (clutter_behaviour_apply): - * clutter/clutter-behaviour.h: - Add clutter_behaviour_is_applied() - -2007-03-27 Emmanuele Bassi - - * clutter/clutter-stage.h: Remove unused clutter_stage_flush() - declaration. - -2007-03-27 Emmanuele Bassi - - * clutter/glx/clutter-glx.h: - * clutter/glx/clutter-stage-glx.c: (Re-)Implement the foreign - window setting function for the stage in the GLX backend. - -2007-03-27 Emmanuele Bassi - - * clutter/clutter-stage.h: Declare the clutter_perspective_get_type() - function in the header. - -2007-03-27 Emmanuele Bassi - - * clutter/cogl/cogl.h: Add header and compiler guards. - -2007-03-27 Emmanuele Bassi - - * clutter/glx/clutter-stage-glx.c: Remove the check in the - paint chain up: we know for sure that the parent's paint - vfunc is present. - -2007-03-27 Matthew Allum - - * clutter/clutter-feature.c: - Rejig ifdef's a little. Make drm vblanking Linux only. - - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - Add a perspective boxed type. - - * clutter/glx/clutter-stage-glx.c: - Add some FIXMEs - - * clutter/Makefile.am: - * clutter/cogl/Makefile.am: - * clutter/cogl/cogl.h: - * clutter/cogl/gl/Makefile.am: - * clutter/cogl/gl/cogl.c: - * configure.ac: - Very initial work on 'cogl' GL/GLES abstraction/utility code. - -2007-03-26 Emmanuele Bassi - - * clutter/clutter-behaviour-scale.[ch]: Add API for getting - the scale bounds and the gravity from a scale behaviour instance. - -2007-03-26 Emmanuele Bassi - - * clutter/clutter-timeline.c: Fix last commit. - -2007-03-25 Emmanuele Bassi - - * clutter/clutter-timeline.c: Slightly lower the proiority - of the ClutterTimeline tick, so that events get a higher - priority in the main loop. - -2007-03-25 Emmanuele Bassi - - * clutter/clutter-event.[ch]: Remove the flags member from - the ClutterEvent structure; remove the ClutterEventFlags - enum. - -2007-03-25 Emmanuele Bassi - - * clutter/clutter-stage.h: Remove the ::get_actor_at_pos() - and ::flush() vfuncs. - - * clutter/glx/clutter-stage-glx.c: Remove the implementations - of those vfuncs from the backend specific code, as they are - pure GL calls. - - * clutter/clutter-stage.c: Add back the actor hit detection - code in the base stage class, along with the viewport - synchronisation function. - - * clutter/clutter-private.h: Declare the private function - _clutter_stage_sync_viewport(). - -2007-03-23 Emmanuele Bassi - - * clutter/clutter-backend.c: Clear the event queue when - disposing the backend object; remove the initialisation - of the backend structure members... - - * clutter/glx/clutter-backend-glx.c: ... and keep it here - in the backends where it belongs. - -2007-03-23 Emmanuele Bassi - - * clutter/clutter-private.h: - * clutter/clutter-backend.h: Move the backend functions - into the private header. - - * clutter/glx/clutter-stage-glx.c: - * clutter/glx/clutter-event-glx.c: - * clutter/clutter-main.c: - * clutter/clutter-stage.c: Update the calls to the private - backend functions. - - * clutter/clutter-backend.[ch]: Add an ::init_features - vfunc to ClutterBackend. - -2007-03-23 Emmanuele Bassi - - * clutter/glx/clutter-stage-glx.c: - Make sure the top-left corner of the box is our origin, - when returning the allocation. - - * clutter/clutter-stage.c: - * clutter/clutter-group.c: Add tracing for the paint - method. - -2007-03-23 Matthew Allum - - * clutter/glx/clutter-stage-glx.c: - (clutter_stage_glx_allocate_coords): - Make new stage return correct width & height. - -2007-03-23 Emmanuele Bassi - - Assorted build fixes to pass distcheck. - - * clutter/glx/Makefile.am: Install the clutter-glx.h header. - - * clutter/Makefile.am: Actually apply linker flags. - - * configure.ac: Use a more readable CLUTTER_API_VERSION instead - of CLUTTER_MAJORMINOR; require gobject-2.0 with glib-2.0 >= 2.10, - as we are using GObject and the slice allocator from glib 2.10. - - * clutter.pc.in: Add the apiversion variable. - -2007-03-23 Emmanuele Bassi - - * clutter/clutter-event.c: Pop and peek the event queue - from the tail - it's a queue, not a stack. - - * clutter/clutter-private.h: - * clutter/clutter-main.c: Add a boolean signal accumulator. - - * clutter/clutter-stage.[ch]: Add an event argument to - the 'delete-event' signal; rename the 'input-event' signal - to 'event'; add the static scope flag to all the stage - events. - - * examples/*.c: Update. - -2007-03-22 Emmanuele Bassi - - * clutter.pc.in: Require gobject-2.0 too. - - * ChangeLog: Fix the previous commit log. - -2007-03-22 Emmanuele Bassi - - * clutter/clutter-private.h: Remove inclusion of backend-specific - headers; update the main context object; add the declarations for - the event queue functions. - - * clutter/clutter-backend.[ch]: Add the abstract ClutterBackend - object, which holds backend-specific settings, the main stage, - and the event queue. Every backend must implement a subclass of - ClutterBackend and ClutterStage. - - * clutter/clutter-feature.c: Protect the GLX specific calls - behing #ifdef HAVE_CLUTTER_GLX. - - * clutter/clutter-actor.c: - * clutter/clutter-group.c: - * clutter/clutter-clone-texture.c: Include GL/gl.h - - * clutter/clutter-event.[ch]: Update public API and implement the - event queue private API; hold a reference on the event objects; - move out the keysym-to-unicode table; add the new event types. - - * clutter/clutter-color.h: Include clutter-fixed.h - - * clutter/clutter-main.c: Update API; get the main stage - from the backend object; process the event received from the - queue; lock/unlock the main mutex if we have one; move the - initialisation process sooner in the init sequence, in order to - have the backend object when we check for options; call the - backed vfuncs in the pre/post parse hooks. - - * clutter/clutter-stage.c: Make ClutterStage and abstract class, - implemented by the backends. - - * clutter/clutter/glx/clutter-glx.h: - * clutter/clutter/glx/clutter-backend-glx.[ch]: - * clutter/clutter/glx/clutter-event-glx.c: - * clutter/clutter/glx/clutter-stage-glx.[ch]: - * clutter/clutter/glx/Makefile.am: Add the GLX backend. - - * clutter/clutter/egl/clutter-backend-egl.[ch]: - * clutter/clutter/egl/clutter-event-egl.c: - * clutter/clutter/egl/clutter-stage-egl.[ch]: - * clutter/clutter/egl/Makefile.am: Add the stub for a EGL backend. - - * examples/*.c: Update for the new API. - - * configure.ac: Check for the XFixes X extension; add a configure - switch for choosing the backend; show the backend we are building - in the summary. - - * clutter.pc.in: Add the backend to the exported variables. - - * clutter/Makefile.am: Install the headers in the - clutter-$api_version/clutter directory, as usual; call the shared - object libclutter-$backend-$api_version; build glue for the - backend static library. - -2007-03-19 Matthew Allum - - * clutter/clutter-label.c: - Simple doc fix. - * clutter/clutter-texture.c: (clutter_texture_get_pixbuf): - Backport of fix to get_pixbuf on non alpha textures from 0_2 branch. - -2007-03-19 Emmanuele Bassi - - * clutter/clutter-texture.c: Clean up code; add checks - in public API. - -2007-02-18 Matthew Allum - - * clutter/clutter-actor.c: (clutter_actor_reparent): - Add a FIXME re calling clutter_group here. - * clutter/clutter-group.c: - Fix clutter_group_remove_all - -2007-02-15 Matthew Allum - - * clutter/clutter-group.h: - Add missing clutter_group_remove_all declaration. - -2007-02-14 Matthew Allum - - * clutter/Makefile.am: - * clutter/clutter-main.c: - * clutter/clutter-stage.c: - * clutter/clutter-version.h.in: - * configure.ac: - * examples/super-oh.c: - Add CLUTTER_FLAVOUR define. - -2007-02-13 Matthew Allum - - * examples/super-oh.c: (screensaver_setup): - Fix example to build with new glx api - -2007-02-07 Emmanuele Bassi - - * clutter/clutter-debug.h: Define the CLUTTER_MARK() - macro even when CLUTTER_ENABLE_DEBUG is not - defined. (#215) - -2007-01-30 Tomas Frydrych - - * clutter/clutter-alpha.c: - (sincx1024_func): - (clutter_sine_func): - (clutter_sine_inc_func): - fixed the fixed point math. - -2007-01-30 Emmanuele Bassi - - * clutter/clutter-alpha.h: - * clutter/clutter-alpha.c: Add the square waveform - function clutter_square_func() to the precooked - alpha functions. - -2007-01-23 Matthew Allum - - * Makefile.am: - * clutter.pc.in: - * clutter/Makefile.am: - * clutter/clutter-backend-glx.c: - * clutter/clutter-backend-glx.h: - * clutter/clutter-event.c: - * clutter/clutter-feature.c: - * clutter/clutter-group.c: - * clutter/clutter-main.c: - * clutter/clutter-main.h: - * clutter/clutter-private.h: - * clutter/clutter-stage-glx.c: - * clutter/clutter-stage-glx.h: - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - * clutter/clutter-util.c: - * clutter/clutter-util.h: - * clutter/pango/pangoclutter-render.c: - * configure.ac: - * examples/Makefile.am: - Initial work in supporting different GL backends (ie. GLX/EGL/DirectFB etc). - Currently just GLX supported and now mostly self contained. - - * TODO: - Add a note about caching glenables - -2007-01-23 Tomas Frydrych - - * clutter/clutter-fixed.c: - (_clutter_double_to_fixed): - (_clutter_double_to_int): - Fixed to avoid problems with punned pointers and gcc - optimatisation. - - * clutter/pango/pangoclutter-private.h: - Simplified PANGO_PIXELS_26_6 macro. - - * clutter/pango/pangoclutter-font.c: - (_pango_clutter_font_new): - Replace floating with fixed point math. - -2007-01-19 Tomas Frydrych - - * clutter/clutter-fixed.c: (clutter_sqrti): - Use union instead of casting int <-> float to get rid of - punned-pointer warning and avoid gcc optimatisation breaking - the function on arm. - -2007-01-19 Emmanuele Bassi - - Allow the ClutterGroup subclasses to override the add and - remove operations. - - * clutter/clutter-group.c: Move the add and remove code from - clutter_group_add() and clutter_group_remove() to the signal - class closures; make the "add" and "remove" signals as - RUN_FIRST. - -2007-01-19 Tomas Frydrych - - * clutter/clutter-fixed.h.: - * clutter/clutter-fixed.c: - Added fast double to int and double to fixed point conversion - routines; changed CLUTTER_FLOAT_TO_FIXED to use it. - Replaced clutter_sqrti with fixed point implementation of the QIII - algorithm. - - - * clutter/clutter-behavior-path.c: use clutter_sqrti always - - * clutter/clutter-alpha.c: - (sinc_func): replaced double -> int cast with CLUTTER_FLOAT_TO_INT - - -2007-01-18 Emmanuele Bassi - - * configure.ac: Post release bump to 0.3.0. - -2007-01-18 =============== 0.2 Release ================================ - -2007-01-18 Matthew Allum - - * clutter.doap: - Update for 0.2 release - -2007-01-18 Emmanuele Bassi - - * clutter/clutter-group.h: Add public functions - clutter_group_get_n_children() and clutter_group_get_nth_child(). - - * clutter/clutter-behaviour.h: - * clutter/clutter-behaviour.c: Fix header alignment; fix argument - name for apidoc. - -2007-01-18 Emmanuele Bassi - - * clutter/Makefile.am: Use the build dir when linking to the - internal pango clutter renderer. - -2007-01-18 Tomas Frydrych - - * clutter/clutter-fixed.h: fixed a typo in comment - -2007-01-18 Emmanuele Bassi - - * clutter/clutter-fixed.h: Remove some inline documentation to - make the header more readable. - - * clutter/clutter-behaviour.c: The actors are store inside a - GSList and not in a GList, so change the list operations to - use the right API. - -2007-01-18 Tomas Frydrych - - * clutter/clutter-color.c: - (clutter_color_darken): - (clutter_color_lighten): - Changed calls to clutter_color_shade calls to clutter_color_shadex - -2007-01-17 Matthew Allum - - * configure.ac: - Bump up version to 0.2.0 - -2007-01-17 Tomas Frydrych - * configure.ac: - * clutter/clutter-behavior-path.c: - Added --without-fpu option. - - * doc/refrence/tmpl/clutter-fixed.sgml: - * clutter/clutter-fixed.c: - * clutter/clutter-fixed.h: - Documentation for fixed point API. - - * AUTHORS: added self. - -2007-01-17 Emmanuele Bassi - - * clutter/clutter-feature.h: - * clutter/clutter-feature.c: Move the GL headers from the - header file to the body. - - * clutter/clutter-fixed.h: - * clutter/clutter-fixed.c: Fix apidoc. - - * clutter/clutter-color.h: - * clutter/clutter-color.c: Ditto. - -2007-01-17 Tomas Frydrych - - * clutter/clutter-fixed.h: - * clutter/clutter-fixed.c: - * clutter/clutter-alpha.c: - Renamed clutter_fixed_sin() to clutter_sinx() and - clutter_angle_sin() to clutter_sini(); added clutter_sqrtx() - and clutter_sqrti(); added missing copyright. - - * clutter/clutter-behavior.c: - replaced call to sqrt() with clutter_sqrti() - - * clutter/clutter-behavior-scale.c: - (clutter_behaviour_scale_alpha_notify): - Replaced floating point math with fixed point. - -2007-01-16 Emmanuele Bassi - - * clutter/clutter-feature.c: Use clutter_vblank_method() to - get the VBlank method name from the environment variable OR - the command line switch. - - (clutter_feature_do_init): Move the check on the features - state here, to avoid an expensive function call, and inline - the function. - - * clutter/clutter-fixed.c: Fix gtk-doc. - - * clutter/clutter-main.c: Add a --clutter-vblank command line - switch controlling the VBlank method to be used: it overrides - the CLUTTER_VBLANK environment variable. - - (pre_parse_hook), (clutter_init), - (clutter_init_with_args): Move thread initialisation before - type init, to avoid the warning that comes with newer GLib - versions. - - * clutter/clutter-group.h: - * clutter/clutter-group.c: Mark clutter_group_show_all() and - clutter_group_hide_all() as deprecated. - -2007-01-16 Matthew Allum - - * NEWS: - Minor tweaks - - * TODO: - Sync up, mainly with 0.3 todo items - - * clutter/clutter-behaviour.c: - * clutter/clutter-behaviour.h: - clutter_behaviour_get_n_actors() / clutter_behaviour_get_nth_actor() - Additions. - - * clutter/clutter-stage.c: (clutter_stage_realize): - Experimental (disabled) visual setting code. - - * clutter/clutter-feature.c: - Check for GL_EXT_texture_rectangle (#198 - Frederick Riss) - - * clutter/clutter-group.c: (clutter_group_allocate_coords): - Fix for group size allocation (#199 - Frederick Riss) - - * clutter/clutter-texture.c: (texture_upload_data): - Fix texture unpacking row length (#197 Frederick Riss) - - * examples/Makefile.am: - Fix LDADD in build (#196 - Frederick Riss) - -2007-01-16 Tomas Frydrych - - * clutter/clutter-fixed.h: - Added integer ClutterAngle type, protype of clutter_angle_sin, - convenience macros clutter_fixed_cos and clutter_angle_cos, plus - other convenience macros for commonly used constants and ops. - * clutter/clutter-fixed.c: - (clutter_fixed_sin): - Fixed to work for negative angles. - (clutter_angle_sin): - Fast fixed point sin function for ClutterAngle angles. - * clutter/clutter-alpha.c: - (clutter_sin_func, clutter_sin_inc_func): - Changed to use clutter_angle_sin function. - * clutter-behavior-path.c: - replaced floating point with fixed point operations - * clutter/clutter-color.c: - * clutter/clutter-color.h: - Added (clutter_color_shadex), replaced floating point operations - with fixed point - -2007-01-15 Tomas Frydrych - - * clutter/clutter-fixed.h: (CLUTTER_FIXED_TO_DOUBLE/FLOAT): - Fixed macro so it works for negative values. - * clutter/clutter-fixed.c: (clutter_fixed_sin): - Implemented fixed point sin function. - * clutter/clutter-alpha.c: (clutter_sin_func, clutter_sin_inc_func): - Pluged in fixed point sin function. - -2007-01-07 Matthew Allum - - * clutter/clutter-actor.c: (clutter_actor_allocate_coords): - Fix an amazingly not noticed until now typo. - Minor doc tweaks. - - * clutter/clutter-behaviour-opacity.c: - (clutter_behaviour_alpha_notify): - Take into account initial opacity value when calculating from alpha. - - * clutter/clutter-group.c: - Add new get_nth_child() and get_n_children() api calls. - -2007-01-04 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - Add new set_width/height API calls. - Tweak scaling by reseting matrix. - Make set_opactiy() take parent opacity into account. - Fix clipping. - - * clutter/clutter-alpha.c: - Add more sine functionality. - - * clutter/clutter-behaviour-opacity.c: - Dont make a copy of all applied actors but use a foreach() - - * clutter/clutter-behaviour-scale.c: - Give correct limits to propertys. - Tweak gravity a little more. - Update docs. -: - * clutter/clutter-behaviour.c: (clutter_behaviour_remove): - Minor warning text change. - - * clutter/clutter-feature.c: (clutter_feature_wait_for_vblank): - Minor dri ioctl tweak. - - * clutter/clutter-label.c: - * clutter/clutter-label.h: - Add new label_full api call. - -2006-12-27 Emmanuele Bassi - - * clutter/clutter-stage.[ch]: - * clutter/clutter-event.[ch]: Revert changes; this is what - happens when you keep old tree around. - -2006-12-27 Emmanuele Bassi - - * clutter/clutter-color.h: - * clutter/clutter-color.c: Add clutter_color_to_string(), - which creates a hex-encoded color string from a ClutterColor. - -2006-12-20 Matthew Allum - - * NEWS: - Add some missing improvements. - -2006-12-17 Emmanuele Bassi - - * clutter/clutter-label.c: Remove some gtk-isms; always take - a reference before calling g_object_notify(), as the object - might get disposed while calling the closures inside the - notify queue; notify the changes of the ellipsize property. - -2006-12-14 Emmanuele Bassi - - * clutter/clutter-color.h: - * clutter/clutter-color.c: Expose clutter_color_copy() - and clutter_color_free() for the python bindings, so that - they can manager the conversion automatically; use the - slice allocator when copying/freeing a ClutterColor. - -2006-12-13 Emmanuele Bassi - - * clutter/clutter-color.h: - * clutter/clutter-color.c: Add clutter_color_equal(), - a function for comparing two colors. - - * clutter/clutter-rectangle.c: - (clutter_rectangle_set_color), - (clutter_rectangle_set_border_color): Unset the border if - the color of the rectangle and the color of the border are - the same. - -2006-12-13 Emmanuele Bassi - - * clutter/clutter-actor.c: - * clutter/clutter-clone-texture.c: - * clutter/clutter-event.h: - * clutter/clutter-stage.c: - * clutter/clutter-texture.c: - * clutter/clutter-timeline.c: Update the inline apidoc. - -2006-12-13 Matthew Allum - - * clutter/clutter-actor.c: (clutter_actor_class_init): - Allow actor x,y props to be negative. - -2006-12-12 Emmanuele Bassi - - Rework part of the show/hide machinery. Allow groups sub-classes - and composite actors to override show_all/hide_all in order to - decide which children they wish to show/hide. This means that - if an actor overrides the default show/hide virtual methods, it'll - have to chain up to the parent class show/hide. While we're at it, - provide the fully recursive clutter_actor_show_all() and - clutter_actor_hide_all() methods. - - * clutter/clutter-behaviour-path.c: Add apidoc for the ClutterKnot - functions; add pathological equality case for clutter_knot_equal(). - - * clutter/clutter-event.h: - * clutter/clutter-feature.h: - * clutter/clutter-behaviour.c: - * clutter/clutter-behaviour-scale.c:Fix parameters name so that - gtk-doc doesn't complain. - - * clutter/clutter-actor.c: - * clutter/clutter-event.c: Add apidoc - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: Add a clutter_actor_show_all() and a - clutter_actor_hide_all() functions; provide a mechanism for - groups and composited actors to programmatically select what to - show/hide when clutter_actor_show_all() and clutter_actor_hide_all() - are called. If you are overriding the ClutterActor::show or - the ClutterActor::hide virtual methods you should chain up with - the parent class. - - * clutter/clutter-group.c: Override show_all and hide_all and - recursively show/hide every child inside the group; - clutter_group_show_all() and clutter_group_hide_all() remain as non - recursive versions of clutter_actor_show_all() and - clutter_actor_hide_all() (maybe we should rename them in order - to avoid name clashes with the bindings). - - * clutter/clutter-stage.c: - * clutter/clutter-texture.c: Chain up with parent class show - and hide vfuncs. - - * clutter/clutter-clone-texture.h: - * clutter/clutter-clone-texture.c: Provide API for changing the - parent texture of a clone texture actor. - - * examples/behave.c: - * examples/super-oh.c: - * examples/test.c: Use clutter_actor_show_all() instead of - clutter_group_show_all(). - -2006-12-08 Matthew Allum - - * clutter.doap: - Put release date in correct format. - -2006-12-08 Emmanuele Bassi - - * clutter/clutter-behaviour.h: Add a function prototype - for the foreach function: we need something more specific - than GFunc; add clutter_behaviour_get_actors(), used to - get a list of the actors. - - * clutter/clutter-behaviour.c: Add debugging notes; add - a warning for behaviour implementations missing the - alpha_notify vfunc; add api documentation - - * clutter/clutter-behaviour-opacity.c: - * clutter/clutter-behaviour-path.c: - * clutter/clutter-behaviour-scale.c: Reimplement the - alpha_notify functions using the new foreach function - and, where possible, by directly iterating on the - actors: this shaves off the number of recalculations - of the property/alpha values, and the number of - functions. - -2006-12-05 Emmanuele Bassi - - * clutter/clutter-rectangle.c: Forgot to set the - pencil color. - -2006-12-05 Emmanuele Bassi - - * behave.c: Add test for clutter_color_parse(). - -2006-12-05 Emmanuele Bassi - - * clutter/clutter-event.c: Move the apidoc out. - -2006-12-05 Emmanuele Bassi - - * clutter/clutter-color.h: - * clutter/clutter-color.c: Add clutter_color_parse(), - which parses a string containing a color definition as - understood by XParseColor() (or pango_color_parse()). - -2006-12-04 Emmanuele Bassi - - Avoid clutter segfaulting when used without invoking - clutter_init(). This is needed when using api documentation - tools and every other tool relying on the GObject - introspection API (esp. on a headless box). see the - note in clutter/clutter-feature.c:clutter_feature_init - for a full explanation. - - * clutter/clutter-feature.c: Call clutter_feature_init() - when needed by one of the accessors of the features - structure. - - * clutter/clutter-main.c: - * clutter/clutter-private.h: Remove clutter_feature_init() - public declaration: the features support check is done the - first time a feature is needed. - - * clutter/clutter-main.c: Do not ever access the clutter - main context pointer directly; instead, obtain a pointer - to it via clutter_context_get_default(), which will always - return something valid. - -2006-12-04 Emmanuele Bassi - - * clutter/clutter-private.h: Add our own READABLE, - WRITABLE and READWRITE paramspec flags, declaring the - string components of the properties GParamSpec as static; - this should shave off some bytes in the memory footprint - and avoid relocations. - - * clutter/clutter-actor.c: - * clutter/clutter-behaviour.c: - * clutter/clutter-behaviour-opacity.c: - * clutter/clutter-behaviour-path.c: - * clutter/clutter-behavuour-scale.c: - * clutter/clutter-clone-texture.c: - * clutter/clutter-label.c: - * clutter/clutter-rectangle.c: - * clutter/clutter-stage.c: - * clutter/clutter-texture.c: - * clutter/clutter-timeline.c: Use the CLUTTER_PARAM_* - macros we just added. - - * clutter/clutter-behaviour-scale.c: Add properties for - the scale begin, scale end and gravity parameters. - - * clutter/clutter-behaviour-path.h: Mark the ClutterKnot - memory management functions as public (for the bindings), - since we use the slice allocator for copying knots around; - add a clutter_knot_equal() function. - - * clutter/clutter-behaviour-path.c: - (node_distance): Use clutter_knot_equal() as a fast path - to avoid the sqrt() in case the nodes we are using are - at the same position. - (path_total_length): Additional check on the existence - of the next node. - - * examples/behave.c: Do not leak the ClutterBehaviour - objects around. - -2006-12-03 Emmanuele Bassi - - * clutter/clutter-texture.h: Clean up. - - * clutter/clutter-texture.c: Typo fix in the name - of ClutterTextureTileDimension. - - * clutter/clutter-behaviour.c: Allow passing NULL - to clutter_behaviour_set_alpha() (as we pass NULL - in the finalize process). - -2006-12-02 Emmanuele Bassi - - * clutter/clutter-version.h.in: Fix a stupid logic - error in the CHECK_VERSION macro. - -2006-11-30 Matthew Allum - - * clutter.doap: - Updates - -2006-11-30 Emmanuele Bassi - - * clutter/clutter-stage.h: - * clutter/clutter-stage.c: - (clutter_stage_swap_buffers): Remove, as the same is done - via clutter_redraw() and clutter_actor_queue_redraw(). - - (clutter_stage_unrealize), (clutter_stage_init), - (clutter_stage_set_xwindow_foreign): Do not call - XDestroyWindow() on the stage Window if we are using a - foreign Window, as we don't control its lifetime. - -2006-11-30 Emmanuele Bassi - - * Makefile.am: Remove the gtk directory from the SUBDIRS. - - * clutter/clutter-stage.h: - * clutter/clutter-stage.c: Add clutter_stage_swap_buffers(), - which swaps the GL buffers. This fixes the redraw in the - GTK widget. - -2006-11-29 Emmanuele Bassi - - * clutter/clutter-stage.c: - (clutter_stage_set_xwindow_foreign): Add checks; - remove an indirection to the private data. - -2006-11-29 Emmanuele Bassi - - * gtk/* - * configure.ac: - * Makfile.am: Remove the GTK+ widget from the - main tree; now Clutter depends just on GLib, - XLibs, GdkPixbuf and OpenGL. - -2006-11-29 Matthew Allum - - * clutter/clutter-stage.c: (clutter_stage_realize): - Set colormap on stage window - should fix issues - with indirect rendering. - -2006-11-23 Matthew Allum - - * clutter/clutter-debug.h: - Fix small macro typo. - -2006-11-22 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-alpha.c: - * clutter/clutter-behaviour-opacity.c: - * clutter/clutter-behaviour-scale.c: - * clutter/clutter-clone-texture.c: - * clutter/clutter-feature.c: - * clutter/clutter-label.c: - * clutter/clutter-main.c: - * clutter/clutter-stage.c: - * clutter/clutter-texture.c - * clutter/clutter-timeline.c: - * clutter/clutter-debug.h: - Make CLUTTER_NOTE() just take a string rather than a func. - Add more default context to output. - - * configure.ac: - Fix flag and add more help docs for --ebable-debug option. - -2006-11-21 Emmanuele Bassi - - * clutter/clutter-main.c: Add a --g-fatal-warnings switch - for abort()-ing on warnings and criticals. - -2006-11-21 Emmanuele Bassi - - * configure.ac: Enable debug messages also when - --enable-debug is set to "minimum". - - * clutter/Makefile.am: - * clutter/clutter-debug.h: Move all debugging macros inside - this private header; make all debug macros depend on the - CLUTTER_ENABLE_DEBUG compile time define, controlled by - the --enable-debug configure switch; add G_LOG_DOMAIN define. - - * clutter/clutter-main.c: Clean up the debug stuff; add - command line argument parsing using GOption; the debug - messages now are triggered like this: - - CLUTTER_DEBUG=section:section:... clutter-app - - or like this: - - clutter-app --clutter-debug=section:section:... - - where "section" is one of the sections listed in clutter-main.c, - or "all", for all sections; each section is bound to a flag, - which can be used to define a domain when adding a debug note - using the CLUTTER_NOTE() macro; the old CLUTTER_DBG() macro is - just a wrapper around that, under the CLUTTER_DEBUG_MISC domain; - CLUTTER_NOTE() is used like this: - - CLUTTER_NOTE (DOMAIN, log-function); - - where log function is g_printerr(), g_message(), g_warning(), - g_critical() or directly g_log() - for instance: - - CLUTTER_NOTE (PANGO, g_warning ("Cache miss: %d", glyph)); - - will print the warning only if the "pango" flag has been - set to the CLUTTER_DEBUG envvar or passed to the --clutter-debug - command line argument. - - similar to CLUTTER_SHOW_FPS, there's also the --clutter-show-fps - command line switch; also, the --display and --screen command - line switches have been added: the first overrides the DISPLAY - envvar and the second controls the X screen used by Clutter to - get the root window on the display. - - * clutter/clutter-main.h: - * clutter/clutter-main.c: Add extended support for GOption - in Clutter; use clutter_init_with_args() to let Clutter - parse your own command line arguments; use instead - clutter_get_option_group() to get the GOptionGroup used by - Clutter if you want to do the parsing yourself with - g_option_context_parse(). The init sequence has been verified, - updated and moved into common functions where possible. - - * clutter/pango/pangoclutter-render.c: - * clutter/*.c: Include "clutter-debug.h" where needed; use - CLUTTER_NOTE() instead of CLUTTER_DBG(). - - * examples/super-oh.c: Use the new clutter_init_with_args() - function, and add a --num-hands command line switch to - the SuperOH example code controlling the number of hands at - runtime. - -2006-11-21 Emmanuele Bassi - - * configure.ac: Rename G_ENABLE_DEBUG to CLUTTER_ENABLE_DEBUG. - -2006-11-20 Emmanuele Bassi - - * clutter/clutter-rectangle.h: - * clutter/clutter-rectangle.c: Add border to the ClutterRectangle - actor; add "border-width", "border-color" and "has-border" - properties, plus their accessors. The border generation code is - pretty lame, at the moment. - - * examples/behave.c: Add code to test the new rectangle properties. - -2006-11-20 Matthew Allum - - * clutter.doap: - Add an initial DOAP file to project - -2006-11-20 Emmanuele Bassi - - * clutter/Makefile.am: - * clutter/clutter.h: - * clutter/clutter-version.h.in: Auto-generated versioning macros. - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: Add a ClutterActor::parent-set signal, - for notificating changes of an actor's parent; add api-doc for - the actor's properties; add the ClutterActor "name" property; clean - up a bit some functions; emit the "parent-set" signal when setting - te parent and when unparenting; better warnings when lowering - and raising an actor. - - * configure.ac: - * clutter/Makefile.am: Add a --enable-debug configure option, - with three levels of debugging: no, minimum and yes; default - for development releases (odd minor version) is "yes"; update - the version m4 defines; update the libtool macros: now just - changed the clutter_interface_age when releasing will update - everything else. - -2006-11-17 Emmanuele Bassi - - * clutter/clutter-behaviour-path.h: - * clutter/clutter-behaviour-path.c: Add "since" strings; add - a "knot" property which can be used to append a knot to the path; - fix apidoc. - - * clutter/clutter-alpha.c: Add "since" strings. - - * clutter/clutter-feature.c: Add apidoc. - - * clutter/clutter-behaviour-opacity.c: Add the "opacity-start" - and "opacity-end" properties; rewrite constructor to use them. - -2006-11-17 Emmanuele Bassi - - * clutter/clutter-behaviour-path.h: - * clutter/clutter-behaviour-path.c: Add a "knot-reached" signal, - which is emitted when the path reaches a node in the nodes list; - flesh out the documentation a bit; sync the parameters names - so that gtk-doc doesn't complain about missing stuff. - - * clutter/clutter-behaviour.h: - * clutter/clutter-behaviour.c: Add the alpha value to the - ClutterBehaviour::alpha_notify vfunc, so you don't have to - get the value from the alpha inside the behaviour implementations; - add more documentation. - - * clutter/clutter-alpha.c: Flesh out the description. - - * clutter/clutter-actor.h: Update the header. - - * clutter/clutter-behaviour-opacity.c: - * clutter/clutter-behaviour-scale.c: Update docs. - -2006-11-17 Matthew Allum - - * clutter/clutter-alpha.c: - * clutter/clutter-behaviour-opacity.c: - More docs. - - * clutter/clutter-behaviour-path.h: - * clutter/clutter-behaviour-path.c: - More docs, add clutter_behaviour_path_insert_knot(), - clutter_behaviour_path_remove_knot() - - * clutter/clutter-behaviour-scale.h: - * clutter/clutter-behaviour-scale.c: - More docs, add clutter_behaviour_scale_newx() taking fixed values. - - * clutter/Makefile.am: - * clutter/pango/Makefile.am: - Fix linking warning. - -2006-11-15 Matthew Allum - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - Add new API clutter_actor_move_by(), clutter_actor_get_size() - - * clutter/clutter-alpha.c: - * clutter/clutter-alpha.h: - Add clutter alpha sine func - - * clutter/clutter-behaviours.h: - * clutter/clutter-behaviours.c: - Add a basic scale behaviour (needs work) - - * examples/behave.c: (main): - More playing with new behaviour functionality - - * clutter/clutter-feature.c: - * clutter/clutter-feature.h: - * clutter/clutter-main.c: - Add new experimental sync to vblank code - Set env CLUTTER_VBLANK=none to disable. - -2006-11-16 Emmanuele Bassi - - * clutter/clutter-private.h: - * clutter/clutter-actor.c: Implement the defined - clutter_actor_reparent() method; call unrealize - when unparenting an actor. - -2006-11-15 Emmanuele Bassi - - * clutter/clutter-alpha.h: - * clutter/clutter-alpha.c: Add a data parameter to - the ClutterAlphaFunc; add a data+destroy parameter - to clutter_alpha_set_func() and to clutter_alpha_new(), - and turned the latter into clutter_alpha_new_full(); - add a simple, empty constructor clutter_alpha_new(). - - These changes makes writing bindings a tad more easy, - as bindings require passing their own functions in - order to call the real alpha function. - - * clutter/clutter-behaviour.h: Clean up the header. - - * clutter/clutter-behaviours.[ch]: - * clutter/clutter-behaviour-opacity.[ch]: - * clutter/clutter-behaviour-path.[ch]: - * clutter/clutter-behaviour-scale.[ch]: Split the - ClutterBehaviourPath, ClutterBehaviourOpacity and - ClutterBehaviourScale into their own files as they - have been growing a bit. Fix ClutterBehaviourPath - API. - - * clutter/clutter-media.h: Remove the commented - "metadata_available" signal: gtk-doc chokes up on that. - - * clutter/clutter-timeline.h: - * clutter/clutter-timeline.c: Remove the useless - ClutterTimelineAlphaFunc signature; add missing accessor - methods for the properties; clean up a bit. - - * clutter/clutter-util.h: - * clutter/clutter-util.c: Remove unneeded function - clutter_util_can_create_texture(). - - * clutter/clutter-feature.h: Sync the name of - clutter_feature_get_all() with the name declared - in clutter-feature.h. - - * clutter/Makefile.am: - * clutter/clutter.h: Update. - - * examples/behave.c: Update to the new ClutterAlpha - constructor. - - * examples/super-oh.c: Use the right pointer and avoid - the compiler making a fuss about it. - -2006-11-15 Matthew Allum - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - Add new API clutter_actor_move_by(), clutter_actor_get_size() - - * clutter/clutter-alpha.c: - * clutter/clutter-alpha.h: - Add clutter alpha sine func - - * clutter/clutter-behaviours.h: - * clutter/clutter-behaviours.c: - Add a basic scale behaviour (needs work) - - * examples/behave.c: (main): - More playing with new behaviour functionality - - * clutter/clutter-feature.c: - * clutter/clutter-feature.h: - * clutter/clutter-main.c: - Add new experimental sync to vblank code - Set env CLUTTER_VBLANK=none to disable. - -2006-11-15 Emmanuele Bassi - - * clutter/clutter-alpha.h: - * clutter/clutter-alpha.c: ClutterAlpha is an initially - floating object, as it makes sense only when bound to - a ClutterBehaviour; add checks for public API. - - * clutter/clutter-behaviour.h: - * clutter/clutter-behaviour.c: Remove the ClutterBehaviour - constructor: ClutterBehaviour is an abstract class which - must be implemented by subclassing; add checks for public - API; unref the actors on finalize; sink the ClutterAlpha - object. - - * clutter/clutter-behaviours.h: ClutterKnot is a boxed - type: add the _get_type() function declaration and the - type macro. - -2006-10-23 Matthew Allum - - * clutter/clutter-alpha.h: - * clutter/clutter-behaviour.c: - * clutter/clutter-behaviour.h: - * clutter/clutter-behaviours.c: - * clutter/clutter-behaviours.h: - * examples/behave.c: - Behaviours now only 'driven' by ClutterAlpha, not any object/prop. - Add simple Clutter path behaviour. - -2006-10-03 Matthew Allum - - * configure.ac: - * clutter/Makefile.am: - * clutter/clutter-actor.c: - * clutter/clutter-label.c: - * clutter/clutter-label.h: - * clutter/pango/Makefile.am: - * clutter/pango/pangoclutter-font.c: - * clutter/pango/pangoclutter-fontmap.c: - * clutter/pango/pangoclutter-private.h: - * clutter/pango/pangoclutter-render.c: - * clutter/pango/pangoclutter.h: - Add initial rough new pango renderer and clutter-label. - - * examples/super-oh.c: - * examples/test.c: - Minor fixups - -2006-09-20 Matthew Allum - - * clutter/clutter-actor.c: (clutter_actor_paint): - * clutter/clutter-clone-texture.c: (clutter_clone_texture_paint): - * clutter/clutter-group.c: (clutter_group_paint): - * clutter/clutter-rectangle.c: (clutter_rectangle_paint): - * clutter/clutter-texture.c: (clutter_texture_paint): - Fix for #156. - clutter_actor_paint() now translates to actor position as - to not fix scaled groups positioning. Sub classes now paint - at 0,0. - -2006-09-19 Matthew Allum - - * clutter/clutter-actor.c: (redraw_update_idle), - (clutter_actor_queue_redraw): - * clutter/clutter-main.c: (clutter_redraw): - Remove now uneeded locks - ( new gst and texture code makes redundant ) - - * clutter/clutter-texture.c: - * clutter/clutter-texture.h: - Redo clutter texture as to not keep a reference - to underlying texture. - -2006-09-15 Matthew Allum - - More fixes from Bastien Nocera (#155): - - * clutter/clutter-main.c: (clutter_init): - * clutter/clutter-main.h: - Add an enum for clutter init to return an error code. - * configure.ac: - Dont check for XInitThreads, there is no need, its part of xlib. - -2006-09-14 Matthew Allum - - Various fixes from Bastien Nocera: - - * clutter/clutter-event.h: - * clutter/clutter-stage.c: (clutter_stage_unrealize), - (clutter_stage_realize), (clutter_stage_request_coords), - (clutter_stage_dispose), (clutter_stage_init): - * clutter/clutter-stage.h: - * gtk/gtk-clutter-test.c: (input_cb), (frame_cb), (main): - * gtk/gtk-clutter.c: (realize): - Misc fixes (#152) - - * clutter/clutter-group.c: (clutter_group_remove): - Remove uneeded ref count (#143) - - * examples/super-oh.c: (input_cb): - Handle key release rather than presses (#154) - - * configure.ac: - Add old style X libs check when x11.pc unavailable (#101) - -2006-09-01 Matthew Allum - - * clutter/Makefile.am: - * clutter/clutter-media.c: - * clutter/clutter-media.h: - * clutter/clutter.h: - Re-add clutter media. - -2006-08-31 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-group.c: (clutter_group_paint), - (clutter_group_request_coords), (clutter_group_allocate_coords), - (clutter_group_add): - Fix some group sizing/positioning issues. - -2006-08-30 Jorn Baayen - - * clutter.pc.in: - - Remove gstreamer deps. - -2006-08-30 Jorn Baayen - - * README: - * clutter/Makefile.am: - * clutter/clutter-audio.c: - * clutter/clutter-audio.h: - * clutter/clutter-main.c: (clutter_init): - * clutter/clutter-media.c: - * clutter/clutter-media.h: - * clutter/clutter-video-texture.c: - * clutter/clutter-video-texture.h: - * clutter/clutter.h: - * configure.ac: - * examples/Makefile.am: - * examples/README: - * examples/video-cube.c: - * examples/video-player.c: - * gst/Makefile.am: - * gst/clutterimagesink.: - * gst/clutterimagesink.c: - * gst/clutterimagesink.h: - * gtk/Makefile.am: - - Remove gstreamer bits. There live in clutter-gst now. - -2006-08-30 Jorn Baayen - - * clutter/Makefile.am: - * clutter/clutter-audio.c: - * clutter/clutter-audio.h: - * clutter/clutter.h: - - Added ClutterAudio audio playback object. - -2006-08-29 Matthew Allum - - * clutter/clutter-fixed.h: - Add basic fixed point utility defines and type. - - * clutter/Makefile.am: - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * clutter/clutter-group.c: - * clutter/clutter-stage.c: - * examples/super-oh.c: (main): - Add scale API and functionality. - Rework group sizing. Now group size requests have no effect - but can be scaled. - -2006-08-29 Jorn Baayen - - * clutter/clutter-behaviour.c: (_clutter_behaviour_finalize), - (_clutter_behaviour_set_property), - (_clutter_behaviour_get_property), (clutter_behaviour_class_init), - (clutter_behaviour_init), (clutter_behaviour_apply), - (clutter_behaviour_remove), (clutter_behaviour_remove_all), - (clutter_behaviour_actors_foreach): - * clutter/clutter-behaviour.h: - * clutter/clutter-behaviours.c: - (clutter_behaviour_property_change), - (clutter_behaviour_opacity_dispose), - (clutter_behaviour_opacity_finalize), - (clutter_behaviour_opacity_class_init), - (clutter_behaviour_opacity_init): - * clutter/clutter-behaviours.h: - * clutter/clutter-marshal.list: - * examples/behave.c: (main): - - Behaviours track generic GObject properties. - - * clutter/clutter-video-texture.h: - - Remove signal prototypes - they are already specified in - clutter-media.h. - -2006-08-28 Jorn Baayen - - * clutter/Makefile.am: - * clutter/clutter-alpha.c: - * clutter/clutter-alpha.h: - * clutter/clutter-behaviours.c: - (clutter_behaviour_opacity_dispose), - (clutter_behaviour_opacity_init), - (clutter_behaviour_opacity_frame_foreach), - (clutter_behaviour_opacity_frame): - * clutter/clutter-behaviours.h: - * clutter/clutter-timeline.c: (clutter_timeline_class_init): - * clutter/clutter-timeline.h: - * clutter/clutter.h: - * examples/behave.c: (main): - - Separate alpha calculation into its own class. - - * clutter/clutter-behaviour.c: (clutter_behaviour_set_timelime): - - Correct NULL check. - -2006-08-15 Matthew Allum - - * clutter/clutter-behaviour.h: - Behaviours shouldn't subclass timelines. - -2006-08-15 Matthew Allum - - * clutter/clutter-behaviour.c: - * clutter/clutter-behaviour.h: - * clutter/clutter-behaviours.c: - * clutter/clutter-timeline.c: - * clutter/clutter-timeline.h: - * clutter/clutter.h: - Make basic behaviour infrastructure actually work. - - * examples/Makefile.am: - * examples/behave.c: - Add a simple behaviour demo/test - - * clutter/clutter-media.c: (clutter_media_set_volume): - Actuall set volume rather than position.. (Fixes #141) - -2006-08-14 Matthew Allum - - * clutter/Makefile.am: - * clutter/clutter-behaviour.c: - * clutter/clutter-behaviour.h: - * clutter/clutter-behaviours.c: - * clutter/clutter-behaviours.h: - * clutter/clutter-timeline.c: - * clutter/clutter-timeline.h: - Add very initial new behaviour functionality. - - * clutter/clutter-stage.c: - * clutter/clutter-main.c: - * clutter/clutter-actor.c: - Improve clipping using stencil test rather than scissor check. - ( Should now handle rotated clips etc ). - - * clutter/clutter-group.c: (clutter_group_paint): - Fix typo on position check. - -2006-08-07 Matthew Allum - - * clutter/clutter-video-texture.c: (lay_pipeline): - Set quality of service prop on fakesink to TRUE. - -2006-08-07 Matthew Allum - - * clutter/clutter-actor.c: (clutter_actor_paint): - Remove relic from old stage behaviour - dont unref - it during a clip. - -2006-07-27 Emmanuele Bassi - - * clutter/clutter-feature.c: No need to call clutter_feature_init() - each time: it's private and should never be seen from the outside; - add a warning, just in case something screws up and calls it more - than once. - -2006-07-27 Emmanuele Bassi - - * clutter/clutter-private.h: Move clutter_feature_init() - declaration here: you shouldn't even need to initialise - features yourself. - - * clutter/clutter-feature.c: call clutter_feature_init() - each time you try to access the feature list; add a static - lock around the feature flags container; add api documentation. - - * clutter/clutter-feature.h: Add a type for the feature flags - to make bindings happy. - -2006-07-24 Matthew Allum - - * clutter/Makefile.am: - * clutter/clutter-feature.c: - * clutter/clutter-feature.h: - - Add new funcs for checking for available runtime GL - extensions. - - * clutter/clutter-clone-texture.c: - * clutter/clutter-texture.c: - - Add support for non power of two textures - if GL_TEXTURE_RECTANGLE_ARB extension available ( at runtime ). - Should lower texture memory needs a little. - -2006-07-17 Emmanuele Bassi - - * clutter/clutter-stage.c (clutter_stage_get_default): Fix - api documentation. - -2006-07-15 Emmanuele Bassi - - * clutter/clutter-main.c: - - (clutter_main): Destroy the main stage, instead of unreffing it. - - (clutter_init): Ref and sink the main stage, as it is a top - level actor. - - * clutter/clutter-stage.c (clutter_stage_unrealize): Access - the Window private member directly, instead of calling the - get_xwindow method. - - * examples/test.c (main): Quit on button press. - -2006-07-09 Emmanuele Bassi - - * clutter/clutter-event.h: Change the name of the - ClutterEvent union members to something a little shorter. - -2006-07-06 Emmanuele Bassi - - * configure.ac: Remove the python stuff, now that the bindings - are out of tree. - -2006-07-06 Emmanuele Bassi - - * configure.ac: Mark this as 0.1.1, and change the version info - of the library. - - * clutter/clutter-actor.c: - * clutter/clutter-group.c: Fix documentation. - -2006-07-06 Emmanuele Bassi - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: - - (clutter_actor_class_init), (clutter_actor_set_property), - (clutter_actor_get_property): Add the "clip" and "has-clip" - properties. - - (clutter_actor_set_clip), (clutter_actor_remove_clip): Emit - the notification for the changed properties. - - (clutter_actor_has_clip): Simple accessor to the "has-clip" - property. - -2006-07-06 Emmanuele Bassi - - Big rework of the actor management semantics: now ClutterActor - objects behave like GtkObjects - that is they have an initial - "floating" reference that gets "sunk" when they are added to - a ClutterGroup. This makes a group responsible of de-allocating - each actor inside it, so you just have to destroy the group to - get every child actor destroyed. Also, now you can do: - - clutter_group_add (group, clutter_video_texture_new ()); - - without having to care about reference counting and explicit - unreffing. - - * clutter/clutter-private.h: Add private flags setter and - getter macros. - - * clutter/clutter-actor.h: - * clutter/clutter-actor.c: Clean up; inherit from GInitiallyUnowned; - add a "visible" property; add the "destroy", "show" and "hide" - signals to ClutterActorClass. - - (clutter_actor_show), (clutter_actor_hide): Refactor a bit; emit - the "show" and "hide" signals. - - (clutter_actor_set_property), (clutter_actor_get_property), - (clutter_actor_class_init): Implement the "visible" property; add - signals. - - (clutter_actor_finalize): Do not leak the actor's name, if it is - set. - - (clutter_actor_dispose): Emit the "destroy" signal here. - - (clutter_actor_init): Sink the initial floating flag if needed. - - (clutter_actor_destroy): Add a function to explicitely destroy - a ClutterActor. - - (clutter_actor_set_parent), (clutter_actor_get_parent), - (clutter_actor_unparent): Make set_parent require a valid parent; - add unparent; check on get_parent; ref_sink the actor when - setting its parent and unref it when unsetting it. Probably we'll - need a function that does reparenting as unparent+set_parent in - a single shot. - - * clutter/clutter-group.h: - * clutter/clutter-group.c (clutter_group_dispose), - (clutter_group_finalize), (clutter_group_add), - (clutter_group_remove): Make the group destroy its children when - disposing it; clean up, and use the newly-available - clutter_actor_unparent(). - - * clutter/clutter-stage.h: - * clutter/clutter-stage.c (clutter_stage_init): ClutterStage is - a top-level actor; clean up. - - * clutter/clutter-video-texture.h: - * clutter/clutter-video-texture.c: Clean up. - - * examples/super-oh.c: - * examples/test.c: - * examples/video-player.c: - * examples/test-text.c: - * examples/video-cube.c: Remove the g_object_unref() call, as the - ClutterStage object is destroyed on clutter_main_quit(). - -2006-06-23 Matthew Allum - - * examples/super-oh.c: - Remove random stage unref fixing trails. Fixes #98 - -2006-06-23 Matthew Allum - - * examples/video-player.c: (size_change): - cast stage height to gint avoiding wierdness for when - video height greater than half display height. Fixed #99 - -2006-06-23 Matthew Allum - - * clutter/clutter-video-texture.c: (clutter_video_texture_new): - Small fix for video playback on Big Endian. See #97 - -2006-06-23 Iain Holmes - - * clutter/clutter-texture.h: Add space :) Sorry. - -2006-06-23 Iain Holmes - - * clutter/clutter-label.h: - * clutter/clutter-group.h: - * clutter/clutter-rectangle.h: - * clutter/clutter-video-texture.h: - * clutter/clutter-event.h: - * clutter/clutter-texture.h: Fix the header layout so that C# parser - can understand everything. - -2006-06-23 Ross Burton - - * configure.ac: - * Makefile.am: - Remove references to bindings/, it's moved. - -2006-06-23 Emmanuele Bassi - - * clutter/clutter-group.c - (clutter_group_get_children): Mention that you must free - the returned list otherwise you'll leak stuff all around. - -2006-06-23 Ross Burton - - * examples/super-oh.c: - Fix build with trails enabled. Still crashes. - -2006-06-23 Ross Burton - - * configure.ac: - Disable static libraries. - -2006-06-22 Matthew Allum - - * web/index.html: - Make OpeneHand link - -2006-06-22 Matthew Allum - - * web/index.html: - Add Pango ref, authors info. - -========== 2006-06-22 0.1 Release ===================== - -2006-06-22 Matthew Allum - - * configure.ac: - * web/index.html: - Correct Bugzilla link. Add debs link - Bump up version to 0.1 ! - -2006-06-22 Matthew Allum - - * NEWS: - Add an entry for 0.1 release - * web/index.html: - * web/style.css: - Add basic website. - -2006-06-22 Iain Holmes - - * clutter/clutter-main.c: Guess what...more docs - -2006-06-22 Iain Holmes - - * clutter/clutter-event.c: Add docs - -2006-06-22 Iain Holmes - - * clutter/clutter-media.c: Add docs - -2006-06-22 Iain Holmes - - * clutter/clutter-texture.c: Fix typos. - - * clutter/clutter-timeline.c: Fix typos. - -2006-06-22 Iain Holmes - - * clutter/clutter-video-texture.c: Docs. - -2006-06-22 Iain Holmes - - * clutter/clutter-group.c: More typo fixes - - * clutter/clutter-event.c: Documentation - -2006-06-22 Emmanuele Bassi - - * clutter/clutter-timeline.h: - * clutter/clutter-timeline.c: Add a "started" and a "paused" - signals; add more sanity checks on the public functions. - - (clutter_timeline_get_loop): Add a getter function for the - loop property. - - * clutter/clutter-marshal.list: Add marshallers. - - * clutter/clutter-timeline.h: - * clutter/clutter-actor.h: Add padding for future expansion - without breaking ABI. - -2006-06-22 Iain Holmes - - * clutter/clutter-actor.c: Fix some typos in the docs. - -2006-06-22 Iain Holmes - - * clutter/clutter-util.c: And more - -2006-06-22 Ross Burton - - * clutter/clutter-label.c: - * clutter/clutter-video-texture.c: - * clutter/clutter-texture.c: - * clutter/clutter-timeline.c: - * clutter/clutter-group.c: - Fix gtk-doc problems. - -2006-06-22 Iain Holmes - - * clutter/clutter-main.c: More documentation - -2006-06-22 Matthew Allum - - * clutter/clutter-main.h: - Remove bogus xvisual call. - -2006-06-22 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - Remove mirroring related calls ( unimplemented ) - * gtk/gtk-clutter-test.c: 0 -> NULL - -2006-06-22 Iain Holmes - - * clutter/clutter-actor.c: - * clutter/clutter-stage.c: - * gtk/gtk-clutter.c: More docs - -2006-06-22 Iain Holmes - - * clutter/clutter-actor.c: Added some more docs. - -2006-06-22 Matthew Allum - - * clutter/clutter-actor.c: - * clutter/clutter-clone-texture.c: - * clutter/clutter-color.c: - * clutter/clutter-event.c: - * clutter/clutter-group.c: - * clutter/clutter-label.c: - * clutter/clutter-main.c: - * clutter/clutter-media.c: - * clutter/clutter-rectangle.c: - * clutter/clutter-stage.c: - * clutter/clutter-texture.c: - * clutter/clutter-timeline.c: - * clutter/clutter-util.c: - * clutter/clutter-video-texture.c: - * configure.ac: - Documentation updates - add section headers. - -2006-06-22 Iain Holmes - - * gtk/gtk-clutter-test.c (main): Don't show the stage. - -2006-06-22 Iain Holmes - - * gtk/gtk-clutter.[ch]: Rewrite to use - clutter_stage_set_xwindow_foreign rather than GtkSocket. - - * gtk/gtk-clutter-test.c: Add fading!1!!!!11! OMGWTFBBQ!!! - -2006-06-21 Emmanuele Bassi - - * examples/video-cube.c (main): Quit on key press. - -2006-06-21 Emmanuele Bassi - - * clutter/Makefile.am: Re-fix distcheck after last commit. - -2006-06-21 Matthew Allum - - * clutter/Makefile.am: - Make sure clutter.h included. - * clutter/clutter-stage.c: (clutter_stage_realize), - (clutter_stage_get_actor_at_pos): - Select for motion events on X window. - Return highest rather than lowest found actor for actor_at_pos. - * examples/Makefile.am: - Remove test-text, remane test video. - * examples/README: - Add info about the included examples. - * examples/test-video.c: - * examples/video-player.c: - Redo test-video a little nicer and rename. - * examples/video-cube.c: - Fix so it at least 'works' again. - * examples/test.c: - Clean up a little. - -2006-06-21 Ross Burton - - * Makefile.am: - * gtk/Makefile.am: - Add gtk widget to distcheck and fix. - -2006-06-21 Emmanuele Bassi - - * clutter/Makefile.am: - * bindings/python/Makefile.am: - * Makefile.am: Fix distcheck - -2006-06-21 Ross Burton - - * clutter/Makefile.am: - * examples/Makefile.am: - Fix dist. - -2006-06-20 Matthew Allum - - * TODO: - Update. - * clutter/clutter-group.c: - Attempt better group sizing code. - * clutter/clutter-label.c: - Minor tweaks. - * clutter/clutter-texture.c: - More debug info, make sure texture is realised for base_size() - * clutter/clutter-video-texture.c: - Seeking fixes - * examples/test.c: (main): - Populate with more randomness. - -2006-06-15 Matthew Allum - - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - Add clutter_stage_set_xwindow_foreign() call - * clutter/clutter-util.c: - * clutter/clutter-util.h: - Add some X error traps - * examples/super-oh.c: - Toy with us of new clutter_stage_set_xwindow_foreign() for - optional screensaver functionality. - -2006-06-14 Matthew Allum - - * configure.ac: - Add checks for GL/gl.h and GL/glx.h - -2006-06-14 Matthew Allum - - * AUTHORS: - * README: - * TODO: - Update all. - -2006-06-13 Matthew Allum - - * clutter/clutter-video-texture.c: - Add missing license. - -2006-06-13 Matthew Allum - - * clutter/Makefile.am: - * clutter/clutter-actor.c: - * clutter/clutter-actor.h: - * clutter/clutter-clone-texture.c: - * clutter/clutter-clone-texture.h: - * clutter/clutter-element.c: - * clutter/clutter-element.h: - * clutter/clutter-group.c: - * clutter/clutter-group.h: - * clutter/clutter-label.c: - * clutter/clutter-label.h: - * clutter/clutter-main.c: - * clutter/clutter-main.h: - * clutter/clutter-rectangle.c: - * clutter/clutter-rectangle.h: - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - * clutter/clutter-texture.c: - * clutter/clutter-texture.h: - * clutter/clutter-video-texture.c: - * clutter/clutter-video-texture.h: - * clutter/clutter.h: - * examples/super-oh.c: - * examples/test-text.c: - * examples/test-video.c: - * examples/test.c: - * examples/video-cube.c: - * gtk/gtk-clutter-test.c: - * gtk/gtk-clutter.c: - * gtk/gtk-clutter.h: - Element to Actor Renaming. - -2006-06-12 Matthew Allum - - * clutter/Makefile.am: - * clutter/clutter-media.c: - * clutter/clutter-media.h: - * clutter/clutter-video-texture.c: - * clutter/clutter-video-texture.h: - * clutter/clutter.h: - * examples/test-video.c: (main): - * examples/video-cube.c: (main): - Add new 'media' interface. - Drop Totem based video playback code replace with newly - rewritten supper Jorn based code. Clutter is now fully LGPL. - - * clutter/clutter-texture.c: (tile_dimension): - Remove uneeded overlap code. - -2006-06-08 Iain Holmes - - * clutter/clutter-texture.c: - Opps, undo change I didn't mean to commit - -2006-06-08 Iain Holmes - - * configure.ac: - Add gdk-pixbuf-xlib cflags/libs to clutter libs - Build the gtk-clutter.pc file. - - * clutter.pc.in: - Add the gdk-pixbuf-xlib depends. - - * gtk/gtk-clutter.pc.in: - pkg-config stuff for gtk-clutter - - * gtk/Makefile.am: - Install gtk-clutter.pc - -2006-06-08 Matthew Allum - - * clutter/clutter-main.c: - * clutter/clutter-private.h: - * clutter/clutter-stage.c: - Rework and fix offscreen rendering, also rejig GLX - context handling, moving mostly into stage. - Require at least OpenGL 1.2 ( CLAMP_TO_EDGE ) - - * clutter/clutter-texture.c: - Explicity set props on _init() as to avoid nasty can_create - bug failing miserably in certain situations. - Switch to CLAMP_TO_EDGE for textures to avoid tile seams. - Add some more GL error checks. - - * clutter/clutter-label.c: - Extra debug info - - * configure.ac: - Require gdk-pixbuf-xlib-2.0 - -2006-06-06 Matthew Allum - - * configure.ac: - Use pkg-config to check for X. Really Check for GL libs. - Make gtk binding optional. Cleanup a little. - - * Makefile.am: - * gtk/Makefile.am: - Make gtk binding optional - - * clutter/clutter-element.c: - Cleanup a little, notify on size change. - - * clutter/clutter-texture.c: - Lots of cleanups. Add waste prop. Add filter quality prop. - - * clutter/clutter-clone-texture.c: - Make object construction simpler to work better with bindings. - - * clutter/clutter-stage.c: - * clutter/clutter-timeline.c: - Minor reformating, cleanups. - - * examples/test-text.c: (main): - Random experimentation - -2006-06-06 Iain Holmes - - * gtk/gtk-clutter.c (size_request): Take the size of the widget from - the ClutterStage. - (gtk_clutter_class_init): Hook up size-request - -2006-06-06 Iain Holmes - - * gtk/: Add a gtk widget for clutter. - - * configure.ac: Add GTK checks - - * Makefile.am: Go into gtk/ - -2006-06-05 Matthew Allum - - * clutter/clutter-group.c: (clutter_group_remove): - Fix parent check. - -2006-06-05 Matthew Allum - - * clutter/clutter-event.h: - Remove send_event field. Clutter shouldn't need it. - - * clutter/clutter-main.c: (clutter_dispatch_x_event): - Dont malloc a new clutter event for each xevent. - - * clutter/clutter-stage.h: - * clutter/clutter-stage.c: (clutter_stage_class_init), - (clutter_stage_get_default): - Dont ref stage from clutter_stage_get_default. - - * examples/super-oh.c: (main): - Remove some now uneeded debug g_prints - -2006-06-05 Emmanuele Bassi - - * clutter-color.h: - * clutter-color.c: Reimplement ClutterColor as a boxed type; - add convenience API for color handling, like: add, subtract, - shade, HSL color-space conversion, packing and unpacking. - - * clutter-private.h: Update ClutterMainContext, and export the - main context pointer here. - - * clutter-rectangle.h: - * clutter-rectangle.c: Update the color-related code; make - clutter_rectangle_new() and empty constructor and provide - clutter_rectangle_new_with_color(); provide color setter - and getter API. - - * clutter-label.h: - * clutter-label.c: Rename the "font" property to "font-name"; - update the color-related code to the new ClutterColor object; - rename clutter_label_new() to clutter_label_new_with_text(), - and add setters and getters for the properties. - - * clutter-marshal.list: Add VOID:OBJECT and VOID:BOXED marshallers - generators. - - * clutter-stage.h: - * clutter-stage.c: Rework the API: provide a default constructor - for a singleton object, named clutter_stage_get_default(), which - supercedes the clutter_stage() function in clutter-main; provide - new events: button-press-event, button-release-event, - key-press-event and key-release-event; update the color-related - code; - - (clutter_stage_snapshot): Allow negative width and height when - taking a snapshot (meaning: use full width/height). - - (clutter_stage_get_element_at_pos): Rename clutter_stage_pick(). - - * clutter-element.c (clutter_element_paint): Clean up the - stage and color related code. - - * clutter-event.h: - * clutter-event.c: Add generic ClutterAnyEvent type; add - clutter_event_new(), clutter_event_copy() and clutter_event_free(); - make ClutterEvent a boxed type. - - * clutter-main.h: - * clutter-main.c: Remove clutter_stage(); add clutter_main_quit(), - for cleanly quitting from clutter_main(); add multiple mainloops - support; allocate the ClutterCntx instead of adding it to the - stack; re-work the ClutterEvent dispatching. - - * clutter-group.c (clutter_group_add), (clutter_group_remove): Keep - a reference on the element when added to a ClutterGroup. - - * examples/rects.py - * examples/test.c: - * examples/test-text.c: - * examples/video-cube.c: - * examples/super-oh.c: - * examples/test-video.c: Update. - -2006-06-04 Matthew Allum - - * clutter/clutter-element.c: - * clutter/clutter-group.c: - * clutter/clutter-group.h: - Work more on depth ( Z ) setting with sorting. - - * clutter/clutter-main.c: (clutter_redraw): - Experiment with glXWaitVideoSyncSGI. Currently disabled. - -2006-06-02 Matthew Allum - - * clutter/clutter-element.h: - Add missing _depth() declarations - - * clutter/clutter-main.c: - * clutter/clutter-main.h: - * clutter/clutter-private.h: - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - Rejig GL setup as for stage to support an offscreen property. - Offscreen support is however a little borked. - -2006-06-01 Matthew Allum - - * clutter/clutter-element.c: - Fix a snafu in clutter_element_raise () - - * clutter/clutter-timeline.c: - * clutter/clutter-timeline.h: - Add new clutter_timeline_is_playing() method - -2006-05-29 Matthew Allum - - * clutter/clutter-color.c: (clutter_color_set): - Fix bit shifts in clutter color setters. - -2006-05-29 Matthew Allum - - * clutter/clutter-element.c: - * clutter/clutter-element.h: - Add initial new element depth() getter and setter. - - * clutter/clutter-group.c: - * clutter/clutter-group.h: - Add 2 new methods for listing a groups children externally. - -2006-05-27 Emmanuele Bassi - - * clutter/clutter-clone-texture.c (set_parent_texture), - (clutter_clone_texture_set_property), - (clutter_clone_texture_get_property), - (clutter_clone_texture_class_init), - (clutter_clone_texture_new): Add a "parent-texture" - constructor-only property to simplify the constructor code. - - * clutter/clutter-rectangle.c (clutter_rectangle_new): - * clutter/clutter-timeline.c (clutter_timeline_new): Simplify - the constructor code. - - * examples/rect.py: Use the new method names for clutter.main() - and clutter.stage(). - -2006-05-26 Emmanuele Bassi - - * clutter/clutter-element.c: Fix gtk-doc annotations for public - functions; add sanity checks for public API; factor out some - pointer dereferences. - -2006-05-26 Emmanuele Bassi - - Big entry, small changes. - - * clutter/clutter-rectangle.c: - * clutter/clutter-clone-texture.c: - * clutter/clutter-group.c: - * clutter/clutter-element.c: - * clutter/clutter-label.c: Use the GObject built-in definition - of a private data structure; it removes the need for managing - the allocation/de-allocation of a private structure ourselves. - - * clutter/clutter-group.h: - * clutter/clutter-label.h: Add padding, for adding signals and - other class-wide definitions without breaking ABI. - - * clutter/clutter-element.h: - * clutter/clutter-element.c (clutter_element_box_get_type), - (clutter_element_box_copy): Make ClutterElementBox a GBoxed - type; clean up declarations of the enums and flags. - - * clutter/clutter-group.h: - * clutter/clutter-group.c (clutter_group_add_many_valist), - (clutter_group_add_many): Add a _valist version of - clutter_group_add_many() function, and re-implement the latter - as a proxy for the former; language bindings do not cope - well with variable argument functions. - - * clutter/clutter-video-texture.h: - * clutter/clutter-video-texture.c: Use the right prefix for - the error and for the ratio enumerations. - - * clutter/*.c: - * clutter/*.h: - * clutter/Makefile.am: Use the include path - for parallel installations. - - * clutter/Makefile.am: - * clutter/clutter-enum-types.h: - * clutter/clutter-enum-types.c: Register the enumeration types - inside the GObject type system in order to use them as properties - and bindings automagically pick them up. - - * bindings/python/ChangeLog: Add a changelog for the bindings... - - * doc/reference/ChangeLog: ... and a changelog for the reference. - - * examples/test.c: - * examples/video-cube.c: - * examples/test-video.c: Use the header. - -2006-05-25 Matthew Allum - - * clutter/clutter-clone-texture.c: - (clone_texture_render_to_gl_quad): - Remove uneeded bogus warning. Fix a typo causing large - texture to get incorrectly rendered. - * clutter/clutter-texture.c: (init_tiles), - (texture_render_to_gl_quad), (clutter_texture_sync_pixbuf), - (clutter_texture_realize): - Add some new debug info. - * clutter/clutter-video-texture.c: (fakesink_handoff_cb): - Set the pixbuf from GST_BUFFER_DATA() a little safer. - -2006-05-25 Matthew Allum - - * clutter.pc.in: - Fix prefix snafu via Ross. - -2006-05-24 Matthew Allum - - * clutter/clutter-element.c: (clutter_element_paint), - (clutter_element_class_init): - * clutter/clutter-label.c: (clutter_label_make_pixbuf): - * clutter/clutter-main.c: (clutter_main): - * clutter/clutter-stage.c: (sync_fullscreen), (sync_gl_viewport): - * clutter/clutter-stage.h: - Various minor tweaks / fixes needed by o.p.t - * clutter/clutter-texture.c: (texture_render_to_gl_quad), - (clutter_texture_sync_pixbuf), (clutter_texture_set_property), - (clutter_texture_get_property), (clutter_texture_class_init): - Experiment adding currently borked repreating textures, - * clutter/clutter-timeline.c: (timeline_timeout_func), - (clutter_timeline_skip): - Fix timeline callback frame counting. - * examples/test-video.c: (main): - Experiment with repeated textures. - -2006-05-23 Matthew Allum - - * clutter/clutter-clone-texture.h: - Fix Include. - * clutter/clutter-element.c: (clutter_element_set_parent): - Only unref if parent non NULL - * clutter/clutter-label.c: (clutter_label_class_init), - (clutter_label_set_text), (clutter_label_set_font): - * clutter/clutter-stage.h: - Add some utility defines - * clutter/clutter-texture.c: (init_tiles): - * clutter/clutter-timeline.c: (clutter_timeline_class_init), - (timeline_timeout_func), (clutter_timeline_get_current_frame): - * clutter/clutter-timeline.h: - Add a 'completed' signal - Dont free priv when g_type_class_private used. - * clutter/clutter.h: - Add missing clutter-rectangle.h - * examples/Makefile.am: - * examples/super-oh.c: (main): - * examples/test.c: - * examples/video-cube.c: - Fix includes - -2006-05-22 Matthew Allum - - * clutter/clutter-element.c: - * clutter/clutter-element.h: - * clutter/clutter-event.c: - * clutter/clutter-group.c: (clutter_group_remove_all): - * clutter/clutter-group.h: - * clutter/clutter-main.c: (translate_button_event), - (translate_motion_event): - Improve mouse event handling. - Add code to map arbituary ( i.e cursor ) position to - a clutter element using OpenGL 'picking'. - * clutter/clutter-texture.c: - * clutter/clutter-clone-texture.c: - re-realize parent texture if it gets hidden. - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - Make sure stage sets gl viewport up even if just default size. - (clutter_texture_hide), (clutter_texture_paint): - * doc/reference/Makefile.am: - * examples/super-oh.c: (input_cb), (frame_cb), (main): - Add test for mouse events, click to remove. - -2006-05-21 Matthew Allum - - * clutter/clutter-element.c: - * clutter/clutter-element.h: - Add new core sizing methods and more documentation. - * clutter/clutter-group.c: - * clutter/clutter-group.h: - Use the sizing bits and documentation. - * clutter/clutter-main.c: - * clutter/clutter-event.h: - Add FPS display when CLUTTER_SHOW_FPS env var set. - Add initial support for mouse events. - * clutter/clutter-stage.c: - Add 'snapshot' method. - * clutter/clutter-texture.c: (clutter_texture_new_from_pixbuf): - * clutter/clutter-texture.h: - Documentation. - * clutter/clutter-timeline.c: - Add support for changing FPS setting on the fly. Document. - * examples/super-oh.c: (frame_cb), (main): - Add an optional motion trails effect. - -2006-05-17 Matthew Allum - - * README: - Add a tiny bit of info - * TODO: - Sync up a little - * clutter/clutter-clone-texture.c: - (clone_texture_render_to_gl_quad): - * clutter/clutter-element.c: (clutter_element_show), - (clutter_element_realize), (clutter_element_unrealize), - (clutter_element_paint), (clutter_element_set_id), - (clutter_element_get_id): - * clutter/clutter-element.h: - Rename REALISE() to REALIZE() - - * clutter/clutter-texture.c: (texture_render_to_gl_quad), - (clutter_texture_sync_pixbuf), (clutter_texture_set_pixbuf): - * clutter/clutter-video-texture.c: (query_timeout), - (got_video_size), (caps_set), (parse_stream_info), - (handle_element_message), (bus_message_cb), - (poll_for_state_change_full), (clutter_video_texture_get_property), - (clutter_video_texture_class_init), (clutter_video_texture_init), - (clutter_video_texture_open), (clutter_video_texture_seek_time), - (stop_play_pipeline): - * clutter/clutter-video-texture.h: - Move over using fakesink and handoff instead of custom element - Support 3 channel pixbufs as textures and thus increase efficiency - of video texture ( also avoids byte swapping. ) - Clean up video texture code somemore. - Add some metadata support. - - * Makefile.am: - * configure.ac: - Disable old custom clutter gst element from build. - - * examples/test-video.c: (foo), (size_change), (tick), (main): - * examples/video-cube.c: (clutter_video_texture_cube_paint): - Sink with new API. Pause on key press. - -2006-05-13 Matthew Allum - - * clutter/clutter-element.c: (redraw_update_idle), - (clutter_element_show), (clutter_element_hide), - (clutter_element_realize), (clutter_element_unrealize), - (clutter_element_class_init), (clutter_element_init), - (clutter_element_queue_redraw), (clutter_element_set_geometry), - (clutter_element_get_geometry), (clutter_element_get_coords), - (clutter_element_set_position), (clutter_element_set_size), - (clutter_element_get_abs_position), (clutter_element_get_width), - (clutter_element_get_height), (clutter_element_get_x), - (clutter_element_get_y), (clutter_element_set_opacity): - * clutter/clutter-texture.c: (clutter_texture_get_base_size), - (clutter_texture_bind_tile), (clutter_texture_get_n_tiles), - (clutter_texture_get_x_tile_detail), - (clutter_texture_get_y_tile_detail): - * doc/reference/Makefile.am: - * doc/reference/clutter.types: - Documentation updates. - -2006-05-13 Matthew Allum - - * clutter.pc.in: - Add @MAJORMINOR@ to installed dirs. - * clutter/clutter-main.c: (clutter_xscreen), (clutter_init): - * clutter/clutter-main.h: - * clutter/clutter-private.h: - Quick fix for debug statements so now only appear - if CLUTTER_DBBUG env var set. - -2006-05-12 Matthew Allum - - * configure.ac: - * Makefile.am: - * clutter/Makefile.am: - * bindings/python/Makefile.am: - * examples/Makefile.am: - * gst/Makefile.am: - Clean up autofoo a bit fixing versioning. - * bootstrap-autotools.sh: - * clutter-1.0.pc.in: - Rename. - -2006-05-12 Matthew Allum - - * bindings/python/Makefile.am: - * bindings/python/clutter.override: - * clutter/Makefile.am: - * clutter/clutter-bin.c: - * clutter/clutter-bin.h: - * clutter/clutter-element.c: (clutter_element_dispose), - (clutter_element_raise), (clutter_element_lower): - * clutter/clutter-group.c: - * clutter/clutter-group.h: - * clutter/clutter-main.c: (clutter_threads_leave): - * clutter/clutter-main.h: - * clutter/clutter-stage.c: (clutter_stage_class_init): - * clutter/clutter-stage.h: - * clutter/clutter.h: - * examples/super-oh.c: (frame_cb), (main): - * examples/test-text.c: (main): - * examples/test-video.c: (main): - * examples/test.c: (main): - * examples/video-cube.c: (main): - Rename clutter-bin to clutter-group - -2006-05-11 Matthew Allum - - * clutter/clutter-clone-texture.c: - (clone_texture_render_to_gl_quad), (clutter_clone_texture_paint), - (clutter_clone_texture_class_init), (clutter_clone_texture_new): - Fix cloning. - * clutter/clutter-element.c: (clutter_element_rotate_z), - (clutter_element_rotate_x), (clutter_element_rotate_y): - Minor tweaks - * examples/Makefile.am: - * examples/super-oh.c: - Add a new demo - unsing rotations and clones. - -2006-05-11 Matthew Allum - - * bindings/python/Makefile.am: - * bindings/python/clutter-base-types.defs: - * bindings/python/clutter-base.defs: - * bindings/python/clutter.override: - Python goodiness from ebassi. - - Element geometry handled nicely. - - get_coords(), get_abs_position() added. - - * clutter/clutter-element.c: (clutter_element_rotate_x), - (clutter_element_rotate_y), (clutter_element_mirror), - * clutter/clutter-element.h: - Add initial rotation API. Make Geometry boxed ( ebassi ) - - * clutter/clutter-stage.c: (sync_gl_viewport): - Set depth in main world transform. - - * clutter/clutter-timeline.h: - Add missing new() api call. - - * examples/test.c: (timeout_text_cb), (frame_cb), (main): - Tou with some rotation - -2006-05-11 Matthew Allum - - reviewed by: - - * bindings/python/Makefile.am: - * bindings/python/clutter-base-types.defs: - * bindings/python/clutter-base.defs: - * bindings/python/clutter.override: - * clutter/clutter-bin.c: (clutter_bin_paint): - * clutter/clutter-element.c: (clutter_element_paint), - (clutter_element_get_height), (clutter_element_get_x), - (clutter_element_get_y), (clutter_element_set_opacity), - (clutter_element_get_opacity), (clutter_element_set_id), - (clutter_element_get_id), (clutter_element_rotate_x), - (clutter_element_rotate_y), (clutter_element_mirror), - (clutter_element_set_clip), (clutter_element_remove_clip), - (clutter_element_set_parent), (clutter_element_get_parent), - (clutter_element_raise), (clutter_element_lower), - (clutter_element_raise_top), (clutter_element_lower_bottom): - * clutter/clutter-element.h: - * clutter/clutter-main.c: (clutter_redraw): - * clutter/clutter-stage.c: (sync_gl_viewport): - * clutter/clutter-timeline.h: - * examples/test.c: (timeout_text_cb), (frame_cb), (main): - -2006-05-09 Matthew Allum - - * COPYING: - * clutter/clutter-bin.c: - * clutter/clutter-bin.h: - * clutter/clutter-clone-texture.c: - * clutter/clutter-clone-texture.h: - * clutter/clutter-color.c: - * clutter/clutter-color.h: - * clutter/clutter-element.c: - * clutter/clutter-element.h: - * clutter/clutter-event.c: - * clutter/clutter-event.h: - * clutter/clutter-keysyms.h: - * clutter/clutter-label.c: - * clutter/clutter-label.h: - * clutter/clutter-main.c: - * clutter/clutter-main.h: - * clutter/clutter-private.h: - * clutter/clutter-rectangle.c: - * clutter/clutter-rectangle.h: - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - * clutter/clutter-texture.c: - * clutter/clutter-texture.h: - * clutter/clutter-timeline.c: - * clutter/clutter-timeline.h: - * clutter/clutter-util.c: - * clutter/clutter-util.h: - Add license info. - -2006-05-08 Matthew Allum - - * clutter/Makefile.am: - * clutter/clutter-event.c: - * clutter/clutter-event.h: - * clutter/clutter-keysyms.h: - * clutter/clutter-main.c: (clutter_dispatch_x_event): - * clutter/clutter-stage.c: (clutter_stage_class_init): - * clutter/clutter-stage.h: - * clutter/clutter.h: - * bindings/python/Makefile.am: - * bindings/python/clutter.override: - Add basic input event handling. Keys only atm. - -2006-05-08 Matthew Allum - - * TODO: - Sync a little. - * bindings/python/Makefile.am: - * bindings/python/clutter.override: - Fix up so pixbufs now work ( thanks ebassi! ) - Add some missing newer headers. - * clutter/clutter-main.h: - Remove unused clutter_queue_redraw(); - -2006-05-07 Matthew Allum - - * clutter/clutter-element.c: (clutter_element_class_init), - (clutter_element_init), (clutter_element_queue_redraw), - (clutter_element_set_geometry), (clutter_element_get_geometry), - (clutter_element_get_coords), (clutter_element_set_position), - (clutter_element_set_size), (clutter_element_get_abs_position), - (clutter_element_get_width), (clutter_element_get_height), - (clutter_element_get_x), (clutter_element_get_y), - (clutter_element_set_opacity): - * clutter/clutter-main.c: (clutter_dispatch_x_event): - * clutter/clutter-main.h: - * clutter/clutter-private.h: - * clutter/clutter-stage.c: (clutter_stage_set_color): - * clutter/clutter-texture.c: (clutter_texture_set_pixbuf): - Rename clutter_queue_redraw -> clutter_element_queue_redraw - - * clutter/clutter-label.c: (clutter_label_make_pixbuf), - (clutter_label_set_property), (clutter_label_set_text_extents): - * clutter/clutter-label.h: - Fixes to extents - - * examples/Makefile.am: - * examples/test-text.c: - Add sime test text example. - -2006-05-07 Matthew Allum - - * clutter/clutter-label.c: (clutter_label_make_pixbuf), - (clutter_label_get_property), (clutter_label_dispose), - (clutter_label_class_init), (clutter_label_init), - (clutter_label_new_with_text), (clutter_label_new), - (clutter_label_set_text), (clutter_label_set_font), - (clutter_label_set_text_extents), (clutter_label_set_fg_color): - * examples/test.c: (main): - Slight efficiency improvements. Add initial extents API. - -2006-05-07 Matthew Allum - - * TODO: - resync. - * clutter/Makefile.am: - * clutter/clutter-clone-texture.c: - * clutter/clutter-clone-texture.h: - Add new texture clone element. - * clutter/clutter-color.c: - * clutter/clutter-color.h: - Add simple color API. - * clutter/clutter-util.c: - * clutter/clutter-util.h: - Move shared texture funcs into shared util code. - * clutter/clutter-texture.c: (can_create), (tile_dimension), - (init_tiles), (texture_render_to_gl_quad), - (clutter_texture_unrealize), (clutter_texture_sync_pixbuf), - (clutter_texture_realize), (clutter_texture_show), - (clutter_texture_hide), (clutter_texture_paint), - (clutter_texture_finalize), (clutter_texture_set_property), - (clutter_texture_get_property), (clutter_texture_class_init), - (clutter_texture_init), (clutter_texture_set_pixbuf), - (clutter_texture_new_from_pixbuf), (clutter_texture_get_base_size), - (clutter_texture_bind_tile): - Changes for clones to work. - * clutter/clutter-element.c: (clutter_element_paint), - (clutter_element_set_property), (clutter_element_get_property), - (clutter_element_set_position), (clutter_element_set_size), - (clutter_element_get_abs_position), (clutter_element_get_width), - (clutter_element_get_height), (clutter_element_get_x), - (clutter_element_get_y), (clutter_element_set_opacity), - (clutter_element_get_opacity), (clutter_element_set_id), - (clutter_element_get_id), (clutter_element_set_clip): - * clutter/clutter-element.h: - Add clipping and other tweaks. - * clutter/clutter-stage.c: (sync_gl_viewport), - (clutter_stage_paint), (clutter_stage_init): - Add psuedo 3D desktop like GL setup. - * clutter/clutter-label.c: (clutter_label_make_pixbuf): - * clutter/clutter-label.h: - * clutter/clutter-main.c: (clutter_redraw): - * clutter/clutter-main.h: - * clutter/clutter-private.h: - * clutter/clutter-rectangle.c: (clutter_rectangle_paint): - * clutter/clutter-stage.h: - * clutter/clutter-texture.h: - * clutter/clutter-timeline.c: (clutter_timeline_class_init): - * clutter/clutter-video-texture.c: - * clutter/clutter.h: - * examples/test-video.c: (foo), (size_change), (tick), (main): - * examples/test.c: (main): - * examples/video-cube.c: (clutter_video_texture_cube_paint), - (clutter_video_texture_cube_class_init), - (clutter_video_texture_cube_init): - Various minor tweaks for API changes, new features etc. - -2006-05-03 Matthew Allum - - * clutter/clutter-bin.c: (clutter_bin_paint): - * clutter/clutter-bin.h: - * clutter/clutter-element.c: (clutter_element_unrealize), - (clutter_element_paint), (clutter_element_set_property), - (clutter_element_get_property), (clutter_element_dispose), - (clutter_element_finalize), (clutter_element_class_init), - (clutter_element_init), (clutter_element_queue_redraw), - (clutter_element_set_geometry), (clutter_element_get_geometry), - (clutter_element_get_coords), (clutter_element_set_position), - (clutter_element_set_size), (clutter_element_get_abs_position), - (clutter_element_set_opacity), (clutter_element_get_opacity), - (clutter_element_set_clip), (clutter_element_remove_clip), - (clutter_element_set_parent), (clutter_element_get_parent), - (clutter_element_raise), (clutter_element_lower), - (clutter_element_raise_top), (clutter_element_lower_bottom): - * clutter/clutter-element.h: - * clutter/clutter-label.c: (clutter_label_set_fg_color): - * clutter/clutter-rectangle.c: (clutter_rectangle_paint), - (clutter_rectangle_set_property), (clutter_rectangle_init): - * clutter/clutter-stage.c: (sync_xwindow_size): - * clutter/clutter-texture.c: (clutter_texture_paint), - (clutter_texture_set_pixbuf): - Clean up ClutterElement, removing globals, improving sizing - and initial clipping code. - - * clutter/clutter.h: - * clutter/clutter-timeline.c: (clutter_timeline_class_init), - (timeline_timeout_func), (clutter_timeline_start), - (clutter_timeline_pause), (clutter_timeline_rewind), - (clutter_timeline_skip), (clutter_timeline_advance), - (clutter_timeline_get_current_frame), (clutter_timeline_new): - * clutter/clutter-timeline.h: - Various fixes to timelines. Implement frame skipping. - - * examples/test.c: (timeout_text_cb), (main): - Update to use timeline. - -2006-05-02 Matthew Allum - - * TODO: - Update - * clutter/clutter-element.h: - * clutter/clutter-rectangle.h: - Minor formatting cleanups - -2006-05-02 Matthew Allum - - * clutter/Makefile.am: - * clutter/clutter-timeline.c: - * clutter/clutter-timeline.h: - Add initial timeline implementation - -2006-05-02 Matthew Allum - - * bindings/python/Makefile.am: - * bindings/python/cluttermodule.c: (initclutter): - Fix python build with new -1.0 naming. Use of GdkPixbufs - still causing crashes. - -2006-04-30 Matthew Allum - - * clutter/clutter-main.c: (events_init), (redraw_update_idle), - (clutter_queue_redraw), (clutter_redraw): - Fix repaint queueing, using idle handler now. - Clean up some minor compiler warnings. - * clutter/clutter-main.h: - * clutter/clutter-texture.c: (clutter_texture_unrealize), - (clutter_texture_set_pixbuf): - Rename gl_lock/unlock to threads_enter/leaver - -2006-04-30 Matthew Allum - - * Makefile.am: - * clutter-1.0.pc.in: - * clutter/Makefile.am: - * clutter/clutter-bin.h: - * clutter/clutter-label.h: - * clutter/clutter-rectangle.h: - * clutter/clutter-stage.h: - * clutter/clutter-texture.h: - * clutter/clutter-video-texture.h: - * clutter/clutter.h: - * configure.ac: - * examples/Makefile.am: - Add .pc file, tag -1.0 onto lib, includes dir naming. - -2006-04-29 Matthew Allum - - * clutter/clutter-main.c: (clutter_dispatch_x_event), - (clutter_queue_redraw), (clutter_redraw): - Simplify paint event queueing. Does not actually queue - anymore (broken), needs wrong to reduce high number of - uneeded paints. - - * clutter/clutter-texture.c: (clutter_texture_set_pixbuf): - Remove visible check which broke paints of resized texture pixmaps. - -2006-04-19 Matthew Allum - - * clutter/clutter-bin.c: (clutter_bin_paint), (clutter_bin_add): - * clutter/clutter-element.c: (clutter_element_paint): - * clutter/clutter-element.h: - * clutter/clutter-label.c: (clutter_label_set_property), - (clutter_label_get_property), (clutter_label_class_init): - * clutter/clutter-marshal.list: - * clutter/clutter-rectangle.c: (clutter_rectangle_set_property), - (clutter_rectangle_get_property), (clutter_rectangle_class_init): - * clutter/clutter-stage.c: (clutter_stage_dispose), - (clutter_stage_get_property), (clutter_stage_class_init): - * clutter/clutter-texture.c: (clutter_texture_realize), - (clutter_texture_class_init), (clutter_texture_set_pixbuf): - * clutter/clutter-texture.h: - More object cleanups. Add signal to texture size changes. - Fix color props. Adjust element realise flags workings ( broken ). - * examples/test-video.c: (main): - Broken due to realize flag changes. - -2006-04-18 Matthew Allum - - * clutter/clutter-bin.c: (clutter_bin_get_property), - (clutter_bin_finalize), (clutter_bin_class_init), - (clutter_bin_new), (clutter_bin_show_all), (clutter_bin_hide_all), - (clutter_bin_add): - * clutter/clutter-bin.h: - * clutter/clutter-element.c: (clutter_element_get_property), - (clutter_element_finalize), (clutter_element_class_init), - (clutter_element_set_parent), (clutter_element_get_parent), - (clutter_element_raise), (clutter_element_lower): - * clutter/clutter-element.h: - * clutter/clutter-label.c: (clutter_label_make_pixbuf), - (clutter_label_get_property), (clutter_label_dispose), - (clutter_label_finalize), (clutter_label_class_init), - (clutter_label_init), (clutter_label_new_with_text), - (clutter_label_new), (clutter_label_set_text), - (clutter_label_set_font), (clutter_label_set_fg_color): - * clutter/clutter-label.h: - * clutter/clutter-rectangle.c: (clutter_rectangle_paint), - (clutter_rectangle_set_property), (clutter_rectangle_get_property), - (clutter_rectangle_finalize), (clutter_rectangle_dispose), - (clutter_rectangle_class_init), (clutter_rectangle_init), - (clutter_rectangle_new): - * clutter/clutter-texture.c: (clutter_texture_paint), - (clutter_texture_dispose), (clutter_texture_finalize), - (clutter_texture_set_property), (clutter_texture_get_property), - (clutter_texture_class_init), (clutter_texture_init), - (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf): - Various GObject usages cleanups, adding properties and - finalize/dispose functions properly. - -2006-04-18 Matthew Allum - - * bindings/python/Makefile.am: - * bindings/python/clutter.override: - * bindings/python/cluttermodule.c: (initclutter): - * clutter/clutter-label.h: - * clutter/clutter-rectangle.h: - * clutter/clutter-video-texture.h: - More fixups to now less broken python bindings - * examples/rects.py: - A simple python script using bindings - -2006-04-18 Matthew Allum - - * clutter/clutter-marshal.list: - Add missing. - -2006-04-17 Matthew Allum - - * Makefile.am: - * bindings/Makefile.am: - * bindings/python/Makefile.am: - * bindings/python/clutter.override: - * bindings/python/cluttermodule.c: - * configure.ac: - First shot at some python bindings ( broken atm ) - * clutter/clutter-bin.h: - * clutter/clutter-element.h: - * clutter/clutter-stage.h: - * clutter/clutter-texture.h: - * clutter/clutter.h: - Rejig headers a little so h2def.py happier - -2006-04-17 Matthew Allum - - * TODO: - * doc/clutter.types: - * doc/reference/Makefile.am: - Move gtk-doc gubbins to doc/reference - -2006-04-16 Matthew Allum - - * TODO: - More updates - - * clutter/clutter-bin.c: (clutter_bin_paint): - Add translate call - - * clutter/clutter-texture.c: (clutter_texture_dispose), - (clutter_texture_class_init), (clutter_texture_set_pixbuf): - Fixup object finalization a little. - - * bootstrap-autotools.sh: - * configure.ac: - * doc/Makefile.am: - * doc/clutter.types: - Add gtk-doc infrastructure - -2006-04-15 Matthew Allum - - * TODO: - More ideas. - - * clutter/Makefile.am: - * clutter/clutter-rectangle.c: (clutter_rectangle_new): - Sync passed color alpha chan to element opacity, - - * clutter/clutter-video-texture.c: - (clutter_video_texture_error_quark), (signal_eos_delayed), - (query_timeout), (got_video_size), (caps_set), (parse_stream_info), - (handle_element_message) - * clutter/clutter-video-texture.h: - Port more of bacon video widget API. - - * examples/test-video.c: (foo), (tick), (main): - Add a simple overlay displaying playback time. - -2006-04-15 Matthew Allum - - * clutter/clutter-element.c: - * clutter/clutter-label.c: (clutter_label_init), - (clutter_label_new_with_text): - * clutter/clutter-label.h: - * clutter/clutter-main.c: (clutter_redraw), (clutter_gl_unlock): - * clutter/clutter-main.h: - * clutter/clutter-rectangle.c: (clutter_rectangle_init), - (clutter_rectangle_new): - * clutter/clutter-rectangle.h: - * clutter/clutter-texture.c: (clutter_texture_class_init), - (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf): - * clutter/clutter-texture.h: - * clutter/clutter-video-texture.c: (clutter_video_texture_init): - * clutter/clutter-video-texture.h: - * examples/test-video.c: (main): - * examples/test.c: (main): - * examples/video-cube.c: (clutter_video_texture_cube_init), (main): - Make xxx_new() return there type as ClutterElement* - -2006-04-15 Matthew Allum - - * TODO: - Update - * clutter/clutter-main.c: - * clutter/clutter-stage.c: - * clutter/clutter-texture.c: - * clutter/clutter-texture.h: - * gst/clutterimagesink.c: (gst_clutterimagesink_clutterimage_put), - (gst_clutterimagesink_context_get): - Various experiments with textures and 3D views. - - * clutter/clutter-video-texture.c: - (clutter_video_texture_class_init), (clutter_video_texture_init): - * examples/Makefile.am: - * examples/test-video.c: (main): - * examples/video-cube.c: - Add video-cube example - -2006-04-13 Matthew Allum - - * TODO: - Update - - * clutter/clutter-bin.c: - * clutter/clutter-bin.h: - New container element - - * clutter/clutter-stage.c: - * clutter/clutter-stage.h: - Make stage a proper element - - * clutter/Makefile.am: - * clutter/clutter.h: - * clutter/clutter-element.c: (clutter_element_show), - (clutter_element_set_opacity): - * clutter/clutter-element.h: - * clutter/clutter-label.c: (clutter_label_make_pixbuf), - (clutter_label_set_text), (clutter_label_set_font): - * clutter/clutter-private.h: - Various tweaks new api calls. - - * clutter/clutter-main.c: (events_init): - * clutter/clutter-main.h: - Make ClutterContex Private to main - - * clutter/clutter-texture.c: - * clutter/clutter-texture.h: - * clutter/clutter-video-texture.c: - (clutter_video_texture_finalize): - Fix video crash - - * examples/test-video.c: (main): - * examples/test.c: (main): - Fix for API changes. - -2006-04-11 Matthew Allum - - * TODO: - Add - * clutter/clutter-video-texture.c: - (clutter_video_texture_finalize): - * clutter/clutter-video-texture.h: - Remove bogus pixbuf attribute - -2006-04-10 Matthew Allum - - * clutter/clutter-main.c: (clutter_dispatch_x_event), - (clutter_queue_redraw), (clutter_main), (clutter_set_stage_params), - (clutter_init): - * clutter/clutter-main.h: - * clutter/clutter-private.h: - Make Stage non fullscreen ( for now ). Change event loop to - work better with video. - - * clutter/Makefile.am: - * clutter/clutter-label.c: (clutter_label_make_pixbuf), - (clutter_label_class_init), (clutter_label_new_with_text), - (clutter_label_set_text), (clutter_label_set_font): - * clutter/clutter-texture.c: (texture_render_to_gl_quad), - (clutter_texture_unrealize), (clutter_texture_sync_pixbuf), - (clutter_texture_realize), (clutter_texture_show), - (clutter_texture_hide), (clutter_texture_paint), - (clutter_texture_finalize), (clutter_texture_set_property), - (clutter_texture_get_property), (clutter_texture_class_init), - (clutter_texture_init), (clutter_texture_get_pixbuf), - (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf): - * clutter/clutter-texture.h: - * clutter/clutter.h: - Fix leakage. Improve performance. Add support for non tiled - textures. - - * examples/Makefile.am: - * examples/test.c: (timeout_text_cb), (main): - Experiments - - * examples/test-video.c: - * configure.ac: - * gst/Makefile.am: - * gst/clutterimagesink.c: - * gst/clutterimagesink.h: - * clutter/clutter-video-texture.c: - * clutter/clutter-video-texture.h: - Add initial support for video textures with gst-0.10 - - * gst/cltrimagesink.c: - * gst/cltrimagesink.h: - Remove old gst-0.8 sink - - -2006-04-05 Matthew Allum - - * clutter/Makefile.am: - * clutter/clutter-element.c: (clutter_element_show), - (clutter_element_hide), (clutter_element_realize), - (clutter_element_unrealize), (clutter_element_paint), - (clutter_element_finalize), (clutter_element_class_init), - (clutter_element_init), (clutter_element_new): - * clutter/clutter-element.h: - * clutter/clutter.h: - * clutter/clutter-main.c: (clutter_dispatch_x_event), - (events_init), (clutter_redraw), (clutter_main), (clutter_init), - (clutter_show_stage): - * clutter/clutter-main.h: - Various minor tweaks. - - * clutter/clutter-private.h: - * clutter/clutter-texture.c: (can_create), (init_tiles), - (clutter_texture_unrealize), (clutter_texture_realize), - (clutter_texture_finalize), (clutter_texture_class_init), - (clutter_texture_init): - * clutter/clutter-texture.h: - Much improve texture class. - - * clutter/clutter-label.c: - * clutter/clutter-label.h: - Add new text rendering class - - * clutter/clutter-rectangle.c: - * clutter/clutter-rectangle.h: - Add basic rectangle drawing class - - * examples/test.c: - Add text rendering and animation to test. - -2006-04-04 Matthew Allum - - * clutter/Makefile.am: - * clutter/clutter-element.c: (clutter_element_realize): - * clutter/clutter-element.h: - * clutter/clutter-image.c: - * clutter/clutter-image.h: - * clutter/clutter-main.c: (clutter_dispatch_x_event), - (clutter_main), (clutter_set_stage_params), (clutter_init): - * clutter/clutter-texture.c: (next_p2), (can_create), - (tile_dimension), (init_tiles), (texture_render_to_gl_quad), - (clutter_texture_unrealize), (clutter_texture_realize), - (clutter_texture_get_pixbuf), (clutter_texture_paint), - (clutter_texture_finalize), (clutter_texture_class_init): - * clutter/clutter-texture.h: - * clutter/clutter.h: - * configure.ac: - * examples/test.c: - Implement basic tiled texture painting. - -2006-04-03 Matthew Allum - - reviewed by: - - * clutter/Makefile.am: - * clutter/clutter-element.c: - * clutter/clutter-element.h: - * clutter/clutter-image.c: - * clutter/clutter-image.h: - * clutter/clutter-main.c: (events_init), (stage_realize), - (clutter_queue_redraw), (clutter_redraw), (clutter_add_to_stage), - (clutter_remove_from_stage), (clutter_main), - (clutter_set_stage_params), (clutter_init): - * clutter/clutter-main.h: - * clutter/clutter-private.h: - * clutter/clutter.h: - * examples/test.c: - -2006-04-02 Matthew Allum - - * clutter/Makefile.am: - * clutter/cltr-animator.c: - * clutter/cltr-animator.h: - * clutter/cltr-button.c: - * clutter/cltr-button.h: - * clutter/cltr-core.c: - * clutter/cltr-core.h: - * clutter/cltr-events.c: - * clutter/cltr-events.h: - * clutter/cltr-glu.c: - * clutter/cltr-glu.h: - * clutter/cltr-label.c: - * clutter/cltr-label.h: - * clutter/cltr-list.c: - * clutter/cltr-list.h: - * clutter/cltr-overlay.c: - * clutter/cltr-overlay.h: - * clutter/cltr-photo-grid.c: - * clutter/cltr-photo-grid.h: - * clutter/cltr-private.h: - * clutter/cltr-scratch.c: - * clutter/cltr-scratch.h: - * clutter/cltr-texture.c: - * clutter/cltr-texture.h: - * clutter/cltr-video.c: - * clutter/cltr-video.h: - * clutter/cltr-widget.c: - * clutter/cltr-widget.h: - * clutter/cltr-window.c: - * clutter/cltr-window.h: - * clutter/cltr.h: - * clutter/clutter-main.c: - * clutter/clutter-main.h: - * clutter/clutter-private.h: - * clutter/clutter.h: - * clutter/fonts.c: - * clutter/fonts.h: - * clutter/pixbuf.c: - * clutter/pixbuf.h: - * clutter/util.c: - * clutter/util.h: - * configure.ac: - * examples/Makefile.am: - * examples/photos.c: - * examples/player.c: - * examples/scratch.c: - * examples/select.c: - * examples/test.c: - Remove old cltr files replacing with beginnings of - rejigged 'clutter' ones. - -2005-05-27 mallum,,, - - * clutter/cltr-animator.c: (cltr_animator_zoom_new), - (cltr_animator_move_new), (cltr_animator_fullzoom_new), - (cltr_animator_new), (cltr_animator_set_args), - (cltr_animator_wrapped_zoom_paint), (cltr_animator_reset), - (cltr_animator_timeout_cb), (cltr_animator_run): - * clutter/cltr-animator.h: - * clutter/cltr-button.c: (cltr_button_set_label), - (cltr_button_paint): - * clutter/cltr-label.c: (cltr_label_new), (cltr_label_set_text), - (cltr_label_get_text), (cltr_label_show), - (cltr_label_handle_xevent), (cltr_label_paint): - * clutter/cltr-label.h: - * clutter/cltr-list.c: (cltr_list_paint): - * clutter/cltr-widget.c: - * examples/select.c: (usage), (video_ctrl_hide), - (video_ctrl_stop_cb), (video_ctrl_play_cb), - (video_ctrl_seek_begin_cb), (init_video_ctrl), (show_video_ctrl), - (populate), (cell_to_item), (zoom_video_out), (init_show_controls), - (handle_xevent), (zoom_out_complete), (zoom_in_complete): - More select hacking ... - -2005-05-23 mallum,,, - - * clutter/cltr-button.c: (cltr_button_new_with_label), - (cltr_button_handle_xevent), (cltr_button_paint): - * clutter/cltr-button.h: - * clutter/cltr-events.c: (cltr_main_loop): - * clutter/cltr-list.c: (cltr_list_cell_new), - (cltr_list_append_cell), (cltr_list_update_layout), - (cltr_list_paint): - * clutter/cltr-list.h: - * clutter/cltr-overlay.c: (cltr_overlay_paint): - * clutter/cltr-private.h: - * clutter/cltr-widget.c: (cltr_widget_show), - (cltr_widget_show_all), (cltr_widget_add_child): - * clutter/cltr-widget.h: - * clutter/cltr-window.c: (cltr_window_show), (cltr_window_paint), - (cltr_window_handle_xevent), (cltr_window_post_paint), - (cltr_window_set_paint_funcs), (cltr_window_xwin), - (cltr_window_hide_cursor), (cltr_window_set_fullscreen): - * clutter/cltr-window.h: - * examples/select.c: (usage), (init_video_ctrl), (show_video_ctrl), - (populate), (cell_to_item), (handle_xevent), (zoom_out_complete), - (zoom_in_complete), (cell_activated), (main): - Much Select hacking - -2005-05-17 mallum,,, - - * clutter/cltr-video.c: (cltr_video_get_pixbuf): - * gst/cltrimagesink.c: (gst_cltrimagesink_change_state), - (gst_cltrimagesink_chain): - Fix thread related segv's on grabbing video image. - Also pop any unplayed data from sink on stop - -2005-05-16 mallum,,, - - * clutter/cltr-animator.c: (cltr_animator_zoom_new), - (cltr_animator_fullzoom_new), (cltr_animator_new), - (cltr_animator_set_args), (cltr_animator_wrapped_paint): - * clutter/cltr-animator.h: - * clutter/cltr-list.c: (cltr_list_cell_new), - (cltr_list_get_active_cell_co_ords), (cltr_list_show), - (cltr_list_on_activate_cell), (cltr_list_update_layout), - (cltr_list_paint): - * clutter/cltr-list.h: - * clutter/cltr-texture.c: (cltr_texture_realize), - (cltr_texture_unref), (cltr_texture_sync_pixbuf), - (cltr_texture_force_rgb_data): - * clutter/cltr-video.c: (got_stream_length), (got_time_tick), - (got_state_change), (parse_stream_info), (cb_iterate), - (cltr_video_play), (cltr_video_set_volume), - (cltr_video_get_volume), (cltr_video_get_pixbuf), - (cltr_video_idler), (cltr_video_set_source), - (cltr_video_handle_xevent), (cltr_video_paint): - * clutter/cltr-video.h: - * clutter/cltr-widget.c: - * clutter/pixbuf.c: (pixbuf_write_png), (load_png_file), - (pixbuf_copy), (pixbuf_fill_rect), (pixbuf_scale_down), - (pixbuf_clone): - * examples/select.c: (usage), (populate), (cell_to_item), - (handle_xevent), (zoom_out_complete), (zoom_in_complete), - (cell_activated), (main): - * gst/cltrimagesink.c: (gst_cltrimagesink_getcaps), - (gst_cltrimagesink_chain): - Far too much hacking. Fix many endian image issues. - Greatly improve select demo - -2005-05-16 mallum,,, - - * clutter/Makefile.am: - * clutter/cltr-animator.c: - * clutter/cltr-animator.h: - * clutter/cltr-list.c: (distfunc), (cltr_list_new), - (cltr_list_get_active_cell_co_ords), (cltr_list_show), - (cltr_list_on_activate_cell), (cltr_list_handle_xevent), - (cltr_list_animate), (cltr_list_timeout_cb), - (cltr_list_update_layout), (cltr_list_paint): - * clutter/cltr-list.h: - * clutter/cltr-private.h: - * clutter/cltr.h: - * clutter/pixbuf.c: (load_png_file): - * examples/player.c: - * examples/select.c: (usage), (populate), (cell_activated), (main): - Work on animator zooming. Also build up select.c much - -2005-05-14 mallum,,, - - * clutter/cltr-animator.c: - Add initial outline - * clutter/cltr-button.c: (cltr_button_new_with_pixbuf), - (cltr_button_handle_xkeyevent), (cltr_button_handle_xevent), - (cltr_button_paint): - various tweaks/experimentation - * clutter/cltr-core.c: (cltr_init), (cltr_display_height): - * clutter/cltr-glu.c: (cltr_glu_set_color): - * clutter/cltr-glu.h: - Add unfilled rect call. - * clutter/cltr-label.c: (cltr_label_new), (cltr_label_paint): - * clutter/cltr-list.c: (distfunc), (cltr_list_cell_new), - (cltr_list_show), (cltr_list_animate), (cltr_list_paint): - update list a little. - * clutter/cltr-overlay.c: (cltr_overlay_handle_xevent), - (cltr_overlay_paint): - * clutter/cltr-private.h: - * clutter/cltr-texture.c: (cltr_texture_realize): - * clutter/cltr-video.c: (cltr_video_paint): - * clutter/cltr.h: - * clutter/fonts.c: (draw_layout_on_pixbuf): - Fix font alpha blending - * examples/Makefile.am: - * examples/player.c: (main): - * examples/scratch.c: (main): - tweaks. - * examples/select.c: - new example - -2005-05-11 mallum,,, - - * clutter/cltr-video.c: (got_buffering), (cltr_video_new), - (cltr_video_play), (cltr_video_idler): - * examples/photos.c: (main): - * examples/player.c: (handle_xevent), (main): - * gst/cltrimagesink.c: (gst_cltrimagesink_chain): - Fix Gl thread related crash on video playback - Make examples less bound to my laptop ;) - -2005-05-06 mallum,,, - - * clutter/cltr-button.c: (cltr_button_new_with_label): - * clutter/cltr-overlay.c: - * clutter/cltr-photo-grid.c: (cltr_photo_grid_cell_new), - (cltr_photo_grid_paint), (cltr_photo_grid_new): - * clutter/cltr-video.c: (cltr_video_print_tag), (got_buffering), - (got_error), (caps_set), (parse_stream_info), (cb_iterate), - (cltr_video_new), (cltr_video_play), (cltr_video_seek), - (cltr_video_seek_time), (cltr_video_stop), (cltr_video_close), - (cltr_video_pause), (cltr_video_can_set_volume), - (cltr_video_set_volume), (cltr_video_get_volume), - (cltr_video_idler), (cltr_video_set_source), (cltr_video_show), - (cltr_video_hide), (cltr_video_handle_xevent), (cltr_video_paint): - * clutter/cltr-video.h: - * clutter/cltr-widget.h: - * clutter/cltr-window.c: (cltr_window_show), (cltr_window_paint), - (cltr_window_handle_xevent), (cltr_window_set_fullscreen), - (cltr_window_focus_widget): - * clutter/cltr-window.h: - * clutter/cltr.h: - * clutter/fonts.c: (get_layout_bitmap), (font_draw), - (font_get_pixel_size): - * configure.ac: - * examples/photos.c: (photo_grid_populate): - * examples/player.c: (handle_xevent), (main): - * examples/scratch.c: (main): - Lots more tweaks, mainly updating video widget. - -2005-04-29 mallum,,, - - * clutter/cltr-button.c: (cltr_button_new), - (cltr_button_on_activate), (cltr_button_new_with_label), - (cltr_button_show): - * clutter/cltr-button.h: - * clutter/cltr-label.c: (cltr_label_new), (cltr_label_paint): - * clutter/cltr-private.h: - * clutter/cltr-video.c: (cltr_video_play): - * clutter/cltr-widget.c: (cltr_widget_new), (cltr_widget_abs_x), - (cltr_widget_abs_y), (cltr_widget_abs_x2), (cltr_widget_abs_y2), - (cltr_widget_width), (cltr_widget_height), (cltr_widget_show), - (cltr_widget_focus), (cltr_widget_unfocus), - (cltr_widget_set_focus_next), (cltr_widget_get_focus_next), - (cltr_widget_show_all): - * clutter/cltr-widget.h: - * clutter/cltr-window.c: (cltr_window_new), - (cltr_window_focus_widget): - * clutter/cltr.h: - * clutter/fonts.c: (draw_layout_on_pixbuf), (font_get_pixel_size): - * examples/scratch.c: (main): - Hack buttons some more - - -2005-04-27 mallum,,, - - * clutter/Makefile.am: - * clutter/cltr-button.c: (cltr_button_new): - * clutter/cltr-label.c: - * clutter/cltr-label.h: - * clutter/cltr-photo-grid.c: (cltr_photo_grid_paint): - * clutter/cltr-texture.c: (cltr_texture_realize), - (cltr_texture_new), (cltr_texture_unref), - (cltr_texture_no_tile_new): - * clutter/cltr-texture.h: - * clutter/cltr-video.c: (cltr_video_got_time_tick), (caps_set), - (cltr_video_new), (cltr_video_idler), (cltr_video_set_source), - (cltr_video_play), (cltr_video_pause), (cltr_video_show), - (cltr_video_hide), (cltr_video_handle_xevent), (cltr_video_paint): - * clutter/cltr.h: - * clutter/fonts.c: (font_new), (draw_layout_on_pixbuf), - (font_draw): - * clutter/fonts.h: - * clutter/pixbuf.c: (pixbuf_set_pixel), (pixbuf_get_pixel): - * examples/photos.c: (photo_grid_populate), (main): - * examples/player.c: (main): - Improve video widget, use playbin rather than gst_play - Lots of misc tweaks. - -2005-04-26 mallum,,, - - * clutter/Makefile.am: - * clutter/cltr-core.c: (cltr_init): - * clutter/cltr-events.c: (cltr_events_init), (cltr_main_loop): - * clutter/cltr-photo-grid.c: - * clutter/cltr-private.h: - * clutter/cltr-scratch.c: (cltr_scratch_handle_xevent), - (cltr_scratch_paint): - * clutter/cltr-texture.c: (cltr_texture_render_to_gl_quad), - (init_tiles), (cltr_texture_unrealize), (cltr_texture_realize), - (cltr_texture_new), (cltr_texture_no_tile_new), - (cltr_texture_get_pixbuf): - * clutter/cltr-texture.h: - * clutter/cltr-video.c: - * clutter/cltr-video.h: - * clutter/cltr-widget.c: (cltr_widget_queue_paint): - * clutter/cltr.h: - * examples/Makefile.am: - * examples/player.c: - * gst/cltrimagesink.c: (gst_cltrimagesink_fixate), - (gst_cltrimagesink_getcaps), (gst_cltrimagesink_sink_link), - (gst_cltrimagesink_change_state), (gst_cltrimagesink_chain), - (gst_cltrimagesink_set_property), (gst_cltrimagesink_get_property), - (gst_cltrimagesink_finalize), (gst_cltrimagesink_class_init): - * gst/cltrimagesink.h: - Initial go at very hacky gst video widget - -2005-04-22 mallum,,, - - * clutter/Makefile.am: - * clutter/cltr-button.c: - * clutter/cltr-button.h: - * clutter/cltr-core.c: (cltr_init): - * clutter/cltr-overlay.c: - * clutter/cltr-overlay.h: - * clutter/cltr-photo-grid.c: (cltr_photo_grid_handle_xevent), - (cltr_photo_grid_cell_new), (ctrl_photo_grid_get_zoomed_coords), - (cell_is_offscreen), (cltr_photo_grid_idle_cb), - (cltr_photo_grid_navigate), (cltr_photo_grid_activate_cell), - (cltr_photo_grid_populate), (cltr_photo_grid_update_visual_state), - (cltr_photo_grid_paint), (cltr_photo_grid_show), - (cltr_photo_grid_set_fps), (cltr_photo_grid_get_fps), - (cltr_photo_grid_set_anim_steps), (cltr_photo_grid_get_anim_steps), - (cltr_photo_grid_new): - Fix up grid so external prog can load images. - * clutter/cltr-photo-grid.h: - * clutter/cltr-texture.c: (cltr_texture_realize), - (cltr_texture_new): - * clutter/cltr-texture.h: - * clutter/cltr-window.c: (cltr_window_set_fullscreen): - * clutter/cltr.h: - * clutter/pixbuf.c: (pixbuf_scale_down), (ConvolveImage), - (GaussianBlurImage): - * clutter/pixbuf.h: - New experimental Methods - * configure.ac: - * examples/Makefile.am: - * examples/photos.c: - * examples/player.c: - Add new examples - * gst/Makefile.am: - * gst/cltrimagesink.c: - * gst/cltrimagesink.h: - Add initial crusty ( broken ) gst stuff - -2005-04-13 mallum,,, - - * bootstrap-autotools.sh: - * clutter/Makefile.am: - * clutter/cltr.c: - * configure.ac: - * examples/Makefile.am: - * examples/scratch.c: - Initial autotooling of everything. - -2005-04-07 mallum,,, - - * Makefile: - * cltr-events.c: (cltr_main_loop): - * cltr-list.c: - * cltr-list.h: - Add list widget - * cltr-photo-grid.c: (cltr_photo_grid_cell_new), - (cltr_photo_grid_append_cell), (ctrl_photo_grid_cell_to_coords), - (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_idle_cb), - (cltr_photo_grid_navigate), (cltr_photo_grid_activate_cell), - (cltr_photo_grid_update_visual_state), (cltr_photo_grid_paint), - (cltr_photo_grid_show), (cltr_photo_grid_new): - * cltr-texture.c: - * cltr-widget.c: - * cltr-window.c: (cltr_window_new), (cltr_window_show), - (cltr_window_handle_xevent): - * cltr-window.h: - * cltr.c: (main): - * cltr.h: - * pixbuf.c: (pixbuf_copy): - * pixbuf.h: - Cleanups - -2005-04-03 mallum,,, - - * Makefile: - * cltr-core.c: - * cltr-core.h: - * cltr-events.c: - * cltr-events.h: - * cltr-photo-grid.c: (cltr_photo_grid_handle_xkeyevent), - (cltr_photo_grid_handle_xevent), (cltr_photo_grid_cell_new), - (cltr_photo_grid_append_cell), (ctrl_photo_grid_cell_to_coords), - (ctrl_photo_grid_get_zoomed_coords), (cell_is_offscreen), - (cltr_photo_grid_idle_cb), (cltr_photo_grid_navigate), - (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate), - (cltr_photo_grid_paint), (cltr_photo_grid_show), - (cltr_photo_grid_new): - * cltr-photo-grid.h: - * cltr-private.h: - * cltr-texture.c: - * cltr-texture.h: - * cltr-widget.c: - * cltr-widget.h: - * cltr-window.c: - * cltr-window.h: - * cltr.c: - * cltr.h: - Add very basic initial toolkit infrastructure - -2005-03-31 mallum,,, - - * cltr-photo-grid.c: (cltr_photo_grid_append_cell), - (ctrl_photo_grid_cell_to_coords), - (ctrl_photo_grid_get_zoomed_coords), (cell_is_offscreen), - (cltr_photo_grid_idle_cb), (cltr_photo_grid_navigate), - (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate), - (cltr_photo_grid_redraw), (cltr_photo_grid_new): - * cltr-photo-grid.h: - * cltr-texture.c: (cltr_texture_render_to_gl_quad), (init_tiles), - (cltr_texture_realize): - * cltr-texture.h: - * cltr.c: (main): - Implemented scrolling. Very rough around the edges, needs tidying. - -2005-03-30 mallum,,, - - * Makefile: - * cltr-photo-grid.c: (cltr_photo_grid_redraw), - (cltr_photo_grid_new): - * cltr-tex.c: - * cltr-tex.h: - * cltr-texture.c: (cltr_texture_new): - More renaming - -2005-03-30 mallum,,, - - * cltr-photo-grid.c: (cltr_photo_grid_populate), - (cltr_photo_grid_redraw), (cltr_photo_grid_new): - * cltr-photo-grid.h: - * cltr-tex.c: (next_p2), (cltr_texture_render_to_gl_quad), - (tile_dimension), (init_tiles), (cltr_texture_new): - * cltr-tex.h: - * cltr.h: - Rename CltrImage -> CltrTexture - -2005-03-30 mallum,,, - - * Makefile: - * cltr-photo-grid.c: (cltr_photo_grid_populate), - (cltr_photo_grid_redraw): - * cltr-photo-grid.h: - * cltr-tex.c: - * cltr-tex.h: - * cltr.c: (main): - * cltr.h: - * pixbuf.c: (pixbuf_unref), (pixbuf_copy): - * pixbuf.h: - Add intial new texture tiling code. - -2005-03-27 mallum,,, - - * Makefile: - * cltr-photo-grid.c: (cltr_photo_grid_cell_new), - (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_navigate), - (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate), - (cltr_photo_grid_redraw), (cltr_photo_grid_new): - * cltr-photo-grid.h: - * cltr.c: (cltr_dispatch_x_event), (cltr_init), (test_idle_cb), - (main): - * cltr.h: - Add a very hacky threaded image loader. - Make event handling a little more efficient, though still hacky - * pixbuf.c: (pixel_set_vals), pixbuf.h: - Add copy func ( unused as yet ) - -2005-03-25 mallum,,, - - * cltr-photo-grid.c: (cltr_photo_grid_cell_new), - (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_redraw), - (cltr_photo_grid_new): - * cltr-photo-grid.h: - * cltr.c: (cltr_window_new), (idle_cb), (main): - Use GL matrices in a saner way. - Add random rotation to picts - Random minor tweaks - -2005-03-24 mallum,,, - - * Makefile: - * cltr-photo-grid.c: - * cltr-photo-grid.h: - * cltr.c: (cltr_window_new), (cltr_main_loop): - * cltr.h: - Split up cltr.c a bit. start refactoring a bit. - -2005-03-23 mallum,,, - - * cltr.c: (cltr_photo_grid_populate), (cltr_photo_grid_redraw), - (cltr_photo_grid_new), (main): - * cltr.h: - Various minor tweaks - * pixbuf.c: (pixbuf_set_pixel), (pixbuf_get_pixel): - Fix RGBA ordering in set/get pixel - -2005-03-23 mallum,,, - - * cltr.c: (ctrl_photo_grid_get_trans_coords), - Fix grid co-ords -> translation vals converter - (cltr_photo_grid_navigate), (cltr_photo_grid_redraw), - (cltr_photo_grid_new), (idle_cb): - Fix moving between pictures when zoomed - - -2005-03-23 mallum,,, - - * cltr.c: (cltr_dispatch_x_event), (cltr_window_new), - (cltr_main_loop), (cltr_photo_grid_navigate), - (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate), - (cltr_photo_grid_redraw), (cltr_photo_grid_new), (idle_cb), (main): - * cltr.h: - Lots, make the grid roughly work. - - * fonts.c: (get_layout_bitmap), (font_draw): - remove debug printfs - -2005-03-22 mallum,,, - - * cltr.c: (x_event_prepare), (x_event_check), (x_event_dispatch), - (cltr_dispatch_x_event), (cltr_init), (cltr_window_new), - (cltr_photo_grid_append_cell), (cltr_photo_grid_populate), - (cltr_photo_grid_redraw), (cltr_photo_grid_new), - (idle_cb), (main): - * cltr.h: - Add glib event loop + * *: Clutter moved from Subversion to Git. If you are reading + this then you should use `git log` to read the changes from + the commit messages. diff --git a/ChangeLog.SVN b/ChangeLog.SVN new file mode 100644 index 000000000..1b69d85ff --- /dev/null +++ b/ChangeLog.SVN @@ -0,0 +1,15737 @@ +2008-12-10 Neil Roberts + + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gl/cogl-defines.h.in: + * clutter/cogl/gl/cogl-context.h: + * clutter/cogl/common/cogl-mesh.c: Rename the glBufferDataSub + function to glBufferSubData. When calling glXGetProcAddress with + the former Mesa returns a stub dispatch function which will + segfault if you try to use it. With NVIDIA it returns NULL so + _cogl_features_init decides the card doesn't have VBO support. + +2008-12-10 Neil Roberts + + Bug 1323 - ClutterBehaviorDepth conflicts with other behaviors + + * clutter/clutter-behaviour-ellipse.c (actor_apply_knot_foreach): + Don't set the depth if there is no x or y tilt. That way it can + still be used in conjunction with ClutterBehaviourDepth. Thanks to + Tonny Tzeng. + +2008-12-08 Emmanuele Bassi + + * clutter/clutter-binding-pool.h: Fix the ActivateFunc + documentation by adding a "return value" annotation. + +2008-12-08 Emmanuele Bassi + + * clutter/Makefile.am: + * clutter/clutter.h: Add ClutterBindingPool to the build. + + * clutter/clutter-binding-pool.c: + * clutter/clutter-binding-pool.h: Add ClutterBindingPool, a data + structure meant to hold (key symbol, modifiers) pairs and associate + them to a closure. The ClutterBindingPool can be used to install + key bindings for actors and then execute closures inside the + key-press-event signal handlers, removing the need for big + switch() or if() blocks for each key. + + * clutter/clutter-event.c: Consistently use "key symbol" instead + of "key value". + + * clutter/clutter-event.h: Add more modifier masks. + + * clutter/clutter-marshal.list: + + * tests/conform/Makefile.am: + * tests/conform/test-binding-pool.c: + * tests/conform/test-conform-main.c: Add ClutterBindingPool + conformance test. + + * tests/interactive/Makefile.am: + * tests/interactive/test-binding-pool.c: Add interactive test (and + example code) for the ClutterBindingPool usage. + +2008-12-08 Neil Roberts + + * clutter/clutter-main.c (_clutter_do_pick): Restore the GL_DITHER + state after reading the pixel value instead of before. Suggested + in bug 1328 thanks to Guy Zadickario. + +2008-12-05 Emmanuele Bassi + + Bug 1309 - clutter_timeline_new and clutter_timeline_set_speed + have two standard of the fps limitation + + * clutter/clutter-timeline.c: + (clutter_timeline_class_init): Set the maximum value of the + :fps property to be G_MAXUINT. (Zhang Wei) + +2008-12-05 Neil Roberts + + * clutter/clutter-entry.c: Fix the 'Since' annotation in the + gtk-doc. + +2008-12-05 Neil Roberts + + * clutter/clutter-timeline.c: + * clutter/clutter-texture.c: + * clutter/clutter-stage.c: + * clutter/clutter-label.c: + * clutter/clutter-behaviour-path.c: + * clutter/clutter-actor.c: Fix the 'Since' annotation in the + gtk-doc. + +2008-12-05 Neil Roberts + + Bug 1252 - Merge ClutterBehaviourPath and ClutterBehaviourBspline + + * clutter/clutter-path.h: + * clutter/clutter-path.c: Implementation of new ClutterPath object + to represent a path combining straight line and bezier curve + elements. + + * clutter/clutter.h: Include clutter-path.h and remove + clutter-behaviour-bspline.h + + * tests/interactive/test-threads.c (test_threads_main): + * tests/interactive/test-script.c: + * tests/interactive/test-behave.c (test_behave_main): Use new path + API + + * clutter/clutter-effect.c: Use the new ClutterBehaviourPath API. + + * clutter/clutter-bezier.h: + * clutter/clutter-bezier.c: Moved bezier curve handling code out + from clutter-behaviour-bspline.c to a separate file. + + * clutter/clutter-behaviour-path.h: + * clutter/clutter-behaviour-path.c: Reimplemented to work with a + ClutterPath + + * clutter/clutter-behaviour-bspline.h: + * clutter/clutter-behaviour-bspline.c: Removed + + * clutter/Makefile.am: Add clutter-path and clutter-bezier, remove + clutter-behaviour-bspline. + + * tests/conform/test-path.c: New automatic test for ClutterPath + consistency + + * tests/conform/test-conform-main.c (main): Add test_path + + * tests/conform/Makefile.am (test_conformance_SOURCES): Add + test-path.c + + * clutter/clutter-sections.txt: Add ClutterPath docs + + * clutter/clutter.types: + * clutter/clutter-docs.xml: + * doc/reference/clutter/clutter-animation-tutorial.xml: Remove + mention of ClutterBehaviourBspline + + * clutter/clutter-marshal.list: Add VOID:UINT + +2008-12-04 Neil Roberts + + Bug 1297 - Bring back support for GL_ARB_texture_rectangle + + * clutter/cogl/gl/cogl-texture.c (cogl_texture_new_from_foreign, + (_cogl_texture_quad_hw, cogl_texture_polygon), + (_cogl_texture_quad_sw): Support GL_ARB_texture_rectangle textures + + * clutter/glx/clutter-glx-texture-pixmap.c: Use rectangle textures + when NPOTs are not available or it is forced by the + CLUTTER_PIXMAP_TEXTURE_RECTANGLE environment variable. + + * clutter/cogl/gl/cogl.c (cogl_enable): Allow enabling + GL_TEXTURE_RECTANGLE_ARB. + +2008-12-04 Neil Roberts + + Bug 1172 - Disjoint paths and clip to path + + * clutter/cogl/cogl-path.h: + * clutter/cogl/common/cogl-primitives.c: + * clutter/cogl/common/cogl-primitives.h: + * clutter/cogl/gl/cogl-primitives.c: + * clutter/cogl/gles/cogl-primitives.c: Changed the semantics of + cogl_path_move_to. Previously this always started a new path but + now it instead starts a new disjoint sub path. The path isn't + cleared until you call either cogl_path_stroke, cogl_path_fill or + cogl_path_new. There are also cogl_path_stroke_preserve and + cogl_path_fill_preserve functions. + + * clutter/cogl/gl/cogl-context.c: + * clutter/cogl/gl/cogl-context.h: + * clutter/cogl/gles/cogl-context.c: + * clutter/cogl/gles/cogl-context.h: Convert the path nodes array + to a GArray. + + * clutter/cogl/gl/cogl-texture.c: + * clutter/cogl/gles/cogl-texture.c: Call cogl_clip_ensure + + * clutter/cogl/common/cogl-clip-stack.c: + * clutter/cogl/common/cogl-clip-stack.h: Simplified the clip + stack code quite a bit to make it more maintainable. Previously + whenever you added a new clip it would go through a separate route + to immediately intersect with the current clip and when you + removed it again it would immediately rebuild the entire clip. Now + when you add or remove a clip it doesn't do anything immediately + but just sets a dirty flag instead. + + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/cogl.c: Taken away the code to intersect + stencil clips when there is exactly one stencil bit. It won't work + with path clips and I don't know of any platform that doesn't have + eight or zero stencil bits. It needs at least three bits to + intersect a path with an existing clip. cogl_features_init now + just decides you don't have a stencil buffer at all if you have + less than three bits. + + * clutter/cogl/cogl.h.in: New functions and documentation. + + * tests/interactive/test-clip.c: Replaced with a different test + that lets you add and remove clips. The three different mouse + buttons add clips in different shapes. This makes it easier to + test multiple levels of clipping. + + * tests/interactive/test-cogl-primitives.c: Use + cogl_path_stroke_preserve when using the same path again. + + * doc/reference/cogl/cogl-sections.txt: Document the new + functions. + +2008-12-03 Robert Bragg + + Bug 1303 - clutter_glx_texture_pixmap_using_extension doesn't check if + fallbacks are being used + + * glx/clutter-glx-texture-pixmap.c: + clutter_glx_texture_pixmap_using_extension now checks to see if + priv->use_fallback is TRUE not just that the tfp extension is + available. + +2008-12-01 Neil Roberts + + Bug 1305 - NPOT textures unaligned to a pixel sometimes have + border artifacts + + * clutter/cogl/gl/cogl-texture.c: Set the wrap mode of a texture + on demand + + Instead of setting the wrap mode once per texture at creation, it + is now changed whenever the texture is drawn. The previous value + is cached so that it isn't changed if the value is the same. + + This is used in _cogl_texture_quad_hw to only enable GL_REPEAT + mode when the coordinates are not in the range [0,1]. Otherwise it + can pull in pixels from the other edge when the texture is + rendered off-pixel. + +2008-11-28 Neil Roberts + + * tests/conform/test-backface-culling.c (TEXTURE_SIZE): Don't set + to a funny size on GLES because it will break cogl_texture_polygon + +2008-11-28 Neil Roberts + + * tests/conform/test-backface-culling.c: New test for backface + culling + + * tests/conform/test-conform-main.c (main): Add + /texture/test_backface_culing + + * tests/conform/Makefile.am (test_conformance_SOURCES): Add + test-backface-culling.c + +2008-11-28 Neil Roberts + + * tests/conform/test-mesh-mutability.c: + * tests/conform/test-mesh-interleved.c: + * tests/conform/test-mesh-contiguous.c: Remove the idle source + after the test is complete so that it won't interfere with other + tests. + +2008-11-26 Emmanuele Bassi + + * clutter/clutter-group.c: + (clutter_group_real_raise), (clutter_group_real_lower): Repaint + the Group on raise and lower. + +2008-11-26 Neil Roberts + + * clutter/cogl/gl/cogl-texture.c (cogl_texture_rectangle): Fixed + the test for whether to use hardware tiling. Previously it assumed + that texture coordinates are in increasing order but this is not + the case since bug 1057 was fixed. The texture coordinates are now + sorted later. It also allowed negative coordinates which doesn't + make sense if the texture has waste. + +2008-11-25 Emmanuele Bassi + + * configure.ac: Remove stray dependency on gdk-pixbuf-xlib; we + don't use the xlib specific API anymore. (thanks to Matthias + Clasen) + +2008-11-25 Neil Roberts + + Bug 1299 - clutter_score_remove will segmentation fault if + timelines are more than 52 and continue to remove them + + * clutter/clutter-score.c (traverse_children): Don't destroy the + entry in the handler for REMOVE_BY_ID. It will be removed again + anyway in the call to g_node_traverse. This was causing a + crash. Thanks to zhangwei for spotting. + +2008-11-24 Neil Roberts + + Add a wrapper library to help testing without NPOTs. + + * tests/tools/Makefile.am: Optionally build the + libdisable-npots.la library depending on whether libdl was + detected in the configure script. A helper script is also + generated to setup the LD_PRELOAD. + + * tests/conform/Makefile.am: There are now two versions of the + test-report and full-report rules. test-report-normal is the same + as before and test-report-disable-npots runs the tests with the + disable-npots wrapper script. The full-report rule runs both of + them and displays two separate HTML files. The test-report rule + just runs the normal version as before. + + * configure.ac: Add a test for libdl + + * tests/tools/disable-npots.sh.in: New file. Template for the + helper script + + * tests/tools/disable-npots.c: New file + +2008-11-24 Neil Roberts + + * clutter/cogl/gl/cogl-texture.c (cogl_texture_polygon): Fix the + equation for calculating texture coordinates when using sliced + textures. This became broken in revision 3520. + +2008-11-21 Neil Roberts + + Bug 1270 - Update to mingw-cross-compile.sh + + * build/mingw/mingw-cross-compile.sh: Update to download latest + binaries. Patch thanks to David Kedves. + +2008-11-21 Neil Roberts + + Bug 1271 - mingw compiling failed: undefined reference to + `_glDrawRangeElements@24' + + Resolve glDrawRangeElements with cogl_get_proc_address instead of + calling it directly because functions defined in GL > 1.1 are not + directly exported under Windows. + + * clutter/cogl/common/cogl-mesh.c: Use the function pointer from + the context + + * clutter/cogl/gl/cogl-context.c (cogl_create_context): Initialise + function pointer. + + * clutter/cogl/gl/cogl-context.h (CoglContext): Add a function + pointer + + * clutter/cogl/gl/cogl-defines.h.in: Add a typedef for the + function pointer. + + * clutter/cogl/gl/cogl.c (_cogl_features_init): Resolve + glDrawRangeElements + +2008-11-21 Neil Roberts + + * tests/interactive/Makefile.am: + * tests/conform/Makefile.am: Use $(EXEEXT) when specifying a + dependency on an executable otherwise there won't be a rule to + build it on Windows. + +2008-11-21 Neil Roberts + + Bug 1269 - mingw32 building failed at clutter-media.c + + * clutter/clutter-media.c: Rename the 'ERROR' signal enum to + 'ERROR_SIGNAL' otherwise it clashes with windgi.h. Thanks to David + Kedves + +2008-11-21 Neil Roberts + + * clutter/pango/cogl-pango.h: Include pango/pango.h to get + pango-renderer.h. In versions prior to 1.18.4 pangocairo.h does + not include pango-renderer.h + +2008-11-21 Neil Roberts + + Bug 1280 - clutter_score_append_at_marker lead to segmentation + fault in trunk and incorrect appearance in clutter-0.8 + + * clutter/clutter-score.c (start_children_entries): Check whether + the child timeline is actually attached at a marker before + comparing whether the marker's name matches the marker + reached. This fixes a crash that happens when a marker is reached + on a timeline that also has child timelines attached at the + end. Thanks to zhangwei for spotting. + +2008-11-20 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_set_property): Add sanity checks for NULL + boxed values when setting the rotation center. + + * tests/interactive/test-animation.c: + (on_button_press): Add an example on how to use the rotation + properties to animate an actor. + +2008-11-18 Neil Roberts + + Fixed some trivial compiler warnings + + * tests/interactive/test-pixmap.c (create_pixmap): Use a format + string instead of passing the error message directly to g_error. + + * tests/interactive/test-easing.c (test_easing_main) + (on_button_press): + * tests/interactive/test-animation.c (on_button_press): Use + unsigned variables for the results from clutter_actor_get_size + otherwise it complains about the pointer signedness being + different. + + * clutter/clutter-script.c (clutter_script_add_search_paths): Use + G_GSIZE_FORMAT instead of %d for a gsize parameter otherwise it + gets upset on 64-bit. + +2008-11-18 Neil Roberts + + * tests/conform/test-timeline.c (test_timeline): Remove the delay + idle handler after the test is finished, otherwise it will + continue running during subsequent tests. This was breaking + test_timeline_interpolate. + +2008-11-18 Robert Bragg + + * clutter/cogl/common/cogl-mesh.c: + Re-works validate_custom_attribute_name() so it doesn't access an + un-initialised variable. + +2008-11-18 Robert Bragg + + A comparison of gl/cogl-texture.c and gles/cogl-texture.c, to reduce + differences and improve maintainability. + + * clutter/cogl/gl/cogl-context.h: + Adds a CoglTextureGLVertex typedef + texture_vertices and + texture_vertices_size members to CoglContext for using vertex arrays + like GLES does + + * clutter/cogl/gl/cogl-context.c: + Initializes texture_vertices + texture_vertices_size members + + * clutter/cogl/gl/cogl-internal.h: + Adds COGL_ENABLE_COLOR_ARRAY + + * clutter/cogl/gl/cogl.c: + Add COGL_ENABLE_COLOR_ARRAY support to cogl_enable + + * clutter/cogl/gles/cogl-context.h: + Change the CoglTextureGLVertex to use GLfloat for the position + and texture coord attributes and GLubyte for the color. + + * clutter/cogl/gles/cogl-texture-private.h: + Adds a wrap_mode member like GL has. + + * clutter/cogl/gl/cogl-texture.c + * clutter/cogl/gles/cogl-texture.c: + Improves the comparability of the files, such that the remaining + differences, better reflect the fundamental differences needed + between GL and GLES. Notably GL no longer uses glBegin/glEnd for + submitting vertices, it uses vertex arrays like GLES and this gives + a small but measurable fps improvement for test-text. + +2008-11-18 Robert Bragg + + * clutter/cogl/gl/cogl-internal.h + * clutter/cogl/gles/cogl-internal.h: + Removes semicolon after the GE() macro since that breaks using it as a + single statement. + +2008-11-18 Emmanuele Bassi + + * clutter/clutter.h: Add clutter-shader.h and + clutter-shader-types.h to the global include. + +2008-11-18 Emmanuele Bassi + + * clutter/cogl/cogl-shader.h: Add a function for setting an + integer uniform, similar to cogl_program_uniform_1f(). + + * clutter/cogl/gl/cogl-program.c: Implement the GL version + of cogl_program_uniform_1i(). + + * clutter/cogl/gles/cogl-program.c: Implement the GLES version + of cogl_program_uniform_1i(). + +2008-11-18 Emmanuele Bassi + + Bug 1049 - Clutter doesn't support most GLSL uniforms (patch + by Chris Lord and Neil Roberts) + + * README: Update release notes. + + * clutter/Makefile.am: + * clutter/clutter-shader-types.[ch]: Add GValue types for + shader values. + + * clutter/clutter-actor.[ch]: Update the shader API to use + the newly added GValue support for GLSL shader uniform + setters. + + * clutter/clutter-shader.[ch]: Add float and integer convenience + API for single value GLSL uniform setters. + + * clutter/cogl/cogl-shader.h: Add new uniform setters. + + * clutter/cogl/gl/cogl-context.c: + * clutter/cogl/gl/cogl-context.h: + * clutter/cogl/gl/cogl-defines.h.in: + * clutter/cogl/gl/cogl-program.c: + * clutter/cogl/gl/cogl.c: Update the GL implementation of COGL + to handle the GLSL uniform setters. + + * clutter/cogl/gles/cogl-gles2-wrapper.c: + * clutter/cogl/gles/cogl-gles2-wrapper.h: + * clutter/cogl/gles/cogl-internal.h: + * clutter/cogl/gles/cogl-program.c: Update the GLES 2.0 implementation + of COGL to handle the GLSL uniform setters. + + * doc/reference/clutter/clutter-sections.txt: + * doc/reference/cogl/cogl-sections.txt: Update the documentation. + + * tests/interactive/test-fbo.c: + * tests/interactive/test-shader.c: Update the shader tests. + +2008-11-18 Emmanuele Bassi + + * clutter/clutter-texture.c: + (clutter_texture_get_preferred_width): Fix the usage of the + fixed point division macro. + +2008-11-18 Emmanuele Bassi + + * tests/conform/test-conform-main.c (main): Do not run the + conformance test suite if we are on X11 but we do not have + a DISPLAY available. Some of the tests require a DISPLAY, + and everything passes through a clutter_init() call which will + fail anyway. If we are running make distcheck on an headless + box we might as well just skip the conformance test suite + without a meaningless error. + +2008-11-18 Emmanuele Bassi + + * tests/conform/test-mesh-contiguous.c: + * tests/conform/test-mesh-interleved.c: + * tests/conform/test-mesh-mutability.c: Remove the last bare + g_print() from the conformance test suite. + +2008-11-18 Emmanuele Bassi + + * clutter/clutter-alpha.h: + * clutter/clutter-alpha.c: + (clutter_alpha_set_mode): Use a lookup table to find the alpha + function given the animation mode. + + (clutter_exp_in_func), + (clutter_exp_out_func), + (clutter_exp_in_out_func): Add new exponential functions. + + * clutter/clutter-script.c: Update the lookup table with the + new animation modes; match "linear" to the ramp-inc alpha + function. + + * clutter/clutter-types.h: Add new AnimationMode values. + + * tests/interactive/test-easing.c: Update the easing functions + test. + +2008-11-18 Neil Roberts + + * tests/conform/test-pick.c (test_pick): The final result message + when --verbose is used was the wrong way around + +2008-11-18 Neil Roberts + + * tests/conform/test-conform-main.c (main): Fixed a typo in the + name of the path for test_realized. + +2008-11-17 Emmanuele Bassi + + Bug 1014 - Clutter Animation API Improvements + + * clutter/Makefile.am: + * clutter/clutter.h: Update the build + + * clutter/clutter-types.h: Add AnimationMode, an enumeration + for easing functions. + + * clutter/clutter-alpha.[ch]: Add the :mode property to + control the function bound to an Alpha instance using an + enumeration value. Also add six new alpha functions: + + - ease-in, ease-out, ease-in-out + - sine-in, sine-out, sine-in-out + + * clutter/clutter-deprecated.h: Deprecate the #defines for + the alpha functions. They will be replaced by entries in the + ClutterAnimationMode. + + * clutter/clutter-interval.[ch]: Add ClutterInterval, an + object for defining, validating and computing an interval + between two values. + + * clutter/clutter-animation.[ch]: Add ClutterAnimation, an + object responsible for animation the properties of a single + actor along an interval of values. ClutterAnimation memory + management is automatic. A simple wrapper method for + ClutterActor is provided: + + clutter_actor_animate() + + which will create, or update, an animation for the passed + actor. + + * clutter/clutter-debug.h: + * clutter/clutter-main.c: Add a new 'animation' debug note. + + * clutter/clutter-script.c: Clean up the alpha functions + whitelist, and add the new functions. + + * doc/reference/clutter/Makefile.am: + * doc/reference/clutter/clutter-sections.txt: Update the + API reference. + + * doc/reference/clutter/clutter-animation.xml: Renamed to + doc/reference/clutter/clutter-animation-tutorial.xml to + avoid clashes with the ClutterAnimation section. + + * doc/reference/clutter/clutter-docs.sgml: Renamed to + doc/reference/clutter/clutter-docs.xml, as it was an XML + file and not a SGML file. + + * tests/Makefile.am: + * tests/interactive/Makefile.am: + * tests/interactive/test-animation.c: + * tests/interactive/test-easing.c: Add two tests for the + new simple animation API and the easing functions. + + * tests/interactive/test-actors.c: + * tests/interactive/test-behave.c: + * tests/interactive/test-depth.c: + * tests/interactive/test-effects.c: + * tests/interactive/test-layout.c: + * tests/interactive/test-multistage.c: + * tests/interactive/test-paint-wrapper.c: + * tests/interactive/test-rotate.c: + * tests/interactive/test-scale.c: + * tests/interactive/test-texture-quality.c: + * tests/interactive/test-threads.c: + * tests/interactive/test-viewport.c: Update interactive tests + to the deprecations and new alpha API. + +2008-11-17 Emmanuele Bassi + + * clutter/clutter-entry.c: + * clutter/clutter-label.c: + * clutter/clutter-rectangle.c: + * clutter/clutter-script.c: + * clutter/clutter-stage.c: Use the ParamSpecColor and GValue + API for ClutterColor-based properties. + +2008-11-14 Robert Bragg + + * tests/interactive/Makefile.am + * tests/interactive/test-pixmap.c: + test-pixmap + test-devices accidentally got dropped from the makefiles + when changing the unit test layout; this puts them back. + +2008-11-14 Emmanuele Bassi + + Bug 1265 - ClutterScore doesn't emit 'started' signal (Bastian + Winkler) + + * clutter/clutter-score.c: Emit the ::started signal. + + * tests/interactive/test-score.c: Check the emission of the + Score signals. + +2008-11-13 Neil Roberts + + * clutter/cogl/gles/cogl-gles2-wrapper.h: + * clutter/cogl/gles/cogl-gles2-wrapper.c: + Initialise the 'tex' sampler uniform to 0. The GLSL spec + specifically says that you must initialize sampler uniforms. This + fixes texturing for GLES 2 when using the PowerVR simulator via + software Mesa. + +2008-11-13 Robert Bragg + + Gets the mesh API working with GLES2 + + * clutter/cogl/common/cogl-mesh.c: + Make sure we use the appropriate cogl_wrap_gl* funcs as appropriate + + * clutter/cogl/gles/cogl-gles2-wrapper.c + * clutter/cogl/gles/cogl-gles2-wrapper.h: + In our glColorPointer wrapper we needed to mark our color attribute + as normalized. + + * tests/conform/Makefile.am: + When creating unit test symlinks we use the -l gtester option to + list tests, but when using the PVR SDK the test binary also spews + out some extra info that caused lots of random symlinks to be + created. We now grep for lines starting with a '/' + + * tests/conform/test-mesh-contiguous.c + * tests/conform/test-mesh-mutability.c: + Use cogl_set_source_color instead of directly calling glColor4ub + +2008-11-13 Neil Roberts + + * clutter/clutter-actor.c (clutter_actor_get_paint_visibility): + Fix logic so that it won't return TRUE for a hidden stage. + +2008-11-13 Emmanuele Bassi + + * clutter/clutter-behaviour-ellipse.c: + (clutter_behaviour_ellipse_applied): Do not reset the depth + of the actors to which the Ellipse behaviour has been applied + to, unless the behaviour is going to update it because it has + a tilt on the X or Y axis. + +2008-11-13 Neil Roberts + + * clutter/clutter-actor.c (clutter_actor_get_reactive) + (clutter_actor_get_paint_visibility): Be sure to return exactly + TRUE or FALSE instead of zero or some non-zero value in these + functions that return a gboolean. Thanks to Kai Wei for spotting. + +2008-11-12 Emmanuele Bassi + + * tests/conform/Makefile.am: + * tests/conform/test-conform-main.c: + * tests/conform/test-paint-opacity.c: Add test unit for label, + rectangle and paint opacity. + +2008-11-12 Emmanuele Bassi + + * clutter/cogl/cogl-color.h: + * clutter/cogl/cogl-path.h: + * clutter/cogl/cogl-types.h: + * clutter/cogl/common/cogl-color.c: Deprecated cogl_color() + in favour of cogl_set_source_color() and friends; store the + CoglColor components as unsigned bytes instead of fixed point + normalized values; add functions for allocating, copying and + freeing CoglColor, for use of language bindings. + + * clutter/cogl/cogl.h.in: + * clutter/cogl/cogl-deprecated.h: Added cogl-deprecated.h, + an header file containing the deprecation symbols similar + to clutter-deprecated.h. + + * clutter/cogl/gl/Makefile.am: + * clutter/cogl/gl/cogl-texture.c: + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/Makefile.am: + * clutter/cogl/gles/cogl-texture.c: + * clutter/cogl/gles/cogl.c: Update the GL and GLES implementations + of COGL after the CoglColor changes. + + * clutter/clutter-actor.c: + * clutter/clutter-clone-texture.c: + * clutter/clutter-entry.c: + * clutter/clutter-label.c: + * clutter/clutter-rectangle.c: + * clutter/clutter-texture.c: Do not use CoglColor whenever it + is possible, and use cogl_set_source_color4ub() instead. + + * clutter/pango/cogl-pango-render.c: Ditto as above. + + * doc/reference/clutter/subclassing-ClutterActor.xml: + * doc/reference/cogl/cogl-sections.txt: Update the documentation. + + * tests/interactive/test-cogl-offscreen.c: + * tests/interactive/test-cogl-primitives.c: + * tests/interactive/test-cogl-tex-convert.c: + * tests/interactive/test-cogl-tex-foreign.c: + * tests/interactive/test-cogl-tex-getset.c: + * tests/interactive/test-cogl-tex-polygon.c: + * tests/interactive/test-cogl-tex-tile.c: + * tests/interactive/test-paint-wrapper.c: Drop the usage of + CoglColor whenever it is possible. + +2008-11-12 Neil Roberts + + Bug 1057 - cogl_texture_rectangle doesn't support backward + coordinates + + * clutter/cogl/gl/cogl-texture.c: Instead of sorting the vertex + and texture coordinates passed to cogl_texture_rectangle, just + swap both sets whenever the texture coordinates are backward. + +2008-11-12 Neil Roberts + + * clutter/clutter-rectangle.c (clutter_rectangle_paint): Fixed so + that it doesn't use the alpha value from the border colour to draw + the rectangle + +2008-11-12 Neil Roberts + + * clutter/cogl/gles/Makefile.am (libclutterinclude_HEADERS): + * clutter/cogl/gl/Makefile.am (libclutterinclude_HEADERS): + * clutter/cogl/common/Makefile.am + (libclutter_cogl_common_la_SOURCES): Move cogl-mesh.h into the + headers for libclutter so that it will get installed. + +2008-11-12 Neil Roberts + + Fix warnings in mesh tests + + * tests/conform/test-mesh-mutability.c (on_paint): + * tests/conform/test-mesh-interleved.c (on_paint): + * tests/conform/test-mesh-contiguous.c (on_paint): Use g_usleep + instead of sleep + + * tests/conform/test-mesh-mutability.c (queue_redraw): + * tests/conform/test-mesh-interleved.c (queue_redraw): + * tests/conform/test-mesh-contiguous.c (queue_redraw): Added + missing return statement + + * clutter/cogl/cogl-mesh.h: Add a declaration for + cogl_mesh_submit + + * clutter/cogl/common/cogl-mesh.c (cogl_mesh_submit): Move the + documentation to cogl-mesh.h to match the rest of the functions + +2008-11-10 Robert Bragg + + Bug 1164 - Implements the proposed Mesh API + + * clutter/cogl/cogl-mesh.h + * clutter/cogl/cogl-types.h + * clutter/cogl/cogl.h.in + * clutter/cogl/common/Makefile.am + * clutter/cogl/common/cogl-mesh-private.h + * clutter/cogl/common/cogl-mesh.c + * clutter/cogl/gl/cogl-context.c + * clutter/cogl/gl/cogl-context.h + * clutter/cogl/gl/cogl-defines.h.in + * clutter/cogl/gl/cogl.c + * clutter/cogl/gles/cogl-context.c + * clutter/cogl/gles/cogl-context.h: + The Mesh API provides a means for submitting an extensible number of + per vertex attributes to OpenGL in a way that doesn't require format + conversions and so that the data can be mapped into the GPU (in vertex + buffer objects) for - hopefully - fast re-use. + + There are a number of things we can potentially use this API for, but + right now this just provides a foundation to build on. Please read + the extensive list of TODO items in cogl-mesh.c for examples. + + Please refer to the cogl-mesh section in the reference manual for + documentation of the API. + + * tests/conform/Makefile.am + * tests/conform/test-conform-main.c + * tests/conform/test-mesh-contiguous.c + * tests/conform/test-mesh-interleved.c + * tests/conform/test-mesh-mutability.c: + Privides basic coverage testing for the mesh API. + +2008-11-10 Robert Bragg + + Bug 1164 - Implements the proposed Mesh API + + * clutter/cogl/cogl-mesh.h + * clutter/cogl/cogl-types.h + * clutter/cogl/cogl.h.in + * clutter/cogl/common/Makefile.am + * clutter/cogl/common/cogl-mesh-private.h + * clutter/cogl/common/cogl-mesh.c + * clutter/cogl/gl/cogl-context.c + * clutter/cogl/gl/cogl-context.h + * clutter/cogl/gl/cogl-defines.h.in + * clutter/cogl/gl/cogl.c + * clutter/cogl/gles/cogl-context.c + * clutter/cogl/gles/cogl-context.h: + The Mesh API provides a means for submitting an extensible number of + per vertex attributes to OpenGL in a way that doesn't require format + conversions and so that the data can be mapped into the GPU (in vertex + buffer objects) for - hopefully - fast re-use. + + There are a number of things we can potentially use this API for, but + right now this just provides a foundation to build on. Please read + the extensive list of TODO items in cogl-mesh.c for examples. + + Please refer to the cogl-mesh section in the reference manual for + documentation of the API. + + * tests/conform/Makefile.am + * tests/conform/test-conform-main.c + * tests/conform/test-mesh-contiguous.c + * tests/conform/test-mesh-interleved.c + * tests/conform/test-mesh-mutability.c: + Privides basic coverage testing for the mesh API. + +2008-11-10 Robert Bragg + + * tests/conform/ADDING_NEW_TESTS + * tests/conform/test-conform-common.c + * tests/conform/test-pick.c: + Instead of using clutter_stage_new /clutter_actor_destroy as a way to + avoid cascading side effects between unit tests, due to left over + actors, we now destroy all children of the default stage between + tests instead. + + * tests/conform/wrapper.sh: + Adds a convenience note about how to run valgrind for an individual + unit test + +2008-11-10 Neil Roberts + + * tests/interactive/test-main.c (main): Allow more than two + arguments so that the remaining arguments can be passed to the + test. This is needed for test-behave for example which can take a + --path argument. + +2008-11-10 Emmanuele Bassi + + * clutter/clutter-texture.c: Remove an unused function. + +2008-11-10 Emmanuele Bassi + + * tests/conform/test-label-cache.c: + * tests/conform/test-pick.c: + * tests/conform/test-timeline.c: Show all the output messages only + if the test was done with the verbose flag turned on. + + * tests/interactive/test-main.c: Do not use the (gpointer*) cast, + but use a temporary gpointer instead. + +2008-11-10 Robert Bragg + + * tests/conform/Makefile.am: + * tests/conform/wrapper.sh: + * tests/conform/test-conform-main.c: + * tests/conform/test-timeline.c: + Adds Neil's updates to test-timeline.c so it now works with the new + unit testing infrastructure. + + Also some fixes to ensure wrappers get setup correctly for the + timeline tests. + + * tests/interactive/test-main.c: + cast the symbol return pointer as (gpointer *) to avoid warning + + * tests/conform/test-pick.c: + g_assert that the test passes, instead of using exit() + + * test/conform/ADDING_NEW_TESTS: + Fixes a silly typo + +2008-11-08 Emmanuele Bassi + + * tests/conform/Makefile.am: + * tests/conform/test-actor-invariants.c: + * tests/conform/test-conform-main.c: Move the actor invariants + unit to the conform section of the test suite. + + * tests/interactive/Makefile.am: + * tests/interactive/test-entry-auto.c: + * tests/interactive/test-invariants.c: Remove the entry-auto + and invariants test, since those two belong to the conform + section. + +2008-11-07 Robert Bragg + + Bug 1162 - Re-works the tests/ to use the glib-2.16 unit testing + framework + + * configure.ac: + * tests/*: + The tests have been reorganised into different categories: conformance, + interactive and micro benchmarks. + - conformance tests can be run as part of automated tests + - interactive tests are basically all the existing tests + - micro benchmarks focus on a single performance metric + + I converted the timeline tests to conformance tests and also added some + tests from Neil Roberts and Ebassi. + + Note: currently only the conformance tests use the glib test APIs, + though the micro benchmarks should too. + + The other change is to make the unit tests link into monolithic binaries + which makes the build time for unit tests considerably faster. To deal + with the extra complexity this adds to debugging individual tests I + have added some sugar to the makefiles so all the tests can be run + directly via a symlink and when an individual test is run this way, + then a note is printed to the terminal explaining exactly how that test + may be debugged using GDB. + + There is a convenience make rule: 'make test-report', that will run all + the conformance tests and hopefully even open the results in your web + browser. It skips some of the slower timeline tests, but you can run + those using 'make full-report' + +2008-11-07 Emmanuele Bassi + + * clutter/clutter-media.c: Improve documentation of the + ClutterMedia interface. + +2008-11-07 Matthew Allum + + Bug 1238 - [PATCH] Pack bitfields in ClutterTexturePrivate + + * clutter/clutter-texture.c: + + Using 'guint my_field : 1' for booleans to save space only + makes sense if you group all such fields together. Fix + grouping for ClutterTexturePrivate. Thanks to Owen Taylor for + patch. + +2008-11-07 Matthew Allum + + Bug 1237 - clutter_texture_set_filter_quality calls + clutter_texture_[un]realize + + * clutter/clutter-texture.c: (clutter_texture_set_filter_quality): + Call clutter_actor_[un]realize and keep visibility state + +2008-11-07 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * clutter/clutter-clone-texture.c: + * clutter/clutter-private.h: + * clutter/clutter-texture.c: + * clutter/x11/clutter-x11-texture-pixmap.c: + + Attempt to lower overhead of updating TFP's (particularly mipmaped). + Compresses mipmap updates only for visible TFPs. + Avoiding updates for non visible TFP's whilst keeping visible + clones working ok. + +2008-11-06 Neil Roberts + + Bug 1230 - Pick fails on low precision color buffers + + * clutter/clutter-main.c (_clutter_id_to_color): When using fuzzy + picking to pick a color for an actor, it would previously set the + fuzzy bit and then all but the most significant of the remaining + unused bits. This meant that for 16-bit displays it would end up + with a strange pattern for the unused bits like 1011 which could + cause it to round up. Now it just sets all but the most + significant of all of the unused bits giving a pattern like + 0111. Thanks to Guy Zadickario for the patch. + +2008-11-06 Neil Roberts + + * clutter/cogl/gles/cogl.c (cogl_perspective): + * clutter/cogl/common/cogl-fixed.c (cogl_fixed_sin) + (cogl_angle_sin, cogl_angle_tan, cogl_fixed_sqrt): Replaced uses + of 1 + ~x with just -x which is equivalent and easier to + understand. + +2008-11-06 Emmanuele Bassi + + Bug 1233 - CLUTTER_ALPHA_SINE_INC is broken in trunk + + * clutter/clutter-alpha.c: Fix a rollover in the sine functions. + +2008-11-05 Neil Roberts + + * clutter/clutter-color.c (clutter_color_new): Remove CLAMP macros + around the component parameters because they are guint8 anyway so + the CLAMP is redundant and it causes a warning. + +2008-11-04 Thomas Wood + + * clutter/clutter-color.c: Update ClutterColor documentation as + changes have been backported to 0.8.4. + +2008-11-04 Emmanuele Bassi + + * clutter/clutter-script.c: Document the "is-default" member of + a ClutterStage definition. + +2008-11-04 Neil Roberts + + * clutter/cogl/gl/cogl.c (cogl_perspective): Use the accurate + 64-bit multiplication macro instead of COGL_FIXED_FAST_DIV for + calculating xmax as was done previously. This fixes + test-perspective and other tests that had a gone a bit skewiff. + +2008-11-04 Neil Roberts + + Bug 1181 - In Score, timelines, appended at markers, are also + called on complete + + * clutter/clutter-score.c (start_children_entries): Use the name + of the marker to start as the data parameter and only start child + timelines that have the same marker name. Previously the + ClutterScore would just start all child entries when a marker was + reached or the timeline completed regardless of whether they were + added with a marker or not. Thanks to Mihail Naydenov for + reporting the bug. + +2008-11-03 Emmanuele Bassi + + * clutter/cogl/gl/Makefile.am: Whitespace fixes. + + * clutter/cogl/gles/Makefile.am: Put back a missing backslash + that broke the GLES build. + +2008-11-03 Emmanuele Bassi + + Bug 1231 - Build fails in gles flavour in revision 3442 + + * clutter/cogl/gles/cogl-context.h: Fix remaining use of + ClutterFixed over CoglFixed. (Michael Boccara) + +2008-11-03 Neil Roberts + + Bug 1207 - Timelines sometime miss markers + + * clutter/clutter-timeline.c (timeline_timeout_func): Move the + code for firing the new-frame and marker-reached signals into a + separate static function so that it can also be called when the + last frame is reached. Also fix an issue where the frame numbers + were changed in the wrong direction when detecting missed markers + in a reversed timeline. Based on a patch by Michael Boccara. + + * tests/test-timeline.c: Now tries to automatically verify whether + the test worked by keeping track of all the signal emissions. The + timelines are run a second time with an extra timeout that causes + delays to simulate skipped frames. + +2008-10-31 Emmanuele Bassi + + * clutter/pango/cogl-pango-fontmap.c: + * clutter/pango/cogl-pango-render.c: Whitespace fixes and code + duplication removal. Plus, start documenting the CoglPango API. + +2008-10-31 Matthew Allum + + * clutter/clutter-texture.c: (clutter_texture_set_filter_quality), + (clutter_texture_get_filter_quality): + Fix up some logic, typos. + + * clutter/glx/clutter-glx-texture-pixmap.c: + Improve support for mipmaped TFP textures. + +2008-10-31 Emmanuele Bassi + + Bug 1200 - Crash with invalid DISPLAY + + * clutter/clutter-main.c: Use the ClutterBackend wrapper API + instead of directly checking the class structure. + + * clutter/glx/clutter-backend-glx.c: Return the correct value + in case of failure. + + * clutter/x11/clutter-backend-x11.c: Bail out if XOpenDisplay() + failed. + +2008-10-30 Emmanuele Bassi + + * clutter/cogl/cogl-color.h: + * clutter/cogl/cogl-fixed.h: + * clutter/cogl/cogl-offscreen.h: + * clutter/cogl/cogl-path.h: + * clutter/cogl/cogl-shader.h: + * clutter/cogl/cogl-texture.h: + * clutter/cogl/cogl-types.h: Add copyright and licensing + notice to the newly added files. + +2008-10-30 Emmanuele Bassi + + Bug 1219 - Clean up cogl.h + + * clutter/cogl/cogl.h.in: + * clutter/cogl/cogl-offscreen.h: + * clutter/cogl/cogl-path.h: + * clutter/cogl/cogl-shader.h: + * clutter/cogl/cogl-texture.h: + * clutter/cogl/cogl-types.h: Split up the massive cogl.h file + into sub-header for each section of the API. + + * clutter/cogl/gl/*: + * clutter/cogl/gles/*: Update the GL and GLES implementations + of COGL to cope with the new header structure. + + * doc/reference/cogl/Makefile.am: Fix symbol retrieval. + +2008-10-30 Emmanuele Bassi + + Bug 1215 - Move the Pango renderer to the public API + + * clutter/pango/*: Rename PangoClutter -> CoglPango. + + * clutter/Makefile.am: + * clutter/clutter-backend.c: + * clutter/clutter-entry.c: + * clutter/clutter-label.c: + * clutter/clutter-main.[ch]: + * clutter/clutter-private.h: Update the users of the Pango + renderer API. + + * README: Update release notes. + +2008-10-30 Emmanuele Bassi + + Bug 1212 - Allow only a single include file for Clutter + + * clutter/*.h: Only allow including clutter.h in third + party code. + + * clutter/cogl/cogl-color.h: + * clutter/cogl/cogl-fixed.h: + * clutter/cogl/cogl.h.in: Only allow including cogl.h in + third party code. + + * clutter/cogl/common/Makefile.am: + * clutter/cogl/gl/Makefile.am: + * clutter/cogl/gles/Makefile.am: + * clutter/eglnative/Makefile.am: + * clutter/eglx/Makefile.am: + * clutter/fruity/Makefile.am: + * clutter/glx/Makefile.am: + * clutter/glx/clutter-glx.h: + * clutter/osx/Makefile.am: + * clutter/pango/Makefile.am: + * clutter/sdl/Makefile.am: + * clutter/win32/Makefile.am: + * clutter/x11/Makefile.am: Fix build environment. + + * clutter/x11/clutter-x11-texture-pixmap.h: + * clutter/x11/clutter-x11.h: Fix inclusion rules. + + * tests/test-pixmap.c: Fix inclusion of GdkPixbuf header. + + * README: Update release notes. + +2008-10-30 Emmanuele Bassi + + Bug 1211 - Drop ClutterFeatureFlags usage from COGL + + * clutter/cogl/cogl.h.in: + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/cogl.c: Do not use ClutterFeatureFlags + when CoglFeatureFlags will do. This removes the last usage + of Clutter API inside COGL. + +2008-10-30 Emmanuele Bassi + + Bug 1210 - Add CoglColor API + + * clutter/cogl/cogl-color.h: + * clutter/cogl/cogl.h.in: + * clutter/cogl/common/Makefile.am: + * clutter/cogl/common/cogl-color.c: + * clutter/cogl/gl/Makefile.am: + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/Makefile.am: + * clutter/cogl/gles/cogl-texture.c: + * clutter/cogl/gles/cogl.c: Add a new color-type, to be used by + COGL. CoglColor is optimized to allow the minimum amount of + conversions possible for both GL and GLES implementations. + + * clutter/clutter-actor.c: + * clutter/clutter-clone-texture.c: + * clutter/clutter-entry.c: + * clutter/clutter-main.c: + * clutter/clutter-rectangle.c: + * clutter/clutter-stage.c: + * clutter/clutter-texture.c: Use CoglColor when needed. + + * clutter/pango/pangoclutter-render.c: Use CoglColor when needed. + + * doc/reference/cogl/cogl-docs.sgml: + * doc/reference/cogl/cogl-sections.txt: Update the documentation. + + * tests/test-cogl-offscreen.c: + * tests/test-cogl-primitives.c: + * tests/test-cogl-tex-convert.c: + * tests/test-cogl-tex-foreign.c: + * tests/test-cogl-tex-getset.c: + * tests/test-cogl-tex-polygon.c: + * tests/test-cogl-tex-tile.c: + * tests/test-paint-wrapper.c: Update the tests. + + * README: Update release notes. + +2008-10-30 Emmanuele Bassi + + Bug 1209 - Move fixed point API in COGL + + * clutter/cogl/cogl-fixed.h: + * clutter/cogl/cogl.h.in: + * clutter/cogl/common/Makefile.am: + * clutter/cogl/common/cogl-fixed.c: Add fixed point API, modelled + after the ClutterFixed. The CoglFixed API supercedes the ClutterFixed + one and avoids the dependency of COGL on Clutter's own API. + + * clutter/cogl/common/cogl-clip-stack.c: + * clutter/cogl/common/cogl-primitives.c: + * clutter/cogl/common/cogl-primitives.h: Update internal usage of + ClutterFixed to CoglFixed. + + * clutter/cogl/gl/Makefile.am: + * clutter/cogl/gl/cogl-primitives.c: + * clutter/cogl/gl/cogl-texture.c: + * clutter/cogl/gl/cogl.c: Ditto, in the GL implementation of the + COGL API. + + * clutter/cogl/gles/Makefile.am: + * clutter/cogl/gles/cogl-fbo.c: + * clutter/cogl/gles/cogl-gles2-wrapper.c: + * clutter/cogl/gles/cogl-primitives.c: + * clutter/cogl/gles/cogl-texture.c: + * clutter/cogl/gles/cogl.c: Ditto, in the GLES implementation of + the COGL API. + + * clutter/pango/pangoclutter-glyph-cache.c: + * clutter/pango/pangoclutter-glyph-cache.h: Ditto, in the Pango + renderer glyphs cache. + + * clutter/clutter-fixed.c: + * clutter/clutter-fixed.h: ClutterFixed and related API becomes + a simple transition API for bindings and public Clutter API. + + * clutter/clutter-actor.c: + * clutter/clutter-alpha.c: + * clutter/clutter-backend.c: + * clutter/clutter-behaviour-depth.c: + * clutter/clutter-behaviour-ellipse.c: + * clutter/clutter-behaviour-path.c: + * clutter/clutter-behaviour-rotate.c: + * clutter/clutter-behaviour-scale.c: + * clutter/clutter-clone-texture.c: + * clutter/clutter-color.c: + * clutter/clutter-entry.c: + * clutter/clutter-stage.c: + * clutter/clutter-texture.c: + * clutter/clutter-timeline.c: + * clutter/clutter-units.h: Move from the internal usage of + ClutterFixed to CoglFixed. + + * doc/reference/clutter/clutter-sections.txt: + * doc/reference/cogl/cogl-docs.sgml: + * doc/reference/cogl/cogl-sections.txt: Update the documentation. + + * tests/test-cogl-tex-tile.c: + * tests/test-project.c: Fix tests after the API change + + * README: Add release notes. + +2008-10-29 Neil Roberts + + Bug 1074 - FBOs on GLES + + * clutter/cogl/gles/cogl-fbo.c: Copy the code from gl/cogl-fbo but + use the API calls directly instead of loading an extension because + it is part of the core in GLES 2. + + * clutter/cogl/gles/cogl.c (_cogl_features_init): Report + COGL_FEATURE_OFFSCREEN. + + * clutter/cogl/gles/cogl-fbo.h (CoglFbo): Add gl_stencil_handle. + + * clutter/cogl/gles/cogl-context.h (CoglContext): Add + viewport_store + + * tests/test-fbo.c (make_shader): Conditionally use the GLES 2 + names of the shader variables + +2008-10-29 Neil Roberts + + Bug 1206 - Picking disabled dithering + + * clutter/clutter-main.c (_clutter_do_pick): After picking is + finished, restore the state of glEnable (GL_DITHER). Otherwise it + will cause the scene to look different after the first pick on low + depth displays. (Thanks to Michael Boccara for the patch) + +2008-10-28 Thomas Wood + + * clutter/clutter-color.c (param_color_set_default): Set the no copy + flag when setting the default param spec value to prevent invalid + frees. + +2008-10-27 Neil Roberts + + Bug 1189 - Backface culling + + * clutter/cogl/gl/cogl-texture.c (cogl_texture_polygon) + (_cogl_texture_quad_sw, _cogl_texture_quad_hw): + * clutter/cogl/gles/cogl-texture.c (cogl_texture_polygon) + (_cogl_texture_quad_sw, _cogl_texture_quad_hw): Enable backface + culling in GL if it is requested. + + * clutter/cogl/gles/cogl-texture.c (_cogl_texture_quad_sw) + (_cogl_texture_quad_hw): + * clutter/cogl/gl/cogl-texture.c (_cogl_texture_quad_sw) + (_cogl_texture_quad_hw): Reorder the + vertices so that they are counter-clockwise. + + * clutter/cogl/gles/cogl-context.h (CoglContext): + * clutter/cogl/gl/cogl-context.h (CoglContext): Added a flag to + store whether backface culling is currently enabled. + + * clutter/cogl/gles/cogl.c (cogl_enable_backface_culling): + * clutter/cogl/gl/cogl.c (cogl_enable_backface_culling): New + function + + * doc/reference/cogl/cogl-sections.txt: Add + cogl_enable_backface_culling + +2008-10-27 Neil Roberts + + Bug 1196 - Texture border drawing problems + + * clutter/cogl/gl/cogl-texture.c (_cogl_texture_upload_subregion_to_gl) + (_cogl_texture_upload_to_gl): + + * clutter/cogl/gles/cogl-texture.c (_cogl_texture_upload_to_gl) + (_cogl_texture_upload_subregion_to_gl): + + When uploading data to a sliced texture, fill the waste pixels + with copies of the edge of the real texture data. Otherwise the + value of the waste pixels are undefined so it will show artifacts + when the texture is scaled with GL_LINEAR and the pixels are + blended in. + +2008-10-22 Thomas Wood + + * tests/test-actors.c: Don't adjust the radius based on the number of + actors + +2008-10-21 Emmanuele Bassi + + * clutter/clutter-color.[ch] (clutter_value_set_color): Constify + colors and values where needed. + +2008-10-21 Emmanuele Bassi + + Bug 1197 - Missing const for clutter_init_with_args * + + * clutter/clutter-main.[ch] (clutter_init_with_args): Constify + the string parameters. (Owen Taylor) + +2008-10-20 Emmanuele Bassi + + * configure.ac: Use gmodule-no-export-2.0, not gmodule-2.0, + to avoid breaking the symbol hiding. (thanks to Ross Burton + and Laurent Bigonville) + +2008-10-20 Neil Roberts + + Bug 1043 - COGL calls glTexSubImage2D() with out-of-bounds + values (SIGSEGV) + + * clutter/cogl/gl/cogl-texture.c + (_cogl_texture_upload_subregion_to_gl): When iterating over the + slices, discard ones that don't intersect immediatly otherwise it + will call glTexSubImage2D with a negative width/height and then + move the source position incorrectly. Thanks to Gwenole + Beauchesne. + +2008-10-20 Emmanuele Bassi + + * clutter/clutter-color.h: Declare clutter_color_new() in the + installed header. + +2008-10-20 Neil Roberts + + Bug 1195 - ClutterBehaviourBspline only works for very short paths + + * clutter/clutter-behaviour-bspline.c: Changed the CBZ_T_POW3 and + CBZ_T_MUL functions so that they preserve more of the least + significant bits. This fixes some of the jaggy behaviour with + longer paths. + +2008-10-17 Thomas Wood + + reviewed by: Emmanuele Bassi + + * clutter/clutter-color.[ch]: Add GParamSpec and GValue integration + for ClutterColor. With ClutterParamSpecColor it is possible to define + color properties; with the GValue integration it's possible to + automatically transform strings into colors and vice versa. + + (clutter_color_free): Allow NULL parameter to match other boxed + types destructors. + + (clutter_color_new): Add a constructor for the ClutterColor boxed + type, mostly for bindings. + +2008-10-17 Emmanuele Bassi + + * clutter/clutter-color.c (clutter_color_parse): Add checks + for the arguments, to avoid trying to parse NULL strings. + +2008-10-16 Emmanuele Bassi + + * clutter/clutter-container.[ch]: Add checks to the Container + interface invocation methods, to avoid crashing or corrupting + the stack when an actor does not implement every virtual + function of the Container interface vtable. GObject allows this + to happen so we must handle the case gracefully. This also means + that we can classify some virtual function as mandatory (as is + the case for ::add, ::remove and ::foreach) and some other + optional. + +2008-10-08 Emmanuele Bassi + + * tests/test-depth.c (raise_top), (main): Fix a shadowing + with raise() from signal.h. + +2008-10-01 Øyvind Kolås + + Bug 1108 - Enter/Leave events logics wrt. skipped motion events + + Handle dropped motion events when computing crossing events, + based on a patch from Gwenole Beauchesne. + + * clutter/clutter-main.c: (clutter_event_get_device): internal static + utility function. + (clutter_do_event): generate enter/leave events for all pointer + events. + (generate_enter_leave_events): modified enter/leave events generator + to work for all pointer event types. Enter/leave events are now + delivered before the motion/button event that caused the crossing to + happen. + * clutter/clutter-event.c: (clutter_event_copy), (clutter_event_free): + removed reference counting logic that is not needed when the crossing + events are directly delivered. + +2008-09-29 Emmanuele Bassi + + * configure.ac: Post branch bump to 0.9.0 + +2008-09-25 Emmanuele Bassi + + * configure.ac: Post release bump to 0.8.3 + +======== Release 0.8.2 ======================================================== + +2008-09-25 Emmanuele Bassi + + * configure.ac: + * README: + * NEWS: Release 0.8.2 + +2008-09-25 Emmanuele Bassi + + * clutter/clutter-event.h: Fix missing documentation. + +2008-09-24 Emmanuele Bassi + + Bug 1130 - CLUTTER_MOTION is not emitted when time goes backwards. + + * clutter/clutter-main.c (clutter_do_event): Check for time + rollbacks inside the motion event throttling. (Pierce Liu) + +2008-09-23 Emmanuele Bassi + + * clutter/clutter-timeout-pool.c: Reword previous commit. + +2008-09-23 Emmanuele Bassi + + * clutter/clutter-timeout-pool.c: + (clutter_timeout_pool_new): Fix previous commit: g_source_unref() + is not needed. (Thanks to Neil Roberts) + +2008-09-23 Emmanuele Bassi + + Bug 1154 - clutter_timeout_pool_new() documentation doesn't say + how to free + + * clutter/clutter-timeout-pool.c: Update the documentation to + note that you must use g_source_unref() to free the timeout + pool. (Murray Cumming) + +2008-09-23 Emmanuele Bassi + + Bug 1124 - Clutter causes an additional size request in each + allocation + + * clutter/clutter-actor.c: + (clutter_actor_store_old_geometry): Store the allocation instead + of causing a new size-request cycle. (Johan Bilien) + +2008-09-23 Emmanuele Bassi + + Bug 1125 - Save an extra pango_layout_get_size in many cases + + * clutter/clutter-label.c: + (clutter_label_create_layout_no_cache): Add a simple check + before calling pango_layout_get_size(). (Johan Bilien) + +2008-09-23 Emmanuele Bassi + + * clutter/clutter-alpha.c: + (clutter_alpha_get_alpha): Do not return the cached value but + just compute the current alpha value. The use case is pretty + much straightforward: stop a timeline, advance it, and retrieve + the alpha value before starting the timeline to adjust an + animation dependent on the alpha. Caching the alpha value is + not needed because the behaviours will always pass the alpha + value inside the ::alpha-notify virtual function anyway, so + there is no need for them to call clutter_alpha_get_alpha(). + + This change makes it also possible to reliably unit-test + ClutterAlpha. + + (timeline_new_frame_cb): Call clutter_alpha_get_alpha(). + +2008-09-23 Tomas Frydrych + + * clutter/clutter-main.c: + * clutter/clutter-main.h: + * clutter/clutter-private.h: + * clutter/x11/clutter-backend-x11.c: + (clutter_get_option_group_without_init): + Function to obtain clutter option group without opening display + (for use with foreign display and gtk_clutter_init). Bug 1033. + + Stripped trailing whitespace. + +2008-09-22 Neil Roberts + + Bug 856 - Teardown sequence is borked + + * clutter/clutter-main.c: Don't free the ClutterMainContext so + that the main loop can be restarted. + + * clutter/eglx/clutter-backend-egl.c: + * clutter/eglnative/clutter-backend-egl.c: Register an atexit + handler which disposes the backend object so that we are still + guaranteed to call eglTerminate on GLES. + +2008-09-22 Neil Roberts + + * tests/test-unproject.c (on_event): + * tests/test-project.c (on_event): Use a return value for the + 'event' signal handler, otherwise it might accidentally return + TRUE for unhandled events and you won't be able to close the + window. + +2008-09-19 Emmanuele Bassi + + Bug 1033 - Manually parsing command line options prevents + initializing clutter + + * clutter/clutter-main.c: + (post_parse_hook), (clutter_init_with_args), + (clutter_parse_args), (clutter_init): Move the initialization + of Clutter at the end of the post-parse hook of Clutter's + GOptionGroup. Clutter must be initialized at the end of the + argument parsing. + +2008-09-19 Emmanuele Bassi + + * clutter/clutter-main.c: Properly document the + clutter_get_option_group() function and the invariant that + after parsing Clutter's option group the library will be + initialized. (Thanks to Tomas Frydrych for pointing this + out) + +2008-09-19 Emmanuele Bassi + + * clutter/x11/clutter-backend-x11.c: Properly document the + usage of clutter_x11_set_display(). + + * clutter/x11/clutter-x11.h: clutter_x11_set_display() is + public API and should be declared in the header we install. + +2008-09-18 Neil Roberts + + Bug 1048 - SIGFPE in cogl_texture_set_region() with nvidia + + * clutter/cogl/gl/cogl-texture.c (cogl_texture_set_region): + * clutter/cogl/gles/cogl-texture.c (cogl_texture_set_region): + Don't attempt to upload any data if the width or height of the + subregion is zero. Thanks to Gwenole Beauchesne. + +2008-09-18 Neil Roberts + + Bug 1044 - cogl_get_viewport error + + * clutter/cogl/gles/cogl.c (cogl_get_viewport): Use glGetIntegerv + instead of glGetFixedv to read the viewport because the latter + converts incorrectly on some hardware. + +2008-09-18 Neil Roberts + + Bug 1080 - clutter_stage_read_pixels has upside-down y coordinate + + * clutter/clutter-stage.c (clutter_stage_read_pixels): Use + OpenGL's coordinate system for the arguments to glReadPixels (so + that y zero is the bottom of the window). Use clutter_redraw + instead of clutter_stage_paint to ensure the right GL context is + selected. Set some of the glPixelStore parameters that might have + been changed by Cogl. + + * tests/test-stage-read-pixels.c: Replace with a different test + that gets a sub-region of the stage around the cursor. + +2008-09-17 Neil Roberts + + Bug 1145 - Flicker on resize the window + + * clutter/glx/clutter-stage-glx.c (clutter_stage_glx_realize): + Don't set a backing pixel on the X window. Otherwise when the + window resizes it will flicker when X paints the background + immediatly before Clutter repaints the whole stage. + +2008-09-17 Neil Roberts + + * clutter/clutter-types.h: Swap left and right in the + documentation for ClutterGravity. + +2008-09-17 Neil Roberts + + Bug 1121 - Setting anchor point doesn't work if set too early + + * clutter/clutter-actor.c + (clutter_actor_set_anchor_point_from_gravity) + (clutter_actor_move_anchor_point_from_gravity): Add documentation + to make it clear that the anchor point won't move when the actor + is resized. + +2008-09-16 Neil Roberts + + Bug 1100 - WM_SIZE not handled correctly, user_resize and + window_style correction. + + * clutter/win32/clutter-stage-win32.c (get_window_style): Remove + the WS_MAXIMIZEBOX style if the stage isn't resizable. + (clutter_stage_win32_set_user_resize): Queue a redraw of the + window frame when the user_resize property is changed. + + * clutter/win32/clutter-event-win32.c (message_translate): Don't + update the size of the stage when handling WM_SIZE messages that + result from the stage being minimized. Thanks to Roman Yazmin. + +2008-09-16 Tomas Frydrych + + * clutter/glx/clutter-glx-texture-pixmap.c: + * clutter/x11/clutter-x11-texture-pixmap.c: + TFP resyncing on MapNotify/ConfigureNotify (bug 1020; patch by + Andy Wingo ). + +2008-09-15 Øyvind Kolås + + * clutter/clutter-main.c: amended typo in gtk-doc. + +2008-09-12 Neil Roberts + + Bug 1034 - Picking doesn't work on Eee PC + + * clutter/clutter-main.c (_clutter_id_to_color): When choosing a + pick color, set all but the most significant of the unused + bits. This should make make it more likely that the GL + implementation will round down to the right value. + + * tests/test-pick.c: Test case for picking. It creates 192 actors + at known positions and stores their gids. It then calls + clutter_stage_get_actor_at_pos with each position to check that + the right gid is returned. + + * tests/Makefile.am (noinst_PROGRAMS): Add test-pick + +2008-09-12 Neil Roberts + + Bug 1010 - ClutterLabel does not update the layout (again) + + * clutter/clutter-label.c: Bring back layout caching. This time it + will cache up to three different layouts. The width for which each + layout was generated is stored so that if the same width is + requested again it can use the cached version. If no cached + version is available it will try to replace the oldest + layout. 'Age' is determined by a counter which is incremented + every time a layout is created. The cache is cleared after any + property changes that might affect the layout. + (struct _ClutterLabelPrivate): Removed extents_width, + extents_height and context because they weren't used anywhere. + + * tests/test-label-cache.c: Add a test which checks whether the + label is using a different layout when properties are + changed. Also compares the extents of the label's layout with an + independent layout and fails if they aren't the same. + + * tests/Makefile.am (noinst_PROGRAMS): Add test-label-cache + +2008-09-10 Neil Roberts + + Bug 1137 - Setting the anchor point does not trigger a re-paint + + * clutter/clutter-actor.c (clutter_actor_set_property): When + changing the anchor point properties, use set_anchor_pointu + instead of changing the value directly so that a redraw will be + queued. + (clutter_actor_set_anchor_pointu): Queue a redraw when the anchor + point is changed. Thanks to Johan Bilien. + +2008-08-27 Emmanuele Bassi + + Bug 1082 - Texture bitmap is destroyed in wrong way + + * clutter/cogl/common/cogl-bitmap-pixbuf.c: + (_cogl_bitmap_from_file): Make a copy of the pixbuf data in + the internal image loader so that we can keep working under + the assumption that we are using the GLib memory allocation + and deallocation functions. + +2008-08-27 Emmanuele Bassi + + Bug 1099 - No ClutterScript API to get a list of IDs in a given file + + * clutter/clutter-script.[ch]: Add clutter_script_list_objects(), + a function for retrieving all the objects built by a ClutterScript + instance. (Based on a patch by Noah Gibbs) + +2008-08-26 Emmanuele Bassi + + Bug 1090 - Label somtimes returns natural_width < min_width + + * clutter/clutter-label.c: + (clutter_label_get_preferred_width): Check that the width of the + layout is always greater than 0. (Johan Bilien) + +2008-08-19 Neil Roberts + + Bug 1103 - Two typos in clutter documentation + + * doc/reference/clutter/subclassing-ClutterActor.xml: Update the + custom actor example since the Cogl API was changed to namespace + all of the path related functions in cogl_path_*. Thanks to Nati + Berkover. + + * clutter/clutter-score.c: Add missing parameter in example of + calling clutter_score_start(). + +2008-08-18 Neil Roberts + + Bug 1085 - Cursor is in wrong position on ClutterEntry if set + x-align property + + * clutter/clutter-entry.c (clutter_entry_paint): When calculating + the position to draw the cursor at, take into account the + alignment of the text. Queue a redraw when the x-align property is + changed. + +2008-08-07 Neil Roberts + + Bug 1091 - WM_MOUSEWHEEL (scroll-event) not handled correctlly + + * clutter/win32/clutter-event-win32.c (message_translate): The + coordinates in a WM_MOUSEWEEL message are given relative to the + screen so they need to be converted to client coordinates before + use. Thanks to Roman Yazmin. + +2008-08-06 Emmanuele Bassi + + * clutter/clutter-child-meta.c: + (clutter_child_meta_set_property), + (clutter_child_meta_class_init): Make the :container and + :actor properties of ChildMeta construct-only, to allow + bindings to actually use ChildMeta without abusing the API. + + * clutter/clutter-container.c (create_child_meta): Instead of + setting the members of the ChildMeta structure, use the + constructor properties. + +2008-08-04 Emmanuele Bassi + + * clutter/clutter-keysyms.h: Resync with keysymdef.h inside Xorg. + +2008-08-04 Emmanuele Bassi + + * clutter/clutter-script.c: + (clutter_script_default_connect): Improve wording and debug + messages in the default autoconnection for signal handlers. + +2008-08-04 Emmanuele Bassi + + * clutter/clutter-script-parser.c: + * clutter/clutter-script-private.h: Clean up the code; add a + conversion function for reading a ClutterColor out of a + JSON object or array definition. + + * clutter/clutter-script.c: Clean up the code; document properly + how we translate from type name to type function. + +2008-08-04 Emmanuele Bassi + + * clutter/clutter-main.c: Rework and improve the documentation + of the thread-safe timeout and idle source installer functions. + +2008-08-01 Neil Roberts + + Bug 945 - Clipping+fbo cloning bugs + + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/cogl.c: + * clutter/cogl/cogl.h.in: Add cogl_clip_stack_save, + cogl_clip_stack_restore, cogl_viewport and cogl_frustum. + + * clutter/cogl/gl/cogl-fbo.h: + * clutter/cogl/gl/cogl-fbo.c: Try to attach a stencil buffer when + creating an FBO. + + * clutter/cogl/common/cogl-clip-stack.c: Add functions to save and + restore the whole state of the stack. + + * clutter/clutter-texture.c (clutter_texture_paint): When + rendering the FBO source, setup a temporary asymmetric perspective + projection matrix to render it as it would appear on screen. + + * clutter/clutter-private.h: + * clutter/clutter-actor.c + (_clutter_actor_apply_modelview_transform_recursive): No longer + static and exported in clutter-private.h + +2008-08-01 Neil Roberts + + Bug 1071 - clutter_timeline_get_duration doesn't always work + + * clutter/clutter-timeline.c: Calculate the 'duration' property + on-demand instead of storing it as a member variable. Notify + duration property changes whenever the fps or num_frames changes. + +2008-08-01 Neil Roberts + + Bug 1069 - Warnings with ClutterScore + + * clutter/clutter-score.c (clutter_score_is_playing): Check + whether priv->running_timelines is NULL before checking its + length. + (foreach_running_timeline): Remove the completed signal handler + when stopping the score. Otherwise the completed callback will get + called multiple times if the timeline is started later. + +2008-07-31 Neil Roberts + + Bug 1075 - Difficult to bind clutter_stage_new + + * clutter/clutter-stage.c (clutter_stage_dispose): Unrealize the + stage before removing the update idle handler. Otherwise + unrealizing causes another redraw to be queued and if the stage + object remains alive it will cause an assert and abort. + +2008-07-30 Neil Roberts + + * clutter/clutter-stage.c (clutter_stage_class_init): Added the + 'perspective' property. All of the machinery was there to + implement the property but somehow the call that actually installs + it was missing. + +2008-07-30 Emmanuele Bassi + + * clutter/clutter-fixed.h: + * clutter/clutter-units.h: Fix the upper and lower boundaries of + ClutterFixed and ClutterUnit types; G_MAXINT16 and G_MININT16 + were not enough to describe those values. + +2008-07-30 Ross Burton + + * clutter/clutter-main.c: + Destroy the debugging timer when the context is freed. + + * clutter/clutter-stage.c: + Free the stage title when the stage is finalized. + +2008-07-30 Neil Roberts + + * clutter/clutter-model.c (clutter_model_set_sorting_column): This + function is supposed to accept -1 to disable sorting. However it + checks for whether the column is >= the number of columns, but + clutter_model_get_n_columns() returns an unsigned int so the + column number also gets promoted to unsigned for the + comparison. Therefore -1 is always greater than the number of + columns so it wouldn't let you set it. + +2008-07-26 Neil Roberts + + * clutter/clutter-timeline.c (clutter_timeline_list_markers): When + requesting the list of markers it was returning the marker data as + a string instead of the name so it was copying garbage. + +2008-07-25 Neil Roberts + + * clutter/clutter-actor.c (clutter_actor_remove_clip) + (clutter_actor_set_clipu): Queue a redraw when the clip is + changed. + +2008-07-24 Neil Roberts + + * clutter/clutter-script.c: The example in the documentation + showed a color being specified as '0xff0000ff' but it should be + '#ff0000ff' + +2008-07-23 Emmanuele Bassi + + Bug 1062 - clutter_actor_query_coords() replacement in 0.8 + + * clutter/clutter-deprecated.h: Fix the deprecation warning + for clutter_actor_query_coords(). (Gwenole Beauchesne) + +2008-07-17 Emmanuele Bassi + + Bug 1047 - API documentation from release tarball is not + installed by "make install" + + * configure.ac: + * Makefile.am: Make the recursion into the documentation + directory depend on on whether we explicitly enable it or + if we are not inside an SVN checkout. + +2008-07-17 Neil Roberts + + * clutter/clutter-texture.c: + * clutter/clutter-rectangle.c: + * clutter/clutter-group.c: + * clutter/clutter-entry.c: + * clutter/clutter-clone-texture.c: Remove unnecessary calls to + cogl_{push,pop}_matrix. The matrix is preserved in + clutter_actor_paint whenever the actor's transformation is applied + so there should be no need to push the matrix in actor paint + implementations unless it does some additional transformations + itself. + +2008-07-16 Emmanuele Bassi + + * clutter.pc.in: Add a variable containing the COGL backend + inside the pkg-config file, for configure-time checks. + +2008-07-14 Neil Roberts + + * clutter/cogl/common/cogl-primitives.c (cogl_path_rel_curve_to): + Fixed a typo in the second parameter which meant the curve was + drawn incorrectly. + +2008-07-14 Emmanuele Bassi + + * clutter/clutter.h: Include missing installed files. + +2008-07-14 Tomas Frydrych + + * clutter/clutter-stage.c: + (clutter_stage_hide_cursor): + Fixed C&P bug that made it impossible to show cursor once hidden. + + Stripped trailing whitespace. + +2008-07-13 Matthew Allum + + * clutter/x11/clutter-x11-texture-pixmap.c: + Call XSync in unredirect X error trap (Thanks to Andy Wingo) + +2008-07-13 Neil Roberts + + * build/mingw/mingw-cross-compile.sh: Avoid using the --strip + option to tar because it isn't supported in the version shipped + with MSYS. + +2008-07-11 Tomas Frydrych + + * clutter/clutter-fixed.c: + Move G_IMPLEMENT_INLINES before all other #include statements (bug + #1038). + +2008-07-11 Tomas Frydrych + + * clutter/clutter-fixed.c: + Changed #define G_IMPLEMENTS_INLINES to G_IMPLEMENT_INLINES (bug + #1038). + +2008-07-10 Emmanuele Bassi + + * configure.ac: Post release bump to 0.3.1. + +======== Release 0.8.0 ======================================================== + +2008-07-10 Emmanuele Bassi + + * configure.ac: + * NEWS: Release 0.8.0. + +2008-07-10 Matthew Allum + + * clutter/cogl/gles/cogl-fbo.c: + * clutter/cogl/gles/cogl-texture.c: + Fix warnings with eglnative build + +2008-07-10 Matthew Allum + + * README: + Sync up/improve ready for 0.8 release. + + * AUTHORS: + Sync up to date - hope I havn't missed anyone.. + +2008-07-10 Matthew Allum + + * clutter/glx/clutter-glx-texture-pixmap.c: + Assume TFP npots sized textures are always supported if TFP ext is! + (Based on patch from James Ketrenos) + +2008-07-08 Matthew Allum + + Bug 1011 - Fix TFP fallback mechanism (take 2) + + * clutter/glx/clutter-glx-texture-pixmap.c: + * tests/test-pixmap.c: + Slightly modified patch from Gwenole Beauchesne applied + to better handle both falling back to non accelerated tfp + and improvements to the test case. + +2008-07-07 Matthew Allum + + Bug 1016 - Changing window-redirect-automatic property after + creating ClutterX11TexturePixmap doesn't work. + + * clutter/x11/clutter-x11-texture-pixmap.c: + (clutter_x11_texture_pixmap_set_window): + Sync up redirection prop correctly (Jason Tackaberry) + +2008-07-07 Matthew Allum + + Bug 1019 - clutter-frame-source.h not included by clutter.h + + * clutter/clutter.h: + Add missing header include. + +2008-07-05 Neil Roberts + + * clutter/clutter-actor.h: Remove redundant duplicate declaration + of clutter_actor_allocate_preferred_size + +2008-07-05 Emmanuele Bassi + + Bug 1033 - Manually parsing command line options prevents + initializing clutter (Armin Burgmeier) + + * clutter/clutter-main.c: + (post_parse_hook), (clutter_init_real): Set the is_initialized + flag inside the real initialization function. + +2008-07-04 Emmanuele Bassi + + * clutter/clutter-label.c: Properly document the behaviour + of the :alignment property. + +2008-07-04 Neil Roberts + + * build/mingw/mingw-cross-compile.sh: Default to the win32 flavour + instead of the SDL flavour + +2008-07-04 Neil Roberts + + Bug 1015 - Cloning unparented actors with FBOs doesn't work with + new layout code + + * clutter/clutter-texture.c (clutter_texture_new_from_actor): Now + parents the source actor if it doesn't already have a parent so + that it will get an allocation during layout. + + * tests/test-fbo.c: One of the tests tries to ensure that the + ClutterTexture clone keeps the source actor alive by derefing + it. However as actors have a floating reference then test-fbo + doesn't have its own reference once the source is parented so + unrefing just steals the parent's reference and causes + badness. The test now claims the floating reference before cloning + the source so that it can safely be unref'd later. + +2008-07-03 Emmanuele Bassi + + * clutter/x11/Makefile.am: Fix distchecking by adding the + generated enum types files to DISTCLEANFILES. + +2008-07-03 Tomas Frydrych + + * clutter/clutter-fixed.h: + * clutter/clutter-fixed.c + Fixed inlining of clutter_qmulx() and clutter_qdivx() (bug 1022). + +2008-07-03 Neil Roberts + + * clutter/clutter-shader.c (bind_glsl_shader): Fix a cut-and-paste + error which broke vertex shaders + +2008-07-03 Øyvind Kolås + + * clutter/cogl/common/cogl-bitmap-pixbuf.c: + (_cogl_bitmap_from_file): removed debug g_printf that announces each + successful image load done by the internal image backend. + +2008-07-02 Neil Roberts + + * clutter/clutter-actor.c + (clutter_actor_get_abs_allocation_vertices): The initialization of + the local stage pointer got moved away in revision 3081 so it was + crashing if the function is called before the layout is run. + +2008-07-02 Emmanuele Bassi + + * clutter/clutter-label.c: + (clutter_label_create_layout_no_cache), + (clutter_label_create_layout): Split the layout creation in two + functions: one creating the layout, the other creating the layout + and hitting the glyphs cache. The first one is for the offscren + operations - like requesting the preferred size; the second one + is for paint and allocation. + + (clutter_label_allocate): Try to aggressively cache the PangoLayout + between allocations - to avoid recreating it even when the label + just moved because of an animation. See bug #1010. + +2008-07-02 Øyvind Kolås + + * clutter/fruity/clutter-fruity.c: made the multi touch code more + robust. There are situations though where the device seems to stop + generating any touch events until all fingers have been lifted and + a new interaction session is started. + +2008-07-02 Neil Roberts + + * clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize): + Use clutter_x11_has_event_retrieval() instead of + !backend_x11->no_xevent_retrieval to reflect the changes to the + GLX backend in revision 3078 + +2008-07-02 Emmanuele Bassi + + Bug 1010 - ClutterLabel does not update the layout (Lee Jusung) + + * clutter/clutter-actor.c: + (clutter_actor_queue_relayout): Remove some pointer dereferencing. + + * clutter/clutter-label.c: + (clutter_label_allocate): Revert the change of r2883 and remove the + layout width cache and force a recreation of the layout every time + we receive an allocation. + +2008-07-01 Neil Roberts + + * clutter/clutter-actor.c (clutter_actor_get_transformed_sizeu): + This is now do-what-I-mean like clutter_actor_get_size so that if + the allocation box is available it will use that, otherwise it + will use the preferred size. clutter_actor_transform_vertices has + been converted to clutter_actor_transform_and_project_box so that + it can be used by both functions. Based on a patch by Emmanuele + Bassi. + (clutter_actor_get_abs_allocation_vertices) + (clutter_actor_get_allocation_vertices): These two functions now + force a relayout if the allocation box is not available. + + * tests/test-fbo.c: Fixed the shader to use texture2D instead of + texture2DRect now that GL_EXT_texture_rectangle is no longer used. + +2008-07-01 Chris Lord + + * clutter/clutter-stage.c: + Add a note to the clutter_stage_read_pixels doc that the alpha channel + isn't guaranteed to contain sensible data + + * tests/test-stage-read-pixels.c: (update_snapshot): + Overwrite the alpha data when using clutter_stage_read_pixels; fixes + this test on non-nvidia drivers + +2008-07-01 Matthew Allum + + * clutter/glx/clutter-stage-glx.c: + * clutter/x11/clutter-backend-x11.c: + * clutter/x11/clutter-backend-x11.h: + * clutter/x11/clutter-event-x11.c: + * clutter/x11/clutter-x11.h: + * tests/test-devices.c: + Disable use of XInput and add an explicit clutter_x11_enable_xinput + to enable it. + Also fix up the x11 pre-init calls to not need g_type_init. + +2008-07-01 Øyvind Kolås + + Bug 1013 - Per device grabs are not obeyed in pointer device + propagation. + + * clutter/clutter-event.c: (clutter_event_get_device_id): swap + arguments of g_return_val_if_fail around. + * clutter/clutter-event.h: added *device field to crossing events as + well. + * clutter/clutter-main.c: (emit_pointer_event): added a device + argument and check for per device grabs if this device is passed. + (clutter_do_event): pass the device if present for all pointer event + emissions. + (generate_enter_leave_events): copy the device from the motion events + when generating enter/leave events. + +2008-07-01 Chris Lord + + * clutter/clutter-texture.c: + Correct documentation about accepted pixel formats + + * tests/test-stage-read-pixels.c: (main): + Don't try to free a ClutterTexture after main, fixes segfault on quit + +2008-07-01 Emmanuele Bassi + + * clutter/clutter-behaviour-bspline.h: + * clutter/clutter-behaviour.h: + * clutter/clutter-event.h: + * clutter/clutter-texture.h: Add missing documentation and + change the copyright and licensing notice to use the FSF + website instead of its address. (#512) + +2008-06-30 Matthew Allum + + Bug 1008 - tfp still a bit borked + + * clutter/x11/clutter-x11-texture-pixmap.c: + Fix from Andy Wingo for sync_window borkage + +2008-06-30 Neil Roberts + + Bug 985 - MSC math.h / M_PI issue + + * clutter/cogl/gl/cogl.c (set_clip_plane): + * clutter/clutter-alpha.c (sinc_func): Use G_PI instead of M_PI + because M_PI isn't defined in MSVC without a special + #define. Thanks to Haakon Sporsheim + +2008-06-30 Neil Roberts + + * clutter/win32/clutter-backend-win32.c (check_vblank_env): Use + g_ascii_strcasecmp instead of strcasecmp because strcasecmp isn't + available in MSVC. + +2008-06-30 Matthew Allum + + Bug 1007 - Fix TFP fallback mechanism + + * clutter/glx/clutter-glx-texture-pixmap.c: + * clutter/x11/clutter-x11-texture-pixmap.c: + Add some extra safety to glx pixmap creations and tidy up some notes. + Patch from Gwenole Beauchesne. + +2008-06-30 Neil Roberts + + * clutter/x11/clutter-event-x11.c: + * clutter/win32/clutter-event-win32.c: Use the HAVE_CONFIG_H guard + around #include "config.h" + +2008-06-30 Emmanuele Bassi + + * clutter/Makefile.am: + * clutter/eglx/Makefile.am: + * clutter/glx/Makefile.am: Build the X11 base backend before + the backends that depend on it. + +2008-06-30 Emmanuele Bassi + + Bug 1000 - clutter-x11 should define gtypes for its enumerations + + * clutter/x11/Makefile.am: + * clutter/x11/clutter-event-x11.c: + * clutter/x11/clutter-x11-enum-types.c.in: + * clutter/x11/clutter-x11-enum-types.h.in: + * clutter/x11/clutter-x11.h: Add the GTypes for the X11-specific + enumerations, so that they can be used by the bindings. (Andy + Wingo) + +2008-06-30 Chris Lord + + * tests/test-shader.c: + Fix edge-detect shader on ATI, thanks Gwenole Beauchesne + +2008-06-30 Matthew Allum + + Bug 997 - automatic updates not working for named TFP pixmaps, + at least in x11 + + * clutter/glx/clutter-glx-texture-pixmap.c: + * clutter/glx/clutter-glx-texture-pixmap.h: + * clutter/x11/clutter-backend-x11.c: + * clutter/x11/clutter-x11-texture-pixmap.c: + * clutter/x11/clutter-x11-texture-pixmap.h: + * clutter/x11/clutter-x11.h: + * configure.ac: + * tests/test-pixmap.c: + Rework Andy Wingos patch a little adding more safety for now also + handling redirect Windows (as well as pixmaps) + +2008-06-30 Emmanuele Bassi + + Bug 980 - cogl-bitmap-fallback.c compiler error/warning due to + cast issue (Haakon Sporsheim) + + * clutter/cogl/common/cogl-bitmap-fallback.c: + (_cogl_unpremult_alpha_last), + (_cogl_unpremult_alpha_first): Cast to avoid a compiler warning + with MSC. + +2008-06-30 Chris Lord + + * tests/test-shader.c: (main): + Add a new shader to test-shaders (Sobel operator edge-detect) + +2008-06-30 Øyvind Kolås + + Disable XInput handling for keyboard events, re-enabling key press and + release events when pointer is outside window as well as re-enabling + keyrepeat. + + * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize): select + for KeyPressMask and KeyReleaseMask even with XInput enabled. + * clutter/x11/clutter-backend-x11.c: (_clutter_x11_register_xinput): + Disabled the XInput keyboard code paths (comments and #if 0's) + * clutter/x11/clutter-event-x11.c: (event_translate): always handle + keyboard events without regard to XInput. + +2008-06-29 Matthew Allum + + * clutter/x11/clutter-event-x11.c: + ifdef convert_xdevicekey_to_xkey () with XINPUT check. + (fix via Andy Wingo) + +2008-06-29 Tommi Komulainen + + * clutter/osx/clutter-osx.h (_clutter_event_osx_put) + * clutter/osx/clutter-event-osx.c (clutter_event_osx_translate, + NSEvent:clutterStage:) + * clutter/osx/clutter-stage-osx.c (EVENT_HANDLER): Since events are + delivered to ClutterGLView, pass the associated ClutterStage directly + to event translation. Avoids relying on being embedded in + ClutterGLWindow, which makes it easier to implement clutter-gtk. + +2008-06-29 Tommi Komulainen + + * clutter/osx/clutter-event.osx.c (NSEvent:clutterKeyVal:): Add + comment, on OSX backend the Shift modifier is included in 'keyval' + making it identical to 'unicode_value' Instead of a or + 3 you'd get A and # + +2008-06-27 Matthew Allum + + * clutter/cogl/gl/cogl.c: + Temp workaround for 10.4 ATI card OSX folks, see #929 + (Tommi Komulainen) + + Bug 998 - clutter always captures X input events + + * clutter/eglx/clutter-stage-egl.c: + * clutter/glx/clutter-stage-glx.c: + When we disable X event retrival, dont still select for window + events. + +2008-06-27 Emmanuele Bassi + + * clutter/clutter-event.h: + * clutter/clutter-main.c: + * clutter/x11/clutter-backend-x11.c: Add further documentation, + and increase the coverage to 94%. + +2008-06-27 Emmanuele Bassi + + * configure.ac: Post release bump to 0.7.7. + +======== Release 0.7.6 ======================================================== + +2008-06-27 Emmanuele Bassi + + * configure.ac: + * NEWS: Release 0.7.6. + +2008-06-27 Neil Roberts + + Bug 993 - Underline colors are sometimes wrong + + * clutter/pango/pangoclutter-render.c: Fixed so that instead + of trying to set the color in prepare_run it uses draw_glyphs + to draw groups of glyphs and requests the color for each part + from Pango. + +2008-06-26 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_set_min_width), + (clutter_actor_set_min_height), + (clutter_actor_set_natural_width), + (clutter_actor_set_natural_height): Ignore any override of the + minimum and natural size of the stage on backends that only + support static stages. + + * clutter/clutter-stage.c (clutter_stage_allocate): Use the + preferred size of the ClutterStage implementation instead of + the display size. + + * clutter/clutter-backend.[ch]: Remove get_display_size() and + clutter_backend_get_display_size(). + + * clutter/eglnative/clutter-backend-egl.c: + * clutter/fruity/clutter-backend-fruity.c: + * clutter/osx/clutter-backend-osx.c: + * clutter/sdl/clutter-backend-sdl.c: + * clutter/win32/clutter-backend-win32.c: + * clutter/x11/clutter-backend-x11.c: Remove get_display_size() + implementations. + +2008-06-26 Emmanuele Bassi + + * clutter/clutter-shader.c (bind_glsl_shader): Verify that the + vertex shader has been successfully compiled, like we do with + the fragment shader. + +2008-06-26 Emmanuele Bassi + + * clutter/osx/clutter-backend-osx.c: + (clutter_backend_osx_get_display_size): Fix the allocation pool + macro name. + +2008-06-26 Matthew Allum + + * clutter/glx/clutter-glx-texture-pixmap.c: + Move the gl extension probe into the regular object init() rather than + class_init. Should be a little safer. + +2008-06-26 Matthew Allum + + * tests/test-pixmap.c: (main): + Use strtol on arg as to take hex values. Tweak from James Ketrenos + +2008-06-25 Emmanuele Bassi + + * configure.ac: Post release bump to 0.7.5. + +======== Release 0.7.4 ======================================================== + +2008-06-25 Emmanuele Bassi + + * configure.ac: + * NEWS: Release 0.7.4. + +2008-06-25 Neil Roberts + + * clutter/win32/clutter-backend-win32.c + (clutter_backend_win32_get_display_size): Implement + get_display_size on the Win32 backend. + +2008-06-25 Emmanuele Bassi + + * clutter/clutter-main.h: Make the priority constants public. + + * clutter/clutter-stage.c: Use CLUTTER_PRIORITY_REDRAW. + + * clutter/clutter-timeline.c: Use CLUTTER_PRIORITY_TIMELINE. + +2008-06-25 Emmanuele Bassi + + * clutter/osx/clutter-backend-osx.c: + (clutter_backend_osx_get_display_size), + (clutter_backend_osx_class_init): Implement the get_display_size + function. + +2008-06-25 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_set_min_width), + (clutter_actor_set_min_height), + (clutter_actor_set_natural_width), + (clutter_actor_set_natural_height): Add a comment explaining + the override in place for backends providing a fixed size + on a stage. + +2008-06-25 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_set_min_width), + (clutter_actor_set_min_height), + (clutter_actor_set_natural_width), + (clutter_actor_set_natural_height): If setting the minimum + and natural width and height on a top-level actor, and on + a backend that provides only static stages, then override + the value and use the size of the display as returned by + the backend. + + * clutter/eglnative/clutter-stage-egl.c: + (clutter_stage_egl_realize): Remove the setting of the + minimum and natural width and height. + +2008-06-25 Emmanuele Bassi + + * clutter/clutter-stage.c: + (clutter_stage_allocate): Minor optimization. + + (clutter_stage_init): Do not set the minimum size of the + stage wrapper, and require that the backends set the size + themselves. + +2008-06-25 Emmanuele Bassi + + * clutter/eglnative/clutter-stage-egl.c: + (clutter_stage_egl_realize): Try to force the minimum and + natural size on realization. + +2008-06-25 Emmanuele Bassi + + * clutter/clutter-backend.c: + (clutter_backend_get_display_size): Provide a fallback for + backends not implementing get_display_size(). + + * clutter/clutter-stage.c: + (clutter_stage_allocate): Add debug messages. + + * clutter/sdl/clutter-backend-sdl.c: + (clutter_backend_sdl_get_display_size), + (clutter_backend_sdl_class_init): Implement get_display_size() + on the SDL backend. + +2008-06-25 Chris Lord + + * clutter/clutter-fixed.c: (clutter_sinx): + Fix clutter_sinx for angles > CFX_2PI - CFX_ONE. Also add note to + documentation about being able to use modulus with ClutterFixed + +2008-06-25 Emmanuele Bassi + + * clutter/clutter-backend.h: + * clutter/clutter-backend.c: + (clutter_backend_get_display_size): Add a function for getting the + display size out of the backend. + + * clutter/clutter-stage.c: + (clutter_stage_allocate): When allocating on a backend with a + static stage, we simply ignore the passed box and override it with + the size of the display. + + * clutter/eglnative/clutter-backend-egl.c: + (clutter_backend_egl_get_display_size), + (clutter_backend_egl_class_init): Implement get_display_size() by + returning the size of the EGL surface. + + * clutter/fruity/clutter-backend-fruity.c: + (clutter_backend_egl_get_display_size), + (clutter_backend_egl_class_init): Ditto as above. + + * clutter/x11/clutter-backend-x11.c: + (clutter_backend_x11_get_display_size), + (clutter_backend_x11_class_init): Implement get_display_size() by + returning the DisplayWidth and DisplayHeight of the current + screen. + +2008-06-25 Neil Roberts + + * clutter/win32/clutter-stage-win32.c + (clutter_stage_win32_realize): Use a more direct method to choose + the best pixel format instead of ChoosePixelFormat because + otherwise if the display's depth is 16 then it will prefer the + non-accelerated software implementation when the requested depth + is 24. + +2008-06-25 Emmanuele Bassi + + * clutter/clutter-stage.c (clutter_stage_allocate): Fix condition; + should always test before committing. + +2008-06-25 Matthew Allum + + * clutter/x11/clutter-backend-x11.c: (_clutter_x11_register_xinput) + Add extra safety and fallback if no useable pointing devices are + found. + +2008-06-25 Emmanuele Bassi + + * clutter/clutter-stage.c: + (clutter_stage_allocate): Check if the stage provided by the + backend is static (i.e. a framebuffer that cannot be resized) + and interrupt the allocation chain there. + + * clutter/eglnative/clutter-stage-egl.c: + (clutter_stage_egl_class_init): Remove the ::allocate empty + stub. + +2008-06-25 Matthew Allum + + * clutter/eglnative/clutter-stage-egl.c: + * clutter/eglx/clutter-stage-egl.c: + Disable passing of attribs to eglCreateContext() on GLES 1.1 h/w + +2008-06-25 Neil Roberts + + * clutter/clutter-actor.c (clutter_actor_paint): Guard against the + actor clip being enabled or disabled in an actor paint + method. Otherwise the clip stack can be become unbalanced. This + was happening in ClutterEntry until it was fixed in revision 2983. + +2008-06-24 Neil Roberts + + Bug 979 - Wrong call convension for SwapIntervalProc in win32 backend + + * clutter/win32/clutter-backend-win32.c: Use the correct calling + convention for SwapInterval. Thanks to Haakon Sporsheim. + +2008-06-24 Emmanuele Bassi + + Bug 989 - Add a search path for clutter script assets + + * clutter/clutter-script.h: + * clutter/clutter-script.c: + (clutter_script_finalize), + (clutter_script_add_search_paths), + (clutter_script_lookup_filename): Add the ability to define multiple + search paths inside ClutterScript and to look up a specific filename + inside those search paths. This is useful to define a set of + directories where the assets for a UI definition are and still + reference those assets by their name instead of the full path. (989, + based on a patch by Matthew Allum) + + * clutter/clutter-texture.c: + (clutter_texture_set_custom_property): Use the newly added + clutter_script_lookup_filename() function. + +2008-06-24 Neil Roberts + + * clutter/cogl/gles/cogl-gles2-wrapper.h: + * clutter/cogl/gles/cogl-gles2-wrapper.c: All of the settings and + uniforms are now proxied into COGL variables instead of setting + the GL uniforms directly. Just before glDrawArrays is executed a + shader is generated using the given settings to avoid using 'if' + statements. The shaders are cached. + + * clutter/cogl/gles/cogl-fixed-vertex-shader.glsl: + * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: The shaders + are now split into parts using comments instead of 'if' statements + so that the simplest shader can be generated on the fly. + + * clutter/cogl/gles/stringify.sh: Now splits up the shader sources + into separate C strings where deliminated by special comments. + + * clutter/cogl/gles/cogl-program.h: + * clutter/cogl/gles/cogl-program.c: A custom shader can no longer + be directly linked with the fixed-functionality replacement + because the replacement changes depending on the settings. Instead + the bound shader is linked with the appropriate replacement shader + just before glDrawArrays is executed. The custom uniform variables + must also be proxied through COGL variables because their location + can change when relinked. + +2008-06-24 Øyvind Kolås + + * clutter/fruity/clutter-fruity.c: removed dead code and unused + variables. + +2008-06-24 Øyvind Kolås + + * configure.ac: better alignment of list of enabled experimental + features. + +2008-06-24 Emmanuele Bassi + + * doc/clutter-actor-invariants.txt: Fix grammar and spelling, + document the ::parent-set signal emission. + +2008-06-24 Emmanuele Bassi + + * clutter/clutter-entry.c: + (clutter_entry_ensure_layout): Convert the invisible char + to UTF-8 to avoid Pango barfing on us. + +2008-06-24 Matthew Allum + + * clutter/eglnative/clutter-stage-egl.c: + Add an extra debug note. + * configure.ac: + Generate version.xml for COGL API docs + +2008-06-24 Chris Lord + + Bug 988 - cursor position wrong with multibyte invisible char + + * clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position): + Fix cursor position calculation when using invisible text + +2008-06-23 Emmanuele Bassi + + * clutter/x11/clutter-event-x11.c (event_translate): Set the + event type explicitly in the union members as well for the + key events, like we do for all the other events. + +2008-06-23 Neil Roberts + + * clutter/clutter-entry.c (clutter_entry_paint): Set the clip + using COGL directly instead of setting the actor clip. Otherwise + the clip stack will be unbalanced after the first draw. This also + frees up the actor clip to be set by an application. + +2008-06-23 Matthew Allum + + * NEWS: + Add a quick note on fruity multiple deivce support. + * README: + Add multiple device support details and some tweaks on + Clutter requirements (i.e GdkPixbuf). + +2008-06-23 Matthew Allum + + Bug 987 - clutter-event.c c99 variable declaration + + * clutter/clutter-event.c: + Remove c99ism. + +2008-06-23 Emmanuele Bassi + + * configure.ac: Post release bump to 0.7.3. + +======== Release 0.7.2 ======================================================== + +2008-06-23 Emmanuele Bassi + + * configure.ac: + * NEWS: Release 0.7.2. + +2008-06-23 Emmanuele Bassi + + * clutter/clutter-texture.c: + (clutter_texture_get_preferred_width), + (clutter_texture_get_preferred_height), + (clutter_texture_set_property), + (clutter_texture_get_property), + (clutter_texture_class_init), + (clutter_texture_init): Add the new :keep-aspect-ratio property + to ClutterTexture; when set to TRUE the texture will return a + preferred width maintaining the aspect ratio with the given height + and a preferred height maintaining the aspect ratio with the + given width. This allows to set the width or the height and have + the texture automatically request the height or the width respectively + while maintaining the aspect ratio of the original image. + + * tests/test-script.json: Update to test the new :keep-aspect-ratio + property. + +2008-06-23 Neil Roberts + + Bug 918 - Group doesn't clip if it's children are clipped + + * clutter/cogl/common/cogl-clip-stack.h: + * clutter/cogl/common/cogl-clip-stack.c: Added functions to + maintain a stack of clipping rectangles. + + * clutter/cogl/gles/cogl.c: + * clutter/cogl/gl/cogl.c: The cogl_clip_set and unset functions + have moved into cogl-clip-stack.c which calls back to cogl.c to + set the actual rectangles. Multiple clip rectangles are combined + by merging the stencil buffers. + + * clutter/cogl/gles/cogl-primitives.c (_cogl_path_fill_nodes): + * clutter/cogl/gl/cogl-primitives.c (_cogl_path_fill_nodes): Merge + the stencil buffer with the contents of the clipping stack after + drawing the path. + + * clutter/cogl/gles/cogl-context.h (CoglContext): + * clutter/cogl/gl/cogl-context.h (CoglContext): Store the number + of available stencil bits. + + * clutter/cogl/common/Makefile.am + (libclutter_cogl_common_la_SOURCES): Added cogl-clip-stack.c + +2008-06-23 Robert Bragg + + * clutter/eglx/clutter-stage-egl.c: Makes sure the eglx backend + passes the EGL_OPENGL_ES2_BIT surface attrib when using + GLES2.0 under cogl + +2008-06-23 Chris Lord + + * clutter/x11/clutter-event-x11.c: (convert_xdevicekey_to_xkey), + (translate_key_event), (event_translate): + Change the xinput event handling to use translate_key (fixes modifier + handling with xinput key events) + +2008-06-23 Emmanuele Bassi + + Bug 982 - __COGL_GET_CONTEXT MS compiler issue (Haakon Sporsheim) + + * clutter/cogl/common/cogl-handle.h: + * clutter/cogl/common/cogl-primitives.c: Remove C99-isms. + + * clutter/cogl/gl/cogl-fbo.c: + * clutter/cogl/gl/cogl-primitives.c: + * clutter/cogl/gl/cogl-texture.c: + * clutter/cogl/gl/cogl.c: Ditto as above. + + * clutter/cogl/gles/cogl-fbo.c: + * clutter/cogl/gles/cogl-primitives.c: + * clutter/cogl/gles/cogl-texture.c: Ditto as above. + +2008-06-23 Emmanuele Bassi + + Bug 984 - pango_clutter_render_layout() declared void, but + returns (Haakon Sporsheim) + + * clutter/pango/pangoclutter-render.c: + (pango_clutter_render_layout): Do not use a return statement. + +2008-06-23 Emmanuele Bassi + + Bug 905 - Paint cursor directly (Xan López) + + * clutter/clutter-entry.c: + (clutter_entry_paint_cursor), + (clutter_entry_init), + (clutter_entry_set_color): Directly paint the cursor on the + entry instead of using an actor. + +2008-06-23 Emmanuele Bassi + + Bug 981 - clutter_stage_read_pixels temprow fix (Haakon Sporsheim) + + * clutter/clutter-stage.c (clutter_stage_read_pixels): Allocate + the temporary row data used to flip the buffer from glReadPixels() + in order to fix compilation under MSVC. Also validate the input + parameters to avoid random segfaults. + +2008-06-23 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * clutter/clutter-event.c: + * clutter/clutter-event.h: + * clutter/clutter-main.c: + * clutter/clutter-main.h: + * clutter/clutter-private.h: + * clutter/eglx/clutter-stage-egl.c: + * clutter/fruity/clutter-backend-fruity.c: + * clutter/fruity/clutter-backend-fruity.h: + * clutter/fruity/clutter-fruity.c: + * clutter/glx/clutter-stage-glx.c: + * clutter/x11/clutter-backend-x11.c: + * clutter/x11/clutter-backend-x11.h: + * clutter/x11/clutter-event-x11.c: + * clutter/x11/clutter-stage-x11.h: + * clutter/x11/clutter-x11.h: + * configure.ac: + * tests/Makefile.am: + * tests/test-devices.c: + Merge of 'xinput' branch giving initial basic support of + multiple input devices. + +2008-06-23 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * clutter/clutter-group.c: + Remove uneeded (at least for now) paint_area method (#970) + +2008-06-19 Emmanuele Bassi + + * clutter/clutter-script.c: Be more explicit about the fact that + the script id is not the name of an actor, and that it is retrieved + by using clutter_get_script_id(). + +2008-06-17 Emmanuele Bassi + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + (clutter_actor_allocate_preferred_size): Add more documentation + and notes on where it's appropriate to call this function. + +2008-06-17 Chris Lord + + * clutter/clutter-texture.c: (clutter_texture_get_preferred_width), + (clutter_texture_get_preferred_height): + Maintain aspect ratio with natural width/height when for_width/height + are specified + +2008-06-17 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + Clean up of parenting code (see #972) + Doc updates to section intro. + Add clutter_actor_allocate_preferred_size () utility call + + * clutter/clutter-group.c: (clutter_fixed_layout_allocate): + Use clutter_actor_allocate_preferred_size () + + * doc/clutter-actor-invariants.txt: + Add some more notes + +2008-06-17 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_set_parent): Do not emit ::parent-set when + reparenting. + + (clutter_actor_unparent): Ditto, as above. + + (clutter_actor_reparent): Emit ::parent-set with the old + parent and set the IN_REPARENT flag unconditionally. + +2008-06-17 Emmanuele Bassi + + * doc/clutter-actor-invariants.txt: Document the flags, the + invariants, the state changes and the minimum requirements for + actor implementations. Needs to be tweaked and fleshed out + before 0.8.0, and we obviously need to enforce the invariants. + +2008-06-17 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_set_parent): Document and maintain the invariant + that after setting a realized parent on an actor, the actor is + also going to be realized. + + (clutter_actor_unparent): Change the invariant that an unparented + actor is also unrealized: the paint is fast enough to avoid + unrealizing, since it also causes more problems that what it's + worth. + + * tests/test-invariants.c (test_show_on_set_parent): Update the + invariants test because we changed the invariants. + +2008-06-17 Jussi Kukkonen + + * clutter/clutter-score.c (clutter_score_append): + initialize "marker" string and "complete_id" signal id when creating a + ClutterScoreEntry. + +2008-06-16 Tomas Frydrych + + * clutter/clutter-actor.c: + (clutter_actor_move_anchor_point_from_gravity): + Fixed incorrect sign of position adjustment (revert of earlier + change). + +2008-06-16 Emmanuele Bassi + + * clutter/clutter-actor.c (clutter_actor_unparent): Reset the + :show-on-set-parent property to TRUE when unparenting. + + * tests/Makefile.am: Add test-invariant to the build. + + * tests/test-invariants.c: Test the invariants that we are going + to honour (and document, at some point). + +2008-06-16 Emmanuele Bassi + + * clutter/eglnative/clutter-stage-egl.c: Ignore any size allocation + we receive from the user. + + * clutter/fruity/clutter-stage-fruity.c: Ditto as above. + +2008-06-16 Tomas Frydrych + + * clutter/clutter-actor.c: + (clutter_actor_move_anchor_point): + (clutter_actor_move_anchor_pointu): + (clutter_actor_move_anchor_point_from_gravity): + Fixed incorrect sign of position adjustment. + Fixed replace call to _move_by with move_byu in + _move_anchor_pointu. + + Stripped trailing whitespace. + +2008-06-15 Emmanuele Bassi + + Bug #967 - Mismatch of Timeline::marker-reached signal signature + + * clutter/clutter-marshal.list: + * clutter/clutter-timeline.c: + (clutter_timeline_class_init): Fix the type of the frame_num + argument in the ::marker-reached signal creation to match the + signal class handler. (Armin Burgmeier) + +2008-06-14 Emmanuele Bassi + + * README: We depend on PangoCairo, now; also add all the missing + release notes entries and the missing backends configuration notes. + +2008-06-14 Matthew Allum + + * README: + Make needed GL version 1.4, note GLES2 support, add some notes + for COGL. + +2008-06-13 Emmanuele Bassi + + * configure.ac: Post release bump to 0.7.1. + +======== Release 0.7.0 ======================================================== + +2008-06-13 Emmanuele Bassi + + * README: + * NEWS: + * configure.ac: Release 0.7.0, "Booska". + +2008-06-13 Emmanuele Bassi + + * tests/test-cogl-offscreen.c: + * tests/test-cogl-primitives.c: + * tests/test-cogl-tex-convert.c: + * tests/test-cogl-tex-foreign.c: + * tests/test-cogl-tex-getset.c: + * tests/test-cogl-tex-tile.c: + * tests/test-layout.c: + * tests/test-pixmap.c: + * tests/test-texture-quality.c: Miscellaneous fixes for distcheck + to pass. + +2008-06-13 Emmanuele Bassi + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * tests/test-cogl-primitives.c: + * tests/test-events.c: + * tests/test-multistage.c: + * tests/test-textures.c: + * tests/test-timeline.c: Miscellaneous fixes for distcheck to + pass. + +2008-06-13 Emmanuele Bassi + + * clutter/clutter-texture.c: + (clutter_texture_unrealize), (clutter_texture_dispose): Add a + guard against reading back memory during the unrealization on + dispose. + +2008-06-13 Emmanuele Bassi + + Bug #953 - Actors are not hidden before unrealized or + disposed (Tommi Komulainen) + + * clutter/clutter-actor.c: + (clutter_actor_unrealize): Hide a visible actor when unrealizing + it. + + (clutter_actor_dispose): Make sure to unrealize an actor when + disposing it. + +2008-06-13 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_dispose), (clutter_actor_destroy), + (clutter_actor_unparent): Clean up the actor's destruction + sequence, making sure that every operation is performed + under the CLUTTER_ACTOR_IN_DESTRUCTION internal flag. (thanks + to Tomas Frydrych, Neil Roberts and Matthew Allum) + +2008-06-13 Emmanuele Bassi + + Bug #960 - PangoContext creation code should not be duplicated + + * clutter/clutter-private.h: + * clutter/clutter-main.c: + (_clutter_context_create_pango_context): Abstract the creation + of the PangoContext inside its own function, to avoid code and + bugs duplication. (Tommi Komulainen) + + * clutter/clutter-entry.c (clutter_entry_init): Use the newly + added PangoContext creation function. + + * clutter/clutter-label.c (clutter_label_init): Ditto as above. + +2008-06-12 Emmanuele Bassi + + Bug #964 - "unrealized" signal of ClutterActor wrongly named + + * clutter/clutter-actor.c (clutter_actor_class_init): Fix typo + in the ::unrealize signal name. (Armin Burgmeier) + +2008-06-12 Emmanuele Bassi + + * doc/reference/cogl/Makefile.am: Ignore cogl/gl and cogl/gles + when building the documentation. + + * clutter/cogl/cogl.h.in: Add sections in the header file. + +2008-06-12 Emmanuele Bassi + + * clutter/clutter-actor.c: Add more clarifications on the + size and position accessors and the distinction between + transformed and untransformed actor box inside the actor's + description. + +2008-06-12 Emmanuele Bassi + + * clutter/clutter-actor.c: Clarify the documentation of the + accessors of the width and height. + +2008-06-12 Neil Roberts + + * clutter/win32/clutter-stage-win32.c: Updated to the new layout + API. All code to do with positioning the stage has been removed so + the window is left where Windows wants to put it and it can not be + moved with clutter_actor_set_position. + + * clutter/win32/clutter-stage-win32.h (ClutterStageWin32): Remove + win_xpos and win_ypos. + + * clutter/win32/clutter-event-win32.c (message_translate): Remove + the handler for WM_MOVE because the stage no longer cares where it + is positioned. + +2008-06-12 Emmanuele Bassi + + * clutter/clutter-actor.[ch]: Documentation fixes. + + * clutter/clutter-backend.c: Documentation fixes. + + * clutter/clutter-container.h: Documentation fixes. + + * clutter/clutter-fixed.c (clutter_qdivx): Fix the return + value to be after the description. + + * clutter/clutter-texture.[ch]: Documentation fixes. + + * clutter/clutter-timeline.c: Documentation fixes. + +2008-06-11 Emmanuele Bassi + + * tests/test-layout.c: Take into account the origin of the + parent, if it has changed, and queue a relayout if we are + using the transformed box when computing the layout. + +2008-06-11 Emmanuele Bassi + + * clutter/eglnative/clutter-stage-egl.c: Remove a duplicate + get_preferred_width() implementation. (thanks to Iain Holmes) + +2008-06-11 Neil Roberts + + * clutter/clutter-actor.c (clutter_actor_allocate): Fixed the + logic when detecting whether the actor has moved. + +2008-06-11 Iain Holmes + + * configure.ac: Detect the GL headers in flavour=fruity + + * clutter/fruity/clutter-stage-fruity.c: Update the Fruity backend to + use the new size negotiation API. + +2008-06-11 Emmanuele Bassi + + * clutter/clutter-label.c (clutter_label_allocate): Keep the + layout if the size of the allocation is the same as the last + allocation received by the label. + +2008-06-11 Emmanuele Bassi + + * clutter/clutter-actor.c: Notify :x, :y, :width and :height + properties using ClutterUnits, not pixels. + +2008-06-11 Emmanuele Bassi + + * clutter/eglnative/clutter-stage-egl.c: Update the EGL native + backend to use the new size negotiation API. + +2008-06-11 Emmanuele Bassi + + * clutter/sdl/clutter-stage-sdl.c: Update the SDL backend to + use the new size negotiation API. + +2008-06-11 Emmanuele Bassi + + Bug #961 - Fails to build on OSX + + * clutter/osx/clutter-stage-osx.c: Update the OSX backend to + use the new size negotiation API. + +2008-06-11 Emmanuele Bassi + + * autogen.sh: Force overwriting when glib-gettextize is + invoked by autogen.sh. + +2008-06-10 Neil Roberts + + * clutter/clutter-main.c: Include for setlocale() + +2008-06-10 Emmanuele Bassi + + * clutter/clutter-child-meta.c: Fix section name + + * clutter/clutter-container.c: + (clutter_container_child_set_property), + (clutter_container_child_get_property): Fix gtk-doc parameter + name. + + * clutter/clutter-container.h: Fix documentation of the + interface vfuncs. + + * clutter/clutter-event.h: Fix documentation. + + * clutter/clutter-feature.h: Fix documentation. + + * clutter/clutter-types.h: Add ClutterRequestMode. + + * clutter/x11/clutter-event-x11.c: Fix documentation. + + * tests/test-fullscreen.c: Verify that the stage size has been + changed by clutter_stage_fullscreen(). + +2008-06-10 Emmanuele Bassi + + Bug #815 - Split up request, allocation, and paint box + + * clutter/clutter-actor.[ch]: Rework the size allocation, + request and paint area. Now ::request_coords() is called + ::allocate(), and ::query_coords() has been split into + ::get_preferred_width() and ::get_preferred_height(). See + the documentation and the layout test on how to implement + a container and layout manager with the new API. (#915, + based on a patch by Havoc Pennington, Lucas Rocha and Johan + Bilien) + + * clutter/clutter-clone-texture.c: Port CloneTexture to + the new size negotiation API; it just means forwarding + the requests to the parent texture. + + * clutter/clutter-deprecated.h: Add deprecated and replaced + API. + + * clutter/clutter-entry.c: Port Entry to the new size + negotiation API. + + * clutter/clutter-group.c: Port Group to the new size + negotiation API; the semantics of the Group actor do not + change. + + * clutter/clutter-label.c: Port Label to the new size + negotiation API, and vastly simplify the code. + + * clutter/clutter-main.[ch]: Add API for executing a + relayout when needed. + + * clutter/clutter-private.h: Add new Stage private API. + + * clutter/clutter-rectangle.c: Update the get_abs_opacity() + call to get_paint_opacity(). + + * clutter/clutter-stage.c: + (clutter_stage_get_preferred_width), + (clutter_stage_get_preferred_height), + (clutter_stage_allocate), + (clutter_stage_class_init): Port Stage to the new size + negotiation API. + + * clutter/clutter-texture.c: Port Texture to the new size + negotiation API. + + * clutter/clutter-types.h: Add ClutterRequestMode enumeration. + + * clutter/x11/clutter-stage-x11.c: Port the X11 stage + implementation to the new size negotiation API. + + * tests/Makefile.am: Add the layout manager test case. + + * tests/test-opacity.c: Update. + + * tests/test-project.c: Update. + + * tests/test-layout.c: Test case for a layout manager implemented + using the new size negotiation API; the layout manager handles + both transformed and untransformed children. + +2008-06-10 Emmanuele Bassi + + * Makefile.am: Add the po/ directory to the build. + +2008-06-10 Emmanuele Bassi + + * autogen.sh: Check for, and run glib-gettextize. + + * configure.ac: Set up the localization support. + + * clutter/clutter-main.c: Do not define the GETTEXT_PACKAGE, + but use the one from the configure script. + + * po/POTFILES.in: Template for the translatable files. + +2008-06-10 Chris Lord + + * clutter/clutter-main.c: (pre_parse_hook): + Call setlocale on init + + * clutter/x11/clutter-event-x11.c: (translate_key_event): + Fix typo and use the same buffer size as xev + +2008-06-10 Øyvind Kolås + + * clutter/clutter-texture.c: improved documentation for + clutter_texture_set_filter_quality. + +2008-06-10 Chris Lord + + Bug #916 - ClutterKeyEvent:unicode_value is ignored + Bug #950 - AltGr not handled + + * clutter/osx/clutter-event-osx.c: (clutter_event_osx_translate): + * clutter/x11/clutter-event-x11.c: (translate_key_event): + * tests/test-events.c: (fill_keybuf), (input_cb): + Apply patch from Tommi Komulainen, fill the unicode_value attribute of + the ClutterKeyEvent struct. Also use XKeycodeToKeysym, as suggested in + bug #950, comment #2 + +2008-06-10 Matthew Allum + + * clutter/clutter-texture.c: + Minor reformatting cleanups. Emit filter-quality prop on change. + * clutter/glx/clutter-glx-texture-pixmap.c: + Support mipmaps via filter quality prop. + +2008-06-10 Chris Lord + + * tests/Makefile.am: + * tests/test-entry-auto.c: + Add automatic test for ClutterEntry, by Tommi Komulainen + +2008-06-10 Chris Lord + + * clutter/cogl/common/cogl-primitives.c: (_cogl_path_arc): + Draw as expected when end angle is lower than start angle (i.e. do not + swap the angles). This aligns with cairo behaviour. + +2008-06-10 Tommi Komulainen + + Bug#959 - Multiple minor improvements + + * configure.ac: pick up GDKPIXBUF_PREFIX from gdk-pixbuf-2.0 + module, not pango + + * clutter/clutter-keysyms-table.h: cosmetic fix for ifdef guard + name in the comment (leftover from earlier commit) + + * tests/test-textures.c: don't depend on GdkPixbuf as we're not + using any actual features from it, just plain pixel buffer + manipulation + + * clutter/clutter-timeline.c + * clutter/clutter-timeline.h (clutter_timeline_list_markers): Use + gsize* to return number of items, not guint* + * tests/test-paint-wrapper.c: use correct type (guint*) in call + to clutter_actor_get_size() + + * tests/test-depth.c (janus_group): properly take height2 into + account when calculating needed height for the rectangle + + * tests/test-cogl-tex-getset.c: use rowstride, not width*4, when + calculating pixel offsets + + * tests/test-cogl-tex-getset.c: Don't assume/force RGBA format, + also support ARGB format (needed with quartz imageloader.) + +2008-06-09 Tommi Komulainen + + * clutter/osx/clutter-backend-osx.c (clutter_backend_osx_post_parse): + Print GL_VENDOR, GL_RENDERER, GL_VERSION and GL_EXTENSIONS to aid + debugging. + +2008-06-09 Tommi Komulainen + + Bug #930 - add support for quartz imagebackend + + * clutter/cogl/common/cogl-bitmap-pixbuf.c + (_cogl_bitmap_from_file): When USE_QUARTZ is defined implement + using Core Graphics. + * configure.ac: support --with-imagebackend=quartz and print + which imagebackend is selected. Make quartz default on OSX + +2008-06-09 Øyvind Kolås + + * clutter/cogl/common/cogl-primitives.c: (cogl_path_rel_curve_to): + fixed naming of implementation of cogl_path_rel_curve_to (it was + called just cogl_rel_curve_to). + +2008-06-09 Emmanuele Bassi + + * configure.ac: Clean up a bit the X11 and X extensions + checks with PKG_CHECK_EXISTS(). Since we are filling up the + X11_CFLAGS and X11_LIBS variables ourselves there is no + point in polluting the Makefiles with unused variables. + + * clutter/Makefile.am: Remove the pkg-config variable + evaluation and use the values retrieved from the configure + script. + +2008-06-09 Chris Lord + + Bug #914 - ClutterEntry is confused about characters vs. bytes + + * clutter/clutter-entry.c: (clutter_entry_ensure_layout), + (clutter_entry_handle_key_event_internal), + (clutter_entry_set_text): + Fix mix-up of character and byte counts, handle unicode correctly. + Use clutter_key_event_unicode() instead of + clutter_keysym_to_unicode(). + + * clutter/clutter-event.c: (clutter_key_event_unicode): + Don't ignore ClutterKeyEvent.unicode_value + + * clutter/clutter-keysyms-table.h: + Rename header define so as not to conflict with clutter-keysyms.h + + Patch originally by Emmanuele Bassi, with input from Tommi Komulainen. + +2008-06-07 Øyvind Kolås + + * clutter/clutter-texture.c: made the filter-quality proeprty also + control the use of mipmapping. + * clutter/clutter-texture.h: added ClutterTextureQuality enum. + * tests/test-texture-quality.c: new test. + * tests/Makefile.am: added test-texture-quality + +2008-06-06 Emmanuele Bassi + + * clutter/clutter-texture.c: + (clutter_texture_class_init): Do not unrealize on hide(), and + do not realize() on show. By default, clutter_actor_show() will + realize ourselves, and we don't want to unrealize when hidden + to avoid paying the penalty of reading back the texture data + from the video memory. + + * tests/test-actors.c: Show all textures again when pressing + the 'r' key. + +2008-06-06 Neil Roberts + + * tests/test-shader.c: Use the special wrapper vars when building + for GLES 2 and automatically cycle the shaders because it's + difficult to right-click. + +2008-06-06 Neil Roberts + + * tests/test-shader.c: Fixed to use sampler2D instead of + sampler2DRect now that GL_TEXTURE_RECTANGLE support is disabled in + revision 2834. The ClutterTexture actor now has the + 'disable-slicing' property set. The distance in texture + coordinates between pixels is passed in as a uniform so that the + box-blur shader can still work. + +2008-06-06 Emmanuele Bassi + + Bug #952 - Fix test-textures in trunk + + * tests/test-textures.c: Use USE_GDKPIXBUF instead of + USE_PIXBUF. (#952, Gwenole Beauchesne) + +2008-06-06 Emmanuele Bassi + + Bug #951 - Fix clutter_entry_init() in trunk + + * clutter/clutter-entry.c (clutter_entry_init): Remove a + variable shadowing another one. (#951, Tommi Komulainen) + +2008-06-06 Emmanuele Bassi + + Bug #955 - ClutterLabel is missing fallback resolution handling + + * clutter/clutter-label.c (clutter_label_init): Handle + clutter_backend_get_resolution() return value -1 similar to + ClutterEntry (falling back to 96.0). (#955, Tommi Komulainen) + +2008-06-06 Neil Roberts + + * clutter/eglnative/clutter-stage-egl.c + (clutter_stage_egl_realize): Use ES 2 renderable type when + building for GLES 2. + + * clutter/eglnative/clutter-event-egl.c (get_backend_time): Added + a NULL for the microseconds parameter of g_timer_elapsed. + + * clutter/eglnative/clutter-stage-egl.h: + * clutter/eglnative/clutter-egl.h: + * clutter/eglnative/clutter-backend-egl.h: Include + clutter-egl-headers.h instead of including the GL headers directly + so it can include gl2.h when building for GLES 2. + + * clutter/eglnative/clutter-egl-headers.h: + * clutter/eglnative/Makefile.am (libclutter_eglnative_la_SOURCES): + Added clutter-egl-headers.h + + * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: GLES 2 + doesn't provide a default precision for floats in the fragment + shader and it will reject the shader if there isn't one. + +2008-06-06 Matthew Allum + + Bug #948 - Remove texture rectangle support + + * clutter/clutter-feature.c: + * clutter/clutter-feature.h: + * clutter/clutter-texture.c: + * clutter/cogl/gl/cogl.c: + * clutter/glx/clutter-glx-texture-pixmap.c: + Remove support for GL_TEXTURE_RECTANGLE_ARB (now using just regular + 2D textures, with optional npots extension). Simplifys code, + makes + mipmap & shader support much more sane. + +2008-06-06 Øyvind Kolås + + Bug #931 - suspicious size allocation for pixel data. + + * clutter/cogl/common/cogl-bitmap-pixbuf.c: + (_cogl_bitmap_from_file): allocate height×rowstride and not duplicate + gdkpixbuf's strange optimization saving some bytes at the end of the + pixbuf. + +2008-06-05 Tommi Komulainen + + Bug 913 - cogl fails to build on OSX + + * clutter/cogl/gl/cogl-fbo.c: define GL_READ_FRAMEBUFFER_EXT and + GL_DRAW_FRAMEBUFFER_EXT if not defined in the build system. The + #ifdef can fail if they're not #defines but variables or enums. + As the values are supposed to be industry standard even then + it shouldn't have ill effects. + +2008-06-05 Tommi Komulainen + + Bug #911 - OSX: add multistage support + + * clutter/osx/clutter-backend-osx.{c,h} + (clutter_backend_osx_init_stage, clutter_backend_osx_get_stage, + clutter_backend_osx_redraw, clutter_backend_osx_create_stage, + clutter_backend_osx_ensure_context, clutter_backend_osx_class_init, + clutter_backend_osx_dispose, ClutterGLView:drawRect:): + * clutter/osx/clutter-stage-osx.{c,h} (clutter_stage_osx_realize, + ClutterGLWindow:setFrameSize:): + Adapt to new multistage backend API. Don't keep a pointer to + default stage. Derive from ClutterActor instead of ClutterStage. + Implement ClutterStageWindow interface. Paint, resize and + otherwise manipulate the wrapper rather than self when necessary. + + (clutter_backend_post_parse): Create our singleton GL context + here. We could probably create the context when the default + stage is created, but I think this is more clean. + + * clutter/osx/clutter-event-osx.c (clutter_event_osx_translate) + * clutter/osx/clutter-stage-osx.c (clutter_stage_osx_state_update, + ClutterGLWindow:windowShouldClose:): + * clutter/osx/clutter-stage-osx.h: Export ClutterGLWindow interface + for clutter-event-osx.c to easily get the stage for NSWindow. + Fill in ClutterEventAny::stage on our events. + +2008-06-05 Tommi Komulainen + + Bug #910 - OSX: missing memory pool + + * clutter/osx/clutter-backend-osx.c (clutter_backend_osx_redraw): + Add missing memory pool wrapup. + +2008-06-05 Tommi Komulainen + + Bug #909 - OSX: missing NULL pointer handling + + * clutter/osx/clutter-stage-osx.c (ClutterGLWindow, + clutter_stage_osx_set_title): NSString:stringWithUTF8String: + does not accept NULL values, use empty string ("") instead. + Avoids potential crash. + +2008-06-05 Emmanuele Bassi + + * tests/Makefile.am: + * tests/test-paint-wrapper.c: Add a test case (merely, a copy + of test-actors.c) that verifies that handlers to the ::paint + signal are called in the right order. + +2008-06-05 Emmanuele Bassi + + Bug #840 - Implement prepare-paint and finish-paint signals. + + * clutter/clutter-actor.c: + (clutter_actor_class_init): Add the ::paint, ::realize and + ::unrealize signals to ClutterActor. It is possible to + override the paint, realization and unrealization of an + actor without subclassing it. The ::paint signal handlers + have the same limitations of a ClutterActor::paint implementation + inside a subclass. + + (clutter_actor_realize), + (clutter_actor_unrealize), + (clutter_actor_paint): Emit the signals instead of calling + the functions from the class vtable. + +2008-06-05 Emmanuele Bassi + + * ChangeLog-ivan: Remove the ChangeLog of the clutter-ivan + branch; the branch already contains it. + +2008-06-05 Matthew Allum + + * clutter/glx/clutter-glx-texture-pixmap.h: + Actually export clutter_glx_texture_pixmap_using_extension () + +2008-06-05 Chris Lord + + * clutter/clutter-entry.c: + Correct the documentation for clutter_entry_set_max_length, fixes bug + #915. + +2008-06-04 Robert Bragg + + * tests/test-clip.c: + Removes a spurious #include which may not + be found if using --with-imagebackend=internal + +2008-06-04 Robert Bragg + + * configure.ac: + Checks that for pangocairo >= 1.18, since + pangocairo-font.c uses pango_cairo_font_get_scaled_font which isn't + otherwise available. + +2008-06-03 Neil Roberts + + Applied patch from bug #947 + + * clutter/clutter-stage.c (clutter_stage_get_default): Don't grab + the floating reference when creating the default stage. The stage + manager will take a reference to it so it will behave as any other + stage. + (clutter_stage_new): Don't take the floating reference to the new + stage but let the stage manager keep it instead. + + * clutter/clutter-stage-manager.c + (_clutter_stage_manager_add_stage): Take a reference to the stage + when it is added to the list. + (_clutter_stage_manager_remove_stage): Unref the stage when it is + removed from the list. + (clutter_stage_manager_dispose): Keep track of the 'next' pointer + as a separate variable so we can cope when the stage being + destroyed removes itself from the list as the list is being + iterated. + + * clutter/clutter-actor.c (clutter_actor_destroy): Take a + reference at the beginning of the function even if there is no + parent container so that overall the reference count is not + changed when the actor is unref'd again at the bottom of the + function. Previously it would have a net effect of leaving the + reference count alone unless it is a top level actor in which case + it would unref it. + +2008-06-03 Matthew Allum + + * clutter/glx/clutter-glx-texture-pixmap.c: + Dont always fallback to x11 (slow) updates for a single + failed pixmap. + Minor cleanups. + * clutter/x11/clutter-x11-texture-pixmap.c: + Move shm allocation to only area updates. + +2008-06-03 Øyvind Kolås + + * clutter/clutter-container.c: (container_get_child_property): + s/g_object_set_property/g_object_get_property/ + +2008-06-02 Neil Roberts + + * clutter/pango/pangoclutter-glyph-cache.c + (pango_clutter_glyph_cache_set): When creating a new band, make + sure the texture is wide enough for the glyph, not just tall + enough. + +2008-06-02 Neil Roberts + + Applied 'final patch' from bug #874 + + * clutter/cogl/gles/cogl.c: + * clutter/cogl/gl/cogl.c: The clip planes are now set using the + inverse projection matrix as the modelview matrix so that they can + be specified in screen coordinates. + + * clutter/cogl/gles/cogl-context.h (CoglContext): + * clutter/cogl/gl/cogl-context.h (CoglContext): Added a member to + cache the inverse projection matrix + + * clutter/clutter-fixed.h: Added a constant for converting from + radians to degrees. + + * clutter/clutter-fixed.c (clutter_atani, clutter_atan2i): Added + fixed-point versions of atan and atan2. + + * tests/test-clip.c: Added a test for clipping with various + rotations and depths. + + * tests/Makefile.am (noinst_PROGRAMS): Added test-clip + +2008-06-02 Neil Roberts + + * clutter/cogl/gles/cogl-gles2-wrapper.h: The uniform numbers are + now stored in a separate struct so they can be stored for + application program objects as well. + + * clutter/cogl/gles/cogl.c: Moved stub shader functions into + separate files. + (_cogl_features_init): Report support for the shaders feature on + GLES 2 + + * clutter/cogl/gles/cogl-shader.h: + * clutter/cogl/gles/cogl-shader.c: + * clutter/cogl/gles/cogl-program.h: + * clutter/cogl/gles/cogl-program.c: Separate files to handle + shaders on programs on GLES. If version 1.1 is being used then the + stub functions which all fail are still used. + + * clutter/cogl/gles/cogl-gles2-wrapper.c + (cogl_gles2_wrapper_init, cogl_gles2_wrapper_bind_attributes), + (cogl_gles2_wrapper_get_uniforms): Move the uniforms and attribute + bindings into a separate function so they can be used to bind on + application shaders as well. + (cogl_gles2_wrapper_update_matrix): Now takes a parameter and is + no longer static so that it can be used to update all of the + matrices when a new shader is bound. + + * clutter/cogl/gles/cogl-defines.h.in: Use GL_COMPILE_STATUS for + CGL_OBJECT_COMPILE_STATUS if the latter isn't available (for + example on GLES 2). + + * clutter/cogl/gles/cogl-context.h (CoglContext): Added handle + arrays for programs and shaders. + + * clutter/cogl/gles/cogl-context.c (cogl_create_context) + (cogl_destroy_context): Initialize and destroy program and shader + handle array. + + * clutter/cogl/gles/Makefile.am (libclutter_cogl_la_SOURCES): Add + cogl-{shader,program}.{c,h} + +2008-06-02 Neil Roberts + + * clutter/cogl/gl/cogl-context.c (cogl_destroy_context): Fix + cut-and-paste error where the wrong arrays were being freed. + +2008-06-01 Emmanuele Bassi + + Merge from clutter-0-6: + + * clutter/clutter-model.c: + (clutter_model_iter_set_internal_valist): Add an internal function + wrapping ClutterModelIter::set_value that does not emit the + ::row-changed signal. Emitting this signal before the ::row-added + one is wrong: a row cannot change before being inserted. + + (clutter_model_append), (clutter_model_prepend), + (clutter_model_insert): Use the non-signal emitting variant of + clutter_model_iter_set_valist(). + + (clutter_model_iter_set_valist): Use the internal version and emit + the ::row-changed signal at the end. + +2008-05-31 Emmanuele Bassi + + Bug #943 - Signals are only emitted within a certain area of + the stage + + * clutter/clutter-main.c (clutter_do_event): Use the proper + API and not the macros for the default stage, in case we are + using a backend supporting multiple stages. (Julian Aron Prenner) + +2008-05-30 Emmanuele Bassi + + * clutter/pango/pangoclutter-fontmap.c: + * clutter/pango/pangoclutter-renderer.c: + * clutter/pango/pangoclutter.h + * clutter/pango/pangoclutter-private.h: Add a function retrieving + the font mipmapping setting. + +2008-05-29 Neil Roberts + + * clutter/cogl/gles/cogl-gles2-wrapper.h (CoglGles2Wrapper): Added + uniforms for alpha testing. + + * clutter/cogl/gles/cogl-gles2-wrapper.c + (cogl_gles2_wrapper_init): Get the uniforms for alpha testing + settings. + (cogl_wrap_glEnable, cogl_wrap_glDisable): Enable/disable alpha + testing. + (cogl_wrap_glAlphaFunc): Filled in the wrapper. + + * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: Added alpha + testing. + + * clutter/cogl/gles/cogl-gles2-wrapper.h: + * clutter/cogl/gles/cogl-gles2-wrapper.c + (cogl_wrap_glGetIntegerv): Added a wrapper for glGetIntegerv so + that it can report zero clip planes. + + * clutter/cogl/gles/cogl.c: + * clutter/cogl/gles/cogl-texture.c: Use the wrapped version of + glGetIntegerv + + * clutter/cogl/gles/cogl-primitives.c (_cogl_path_fill_nodes): Use + _cogl_features_available to check for the stencil buffer instead + of an #ifdef. The stencil buffer is available in the default + profile for the GLES 2 simulator. + +2008-05-29 Emmanuele Bassi + + * configure.ac: Check the --with switches as soon as we have them, + to avoid further checks that will fail anyway. + +2008-05-29 Emmanuele Bassi + + * README: Update the configure arguments list. + +2008-05-28 Neil Roberts + + * clutter/cogl/gles/cogl-gles2-wrapper.c + (cogl_gles2_wrapper_init): Get uniforms for fog parameters and + initialise them. + (cogl_wrap_glDrawArrays): Store the modelview matrix in a uniform + as well so that it can be used for fogging calculations. + (cogl_wrap_glEnable, cogl_wrap_glDisable): Enable/disable fogging. + (cogl_wrap_glFogx, cogl_wrap_glFogxv): Fill in wrapper to set + fogging parameters. + + * clutter/cogl/gles/cogl-fixed-vertex-shader.glsl: Calculate the + fog amount if fogging is enabled. + + * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: Mix with fog + color. + + * clutter/cogl/gles/cogl-gles2-wrapper.h (CoglGles2Wrapper): Add + uniforms for fogging. + +2008-05-28 Emmanuele Bassi + + * clutter/pango/pangoclutter-font.c: Remove unneeded file. + + * tests/Makefile.am: + * tests/test-random-text.c: Add a test for checking the + glyph cache. + +2008-05-28 Emmanuele Bassi + + Bug #919 - Replacement pango renderer (Neil Roberts) + + * clutter/clutter-backend.h: + * clutter/clutter-backend.c: + (clutter_backend_set_font_options), + (clutter_backend_get_font_options): Add the ability to set + the cairo_font_options_t* for the backend at construction + time, so that backend implementations can have their own + options. + + * clutter/clutter-color.c: Include pango/pango-attributes.h + for the pango_color_parse() function. + + * clutter/clutter-label.c: + (clutter_label_ensure_layout), + (clutter_label_init), (clutter_label_set_text), + (clutter_label_set_font_name), (clutter_label_set_ellipsize), + (clutter_label_set_use_markup): Ensure that the cache is + always primed when the Label changes; this makes sure that + the cache is rebuilt outside the paint run, which should + make the painting perform better especially on embedded + devices. + + * clutter/clutter-entry.c: + (clutter_entry_ensure_layout), + (clutter_entry_init), (clutter_entry_set_text), + (clutter_entry_set_font_name): Ditto as above. + + * clutter/clutter-private.h: + * clutter/clutter-main.[ch]: Create the font-map inside the + main context; add two new functions: + + clutter_clear_glyph_cache() + clutter_set_use_mipmapped_text() + + that control the glyphs cache. + + * clutter/pango/Makefile.am: + * clutter/pango/pangoclutter-fontmap.c: + * clutter/pango/pangoclutter-private.h: + * clutter/pango/pangoclutter-render.c: + * clutter/pango/pangoclutter.h: Rewrite the Pango renderer + using a PangoCairo context and saving the glyphs inside a + more efficient cache. + + * configure.ac: Depend on pangocairo instead of pangoft2. + +2008-05-28 Emmanuele Bassi + + Bug 882 - Allow child properties for containers implementing the + ClutterContainer interface (Øyvind Kolås) + + * clutter/clutter-child-meta.[ch]: Base class for the metadata + of a ClutterActor inside a ClutterContainer; the ChildMeta + object implements a wrapper for storing data that is attached + to a ClutterActor only when it's part of a ClutterContainer. + The ChildMeta object is used to store the child properties + accessible through the ClutterContainer API. + + * clutter/clutter-container.[ch]: Creates the ChildMeta for + each actor, in case the Container specifies the ChildMeta + type to use. + + * clutter/Makefile.am: Add clutter-child-meta.[ch] to the build. + + * clutter/clutter-marshal.list: Add the marshaller for the + ClutterContainer::child-notify signal. + + * clutter/clutter-types.h: Declare ClutterContainer and + ClutterChildMeta to avoid recursive inclusion. + +2008-05-28 Neil Roberts + + * clutter/cogl/gles/Makefile.am: Use old-style Makefile rules for + the stringify script so that automake won't complain. + +2008-05-28 Emmanuele Bassi + + * tests/test-script.c: + * tests/test-script.json: Test merging the same actor from two + different sources. + +2008-05-28 Emmanuele Bassi + + Fix merging of objects with the same id. + + * clutter/clutter-script.c: + (json_object_end): If there already is an ObjectInfo under the + parsed id, merge the construction with the currently stored + state. + + (parse_children), (parse_signals), + (parse_behaviours): Append the newly parsed children, signals + and behaviours, in case the ObjectInfo already has unresolved + items. + + (clutter_script_construct_object): Fix a typo in the type check. + + (clutter_script_init): Do not copy the key inside the hash + table holding the objects - we are already holding it inside + the value. + +2008-05-28 Neil Roberts + + * clutter/cogl/gles/cogl-gles2-wrapper.c (cogl_wrap_glGetFixedv): + Filled in the wrapper for glGetFixedv + +2008-05-28 Neil Roberts + + * clutter/cogl/gles/cogl-texture.c: Use the wrapper for + glTexParameteri. Call glGenerateMipmap after every change to the + texture image data. + + * clutter/cogl/gles/cogl-gles2-wrapper.h: + * clutter/cogl/gles/cogl-gles2-wrapper.c: Added a wrapper for + glTexParameteri so that it can ignore requests to set + GL_GENERATE_MIPMAP. Added a wrapper for glGenerateMipmap that does + nothing on GLES 1 + +2008-05-28 Emmanuele Bassi + + * clutter/clutter-script.c: + (clutter_script_construct_object): Mark top-level objects, + that is objects that don't have their ownership transferred + when building up a ClutterScript. + + (object_info_free): Merge a fix from the stable branch, but + do not check the type - check whether the object is a top + level (we still need the ClutterActor type check in order to + call clutter_actor_destroy()). + +2008-05-28 Emmanuele Bassi + + * clutter/clutter-rectangle.c: + (clutter_rectangle_paint): Remove commented out call to + cogl_enable(); the call is not needed and the comment is + in C99. + +2008-05-27 Neil Roberts + + * clutter/eglx/clutter-stage-egl.h: + * clutter/eglx/clutter-egl-headers.h: + * clutter/eglx/clutter-backend-egl.h: + * clutter/eglx/Makefile.am: Include the GLES and EGL headers via + clutter-egl-headers.h so that the right version can be used + depending on whether the GLES 2 wrapper is being used. + + * configure.ac: Added an automake conditional for whether the GLES + 2 wrapper should be used. + + * clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize): + Remove the call to glGetIntegerv to get the max texture size. It + was being called before the GL context was bound so it didn't work + anyway and it was causing trouble for the GLES 2 simulator. + + * clutter/cogl/gles/stringify.sh: Shell script to convert the + shaders into a C string. + + * clutter/cogl/gles/cogl-gles2-wrapper.h: + * clutter/cogl/gles/cogl-gles2-wrapper.c: Wrappers for most of the + missing GL functions in GLES 2. + + * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: + * clutter/cogl/gles/cogl-fixed-vertex-shader.glsl: New shaders for + GLES 2 + + * clutter/cogl/gles/cogl-defines.h.in: Use the @CLUTTER_GL_HEADER@ + macro instead of always using the GLES 1 header. + + * clutter/cogl/gles/cogl-context.h (CoglContext): Include a field + for the state of the GLES 2 wrapper. + + * clutter/cogl/gles/cogl-texture.c: + * clutter/cogl/gles/cogl-primitives.c: + * clutter/cogl/gles/cogl.c: Use wrapped versions of the GL + functions where neccessary. + + * clutter/cogl/gles/Makefile.am: Add sources for the GLES 2 + wrapper and an extra build step to put the GLSL files into a C + string whenever the files change. + +2008-05-26 Matthew Allum + + * clutter/x11/clutter-stage-x11.c: (clutter_stage_x11_request_coords): + Dont allow the window to be resize to 0 dimentions. (fixes #933) + +2008-05-23 Emmanuele Bassi + + Bug #912 - Invalid use of int* as parameter for glGetIntegerv + + * clutter/cogl/gl/cogl.c (_cogl_features_init): Use GLint + instead of int. (#912, Tommi Komulainen) + +2008-05-23 Emmanuele Bassi + + Bug #928 - Reparenting a child that itself is a container + doesn't work + + * clutter/clutter-actor.c (clutter_actor_set_parent): Realize + an actor when setting its parent, if the parent is realized. + + * clutter/clutter-group.c: + (clutter_group_realize), (clutter_group_class_init): Add the + missing implementation of the ::realize() virtual function; this + makes sure that the children of a Group are realized if the Group + is realized. (#928) + +2008-05-21 Neil Roberts + + * clutter/cogl/gl/cogl.c (error_string): + * clutter/cogl/gles/cogl.c (error_string): Rename to + _cogl_error_string and remove the static scoping so that it can be + called in cogl-texture etc. + + * clutter/cogl/gl/cogl-texture.c (cogl_texture_new_from_foreign): + * clutter/cogl/gles/cogl-texture.c (cogl_texture_new_from_foreign): + GE(*) can't be used to wrap around calls that use the return + value. + + * clutter/cogl/gl/cogl-texture.c (_cogl_texture_quad_sw) + (_cogl_texture_quad_hw, cogl_texture_polygon): Remove GE(*) + wrapper around calls in the middle of a glBegin/glEnd pair which + otherwise always generate an error because glGetError can only be + called outside of the pair. + + * clutter/cogl/gl/cogl-internal.h: Include stdio.h when definig + COGL_DEBUG and declare a prototype for _cogl_error_string. + + * clutter/cogl/gles/cogl-internal.h: Match GE(*) macro to GL + version. + +2008-05-21 Ivan Leben + + * clutter/cogl/gles/cogl-texture.c: + (_cogl_texture_download_from_gl:) Only comment out the broken + check for framebuffer alpha bits, not the check for alpha in + texture format. + +2008-05-20 Øyvind Kolås + + Decouple actor opacity from fill opacity in ClutterRectangle (fixes + race when both are set from clutter script also makes it more + consistent with the behavior of other actors.) + + * clutter/clutter-rectangle.c: (clutter_rectangle_set_color): stop + setting the opacity of the actor from the specified color. + (clutter_rectangle_paint): combine the absolute opacity of the actor + with the alpha of the color when painting. + +2008-05-20 Ivan Leben + + * clutter/cogl/gles/cogl-texture.c: + (cogl_texture_download_from_gl:) Implemented a workaround + for missing alpha framebuffer channel. There are still + some issues with detecting whether alpha is present in the + framebuffer. See comments in code. Test-cogl-tex-getset now + successfully retrieves a RGBA texture image data. + +2008-05-19 Ivan Leben + + * clutter/cogl/gles/cogl-texture.c: + (cogl_texture_download_from_gl:) Store old blending factors + and restore them when done. The lack of ability to retrieve + the alpha channel now more noticable in test-cogl-tex-getset + since the edges of the hand are not antialiased. + + * clutter/cogl/gl(es)/cogl-internal.h: Declare + cogl_blend_func to avoid "implicit implementation" compile + warning. + +2008-05-19 Ivan Leben + + * clutter/cogl/gl(es)/cogl.c: New internal function + cogl_blend_func caches blending setup much like cogl_enable + does with the enable flags. This separates blending factors + setup from the enable/disable operation in preparation of + the texture image retrieval fix for alpha channel on GLES. + (cogl_enable:) Does not modify blending factors anymore. + + * clutter/cogl/gl(es)/cogl-context.h: CoglContext holds two + new variables to cache blending src and dst factors. + + * clutter/cogl/gl(es)/cogl-context.c: + (cogl_create_context:) Initialize blending factors. + + * clutter/cogl/gles/cogl-texture.c: + (cogl_texture_download_from_gl:) Set blending factors to + CGL_ONE, CGL_ZERO which fixes the slighlty improper behavior + where source colour was actually multiplied with its alpha + value in the result (not noticable on current tests). + +2008-05-19 Emmanuele Bassi + + * clutter/eglx/Makefile.am: Fix the INCLUDE directives to + properly include the X11 backend headers. + + * clutter/glx/Makefile.am: Add the libclutter-x11.la static + library to the LDADD directives. + +2008-05-19 Tomas Frydrych + + * clutter/x11/clutter-x11.h: + * clutter/glx/clutter-glx.h: + Include texture pixmap headers. + +2008-05-16 Neil Roberts + + * clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize): + Fix name of parent class variable which otherwise breaks the + build. + +2008-05-16 Neil Roberts + + Use the Mesa headers instead of depending on GLee for Win32 + builds. + + * configure.ac: No longer check for GLee + + * clutter/cogl/gl/cogl-defines.h.in: Don't bother including GLee.h + + * build/mingw/mingw-cross-compile.sh: No longer downloads libGLee + but downloads the Mesa library instead and installs the headers + from that. Fixed the libpng version. + +2008-05-16 Tomas Frydrych + + * clutter/glx/Makefile.am: + * clutter/x11/Makefile.am: + Install glx and x11 specific includes into clutter/glx and + clutter/x11 so that header files that include glx/*.h or x11/*.h + when installed. + +2008-05-16 Neil Roberts + + * clutter/win32/clutter-event-win32.c (message_translate): Fix + signedness of old_xpos and old_ypos to get rid of compiler + warnings. + + * clutter/win32/clutter-backend-win32.c + (clutter_backend_win32_get_features): Cast the result of + glGetString to a signed char pointer to avoid compiler warnings. + +2008-05-15 Neil Roberts + + * clutter/win32/clutter-stage-win32.c: + * clutter/win32/clutter-backend-win32.c: Reflect changes to the + GLX/X11 backend in revisions 2708-2709 and 2713-2715 which + simplify the backend a little. + +2008-05-15 Emmanuele Bassi + + * clutter/x11/clutter-backend-x11.c: + * clutter/clutter-event.h: + * clutter/clutter-feature.h: + * clutter/clutter-fixed.c: + * clutter/clutter-model.h: Fix documentation. + + * clutter/eglnative/clutter-backend-egl.[ch]: + * clutter/eglnative/clutter-event-egl.c: Add the same solution + used for the SDL backend in order to get the time of an event. + This should fix the motion event throttling and the click count + on button press. (#906) + + * tests/test-pixmap.c (create_pixmap), (main): Fix preprocessor + directives. + +2008-05-14 Emmanuele Bassi + + * tests/test-threads.c: Add a "progress bar" actor and + make the test take less amount of time to complete. + +2008-05-14 Emmanuele Bassi + + * tests/test-events.c: Clean up a bit, and print out more + messages when pressing one of the rectangles. + + * tests/test-threads.c: Be more verbose in the console, and + apply another behaviour on the rectangle, to show that we + are not blocking. + +2008-05-14 Øyvind Kolås + + * clutter/cogl/gles/cogl.c: (_cogl_features_init): do not set + COGL_FEATURE_TEXTURE_READ_PIXELS, since it is not available. + +2008-05-14 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-main.c: + * clutter/clutter-private.h: + Rejid Øyvind's previous commit a little moving more into + clutter-main.c and using ClutterContext. + Also Refactor clutter_init & clutter_init_with_args to share + same core init code. + +2008-05-13 Øyvind Kolås + + Made it possible to do picking when the colors stored in the + framebuffer are only approximately the correct value. + + * clutter/clutter-actor.c: + (init_bits): initialize constants about how many bits are + available/will be used for r,g,b components. + (_clutter_pix_to_id): now own function, compute an id from a + pixel into its own function (used from _clutter_do_pick). + (_clutter_id_to_col): now own function, computes the color to use for + a given id. + (clutter_actor_paint): use clutter_id_to_col. + * clutter/clutter-main.c: + (_clutter_do_pick): use _clutter_pix_to_id + (clutter_main): re-enable invocation of fruity app shell. + +2008-05-13 Emmanuele Bassi + + * clutter/fruity/clutter-stage-fruity.c: + (clutter_stage_egl_show), (clutter_stage_egl_hide): Don't chain + up and set flags, as it is not needed anymore. + + (clutter_stage_egl_realize): Set the REALIZED flag. + + * clutter/eglnative/clutter-stage-egl.c: + (clutter_stage_egl_show), (clutter_stage_egl_hide): Don't chain + up and set flags, as it is not needed anymore. + +2008-05-13 Emmanuele Bassi + + * clutter/glx/clutter-stage-glx.c: + (clutter_stage_glx_unrealize): Move the shaders release from here... + + * clutter/glx/clutter-backend-glx.c: + (clutter_backend_glx_dispose): ... to here. Shaders should be + released when the GL context is being destroyed, and that only + happens when the backend is being disposed, now that we support + multiple stages. + +2008-05-13 Emmanuele Bassi + + * clutter/clutter-backend.c: + (_clutter_backend_create_stage): Call _clutter_stage_set_window() + ourselves, thus removing yet another action that backends must + implement and might get wrong; also cuts a backend-agnostic piece + of code duplication. + + * clutter/eglnative/clutter-backend-egl.c: + (clutter_backend_egl_create_stage): Update the EGL native backend. + + * clutter/eglx/clutter-backend-egl.c: + (clutter_backend_egl_create_stage): Update the EGLX backend. + + * clutter/fruity/clutter-backend-fruity.c: + (clutter_backend_egl_create_stage): Update the fruity backend + + * clutter/glx/clutter-backend-glx.c: + (clutter_backend_glx_create_stage): Update the GLX backend. + + * clutter/sdl/clutter-backend-sdl.c: + (clutter_backend_sdl_create_stage): Update the SDL backend. + + * HACKING.backends: Update the ::create_stage() description. + +2008-05-13 Emmanuele Bassi + + * clutter/x11/clutter-event-x11.c (event_translate): Remove the + cheap Expose event compression, as it seems to play games when a + composite manager is running. It's also not really needed, as + the redraw queue will avoid redraws too close to each other + anyway. + + * clutter/x11/clutter-stage-x11.c: + (clutter_stage_x11_show), (clutter_stage_x11_hide): Do not chain + up just to set the flags. This fixes a critical warning coming + from ClutterActor::hide() default implementation. + +2008-05-13 Ivan Leben + + * clutter/cogl/gl/cogl-defines.h.in: + Fix GL function prototypes on OS X by #definining APIENTRY and + APIENTRYP if missing. + +2008-05-12 Ivan Leben + + * clutter/cogl/gl/cogl-defines.h.in: + Defined GL extension functions used by Cogl inside the COGL_ + namespace. + + * clutter/cogl/gl/cogl-context.h: + * clutter/cogl/gl/cogl.c: + Use COGL_ extension function prototypes instead of relying + on glext.h to define them. Should fix the mac compilability + bug, but haven't tested it yet. + +2008-05-12 Matthew Allum + + * clutter/x11/clutter-x11-texture-pixmap.c: + * configure.ac: + * tests/Makefile.am: + Remove the XComposite dep from Clutter itself, just use + in test-pixmap (if available) + +2008-05-12 Emmanuele Bassi + + Rework the stage wrapper/implementation relation: remove + duplicated code and all the bookkeeping from the backends into + ClutterStage whenever possible, to reduce the amount of work a + backend must do (and possibly get wrong). Thanks to Tommi + Komulainen. + + * clutter/clutter-main.c: + (clutter_init_with_args), (clutter_init): Realize the default + stage after creation. The default stage is special, because we + use it in the initialization sequence. This removes the burden + from the backends and reduces the things a backend can get + wrong. + + * clutter/clutter-stage.c: + (clutter_stage_show): Make sure to realize the implementation if + it hasn't been realized yet. + + (clutter_stage_realize): Set the REALIZED flag and call + clutter_stage_ensure_current() if the implementation was + successfully realized. + + (clutter_stage_unrealized): Call clutter_stage_ensure_current() + on unrealize. + + * clutter/glx/clutter-backend-glx.c: + (clutter_backend_glx_create_stage): Do not realize the stage anymore + when creating it, and let the normal realization sequence take + place. + + (clutter_backend_glx_ensure_context): Trap for X11 errors. + + * clutter/glx/clutter-stage-glx.c: + (clutter_stage_glx_realize): Chain up to the X11 implementation + so that we can set up the window state (title, cursor visibility) + when we actually have a X window. Also, do not call + clutter_stage_ensure_current(), and rely on the wrapper to do + it for us. This means we can drop setting the REALIZED flag on + the wrapper. + + (clutter_stage_glx_unrealize): Do not call + clutter_stage_ensure_current() ourselves, and rely on the wrapper + to do it for us. + + * clutter/x11/clutter-stage-x11.c: + (set_wm_title), (set_cursor_visible): Move the WM title and + cursor visibility code inside their own functions. + + (clutter_stage_x11_realize): Set the window title and whether the + cursor is visible or not after realizing the stage. + + (clutter_stage_x11_set_cursor_visible), + (clutter_stage_x11_set_title): Call set_wm_title() and + set_cursor_visible(). + + (clutter_stage_x11_finalize): Free the title string. + + * clutter/x11/clutter-stage-x11.h: Save more of the stage state, + so that we can set it even when the stage hasn't been realized + yet. + + * clutter/eglnative/clutter-backend-egl.c: + (clutter_backend_egl_create_stage): + * clutter/eglnative/clutter-stage-egl.c: + (clutter_stage_egl_unrealize), + (clutter_stage_egl_realize): Update the eglnative backend. + + * clutter/eglx/clutter-backend-egl.c: + (clutter_backend_egl_ensure_context), + (clutter_backend_egl_create_stage): + * clutter/eglx/clutter-stage-egl.c: + (clutter_stage_egl_unrealize), + (clutter_stage_egl_realize): Update the eglx backend. + + * clutter/sdl/clutter-backend-sdl.c: + (clutter_backend_sdl_create_stage): + * clutter/sdl/clutter-stage-sdl.c: + (clutter_stage_sdl_realize): Update the sdl backend. + + * clutter/fruity/clutter-backend-fruity.c: + (clutter_backend_fruity_create_stage): + * clutter/sdl/clutter-stage-fruity.c: + (clutter_stage_fruity_realize): Update the fruity backend. + + * tests/test-multistage.c (on_button_press): Bail out if + clutter_stage_new() returns NULL. + + * HACKING.backends: Update backend writing documentation. + +2008-05-12 Robert Bragg + + * clutter/clutter-timeline.c: + Adds clutter-timeline documentation RE: r2337, explaining + the current timeline semantics. + +2008-05-12 Emmanuele Bassi + + * HACKING.backends: Update documentation. + + * clutter/glx/clutter-stage-glx.c: + (clutter_stage_glx_realize): Avoid setting more flags than + necessary. + +2008-05-09 Neil Roberts + + * clutter/clutter-frame-source.c (clutter_frame_source_add) + (clutter_frame_source_add_full): Add gtk-doc and rename the + 'function' parameter to 'func'. + + * clutter/clutter-frame-source.h: Rename the 'function' parameters + to 'func'. + + * clutter/Makefile.am (source_h): Make clutter-frame-source.h a + public header. + + * clutter/clutter-main.c (clutter_threads_add_frame_source_full): + Improve gtk-doc + +2008-05-09 Emmanuele Bassi + + * clutter/clutter-script-private.h: Add a flag for the + default stage. + + * clutter/clutter-script.c: + (json_object_end): If the "type" member is "ClutterStage" + and we have a "is-default" member set to true then this + is the default stage. + + (clutter_script_construct_object): Special case the default + stage instead of each ClutterStage. + + (object_info_free): Ditto as above. + + * tests/test-script.json: Test the creation of a non-default + stage and the ::destroy handler to quit. + +2008-05-09 Emmanuele Bassi + + Bug #908 - Support transform from G_TYPE_INT to ClutterUnit + + * clutter/clutter-units.c: + (clutter_value_transform_int_unit), + (clutter_unit_get_type): Add GValue transformation function from + integer values to ClutterUnit. (#908) + + (param_unit_validate): Fix validation for ClutterParamSpecUnit; + this allows writable ClutterUnit properties. + + * clutter/clutter-fixed.c: + (clutter_value_transform_int_fixed), + (clutter_value_transform_double_fixed), + (clutter_value_transform_float_fixed): Add GValue transformation + functions from native types (int, double, float) to ClutterFixed. + + (clutter_fixed_get_type): Register the new transformation functions. + + (param_fixed_validate): Fix validation for ClutterParamSpecUnit; + this allows writable ClutterFixed properties. + +2008-05-07 Ivan Leben + + * clutter/cogl/cogl.h.in: + * clutter/cogl/gl(es)/cogl-texture.h: + * clutter/cogl/gl(es)/cogl-texture.c: + cogl_texture_new_* functions take a gboolean auto_mipmap argument. + If TRUE automatic mipmap generation is enabled during the process + of slice texture object creation. + (cogl_texture_new_from_foreign:) now allows mipmap min filter + flags. + + * clutter/clutter-texture.c: + * clutter/glx/clutter-glx-texture-pixmap.c: + * tests/test-cogl-offscreen.c: + * tests/test-cogl-tex-tile.c: + * tests/test-cogl-tex-convert.c: + * tests/test-cogl-tex-polygon.c: + * tests/test-cogl-tex-getset.c: + Pass FALSE for auto_mipmap to cogl_texture_new_*. + + * clutter/pango/pangoclutter-render.c: + (tc_get:) Pass TRUE to cogl_texture_new_with_size and use mipmap + min filter for nicer glyphs at small scales. As a result test-text + has gone all beautiful now. + +2008-05-07 Neil Roberts + + * clutter/clutter-frame-source.h: Added the missing G_BEGIN_DECLS + and G_END_DECLS + +2008-05-07 Emmanuele Bassi + + * clutter/sdl/clutter-backend-sdl.c: + (clutter_backend_sdl_dispose): Destroy the timer that we created... + (clutter_backend_sdl_init): ... here. + + * clutter/sdl/clutter-backend-sdl.h: Add a GTimer for time-based + operations, like the event time. + + * clutter/sdl/clutter-event-sdl.c: + (get_backend_time): Get the elapsed milliseconds for the SDL + backend. + + (_clutter_events_init): Start the timer provided by the backend... + (_clutter_events_uninit): ... and the stop it. + + (key_event_translate), (event_translate): Use the backend time + to fill out the time field of the event structures. This fixes + the motion notification throttling on the SDL backend. + +2008-05-06 Matthew Allum + + * clutter/glx/clutter-glx-texture-pixmap.c: + * clutter/x11/clutter-x11-texture-pixmap.c: + More cleanups, safety additions. + +2008-05-05 Øyvind Kolås + + * clutter/cogl/gl/cogl-primitives.c: + * clutter/cogl/gles/cogl-primitives.c: + * clutter/cogl/common/cogl-primitives.c: moved declaration of + gegl_rectangle and gegl_rectanglex here to satisfy linking + requirements when building the fruity backend. + +2008-05-05 Øyvind Kolås + + * clutter/cogl/cogl.h.in: api review touch ups. + * clutter/cogl/common/cogl-primitives.c: api review touch ups. + * clutter/cogl/gl/cogl-primitives.c: (cogl_path_fill), + (cogl_path_stroke): indentation. + * clutter/cogl/gles/cogl-primitives.c: + (_cogl_path_fill_nodes): free allocated resources. + + * tests/test-cogl-primitives.c: updated to new API, added rotation to + test to show that cogl renders paths correct under perspective + distortion. + +2008-05-02 Emmanuele Bassi + + Bug #900 - clutter_actor_lower() and friends do not queue redraw + + * clutter/clutter-actor.c: + (clutter_actor_raise), + (clutter_actor_lower): Queue a redraw after raising and lowering + and actor in the paint order stack. (#900) + +2008-05-01 Richard Purdie + + * configure.ac: + Set CLUTTER_COGL for fruity. + +2008-05-01 Emmanuele Bassi + + Build fixes for the SDL flavour. + + * clutter/sdl/clutter-backend-sdl.c: Remove an unused function. + + * clutter/sdl/clutter-event-sdl.c: + (clutter_event_dispatch): Properly cast the stage pointer. + + * clutter/sdl/clutter-stage-sdl.c: + (clutter_stage_window_iface_init): Remove the draw_to_pixbuf() + stub and assignment. + +2008-05-01 Richard Purdie + + * configure.ac: + Fix up fruity flavour configure option. + +2008-05-01 Øyvind Kolås + + * clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes): draw + the rasterized scanlines as an array of triangles. + +2008-05-01 Emmanuele Bassi + + * clutter/clutter-behaviour.c: + (clutter_behaviour_remove_all): Disconnect the ::destroy + handler when removing all actors, to match the behaviour + of clutter_behaviour_remove(). + +2008-05-01 Matthew Allum + + * clutter/glx/clutter-glx-texture-pixmap.c: + * tests/test-pixmap.c: + Fix up texture-pixmap, now works. + Thanks to Neil for spotting we were actually using + wrong texture type in fbconfig (COGL change). + +2008-04-30 Øyvind Kolås + + * clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes): + keep track of direction we are drawing in and make sure we leave + two intersection points when we have changed direction. + +2008-04-30 Øyvind Kolås + + * clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes): + scanline rasterizer fallback for GLES without working stencil + buffer (would benefit from optimization/smarter choice of + datastructures). + +2008-04-30 Emmanuele Bassi + + * clutter/clutter-effect.c: + (clutter_effect_closure_destroy): Do not remove the actor + from the behaviour; the behaviour is an internal detail of the + effect, and it will remove the actors anyway when finalized + when g_object_unref() is called. This should guard against + actors being destroyed while an effect is running. + +2008-04-30 Øyvind Kolås + + * clutter/cogl/common/Makefile.am: + * clutter/cogl/common/cogl-primitives.c: + * clutter/cogl/common/cogl-primitives.h: + * clutter/cogl/gl/Makefile.am: + * clutter/cogl/gl/cogl-primitives.c: + * clutter/cogl/gl/cogl-primitives.h: + * clutter/cogl/gles/Makefile.am: + * clutter/cogl/gles/cogl-primitives.c: + * clutter/cogl/gles/cogl-primitives.h: moved duplicated code to the + common directory. + +2008-04-30 Robert Bragg + + * clutter/clutter/x11/clutter-x11-texture-pixmap.c: + In _update_area_real with depth=16 we weren't setting up the alpha + channel. + +2008-04-29 Matthew Allum + + * clutter/glx/Makefile.am: + * clutter/x11/Makefile.am: + Revert header install locations (Mistake in previous commit, + fixes #898) + +2008-04-29 Neil Roberts + + * clutter/clutter-actor.c (clutter_actor_move_anchor_point): The + actor position was being moved in the wrong direction. Perhaps + this was a cut-and-paste bug from move_anchor_point_from_gravity + because in that function ax and ay represent the old anchor + position, but in this function they represent the new. + +2008-04-29 Matthew Allum + + * clutter/glx/Makefile.am: + * clutter/glx/clutter-glx-texture-pixmap.c: + * clutter/glx/clutter-glx-texture-pixmap.h: + * clutter/x11/Makefile.am: + * clutter/x11/clutter-x11-texture-pixmap.c: + * tests/test-pixmap.c: + Commit newer x11 texture pixmap stuff (optionally using SHM). + Also seemingly still broken overhauled glx-texture-pixmap + (code by Robert and myself) + + * configure.ac: + Minor formatting change. + +2008-04-29 Neil Roberts + + Removed COGLhandle and changed shader and program functions to be + wrapped in reference-counted CoglHandles instead. + + * clutter/cogl/gl/cogl-shader.c: + * clutter/cogl/gl/cogl-shader.h: + * clutter/cogl/gl/cogl-program.c: + * clutter/cogl/gl/cogl-program.h: + New files to hold the shader and program functions. + + * clutter/cogl/gl/cogl.c: Removed shader and program functions. + + * clutter/cogl/common/cogl-handle.h: New header to define + COGL_HANDLE_DEFINE which helps build functions to create + reference-counted handles. This reduces the amount of duplicated + code. + + * clutter/cogl/gl/cogl-texture.c: + * clutter/cogl/gles/cogl-texture.c: + * clutter/cogl/gl/cogl-fbo.c: Converted to use COGL_HANDLE_DEFINE + from cogl-handle.h to avoid duplicating some of the common code. + + * clutter/cogl/gles/cogl-defines.h.in: + * clutter/cogl/gl/cogl-defines.h.in: Removed COGLhandle + + * clutter/cogl/gl/cogl-context.h: Added handle arrays for programs + and shaders. + + * clutter/cogl/gl/cogl-context.c (cogl_create_context): Added + initialisers for shader_handles and program_handles. + (cogl_destroy_context): Added calls to g_array_free for all handle + arrays. + + * clutter/cogl/gl/Makefile.am (libclutter_cogl_la_SOURCES): Added + cogl-{program,shader}.{c,h} + + * clutter/cogl/common/Makefile.am + (libclutter_cogl_common_la_SOURCES): Added cogl-handle.h + + * clutter/cogl/gles/cogl.c: + * clutter/cogl/cogl.h.in: Programs and shaders are now wrapped in + CoglHandles instead of COGLhandles. cogl_program_destroy and + cogl_shader_destroy is now replaced with cogl_program_unref and + cogl_shader_unref. cogl_program_ref and cogl_shader_ref are also + added. + + * clutter/clutter-shader.c: Converted to use CoglHandles for the + programs and shaders instead of COGLhandles. + +2008-04-29 Øyvind Kolås + + * clutter/cogl/cogl.h.in: renaming of API's in cogl to make the + primitives and path API a bit smaller and more resembling cairo. + * clutter/cogl/gl/cogl-primitives.c: + * clutter/cogl/gles/cogl-primitives.c: + * clutter/cogl/gles/cogl.c: + + * clutter/clutter-actor.c: + * clutter/clutter-rectangle.c: + * tests/test-cogl-offscreen.c: + * tests/test-cogl-primitives.c: + * tests/test-cogl-tex-convert.c: + * tests/test-cogl-tex-foreign.c: + * tests/test-cogl-tex-getset.c: + * tests/test-cogl-tex-tile.c: updated according to changes in cogl. + +2008-04-29 Robert Bragg + + * clutter/x11/clutter-x11-texture-pixmap.c: + In clutter_x11_texture_pixmap_set_pixmap, dont assume that the actor + size should be changed to match the size of the pixmap. + +2008-04-29 Robert Bragg + + * clutter/cogl/gles/cogl-texture.c: + Replaces an malloc call with g_malloc. + +2008-04-29 Robert Bragg + + * clutter/configure.ac: + When looking for a GLES 1 library, also try the name "GLESv1_CM". + + This also reduces the xfixes version requirement to v3, since we dont + need support for Show/HideCursor. + +2008-04-28 Neil Roberts + + Fixed 'make dist' + + * clutter/cogl/Makefile.am (EXTRA_DIST): Distribute cogl.h.in + instead of cogl.h + (DIST_SUBDIRS): Added common folder + + * clutter/cogl/gl/Makefile.am (libclutter_cogl_la_SOURCES): Remove + cogl-defines.h and use the right location for cogl-defines.gl.h + (EXTRA_DIST): Distribute cogl-defines.h.in + + * clutter/cogl/gles/Makefile.am (libclutter_cogl_la_SOURCES): + Remove cogl-defines.h and use the right location for + cogl-defines.gles.h + (EXTRA_DIST): Distribute cogl-defines.h.in + + * clutter/Makefile.am (DIST_SUBDIRS): Add fruity + +2008-04-28 Neil Roberts + + * clutter/cogl/cogl.h.in (COGL_A_BIT): Added the missing comma + after COGL_PIXEL_FORMAT_G_8 + +2008-04-28 Emmanuele Bassi + + * autogen.sh: Do not just touch the gtk-doc.make file, if we + could not find gtkdocize, but echo an empty EXTRA_DIST into it + so that the automake won't complain later on. + +2008-04-28 Øyvind Kolås + + * clutter/cogl/cogl.h.in: reindented. + +2008-04-28 Emmanuele Bassi + + * clutter/clutter-actor.c: + (parse_rotation_array), + (clutter_actor_set_custom_property): Use the internal, unit based + rotation setter when parsing the rotation from a ClutterScript + file. + + (clutter_geometry_copy), + (clutter_vertex_copy), + (clutter_actor_box_copy): Use the more efficient g_slice_dup(). + + (clutter_actor_get_stage): Add documentation. + + * clutter/clutter-group.c: Documentation fix. + +2008-04-28 Øyvind Kolås + + * clutter/cogl/cogl.h.in: moved the documentation of the cogl + primitives to the main public header. + * clutter/cogl/gl/cogl-primitives.c: from here .. + * clutter/cogl/gles/cogl-primitives.c: .. _and_ here. + +2008-04-28 Øyvind Kolås + + * clutter/cogl/cogl.h.in: added documentation. + +2008-04-28 Emmanuele Bassi + + * clutter/clutter-units.c (param_unit_init): Use the right + macros to set the default minimum and maximum values. + + * clutter/clutter-fixed.c (param_fixed_init): Ditto as above. + +2008-04-28 Matthew Allum + + * autogen.sh: + Dont display 'make' if configure fails. + * configure.ac: + Add new --with-gles version option for eventual GLES2 support + Also minor tidyups. + +2008-04-28 Neil Roberts + + * tests/test-cogl-tex-polygon.c: Added buttons to toggle whether + slicing and linear filtering is enabled. By default slicing is + disabled to help test on GL ES. + +2008-04-28 Neil Roberts + + * tests/Makefile.am (INCLUDES): Added $(top_srcdir)/clutter to the + include path. Otherwise the tests will fail to build trying to + include "json/json-types.h" when building out-of-tree. + +2008-04-28 Emmanuele Bassi + + * clutter/eglnative/clutter-backend-egl.c: + (clutter_backend_egl_redraw): Whitespace fixes. + + * clutter/eglnative/clutter-stage-egl.c: + (clutter_stage_egl_hide): Indentation fixes. + + (clutter_stage_egl_realize): Use g_critical() to report failure, + unset the flags and bail out instead of continuing the realization + of the stage. + +2008-04-25 Neil Roberts + + Merged in the clutter-ivan branch which contained the new public + COGL API. + +2008-04-25 Emmanuele Bassi + + * clutter/sdl/clutter-stage-sdl.[ch]: Port the SDL stage to + the new stage implementation API. + + * clutter/sdl/clutter-backend-sdl.[ch]: Port the SDL backend + to the new backend API. + + * clutter/sdl/clutter-event-sdl.c: + (clutter_event_dispatch): Assign the default stage as the + origin of the event. + +2008-04-24 Emmanuele Bassi + + * configure.ac: Add the --with-json configure switch to + allow building Clutter with the external dependency on + the system JSON-GLib; the default is to use the internal + copy unless explicitly asked to check. + +2008-04-24 Emmanuele Bassi + + * Makefile.am: Add HACKING.backends to the EXTRA_DIST. + +2008-04-24 Emmanuele Bassi + + * HACKING.backends: Add documentation on how to write a + backend for Clutter. + +2008-04-24 Emmanuele Bassi + + * clutter/eglnative/clutter-backend-egl.c: + (clutter_backend_egl_create_stage): Fix checks using a + non assigned member of the ClutterBackendEGL structure. + +2008-04-23 Emmanuele Bassi + + * clutter/eglnative/clutter-backend-egl.[ch]: + * clutter/eglnative/clutter-stage-egl.[ch]: + * clutter/eglnative/clutter-event-egl.c: Port to the new stage + and backend APIs. *WARNING* untested and not compiled. + + * clutter/eglx/clutter-backend-egl.c: + (clutter_backend_egl_init): Set some defaults. + +2008-04-23 Emmanuele Bassi + + * tests/test-script.json: Remove the explicit "visible" + member to test that the visibility of actors is TRUE + by default. + +2008-04-23 Emmanuele Bassi + + * configure.ac: + * clutter/Makefile.am: Do not build the internal JSON-GLib + copy if there is a system installed one. + + * clutter/clutter-json.h: Remove. + + * clutter/clutter-json.h.in: Template for the clutter-json.h + header file, used to opaquely include the JSON-GLib types. + +2008-04-23 Emmanuele Bassi + + * clutter/clutter-actor.c: Document :show-on-set-parent and + the fact that calling clutter_actor_show() and hide() on an + unparented actor will change that property as well as a side + effect. + +2008-04-23 Emmanuele Bassi + + * clutter/clutter-actor.c (clutter_actor_set_property): Use the + internal setter for the rotation center. + +2008-04-23 Emmanuele Bassi + + * clutter/clutter-actor.[ch]: Add units based variant of the + rotation accessors. + +2008-04-23 Emmanuele Bassi + + Bug 892 - Incorrect results using rotation-[center|angle] properties + + * clutter/clutter-actor.c: + (clutter_actor_set_rotation_internal): Inline function for setting + the rotation using fixed point for the angle and units for the + center of rotation. + + (clutter_actor_set_property), + (clutter_actor_set_rotationx): Use the internal setter to avoid + loss of precision and too many conversions to and from units. + +2008-04-23 Emmanuele Bassi + + Bug 891 - assertion failed when test-behave exits + + * clutter/clutter-behaviour.c: + (remove_actor_on_destroy), + (clutter_behaviour_apply), + (clutter_behaviour_remove): Remove the actor if it gets + destroyed before the behaviour. + +2008-04-18 Emmanuele Bassi + + Bug #884 - Add clutter_alpha_set_closure + + * clutter/clutter-alpha.[ch]: Add clutter_alpha_set_closure(), + a GClosure variant of clutter_alpha_set_func(), and reimplement + the latter as a special case of the former. (#884, Xan López) + +2008-04-18 Neil Roberts + + * clutter/clutter-timeline.c (clutter_timeline_get_progressx): + Changed to use clutter_qdiv instead of CLUTTER_FIXED_DIV otherwise + it can't cope with timelines with more than 255 frames. + +2008-04-17 Emmanuele Bassi + + * clutter/clutter-frame-source.c: Small coding style fixes. + +2008-04-17 Neil Roberts + + Applied patch from bug #881 + + * clutter/clutter-frame-source.h: + * clutter/clutter-frame-source.c: + New files that contain a replacement for g_timeout that try to + cope with system delays. + + * clutter/Makefile.am: Added clutter-frame-source.{c,h} + + * clutter/clutter-timeline.c (timeout_add): Use a frame source + instead of a g_timeout. + + * clutter/clutter-main.c (clutter_threads_add_frame_source_full) + (clutter_threads_add_frame_source): New public functions to wrap a + frame source and grab the Clutter mutex. + + * clutter/clutter-timeout-pool.c: Now calculates the timeout + expiration times in the same way as a frame source does so that it + counts time in frame intervals instead of setting the next + expiration time as an offset from the current time. + +2008-04-17 Emmanuele Bassi + + * clutter/clutter-fixed.c: + (clutter_value_transform_fixed_int), + (clutter_value_transform_fixed_double), + (clutter_value_transform_fixed_float), + (clutter_fixed_get_type): Add GValue transformation functions + for ClutterFixed; copying a CLUTTER_TYPE_FIXED GValue into + a G_TYPE_FLOAT/G_TYPE_DOUBLE one will automatically transform + the fixed point representation into a floating point one. Also + add the G_TYPE_INT transformation function to do a plain + fixed->int copy. + + * clutter/clutter-units.c: + (clutter_value_transform_unit_int), + (clutter_unit_get_type): Add a unit->int transformation function. + +2008-04-17 Emmanuele Bassi + + * clutter/clutter-fixed.c (clutter_value_get_fixed): Fix typo + in the function name. + +2008-04-17 Emmanuele Bassi + + * clutter/clutter-units.c (clutter_value_get_unit): Fix typo + in the function name. + +2008-04-17 Emmanuele Bassi + + * HACKING: Amend coding style and tenets, as it is now possible + to install and use unit based properties in a safe way. + +2008-04-17 Emmanuele Bassi + + * clutter/clutter-units.h: + * clutter/clutter-fixed.h: Add boundaries for fixed point + and units values. + + * doc/reference/clutter-sections.txt: Update the documentation. + +2008-04-17 Emmanuele Bassi + + * autogen.sh: Try to continue even if we don't have gtk-doc + installed; this will obviously won't work if you don't pass + --disable-docs --disable-gtk-doc to autogen.sh as well. + +2008-04-17 Emmanuele Bassi + + * clutter/clutter-fixed.[ch]: Add a ClutterFixed fundamental + type, and wrappers for storing it into GValues; also add a + GParamSpec subclass for defining parameters holding + ClutterFixed values. This allows creating GObject properties + using fixed point values. + + * doc/reference/clutter-sections.txt: Document the newly + added API. + +2008-04-17 Emmanuele Bassi + + * clutter/Makefile.am: Add clutter-units.c + + * clutter/clutter-units.[ch]: Add a ClutterUnit fundamental + type, and wrappers for storing it into GValues; also add a + GParamSpec subclass for defining parameters holding ClutterUnit + values. This allows creating GObject properties using units. + + * doc/reference/clutter-sections.txt: Document the newly + added API. + +2008-04-15 Matthew Allum + + Work related to #873; + + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-backend-glx.h: + * clutter/x11/clutter-x11-texture-pixmap.c: + * clutter/x11/clutter-x11-texture-pixmap.h: + General cleanup of texture pixmap code, adding; + - Pixmap dimentions and depth now auto probed, read only props. + - More X safety traps + - Add support for optionally tracking damage and automatically + updating texture. + + * clutter/glx/clutter-glx-texture-pixmap.c: + * clutter/glx/clutter-glx-texture-pixmap.h: + General cleanup and some safety additions. Needs more work so + 'proper' subclass - dependent on new COGL. + + * clutter/x11/clutter-backend-x11.c: (clutter_x11_remove_filter): + Invert g_return_if check. + + * configure.ac: + Pull in XComposite and XDamage (at least for now) + + * tests/Makefile.am: + * tests/test-pixmap.c: + Add a modified test from Johan for above. + +2008-04-15 Neil Roberts + + Added support for foreign windows to the Win32 backend. + + * clutter/win32/clutter-stage-win32.c + (clutter_stage_win32_request_coords): Don't resize foreign + windows. + (clutter_stage_win32_unrealize): Don't destroy foreign windows. + (clutter_stage_win32_init): Added initialiser for is_foreign_win. + (clutter_win32_get_stage_from_window): Resort to looking in the + stage list if the window isn't the right window class so that it + can still find stages with foreign windows. + (clutter_win32_set_stage_foreign): New public function to set a + foreign window for a stage. + + * clutter/win32/clutter-event-win32.c + (clutter_win32_disable_event_retrieval): New public function to + disable event retrieval. + (message_translate): Don't handle WM_SIZE or WM_MOVE for foreign + windows. + + * clutter/win32/clutter-backend-win32.h (struct + _ClutterBackendWin32): Added a flag to disable event retrieval + + * clutter/win32/clutter-backend-win32.c + (clutter_backend_win32_ensure_context): Update debug note to + include whether the stage is foreign or not. + +2008-04-15 Øyvind Kolås + + * clutter/clutter-actor.c: (clutter_actor_set_shader_param): queue a + redraw when a shader_param is set. Normalized some gtk-doc syntax in + some of the api documentation. + +2008-04-15 Øyvind Kolås + + * clutter/clutter-group.c: fixed typo in docs. + +2008-04-14 Matthew Allum + + * clutter/eglx/clutter-stage-egl.c: + Actually set wm protocols on eglx stage windows. Fixes issues with + cloising stages and cleanup. + +2008-04-14 Matthew Allum + + * clutter/cogl/gles/cogl.c: (cogl_color): + Disable use of color4ub, issues with latest MBX SDL (#857) + + * clutter/eglx/clutter-backend-egl.c: + * clutter/eglx/clutter-stage-egl.c: + * configure.ac: + Fixup for the eglx backend to work with new backend/multistage code. + Some issues remain in destroying stages. + +2008-04-14 Neil Roberts + + Bug #853 + + * clutter/clutter-timeline.c (clutter_timeline_get_progressx): Fix + arithmetic for calculating the reverse progress when the timeline + is backward. (Should subtract from one instead of taking the + reciprocal). + +2008-04-13 Neil Roberts + + Upgraded the Win32 backend to work with the multi-stage + subclassing code. + + * clutter/win32/clutter-stage-win32.h: + * clutter/win32/clutter-stage-win32.c: Now inherits from + ClutterGroup and implements ClutterStageWindow instead of + inheriting directly from ClutterStage. + + * clutter/win32/clutter-event-win32.c (message_translate): Now + takes an extra parameter to return whether DefWindowProc should be + called. This is needed to prevent the default WM_CLOSE handler + from destroying the window. + + * clutter/win32/clutter-backend-win32.c + (clutter_backend_win32_dispose): Destroy all of the stages using + g_slist_foreach as per bug #871. Now also destroys the GL context. + (clutter_backend_win32_get_features): Added assertions to ensure + there is a valid GL context. + (clutter_backend_win32_ensure_context): Accepts NULL stage. Gets + implementation pointer from the stage. + +2008-04-11 Emmanuele Bassi + + * clutter/clutter-container.c: + (clutter_container_get_type): Relax the precondition on the + implementations of ClutterContainer from ClutterActor to + GObject. + +2008-04-11 Emmanuele Bassi + + * README: Add a note about the Shader API changes. + + * clutter/clutter-deprecated.h: Add deprecation symbols. + + * clutter/clutter-shader.[ch]: Rename the :bound read-only + property to :compiled. Also rename clutter_shader_bind() + and clutter_shader_is_bound() to clutter_shader_compil() and + clutter_shader_is_compiled(), respectively. + + * clutter/glx/clutter-stage-glx.c: + (clutter_stage_glx_unrealize): Update after + clutter_shader_release_all() rename. + + * tests/test-shader.c (button_release_cb), (main): Update. + +2008-04-10 Emmanuele Bassi + + * clutter/eglx/clutter-backend-egl.c: + (clutter_backend_egl_ensure_context): Sync up with the GLX + backend. + + (clutter_backend_egl_create_stage): Dumb compilation fix. + + * clutter/glx/clutter-backend-glx.c: + (clutter_backend_glx_create_stage): Unref the stage if we are + erroring out. + +2008-04-10 Emmanuele Bassi + + * clutter/eglx/clutter-stage-egl.c: + (clutter_stage_egl_realize): Sync up with the GLX backend. + +2008-04-09 Emmanuele Bassi + + * clutter/Makefile.am: Update the regular expression to match + all the namespaces we actually use. Thanks to Neil Roberts for + spotting this. A make distclean is needed. + + * clutter/cogl/gl/Makefile.am: + * clutter/cogl/gles/Makefile.am: + * clutter/json/Makefile.am: + * clutter/pango/Makefile.am: Revert previous commit. + +2008-04-09 Emmanuele Bassi + + * clutter/cogl/Makefile.am: + * clutter/cogl/gl/Makefile.am: + * clutter/cogl/gles/Makefile.am: + * clutter/json/Makefile.am: + * clutter/pango/Makefile.am: Fix the visibility of all the + symbols, for the main library and the statically linked ones. + +2008-04-09 Emmanuele Bassi + + * autogen.sh: Clean up a bit + + * clutter/clutter-fixed.[ch]: + (clutter_double_to_fixed), + (clutter_double_to_int), + (clutter_double_to_uint): Make these functions public, as they + are expanded by their respective macros. This fixes the errors + from the linker trying to resolve their name. + +2008-04-09 Neil Roberts + + Applied patch from bug #871 + + * clutter/x11/clutter-backend-x11.c (clutter_backend_x11_dispose): + Call g_slist_foreach instead of iterating over the stage_manager + list manually when deleting stages. Otherwise the 'next' pointer + of the list node can get corrupted when the actor removes itself + from the list. + + * clutter/clutter-stage.c (clutter_stage_dispose): Call + clutter_actor_unrealize in the dispose handler. This fixes + problems where the dispose handler for the ClutterStageWrapper + can't deselect the GL context until the stage is unrealized. + +2008-04-04 Emmanuele Bassi + + * clutter/clutter-backend.c: Add more debug messages + + * clutter/clutter-stage.h: + * clutter/clutter-stage.c: + (clutter_stage_is_default): Add a function to check if the + stage is the default one. + + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-stage-glx.c: + * clutter/x11/clutter-stage-x11.c: Keep the stage wrapper + and implementation flags in sync, to ensure that the GL + context is always set. + +2008-04-04 Neil Roberts + + * README: Fixed typo + +2008-04-04 Matthew Allum + + * README: + Add a note on new show-on-set-parent prop and stage subclassing. + +2008-04-04 Emmanuele Bassi + + Bug #864 - Allow instantiating and subclassing of ClutterStage + + * clutter/Makefile.am: Add clutter-stage-window.[ch] + + * clutter/clutter-stage-manager.c: + (_clutter_stage_manager_remove_stage): Do not warn if removing + a stage we don't manage, as we might be invoked multiple times + during a ClutterState dispose sequence. + + * clutter/clutter-actor.c: + * clutter/clutter-backend.[ch]: + * clutter/clutter-main.c: + * clutter/clutter-private.h: + * clutter/clutter-stage.[ch]: Make ClutterStage a proxy actor, + with a private actor implementing the ClutterStageWindow + interface for handling the per-backend realization, painting + and unrealization, plus all the windowing system abstraction. + + * clutter/x11/clutter-event-x11.c: + * clutter/x11/clutter-stage-x11.[ch]: Port the X11 backend + to the new backend and stage API and semantics. + + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-stage-glx.c: Port the GLX backend to + the new backend and stage API and semantics. + + * clutter/eglx/clutter-backend-egl.[ch]: + * clutter/eglx/clutter-stage-egl.[ch]: Port the EGLX backend + to the new backend and stage API and semantics (untested). + + * tests/test-multistage.c (on_button_press): Rename + clutter_stage_create_new() to clutter_stage_new(). + +2008-04-04 Neil Roberts + + Applied patch from bug #810. + + * clutter/x11/clutter-event-x11.c (event_translate): Set a flag + when resizing the stage from a ConfigureNotify event. + + * clutter/x11/clutter-stage-x11.c + (clutter_stage_x11_request_coords): Don't try to resize the window + again if the flag is set. + (clutter_stage_x11_init): Added initialiser for the flag. + + * clutter/x11/clutter-stage-x11.h (struct _ClutterStageX11): Added + the flag. + +2008-04-04 Matthew Allum + + * clutter/clutter-actor.c: + Remove uneeded stage private member. + Add show-on-set-parent prop and make so by default Actors are + now automatically shown when reparented (#791) + + * clutter/eglx/clutter-backend-egl.c: + * clutter/cogl/gles/cogl.c: + A couple of minor comments. + + * clutter/eglnative/Makefile.am: + Add missing clutter-egl.h header (back port from trunk) + + * tests/test-actors.c: + Modify to take advantage of new show-on-set-parent functionality. + +2008-04-03 Emmanuele Bassi + + * clutter/Makefile.am: Only export symbols matching "^clutter.*", + to avoid exposing the library-private symbols starting with + an underscore. + +2008-04-03 Emmanuele Bassi + + * clutter/clutter-alpha.c: ClutterAlpha is an InitiallyUnowned + subclass. This should fix a lot of leakage. (#860, Neil Roberts) + +2008-04-03 Emmanuele Bassi + + * clutter/glx/clutter-backend-glx.c: + (clutter_backend_glx_get_features): Assert if we don't have a + GL context here or if it's not matched to a drawable. Asserting + might seem too drastic, but if we don't have a valid GL context + here then Clutter will segfault anyway, and I'll take an assert() + over a hard to read, deep in GLX guts backtrace any day (and + twice on a monday). + + * clutter/x11/clutter-backend-x11.c: + (clutter_backend_x11_get_features): No need for a variable here. + +2008-04-01 Matthew Allum + + * clutter/clutter-backend.c: + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-stage-glx.c: + Allow NULL to be passed to _clutter_backend_ensure_context + which essentially clears GL context. This is hooked into stage + unrealisation. Isn't yet quite bulletproof. + Fixes issues with gtk-embed crasher (thanks to Neil). + +2008-04-1 Robert Bragg + + * clutter/glx/clutter-glx-texture-pixmap.c: + In clutter_glx_texture_pixmap_dispose; trap X errors around + glXDestroyGLXPixmap so we can't die due to BadDrawable errors. + +2008-03-31 Matthew Allum + + * README: + Add notes on new multistage feature. + + * clutter/clutter-stage-manager.c: + Dont ref contained stages. + + * clutter/clutter-stage.c: + Automatically remove stage from stage manager on finalisation. + Cleans up warnings when a stage is destroyed. + + * clutter/clutter-backend.h: + * clutter/glx/clutter-backend-glx.c: + Minor formatting cleanups. + + * clutter/glx/clutter-stage-glx.c: + * configure.ac: + * clutter/clutter-version.h.in: + Add a general CLUTTER_STAGE_TYPE define, should be useful for + evntual stage subclassing and creating with g_object_new() + +2008-03-30 Neil Roberts + + * clutter/win32/clutter-backend-win32.c + (clutter_backend_win32_init): Added a call to + timeBeginPeriod. Without this the frame rates are terrible because + the glib timeouts are not accurate enough. However this requires + Glib >= 2.16.0 to take any effect because of a change in the way + g_poll is implemented. See revision 6597 of glib. + (clutter_backend_win32_finalize): Added a call to timeEndPeriod. + + * configure.ac: Added -lwinmm to the library dependencies for the + Win32 backend. + +2008-03-30 Neil Roberts + + * clutter/win32/clutter-win32.h: + * clutter/win32/clutter-stage-win32.h: + * clutter/win32/clutter-stage-win32.c: + * clutter/win32/clutter-event-win32.c: + * clutter/win32/clutter-backend-win32.h: + * clutter/win32/clutter-backend-win32.c: + Upgraded for multi-stage support. + + * clutter/win32/clutter-stage-win32.c + (clutter_stage_win32_request_coords): Fixed so that it doesn't set + the position or size if it hasn't changed. This was causing + problems when the window was resized using the top left corner. In + that case the window receives resize and move messages separately + which caused the window to flash at a different size or position + while one message was handled before the other. + (clutter_stage_win32_realize): Added PFD_GENERIC_ACCELERATED to + the list of pixel format flags to force it to use hardware + acceleration. + +2008-03-28 Matthew Allum + + * clutter/Makefile.am: + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * clutter/clutter-backend.c: + * clutter/clutter-backend.h: + * clutter/clutter-debug.h: + * clutter/clutter-event.c: + * clutter/clutter-event.h: + * clutter/clutter-feature.h: + * clutter/clutter-group.h: + * clutter/clutter-main.c: + * clutter/clutter-main.h: + * clutter/clutter-private.h: + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + * clutter/clutter-stage-manager.c + * clutter/clutter-stage-manager.h + * clutter/clutter-types.h: + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-backend-glx.h: + * clutter/glx/clutter-stage-glx.c: + * clutter/glx/clutter-stage-glx.h: + * clutter/x11/clutter-backend-x11.c: + * clutter/x11/clutter-backend-x11.h: + * clutter/x11/clutter-event-x11.c: + * clutter/x11/clutter-stage-x11.c: + * clutter/x11/clutter-x11.h: + * tests/Makefile.am: + * tests/test-multistage.c: + Initial commit of multi stage support (mostly a merge from the + clutter-multistage branch). + Note, this commit will break all backends except glx. + +2008-03-26 Neil Roberts + + * clutter/win32/clutter-win32.h: Added gtk-doc documentation for + the Win32 backend section. + + * clutter/win32/clutter-stage-win32.c + (clutter_win32_get_stage_window): Fixed punctuation in the + documentation. + + * README: Added notes about the Win32 backend. + +2008-03-26 Neil Roberts + + * clutter/win32/clutter-event-win32.c (clutter_event_check): + Removed the pointless parameter in the call to check_msg_pending. + (check_msg_pending): Fixed to use PeekMessageW instead of + PeekMessage. + +2008-03-25 Neil Roberts + + Added a native Win32 WGL backend. + + * configure.ac: Added the 'win32' flavour. + + * clutter/cogl/gl/cogl.c (cogl_get_proc_address): Added an ifdef + to use wglGetProcAddress with the Win32 backend. + + * clutter/Makefile.am (DIST_SUBDIRS): Added the win32 directory. + + * clutter/win32/clutter-win32.pc.in: + * clutter/win32/clutter-win32.h: + * clutter/win32/clutter-stage-win32.h: + * clutter/win32/clutter-stage-win32.c: + * clutter/win32/clutter-event-win32.c: + * clutter/win32/clutter-backend-win32.h: + * clutter/win32/Makefile.am: + * clutter/win32/clutter-backend-win32.c: New files. + +2008-03-19 Emmanuele Bassi + + * clutter/clutter-model.[ch]: Add a ::copy() virtual function + for copying iterators. + + * clutter/clutter-list-model.c: + (clutter_list_model_iter_copy), + (clutter_list_model_iter_class_init): Implement the ::copy() + function inside the ListModel iterator subclass. + +2008-03-19 Emmanuele Bassi + + * clutter/clutter-group.c: + * clutter/clutter-texture.c: Use CLUTTER_ACTOR_IS_VISIBLE() + and not CLUTTER_ACTOR_IS_MAPPED(). + +2008-03-19 Emmanuele Bassi + + * clutter/clutter-score.[ch]: Small clean ups and refactoring. + Use gulong instead of guint, so we have a bigger id space for + the timelines inside a Score. + +2008-03-19 Chris Lord + + * clutter/clutter-actor.c: + (_clutter_actor_apply_modelview_transform), (clutter_actor_paint): + Apply clip inside paint function instead of transform function + +2008-03-18 Emmanuele Bassi + + * clutter/clutter-score.c: Update documentation. + +2008-03-18 Emmanuele Bassi + + * clutter/clutter-score.[ch]: Remove all the API changes, and + just add a clutter_score_append_at_marker(); the implementation + remains the same, but the marker must be explicitly created by + the developer. The ids are no longer used to create implicit + markers, so they can return to be unsigned integers. (#450) + + * clutter/clutter-timeline.[ch]: + (clutter_timeline_has_marker): Add a function to query a timeline + for a marker being set. + + * tests/test-score.c (main): Update with the API changes. + + * clutter.symbols: Update exported symbols. + +2008-03-18 Emmanuele Bassi + + * clutter/clutter-texture.c: Small clean ups in the coding style. + +2008-03-18 Emmanuele Bassi + + * clutter.symbols: Add new symbols + + * clutter/clutter-score.[ch]: Use the newly added marker API + on the timelines to implement attaching timelines at specific + points, using either milliseconds or frames. + + * tests/test-score.c (main): Test the new API. + +2008-03-18 Emmanuele Bassi + + * clutter/clutter-marshal.list: Add signature for the + ::marker-reached signal marshaller. + + * clutter/clutter-timeline.[ch]: Add timeline marker API; + using markers it is possible to add a unique identifier to + a particular frame of the timeline, and receive a signal + notification when reaching that particular marker while + playing the timeline. (#641) + + * tests/test-timeline.c: Update the test case to check for + the marker-reached signal emission. + + * clutter.symbols: Add new symbols. + +2008-03-10 Øyvind Kolås + + * tests/test-shader.c: improved readability of fragment shader + examples by factoring out common bits into FRAGMENT_SHADER_BEGIN and + FRAGMENT_SHADER_END macros. + +2008-03-09 Matthew Allum + + * clutter/clutter-id-pool.c: (clutter_id_pool_free): + Use g_slice_free not g_free. + * clutter/clutter-main.c: (_clutter_do_pick): + Dont 'over read' the framebuffer when picking (#839, Neil Roberts) + +2008-03-07 Øyvind Kolås + + Refactored the integer id->ClutterActor mapping code to be a self + contained data structure. + + * clutter/clutter-id-pool.[ch]: new files. + * clutter/Makefile.am: added clutter-id-pool.[ch] + * clutter/clutter-private.h: use a ClutterIDPool instead of GArray and + GSList to keep track of the reusable ids. + * clutter/clutter-actor.c: moved id pool logic away. + * clutter/clutter-main.c: simplified id pool creation/finalization. + +2008-03-07 Robert Bragg + + * clutter/clutter-timeline.c: + Timeline changes to fix the issues identified in bugzilla #439 + + Notably, this includes some tweaks to timeline semantics. + So e.g. for a + + 10 frame timeline here are some points about the new timeline code: + + - When you create a timeline it starts with current_frame_num == 0 + + - After starting a timeline, the first timeout is for + current_frame_num == 1 (Notably it isn't 0 since there is a delay + before the first timeout signals so re-asserting the starting point + would give a longer than average first frame.) + + - For a non looping timeline the last timeout would be for + current_frame_num == 10 + + - For a looping timeline the timeout for current_frame_num == + 10 would be followed by a timeout for current_frame_num == 1 + and frame 0 is considered == frame 10. + + - Asking for a timeline of N frames might better be described + as asking for a timeline of _length_ N. + + Warning: Although I tried to test things, I guess it's quite + likely that this breaks somthing depending on a specific quirk + of the previous timeline code. + +2008-03-06 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_set_anchor_point_from_gravity): Fix a stupid + conversion from pixels to units that should I not have made. + +2008-03-06 Emmanuele Bassi + + * README: Update the release notes. + +2008-03-06 Gwenole Beauchesne + + Signed off by: Emmanuele Bassi + + * clutter/clutter-group.c (clutter_group_real_lower): Fix to + actually lower the actor under the 'above' actor. (#822) + +2008-03-06 Emmanuele Bassi + + * clutter/clutter-entry.h: + * clutter/clutter-entry.c: + (clutter_entry_handle_key_event_internal), + (clutter_entry_key_press), (clutter_entry_class_init), + (clutter_entry_handle_key_event): Provide a default class handler + for the key-press-event, so that giving key focus to an entry will + automatically make it work. This deprecates the + clutter_entry_handle_key_event() function. (#824) + + * tests/test-entry.c (main): Remove the handle_key_event() + machinery, and just give focus to the entry. + +2008-03-06 Chris Lord + + * clutter/clutter-model.c: (clutter_model_set_sorting_column): + Don't disable sorting on column 0 + +2008-03-06 Emmanuele Bassi + + Add support for the anchor point inside ClutterScript (#834, + David Stanczak) + + * clutter/clutter-actor.c: + (clutter_actor_set_property), + (clutter_actor_get_property), + (clutter_actor_class_init): Add the :anchor-x and :anchor-y + properties to the ClutterActor class. + + (clutter_actor_set_anchor_point), + (clutter_actor_set_anchor_pointu), + (clutter_actor_set_anchor_point_from_gravity): Reimplement + the pixel based and gravity based API using the units based + one. Emit the ::notify signal for the :anchor-x and :anchor-y + properties. + + (parse_units), + (clutter_actor_parse_custom_node): Parse the :anchor-x and + :anchor-y properties using the custom units format (mm, px, + pt and %). + + * tests/test-script.json: Test the newly added properties. + +2008-03-05 Emmanuele Bassi + + * configure.ac: Add "osx" the the AC_HELP_STRING of the flavour + selection. (#831, Peter Enzerink) + +2008-03-04 Emmanuele Bassi + + * clutter/clutter-main.c (clutter_do_event): Do not throttle the + motion events if the per-actor delivery has been disabled. + +2008-03-04 Øyvind Kolås + + * clutter/pango/pangoclutter-render.c: (draw_glyph): use g_slice_new0 + instead of g_slice_new when allocating the glyph_info, avoiding a + branch based on uninitialized memory. + +2008-03-03 Emmanuele Bassi + + * Makefile.am: Do not recurse into doc if we did not explicitly + enabled the documentation build; we just recurse into doc if we + are doing a dist or a distcheck. + +2008-02-29 Øyvind Kolås + + Reuse the numeric id's used for picking actors to avoid the potential + of overflowing the id numbers when continusly creating and destroying + actors on long running applications for 16bpp. + + * clutter/clutter-private.h: replaced hashtable with GArray and a + GSList for available slots in the array. + * clutter/clutter-actor.c: (create_actor_id): function to create an + actor->id mapping, (release_actor_id): function to mark an existing id + as available for reuse. + * clutter/clutter-main.c: (clutter_context_free): added utility + function for cleaning up the context, + (clutter_get_actor_by_gid): use the GArray for looking up actors. + +2008-02-26 Emmanuele Bassi + + * clutter/clutter-alpha.c: + (clutter_exp_inc_func), (clutter_exp_dec_func): Clamp the value + of the alpha function between [0, MAX_ALPHA]. (#800) + +2008-02-25 Emmanuele Bassi + + * clutter/clutter-main.c (emit_event): Fix the last commit + which inverted a condition. + +2008-02-25 Emmanuele Bassi + + * clutter/clutter-actor.c: Remove the usage of g_return_if_fail() + from static functions: either assert or use g_warning() to check + internal state, as g_return_if_fail() can be compiled out. + + * clutter/clutter-main.c: Ditto as above. + +2008-02-25 Tomas Frydrych + + * clutter/clutter-texture.c: + (texture_update_data): + Set alignment based on actual data rowstride, not the texture + width. + +2008-02-21 Tomas Frydrych + + * clutter/x11/clutter-backend-x11.h: + * clutter/x11/clutter-event-x11.c: + * clutter/x11/clutter-x11.h: + (clutter_x11_handle_event): + (clutter_x11_disable_event_retrieval): + Functions to allow to hook into external XEvent retrieval (for + example when using clutter with gtk); NB: this API is tentative. + +2008-02-21 Emmanuele Bassi + + * clutter/x11/clutter-event-x11.c (event_translate): Ignore + PropertyNotify events if they don't match our window. + + * clutter/x11/clutter-stage-x11.c: + (clutter_stage_x11_request_coords): Chain up to the parent's + request coords. + +2008-02-21 Emmanuele Bassi + + * clutter/x11/clutter-event-x11.c (event_translate): Ignore + ConfigureNotify events if we are painting on a foreign window. + + * clutter/x11/clutter-stage-x11.c: + (clutter_stage_x11_request_coords): Reliquish control of the + window size, if we are painting on a foreign window. This fixes + the GtkClutterEmbed widget. + +2008-02-20 Emmanuele Bassi + + * clutter/clutter-timeline.c (clutter_timeline_set_delay): Relax + the condition to allow 0 msecs of delay (meaning: no delay). + +2008-02-20 Tomas Frydrych + + * clutter/Makefile.am: + Added libclutter_ ... _la_DEPENDENCIES to fix dependency tracking. + +2008-02-20 Tomas Frydrych + + * clutter/x11/clutter-x11.h: + * clutter/x11/clutter-backend-x11.c: + (clutter_x11_set_display): + Function to set X display connection prior to calling + clutter_init(); stripped loads of trailing space. + +2008-02-20 Tomas Frydrych + + * clutter/clutter-marshal.list: + * clutter/glx/Makefile.am: + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-backend-glx.h: + * clutter/glx/clutter-glx.h: + * clutter/x11/Makefile.am: + ClutterX11TexturePixmap and ClutterGLXTexturePixmap actors (#713; + patch by Johan Bilien). + +2008-02-20 Emmanuele Bassi + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + (clutter_actor_get_abs_opacity): Add function that does what + get_opacity() does now... + + (clutter_actor_get_opacity): ... and make get_opacity() do what + it's supposed to be doing. The original get_opacity() returned + a composited value, and there's no way to actually extract the + real opacity value set with set_opacity(). + + * clutter/clutter-clone-texture.c: + * clutter/clutter-rectangle.c: + * clutter/clutter-texture.c: Update to use get_abs_opacity(). + + * clutter/clutter-entry.c: + * clutter/clutter-label.c: Ditto. Also, never change the stored + alpha value. (#804) + + * tests/Makefile.am: + * tests/test-opacity.c: Test suite for the get_opacity() and + get_abs_opacity() API, and correct opacity handling. + + * README: Add note about the change in get_opacity(). + +2008-02-19 Chris Lord + + * clutter/clutter-model.c: (clutter_model_resort): + Don't return when there's no sort function set, leave that to the + model sub-class + +2008-02-18 Emmanuele Bassi + + * configure.ac: + * README: Post stable release bump to 0.7.1 + +2008-02-18 Emmanuele Bassi + + * README: + * NEWS: Release 0.6.0 + +2008-02-18 Emmanuele Bassi + + * clutter/clutter-list-model.c: + (clutter_list_model_iter_set_value): Fix a typo in the conversion + code. + +2008-02-18 Chris Lord + + * README: + Fix spelling mistake and a typo + +2008-02-18 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_get_box_from_vertices): Avoid a masking warning + caused by math.h utter braindamage. + +2008-02-18 Emmanuele Bassi + + * clutter/clutter-actor.c: Document the fact that ancestor can + be NULL in the relative transformation API, and what are the + effects. + +2008-02-15 Matthew Allum + + * clutter/pango/pangoclutter-render.c: (draw_glyph): + More safety checks (#796, Tero Saarni) + +2008-02-15 Chris Lord + + * clutter/clutter-entry.c: + * clutter/clutter-group.c: + * clutter/clutter-label.c: + * clutter/clutter-rectangle.c: + * clutter/clutter-texture.c: + More documentation fixes + +2008-02-15 Chris Lord + + * clutter/clutter-entry.c: (clutter_entry_class_init): + More documentation fixes + +2008-02-15 Chris Lord + + * clutter/clutter-label.c: (clutter_label_class_init): + More documentation fixes + +2008-02-15 Chris Lord + + * clutter/clutter-clone-texture.c: + * clutter/clutter-texture.c: (clutter_texture_class_init): + More documentation fixes + +2008-02-15 Chris Lord + + * clutter/clutter-actor.c: + * clutter/clutter-container.c: + * clutter/clutter-media.c: + * clutter/clutter-rectangle.c: + * clutter/clutter-stage.c: (clutter_stage_class_init): + * clutter/clutter-stage.h: + * clutter/clutter-texture.c: + * doc/reference/clutter-docs.sgml: + Fix more documentation + +2008-02-15 Emmanuele Bassi + + * clutter/clutter-actor.[ch]: + * clutter/clutter-types.h: + * doc/reference/clutter-docs.sgml: Fix a lot of documentation. + +2008-02-15 Matthew Allum + + * clutter/cogl/gles/cogl.c: (cogl_paint_init): + Remove depth test getting turned on by default (unlike GL backend) + +2008-02-15 Tomas Frydrych + + * configure.ac: + * clutter/clutter-version.h.in: + * build/msvc_2k5/clutter-version.h: + Removed unused --without-fpu configure option and CLUTTER_NO_FPU + macro + +2008-02-15 Tomas Frydrych + + * build/mingw/README: + * build/mingw/mingw-cross-compile.sh: + Script that automates cross compilation with mingw by Neil Roberts + + +2008-02-15 Emmanuele Bassi + + * clutter/clutter-actor.[ch]: Rename + clutter_actor_get_box_from_vertices() to + clutter_actor_box_get_from_vertices(). + + * clutter/clutter-group.c (clutter_group_query_coords): Fix the + query_coords() implementation. + +2008-02-15 Tomas Frydrych + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + (clutter_group_query_coords): + Added function to translate vertex array to a bounding box. + + (clutter_actor_is_scaled): + (clutter_actor_is_rotated): + Fixed documentation. + +2008-02-15 Tomas Frydrych + + * clutter/clutter-group.c: (clutter_group_query_coords): + Disabled new code taking into account actor scale and rotation. + +2008-02-14 Tomas Frydrych + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + (clutter_actor_is_scaled): + (clutter_actor_is_rotated): + Convenience functions to test whether actor is scaled or rotated. + + (clutter_actor_apply_relative_transform_to_point): + Removed unused variable. + + * clutter/clutter-group.c: + (clutter_group_query_coords): + Use clutter_actor_get_relative_vertices() to calculate bounding + boxes of children that are scaled or rotated. + +2008-02-14 Tomas Frydrych + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + (clutter_actor_get_relative_vertices): + (clutter_actor_apply_relative_transform_to_point): + Functions to calculate actor vertices in the plane of a given + ancestor. + +2008-02-12 Chris Lord + + * clutter/clutter-texture.c: (texture_get_tile_pixbuf), + (clutter_texture_get_pixbuf): + Fix copying textures to pixbufs for tiled textures and correct #ifndef + typo + + * clutter/clutter-util.c: + Amend documentation + +2008-02-12 Matthew Allum + + * clutter/clutter-texture.c: (texture_get_tile_pixbuf): + ifdef out 'leaked' GL only API call. + +2008-02-12 Tomas Frydrych + + * clutter/clutter-texture.c (texture_update_data): + Fixed incorrect calculation of offset into texture data (needs to + use width of the texture, not of the updated area). + +2008-02-12 Tomas Frydrych + + * clutter/clutter-texture.c (texture_update_data): + Fixed incorrect aligment of texture data. + +2008-02-12 Tomas Frydrych + + * clutter/x11/clutter-event-x11.c (event_translate): + Ignore events not directed at the stage window once they have been + passed to the filter functions. + +2008-02-11 Matthew Allum + + * clutter/clutter-actor.c: + Minor documentation tweak to class description. + + * clutter/clutter-behaviour-scale.c: + 'Force' start + end vals of scale behaviour + (#779, Havoc Pennington) + +2008-02-11 Emmanuele Bassi + + * README: + * NEWS: Release 0.5.6 + + * configure.ac: Post release bump to 0.5.7. + + * clutter/clutter-behaviour-scale.c: + * tests/test-fbo.c: Fix compilation warnings. + +2008-02-11 Tomas Frydrych + + * clutter/clutter-actor.c (clutter_actor_transform_stage_point): + Moved part of the calculation to floating point to avoid overflow + of ClutterFixed range for large actors (bug 613). + +2008-02-10 Matthew Allum + + * clutter/osx/clutter-stage-osx.c + Fix up a couple of typos breaking build. + +2008-02-08 Emmanuele Bassi + + * clutter/clutter-actor.c: Add actor box diagram and notes. + +2008-02-08 Emmanuele Bassi + + * clutter/clutter-behaviour-path.c: Move the nice graph and + description from the Path behaviour... + + * clutter/clutter-behaviour.c: ... to the main Behaviour class. + +2008-02-08 Emmanuele Bassi + + * clutter/clutter-behaviour-path.c: Add a paragraph describing + the effects of different alpha functions on the path behaviour. + +2008-02-08 Emmanuele Bassi + + * clutter/clutter-actor.c: Reference the newly added event-flow.png + + * clutter/clutter-alpha.c: Ditto, with alpha-func.png + + * clutter/clutter-texture.c: Fix the XML. + +2008-02-08 Emmanuele Bassi + + * clutter/clutter-behaviour-path.c: Reference the newly + added image showing the effects of different alpha functions + on the same path behaviour. + + * configure.ac: Find out the prefix of some of the libraries + we depend upon, so that gtk-doc can fix the references for us. + +2008-02-08 Matthew Allum + + * clutter/clutter-texture.c: + Tidy up offscreen code, adding into realize/unrealize. + Add more safety code. + Improve documentation. + +2008-02-08 Emmanuele Bassi + + * clutter/clutter-script.c: + (resolve_alpha_func): Use a whitelist containing the alpha function + provided by Clutter, as a fallback in case g_module_open() does not + work. + + (clutter_script_parse_alpha): Add an explicit warning in case we + cannot find the alpha function used inside a UI definition. + +2008-02-07 Tomas Frydrych + + * clutter/clutter-group.c (clutter_group_query_coords): + Take into account the anchor point when calculating the box size. + +2008-02-07 Emmanuele Bassi + + * clutter/clutter-actor.c: Add a note on clutter_actor_set_size() + reguarding groups. + + * clutter/clutter-group.c: Clarify group sizing. + +2008-02-07 Øyvind Kolås + + * tests/test-shader.c: (button_release_cb): added simplified + implementation of a box-blur shader from Gwenole Beauchesne that + should work on GLSL implementing low-end IGPs not implementing + dynamic branching. The original code used crashed some of these + due to bugs in drivers or similar. Resolves bug #710. + +2008-02-07 Tomas Frydrych + + * tests/test-actors.c: + Reverted previous change. + +2008-02-07 Tomas Frydrych + + * clutter/clutter-actor.c: + (clutter_actor_set_property): + Fixed handling of PROP_ROTATE_CENTER_Y, ROTATE_CENTER_Z + + * tests/test-actors.c: + Adjusted to use anchor point for both group and hands. + +2008-02-07 Neil J. Patel + + * tests/test-actors.c: (frame_cb), (main): + Changed set_anchor to move_anchor. + Changed clutter_actor_rotate x & y values to 0,0. + Switched on scaling because it seems to work without drifting. + +2008-02-07 Emmanuele Bassi + + * clutter/clutter-script-parser.c: + (clutter_script_get_type_from_symbol), + (clutter_script_get_type_from_class): Use BIND_LAZY flag + when looking at the symbols, so we don't load them all up. + + * clutter/clutter-script.c (resolve_alpha_func): Ditto as above. + +2008-02-07 Øyvind Kolås + + * clutter/clutter-actor.c: + (_clutter_actor_apply_modelview_transform): perform translation as + well as anchor point adjustment based on self not being stage (and + not by self not being an orphan). + +2008-02-07 Matthew Allum + + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + * clutter/eglnative/clutter-stage-egl.c: + * clutter/eglx/clutter-stage-egl.c: + * clutter/osx/clutter-stage-osx.c: + * clutter/sdl/clutter-stage-sdl.c: + * clutter/x11/clutter-stage-x11.c: + Add at least somne basic offscreen handling into all backends. + Remove unused clutter_stage_set_offscreen vfunc. (#549) + + * clutter/clutter-texture.c: + Minor API doc tweak, noting rowstride source in set_area + +2008-02-07 Emmanuele Bassi + + * clutter/clutter-score.c (traverse_children): Actually implement + clutter_score_list_timelines(). + + * tests/test-score.c (main): Test clutter_score_list_timelines(). + +2008-02-07 Matthew Allum + + * clutter/pango/pangoclutter-render.c: + Warn if requested glyph is too big for underlying texture cache. + (see #666) + +2008-02-07 Matthew Allum + + * clutter/clutter-texture.c: (texture_upload_data): + Remove random appearing 'priv->filter_quality =1' (#643) + +2008-02-06 Matthew Allum + + * clutter/clutter-texture.c: + Minor clean up from last commit. + + * tests/test-fbo.c: + Small tweak (rotate offscreen, rather than resize) + +2008-02-06 Matthew Allum + + * clutter/clutter-texture.c: + Initial attempt at handling resizing/tranformed source textures. + + * clutter/pango/pangoclutter-render.c: (draw_glyph): + Guards against freetype returning NULL bitmaps and + thus causing device by zeros on NVIDIA drivers. (see ml) + +2008-02-05 Matthew Allum + + * clutter/clutter-actor.c: (clutter_actor_get_vertices): + Make sure GL related Matrices are initialised. Fixes #756 + + * clutter/clutter-texture.c: + Fix up code from Norways answer to Jean-Michel Basquiat. + (warning on tile_get_pixbuf) + +2008-02-05 Øyvind Kolås + + * clutter/clutter-texture.c: removed spurious left over debug printf. + +2008-02-05 Øyvind Kolås + + * clutter/clutter-texture.c: applied modified patch from Gwenole + Beuchesne adressing bug #635. Adressing a buffer overflow in + clutter_texture_get_pixbuf() when tiling is forced. + +2008-02-04 Emmanuele Bassi + + * clutter/clutter-shader.c (clutter_shader_constructor): Keep the + constructor line under the 80 columns using a variable. + +2008-02-04 Emmanuele Bassi + + * clutter/clutter-actor.c: + * clutter/clutter-shader.c: Small documentation and style fixes + + * tests/test-scale.c: Constify the gravities array. + +2008-02-04 Chris Lord + + * clutter/clutter-actor.c: (clutter_actor_transform_stage_point): + Check that x_out and y_out != NULL before setting their contents + +2008-02-04 Øyvind Kolås + + * clutter/clutter-timeline.c: (clutter_timeline_rewind): updated + documentation to take direction into account. + +2008-02-04 Øyvind Kolås + + * tests/test-fbo.c: (make_shader): + * tests/test-shader.c: (main): multiply the resulting gl_FragColor + with gl_Color before being done to take opacity into account in the + GLSL fragments. + +2008-02-04 Øyvind Kolås + + * clutter/clutter-actor.[ch]: added clutter_actor_get_shader and + renamed clutter_actor_apply_shader to be clutter_actor_set_shader. + Reindented/aligned header. + * clutter/clutter-texture.c: (clutter_texture_paint): temporarily + disable the shader on top of the clutter context's shader stack while + rendering into the FBO. + * tests/test-fbo.c: (main): s/apply_shader/set_shader/ + * tests/test-shader.c: (button_release_cb), (main): + s/apply_shader/set_shader/ + +2008-02-03 Matthew Allum + + * clutter/clutter-actor.c: (clutter_actor_set_rotationx): + Add notify signal for set_rotate + + * clutter/clutter-texture.c: + Add basic cleanup code for fbo's + + * tests/test-fbo.c: (main): + Minor notes. + + * clutter/osx/clutter-stage-osx.c: (clutter_stage_osx_realize): + Turn on vblanking. + +2008-02-03 Matthew Allum + + * clutter/clutter-shader.c: + Minor formatting cleanups to fit in 80 cols. + + * clutter/clutter-texture.c: + More safety checks, clean ups in clutter_texture_new_from_actor() + + * clutter/cogl/gl/cogl.c: + Always clear the FBO initially when rendering + + * tests/test-fbo.c: + Overhall the test as to be more useful (and show current issues) + +2008-02-02 Matthew Allum + + * clutter/clutter-timeline.c: + Document frame number limits in new-frame signal. + + * clutter/x11/clutter-event-x11.c: + Remove uneeded error trap (#751) + +2008-02-01 Matthew Allum + + * clutter/cogl/cogl.h: + * clutter/cogl/gl/cogl.c: (cogl_paint_init), (cogl_enable): + * clutter/cogl/gles/cogl.c: (cogl_enable): + + Disable the depth test and buffer as has some strange side + effects, mainly on x/y axis rotation with multiple layers at + same depth (eg rotating text on a bg has very strange + effect). Seems no clean 100% effective way to fix without other + odd issues.. So for now move to application to handle and add + cogl_enable_depth_test() as for custom actors (i.e groups) to + enable if need be. + +2008-02-01 Matthew Allum + + * clutter/clutter-texture.c: (clutter_texture_new_from_actor): + Fix typo breaking FBO rendering on anything other than a cloned + texture. + +2008-02-01 Matthew Allum + + * clutter/clutter-feature.h: + * clutter/clutter-texture.c: + * clutter/clutter-texture.h: + * clutter/cogl/cogl.h: + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/cogl.c: + * tests/Makefile.am: + * tests/test.fbo.c: + Add initial support for FBO's in Clutter (OpenGL only so far). + See new clutter_texture_new_from_actor() + Initial implementation, needs work. + + * clutter/x11/clutter-stage-x11.c: + (clutter_stage_x11_set_cursor_visible): + Fall back to again not relying on xfixes to hide cursor. *sigh* + + * clutter/clutter-deprecated.h: + Add clutter_group_find_child_by_id + +2008-02-01 Øyvind Kolås + + * clutter/cogl/gles/cogl.c: (cogl_rectangle_internal): increase size + of GLfixed[] array to make contents fit. + +2008-02-01 Emmanuele Bassi + + * clutter/clutter-actor.h: Clean up a bit the flag-related macros. + +2008-02-01 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_get_property): Use clutter_actor_get_reactive() + instead of the IS_REACTIVE() macro. + + (clutter_actor_set_reactive): Emit the notify signal for the + reactive property. + + * clutter/clutter-timeline.c: + (timeline_timeout_func), + (clutter_timeline_get_delta): Coding style fixes. + +2008-01-31 Rob Bradford + + * clutter/glx/clutter-stage-glx.c: + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-backend-glx.h: + Fix formatting. + +2008-01-31 Emmanuele Bassi + + * clutter/clutter-timeline.c (clutter_timeline_skip): Don't + add the frames outside the direction check. (thanks to benoar + on clutter-list for spotting it) + +2007-01-31 Tomas Frydrych + + * clutter/clutter-actor.c: + (clutter_actor_transform_vertices): + Call clutter_actor_query_coords() instead of accessing the actor + box, so that actors that calculate their bounding box on the fly + (like ClutterGroup) work. + + * (_clutter_actor_apply_modelview_transform_recursive): + Made to work for parentless actors. + +2008-01-31 Øyvind Kolås + + * tests/test-depth.c: added a box of cloned hands to further expand + the scope of depth testing scenarios exercised by test-depth. + +2008-01-31 Øyvind Kolås + + * tests/test-depth.c: (timeline_completed): make use of + clutter_timeline_set_direction instead of static state. + (raise_top): made rectangle remain at fixed depth and raise + above each other. + (janus_group): added a rectangle with two faces, one red and + one green, that spins around. + +2008-01-31 Emmanuele Bassi + + * clutter/clutter-entry.h: + * clutter/clutter-entry.c: + (clutter_entry_set_cursor_position), + (clutter_entry_get_cursor_position): Rename [gs]et_position() + to [gs]set_cursor_position(), and avoid method name collisions + with bindings for high-level languages. + + * clutter/clutter-deprecated.h: Add replacement warnings for the + renamed methods. + +2008-01-31 Emmanuele Bassi + + * clutter/clutter-actor.c (clutter_actor_init): Explicitly + memset() to 0 the clip container, so if you get the clip without + having set it, you won't get garbage. + +2008-01-31 Rob Bradford + + * clutter/x11/clutter-backend-x11-private.h: + Add missing start to comment + + * clutter/x11/clutter-backend-x11.c: + * clutter/x11/clutter-event-x11.c: + * clutter/x11/clutter-stage-x11.c: + * clutter/x11/clutter-x11.h: + Remove tabs. + +2008-01-30 Emmanuele Bassi + + * README: Add the osx flavour, and mark it experimental, + along with the sdl backend. EGL-based backends should not be + considered experimental anymore, even though they might require + tweaking. + +2008-01-30 Emmanuele Bassi + + * HACKING: Expand the "document API" point, and the release + process. + + * README: Update the release notes regarding the scale behaviour, + now that the gravity has been removed. + +2007-01-30 Tomas Frydrych + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + Added new clutter_actor_move_anchor_point_ API. + + * clutter/clutter-behaviour-scale.c: + * clutter/clutter-behaviour-scale.h: + * clutter/clutter-effect.c: + * clutter/clutter-effect.h: + * tests/test-actors.c: + * tests/test-effects.c: + * tests/test-scale.c: + Removed gravity from ClutterBehaviourScale. + +2008-01-27 Emmanuele Bassi + + * tests/test-depth.c (main): Use a group instead of pushing + the actors on the stage. + +2008-01-25 Emmanuele Bassi + + * clutter/clutter-group.c (sort_z_order): Invert condition to + return to the same as in revision 1976. + +2008-01-25 Emmanuele Bassi + + * clutter/clutter-label.c (clutter_label_query_coords): Check + if the layout logical rectangle size is bigger than the bounding + box; this usually means that the bounding box changed in one + point and the label private allocation needs to be + updated. (#724) + +2008-01-25 Emmanuele Bassi + + * clutter/x11/Makefile.am: Add the generated clutter-x11 pkg-config + file to CLEANFILES, to pass distcheck. + + * Makefile.am: + * clutter/Makefile.am: Tweak up the Makefiles. + + * README: + * NEWS: Release 0.5.4 + + * configure.ac: Post-release bump to 0.5.5 + +2008-01-25 Emmanuele Bassi + + * clutter/clutter-group.c: Use a shorter Z order sorting function, + avoiding the checks. + +2008-01-25 Øyvind Kolås + + * clutter/clutter-shader.c: added documentation strings for + ClutterShader. + +2008-01-23 Emmanuele Bassi + + * Makefile.am: Use variables, instead of substitutions. + + * clutter/clutter-private.h: + * clutter/clutter-main.h: Make clutter_do_event() public again, + as we need it in clutter-gtk. + + * configure.ac: + * clutter/x11/Makefile.am: + * clutter/x11/clutter-x11.pc.in: Add a clutter-x11 pkg-config + file for clutter-gtk, as it depends on the X11 backend API, as + implemented by the GLX and EGLX backends. + + * clutter/x11/clutter-event-x11.c (event_translate): Do not + propagate DestroyNotify events if the stage doesn't own the + window. + + * tests/test-scale.c (main): Set values different from the default. + +2008-01-21 Emmanuele Bassi + + * clutter/clutter-behaviour-scale.c: + (clutter_behaviour_scale_set_property), + (clutter_behaviour_scale_class_init): Fix stupid typo in the + y-scale-end property declaration. (#720) + +2008-01-21 Emmanuele Bassi + + * clutter/clutter-behaviour-depth.h: + * clutter/clutter-behaviour-depth.c: + (clutter_behaviour_depth_set_bounds), + (clutter_behaviour_depth_get_bounds): Add the depth-start and + depth-end accessors. + + * tests/test-depth.c (timeline_completed): Use set_bounds() + instead of g_object_set(). + + * clutter.symbols: Add clutter_behaviour_depth_set_bounds() + and clutter_behaviour_opacity_get_bounds() to the list of + public symbols. + +2008-01-21 Emmanuele Bassi + + * clutter/clutter-behaviour-scale.c: Use separate variables for + storing the scale boundaries; apparently, using arrays broke + the python bindings. (#720) + +2008-01-21 Matthew Allum + + * clutter/clutter-group.c: + Make sure unrealizing a group also unrealizes children. + + * clutter/glx/clutter-stage-glx.c: + Chain up to group unrealize to make sure textures get unrealized + when changing context (see #718) + + * clutter/clutter-texture.c: + Formatting cleanups + +2008-01-21 Øyvind Kolås + + * tests/test-shader.c: fix incompatible types in shader programs + + Apparently floats can't be multiplied or divided with ints without + explicit type casts. Use 2.0 or float(var) where appropriate. Patch + from Tommi Komulainen (#715). + +2008-01-19 Emmanuele Bassi + + * clutter/clutter-main.c (generate_enter_leave_events): Do not + take the explicit reference, and let clutter_event_copy() do it + for us. (#714, Neil Roberts) + +2008-01-19 Emmanuele Bassi + + * clutter/clutter-event.c (clutter_event_copy): Take an extra + reference on the related actor in ClutterEventCrossing that we + explicitly unref in clutter_event_free(). (#714, Neil Roberts) + +2008-01-18 Emmanuele Bassi + + * tests/test-actors.c (input_cb): Fix the callback signature; + hide the clicked actor only if it's a hand. + +2008-01-18 Emmanuele Bassi + + * clutter/clutter-main.c (clutter_do_event): Check the + return value of the ::event signal for the CLUTTER_DELETE + event type. + + * clutter/clutter-stage.c (clutter_stage_event): Emit the + ::event signal when receiving the CLUTTER_DELETE event; this + allows to intercept the user's closing of the stage window. + +2007-01-18 Tomas Frydrych + + * clutter/clutter-fixed.h: + Added missing proto for clutter_fixed_qdivx(). + +2007-01-18 Tomas Frydrych + + * clutter/clutter-fixed.h: + * clutter/clutter-fixed.c: + Added CLUTTER_QDIV() for 64-bit division (bug 564, patch by + Gwenole Beauchesne). + +2008-01-18 Emmanuele Bassi + + * clutter/clutter-event.h: Add a gunichar field for the Unicode + representation of the key. (#555) + +2008-01-18 Emmanuele Bassi + + * clutter/clutter-actor.h: + * clutter/clutter-script.h: + * clutter/clutter-stage.h: + * clutter/clutter-units.h: Documentation fixes and additions. + +2008-01-18 Emmanuele Bassi + + * clutter.symbols: Add ClutterBehaviourOpacity accessors. + + * clutter/clutter-behaviour-opacity.h: + * clutter/clutter-behaviour-opacity.c: + (clutter_behaviour_opacity_set_bounds), + (clutter_behaviour_opacity_get_bounds): Add accessors for the + opacity-start and opacity-end properties. + + * clutter/clutter-behaviour-scale.h: Fix the argument name to + avoid complaints by gtk-doc. + +2008-01-17 Emmanuele Bassi + + * clutter/clutter-behaviour-scale.c: + (clutter_behaviour_scale_set_gravity): Notify on the right property + name. + +2008-01-17 Emmanuele Bassi + + * clutter.symbols: Add new ClutterBehaviourScale setters. + + * clutter/clutter-behaviour-scale.[ch]: Split the scaling factors + on both axis. Add setters for all the behaviour properties. + + * clutter/clutter-effect.h: + * clutter/clutter-effect.c (clutter_effect_scale): Split the + final scale factor to match the ClutterBehaviourScale changes. (#709) + + * tests/test-actors.c: + * tests/test-effects.c: + * tests/test-rotate.c: + * tests/test-scale.c: Update after API change. + +2008-01-16 Emmanuele Bassi + + * clutter/cogl/cogl.h: Rename COGLhandleARB to COGLhandle. + + * clutter/cogl/gl/cogl-defines.h.in: + * clutter/cogl/gl/cogl.c: Update GL implementation of COGL. + + * clutter/cogl/gles/cogl-defines.h: + * clutter/cogl/gles/cogl.c: Update GLES implementation of COGL. + + * clutter/clutter-shader.c: Fix ClutterShader to use the new + COGLhandle type instead of COGLhandlerARB. + +2008-01-16 Emmanuele Bassi + + Define COGLhandleARB. (patch by Johan Bilien) + + * clutter/cogl/gles/cogl-defines.h: Define COGLhandleARB on + GLES as well (using GLuint) + + * clutter/cogl/gles/cogl.c: Use COGLhandleARB. + +2008-01-14 Tommi Komulainen + + reviewed by: Emmanuele Bassi + + * clutter/osx/clutter-event-osx.c (_clutter_event_osx_put): + Initialize ClutterEvent structure with zeroes (#672) + + The 'source' member was uninitialized and being referenced in + clutter_do_event leading to crash. + +2008-01-14 Emmanuele Bassi + + * tests/test-scale.c: Improve test case for scaling (#684, + Jaap A. Haitsma) + +2008-01-14 Emmanuele Bassi + + * clutter/clutter-timeline.c (timeline_timeout_func): Fix + check if the last frame was reached by skipping a frame (#654, + Johan Bilien) + +2008-01-14 Emmanuele Bassi + + * clutter/clutter-shader.c: Use correct format string for + gssize. (#695, Tommi Komulainen) + +2008-01-14 Emmanuele Bassi + + * clutter/cogl/gl/cogl.c (cogl_get_proc_address): Implement non-GLX + version using GModule and looking up the symbol from the running + process. It should work when linked to library providing the + requested function. (#696, Tommi Komulainen) + +2008-01-14 Emmanuele Bassi + + * configure.ac: Post-release bump to 0.5.3 + + * README: + * NEWS: Release 0.5.2 + +2008-01-14 Emmanuele Bassi + + * clutter.symbols: Add clutter_model_insertv() + + * clutter/clutter-model.[ch] (clutter_model_insertv): Add a vector + based insertion API, for language bindings + +2008-01-12 Emmanuele Bassi + + * clutter/clutter-effect.c (clutter_effect_rotate): Make the + rotate effect work on the passed axis, instead of hardcoding + the X axis. (#700, Neil Roberts) + +2008-01-10 Øyvind Kolås + + Added COGLhandleARB since the underlying type on OSX is void*, + patch from Tommi Komulainen , (#694) + + * clutter/cogl/gl/cogl-defines.h.in: Added COGLhandleARB typedef. + * clutter/cogl/cogl.h: + * clutter/cogl/gl/cogl.c: + * clutter/clutter-shader.c: Use COGLhandleARB instead of COGLint when + referring to program or shader handles. + +2008-01-09 Emmanuele Bassi + + * clutter/Makefile.am: + * clutter/clutter.h: + * clutter/clutter-list-model.[ch]: Complete the ClutterModelDefault + to ClutterListModel rename by renaming the source files + +2008-01-09 Emmanuele Bassi + + * clutter/clutter-model-default.[ch]: Rename ClutterModelDefault + into ClutterListModel, to make it clear that the default + ClutterModel implementation is list-based + + * tests/test-model.c: Update call + +2008-01-09 Emmanuele Bassi + + * clutter/clutter-model-default.c: + (clutter_model_default_new), + (clutter_model_default_newv): Move the constructors in the + right file + + * clutter/clutter-model-private.h: Add a private header for + the ClutterModel implementations + + * clutter/clutter-model.c: + (clutter_model_check_type), + (clutter_model_set_n_columns), + (clutter_model_set_column_type): Mark as private to Clutter, + not static to ClutterModel + + * clutter/Makefile.am: Add clutter-model-private.h + +2008-01-09 Emmanuele Bassi + + * clutter/clutter-label.c: + (clutter_label_ensure_layout): Fix the ClutterUnits to Pango + scale conversion. + +2008-01-08 Emmanuele Bassi + + * clutter/clutter-model.c: + (clutter_model_appendv), + (clutter_model_prependv): Fix the columns length pre-condition + +2008-01-07 Emmanuele Bassi + + * clutter/clutter-model-default.[ch]: Remove the ClutterModelDefault + iterator symbols from the public API; the iterator implementation + is a detail of the default ClutterModel class + + * clutter.symbols: Update + +2008-01-07 Emmanuele Bassi + + * clutter/clutter-model.h: + * clutter/clutter-model.c: + (clutter_model_appendv), + (clutter_model_prependv): Add vector based API for bindings. + + (clutter_model_get_column_name), + (clutter_model_get_column_type), + (clutter_model_set_sorting_column): Fix the check in the condition + on the column index. + + * tests/test-scale.c (on_timeline_completed), (main): Fix spelling + + * clutter.symbols: Update public symbols + +2008-01-04 Emmanuele Bassi + + * clutter.symbols: Add clutter_actor_move_byu() + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + (clutter_actor_move_by), + (clutter_actor_move_byu): Add a units-based variant of the + clutter_actor_move_by() function + +2008-01-02 Johan Bilien + + reviewed by: Emmanuele Bassi + + * configure.ac: Use AC_DEFINE_UNQUOTED to expand the + variable. Fixes EGL backend build + +2008-01-02 Emmanuele Bassi + + * configure.ac: Post release bump to 0.5.1 + +2008-01-02 Emmanuele Bassi + + * README: + * NEWS: Release 0.5.0 + +2008-01-02 Emmanuele Bassi + + * clutter/clutter-model-default.c: + (clutter_model_default_get_iter_at_row), + (clutter_model_default_insert_row): Fix off-by-one errors + + (clutter_model_default_class_init): + (clutter_model_default_remove_row): Move the actual removal of the + row to... + + (clutter_model_default_row_removed): ... the signal class handler + of ::row-removed; this way, signal handlers connected to + ::row-removed will get a valid iterator, while signal handlers + connected to ::row-removed with the AFTER flag will get an updated + model + +2007-12-31 Tomas Frydrych + + * configure.ac: + * clutter/Makefile.am: + Added -no-undefined to libtool LDFLAGS for mingw/SDL backend, to + allow building of shared libraries for win32. + +2007-12-31 Tomas Frydrych + + * configure.ac: + * clutter.pc.in: + Added CLUTTER_REQUIRES automake var to allow deps in clutter.pc to + be backend-specific. + +2007-12-28 Emmanuele Bassi + + * clutter/clutter-texture.c: + (clutter_texture_unrealize): Do not read the pixels back if the + texture is being destroyed + +2007-12-28 Emmanuele Bassi + + * clutter/clutter-model.c: + (clutter_model_real_get_n_rows), (clutter_model_class_init), + (clutter_model_get_n_rows): Provide a default implementation of + the get_n_rows() method, so that subclasses do not strictly need + to override it + +2007-12-25 Emmanuele Bassi + + * clutter/clutter-actor.c: + (parse_rotation_array): Inline, and get the JsonArray as a parameter + + (parse_rotation): Update + + * clutter/clutter-script.c: + (warn_missing_attribute): Fix for emacs-style warnings + + (clutter_script_parse_node): Remove an ifdeffed out section + + (clutter_script_construct_parameters), + (clutter_script_construct_object): Rename get_parameters, so + it's obvious what it does + +2007-12-25 Emmanuele Bassi + + * tests/test-script.json: Fix the JSON syntax + +2007-12-25 Emmanuele Bassi + + * clutter/clutter-enum-types.c.in: Fix the template + +2007-12-24 Emmanuele Bassi + + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + * clutter/clutter-texture.c: Remove some of the remaining FIXMEs + in the API documentation + +2007-12-24 Emmanuele Bassi + + * clutter/clutter-color.c: + * clutter/clutter-event.c: + * clutter/clutter-stage.c: Intern more strings using the I_() macro + + * clutter/clutter-enum-types.c.in: Call g_intern_static_string() + in the enum types template + +2007-12-24 Emmanuele Bassi + + * clutter.symbols: Add clutter_actor_set_clipu() and + clutter_actor_get_clipu() + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + (clutter_actor_set_clipu), (clutter_actor_get_clipu): Add the + new units-based versions of the clip accessors + + (clutter_actor_set_clip), (clutter_actor_get_clip): Reimplement + the pixels-based clip accessors as proxies for the units-based + ones + +2007-12-24 Emmanuele Bassi + + * clutter/cogl/cogl.h: Update cogl_clip_set() to accept the + clip components as ClutterFixed values + + * clutter/cogl/gl/cogl.c (cogl_clip_set): Update the GL implementation + of cogl_clip_set() + + * clutter/cogl/gles/cogl.c: + (cogl_rectangle_internal): Provide an internal, inlined rectangle + drawing function using fixed point values, to be shared by + cogl_clip_set() and cogl_rectangle() + + (cogl_clip_set), (cogl_rectangle): Update the GLES implementation + of cogl_clip_set() and cogl_rectangle() to use the new internal + rectangle drawing function + + * clutter/clutter-actor.c: Make the clip an array of ClutterUnit + values instead of pixel-based; this allows higher precision and + device independence + + (_clutter_actor_apply_modelview_transform): Pass the clip + components converting from units to fixed point values, using + the new cogl_clip_set() signature + + (clutter_actor_get_property), (clutter_actor_set_clip), + (clutter_actor_get_clip): Update the accessors of the clip + property + +2007-12-21 Emmanuele Bassi + + * clutter/clutter-actor.h: Remove the unused ::set_depth() and + ::get_depth() virtual functions. (#674, Murray Cumming) + +2007-12-21 Emmanuele Bassi + + * clutter/clutter-group.c: + * clutter/clutter-group.h: Add the clutter_group_add() convenience + function; it's now "undeprecated" and implemented as a macro + + * clutter/clutter-stage.h: Add clutter_stage_add() as a convenience + macro + + * clutter/cogl/cogl.h: Include just the needed headers instead + of the whole clutter.h; this avoids rebuild cogl when not needed + +2007-12-21 Emmanuele Bassi + + * Makefile.am: Move tests build before docs, to cut down the + distcheck failure discovery + + * clutter.symbols: Add clutter_texture_set_area_from_rgb_data() + + * clutter/clutter-actor.c: + * clutter/clutter-script.c: + * clutter/clutter-texture.c: + * clutter/json/json-generator.c: + * clutter/json/json-parser.c: Compilation fixes for passing distcheck + + * tests/test-grab.c: + * tests/test-score.c: + * tests/test-script.c: + * tests/test-shader.c: + * tests/test-unproject.c: Ditto as above + +2007-12-21 Emmanuele Bassi + + * clutter/clutter-label.c: + (clutter_label_ensure_layout): Avoid rounding errors in the layout + computing when switching between Clutter units and Pango units. + +2007-12-19 Øyvind Kolås + + * clutter/clutter-texture.[ch]: (bug #675) added + clutter_texture_set_area_from_rgb_data, sharing some of the + initialization infrastructure with clutter_texture_set_from_rgb_data. + +2007-12-20 Emmanuele Bassi + + * clutter/clutter-container.c: + (clutter_container_lower_child): Fix interface method call + to actually call ClutterContainer::lower. (#670, Gwenole + Beauchesne) + +2007-12-20 Emmanuele Bassi + + * clutter/clutter-label.c: + (clutter_label_query_coords): Return the bounding box set inside + request_coords(), if any; otherwise, return the natural allocation + of the label. (#678, reported by Gwenole Beauchesne) + + * tests/test-rotate.c: Align the label + +2007-12-19 Tomas Frydrych + + * clutter/Makefile.am: + * clutter/cogl/gl/cogl-defines.h.in: + * clutter/pango/pangoclutter-render.c: + * configure.ac: + Fixes to allow cross-compilation with mingw (patch by Neil + Roberts). + Removed trailing whitespace. + +2007-12-18 Øyvind Kolås + + * clutter/clutter-main.c: (generate_enter_leave_events): synthesize + enter event (without related) and corresponding leave event when the + actor the cursor is over has been destroyed. + * clutter/clutter-event.c: (clutter_event_free): only unref the + related_actor when it actually is set. + +2007-12-18 Emmanuele Bassi + + * clutter/clutter-main.c: + (unset_motion_last_actor), + (generate_enter_leave_events): Attach a callback to the destroy + signal on the last motion actor, so if it goes away while the + pointer is in the middle of it we can unset the pointer. + + * clutter/clutter-private.h: Store the last motion actor inside + the global context. + +2007-12-17 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_should_pick_paint), + (clutter_actor_apply_transform_to_point): Fix the whitespace. + + (clutter_actor_set_rotation): Clarify that the coordinates of + the centre of rotation are relative to the anchor point or, + if not set, to the upper left corner of the bounding box. + +2007-12-17 Tomas Frydrych + + * clutter/clutter-behaviour-ellipse.c: + * clutter/clutter-behaviour-rotate.c: + Clamping of start and end angles to <0, 360). + +2007-12-17 Emmanuele Bassi + + * clutter/clutter-behaviour-path.c: Clarify the equivalence + between the upper and lower bounds of the ClutterAlpha and + the position in the path. (#634) + +2007-12-17 Emmanuele Bassi + + * clutter/clutter-texture.c: Mention the fact that a ClutterTexture + will scale its contents to fit inside the requested bounding + box. (#661) + +2007-12-17 Emmanuele Bassi + + * clutter/clutter-actor.c: Fix documentation for + the ::captured-event signal. (#673) + +2007-12-17 Emmanuele Bassi + + * clutter/clutter-actor.c: Clarify the set_clip() method + documentation, pointing out that the clip area origin is + always the top-left corner of an actor. + +2007-12-15 Emmanuele Bassi + + * clutter/clutter-actor.c: + * clutter/clutter-alpha.h: + * clutter/clutter-event.h: + * clutter/clutter-fixed.[ch]: + * clutter/clutter-model.h: + * clutter/clutter-shader.[ch]: + * clutter/clutter-stage.c: Documentation fixes. + +2007-12-15 Emmanuele Bassi + + * clutter/clutter-model-default.c: + (clutter_model_default_iter_next), + (clutter_model_default_iter_prev): Do not instantiate a new + iterator, and update the passed one instead, as we say we do + in the documentation. This avoid leaking tons of iterators. + + * clutter/clutter-model.[ch]: Update the documentation. + + * tests/test-model.c: Prettify some output. + +2007-12-14 Emmanuele Bassi + + * clutter/clutter-behaviour.c: + (clutter_knot_get_type): Use the I_() macro. + + * clutter/clutter-model.[ch]: Make ClutterModel and ClutterModelIter + abstract classes; also, provide more virtual functions inside the + ClutterModel vtable, to allow subclasses and language bindings to + override the entire ClutterModel using other/native data types + to store the rows. + + * clutter/clutter-model-default.[ch]: ClutterModelDefault is a + default implementation of ClutterModel and ClutterModelIter using + GSequence. + + * clutter/Makefile.am: + * clutter/clutter.h: Build glue for ClutterModelDefault. + + * tests/test-model.c: Update for constructor changes. + + * tests/test-shader.c: Fix a typo. + +2007-12-14 Matthew Allum + + * clutter/cogl/gl/cogl-defines.h.in: + * clutter/cogl/gles/cogl-defines.h: + Add CLUTTER_COGL_HAS_GL/GLES defines + +2007-12-11 Øyvind Kolås + + Refined the ClutterShader API based on a patch from Emmanuele Bassi. + + * clutter/clutter-actor.c: (clutter_actor_paint), + (clutter_actor_apply_shader): queue a redraw of actor when shader is + set. + * clutter/clutter-actor.h: indentation. + * clutter/clutter-shader.[ch]: made the fragment and vertex shader + sources properties. Report error through GError when binding shaders. + * tests/test-shader.c: modified to use newer API. + +2007-12-10 Emmanuele Bassi + + * clutter/clutter-model.c: + (clutter_model_get_sorting_column): Fix wrong type check. + +2007-12-10 Emmanuele Bassi + + * clutter/clutter-model.[ch]: Allow unsorting the model (passing + -1 as the sorting column) + + (clutter_model_iter_get_valist): Do not initialise twice che + return value. + +2007-12-10 Emmanuele Bassi + + * clutter/clutter-model.c (clutter_model_iter_get_value): Initialise + the passed GValue like the other getters do. + +2007-12-10 Emmanuele Bassi + + * clutter/clutter-model.h: + * clutter/clutter-model.c: + (clutter_model_append_value), + (clutter_model_prepend_value), + (clutter_model_insert_value): Add a _value() variant for the + insertion methods, for use of the language bindings. + + (clutter_model_append), + (clutter_model_prepend), + (clutter_model_insert): Do not return a boolean: insertion should + never fail unless for a programming error, in which case we have + plenty of warnings. + +2007-12-10 Emmanuele Bassi + + * clutter/clutter-behaviour-ellipse.c: + (clutter_behaviour_ellipse_get_angle_tilt), + (clutter_behaviour_ellipse_get_angle_tiltx), + (clutter_behaviour_ellipse_set_tilt): Fix a double conversion + that was messing up the returned results. (#665) + +2007-12-10 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_set_property), + (clutter_actor_get_property), + (clutter_actor_class_init): Add the rotation-* properties, + controlling the rotation angle and center on each axis. (#614) + + (parse_rotation_array), (parse_rotation), + (clutter_actor_parse_custom_node), + (clutter_actor_set_custom_property), + (clutter_scriptable_iface_init): Add a new "rotation" custom + property for expressing the rotation along each axis in a + compact way: + + "rotation" : [ + { "x-axis" : [ , [ , ] ] }, + { "y-axis" : [ , [ , ] ] }, + { "z-axis" : [ , [ , ] ] } + ] + + (clutter_geometry_get_type),(clutter_vertex_get_type), + (clutter_actor_box_get_type): Use the I_() macro instead of + directly calling g_intern_static_string(). + + * clutter/clutter-entry.c (clutter_entry_request_coords): + * clutter/clutter-label.c (clutter_label_ensure_layout), + (clutter_label_request_coords): Use CLUTTER_UNITS_FROM_DEVICE() + instead of CLUTTER_UNITS_FROM_INT(), as "device" means "pixels". + + * clutter/clutter-private.h: Add the I_() macro for intern + static strings. + + * tests/test-script.json: Test the newly added "rotation" + custom property. + +2007-12-10 Tomas Frydrych + + * tests/Makefile.am: + Fixed a typo. + +2007-12-10 Tomas Frydrych + + * tests/test-viewport.c: + * tests/Makefile.am: + Added a simple viewport test. + +2007-12-10 Tomas Frydrych + + * clutter/clutter-actor.c: + (_clutter_actor_apply_modelview_transform): + Moved offset translation after rotation so that rotation coords + are also relative to the offset point. + +2007-12-09 Emmanuele Bassi + + * tests/test-events.c (input_cb): + * tests/test-text.c (main): Fix compiler errors. (#592, + Gwenole Beauchesne) + +2007-12-09 Emmanuele Bassi + + * clutter/clutter-actor.c: Document the values for full + transparency and full opacity in the set_opacity() + method. (#662) + + * clutter/clutter-behaviour-ellipse.c: Improve consistency + in the apidoc. + +2007-12-08 Emmanuele Bassi + + * configure.ac: Make libtool respect the -s switch of make + and be quiet. + +2007-12-07 Emmanuele Bassi + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + (clutter_actor_get_sizeu), + (clutter_actor_get_positionu): Add unit-based accessors to + the size and position. + +2007-12-07 Tomas Frydrych + + * clutter/clutter-behaviour-ellipse.c: + (clutter_behaviour_ellipse_set_angle_start): + (clutter_behaviour_ellipse_set_angle_end): + (clutter_behaviour_ellipse_set_angle_tilt): + (clutter_behaviour_ellipse_set_tilt): + Removed strayed degree -> ClutterAngle conversions left over from + API changes. + + (clutter_behaviour_ellipse_set_angle_tiltx): + Removed stray printf. + +2007-12-07 Tomas Frydrych + + * clutter/clutter-behaviour-ellipse.c: + Fixed tilt setters and getters. + +2007-12-06 Tomas Frydrych + + * clutter/clutter-fixed.c: + * clutter/clutter-fixed.h: + (clutter_sqrti): + Added extra iteration to the Newton-Rapson algorithm for arguments + lesser than 342 to improve precission. + +2007-12-06 Emmanuele Bassi + + * clutter/clutter-main.c: + (clutter_set_motion_events_frequency): Never allow the motion + events devlivery frequency to exceed the default frame rate. + +2007-12-06 Emmanuele Bassi + + * clutter/json/json-parser.[ch]: Use gssize, size we allow -1 + as a length (meaning "use the whole string"). + + (json_parser_load_from_data): Use the passed length instead of + using strlen() all the time. + + * clutter/clutter-script.[ch]: Ditto as above. + +2007-12-06 Emmanuele Bassi + + * clutter/pango/pangoclutter-render.c: Hush a compiler warning + by removing a unused variable. + +2007-12-06 Emmanuele Bassi + + * clutter/clutter-label.c (clutter_label_ensure_layout): If the + label has a requested size, force it when ensuring the layout. + +2007-12-06 Emmanuele Bassi + + * tests/test-unproject.c: Fix type comparison. + + * tests/test-score.c: Save the returned ids. + +2007-12-05 Matthew Allum + + reviewed by: + + * clutter/pango/pangoclutter-render.c: (tc_get), (free_glyph_info), + (draw_glyph), (draw_trapezoid), (pango_clutter_render_layout), + (pango_clutter_render_layout_line), + (pango_clutter_render_clear_caches), (prepare_run), (draw_begin): + +2007-12-05 Emmanuele Bassi + + * clutter/clutter-score.h: Rearrange declarations. + + * clutter/clutter-score.c: More documentation in the long + description of the ClutterScore section. + + * clutter/clutter-debug.h: + * clutter/clutter-main.c: Add the CLUTTER_DEBUG_SHADER flag, + for debugging the shader calls. + + * clutter/clutter-feature.h: Fix the documentation of the + feature flags. + + * clutter/Makefile.am: Remove trailing whitespace. + +2007-12-05 Tomas Frydrych + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * tests/Makefile.am: + * tests/test-unproject: + (clutter_actor_transform_stage_point): + Added new function for translating stage coordinates into local + actor coordinates. + +2007-12-04 Emmanuele Bassi + + * clutter/clutter-score.c: Better document ClutterScore + and its API. + +2007-12-04 Emmanuele Bassi + + * clutter/clutter-score.[ch]: Reimplement ClutterScore using + a N-ary tree to store the timelines. Remove clutter_score_add(): + the same functionality can be achieved by passing a NULL + parent to clutter_score_append(). + + * tests/test-score.c: Update ClutterScore test unit, and add + debug printouts. + +2007-12-04 Øyvind Kolås + + * clutter/clutter-shader.c: (bind_glsl_shader): use gchar instead of + GLcharARB. + +2007-12-03 Øyvind Kolås + + * clutter/clutter-shader.[ch]: do not include GL.h. + +2007-12-03 Øyvind Kolås + + Support for shaders in clutter. At the moment limited to drivers + providing GLSL support. + + * clutter/cogl/cogl.h: added rather direct binding of needed for glsl + shaders. + * clutter/cogl/gl/cogl-defines.h.in: + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/cogl-defines.h: added stubs. + * clutter/cogl/gles/cogl.c: added stubs. + + * clutter/glx/clutter-stage-glx.c: + (clutter_stage_glx_realize): unrelated memory management sanity fix. + (clutter_stage_glx_unrealize): unbind all shaders on stage unrealize. + + * clutter/Makefile.am: added clutter-shader.[ch] + * clutter/clutter-actor.[ch]: adding shader capability to + actors. + * clutter/clutter-feature.h: added CLUTTER_FEATURE_SHADERS_GLSL + * clutter/clutter-private.h: added stack of shaders to context. + * clutter/clutter-shader.[ch]: new. + + * tests/Makefile.am: added shader test. + * tests/test-shader.c: (frame_cb), (main): simple shader test, + cycle through the inline shader with right/left mouse buttons. + +2007-12-03 Øyvind Kolås + + * clutter/glx/clutter-stage-glx.c: for extra sanity, set + stage_x11->xvisinfo = NULL after XFree. Makes using the root window + as foreign window possible. + +2007-11-30 Øyvind Kolås + + * clutter/clutter-timeline.c: (clutter_timeline_get_delta): return the + number of milliseconds passed between new-frame events instead of + since new-frame events, thus making sure that the sum of _get_delta's + returned for all new-frame events is equal to total time elapsed. + +2007-11-30 Emmanuele Bassi + + * clutter/clutter-actor.c (parse_units), + (clutter_actor_parse_custom_node): Do not allow using percentages + of the stage on the stage itself, as it makes little to no + sense. + + * clutter/clutter-script.c: + (clutter_script_construct_object): Rearrange code. + + * tests/test-script.json: Do not set the size of the stage, to + test for the stage size percentage. + +2007-11-30 Emmanuele Bassi + + * clutter/clutter-model.h: Complete the documentation of + the ClutterModelClass structure members. + +2007-11-30 Emmanuele Bassi + + * clutter/clutter-timeline.h: + * clutter/clutter-timeline.c + (timeline_timeout_func), + (clutter_timeline_get_delta): Add a function for retrieving + the number of frames and the time (in milliseconds) elapsed + since the last timeline ::new-frame signal. This can be useful + for implementing a physics engine or just for knowing how if + and how many frames have been skipped. + +2007-11-30 Emmanuele Bassi + + * clutter/clutter-actor.c (parse_units), + (clutter_actor_parse_custom_node), + (clutter_scriptable_iface_init): Override the parsing code + for the x, y, width and height properties of ClutterActor, + to allow strings with modifiers when defining the position + and/or the dimensions of an actor. Bare integers are assumed + as pixels; floating point values in the [0, 1] interval are + assumed as percentages; strings can have these modifiers: + + - px - pixels + - mm - millimeters + - pt - points (at the current resolution) + - % - percentage of the stage + + * clutter/clutter-units.h: Fix the conversion macros + + * tests/test-script.json: Test the new values. + +2007-11-29 Emmanuele Bassi + + * clutter/clutter-model.[ch]: Slight API change in the constructor + functions for ClutterModel: clutter_model_new() now takes a list + of GType/string pairs for both the column type and the column name. + + (clutter_model_set_n_columns), + (clutter_model_set_names), + (clutter_model_set_types): Subclasses of ClutterModel will be able + to call clutter_model_set_types() and clutter_model_set_names() in + any order, provided that they don't call each function more than + once. + + * tests/test-model.c: Update the test case. + +2007-11-29 Tomas Frydrych + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + Converted depth and rotation offsets to ClutterUnit. + + (clutter_actor_set_depthu): + (clutter_actor_get_depthu): + Additional ClutterUnit API. + + (_clutter_actor_apply_modelview_transform): + Use cogl_translatex() in place of cogl_translate(). + +2007-11-29 Emmanuele Bassi + + * *: Add svn:ignore property to every directory, so that + svn status starts being useful. + +2007-11-29 Matthew Allum + + * clutter/clutter-main.c: (generate_enter_leave_events): + Minor formatting tweak. + * configure.ac: + Typo fix from Damien Lespiau (via mailing list) + +2007-11-28 Emmanuele Bassi + + Add more introspection capabilities to the base model class + + * clutter/clutter-model.h: + * clutter/clutter-model.c: + (clutter_model_finalize): Do no leak the column types array. + + (clutter_model_get_n_columns): Function for getting the number + of columns inside a model. + + (clutter_model_set_names): Add API for setting the names of the + columns. + + (clutter_model_get_column_name), + (_model_get_column_type): Add API for getting each column's name, + and the default implementation for ClutterModel. + + (clutter_model_get_column_type), + (_model_get_iter_at_row): Add API for getting each column's type, + and the default implementation for ClutterModel. + + * clutter.symbols: Add ClutterModel and ClutterModelIter symbols, + and keep the symbols file sorted. + +2007-11-28 Tomas Frydrych + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + (clutter_actor_set_positionu): + (clutter_actor_set_sizeu): + (clutter_actor_get_widthu): + (clutter_actor_get_heightu): + (clutter_actor_set_widthu): + (clutter_actor_set_heightu): + (clutter_actor_get_xu): + (clutter_actor_get_yu): + (clutter_actor_set_xu): + (clutter_actor_set_yu): + Expanded ClutterActor API with new ClutterUnit-base functions. + + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + (clutter_stage_get_resolution): + (clutter_stage_get_resolutionx): + New function to query stage resolution (floating and fixed point + versions). + + * clutter/clutter-units.h: + (CLUTTER_UNITS_FROM_STAGE_WIDTH_PERCENTAGE): + (CLUTTER_UNITS_FROM_STAGE_HEIGHT_PERCENTAGE): + (CLUTTER_UNITS_FROM_PARENT_WIDTH_PERCENTAGE): + (CLUTTER_UNITS_FROM_PARENT_HEIGHT_PERCENTAGE): + (CLUTTER_UNITS_FROM_MM): + (CLUTTER_UNITS_FROM_MMX): + (CLUTTER_UNITS_FROM_POINTS): + (CLUTTER_UNITS_FROM_POINTSX): + New macros for conversions to ClutterUnits. + + * clutter.symbols: + Added: + ClutterActor anchor_point functions, + clutter_stage_get_resolution functions. + + Removed: + clutter_actor_scale_with_gravity functions. + +2007-11-28 Emmanuele Bassi + + * clutter/clutter-actor.[ch]: Documentation fixes. + +2007-11-28 Emmanuele Bassi + + Remove the layout containers: they will be moved to a + high-level library. + + * clutter/clutter.h: + * clutter/Makefile.am: Remove layout and boxes from the + build. + + * clutter/clutter-layout.[ch]: Remove the ClutterLayout + interface. + + * clutter/clutter-box.[ch]: + * clutter/clutter-hbox.[ch]: + * clutter/clutter-vbox.[ch]: Remove ClutterBox and its + subclasses. + + * clutter/clutter-label.c: Remove ClutterLayout implementation + + * clutter/clutter-script-private.h: + * clutter/clutter-script-parser.c: + * clutter/clutter-script.c: + (clutter_script_parse_node): Remove special parsing for + ClutterMargin and ClutterPadding. + + * clutter/clutter-types.h: Remove ClutterPadding and ClutterMargin. + + * tests/Makefile.am: + * tests/test-boxes.c: Remove the boxes test case. + +2007-11-28 Tomas Frydrych + + * clutter/NEWS: + Started 0.6.0 section with comment on actor anchor point. + + * clutter/clutter/clutter-actor.c: + * clutter/clutter/clutter-actor.h: + * clutter/clutter/clutter-behaviour-scale.c: + * clutter/clutter/clutter-deprecated.h: + (clutter_actor_set_anchor_point): + (clutter_actor_set_anchor_pointu): + (clutter_actor_get_anchor_point): + (clutter_actor_get_anchor_pointu): + (clutter_actor_set_anchor_point_from_gravity): + New anchor point API deprecating old gravity scaling, added + comments on modelview matrix construction to ClutterActor + documentation. + + (clutter_actor_set_scale_with_gravity): + (clutter_actor_set_scale_with_gravityx): + Deprecated; use clutter_actor_set_anchor_point_from_gravity() instead. + +2007-11-28 Emmanuele Bassi + + * clutter/clutter-effect.[ch]: Add clutter_effect_template_construct() + function, for language bindings that need to set the alpha function + but cannot call the clutter_effect_template_new() ctor themselves. + +2007-11-27 Tomas Frydrych + + * clutter/clutter-behaviour-ellipse.c: + * clutter/clutter-behaviour-ellipse.h: + (clutter_behaviour_ellipse_get_angle_startx): + (clutter_behaviour_ellipse_set_angle_startx): + (clutter_behaviour_ellipse_get_angle_endx): + (clutter_behaviour_ellipse_set_angle_endx): + (clutter_behaviour_ellipse_get_angle_tiltx): + (clutter_behaviour_ellipse_set_angle_tiltx): + Changed to take and return angles in degrees represented as + ClutterFixed. + +2007-11-27 Emmanuele Bassi + + * clutter/clutter-actor.c (clutter_actor_destroy): Remove the + reference we hold on the actor, as it was preventing the finalization + of every child on the stage. + +2007-11-26 Emmanuele Bassi + + * clutter/x11/clutter-stage-x11.c: + (clutter_stage_x11_set_cursor_visible): Restore the XFixes usage, + as it now seems to be have been fixed. + +2007-11-26 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_real_show), + (clutter_actor_real_hide): Do not set the MAPPED flag on the actor + if it is a top-level one (like ClutterStage); the backends are + responsible for setting that flag, as it might be the result of an + asynchronous operation (e.g. on X11). + + * clutter/eglnative/clutter-stage-egl.c: + (clutter_stage_egl_show), + (clutter_stage_egl_hide): Set/unset the CLUTTER_ACTOR_MAPPED flag + on show and hide respectively. + + * clutter/osx/clutter-stage-osx.c: + (clutter_stage_osx_show), + (clutter_stage_osx_hide): Ditto as above. + + * clutter/sdl/clutter-stage-sdl.c: + (clutter_stage_sdl_show), + (clutter_stage_sdl_hide): Ditto as above, plus chain up to the + parent class show/hide virtual functions. + + * clutter/x11/clutter-event-x11.c (event_translate): Use the MapNotify + and UnmapNotify events to call the X11 stage map/unmap functions. + + * clutter/x11/clutter-stage-x11.[ch]: + (clutter_stage_x11_set_fullscreen): Set the fullscreen_on_map flag + with the fullscreen value. + + (clutter_stage_x11_map), (clutter_stage_x11_unmap): Set the MAPPED + flag on the stage actor and redraw; also, if the fullscreen_on_map + flag was set, call clutter_stage_fullscreen() as well. (#648) + + * tests/Makefile.am: + * tests/test-fullscreen.c: Add a fullscreen test case for checking + whether fullscreen works on every backend/platform. + +2007-11-23 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_real_request_coords), + (clutter_actor_request_coords), + (clutter_actor_class_init): Provide a default ::request_coords() + implementation in ClutterActor and use it to store the bounding + box passed to clutter_actor_request_coords(). This makes the code + more reliable and clean, and avoids a call to the subclass + request_coords() method if the bounding box did not change. Now, + every class overriding ClutterActor::request_coords() *must* chain + up to the parent class method or the bounding box will not be + saved inside the ClutterActor structure. + + * clutter/clutter-entry.c: + * clutter/clutter-group.c: + * clutter/clutter-hbox.c: + * clutter/clutter-label.c: + * clutter/clutter-texture.c: + * clutter/clutter-vbox.c: Chain up to the parent class + request_coords() method. + +2007-11-23 Emmanuele Bassi + + * clutter/clutter-event.h: Add more documentation. + +2007-11-23 Emmanuele Bassi + + * tests/test-event.c: Back out an accidental commit. + +2007-11-23 Emmanuele Bassi + + * clutter/clutter-actor.c: + * clutter/clutter-alpha.c: + * clutter/clutter-effect.c: + * clutter/clutter-event.c: + * clutter/clutter-event.h: + * clutter/clutter-group.h: + * clutter/clutter-model.c:, + * clutter/clutter-script.c: + * clutter/clutter-scriptable.h: + * clutter/clutter-stage.c: Documentation fixes. + + * clutter/clutter-score.c: Fix implementation. + +2007-11-23 Emmanuele Bassi + + * clutter/x11/clutter-stage-x11.c: Chain up the hide and show + to the parent's implementation. + +2007-11-23 Emmanuele Bassi + + * clutter/clutter-effect.[ch]: Update the effects API to remove + the start value for most of them. + + (clutter_effect_move): Make it a simple "move from current + position to new coordinates" effect. + + (clutter_effect_path): Rename from clutter_effect_move(). + + (clutter_effect_rotate): Sync up with the new actor rotation API. + + * tests/test-effects.c: Regression test for the effects. + + * tests/Makefile.am: Build glue for test-effects + + * tests/test-behave.c: Emulate a full ramp by using a looping + timeline changing its direction when reaching the last frame. + +2007-11-23 Emmanuele Bassi + + * clutter/clutter-actor.c (clutter_actor_destroy): Bail out + if clutter_actor_destroy() was called on the stage: the stage + is not for the user to destroy. + + * clutter/x11/clutter-backend-x11.c: + * clutter/eglnative/clutter-backend-egl.c: + * clutter/sdl/clutter-backend-sdl.c: + * clutter/osx/clutter-backend-osx.c: Unset the top-level private + flag on the stage when disposing it, so the backends can safely + call clutter_actor_destroy(). + + * clutter/clutter-private.h: Tweak the private flags accessors, + to avoid the typecheck. + +2007-11-22 Emmanuele Bassi + + * clutter/clutter-label.c (clutter_label_new_full): Set the + terminating NULL which was removed when applying patch for + fixing #606. (#645, Gwenole Beauchesne) + +2007-11-22 Øyvind Kolås + + * clutter/clutter-actor.c: mended a couple of typos in documentation. + +2007-11-21 Matthew Allum + + * clutter/cogl/gles/cogl.c: (cogl_fog_set): + Minor fixes for fog on GLES. + +2007-11-21 Emmanuele Bassi + + * clutter/cogl/cogl.h: Add cogl_fog_set() abstracting the + glFog() functions and enabling the GL_FOG flag. + + * clutter/cogl/gl/cogl.c: Add GL implementation of cogl_fog_set(). + + * clutter/cogl/gles/cogl.c: Add GL/ES implementation of + cogl_fog_set(). + + * clutter.symbols: Add new symbols. + + * clutter/clutter-stage.h: Add API to enable depth cueing on + the stage using a linear GL fog, and to set the parameters + for it (#637). + + * clutter/clutter-stage.c (clutter_stage_paint): Enable the + GL fog if the ClutterStage:use-fog property is true. + + * tests/test-depth.c: Test the new stage API. + +2007-11-20 Øyvind Kolås + + * clutter/clutter-main.c: (event_click_count_generate): generalized + click_count generation code. + * tests/test-events.c: (input_cb): extended test to report click_count + for release and scroll events as well as press events. + +2007-11-20 Øyvind Kolås + + * clutter/clutter-main.c: (clutter_do_event): avoid computing source + of events if it is already set (for synthetic events.) + * clutter/clutter-event.c: Add more information to the documentation + of clutter_event_put. + +2007-11-20 Emmanuele Bassi + + * README: Add diff example command lines for submitting patches. + +2007-11-20 Emmanuele Bassi + + * clutter/clutter-actor.c:: + * clutter/clutter-behaviour-opacity.c: + * clutter/clutter-clone-texture.c: + * clutter/clutter-effect.c: + * clutter/clutter-label.c: Remove the usage of G_PARAM_CONSTRUCT + without an override for the ::construct virtual function; using + G_PARAM_CONSTRUCT to set the default value of a property is not + the recommended approach; default values are set inside the + instance init function. + +2007-11-20 Emmanuele Bassi + + * clutter/clutter-texture.c (clutter_texture_init): Set filter-quality + value to 1, to fix the regression caused when applying the patch for + buf #616. + +2007-11-19 Emmanuele Bassi + + * clutter/clutter-label.[ch]: Fix ClutterLabel size allocation when + no bounding box has been provided, and store the box set by the + user so that it can be reused when recomputing the layout. (#600) + + (clutter_label_class_init), + (clutter_label_init): Set the :wrap property default to FALSE. + + * clutter/clutter-units.h: Add ClutterUnit-to-PangoUnit conversion + macro. + + * tests/test-rotate.c: Fix string. + +2007-11-19 Emmanuele Bassi + + * clutter/clutter-behaviour-bspline.c: + * clutter/clutter-behaviour-depth.c: + * clutter/clutter-behaviour-ellipse.c: + * clutter/clutter-behaviour-opacity.c: + * clutter/clutter-behaviour-path.c: + * clutter/clutter-behaviour-rotate.c: + * clutter/clutter-behaviour-scale.c: Fix gtk-doc short description. + +2007-11-19 Emmanuele Bassi + + * clutter.symbols: Update + + * clutter/clutter-actor.h: Rename the angle argument for + set_rotationx() to avoid gtk-doc complaining + + * clutter/clutter-main.h: + * clutter/clutter-main.c: + (clutter_set_motion_events_enabled): Rename for consistency + + (clutter_get_motion_events_frequency), + (clutter_set_motion_events_frequency): Add accessors for the default + motion events deliver frequency. + + (clutter_do_event): Throttle down motion events delivery using the + motion events frequency setting, to avoid excessive redraws. (#608) + + (clutter_context_get_default): Enable per-actor motion events, at + least for now. + + * tests/test-events.c (red_button_cb): + * tests/test-grab.c (green_press_cb): Update. + +2007-11-19 Emmanuele Bassi + + * clutter/clutter-timeline.c (timeline_timeout_func): Do not emit the + ::new-frame signal twice for the last frame. (#531) + +2007-11-19 Øyvind Kolås + + * clutter/clutter-actor.[ch]: (clutter_actor_set_rotationx), + (clutter_actor_set_rotation): swapped axis and angle around, + the new argument order is: (axis, angle, x, y, z). Also removed + deprecated rotation functions from header. + + Updated use of clutter_actor_set_rotation? in the following files: + + * clutter/clutter-behaviour-rotate.c: + * clutter/clutter-effect.c: + * tests/test-actors.c: + * tests/test-project.c: + +2007-11-19 Emmanuele Bassi + + * clutter/clutter-label.[ch]: Constify the color argument + for the ClutterLabel ctor. (#604) + +2007-11-18 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * clutter/clutter-group.c: + * clutter/clutter-main.c: + * clutter/clutter-stage.c: + * tests/test-events.c: + Parent Actors no longer need to be set reactive for reactive + children to get events. Also makes groups now pickable. + (#597, #423) + + * clutter/clutter-texture.c: + Handle case when 1x1 tiled texture is created, + falling 'back' to being non tiled. (#596) + + * clutter/eglx/clutter-backend-egl.c: + Call EglTerminate on backend shutdown. + +2007-11-18 Emmanuele Bassi + + * clutter.pc.in: Bump up glib-2.0 dependency. + +2007-11-18 Emmanuele Bassi + + * clutter/clutter-model.c: Add gtk-doc section for + ClutterModelIter + + * clutter/clutter-script.h: Fix argument name. + + * clutter/x11/clutter-x11.h: + * clutter/x11/clutter-event-x11.c: + * clutter/x11/clutter-backend-x11.c: Document functions and + types. + +2007-11-18 Emmanuele Bassi + + * clutter.symbols: Update exported symbols. + + * clutter/clutter-actor.[ch]: Remove clutter_actor_rotate_* + and clutter_actor_get_rx* and provide a simpler rotation API: + clutter_actor_set_rotation() and clutter_actor_get_rotation(). + + * clutter/clutter-deprecated.h: Deprecate the old rotation API. + + * clutter/clutter-behaviour-bspline.c: + * clutter/clutter-behaviour-rotate.c: + * clutter/clutter-effect.c: Update internal usage of the + rotation API. + + * tests/test-project.c: Ditto as above. + +2007-11-17 Emmanuele Bassi + + Optimise Atoms usage in the X11 and X11-based backends. + + * clutter/x11/clutter-backend-x11.c: + (clutter_backend_x11_post_parse): Call XInternAtoms() here and + get all the atoms from X in one call. + + * clutter/x11/clutter-backend-x11.h: Store all the atoms inside + the ClutterBackendX11 structure. + + * clutter/x11/clutter-event-x11.c: + (xembed_send_message), (xembed_set_info), + (_clutter_backend_x11_events_init), + (set_user_time), (handle_wm_protocols_event), + (handle_xembed_event), (event_translate): Do not cache atoms + or call XInternAtom() directly, and use the atoms off the X11 + backend structure instead. + + * clutter/x11/clutter-stage-x11.c: + (send_wmspec_change_state), (clutter_stage_x11_set_wm_protocols), + (clutter_stage_x11_set_fullscreen), + (clutter_stage_x11_set_title): Ditto as above. + + * clutter/x11/clutter-stage-x11.h: Update the set_wm_protocols() + method to take the X11 stage implementation. + + * clutter/glx/clutter-stage-glx.c: + (clutter_stage_glx_realize): Update for the set_wm_protocols() + change. + + * tests/test-project.c: (main): Test clutter_stage_set_title(). + +2007-11-17 Emmanuele Bassi + + * configure.ac: Depend on GLib >= 2.14 because of ClutterModel + usage of GSequence. + +2007-11-16 Øyvind Kolås + + * clutter/clutter-main.c: (emit_event): renamed from deliver_event, + (emit_pointer_event): utility function to emit pointer event signals + (which takes pointer grab into account). + (emit_keyboard_event): utility function to emit keyboard event signals + (which takes keyboard grab into account). + (clutter_do_event): use the above utility functions, also reindented + the source. + +2007-11-16 Øyvind Kolås + + * tests/test-grab.c: (main): fix use of clutter_actor_set_reactive + +2007-11-15 Øyvind Kolås + + * clutter/clutter-main.[ch]: added clutter_grab_keyboard, + clutter_ungrab_keyboard and clutter_get_keyboard_grab, in + clutter_do_event deliver keyboard related events only to the + actor with the keyboard grab if a grab exists. + * clutter/clutter-private.h: added keyboard_grab_actor to context. + * tests/test-grab.c: added testing for testing the keyboard grab. + +2007-11-15 Emmanuele Bassi + + * clutter/clutter-texture.c: + (clutter_texture_request_coords), (clutter_texture_class_init), + (clutter_texture_init): Unset :sync-size if explicitly setting + the texture size. (#616) + +2007-11-15 Emmanuele Bassi + + * clutter/clutter-actor.[ch]: Massive API clean-ups. Initial + fixes for bugs #614 and #628. + + * clutter/clutter-main.c: + * clutter/clutter-stage.c: Update internal usage of the actor + API. + + * tests/test-events.c: Update test suite. + +2007-11-15 Øyvind Kolås + + * clutter/clutter-main.c: (generate_enter_leave_events), + (clutter_do_event): moved the generation of enter/leave events + to a utility function. + +2007-11-15 Neil J. Patel + + * clutter/clutter-model.c: + Added some more examples to the documentation, plus explained how the + iters work internally. + +2007-11-15 Øyvind Kolås + + * clutter/clutter-main.[ch]: added clutter_grab_pointer, + clutter_ungrab_pointer and clutter_get_pointer_grab, in + clutter_do_event deliver pointer related events only to the + actor with the pointer grab if a grab exists. + * clutter/clutter-private.h: added pointer_grab_actor to context. + * tests/Makefile.am: + * tests/test-grab.c: added test for testing the pointer grab. + +2007-11-15 Emmanuele Bassi + + * clutter/clutter-timeline.[ch]: Add ClutterTimeline:direction + property, defining the direction (forward or backward) of the + timeline. + + * tests/test-timeline.c: Test the direction property. + + * clutter.symbols: Update exported symbols + +2007-11-15 Emmanuele Bassi + + * clutter/clutter-effect.h: + * clutter/clutter-effect.c: + (clutter_effect_template_new_for_duration): Add a simple constructor + for implicitly creating a ClutterTimeline with a given duration. + +2007-11-15 Emmanuele Bassi + + * clutter.symbols: Update with the new public symbols + + * clutter/clutter-script.h: + * clutter/clutter-script-private.h: + * clutter/clutter-script.c: + (parse_signals), (json_object_end), + (signal_info_free), (object_info_free): Parse the "signals" + member for GObjects. + + (clutter_script_connect_signals), + (clutter_script_connect_signals_full): Add new API for autoconnecting + signal handlers using the UI definition files. + + * tests/test-script.c: + * tests/test-script.json: Test signal autoconnection. + +2007-11-15 Matthew Allum + + * clutter/Makefile.am: + * clutter/eglx/Makefile.am: + * clutter/eglx/clutter-backend-egl.c: + * clutter/eglx/clutter-backend-egl.h: + * clutter/eglx/clutter-eglx.h: + * clutter/eglx/clutter-event-egl.c: + * clutter/eglx/clutter-stage-egl.c: + * clutter/eglx/clutter-stage-egl.h: + * clutter/glx/Makefile.am: + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-backend-glx.h: + * clutter/glx/clutter-event-glx.c: + * clutter/glx/clutter-glx.h: + * clutter/glx/clutter-stage-glx.c: + * clutter/glx/clutter-stage-glx.h: + * clutter/x11/Makefile.am: + * clutter/x11/clutter-backend-x11-private.h: + * clutter/x11/clutter-backend-x11.c: + * clutter/x11/clutter-backend-x11.h: + * clutter/x11/clutter-event-x11.c: + * clutter/x11/clutter-stage-x11.c: + * clutter/x11/clutter-stage-x11.h: + * clutter/x11/clutter-x11.h: + Create a new X11 backend class of which EGL and GLX 'real' backends + then subclass. Effectively shares all X11 code between both backends + avoids code duplication and brings many missing features to EGL X + backend. Requires some cleanup and testing. (#518) + + * clutter/cogl/gles/cogl.c: (cogl_color): + Add define to use color4ub only if configure finds it. + If not fall back to old code. + + * configure.ac: + Drop support for vincent checks. + Drop sdles backend. + Specifically check for color4ub call. + +2007-11-15 Neil J. Patel + + * clutter/Makefile.am: + * clutter/clutter-model.c: + * clutter/clutter-model.h: + * clutter/clutter.h: + * tests/Makefile.am: + * tests/test-model.c: + Merged ClutterModel, which closes #443. + +2007-11-14 Emmanuele Bassi + + * clutter/clutter-clone-texture.c (set_parent_texture): Hide the + clone texture only if it was visible, and show it again if we + are adding a visible texture. + + * tests/test-script.json: Test the CloneTexture actor. + +2007-11-14 Emmanuele Bassi + + * clutter/clutter-actor.[ch]: Rename clutter_actor_get_id() to + clutter_actor_get_gid(). + + (clutter_actor_set_parent): Use GUINT_TO_POINTER(). + + * clutter/clutter-deprecated.h: Add a replacement warning for + clutter_actor_get_id(). + + * clutter/clutter-texture.c (texture_upload_data): Use + clutter_actor_get_gid(), and don't leak the filename string. + +2007-11-14 Emmanuele Bassi + + * clutter/clutter-scriptable.[ch]: Rename ::set_name and ::get_name + to ::set_id and ::get_id, to avoid potential confusion with the + ClutterActor:name property. + + * clutter/clutter-script.h: + * clutter/clutter-script.c (clutter_script_construct_object): Use + clutter_scriptable_set_id(). + + (clutter_get_script_id): Add a public function to retrieve the ID + used in the UI definition files from an object. + + * clutter/clutter-actor.c: Do not set the name of the actor with + the ID set in the UI definition files. + + * tests/test-script.c: Test clutter_get_script_id(). + + * clutter.symbols: Update with the new symbols. + +2007-11-14 Emmanuele Bassi + + * clutter/cutter-deprecated.h: Don't let everyone know from where + we have stolen^Wtaken inspiration for the deprecation warnings. + +2007-11-13 Øyvind Kolås + + * clutter/clutter-behaviour-bspline.[ch]: + Replaced clutter_behaviour_bspline_append with + clutter_behaviour_bspline_append_knots. Fixes bug #582. + * clutter/clutter-deprecated.h: added deprecation macro reflecting the + API change. + +2007-11-13 Øyvind Kolås + + * clutter/Makefile.am: + * clutter/clutter.h: include clutter-deprecated.h + * clutter/clutter-deprecated.h: added file containing macros that + provides more meaningful errors when compiling clutter using code that + uses deprecated functions. + +2007-11-13 Øyvind Kolås + + Renamed all properties of behaviours (and related + functions/variables/parameters) + to match the pattern something-start, something-end. Fixes bug #577. + + * clutter/clutter-behaviour-depth.c: + * clutter/clutter-behaviour-depth.h: + * clutter/clutter-behaviour-ellipse.c: + * clutter/clutter-behaviour-ellipse.h: + * clutter/clutter-behaviour-path.c: + * clutter/clutter-behaviour-rotate.c: + * clutter/clutter-behaviour-rotate.h: + * clutter/clutter-behaviour-scale.c: + * clutter/clutter-behaviour-scale.h: + * clutter/clutter-effect.c: + * clutter/clutter-effect.h: + * clutter/clutter-script.c: + * tests/test-depth.c: + * tests/test-script.c: + +2007-11-06 Øyvind Kolås + + * clutter/clutter-event.h: made ClutterEventAny have a source field, + rearanged other structs to have source in the same position. + * clutter/clutter-event.c: (clutter_event_get_source): modified to use + the any event. + (clutter_event_free): removed unused variable. + * clutter/clutter-main.c: (deliver_event), (clutter_do_event): reduced + amount of code. As well as deliver button-release events to the stage. + +2007-11-08 Rob Bradford + + * clutter/glx/clutter-glx.h: + Include needed for the definition of XVisualInfo. + +2007-11-08 Rob Bradford + + * clutter/cogl/gles/cogl.c: (cogl_color): + Switch over to using glColor4ub in the GLES backend. It's available in + the header file but missing in the reference manual. + +2007-11-07 Emmanuele Bassi + + * clutter/clutter-actor.[ch]: Fix the declaration of the + class handlers for the ::captured-event, ::enter-event and + ::leave-event signals; the function signatures were missing + the return value the signals marshallers were expecting, and + their names weren't respecting the convention for event-related + signals. + +2007-11-06 Tomas Frydrych + + * clutter/clutter-fixed.h: + Added CLUTTER_SQRTI_ARG_MAX, CLUTTER_SQRTI_5_PERCENT, + CLUTTER_SQRTI_10_PERCENT expressing clutter_sqrti limits. + Stripped trailing whitespace. + + * clutter/clutter-fixed.c: + (clutter_sqrti): + Updated documentation, stripped trailing whitespace. + + * clutter/clutter-behaviour-path.c: + (node_distance): + Use clib sqrt if clutter_sqrti() precission would be worse than + 10%. + Stripped trailing whitespace. + +2007-11-06 Emmanuele Bassi + + * clutter/clutter-layout.h: Add commodity macros to test for + a specific layout flag in one line. + +2007-11-06 Emmanuele Bassi + + * clutter/clutter-box.c (clutter_box_dispose): Call unparent() + on the children, instead of destroy(), to avoid a double free + and a crash when destroying a ClutterBox. + +2007-11-06 Emmanuele Bassi + + * clutter/clutter-label.c: Break the references in ::dispose, + and free the resources in ::finalize. + +2007-11-05 Øyvind Kolås + + * clutter/clutter-container.[ch]: removed find_child_by_id method + from interface (and all implementations of it) since this + functionality is now implemented using a global hash. + * clutter/clutter-box.c: + * clutter/clutter-group.c: + +2007-11-01 Emmanuele Bassi + + * clutter/clutter-script.c: Do not keep ownership of the + pixbufs we load. + +2007-10-31 Øyvind Kolås + + * clutter/clutter-main.c: (_clutter_do_pick): disable dithering + when painting in pick mode. + +2007-10-31 Matthew Allum + + * clutter/clutter-score.c: + Various minor improvements to ClutterScore. + +2007-10-30 Emmanuele Bassi + + * clutter/clutter-layout.c: Fix documentation, with regards to + the containers handling of the children implementing the + ClutterLayout interface. + +2007-10-29 Emmanuele Bassi + + * configure.ac: + * clutter/cogl/gl/cogl-defines.h.in: The OS X backend has a funny + OpenGL header location, so it basically did break every application + including clutter/cogl.h because the GL header inclusion depended + on symbols defined into Clutter's config.h. Now, we define the + GL header into the configure template and use it to create the + cogl-defines.h file cogl.h includes. + +2007-10-29 Emmanuele Bassi + + * clutter/json/json-parser.c: Enable parsing of negative numbers; + GScanner splits negative numbers into two tokens, so we need to + special case them. + +2007-10-29 Emmanuele Bassi + + * clutter/clutter-script.c: Add the :filename and :filename-set + properties, to retrieve the path of the currently parsed file (if + :filename-set is TRUE) from the ClutterScriptable implementations. + +2007-10-28 Matthew Allum + + * clutter/clutter-effect.c: + Small doc fix (#584) + +2007-10-27 Emmanuele Bassi + + * clutter/json/json-parser.c: + (json_scanner_msg_handler): Set the GError to be returned by + the parsing functions into the GScanner error message handler. + + (json_parser_object): Return the symbol token in case we have + a parse error after the member name. + + (json_parser_load_from_data): Propagate the error set in the + message handler, if any. + + * clutter/json/json-node.c (json_node_free): Unref the objects + only if are set, to avoid a couple of needless criticals we + get on error. + + * tests/test-script.json: More properties. + +2007-10-27 Emmanuele Bassi + + * clutter/clutter-script.[ch]: Slight API change in the + clutter_script_get_objects() function: now it takes + object name/object return location pairs and returns the + number of objects found and returned. + + * tests/test-script.c: Exercise the clutter_script_get_objects() + function. + +2007-10-27 Emmanuele Bassi + + * clutter/clutter-rectangle.c (clutter_rectangle_paint): Use + CGL_ENABLE_BLEND flag instead of CGL_BLEND value. (#580, + Gwenole Beauchesne) + +2007-10-27 Emmanuele Bassi + + * clutter/clutter-color.c (clutter_color_to_string): Update the + documentation for the format of the returned string, and remove + the note: now clutter_color_parse() can parse the string this + function returns. + +2007-10-27 Emmanuele Bassi + + * clutter/pango/pangoclutter-render.c: Last usage of guint + replaced with COGLuint. (Tommi Komulainen) + +2007-10-26 Matthew Allum + + * clutter/clutter-texture.c: + * clutter/cogl/cogl.h: + * clutter/cogl/gl/cogl-defines.h: + * clutter/cogl/gles/cogl-defines.h: + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/cogl.c: + Switch from use of guint to COGLuint. Avoids problems when + guint != GLuint on some platforms, i.e OSX. + (Tommi Komulainen, #525, #523) + + * clutter/Makefile.am: + * clutter/osx/Makefile.am: + * clutter/osx/clutter-backend-osx.c: + * clutter/osx/clutter-backend-osx.h: + * clutter/osx/clutter-event-osx.c: + * clutter/osx/clutter-osx.h: + * clutter/osx/clutter-stage-osx.c: + * clutter/osx/clutter-stage-osx.h: + * configure.ac: + Add initial Cocoa/OSX Backend (by Tommi Komulainen, see #526) + +2007-10-26 Emmanuele Bassi + + * clutter/clutter-entry.c: Add a :x-align property for aligning + the text in the entry, in case the actor is wider than the + text it shows. + +2007-10-26 Emmanuele Bassi + + * clutter/clutter-main.c: Add a --clutter-default-fps run-time + switch and CLUTTER_DEFAULT_FPS environment variable support for + setting the default frame-rate at run-time. + +2007-10-26 Emmanuele Bassi + + * clutter/clutter-script.h: + * clutter/clutter-script.c: Add a ::get_type_from_name() virtual + function for bindings to override. The current implementation + calls g_type_from_name() and our lazy class resolver. + + * clutter.symbols: Update. + + * doc/reference/clutter-sections.txt: Update. + +2007-10-25 Emmanuele Bassi + + * clutter/clutter-behaviour-path.c: Reverse the list of + parsed knots, to preserve the real ordering after prepending + them (thanks to Øyvind for spotting this). + + * clutter/clutter-behaviour-bspline.c: Ditto as above. + +2007-10-25 Emmanuele Bassi + + * clutter/clutter-script-parser.c: Unset the GValue when + getting a ClutterUnit from a JSON node. + +2007-10-25 Emmanuele Bassi + + * clutter/clutter-behaviour-bspline.c: Implement the + ClutterScriptableIface to parse the custom "knots" property. + +2007-10-25 Emmanuele Bassi + + * tests/test-script.c: + * tests/test-script.json: Rejig the test case and add a + path behaviour to test the knot parsing code. + +2007-10-25 Emmanuele Bassi + + * clutter/cogl/cogl.h: Do not include . + +2007-10-25 Emmanuele Bassi + + * clutter/clutter-behaviour-path.c: Implement the + ClutterScriptableIface to parse the custom "knots" property. + +2007-10-25 Emmanuele Bassi + + * clutter/clutter-texture.c (clutter_texture_set_property): Do + not try to set NULL pixbufs. + +2007-10-25 Emmanuele Bassi + + * clutter/clutter-actor.c: Implement part of the ClutterScriptable + interface, using the ClutterActor API to set and get the name + of an actor. + + (clutter_geometry_copy), (clutter_geometry_free): Use + the slice allocator to avoid fragmentation when setting + properties and emitting signals (that is: when packing + boxed types into GValues). + + (clutter_actor_box_copy), (clutter_actor_box_free), + (clutter_vertex_copy), (clutter_vertex_free): Ditto. + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + (clutter_actor_push_transform_child), + (clutter_actor_pop_transfomr_child): Simple wrappers around + COGL API, which avoid including clutter/cogl.h when writing + container actors outside Clutter. + +2007-10-25 Emmanuele Bassi + + * clutter/Makefile.am: + * clutter/clutter.h: + * clutter/clutter-scriptable.[ch]: Add the ClutterScriptable + interface; by implementing this interface, a class can + override the UI definition parsing and transform complex data + types into GObject properties, or allow custom properties. + + * clutter/clutter-script.c: + * clutter/clutter-script-parser.c: + * clutter/clutter-script-private.h: Rearrange the code and + use the ClutterScriptable interface to parse and build the + custom properties. This cleans up the code and also it makes + it more reliable (the complex type parsing is now done using + the target type and not just the name of the property). + +2007-10-25 Emmanuele Bassi + + * clutter/clutter-json.h: Header for including the JSON + parsing and data types. + + * clutter/json/json-types.h: Add JSON_NODE_VALUE_TYPE() macro. + + * clutter/json/Makefile.am: Install the JSON headers into a + private location. This might change in the future, and might + also cause collisions if you're using JSON-GLib and Clutter + at the same time, so be warned. + +2007-10-22 Emmanuele Bassi + + * clutter/clutter-label.c (clutter_label_request_coords): If + we get a size requisition, and we have ellipsization active, + check if we are getting less space than what the layout needs + and recompute the width. + +2007-10-22 Emmanuele Bassi + + * clutter/clutter-color.c (clutter_color_to_string): Change + the print format to "%02x%02x%02x%02x" because we use guint8 + for each component, not guint16. + +2007-10-19 Emmanuele Bassi + + * clutter/clutter-entry.c (clutter_entry_paint): Fixed off by + one error. (#566, Gwenole Beauchesne) + +2007-10-18 Øyvind Kolås + + * clutter/clutter-timeline.c: (clutter_timeline_set_duration): + rearranged arithemetic to allow specifying duration with sub second + precision (also enables durations smaller than one second). + +2007-10-18 Emmanuele Bassi + + * clutter/clutter-script-private.h: + * clutter/clutter-script.h: + * clutter/clutter-script.c: Allow id-less objects: as long + as they have a "type" member, a unique id will be provided. + + (json_object_end): Add merge id to the object information + structure. + + (apply_behaviours), (add_children): Keep the unresolved + objects around. + + (construct_stage), (clutter_script_construct_object): If an + object has unresolved children or behaviours try resolving + them when we ask for it. + + (json_parse_end), (clutter_script_ensure_objects): Ensure + that the objects are fully constructed as best as we can when + finished parsing. + + (object_info_free), (remove_by_merge_id): + (clutter_script_unmerge_objects): Remove objects under the + same merge id returned by the loading functions. (Fixes + bug #558) + + * test/test-script.c: + * test/test-script.json: Test unresolved merging and unmerging + in ClutterScript. + +2007-10-18 Matthew Allum + + * clutter/clutter-score.c: + * clutter/clutter-score.h: + * tests/test-score.c: + Implement more ClutterScore functionality. + +2007-10-17 Emmanuele Bassi + + * clutter/clutter-actor.c: + (clutter_actor_set_property), (clutter_actor_get_property), + (clutter_actor_class_init): Add the :reactive property, to + control reactiveness using the UI definition files. + + (clutter_actor_reparent): Do not assume the parent is a + ClutterContainer, and call the container API only if needed. + + (clutter_actor_destroy): Remove from the parent if needed, + just like the documentation says. + +2007-10-16 Øyvind Kolås + + * clutter/pango/pangoclutter-render.c: (tc_get): Provide for blank + rows/columns of pixels between adjecant glyphs in the texture cache to + avoid bilinear interpolation spillage at edges of glyphs. + +2007-10-16 Øyvind Kolås + + * clutter/clutter-main.c: (clutter_do_event): allow motion events + only delivered to stage to be caught in the capture phase as well + as the bubbling phase. + +2007-10-16 Emmanuele Bassi + + * clutter/json/json-object.c: Automatically transform every + delimiter into an underscore. + + * clutter/clutter-script.c: Implement the "parent_texture" + property translation for ClutterCloneTextures, using the + passed id of the parent texture. + +2007-10-16 Emmanuele Bassi + + * clutter/clutter-timeline.[ch]: Added ClutterTimeline:duration, + a property for setting the duration of a timeline in milliseconds. + The property comes with accessors and a new constructor. The + frame rate used is the default value. + + * clutter/clutter-private.h: + * clutter/clutter-main.[ch]: Add clutter_get_default_frame_rate() + and clutter_set_default_frame_rate(); these two functions control + the default frame rate to be used when creating timelines. Currently + is set to 60 frames-per-second. + +2007-10-16 Tomas Frydrych + + * build/msvc_2k5: + Added MSVC project files. + +2007-10-16 Emmanuele bassi + + * clutter/clutter-color.c: Copy the alpha when shading. + +2007-10-16 Tomas Frydrych + + * clutter.symbols: + Added a bunch of missing symbols. + + * clutter/clutter-script.c: + * json/json-node.c: + Use g_slice_new0 instead of g_slice_new to avoid passing + garbage to functions. + + * tests/test-threads.c: + Replaced non-portable sleep() with g_usleep(). + +2007-10-15 Tomas Frydrych + + * clutter/cogl/gl/cogl-defines.h: + * clutter/cogl/gl/cogl.c: + Fixup GL include for windows. + +2007-10-15 Matthew Allum + + * clutter/clutter-actor.c: + More events documentation. + + * clutter/clutter-event.c: + * clutter/clutter-event.h: + Add synthetic flag and make put_event use it + (via modded patch from pippin) + + * clutter/clutter-main.c: (clutter_do_event): + dont use put event anymore when pushing enter/leave events. + +2007-10-15 Emmanuele Bassi + + * clutter/pango/Makefile.am: Compile with the debug flags, if + set. + +2007-10-12 Emmanuele Bassi + + * clutter.symbols: Remove non-public symbols. + +2007-10-12 Tomas Frydrych + + * clutter.symbols: + A list of public symbols, one per line; semi-autogenerated, so + might not be complete -- PLEASE when adding new public APIs, add + the function name to this file. + +2007-10-12 Emmanuele Bassi + + * clutter/clutter-actor.c: Add a :depth property, so we can + set the initial depth of an actor inside the UI definition + files. + +2007-10-12 Tomas Frydrych + + * tests/test-actors.c: + When using MSVC, define _USE_MATH_DEFINES before including + math.h, otherwise constants like M_PI will not be defined. + +2007-10-12 Emmanuele Bassi + + * clutter/clutter-script.c (construct_timline), + (parse_member_to_property): Transfer ownership of the + implicit timelines to the behaviour, so that they get + unreferenced when the behaviour is destroyed. + + (parse_member_to_property): Reverse the list of children + and behaviours. + +2007-10-12 Tomas Frydrych + + Portability fixes: + + * clutter/clutter-private.h: + Bracket #include "unistd.h" with #ifdef HAVE_UNISTD_H + + * clutter/clutter-fixed.c: + Use "", not <> for inclusion of local files. + + (clutter_sqrtx): forward declare local variables. + + * clutter/clutter-debug.h: + Added non-gcc (c99) implementation of variadic debug macros for + when not compiling with gcc. + + * clutter/pango/pangoclutter-render.c: + Fixed some strange uses of CLUTTER_NOTE() + stripped trailing + whitespace. + +2007-10-12 Tomas Frydrych + + * clutter/clutter-actor.c: + * clutter/clutter-backend.c: + * clutter/clutter-behaviour-depth.c: + * clutter/clutter-box.c: + * clutter/clutter-clone-texture.c: + * clutter/clutter-container.c: + * clutter/clutter-entry.c: + * clutter/clutter-feature.c: + * clutter/clutter-fixed.c: + * clutter/clutter-group.c: + * clutter/clutter-hbox.c: + * clutter/clutter-label.c: + * clutter/clutter-layout.c: + * clutter/clutter-media.c: + * clutter/clutter-rectangle.c: + * clutter/clutter-score.c: + * clutter/clutter-script.c: + * clutter/clutter-stage.c: + * clutter/clutter-texture.c: + * clutter/clutter-timeline.c: + * clutter/clutter-timeout-pool.c: + * clutter/clutter-vbox.c: + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/cogl.c: + * clutter/eglnative/clutter-backend-egl.c: + * clutter/eglnative/clutter-event-egl.c: + * clutter/eglnative/clutter-stage-egl.c: + * clutter/eglx/clutter-backend-egl.c: + * clutter/eglx/clutter-event-egl.c: + * clutter/eglx/clutter-stage-egl.c: + * clutter/glx/clutter-event-glx.c: + * clutter/json/json-array.c: + * clutter/json/json-generator.c: + * clutter/json/json-node.c: + * clutter/json/json-object.c: + * clutter/json/json-parser.c: + * clutter/sdl/clutter-backend-sdl.c: + * clutter/sdl/clutter-event-sdl.c: + * clutter/sdl/clutter-stage-sdl.c: + + Fixedup config.h inclusion (must always be bracketed with #ifdef + HAVE_CONFIG_H). + +2007-10-11 Tomas Frydrych + + * clutter/clutter-entry.c: + Avoid using C++ reserverd words to name variables. + +2007-10-11 Øyvind Kolås + + Improve the quality of text when the scale it is shown at screen is + smaller than the original, seems to work well down to about a scale + of 50%. + + * clutter/pango/pangoclutter-fontmap.c: + (pango_clutter_font_map_default_substitute): turn off hinting. + * clutter/pango/pangoclutter-render.c: request linear filtering + instead of nearest neighbour when scaling down. + * tests/test-text.c: replaced test with a a test that renders a sample + grid with various pixel sizes and scales for visual inspection of + text rendering quality. + +2007-10-10 Emmanuele Bassi + + * clutter/glx/clutter-backend-glx.c: Fix documentation of the + filter function API. + + * clutter/clutter-score.c: + * clutter/clutter-effect.c: + * clutter/clutter-actor.c: Documentation fixes. + + * clutter/clutter-actor.h: Automatically typecast to ClutterActor + when setting/checking flags. + +2007-10-10 Emmanuele Bassi + + * clutter/clutter-actor.c: Beautify the ClutterActor documentation. + +2007-10-10 Emmanuele Bassi + + * clutter/clutter-actor.c: Remove the ::event-after signal: + three event layers to connect to seems a bit overkill. + + (clutter_actor_event): Return FALSE, not TRUE by default, + as g_signal_emit() will change the return value if no + handlers are connected + + * clutter/clutter-stage.c: Emit ::notify when we change + the fullscreen property. + + * clutter/clutter-script.c: Add more documentation for the + definition format and keywords. + + (translate_property): Collapse the G_TYPE_ENUM and G_TYPE_FLAGS + cases into one, to simplify the code. + + * tests/test-script.c: Test enumeration conversion by using + a value different from the default. + +2007-10-10 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * clutter/clutter-event.c: + * clutter/clutter-main.c: + * tests/test-events.c: + Add basic W3 DOM event 'capture' like functionality. + +2007-10-10 Emmanuele Bassi + + * clutter/clutter-script-private.h: + * clutter/clutter-script.c: Parse flags like we parse enums. + +2007-10-10 Emmanuele Bassi + + * clutter/json/json-types.h: + * clutter/json/json-array.c: + * clutter/json/json-object.c: Resync with the upstream copy + of JSON-GLib; add json_object_remove_member() and + json_array_remove_element() and fix the g_hash_table_get_keys() + replacement for GLib 2.12. + + * clutter/clutter-script.c: Clean up the complex properties + parsing code. + +2007-10-10 Emmanuele Bassi + + * clutter/clutter-script.c (json_object_end): Add "type_func" + to the list of attributes we skip. + +2007-10-10 Emmanuele Bassi + + * clutter/json/json-parser.c: Use the commodity JsonNode API + and accept bare values as root nodes. + + * clutter/clutter-script-private.h: + * clutter/clutter-script.c: Unreference the created objects + only if they are top-levels, like ClutterBehaviour and + ClutterTimelines. Actors have floating references, so we + just transfer ownership to their containers, and the stage + is owned by the backend. Add the "type_func" key to the + object definition, so the user can supply its own GType + function if the class name doesn't follow the GObject rules. + Document the ClutterScript public API. + +2007-10-10 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + Add missing enter/leave event signals + + * clutter/clutter-main.c: (clutter_do_event): + Set time in crossing events. + Protect against do_pick() failing. + +2007-10-09 Emmanuele Bassi + + * clutter/clutter-script.c (resolve_alpha_func): Fix the + ClutterAlphaFunc resolution function. + +2007-10-09 Emmanuele Bassi + + * tests/Makefile.am: + * tests/test-script.c: + * tests/test-script.json: Move part of the UI definition into + its own file and exercise clutter_script_load_from_file(). + +2007-10-09 Emmanuele Bassi + + * clutter/clutter-script.c (clutter_script_get_object): Construct + the requested object if it hasn't been already. This allows + referencing objects within the same snippet. + + * tests/test-script.c: Declare a timeline and use it inside + multiple behaviours; apply multiple behaviours to various + actors, then retrieve the timeline to start it when the test + runs. + +2007-10-09 Emmanuele Bassi + + * clutter/clutter-script-private.h: + * clutter/clutter-script.c: Allow applying behaviours directly + inside the UI definition data. + + * tests/test-script.c: Test the "behaviours" member. + +2007-10-09 Rob Bradford + + * clutter/eglnative/clutter-backend-egl.c: + (clutter_backend_egl_dispose): + Call eglTerminate() on the display when the backend is disposed of. + + * clutter/eglnative/clutter-stage-egl.c: + (clutter_stage_egl_realize): + Don't use the createNativeWindow() call, it's not generic EGL. + +2007-10-09 Emmanuele Bassi + + * clutter/clutter-script-private.h: + * clutter/clutter-script.h: + * clutter/clutter-script.c: Add licensing information to + the newly added files. + + * clutter/clutter-script.c: Support creating behaviours with + ClutterScript. ClutterAlpha objects are implicit, but + timelines can be both explicit objects using their id or + implicit objects. Make the property resolution and translation + more robust. Support the pixbuf property. + + * tests/test-script.c: Test the newly added features. + + * docs/reference/clutter-docs.sgml: + * docs/reference/clutter-sections.txt: Add ClutterScript. + +2007-10-09 Emmanuele Bassi + + * clutter/clutter-fixed.h: Add deprecation guards around + CLUTTER_FIXED_INT(). + +2007-10-08 Emmanuele Bassi + + * clutter/clutter-script.c: Parse ClutterMargin and ClutterPadding + properties from arrays or integers (assume pixels). + +2007-10-08 Emmanuele Bassi + + * clutter/clutter-script-private.h: + * clutter/clutter-script.c: Allow defining childrens for every + container actor inside the UI definition files. + +2007-10-08 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * clutter/clutter-private.h: + * clutter/clutter-main.c: + Add a hash to global clutter context mapping all parented actor + id's to actors. + Add clutter_get_actor_by_id() call. + Convert picking machinery to use above. + (performance/simpler composite actor creation) + + * clutter/clutter-stage.c: (clutter_stage_fullscreen), + (clutter_stage_unfullscreen), (clutter_stage_event): + Only set the fullscreen property on stage state fullscreen event(#545) + Experimental as could be painful to implement on non X backends. + +2007-10-08 Emmanuele Bassi + + * clutter/clutter-script.c (json_parse_end): + * clutter/json/json-object.c (json_object_get_members): Replace + the GLib 2.14 API with the equivalent code for GLib < 2.14. + + * configure.ac: Revert the dependency bump. + +2007-10-08 Emmanuele Bassi + + Initial implementation of the UI definition files. (#424) + + * clutter/json/Makefile.am: + * clutter/json/*.[ch]: In-tree copy of JSON-GLib, a GLib-based + JSON parser/generator library. We use it in-tree because we might + need to change the API. Ideally, we'd depend on it. + + * clutter/clutter.h: + * clutter/clutter-script-private.h: + * clutter/clutter-script.[ch]: ClutterScript, the scenegraph + generator class. It parses JSON streams in form of buffers and + files and builds the scene. + + * clutter/clutter-debug.h: + * clutter/clutter-main.c: Add a "script" debug flag + + * clutter/Makefile.am: Build glue. + + * tests/Makefile.am: + * tests/test-script.c: Add a test case for the ClutterScript. + + * configure.ac: Depend on GLib 2.14, so we can use the + g_hash_table_get_key() and g_hash_table_get_values() functions + for the time being; we can probably reimplement those, but we + are going to need 2.14 anyway if we are going to implement a + list model using GSequence. + +2007-10-08 Emmanuele Bassi + + * tests/test-behave.c: Use the right return type for the + event callbacks. + +2007-10-03 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-event.c: + * clutter/clutter-event.h: + * clutter/clutter-main.c: + * clutter/clutter-private.h: + * clutter/eglnative/clutter-event-egl.c: + * clutter/eglx/clutter-event-egl.c: + * clutter/glx/clutter-event-glx.c: + * clutter/sdl/clutter-event-sdl.c: + Remove seperate double/triple click events and replace with + a click_count member. + Move calculating click counts from backend to do_event() + Initial implementation of ENTER/LEAVE events. + + * tests/test-events.c: + Add code to test above. + + * tests/test-behave.c: + Sync with newer API. + + * clutter/clutter-score.c: + Silence a warning. + +2007-10-01 Emmanuele Bassi + + * clutter/clutter-fixed.h: Add CLUTTER_FIXED_TO_INT() and + deprecate CLUTTER_FIXED_INT(), for symmetry with + CLUTTER_FIXED_FROM_INT(). + + * clutter/clutter-alpha.c: + * clutter/clutter-behaviour-depth.c: + * clutter/clutter-behaviour-ellipse.c: + * clutter/clutter-behaviour-path.c: + * clutter/clutter-fixed.h: Use CLUTTER_FIXED_TO_INT(). + +2007-10-01 Emmanuele Bassi + + * clutter/clutter-actor.c (clutter_actor_get_size): Implement + get_size() as a wrapper around clutter_actor_query_coords() + instead of calling g_object_get() twice. + + (clutter_actor_init): Initialise the box in one call. + +2007-10-01 Emmanuele Bassi + + * clutter/clutter-actor.[ch]: Remove the ::event-after signal + class handler, as it's not meant to be overridden by sub-classes. + + (clutter_actor_class_init): + Make every event-related signal return a boolean: return TRUE + in a signal handler to block the emission. The value is accumulated + automatically by the signal API. + + (clutter_actor_event): If ::event returns TRUE, skip to emitting + ::event-after. Return the value accumulated by the signal emission + chain. + + * clutter/clutter-private.h: Rename _clutter_boolean_accumlator(). + + * clutter/clutter-main.c (clutter_do_event): If clutter_actor_event() + returns TRUE then stop the event emission chain from child to parent. + + * clutter/clutter-stage.c (clutter_stage_event): Behave like + clutter_actor_event(). + + (clutter_stage_get_key_focus), + (clutter_stage_set_key_focus): Avoid a nasty circular reference + issue: if the actor passed to set_key_focus is NULL then the stage + has the key focus. + + * tests/test-events.c: Update the events test with the API + changes. + +2007-10-01 Tomas Frydrych + + * clutter/clutter-actor.c: + (clutter_actor_set_scale_with_gravityx): + Use CLUTTER_QMUL for better precission (#532, patch by Gwenole + Beauchesne). + + * clutter/clutter-color.c: + (clutter_color_to_hlsx): + Added missing CLUTTER_INT_TO_FIXED conversion (#544, patch by Neil + Roberts). + +2007-10-01 Neil J. Patel + + Patch by: Tommi Komulainen + + * clutter/clutter-entry.c: (clutter_entry_delete_text): + Fix characters vs. bytes inconsistency (#520). + +2007-09-30 Matthew Allum + + * clutter/clutter-event.h: + Removed unused POINTER_ENTER and POINTER_LEAVE states. (#546) + * clutter/clutter-stage.c: (clutter_stage_fullscreen), + (clutter_stage_unfullscreen): + Only Change fullscreen prop if the backend implements fullscreen + methods. (#545) + +2007-09-28 Øyvind Kolås + + * clutter/clutter-container.[ch]: added + clutter_container_find_child_by_name. + +2007-09-28 Øyvind Kolås + + * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize): + removed unused variable perspective. + * tests/test-events.c: (main): added CLUTTER_STAGE() cast. + * tests/test-threads.c: include unistd.h for sleep(). + +2007-09-28 Øyvind Kolås + + * clutter/clutter-label.c: (clutter_label_ensure_layout): avoid + calling pango_layout_set_text|markup before we've got any text. + +2007-09-27 Matthew Allum + + * tests/test-scale.c: + Fix out of about array addressing (#522, Tommi Komulainen) + +2007-09-27 Matthew Allum + + * clutter/clutter-clone-texture.c: + * clutter/clutter-rectangle.c: + Include "config.h" in all c files (#524, Tommi Komulainen) + +2007-09-27 Matthew Allum + + Merge from stable. + + * clutter/clutter-behaviour-path.c: (path_alpha_to_position) + Fix uninitialized variable (#480, Gwenole Beauchesne) + +2007-09-27 Matthew Allum + + * clutter/clutter-event.c: + * clutter/clutter-event.h: + * clutter/clutter-main.c: + Further event tweaks; + - Ref the event actor source + - Protect against off stage events (button releases) (#511) + - Move more into ClutterEventAny + - Add a click count to button event (as yet unused) + - Minor cleanups + + * clutter/clutter-actor.c: + Make scale x/y a property. + + * clutter/clutter-private.h: + Remove _clutter_actor_apply_modelview* + + * clutter/eglx/clutter-backend-egl.c: + Warning cleanup + + * clutter/eglx/clutter-stage-egl.c: + * clutter/glx/clutter-stage-glx.c: + * clutter/sdl/clutter-stage-sdl.c: + Avoid setting viewport directly, but set sync flag. + + * clutter/pango/pangoclutter-render.c: (draw_glyph): + Minor cleanups. + + * clutter/Makefile.am: + * tests/Makefile.am: + * tests/test-score.c + * clutter/clutter.h: + * clutter/clutter-score.h: + * clutter/clutter-score.c: + Add very initial (broken) ClutterScore implementation. + +2007-09-25 Ross Burton + + Merge from stable. + + * clutter/clutter-group.c: + Optimise sort_z_order. + +2007-09-17 Emmanuele Bassi + + Merge from stable + + * clutter/eglnative/clutter-event-egl.c: + Flag every device click after the first as motion events + instead of button presses. (#505, Shreyas Srinivasan) + +2007-09-10 Matthew Allum + + Port from stable branch. + + * clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch): + Only declare tsevent if we have tslib (#498, Robert Bragg) + +2007-09-06 Emmanuele Bassi + + * clutter/clutter-stage.c: Remove stray include + in ClutterStage: the code requesting it was moved in the backends. + +2007-08-31 Emmanuele Bassi + + * clutter/clutter-rectangle.c: Fix the border drawing: do not + overdraw the rectangle on the border and fix the check for + different border colour. (#488, Neil Roberts) + +2007-08-29 Matthew Allum + + * clutter/clutter-effect.c: (clutter_effect_template_set_property): + Add missing break statement. Whoops. + +2007-08-29 Matthew Allum + + * clutter/clutter-main.c: (_clutter_do_pick): + Call glFinish before reading pixels + * clutter/eglx/clutter-stage-egl.c: (clutter_stage_egl_realize): + Add missing read surface in making context current. + Above fixes via Kate Alhola. + + * clutter/glx/clutter-glx.h: + Add missing filter funcs so there actually exported + +2007-08-24 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-event.h: + * clutter/clutter-main.c: + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-backend-glx.h: + * clutter/glx/clutter-event-glx.c: + * clutter/glx/clutter-stage-glx.c: + * clutter/glx/clutter-stage-glx.h: + Add initial support for stage state events. + Fix fullscreening for an already mapped stage. + + * tests/test-events.c: + Print out info from the above. Blue button now toggles + fullscreen. + + * clutter/clutter-effect.c: + * clutter/clutter-effect.h: + Add a setting for templates to ref or clone underlying + timelines. (As to improve sync issues like those in foofone) + + * tests/test-timeline.c: + Also add completed signals. + + * clutter/cogl/gles/cogl.c: (cogl_texture_image_2d): + * configure.ac: + Forward port from stable branch. RGB Image fixes gles + and check for lower case libgles_cm. + +2007-08-24 Tomas Frydrych + + * clutter/clutter-actor.c: + (_clutter_actor_apply_modelview_transform): + + Fixed rotation around x axis (bug 486). + +2007-08-23 Emmanuele Bassi + + * clutter/clutter-private.h: + * clutter/clutter-event.c: Revert the event queue ordering + commit. + + * clutter/eglx/clutter-event-egl.c: + * clutter/glx/clutter-event-glx.c: + * clutter/sdl/clutter-event-sdl.c: Update backends. + +2007-08-22 Tomas Frydrych + + * clutter/clutter-behaviour-rotate.c: + * clutter/clutter-behaviour-ellipse.c: + + Fixed CCW rotation in rotate behaviour (bug 483); fixed overall + path length calculation for angles > 360 in rotate and ellipse. + +2007-08-22 Emmanuele Bassi + + * clutter/clutter-main.c (clutter_threads_dispatch_free): Remove + the main threads locking calls: the main loop might remove the + source while dispatching it, so whether or not we are already + holding the lock is unpredictable for the library. Leave a comment + with the relevant bug number in GNOME's Bugzilla and wait for a + fix in GLib. + +2007-08-21 Emmanuele Bassi + + * clutter/clutter-event.c: Correctly initialise the state + variables used to detect multiple clicks. + + (clutter_event_get_coords): Return the coordinates for + CLUTTER_3BUTTON_PRESS events. + + (clutter_events_pending): Check from the tail of the queue backward, + like we do in clutter_event_get() and clutter_event_peek(). + +2007-08-21 Emmanuele Bassi + + Preserve the ordering of the events in the queue when sythesising + new events in the event translation sequence. (#481) + + * clutter/clutter-event.c: + * clutter/clutter-private.h: Allow flagging new events on the + events queue without breaking ClutterEvent using a masked type. + + (clutter_event_get), (clutter_event_put), + (clutter_event_pending): Ignore events with the CLUTTER_EVENT_PENDING + flag set when walking the events queue. + + * clutter/eglx/clutter-event-egl.c: + * clutter/glx/clutter-event-glx.c: + * clutter/sdl/clutter-event-sdl.c: Push the new events straight + on the queue, with the CLUTTER_EVENT_PENDING flag set; remove the + flag if the event translation was succesful, or remove the event + altogether. + +2007-08-21 Emmanuele Bassi + + * clutter/clutter-stage.c: Add missing documentation for the + ClutterStage properties. + +2007-08-21 Tomas Frydrych + + * clutter/clutter-fixed.c: + (clutter_sqrti): + + Fixes for 64-bit platforms; use of SSE builtin when available + (bugs 478, 479, patches by Gwenole Beauchesne). + +2007-08-20 Emmanuele Bassi + + * clutter/Makefile.am: + * clutter/clutter-enum-types.h.in: + * clutter/clutter-enum-types.c.in: Use template files for + glib-mkenums; this makes the Makefile template a bit more + clean and the enum types generation more customisable (e.g. + when GLib 2.14 has been released, we can use g_once_init_enter() + and g_once_init_leave() to have thread-safe GType functions + for the enum types as well). + +2007-08-20 Emmanuele Bassi + + * clutter/clutter-version.h.in: Fix CLUTTER_CHECK_VERSION() + macro to accept micro versions. (#477, Neil Roberts) + +2007-08-19 Emmanuele Bassi + + Various timeline related changes. + + * clutter/clutter-timeout-pool.c: Use g_list_insert_sorted() to + fix a timeout pool reversal happening with our homegrown + sorted insertion function. (see #470) + + * tests/Makefile.am: + * tests/test-timeline.c: Add a ClutterTimeline test suite, for + finding regressions in the behaviour of the timelines. (#470, + Rob Bradford) + + * clutter/clutter-main.c (clutter_do_event): Use an EVENT note, + not a SCHEDULER one; SCHEDULER is for timelines and idle sources + only. + + * clutter/clutter-version.h.in: Protect the bare numbers of + the version components. + + * clutter/clutter-effect.c: Do not unref the ClutterAlpha, as + the ownership is already of the behaviour used by the effect + closure. + + * clutter/clutter-timeline.c: Emit the ::new-frame signal only + if the timeline is still active + + Always advance at least of one frame. (#471, Rob Bradford) + + Do not rewind the timeline if the user paused it in the ::new-frame + signal handler: either the user has already done it with + clutter_timeline_stop() or it's not what he's expecting if he + called clutter_timeline_pause(). (#372, Johan Bilien) + + If we skipped the last frame before emitting the ::complete + signal, emit ::new-frame with the last frame. + + Do not call clutter_timeline_stop() at the end of a non-looping + timeline, as it emits the ::pause signal as well. Also, rewind the + timeline *after* emitting ::complete, so that calling + clutter_timeline_get_current_frame() in a signal handler still + works. + +2007-08-19 Matthew Allum + + * clutter/eglx/clutter-event-egl.c: (clutter_event_dispatch): + Fix clutter_thread typo (Kate Alhola) + +2007-08-18 Emmanuele Bassi + + * clutter/clutter-effect.c: + * clutter/clutter-main.c: Update the Since: tag for the + backported API. + + * clutter/clutter-behaviour-rotate.c: Fix a typo in the get_center() + method. (#468, Neil Roberts) + + Freeze and thaw the notification queue when changing multiple + properties in the same method. Fix some coding style issues. + +2007-08-15 Emmanuele Bassi + + * clutter/clutter-actor.c: Add checks for the "reactive" flag + accessors. + +2007-08-15 Emmanuele Bassi + + * clutter/clutter-effect.[ch]: Add clutter_effect_depth(), a + simple wrapper around ClutterBehaviourDepth. (#464, Ali Sabil) + +2007-08-15 Emmanuele Bassi + + * clutter/clutter-alpha.c (clutter_smoothstep_inc): Use the + correct type for parameters, to avoid overflow (Ali Sabil). + + * clutter/clutter-behaviour-opacity.c: Use the right format + when printing the unsigned alpha value and opacity to the + debug output. + +2007-08-14 Emmanuele Bassi + + * clutter/clutter-container.[ch]: + * clutter/clutter-actor.c: + * clutter/clutter-group.c: Rename clutter_container_raise() to + clutter_container_raise_child(), and clutter_container_lower() + to clutter_container_lower_child() to avoid clashing with + ClutterActor raise() and lower() respectively. + +2007-08-13 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * clutter/clutter-event.c: + * clutter/clutter-event.h: + * clutter/clutter-main.c: + * clutter/clutter-main.h: + * clutter/clutter-private.h: + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + * clutter/clutter-types.h: + Initial implementation of actors emmitting event signals (423); + - Actors set_reactive() to receive mouse events. + (call clutter_enable_motion_events() for per action motion events) + - clutter_stage_set_key_focus () to direct key events. + - Events bubble up to parents (ending at stage) + (original source identified by clutter_event_get_source()) + TODO: + - enter/leave notifys for actors. + - stage specific events - fullscreen + - grabs + + * tests/test-events.c: + Extend a little to use new API + + * clutter/cogl/gl/cogl.c: + * clutter/glx/clutter-backend-glx.c: + Move get_proc_address into cogl and out of backend. + (shaders will need it) + + * clutter/clutter-group.c: (clutter_group_real_lower): + Fix a minor compile warning. + + * TODO: + Sync up. + +2007-08-13 Emmanuele Bassi + + * clutter/clutter-container.[ch]: Add find_child_by_id(), + raise(), lower() and sort_depth_order() virtual functions to + ClutterContainer. + + * clutter/clutter-group.[ch]: Deprecate the redundant calls + from ClutterGroup, and make ClutterGroup implement them as part + of the ClutterContainer interface implementation. + + * clutter/clutter-box.c: Implement the newly added ClutterContainer + methods; now clutter_stage_get_actor_at_pos() works with boxes + as well as groups. + + * clutter/clutter-stage.c: + * clutter/clutter-actor.c: Replace calls to ClutterGroup functions + with ClutterContainer ones. + +2007-08-12 Emmanuele Bassi + + * clutter/clutter-timeout-pool.c: Fix removing and adding timeouts + to the timeout pool during a dispatch of a timeout source already + inside the pool. (#456, based on a patch by Neil Roberts) + + (clutter_timeout_dispatch), (clutter_timeout_pool_dispatch): Hold + the main Clutter lock in the pool dispatch function, instead of + the per-timeout dispatch; this guarantees that the ref+unref of + the single timeouts are done under the main lock. + +2007-08-12 Matthew Allum + + * clutter/clutter-texture.c: (texture_upload_data): + Align texture data correctly for edge tiles. + (#422 - Neil Roberts) + +2007-08-11 Matthew Allum + + * clutter/clutter-texture.c: + Fix typo in clutter_texture_get_pixbuf (#458, Neil Roberts). + Use take_object when getting pixbuf prop to avoid ref leak. (Neil + Roberts) + +2007-08-09 Emmanuele Bassi + + * clutter/clutter-box.c: Rename a variable to fix a compiler + warning. + +2007-08-08 Emmanuele Bassi + + * clutter/clutter-behaviour-ellipse: + (clutter_behaviour_ellipse_get_tiltx): Remove useless + "Return" in the API documentation. + +2007-08-08 Emmanuele Bassi + + * clutter/clutter-timeout-pool.c: Fix sorting of the pool + when inserting and removing timeout sources. (#449, Neil + Roberts) + +2007-08-08 Emmanuele Bassi + + * clutter/clutter-main.c (clutter_get_timestamp): Remove + the microseconds remainder, which is mostly useless. (#447) + +2007-08-08 Emmanuele Bassi + + * clutter/clutter-main.c (clutter_get_timestamp): Return the + correct number of microseconds (#447, Neil Roberts) + +2007-08-08 Emmanuele Bassi + + Merge the clutter.git/threading branch. + + * clutter/clutter-main.c: + * clutter/clutter-main.h: + * clutter/clutter-private.h: Add threading locking and unlocking + functions, to mark a critical section and access the Clutter API + from differen threads. Add an initialisation function and a function + to override the default lock aquisition and release functions, for + bindings and application-specific locking handling. Add MT-safe + versions of g_idle_add() and g_timeout_add() which will call the + functions under the main Clutter lock and without races. The + Clutter thread-safe implementation is basically the same used by + GDK, so the same caveats apply. + + * clutter/clutter-actor.c: + * clutter/clutter-timeline.c: + * clutter/clutter-timeout-pool.c: Use the new threading API when + invoking idle and timeouts. + + * clutter/eglnative/clutter-event-egl.c: + * clutter/eglx/clutter-event-egl.c: + * clutter/glx/clutter-event-glx.c: + * clutter/sdl/clutter-event-sdl.c: Acquire and release the main + Clutter lock when preparing, checking and dispatching the events + on the queue in every backend. + + * tests/Makefile.am: + * tests/test-threads.c: Add a test case, showing how to use the + threading API and write thread-safe Clutter applications. + +2007-08-08 Emmanuele Bassi + + * configure.ac: Bump up to 0.5.0 and start the new development + branch. + +2007-08-07 Emmanuele Bassi + + * configure.ac: Bump up to 0.4.0. + +2007-08-07 Emmanuele Bassi + + * clutter/clutter-entry.c: + * clutter/clutter-fixed.c: + * clutter/pango/pangoclutter.h: Small fixes for passing the + distcheck phase with extra-strict compiler flags. + +2007-08-07 Emmanuele Bassi + + * clutter/clutter-actor.h: + * clutter/clutter-alpha.h: + * clutter/clutter-behaviour-ellipse.[ch]: + * clutter/clutter-behaviour-path.h: + * clutter/clutter-behaviour-rotate.c: + * clutter/clutter-behaviour.h: + * clutter/clutter-box.h: + * clutter/clutter-color.h: + * clutter/clutter-container.h: + * clutter/clutter-effect.h: + * clutter/clutter-entry.h: + * clutter/clutter-fixed.h: + * clutter/clutter-layout.h: + * clutter/clutter-main.h: + * clutter/clutter-stage.h: + * clutter/clutter-texture.h: + * clutter/clutter-units.h: + * clutter/clutter-version.h.in: + * clutter/glx/clutter-glx.h: Documentation additions and + various fixes. + +2007-08-07 Matthew Allum + + * clutter/clutter-behaviour-ellipse.c: + Add a documentation note regarding ellipse setting + the applied actors position. + +2007-08-07 Matthew Allum + + * NEWS: + * README: + More updates ready for 0.4.0 + +2007-08-07 Matthew Allum + + * clutter/clutter-fixed.c: + * clutter/clutter-fixed.h: + Add documentation. + + * clutter/cogl/gl/cogl.c: (cogl_perspective): + Remove CFX_* shortened macros + +2007-08-06 Emmanuele Bassi + + * clutter/clutter-main.[ch]: Remove clutter_threads_enter() + and clutter_threads_leave(); both are no-ops and they just + confuse things. The thread-awareness in Clutter is planned + for 0.4.1/0.5.0. + + * README: + * NEWS: Update. + +2007-08-06 Emmanuele Bassi + + * clutter/clutter-box.[ch]: Implement margin, color and default + padding for ClutterBox. Provide API to pack a child by specifying + every packing detail or just pack with the defaults. ClutterBox + works like the HTML boxing model, API-wise: a box with margins + and padding around each child. Needs work, still. + + * clutter/clutter-hbox.c: + * clutter/clutter-vbox.c: Update with the new API and new attributes. + + * clutter/clutter-types.h: Add ClutterMargin and ClutterPadding. + + * test/test-boxes.c: Exercise the new API. + +2007-08-06 Matthew Allum + + * clutter/clutter-texture.c: + Correct set pixbuf property as GDK_TYPE_PIXBUF + (fix via Neil Roberts) + +2007-08-06 Matthew Allum + + * clutter/clutter-behaviour-depth.c: + Modify to work like all other behvaiours in not forcing + increasing order in behaviour 'limits'. (#436) + Rename limit min/max props to start/end. + + * tests/test-depth.c: + Simplify test-case to work with above change and + without multiple ramps + + * clutter/clutter-behaviour-rotate.c: + Handle CW rotation when end > start and similar for CCW just + like ellipse behaviour. + +2007-08-05 Matthew Allum + + * README: + * clutter/clutter-actor.c: + Document show/hide_all behaviour correctly. + +2007-08-05 Emmanuele Bassi + + * clutter/clutter-behaviour-depth.c: Fix typo in the description. + +2007-08-04 Emmanuele Bassi + + * clutter/clutter-behaviour-depth.c: Clarify the depth behaviour + even more in the description used by the API reference. + +2007-08-04 Emmanuele Bassi + + * clutter/clutter-behaviour-depth.[ch]: Clarify that what drives + the movement along the Z axis is the ClutterAlpha object (we + don't have the luxury of a rollover like the opacity does); + so, if you want to go from 0 to -100 you have to use a + decreasing function, just as well if you want to go from 100 + to 0. Using a min-depth of 100 and a max-depth of 0 and an + increasing function is undefined behaviour. + + * tests/Makefile.am: + * tests/test-depth.c: Add a test case for the depth behaviour. + +2007-08-04 Emmanuele Bassi + + * clutter/clutter-actor.c (clutter_actor_set_opacity): Queue + a redraw when setting the opacity of an actor. + +2007-08-03 Emmanuele Bassi + + * clutter/clutter-behaviour-ellipse.c: + (clutter_behaviour_ellipse_get_angle_tilt): Avoid recursion + by fixing a typo. + + (clutter_behaviour_ellipse_get_angle_begin), + (clutter_behaviour_ellipse_get_angle_end): Correct the angles + here too. + +2007-08-03 Emmanuele Bassi + + * clutter/clutter-behaviour-ellipse.c: + (clutter_behaviour_ellipse_get_property): Do not forget to + correct the angles when returning them. + +2007-08-03 Tomas Frydrych + + * clutter/clutter-behaviour-ellipse.c: + * clutter/clutter-behaviour-ellipse.h: + (clutter_behaviour_ellipse_new): + (clutter_behaviour_ellipse_newx): + + Added direction parameter; made behaviour to respect direction + parameter; unclumped angle_begin and angle_end values. + +2007-08-02 Matthew Allum + + * NEWS: + * README: + Initial updating ready for release. + +2007-08-02 Emmanuele Bassi + + * clutter/eglnative/clutter-backend-egl.c: + * clutter/eglx/clutter-backend-egl.c: + * clutter/sdl/clutter-backend-sdl.c: Set the default resolution + as 96.0 dpi for every backend (we already were under this + assumption anyway, and this makes it easier to change this + setting per-backend). + + * clutter/pango/pangoclutter-fontmap.c: + * clutter/pango/pangoclutter.h: Allow setting the resolution + for the PangoClutterFontMap object and provide the implementation + for the PangoFcFontMap::get_resolution() virtual function. This + allows to set the resolution of the PangoContext when retrieving + it. + + * clutter/clutter-label.c (clutter_label_init): Set the + resolution of the font map with the one the backend gives us. + + * clutter/clutter-entry.c (clutter_entry_init): Ditto. + +2007-08-02 Emmanuele Bassi + + * clutter/clutter-color.c (clutter_color_subtract): Invert the + operands and match what the function says it does. (#435) + +2007-08-01 Matthew Allum + + * clutter/clutter-color.c: (clutter_color_from_pixel): + Fix typo in alpha channel extraction (#434) + +2007-08-01 Emmanuele Bassi + + * clutter/clutter-actor.[ch]: Add floating-point variant of the + clutter_actor_get_r[xyz]angx() functions. + +2007-07-31 Emmanuele Bassi + + * clutter/clutter-stage.[ch]: Fix clutter_stage_set_user_resizable() + name, and add a getter for the property. + + * clutter/glx/clutter-stage-glx.c: Use the accessor, not + g_object_get() to retrieve the value of the resizable property. + +2007-07-31 Emmanuele Bassi + + * clutter/clutter-backend.[ch]: Add clutter_backend_set_resolution() + and clutter_backend_get_resolution(); backends should use the former + to set the resolution of the display when initialising, while actors + should use the latter when sizing themselves depending on the + resolution or the font size. + + * clutter/glx/clutter-backend-glx.c: Set the resolution as 96 dpi + as a default and query the X server when opening the display. + + * clutter/clutter-entry.c: Drop the hardcoded dpi value and use + clutter_backend_get_resolution() to compute the default size. + +2007-07-31 Emmanuele Bassi + + * clutter/clutter-entry.c (clutter_entry_init): Set the default + size of the entry based on the size of the default font. (#414). + +2007-07-31 Emmanuele Bassi + + * clutter/sdl/clutter-backend-sdl.c: Fix a typo in + clutter_backend_sdl_get_features() (#426, Pan Bohui) + +2007-07-30 Matthew Allum + + * AUTHORS: + * HACKING: + * README: + Various updates and improvements. + + * configure.ac: + Remove --disable-fast-fp-conversions + +2007-07-30 Tomas Frydrych + + * clutter/clutter-behaviour-ellipse: + (clutter_behaviour_ellipse_advance): + + Fixed invalid assumption about z cooordiance in calculation of + tilt in y axis. + +2007-07-30 Tomas Frydrych + + * clutter/clutter-actor.c: + + Fixed incorrect order of modelview matrix stack in calculating + actor vertices. + +2007-07-30 Matthew Allum + + * clutter/clutter-backend.h: + Remove #if 0's old backend_api + (generating uneeded documentation) + +2007-07-30 Matthew Allum + + * clutter/clutter-texture.c: + Fix re-relisation for large tiled textures. + * tests/test-textures.c: (main): + Add a show/hide to trigger above (see #442) + +2007-07-29 Emmanuele Bassi + + * clutter/clutter-types.h: Document ClutterGravity enumeration + and remove the only incomplete symbol of the api reference. Now + we are up to 79% documented symbols. + +2007-07-29 Emmanuele Bassi + + * clutter/clutter-media.c: Document ClutterMedia signals; + replace the implementation of clutter_media_set_filename() with + something a wee bit more robust (and portable) than a sprintf(). + +2007-07-29 Emmanuele Bassi + + * clutter/clutter-behaviour-ellipse.c: Documentation + fixes; kill some indirections; freeze the notification + queue when (potentially) emitting multiple notify + signals. + + * clutter/clutter-alpha.h: Remove the unused macro + CLUTTER_TYPE_SMOOTHSTEP. + +2007-07-28 Emmanuele Bassi + + * clutter/clutter-actor.[ch]: Use GInitiallyUnowned + as the parent structure in the ClutterActor structure + definition; somehow, this has escaped everyone attention + in one year and a half. Luckily, GInitiallyUnowned is + as big as GObject. + + (clutter_actor_get_abs_position_units), + (clutter_actor_get_abs_position): Check parameters. + + * clutter/clutter-texture.h: Unmangle the flags enum + type declaration, so that dumb parsers like h2defs.py + are not fooled. + + * clutter/clutter-behaviour-ellipse.[ch]: + * clutter/clutter-effect.c: Fix some documentation + issues and make gtk-doc happy. + +2007-07-27 Tomas Frydrych + + * clutter/clutter-behaviour-ellipse.h: + * clutter/clutter-behaviour-ellipse.c: + * tests/test-behave.c: + (clutter_behaviour_ellipse_get_angle_tilt): + (clutter_behaviour_ellipse_set_angle_tilt): + + Pruned ClutterBehaviourEllipse api. + +2007-07-27 Tomas Frydrych + + * clutter/clutter-behaviour-ellipse.h: + * clutter/clutter-behaviour-ellipse.c: + (clutter_behaviour_ellipse_set_angle_tilt_x): + (clutter_behaviour_ellipse_set_angle_tilt_xx): + (clutter_behaviour_ellipse_get_angle_tilt_x): + (clutter_behaviour_ellipse_get_angle_tilt_xx): + (clutter_behaviour_ellipse_set_angle_tilt_y): + (clutter_behaviour_ellipse_set_angle_tilt_yx): + (clutter_behaviour_ellipse_get_angle_tilt_y): + (clutter_behaviour_ellipse_get_angle_tilt_yx): + (clutter_behaviour_ellipse_set_angle_tilt_z): + (clutter_behaviour_ellipse_set_angle_tilt_zx): + (clutter_behaviour_ellipse_get_angle_tilt_z): + (clutter_behaviour_ellipse_get_angle_tilt_zx): + (clutter_behaviour_ellipse_set_tilt): + (clutter_behaviour_ellipse_set_tiltx): + (clutter_behaviour_ellipse_get_tilt): + (clutter_behaviour_ellipse_get_tiltx): + + * tests/test-behave.c: + + Allow tilting ClutterBehaviourEllipse in all three axis; affects + any code using the previous tilt api. + +2007-07-26 Matthew Allum + + * clutter/clutter-feature.h: + Add new stage feature flags and document. + + * clutter/eglnative/clutter-backend-egl.c: + * clutter/eglx/clutter-backend-egl.c: + * clutter/sdl/clutter-backend-sdl.c: + Set new feature flags. + + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-stage-glx.c: + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + Add a 'user_resizeable' setting to the backend and implement + for glx backend. + +2007-07-26 Emmanuele Bassi + + * clutter/clutter-behaviour-ellipse.c: + * clutter/clutter-behaviour.h: + * clutter/clutter-event.c: + * clutter/clutter-texture.h: + * clutter/clutter-types.h: Add missing documentation and fix + parameters names to make gtk-doc happy. + +2007-07-26 Tomas Frydrych + + * clutter/clutter-behaviour-ellipse.h: + * clutter/clutter-behaviour-ellipse.c: + * tests/test-behave.c: + + Removed tilt paramter from ClutterBehaviourEllipse constructors; + Made angles to be relative to 12 o'clock; + Added direction property; + +2007-07-26 Emmanuele Bassi + + * clutter/clutter-types.h: + * clutter/Makefile.am: Add a header for common types, to avoid + inclusion hell. + + * clutter/clutter-actor.h: + * clutter/clutter-behaviour.h: + * clutter/clutter-behaviour-rotate.h: + * clutter/clutter-behaviour-scale.h: Move some boxed types and som + enums to clutter-types.h. + +2007-07-26 Neil J. Patel + + * clutter/clutter-entry.c: (offset_to_bytes), + (clutter_entry_ensure_cursor_position), + (clutter_entry_new_with_text), (clutter_entry_new), + (clutter_entry_insert_unichar), (clutter_entry_delete_chars): + + Fixed utf8 support so it actually works now, for both + inserting and deleting chars. Fixed positioning of cursor for + utf8 chars. Both GString and Pnago need bytes (not + documented!) for string manipulation, so making sure all + values were bytes and not char positions fixed the issue. Set + a default size of 50x50 for the entry, otherwise no chars can + be seen if the size is not set after creation (which confuses + the developer). + +2007-07-26 Emmanuele Bassi + + * clutter/clutter-timeline.c: + Do not accept zero as a value for the num-frames and fps properties + in both the constructor and the setter functions. + +2007-07-26 Emmanuele Bassi + + * clutter/clutter-actor.[ch]: + * clutter/clutter-behaviour-bspline.c: + * clutter/clutter-behaviour.c: + * clutter/clutter-box.[ch]: + * clutter/clutter-clone-texture.c: + * clutter/clutter-entry.c: + * clutter/clutter-group.[ch]: + * clutter/clutter-texture.c: + * clutter/pango/pangoclutter-render.c: + * tests/test-actors.c: + * tests/test-behave.c: + * tests/test-entry.c: + * tests/test-events.c: + * tests/test-project.c: + * tests/test-rotate.c: + * tests/test-scale.c: + * tests/test-text.c: + * tests/test-textures.c: Miscellaneous compiler warning fixes. + +2007-07-26 Emmanuele Bassi + + * configure.ac: + * Makefile.am: Add a configure switch to enable strict + compiler flags, and turn it on when we are doing a distcheck. + +2007-07-25 Matthew Allum + + * Makefile.am: + * HACKING: + Add with initial notes on coding bits and bobs. + + * clutter/clutter-behaviour-scale.c: + Doc fixes. + + * clutter/clutter-event.c: (clutter_event_put): + Doc fixes. + + * clutter/glx/clutter-stage-glx.c: + Disable wm user resizing of stage (At least for now) + Doc fixes. + +2007-07-25 Tomas Frydrych + + * clutter/clutter-fixed.c: + + Fixed endianness issue in fast fp conversions. + +2007-07-25 Tomas Frydrych + + * configure.ac: + * clutter/clutter-fixed.c: + + Added --disable-fast-fp-conversion option. + +2007-07-25 Emmanuele Bassi + + * clutter/clutter-label.[ch]: Ouch, clutter_label_get_alignment() + returns a PangoAlignment, not a boolean. + +2007-07-25 Emmanuele Bassi + + * clutter/clutter-behaviour.h: + * clutter/clutter-behaviour.c: Rename clutter_behaviour_clear() + to clutter_behaviour_remove_all() to avoid method clashes in + bindings. + +2007-07-25 Tomas Frydrych + + * tests/test-rotate.c: + * tests/Makefile.am: + + Added test-rotate. + +2007-07-25 Emmanuele Bassi + + * clutter/clutter-behaviour-bspline.c: Kill off some deep pointer + indirections; use CLUTTER_NOTE() instead of ifdeffed out g_debug(); + add checks in every public entry point; move some initialisations + of private data structures out of the constructor and into the + init function, where they belong. + +2007-07-25 Matthew Allum + + * clutter/clutter-behaviour-rotate.c: + * clutter/clutter-behaviour-rotate.h: + Split 'center' prop into 3 seperate props for each axis. + Use clutter_behaviour_actors_foreach() rather than + clutter_behaviour_get_actors() to avoid copying list. + Call fixed point rotation funcs internally. + + * clutter/clutter-effect.c: + * clutter/clutter-effect.h: + Add new simple rotation based effect funcs. + +2007-07-25 Emmanuele Bassi + + * clutter/clutter.h: Include clutter-behaviour-depth.h + +2007-07-24 Emmanuele Bassi + + * clutter/clutter-behaviour-rotate.[ch]: Add a center property + for the center or rotation; implement the set_bounds() methods. + +2007-07-24 Emmanuele Bassi + + * clutter/eglx/clutter-backend-egl.c: + * clutter/eglnative/clutter-backend-egl.c: + * clutter/sdl/clutter-backend-sdl.c: Destroy the stage in every + backend. + +2007-07-24 Emmanuele Bassi + + * clutter/glx/clutter-backend-glx.c: Destroy the stage, don't + just unref it. + +2007-07-24 Emmanuele Bassi + + * clutter/clutter-main.c: Add debug markers. + +2007-07-24 Emmanuele Bassi + + * clutter/clutter-texture.[ch]: Add a ClutterTextureError + to be returned by the loader functions; use the GObject API + to allocate the private data structure instead of managing it + ourselves; add documentation. + +2007-07-24 Emmanuele Bassi + + * clutter/clutter-actor.c: + * clutter/clutter-box.h: + * clutter/clutter-stage.c: Documentation fixes. + +2007-07-24 Matthew Allum + + * clutter/cogl/gl/cogl-defines.h: + Add CGL_UNSIGNED_INT_8_8_8_8_REV (for big endian machines) + +2007-07-24 Matthew Allum + + * clutter/cogl/gl/cogl-defines.h: + Another GL_TEXTURE_RECTANGLE_ARB related fix (#404) + +2007-07-24 Matthew Allum + + * clutter/clutter-backend.c: + Minor build fixes (#413) + +2007-07-24 Emmanuele Bassi + + * clutter/clutter-effect.h: + * clutter/clutter-effect.c: Add a secondary constructor for + ClutterEffectTemplate, for use of the bindings. + +2007-07-24 Matthew Allum + + * clutter/cogl/gles/cogl.c: (cogl_get_bitmasks): + Fix typo calling glGetIntegerv rather than glGetInteger + +2007-07-24 Matthew Allum + + * clutter/cogl/gl/cogl.c: (cogl_get_features): + learn to use cpp properly. + +2007-07-24 Matthew Allum + + * clutter/clutter-media.c: (clutter_media_base_init): + Remove #if 0! signal - assume causing issues with binding generation. + (#407) + + * clutter/cogl/gl/cogl.c: + Check GL_TEXTURE_RECTANGLE_ARB and GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB + are defined in gl.h (#404) + +2007-07-24 Matthew Allum + + * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize): + Create stage window with correct depth/visual. Via patch from + Robert Bragg (#409). + +2007-07-23 Matthew Allum + + * clutter/clutter-texture.c: (texture_render_to_gl_quad), + (clutter_texture_paint): + Dont be over aggressive in throwing criticals for unrealized + textures. Doesn't make sense for sub classes. (#403) + +2007-07-22 Emmanuele Bassi + + Two small fixes for correctly debugging the deinitialisation + phase of the backend: + + * clutter/glx/clutter-backend-glx.c: Remove the event source + after we unref the main stage. + + * clutter/glx/clutter-stage-glx.c: Add a mark at the end of the + unrealize call (the perl bindings seem to crash before we reach + this point). + +2007-07-22 Emmanuele Bassi + + * clutter/clutter-behaviour-ellipse.c: Remove pointer indirections; + add sanity checks on the public entry points; make all the public + properties floating point (where needed) andconvert them to fixed + point internally. (Partial fix for #389) + +2007-07-22 Emmanuele Bassi + + * clutter/clutter-behaviour.[ch]: Rename ClutterBehaviour::apply + and ClutterBehaviour::remove to ClutterBehaviour::applied and + ClutterBehaviour::removed respectively, and emit them when the + behaviour has been applied (or does no longer apply) to an actor. + + (clutter_behaviour_dispose), (clutter_behaviour_finalize), + (clutter_behaviour_class_init): Move the actor removal to the + ::dispose virtual function, and remove the ::finalize one; + document the missing properties and signals. + + (clutter_behaviour_clear): Add function to clear a behaviour: + every actor will be unreffed and the ClutterBehaviour::removed + signal will be emitted. + +2007-07-21 Matthew Allum + + * clutter/clutter-event.c: + Correct clutter_event_get_state () return type. Fixes #398 + + * clutter/glx/clutter-stage-glx.c: + Disable use XFixes cursor visibility funcs. Appears to have issues + on feisty X Server at least. Fallback should work generally better. + + Fix non offscreen clutter_stage_snapshot to also rotate read pixel + data to correct orientation. + +2007-07-12 Matthew Allum + + * clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch): + Avoid sending too many events which are just pressure changes. + +2007-07-12 Matthew Allum + + * clutter/clutter-actor.c: (clutter_actor_paint): + * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos): + * clutter/cogl/cogl.h: + * clutter/cogl/gl/cogl.c: (cogl_get_viewport): + * clutter/cogl/gles/cogl.c: (cogl_get_viewport): + Hopefully fix clutter_actor_at_pos on !32bpp displays. + Based on patch from Pan Bohui, See; + http://bugzilla.openedhand.com/show_bug.cgi?id=390 + + * TODO: + More misc updates. + +2007-07-11 Emmanuele Bassi + + * clutter/clutter-behaviour-opacity.c: + Don't check direction in opacity. + +2007-07-11 Tomas Frydrych + + * clutter/clutter-fixed.h: + Fixed CLUTTER_ANGLE_ macros. + + * clutter/clutter-behaviour-ellipse.h: + * clutter/clutter-behaviour-ellipse.c: + Implemented "apply" signal closer to position actor on the start + of the elliptic path. + + (clutter_behaviour_ellipse_get_angle_begin): + (clutter_behaviour_ellipse_set_angle_begin): + (clutter_behaviour_ellipse_get_angle_end): + (clutter_behaviour_ellipse_set_angle_end): + (clutter_behaviour_ellipse_get_angle_tilt): + (clutter_behaviour_ellipse_set_angle_tilt): + Renamed with an x suffix; added versions for angles in degrees. + +2007-07-09 Matthew Allum + + * TODO: + Updates. + * clutter/clutter-stage.c: + * clutter/glx/clutter-stage-glx.c: + Fix cursor visibility property. + Force a repaint before mapping to attempt to avoid flicker. + +2007-07-09 Richard Purdie + + * clutter/eglnative/clutter-event-egl.c: + * configure.ac: + Add tslib support to eglnative backend. + +2007-07-09 Richard Purdie + + * clutter/eglnative/clutter-backend-egl.c: + Tweaks to the eglnative backend. + +2007-07-09 Richard Purdie + + * clutter/clutter-backend.c: + Make the backend add_option function optional. + +2007-07-09 Emmanuele Bassi + + * clutter/clutter-behaviour-depth.h: + * clutter/clutter-behaviour-depth.c: + * clutter/Makefile.am: Add ClutterBehaviourDepth, a simple + behaviour controlling the depth of a set of actors. + + * clutter/clutter-behaviour-opacity.c: Always make sure that + the opacity applied to the actors is a positive integer, even + in case where the start and end opacity are reversed; use the + correct cast macros for passing the opacity as a pointer. + +2007-07-06 ====================== 0.3.1 Release ======================== + +2007-07-06 Matthew Allum + + * NEWS: + * configure.ac: + Update for 0.3.1 + +2007-07-06 Matthew Allum + + * clutter/eglx/Makefile.am: + * clutter/eglx/clutter-egl.h: + * clutter/eglx/clutter-event-egl.c: + * clutter/eglx/clutter-stage-egl.c: + Rename clutter-egl.h -> clutter-eglx.h + + * NEWS: + * README: + Add info re EGL split. + +2007-07-06 Matthew Allum + + * clutter/Makefile.am: + * clutter/eglnative/Makefile.am: + * clutter/eglnative/clutter-backend-egl.c: + * clutter/eglnative/clutter-backend-egl.h: + * clutter/eglnative/clutter-egl.h: + * clutter/eglnative/clutter-event-egl.c: + * clutter/eglnative/clutter-stage-egl.c: + * clutter/eglnative/clutter-stage-egl.h: + * clutter/eglx/Makefile.am: + * clutter/eglx/clutter-backend-egl.c: + * clutter/eglx/clutter-egl.h: + * clutter/eglx/clutter-event-egl.c: + * clutter/eglx/clutter-stage-egl.c: + * configure.ac: + Add a new 'native' EGL backend for non X based EGL's + (i.e on framebuffer). + Rename old backend to 'eglx' and namespace public funcs with this. + + * clutter/pango/pangoclutter-private.h: + Add extra checks for expected defines. + +2007-07-06 Matthew Allum + + * NEWS: + * README: + Updates for upcoming 0.3.1 release. + * clutter/egl/Makefile.am: + * clutter/egl/clutter-backend-egl.c: + * clutter/egl/clutter-backend-egl.h: + * clutter/egl/clutter-egl.h: + * clutter/egl/clutter-event-egl.c: + * clutter/egl/clutter-stage-egl.c: + * clutter/egl/clutter-stage-egl.h: + * configure.ac: + Move egl -> eglx + +2007-07-06 Matthew Allum + + * clutter/clutter-box.c: (clutter_box_pick): + Call clutter_box_paint rather than actor paint method avoiding + infinte loop (Fixes test-boxes crasher). + + * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_unrealize): + Trap the X calls to avoid potential X errors. + +2007-07-06 Ross Burton + + * tests/Makefile.am: + Dist redhand.png. + +2007-07-05 Tomas Frydrych + + * cluter/clutter-group.c: + (clutter_group_query_coords:) + Reset box size to zero width and height to report correct size if + the contents of the group shrink. + +2007-07-05 Emmanuele Bassi + + * clutter/clutter-rectangle.c: Fix off-by-border-width bug + in the border creation of a ClutterRectangle. + +2007-07-05 Tomas Frydrych + + * clutter/clutter-fixed.h: + * clutter/clutter-fixed.c: + Added CLUTTER_FLOAT_TO_UINT macro; + (clutter_pow2x): + Fixed sign issue. + +2007-07-04 Emmanuele Bassi + + * clutter/*: Loads of fixes for the API reference. + +2007-07-04 Emmanuele Bassi + + Merge from clutter/work + + * clutter/clutter-alpha.[ch]: Fix the argument names for + the smoothstep alpha functions, for gtk-doc. + + * clutter/clutter-group.c (clutter_group_remove_all): Fix + the iteration on the children list. + +2007-07-04 Emmanuele Bassi + + * clutter/clutter-main.c (clutter_redraw): Move the stage + paint init call from the main redraw function... + + * clutter/clutter-stage.c (clutter_stage_paint): ... to the + ClutterActor::paint() overridden method in ClutterStage. + +2007-07-04 Emmanuele Bassi + + * clutter/clutter.h: + * clutter/Makefile.am: ClutterBackend is marked as public API, + so install the clutter-backend.h header and include it when + including clutter.h. + +2007-07-04 Emmanuele Bassi + + * clutter/clutter-entry.[ch]: Various fixes to ClutterEntry: + fix code style issues; add documentation for the various + properties; add ClutterEntry:entry-padding property, for controlling + the text padding (until we have style properties separated from + the object properties); notify property changes; free resources + in the ::finalize method; rename clutter_entry_add() to + clutter_entry_insert_unichar(), and clutter_entry_remove() to + clutter_entry_delete_chars() - for bindings and for matching the + insert_text() and delete_text() existing methods; add a getter + method for the max-length property. + +2007-07-04 Emmanuele Bassi + + * clutter/clutter-actor.[ch]: Use the right get_type() function + name for ClutterVertex, and add the CLUTTER_TYPE_VERTEX macro. + +2007-07-03 Ross Burton + + * configure.ac: + Check for XFixes 4 and above. + +2007-07-02 Tomas Frydrych + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + * tests/test-project.c: + (clutter_actor_apply_transform_to_point): + Use ClutterVertex for input and output parameters. + +2007-07-01 Emmanuele Bassi + + Merge from clutter.git/work branch + + * clutter/clutter-effect.[ch]: Clean up ClutterEffect; use a + pointer to access the private data structure, instead of doing + a type check every time. Add description for the API reference. + + * docs/reference/clutter-sections.txt: + * clutter/*.[ch]: Add various documentation fixes. + + * clutter/clutter-entry.c: Remove a stray g_print() call. + +2007-06-29 Neil J. Patel + + * clutter/clutter-entry.c: (clutter_entry_handle_key_event), + (clutter_entry_add), (clutter_entry_remove): + Check if unichar == 0, and if so, return, as it will cause a delete in + the GString. + +2007-06-20 ============== 0.3 Release ==================================== + +2007-06-29 Matthew Allum + + * clutter/clutter-texture.c: (texture_upload_data): + Fix a SEGV for GL ES textures. + + * clutter/cogl/gles/cogl.c: (cogl_setup_viewport): + Tweak default z_camera for 60 degrees like GL. + + * clutter/egl/clutter-backend-egl.c:: + * clutter/egl/clutter-stage-egl.c: + Fix edpy usage (thanks to Kaj Gronholm). + +2007-06-29 Tomas Frydrych + + * clutter/clutter-group.c: + (clutter_group_query_coords): + Fixed box calculation. + +2007-06-28 Tomas Frydrych + + * clutter/clutter-group.c: + (clutter_group_raise): + (clutter_group_lower): + Fixed SIGSEGV when attempting to raise / lower an only child. + +2007-06-28 Matthew Allum + + * clutter/cogl/gl/cogl.c: (cogl_setup_viewport): + Improve fixed z_camera value for defualt perspective. + Appears pixel perfect on ATI and Intel at least + +2007-06-28 Tomas Frydrych + + * tests/test-perspective.c: + Moved red dots to be positioned 1px off each corner. + +2007-06-28 Matthew Allum + + * tests/Makefile.am: + * tests/test-perspective.c: + Add simple perspective test + +2007-06-27 Tomas Frydrych + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + * tests/test-project.c: + Renamed clutter_actor_project_point() to + clutter_actor_apply_trasform_to_point() and + clutter_actor_project_vertices() to clutter_actor_get_vertices(). + +2007-06-27 Tomas Frydrych + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + * tests/test-project.c: + (clutter_actor_project_point): + Separated input from output parameters. + +2007-06-27 Matthew Allum + + * Makefile.am: + Dont remove README on make clean + +2007-06-27 Tomas Frydrych + + * clutter/clutter-actor.c: + (_clutter_actor_apply_modelview_transform): + Fixed incorrect order of scaling an rotation that was causing + objects that were both rotated and scaled to change position. + +2007-06-27 Tomas Frydrych + + * clutter/clutter-actor.c: + (clutter_actor_scale_with_gravityx): + Made to work after changes to the behavivour of + clutter_actor_get_absolute_size() for rotated actors. + +2007-06-26 Tomas Frydrych + + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/cogl.c: + (cogl_setup_viewport): + For default perspective angle of 60 degrees, use a hardcoded + z_camera constant that provides minimal artefacts when rendering + text; for other angles we calculate. + +2007-06-26 Tomas Frydrych + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + Added fixed point version of clutter_actor_rotate_*() functions + and accessors for rotation angles. + +2007-06-25 Matthew Allum + + * README: + Update a little more. + * clutter/clutter-effect.c: + Add missing func documentation + * clutter/clutter-rectangle.c: + Fix border drawing. + +2007-06-25 Tomas Frydrych + + * clutter/clutter-fixed.h: + Fixed definition of clutter_cosx() macro. + + * clutter/clutter-stage.c: + * clutter/cogl/cogl.h: + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/cogl.c: + Changed ClutterPerspective.fovy from ClutterAngle to degrees to + improve precission in Z-camera calculations. + +2007-06-22 Matthew Allum + + * README: + * README.in: + * autogen.sh: + * configure.ac: + Move back to regular README naming at least for now. + +2007-06-22 Matthew Allum + + * NEWS: + * README.in: + * TODO: + Update for 0.3 release. + + * clutter/clutter-actor.c: + Minor doc fixups + + * clutter/clutter-texture.c: + Various minor additions for handling non RGBA data. + Fix a typo breaking clutter_texture_get_pixbuf() on tiled textures. + + * tests/test-actors.c: + Disable scaling to avoid drifting (temporary till API is fixed) + +2007-06-21 Emmanuele Bassi + + * clutter/clutter-timeline.c: Allow disabling the timeline pool + by using the CLUTTER_TIMELINE environment variable set to + "no-pool". + +2007-06-19 Emmanuele Bassi + + * README.in: Update release notes. + +2007-06-19 Matthew Allum + + * clutter/clutter-main.c: (clutter_init_with_args), (clutter_init): + Safer checks for setting progname if NULL is passed in init. + +2007-06-19 Emmanuele Bassi + + * autogen.sh: autoreconf needs a README. + +2007-06-19 Matthew Allum + + * TODO: + Sync up a little. + * clutter/clutter-main.c: + Set a default window title based on g_prgname(). + + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + * clutter/egl/clutter-stage-egl.c: + * clutter/glx/clutter-stage-glx.c: + * clutter/sdl/clutter-stage-sdl.c: + Alter draw_to_pixbuf to return a pixbuf + + * configure.ac: + Only full in gdk-pixbuf-xlib as a GLX backend dep. + + * tests/test-entry.c: + Fix a couple of warnings. + +2007-06-19 Emmanuele Bassi + + * Makefile.am: Add README.in to the EXTRA_DIST. + +2007-06-19 Emmanuele Bassi + + * configure.ac: + * README.in: Use a template for the README file, so that + it gets the right version number. + +2007-06-19 Matthew Allum + + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + * clutter/glx/clutter-stage-glx.c: + * clutter/sdl/clutter-stage-sdl.c: + Add window title setting/getting functionality. + + * clutter/clutter-event.c: (clutter_key_event_unicode): + Remove uneeded convert case call. + + * clutter/cogl/gl/cogl.c: (cogl_rectangle) + Use parameters correctly for underlying GL rect call. + + * tests/test-entry.c: + Add a window title. + +2007-06-18 Matthew Allum + + * clutter/sdl/clutter-event-sdl.c: + Seemingly fix SDL Event source. + Add some very basic SDL keysym translation. + (Thanks to Thomas Van Machelen for initial translation code) + + * tests/test-events.c: + Dump some info on keysyms pressed. + +2007-06-16 Emmanuele Bassi + + * clutter/clutter-actor.h: + * clutter/clutter-stage.h: Add 32 padding slots; when we + reach 1.0 it'll be a long road until the following ABI + break. + + * tests/test-behave.c: Don't forget to include headers. + +2007-06-16 Emmanuele Bassi + + * clutter/clutter-container.h: + * clutter/clutter-layout.h: Interfaces are not checked + at compile-time, so there's not need to add padding to + avoid ABI breaks. + +2007-06-16 Emmanuele Bassi + + * configure.ac: Partially revert last commit, and fail + with AC_MSG_ERROR() instead of disabling the manual build + if no jw and xmlto were found. + +2007-06-16 Emmanuele Bassi + + * configure.ac: If the programs required to build the manual + are not found and --enable-manual was passed, then just print + a warning and disable the manual build instead of aborting the + configure. + + * doc/manual/Makefile.am: Use the full path gathered by the + configure script when invoking jw and xmlto. + +2007-06-16 Matthew Allum + + * clutter/clutter-actor.c: + Fix typo in x rotation transform (Thanks to Johan Billen #138) + + * configure.ac: + * doc/manual/Makefile.am: + Fix manual build and required program check. + + * tests/Makefile.am: + Another typo fix. + +2007-06-15 Tomas Frydrych + + * clutter/clutter-actor.c: + Added some comments; renamed MTX_GL_SCALE to MTX_GL_SCALE_X for + consistency; removed some debug output. + +2007-06-14 Tomas Frydrych + + * clutter/clutter-vbox.c: + * clutter/clutter-hbox.c: + (clutter_vbox_pack_child): + (clutter_hbox_pack_child): + Fixed child coords. + +2007-06-14 Emmanuele Bassi + + * clutter/clutter-box.[ch]: Base class for layout containers. + + * clutter/clutter-hbox.[ch]: Horizontal box actor. + + * clutter/clutter-vbox.[ch]: Vertical box actor. + + * clutter/clutter.h: + * clutter/Makefile.am: Build glue + + * tests/Makefile.am: + * tests/test-boxes.c: Test suite for ClutterBox API and + implementations. + +2007-06-14 Matthew Allum + + * clutter/cogl/gl/cogl.c: (cogl_check_extension): + Actually populate this func and remove the static alternate + named one. Means GLX actually checks for available extensions. + Other minor tidy ups. + + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-backend-glx.h: + Add support for GLX_SGI_swap_control to do vblanking prefering + over glXGetVideoSyncSGI. Should fix issues on Intel chips with + very slow frame rates due to vblank problems. + Thanks to Michel Danzer for tips, see; + http://bugs.freedesktop.org/show_bug.cgi?id=10542 + + * test/test-actors.c: + Change FPS to 60. + +2007-06-14 Emmanuele Bassi + + * clutter/clutter-timeout-pool.c: Make ClutterTimeoutPool + more thread-safe, using a static lock. + + (clutter_timeout_pool_dispatch), (clutter_timeout_pool_remove): Fix + a race condition-turned-in-memory corruption bug, triggered by + removing a timeout from the pool while still spinning the pool + source. + +2007-06-14 Emmanuele Bassi + + * configure.ac: + * doc/manual/Makefile.am: Find xmlto and jw in the path and + use the symbolic names when building the manual. + +2007-06-14 Tomas Frydrych + + * clutter/clutter-actor.c: + (clutter_actor_get_abs_position): + (clutter_actor_get_abs_size): + Reimplement using clutter_actor_project_point() and + clutter_actor_project_vertices(). + + * tests/test-project.c: + Rename clutter_actor_allocate_coords -> clutter_actor_query_coords + +2007-06-14 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * clutter/clutter-group.c: + * clutter/clutter-label.c: + * clutter/egl/clutter-stage-egl.c: + * clutter/glx/clutter-stage-glx.c: + * clutter/sdl/clutter-stage-sdl.c: + Rename clutter_actor_allocate_coords -> clutter_actor_query_coords + + Change repaints to G_PRIORITY_DEFAULT + 10. + (timelines are G_PRIORITY_DEFAULT + 30, events G_PRIORITY_DEFAULT) + + * clutter/glx/clutter-event-glx.c: + Handle shift modifier in keycode -> keysym translation. + + * tests/test-actors.c: + Remove (broken) screen saver code. + Add scaling behaviour, clean code a little. + +2007-06-13 Tomas Frydrych + + * clutter/clutter-actor.c: + (clutter_actor_project_vertices): + (clutter_actor_project_proint): + Fixed translation of Y coords to match the windowing system. + + * clutter/egl/clutter-stage-egl.c: + * clutter/glx/clutter-stage-glx.c: + * clutter/sdl/clutter-stage-sdl.c: + (clutter_stage_*_request_size): + Initialize viewport when setting/resetting stage side. + + * tests/Makefile.am + * tests/test-project.c: + An interactive test of the projection stuff. + +2007-06-12 Tomas Frydrych + + * clutter/clutter-main.c: + (clutter_redraw): + Clear CLUTTER_ACTOR_SYNC_MATRICES flag after setting up viewport. + +2007-06-12 Matthew Allum + + * doc/manual/Makefile.am: + Fix typo in Makefile so PDF's actually get built. + + * doc/manual/clutter-manual.xml.in: + Add an FAQ section with initial entry. + +2007-06-12 Tomas Frydrych + + * clutter/clutter-fixed.h: + Added shorthand CFX_QMUL macro. + + * clutter/clutter-private.h: + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + Replaced ClutterVertices with ClutterVertex; + + (clutter_actor_get_transformed_vertices): + (clutter_actor_get_transformed_point): + Replaced with clutter_actor_projected_vertices and + clutter_actor_projected_point. + + (_clutter_actor_apply_modelview_transform): + (_clutter_actor_apply_modelview_transform_recursive): + Private functions to push actor modelview transforms on OpenGL + stack. + + * clutter/cogl/cogl.h: + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/cogl.c: + (cogl_get_viewport): + (cogl_get_modelview_matrix): + (cogl_get_projection_matrix): + Functions to access OpenGL transforms. + +2007-06-12 Matthew Allum + + * clutter/clutter-alpha.c: + Remove stray g_debug. + + * clutter/clutter-behaviour-rotate.c: + Register private class member. + + * clutter/clutter-behaviour.c: + * clutter/clutter-behaviour.h: + Add applied and removed signals. + + * Makefile.am: + * configure.ac: + * examples/Makefile.am: + * examples/README: + * examples/behave.c: + * examples/slider.c: + * examples/super-oh.c: + * examples/test-entry.c: + * examples/test-text.c: + * examples/test.c: + * tests/Makefile.am: + Remove examples, moving applicable code into tests. + +2007-06-11 Tomas Frydrych + + * clutter/clutter-alpha.c: + (clutter_alpha_sine_inc): + (clutter_alpha_sine_dec): + (clutter_alpha_sine_half): + Fixed unsigned overflow. + +2007-06-11 Emmanuele Bassi + + * clutter/clutter-event.h: Add full modifier masks enums. + + * clutter/glx/clutter-event-glx.c: Copy the modifier masks from + the native X event structure. + + * clutter/clutter-event.c: Convert to upper case if the + shift or the lock masks are applied. + +2007-06-09 Emmanuele Bassi + + * clutter/clutter.h: + * clutter/clutter-timeout-pool.[ch]: Add a timeout pool source; + every timeout added to this pool will use a single slice of the + main loop. + + * clutter/clutter-timelince.c: Use a per-class timeout pool for + every timeline. + +2007-06-08 Matthew Allum + + * clutter/clutter-texture.c: (clutter_texture_get_pixbuf): + Remove stray printf. + +2007-06-08 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-debug.h: + * clutter/clutter-main.c: + * clutter/clutter-main.h: + * clutter/clutter-private.h: + * clutter/clutter-timeline.c: + Add 'schedule' debug flag and new CLUTTER_TIMESTAMP macro. + + * clutter/clutter-texture.c: + * clutter/clutter-texture.h: + * clutter/cogl/cogl.h: + * clutter/cogl/gl/cogl-defines.h: + * clutter/cogl/gles/cogl-defines.h: + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/cogl.c: + Add initial experiemental YUV texture support. + Move texture rect size checks into cogl. + Better handle moving texture data from video -> system memory + (if support available). + +2007-06-07 Neil J. Patel + + * clutter/clutter-entry.c: (clutter_entry_class_init), + (clutter_entry_handle_key_event): + * clutter/clutter-entry.h: + Added an 'activated' signal, which is emitted when the 'Enter' key is + pressed. + + * examples/test-entry.c: (on_entry_activated), (main): + Added a test handler for the activated signal. + +2007-06-07 Emmanuele Bassi + + * clutter/*: Move documentation from the templates into the + source code. + +2007-06-07 Emmanuele Bassi + + * clutter/clutter-container.[ch]: Add a generic actor container + interface, for actors to implement without subclassing ClutterGroup. + + * clutter/clutter-group.[ch]: Make ClutterGroup implement the + ClutterContainer interface, and deprecate the colliding methods. + + * clutter/clutter-layout.[ch]: Add extended layout interface. + Actors and containers requiring or honouring complex layout + management should implement this interface and provide at least + one of the available layout types: width for height, height for + width, natural size, iterative size request. + + * clutter/clutter-label.c: A ClutterLabel requires height for + width layout management, so it implements the ClutterLayout + interface. + + * clutter/Makefile.am: Add new files to the build. + + * tests/*.c: + * examples/*.c: Update tests and examples code to use the + new ClutterContainer API instead of ClutterGroup. + +2007-06-07 Emmanuele Bassi + + * clutter/clutter-timeline.[ch]: Add a "delay" property, which + delays the real start of the timeline by a number of milliseconds. + + (clutter_timeline_clone): Rename clutter_timeline_copy() to + clutter_timeline_clone(), for consistency. + +2007-06-01 Neil J. Patel + + * clutter/clutter-entry.c: (clutter_entry_set_property), + (clutter_entry_get_property), (clutter_entry_class_init), + (clutter_entry_init), (clutter_entry_set_text), + (clutter_entry_set_max_length): + * clutter/clutter-entry.h: + * examples/test-entry.c: (main): + Added a max-length property whihc limits the length of the text in the + entry. + +2007-06-01 Neil J. Patel + + * clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position), + (clutter_entry_paint), (clutter_entry_init), + (clutter_entry_handle_key_event): + Clipping within the entry class to stop it over-slipping its + boundries. + Text will move within the clip region to keep the cursor always + visible. + Added some padding to the left and right to make sure cursor is + always show. + +2007-06-01 Tomas Frydrych + + * clutter/clutter-actor.c: + * clutter/clutter-stage.c: + * clutter/clutter-private.h: + Removed perspective matrix caching from ClutterStage. + +2007-06-01 Neil J. Patel + + * clutter/clutter-entry.c: (clutter_entry_set_property), + (clutter_entry_get_property), (clutter_entry_ensure_layout), + (clutter_entry_class_init), (clutter_entry_init), + (clutter_entry_set_visibility), (clutter_entry_get_visibility), + (clutter_entry_set_invisible_char), + (clutter_entry_get_invisible_char): + * clutter/clutter-entry.h: + Added text-visibility, which will allow you to show all entered text + as a nominated charaecter ('*' is default). + + * examples/test-entry.c: (main): + +2007-06-01 Neil J. Patel + + * clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position), + (clutter_entry_clear_cursor_position), + (clutter_entry_paint_cursor), (clutter_entry_paint), + (clutter_entry_class_init), (clutter_entry_set_text), + (clutter_entry_set_position): + * clutter/clutter-entry.h: + Added a signla to track cursor movements. + Moved the sursor painting function so it can be subclassed. + +2007-06-01 Tomas Frydrych + + * clutter/clutter-actor.c: + (clutter_actor_get_transformed_point): + Make input again relative to the actor; feed depth into transform. + +2007-06-01 Neil J. Patel + + * clutter/clutter-entry.c: (clutter_entry_class_init), + (clutter_entry_set_text): + * clutter/clutter-entry.h: + * examples/test-entry.c: (on_entry_text_changed), (main): + Added a text-changed signal to the entry. + +2007-06-01 Neil J. Patel + + * clutter/clutter-effect.h: + Removed extra G_END_DECLS outside the #endif + + * clutter/clutter-entry.c: (clutter_entry_handle_key_event), + (clutter_entry_add): + * clutter/clutter-entry.h: + * examples/test-entry.c: (on_key_release_cb): + Added a function to deal with ClutterKeyEvents. Handles the majority + of entry-related keyboard keys. However modifiers still need to be + implemented. + +2007-06-01 Tomas Frydrych + + * clutter/clutter-actor.c: + (mtx_create): + Apply perspective transform before all other transforms. + +2007-06-01 Tomas Frydrych + + * clutter/clutter-stage.c: + (clutter_stage_init): + Call _clutter_stage_refresh_perspective_matrix to initialize the + matrix for default values. + +2007-06-01 Tomas Frydrych + + * clutter/clutter-fixed.h: + * clutter/clutter-behaviour-ellipse.h: + * clutter/clutter-behaviour-ellipse.c: + * clutter/clutter-behaviour-bspline.h: + * clutter/clutter-behaviour-bspline.c: + Documentation fixes. + +2007-05-31 Tomas Frydrych + + * clutter/clutter-stage.c: + * clutter/clutter-private.h: + (_clutter_stage_get_perspective_matrix): + New function. + + * clutter/clutter-actor.c: + (clutter_actor_get_tranformed_vertices): + (clutter_actor_get_tranformed_point): + Apply perspective matrix on the top of actor transform matrix. + +2007-05-31 Neil J Patel + + * clutter/Makefile.am: + * clutter/clutter-entry.c: (clutter_entry_set_property), + (clutter_entry_get_property), (clutter_entry_ensure_layout), + (clutter_entry_clear_layout), + (clutter_entry_ensure_cursor_position), (clutter_entry_paint), + (clutter_entry_request_coords), (clutter_entry_dispose), + (clutter_entry_finalize), (clutter_entry_class_init), + (clutter_entry_init), (clutter_entry_new_with_text), + (clutter_entry_new_full), (clutter_entry_new), + (clutter_entry_get_text), (clutter_entry_set_text), + (clutter_entry_get_font_name), (clutter_entry_set_font_name), + (clutter_entry_set_color), (clutter_entry_get_color), + (clutter_entry_get_layout), (clutter_entry_set_alignment), + (clutter_entry_get_alignment), (clutter_entry_set_position), + (clutter_entry_get_position), (clutter_entry_add), + (clutter_entry_remove), (clutter_entry_insert_text), + (clutter_entry_delete_text), (clutter_entry_set_visible_cursor), + (clutter_entry_get_visible_cursor): + * clutter/clutter-entry.h: + * clutter/clutter.h: + * examples/Makefile.am: + Initial import of ClutterEntry actor. + + * examples/test-entry.c: (on_key_release_cb), (main): + A basic test for ClutterEntry + +2007-05-31 Tomas Frydrych + + * clutter/clutter-actor.c: + (clutter_actor_get_transformed_point): + Fixed coordinance translation. + +2007-05-31 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + Add clutter_actor_get_transformed_point() + + * clutter/clutter-main.c: + Plug in perspective setup to redraw + + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + Remove audience code for now. + +2007-05-31 Matthew Allum + + * clutter/egl/clutter-backend-egl.c: + * clutter/egl/clutter-backend-egl.h: + * clutter/egl/clutter-event-egl.c: + * clutter/egl/clutter-stage-egl.c: + * clutter/egl/clutter-stage-egl.h: + Rename Egl -> EGL + +2007-05-31 Matthew Allum + + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-backend-glx.h: + * clutter/glx/clutter-event-glx.c: + * clutter/glx/clutter-glx.h: + * clutter/glx/clutter-stage-glx.c: + * clutter/glx/clutter-stage-glx.h: + Change type nameing from Glx -> GLX. + Add basic event filtering functionality + +2007-05-31 Tomas Frydrych + + * clutter/clutter-behaviour-ellipse.c: + Changed behaviour so that a beginning angle of 0 would correspond + to 12 o'clock. + +2007-05-31 Tomas Frydrych + + * clutter/clutter-fixed.h: + * clutter/clutter-fixed.c: + (_clutter_double_to_int): + Fixed return value to gint; added missing cast that broke negative + number conversions. + + (CLUTTER_ANGLE_FROM_DEGX): + Swapped division and multiplication around to avoid overflows. + + * clutter/clutter-behaviour-ellipse.c: + Fixed incorrectly set lower bounds for angle properties. + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + Added ClutterVertices type. + (clutter_actor_get_transformed_vertices): + New function. + +2007-05-31 Matthew Allum + * TODO: + Sync up for whats left for 0.4 release (and 0.6 ideas) + +2007-05-31 Matthew Allum + + * clutter/clutter-behaviour-ellipse.c: + Remove uneeded knot signal + + * clutter/clutter-behaviour-path.c: + Fix so knot signal is emitted only when a knot is reached. + + * clutter/clutter-effect.c: + * clutter/clutter-effect.h: + Add a scale effect. + + * configure.ac: + * doc/manual/Makefile.am: + * doc/manual/clutter-manual.xml.in: + * doc/manual/manual.xsl: + * doc/manual/style.css: + Add various bits for application developers manual. + +2007-05-30 Tomas Frydrych + + * clutter/clutter-alpha.h: + * clutter/clutter-alpha.c: + Removed ClutterSmoothstep struct + (clutter_smoothstep_inc_func): + Renamed to clutter_smoothstep_func. + (clutter_smoothstep_added_func): + Added. + +2007-05-29 Tomas Frydrych + + * clutter/clutter-fixed.h: + (clutter_cosx): + (clutter_cosi): + Fixed wrong sign in cos -> sin tranformation. + + * clutter/clutter-behaviour-ellipse.c: + (clutter_behaviour_ellipse_advance): + Replaced coordinace calculation for tilted ellipse with a sane + algorithm. + + * examples/behave.c: + Added tilt parameter to the example ellptic path. + +2007-05-29 Tomas Frydrych + + * clutter/cogl/gles/cogl.c: + (cogl_setup_viewport): + Fixed z_camera calculation. + +2007-05-28 Matthew Allum + + * clutter/clutter-texture.c: (clutter_texture_unrealize): + Dont even try to move texture pixels from video -> system + ram on unrealisation for GL/ES + +2007-05-28 Matthew Allum + + * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos): + Fix for GL/ES. Barring texture reads this means all clutter + functionality now works on GL/ES! (no doubt with a few yet to + be discovered bugs) + +2007-05-28 Matthew Allum + + * clutter/clutter-backend.c: + * clutter/clutter-backend.h: + * clutter/glx/clutter-stage-glx.c: + * clutter/glx/clutter-backend-glx.c: + Fix up rendering pipeline removing clutter_backend_XXX_stage_paint + and adding clutter_backend_XXX_redraw instead. Duplicates less + code in backends, avoids clutter_actor_paint() getting called + before stage is set up (viewport wise) and unbreaks things like + picking. + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * clutter/clutter-main.c: + * clutter/clutter-private.h: + * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos): + Redo picking functionality a different way (via color indexing) + as to provide more flexibility, possibly speed and more likely + work with GL/ES (doesn't currently however - not sure why). + + * clutter/clutter-group.c: + Add groups own 'pick' method. + + * clutter/cogl/cogl.h: + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/cogl.c: + Move clipping funtionality into cogl. + + * clutter/cogl/gles/cogl-defines.h: + Hack around missing BGR format in GL/ES. + + * clutter/egl/clutter-backend-egl.c: + * clutter/egl/clutter-backend-egl.h: + * clutter/egl/clutter-stage-egl.c: + * clutter/sdl/clutter-backend-sdl.c: + * clutter/sdl/clutter-backend-sdl.h: + * clutter/sdl/clutter-event-sdl.c: + * clutter/sdl/clutter-stage-sdl.c: + Update backends to newer API. + Add basic mouse event translation to SDL. + +2007-05-25 Matthew Allum + + * clutter/clutter-color.c: (clutter_color_parse): + Handle #rrggbbaa color setting strings (i.e with alpha). + Set alpha to 0xff if it is not specified. + + * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos) + Increase select buffer. + + * examples/super-oh.c: + Fix up use of clutter_group_show_all() + +2007-05-25 Tomas Frydrych + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + Renamed clutter_actor_scalex() to clutter_actor_set_scale_with_gravityx + Added floating point version clutter_actor_set_scale_with_gravity. + + * clutter/clutter-units.h: + * clutter/clutter-actor.h: + typedef ClutterUnit + + * clutter/clutter-fixed.h: + * clutter/clutter-stage.c: + CLUTTER_ANGLE_FROM_DEG(), CLUTTER_ANGLE_FROM_DEGX() + renamed CLUTTER_DEGF_TO_CLUTTER_ANGLE to CLUTTER_ANGLE_FROM_DEGF + + * clutter/clutter-behaviour-ellipse.h: + * clutter/clutter-behaviour-ellipse.c: + * examples/behave.c: + (clutter_behaviour_ellipse_new): + Changed signature to take angles in degrees, and x,y offsets. + (clutter_behaviour_ellipse_newx): + Fixed version clutter_behaviour_ellipse_new. + (clutter_behaviour_ellipse_set_center): + (clutter_behaviour_ellipse_get_center): + Changed signature to take x,y coords instead of ClutterKnot. + + clutter/cogl/gl/cogl.c: + clutter/cogl/gles/cogl.c: + (cogl_setup_viewport): + Added z_camera calculation. + +2007-05-25 Matthew Allum + + * Makefile.am: + Install a default flavour .pc file. + + * clutter/clutter-actor.c: + Translate units correctly for translate() + + * clutter/clutter-feature.h: + Add new texture features. + + * clutter/clutter-fixed.h: + Add clutter angle conversion defines. + + * clutter/clutter-group.c: + Use cogl not GL. Dont recurse on show all. + + * clutter/clutter-private.h: + Remove sync_viewport. + + * clutter/clutter-rectangle.c: + Fix cogl typo. + + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + Add perspective settings. Remove viewport_sync. + Add audience stubs. Fix up actor_at_pos a little (still broken) + + * clutter/clutter-texture.h: + * clutter/clutter-texture.c: + Redo pixel uploading. Add initial (disabled) YUV support. + + * clutter/clutter-timeline.c: + Fire 'completed' signal when looping. + + * clutter/cogl/gl/cogl.c: + Move some backend checks here. + + * clutter/glx/clutter-backend-glx.c: + Actually check target display has GLX ext. + + * clutter/glx/clutter-stage-glx.c: + Handle offscreen failing more gracefully. + + * examples/Makefile.am: + Use AM_LDFLAGS. + + * clutter/clutter-main.c: + * clutter/clutter-feature.c: + * clutter/clutter-backend.c: + * clutter/clutter-alpha.c: + Fix a compile warnings. + + * tests/Makefile.am: + * tests/test-offscreen.c: + * tests/test-scale.c: + More tests. + +2007-05-23 Tomas Frydrych + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + (clutter_actor_get_abs_size_units): + (clutter_actor_get_abs_position_units): + removed from public api + +2007-05-22 Tomas Frydrych + + * configure.ac: + * Makefile.am: + * clutter.pc.in: + * clutter/Makefile.am: + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * clutter/clutter-group.c: + * clutter/clutter-label.c: + * clutter/clutter-real.h: + * clutter/clutter-units.h: + * clutter/clutter.h: + * clutter/egl/clutter-stage-egl.c: + * clutter/glx/clutter-stage-glx.c: + * clutter/sdl/clutter-stage-sdl.c: + * examples/Makefile.am: + * tests/Makefile.am: + Removed ClutterReal; added clutter-units. + +2007-05-18 Tomas Frydrych + + * configure.ac: + * Makefile.am: + * clutter.pc.in: + * clutter/Makefile.am: + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * clutter/clutter-behaviour-scale.c: + * clutter/clutter-behaviour-scale.h: + * clutter/clutter-group.c: + * clutter/clutter-label.c: + * clutter/clutter-real.h: + * clutter/egl/clutter-stage-egl.c: + * clutter/glx/clutter-stage-glx.c: + * examples/Makefile.am: + * tests/Makefile.am: + ClutterReal type. + +2007-05-17 Emmanuele Bassi + + * clutter/clutter-main.c: Use clutter_base_init() inside the + initialisation process, instead of calling g_type_init() directly. + + * clutter/clutter-alpha.c: + * clutter/clutter-behaviour-bspline.c: + * clutter/clutter-behaviour-ellipse.c: Fix API documentation. + +2007-05-17 Matthew Allum + + * configure.ac: + Fix CLUTTER_NO_FPU typo. + +2007-05-17 Tomas Frydrych + + * clutter/clutter-alpha.h: + * clutter/clutter-alpha.c: + * doc/reference/clutter-sections.txt: + Added clutter_exp_inc_func() and clutter_exp_dec_func(). + +2007-05-16 Emmanuele Bassi + + * clutter/clutter-main.[ch]: Add clutter_base_init(), semi-private + function to initialise just the base Clutter functionalities; it's + only used by gtk-doc to introspect the classes. + + * clutter/clutter-feature.c: Do not access the private features + data structure unless it has been initialised. + +2007-05-16 Tomas Frydrych + + * clutter/clutter-alpha.h: + * clutter/clutter-alpha.c: + * doc/reference/clutter-sections.txt: + Added clutter_sine_half(). + +2007-05-16 Tomas Frydrych + + * clutter/clutter-alpha.h: + * clutter/clutter-alpha.c: + * doc/reference/clutter-sections.txt: + Fixed clutter_sine_inc(), added clutter_sine_dec(). + +2007-05-16 Tomas Frydrych + + * clutter/clutter-alpha.h: + * clutter/clutter-alpha.c: + * doc/reference/clutter-sections.txt: + * doc/rererence/clutter.types: + * doc/reference/tmpl/clutter-alpha.sgml: + clutter_smoothstep_func alpha function, + ClutterSmoothstep struct for smoothstep function data. + +2007-05-16 Matthew Allum + + * clutter/clutter-backend.c: + * clutter/clutter-backend.h: + * clutter/clutter-feature.c: + * clutter/clutter-feature.h: + * clutter/clutter-main.c: + * clutter/clutter-main.h: + * clutter/clutter-private.h: + * clutter/clutter-stage.c: + * clutter/cogl/cogl.h: + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/cogl.c: + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-backend-glx.h: + * clutter/glx/clutter-glx.h: + * clutter/glx/clutter-stage-glx.c: + * clutter/glx/clutter-stage-glx.h: + Rejig the features() foo, moving mostly into backends/cogl. + +2007-05-15 Tomas Frydrych + + * clutter/clutter-actor.c: + (clutter_actor_get_abs_position): + Removed unnecessary CFX_MUL(). + +2007-05-15 Tomas Frydrych + + * clutter/clutter-behaviour-ellipse.h: + * clutter/clutter-behaviour-ellipse.c: + (clutter_behaviour_ellipse_new): + Added a tilt parameter. + +2007-05-14 Matthew Allum + + * clutter/clutter-behaviour-path.c: + Fix bug where last knot position wouldn't get reached. + + * clutter/clutter-group.c: + Add some docs + + * clutter/clutter-timeline.h: + * clutter/clutter-timeline.c: + Add clutter_timeline_copy (needed for ClutterEffect) + + * clutter/clutter-version.h.in: + Export windowing system / GL backend etc defines. + + * clutter/Makefile.am: + * clutter/clutter-effect.c: + * clutter/clutter-effect.h: + * clutter/clutter.h: + + * clutter/glx/clutter-backend-glx.c: + Minor clean ups. + + * clutter/clutter-alpha.h: + Add a fixme. + + * configure.ac: + Add FPU define. + + * examples/Makefile.am: + * examples/slider.c: + Add Robs slider game. + +2007-05-10 Matthew Allum + + * clutter/egl/clutter-backend-egl.c: + * clutter/egl/clutter-event-egl.c: + * clutter/sdl/clutter-backend-sdl.c: + * clutter/sdl/clutter-event-sdl.c: + Fix SDL & EGL backends to work with newer backend code. + +2007-05-10 Tomas Frydrych + + * clutter/clutter-color.h: + * clutter/clutter-color.c: + Added clutter_color_to/from_hlsx() + (clutter_color_to/from_hls): + Clobber hue to 0 .. 250 + +2007-05-10 Matthew Allum + + * clutter/clutter-backend.c: + * clutter/clutter-backend.h: + * clutter/clutter-event.c: + * clutter/clutter-main.c: + * clutter/clutter-private.h: + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-backend-glx.h: + * clutter/glx/clutter-event-glx.c: + Rejig backend event code as to simplify a little. + NOTE: This breaks non glx backends. + + * tests/Makefile.am: + * tests/test-events.c: + Add a very simple event test. + + * tests/test-textures.c: (main): + Add some more sizes to the test. + +2007-05-05 Matthew Allum + + * clutter/clutter-texture.c: + Fix typos with new cogl using texture code. Fixes tiled textures. + Add a check for max npots size. + + * configure.ac: + * Makefile.am: + * tests/Makefile.am: + * tests/test-textures.c: + Add a simple texture test. + +2007-05-02 Matthew Allum + + * clutter/Makefile.am: + * clutter/clutter-stage.c: + * clutter/sdl/Makefile.am: + * clutter/sdl/clutter-backend-sdl.c: + * clutter/sdl/clutter-backend-sdl.h: + * clutter/sdl/clutter-event-sdl.c: + * clutter/sdl/clutter-sdl.h: + * clutter/sdl/clutter-stage-sdl.c: + * clutter/sdl/clutter-stage-sdl.h: + * configure.ac: + Add a basic SDL based backend. Lacks real input event handling + (translation) as yet. + Also allows for clutter to be built against dgles. + +2007-05-02 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/cogl/gles/cogl.c: + Fix rotation + other fixed point cleanups. + + * clutter/clutter-texture.h: + Sketch out an updated API. + +2007-05-01 Matthew Allum + + * clutter/clutter-rectangle.c: + Comment out color match check for now as appears to be causing + borders to always get pained. + + * clutter/clutter-texture.h: + Add some format defines (unused as yet) + + * clutter/cogl/gles/cogl.c: + * clutter/egl/clutter-stage-egl.c: + * configure.ac: + Various OpenGL ES backend related fixes and tweaks. + +2007-04-30 Tomas Frydrych + + * clutter/clutter-fixed.c (clutter_sini): + Fixed bug in reducing angle to 0-2pi. + + * clutter/clutter-behaviour-ellipse.h: + * clutter/clutter-behaviour-ellipse.c: + * clutter/clutter.h: + * clutter/Makefile.am: + * doc/clutter.types: + * doc/clutter-docs.sgml: + Added ClutterBehaviourEllipse for movement along + elliptic paths. + + * examples/bspline.c: + * examples/behave.c: + * examples/Makefile.am: + Added --path commandline option to behave to choose different + path types (poly, ellipse, bspline) and dropped bspline example. + +2007-04-28 Matthew Allum + + * clutter/Makefile.am: + * clutter/clutter-debug.h: + * clutter/clutter-fixed.h: + * clutter/clutter-main.c: + * clutter/cogl/gles/Makefile.am: + * clutter/cogl/gles/cogl-defines.h: + * clutter/cogl/gles/cogl.c: + * clutter/egl/clutter-backend-egl.c: + * clutter/egl/clutter-backend-egl.h: + * clutter/egl/clutter-stage-egl.c: + * configure.ac: + Populate most stubs for cogl GL/ES implementation. + (against vincent - see http://svn.o-hand.com/repos/misc/ogles) + Add various fixups to EGL backend. + Code builds and runs (on 16bpp) but yet displays much (is close!) + + * clutter/pango/pangoclutter-render.c: + comment out some rouge glBegin/end calls. + +2007-04-27 Matthew Allum + + * clutter/Makefile.am: + * clutter/clutter-actor.c: + * clutter/clutter-clone-texture.c: + * clutter/clutter-rectangle.c: + * clutter/clutter-stage.c: + * clutter/clutter-texture.c: + * clutter/cogl/cogl.h: + * clutter/cogl/gl/Makefile.am: + * clutter/cogl/gl/cogl-defines.h: + * clutter/cogl/gl/cogl.c: + * clutter/cogl/gles/Makefile.am: + * clutter/cogl/gles/cogl-defines.h: + * clutter/cogl/gles/cogl.c: + * clutter/glx/Makefile.am: + * clutter/glx/clutter-stage-glx.c: + * clutter/pango/Makefile.am: + * clutter/pango/pangoclutter-render.c: + * configure.ac: + Add initial 'cogl' implementation. 'cogl' is a simple abstration + layer over GL and GL/ES used by clutter internally. It should + eventually allow clutter applications to be run on both GL and GL/ES + with just a recompile as well as provide more debugging and potentially + profiling information for GL and GL/ES usage. + + This commit contains the initial GL implementation. + +2007-04-26 Emmanuele Bassi + + Merge from clutter-0-2 + + * clutter/clutter-label.c: Unbreak the "use-markup" property + by actually passing the markup to pango_layout_set_markup(). + +2007-04-25 Emmanuele Bassi + + Merge from clutter.git/master + + * clutter/glx/clutter-event-glx.c: + * clutter/glx/clutter-stage-glx.c: Implement the _NET_WM_PING + protocol handling on the main stage window. + + * clutter/clutter-stage.h: + * clutter/clutter-stage.c: + * clutter/clutter-main.c: Handle CLUTTER_DELETE events internally, + by calling clutter_main_quit(), and remove the ::delete-event + signal from ClutterStage; clean up the signal emission sequence + for the events: emit the ::event signal before emitting any signal + and the ::event-after signal after the signal has been emitted; move + the signal emission calls inside ClutterStage so we can call + g_signal_emit() instead of g_signal_emit_by_name(), thus sparing us + a lookup for each event. + + * examples/test.c: Remove ::delete-event signal handling. + +2007-04-19 Emmanuele Bassi + + Merge from clutter.git/master + + * clutter/clutter-backend.h: + * clutter/clutter-backend.c: Add API for getting screen/display + properties from the backend. + + * clutter/glx/clutter-backend-glx.c: + * clutter/glx/clutter-backend-egl.c: Retrieve screen/display + properties inside the backends init function. + + * clutter/glx/clutter-event-glx.c: Handle the WM_PROTOCOLS + ClientMessage events. + + * clutter/glx/clutter-stage-glx.c: Use XSetWMProtocols to enable + the WM_PROTOCOLS ClientMessage events on the stage window. + + * clutter/glx/clutter-glx.h: Return the Screen pointer and not + the screen number in clutter_glx_get_default_screen(). The screen + number is returned by clutter_backend_get_screen_number(), or + by calling XScreenNumberOfScreen on the returned pointer. + + * clutter/clutter-event.h: Add CLUTTER_DELETE to the event types. + + * clutter/clutter-main.c: Emit the ClutterStage::delete-event + when receiving a CLUTTER_DELETE event; if the signal handlers + return FALSE, call clutter_main_quit(). + + * clutter/clutter-marshal.list: + * clutter/clutter-stage.c: Use the right marshaller function + for the delete-event closure. + + * examples/test.c: Test the "delete-event" signal handler. + +2007-04-16 Emmanuele Bassi + + Merge from clutter.git/merge-from-stable + + * clutter/clutter-event.h: + * clutter/glx/clutter-event-glx.c: Add the XEMBED protocol support + in the GLX backend, for embedding the stage window into another + X window. This allows cross-toolkit inclusion and makes clutter-gtk + possible. + + * clutter/clutter-behaviour-scale.c: Implement every ClutterGravity + value inside the scale behaviour and make the actors anchor to a + gravity when scaling up and down. + + * clutter/clutter-texture.c: Revert to copying GdkPixbuf areas to + correctly implement the texture tiling. This fixes segmentation + faults occurring with cards with a small texture memory area. + + * clutter/clutter-actor.c: Call g_object_freeze_notify() (and take + a reference on the actor) inside clutter_actor_request_size() so + that the notifications get unqueued at the end of the size request. + +2007-04-16 Emmanuele Bassi + + Merge from clutter.git/work + + * clutter/clutter-behaviour-bspline.[ch]: Return a ClutterBehaviour + when splicing the b-spline; fix the header and the API documentation; + hush the compiler warnings; kill of some pointer indirections. + + * clutter/clutter-behaviour-rotate.[ch]: Add a rotate behaviour, + with user defined axis, direction and sweep angle. + + * clutter/clutter-behaviour.c (clutter_behaviour_is_applied): Add + a parameter ISA check and return FALSE if it fails. + +2007-04-12 Tomas Frydrych + + * clutter/clutter-behaviour.h: + * clutter/clutter-behaviour.c: + * clutter/clutter-behaviour-path.h: + * clutter/clutter-behaviour-path.c: + Moved declaration of ClutterKnot from clutter-behaviour path + into clutter-behaviour. + + * clutter/clutter-fixed.h + * clutter/clutter-fixed.c + Added myself as an author. + + * clutter/Makefile.am: + * clutter/clutter.h: + * clutter/clutter-behaviour-bspline.h: + * clutter/clutter-behaviour-bspline.c: + Added new bezier spline behaviour. + + * examples/bspline.c: + * examples/Makefile.am: + An example of using bspline path. + +2007-04-07 Matthew Allum + + * clutter/glx/clutter-backend-glx.c: + Fix version check. + +2007-03-29 Tomas Frydrych + + * clutter/clutter-stage.c: + (perspective): fixed degree -> rad conversion for fovy angle + (perspectivex): fixed degree -> rad conversion for fovy angle, + added code for gle glMultMatrixx(). + +2007-03-29 Tomas Frydrych + + * configure.ac: fixed typo + + * clutter/clutter-fixed.c: + * clutter/clutter-fixed.h: + (clutter_tani): fast implementation of tan() + (clutter_qmulx): improved-precission fixed point multiply + + * clutter/clutter-stage.c: + (perspectivex): fixed point implementaiton of perspective() + (_clutter_stage_sync_viewport): + (clutter_stage_get_actor_at_pos): + use perspectivex() instead of perspective() + +2007-03-27 Matthew Allum + + * clutter/cogl/Makefile.am: + * clutter/cogl/cogl.h: + * clutter/cogl/gles/Makefile.am: + * clutter/cogl/gles/cogl.c: + Begin poplulating cogl GLES code. + + * configure.ac: + * clutter/egl/clutter-event-egl.c: + * clutter/egl/clutter-stage-egl.c: + * clutter/egl/clutter-stage-egl.h: + * clutter/egl/clutter-backend-egl.c: + * clutter/egl/clutter-backend-egl.h: + * clutter/egl/clutter-egl.h: + Add initial EGL/X backend work mostly ported from backend branch. + Builds but untested as yet. + + * clutter/glx/clutter-stage-glx.c: + Only include XFixes Header if we have have it. + + * clutter/clutter-behaviour.c: (clutter_behaviour_apply): + * clutter/clutter-behaviour.h: + Add clutter_behaviour_is_applied() + +2007-03-27 Emmanuele Bassi + + * clutter/clutter-stage.h: Remove unused clutter_stage_flush() + declaration. + +2007-03-27 Emmanuele Bassi + + * clutter/glx/clutter-glx.h: + * clutter/glx/clutter-stage-glx.c: (Re-)Implement the foreign + window setting function for the stage in the GLX backend. + +2007-03-27 Emmanuele Bassi + + * clutter/clutter-stage.h: Declare the clutter_perspective_get_type() + function in the header. + +2007-03-27 Emmanuele Bassi + + * clutter/cogl/cogl.h: Add header and compiler guards. + +2007-03-27 Emmanuele Bassi + + * clutter/glx/clutter-stage-glx.c: Remove the check in the + paint chain up: we know for sure that the parent's paint + vfunc is present. + +2007-03-27 Matthew Allum + + * clutter/clutter-feature.c: + Rejig ifdef's a little. Make drm vblanking Linux only. + + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + Add a perspective boxed type. + + * clutter/glx/clutter-stage-glx.c: + Add some FIXMEs + + * clutter/Makefile.am: + * clutter/cogl/Makefile.am: + * clutter/cogl/cogl.h: + * clutter/cogl/gl/Makefile.am: + * clutter/cogl/gl/cogl.c: + * configure.ac: + Very initial work on 'cogl' GL/GLES abstraction/utility code. + +2007-03-26 Emmanuele Bassi + + * clutter/clutter-behaviour-scale.[ch]: Add API for getting + the scale bounds and the gravity from a scale behaviour instance. + +2007-03-26 Emmanuele Bassi + + * clutter/clutter-timeline.c: Fix last commit. + +2007-03-25 Emmanuele Bassi + + * clutter/clutter-timeline.c: Slightly lower the proiority + of the ClutterTimeline tick, so that events get a higher + priority in the main loop. + +2007-03-25 Emmanuele Bassi + + * clutter/clutter-event.[ch]: Remove the flags member from + the ClutterEvent structure; remove the ClutterEventFlags + enum. + +2007-03-25 Emmanuele Bassi + + * clutter/clutter-stage.h: Remove the ::get_actor_at_pos() + and ::flush() vfuncs. + + * clutter/glx/clutter-stage-glx.c: Remove the implementations + of those vfuncs from the backend specific code, as they are + pure GL calls. + + * clutter/clutter-stage.c: Add back the actor hit detection + code in the base stage class, along with the viewport + synchronisation function. + + * clutter/clutter-private.h: Declare the private function + _clutter_stage_sync_viewport(). + +2007-03-23 Emmanuele Bassi + + * clutter/clutter-backend.c: Clear the event queue when + disposing the backend object; remove the initialisation + of the backend structure members... + + * clutter/glx/clutter-backend-glx.c: ... and keep it here + in the backends where it belongs. + +2007-03-23 Emmanuele Bassi + + * clutter/clutter-private.h: + * clutter/clutter-backend.h: Move the backend functions + into the private header. + + * clutter/glx/clutter-stage-glx.c: + * clutter/glx/clutter-event-glx.c: + * clutter/clutter-main.c: + * clutter/clutter-stage.c: Update the calls to the private + backend functions. + + * clutter/clutter-backend.[ch]: Add an ::init_features + vfunc to ClutterBackend. + +2007-03-23 Emmanuele Bassi + + * clutter/glx/clutter-stage-glx.c: + Make sure the top-left corner of the box is our origin, + when returning the allocation. + + * clutter/clutter-stage.c: + * clutter/clutter-group.c: Add tracing for the paint + method. + +2007-03-23 Matthew Allum + + * clutter/glx/clutter-stage-glx.c: + (clutter_stage_glx_allocate_coords): + Make new stage return correct width & height. + +2007-03-23 Emmanuele Bassi + + Assorted build fixes to pass distcheck. + + * clutter/glx/Makefile.am: Install the clutter-glx.h header. + + * clutter/Makefile.am: Actually apply linker flags. + + * configure.ac: Use a more readable CLUTTER_API_VERSION instead + of CLUTTER_MAJORMINOR; require gobject-2.0 with glib-2.0 >= 2.10, + as we are using GObject and the slice allocator from glib 2.10. + + * clutter.pc.in: Add the apiversion variable. + +2007-03-23 Emmanuele Bassi + + * clutter/clutter-event.c: Pop and peek the event queue + from the tail - it's a queue, not a stack. + + * clutter/clutter-private.h: + * clutter/clutter-main.c: Add a boolean signal accumulator. + + * clutter/clutter-stage.[ch]: Add an event argument to + the 'delete-event' signal; rename the 'input-event' signal + to 'event'; add the static scope flag to all the stage + events. + + * examples/*.c: Update. + +2007-03-22 Emmanuele Bassi + + * clutter.pc.in: Require gobject-2.0 too. + + * ChangeLog: Fix the previous commit log. + +2007-03-22 Emmanuele Bassi + + * clutter/clutter-private.h: Remove inclusion of backend-specific + headers; update the main context object; add the declarations for + the event queue functions. + + * clutter/clutter-backend.[ch]: Add the abstract ClutterBackend + object, which holds backend-specific settings, the main stage, + and the event queue. Every backend must implement a subclass of + ClutterBackend and ClutterStage. + + * clutter/clutter-feature.c: Protect the GLX specific calls + behing #ifdef HAVE_CLUTTER_GLX. + + * clutter/clutter-actor.c: + * clutter/clutter-group.c: + * clutter/clutter-clone-texture.c: Include GL/gl.h + + * clutter/clutter-event.[ch]: Update public API and implement the + event queue private API; hold a reference on the event objects; + move out the keysym-to-unicode table; add the new event types. + + * clutter/clutter-color.h: Include clutter-fixed.h + + * clutter/clutter-main.c: Update API; get the main stage + from the backend object; process the event received from the + queue; lock/unlock the main mutex if we have one; move the + initialisation process sooner in the init sequence, in order to + have the backend object when we check for options; call the + backed vfuncs in the pre/post parse hooks. + + * clutter/clutter-stage.c: Make ClutterStage and abstract class, + implemented by the backends. + + * clutter/clutter/glx/clutter-glx.h: + * clutter/clutter/glx/clutter-backend-glx.[ch]: + * clutter/clutter/glx/clutter-event-glx.c: + * clutter/clutter/glx/clutter-stage-glx.[ch]: + * clutter/clutter/glx/Makefile.am: Add the GLX backend. + + * clutter/clutter/egl/clutter-backend-egl.[ch]: + * clutter/clutter/egl/clutter-event-egl.c: + * clutter/clutter/egl/clutter-stage-egl.[ch]: + * clutter/clutter/egl/Makefile.am: Add the stub for a EGL backend. + + * examples/*.c: Update for the new API. + + * configure.ac: Check for the XFixes X extension; add a configure + switch for choosing the backend; show the backend we are building + in the summary. + + * clutter.pc.in: Add the backend to the exported variables. + + * clutter/Makefile.am: Install the headers in the + clutter-$api_version/clutter directory, as usual; call the shared + object libclutter-$backend-$api_version; build glue for the + backend static library. + +2007-03-19 Matthew Allum + + * clutter/clutter-label.c: + Simple doc fix. + * clutter/clutter-texture.c: (clutter_texture_get_pixbuf): + Backport of fix to get_pixbuf on non alpha textures from 0_2 branch. + +2007-03-19 Emmanuele Bassi + + * clutter/clutter-texture.c: Clean up code; add checks + in public API. + +2007-02-18 Matthew Allum + + * clutter/clutter-actor.c: (clutter_actor_reparent): + Add a FIXME re calling clutter_group here. + * clutter/clutter-group.c: + Fix clutter_group_remove_all + +2007-02-15 Matthew Allum + + * clutter/clutter-group.h: + Add missing clutter_group_remove_all declaration. + +2007-02-14 Matthew Allum + + * clutter/Makefile.am: + * clutter/clutter-main.c: + * clutter/clutter-stage.c: + * clutter/clutter-version.h.in: + * configure.ac: + * examples/super-oh.c: + Add CLUTTER_FLAVOUR define. + +2007-02-13 Matthew Allum + + * examples/super-oh.c: (screensaver_setup): + Fix example to build with new glx api + +2007-02-07 Emmanuele Bassi + + * clutter/clutter-debug.h: Define the CLUTTER_MARK() + macro even when CLUTTER_ENABLE_DEBUG is not + defined. (#215) + +2007-01-30 Tomas Frydrych + + * clutter/clutter-alpha.c: + (sincx1024_func): + (clutter_sine_func): + (clutter_sine_inc_func): + fixed the fixed point math. + +2007-01-30 Emmanuele Bassi + + * clutter/clutter-alpha.h: + * clutter/clutter-alpha.c: Add the square waveform + function clutter_square_func() to the precooked + alpha functions. + +2007-01-23 Matthew Allum + + * Makefile.am: + * clutter.pc.in: + * clutter/Makefile.am: + * clutter/clutter-backend-glx.c: + * clutter/clutter-backend-glx.h: + * clutter/clutter-event.c: + * clutter/clutter-feature.c: + * clutter/clutter-group.c: + * clutter/clutter-main.c: + * clutter/clutter-main.h: + * clutter/clutter-private.h: + * clutter/clutter-stage-glx.c: + * clutter/clutter-stage-glx.h: + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + * clutter/clutter-util.c: + * clutter/clutter-util.h: + * clutter/pango/pangoclutter-render.c: + * configure.ac: + * examples/Makefile.am: + Initial work in supporting different GL backends (ie. GLX/EGL/DirectFB etc). + Currently just GLX supported and now mostly self contained. + + * TODO: + Add a note about caching glenables + +2007-01-23 Tomas Frydrych + + * clutter/clutter-fixed.c: + (_clutter_double_to_fixed): + (_clutter_double_to_int): + Fixed to avoid problems with punned pointers and gcc + optimatisation. + + * clutter/pango/pangoclutter-private.h: + Simplified PANGO_PIXELS_26_6 macro. + + * clutter/pango/pangoclutter-font.c: + (_pango_clutter_font_new): + Replace floating with fixed point math. + +2007-01-19 Tomas Frydrych + + * clutter/clutter-fixed.c: (clutter_sqrti): + Use union instead of casting int <-> float to get rid of + punned-pointer warning and avoid gcc optimatisation breaking + the function on arm. + +2007-01-19 Emmanuele Bassi + + Allow the ClutterGroup subclasses to override the add and + remove operations. + + * clutter/clutter-group.c: Move the add and remove code from + clutter_group_add() and clutter_group_remove() to the signal + class closures; make the "add" and "remove" signals as + RUN_FIRST. + +2007-01-19 Tomas Frydrych + + * clutter/clutter-fixed.h.: + * clutter/clutter-fixed.c: + Added fast double to int and double to fixed point conversion + routines; changed CLUTTER_FLOAT_TO_FIXED to use it. + Replaced clutter_sqrti with fixed point implementation of the QIII + algorithm. + + * clutter/clutter-behavior-path.c: use clutter_sqrti always + + * clutter/clutter-alpha.c: + (sinc_func): replaced double -> int cast with CLUTTER_FLOAT_TO_INT + +2007-01-18 Emmanuele Bassi + + * configure.ac: Post release bump to 0.3.0. + +2007-01-18 =============== 0.2 Release ================================ + +2007-01-18 Matthew Allum + + * clutter.doap: + Update for 0.2 release + +2007-01-18 Emmanuele Bassi + + * clutter/clutter-group.h: Add public functions + clutter_group_get_n_children() and clutter_group_get_nth_child(). + + * clutter/clutter-behaviour.h: + * clutter/clutter-behaviour.c: Fix header alignment; fix argument + name for apidoc. + +2007-01-18 Emmanuele Bassi + + * clutter/Makefile.am: Use the build dir when linking to the + internal pango clutter renderer. + +2007-01-18 Tomas Frydrych + + * clutter/clutter-fixed.h: fixed a typo in comment + +2007-01-18 Emmanuele Bassi + + * clutter/clutter-fixed.h: Remove some inline documentation to + make the header more readable. + + * clutter/clutter-behaviour.c: The actors are store inside a + GSList and not in a GList, so change the list operations to + use the right API. + +2007-01-18 Tomas Frydrych + + * clutter/clutter-color.c: + (clutter_color_darken): + (clutter_color_lighten): + Changed calls to clutter_color_shade calls to clutter_color_shadex + +2007-01-17 Matthew Allum + + * configure.ac: + Bump up version to 0.2.0 + +2007-01-17 Tomas Frydrych + * configure.ac: + * clutter/clutter-behavior-path.c: + Added --without-fpu option. + + * doc/refrence/tmpl/clutter-fixed.sgml: + * clutter/clutter-fixed.c: + * clutter/clutter-fixed.h: + Documentation for fixed point API. + + * AUTHORS: added self. + +2007-01-17 Emmanuele Bassi + + * clutter/clutter-feature.h: + * clutter/clutter-feature.c: Move the GL headers from the + header file to the body. + + * clutter/clutter-fixed.h: + * clutter/clutter-fixed.c: Fix apidoc. + + * clutter/clutter-color.h: + * clutter/clutter-color.c: Ditto. + +2007-01-17 Tomas Frydrych + + * clutter/clutter-fixed.h: + * clutter/clutter-fixed.c: + * clutter/clutter-alpha.c: + Renamed clutter_fixed_sin() to clutter_sinx() and + clutter_angle_sin() to clutter_sini(); added clutter_sqrtx() + and clutter_sqrti(); added missing copyright. + + * clutter/clutter-behavior.c: + replaced call to sqrt() with clutter_sqrti() + + * clutter/clutter-behavior-scale.c: + (clutter_behaviour_scale_alpha_notify): + Replaced floating point math with fixed point. + +2007-01-16 Emmanuele Bassi + + * clutter/clutter-feature.c: Use clutter_vblank_method() to + get the VBlank method name from the environment variable OR + the command line switch. + + (clutter_feature_do_init): Move the check on the features + state here, to avoid an expensive function call, and inline + the function. + + * clutter/clutter-fixed.c: Fix gtk-doc. + + * clutter/clutter-main.c: Add a --clutter-vblank command line + switch controlling the VBlank method to be used: it overrides + the CLUTTER_VBLANK environment variable. + + (pre_parse_hook), (clutter_init), + (clutter_init_with_args): Move thread initialisation before + type init, to avoid the warning that comes with newer GLib + versions. + + * clutter/clutter-group.h: + * clutter/clutter-group.c: Mark clutter_group_show_all() and + clutter_group_hide_all() as deprecated. + +2007-01-16 Matthew Allum + + * NEWS: + Minor tweaks + + * TODO: + Sync up, mainly with 0.3 todo items + + * clutter/clutter-behaviour.c: + * clutter/clutter-behaviour.h: + clutter_behaviour_get_n_actors() / clutter_behaviour_get_nth_actor() + Additions. + + * clutter/clutter-stage.c: (clutter_stage_realize): + Experimental (disabled) visual setting code. + + * clutter/clutter-feature.c: + Check for GL_EXT_texture_rectangle (#198 - Frederick Riss) + + * clutter/clutter-group.c: (clutter_group_allocate_coords): + Fix for group size allocation (#199 - Frederick Riss) + + * clutter/clutter-texture.c: (texture_upload_data): + Fix texture unpacking row length (#197 Frederick Riss) + + * examples/Makefile.am: + Fix LDADD in build (#196 - Frederick Riss) + +2007-01-16 Tomas Frydrych + + * clutter/clutter-fixed.h: + Added integer ClutterAngle type, protype of clutter_angle_sin, + convenience macros clutter_fixed_cos and clutter_angle_cos, plus + other convenience macros for commonly used constants and ops. + * clutter/clutter-fixed.c: + (clutter_fixed_sin): + Fixed to work for negative angles. + (clutter_angle_sin): + Fast fixed point sin function for ClutterAngle angles. + * clutter/clutter-alpha.c: + (clutter_sin_func, clutter_sin_inc_func): + Changed to use clutter_angle_sin function. + * clutter-behavior-path.c: + replaced floating point with fixed point operations + * clutter/clutter-color.c: + * clutter/clutter-color.h: + Added (clutter_color_shadex), replaced floating point operations + with fixed point + +2007-01-15 Tomas Frydrych + + * clutter/clutter-fixed.h: (CLUTTER_FIXED_TO_DOUBLE/FLOAT): + Fixed macro so it works for negative values. + * clutter/clutter-fixed.c: (clutter_fixed_sin): + Implemented fixed point sin function. + * clutter/clutter-alpha.c: (clutter_sin_func, clutter_sin_inc_func): + Pluged in fixed point sin function. + +2007-01-07 Matthew Allum + + * clutter/clutter-actor.c: (clutter_actor_allocate_coords): + Fix an amazingly not noticed until now typo. + Minor doc tweaks. + + * clutter/clutter-behaviour-opacity.c: + (clutter_behaviour_alpha_notify): + Take into account initial opacity value when calculating from alpha. + + * clutter/clutter-group.c: + Add new get_nth_child() and get_n_children() api calls. + +2007-01-04 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + Add new set_width/height API calls. + Tweak scaling by reseting matrix. + Make set_opactiy() take parent opacity into account. + Fix clipping. + + * clutter/clutter-alpha.c: + Add more sine functionality. + + * clutter/clutter-behaviour-opacity.c: + Dont make a copy of all applied actors but use a foreach() + + * clutter/clutter-behaviour-scale.c: + Give correct limits to propertys. + Tweak gravity a little more. + Update docs. +: + * clutter/clutter-behaviour.c: (clutter_behaviour_remove): + Minor warning text change. + + * clutter/clutter-feature.c: (clutter_feature_wait_for_vblank): + Minor dri ioctl tweak. + + * clutter/clutter-label.c: + * clutter/clutter-label.h: + Add new label_full api call. + +2006-12-27 Emmanuele Bassi + + * clutter/clutter-stage.[ch]: + * clutter/clutter-event.[ch]: Revert changes; this is what + happens when you keep old tree around. + +2006-12-27 Emmanuele Bassi + + * clutter/clutter-color.h: + * clutter/clutter-color.c: Add clutter_color_to_string(), + which creates a hex-encoded color string from a ClutterColor. + +2006-12-20 Matthew Allum + + * NEWS: + Add some missing improvements. + +2006-12-17 Emmanuele Bassi + + * clutter/clutter-label.c: Remove some gtk-isms; always take + a reference before calling g_object_notify(), as the object + might get disposed while calling the closures inside the + notify queue; notify the changes of the ellipsize property. + +2006-12-14 Emmanuele Bassi + + * clutter/clutter-color.h: + * clutter/clutter-color.c: Expose clutter_color_copy() + and clutter_color_free() for the python bindings, so that + they can manager the conversion automatically; use the + slice allocator when copying/freeing a ClutterColor. + +2006-12-13 Emmanuele Bassi + + * clutter/clutter-color.h: + * clutter/clutter-color.c: Add clutter_color_equal(), + a function for comparing two colors. + + * clutter/clutter-rectangle.c: + (clutter_rectangle_set_color), + (clutter_rectangle_set_border_color): Unset the border if + the color of the rectangle and the color of the border are + the same. + +2006-12-13 Emmanuele Bassi + + * clutter/clutter-actor.c: + * clutter/clutter-clone-texture.c: + * clutter/clutter-event.h: + * clutter/clutter-stage.c: + * clutter/clutter-texture.c: + * clutter/clutter-timeline.c: Update the inline apidoc. + +2006-12-13 Matthew Allum + + * clutter/clutter-actor.c: (clutter_actor_class_init): + Allow actor x,y props to be negative. + +2006-12-12 Emmanuele Bassi + + Rework part of the show/hide machinery. Allow groups sub-classes + and composite actors to override show_all/hide_all in order to + decide which children they wish to show/hide. This means that + if an actor overrides the default show/hide virtual methods, it'll + have to chain up to the parent class show/hide. While we're at it, + provide the fully recursive clutter_actor_show_all() and + clutter_actor_hide_all() methods. + + * clutter/clutter-behaviour-path.c: Add apidoc for the ClutterKnot + functions; add pathological equality case for clutter_knot_equal(). + + * clutter/clutter-event.h: + * clutter/clutter-feature.h: + * clutter/clutter-behaviour.c: + * clutter/clutter-behaviour-scale.c:Fix parameters name so that + gtk-doc doesn't complain. + + * clutter/clutter-actor.c: + * clutter/clutter-event.c: Add apidoc + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: Add a clutter_actor_show_all() and a + clutter_actor_hide_all() functions; provide a mechanism for + groups and composited actors to programmatically select what to + show/hide when clutter_actor_show_all() and clutter_actor_hide_all() + are called. If you are overriding the ClutterActor::show or + the ClutterActor::hide virtual methods you should chain up with + the parent class. + + * clutter/clutter-group.c: Override show_all and hide_all and + recursively show/hide every child inside the group; + clutter_group_show_all() and clutter_group_hide_all() remain as non + recursive versions of clutter_actor_show_all() and + clutter_actor_hide_all() (maybe we should rename them in order + to avoid name clashes with the bindings). + + * clutter/clutter-stage.c: + * clutter/clutter-texture.c: Chain up with parent class show + and hide vfuncs. + + * clutter/clutter-clone-texture.h: + * clutter/clutter-clone-texture.c: Provide API for changing the + parent texture of a clone texture actor. + + * examples/behave.c: + * examples/super-oh.c: + * examples/test.c: Use clutter_actor_show_all() instead of + clutter_group_show_all(). + +2006-12-08 Matthew Allum + + * clutter.doap: + Put release date in correct format. + +2006-12-08 Emmanuele Bassi + + * clutter/clutter-behaviour.h: Add a function prototype + for the foreach function: we need something more specific + than GFunc; add clutter_behaviour_get_actors(), used to + get a list of the actors. + + * clutter/clutter-behaviour.c: Add debugging notes; add + a warning for behaviour implementations missing the + alpha_notify vfunc; add api documentation + + * clutter/clutter-behaviour-opacity.c: + * clutter/clutter-behaviour-path.c: + * clutter/clutter-behaviour-scale.c: Reimplement the + alpha_notify functions using the new foreach function + and, where possible, by directly iterating on the + actors: this shaves off the number of recalculations + of the property/alpha values, and the number of + functions. + +2006-12-05 Emmanuele Bassi + + * clutter/clutter-rectangle.c: Forgot to set the + pencil color. + +2006-12-05 Emmanuele Bassi + + * behave.c: Add test for clutter_color_parse(). + +2006-12-05 Emmanuele Bassi + + * clutter/clutter-event.c: Move the apidoc out. + +2006-12-05 Emmanuele Bassi + + * clutter/clutter-color.h: + * clutter/clutter-color.c: Add clutter_color_parse(), + which parses a string containing a color definition as + understood by XParseColor() (or pango_color_parse()). + +2006-12-04 Emmanuele Bassi + + Avoid clutter segfaulting when used without invoking + clutter_init(). This is needed when using api documentation + tools and every other tool relying on the GObject + introspection API (esp. on a headless box). see the + note in clutter/clutter-feature.c:clutter_feature_init + for a full explanation. + + * clutter/clutter-feature.c: Call clutter_feature_init() + when needed by one of the accessors of the features + structure. + + * clutter/clutter-main.c: + * clutter/clutter-private.h: Remove clutter_feature_init() + public declaration: the features support check is done the + first time a feature is needed. + + * clutter/clutter-main.c: Do not ever access the clutter + main context pointer directly; instead, obtain a pointer + to it via clutter_context_get_default(), which will always + return something valid. + +2006-12-04 Emmanuele Bassi + + * clutter/clutter-private.h: Add our own READABLE, + WRITABLE and READWRITE paramspec flags, declaring the + string components of the properties GParamSpec as static; + this should shave off some bytes in the memory footprint + and avoid relocations. + + * clutter/clutter-actor.c: + * clutter/clutter-behaviour.c: + * clutter/clutter-behaviour-opacity.c: + * clutter/clutter-behaviour-path.c: + * clutter/clutter-behavuour-scale.c: + * clutter/clutter-clone-texture.c: + * clutter/clutter-label.c: + * clutter/clutter-rectangle.c: + * clutter/clutter-stage.c: + * clutter/clutter-texture.c: + * clutter/clutter-timeline.c: Use the CLUTTER_PARAM_* + macros we just added. + + * clutter/clutter-behaviour-scale.c: Add properties for + the scale begin, scale end and gravity parameters. + + * clutter/clutter-behaviour-path.h: Mark the ClutterKnot + memory management functions as public (for the bindings), + since we use the slice allocator for copying knots around; + add a clutter_knot_equal() function. + + * clutter/clutter-behaviour-path.c: + (node_distance): Use clutter_knot_equal() as a fast path + to avoid the sqrt() in case the nodes we are using are + at the same position. + (path_total_length): Additional check on the existence + of the next node. + + * examples/behave.c: Do not leak the ClutterBehaviour + objects around. + +2006-12-03 Emmanuele Bassi + + * clutter/clutter-texture.h: Clean up. + + * clutter/clutter-texture.c: Typo fix in the name + of ClutterTextureTileDimension. + + * clutter/clutter-behaviour.c: Allow passing NULL + to clutter_behaviour_set_alpha() (as we pass NULL + in the finalize process). + +2006-12-02 Emmanuele Bassi + + * clutter/clutter-version.h.in: Fix a stupid logic + error in the CHECK_VERSION macro. + +2006-11-30 Matthew Allum + + * clutter.doap: + Updates + +2006-11-30 Emmanuele Bassi + + * clutter/clutter-stage.h: + * clutter/clutter-stage.c: + (clutter_stage_swap_buffers): Remove, as the same is done + via clutter_redraw() and clutter_actor_queue_redraw(). + + (clutter_stage_unrealize), (clutter_stage_init), + (clutter_stage_set_xwindow_foreign): Do not call + XDestroyWindow() on the stage Window if we are using a + foreign Window, as we don't control its lifetime. + +2006-11-30 Emmanuele Bassi + + * Makefile.am: Remove the gtk directory from the SUBDIRS. + + * clutter/clutter-stage.h: + * clutter/clutter-stage.c: Add clutter_stage_swap_buffers(), + which swaps the GL buffers. This fixes the redraw in the + GTK widget. + +2006-11-29 Emmanuele Bassi + + * clutter/clutter-stage.c: + (clutter_stage_set_xwindow_foreign): Add checks; + remove an indirection to the private data. + +2006-11-29 Emmanuele Bassi + + * gtk/* + * configure.ac: + * Makfile.am: Remove the GTK+ widget from the + main tree; now Clutter depends just on GLib, + XLibs, GdkPixbuf and OpenGL. + +2006-11-29 Matthew Allum + + * clutter/clutter-stage.c: (clutter_stage_realize): + Set colormap on stage window - should fix issues + with indirect rendering. + +2006-11-23 Matthew Allum + + * clutter/clutter-debug.h: + Fix small macro typo. + +2006-11-22 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-alpha.c: + * clutter/clutter-behaviour-opacity.c: + * clutter/clutter-behaviour-scale.c: + * clutter/clutter-clone-texture.c: + * clutter/clutter-feature.c: + * clutter/clutter-label.c: + * clutter/clutter-main.c: + * clutter/clutter-stage.c: + * clutter/clutter-texture.c + * clutter/clutter-timeline.c: + * clutter/clutter-debug.h: + Make CLUTTER_NOTE() just take a string rather than a func. + Add more default context to output. + + * configure.ac: + Fix flag and add more help docs for --ebable-debug option. + +2006-11-21 Emmanuele Bassi + + * clutter/clutter-main.c: Add a --g-fatal-warnings switch + for abort()-ing on warnings and criticals. + +2006-11-21 Emmanuele Bassi + + * configure.ac: Enable debug messages also when + --enable-debug is set to "minimum". + + * clutter/Makefile.am: + * clutter/clutter-debug.h: Move all debugging macros inside + this private header; make all debug macros depend on the + CLUTTER_ENABLE_DEBUG compile time define, controlled by + the --enable-debug configure switch; add G_LOG_DOMAIN define. + + * clutter/clutter-main.c: Clean up the debug stuff; add + command line argument parsing using GOption; the debug + messages now are triggered like this: + + CLUTTER_DEBUG=section:section:... clutter-app + + or like this: + + clutter-app --clutter-debug=section:section:... + + where "section" is one of the sections listed in clutter-main.c, + or "all", for all sections; each section is bound to a flag, + which can be used to define a domain when adding a debug note + using the CLUTTER_NOTE() macro; the old CLUTTER_DBG() macro is + just a wrapper around that, under the CLUTTER_DEBUG_MISC domain; + CLUTTER_NOTE() is used like this: + + CLUTTER_NOTE (DOMAIN, log-function); + + where log function is g_printerr(), g_message(), g_warning(), + g_critical() or directly g_log() - for instance: + + CLUTTER_NOTE (PANGO, g_warning ("Cache miss: %d", glyph)); + + will print the warning only if the "pango" flag has been + set to the CLUTTER_DEBUG envvar or passed to the --clutter-debug + command line argument. + + similar to CLUTTER_SHOW_FPS, there's also the --clutter-show-fps + command line switch; also, the --display and --screen command + line switches have been added: the first overrides the DISPLAY + envvar and the second controls the X screen used by Clutter to + get the root window on the display. + + * clutter/clutter-main.h: + * clutter/clutter-main.c: Add extended support for GOption + in Clutter; use clutter_init_with_args() to let Clutter + parse your own command line arguments; use instead + clutter_get_option_group() to get the GOptionGroup used by + Clutter if you want to do the parsing yourself with + g_option_context_parse(). The init sequence has been verified, + updated and moved into common functions where possible. + + * clutter/pango/pangoclutter-render.c: + * clutter/*.c: Include "clutter-debug.h" where needed; use + CLUTTER_NOTE() instead of CLUTTER_DBG(). + + * examples/super-oh.c: Use the new clutter_init_with_args() + function, and add a --num-hands command line switch to + the SuperOH example code controlling the number of hands at + runtime. + +2006-11-21 Emmanuele Bassi + + * configure.ac: Rename G_ENABLE_DEBUG to CLUTTER_ENABLE_DEBUG. + +2006-11-20 Emmanuele Bassi + + * clutter/clutter-rectangle.h: + * clutter/clutter-rectangle.c: Add border to the ClutterRectangle + actor; add "border-width", "border-color" and "has-border" + properties, plus their accessors. The border generation code is + pretty lame, at the moment. + + * examples/behave.c: Add code to test the new rectangle properties. + +2006-11-20 Matthew Allum + + * clutter.doap: + Add an initial DOAP file to project + +2006-11-20 Emmanuele Bassi + + * clutter/Makefile.am: + * clutter/clutter.h: + * clutter/clutter-version.h.in: Auto-generated versioning macros. + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: Add a ClutterActor::parent-set signal, + for notificating changes of an actor's parent; add api-doc for + the actor's properties; add the ClutterActor "name" property; clean + up a bit some functions; emit the "parent-set" signal when setting + te parent and when unparenting; better warnings when lowering + and raising an actor. + + * configure.ac: + * clutter/Makefile.am: Add a --enable-debug configure option, + with three levels of debugging: no, minimum and yes; default + for development releases (odd minor version) is "yes"; update + the version m4 defines; update the libtool macros: now just + changed the clutter_interface_age when releasing will update + everything else. + +2006-11-17 Emmanuele Bassi + + * clutter/clutter-behaviour-path.h: + * clutter/clutter-behaviour-path.c: Add "since" strings; add + a "knot" property which can be used to append a knot to the path; + fix apidoc. + + * clutter/clutter-alpha.c: Add "since" strings. + + * clutter/clutter-feature.c: Add apidoc. + + * clutter/clutter-behaviour-opacity.c: Add the "opacity-start" + and "opacity-end" properties; rewrite constructor to use them. + +2006-11-17 Emmanuele Bassi + + * clutter/clutter-behaviour-path.h: + * clutter/clutter-behaviour-path.c: Add a "knot-reached" signal, + which is emitted when the path reaches a node in the nodes list; + flesh out the documentation a bit; sync the parameters names + so that gtk-doc doesn't complain about missing stuff. + + * clutter/clutter-behaviour.h: + * clutter/clutter-behaviour.c: Add the alpha value to the + ClutterBehaviour::alpha_notify vfunc, so you don't have to + get the value from the alpha inside the behaviour implementations; + add more documentation. + + * clutter/clutter-alpha.c: Flesh out the description. + + * clutter/clutter-actor.h: Update the header. + + * clutter/clutter-behaviour-opacity.c: + * clutter/clutter-behaviour-scale.c: Update docs. + +2006-11-17 Matthew Allum + + * clutter/clutter-alpha.c: + * clutter/clutter-behaviour-opacity.c: + More docs. + + * clutter/clutter-behaviour-path.h: + * clutter/clutter-behaviour-path.c: + More docs, add clutter_behaviour_path_insert_knot(), + clutter_behaviour_path_remove_knot() + + * clutter/clutter-behaviour-scale.h: + * clutter/clutter-behaviour-scale.c: + More docs, add clutter_behaviour_scale_newx() taking fixed values. + + * clutter/Makefile.am: + * clutter/pango/Makefile.am: + Fix linking warning. + +2006-11-15 Matthew Allum + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + Add new API clutter_actor_move_by(), clutter_actor_get_size() + + * clutter/clutter-alpha.c: + * clutter/clutter-alpha.h: + Add clutter alpha sine func + + * clutter/clutter-behaviours.h: + * clutter/clutter-behaviours.c: + Add a basic scale behaviour (needs work) + + * examples/behave.c: (main): + More playing with new behaviour functionality + + * clutter/clutter-feature.c: + * clutter/clutter-feature.h: + * clutter/clutter-main.c: + Add new experimental sync to vblank code + Set env CLUTTER_VBLANK=none to disable. + +2006-11-16 Emmanuele Bassi + + * clutter/clutter-private.h: + * clutter/clutter-actor.c: Implement the defined + clutter_actor_reparent() method; call unrealize + when unparenting an actor. + +2006-11-15 Emmanuele Bassi + + * clutter/clutter-alpha.h: + * clutter/clutter-alpha.c: Add a data parameter to + the ClutterAlphaFunc; add a data+destroy parameter + to clutter_alpha_set_func() and to clutter_alpha_new(), + and turned the latter into clutter_alpha_new_full(); + add a simple, empty constructor clutter_alpha_new(). + + These changes makes writing bindings a tad more easy, + as bindings require passing their own functions in + order to call the real alpha function. + + * clutter/clutter-behaviour.h: Clean up the header. + + * clutter/clutter-behaviours.[ch]: + * clutter/clutter-behaviour-opacity.[ch]: + * clutter/clutter-behaviour-path.[ch]: + * clutter/clutter-behaviour-scale.[ch]: Split the + ClutterBehaviourPath, ClutterBehaviourOpacity and + ClutterBehaviourScale into their own files as they + have been growing a bit. Fix ClutterBehaviourPath + API. + + * clutter/clutter-media.h: Remove the commented + "metadata_available" signal: gtk-doc chokes up on that. + + * clutter/clutter-timeline.h: + * clutter/clutter-timeline.c: Remove the useless + ClutterTimelineAlphaFunc signature; add missing accessor + methods for the properties; clean up a bit. + + * clutter/clutter-util.h: + * clutter/clutter-util.c: Remove unneeded function + clutter_util_can_create_texture(). + + * clutter/clutter-feature.h: Sync the name of + clutter_feature_get_all() with the name declared + in clutter-feature.h. + + * clutter/Makefile.am: + * clutter/clutter.h: Update. + + * examples/behave.c: Update to the new ClutterAlpha + constructor. + + * examples/super-oh.c: Use the right pointer and avoid + the compiler making a fuss about it. + +2006-11-15 Matthew Allum + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + Add new API clutter_actor_move_by(), clutter_actor_get_size() + + * clutter/clutter-alpha.c: + * clutter/clutter-alpha.h: + Add clutter alpha sine func + + * clutter/clutter-behaviours.h: + * clutter/clutter-behaviours.c: + Add a basic scale behaviour (needs work) + + * examples/behave.c: (main): + More playing with new behaviour functionality + + * clutter/clutter-feature.c: + * clutter/clutter-feature.h: + * clutter/clutter-main.c: + Add new experimental sync to vblank code + Set env CLUTTER_VBLANK=none to disable. + +2006-11-15 Emmanuele Bassi + + * clutter/clutter-alpha.h: + * clutter/clutter-alpha.c: ClutterAlpha is an initially + floating object, as it makes sense only when bound to + a ClutterBehaviour; add checks for public API. + + * clutter/clutter-behaviour.h: + * clutter/clutter-behaviour.c: Remove the ClutterBehaviour + constructor: ClutterBehaviour is an abstract class which + must be implemented by subclassing; add checks for public + API; unref the actors on finalize; sink the ClutterAlpha + object. + + * clutter/clutter-behaviours.h: ClutterKnot is a boxed + type: add the _get_type() function declaration and the + type macro. + +2006-10-23 Matthew Allum + + * clutter/clutter-alpha.h: + * clutter/clutter-behaviour.c: + * clutter/clutter-behaviour.h: + * clutter/clutter-behaviours.c: + * clutter/clutter-behaviours.h: + * examples/behave.c: + Behaviours now only 'driven' by ClutterAlpha, not any object/prop. + Add simple Clutter path behaviour. + +2006-10-03 Matthew Allum + + * configure.ac: + * clutter/Makefile.am: + * clutter/clutter-actor.c: + * clutter/clutter-label.c: + * clutter/clutter-label.h: + * clutter/pango/Makefile.am: + * clutter/pango/pangoclutter-font.c: + * clutter/pango/pangoclutter-fontmap.c: + * clutter/pango/pangoclutter-private.h: + * clutter/pango/pangoclutter-render.c: + * clutter/pango/pangoclutter.h: + Add initial rough new pango renderer and clutter-label. + + * examples/super-oh.c: + * examples/test.c: + Minor fixups + +2006-09-20 Matthew Allum + + * clutter/clutter-actor.c: (clutter_actor_paint): + * clutter/clutter-clone-texture.c: (clutter_clone_texture_paint): + * clutter/clutter-group.c: (clutter_group_paint): + * clutter/clutter-rectangle.c: (clutter_rectangle_paint): + * clutter/clutter-texture.c: (clutter_texture_paint): + Fix for #156. + clutter_actor_paint() now translates to actor position as + to not fix scaled groups positioning. Sub classes now paint + at 0,0. + +2006-09-19 Matthew Allum + + * clutter/clutter-actor.c: (redraw_update_idle), + (clutter_actor_queue_redraw): + * clutter/clutter-main.c: (clutter_redraw): + Remove now uneeded locks + ( new gst and texture code makes redundant ) + + * clutter/clutter-texture.c: + * clutter/clutter-texture.h: + Redo clutter texture as to not keep a reference + to underlying texture. + +2006-09-15 Matthew Allum + + More fixes from Bastien Nocera (#155): + + * clutter/clutter-main.c: (clutter_init): + * clutter/clutter-main.h: + Add an enum for clutter init to return an error code. + * configure.ac: + Dont check for XInitThreads, there is no need, its part of xlib. + +2006-09-14 Matthew Allum + + Various fixes from Bastien Nocera: + + * clutter/clutter-event.h: + * clutter/clutter-stage.c: (clutter_stage_unrealize), + (clutter_stage_realize), (clutter_stage_request_coords), + (clutter_stage_dispose), (clutter_stage_init): + * clutter/clutter-stage.h: + * gtk/gtk-clutter-test.c: (input_cb), (frame_cb), (main): + * gtk/gtk-clutter.c: (realize): + Misc fixes (#152) + + * clutter/clutter-group.c: (clutter_group_remove): + Remove uneeded ref count (#143) + + * examples/super-oh.c: (input_cb): + Handle key release rather than presses (#154) + + * configure.ac: + Add old style X libs check when x11.pc unavailable (#101) + +2006-09-01 Matthew Allum + + * clutter/Makefile.am: + * clutter/clutter-media.c: + * clutter/clutter-media.h: + * clutter/clutter.h: + Re-add clutter media. + +2006-08-31 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-group.c: (clutter_group_paint), + (clutter_group_request_coords), (clutter_group_allocate_coords), + (clutter_group_add): + Fix some group sizing/positioning issues. + +2006-08-30 Jorn Baayen + + * clutter.pc.in: + + Remove gstreamer deps. + +2006-08-30 Jorn Baayen + + * README: + * clutter/Makefile.am: + * clutter/clutter-audio.c: + * clutter/clutter-audio.h: + * clutter/clutter-main.c: (clutter_init): + * clutter/clutter-media.c: + * clutter/clutter-media.h: + * clutter/clutter-video-texture.c: + * clutter/clutter-video-texture.h: + * clutter/clutter.h: + * configure.ac: + * examples/Makefile.am: + * examples/README: + * examples/video-cube.c: + * examples/video-player.c: + * gst/Makefile.am: + * gst/clutterimagesink.: + * gst/clutterimagesink.c: + * gst/clutterimagesink.h: + * gtk/Makefile.am: + + Remove gstreamer bits. There live in clutter-gst now. + +2006-08-30 Jorn Baayen + + * clutter/Makefile.am: + * clutter/clutter-audio.c: + * clutter/clutter-audio.h: + * clutter/clutter.h: + + Added ClutterAudio audio playback object. + +2006-08-29 Matthew Allum + + * clutter/clutter-fixed.h: + Add basic fixed point utility defines and type. + + * clutter/Makefile.am: + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * clutter/clutter-group.c: + * clutter/clutter-stage.c: + * examples/super-oh.c: (main): + Add scale API and functionality. + Rework group sizing. Now group size requests have no effect + but can be scaled. + +2006-08-29 Jorn Baayen + + * clutter/clutter-behaviour.c: (_clutter_behaviour_finalize), + (_clutter_behaviour_set_property), + (_clutter_behaviour_get_property), (clutter_behaviour_class_init), + (clutter_behaviour_init), (clutter_behaviour_apply), + (clutter_behaviour_remove), (clutter_behaviour_remove_all), + (clutter_behaviour_actors_foreach): + * clutter/clutter-behaviour.h: + * clutter/clutter-behaviours.c: + (clutter_behaviour_property_change), + (clutter_behaviour_opacity_dispose), + (clutter_behaviour_opacity_finalize), + (clutter_behaviour_opacity_class_init), + (clutter_behaviour_opacity_init): + * clutter/clutter-behaviours.h: + * clutter/clutter-marshal.list: + * examples/behave.c: (main): + + Behaviours track generic GObject properties. + + * clutter/clutter-video-texture.h: + + Remove signal prototypes - they are already specified in + clutter-media.h. + +2006-08-28 Jorn Baayen + + * clutter/Makefile.am: + * clutter/clutter-alpha.c: + * clutter/clutter-alpha.h: + * clutter/clutter-behaviours.c: + (clutter_behaviour_opacity_dispose), + (clutter_behaviour_opacity_init), + (clutter_behaviour_opacity_frame_foreach), + (clutter_behaviour_opacity_frame): + * clutter/clutter-behaviours.h: + * clutter/clutter-timeline.c: (clutter_timeline_class_init): + * clutter/clutter-timeline.h: + * clutter/clutter.h: + * examples/behave.c: (main): + + Separate alpha calculation into its own class. + + * clutter/clutter-behaviour.c: (clutter_behaviour_set_timelime): + + Correct NULL check. + +2006-08-15 Matthew Allum + + * clutter/clutter-behaviour.h: + Behaviours shouldn't subclass timelines. + +2006-08-15 Matthew Allum + + * clutter/clutter-behaviour.c: + * clutter/clutter-behaviour.h: + * clutter/clutter-behaviours.c: + * clutter/clutter-timeline.c: + * clutter/clutter-timeline.h: + * clutter/clutter.h: + Make basic behaviour infrastructure actually work. + + * examples/Makefile.am: + * examples/behave.c: + Add a simple behaviour demo/test + + * clutter/clutter-media.c: (clutter_media_set_volume): + Actuall set volume rather than position.. (Fixes #141) + +2006-08-14 Matthew Allum + + * clutter/Makefile.am: + * clutter/clutter-behaviour.c: + * clutter/clutter-behaviour.h: + * clutter/clutter-behaviours.c: + * clutter/clutter-behaviours.h: + * clutter/clutter-timeline.c: + * clutter/clutter-timeline.h: + Add very initial new behaviour functionality. + + * clutter/clutter-stage.c: + * clutter/clutter-main.c: + * clutter/clutter-actor.c: + Improve clipping using stencil test rather than scissor check. + ( Should now handle rotated clips etc ). + + * clutter/clutter-group.c: (clutter_group_paint): + Fix typo on position check. + +2006-08-07 Matthew Allum + + * clutter/clutter-video-texture.c: (lay_pipeline): + Set quality of service prop on fakesink to TRUE. + +2006-08-07 Matthew Allum + + * clutter/clutter-actor.c: (clutter_actor_paint): + Remove relic from old stage behaviour - dont unref + it during a clip. + +2006-07-27 Emmanuele Bassi + + * clutter/clutter-feature.c: No need to call clutter_feature_init() + each time: it's private and should never be seen from the outside; + add a warning, just in case something screws up and calls it more + than once. + +2006-07-27 Emmanuele Bassi + + * clutter/clutter-private.h: Move clutter_feature_init() + declaration here: you shouldn't even need to initialise + features yourself. + + * clutter/clutter-feature.c: call clutter_feature_init() + each time you try to access the feature list; add a static + lock around the feature flags container; add api documentation. + + * clutter/clutter-feature.h: Add a type for the feature flags + to make bindings happy. + +2006-07-24 Matthew Allum + + * clutter/Makefile.am: + * clutter/clutter-feature.c: + * clutter/clutter-feature.h: + + Add new funcs for checking for available runtime GL + extensions. + + * clutter/clutter-clone-texture.c: + * clutter/clutter-texture.c: + + Add support for non power of two textures + if GL_TEXTURE_RECTANGLE_ARB extension available ( at runtime ). + Should lower texture memory needs a little. + +2006-07-17 Emmanuele Bassi + + * clutter/clutter-stage.c (clutter_stage_get_default): Fix + api documentation. + +2006-07-15 Emmanuele Bassi + + * clutter/clutter-main.c: + + (clutter_main): Destroy the main stage, instead of unreffing it. + + (clutter_init): Ref and sink the main stage, as it is a top + level actor. + + * clutter/clutter-stage.c (clutter_stage_unrealize): Access + the Window private member directly, instead of calling the + get_xwindow method. + + * examples/test.c (main): Quit on button press. + +2006-07-09 Emmanuele Bassi + + * clutter/clutter-event.h: Change the name of the + ClutterEvent union members to something a little shorter. + +2006-07-06 Emmanuele Bassi + + * configure.ac: Remove the python stuff, now that the bindings + are out of tree. + +2006-07-06 Emmanuele Bassi + + * configure.ac: Mark this as 0.1.1, and change the version info + of the library. + + * clutter/clutter-actor.c: + * clutter/clutter-group.c: Fix documentation. + +2006-07-06 Emmanuele Bassi + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: + + (clutter_actor_class_init), (clutter_actor_set_property), + (clutter_actor_get_property): Add the "clip" and "has-clip" + properties. + + (clutter_actor_set_clip), (clutter_actor_remove_clip): Emit + the notification for the changed properties. + + (clutter_actor_has_clip): Simple accessor to the "has-clip" + property. + +2006-07-06 Emmanuele Bassi + + Big rework of the actor management semantics: now ClutterActor + objects behave like GtkObjects - that is they have an initial + "floating" reference that gets "sunk" when they are added to + a ClutterGroup. This makes a group responsible of de-allocating + each actor inside it, so you just have to destroy the group to + get every child actor destroyed. Also, now you can do: + + clutter_group_add (group, clutter_video_texture_new ()); + + without having to care about reference counting and explicit + unreffing. + + * clutter/clutter-private.h: Add private flags setter and + getter macros. + + * clutter/clutter-actor.h: + * clutter/clutter-actor.c: Clean up; inherit from GInitiallyUnowned; + add a "visible" property; add the "destroy", "show" and "hide" + signals to ClutterActorClass. + + (clutter_actor_show), (clutter_actor_hide): Refactor a bit; emit + the "show" and "hide" signals. + + (clutter_actor_set_property), (clutter_actor_get_property), + (clutter_actor_class_init): Implement the "visible" property; add + signals. + + (clutter_actor_finalize): Do not leak the actor's name, if it is + set. + + (clutter_actor_dispose): Emit the "destroy" signal here. + + (clutter_actor_init): Sink the initial floating flag if needed. + + (clutter_actor_destroy): Add a function to explicitely destroy + a ClutterActor. + + (clutter_actor_set_parent), (clutter_actor_get_parent), + (clutter_actor_unparent): Make set_parent require a valid parent; + add unparent; check on get_parent; ref_sink the actor when + setting its parent and unref it when unsetting it. Probably we'll + need a function that does reparenting as unparent+set_parent in + a single shot. + + * clutter/clutter-group.h: + * clutter/clutter-group.c (clutter_group_dispose), + (clutter_group_finalize), (clutter_group_add), + (clutter_group_remove): Make the group destroy its children when + disposing it; clean up, and use the newly-available + clutter_actor_unparent(). + + * clutter/clutter-stage.h: + * clutter/clutter-stage.c (clutter_stage_init): ClutterStage is + a top-level actor; clean up. + + * clutter/clutter-video-texture.h: + * clutter/clutter-video-texture.c: Clean up. + + * examples/super-oh.c: + * examples/test.c: + * examples/video-player.c: + * examples/test-text.c: + * examples/video-cube.c: Remove the g_object_unref() call, as the + ClutterStage object is destroyed on clutter_main_quit(). + +2006-06-23 Matthew Allum + + * examples/super-oh.c: + Remove random stage unref fixing trails. Fixes #98 + +2006-06-23 Matthew Allum + + * examples/video-player.c: (size_change): + cast stage height to gint avoiding wierdness for when + video height greater than half display height. Fixed #99 + +2006-06-23 Matthew Allum + + * clutter/clutter-video-texture.c: (clutter_video_texture_new): + Small fix for video playback on Big Endian. See #97 + +2006-06-23 Iain Holmes + + * clutter/clutter-texture.h: Add space :) Sorry. + +2006-06-23 Iain Holmes + + * clutter/clutter-label.h: + * clutter/clutter-group.h: + * clutter/clutter-rectangle.h: + * clutter/clutter-video-texture.h: + * clutter/clutter-event.h: + * clutter/clutter-texture.h: Fix the header layout so that C# parser + can understand everything. + +2006-06-23 Ross Burton + + * configure.ac: + * Makefile.am: + Remove references to bindings/, it's moved. + +2006-06-23 Emmanuele Bassi + + * clutter/clutter-group.c + (clutter_group_get_children): Mention that you must free + the returned list otherwise you'll leak stuff all around. + +2006-06-23 Ross Burton + + * examples/super-oh.c: + Fix build with trails enabled. Still crashes. + +2006-06-23 Ross Burton + + * configure.ac: + Disable static libraries. + +2006-06-22 Matthew Allum + + * web/index.html: + Make OpeneHand link + +2006-06-22 Matthew Allum + + * web/index.html: + Add Pango ref, authors info. + +========== 2006-06-22 0.1 Release ===================== + +2006-06-22 Matthew Allum + + * configure.ac: + * web/index.html: + Correct Bugzilla link. Add debs link + Bump up version to 0.1 ! + +2006-06-22 Matthew Allum + + * NEWS: + Add an entry for 0.1 release + * web/index.html: + * web/style.css: + Add basic website. + +2006-06-22 Iain Holmes + + * clutter/clutter-main.c: Guess what...more docs + +2006-06-22 Iain Holmes + + * clutter/clutter-event.c: Add docs + +2006-06-22 Iain Holmes + + * clutter/clutter-media.c: Add docs + +2006-06-22 Iain Holmes + + * clutter/clutter-texture.c: Fix typos. + + * clutter/clutter-timeline.c: Fix typos. + +2006-06-22 Iain Holmes + + * clutter/clutter-video-texture.c: Docs. + +2006-06-22 Iain Holmes + + * clutter/clutter-group.c: More typo fixes + + * clutter/clutter-event.c: Documentation + +2006-06-22 Emmanuele Bassi + + * clutter/clutter-timeline.h: + * clutter/clutter-timeline.c: Add a "started" and a "paused" + signals; add more sanity checks on the public functions. + + (clutter_timeline_get_loop): Add a getter function for the + loop property. + + * clutter/clutter-marshal.list: Add marshallers. + + * clutter/clutter-timeline.h: + * clutter/clutter-actor.h: Add padding for future expansion + without breaking ABI. + +2006-06-22 Iain Holmes + + * clutter/clutter-actor.c: Fix some typos in the docs. + +2006-06-22 Iain Holmes + + * clutter/clutter-util.c: And more + +2006-06-22 Ross Burton + + * clutter/clutter-label.c: + * clutter/clutter-video-texture.c: + * clutter/clutter-texture.c: + * clutter/clutter-timeline.c: + * clutter/clutter-group.c: + Fix gtk-doc problems. + +2006-06-22 Iain Holmes + + * clutter/clutter-main.c: More documentation + +2006-06-22 Matthew Allum + + * clutter/clutter-main.h: + Remove bogus xvisual call. + +2006-06-22 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + Remove mirroring related calls ( unimplemented ) + * gtk/gtk-clutter-test.c: 0 -> NULL + +2006-06-22 Iain Holmes + + * clutter/clutter-actor.c: + * clutter/clutter-stage.c: + * gtk/gtk-clutter.c: More docs + +2006-06-22 Iain Holmes + + * clutter/clutter-actor.c: Added some more docs. + +2006-06-22 Matthew Allum + + * clutter/clutter-actor.c: + * clutter/clutter-clone-texture.c: + * clutter/clutter-color.c: + * clutter/clutter-event.c: + * clutter/clutter-group.c: + * clutter/clutter-label.c: + * clutter/clutter-main.c: + * clutter/clutter-media.c: + * clutter/clutter-rectangle.c: + * clutter/clutter-stage.c: + * clutter/clutter-texture.c: + * clutter/clutter-timeline.c: + * clutter/clutter-util.c: + * clutter/clutter-video-texture.c: + * configure.ac: + Documentation updates - add section headers. + +2006-06-22 Iain Holmes + + * gtk/gtk-clutter-test.c (main): Don't show the stage. + +2006-06-22 Iain Holmes + + * gtk/gtk-clutter.[ch]: Rewrite to use + clutter_stage_set_xwindow_foreign rather than GtkSocket. + + * gtk/gtk-clutter-test.c: Add fading!1!!!!11! OMGWTFBBQ!!! + +2006-06-21 Emmanuele Bassi + + * examples/video-cube.c (main): Quit on key press. + +2006-06-21 Emmanuele Bassi + + * clutter/Makefile.am: Re-fix distcheck after last commit. + +2006-06-21 Matthew Allum + + * clutter/Makefile.am: + Make sure clutter.h included. + * clutter/clutter-stage.c: (clutter_stage_realize), + (clutter_stage_get_actor_at_pos): + Select for motion events on X window. + Return highest rather than lowest found actor for actor_at_pos. + * examples/Makefile.am: + Remove test-text, remane test video. + * examples/README: + Add info about the included examples. + * examples/test-video.c: + * examples/video-player.c: + Redo test-video a little nicer and rename. + * examples/video-cube.c: + Fix so it at least 'works' again. + * examples/test.c: + Clean up a little. + +2006-06-21 Ross Burton + + * Makefile.am: + * gtk/Makefile.am: + Add gtk widget to distcheck and fix. + +2006-06-21 Emmanuele Bassi + + * clutter/Makefile.am: + * bindings/python/Makefile.am: + * Makefile.am: Fix distcheck + +2006-06-21 Ross Burton + + * clutter/Makefile.am: + * examples/Makefile.am: + Fix dist. + +2006-06-20 Matthew Allum + + * TODO: + Update. + * clutter/clutter-group.c: + Attempt better group sizing code. + * clutter/clutter-label.c: + Minor tweaks. + * clutter/clutter-texture.c: + More debug info, make sure texture is realised for base_size() + * clutter/clutter-video-texture.c: + Seeking fixes + * examples/test.c: (main): + Populate with more randomness. + +2006-06-15 Matthew Allum + + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + Add clutter_stage_set_xwindow_foreign() call + * clutter/clutter-util.c: + * clutter/clutter-util.h: + Add some X error traps + * examples/super-oh.c: + Toy with us of new clutter_stage_set_xwindow_foreign() for + optional screensaver functionality. + +2006-06-14 Matthew Allum + + * configure.ac: + Add checks for GL/gl.h and GL/glx.h + +2006-06-14 Matthew Allum + + * AUTHORS: + * README: + * TODO: + Update all. + +2006-06-13 Matthew Allum + + * clutter/clutter-video-texture.c: + Add missing license. + +2006-06-13 Matthew Allum + + * clutter/Makefile.am: + * clutter/clutter-actor.c: + * clutter/clutter-actor.h: + * clutter/clutter-clone-texture.c: + * clutter/clutter-clone-texture.h: + * clutter/clutter-element.c: + * clutter/clutter-element.h: + * clutter/clutter-group.c: + * clutter/clutter-group.h: + * clutter/clutter-label.c: + * clutter/clutter-label.h: + * clutter/clutter-main.c: + * clutter/clutter-main.h: + * clutter/clutter-rectangle.c: + * clutter/clutter-rectangle.h: + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + * clutter/clutter-texture.c: + * clutter/clutter-texture.h: + * clutter/clutter-video-texture.c: + * clutter/clutter-video-texture.h: + * clutter/clutter.h: + * examples/super-oh.c: + * examples/test-text.c: + * examples/test-video.c: + * examples/test.c: + * examples/video-cube.c: + * gtk/gtk-clutter-test.c: + * gtk/gtk-clutter.c: + * gtk/gtk-clutter.h: + Element to Actor Renaming. + +2006-06-12 Matthew Allum + + * clutter/Makefile.am: + * clutter/clutter-media.c: + * clutter/clutter-media.h: + * clutter/clutter-video-texture.c: + * clutter/clutter-video-texture.h: + * clutter/clutter.h: + * examples/test-video.c: (main): + * examples/video-cube.c: (main): + Add new 'media' interface. + Drop Totem based video playback code replace with newly + rewritten supper Jorn based code. Clutter is now fully LGPL. + + * clutter/clutter-texture.c: (tile_dimension): + Remove uneeded overlap code. + +2006-06-08 Iain Holmes + + * clutter/clutter-texture.c: + Opps, undo change I didn't mean to commit + +2006-06-08 Iain Holmes + + * configure.ac: + Add gdk-pixbuf-xlib cflags/libs to clutter libs + Build the gtk-clutter.pc file. + + * clutter.pc.in: + Add the gdk-pixbuf-xlib depends. + + * gtk/gtk-clutter.pc.in: + pkg-config stuff for gtk-clutter + + * gtk/Makefile.am: + Install gtk-clutter.pc + +2006-06-08 Matthew Allum + + * clutter/clutter-main.c: + * clutter/clutter-private.h: + * clutter/clutter-stage.c: + Rework and fix offscreen rendering, also rejig GLX + context handling, moving mostly into stage. + Require at least OpenGL 1.2 ( CLAMP_TO_EDGE ) + + * clutter/clutter-texture.c: + Explicity set props on _init() as to avoid nasty can_create + bug failing miserably in certain situations. + Switch to CLAMP_TO_EDGE for textures to avoid tile seams. + Add some more GL error checks. + + * clutter/clutter-label.c: + Extra debug info + + * configure.ac: + Require gdk-pixbuf-xlib-2.0 + +2006-06-06 Matthew Allum + + * configure.ac: + Use pkg-config to check for X. Really Check for GL libs. + Make gtk binding optional. Cleanup a little. + + * Makefile.am: + * gtk/Makefile.am: + Make gtk binding optional + + * clutter/clutter-element.c: + Cleanup a little, notify on size change. + + * clutter/clutter-texture.c: + Lots of cleanups. Add waste prop. Add filter quality prop. + + * clutter/clutter-clone-texture.c: + Make object construction simpler to work better with bindings. + + * clutter/clutter-stage.c: + * clutter/clutter-timeline.c: + Minor reformating, cleanups. + + * examples/test-text.c: (main): + Random experimentation + +2006-06-06 Iain Holmes + + * gtk/gtk-clutter.c (size_request): Take the size of the widget from + the ClutterStage. + (gtk_clutter_class_init): Hook up size-request + +2006-06-06 Iain Holmes + + * gtk/: Add a gtk widget for clutter. + + * configure.ac: Add GTK checks + + * Makefile.am: Go into gtk/ + +2006-06-05 Matthew Allum + + * clutter/clutter-group.c: (clutter_group_remove): + Fix parent check. + +2006-06-05 Matthew Allum + + * clutter/clutter-event.h: + Remove send_event field. Clutter shouldn't need it. + + * clutter/clutter-main.c: (clutter_dispatch_x_event): + Dont malloc a new clutter event for each xevent. + + * clutter/clutter-stage.h: + * clutter/clutter-stage.c: (clutter_stage_class_init), + (clutter_stage_get_default): + Dont ref stage from clutter_stage_get_default. + + * examples/super-oh.c: (main): + Remove some now uneeded debug g_prints + +2006-06-05 Emmanuele Bassi + + * clutter-color.h: + * clutter-color.c: Reimplement ClutterColor as a boxed type; + add convenience API for color handling, like: add, subtract, + shade, HSL color-space conversion, packing and unpacking. + + * clutter-private.h: Update ClutterMainContext, and export the + main context pointer here. + + * clutter-rectangle.h: + * clutter-rectangle.c: Update the color-related code; make + clutter_rectangle_new() and empty constructor and provide + clutter_rectangle_new_with_color(); provide color setter + and getter API. + + * clutter-label.h: + * clutter-label.c: Rename the "font" property to "font-name"; + update the color-related code to the new ClutterColor object; + rename clutter_label_new() to clutter_label_new_with_text(), + and add setters and getters for the properties. + + * clutter-marshal.list: Add VOID:OBJECT and VOID:BOXED marshallers + generators. + + * clutter-stage.h: + * clutter-stage.c: Rework the API: provide a default constructor + for a singleton object, named clutter_stage_get_default(), which + supercedes the clutter_stage() function in clutter-main; provide + new events: button-press-event, button-release-event, + key-press-event and key-release-event; update the color-related + code; + + (clutter_stage_snapshot): Allow negative width and height when + taking a snapshot (meaning: use full width/height). + + (clutter_stage_get_element_at_pos): Rename clutter_stage_pick(). + + * clutter-element.c (clutter_element_paint): Clean up the + stage and color related code. + + * clutter-event.h: + * clutter-event.c: Add generic ClutterAnyEvent type; add + clutter_event_new(), clutter_event_copy() and clutter_event_free(); + make ClutterEvent a boxed type. + + * clutter-main.h: + * clutter-main.c: Remove clutter_stage(); add clutter_main_quit(), + for cleanly quitting from clutter_main(); add multiple mainloops + support; allocate the ClutterCntx instead of adding it to the + stack; re-work the ClutterEvent dispatching. + + * clutter-group.c (clutter_group_add), (clutter_group_remove): Keep + a reference on the element when added to a ClutterGroup. + + * examples/rects.py + * examples/test.c: + * examples/test-text.c: + * examples/video-cube.c: + * examples/super-oh.c: + * examples/test-video.c: Update. + +2006-06-04 Matthew Allum + + * clutter/clutter-element.c: + * clutter/clutter-group.c: + * clutter/clutter-group.h: + Work more on depth ( Z ) setting with sorting. + + * clutter/clutter-main.c: (clutter_redraw): + Experiment with glXWaitVideoSyncSGI. Currently disabled. + +2006-06-02 Matthew Allum + + * clutter/clutter-element.h: + Add missing _depth() declarations + + * clutter/clutter-main.c: + * clutter/clutter-main.h: + * clutter/clutter-private.h: + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + Rejig GL setup as for stage to support an offscreen property. + Offscreen support is however a little borked. + +2006-06-01 Matthew Allum + + * clutter/clutter-element.c: + Fix a snafu in clutter_element_raise () + + * clutter/clutter-timeline.c: + * clutter/clutter-timeline.h: + Add new clutter_timeline_is_playing() method + +2006-05-29 Matthew Allum + + * clutter/clutter-color.c: (clutter_color_set): + Fix bit shifts in clutter color setters. + +2006-05-29 Matthew Allum + + * clutter/clutter-element.c: + * clutter/clutter-element.h: + Add initial new element depth() getter and setter. + + * clutter/clutter-group.c: + * clutter/clutter-group.h: + Add 2 new methods for listing a groups children externally. + +2006-05-27 Emmanuele Bassi + + * clutter/clutter-clone-texture.c (set_parent_texture), + (clutter_clone_texture_set_property), + (clutter_clone_texture_get_property), + (clutter_clone_texture_class_init), + (clutter_clone_texture_new): Add a "parent-texture" + constructor-only property to simplify the constructor code. + + * clutter/clutter-rectangle.c (clutter_rectangle_new): + * clutter/clutter-timeline.c (clutter_timeline_new): Simplify + the constructor code. + + * examples/rect.py: Use the new method names for clutter.main() + and clutter.stage(). + +2006-05-26 Emmanuele Bassi + + * clutter/clutter-element.c: Fix gtk-doc annotations for public + functions; add sanity checks for public API; factor out some + pointer dereferences. + +2006-05-26 Emmanuele Bassi + + Big entry, small changes. + + * clutter/clutter-rectangle.c: + * clutter/clutter-clone-texture.c: + * clutter/clutter-group.c: + * clutter/clutter-element.c: + * clutter/clutter-label.c: Use the GObject built-in definition + of a private data structure; it removes the need for managing + the allocation/de-allocation of a private structure ourselves. + + * clutter/clutter-group.h: + * clutter/clutter-label.h: Add padding, for adding signals and + other class-wide definitions without breaking ABI. + + * clutter/clutter-element.h: + * clutter/clutter-element.c (clutter_element_box_get_type), + (clutter_element_box_copy): Make ClutterElementBox a GBoxed + type; clean up declarations of the enums and flags. + + * clutter/clutter-group.h: + * clutter/clutter-group.c (clutter_group_add_many_valist), + (clutter_group_add_many): Add a _valist version of + clutter_group_add_many() function, and re-implement the latter + as a proxy for the former; language bindings do not cope + well with variable argument functions. + + * clutter/clutter-video-texture.h: + * clutter/clutter-video-texture.c: Use the right prefix for + the error and for the ratio enumerations. + + * clutter/*.c: + * clutter/*.h: + * clutter/Makefile.am: Use the include path + for parallel installations. + + * clutter/Makefile.am: + * clutter/clutter-enum-types.h: + * clutter/clutter-enum-types.c: Register the enumeration types + inside the GObject type system in order to use them as properties + and bindings automagically pick them up. + + * bindings/python/ChangeLog: Add a changelog for the bindings... + + * doc/reference/ChangeLog: ... and a changelog for the reference. + + * examples/test.c: + * examples/video-cube.c: + * examples/test-video.c: Use the header. + +2006-05-25 Matthew Allum + + * clutter/clutter-clone-texture.c: + (clone_texture_render_to_gl_quad): + Remove uneeded bogus warning. Fix a typo causing large + texture to get incorrectly rendered. + * clutter/clutter-texture.c: (init_tiles), + (texture_render_to_gl_quad), (clutter_texture_sync_pixbuf), + (clutter_texture_realize): + Add some new debug info. + * clutter/clutter-video-texture.c: (fakesink_handoff_cb): + Set the pixbuf from GST_BUFFER_DATA() a little safer. + +2006-05-25 Matthew Allum + + * clutter.pc.in: + Fix prefix snafu via Ross. + +2006-05-24 Matthew Allum + + * clutter/clutter-element.c: (clutter_element_paint), + (clutter_element_class_init): + * clutter/clutter-label.c: (clutter_label_make_pixbuf): + * clutter/clutter-main.c: (clutter_main): + * clutter/clutter-stage.c: (sync_fullscreen), (sync_gl_viewport): + * clutter/clutter-stage.h: + Various minor tweaks / fixes needed by o.p.t + * clutter/clutter-texture.c: (texture_render_to_gl_quad), + (clutter_texture_sync_pixbuf), (clutter_texture_set_property), + (clutter_texture_get_property), (clutter_texture_class_init): + Experiment adding currently borked repreating textures, + * clutter/clutter-timeline.c: (timeline_timeout_func), + (clutter_timeline_skip): + Fix timeline callback frame counting. + * examples/test-video.c: (main): + Experiment with repeated textures. + +2006-05-23 Matthew Allum + + * clutter/clutter-clone-texture.h: + Fix Include. + * clutter/clutter-element.c: (clutter_element_set_parent): + Only unref if parent non NULL + * clutter/clutter-label.c: (clutter_label_class_init), + (clutter_label_set_text), (clutter_label_set_font): + * clutter/clutter-stage.h: + Add some utility defines + * clutter/clutter-texture.c: (init_tiles): + * clutter/clutter-timeline.c: (clutter_timeline_class_init), + (timeline_timeout_func), (clutter_timeline_get_current_frame): + * clutter/clutter-timeline.h: + Add a 'completed' signal + Dont free priv when g_type_class_private used. + * clutter/clutter.h: + Add missing clutter-rectangle.h + * examples/Makefile.am: + * examples/super-oh.c: (main): + * examples/test.c: + * examples/video-cube.c: + Fix includes + +2006-05-22 Matthew Allum + + * clutter/clutter-element.c: + * clutter/clutter-element.h: + * clutter/clutter-event.c: + * clutter/clutter-group.c: (clutter_group_remove_all): + * clutter/clutter-group.h: + * clutter/clutter-main.c: (translate_button_event), + (translate_motion_event): + Improve mouse event handling. + Add code to map arbituary ( i.e cursor ) position to + a clutter element using OpenGL 'picking'. + * clutter/clutter-texture.c: + * clutter/clutter-clone-texture.c: + re-realize parent texture if it gets hidden. + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + Make sure stage sets gl viewport up even if just default size. + (clutter_texture_hide), (clutter_texture_paint): + * doc/reference/Makefile.am: + * examples/super-oh.c: (input_cb), (frame_cb), (main): + Add test for mouse events, click to remove. + +2006-05-21 Matthew Allum + + * clutter/clutter-element.c: + * clutter/clutter-element.h: + Add new core sizing methods and more documentation. + * clutter/clutter-group.c: + * clutter/clutter-group.h: + Use the sizing bits and documentation. + * clutter/clutter-main.c: + * clutter/clutter-event.h: + Add FPS display when CLUTTER_SHOW_FPS env var set. + Add initial support for mouse events. + * clutter/clutter-stage.c: + Add 'snapshot' method. + * clutter/clutter-texture.c: (clutter_texture_new_from_pixbuf): + * clutter/clutter-texture.h: + Documentation. + * clutter/clutter-timeline.c: + Add support for changing FPS setting on the fly. Document. + * examples/super-oh.c: (frame_cb), (main): + Add an optional motion trails effect. + +2006-05-17 Matthew Allum + + * README: + Add a tiny bit of info + * TODO: + Sync up a little + * clutter/clutter-clone-texture.c: + (clone_texture_render_to_gl_quad): + * clutter/clutter-element.c: (clutter_element_show), + (clutter_element_realize), (clutter_element_unrealize), + (clutter_element_paint), (clutter_element_set_id), + (clutter_element_get_id): + * clutter/clutter-element.h: + Rename REALISE() to REALIZE() + + * clutter/clutter-texture.c: (texture_render_to_gl_quad), + (clutter_texture_sync_pixbuf), (clutter_texture_set_pixbuf): + * clutter/clutter-video-texture.c: (query_timeout), + (got_video_size), (caps_set), (parse_stream_info), + (handle_element_message), (bus_message_cb), + (poll_for_state_change_full), (clutter_video_texture_get_property), + (clutter_video_texture_class_init), (clutter_video_texture_init), + (clutter_video_texture_open), (clutter_video_texture_seek_time), + (stop_play_pipeline): + * clutter/clutter-video-texture.h: + Move over using fakesink and handoff instead of custom element + Support 3 channel pixbufs as textures and thus increase efficiency + of video texture ( also avoids byte swapping. ) + Clean up video texture code somemore. + Add some metadata support. + + * Makefile.am: + * configure.ac: + Disable old custom clutter gst element from build. + + * examples/test-video.c: (foo), (size_change), (tick), (main): + * examples/video-cube.c: (clutter_video_texture_cube_paint): + Sink with new API. Pause on key press. + +2006-05-13 Matthew Allum + + * clutter/clutter-element.c: (redraw_update_idle), + (clutter_element_show), (clutter_element_hide), + (clutter_element_realize), (clutter_element_unrealize), + (clutter_element_class_init), (clutter_element_init), + (clutter_element_queue_redraw), (clutter_element_set_geometry), + (clutter_element_get_geometry), (clutter_element_get_coords), + (clutter_element_set_position), (clutter_element_set_size), + (clutter_element_get_abs_position), (clutter_element_get_width), + (clutter_element_get_height), (clutter_element_get_x), + (clutter_element_get_y), (clutter_element_set_opacity): + * clutter/clutter-texture.c: (clutter_texture_get_base_size), + (clutter_texture_bind_tile), (clutter_texture_get_n_tiles), + (clutter_texture_get_x_tile_detail), + (clutter_texture_get_y_tile_detail): + * doc/reference/Makefile.am: + * doc/reference/clutter.types: + Documentation updates. + +2006-05-13 Matthew Allum + + * clutter.pc.in: + Add @MAJORMINOR@ to installed dirs. + * clutter/clutter-main.c: (clutter_xscreen), (clutter_init): + * clutter/clutter-main.h: + * clutter/clutter-private.h: + Quick fix for debug statements so now only appear + if CLUTTER_DBBUG env var set. + +2006-05-12 Matthew Allum + + * configure.ac: + * Makefile.am: + * clutter/Makefile.am: + * bindings/python/Makefile.am: + * examples/Makefile.am: + * gst/Makefile.am: + Clean up autofoo a bit fixing versioning. + * bootstrap-autotools.sh: + * clutter-1.0.pc.in: + Rename. + +2006-05-12 Matthew Allum + + * bindings/python/Makefile.am: + * bindings/python/clutter.override: + * clutter/Makefile.am: + * clutter/clutter-bin.c: + * clutter/clutter-bin.h: + * clutter/clutter-element.c: (clutter_element_dispose), + (clutter_element_raise), (clutter_element_lower): + * clutter/clutter-group.c: + * clutter/clutter-group.h: + * clutter/clutter-main.c: (clutter_threads_leave): + * clutter/clutter-main.h: + * clutter/clutter-stage.c: (clutter_stage_class_init): + * clutter/clutter-stage.h: + * clutter/clutter.h: + * examples/super-oh.c: (frame_cb), (main): + * examples/test-text.c: (main): + * examples/test-video.c: (main): + * examples/test.c: (main): + * examples/video-cube.c: (main): + Rename clutter-bin to clutter-group + +2006-05-11 Matthew Allum + + * clutter/clutter-clone-texture.c: + (clone_texture_render_to_gl_quad), (clutter_clone_texture_paint), + (clutter_clone_texture_class_init), (clutter_clone_texture_new): + Fix cloning. + * clutter/clutter-element.c: (clutter_element_rotate_z), + (clutter_element_rotate_x), (clutter_element_rotate_y): + Minor tweaks + * examples/Makefile.am: + * examples/super-oh.c: + Add a new demo - unsing rotations and clones. + +2006-05-11 Matthew Allum + + * bindings/python/Makefile.am: + * bindings/python/clutter-base-types.defs: + * bindings/python/clutter-base.defs: + * bindings/python/clutter.override: + Python goodiness from ebassi. + - Element geometry handled nicely. + - get_coords(), get_abs_position() added. + + * clutter/clutter-element.c: (clutter_element_rotate_x), + (clutter_element_rotate_y), (clutter_element_mirror), + * clutter/clutter-element.h: + Add initial rotation API. Make Geometry boxed ( ebassi ) + + * clutter/clutter-stage.c: (sync_gl_viewport): + Set depth in main world transform. + + * clutter/clutter-timeline.h: + Add missing new() api call. + + * examples/test.c: (timeout_text_cb), (frame_cb), (main): + Tou with some rotation + +2006-05-11 Matthew Allum + + reviewed by: + + * bindings/python/Makefile.am: + * bindings/python/clutter-base-types.defs: + * bindings/python/clutter-base.defs: + * bindings/python/clutter.override: + * clutter/clutter-bin.c: (clutter_bin_paint): + * clutter/clutter-element.c: (clutter_element_paint), + (clutter_element_get_height), (clutter_element_get_x), + (clutter_element_get_y), (clutter_element_set_opacity), + (clutter_element_get_opacity), (clutter_element_set_id), + (clutter_element_get_id), (clutter_element_rotate_x), + (clutter_element_rotate_y), (clutter_element_mirror), + (clutter_element_set_clip), (clutter_element_remove_clip), + (clutter_element_set_parent), (clutter_element_get_parent), + (clutter_element_raise), (clutter_element_lower), + (clutter_element_raise_top), (clutter_element_lower_bottom): + * clutter/clutter-element.h: + * clutter/clutter-main.c: (clutter_redraw): + * clutter/clutter-stage.c: (sync_gl_viewport): + * clutter/clutter-timeline.h: + * examples/test.c: (timeout_text_cb), (frame_cb), (main): + +2006-05-09 Matthew Allum + + * COPYING: + * clutter/clutter-bin.c: + * clutter/clutter-bin.h: + * clutter/clutter-clone-texture.c: + * clutter/clutter-clone-texture.h: + * clutter/clutter-color.c: + * clutter/clutter-color.h: + * clutter/clutter-element.c: + * clutter/clutter-element.h: + * clutter/clutter-event.c: + * clutter/clutter-event.h: + * clutter/clutter-keysyms.h: + * clutter/clutter-label.c: + * clutter/clutter-label.h: + * clutter/clutter-main.c: + * clutter/clutter-main.h: + * clutter/clutter-private.h: + * clutter/clutter-rectangle.c: + * clutter/clutter-rectangle.h: + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + * clutter/clutter-texture.c: + * clutter/clutter-texture.h: + * clutter/clutter-timeline.c: + * clutter/clutter-timeline.h: + * clutter/clutter-util.c: + * clutter/clutter-util.h: + Add license info. + +2006-05-08 Matthew Allum + + * clutter/Makefile.am: + * clutter/clutter-event.c: + * clutter/clutter-event.h: + * clutter/clutter-keysyms.h: + * clutter/clutter-main.c: (clutter_dispatch_x_event): + * clutter/clutter-stage.c: (clutter_stage_class_init): + * clutter/clutter-stage.h: + * clutter/clutter.h: + * bindings/python/Makefile.am: + * bindings/python/clutter.override: + Add basic input event handling. Keys only atm. + +2006-05-08 Matthew Allum + + * TODO: + Sync a little. + * bindings/python/Makefile.am: + * bindings/python/clutter.override: + Fix up so pixbufs now work ( thanks ebassi! ) + Add some missing newer headers. + * clutter/clutter-main.h: + Remove unused clutter_queue_redraw(); + +2006-05-07 Matthew Allum + + * clutter/clutter-element.c: (clutter_element_class_init), + (clutter_element_init), (clutter_element_queue_redraw), + (clutter_element_set_geometry), (clutter_element_get_geometry), + (clutter_element_get_coords), (clutter_element_set_position), + (clutter_element_set_size), (clutter_element_get_abs_position), + (clutter_element_get_width), (clutter_element_get_height), + (clutter_element_get_x), (clutter_element_get_y), + (clutter_element_set_opacity): + * clutter/clutter-main.c: (clutter_dispatch_x_event): + * clutter/clutter-main.h: + * clutter/clutter-private.h: + * clutter/clutter-stage.c: (clutter_stage_set_color): + * clutter/clutter-texture.c: (clutter_texture_set_pixbuf): + Rename clutter_queue_redraw -> clutter_element_queue_redraw + + * clutter/clutter-label.c: (clutter_label_make_pixbuf), + (clutter_label_set_property), (clutter_label_set_text_extents): + * clutter/clutter-label.h: + Fixes to extents + + * examples/Makefile.am: + * examples/test-text.c: + Add sime test text example. + +2006-05-07 Matthew Allum + + * clutter/clutter-label.c: (clutter_label_make_pixbuf), + (clutter_label_get_property), (clutter_label_dispose), + (clutter_label_class_init), (clutter_label_init), + (clutter_label_new_with_text), (clutter_label_new), + (clutter_label_set_text), (clutter_label_set_font), + (clutter_label_set_text_extents), (clutter_label_set_fg_color): + * examples/test.c: (main): + Slight efficiency improvements. Add initial extents API. + +2006-05-07 Matthew Allum + + * TODO: + resync. + * clutter/Makefile.am: + * clutter/clutter-clone-texture.c: + * clutter/clutter-clone-texture.h: + Add new texture clone element. + * clutter/clutter-color.c: + * clutter/clutter-color.h: + Add simple color API. + * clutter/clutter-util.c: + * clutter/clutter-util.h: + Move shared texture funcs into shared util code. + * clutter/clutter-texture.c: (can_create), (tile_dimension), + (init_tiles), (texture_render_to_gl_quad), + (clutter_texture_unrealize), (clutter_texture_sync_pixbuf), + (clutter_texture_realize), (clutter_texture_show), + (clutter_texture_hide), (clutter_texture_paint), + (clutter_texture_finalize), (clutter_texture_set_property), + (clutter_texture_get_property), (clutter_texture_class_init), + (clutter_texture_init), (clutter_texture_set_pixbuf), + (clutter_texture_new_from_pixbuf), (clutter_texture_get_base_size), + (clutter_texture_bind_tile): + Changes for clones to work. + * clutter/clutter-element.c: (clutter_element_paint), + (clutter_element_set_property), (clutter_element_get_property), + (clutter_element_set_position), (clutter_element_set_size), + (clutter_element_get_abs_position), (clutter_element_get_width), + (clutter_element_get_height), (clutter_element_get_x), + (clutter_element_get_y), (clutter_element_set_opacity), + (clutter_element_get_opacity), (clutter_element_set_id), + (clutter_element_get_id), (clutter_element_set_clip): + * clutter/clutter-element.h: + Add clipping and other tweaks. + * clutter/clutter-stage.c: (sync_gl_viewport), + (clutter_stage_paint), (clutter_stage_init): + Add psuedo 3D desktop like GL setup. + * clutter/clutter-label.c: (clutter_label_make_pixbuf): + * clutter/clutter-label.h: + * clutter/clutter-main.c: (clutter_redraw): + * clutter/clutter-main.h: + * clutter/clutter-private.h: + * clutter/clutter-rectangle.c: (clutter_rectangle_paint): + * clutter/clutter-stage.h: + * clutter/clutter-texture.h: + * clutter/clutter-timeline.c: (clutter_timeline_class_init): + * clutter/clutter-video-texture.c: + * clutter/clutter.h: + * examples/test-video.c: (foo), (size_change), (tick), (main): + * examples/test.c: (main): + * examples/video-cube.c: (clutter_video_texture_cube_paint), + (clutter_video_texture_cube_class_init), + (clutter_video_texture_cube_init): + Various minor tweaks for API changes, new features etc. + +2006-05-03 Matthew Allum + + * clutter/clutter-bin.c: (clutter_bin_paint): + * clutter/clutter-bin.h: + * clutter/clutter-element.c: (clutter_element_unrealize), + (clutter_element_paint), (clutter_element_set_property), + (clutter_element_get_property), (clutter_element_dispose), + (clutter_element_finalize), (clutter_element_class_init), + (clutter_element_init), (clutter_element_queue_redraw), + (clutter_element_set_geometry), (clutter_element_get_geometry), + (clutter_element_get_coords), (clutter_element_set_position), + (clutter_element_set_size), (clutter_element_get_abs_position), + (clutter_element_set_opacity), (clutter_element_get_opacity), + (clutter_element_set_clip), (clutter_element_remove_clip), + (clutter_element_set_parent), (clutter_element_get_parent), + (clutter_element_raise), (clutter_element_lower), + (clutter_element_raise_top), (clutter_element_lower_bottom): + * clutter/clutter-element.h: + * clutter/clutter-label.c: (clutter_label_set_fg_color): + * clutter/clutter-rectangle.c: (clutter_rectangle_paint), + (clutter_rectangle_set_property), (clutter_rectangle_init): + * clutter/clutter-stage.c: (sync_xwindow_size): + * clutter/clutter-texture.c: (clutter_texture_paint), + (clutter_texture_set_pixbuf): + Clean up ClutterElement, removing globals, improving sizing + and initial clipping code. + + * clutter/clutter.h: + * clutter/clutter-timeline.c: (clutter_timeline_class_init), + (timeline_timeout_func), (clutter_timeline_start), + (clutter_timeline_pause), (clutter_timeline_rewind), + (clutter_timeline_skip), (clutter_timeline_advance), + (clutter_timeline_get_current_frame), (clutter_timeline_new): + * clutter/clutter-timeline.h: + Various fixes to timelines. Implement frame skipping. + + * examples/test.c: (timeout_text_cb), (main): + Update to use timeline. + +2006-05-02 Matthew Allum + + * TODO: + Update + * clutter/clutter-element.h: + * clutter/clutter-rectangle.h: + Minor formatting cleanups + +2006-05-02 Matthew Allum + + * clutter/Makefile.am: + * clutter/clutter-timeline.c: + * clutter/clutter-timeline.h: + Add initial timeline implementation + +2006-05-02 Matthew Allum + + * bindings/python/Makefile.am: + * bindings/python/cluttermodule.c: (initclutter): + Fix python build with new -1.0 naming. Use of GdkPixbufs + still causing crashes. + +2006-04-30 Matthew Allum + + * clutter/clutter-main.c: (events_init), (redraw_update_idle), + (clutter_queue_redraw), (clutter_redraw): + Fix repaint queueing, using idle handler now. + Clean up some minor compiler warnings. + * clutter/clutter-main.h: + * clutter/clutter-texture.c: (clutter_texture_unrealize), + (clutter_texture_set_pixbuf): + Rename gl_lock/unlock to threads_enter/leaver + +2006-04-30 Matthew Allum + + * Makefile.am: + * clutter-1.0.pc.in: + * clutter/Makefile.am: + * clutter/clutter-bin.h: + * clutter/clutter-label.h: + * clutter/clutter-rectangle.h: + * clutter/clutter-stage.h: + * clutter/clutter-texture.h: + * clutter/clutter-video-texture.h: + * clutter/clutter.h: + * configure.ac: + * examples/Makefile.am: + Add .pc file, tag -1.0 onto lib, includes dir naming. + +2006-04-29 Matthew Allum + + * clutter/clutter-main.c: (clutter_dispatch_x_event), + (clutter_queue_redraw), (clutter_redraw): + Simplify paint event queueing. Does not actually queue + anymore (broken), needs wrong to reduce high number of + uneeded paints. + + * clutter/clutter-texture.c: (clutter_texture_set_pixbuf): + Remove visible check which broke paints of resized texture pixmaps. + +2006-04-19 Matthew Allum + + * clutter/clutter-bin.c: (clutter_bin_paint), (clutter_bin_add): + * clutter/clutter-element.c: (clutter_element_paint): + * clutter/clutter-element.h: + * clutter/clutter-label.c: (clutter_label_set_property), + (clutter_label_get_property), (clutter_label_class_init): + * clutter/clutter-marshal.list: + * clutter/clutter-rectangle.c: (clutter_rectangle_set_property), + (clutter_rectangle_get_property), (clutter_rectangle_class_init): + * clutter/clutter-stage.c: (clutter_stage_dispose), + (clutter_stage_get_property), (clutter_stage_class_init): + * clutter/clutter-texture.c: (clutter_texture_realize), + (clutter_texture_class_init), (clutter_texture_set_pixbuf): + * clutter/clutter-texture.h: + More object cleanups. Add signal to texture size changes. + Fix color props. Adjust element realise flags workings ( broken ). + * examples/test-video.c: (main): + Broken due to realize flag changes. + +2006-04-18 Matthew Allum + + * clutter/clutter-bin.c: (clutter_bin_get_property), + (clutter_bin_finalize), (clutter_bin_class_init), + (clutter_bin_new), (clutter_bin_show_all), (clutter_bin_hide_all), + (clutter_bin_add): + * clutter/clutter-bin.h: + * clutter/clutter-element.c: (clutter_element_get_property), + (clutter_element_finalize), (clutter_element_class_init), + (clutter_element_set_parent), (clutter_element_get_parent), + (clutter_element_raise), (clutter_element_lower): + * clutter/clutter-element.h: + * clutter/clutter-label.c: (clutter_label_make_pixbuf), + (clutter_label_get_property), (clutter_label_dispose), + (clutter_label_finalize), (clutter_label_class_init), + (clutter_label_init), (clutter_label_new_with_text), + (clutter_label_new), (clutter_label_set_text), + (clutter_label_set_font), (clutter_label_set_fg_color): + * clutter/clutter-label.h: + * clutter/clutter-rectangle.c: (clutter_rectangle_paint), + (clutter_rectangle_set_property), (clutter_rectangle_get_property), + (clutter_rectangle_finalize), (clutter_rectangle_dispose), + (clutter_rectangle_class_init), (clutter_rectangle_init), + (clutter_rectangle_new): + * clutter/clutter-texture.c: (clutter_texture_paint), + (clutter_texture_dispose), (clutter_texture_finalize), + (clutter_texture_set_property), (clutter_texture_get_property), + (clutter_texture_class_init), (clutter_texture_init), + (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf): + Various GObject usages cleanups, adding properties and + finalize/dispose functions properly. + +2006-04-18 Matthew Allum + + * bindings/python/Makefile.am: + * bindings/python/clutter.override: + * bindings/python/cluttermodule.c: (initclutter): + * clutter/clutter-label.h: + * clutter/clutter-rectangle.h: + * clutter/clutter-video-texture.h: + More fixups to now less broken python bindings + * examples/rects.py: + A simple python script using bindings + +2006-04-18 Matthew Allum + + * clutter/clutter-marshal.list: + Add missing. + +2006-04-17 Matthew Allum + + * Makefile.am: + * bindings/Makefile.am: + * bindings/python/Makefile.am: + * bindings/python/clutter.override: + * bindings/python/cluttermodule.c: + * configure.ac: + First shot at some python bindings ( broken atm ) + * clutter/clutter-bin.h: + * clutter/clutter-element.h: + * clutter/clutter-stage.h: + * clutter/clutter-texture.h: + * clutter/clutter.h: + Rejig headers a little so h2def.py happier + +2006-04-17 Matthew Allum + + * TODO: + * doc/clutter.types: + * doc/reference/Makefile.am: + Move gtk-doc gubbins to doc/reference + +2006-04-16 Matthew Allum + + * TODO: + More updates + + * clutter/clutter-bin.c: (clutter_bin_paint): + Add translate call + + * clutter/clutter-texture.c: (clutter_texture_dispose), + (clutter_texture_class_init), (clutter_texture_set_pixbuf): + Fixup object finalization a little. + + * bootstrap-autotools.sh: + * configure.ac: + * doc/Makefile.am: + * doc/clutter.types: + Add gtk-doc infrastructure + +2006-04-15 Matthew Allum + + * TODO: + More ideas. + + * clutter/Makefile.am: + * clutter/clutter-rectangle.c: (clutter_rectangle_new): + Sync passed color alpha chan to element opacity, + + * clutter/clutter-video-texture.c: + (clutter_video_texture_error_quark), (signal_eos_delayed), + (query_timeout), (got_video_size), (caps_set), (parse_stream_info), + (handle_element_message) + * clutter/clutter-video-texture.h: + Port more of bacon video widget API. + + * examples/test-video.c: (foo), (tick), (main): + Add a simple overlay displaying playback time. + +2006-04-15 Matthew Allum + + * clutter/clutter-element.c: + * clutter/clutter-label.c: (clutter_label_init), + (clutter_label_new_with_text): + * clutter/clutter-label.h: + * clutter/clutter-main.c: (clutter_redraw), (clutter_gl_unlock): + * clutter/clutter-main.h: + * clutter/clutter-rectangle.c: (clutter_rectangle_init), + (clutter_rectangle_new): + * clutter/clutter-rectangle.h: + * clutter/clutter-texture.c: (clutter_texture_class_init), + (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf): + * clutter/clutter-texture.h: + * clutter/clutter-video-texture.c: (clutter_video_texture_init): + * clutter/clutter-video-texture.h: + * examples/test-video.c: (main): + * examples/test.c: (main): + * examples/video-cube.c: (clutter_video_texture_cube_init), (main): + Make xxx_new() return there type as ClutterElement* + +2006-04-15 Matthew Allum + + * TODO: + Update + * clutter/clutter-main.c: + * clutter/clutter-stage.c: + * clutter/clutter-texture.c: + * clutter/clutter-texture.h: + * gst/clutterimagesink.c: (gst_clutterimagesink_clutterimage_put), + (gst_clutterimagesink_context_get): + Various experiments with textures and 3D views. + + * clutter/clutter-video-texture.c: + (clutter_video_texture_class_init), (clutter_video_texture_init): + * examples/Makefile.am: + * examples/test-video.c: (main): + * examples/video-cube.c: + Add video-cube example + +2006-04-13 Matthew Allum + + * TODO: + Update + + * clutter/clutter-bin.c: + * clutter/clutter-bin.h: + New container element + + * clutter/clutter-stage.c: + * clutter/clutter-stage.h: + Make stage a proper element + + * clutter/Makefile.am: + * clutter/clutter.h: + * clutter/clutter-element.c: (clutter_element_show), + (clutter_element_set_opacity): + * clutter/clutter-element.h: + * clutter/clutter-label.c: (clutter_label_make_pixbuf), + (clutter_label_set_text), (clutter_label_set_font): + * clutter/clutter-private.h: + Various tweaks new api calls. + + * clutter/clutter-main.c: (events_init): + * clutter/clutter-main.h: + Make ClutterContex Private to main + + * clutter/clutter-texture.c: + * clutter/clutter-texture.h: + * clutter/clutter-video-texture.c: + (clutter_video_texture_finalize): + Fix video crash + + * examples/test-video.c: (main): + * examples/test.c: (main): + Fix for API changes. + +2006-04-11 Matthew Allum + + * TODO: + Add + * clutter/clutter-video-texture.c: + (clutter_video_texture_finalize): + * clutter/clutter-video-texture.h: + Remove bogus pixbuf attribute + +2006-04-10 Matthew Allum + + * clutter/clutter-main.c: (clutter_dispatch_x_event), + (clutter_queue_redraw), (clutter_main), (clutter_set_stage_params), + (clutter_init): + * clutter/clutter-main.h: + * clutter/clutter-private.h: + Make Stage non fullscreen ( for now ). Change event loop to + work better with video. + + * clutter/Makefile.am: + * clutter/clutter-label.c: (clutter_label_make_pixbuf), + (clutter_label_class_init), (clutter_label_new_with_text), + (clutter_label_set_text), (clutter_label_set_font): + * clutter/clutter-texture.c: (texture_render_to_gl_quad), + (clutter_texture_unrealize), (clutter_texture_sync_pixbuf), + (clutter_texture_realize), (clutter_texture_show), + (clutter_texture_hide), (clutter_texture_paint), + (clutter_texture_finalize), (clutter_texture_set_property), + (clutter_texture_get_property), (clutter_texture_class_init), + (clutter_texture_init), (clutter_texture_get_pixbuf), + (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf): + * clutter/clutter-texture.h: + * clutter/clutter.h: + Fix leakage. Improve performance. Add support for non tiled + textures. + + * examples/Makefile.am: + * examples/test.c: (timeout_text_cb), (main): + Experiments + + * examples/test-video.c: + * configure.ac: + * gst/Makefile.am: + * gst/clutterimagesink.c: + * gst/clutterimagesink.h: + * clutter/clutter-video-texture.c: + * clutter/clutter-video-texture.h: + Add initial support for video textures with gst-0.10 + + * gst/cltrimagesink.c: + * gst/cltrimagesink.h: + Remove old gst-0.8 sink + +2006-04-05 Matthew Allum + + * clutter/Makefile.am: + * clutter/clutter-element.c: (clutter_element_show), + (clutter_element_hide), (clutter_element_realize), + (clutter_element_unrealize), (clutter_element_paint), + (clutter_element_finalize), (clutter_element_class_init), + (clutter_element_init), (clutter_element_new): + * clutter/clutter-element.h: + * clutter/clutter.h: + * clutter/clutter-main.c: (clutter_dispatch_x_event), + (events_init), (clutter_redraw), (clutter_main), (clutter_init), + (clutter_show_stage): + * clutter/clutter-main.h: + Various minor tweaks. + + * clutter/clutter-private.h: + * clutter/clutter-texture.c: (can_create), (init_tiles), + (clutter_texture_unrealize), (clutter_texture_realize), + (clutter_texture_finalize), (clutter_texture_class_init), + (clutter_texture_init): + * clutter/clutter-texture.h: + Much improve texture class. + + * clutter/clutter-label.c: + * clutter/clutter-label.h: + Add new text rendering class + + * clutter/clutter-rectangle.c: + * clutter/clutter-rectangle.h: + Add basic rectangle drawing class + + * examples/test.c: + Add text rendering and animation to test. + +2006-04-04 Matthew Allum + + * clutter/Makefile.am: + * clutter/clutter-element.c: (clutter_element_realize): + * clutter/clutter-element.h: + * clutter/clutter-image.c: + * clutter/clutter-image.h: + * clutter/clutter-main.c: (clutter_dispatch_x_event), + (clutter_main), (clutter_set_stage_params), (clutter_init): + * clutter/clutter-texture.c: (next_p2), (can_create), + (tile_dimension), (init_tiles), (texture_render_to_gl_quad), + (clutter_texture_unrealize), (clutter_texture_realize), + (clutter_texture_get_pixbuf), (clutter_texture_paint), + (clutter_texture_finalize), (clutter_texture_class_init): + * clutter/clutter-texture.h: + * clutter/clutter.h: + * configure.ac: + * examples/test.c: + Implement basic tiled texture painting. + +2006-04-03 Matthew Allum + + reviewed by: + + * clutter/Makefile.am: + * clutter/clutter-element.c: + * clutter/clutter-element.h: + * clutter/clutter-image.c: + * clutter/clutter-image.h: + * clutter/clutter-main.c: (events_init), (stage_realize), + (clutter_queue_redraw), (clutter_redraw), (clutter_add_to_stage), + (clutter_remove_from_stage), (clutter_main), + (clutter_set_stage_params), (clutter_init): + * clutter/clutter-main.h: + * clutter/clutter-private.h: + * clutter/clutter.h: + * examples/test.c: + +2006-04-02 Matthew Allum + + * clutter/Makefile.am: + * clutter/cltr-animator.c: + * clutter/cltr-animator.h: + * clutter/cltr-button.c: + * clutter/cltr-button.h: + * clutter/cltr-core.c: + * clutter/cltr-core.h: + * clutter/cltr-events.c: + * clutter/cltr-events.h: + * clutter/cltr-glu.c: + * clutter/cltr-glu.h: + * clutter/cltr-label.c: + * clutter/cltr-label.h: + * clutter/cltr-list.c: + * clutter/cltr-list.h: + * clutter/cltr-overlay.c: + * clutter/cltr-overlay.h: + * clutter/cltr-photo-grid.c: + * clutter/cltr-photo-grid.h: + * clutter/cltr-private.h: + * clutter/cltr-scratch.c: + * clutter/cltr-scratch.h: + * clutter/cltr-texture.c: + * clutter/cltr-texture.h: + * clutter/cltr-video.c: + * clutter/cltr-video.h: + * clutter/cltr-widget.c: + * clutter/cltr-widget.h: + * clutter/cltr-window.c: + * clutter/cltr-window.h: + * clutter/cltr.h: + * clutter/clutter-main.c: + * clutter/clutter-main.h: + * clutter/clutter-private.h: + * clutter/clutter.h: + * clutter/fonts.c: + * clutter/fonts.h: + * clutter/pixbuf.c: + * clutter/pixbuf.h: + * clutter/util.c: + * clutter/util.h: + * configure.ac: + * examples/Makefile.am: + * examples/photos.c: + * examples/player.c: + * examples/scratch.c: + * examples/select.c: + * examples/test.c: + Remove old cltr files replacing with beginnings of + rejigged 'clutter' ones. + +2005-05-27 mallum,,, + + * clutter/cltr-animator.c: (cltr_animator_zoom_new), + (cltr_animator_move_new), (cltr_animator_fullzoom_new), + (cltr_animator_new), (cltr_animator_set_args), + (cltr_animator_wrapped_zoom_paint), (cltr_animator_reset), + (cltr_animator_timeout_cb), (cltr_animator_run): + * clutter/cltr-animator.h: + * clutter/cltr-button.c: (cltr_button_set_label), + (cltr_button_paint): + * clutter/cltr-label.c: (cltr_label_new), (cltr_label_set_text), + (cltr_label_get_text), (cltr_label_show), + (cltr_label_handle_xevent), (cltr_label_paint): + * clutter/cltr-label.h: + * clutter/cltr-list.c: (cltr_list_paint): + * clutter/cltr-widget.c: + * examples/select.c: (usage), (video_ctrl_hide), + (video_ctrl_stop_cb), (video_ctrl_play_cb), + (video_ctrl_seek_begin_cb), (init_video_ctrl), (show_video_ctrl), + (populate), (cell_to_item), (zoom_video_out), (init_show_controls), + (handle_xevent), (zoom_out_complete), (zoom_in_complete): + More select hacking ... + +2005-05-23 mallum,,, + + * clutter/cltr-button.c: (cltr_button_new_with_label), + (cltr_button_handle_xevent), (cltr_button_paint): + * clutter/cltr-button.h: + * clutter/cltr-events.c: (cltr_main_loop): + * clutter/cltr-list.c: (cltr_list_cell_new), + (cltr_list_append_cell), (cltr_list_update_layout), + (cltr_list_paint): + * clutter/cltr-list.h: + * clutter/cltr-overlay.c: (cltr_overlay_paint): + * clutter/cltr-private.h: + * clutter/cltr-widget.c: (cltr_widget_show), + (cltr_widget_show_all), (cltr_widget_add_child): + * clutter/cltr-widget.h: + * clutter/cltr-window.c: (cltr_window_show), (cltr_window_paint), + (cltr_window_handle_xevent), (cltr_window_post_paint), + (cltr_window_set_paint_funcs), (cltr_window_xwin), + (cltr_window_hide_cursor), (cltr_window_set_fullscreen): + * clutter/cltr-window.h: + * examples/select.c: (usage), (init_video_ctrl), (show_video_ctrl), + (populate), (cell_to_item), (handle_xevent), (zoom_out_complete), + (zoom_in_complete), (cell_activated), (main): + Much Select hacking + +2005-05-17 mallum,,, + + * clutter/cltr-video.c: (cltr_video_get_pixbuf): + * gst/cltrimagesink.c: (gst_cltrimagesink_change_state), + (gst_cltrimagesink_chain): + Fix thread related segv's on grabbing video image. + Also pop any unplayed data from sink on stop + +2005-05-16 mallum,,, + + * clutter/cltr-animator.c: (cltr_animator_zoom_new), + (cltr_animator_fullzoom_new), (cltr_animator_new), + (cltr_animator_set_args), (cltr_animator_wrapped_paint): + * clutter/cltr-animator.h: + * clutter/cltr-list.c: (cltr_list_cell_new), + (cltr_list_get_active_cell_co_ords), (cltr_list_show), + (cltr_list_on_activate_cell), (cltr_list_update_layout), + (cltr_list_paint): + * clutter/cltr-list.h: + * clutter/cltr-texture.c: (cltr_texture_realize), + (cltr_texture_unref), (cltr_texture_sync_pixbuf), + (cltr_texture_force_rgb_data): + * clutter/cltr-video.c: (got_stream_length), (got_time_tick), + (got_state_change), (parse_stream_info), (cb_iterate), + (cltr_video_play), (cltr_video_set_volume), + (cltr_video_get_volume), (cltr_video_get_pixbuf), + (cltr_video_idler), (cltr_video_set_source), + (cltr_video_handle_xevent), (cltr_video_paint): + * clutter/cltr-video.h: + * clutter/cltr-widget.c: + * clutter/pixbuf.c: (pixbuf_write_png), (load_png_file), + (pixbuf_copy), (pixbuf_fill_rect), (pixbuf_scale_down), + (pixbuf_clone): + * examples/select.c: (usage), (populate), (cell_to_item), + (handle_xevent), (zoom_out_complete), (zoom_in_complete), + (cell_activated), (main): + * gst/cltrimagesink.c: (gst_cltrimagesink_getcaps), + (gst_cltrimagesink_chain): + Far too much hacking. Fix many endian image issues. + Greatly improve select demo + +2005-05-16 mallum,,, + + * clutter/Makefile.am: + * clutter/cltr-animator.c: + * clutter/cltr-animator.h: + * clutter/cltr-list.c: (distfunc), (cltr_list_new), + (cltr_list_get_active_cell_co_ords), (cltr_list_show), + (cltr_list_on_activate_cell), (cltr_list_handle_xevent), + (cltr_list_animate), (cltr_list_timeout_cb), + (cltr_list_update_layout), (cltr_list_paint): + * clutter/cltr-list.h: + * clutter/cltr-private.h: + * clutter/cltr.h: + * clutter/pixbuf.c: (load_png_file): + * examples/player.c: + * examples/select.c: (usage), (populate), (cell_activated), (main): + Work on animator zooming. Also build up select.c much + +2005-05-14 mallum,,, + + * clutter/cltr-animator.c: + Add initial outline + * clutter/cltr-button.c: (cltr_button_new_with_pixbuf), + (cltr_button_handle_xkeyevent), (cltr_button_handle_xevent), + (cltr_button_paint): + various tweaks/experimentation + * clutter/cltr-core.c: (cltr_init), (cltr_display_height): + * clutter/cltr-glu.c: (cltr_glu_set_color): + * clutter/cltr-glu.h: + Add unfilled rect call. + * clutter/cltr-label.c: (cltr_label_new), (cltr_label_paint): + * clutter/cltr-list.c: (distfunc), (cltr_list_cell_new), + (cltr_list_show), (cltr_list_animate), (cltr_list_paint): + update list a little. + * clutter/cltr-overlay.c: (cltr_overlay_handle_xevent), + (cltr_overlay_paint): + * clutter/cltr-private.h: + * clutter/cltr-texture.c: (cltr_texture_realize): + * clutter/cltr-video.c: (cltr_video_paint): + * clutter/cltr.h: + * clutter/fonts.c: (draw_layout_on_pixbuf): + Fix font alpha blending + * examples/Makefile.am: + * examples/player.c: (main): + * examples/scratch.c: (main): + tweaks. + * examples/select.c: + new example + +2005-05-11 mallum,,, + + * clutter/cltr-video.c: (got_buffering), (cltr_video_new), + (cltr_video_play), (cltr_video_idler): + * examples/photos.c: (main): + * examples/player.c: (handle_xevent), (main): + * gst/cltrimagesink.c: (gst_cltrimagesink_chain): + Fix Gl thread related crash on video playback + Make examples less bound to my laptop ;) + +2005-05-06 mallum,,, + + * clutter/cltr-button.c: (cltr_button_new_with_label): + * clutter/cltr-overlay.c: + * clutter/cltr-photo-grid.c: (cltr_photo_grid_cell_new), + (cltr_photo_grid_paint), (cltr_photo_grid_new): + * clutter/cltr-video.c: (cltr_video_print_tag), (got_buffering), + (got_error), (caps_set), (parse_stream_info), (cb_iterate), + (cltr_video_new), (cltr_video_play), (cltr_video_seek), + (cltr_video_seek_time), (cltr_video_stop), (cltr_video_close), + (cltr_video_pause), (cltr_video_can_set_volume), + (cltr_video_set_volume), (cltr_video_get_volume), + (cltr_video_idler), (cltr_video_set_source), (cltr_video_show), + (cltr_video_hide), (cltr_video_handle_xevent), (cltr_video_paint): + * clutter/cltr-video.h: + * clutter/cltr-widget.h: + * clutter/cltr-window.c: (cltr_window_show), (cltr_window_paint), + (cltr_window_handle_xevent), (cltr_window_set_fullscreen), + (cltr_window_focus_widget): + * clutter/cltr-window.h: + * clutter/cltr.h: + * clutter/fonts.c: (get_layout_bitmap), (font_draw), + (font_get_pixel_size): + * configure.ac: + * examples/photos.c: (photo_grid_populate): + * examples/player.c: (handle_xevent), (main): + * examples/scratch.c: (main): + Lots more tweaks, mainly updating video widget. + +2005-04-29 mallum,,, + + * clutter/cltr-button.c: (cltr_button_new), + (cltr_button_on_activate), (cltr_button_new_with_label), + (cltr_button_show): + * clutter/cltr-button.h: + * clutter/cltr-label.c: (cltr_label_new), (cltr_label_paint): + * clutter/cltr-private.h: + * clutter/cltr-video.c: (cltr_video_play): + * clutter/cltr-widget.c: (cltr_widget_new), (cltr_widget_abs_x), + (cltr_widget_abs_y), (cltr_widget_abs_x2), (cltr_widget_abs_y2), + (cltr_widget_width), (cltr_widget_height), (cltr_widget_show), + (cltr_widget_focus), (cltr_widget_unfocus), + (cltr_widget_set_focus_next), (cltr_widget_get_focus_next), + (cltr_widget_show_all): + * clutter/cltr-widget.h: + * clutter/cltr-window.c: (cltr_window_new), + (cltr_window_focus_widget): + * clutter/cltr.h: + * clutter/fonts.c: (draw_layout_on_pixbuf), (font_get_pixel_size): + * examples/scratch.c: (main): + Hack buttons some more + +2005-04-27 mallum,,, + + * clutter/Makefile.am: + * clutter/cltr-button.c: (cltr_button_new): + * clutter/cltr-label.c: + * clutter/cltr-label.h: + * clutter/cltr-photo-grid.c: (cltr_photo_grid_paint): + * clutter/cltr-texture.c: (cltr_texture_realize), + (cltr_texture_new), (cltr_texture_unref), + (cltr_texture_no_tile_new): + * clutter/cltr-texture.h: + * clutter/cltr-video.c: (cltr_video_got_time_tick), (caps_set), + (cltr_video_new), (cltr_video_idler), (cltr_video_set_source), + (cltr_video_play), (cltr_video_pause), (cltr_video_show), + (cltr_video_hide), (cltr_video_handle_xevent), (cltr_video_paint): + * clutter/cltr.h: + * clutter/fonts.c: (font_new), (draw_layout_on_pixbuf), + (font_draw): + * clutter/fonts.h: + * clutter/pixbuf.c: (pixbuf_set_pixel), (pixbuf_get_pixel): + * examples/photos.c: (photo_grid_populate), (main): + * examples/player.c: (main): + Improve video widget, use playbin rather than gst_play + Lots of misc tweaks. + +2005-04-26 mallum,,, + + * clutter/Makefile.am: + * clutter/cltr-core.c: (cltr_init): + * clutter/cltr-events.c: (cltr_events_init), (cltr_main_loop): + * clutter/cltr-photo-grid.c: + * clutter/cltr-private.h: + * clutter/cltr-scratch.c: (cltr_scratch_handle_xevent), + (cltr_scratch_paint): + * clutter/cltr-texture.c: (cltr_texture_render_to_gl_quad), + (init_tiles), (cltr_texture_unrealize), (cltr_texture_realize), + (cltr_texture_new), (cltr_texture_no_tile_new), + (cltr_texture_get_pixbuf): + * clutter/cltr-texture.h: + * clutter/cltr-video.c: + * clutter/cltr-video.h: + * clutter/cltr-widget.c: (cltr_widget_queue_paint): + * clutter/cltr.h: + * examples/Makefile.am: + * examples/player.c: + * gst/cltrimagesink.c: (gst_cltrimagesink_fixate), + (gst_cltrimagesink_getcaps), (gst_cltrimagesink_sink_link), + (gst_cltrimagesink_change_state), (gst_cltrimagesink_chain), + (gst_cltrimagesink_set_property), (gst_cltrimagesink_get_property), + (gst_cltrimagesink_finalize), (gst_cltrimagesink_class_init): + * gst/cltrimagesink.h: + Initial go at very hacky gst video widget + +2005-04-22 mallum,,, + + * clutter/Makefile.am: + * clutter/cltr-button.c: + * clutter/cltr-button.h: + * clutter/cltr-core.c: (cltr_init): + * clutter/cltr-overlay.c: + * clutter/cltr-overlay.h: + * clutter/cltr-photo-grid.c: (cltr_photo_grid_handle_xevent), + (cltr_photo_grid_cell_new), (ctrl_photo_grid_get_zoomed_coords), + (cell_is_offscreen), (cltr_photo_grid_idle_cb), + (cltr_photo_grid_navigate), (cltr_photo_grid_activate_cell), + (cltr_photo_grid_populate), (cltr_photo_grid_update_visual_state), + (cltr_photo_grid_paint), (cltr_photo_grid_show), + (cltr_photo_grid_set_fps), (cltr_photo_grid_get_fps), + (cltr_photo_grid_set_anim_steps), (cltr_photo_grid_get_anim_steps), + (cltr_photo_grid_new): + Fix up grid so external prog can load images. + * clutter/cltr-photo-grid.h: + * clutter/cltr-texture.c: (cltr_texture_realize), + (cltr_texture_new): + * clutter/cltr-texture.h: + * clutter/cltr-window.c: (cltr_window_set_fullscreen): + * clutter/cltr.h: + * clutter/pixbuf.c: (pixbuf_scale_down), (ConvolveImage), + (GaussianBlurImage): + * clutter/pixbuf.h: + New experimental Methods + * configure.ac: + * examples/Makefile.am: + * examples/photos.c: + * examples/player.c: + Add new examples + * gst/Makefile.am: + * gst/cltrimagesink.c: + * gst/cltrimagesink.h: + Add initial crusty ( broken ) gst stuff + +2005-04-13 mallum,,, + + * bootstrap-autotools.sh: + * clutter/Makefile.am: + * clutter/cltr.c: + * configure.ac: + * examples/Makefile.am: + * examples/scratch.c: + Initial autotooling of everything. + +2005-04-07 mallum,,, + + * Makefile: + * cltr-events.c: (cltr_main_loop): + * cltr-list.c: + * cltr-list.h: + Add list widget + * cltr-photo-grid.c: (cltr_photo_grid_cell_new), + (cltr_photo_grid_append_cell), (ctrl_photo_grid_cell_to_coords), + (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_idle_cb), + (cltr_photo_grid_navigate), (cltr_photo_grid_activate_cell), + (cltr_photo_grid_update_visual_state), (cltr_photo_grid_paint), + (cltr_photo_grid_show), (cltr_photo_grid_new): + * cltr-texture.c: + * cltr-widget.c: + * cltr-window.c: (cltr_window_new), (cltr_window_show), + (cltr_window_handle_xevent): + * cltr-window.h: + * cltr.c: (main): + * cltr.h: + * pixbuf.c: (pixbuf_copy): + * pixbuf.h: + Cleanups + +2005-04-03 mallum,,, + + * Makefile: + * cltr-core.c: + * cltr-core.h: + * cltr-events.c: + * cltr-events.h: + * cltr-photo-grid.c: (cltr_photo_grid_handle_xkeyevent), + (cltr_photo_grid_handle_xevent), (cltr_photo_grid_cell_new), + (cltr_photo_grid_append_cell), (ctrl_photo_grid_cell_to_coords), + (ctrl_photo_grid_get_zoomed_coords), (cell_is_offscreen), + (cltr_photo_grid_idle_cb), (cltr_photo_grid_navigate), + (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate), + (cltr_photo_grid_paint), (cltr_photo_grid_show), + (cltr_photo_grid_new): + * cltr-photo-grid.h: + * cltr-private.h: + * cltr-texture.c: + * cltr-texture.h: + * cltr-widget.c: + * cltr-widget.h: + * cltr-window.c: + * cltr-window.h: + * cltr.c: + * cltr.h: + Add very basic initial toolkit infrastructure + +2005-03-31 mallum,,, + + * cltr-photo-grid.c: (cltr_photo_grid_append_cell), + (ctrl_photo_grid_cell_to_coords), + (ctrl_photo_grid_get_zoomed_coords), (cell_is_offscreen), + (cltr_photo_grid_idle_cb), (cltr_photo_grid_navigate), + (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate), + (cltr_photo_grid_redraw), (cltr_photo_grid_new): + * cltr-photo-grid.h: + * cltr-texture.c: (cltr_texture_render_to_gl_quad), (init_tiles), + (cltr_texture_realize): + * cltr-texture.h: + * cltr.c: (main): + Implemented scrolling. Very rough around the edges, needs tidying. + +2005-03-30 mallum,,, + + * Makefile: + * cltr-photo-grid.c: (cltr_photo_grid_redraw), + (cltr_photo_grid_new): + * cltr-tex.c: + * cltr-tex.h: + * cltr-texture.c: (cltr_texture_new): + More renaming + +2005-03-30 mallum,,, + + * cltr-photo-grid.c: (cltr_photo_grid_populate), + (cltr_photo_grid_redraw), (cltr_photo_grid_new): + * cltr-photo-grid.h: + * cltr-tex.c: (next_p2), (cltr_texture_render_to_gl_quad), + (tile_dimension), (init_tiles), (cltr_texture_new): + * cltr-tex.h: + * cltr.h: + Rename CltrImage -> CltrTexture + +2005-03-30 mallum,,, + + * Makefile: + * cltr-photo-grid.c: (cltr_photo_grid_populate), + (cltr_photo_grid_redraw): + * cltr-photo-grid.h: + * cltr-tex.c: + * cltr-tex.h: + * cltr.c: (main): + * cltr.h: + * pixbuf.c: (pixbuf_unref), (pixbuf_copy): + * pixbuf.h: + Add intial new texture tiling code. + +2005-03-27 mallum,,, + + * Makefile: + * cltr-photo-grid.c: (cltr_photo_grid_cell_new), + (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_navigate), + (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate), + (cltr_photo_grid_redraw), (cltr_photo_grid_new): + * cltr-photo-grid.h: + * cltr.c: (cltr_dispatch_x_event), (cltr_init), (test_idle_cb), + (main): + * cltr.h: + Add a very hacky threaded image loader. + Make event handling a little more efficient, though still hacky + * pixbuf.c: (pixel_set_vals), pixbuf.h: + Add copy func ( unused as yet ) + +2005-03-25 mallum,,, + + * cltr-photo-grid.c: (cltr_photo_grid_cell_new), + (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_redraw), + (cltr_photo_grid_new): + * cltr-photo-grid.h: + * cltr.c: (cltr_window_new), (idle_cb), (main): + Use GL matrices in a saner way. + Add random rotation to picts + Random minor tweaks + +2005-03-24 mallum,,, + + * Makefile: + * cltr-photo-grid.c: + * cltr-photo-grid.h: + * cltr.c: (cltr_window_new), (cltr_main_loop): + * cltr.h: + Split up cltr.c a bit. start refactoring a bit. + +2005-03-23 mallum,,, + + * cltr.c: (cltr_photo_grid_populate), (cltr_photo_grid_redraw), + (cltr_photo_grid_new), (main): + * cltr.h: + Various minor tweaks + * pixbuf.c: (pixbuf_set_pixel), (pixbuf_get_pixel): + Fix RGBA ordering in set/get pixel + +2005-03-23 mallum,,, + + * cltr.c: (ctrl_photo_grid_get_trans_coords), + Fix grid co-ords -> translation vals converter + (cltr_photo_grid_navigate), (cltr_photo_grid_redraw), + (cltr_photo_grid_new), (idle_cb): + Fix moving between pictures when zoomed + +2005-03-23 mallum,,, + + * cltr.c: (cltr_dispatch_x_event), (cltr_window_new), + (cltr_main_loop), (cltr_photo_grid_navigate), + (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate), + (cltr_photo_grid_redraw), (cltr_photo_grid_new), (idle_cb), (main): + * cltr.h: + Lots, make the grid roughly work. + + * fonts.c: (get_layout_bitmap), (font_draw): + remove debug printfs + +2005-03-22 mallum,,, + + * cltr.c: (x_event_prepare), (x_event_check), (x_event_dispatch), + (cltr_dispatch_x_event), (cltr_init), (cltr_window_new), + (cltr_photo_grid_append_cell), (cltr_photo_grid_populate), + (cltr_photo_grid_redraw), (cltr_photo_grid_new), + (idle_cb), (main): + * cltr.h: + Add glib event loop diff --git a/Makefile.am b/Makefile.am index 2a281435a..bed55479d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -30,7 +30,12 @@ pkgconfigdir = $(libdir)/pkgconfig DEFAULT_FLAVOUR = @CLUTTER_FLAVOUR@ -EXTRA_DIST = clutter.pc.in HACKING HACKING.backends CODING_STYLE +EXTRA_DIST = \ + ChangeLog.SVN \ + clutter.pc.in \ + HACKING \ + HACKING.backends \ + CODING_STYLE CLEANFILES = $(pcfiles)