1 # DO NOT MODIFY THIS FILE
3 # Clutter uses the Git commit log to generate the ChangeLog files when
4 # creating the tarball for releases and snapshots. This file is maintained
5 # only for historical reasons.
7 2008-12-10 Neil Roberts <neil@linux.intel.com>
9 * clutter/cogl/gl/cogl.c:
10 * clutter/cogl/gl/cogl-defines.h.in:
11 * clutter/cogl/gl/cogl-context.h:
12 * clutter/cogl/common/cogl-mesh.c: Rename the glBufferDataSub
13 function to glBufferSubData. When calling glXGetProcAddress with
14 the former Mesa returns a stub dispatch function which will
15 segfault if you try to use it. With NVIDIA it returns NULL so
16 _cogl_features_init decides the card doesn't have VBO support.
18 2008-12-10 Neil Roberts <neil@linux.intel.com>
20 Bug 1323 - ClutterBehaviorDepth conflicts with other behaviors
22 * clutter/clutter-behaviour-ellipse.c (actor_apply_knot_foreach):
23 Don't set the depth if there is no x or y tilt. That way it can
24 still be used in conjunction with ClutterBehaviourDepth. Thanks to
27 2008-12-08 Emmanuele Bassi <ebassi@linux.intel.com>
29 * clutter/clutter-binding-pool.h: Fix the ActivateFunc
30 documentation by adding a "return value" annotation.
32 2008-12-08 Emmanuele Bassi <ebassi@linux.intel.com>
34 * clutter/Makefile.am:
35 * clutter/clutter.h: Add ClutterBindingPool to the build.
37 * clutter/clutter-binding-pool.c:
38 * clutter/clutter-binding-pool.h: Add ClutterBindingPool, a data
39 structure meant to hold (key symbol, modifiers) pairs and associate
40 them to a closure. The ClutterBindingPool can be used to install
41 key bindings for actors and then execute closures inside the
42 key-press-event signal handlers, removing the need for big
43 switch() or if() blocks for each key.
45 * clutter/clutter-event.c: Consistently use "key symbol" instead
48 * clutter/clutter-event.h: Add more modifier masks.
50 * clutter/clutter-marshal.list:
52 * tests/conform/Makefile.am:
53 * tests/conform/test-binding-pool.c:
54 * tests/conform/test-conform-main.c: Add ClutterBindingPool
57 * tests/interactive/Makefile.am:
58 * tests/interactive/test-binding-pool.c: Add interactive test (and
59 example code) for the ClutterBindingPool usage.
61 2008-12-08 Neil Roberts <neil@linux.intel.com>
63 * clutter/clutter-main.c (_clutter_do_pick): Restore the GL_DITHER
64 state after reading the pixel value instead of before. Suggested
65 in bug 1328 thanks to Guy Zadickario.
67 2008-12-05 Emmanuele Bassi <ebassi@linux.intel.com>
69 Bug 1309 - clutter_timeline_new and clutter_timeline_set_speed
70 have two standard of the fps limitation
72 * clutter/clutter-timeline.c:
73 (clutter_timeline_class_init): Set the maximum value of the
74 :fps property to be G_MAXUINT. (Zhang Wei)
76 2008-12-05 Neil Roberts <neil@linux.intel.com>
78 * clutter/clutter-entry.c: Fix the 'Since' annotation in the
81 2008-12-05 Neil Roberts <neil@linux.intel.com>
83 * clutter/clutter-timeline.c:
84 * clutter/clutter-texture.c:
85 * clutter/clutter-stage.c:
86 * clutter/clutter-label.c:
87 * clutter/clutter-behaviour-path.c:
88 * clutter/clutter-actor.c: Fix the 'Since' annotation in the
91 2008-12-05 Neil Roberts <neil@linux.intel.com>
93 Bug 1252 - Merge ClutterBehaviourPath and ClutterBehaviourBspline
95 * clutter/clutter-path.h:
96 * clutter/clutter-path.c: Implementation of new ClutterPath object
97 to represent a path combining straight line and bezier curve
100 * clutter/clutter.h: Include clutter-path.h and remove
101 clutter-behaviour-bspline.h
103 * tests/interactive/test-threads.c (test_threads_main):
104 * tests/interactive/test-script.c:
105 * tests/interactive/test-behave.c (test_behave_main): Use new path
108 * clutter/clutter-effect.c: Use the new ClutterBehaviourPath API.
110 * clutter/clutter-bezier.h:
111 * clutter/clutter-bezier.c: Moved bezier curve handling code out
112 from clutter-behaviour-bspline.c to a separate file.
114 * clutter/clutter-behaviour-path.h:
115 * clutter/clutter-behaviour-path.c: Reimplemented to work with a
118 * clutter/clutter-behaviour-bspline.h:
119 * clutter/clutter-behaviour-bspline.c: Removed
121 * clutter/Makefile.am: Add clutter-path and clutter-bezier, remove
122 clutter-behaviour-bspline.
124 * tests/conform/test-path.c: New automatic test for ClutterPath
127 * tests/conform/test-conform-main.c (main): Add test_path
129 * tests/conform/Makefile.am (test_conformance_SOURCES): Add
132 * clutter/clutter-sections.txt: Add ClutterPath docs
134 * clutter/clutter.types:
135 * clutter/clutter-docs.xml:
136 * doc/reference/clutter/clutter-animation-tutorial.xml: Remove
137 mention of ClutterBehaviourBspline
139 * clutter/clutter-marshal.list: Add VOID:UINT
141 2008-12-04 Neil Roberts <neil@linux.intel.com>
143 Bug 1297 - Bring back support for GL_ARB_texture_rectangle
145 * clutter/cogl/gl/cogl-texture.c (cogl_texture_new_from_foreign,
146 (_cogl_texture_quad_hw, cogl_texture_polygon),
147 (_cogl_texture_quad_sw): Support GL_ARB_texture_rectangle textures
149 * clutter/glx/clutter-glx-texture-pixmap.c: Use rectangle textures
150 when NPOTs are not available or it is forced by the
151 CLUTTER_PIXMAP_TEXTURE_RECTANGLE environment variable.
153 * clutter/cogl/gl/cogl.c (cogl_enable): Allow enabling
154 GL_TEXTURE_RECTANGLE_ARB.
156 2008-12-04 Neil Roberts <neil@linux.intel.com>
158 Bug 1172 - Disjoint paths and clip to path
160 * clutter/cogl/cogl-path.h:
161 * clutter/cogl/common/cogl-primitives.c:
162 * clutter/cogl/common/cogl-primitives.h:
163 * clutter/cogl/gl/cogl-primitives.c:
164 * clutter/cogl/gles/cogl-primitives.c: Changed the semantics of
165 cogl_path_move_to. Previously this always started a new path but
166 now it instead starts a new disjoint sub path. The path isn't
167 cleared until you call either cogl_path_stroke, cogl_path_fill or
168 cogl_path_new. There are also cogl_path_stroke_preserve and
169 cogl_path_fill_preserve functions.
171 * clutter/cogl/gl/cogl-context.c:
172 * clutter/cogl/gl/cogl-context.h:
173 * clutter/cogl/gles/cogl-context.c:
174 * clutter/cogl/gles/cogl-context.h: Convert the path nodes array
177 * clutter/cogl/gl/cogl-texture.c:
178 * clutter/cogl/gles/cogl-texture.c: Call cogl_clip_ensure
180 * clutter/cogl/common/cogl-clip-stack.c:
181 * clutter/cogl/common/cogl-clip-stack.h: Simplified the clip
182 stack code quite a bit to make it more maintainable. Previously
183 whenever you added a new clip it would go through a separate route
184 to immediately intersect with the current clip and when you
185 removed it again it would immediately rebuild the entire clip. Now
186 when you add or remove a clip it doesn't do anything immediately
187 but just sets a dirty flag instead.
189 * clutter/cogl/gl/cogl.c:
190 * clutter/cogl/gles/cogl.c: Taken away the code to intersect
191 stencil clips when there is exactly one stencil bit. It won't work
192 with path clips and I don't know of any platform that doesn't have
193 eight or zero stencil bits. It needs at least three bits to
194 intersect a path with an existing clip. cogl_features_init now
195 just decides you don't have a stencil buffer at all if you have
196 less than three bits.
198 * clutter/cogl/cogl.h.in: New functions and documentation.
200 * tests/interactive/test-clip.c: Replaced with a different test
201 that lets you add and remove clips. The three different mouse
202 buttons add clips in different shapes. This makes it easier to
203 test multiple levels of clipping.
205 * tests/interactive/test-cogl-primitives.c: Use
206 cogl_path_stroke_preserve when using the same path again.
208 * doc/reference/cogl/cogl-sections.txt: Document the new
211 2008-12-03 Robert Bragg <robert@linux.intel.com>
213 Bug 1303 - clutter_glx_texture_pixmap_using_extension doesn't check if
214 fallbacks are being used
216 * glx/clutter-glx-texture-pixmap.c:
217 clutter_glx_texture_pixmap_using_extension now checks to see if
218 priv->use_fallback is TRUE not just that the tfp extension is
221 2008-12-01 Neil Roberts <neil@linux.intel.com>
223 Bug 1305 - NPOT textures unaligned to a pixel sometimes have
226 * clutter/cogl/gl/cogl-texture.c: Set the wrap mode of a texture
229 Instead of setting the wrap mode once per texture at creation, it
230 is now changed whenever the texture is drawn. The previous value
231 is cached so that it isn't changed if the value is the same.
233 This is used in _cogl_texture_quad_hw to only enable GL_REPEAT
234 mode when the coordinates are not in the range [0,1]. Otherwise it
235 can pull in pixels from the other edge when the texture is
238 2008-11-28 Neil Roberts <neil@linux.intel.com>
240 * tests/conform/test-backface-culling.c (TEXTURE_SIZE): Don't set
241 to a funny size on GLES because it will break cogl_texture_polygon
243 2008-11-28 Neil Roberts <neil@linux.intel.com>
245 * tests/conform/test-backface-culling.c: New test for backface
248 * tests/conform/test-conform-main.c (main): Add
249 /texture/test_backface_culing
251 * tests/conform/Makefile.am (test_conformance_SOURCES): Add
252 test-backface-culling.c
254 2008-11-28 Neil Roberts <neil@linux.intel.com>
256 * tests/conform/test-mesh-mutability.c:
257 * tests/conform/test-mesh-interleved.c:
258 * tests/conform/test-mesh-contiguous.c: Remove the idle source
259 after the test is complete so that it won't interfere with other
262 2008-11-26 Emmanuele Bassi <ebassi@linux.intel.com>
264 * clutter/clutter-group.c:
265 (clutter_group_real_raise), (clutter_group_real_lower): Repaint
266 the Group on raise and lower.
268 2008-11-26 Neil Roberts <neil@linux.intel.com>
270 * clutter/cogl/gl/cogl-texture.c (cogl_texture_rectangle): Fixed
271 the test for whether to use hardware tiling. Previously it assumed
272 that texture coordinates are in increasing order but this is not
273 the case since bug 1057 was fixed. The texture coordinates are now
274 sorted later. It also allowed negative coordinates which doesn't
275 make sense if the texture has waste.
277 2008-11-25 Emmanuele Bassi <ebassi@linux.intel.com>
279 * configure.ac: Remove stray dependency on gdk-pixbuf-xlib; we
280 don't use the xlib specific API anymore. (thanks to Matthias
283 2008-11-25 Neil Roberts <neil@linux.intel.com>
285 Bug 1299 - clutter_score_remove will segmentation fault if
286 timelines are more than 52 and continue to remove them
288 * clutter/clutter-score.c (traverse_children): Don't destroy the
289 entry in the handler for REMOVE_BY_ID. It will be removed again
290 anyway in the call to g_node_traverse. This was causing a
291 crash. Thanks to zhangwei for spotting.
293 2008-11-24 Neil Roberts <neil@linux.intel.com>
295 Add a wrapper library to help testing without NPOTs.
297 * tests/tools/Makefile.am: Optionally build the
298 libdisable-npots.la library depending on whether libdl was
299 detected in the configure script. A helper script is also
300 generated to setup the LD_PRELOAD.
302 * tests/conform/Makefile.am: There are now two versions of the
303 test-report and full-report rules. test-report-normal is the same
304 as before and test-report-disable-npots runs the tests with the
305 disable-npots wrapper script. The full-report rule runs both of
306 them and displays two separate HTML files. The test-report rule
307 just runs the normal version as before.
309 * configure.ac: Add a test for libdl
311 * tests/tools/disable-npots.sh.in: New file. Template for the
314 * tests/tools/disable-npots.c: New file
316 2008-11-24 Neil Roberts <neil@linux.intel.com>
318 * clutter/cogl/gl/cogl-texture.c (cogl_texture_polygon): Fix the
319 equation for calculating texture coordinates when using sliced
320 textures. This became broken in revision 3520.
322 2008-11-21 Neil Roberts <neil@linux.intel.com>
324 Bug 1270 - Update to mingw-cross-compile.sh
326 * build/mingw/mingw-cross-compile.sh: Update to download latest
327 binaries. Patch thanks to David Kedves.
329 2008-11-21 Neil Roberts <neil@linux.intel.com>
331 Bug 1271 - mingw compiling failed: undefined reference to
332 `_glDrawRangeElements@24'
334 Resolve glDrawRangeElements with cogl_get_proc_address instead of
335 calling it directly because functions defined in GL > 1.1 are not
336 directly exported under Windows.
338 * clutter/cogl/common/cogl-mesh.c: Use the function pointer from
341 * clutter/cogl/gl/cogl-context.c (cogl_create_context): Initialise
344 * clutter/cogl/gl/cogl-context.h (CoglContext): Add a function
347 * clutter/cogl/gl/cogl-defines.h.in: Add a typedef for the
350 * clutter/cogl/gl/cogl.c (_cogl_features_init): Resolve
353 2008-11-21 Neil Roberts <neil@linux.intel.com>
355 * tests/interactive/Makefile.am:
356 * tests/conform/Makefile.am: Use $(EXEEXT) when specifying a
357 dependency on an executable otherwise there won't be a rule to
360 2008-11-21 Neil Roberts <neil@linux.intel.com>
362 Bug 1269 - mingw32 building failed at clutter-media.c
364 * clutter/clutter-media.c: Rename the 'ERROR' signal enum to
365 'ERROR_SIGNAL' otherwise it clashes with windgi.h. Thanks to David
368 2008-11-21 Neil Roberts <neil@linux.intel.com>
370 * clutter/pango/cogl-pango.h: Include pango/pango.h to get
371 pango-renderer.h. In versions prior to 1.18.4 pangocairo.h does
372 not include pango-renderer.h
374 2008-11-21 Neil Roberts <neil@linux.intel.com>
376 Bug 1280 - clutter_score_append_at_marker lead to segmentation
377 fault in trunk and incorrect appearance in clutter-0.8
379 * clutter/clutter-score.c (start_children_entries): Check whether
380 the child timeline is actually attached at a marker before
381 comparing whether the marker's name matches the marker
382 reached. This fixes a crash that happens when a marker is reached
383 on a timeline that also has child timelines attached at the
384 end. Thanks to zhangwei for spotting.
386 2008-11-20 Emmanuele Bassi <ebassi@linux.intel.com>
388 * clutter/clutter-actor.c:
389 (clutter_actor_set_property): Add sanity checks for NULL
390 boxed values when setting the rotation center.
392 * tests/interactive/test-animation.c:
393 (on_button_press): Add an example on how to use the rotation
394 properties to animate an actor.
396 2008-11-18 Neil Roberts <neil@linux.intel.com>
398 Fixed some trivial compiler warnings
400 * tests/interactive/test-pixmap.c (create_pixmap): Use a format
401 string instead of passing the error message directly to g_error.
403 * tests/interactive/test-easing.c (test_easing_main)
405 * tests/interactive/test-animation.c (on_button_press): Use
406 unsigned variables for the results from clutter_actor_get_size
407 otherwise it complains about the pointer signedness being
410 * clutter/clutter-script.c (clutter_script_add_search_paths): Use
411 G_GSIZE_FORMAT instead of %d for a gsize parameter otherwise it
412 gets upset on 64-bit.
414 2008-11-18 Neil Roberts <neil@linux.intel.com>
416 * tests/conform/test-timeline.c (test_timeline): Remove the delay
417 idle handler after the test is finished, otherwise it will
418 continue running during subsequent tests. This was breaking
419 test_timeline_interpolate.
421 2008-11-18 Robert Bragg <robert@linux.intel.com>
423 * clutter/cogl/common/cogl-mesh.c:
424 Re-works validate_custom_attribute_name() so it doesn't access an
425 un-initialised variable.
427 2008-11-18 Robert Bragg <robert@linux.intel.com>
429 A comparison of gl/cogl-texture.c and gles/cogl-texture.c, to reduce
430 differences and improve maintainability.
432 * clutter/cogl/gl/cogl-context.h:
433 Adds a CoglTextureGLVertex typedef + texture_vertices and
434 texture_vertices_size members to CoglContext for using vertex arrays
437 * clutter/cogl/gl/cogl-context.c:
438 Initializes texture_vertices + texture_vertices_size members
440 * clutter/cogl/gl/cogl-internal.h:
441 Adds COGL_ENABLE_COLOR_ARRAY
443 * clutter/cogl/gl/cogl.c:
444 Add COGL_ENABLE_COLOR_ARRAY support to cogl_enable
446 * clutter/cogl/gles/cogl-context.h:
447 Change the CoglTextureGLVertex to use GLfloat for the position
448 and texture coord attributes and GLubyte for the color.
450 * clutter/cogl/gles/cogl-texture-private.h:
451 Adds a wrap_mode member like GL has.
453 * clutter/cogl/gl/cogl-texture.c
454 * clutter/cogl/gles/cogl-texture.c:
455 Improves the comparability of the files, such that the remaining
456 differences, better reflect the fundamental differences needed
457 between GL and GLES. Notably GL no longer uses glBegin/glEnd for
458 submitting vertices, it uses vertex arrays like GLES and this gives
459 a small but measurable fps improvement for test-text.
461 2008-11-18 Robert Bragg <robert@linux.intel.com>
463 * clutter/cogl/gl/cogl-internal.h
464 * clutter/cogl/gles/cogl-internal.h:
465 Removes semicolon after the GE() macro since that breaks using it as a
468 2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
470 * clutter/clutter.h: Add clutter-shader.h and
471 clutter-shader-types.h to the global include.
473 2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
475 * clutter/cogl/cogl-shader.h: Add a function for setting an
476 integer uniform, similar to cogl_program_uniform_1f().
478 * clutter/cogl/gl/cogl-program.c: Implement the GL version
479 of cogl_program_uniform_1i().
481 * clutter/cogl/gles/cogl-program.c: Implement the GLES version
482 of cogl_program_uniform_1i().
484 2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
486 Bug 1049 - Clutter doesn't support most GLSL uniforms (patch
487 by Chris Lord and Neil Roberts)
489 * README: Update release notes.
491 * clutter/Makefile.am:
492 * clutter/clutter-shader-types.[ch]: Add GValue types for
495 * clutter/clutter-actor.[ch]: Update the shader API to use
496 the newly added GValue support for GLSL shader uniform
499 * clutter/clutter-shader.[ch]: Add float and integer convenience
500 API for single value GLSL uniform setters.
502 * clutter/cogl/cogl-shader.h: Add new uniform setters.
504 * clutter/cogl/gl/cogl-context.c:
505 * clutter/cogl/gl/cogl-context.h:
506 * clutter/cogl/gl/cogl-defines.h.in:
507 * clutter/cogl/gl/cogl-program.c:
508 * clutter/cogl/gl/cogl.c: Update the GL implementation of COGL
509 to handle the GLSL uniform setters.
511 * clutter/cogl/gles/cogl-gles2-wrapper.c:
512 * clutter/cogl/gles/cogl-gles2-wrapper.h:
513 * clutter/cogl/gles/cogl-internal.h:
514 * clutter/cogl/gles/cogl-program.c: Update the GLES 2.0 implementation
515 of COGL to handle the GLSL uniform setters.
517 * doc/reference/clutter/clutter-sections.txt:
518 * doc/reference/cogl/cogl-sections.txt: Update the documentation.
520 * tests/interactive/test-fbo.c:
521 * tests/interactive/test-shader.c: Update the shader tests.
523 2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
525 * clutter/clutter-texture.c:
526 (clutter_texture_get_preferred_width): Fix the usage of the
527 fixed point division macro.
529 2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
531 * tests/conform/test-conform-main.c (main): Do not run the
532 conformance test suite if we are on X11 but we do not have
533 a DISPLAY available. Some of the tests require a DISPLAY,
534 and everything passes through a clutter_init() call which will
535 fail anyway. If we are running make distcheck on an headless
536 box we might as well just skip the conformance test suite
537 without a meaningless error.
539 2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
541 * tests/conform/test-mesh-contiguous.c:
542 * tests/conform/test-mesh-interleved.c:
543 * tests/conform/test-mesh-mutability.c: Remove the last bare
544 g_print() from the conformance test suite.
546 2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
548 * clutter/clutter-alpha.h:
549 * clutter/clutter-alpha.c:
550 (clutter_alpha_set_mode): Use a lookup table to find the alpha
551 function given the animation mode.
553 (clutter_exp_in_func),
554 (clutter_exp_out_func),
555 (clutter_exp_in_out_func): Add new exponential functions.
557 * clutter/clutter-script.c: Update the lookup table with the
558 new animation modes; match "linear" to the ramp-inc alpha
561 * clutter/clutter-types.h: Add new AnimationMode values.
563 * tests/interactive/test-easing.c: Update the easing functions
566 2008-11-18 Neil Roberts <neil@linux.intel.com>
568 * tests/conform/test-pick.c (test_pick): The final result message
569 when --verbose is used was the wrong way around
571 2008-11-18 Neil Roberts <neil@linux.intel.com>
573 * tests/conform/test-conform-main.c (main): Fixed a typo in the
574 name of the path for test_realized.
576 2008-11-17 Emmanuele Bassi <ebassi@linux.intel.com>
578 Bug 1014 - Clutter Animation API Improvements
580 * clutter/Makefile.am:
581 * clutter/clutter.h: Update the build
583 * clutter/clutter-types.h: Add AnimationMode, an enumeration
584 for easing functions.
586 * clutter/clutter-alpha.[ch]: Add the :mode property to
587 control the function bound to an Alpha instance using an
588 enumeration value. Also add six new alpha functions:
590 - ease-in, ease-out, ease-in-out
591 - sine-in, sine-out, sine-in-out
593 * clutter/clutter-deprecated.h: Deprecate the #defines for
594 the alpha functions. They will be replaced by entries in the
595 ClutterAnimationMode.
597 * clutter/clutter-interval.[ch]: Add ClutterInterval, an
598 object for defining, validating and computing an interval
601 * clutter/clutter-animation.[ch]: Add ClutterAnimation, an
602 object responsible for animation the properties of a single
603 actor along an interval of values. ClutterAnimation memory
604 management is automatic. A simple wrapper method for
605 ClutterActor is provided:
607 clutter_actor_animate()
609 which will create, or update, an animation for the passed
612 * clutter/clutter-debug.h:
613 * clutter/clutter-main.c: Add a new 'animation' debug note.
615 * clutter/clutter-script.c: Clean up the alpha functions
616 whitelist, and add the new functions.
618 * doc/reference/clutter/Makefile.am:
619 * doc/reference/clutter/clutter-sections.txt: Update the
622 * doc/reference/clutter/clutter-animation.xml: Renamed to
623 doc/reference/clutter/clutter-animation-tutorial.xml to
624 avoid clashes with the ClutterAnimation section.
626 * doc/reference/clutter/clutter-docs.sgml: Renamed to
627 doc/reference/clutter/clutter-docs.xml, as it was an XML
628 file and not a SGML file.
631 * tests/interactive/Makefile.am:
632 * tests/interactive/test-animation.c:
633 * tests/interactive/test-easing.c: Add two tests for the
634 new simple animation API and the easing functions.
636 * tests/interactive/test-actors.c:
637 * tests/interactive/test-behave.c:
638 * tests/interactive/test-depth.c:
639 * tests/interactive/test-effects.c:
640 * tests/interactive/test-layout.c:
641 * tests/interactive/test-multistage.c:
642 * tests/interactive/test-paint-wrapper.c:
643 * tests/interactive/test-rotate.c:
644 * tests/interactive/test-scale.c:
645 * tests/interactive/test-texture-quality.c:
646 * tests/interactive/test-threads.c:
647 * tests/interactive/test-viewport.c: Update interactive tests
648 to the deprecations and new alpha API.
650 2008-11-17 Emmanuele Bassi <ebassi@linux.intel.com>
652 * clutter/clutter-entry.c:
653 * clutter/clutter-label.c:
654 * clutter/clutter-rectangle.c:
655 * clutter/clutter-script.c:
656 * clutter/clutter-stage.c: Use the ParamSpecColor and GValue
657 API for ClutterColor-based properties.
659 2008-11-14 Robert Bragg <ebassi@linux.intel.com>
661 * tests/interactive/Makefile.am
662 * tests/interactive/test-pixmap.c:
663 test-pixmap + test-devices accidentally got dropped from the makefiles
664 when changing the unit test layout; this puts them back.
666 2008-11-14 Emmanuele Bassi <ebassi@linux.intel.com>
668 Bug 1265 - ClutterScore doesn't emit 'started' signal (Bastian
671 * clutter/clutter-score.c: Emit the ::started signal.
673 * tests/interactive/test-score.c: Check the emission of the
676 2008-11-13 Neil Roberts <neil@linux.intel.com>
678 * clutter/cogl/gles/cogl-gles2-wrapper.h:
679 * clutter/cogl/gles/cogl-gles2-wrapper.c:
680 Initialise the 'tex' sampler uniform to 0. The GLSL spec
681 specifically says that you must initialize sampler uniforms. This
682 fixes texturing for GLES 2 when using the PowerVR simulator via
685 2008-11-13 Robert Bragg <robert@linux.intel.com>
687 Gets the mesh API working with GLES2
689 * clutter/cogl/common/cogl-mesh.c:
690 Make sure we use the appropriate cogl_wrap_gl* funcs as appropriate
692 * clutter/cogl/gles/cogl-gles2-wrapper.c
693 * clutter/cogl/gles/cogl-gles2-wrapper.h:
694 In our glColorPointer wrapper we needed to mark our color attribute
697 * tests/conform/Makefile.am:
698 When creating unit test symlinks we use the -l gtester option to
699 list tests, but when using the PVR SDK the test binary also spews
700 out some extra info that caused lots of random symlinks to be
701 created. We now grep for lines starting with a '/'
703 * tests/conform/test-mesh-contiguous.c
704 * tests/conform/test-mesh-mutability.c:
705 Use cogl_set_source_color instead of directly calling glColor4ub
707 2008-11-13 Neil Roberts <neil@linux.intel.com>
709 * clutter/clutter-actor.c (clutter_actor_get_paint_visibility):
710 Fix logic so that it won't return TRUE for a hidden stage.
712 2008-11-13 Emmanuele Bassi <ebassi@linux.intel.com>
714 * clutter/clutter-behaviour-ellipse.c:
715 (clutter_behaviour_ellipse_applied): Do not reset the depth
716 of the actors to which the Ellipse behaviour has been applied
717 to, unless the behaviour is going to update it because it has
718 a tilt on the X or Y axis.
720 2008-11-13 Neil Roberts <neil@linux.intel.com>
722 * clutter/clutter-actor.c (clutter_actor_get_reactive)
723 (clutter_actor_get_paint_visibility): Be sure to return exactly
724 TRUE or FALSE instead of zero or some non-zero value in these
725 functions that return a gboolean. Thanks to Kai Wei for spotting.
727 2008-11-12 Emmanuele Bassi <ebassi@linux.intel.com>
729 * tests/conform/Makefile.am:
730 * tests/conform/test-conform-main.c:
731 * tests/conform/test-paint-opacity.c: Add test unit for label,
732 rectangle and paint opacity.
734 2008-11-12 Emmanuele Bassi <ebassi@linux.intel.com>
736 * clutter/cogl/cogl-color.h:
737 * clutter/cogl/cogl-path.h:
738 * clutter/cogl/cogl-types.h:
739 * clutter/cogl/common/cogl-color.c: Deprecated cogl_color()
740 in favour of cogl_set_source_color() and friends; store the
741 CoglColor components as unsigned bytes instead of fixed point
742 normalized values; add functions for allocating, copying and
743 freeing CoglColor, for use of language bindings.
745 * clutter/cogl/cogl.h.in:
746 * clutter/cogl/cogl-deprecated.h: Added cogl-deprecated.h,
747 an header file containing the deprecation symbols similar
748 to clutter-deprecated.h.
750 * clutter/cogl/gl/Makefile.am:
751 * clutter/cogl/gl/cogl-texture.c:
752 * clutter/cogl/gl/cogl.c:
753 * clutter/cogl/gles/Makefile.am:
754 * clutter/cogl/gles/cogl-texture.c:
755 * clutter/cogl/gles/cogl.c: Update the GL and GLES implementations
756 of COGL after the CoglColor changes.
758 * clutter/clutter-actor.c:
759 * clutter/clutter-clone-texture.c:
760 * clutter/clutter-entry.c:
761 * clutter/clutter-label.c:
762 * clutter/clutter-rectangle.c:
763 * clutter/clutter-texture.c: Do not use CoglColor whenever it
764 is possible, and use cogl_set_source_color4ub() instead.
766 * clutter/pango/cogl-pango-render.c: Ditto as above.
768 * doc/reference/clutter/subclassing-ClutterActor.xml:
769 * doc/reference/cogl/cogl-sections.txt: Update the documentation.
771 * tests/interactive/test-cogl-offscreen.c:
772 * tests/interactive/test-cogl-primitives.c:
773 * tests/interactive/test-cogl-tex-convert.c:
774 * tests/interactive/test-cogl-tex-foreign.c:
775 * tests/interactive/test-cogl-tex-getset.c:
776 * tests/interactive/test-cogl-tex-polygon.c:
777 * tests/interactive/test-cogl-tex-tile.c:
778 * tests/interactive/test-paint-wrapper.c: Drop the usage of
779 CoglColor whenever it is possible.
781 2008-11-12 Neil Roberts <neil@linux.intel.com>
783 Bug 1057 - cogl_texture_rectangle doesn't support backward
786 * clutter/cogl/gl/cogl-texture.c: Instead of sorting the vertex
787 and texture coordinates passed to cogl_texture_rectangle, just
788 swap both sets whenever the texture coordinates are backward.
790 2008-11-12 Neil Roberts <neil@linux.intel.com>
792 * clutter/clutter-rectangle.c (clutter_rectangle_paint): Fixed so
793 that it doesn't use the alpha value from the border colour to draw
796 2008-11-12 Neil Roberts <neil@linux.intel.com>
798 * clutter/cogl/gles/Makefile.am (libclutterinclude_HEADERS):
799 * clutter/cogl/gl/Makefile.am (libclutterinclude_HEADERS):
800 * clutter/cogl/common/Makefile.am
801 (libclutter_cogl_common_la_SOURCES): Move cogl-mesh.h into the
802 headers for libclutter so that it will get installed.
804 2008-11-12 Neil Roberts <neil@linux.intel.com>
806 Fix warnings in mesh tests
808 * tests/conform/test-mesh-mutability.c (on_paint):
809 * tests/conform/test-mesh-interleved.c (on_paint):
810 * tests/conform/test-mesh-contiguous.c (on_paint): Use g_usleep
813 * tests/conform/test-mesh-mutability.c (queue_redraw):
814 * tests/conform/test-mesh-interleved.c (queue_redraw):
815 * tests/conform/test-mesh-contiguous.c (queue_redraw): Added
816 missing return statement
818 * clutter/cogl/cogl-mesh.h: Add a declaration for
821 * clutter/cogl/common/cogl-mesh.c (cogl_mesh_submit): Move the
822 documentation to cogl-mesh.h to match the rest of the functions
824 2008-11-10 Robert Bragg <robert@linux.intel.com>
826 Bug 1164 - Implements the proposed Mesh API
828 * clutter/cogl/cogl-mesh.h
829 * clutter/cogl/cogl-types.h
830 * clutter/cogl/cogl.h.in
831 * clutter/cogl/common/Makefile.am
832 * clutter/cogl/common/cogl-mesh-private.h
833 * clutter/cogl/common/cogl-mesh.c
834 * clutter/cogl/gl/cogl-context.c
835 * clutter/cogl/gl/cogl-context.h
836 * clutter/cogl/gl/cogl-defines.h.in
837 * clutter/cogl/gl/cogl.c
838 * clutter/cogl/gles/cogl-context.c
839 * clutter/cogl/gles/cogl-context.h:
840 The Mesh API provides a means for submitting an extensible number of
841 per vertex attributes to OpenGL in a way that doesn't require format
842 conversions and so that the data can be mapped into the GPU (in vertex
843 buffer objects) for - hopefully - fast re-use.
845 There are a number of things we can potentially use this API for, but
846 right now this just provides a foundation to build on. Please read
847 the extensive list of TODO items in cogl-mesh.c for examples.
849 Please refer to the cogl-mesh section in the reference manual for
850 documentation of the API.
852 * tests/conform/Makefile.am
853 * tests/conform/test-conform-main.c
854 * tests/conform/test-mesh-contiguous.c
855 * tests/conform/test-mesh-interleved.c
856 * tests/conform/test-mesh-mutability.c:
857 Privides basic coverage testing for the mesh API.
859 2008-11-10 Robert Bragg <robert@linux.intel.com>
861 Bug 1164 - Implements the proposed Mesh API
863 * clutter/cogl/cogl-mesh.h
864 * clutter/cogl/cogl-types.h
865 * clutter/cogl/cogl.h.in
866 * clutter/cogl/common/Makefile.am
867 * clutter/cogl/common/cogl-mesh-private.h
868 * clutter/cogl/common/cogl-mesh.c
869 * clutter/cogl/gl/cogl-context.c
870 * clutter/cogl/gl/cogl-context.h
871 * clutter/cogl/gl/cogl-defines.h.in
872 * clutter/cogl/gl/cogl.c
873 * clutter/cogl/gles/cogl-context.c
874 * clutter/cogl/gles/cogl-context.h:
875 The Mesh API provides a means for submitting an extensible number of
876 per vertex attributes to OpenGL in a way that doesn't require format
877 conversions and so that the data can be mapped into the GPU (in vertex
878 buffer objects) for - hopefully - fast re-use.
880 There are a number of things we can potentially use this API for, but
881 right now this just provides a foundation to build on. Please read
882 the extensive list of TODO items in cogl-mesh.c for examples.
884 Please refer to the cogl-mesh section in the reference manual for
885 documentation of the API.
887 * tests/conform/Makefile.am
888 * tests/conform/test-conform-main.c
889 * tests/conform/test-mesh-contiguous.c
890 * tests/conform/test-mesh-interleved.c
891 * tests/conform/test-mesh-mutability.c:
892 Privides basic coverage testing for the mesh API.
894 2008-11-10 Robert Bragg <robert@linux.intel.com>
896 * tests/conform/ADDING_NEW_TESTS
897 * tests/conform/test-conform-common.c
898 * tests/conform/test-pick.c:
899 Instead of using clutter_stage_new /clutter_actor_destroy as a way to
900 avoid cascading side effects between unit tests, due to left over
901 actors, we now destroy all children of the default stage between
904 * tests/conform/wrapper.sh:
905 Adds a convenience note about how to run valgrind for an individual
908 2008-11-10 Neil Roberts <neil@linux.intel.com>
910 * tests/interactive/test-main.c (main): Allow more than two
911 arguments so that the remaining arguments can be passed to the
912 test. This is needed for test-behave for example which can take a
915 2008-11-10 Emmanuele Bassi <ebassi@linux.intel.com>
917 * clutter/clutter-texture.c: Remove an unused function.
919 2008-11-10 Emmanuele Bassi <ebassi@linux.intel.com>
921 * tests/conform/test-label-cache.c:
922 * tests/conform/test-pick.c:
923 * tests/conform/test-timeline.c: Show all the output messages only
924 if the test was done with the verbose flag turned on.
926 * tests/interactive/test-main.c: Do not use the (gpointer*) cast,
927 but use a temporary gpointer instead.
929 2008-11-10 Robert Bragg <robert@linux.intel.com>
931 * tests/conform/Makefile.am:
932 * tests/conform/wrapper.sh:
933 * tests/conform/test-conform-main.c:
934 * tests/conform/test-timeline.c:
935 Adds Neil's updates to test-timeline.c so it now works with the new
936 unit testing infrastructure.
938 Also some fixes to ensure wrappers get setup correctly for the
941 * tests/interactive/test-main.c:
942 cast the symbol return pointer as (gpointer *) to avoid warning
944 * tests/conform/test-pick.c:
945 g_assert that the test passes, instead of using exit()
947 * test/conform/ADDING_NEW_TESTS:
950 2008-11-08 Emmanuele Bassi <ebassi@linux.intel.com>
952 * tests/conform/Makefile.am:
953 * tests/conform/test-actor-invariants.c:
954 * tests/conform/test-conform-main.c: Move the actor invariants
955 unit to the conform section of the test suite.
957 * tests/interactive/Makefile.am:
958 * tests/interactive/test-entry-auto.c:
959 * tests/interactive/test-invariants.c: Remove the entry-auto
960 and invariants test, since those two belong to the conform
963 2008-11-07 Robert Bragg <robert@linux.intel.com>
965 Bug 1162 - Re-works the tests/ to use the glib-2.16 unit testing
970 The tests have been reorganised into different categories: conformance,
971 interactive and micro benchmarks.
972 - conformance tests can be run as part of automated tests
973 - interactive tests are basically all the existing tests
974 - micro benchmarks focus on a single performance metric
976 I converted the timeline tests to conformance tests and also added some
977 tests from Neil Roberts and Ebassi.
979 Note: currently only the conformance tests use the glib test APIs,
980 though the micro benchmarks should too.
982 The other change is to make the unit tests link into monolithic binaries
983 which makes the build time for unit tests considerably faster. To deal
984 with the extra complexity this adds to debugging individual tests I
985 have added some sugar to the makefiles so all the tests can be run
986 directly via a symlink and when an individual test is run this way,
987 then a note is printed to the terminal explaining exactly how that test
988 may be debugged using GDB.
990 There is a convenience make rule: 'make test-report', that will run all
991 the conformance tests and hopefully even open the results in your web
992 browser. It skips some of the slower timeline tests, but you can run
993 those using 'make full-report'
995 2008-11-07 Emmanuele Bassi <ebassi@linux.intel.com>
997 * clutter/clutter-media.c: Improve documentation of the
998 ClutterMedia interface.
1000 2008-11-07 Matthew Allum <mallum@linux.intel.com>
1002 Bug 1238 - [PATCH] Pack bitfields in ClutterTexturePrivate
1004 * clutter/clutter-texture.c:
1006 Using 'guint my_field : 1' for booleans to save space only
1007 makes sense if you group all such fields together. Fix
1008 grouping for ClutterTexturePrivate. Thanks to Owen Taylor for
1011 2008-11-07 Matthew Allum <mallum@linux.intel.com>
1013 Bug 1237 - clutter_texture_set_filter_quality calls
1014 clutter_texture_[un]realize
1016 * clutter/clutter-texture.c: (clutter_texture_set_filter_quality):
1017 Call clutter_actor_[un]realize and keep visibility state
1019 2008-11-07 Matthew Allum <mallum@linux.intel.com>
1021 * clutter/clutter-actor.c:
1022 * clutter/clutter-actor.h:
1023 * clutter/clutter-clone-texture.c:
1024 * clutter/clutter-private.h:
1025 * clutter/clutter-texture.c:
1026 * clutter/x11/clutter-x11-texture-pixmap.c:
1028 Attempt to lower overhead of updating TFP's (particularly mipmaped).
1029 Compresses mipmap updates only for visible TFPs.
1030 Avoiding updates for non visible TFP's whilst keeping visible
1033 2008-11-06 Neil Roberts <neil@linux.intel.com>
1035 Bug 1230 - Pick fails on low precision color buffers
1037 * clutter/clutter-main.c (_clutter_id_to_color): When using fuzzy
1038 picking to pick a color for an actor, it would previously set the
1039 fuzzy bit and then all but the most significant of the remaining
1040 unused bits. This meant that for 16-bit displays it would end up
1041 with a strange pattern for the unused bits like 1011 which could
1042 cause it to round up. Now it just sets all but the most
1043 significant of all of the unused bits giving a pattern like
1044 0111. Thanks to Guy Zadickario for the patch.
1046 2008-11-06 Neil Roberts <neil@linux.intel.com>
1048 * clutter/cogl/gles/cogl.c (cogl_perspective):
1049 * clutter/cogl/common/cogl-fixed.c (cogl_fixed_sin)
1050 (cogl_angle_sin, cogl_angle_tan, cogl_fixed_sqrt): Replaced uses
1051 of 1 + ~x with just -x which is equivalent and easier to
1054 2008-11-06 Emmanuele Bassi <ebassi@linux.intel.com>
1056 Bug 1233 - CLUTTER_ALPHA_SINE_INC is broken in trunk
1058 * clutter/clutter-alpha.c: Fix a rollover in the sine functions.
1060 2008-11-05 Neil Roberts <neil@linux.intel.com>
1062 * clutter/clutter-color.c (clutter_color_new): Remove CLAMP macros
1063 around the component parameters because they are guint8 anyway so
1064 the CLAMP is redundant and it causes a warning.
1066 2008-11-04 Thomas Wood <thomas@linux.intel.com>
1068 * clutter/clutter-color.c: Update ClutterColor documentation as
1069 changes have been backported to 0.8.4.
1071 2008-11-04 Emmanuele Bassi <ebassi@linux.intel.com>
1073 * clutter/clutter-script.c: Document the "is-default" member of
1074 a ClutterStage definition.
1076 2008-11-04 Neil Roberts <neil@linux.intel.com>
1078 * clutter/cogl/gl/cogl.c (cogl_perspective): Use the accurate
1079 64-bit multiplication macro instead of COGL_FIXED_FAST_DIV for
1080 calculating xmax as was done previously. This fixes
1081 test-perspective and other tests that had a gone a bit skewiff.
1083 2008-11-04 Neil Roberts <neil@linux.intel.com>
1085 Bug 1181 - In Score, timelines, appended at markers, are also
1088 * clutter/clutter-score.c (start_children_entries): Use the name
1089 of the marker to start as the data parameter and only start child
1090 timelines that have the same marker name. Previously the
1091 ClutterScore would just start all child entries when a marker was
1092 reached or the timeline completed regardless of whether they were
1093 added with a marker or not. Thanks to Mihail Naydenov for
1096 2008-11-03 Emmanuele Bassi <ebassi@linux.intel.com>
1098 * clutter/cogl/gl/Makefile.am: Whitespace fixes.
1100 * clutter/cogl/gles/Makefile.am: Put back a missing backslash
1101 that broke the GLES build.
1103 2008-11-03 Emmanuele Bassi <ebassi@linux.intel.com>
1105 Bug 1231 - Build fails in gles flavour in revision 3442
1107 * clutter/cogl/gles/cogl-context.h: Fix remaining use of
1108 ClutterFixed over CoglFixed. (Michael Boccara)
1110 2008-11-03 Neil Roberts <neil@linux.intel.com>
1112 Bug 1207 - Timelines sometime miss markers
1114 * clutter/clutter-timeline.c (timeline_timeout_func): Move the
1115 code for firing the new-frame and marker-reached signals into a
1116 separate static function so that it can also be called when the
1117 last frame is reached. Also fix an issue where the frame numbers
1118 were changed in the wrong direction when detecting missed markers
1119 in a reversed timeline. Based on a patch by Michael Boccara.
1121 * tests/test-timeline.c: Now tries to automatically verify whether
1122 the test worked by keeping track of all the signal emissions. The
1123 timelines are run a second time with an extra timeout that causes
1124 delays to simulate skipped frames.
1126 2008-10-31 Emmanuele Bassi <ebassi@linux.intel.com>
1128 * clutter/pango/cogl-pango-fontmap.c:
1129 * clutter/pango/cogl-pango-render.c: Whitespace fixes and code
1130 duplication removal. Plus, start documenting the CoglPango API.
1132 2008-10-31 Matthew Allum <mallum@openedhand.com>
1134 * clutter/clutter-texture.c: (clutter_texture_set_filter_quality),
1135 (clutter_texture_get_filter_quality):
1136 Fix up some logic, typos.
1138 * clutter/glx/clutter-glx-texture-pixmap.c:
1139 Improve support for mipmaped TFP textures.
1141 2008-10-31 Emmanuele Bassi <ebassi@linux.intel.com>
1143 Bug 1200 - Crash with invalid DISPLAY
1145 * clutter/clutter-main.c: Use the ClutterBackend wrapper API
1146 instead of directly checking the class structure.
1148 * clutter/glx/clutter-backend-glx.c: Return the correct value
1151 * clutter/x11/clutter-backend-x11.c: Bail out if XOpenDisplay()
1154 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
1156 * clutter/cogl/cogl-color.h:
1157 * clutter/cogl/cogl-fixed.h:
1158 * clutter/cogl/cogl-offscreen.h:
1159 * clutter/cogl/cogl-path.h:
1160 * clutter/cogl/cogl-shader.h:
1161 * clutter/cogl/cogl-texture.h:
1162 * clutter/cogl/cogl-types.h: Add copyright and licensing
1163 notice to the newly added files.
1165 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
1167 Bug 1219 - Clean up cogl.h
1169 * clutter/cogl/cogl.h.in:
1170 * clutter/cogl/cogl-offscreen.h:
1171 * clutter/cogl/cogl-path.h:
1172 * clutter/cogl/cogl-shader.h:
1173 * clutter/cogl/cogl-texture.h:
1174 * clutter/cogl/cogl-types.h: Split up the massive cogl.h file
1175 into sub-header for each section of the API.
1177 * clutter/cogl/gl/*:
1178 * clutter/cogl/gles/*: Update the GL and GLES implementations
1179 of COGL to cope with the new header structure.
1181 * doc/reference/cogl/Makefile.am: Fix symbol retrieval.
1183 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
1185 Bug 1215 - Move the Pango renderer to the public API
1187 * clutter/pango/*: Rename PangoClutter -> CoglPango.
1189 * clutter/Makefile.am:
1190 * clutter/clutter-backend.c:
1191 * clutter/clutter-entry.c:
1192 * clutter/clutter-label.c:
1193 * clutter/clutter-main.[ch]:
1194 * clutter/clutter-private.h: Update the users of the Pango
1197 * README: Update release notes.
1199 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
1201 Bug 1212 - Allow only a single include file for Clutter
1203 * clutter/*.h: Only allow including clutter.h in third
1206 * clutter/cogl/cogl-color.h:
1207 * clutter/cogl/cogl-fixed.h:
1208 * clutter/cogl/cogl.h.in: Only allow including cogl.h in
1211 * clutter/cogl/common/Makefile.am:
1212 * clutter/cogl/gl/Makefile.am:
1213 * clutter/cogl/gles/Makefile.am:
1214 * clutter/eglnative/Makefile.am:
1215 * clutter/eglx/Makefile.am:
1216 * clutter/fruity/Makefile.am:
1217 * clutter/glx/Makefile.am:
1218 * clutter/glx/clutter-glx.h:
1219 * clutter/osx/Makefile.am:
1220 * clutter/pango/Makefile.am:
1221 * clutter/sdl/Makefile.am:
1222 * clutter/win32/Makefile.am:
1223 * clutter/x11/Makefile.am: Fix build environment.
1225 * clutter/x11/clutter-x11-texture-pixmap.h:
1226 * clutter/x11/clutter-x11.h: Fix inclusion rules.
1228 * tests/test-pixmap.c: Fix inclusion of GdkPixbuf header.
1230 * README: Update release notes.
1232 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
1234 Bug 1211 - Drop ClutterFeatureFlags usage from COGL
1236 * clutter/cogl/cogl.h.in:
1237 * clutter/cogl/gl/cogl.c:
1238 * clutter/cogl/gles/cogl.c: Do not use ClutterFeatureFlags
1239 when CoglFeatureFlags will do. This removes the last usage
1240 of Clutter API inside COGL.
1242 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
1244 Bug 1210 - Add CoglColor API
1246 * clutter/cogl/cogl-color.h:
1247 * clutter/cogl/cogl.h.in:
1248 * clutter/cogl/common/Makefile.am:
1249 * clutter/cogl/common/cogl-color.c:
1250 * clutter/cogl/gl/Makefile.am:
1251 * clutter/cogl/gl/cogl.c:
1252 * clutter/cogl/gles/Makefile.am:
1253 * clutter/cogl/gles/cogl-texture.c:
1254 * clutter/cogl/gles/cogl.c: Add a new color-type, to be used by
1255 COGL. CoglColor is optimized to allow the minimum amount of
1256 conversions possible for both GL and GLES implementations.
1258 * clutter/clutter-actor.c:
1259 * clutter/clutter-clone-texture.c:
1260 * clutter/clutter-entry.c:
1261 * clutter/clutter-main.c:
1262 * clutter/clutter-rectangle.c:
1263 * clutter/clutter-stage.c:
1264 * clutter/clutter-texture.c: Use CoglColor when needed.
1266 * clutter/pango/pangoclutter-render.c: Use CoglColor when needed.
1268 * doc/reference/cogl/cogl-docs.sgml:
1269 * doc/reference/cogl/cogl-sections.txt: Update the documentation.
1271 * tests/test-cogl-offscreen.c:
1272 * tests/test-cogl-primitives.c:
1273 * tests/test-cogl-tex-convert.c:
1274 * tests/test-cogl-tex-foreign.c:
1275 * tests/test-cogl-tex-getset.c:
1276 * tests/test-cogl-tex-polygon.c:
1277 * tests/test-cogl-tex-tile.c:
1278 * tests/test-paint-wrapper.c: Update the tests.
1280 * README: Update release notes.
1282 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
1284 Bug 1209 - Move fixed point API in COGL
1286 * clutter/cogl/cogl-fixed.h:
1287 * clutter/cogl/cogl.h.in:
1288 * clutter/cogl/common/Makefile.am:
1289 * clutter/cogl/common/cogl-fixed.c: Add fixed point API, modelled
1290 after the ClutterFixed. The CoglFixed API supercedes the ClutterFixed
1291 one and avoids the dependency of COGL on Clutter's own API.
1293 * clutter/cogl/common/cogl-clip-stack.c:
1294 * clutter/cogl/common/cogl-primitives.c:
1295 * clutter/cogl/common/cogl-primitives.h: Update internal usage of
1296 ClutterFixed to CoglFixed.
1298 * clutter/cogl/gl/Makefile.am:
1299 * clutter/cogl/gl/cogl-primitives.c:
1300 * clutter/cogl/gl/cogl-texture.c:
1301 * clutter/cogl/gl/cogl.c: Ditto, in the GL implementation of the
1304 * clutter/cogl/gles/Makefile.am:
1305 * clutter/cogl/gles/cogl-fbo.c:
1306 * clutter/cogl/gles/cogl-gles2-wrapper.c:
1307 * clutter/cogl/gles/cogl-primitives.c:
1308 * clutter/cogl/gles/cogl-texture.c:
1309 * clutter/cogl/gles/cogl.c: Ditto, in the GLES implementation of
1312 * clutter/pango/pangoclutter-glyph-cache.c:
1313 * clutter/pango/pangoclutter-glyph-cache.h: Ditto, in the Pango
1314 renderer glyphs cache.
1316 * clutter/clutter-fixed.c:
1317 * clutter/clutter-fixed.h: ClutterFixed and related API becomes
1318 a simple transition API for bindings and public Clutter API.
1320 * clutter/clutter-actor.c:
1321 * clutter/clutter-alpha.c:
1322 * clutter/clutter-backend.c:
1323 * clutter/clutter-behaviour-depth.c:
1324 * clutter/clutter-behaviour-ellipse.c:
1325 * clutter/clutter-behaviour-path.c:
1326 * clutter/clutter-behaviour-rotate.c:
1327 * clutter/clutter-behaviour-scale.c:
1328 * clutter/clutter-clone-texture.c:
1329 * clutter/clutter-color.c:
1330 * clutter/clutter-entry.c:
1331 * clutter/clutter-stage.c:
1332 * clutter/clutter-texture.c:
1333 * clutter/clutter-timeline.c:
1334 * clutter/clutter-units.h: Move from the internal usage of
1335 ClutterFixed to CoglFixed.
1337 * doc/reference/clutter/clutter-sections.txt:
1338 * doc/reference/cogl/cogl-docs.sgml:
1339 * doc/reference/cogl/cogl-sections.txt: Update the documentation.
1341 * tests/test-cogl-tex-tile.c:
1342 * tests/test-project.c: Fix tests after the API change
1344 * README: Add release notes.
1346 2008-10-29 Neil Roberts <neil@linux.intel.com>
1348 Bug 1074 - FBOs on GLES
1350 * clutter/cogl/gles/cogl-fbo.c: Copy the code from gl/cogl-fbo but
1351 use the API calls directly instead of loading an extension because
1352 it is part of the core in GLES 2.
1354 * clutter/cogl/gles/cogl.c (_cogl_features_init): Report
1355 COGL_FEATURE_OFFSCREEN.
1357 * clutter/cogl/gles/cogl-fbo.h (CoglFbo): Add gl_stencil_handle.
1359 * clutter/cogl/gles/cogl-context.h (CoglContext): Add
1362 * tests/test-fbo.c (make_shader): Conditionally use the GLES 2
1363 names of the shader variables
1365 2008-10-29 Neil Roberts <neil@linux.intel.com>
1367 Bug 1206 - Picking disabled dithering
1369 * clutter/clutter-main.c (_clutter_do_pick): After picking is
1370 finished, restore the state of glEnable (GL_DITHER). Otherwise it
1371 will cause the scene to look different after the first pick on low
1372 depth displays. (Thanks to Michael Boccara for the patch)
1374 2008-10-28 Thomas Wood <thomas@linux.intel.com>
1376 * clutter/clutter-color.c (param_color_set_default): Set the no copy
1377 flag when setting the default param spec value to prevent invalid
1380 2008-10-27 Neil Roberts <neil@linux.intel.com>
1382 Bug 1189 - Backface culling
1384 * clutter/cogl/gl/cogl-texture.c (cogl_texture_polygon)
1385 (_cogl_texture_quad_sw, _cogl_texture_quad_hw):
1386 * clutter/cogl/gles/cogl-texture.c (cogl_texture_polygon)
1387 (_cogl_texture_quad_sw, _cogl_texture_quad_hw): Enable backface
1388 culling in GL if it is requested.
1390 * clutter/cogl/gles/cogl-texture.c (_cogl_texture_quad_sw)
1391 (_cogl_texture_quad_hw):
1392 * clutter/cogl/gl/cogl-texture.c (_cogl_texture_quad_sw)
1393 (_cogl_texture_quad_hw): Reorder the
1394 vertices so that they are counter-clockwise.
1396 * clutter/cogl/gles/cogl-context.h (CoglContext):
1397 * clutter/cogl/gl/cogl-context.h (CoglContext): Added a flag to
1398 store whether backface culling is currently enabled.
1400 * clutter/cogl/gles/cogl.c (cogl_enable_backface_culling):
1401 * clutter/cogl/gl/cogl.c (cogl_enable_backface_culling): New
1404 * doc/reference/cogl/cogl-sections.txt: Add
1405 cogl_enable_backface_culling
1407 2008-10-27 Neil Roberts <neil@linux.intel.com>
1409 Bug 1196 - Texture border drawing problems
1411 * clutter/cogl/gl/cogl-texture.c (_cogl_texture_upload_subregion_to_gl)
1412 (_cogl_texture_upload_to_gl):
1414 * clutter/cogl/gles/cogl-texture.c (_cogl_texture_upload_to_gl)
1415 (_cogl_texture_upload_subregion_to_gl):
1417 When uploading data to a sliced texture, fill the waste pixels
1418 with copies of the edge of the real texture data. Otherwise the
1419 value of the waste pixels are undefined so it will show artifacts
1420 when the texture is scaled with GL_LINEAR and the pixels are
1423 2008-10-22 Thomas Wood <thomas@linux.intel.com>
1425 * tests/test-actors.c: Don't adjust the radius based on the number of
1428 2008-10-21 Emmanuele Bassi <ebassi@linux.intel.com>
1430 * clutter/clutter-color.[ch] (clutter_value_set_color): Constify
1431 colors and values where needed.
1433 2008-10-21 Emmanuele Bassi <ebassi@linux.intel.com>
1435 Bug 1197 - Missing const for clutter_init_with_args *
1437 * clutter/clutter-main.[ch] (clutter_init_with_args): Constify
1438 the string parameters. (Owen Taylor)
1440 2008-10-20 Emmanuele Bassi <ebassi@linux.intel.com>
1442 * configure.ac: Use gmodule-no-export-2.0, not gmodule-2.0,
1443 to avoid breaking the symbol hiding. (thanks to Ross Burton
1444 and Laurent Bigonville)
1446 2008-10-20 Neil Roberts <neil@linux.intel.com>
1448 Bug 1043 - COGL calls glTexSubImage2D() with out-of-bounds
1451 * clutter/cogl/gl/cogl-texture.c
1452 (_cogl_texture_upload_subregion_to_gl): When iterating over the
1453 slices, discard ones that don't intersect immediatly otherwise it
1454 will call glTexSubImage2D with a negative width/height and then
1455 move the source position incorrectly. Thanks to Gwenole
1458 2008-10-20 Emmanuele Bassi <ebassi@linux.intel.com>
1460 * clutter/clutter-color.h: Declare clutter_color_new() in the
1463 2008-10-20 Neil Roberts <neil@linux.intel.com>
1465 Bug 1195 - ClutterBehaviourBspline only works for very short paths
1467 * clutter/clutter-behaviour-bspline.c: Changed the CBZ_T_POW3 and
1468 CBZ_T_MUL functions so that they preserve more of the least
1469 significant bits. This fixes some of the jaggy behaviour with
1472 2008-10-17 Thomas Wood <thomas@linux.intel.com>
1474 reviewed by: Emmanuele Bassi <ebassi@linux.intel.com>
1476 * clutter/clutter-color.[ch]: Add GParamSpec and GValue integration
1477 for ClutterColor. With ClutterParamSpecColor it is possible to define
1478 color properties; with the GValue integration it's possible to
1479 automatically transform strings into colors and vice versa.
1481 (clutter_color_free): Allow NULL parameter to match other boxed
1484 (clutter_color_new): Add a constructor for the ClutterColor boxed
1485 type, mostly for bindings.
1487 2008-10-17 Emmanuele Bassi <ebassi@linux.intel.com>
1489 * clutter/clutter-color.c (clutter_color_parse): Add checks
1490 for the arguments, to avoid trying to parse NULL strings.
1492 2008-10-16 Emmanuele Bassi <ebassi@linux.intel.com>
1494 * clutter/clutter-container.[ch]: Add checks to the Container
1495 interface invocation methods, to avoid crashing or corrupting
1496 the stack when an actor does not implement every virtual
1497 function of the Container interface vtable. GObject allows this
1498 to happen so we must handle the case gracefully. This also means
1499 that we can classify some virtual function as mandatory (as is
1500 the case for ::add, ::remove and ::foreach) and some other
1503 2008-10-08 Emmanuele Bassi <ebassi@linux.intel.com>
1505 * tests/test-depth.c (raise_top), (main): Fix a shadowing
1506 with raise() from signal.h.
1508 2008-10-01 Øyvind Kolås <pippin@linux.intel.com>
1510 Bug 1108 - Enter/Leave events logics wrt. skipped motion events
1512 Handle dropped motion events when computing crossing events,
1513 based on a patch from Gwenole Beauchesne.
1515 * clutter/clutter-main.c: (clutter_event_get_device): internal static
1517 (clutter_do_event): generate enter/leave events for all pointer
1519 (generate_enter_leave_events): modified enter/leave events generator
1520 to work for all pointer event types. Enter/leave events are now
1521 delivered before the motion/button event that caused the crossing to
1523 * clutter/clutter-event.c: (clutter_event_copy), (clutter_event_free):
1524 removed reference counting logic that is not needed when the crossing
1525 events are directly delivered.
1527 2008-09-29 Emmanuele Bassi <ebassi@linux.intel.com>
1529 * configure.ac: Post branch bump to 0.9.0
1531 2008-09-25 Emmanuele Bassi <ebassi@linux.intel.com>
1533 * configure.ac: Post release bump to 0.8.3
1535 ======== Release 0.8.2 ========================================================
1537 2008-09-25 Emmanuele Bassi <ebassi@linux.intel.com>
1541 * NEWS: Release 0.8.2
1543 2008-09-25 Emmanuele Bassi <ebassi@linux.intel.com>
1545 * clutter/clutter-event.h: Fix missing documentation.
1547 2008-09-24 Emmanuele Bassi <ebassi@linux.intel.com>
1549 Bug 1130 - CLUTTER_MOTION is not emitted when time goes backwards.
1551 * clutter/clutter-main.c (clutter_do_event): Check for time
1552 rollbacks inside the motion event throttling. (Pierce Liu)
1554 2008-09-23 Emmanuele Bassi <ebassi@linux.intel.com>
1556 * clutter/clutter-timeout-pool.c: Reword previous commit.
1558 2008-09-23 Emmanuele Bassi <ebassi@linux.intel.com>
1560 * clutter/clutter-timeout-pool.c:
1561 (clutter_timeout_pool_new): Fix previous commit: g_source_unref()
1562 is not needed. (Thanks to Neil Roberts)
1564 2008-09-23 Emmanuele Bassi <ebassi@linux.intel.com>
1566 Bug 1154 - clutter_timeout_pool_new() documentation doesn't say
1569 * clutter/clutter-timeout-pool.c: Update the documentation to
1570 note that you must use g_source_unref() to free the timeout
1571 pool. (Murray Cumming)
1573 2008-09-23 Emmanuele Bassi <ebassi@linux.intel.com>
1575 Bug 1124 - Clutter causes an additional size request in each
1578 * clutter/clutter-actor.c:
1579 (clutter_actor_store_old_geometry): Store the allocation instead
1580 of causing a new size-request cycle. (Johan Bilien)
1582 2008-09-23 Emmanuele Bassi <ebassi@linux.intel.com>
1584 Bug 1125 - Save an extra pango_layout_get_size in many cases
1586 * clutter/clutter-label.c:
1587 (clutter_label_create_layout_no_cache): Add a simple check
1588 before calling pango_layout_get_size(). (Johan Bilien)
1590 2008-09-23 Emmanuele Bassi <ebassi@linux.intel.com>
1592 * clutter/clutter-alpha.c:
1593 (clutter_alpha_get_alpha): Do not return the cached value but
1594 just compute the current alpha value. The use case is pretty
1595 much straightforward: stop a timeline, advance it, and retrieve
1596 the alpha value before starting the timeline to adjust an
1597 animation dependent on the alpha. Caching the alpha value is
1598 not needed because the behaviours will always pass the alpha
1599 value inside the ::alpha-notify virtual function anyway, so
1600 there is no need for them to call clutter_alpha_get_alpha().
1602 This change makes it also possible to reliably unit-test
1605 (timeline_new_frame_cb): Call clutter_alpha_get_alpha().
1607 2008-09-23 Tomas Frydrych <tf@linux.intel.com>
1609 * clutter/clutter-main.c:
1610 * clutter/clutter-main.h:
1611 * clutter/clutter-private.h:
1612 * clutter/x11/clutter-backend-x11.c:
1613 (clutter_get_option_group_without_init):
1614 Function to obtain clutter option group without opening display
1615 (for use with foreign display and gtk_clutter_init). Bug 1033.
1617 Stripped trailing whitespace.
1619 2008-09-22 Neil Roberts <neil@linux.intel.com>
1621 Bug 856 - Teardown sequence is borked
1623 * clutter/clutter-main.c: Don't free the ClutterMainContext so
1624 that the main loop can be restarted.
1626 * clutter/eglx/clutter-backend-egl.c:
1627 * clutter/eglnative/clutter-backend-egl.c: Register an atexit
1628 handler which disposes the backend object so that we are still
1629 guaranteed to call eglTerminate on GLES.
1631 2008-09-22 Neil Roberts <neil@linux.intel.com>
1633 * tests/test-unproject.c (on_event):
1634 * tests/test-project.c (on_event): Use a return value for the
1635 'event' signal handler, otherwise it might accidentally return
1636 TRUE for unhandled events and you won't be able to close the
1639 2008-09-19 Emmanuele Bassi <ebassi@linux.intel.com>
1641 Bug 1033 - Manually parsing command line options prevents
1642 initializing clutter
1644 * clutter/clutter-main.c:
1645 (post_parse_hook), (clutter_init_with_args),
1646 (clutter_parse_args), (clutter_init): Move the initialization
1647 of Clutter at the end of the post-parse hook of Clutter's
1648 GOptionGroup. Clutter must be initialized at the end of the
1651 2008-09-19 Emmanuele Bassi <ebassi@linux.intel.com>
1653 * clutter/clutter-main.c: Properly document the
1654 clutter_get_option_group() function and the invariant that
1655 after parsing Clutter's option group the library will be
1656 initialized. (Thanks to Tomas Frydrych for pointing this
1659 2008-09-19 Emmanuele Bassi <ebassi@linux.intel.com>
1661 * clutter/x11/clutter-backend-x11.c: Properly document the
1662 usage of clutter_x11_set_display().
1664 * clutter/x11/clutter-x11.h: clutter_x11_set_display() is
1665 public API and should be declared in the header we install.
1667 2008-09-18 Neil Roberts <neil@linux.intel.com>
1669 Bug 1048 - SIGFPE in cogl_texture_set_region() with nvidia
1671 * clutter/cogl/gl/cogl-texture.c (cogl_texture_set_region):
1672 * clutter/cogl/gles/cogl-texture.c (cogl_texture_set_region):
1673 Don't attempt to upload any data if the width or height of the
1674 subregion is zero. Thanks to Gwenole Beauchesne.
1676 2008-09-18 Neil Roberts <neil@linux.intel.com>
1678 Bug 1044 - cogl_get_viewport error
1680 * clutter/cogl/gles/cogl.c (cogl_get_viewport): Use glGetIntegerv
1681 instead of glGetFixedv to read the viewport because the latter
1682 converts incorrectly on some hardware.
1684 2008-09-18 Neil Roberts <neil@linux.intel.com>
1686 Bug 1080 - clutter_stage_read_pixels has upside-down y coordinate
1688 * clutter/clutter-stage.c (clutter_stage_read_pixels): Use
1689 OpenGL's coordinate system for the arguments to glReadPixels (so
1690 that y zero is the bottom of the window). Use clutter_redraw
1691 instead of clutter_stage_paint to ensure the right GL context is
1692 selected. Set some of the glPixelStore parameters that might have
1693 been changed by Cogl.
1695 * tests/test-stage-read-pixels.c: Replace with a different test
1696 that gets a sub-region of the stage around the cursor.
1698 2008-09-17 Neil Roberts <neil@linux.intel.com>
1700 Bug 1145 - Flicker on resize the window
1702 * clutter/glx/clutter-stage-glx.c (clutter_stage_glx_realize):
1703 Don't set a backing pixel on the X window. Otherwise when the
1704 window resizes it will flicker when X paints the background
1705 immediatly before Clutter repaints the whole stage.
1707 2008-09-17 Neil Roberts <neil@linux.intel.com>
1709 * clutter/clutter-types.h: Swap left and right in the
1710 documentation for ClutterGravity.
1712 2008-09-17 Neil Roberts <neil@linux.intel.com>
1714 Bug 1121 - Setting anchor point doesn't work if set too early
1716 * clutter/clutter-actor.c
1717 (clutter_actor_set_anchor_point_from_gravity)
1718 (clutter_actor_move_anchor_point_from_gravity): Add documentation
1719 to make it clear that the anchor point won't move when the actor
1722 2008-09-16 Neil Roberts <neil@linux.intel.com>
1724 Bug 1100 - WM_SIZE not handled correctly, user_resize and
1725 window_style correction.
1727 * clutter/win32/clutter-stage-win32.c (get_window_style): Remove
1728 the WS_MAXIMIZEBOX style if the stage isn't resizable.
1729 (clutter_stage_win32_set_user_resize): Queue a redraw of the
1730 window frame when the user_resize property is changed.
1732 * clutter/win32/clutter-event-win32.c (message_translate): Don't
1733 update the size of the stage when handling WM_SIZE messages that
1734 result from the stage being minimized. Thanks to Roman Yazmin.
1736 2008-09-16 Tomas Frydrych <tf@linux.intel.com>
1738 * clutter/glx/clutter-glx-texture-pixmap.c:
1739 * clutter/x11/clutter-x11-texture-pixmap.c:
1740 TFP resyncing on MapNotify/ConfigureNotify (bug 1020; patch by
1741 Andy Wingo <wingo@pobox.com>).
1743 2008-09-15 Øyvind Kolås <pippin@linux.intel.com>
1745 * clutter/clutter-main.c: amended typo in gtk-doc.
1747 2008-09-12 Neil Roberts <neil@linux.intel.com>
1749 Bug 1034 - Picking doesn't work on Eee PC
1751 * clutter/clutter-main.c (_clutter_id_to_color): When choosing a
1752 pick color, set all but the most significant of the unused
1753 bits. This should make make it more likely that the GL
1754 implementation will round down to the right value.
1756 * tests/test-pick.c: Test case for picking. It creates 192 actors
1757 at known positions and stores their gids. It then calls
1758 clutter_stage_get_actor_at_pos with each position to check that
1759 the right gid is returned.
1761 * tests/Makefile.am (noinst_PROGRAMS): Add test-pick
1763 2008-09-12 Neil Roberts <neil@linux.intel.com>
1765 Bug 1010 - ClutterLabel does not update the layout (again)
1767 * clutter/clutter-label.c: Bring back layout caching. This time it
1768 will cache up to three different layouts. The width for which each
1769 layout was generated is stored so that if the same width is
1770 requested again it can use the cached version. If no cached
1771 version is available it will try to replace the oldest
1772 layout. 'Age' is determined by a counter which is incremented
1773 every time a layout is created. The cache is cleared after any
1774 property changes that might affect the layout.
1775 (struct _ClutterLabelPrivate): Removed extents_width,
1776 extents_height and context because they weren't used anywhere.
1778 * tests/test-label-cache.c: Add a test which checks whether the
1779 label is using a different layout when properties are
1780 changed. Also compares the extents of the label's layout with an
1781 independent layout and fails if they aren't the same.
1783 * tests/Makefile.am (noinst_PROGRAMS): Add test-label-cache
1785 2008-09-10 Neil Roberts <neil@o-hand.com>
1787 Bug 1137 - Setting the anchor point does not trigger a re-paint
1789 * clutter/clutter-actor.c (clutter_actor_set_property): When
1790 changing the anchor point properties, use set_anchor_pointu
1791 instead of changing the value directly so that a redraw will be
1793 (clutter_actor_set_anchor_pointu): Queue a redraw when the anchor
1794 point is changed. Thanks to Johan Bilien.
1796 2008-08-27 Emmanuele Bassi <ebassi@openedhand.com>
1798 Bug 1082 - Texture bitmap is destroyed in wrong way
1800 * clutter/cogl/common/cogl-bitmap-pixbuf.c:
1801 (_cogl_bitmap_from_file): Make a copy of the pixbuf data in
1802 the internal image loader so that we can keep working under
1803 the assumption that we are using the GLib memory allocation
1804 and deallocation functions.
1806 2008-08-27 Emmanuele Bassi <ebassi@openedhand.com>
1808 Bug 1099 - No ClutterScript API to get a list of IDs in a given file
1810 * clutter/clutter-script.[ch]: Add clutter_script_list_objects(),
1811 a function for retrieving all the objects built by a ClutterScript
1812 instance. (Based on a patch by Noah Gibbs)
1814 2008-08-26 Emmanuele Bassi <ebassi@openedhand.com>
1816 Bug 1090 - Label somtimes returns natural_width < min_width
1818 * clutter/clutter-label.c:
1819 (clutter_label_get_preferred_width): Check that the width of the
1820 layout is always greater than 0. (Johan Bilien)
1822 2008-08-19 Neil Roberts <neil@o-hand.com>
1824 Bug 1103 - Two typos in clutter documentation
1826 * doc/reference/clutter/subclassing-ClutterActor.xml: Update the
1827 custom actor example since the Cogl API was changed to namespace
1828 all of the path related functions in cogl_path_*. Thanks to Nati
1831 * clutter/clutter-score.c: Add missing parameter in example of
1832 calling clutter_score_start().
1834 2008-08-18 Neil Roberts <neil@o-hand.com>
1836 Bug 1085 - Cursor is in wrong position on ClutterEntry if set
1839 * clutter/clutter-entry.c (clutter_entry_paint): When calculating
1840 the position to draw the cursor at, take into account the
1841 alignment of the text. Queue a redraw when the x-align property is
1844 2008-08-07 Neil Roberts <neil@o-hand.com>
1846 Bug 1091 - WM_MOUSEWHEEL (scroll-event) not handled correctlly
1848 * clutter/win32/clutter-event-win32.c (message_translate): The
1849 coordinates in a WM_MOUSEWEEL message are given relative to the
1850 screen so they need to be converted to client coordinates before
1851 use. Thanks to Roman Yazmin.
1853 2008-08-06 Emmanuele Bassi <ebassi@openedhand.com>
1855 * clutter/clutter-child-meta.c:
1856 (clutter_child_meta_set_property),
1857 (clutter_child_meta_class_init): Make the :container and
1858 :actor properties of ChildMeta construct-only, to allow
1859 bindings to actually use ChildMeta without abusing the API.
1861 * clutter/clutter-container.c (create_child_meta): Instead of
1862 setting the members of the ChildMeta structure, use the
1863 constructor properties.
1865 2008-08-04 Emmanuele Bassi <ebassi@openedhand.com>
1867 * clutter/clutter-keysyms.h: Resync with keysymdef.h inside Xorg.
1869 2008-08-04 Emmanuele Bassi <ebassi@openedhand.com>
1871 * clutter/clutter-script.c:
1872 (clutter_script_default_connect): Improve wording and debug
1873 messages in the default autoconnection for signal handlers.
1875 2008-08-04 Emmanuele Bassi <ebassi@openedhand.com>
1877 * clutter/clutter-script-parser.c:
1878 * clutter/clutter-script-private.h: Clean up the code; add a
1879 conversion function for reading a ClutterColor out of a
1880 JSON object or array definition.
1882 * clutter/clutter-script.c: Clean up the code; document properly
1883 how we translate from type name to type function.
1885 2008-08-04 Emmanuele Bassi <ebassi@openedhand.com>
1887 * clutter/clutter-main.c: Rework and improve the documentation
1888 of the thread-safe timeout and idle source installer functions.
1890 2008-08-01 Neil Roberts <neil@o-hand.com>
1892 Bug 945 - Clipping+fbo cloning bugs
1894 * clutter/cogl/gl/cogl.c:
1895 * clutter/cogl/gles/cogl.c:
1896 * clutter/cogl/cogl.h.in: Add cogl_clip_stack_save,
1897 cogl_clip_stack_restore, cogl_viewport and cogl_frustum.
1899 * clutter/cogl/gl/cogl-fbo.h:
1900 * clutter/cogl/gl/cogl-fbo.c: Try to attach a stencil buffer when
1903 * clutter/cogl/common/cogl-clip-stack.c: Add functions to save and
1904 restore the whole state of the stack.
1906 * clutter/clutter-texture.c (clutter_texture_paint): When
1907 rendering the FBO source, setup a temporary asymmetric perspective
1908 projection matrix to render it as it would appear on screen.
1910 * clutter/clutter-private.h:
1911 * clutter/clutter-actor.c
1912 (_clutter_actor_apply_modelview_transform_recursive): No longer
1913 static and exported in clutter-private.h
1915 2008-08-01 Neil Roberts <neil@o-hand.com>
1917 Bug 1071 - clutter_timeline_get_duration doesn't always work
1919 * clutter/clutter-timeline.c: Calculate the 'duration' property
1920 on-demand instead of storing it as a member variable. Notify
1921 duration property changes whenever the fps or num_frames changes.
1923 2008-08-01 Neil Roberts <neil@o-hand.com>
1925 Bug 1069 - Warnings with ClutterScore
1927 * clutter/clutter-score.c (clutter_score_is_playing): Check
1928 whether priv->running_timelines is NULL before checking its
1930 (foreach_running_timeline): Remove the completed signal handler
1931 when stopping the score. Otherwise the completed callback will get
1932 called multiple times if the timeline is started later.
1934 2008-07-31 Neil Roberts <neil@o-hand.com>
1936 Bug 1075 - Difficult to bind clutter_stage_new
1938 * clutter/clutter-stage.c (clutter_stage_dispose): Unrealize the
1939 stage before removing the update idle handler. Otherwise
1940 unrealizing causes another redraw to be queued and if the stage
1941 object remains alive it will cause an assert and abort.
1943 2008-07-30 Neil Roberts <neil@o-hand.com>
1945 * clutter/clutter-stage.c (clutter_stage_class_init): Added the
1946 'perspective' property. All of the machinery was there to
1947 implement the property but somehow the call that actually installs
1950 2008-07-30 Emmanuele Bassi <ebassi@openedhand.com>
1952 * clutter/clutter-fixed.h:
1953 * clutter/clutter-units.h: Fix the upper and lower boundaries of
1954 ClutterFixed and ClutterUnit types; G_MAXINT16 and G_MININT16
1955 were not enough to describe those values.
1957 2008-07-30 Ross Burton <ross@openedhand.com>
1959 * clutter/clutter-main.c:
1960 Destroy the debugging timer when the context is freed.
1962 * clutter/clutter-stage.c:
1963 Free the stage title when the stage is finalized.
1965 2008-07-30 Neil Roberts <neil@o-hand.com>
1967 * clutter/clutter-model.c (clutter_model_set_sorting_column): This
1968 function is supposed to accept -1 to disable sorting. However it
1969 checks for whether the column is >= the number of columns, but
1970 clutter_model_get_n_columns() returns an unsigned int so the
1971 column number also gets promoted to unsigned for the
1972 comparison. Therefore -1 is always greater than the number of
1973 columns so it wouldn't let you set it.
1975 2008-07-26 Neil Roberts <neil@o-hand.com>
1977 * clutter/clutter-timeline.c (clutter_timeline_list_markers): When
1978 requesting the list of markers it was returning the marker data as
1979 a string instead of the name so it was copying garbage.
1981 2008-07-25 Neil Roberts <neil@o-hand.com>
1983 * clutter/clutter-actor.c (clutter_actor_remove_clip)
1984 (clutter_actor_set_clipu): Queue a redraw when the clip is
1987 2008-07-24 Neil Roberts <neil@o-hand.com>
1989 * clutter/clutter-script.c: The example in the documentation
1990 showed a color being specified as '0xff0000ff' but it should be
1993 2008-07-23 Emmanuele Bassi <ebassi@openedhand.com>
1995 Bug 1062 - clutter_actor_query_coords() replacement in 0.8
1997 * clutter/clutter-deprecated.h: Fix the deprecation warning
1998 for clutter_actor_query_coords(). (Gwenole Beauchesne)
2000 2008-07-17 Emmanuele Bassi <ebassi@openedhand.com>
2002 Bug 1047 - API documentation from release tarball is not
2003 installed by "make install"
2006 * Makefile.am: Make the recursion into the documentation
2007 directory depend on on whether we explicitly enable it or
2008 if we are not inside an SVN checkout.
2010 2008-07-17 Neil Roberts <neil@o-hand.com>
2012 * clutter/clutter-texture.c:
2013 * clutter/clutter-rectangle.c:
2014 * clutter/clutter-group.c:
2015 * clutter/clutter-entry.c:
2016 * clutter/clutter-clone-texture.c: Remove unnecessary calls to
2017 cogl_{push,pop}_matrix. The matrix is preserved in
2018 clutter_actor_paint whenever the actor's transformation is applied
2019 so there should be no need to push the matrix in actor paint
2020 implementations unless it does some additional transformations
2023 2008-07-16 Emmanuele Bassi <ebassi@openedhand.com>
2025 * clutter.pc.in: Add a variable containing the COGL backend
2026 inside the pkg-config file, for configure-time checks.
2028 2008-07-14 Neil Roberts <neil@o-hand.com>
2030 * clutter/cogl/common/cogl-primitives.c (cogl_path_rel_curve_to):
2031 Fixed a typo in the second parameter which meant the curve was
2034 2008-07-14 Emmanuele Bassi <ebassi@openedhand.com>
2036 * clutter/clutter.h: Include missing installed files.
2038 2008-07-14 Tomas Frydrych <tf@openedhand.com>
2040 * clutter/clutter-stage.c:
2041 (clutter_stage_hide_cursor):
2042 Fixed C&P bug that made it impossible to show cursor once hidden.
2044 Stripped trailing whitespace.
2046 2008-07-13 Matthew Allum <mallum@openedhand.com>
2048 * clutter/x11/clutter-x11-texture-pixmap.c:
2049 Call XSync in unredirect X error trap (Thanks to Andy Wingo)
2051 2008-07-13 Neil Roberts <neil@o-hand.com>
2053 * build/mingw/mingw-cross-compile.sh: Avoid using the --strip
2054 option to tar because it isn't supported in the version shipped
2057 2008-07-11 Tomas Frydrych <tf@openedhand.com>
2059 * clutter/clutter-fixed.c:
2060 Move G_IMPLEMENT_INLINES before all other #include statements (bug
2063 2008-07-11 Tomas Frydrych <tf@openedhand.com>
2065 * clutter/clutter-fixed.c:
2066 Changed #define G_IMPLEMENTS_INLINES to G_IMPLEMENT_INLINES (bug
2069 2008-07-10 Emmanuele Bassi <ebassi@openedhand.com>
2071 * configure.ac: Post release bump to 0.3.1.
2073 ======== Release 0.8.0 ========================================================
2075 2008-07-10 Emmanuele Bassi <ebassi@openedhand.com>
2078 * NEWS: Release 0.8.0.
2080 2008-07-10 Matthew Allum <mallum@openedhand.com>
2082 * clutter/cogl/gles/cogl-fbo.c:
2083 * clutter/cogl/gles/cogl-texture.c:
2084 Fix warnings with eglnative build
2086 2008-07-10 Matthew Allum <mallum@openedhand.com>
2089 Sync up/improve ready for 0.8 release.
2092 Sync up to date - hope I havn't missed anyone..
2094 2008-07-10 Matthew Allum <mallum@openedhand.com>
2096 * clutter/glx/clutter-glx-texture-pixmap.c:
2097 Assume TFP npots sized textures are always supported if TFP ext is!
2098 (Based on patch from James Ketrenos)
2100 2008-07-08 Matthew Allum <mallum@openedhand.com>
2102 Bug 1011 - Fix TFP fallback mechanism (take 2)
2104 * clutter/glx/clutter-glx-texture-pixmap.c:
2105 * tests/test-pixmap.c:
2106 Slightly modified patch from Gwenole Beauchesne applied
2107 to better handle both falling back to non accelerated tfp
2108 and improvements to the test case.
2110 2008-07-07 Matthew Allum <mallum@openedhand.com>
2112 Bug 1016 - Changing window-redirect-automatic property after
2113 creating ClutterX11TexturePixmap doesn't work.
2115 * clutter/x11/clutter-x11-texture-pixmap.c:
2116 (clutter_x11_texture_pixmap_set_window):
2117 Sync up redirection prop correctly (Jason Tackaberry)
2119 2008-07-07 Matthew Allum <mallum@openedhand.com>
2121 Bug 1019 - clutter-frame-source.h not included by clutter.h
2123 * clutter/clutter.h:
2124 Add missing header include.
2126 2008-07-05 Neil Roberts <neil@o-hand.com>
2128 * clutter/clutter-actor.h: Remove redundant duplicate declaration
2129 of clutter_actor_allocate_preferred_size
2131 2008-07-05 Emmanuele Bassi <ebassi@openedhand.com>
2133 Bug 1033 - Manually parsing command line options prevents
2134 initializing clutter (Armin Burgmeier)
2136 * clutter/clutter-main.c:
2137 (post_parse_hook), (clutter_init_real): Set the is_initialized
2138 flag inside the real initialization function.
2140 2008-07-04 Emmanuele Bassi <ebassi@openedhand.com>
2142 * clutter/clutter-label.c: Properly document the behaviour
2143 of the :alignment property.
2145 2008-07-04 Neil Roberts <neil@o-hand.com>
2147 * build/mingw/mingw-cross-compile.sh: Default to the win32 flavour
2148 instead of the SDL flavour
2150 2008-07-04 Neil Roberts <neil@o-hand.com>
2152 Bug 1015 - Cloning unparented actors with FBOs doesn't work with
2155 * clutter/clutter-texture.c (clutter_texture_new_from_actor): Now
2156 parents the source actor if it doesn't already have a parent so
2157 that it will get an allocation during layout.
2159 * tests/test-fbo.c: One of the tests tries to ensure that the
2160 ClutterTexture clone keeps the source actor alive by derefing
2161 it. However as actors have a floating reference then test-fbo
2162 doesn't have its own reference once the source is parented so
2163 unrefing just steals the parent's reference and causes
2164 badness. The test now claims the floating reference before cloning
2165 the source so that it can safely be unref'd later.
2167 2008-07-03 Emmanuele Bassi <ebassi@openedhand.com>
2169 * clutter/x11/Makefile.am: Fix distchecking by adding the
2170 generated enum types files to DISTCLEANFILES.
2172 2008-07-03 Tomas Frydrych <tf@openedhand.com>
2174 * clutter/clutter-fixed.h:
2175 * clutter/clutter-fixed.c
2176 Fixed inlining of clutter_qmulx() and clutter_qdivx() (bug 1022).
2178 2008-07-03 Neil Roberts <neil@o-hand.com>
2180 * clutter/clutter-shader.c (bind_glsl_shader): Fix a cut-and-paste
2181 error which broke vertex shaders
2183 2008-07-03 Øyvind Kolås <pippin@o-hand.com>
2185 * clutter/cogl/common/cogl-bitmap-pixbuf.c:
2186 (_cogl_bitmap_from_file): removed debug g_printf that announces each
2187 successful image load done by the internal image backend.
2189 2008-07-02 Neil Roberts <neil@o-hand.com>
2191 * clutter/clutter-actor.c
2192 (clutter_actor_get_abs_allocation_vertices): The initialization of
2193 the local stage pointer got moved away in revision 3081 so it was
2194 crashing if the function is called before the layout is run.
2196 2008-07-02 Emmanuele Bassi <ebassi@openedhand.com>
2198 * clutter/clutter-label.c:
2199 (clutter_label_create_layout_no_cache),
2200 (clutter_label_create_layout): Split the layout creation in two
2201 functions: one creating the layout, the other creating the layout
2202 and hitting the glyphs cache. The first one is for the offscren
2203 operations - like requesting the preferred size; the second one
2204 is for paint and allocation.
2206 (clutter_label_allocate): Try to aggressively cache the PangoLayout
2207 between allocations - to avoid recreating it even when the label
2208 just moved because of an animation. See bug #1010.
2210 2008-07-02 Øyvind Kolås <pippin@o-hand.com>
2212 * clutter/fruity/clutter-fruity.c: made the multi touch code more
2213 robust. There are situations though where the device seems to stop
2214 generating any touch events until all fingers have been lifted and
2215 a new interaction session is started.
2217 2008-07-02 Neil Roberts <neil@o-hand.com>
2219 * clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize):
2220 Use clutter_x11_has_event_retrieval() instead of
2221 !backend_x11->no_xevent_retrieval to reflect the changes to the
2222 GLX backend in revision 3078
2224 2008-07-02 Emmanuele Bassi <ebassi@openedhand.com>
2226 Bug 1010 - ClutterLabel does not update the layout (Lee Jusung)
2228 * clutter/clutter-actor.c:
2229 (clutter_actor_queue_relayout): Remove some pointer dereferencing.
2231 * clutter/clutter-label.c:
2232 (clutter_label_allocate): Revert the change of r2883 and remove the
2233 layout width cache and force a recreation of the layout every time
2234 we receive an allocation.
2236 2008-07-01 Neil Roberts <neil@o-hand.com>
2238 * clutter/clutter-actor.c (clutter_actor_get_transformed_sizeu):
2239 This is now do-what-I-mean like clutter_actor_get_size so that if
2240 the allocation box is available it will use that, otherwise it
2241 will use the preferred size. clutter_actor_transform_vertices has
2242 been converted to clutter_actor_transform_and_project_box so that
2243 it can be used by both functions. Based on a patch by Emmanuele
2245 (clutter_actor_get_abs_allocation_vertices)
2246 (clutter_actor_get_allocation_vertices): These two functions now
2247 force a relayout if the allocation box is not available.
2249 * tests/test-fbo.c: Fixed the shader to use texture2D instead of
2250 texture2DRect now that GL_EXT_texture_rectangle is no longer used.
2252 2008-07-01 Chris Lord <chris@openedhand.com>
2254 * clutter/clutter-stage.c:
2255 Add a note to the clutter_stage_read_pixels doc that the alpha channel
2256 isn't guaranteed to contain sensible data
2258 * tests/test-stage-read-pixels.c: (update_snapshot):
2259 Overwrite the alpha data when using clutter_stage_read_pixels; fixes
2260 this test on non-nvidia drivers
2262 2008-07-01 Matthew Allum <mallum@openedhand.com>
2264 * clutter/glx/clutter-stage-glx.c:
2265 * clutter/x11/clutter-backend-x11.c:
2266 * clutter/x11/clutter-backend-x11.h:
2267 * clutter/x11/clutter-event-x11.c:
2268 * clutter/x11/clutter-x11.h:
2269 * tests/test-devices.c:
2270 Disable use of XInput and add an explicit clutter_x11_enable_xinput
2272 Also fix up the x11 pre-init calls to not need g_type_init.
2274 2008-07-01 Øyvind Kolås <pippin@o-hand.com>
2276 Bug 1013 - Per device grabs are not obeyed in pointer device
2279 * clutter/clutter-event.c: (clutter_event_get_device_id): swap
2280 arguments of g_return_val_if_fail around.
2281 * clutter/clutter-event.h: added *device field to crossing events as
2283 * clutter/clutter-main.c: (emit_pointer_event): added a device
2284 argument and check for per device grabs if this device is passed.
2285 (clutter_do_event): pass the device if present for all pointer event
2287 (generate_enter_leave_events): copy the device from the motion events
2288 when generating enter/leave events.
2290 2008-07-01 Chris Lord <chris@openedhand.com>
2292 * clutter/clutter-texture.c:
2293 Correct documentation about accepted pixel formats
2295 * tests/test-stage-read-pixels.c: (main):
2296 Don't try to free a ClutterTexture after main, fixes segfault on quit
2298 2008-07-01 Emmanuele Bassi <ebassi@openedhand.com>
2300 * clutter/clutter-behaviour-bspline.h:
2301 * clutter/clutter-behaviour.h:
2302 * clutter/clutter-event.h:
2303 * clutter/clutter-texture.h: Add missing documentation and
2304 change the copyright and licensing notice to use the FSF
2305 website instead of its address. (#512)
2307 2008-06-30 Matthew Allum <mallum@openedhand.com>
2309 Bug 1008 - tfp still a bit borked
2311 * clutter/x11/clutter-x11-texture-pixmap.c:
2312 Fix from Andy Wingo for sync_window borkage
2314 2008-06-30 Neil Roberts <neil@o-hand.com>
2316 Bug 985 - MSC math.h / M_PI issue
2318 * clutter/cogl/gl/cogl.c (set_clip_plane):
2319 * clutter/clutter-alpha.c (sinc_func): Use G_PI instead of M_PI
2320 because M_PI isn't defined in MSVC without a special
2321 #define. Thanks to Haakon Sporsheim
2323 2008-06-30 Neil Roberts <neil@o-hand.com>
2325 * clutter/win32/clutter-backend-win32.c (check_vblank_env): Use
2326 g_ascii_strcasecmp instead of strcasecmp because strcasecmp isn't
2329 2008-06-30 Matthew Allum <mallum@openedhand.com>
2331 Bug 1007 - Fix TFP fallback mechanism
2333 * clutter/glx/clutter-glx-texture-pixmap.c:
2334 * clutter/x11/clutter-x11-texture-pixmap.c:
2335 Add some extra safety to glx pixmap creations and tidy up some notes.
2336 Patch from Gwenole Beauchesne.
2338 2008-06-30 Neil Roberts <neil@o-hand.com>
2340 * clutter/x11/clutter-event-x11.c:
2341 * clutter/win32/clutter-event-win32.c: Use the HAVE_CONFIG_H guard
2342 around #include "config.h"
2344 2008-06-30 Emmanuele Bassi <ebassi@openedhand.com>
2346 * clutter/Makefile.am:
2347 * clutter/eglx/Makefile.am:
2348 * clutter/glx/Makefile.am: Build the X11 base backend before
2349 the backends that depend on it.
2351 2008-06-30 Emmanuele Bassi <ebassi@openedhand.com>
2353 Bug 1000 - clutter-x11 should define gtypes for its enumerations
2355 * clutter/x11/Makefile.am:
2356 * clutter/x11/clutter-event-x11.c:
2357 * clutter/x11/clutter-x11-enum-types.c.in:
2358 * clutter/x11/clutter-x11-enum-types.h.in:
2359 * clutter/x11/clutter-x11.h: Add the GTypes for the X11-specific
2360 enumerations, so that they can be used by the bindings. (Andy
2363 2008-06-30 Chris Lord <chris@openedhand.com>
2365 * tests/test-shader.c:
2366 Fix edge-detect shader on ATI, thanks Gwenole Beauchesne
2368 2008-06-30 Matthew Allum <mallum@openedhand.com>
2370 Bug 997 - automatic updates not working for named TFP pixmaps,
2373 * clutter/glx/clutter-glx-texture-pixmap.c:
2374 * clutter/glx/clutter-glx-texture-pixmap.h:
2375 * clutter/x11/clutter-backend-x11.c:
2376 * clutter/x11/clutter-x11-texture-pixmap.c:
2377 * clutter/x11/clutter-x11-texture-pixmap.h:
2378 * clutter/x11/clutter-x11.h:
2380 * tests/test-pixmap.c:
2381 Rework Andy Wingos patch a little adding more safety for now also
2382 handling redirect Windows (as well as pixmaps)
2384 2008-06-30 Emmanuele Bassi <ebassi@openedhand.com>
2386 Bug 980 - cogl-bitmap-fallback.c compiler error/warning due to
2387 cast issue (Haakon Sporsheim)
2389 * clutter/cogl/common/cogl-bitmap-fallback.c:
2390 (_cogl_unpremult_alpha_last),
2391 (_cogl_unpremult_alpha_first): Cast to avoid a compiler warning
2394 2008-06-30 Chris Lord <chris@openedhand.com>
2396 * tests/test-shader.c: (main):
2397 Add a new shader to test-shaders (Sobel operator edge-detect)
2399 2008-06-30 Øyvind Kolås <pippin@o-hand.com>
2401 Disable XInput handling for keyboard events, re-enabling key press and
2402 release events when pointer is outside window as well as re-enabling
2405 * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize): select
2406 for KeyPressMask and KeyReleaseMask even with XInput enabled.
2407 * clutter/x11/clutter-backend-x11.c: (_clutter_x11_register_xinput):
2408 Disabled the XInput keyboard code paths (comments and #if 0's)
2409 * clutter/x11/clutter-event-x11.c: (event_translate): always handle
2410 keyboard events without regard to XInput.
2412 2008-06-29 Matthew Allum <mallum@openedhand.com>
2414 * clutter/x11/clutter-event-x11.c:
2415 ifdef convert_xdevicekey_to_xkey () with XINPUT check.
2416 (fix via Andy Wingo)
2418 2008-06-29 Tommi Komulainen <tommi.komulainen@iki.fi>
2420 * clutter/osx/clutter-osx.h (_clutter_event_osx_put)
2421 * clutter/osx/clutter-event-osx.c (clutter_event_osx_translate,
2422 NSEvent:clutterStage:)
2423 * clutter/osx/clutter-stage-osx.c (EVENT_HANDLER): Since events are
2424 delivered to ClutterGLView, pass the associated ClutterStage directly
2425 to event translation. Avoids relying on being embedded in
2426 ClutterGLWindow, which makes it easier to implement clutter-gtk.
2428 2008-06-29 Tommi Komulainen <tommi.komulainen@iki.fi>
2430 * clutter/osx/clutter-event.osx.c (NSEvent:clutterKeyVal:): Add
2431 comment, on OSX backend the Shift modifier is included in 'keyval'
2432 making it identical to 'unicode_value' Instead of <Shift>a or
2433 <Shift>3 you'd get <Shift>A and <Shift>#
2435 2008-06-27 Matthew Allum <mallum@openedhand.com>
2437 * clutter/cogl/gl/cogl.c:
2438 Temp workaround for 10.4 ATI card OSX folks, see #929
2441 Bug 998 - clutter always captures X input events
2443 * clutter/eglx/clutter-stage-egl.c:
2444 * clutter/glx/clutter-stage-glx.c:
2445 When we disable X event retrival, dont still select for window
2448 2008-06-27 Emmanuele Bassi <ebassi@openedhand.com>
2450 * clutter/clutter-event.h:
2451 * clutter/clutter-main.c:
2452 * clutter/x11/clutter-backend-x11.c: Add further documentation,
2453 and increase the coverage to 94%.
2455 2008-06-27 Emmanuele Bassi <ebassi@openedhand.com>
2457 * configure.ac: Post release bump to 0.7.7.
2459 ======== Release 0.7.6 ========================================================
2461 2008-06-27 Emmanuele Bassi <ebassi@openedhand.com>
2464 * NEWS: Release 0.7.6.
2466 2008-06-27 Neil Roberts <neil@o-hand.com>
2468 Bug 993 - Underline colors are sometimes wrong
2470 * clutter/pango/pangoclutter-render.c: Fixed so that instead
2471 of trying to set the color in prepare_run it uses draw_glyphs
2472 to draw groups of glyphs and requests the color for each part
2475 2008-06-26 Emmanuele Bassi <ebassi@openedhand.com>
2477 * clutter/clutter-actor.c:
2478 (clutter_actor_set_min_width),
2479 (clutter_actor_set_min_height),
2480 (clutter_actor_set_natural_width),
2481 (clutter_actor_set_natural_height): Ignore any override of the
2482 minimum and natural size of the stage on backends that only
2483 support static stages.
2485 * clutter/clutter-stage.c (clutter_stage_allocate): Use the
2486 preferred size of the ClutterStage implementation instead of
2489 * clutter/clutter-backend.[ch]: Remove get_display_size() and
2490 clutter_backend_get_display_size().
2492 * clutter/eglnative/clutter-backend-egl.c:
2493 * clutter/fruity/clutter-backend-fruity.c:
2494 * clutter/osx/clutter-backend-osx.c:
2495 * clutter/sdl/clutter-backend-sdl.c:
2496 * clutter/win32/clutter-backend-win32.c:
2497 * clutter/x11/clutter-backend-x11.c: Remove get_display_size()
2500 2008-06-26 Emmanuele Bassi <ebassi@openedhand.com>
2502 * clutter/clutter-shader.c (bind_glsl_shader): Verify that the
2503 vertex shader has been successfully compiled, like we do with
2504 the fragment shader.
2506 2008-06-26 Emmanuele Bassi <ebassi@openedhand.com>
2508 * clutter/osx/clutter-backend-osx.c:
2509 (clutter_backend_osx_get_display_size): Fix the allocation pool
2512 2008-06-26 Matthew Allum <mallum@openedhand.com>
2514 * clutter/glx/clutter-glx-texture-pixmap.c:
2515 Move the gl extension probe into the regular object init() rather than
2516 class_init. Should be a little safer.
2518 2008-06-26 Matthew Allum <mallum@openedhand.com>
2520 * tests/test-pixmap.c: (main):
2521 Use strtol on arg as to take hex values. Tweak from James Ketrenos
2523 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2525 * configure.ac: Post release bump to 0.7.5.
2527 ======== Release 0.7.4 ========================================================
2529 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2532 * NEWS: Release 0.7.4.
2534 2008-06-25 Neil Roberts <neil@o-hand.com>
2536 * clutter/win32/clutter-backend-win32.c
2537 (clutter_backend_win32_get_display_size): Implement
2538 get_display_size on the Win32 backend.
2540 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2542 * clutter/clutter-main.h: Make the priority constants public.
2544 * clutter/clutter-stage.c: Use CLUTTER_PRIORITY_REDRAW.
2546 * clutter/clutter-timeline.c: Use CLUTTER_PRIORITY_TIMELINE.
2548 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2550 * clutter/osx/clutter-backend-osx.c:
2551 (clutter_backend_osx_get_display_size),
2552 (clutter_backend_osx_class_init): Implement the get_display_size
2555 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2557 * clutter/clutter-actor.c:
2558 (clutter_actor_set_min_width),
2559 (clutter_actor_set_min_height),
2560 (clutter_actor_set_natural_width),
2561 (clutter_actor_set_natural_height): Add a comment explaining
2562 the override in place for backends providing a fixed size
2565 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2567 * clutter/clutter-actor.c:
2568 (clutter_actor_set_min_width),
2569 (clutter_actor_set_min_height),
2570 (clutter_actor_set_natural_width),
2571 (clutter_actor_set_natural_height): If setting the minimum
2572 and natural width and height on a top-level actor, and on
2573 a backend that provides only static stages, then override
2574 the value and use the size of the display as returned by
2577 * clutter/eglnative/clutter-stage-egl.c:
2578 (clutter_stage_egl_realize): Remove the setting of the
2579 minimum and natural width and height.
2581 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2583 * clutter/clutter-stage.c:
2584 (clutter_stage_allocate): Minor optimization.
2586 (clutter_stage_init): Do not set the minimum size of the
2587 stage wrapper, and require that the backends set the size
2590 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2592 * clutter/eglnative/clutter-stage-egl.c:
2593 (clutter_stage_egl_realize): Try to force the minimum and
2594 natural size on realization.
2596 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2598 * clutter/clutter-backend.c:
2599 (clutter_backend_get_display_size): Provide a fallback for
2600 backends not implementing get_display_size().
2602 * clutter/clutter-stage.c:
2603 (clutter_stage_allocate): Add debug messages.
2605 * clutter/sdl/clutter-backend-sdl.c:
2606 (clutter_backend_sdl_get_display_size),
2607 (clutter_backend_sdl_class_init): Implement get_display_size()
2610 2008-06-25 Chris Lord <chris@openedhand.com>
2612 * clutter/clutter-fixed.c: (clutter_sinx):
2613 Fix clutter_sinx for angles > CFX_2PI - CFX_ONE. Also add note to
2614 documentation about being able to use modulus with ClutterFixed
2616 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2618 * clutter/clutter-backend.h:
2619 * clutter/clutter-backend.c:
2620 (clutter_backend_get_display_size): Add a function for getting the
2621 display size out of the backend.
2623 * clutter/clutter-stage.c:
2624 (clutter_stage_allocate): When allocating on a backend with a
2625 static stage, we simply ignore the passed box and override it with
2626 the size of the display.
2628 * clutter/eglnative/clutter-backend-egl.c:
2629 (clutter_backend_egl_get_display_size),
2630 (clutter_backend_egl_class_init): Implement get_display_size() by
2631 returning the size of the EGL surface.
2633 * clutter/fruity/clutter-backend-fruity.c:
2634 (clutter_backend_egl_get_display_size),
2635 (clutter_backend_egl_class_init): Ditto as above.
2637 * clutter/x11/clutter-backend-x11.c:
2638 (clutter_backend_x11_get_display_size),
2639 (clutter_backend_x11_class_init): Implement get_display_size() by
2640 returning the DisplayWidth and DisplayHeight of the current
2643 2008-06-25 Neil Roberts <neil@o-hand.com>
2645 * clutter/win32/clutter-stage-win32.c
2646 (clutter_stage_win32_realize): Use a more direct method to choose
2647 the best pixel format instead of ChoosePixelFormat because
2648 otherwise if the display's depth is 16 then it will prefer the
2649 non-accelerated software implementation when the requested depth
2652 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2654 * clutter/clutter-stage.c (clutter_stage_allocate): Fix condition;
2655 should always test before committing.
2657 2008-06-25 Matthew Allum <mallum@openedhand.com>
2659 * clutter/x11/clutter-backend-x11.c: (_clutter_x11_register_xinput)
2660 Add extra safety and fallback if no useable pointing devices are
2663 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2665 * clutter/clutter-stage.c:
2666 (clutter_stage_allocate): Check if the stage provided by the
2667 backend is static (i.e. a framebuffer that cannot be resized)
2668 and interrupt the allocation chain there.
2670 * clutter/eglnative/clutter-stage-egl.c:
2671 (clutter_stage_egl_class_init): Remove the ::allocate empty
2674 2008-06-25 Matthew Allum <mallum@openedhand.com>
2676 * clutter/eglnative/clutter-stage-egl.c:
2677 * clutter/eglx/clutter-stage-egl.c:
2678 Disable passing of attribs to eglCreateContext() on GLES 1.1 h/w
2680 2008-06-25 Neil Roberts <neil@o-hand.com>
2682 * clutter/clutter-actor.c (clutter_actor_paint): Guard against the
2683 actor clip being enabled or disabled in an actor paint
2684 method. Otherwise the clip stack can be become unbalanced. This
2685 was happening in ClutterEntry until it was fixed in revision 2983.
2687 2008-06-24 Neil Roberts <neil@o-hand.com>
2689 Bug 979 - Wrong call convension for SwapIntervalProc in win32 backend
2691 * clutter/win32/clutter-backend-win32.c: Use the correct calling
2692 convention for SwapInterval. Thanks to Haakon Sporsheim.
2694 2008-06-24 Emmanuele Bassi <ebassi@openedhand.com>
2696 Bug 989 - Add a search path for clutter script assets
2698 * clutter/clutter-script.h:
2699 * clutter/clutter-script.c:
2700 (clutter_script_finalize),
2701 (clutter_script_add_search_paths),
2702 (clutter_script_lookup_filename): Add the ability to define multiple
2703 search paths inside ClutterScript and to look up a specific filename
2704 inside those search paths. This is useful to define a set of
2705 directories where the assets for a UI definition are and still
2706 reference those assets by their name instead of the full path. (989,
2707 based on a patch by Matthew Allum)
2709 * clutter/clutter-texture.c:
2710 (clutter_texture_set_custom_property): Use the newly added
2711 clutter_script_lookup_filename() function.
2713 2008-06-24 Neil Roberts <neil@o-hand.com>
2715 * clutter/cogl/gles/cogl-gles2-wrapper.h:
2716 * clutter/cogl/gles/cogl-gles2-wrapper.c: All of the settings and
2717 uniforms are now proxied into COGL variables instead of setting
2718 the GL uniforms directly. Just before glDrawArrays is executed a
2719 shader is generated using the given settings to avoid using 'if'
2720 statements. The shaders are cached.
2722 * clutter/cogl/gles/cogl-fixed-vertex-shader.glsl:
2723 * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: The shaders
2724 are now split into parts using comments instead of 'if' statements
2725 so that the simplest shader can be generated on the fly.
2727 * clutter/cogl/gles/stringify.sh: Now splits up the shader sources
2728 into separate C strings where deliminated by special comments.
2730 * clutter/cogl/gles/cogl-program.h:
2731 * clutter/cogl/gles/cogl-program.c: A custom shader can no longer
2732 be directly linked with the fixed-functionality replacement
2733 because the replacement changes depending on the settings. Instead
2734 the bound shader is linked with the appropriate replacement shader
2735 just before glDrawArrays is executed. The custom uniform variables
2736 must also be proxied through COGL variables because their location
2737 can change when relinked.
2739 2008-06-24 Øyvind Kolås <pippin@o-hand.com>
2741 * clutter/fruity/clutter-fruity.c: removed dead code and unused
2744 2008-06-24 Øyvind Kolås <pippin@o-hand.com>
2746 * configure.ac: better alignment of list of enabled experimental
2749 2008-06-24 Emmanuele Bassi <ebassi@openedhand.com>
2751 * doc/clutter-actor-invariants.txt: Fix grammar and spelling,
2752 document the ::parent-set signal emission.
2754 2008-06-24 Emmanuele Bassi <ebassi@openedhand.com>
2756 * clutter/clutter-entry.c:
2757 (clutter_entry_ensure_layout): Convert the invisible char
2758 to UTF-8 to avoid Pango barfing on us.
2760 2008-06-24 Matthew Allum <mallum@openedhand.com>
2762 * clutter/eglnative/clutter-stage-egl.c:
2763 Add an extra debug note.
2765 Generate version.xml for COGL API docs
2767 2008-06-24 Chris Lord <chris@openedhand.com>
2769 Bug 988 - cursor position wrong with multibyte invisible char
2771 * clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position):
2772 Fix cursor position calculation when using invisible text
2774 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2776 * clutter/x11/clutter-event-x11.c (event_translate): Set the
2777 event type explicitly in the union members as well for the
2778 key events, like we do for all the other events.
2780 2008-06-23 Neil Roberts <neil@o-hand.com>
2782 * clutter/clutter-entry.c (clutter_entry_paint): Set the clip
2783 using COGL directly instead of setting the actor clip. Otherwise
2784 the clip stack will be unbalanced after the first draw. This also
2785 frees up the actor clip to be set by an application.
2787 2008-06-23 Matthew Allum <mallum@openedhand.com>
2790 Add a quick note on fruity multiple deivce support.
2792 Add multiple device support details and some tweaks on
2793 Clutter requirements (i.e GdkPixbuf).
2795 2008-06-23 Matthew Allum <mallum@openedhand.com>
2797 Bug 987 - clutter-event.c c99 variable declaration
2799 * clutter/clutter-event.c:
2802 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2804 * configure.ac: Post release bump to 0.7.3.
2806 ======== Release 0.7.2 ========================================================
2808 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2811 * NEWS: Release 0.7.2.
2813 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2815 * clutter/clutter-texture.c:
2816 (clutter_texture_get_preferred_width),
2817 (clutter_texture_get_preferred_height),
2818 (clutter_texture_set_property),
2819 (clutter_texture_get_property),
2820 (clutter_texture_class_init),
2821 (clutter_texture_init): Add the new :keep-aspect-ratio property
2822 to ClutterTexture; when set to TRUE the texture will return a
2823 preferred width maintaining the aspect ratio with the given height
2824 and a preferred height maintaining the aspect ratio with the
2825 given width. This allows to set the width or the height and have
2826 the texture automatically request the height or the width respectively
2827 while maintaining the aspect ratio of the original image.
2829 * tests/test-script.json: Update to test the new :keep-aspect-ratio
2832 2008-06-23 Neil Roberts <neil@o-hand.com>
2834 Bug 918 - Group doesn't clip if it's children are clipped
2836 * clutter/cogl/common/cogl-clip-stack.h:
2837 * clutter/cogl/common/cogl-clip-stack.c: Added functions to
2838 maintain a stack of clipping rectangles.
2840 * clutter/cogl/gles/cogl.c:
2841 * clutter/cogl/gl/cogl.c: The cogl_clip_set and unset functions
2842 have moved into cogl-clip-stack.c which calls back to cogl.c to
2843 set the actual rectangles. Multiple clip rectangles are combined
2844 by merging the stencil buffers.
2846 * clutter/cogl/gles/cogl-primitives.c (_cogl_path_fill_nodes):
2847 * clutter/cogl/gl/cogl-primitives.c (_cogl_path_fill_nodes): Merge
2848 the stencil buffer with the contents of the clipping stack after
2851 * clutter/cogl/gles/cogl-context.h (CoglContext):
2852 * clutter/cogl/gl/cogl-context.h (CoglContext): Store the number
2853 of available stencil bits.
2855 * clutter/cogl/common/Makefile.am
2856 (libclutter_cogl_common_la_SOURCES): Added cogl-clip-stack.c
2858 2008-06-23 Robert Bragg <bob@o-hand.com>
2860 * clutter/eglx/clutter-stage-egl.c: Makes sure the eglx backend
2861 passes the EGL_OPENGL_ES2_BIT surface attrib when using
2864 2008-06-23 Chris Lord <chris@openedhand.com>
2866 * clutter/x11/clutter-event-x11.c: (convert_xdevicekey_to_xkey),
2867 (translate_key_event), (event_translate):
2868 Change the xinput event handling to use translate_key (fixes modifier
2869 handling with xinput key events)
2871 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2873 Bug 982 - __COGL_GET_CONTEXT MS compiler issue (Haakon Sporsheim)
2875 * clutter/cogl/common/cogl-handle.h:
2876 * clutter/cogl/common/cogl-primitives.c: Remove C99-isms.
2878 * clutter/cogl/gl/cogl-fbo.c:
2879 * clutter/cogl/gl/cogl-primitives.c:
2880 * clutter/cogl/gl/cogl-texture.c:
2881 * clutter/cogl/gl/cogl.c: Ditto as above.
2883 * clutter/cogl/gles/cogl-fbo.c:
2884 * clutter/cogl/gles/cogl-primitives.c:
2885 * clutter/cogl/gles/cogl-texture.c: Ditto as above.
2887 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2889 Bug 984 - pango_clutter_render_layout() declared void, but
2890 returns (Haakon Sporsheim)
2892 * clutter/pango/pangoclutter-render.c:
2893 (pango_clutter_render_layout): Do not use a return statement.
2895 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2897 Bug 905 - Paint cursor directly (Xan López)
2899 * clutter/clutter-entry.c:
2900 (clutter_entry_paint_cursor),
2901 (clutter_entry_init),
2902 (clutter_entry_set_color): Directly paint the cursor on the
2903 entry instead of using an actor.
2905 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2907 Bug 981 - clutter_stage_read_pixels temprow fix (Haakon Sporsheim)
2909 * clutter/clutter-stage.c (clutter_stage_read_pixels): Allocate
2910 the temporary row data used to flip the buffer from glReadPixels()
2911 in order to fix compilation under MSVC. Also validate the input
2912 parameters to avoid random segfaults.
2914 2008-06-23 Matthew Allum <mallum@openedhand.com>
2916 * clutter/clutter-actor.c:
2917 * clutter/clutter-actor.h:
2918 * clutter/clutter-event.c:
2919 * clutter/clutter-event.h:
2920 * clutter/clutter-main.c:
2921 * clutter/clutter-main.h:
2922 * clutter/clutter-private.h:
2923 * clutter/eglx/clutter-stage-egl.c:
2924 * clutter/fruity/clutter-backend-fruity.c:
2925 * clutter/fruity/clutter-backend-fruity.h:
2926 * clutter/fruity/clutter-fruity.c:
2927 * clutter/glx/clutter-stage-glx.c:
2928 * clutter/x11/clutter-backend-x11.c:
2929 * clutter/x11/clutter-backend-x11.h:
2930 * clutter/x11/clutter-event-x11.c:
2931 * clutter/x11/clutter-stage-x11.h:
2932 * clutter/x11/clutter-x11.h:
2934 * tests/Makefile.am:
2935 * tests/test-devices.c:
2936 Merge of 'xinput' branch giving initial basic support of
2937 multiple input devices.
2939 2008-06-23 Matthew Allum <mallum@openedhand.com>
2941 * clutter/clutter-actor.c:
2942 * clutter/clutter-actor.h:
2943 * clutter/clutter-group.c:
2944 Remove uneeded (at least for now) paint_area method (#970)
2946 2008-06-19 Emmanuele Bassi <ebassi@openedhand.com>
2948 * clutter/clutter-script.c: Be more explicit about the fact that
2949 the script id is not the name of an actor, and that it is retrieved
2950 by using clutter_get_script_id().
2952 2008-06-17 Emmanuele Bassi <ebassi@openedhand.com>
2954 * clutter/clutter-actor.h:
2955 * clutter/clutter-actor.c:
2956 (clutter_actor_allocate_preferred_size): Add more documentation
2957 and notes on where it's appropriate to call this function.
2959 2008-06-17 Chris Lord <chris@openedhand.com>
2961 * clutter/clutter-texture.c: (clutter_texture_get_preferred_width),
2962 (clutter_texture_get_preferred_height):
2963 Maintain aspect ratio with natural width/height when for_width/height
2966 2008-06-17 Matthew Allum <mallum@openedhand.com>
2968 * clutter/clutter-actor.c:
2969 * clutter/clutter-actor.h:
2970 Clean up of parenting code (see #972)
2971 Doc updates to section intro.
2972 Add clutter_actor_allocate_preferred_size () utility call
2974 * clutter/clutter-group.c: (clutter_fixed_layout_allocate):
2975 Use clutter_actor_allocate_preferred_size ()
2977 * doc/clutter-actor-invariants.txt:
2980 2008-06-17 Emmanuele Bassi <ebassi@openedhand.com>
2982 * clutter/clutter-actor.c:
2983 (clutter_actor_set_parent): Do not emit ::parent-set when
2986 (clutter_actor_unparent): Ditto, as above.
2988 (clutter_actor_reparent): Emit ::parent-set with the old
2989 parent and set the IN_REPARENT flag unconditionally.
2991 2008-06-17 Emmanuele Bassi <ebassi@openedhand.com>
2993 * doc/clutter-actor-invariants.txt: Document the flags, the
2994 invariants, the state changes and the minimum requirements for
2995 actor implementations. Needs to be tweaked and fleshed out
2996 before 0.8.0, and we obviously need to enforce the invariants.
2998 2008-06-17 Emmanuele Bassi <ebassi@openedhand.com>
3000 * clutter/clutter-actor.c:
3001 (clutter_actor_set_parent): Document and maintain the invariant
3002 that after setting a realized parent on an actor, the actor is
3003 also going to be realized.
3005 (clutter_actor_unparent): Change the invariant that an unparented
3006 actor is also unrealized: the paint is fast enough to avoid
3007 unrealizing, since it also causes more problems that what it's
3010 * tests/test-invariants.c (test_show_on_set_parent): Update the
3011 invariants test because we changed the invariants.
3013 2008-06-17 Jussi Kukkonen <jku@o-hand.com>
3015 * clutter/clutter-score.c (clutter_score_append):
3016 initialize "marker" string and "complete_id" signal id when creating a
3019 2008-06-16 Tomas Frydrych <tf@openedhand.com>
3021 * clutter/clutter-actor.c:
3022 (clutter_actor_move_anchor_point_from_gravity):
3023 Fixed incorrect sign of position adjustment (revert of earlier
3026 2008-06-16 Emmanuele Bassi <ebassi@openedhand.com>
3028 * clutter/clutter-actor.c (clutter_actor_unparent): Reset the
3029 :show-on-set-parent property to TRUE when unparenting.
3031 * tests/Makefile.am: Add test-invariant to the build.
3033 * tests/test-invariants.c: Test the invariants that we are going
3034 to honour (and document, at some point).
3036 2008-06-16 Emmanuele Bassi <ebassi@openedhand.com>
3038 * clutter/eglnative/clutter-stage-egl.c: Ignore any size allocation
3039 we receive from the user.
3041 * clutter/fruity/clutter-stage-fruity.c: Ditto as above.
3043 2008-06-16 Tomas Frydrych <tf@openedhand.com>
3045 * clutter/clutter-actor.c:
3046 (clutter_actor_move_anchor_point):
3047 (clutter_actor_move_anchor_pointu):
3048 (clutter_actor_move_anchor_point_from_gravity):
3049 Fixed incorrect sign of position adjustment.
3050 Fixed replace call to _move_by with move_byu in
3051 _move_anchor_pointu.
3053 Stripped trailing whitespace.
3055 2008-06-15 Emmanuele Bassi <ebassi@openedhand.com>
3057 Bug #967 - Mismatch of Timeline::marker-reached signal signature
3059 * clutter/clutter-marshal.list:
3060 * clutter/clutter-timeline.c:
3061 (clutter_timeline_class_init): Fix the type of the frame_num
3062 argument in the ::marker-reached signal creation to match the
3063 signal class handler. (Armin Burgmeier)
3065 2008-06-14 Emmanuele Bassi <ebassi@openedhand.com>
3067 * README: We depend on PangoCairo, now; also add all the missing
3068 release notes entries and the missing backends configuration notes.
3070 2008-06-14 Matthew Allum <mallum@openedhand.com>
3073 Make needed GL version 1.4, note GLES2 support, add some notes
3076 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3078 * configure.ac: Post release bump to 0.7.1.
3080 ======== Release 0.7.0 ========================================================
3082 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3086 * configure.ac: Release 0.7.0, "Booska".
3088 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3090 * tests/test-cogl-offscreen.c:
3091 * tests/test-cogl-primitives.c:
3092 * tests/test-cogl-tex-convert.c:
3093 * tests/test-cogl-tex-foreign.c:
3094 * tests/test-cogl-tex-getset.c:
3095 * tests/test-cogl-tex-tile.c:
3096 * tests/test-layout.c:
3097 * tests/test-pixmap.c:
3098 * tests/test-texture-quality.c: Miscellaneous fixes for distcheck
3101 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3103 * clutter/clutter-actor.c:
3104 * clutter/clutter-actor.h:
3105 * tests/test-cogl-primitives.c:
3106 * tests/test-events.c:
3107 * tests/test-multistage.c:
3108 * tests/test-textures.c:
3109 * tests/test-timeline.c: Miscellaneous fixes for distcheck to
3112 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3114 * clutter/clutter-texture.c:
3115 (clutter_texture_unrealize), (clutter_texture_dispose): Add a
3116 guard against reading back memory during the unrealization on
3119 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3121 Bug #953 - Actors are not hidden before unrealized or
3122 disposed (Tommi Komulainen)
3124 * clutter/clutter-actor.c:
3125 (clutter_actor_unrealize): Hide a visible actor when unrealizing
3128 (clutter_actor_dispose): Make sure to unrealize an actor when
3131 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3133 * clutter/clutter-actor.c:
3134 (clutter_actor_dispose), (clutter_actor_destroy),
3135 (clutter_actor_unparent): Clean up the actor's destruction
3136 sequence, making sure that every operation is performed
3137 under the CLUTTER_ACTOR_IN_DESTRUCTION internal flag. (thanks
3138 to Tomas Frydrych, Neil Roberts and Matthew Allum)
3140 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3142 Bug #960 - PangoContext creation code should not be duplicated
3144 * clutter/clutter-private.h:
3145 * clutter/clutter-main.c:
3146 (_clutter_context_create_pango_context): Abstract the creation
3147 of the PangoContext inside its own function, to avoid code and
3148 bugs duplication. (Tommi Komulainen)
3150 * clutter/clutter-entry.c (clutter_entry_init): Use the newly
3151 added PangoContext creation function.
3153 * clutter/clutter-label.c (clutter_label_init): Ditto as above.
3155 2008-06-12 Emmanuele Bassi <ebassi@openedhand.com>
3157 Bug #964 - "unrealized" signal of ClutterActor wrongly named
3159 * clutter/clutter-actor.c (clutter_actor_class_init): Fix typo
3160 in the ::unrealize signal name. (Armin Burgmeier)
3162 2008-06-12 Emmanuele Bassi <ebassi@openedhand.com>
3164 * doc/reference/cogl/Makefile.am: Ignore cogl/gl and cogl/gles
3165 when building the documentation.
3167 * clutter/cogl/cogl.h.in: Add sections in the header file.
3169 2008-06-12 Emmanuele Bassi <ebassi@openedhand.com>
3171 * clutter/clutter-actor.c: Add more clarifications on the
3172 size and position accessors and the distinction between
3173 transformed and untransformed actor box inside the actor's
3176 2008-06-12 Emmanuele Bassi <ebassi@openedhand.com>
3178 * clutter/clutter-actor.c: Clarify the documentation of the
3179 accessors of the width and height.
3181 2008-06-12 Neil Roberts <neil@o-hand.com>
3183 * clutter/win32/clutter-stage-win32.c: Updated to the new layout
3184 API. All code to do with positioning the stage has been removed so
3185 the window is left where Windows wants to put it and it can not be
3186 moved with clutter_actor_set_position.
3188 * clutter/win32/clutter-stage-win32.h (ClutterStageWin32): Remove
3189 win_xpos and win_ypos.
3191 * clutter/win32/clutter-event-win32.c (message_translate): Remove
3192 the handler for WM_MOVE because the stage no longer cares where it
3195 2008-06-12 Emmanuele Bassi <ebassi@openedhand.com>
3197 * clutter/clutter-actor.[ch]: Documentation fixes.
3199 * clutter/clutter-backend.c: Documentation fixes.
3201 * clutter/clutter-container.h: Documentation fixes.
3203 * clutter/clutter-fixed.c (clutter_qdivx): Fix the return
3204 value to be after the description.
3206 * clutter/clutter-texture.[ch]: Documentation fixes.
3208 * clutter/clutter-timeline.c: Documentation fixes.
3210 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3212 * tests/test-layout.c: Take into account the origin of the
3213 parent, if it has changed, and queue a relayout if we are
3214 using the transformed box when computing the layout.
3216 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3218 * clutter/eglnative/clutter-stage-egl.c: Remove a duplicate
3219 get_preferred_width() implementation. (thanks to Iain Holmes)
3221 2008-06-11 Neil Roberts <neil@o-hand.com>
3223 * clutter/clutter-actor.c (clutter_actor_allocate): Fixed the
3224 logic when detecting whether the actor has moved.
3226 2008-06-11 Iain Holmes <iain@openedhand.com>
3228 * configure.ac: Detect the GL headers in flavour=fruity
3230 * clutter/fruity/clutter-stage-fruity.c: Update the Fruity backend to
3231 use the new size negotiation API.
3233 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3235 * clutter/clutter-label.c (clutter_label_allocate): Keep the
3236 layout if the size of the allocation is the same as the last
3237 allocation received by the label.
3239 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3241 * clutter/clutter-actor.c: Notify :x, :y, :width and :height
3242 properties using ClutterUnits, not pixels.
3244 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3246 * clutter/eglnative/clutter-stage-egl.c: Update the EGL native
3247 backend to use the new size negotiation API.
3249 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3251 * clutter/sdl/clutter-stage-sdl.c: Update the SDL backend to
3252 use the new size negotiation API.
3254 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3256 Bug #961 - Fails to build on OSX
3258 * clutter/osx/clutter-stage-osx.c: Update the OSX backend to
3259 use the new size negotiation API.
3261 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3263 * autogen.sh: Force overwriting when glib-gettextize is
3264 invoked by autogen.sh.
3266 2008-06-10 Neil Roberts <neil@o-hand.com>
3268 * clutter/clutter-main.c: Include <locale.h> for setlocale()
3270 2008-06-10 Emmanuele Bassi <ebassi@openedhand.com>
3272 * clutter/clutter-child-meta.c: Fix section name
3274 * clutter/clutter-container.c:
3275 (clutter_container_child_set_property),
3276 (clutter_container_child_get_property): Fix gtk-doc parameter
3279 * clutter/clutter-container.h: Fix documentation of the
3282 * clutter/clutter-event.h: Fix documentation.
3284 * clutter/clutter-feature.h: Fix documentation.
3286 * clutter/clutter-types.h: Add ClutterRequestMode.
3288 * clutter/x11/clutter-event-x11.c: Fix documentation.
3290 * tests/test-fullscreen.c: Verify that the stage size has been
3291 changed by clutter_stage_fullscreen().
3293 2008-06-10 Emmanuele Bassi <ebassi@openedhand.com>
3295 Bug #815 - Split up request, allocation, and paint box
3297 * clutter/clutter-actor.[ch]: Rework the size allocation,
3298 request and paint area. Now ::request_coords() is called
3299 ::allocate(), and ::query_coords() has been split into
3300 ::get_preferred_width() and ::get_preferred_height(). See
3301 the documentation and the layout test on how to implement
3302 a container and layout manager with the new API. (#915,
3303 based on a patch by Havoc Pennington, Lucas Rocha and Johan
3306 * clutter/clutter-clone-texture.c: Port CloneTexture to
3307 the new size negotiation API; it just means forwarding
3308 the requests to the parent texture.
3310 * clutter/clutter-deprecated.h: Add deprecated and replaced
3313 * clutter/clutter-entry.c: Port Entry to the new size
3316 * clutter/clutter-group.c: Port Group to the new size
3317 negotiation API; the semantics of the Group actor do not
3320 * clutter/clutter-label.c: Port Label to the new size
3321 negotiation API, and vastly simplify the code.
3323 * clutter/clutter-main.[ch]: Add API for executing a
3324 relayout when needed.
3326 * clutter/clutter-private.h: Add new Stage private API.
3328 * clutter/clutter-rectangle.c: Update the get_abs_opacity()
3329 call to get_paint_opacity().
3331 * clutter/clutter-stage.c:
3332 (clutter_stage_get_preferred_width),
3333 (clutter_stage_get_preferred_height),
3334 (clutter_stage_allocate),
3335 (clutter_stage_class_init): Port Stage to the new size
3338 * clutter/clutter-texture.c: Port Texture to the new size
3341 * clutter/clutter-types.h: Add ClutterRequestMode enumeration.
3343 * clutter/x11/clutter-stage-x11.c: Port the X11 stage
3344 implementation to the new size negotiation API.
3346 * tests/Makefile.am: Add the layout manager test case.
3348 * tests/test-opacity.c: Update.
3350 * tests/test-project.c: Update.
3352 * tests/test-layout.c: Test case for a layout manager implemented
3353 using the new size negotiation API; the layout manager handles
3354 both transformed and untransformed children.
3356 2008-06-10 Emmanuele Bassi <ebassi@openedhand.com>
3358 * Makefile.am: Add the po/ directory to the build.
3360 2008-06-10 Emmanuele Bassi <ebassi@openedhand.com>
3362 * autogen.sh: Check for, and run glib-gettextize.
3364 * configure.ac: Set up the localization support.
3366 * clutter/clutter-main.c: Do not define the GETTEXT_PACKAGE,
3367 but use the one from the configure script.
3369 * po/POTFILES.in: Template for the translatable files.
3371 2008-06-10 Chris Lord <chris@openedhand.com>
3373 * clutter/clutter-main.c: (pre_parse_hook):
3374 Call setlocale on init
3376 * clutter/x11/clutter-event-x11.c: (translate_key_event):
3377 Fix typo and use the same buffer size as xev
3379 2008-06-10 Øyvind Kolås <pippin@o-hand.com>
3381 * clutter/clutter-texture.c: improved documentation for
3382 clutter_texture_set_filter_quality.
3384 2008-06-10 Chris Lord <chris@openedhand.com>
3386 Bug #916 - ClutterKeyEvent:unicode_value is ignored
3387 Bug #950 - AltGr not handled
3389 * clutter/osx/clutter-event-osx.c: (clutter_event_osx_translate):
3390 * clutter/x11/clutter-event-x11.c: (translate_key_event):
3391 * tests/test-events.c: (fill_keybuf), (input_cb):
3392 Apply patch from Tommi Komulainen, fill the unicode_value attribute of
3393 the ClutterKeyEvent struct. Also use XKeycodeToKeysym, as suggested in
3394 bug #950, comment #2
3396 2008-06-10 Matthew Allum <mallum@openedhand.com>
3398 * clutter/clutter-texture.c:
3399 Minor reformatting cleanups. Emit filter-quality prop on change.
3400 * clutter/glx/clutter-glx-texture-pixmap.c:
3401 Support mipmaps via filter quality prop.
3403 2008-06-10 Chris Lord <chris@openedhand.com>
3405 * tests/Makefile.am:
3406 * tests/test-entry-auto.c:
3407 Add automatic test for ClutterEntry, by Tommi Komulainen
3409 2008-06-10 Chris Lord <chris@openedhand.com>
3411 * clutter/cogl/common/cogl-primitives.c: (_cogl_path_arc):
3412 Draw as expected when end angle is lower than start angle (i.e. do not
3413 swap the angles). This aligns with cairo behaviour.
3415 2008-06-10 Tommi Komulainen <tommi.komulainen@iki.fi>
3417 Bug#959 - Multiple minor improvements
3419 * configure.ac: pick up GDKPIXBUF_PREFIX from gdk-pixbuf-2.0
3422 * clutter/clutter-keysyms-table.h: cosmetic fix for ifdef guard
3423 name in the comment (leftover from earlier commit)
3425 * tests/test-textures.c: don't depend on GdkPixbuf as we're not
3426 using any actual features from it, just plain pixel buffer
3429 * clutter/clutter-timeline.c
3430 * clutter/clutter-timeline.h (clutter_timeline_list_markers): Use
3431 gsize* to return number of items, not guint*
3432 * tests/test-paint-wrapper.c: use correct type (guint*) in call
3433 to clutter_actor_get_size()
3435 * tests/test-depth.c (janus_group): properly take height2 into
3436 account when calculating needed height for the rectangle
3438 * tests/test-cogl-tex-getset.c: use rowstride, not width*4, when
3439 calculating pixel offsets
3441 * tests/test-cogl-tex-getset.c: Don't assume/force RGBA format,
3442 also support ARGB format (needed with quartz imageloader.)
3444 2008-06-09 Tommi Komulainen <tommi.komulainen@iki.fi>
3446 * clutter/osx/clutter-backend-osx.c (clutter_backend_osx_post_parse):
3447 Print GL_VENDOR, GL_RENDERER, GL_VERSION and GL_EXTENSIONS to aid
3450 2008-06-09 Tommi Komulainen <tommi.komulainen@iki.fi>
3452 Bug #930 - add support for quartz imagebackend
3454 * clutter/cogl/common/cogl-bitmap-pixbuf.c
3455 (_cogl_bitmap_from_file): When USE_QUARTZ is defined implement
3456 using Core Graphics.
3457 * configure.ac: support --with-imagebackend=quartz and print
3458 which imagebackend is selected. Make quartz default on OSX
3460 2008-06-09 Øyvind Kolås <pippin@o-hand.com>
3462 * clutter/cogl/common/cogl-primitives.c: (cogl_path_rel_curve_to):
3463 fixed naming of implementation of cogl_path_rel_curve_to (it was
3464 called just cogl_rel_curve_to).
3466 2008-06-09 Emmanuele Bassi <ebassi@openedhand.com>
3468 * configure.ac: Clean up a bit the X11 and X extensions
3469 checks with PKG_CHECK_EXISTS(). Since we are filling up the
3470 X11_CFLAGS and X11_LIBS variables ourselves there is no
3471 point in polluting the Makefiles with unused variables.
3473 * clutter/Makefile.am: Remove the pkg-config variable
3474 evaluation and use the values retrieved from the configure
3477 2008-06-09 Chris Lord <chris@openedhand.com>
3479 Bug #914 - ClutterEntry is confused about characters vs. bytes
3481 * clutter/clutter-entry.c: (clutter_entry_ensure_layout),
3482 (clutter_entry_handle_key_event_internal),
3483 (clutter_entry_set_text):
3484 Fix mix-up of character and byte counts, handle unicode correctly.
3485 Use clutter_key_event_unicode() instead of
3486 clutter_keysym_to_unicode().
3488 * clutter/clutter-event.c: (clutter_key_event_unicode):
3489 Don't ignore ClutterKeyEvent.unicode_value
3491 * clutter/clutter-keysyms-table.h:
3492 Rename header define so as not to conflict with clutter-keysyms.h
3494 Patch originally by Emmanuele Bassi, with input from Tommi Komulainen.
3496 2008-06-07 Øyvind Kolås <pippin@o-hand.com>
3498 * clutter/clutter-texture.c: made the filter-quality proeprty also
3499 control the use of mipmapping.
3500 * clutter/clutter-texture.h: added ClutterTextureQuality enum.
3501 * tests/test-texture-quality.c: new test.
3502 * tests/Makefile.am: added test-texture-quality
3504 2008-06-06 Emmanuele Bassi <ebassi@openedhand.com>
3506 * clutter/clutter-texture.c:
3507 (clutter_texture_class_init): Do not unrealize on hide(), and
3508 do not realize() on show. By default, clutter_actor_show() will
3509 realize ourselves, and we don't want to unrealize when hidden
3510 to avoid paying the penalty of reading back the texture data
3511 from the video memory.
3513 * tests/test-actors.c: Show all textures again when pressing
3516 2008-06-06 Neil Roberts <neil@o-hand.com>
3518 * tests/test-shader.c: Use the special wrapper vars when building
3519 for GLES 2 and automatically cycle the shaders because it's
3520 difficult to right-click.
3522 2008-06-06 Neil Roberts <neil@o-hand.com>
3524 * tests/test-shader.c: Fixed to use sampler2D instead of
3525 sampler2DRect now that GL_TEXTURE_RECTANGLE support is disabled in
3526 revision 2834. The ClutterTexture actor now has the
3527 'disable-slicing' property set. The distance in texture
3528 coordinates between pixels is passed in as a uniform so that the
3529 box-blur shader can still work.
3531 2008-06-06 Emmanuele Bassi <ebassi@openedhand.com>
3533 Bug #952 - Fix test-textures in trunk
3535 * tests/test-textures.c: Use USE_GDKPIXBUF instead of
3536 USE_PIXBUF. (#952, Gwenole Beauchesne)
3538 2008-06-06 Emmanuele Bassi <ebassi@openedhand.com>
3540 Bug #951 - Fix clutter_entry_init() in trunk
3542 * clutter/clutter-entry.c (clutter_entry_init): Remove a
3543 variable shadowing another one. (#951, Tommi Komulainen)
3545 2008-06-06 Emmanuele Bassi <ebassi@openedhand.com>
3547 Bug #955 - ClutterLabel is missing fallback resolution handling
3549 * clutter/clutter-label.c (clutter_label_init): Handle
3550 clutter_backend_get_resolution() return value -1 similar to
3551 ClutterEntry (falling back to 96.0). (#955, Tommi Komulainen)
3553 2008-06-06 Neil Roberts <neil@o-hand.com>
3555 * clutter/eglnative/clutter-stage-egl.c
3556 (clutter_stage_egl_realize): Use ES 2 renderable type when
3557 building for GLES 2.
3559 * clutter/eglnative/clutter-event-egl.c (get_backend_time): Added
3560 a NULL for the microseconds parameter of g_timer_elapsed.
3562 * clutter/eglnative/clutter-stage-egl.h:
3563 * clutter/eglnative/clutter-egl.h:
3564 * clutter/eglnative/clutter-backend-egl.h: Include
3565 clutter-egl-headers.h instead of including the GL headers directly
3566 so it can include gl2.h when building for GLES 2.
3568 * clutter/eglnative/clutter-egl-headers.h:
3569 * clutter/eglnative/Makefile.am (libclutter_eglnative_la_SOURCES):
3570 Added clutter-egl-headers.h
3572 * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: GLES 2
3573 doesn't provide a default precision for floats in the fragment
3574 shader and it will reject the shader if there isn't one.
3576 2008-06-06 Matthew Allum <mallum@openedhand.com>
3578 Bug #948 - Remove texture rectangle support
3580 * clutter/clutter-feature.c:
3581 * clutter/clutter-feature.h:
3582 * clutter/clutter-texture.c:
3583 * clutter/cogl/gl/cogl.c:
3584 * clutter/glx/clutter-glx-texture-pixmap.c:
3585 Remove support for GL_TEXTURE_RECTANGLE_ARB (now using just regular
3586 2D textures, with optional npots extension). Simplifys code, + makes
3587 mipmap & shader support much more sane.
3589 2008-06-06 Øyvind Kolås <pippin@o-hand.com>
3591 Bug #931 - suspicious size allocation for pixel data.
3593 * clutter/cogl/common/cogl-bitmap-pixbuf.c:
3594 (_cogl_bitmap_from_file): allocate height×rowstride and not duplicate
3595 gdkpixbuf's strange optimization saving some bytes at the end of the
3598 2008-06-05 Tommi Komulainen <tommi.komulainen@iki.fi>
3600 Bug 913 - cogl fails to build on OSX
3602 * clutter/cogl/gl/cogl-fbo.c: define GL_READ_FRAMEBUFFER_EXT and
3603 GL_DRAW_FRAMEBUFFER_EXT if not defined in the build system. The
3604 #ifdef can fail if they're not #defines but variables or enums.
3605 As the values are supposed to be industry standard even then
3606 it shouldn't have ill effects.
3608 2008-06-05 Tommi Komulainen <tommi.komulainen@iki.fi>
3610 Bug #911 - OSX: add multistage support
3612 * clutter/osx/clutter-backend-osx.{c,h}
3613 (clutter_backend_osx_init_stage, clutter_backend_osx_get_stage,
3614 clutter_backend_osx_redraw, clutter_backend_osx_create_stage,
3615 clutter_backend_osx_ensure_context, clutter_backend_osx_class_init,
3616 clutter_backend_osx_dispose, ClutterGLView:drawRect:):
3617 * clutter/osx/clutter-stage-osx.{c,h} (clutter_stage_osx_realize,
3618 ClutterGLWindow:setFrameSize:):
3619 Adapt to new multistage backend API. Don't keep a pointer to
3620 default stage. Derive from ClutterActor instead of ClutterStage.
3621 Implement ClutterStageWindow interface. Paint, resize and
3622 otherwise manipulate the wrapper rather than self when necessary.
3624 (clutter_backend_post_parse): Create our singleton GL context
3625 here. We could probably create the context when the default
3626 stage is created, but I think this is more clean.
3628 * clutter/osx/clutter-event-osx.c (clutter_event_osx_translate)
3629 * clutter/osx/clutter-stage-osx.c (clutter_stage_osx_state_update,
3630 ClutterGLWindow:windowShouldClose:):
3631 * clutter/osx/clutter-stage-osx.h: Export ClutterGLWindow interface
3632 for clutter-event-osx.c to easily get the stage for NSWindow.
3633 Fill in ClutterEventAny::stage on our events.
3635 2008-06-05 Tommi Komulainen <tommi.komulainen@iki.fi>
3637 Bug #910 - OSX: missing memory pool
3639 * clutter/osx/clutter-backend-osx.c (clutter_backend_osx_redraw):
3640 Add missing memory pool wrapup.
3642 2008-06-05 Tommi Komulainen <tommi.komulainen@iki.fi>
3644 Bug #909 - OSX: missing NULL pointer handling
3646 * clutter/osx/clutter-stage-osx.c (ClutterGLWindow,
3647 clutter_stage_osx_set_title): NSString:stringWithUTF8String:
3648 does not accept NULL values, use empty string ("") instead.
3649 Avoids potential crash.
3651 2008-06-05 Emmanuele Bassi <ebassi@openedhand.com>
3653 * tests/Makefile.am:
3654 * tests/test-paint-wrapper.c: Add a test case (merely, a copy
3655 of test-actors.c) that verifies that handlers to the ::paint
3656 signal are called in the right order.
3658 2008-06-05 Emmanuele Bassi <ebassi@openedhand.com>
3660 Bug #840 - Implement prepare-paint and finish-paint signals.
3662 * clutter/clutter-actor.c:
3663 (clutter_actor_class_init): Add the ::paint, ::realize and
3664 ::unrealize signals to ClutterActor. It is possible to
3665 override the paint, realization and unrealization of an
3666 actor without subclassing it. The ::paint signal handlers
3667 have the same limitations of a ClutterActor::paint implementation
3670 (clutter_actor_realize),
3671 (clutter_actor_unrealize),
3672 (clutter_actor_paint): Emit the signals instead of calling
3673 the functions from the class vtable.
3675 2008-06-05 Emmanuele Bassi <ebassi@openedhand.com>
3677 * ChangeLog-ivan: Remove the ChangeLog of the clutter-ivan
3678 branch; the branch already contains it.
3680 2008-06-05 Matthew Allum <mallum@openedhand.com>
3682 * clutter/glx/clutter-glx-texture-pixmap.h:
3683 Actually export clutter_glx_texture_pixmap_using_extension ()
3685 2008-06-05 Chris Lord <chris@openedhand.com>
3687 * clutter/clutter-entry.c:
3688 Correct the documentation for clutter_entry_set_max_length, fixes bug
3691 2008-06-04 Robert Bragg <bob@o-hand.com>
3693 * tests/test-clip.c:
3694 Removes a spurious #include <gdk-pixbuf/gdk-pixbuf.h> which may not
3695 be found if using --with-imagebackend=internal
3697 2008-06-04 Robert Bragg <bob@o-hand.com>
3700 Checks that for pangocairo >= 1.18, since
3701 pangocairo-font.c uses pango_cairo_font_get_scaled_font which isn't
3702 otherwise available.
3704 2008-06-03 Neil Roberts <neil@o-hand.com>
3706 Applied patch from bug #947
3708 * clutter/clutter-stage.c (clutter_stage_get_default): Don't grab
3709 the floating reference when creating the default stage. The stage
3710 manager will take a reference to it so it will behave as any other
3712 (clutter_stage_new): Don't take the floating reference to the new
3713 stage but let the stage manager keep it instead.
3715 * clutter/clutter-stage-manager.c
3716 (_clutter_stage_manager_add_stage): Take a reference to the stage
3717 when it is added to the list.
3718 (_clutter_stage_manager_remove_stage): Unref the stage when it is
3719 removed from the list.
3720 (clutter_stage_manager_dispose): Keep track of the 'next' pointer
3721 as a separate variable so we can cope when the stage being
3722 destroyed removes itself from the list as the list is being
3725 * clutter/clutter-actor.c (clutter_actor_destroy): Take a
3726 reference at the beginning of the function even if there is no
3727 parent container so that overall the reference count is not
3728 changed when the actor is unref'd again at the bottom of the
3729 function. Previously it would have a net effect of leaving the
3730 reference count alone unless it is a top level actor in which case
3733 2008-06-03 Matthew Allum <mallum@openedhand.com>
3735 * clutter/glx/clutter-glx-texture-pixmap.c:
3736 Dont always fallback to x11 (slow) updates for a single
3739 * clutter/x11/clutter-x11-texture-pixmap.c:
3740 Move shm allocation to only area updates.
3742 2008-06-03 Øyvind Kolås <pippin@o-hand.com>
3744 * clutter/clutter-container.c: (container_get_child_property):
3745 s/g_object_set_property/g_object_get_property/
3747 2008-06-02 Neil Roberts <neil@o-hand.com>
3749 * clutter/pango/pangoclutter-glyph-cache.c
3750 (pango_clutter_glyph_cache_set): When creating a new band, make
3751 sure the texture is wide enough for the glyph, not just tall
3754 2008-06-02 Neil Roberts <neil@o-hand.com>
3756 Applied 'final patch' from bug #874
3758 * clutter/cogl/gles/cogl.c:
3759 * clutter/cogl/gl/cogl.c: The clip planes are now set using the
3760 inverse projection matrix as the modelview matrix so that they can
3761 be specified in screen coordinates.
3763 * clutter/cogl/gles/cogl-context.h (CoglContext):
3764 * clutter/cogl/gl/cogl-context.h (CoglContext): Added a member to
3765 cache the inverse projection matrix
3767 * clutter/clutter-fixed.h: Added a constant for converting from
3770 * clutter/clutter-fixed.c (clutter_atani, clutter_atan2i): Added
3771 fixed-point versions of atan and atan2.
3773 * tests/test-clip.c: Added a test for clipping with various
3774 rotations and depths.
3776 * tests/Makefile.am (noinst_PROGRAMS): Added test-clip
3778 2008-06-02 Neil Roberts <neil@o-hand.com>
3780 * clutter/cogl/gles/cogl-gles2-wrapper.h: The uniform numbers are
3781 now stored in a separate struct so they can be stored for
3782 application program objects as well.
3784 * clutter/cogl/gles/cogl.c: Moved stub shader functions into
3786 (_cogl_features_init): Report support for the shaders feature on
3789 * clutter/cogl/gles/cogl-shader.h:
3790 * clutter/cogl/gles/cogl-shader.c:
3791 * clutter/cogl/gles/cogl-program.h:
3792 * clutter/cogl/gles/cogl-program.c: Separate files to handle
3793 shaders on programs on GLES. If version 1.1 is being used then the
3794 stub functions which all fail are still used.
3796 * clutter/cogl/gles/cogl-gles2-wrapper.c
3797 (cogl_gles2_wrapper_init, cogl_gles2_wrapper_bind_attributes),
3798 (cogl_gles2_wrapper_get_uniforms): Move the uniforms and attribute
3799 bindings into a separate function so they can be used to bind on
3800 application shaders as well.
3801 (cogl_gles2_wrapper_update_matrix): Now takes a parameter and is
3802 no longer static so that it can be used to update all of the
3803 matrices when a new shader is bound.
3805 * clutter/cogl/gles/cogl-defines.h.in: Use GL_COMPILE_STATUS for
3806 CGL_OBJECT_COMPILE_STATUS if the latter isn't available (for
3809 * clutter/cogl/gles/cogl-context.h (CoglContext): Added handle
3810 arrays for programs and shaders.
3812 * clutter/cogl/gles/cogl-context.c (cogl_create_context)
3813 (cogl_destroy_context): Initialize and destroy program and shader
3816 * clutter/cogl/gles/Makefile.am (libclutter_cogl_la_SOURCES): Add
3817 cogl-{shader,program}.{c,h}
3819 2008-06-02 Neil Roberts <neil@o-hand.com>
3821 * clutter/cogl/gl/cogl-context.c (cogl_destroy_context): Fix
3822 cut-and-paste error where the wrong arrays were being freed.
3824 2008-06-01 Emmanuele Bassi <ebassi@openedhand.com>
3826 Merge from clutter-0-6:
3828 * clutter/clutter-model.c:
3829 (clutter_model_iter_set_internal_valist): Add an internal function
3830 wrapping ClutterModelIter::set_value that does not emit the
3831 ::row-changed signal. Emitting this signal before the ::row-added
3832 one is wrong: a row cannot change before being inserted.
3834 (clutter_model_append), (clutter_model_prepend),
3835 (clutter_model_insert): Use the non-signal emitting variant of
3836 clutter_model_iter_set_valist().
3838 (clutter_model_iter_set_valist): Use the internal version and emit
3839 the ::row-changed signal at the end.
3841 2008-05-31 Emmanuele Bassi <ebassi@openedhand.com>
3843 Bug #943 - Signals are only emitted within a certain area of
3846 * clutter/clutter-main.c (clutter_do_event): Use the proper
3847 API and not the macros for the default stage, in case we are
3848 using a backend supporting multiple stages. (Julian Aron Prenner)
3850 2008-05-30 Emmanuele Bassi <ebassi@openedhand.com>
3852 * clutter/pango/pangoclutter-fontmap.c:
3853 * clutter/pango/pangoclutter-renderer.c:
3854 * clutter/pango/pangoclutter.h
3855 * clutter/pango/pangoclutter-private.h: Add a function retrieving
3856 the font mipmapping setting.
3858 2008-05-29 Neil Roberts <neil@o-hand.com>
3860 * clutter/cogl/gles/cogl-gles2-wrapper.h (CoglGles2Wrapper): Added
3861 uniforms for alpha testing.
3863 * clutter/cogl/gles/cogl-gles2-wrapper.c
3864 (cogl_gles2_wrapper_init): Get the uniforms for alpha testing
3866 (cogl_wrap_glEnable, cogl_wrap_glDisable): Enable/disable alpha
3868 (cogl_wrap_glAlphaFunc): Filled in the wrapper.
3870 * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: Added alpha
3873 * clutter/cogl/gles/cogl-gles2-wrapper.h:
3874 * clutter/cogl/gles/cogl-gles2-wrapper.c
3875 (cogl_wrap_glGetIntegerv): Added a wrapper for glGetIntegerv so
3876 that it can report zero clip planes.
3878 * clutter/cogl/gles/cogl.c:
3879 * clutter/cogl/gles/cogl-texture.c: Use the wrapped version of
3882 * clutter/cogl/gles/cogl-primitives.c (_cogl_path_fill_nodes): Use
3883 _cogl_features_available to check for the stencil buffer instead
3884 of an #ifdef. The stencil buffer is available in the default
3885 profile for the GLES 2 simulator.
3887 2008-05-29 Emmanuele Bassi <ebassi@openedhand.com>
3889 * configure.ac: Check the --with switches as soon as we have them,
3890 to avoid further checks that will fail anyway.
3892 2008-05-29 Emmanuele Bassi <ebassi@openedhand.com>
3894 * README: Update the configure arguments list.
3896 2008-05-28 Neil Roberts <neil@o-hand.com>
3898 * clutter/cogl/gles/cogl-gles2-wrapper.c
3899 (cogl_gles2_wrapper_init): Get uniforms for fog parameters and
3901 (cogl_wrap_glDrawArrays): Store the modelview matrix in a uniform
3902 as well so that it can be used for fogging calculations.
3903 (cogl_wrap_glEnable, cogl_wrap_glDisable): Enable/disable fogging.
3904 (cogl_wrap_glFogx, cogl_wrap_glFogxv): Fill in wrapper to set
3907 * clutter/cogl/gles/cogl-fixed-vertex-shader.glsl: Calculate the
3908 fog amount if fogging is enabled.
3910 * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: Mix with fog
3913 * clutter/cogl/gles/cogl-gles2-wrapper.h (CoglGles2Wrapper): Add
3914 uniforms for fogging.
3916 2008-05-28 Emmanuele Bassi <ebassi@openedhand.com>
3918 * clutter/pango/pangoclutter-font.c: Remove unneeded file.
3920 * tests/Makefile.am:
3921 * tests/test-random-text.c: Add a test for checking the
3924 2008-05-28 Emmanuele Bassi <ebassi@openedhand.com>
3926 Bug #919 - Replacement pango renderer (Neil Roberts)
3928 * clutter/clutter-backend.h:
3929 * clutter/clutter-backend.c:
3930 (clutter_backend_set_font_options),
3931 (clutter_backend_get_font_options): Add the ability to set
3932 the cairo_font_options_t* for the backend at construction
3933 time, so that backend implementations can have their own
3936 * clutter/clutter-color.c: Include pango/pango-attributes.h
3937 for the pango_color_parse() function.
3939 * clutter/clutter-label.c:
3940 (clutter_label_ensure_layout),
3941 (clutter_label_init), (clutter_label_set_text),
3942 (clutter_label_set_font_name), (clutter_label_set_ellipsize),
3943 (clutter_label_set_use_markup): Ensure that the cache is
3944 always primed when the Label changes; this makes sure that
3945 the cache is rebuilt outside the paint run, which should
3946 make the painting perform better especially on embedded
3949 * clutter/clutter-entry.c:
3950 (clutter_entry_ensure_layout),
3951 (clutter_entry_init), (clutter_entry_set_text),
3952 (clutter_entry_set_font_name): Ditto as above.
3954 * clutter/clutter-private.h:
3955 * clutter/clutter-main.[ch]: Create the font-map inside the
3956 main context; add two new functions:
3958 clutter_clear_glyph_cache()
3959 clutter_set_use_mipmapped_text()
3961 that control the glyphs cache.
3963 * clutter/pango/Makefile.am:
3964 * clutter/pango/pangoclutter-fontmap.c:
3965 * clutter/pango/pangoclutter-private.h:
3966 * clutter/pango/pangoclutter-render.c:
3967 * clutter/pango/pangoclutter.h: Rewrite the Pango renderer
3968 using a PangoCairo context and saving the glyphs inside a
3969 more efficient cache.
3971 * configure.ac: Depend on pangocairo instead of pangoft2.
3973 2008-05-28 Emmanuele Bassi <ebassi@openedhand.com>
3975 Bug 882 - Allow child properties for containers implementing the
3976 ClutterContainer interface (Øyvind Kolås)
3978 * clutter/clutter-child-meta.[ch]: Base class for the metadata
3979 of a ClutterActor inside a ClutterContainer; the ChildMeta
3980 object implements a wrapper for storing data that is attached
3981 to a ClutterActor only when it's part of a ClutterContainer.
3982 The ChildMeta object is used to store the child properties
3983 accessible through the ClutterContainer API.
3985 * clutter/clutter-container.[ch]: Creates the ChildMeta for
3986 each actor, in case the Container specifies the ChildMeta
3989 * clutter/Makefile.am: Add clutter-child-meta.[ch] to the build.
3991 * clutter/clutter-marshal.list: Add the marshaller for the
3992 ClutterContainer::child-notify signal.
3994 * clutter/clutter-types.h: Declare ClutterContainer and
3995 ClutterChildMeta to avoid recursive inclusion.
3997 2008-05-28 Neil Roberts <neil@o-hand.com>
3999 * clutter/cogl/gles/Makefile.am: Use old-style Makefile rules for
4000 the stringify script so that automake won't complain.
4002 2008-05-28 Emmanuele Bassi <ebassi@openedhand.com>
4004 * tests/test-script.c:
4005 * tests/test-script.json: Test merging the same actor from two
4008 2008-05-28 Emmanuele Bassi <ebassi@openedhand.com>
4010 Fix merging of objects with the same id.
4012 * clutter/clutter-script.c:
4013 (json_object_end): If there already is an ObjectInfo under the
4014 parsed id, merge the construction with the currently stored
4017 (parse_children), (parse_signals),
4018 (parse_behaviours): Append the newly parsed children, signals
4019 and behaviours, in case the ObjectInfo already has unresolved
4022 (clutter_script_construct_object): Fix a typo in the type check.
4024 (clutter_script_init): Do not copy the key inside the hash
4025 table holding the objects - we are already holding it inside
4028 2008-05-28 Neil Roberts <neil@o-hand.com>
4030 * clutter/cogl/gles/cogl-gles2-wrapper.c (cogl_wrap_glGetFixedv):
4031 Filled in the wrapper for glGetFixedv
4033 2008-05-28 Neil Roberts <neil@o-hand.com>
4035 * clutter/cogl/gles/cogl-texture.c: Use the wrapper for
4036 glTexParameteri. Call glGenerateMipmap after every change to the
4039 * clutter/cogl/gles/cogl-gles2-wrapper.h:
4040 * clutter/cogl/gles/cogl-gles2-wrapper.c: Added a wrapper for
4041 glTexParameteri so that it can ignore requests to set
4042 GL_GENERATE_MIPMAP. Added a wrapper for glGenerateMipmap that does
4045 2008-05-28 Emmanuele Bassi <ebassi@openedhand.com>
4047 * clutter/clutter-script.c:
4048 (clutter_script_construct_object): Mark top-level objects,
4049 that is objects that don't have their ownership transferred
4050 when building up a ClutterScript.
4052 (object_info_free): Merge a fix from the stable branch, but
4053 do not check the type - check whether the object is a top
4054 level (we still need the ClutterActor type check in order to
4055 call clutter_actor_destroy()).
4057 2008-05-28 Emmanuele Bassi <ebassi@openedhand.com>
4059 * clutter/clutter-rectangle.c:
4060 (clutter_rectangle_paint): Remove commented out call to
4061 cogl_enable(); the call is not needed and the comment is
4064 2008-05-27 Neil Roberts <neil@o-hand.com>
4066 * clutter/eglx/clutter-stage-egl.h:
4067 * clutter/eglx/clutter-egl-headers.h:
4068 * clutter/eglx/clutter-backend-egl.h:
4069 * clutter/eglx/Makefile.am: Include the GLES and EGL headers via
4070 clutter-egl-headers.h so that the right version can be used
4071 depending on whether the GLES 2 wrapper is being used.
4073 * configure.ac: Added an automake conditional for whether the GLES
4074 2 wrapper should be used.
4076 * clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize):
4077 Remove the call to glGetIntegerv to get the max texture size. It
4078 was being called before the GL context was bound so it didn't work
4079 anyway and it was causing trouble for the GLES 2 simulator.
4081 * clutter/cogl/gles/stringify.sh: Shell script to convert the
4082 shaders into a C string.
4084 * clutter/cogl/gles/cogl-gles2-wrapper.h:
4085 * clutter/cogl/gles/cogl-gles2-wrapper.c: Wrappers for most of the
4086 missing GL functions in GLES 2.
4088 * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl:
4089 * clutter/cogl/gles/cogl-fixed-vertex-shader.glsl: New shaders for
4092 * clutter/cogl/gles/cogl-defines.h.in: Use the @CLUTTER_GL_HEADER@
4093 macro instead of always using the GLES 1 header.
4095 * clutter/cogl/gles/cogl-context.h (CoglContext): Include a field
4096 for the state of the GLES 2 wrapper.
4098 * clutter/cogl/gles/cogl-texture.c:
4099 * clutter/cogl/gles/cogl-primitives.c:
4100 * clutter/cogl/gles/cogl.c: Use wrapped versions of the GL
4101 functions where neccessary.
4103 * clutter/cogl/gles/Makefile.am: Add sources for the GLES 2
4104 wrapper and an extra build step to put the GLSL files into a C
4105 string whenever the files change.
4107 2008-05-26 Matthew Allum <mallum@openedhand.com>
4109 * clutter/x11/clutter-stage-x11.c: (clutter_stage_x11_request_coords):
4110 Dont allow the window to be resize to 0 dimentions. (fixes #933)
4112 2008-05-23 Emmanuele Bassi <ebassi@openedhand.com>
4114 Bug #912 - Invalid use of int* as parameter for glGetIntegerv
4116 * clutter/cogl/gl/cogl.c (_cogl_features_init): Use GLint
4117 instead of int. (#912, Tommi Komulainen)
4119 2008-05-23 Emmanuele Bassi <ebassi@openedhand.com>
4121 Bug #928 - Reparenting a child that itself is a container
4124 * clutter/clutter-actor.c (clutter_actor_set_parent): Realize
4125 an actor when setting its parent, if the parent is realized.
4127 * clutter/clutter-group.c:
4128 (clutter_group_realize), (clutter_group_class_init): Add the
4129 missing implementation of the ::realize() virtual function; this
4130 makes sure that the children of a Group are realized if the Group
4133 2008-05-21 Neil Roberts <neil@o-hand.com>
4135 * clutter/cogl/gl/cogl.c (error_string):
4136 * clutter/cogl/gles/cogl.c (error_string): Rename to
4137 _cogl_error_string and remove the static scoping so that it can be
4138 called in cogl-texture etc.
4140 * clutter/cogl/gl/cogl-texture.c (cogl_texture_new_from_foreign):
4141 * clutter/cogl/gles/cogl-texture.c (cogl_texture_new_from_foreign):
4142 GE(*) can't be used to wrap around calls that use the return
4145 * clutter/cogl/gl/cogl-texture.c (_cogl_texture_quad_sw)
4146 (_cogl_texture_quad_hw, cogl_texture_polygon): Remove GE(*)
4147 wrapper around calls in the middle of a glBegin/glEnd pair which
4148 otherwise always generate an error because glGetError can only be
4149 called outside of the pair.
4151 * clutter/cogl/gl/cogl-internal.h: Include stdio.h when definig
4152 COGL_DEBUG and declare a prototype for _cogl_error_string.
4154 * clutter/cogl/gles/cogl-internal.h: Match GE(*) macro to GL
4157 2008-05-21 Ivan Leben <ivan@o-hand.com>
4159 * clutter/cogl/gles/cogl-texture.c:
4160 (_cogl_texture_download_from_gl:) Only comment out the broken
4161 check for framebuffer alpha bits, not the check for alpha in
4164 2008-05-20 Øyvind Kolås <pippin@o-hand.com>
4166 Decouple actor opacity from fill opacity in ClutterRectangle (fixes
4167 race when both are set from clutter script also makes it more
4168 consistent with the behavior of other actors.)
4170 * clutter/clutter-rectangle.c: (clutter_rectangle_set_color): stop
4171 setting the opacity of the actor from the specified color.
4172 (clutter_rectangle_paint): combine the absolute opacity of the actor
4173 with the alpha of the color when painting.
4175 2008-05-20 Ivan Leben <ivan@o-hand.com>
4177 * clutter/cogl/gles/cogl-texture.c:
4178 (cogl_texture_download_from_gl:) Implemented a workaround
4179 for missing alpha framebuffer channel. There are still
4180 some issues with detecting whether alpha is present in the
4181 framebuffer. See comments in code. Test-cogl-tex-getset now
4182 successfully retrieves a RGBA texture image data.
4184 2008-05-19 Ivan Leben <ivan@o-hand.com>
4186 * clutter/cogl/gles/cogl-texture.c:
4187 (cogl_texture_download_from_gl:) Store old blending factors
4188 and restore them when done. The lack of ability to retrieve
4189 the alpha channel now more noticable in test-cogl-tex-getset
4190 since the edges of the hand are not antialiased.
4192 * clutter/cogl/gl(es)/cogl-internal.h: Declare
4193 cogl_blend_func to avoid "implicit implementation" compile
4196 2008-05-19 Ivan Leben <ivan@o-hand.com>
4198 * clutter/cogl/gl(es)/cogl.c: New internal function
4199 cogl_blend_func caches blending setup much like cogl_enable
4200 does with the enable flags. This separates blending factors
4201 setup from the enable/disable operation in preparation of
4202 the texture image retrieval fix for alpha channel on GLES.
4203 (cogl_enable:) Does not modify blending factors anymore.
4205 * clutter/cogl/gl(es)/cogl-context.h: CoglContext holds two
4206 new variables to cache blending src and dst factors.
4208 * clutter/cogl/gl(es)/cogl-context.c:
4209 (cogl_create_context:) Initialize blending factors.
4211 * clutter/cogl/gles/cogl-texture.c:
4212 (cogl_texture_download_from_gl:) Set blending factors to
4213 CGL_ONE, CGL_ZERO which fixes the slighlty improper behavior
4214 where source colour was actually multiplied with its alpha
4215 value in the result (not noticable on current tests).
4217 2008-05-19 Emmanuele Bassi <ebassi@openedhand.com>
4219 * clutter/eglx/Makefile.am: Fix the INCLUDE directives to
4220 properly include the X11 backend headers.
4222 * clutter/glx/Makefile.am: Add the libclutter-x11.la static
4223 library to the LDADD directives.
4225 2008-05-19 Tomas Frydrych <tf@openedhand.com>
4227 * clutter/x11/clutter-x11.h:
4228 * clutter/glx/clutter-glx.h:
4229 Include texture pixmap headers.
4231 2008-05-16 Neil Roberts <neil@o-hand.com>
4233 * clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize):
4234 Fix name of parent class variable which otherwise breaks the
4237 2008-05-16 Neil Roberts <neil@o-hand.com>
4239 Use the Mesa headers instead of depending on GLee for Win32
4242 * configure.ac: No longer check for GLee
4244 * clutter/cogl/gl/cogl-defines.h.in: Don't bother including GLee.h
4246 * build/mingw/mingw-cross-compile.sh: No longer downloads libGLee
4247 but downloads the Mesa library instead and installs the headers
4248 from that. Fixed the libpng version.
4250 2008-05-16 Tomas Frydrych <tf@openedhand.com>
4252 * clutter/glx/Makefile.am:
4253 * clutter/x11/Makefile.am:
4254 Install glx and x11 specific includes into clutter/glx and
4255 clutter/x11 so that header files that include glx/*.h or x11/*.h
4258 2008-05-16 Neil Roberts <neil@o-hand.com>
4260 * clutter/win32/clutter-event-win32.c (message_translate): Fix
4261 signedness of old_xpos and old_ypos to get rid of compiler
4264 * clutter/win32/clutter-backend-win32.c
4265 (clutter_backend_win32_get_features): Cast the result of
4266 glGetString to a signed char pointer to avoid compiler warnings.
4268 2008-05-15 Neil Roberts <neil@o-hand.com>
4270 * clutter/win32/clutter-stage-win32.c:
4271 * clutter/win32/clutter-backend-win32.c: Reflect changes to the
4272 GLX/X11 backend in revisions 2708-2709 and 2713-2715 which
4273 simplify the backend a little.
4275 2008-05-15 Emmanuele Bassi <ebassi@openedhand.com>
4277 * clutter/x11/clutter-backend-x11.c:
4278 * clutter/clutter-event.h:
4279 * clutter/clutter-feature.h:
4280 * clutter/clutter-fixed.c:
4281 * clutter/clutter-model.h: Fix documentation.
4283 * clutter/eglnative/clutter-backend-egl.[ch]:
4284 * clutter/eglnative/clutter-event-egl.c: Add the same solution
4285 used for the SDL backend in order to get the time of an event.
4286 This should fix the motion event throttling and the click count
4287 on button press. (#906)
4289 * tests/test-pixmap.c (create_pixmap), (main): Fix preprocessor
4292 2008-05-14 Emmanuele Bassi <ebassi@openedhand.com>
4294 * tests/test-threads.c: Add a "progress bar" actor and
4295 make the test take less amount of time to complete.
4297 2008-05-14 Emmanuele Bassi <ebassi@openedhand.com>
4299 * tests/test-events.c: Clean up a bit, and print out more
4300 messages when pressing one of the rectangles.
4302 * tests/test-threads.c: Be more verbose in the console, and
4303 apply another behaviour on the rectangle, to show that we
4306 2008-05-14 Øyvind Kolås <pippin@o-hand.com>
4308 * clutter/cogl/gles/cogl.c: (_cogl_features_init): do not set
4309 COGL_FEATURE_TEXTURE_READ_PIXELS, since it is not available.
4311 2008-05-14 Matthew Allum <mallum@openedhand.com>
4313 * clutter/clutter-actor.c:
4314 * clutter/clutter-main.c:
4315 * clutter/clutter-private.h:
4316 Rejid Øyvind's previous commit a little moving more into
4317 clutter-main.c and using ClutterContext.
4318 Also Refactor clutter_init & clutter_init_with_args to share
4319 same core init code.
4321 2008-05-13 Øyvind Kolås <pippin@o-hand.com>
4323 Made it possible to do picking when the colors stored in the
4324 framebuffer are only approximately the correct value.
4326 * clutter/clutter-actor.c:
4327 (init_bits): initialize constants about how many bits are
4328 available/will be used for r,g,b components.
4329 (_clutter_pix_to_id): now own function, compute an id from a
4330 pixel into its own function (used from _clutter_do_pick).
4331 (_clutter_id_to_col): now own function, computes the color to use for
4333 (clutter_actor_paint): use clutter_id_to_col.
4334 * clutter/clutter-main.c:
4335 (_clutter_do_pick): use _clutter_pix_to_id
4336 (clutter_main): re-enable invocation of fruity app shell.
4338 2008-05-13 Emmanuele Bassi <ebassi@openedhand.com>
4340 * clutter/fruity/clutter-stage-fruity.c:
4341 (clutter_stage_egl_show), (clutter_stage_egl_hide): Don't chain
4342 up and set flags, as it is not needed anymore.
4344 (clutter_stage_egl_realize): Set the REALIZED flag.
4346 * clutter/eglnative/clutter-stage-egl.c:
4347 (clutter_stage_egl_show), (clutter_stage_egl_hide): Don't chain
4348 up and set flags, as it is not needed anymore.
4350 2008-05-13 Emmanuele Bassi <ebassi@openedhand.com>
4352 * clutter/glx/clutter-stage-glx.c:
4353 (clutter_stage_glx_unrealize): Move the shaders release from here...
4355 * clutter/glx/clutter-backend-glx.c:
4356 (clutter_backend_glx_dispose): ... to here. Shaders should be
4357 released when the GL context is being destroyed, and that only
4358 happens when the backend is being disposed, now that we support
4361 2008-05-13 Emmanuele Bassi <ebassi@openedhand.com>
4363 * clutter/clutter-backend.c:
4364 (_clutter_backend_create_stage): Call _clutter_stage_set_window()
4365 ourselves, thus removing yet another action that backends must
4366 implement and might get wrong; also cuts a backend-agnostic piece
4367 of code duplication.
4369 * clutter/eglnative/clutter-backend-egl.c:
4370 (clutter_backend_egl_create_stage): Update the EGL native backend.
4372 * clutter/eglx/clutter-backend-egl.c:
4373 (clutter_backend_egl_create_stage): Update the EGLX backend.
4375 * clutter/fruity/clutter-backend-fruity.c:
4376 (clutter_backend_egl_create_stage): Update the fruity backend
4378 * clutter/glx/clutter-backend-glx.c:
4379 (clutter_backend_glx_create_stage): Update the GLX backend.
4381 * clutter/sdl/clutter-backend-sdl.c:
4382 (clutter_backend_sdl_create_stage): Update the SDL backend.
4384 * HACKING.backends: Update the ::create_stage() description.
4386 2008-05-13 Emmanuele Bassi <ebassi@openedhand.com>
4388 * clutter/x11/clutter-event-x11.c (event_translate): Remove the
4389 cheap Expose event compression, as it seems to play games when a
4390 composite manager is running. It's also not really needed, as
4391 the redraw queue will avoid redraws too close to each other
4394 * clutter/x11/clutter-stage-x11.c:
4395 (clutter_stage_x11_show), (clutter_stage_x11_hide): Do not chain
4396 up just to set the flags. This fixes a critical warning coming
4397 from ClutterActor::hide() default implementation.
4399 2008-05-13 Ivan Leben <ivan.leben@o-hand.com>
4401 * clutter/cogl/gl/cogl-defines.h.in:
4402 Fix GL function prototypes on OS X by #definining APIENTRY and
4403 APIENTRYP if missing.
4405 2008-05-12 Ivan Leben <ivan.leben@o-hand.com>
4407 * clutter/cogl/gl/cogl-defines.h.in:
4408 Defined GL extension functions used by Cogl inside the COGL_
4411 * clutter/cogl/gl/cogl-context.h:
4412 * clutter/cogl/gl/cogl.c:
4413 Use COGL_ extension function prototypes instead of relying
4414 on glext.h to define them. Should fix the mac compilability
4415 bug, but haven't tested it yet.
4417 2008-05-12 Matthew Allum <mallum@openedhand.com>
4419 * clutter/x11/clutter-x11-texture-pixmap.c:
4421 * tests/Makefile.am:
4422 Remove the XComposite dep from Clutter itself, just use
4423 in test-pixmap (if available)
4425 2008-05-12 Emmanuele Bassi <ebassi@openedhand.com>
4427 Rework the stage wrapper/implementation relation: remove
4428 duplicated code and all the bookkeeping from the backends into
4429 ClutterStage whenever possible, to reduce the amount of work a
4430 backend must do (and possibly get wrong). Thanks to Tommi
4433 * clutter/clutter-main.c:
4434 (clutter_init_with_args), (clutter_init): Realize the default
4435 stage after creation. The default stage is special, because we
4436 use it in the initialization sequence. This removes the burden
4437 from the backends and reduces the things a backend can get
4440 * clutter/clutter-stage.c:
4441 (clutter_stage_show): Make sure to realize the implementation if
4442 it hasn't been realized yet.
4444 (clutter_stage_realize): Set the REALIZED flag and call
4445 clutter_stage_ensure_current() if the implementation was
4446 successfully realized.
4448 (clutter_stage_unrealized): Call clutter_stage_ensure_current()
4451 * clutter/glx/clutter-backend-glx.c:
4452 (clutter_backend_glx_create_stage): Do not realize the stage anymore
4453 when creating it, and let the normal realization sequence take
4456 (clutter_backend_glx_ensure_context): Trap for X11 errors.
4458 * clutter/glx/clutter-stage-glx.c:
4459 (clutter_stage_glx_realize): Chain up to the X11 implementation
4460 so that we can set up the window state (title, cursor visibility)
4461 when we actually have a X window. Also, do not call
4462 clutter_stage_ensure_current(), and rely on the wrapper to do
4463 it for us. This means we can drop setting the REALIZED flag on
4466 (clutter_stage_glx_unrealize): Do not call
4467 clutter_stage_ensure_current() ourselves, and rely on the wrapper
4470 * clutter/x11/clutter-stage-x11.c:
4471 (set_wm_title), (set_cursor_visible): Move the WM title and
4472 cursor visibility code inside their own functions.
4474 (clutter_stage_x11_realize): Set the window title and whether the
4475 cursor is visible or not after realizing the stage.
4477 (clutter_stage_x11_set_cursor_visible),
4478 (clutter_stage_x11_set_title): Call set_wm_title() and
4479 set_cursor_visible().
4481 (clutter_stage_x11_finalize): Free the title string.
4483 * clutter/x11/clutter-stage-x11.h: Save more of the stage state,
4484 so that we can set it even when the stage hasn't been realized
4487 * clutter/eglnative/clutter-backend-egl.c:
4488 (clutter_backend_egl_create_stage):
4489 * clutter/eglnative/clutter-stage-egl.c:
4490 (clutter_stage_egl_unrealize),
4491 (clutter_stage_egl_realize): Update the eglnative backend.
4493 * clutter/eglx/clutter-backend-egl.c:
4494 (clutter_backend_egl_ensure_context),
4495 (clutter_backend_egl_create_stage):
4496 * clutter/eglx/clutter-stage-egl.c:
4497 (clutter_stage_egl_unrealize),
4498 (clutter_stage_egl_realize): Update the eglx backend.
4500 * clutter/sdl/clutter-backend-sdl.c:
4501 (clutter_backend_sdl_create_stage):
4502 * clutter/sdl/clutter-stage-sdl.c:
4503 (clutter_stage_sdl_realize): Update the sdl backend.
4505 * clutter/fruity/clutter-backend-fruity.c:
4506 (clutter_backend_fruity_create_stage):
4507 * clutter/sdl/clutter-stage-fruity.c:
4508 (clutter_stage_fruity_realize): Update the fruity backend.
4510 * tests/test-multistage.c (on_button_press): Bail out if
4511 clutter_stage_new() returns NULL.
4513 * HACKING.backends: Update backend writing documentation.
4515 2008-05-12 Robert Bragg <bob@openedhand.com>
4517 * clutter/clutter-timeline.c:
4518 Adds clutter-timeline documentation RE: r2337, explaining
4519 the current timeline semantics.
4521 2008-05-12 Emmanuele Bassi <ebassi@openedhand.com>
4523 * HACKING.backends: Update documentation.
4525 * clutter/glx/clutter-stage-glx.c:
4526 (clutter_stage_glx_realize): Avoid setting more flags than
4529 2008-05-09 Neil Roberts <neil@o-hand.com>
4531 * clutter/clutter-frame-source.c (clutter_frame_source_add)
4532 (clutter_frame_source_add_full): Add gtk-doc and rename the
4533 'function' parameter to 'func'.
4535 * clutter/clutter-frame-source.h: Rename the 'function' parameters
4538 * clutter/Makefile.am (source_h): Make clutter-frame-source.h a
4541 * clutter/clutter-main.c (clutter_threads_add_frame_source_full):
4544 2008-05-09 Emmanuele Bassi <ebassi@openedhand.com>
4546 * clutter/clutter-script-private.h: Add a flag for the
4549 * clutter/clutter-script.c:
4550 (json_object_end): If the "type" member is "ClutterStage"
4551 and we have a "is-default" member set to true then this
4552 is the default stage.
4554 (clutter_script_construct_object): Special case the default
4555 stage instead of each ClutterStage.
4557 (object_info_free): Ditto as above.
4559 * tests/test-script.json: Test the creation of a non-default
4560 stage and the ::destroy handler to quit.
4562 2008-05-09 Emmanuele Bassi <ebassi@openedhand.com>
4564 Bug #908 - Support transform from G_TYPE_INT to ClutterUnit
4566 * clutter/clutter-units.c:
4567 (clutter_value_transform_int_unit),
4568 (clutter_unit_get_type): Add GValue transformation function from
4569 integer values to ClutterUnit. (#908)
4571 (param_unit_validate): Fix validation for ClutterParamSpecUnit;
4572 this allows writable ClutterUnit properties.
4574 * clutter/clutter-fixed.c:
4575 (clutter_value_transform_int_fixed),
4576 (clutter_value_transform_double_fixed),
4577 (clutter_value_transform_float_fixed): Add GValue transformation
4578 functions from native types (int, double, float) to ClutterFixed.
4580 (clutter_fixed_get_type): Register the new transformation functions.
4582 (param_fixed_validate): Fix validation for ClutterParamSpecUnit;
4583 this allows writable ClutterFixed properties.
4585 2008-05-07 Ivan Leben <ivan@o-hand.com>
4587 * clutter/cogl/cogl.h.in:
4588 * clutter/cogl/gl(es)/cogl-texture.h:
4589 * clutter/cogl/gl(es)/cogl-texture.c:
4590 cogl_texture_new_* functions take a gboolean auto_mipmap argument.
4591 If TRUE automatic mipmap generation is enabled during the process
4592 of slice texture object creation.
4593 (cogl_texture_new_from_foreign:) now allows mipmap min filter
4596 * clutter/clutter-texture.c:
4597 * clutter/glx/clutter-glx-texture-pixmap.c:
4598 * tests/test-cogl-offscreen.c:
4599 * tests/test-cogl-tex-tile.c:
4600 * tests/test-cogl-tex-convert.c:
4601 * tests/test-cogl-tex-polygon.c:
4602 * tests/test-cogl-tex-getset.c:
4603 Pass FALSE for auto_mipmap to cogl_texture_new_*.
4605 * clutter/pango/pangoclutter-render.c:
4606 (tc_get:) Pass TRUE to cogl_texture_new_with_size and use mipmap
4607 min filter for nicer glyphs at small scales. As a result test-text
4608 has gone all beautiful now.
4610 2008-05-07 Neil Roberts <neil@o-hand.com>
4612 * clutter/clutter-frame-source.h: Added the missing G_BEGIN_DECLS
4615 2008-05-07 Emmanuele Bassi <ebassi@openedhand.com>
4617 * clutter/sdl/clutter-backend-sdl.c:
4618 (clutter_backend_sdl_dispose): Destroy the timer that we created...
4619 (clutter_backend_sdl_init): ... here.
4621 * clutter/sdl/clutter-backend-sdl.h: Add a GTimer for time-based
4622 operations, like the event time.
4624 * clutter/sdl/clutter-event-sdl.c:
4625 (get_backend_time): Get the elapsed milliseconds for the SDL
4628 (_clutter_events_init): Start the timer provided by the backend...
4629 (_clutter_events_uninit): ... and the stop it.
4631 (key_event_translate), (event_translate): Use the backend time
4632 to fill out the time field of the event structures. This fixes
4633 the motion notification throttling on the SDL backend.
4635 2008-05-06 Matthew Allum <mallum@openedhand.com>
4637 * clutter/glx/clutter-glx-texture-pixmap.c:
4638 * clutter/x11/clutter-x11-texture-pixmap.c:
4639 More cleanups, safety additions.
4641 2008-05-05 Øyvind Kolås <pippin@o-hand.com>
4643 * clutter/cogl/gl/cogl-primitives.c:
4644 * clutter/cogl/gles/cogl-primitives.c:
4645 * clutter/cogl/common/cogl-primitives.c: moved declaration of
4646 gegl_rectangle and gegl_rectanglex here to satisfy linking
4647 requirements when building the fruity backend.
4649 2008-05-05 Øyvind Kolås <pippin@o-hand.com>
4651 * clutter/cogl/cogl.h.in: api review touch ups.
4652 * clutter/cogl/common/cogl-primitives.c: api review touch ups.
4653 * clutter/cogl/gl/cogl-primitives.c: (cogl_path_fill),
4654 (cogl_path_stroke): indentation.
4655 * clutter/cogl/gles/cogl-primitives.c:
4656 (_cogl_path_fill_nodes): free allocated resources.
4658 * tests/test-cogl-primitives.c: updated to new API, added rotation to
4659 test to show that cogl renders paths correct under perspective
4662 2008-05-02 Emmanuele Bassi <ebassi@openedhand.com>
4664 Bug #900 - clutter_actor_lower() and friends do not queue redraw
4666 * clutter/clutter-actor.c:
4667 (clutter_actor_raise),
4668 (clutter_actor_lower): Queue a redraw after raising and lowering
4669 and actor in the paint order stack. (#900)
4671 2008-05-01 Richard Purdie <rpurdie@openedhand.com>
4674 Set CLUTTER_COGL for fruity.
4676 2008-05-01 Emmanuele Bassi <ebassi@openedhand.com>
4678 Build fixes for the SDL flavour.
4680 * clutter/sdl/clutter-backend-sdl.c: Remove an unused function.
4682 * clutter/sdl/clutter-event-sdl.c:
4683 (clutter_event_dispatch): Properly cast the stage pointer.
4685 * clutter/sdl/clutter-stage-sdl.c:
4686 (clutter_stage_window_iface_init): Remove the draw_to_pixbuf()
4687 stub and assignment.
4689 2008-05-01 Richard Purdie <rpurdie@openedhand.com>
4692 Fix up fruity flavour configure option.
4694 2008-05-01 Øyvind Kolås <pippin@o-hand.com>
4696 * clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes): draw
4697 the rasterized scanlines as an array of triangles.
4699 2008-05-01 Emmanuele Bassi <ebassi@openedhand.com>
4701 * clutter/clutter-behaviour.c:
4702 (clutter_behaviour_remove_all): Disconnect the ::destroy
4703 handler when removing all actors, to match the behaviour
4704 of clutter_behaviour_remove().
4706 2008-05-01 Matthew Allum <mallum@openedhand.com>
4708 * clutter/glx/clutter-glx-texture-pixmap.c:
4709 * tests/test-pixmap.c:
4710 Fix up texture-pixmap, now works.
4711 Thanks to Neil for spotting we were actually using
4712 wrong texture type in fbconfig (COGL change).
4714 2008-04-30 Øyvind Kolås <pippin@o-hand.com>
4716 * clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes):
4717 keep track of direction we are drawing in and make sure we leave
4718 two intersection points when we have changed direction.
4720 2008-04-30 Øyvind Kolås <pippin@o-hand.com>
4722 * clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes):
4723 scanline rasterizer fallback for GLES without working stencil
4724 buffer (would benefit from optimization/smarter choice of
4727 2008-04-30 Emmanuele Bassi <ebassi@openedhand.com>
4729 * clutter/clutter-effect.c:
4730 (clutter_effect_closure_destroy): Do not remove the actor
4731 from the behaviour; the behaviour is an internal detail of the
4732 effect, and it will remove the actors anyway when finalized
4733 when g_object_unref() is called. This should guard against
4734 actors being destroyed while an effect is running.
4736 2008-04-30 Øyvind Kolås <pippin@o-hand.com>
4738 * clutter/cogl/common/Makefile.am:
4739 * clutter/cogl/common/cogl-primitives.c:
4740 * clutter/cogl/common/cogl-primitives.h:
4741 * clutter/cogl/gl/Makefile.am:
4742 * clutter/cogl/gl/cogl-primitives.c:
4743 * clutter/cogl/gl/cogl-primitives.h:
4744 * clutter/cogl/gles/Makefile.am:
4745 * clutter/cogl/gles/cogl-primitives.c:
4746 * clutter/cogl/gles/cogl-primitives.h: moved duplicated code to the
4749 2008-04-30 Robert Bragg <bob@openedhand.com>
4751 * clutter/clutter/x11/clutter-x11-texture-pixmap.c:
4752 In _update_area_real with depth=16 we weren't setting up the alpha
4755 2008-04-29 Matthew Allum <mallum@openedhand.com>
4757 * clutter/glx/Makefile.am:
4758 * clutter/x11/Makefile.am:
4759 Revert header install locations (Mistake in previous commit,
4762 2008-04-29 Neil Roberts <neil@o-hand.com>
4764 * clutter/clutter-actor.c (clutter_actor_move_anchor_point): The
4765 actor position was being moved in the wrong direction. Perhaps
4766 this was a cut-and-paste bug from move_anchor_point_from_gravity
4767 because in that function ax and ay represent the old anchor
4768 position, but in this function they represent the new.
4770 2008-04-29 Matthew Allum <mallum@openedhand.com>
4772 * clutter/glx/Makefile.am:
4773 * clutter/glx/clutter-glx-texture-pixmap.c:
4774 * clutter/glx/clutter-glx-texture-pixmap.h:
4775 * clutter/x11/Makefile.am:
4776 * clutter/x11/clutter-x11-texture-pixmap.c:
4777 * tests/test-pixmap.c:
4778 Commit newer x11 texture pixmap stuff (optionally using SHM).
4779 Also seemingly still broken overhauled glx-texture-pixmap
4780 (code by Robert and myself)
4783 Minor formatting change.
4785 2008-04-29 Neil Roberts <neil@o-hand.com>
4787 Removed COGLhandle and changed shader and program functions to be
4788 wrapped in reference-counted CoglHandles instead.
4790 * clutter/cogl/gl/cogl-shader.c:
4791 * clutter/cogl/gl/cogl-shader.h:
4792 * clutter/cogl/gl/cogl-program.c:
4793 * clutter/cogl/gl/cogl-program.h:
4794 New files to hold the shader and program functions.
4796 * clutter/cogl/gl/cogl.c: Removed shader and program functions.
4798 * clutter/cogl/common/cogl-handle.h: New header to define
4799 COGL_HANDLE_DEFINE which helps build functions to create
4800 reference-counted handles. This reduces the amount of duplicated
4803 * clutter/cogl/gl/cogl-texture.c:
4804 * clutter/cogl/gles/cogl-texture.c:
4805 * clutter/cogl/gl/cogl-fbo.c: Converted to use COGL_HANDLE_DEFINE
4806 from cogl-handle.h to avoid duplicating some of the common code.
4808 * clutter/cogl/gles/cogl-defines.h.in:
4809 * clutter/cogl/gl/cogl-defines.h.in: Removed COGLhandle
4811 * clutter/cogl/gl/cogl-context.h: Added handle arrays for programs
4814 * clutter/cogl/gl/cogl-context.c (cogl_create_context): Added
4815 initialisers for shader_handles and program_handles.
4816 (cogl_destroy_context): Added calls to g_array_free for all handle
4819 * clutter/cogl/gl/Makefile.am (libclutter_cogl_la_SOURCES): Added
4820 cogl-{program,shader}.{c,h}
4822 * clutter/cogl/common/Makefile.am
4823 (libclutter_cogl_common_la_SOURCES): Added cogl-handle.h
4825 * clutter/cogl/gles/cogl.c:
4826 * clutter/cogl/cogl.h.in: Programs and shaders are now wrapped in
4827 CoglHandles instead of COGLhandles. cogl_program_destroy and
4828 cogl_shader_destroy is now replaced with cogl_program_unref and
4829 cogl_shader_unref. cogl_program_ref and cogl_shader_ref are also
4832 * clutter/clutter-shader.c: Converted to use CoglHandles for the
4833 programs and shaders instead of COGLhandles.
4835 2008-04-29 Øyvind Kolås <pippin@o-hand.com>
4837 * clutter/cogl/cogl.h.in: renaming of API's in cogl to make the
4838 primitives and path API a bit smaller and more resembling cairo.
4839 * clutter/cogl/gl/cogl-primitives.c:
4840 * clutter/cogl/gles/cogl-primitives.c:
4841 * clutter/cogl/gles/cogl.c:
4843 * clutter/clutter-actor.c:
4844 * clutter/clutter-rectangle.c:
4845 * tests/test-cogl-offscreen.c:
4846 * tests/test-cogl-primitives.c:
4847 * tests/test-cogl-tex-convert.c:
4848 * tests/test-cogl-tex-foreign.c:
4849 * tests/test-cogl-tex-getset.c:
4850 * tests/test-cogl-tex-tile.c: updated according to changes in cogl.
4852 2008-04-29 Robert Bragg <bob@o-hand.com>
4854 * clutter/x11/clutter-x11-texture-pixmap.c:
4855 In clutter_x11_texture_pixmap_set_pixmap, dont assume that the actor
4856 size should be changed to match the size of the pixmap.
4858 2008-04-29 Robert Bragg <bob@o-hand.com>
4860 * clutter/cogl/gles/cogl-texture.c:
4861 Replaces an malloc call with g_malloc.
4863 2008-04-29 Robert Bragg <bob@o-hand.com>
4865 * clutter/configure.ac:
4866 When looking for a GLES 1 library, also try the name "GLESv1_CM".
4868 This also reduces the xfixes version requirement to v3, since we dont
4869 need support for Show/HideCursor.
4871 2008-04-28 Neil Roberts <neil@o-hand.com>
4875 * clutter/cogl/Makefile.am (EXTRA_DIST): Distribute cogl.h.in
4877 (DIST_SUBDIRS): Added common folder
4879 * clutter/cogl/gl/Makefile.am (libclutter_cogl_la_SOURCES): Remove
4880 cogl-defines.h and use the right location for cogl-defines.gl.h
4881 (EXTRA_DIST): Distribute cogl-defines.h.in
4883 * clutter/cogl/gles/Makefile.am (libclutter_cogl_la_SOURCES):
4884 Remove cogl-defines.h and use the right location for
4886 (EXTRA_DIST): Distribute cogl-defines.h.in
4888 * clutter/Makefile.am (DIST_SUBDIRS): Add fruity
4890 2008-04-28 Neil Roberts <neil@o-hand.com>
4892 * clutter/cogl/cogl.h.in (COGL_A_BIT): Added the missing comma
4893 after COGL_PIXEL_FORMAT_G_8
4895 2008-04-28 Emmanuele Bassi <ebassi@openedhand.com>
4897 * autogen.sh: Do not just touch the gtk-doc.make file, if we
4898 could not find gtkdocize, but echo an empty EXTRA_DIST into it
4899 so that the automake won't complain later on.
4901 2008-04-28 Øyvind Kolås <pippin@o-hand.com>
4903 * clutter/cogl/cogl.h.in: reindented.
4905 2008-04-28 Emmanuele Bassi <ebassi@openedhand.com>
4907 * clutter/clutter-actor.c:
4908 (parse_rotation_array),
4909 (clutter_actor_set_custom_property): Use the internal, unit based
4910 rotation setter when parsing the rotation from a ClutterScript
4913 (clutter_geometry_copy),
4914 (clutter_vertex_copy),
4915 (clutter_actor_box_copy): Use the more efficient g_slice_dup().
4917 (clutter_actor_get_stage): Add documentation.
4919 * clutter/clutter-group.c: Documentation fix.
4921 2008-04-28 Øyvind Kolås <pippin@o-hand.com>
4923 * clutter/cogl/cogl.h.in: moved the documentation of the cogl
4924 primitives to the main public header.
4925 * clutter/cogl/gl/cogl-primitives.c: from here ..
4926 * clutter/cogl/gles/cogl-primitives.c: .. _and_ here.
4928 2008-04-28 Øyvind Kolås <pippin@o-hand.com>
4930 * clutter/cogl/cogl.h.in: added documentation.
4932 2008-04-28 Emmanuele Bassi <ebassi@openedhand.com>
4934 * clutter/clutter-units.c (param_unit_init): Use the right
4935 macros to set the default minimum and maximum values.
4937 * clutter/clutter-fixed.c (param_fixed_init): Ditto as above.
4939 2008-04-28 Matthew Allum <mallum@openedhand.com>
4942 Dont display 'make' if configure fails.
4944 Add new --with-gles version option for eventual GLES2 support
4947 2008-04-28 Neil Roberts <neil@o-hand.com>
4949 * tests/test-cogl-tex-polygon.c: Added buttons to toggle whether
4950 slicing and linear filtering is enabled. By default slicing is
4951 disabled to help test on GL ES.
4953 2008-04-28 Neil Roberts <neil@o-hand.com>
4955 * tests/Makefile.am (INCLUDES): Added $(top_srcdir)/clutter to the
4956 include path. Otherwise the tests will fail to build trying to
4957 include "json/json-types.h" when building out-of-tree.
4959 2008-04-28 Emmanuele Bassi <ebassi@openedhand.com>
4961 * clutter/eglnative/clutter-backend-egl.c:
4962 (clutter_backend_egl_redraw): Whitespace fixes.
4964 * clutter/eglnative/clutter-stage-egl.c:
4965 (clutter_stage_egl_hide): Indentation fixes.
4967 (clutter_stage_egl_realize): Use g_critical() to report failure,
4968 unset the flags and bail out instead of continuing the realization
4971 2008-04-25 Neil Roberts <neil@o-hand.com>
4973 Merged in the clutter-ivan branch which contained the new public
4976 2008-04-25 Emmanuele Bassi <ebassi@openedhand.com>
4978 * clutter/sdl/clutter-stage-sdl.[ch]: Port the SDL stage to
4979 the new stage implementation API.
4981 * clutter/sdl/clutter-backend-sdl.[ch]: Port the SDL backend
4982 to the new backend API.
4984 * clutter/sdl/clutter-event-sdl.c:
4985 (clutter_event_dispatch): Assign the default stage as the
4986 origin of the event.
4988 2008-04-24 Emmanuele Bassi <ebassi@openedhand.com>
4990 * configure.ac: Add the --with-json configure switch to
4991 allow building Clutter with the external dependency on
4992 the system JSON-GLib; the default is to use the internal
4993 copy unless explicitly asked to check.
4995 2008-04-24 Emmanuele Bassi <ebassi@openedhand.com>
4997 * Makefile.am: Add HACKING.backends to the EXTRA_DIST.
4999 2008-04-24 Emmanuele Bassi <ebassi@openedhand.com>
5001 * HACKING.backends: Add documentation on how to write a
5002 backend for Clutter.
5004 2008-04-24 Emmanuele Bassi <ebassi@openedhand.com>
5006 * clutter/eglnative/clutter-backend-egl.c:
5007 (clutter_backend_egl_create_stage): Fix checks using a
5008 non assigned member of the ClutterBackendEGL structure.
5010 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5012 * clutter/eglnative/clutter-backend-egl.[ch]:
5013 * clutter/eglnative/clutter-stage-egl.[ch]:
5014 * clutter/eglnative/clutter-event-egl.c: Port to the new stage
5015 and backend APIs. *WARNING* untested and not compiled.
5017 * clutter/eglx/clutter-backend-egl.c:
5018 (clutter_backend_egl_init): Set some defaults.
5020 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5022 * tests/test-script.json: Remove the explicit "visible"
5023 member to test that the visibility of actors is TRUE
5026 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5029 * clutter/Makefile.am: Do not build the internal JSON-GLib
5030 copy if there is a system installed one.
5032 * clutter/clutter-json.h: Remove.
5034 * clutter/clutter-json.h.in: Template for the clutter-json.h
5035 header file, used to opaquely include the JSON-GLib types.
5037 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5039 * clutter/clutter-actor.c: Document :show-on-set-parent and
5040 the fact that calling clutter_actor_show() and hide() on an
5041 unparented actor will change that property as well as a side
5044 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5046 * clutter/clutter-actor.c (clutter_actor_set_property): Use the
5047 internal setter for the rotation center.
5049 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5051 * clutter/clutter-actor.[ch]: Add units based variant of the
5054 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5056 Bug 892 - Incorrect results using rotation-[center|angle] properties
5058 * clutter/clutter-actor.c:
5059 (clutter_actor_set_rotation_internal): Inline function for setting
5060 the rotation using fixed point for the angle and units for the
5063 (clutter_actor_set_property),
5064 (clutter_actor_set_rotationx): Use the internal setter to avoid
5065 loss of precision and too many conversions to and from units.
5067 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5069 Bug 891 - assertion failed when test-behave exits
5071 * clutter/clutter-behaviour.c:
5072 (remove_actor_on_destroy),
5073 (clutter_behaviour_apply),
5074 (clutter_behaviour_remove): Remove the actor if it gets
5075 destroyed before the behaviour.
5077 2008-04-18 Emmanuele Bassi <ebassi@openedhand.com>
5079 Bug #884 - Add clutter_alpha_set_closure
5081 * clutter/clutter-alpha.[ch]: Add clutter_alpha_set_closure(),
5082 a GClosure variant of clutter_alpha_set_func(), and reimplement
5083 the latter as a special case of the former. (#884, Xan López)
5085 2008-04-18 Neil Roberts <neil@o-hand.com>
5087 * clutter/clutter-timeline.c (clutter_timeline_get_progressx):
5088 Changed to use clutter_qdiv instead of CLUTTER_FIXED_DIV otherwise
5089 it can't cope with timelines with more than 255 frames.
5091 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5093 * clutter/clutter-frame-source.c: Small coding style fixes.
5095 2008-04-17 Neil Roberts <neil@o-hand.com>
5097 Applied patch from bug #881
5099 * clutter/clutter-frame-source.h:
5100 * clutter/clutter-frame-source.c:
5101 New files that contain a replacement for g_timeout that try to
5102 cope with system delays.
5104 * clutter/Makefile.am: Added clutter-frame-source.{c,h}
5106 * clutter/clutter-timeline.c (timeout_add): Use a frame source
5107 instead of a g_timeout.
5109 * clutter/clutter-main.c (clutter_threads_add_frame_source_full)
5110 (clutter_threads_add_frame_source): New public functions to wrap a
5111 frame source and grab the Clutter mutex.
5113 * clutter/clutter-timeout-pool.c: Now calculates the timeout
5114 expiration times in the same way as a frame source does so that it
5115 counts time in frame intervals instead of setting the next
5116 expiration time as an offset from the current time.
5118 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5120 * clutter/clutter-fixed.c:
5121 (clutter_value_transform_fixed_int),
5122 (clutter_value_transform_fixed_double),
5123 (clutter_value_transform_fixed_float),
5124 (clutter_fixed_get_type): Add GValue transformation functions
5125 for ClutterFixed; copying a CLUTTER_TYPE_FIXED GValue into
5126 a G_TYPE_FLOAT/G_TYPE_DOUBLE one will automatically transform
5127 the fixed point representation into a floating point one. Also
5128 add the G_TYPE_INT transformation function to do a plain
5131 * clutter/clutter-units.c:
5132 (clutter_value_transform_unit_int),
5133 (clutter_unit_get_type): Add a unit->int transformation function.
5135 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5137 * clutter/clutter-fixed.c (clutter_value_get_fixed): Fix typo
5138 in the function name.
5140 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5142 * clutter/clutter-units.c (clutter_value_get_unit): Fix typo
5143 in the function name.
5145 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5147 * HACKING: Amend coding style and tenets, as it is now possible
5148 to install and use unit based properties in a safe way.
5150 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5152 * clutter/clutter-units.h:
5153 * clutter/clutter-fixed.h: Add boundaries for fixed point
5156 * doc/reference/clutter-sections.txt: Update the documentation.
5158 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5160 * autogen.sh: Try to continue even if we don't have gtk-doc
5161 installed; this will obviously won't work if you don't pass
5162 --disable-docs --disable-gtk-doc to autogen.sh as well.
5164 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5166 * clutter/clutter-fixed.[ch]: Add a ClutterFixed fundamental
5167 type, and wrappers for storing it into GValues; also add a
5168 GParamSpec subclass for defining parameters holding
5169 ClutterFixed values. This allows creating GObject properties
5170 using fixed point values.
5172 * doc/reference/clutter-sections.txt: Document the newly
5175 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5177 * clutter/Makefile.am: Add clutter-units.c
5179 * clutter/clutter-units.[ch]: Add a ClutterUnit fundamental
5180 type, and wrappers for storing it into GValues; also add a
5181 GParamSpec subclass for defining parameters holding ClutterUnit
5182 values. This allows creating GObject properties using units.
5184 * doc/reference/clutter-sections.txt: Document the newly
5187 2008-04-15 Matthew Allum <mallum@openedhand.com>
5189 Work related to #873;
5191 * clutter/glx/clutter-backend-glx.c:
5192 * clutter/glx/clutter-backend-glx.h:
5193 * clutter/x11/clutter-x11-texture-pixmap.c:
5194 * clutter/x11/clutter-x11-texture-pixmap.h:
5195 General cleanup of texture pixmap code, adding;
5196 - Pixmap dimentions and depth now auto probed, read only props.
5197 - More X safety traps
5198 - Add support for optionally tracking damage and automatically
5201 * clutter/glx/clutter-glx-texture-pixmap.c:
5202 * clutter/glx/clutter-glx-texture-pixmap.h:
5203 General cleanup and some safety additions. Needs more work so
5204 'proper' subclass - dependent on new COGL.
5206 * clutter/x11/clutter-backend-x11.c: (clutter_x11_remove_filter):
5207 Invert g_return_if check.
5210 Pull in XComposite and XDamage (at least for now)
5212 * tests/Makefile.am:
5213 * tests/test-pixmap.c:
5214 Add a modified test from Johan for above.
5216 2008-04-15 Neil Roberts <neil@o-hand.com>
5218 Added support for foreign windows to the Win32 backend.
5220 * clutter/win32/clutter-stage-win32.c
5221 (clutter_stage_win32_request_coords): Don't resize foreign
5223 (clutter_stage_win32_unrealize): Don't destroy foreign windows.
5224 (clutter_stage_win32_init): Added initialiser for is_foreign_win.
5225 (clutter_win32_get_stage_from_window): Resort to looking in the
5226 stage list if the window isn't the right window class so that it
5227 can still find stages with foreign windows.
5228 (clutter_win32_set_stage_foreign): New public function to set a
5229 foreign window for a stage.
5231 * clutter/win32/clutter-event-win32.c
5232 (clutter_win32_disable_event_retrieval): New public function to
5233 disable event retrieval.
5234 (message_translate): Don't handle WM_SIZE or WM_MOVE for foreign
5237 * clutter/win32/clutter-backend-win32.h (struct
5238 _ClutterBackendWin32): Added a flag to disable event retrieval
5240 * clutter/win32/clutter-backend-win32.c
5241 (clutter_backend_win32_ensure_context): Update debug note to
5242 include whether the stage is foreign or not.
5244 2008-04-15 Øyvind Kolås <pippin@o-hand.com>
5246 * clutter/clutter-actor.c: (clutter_actor_set_shader_param): queue a
5247 redraw when a shader_param is set. Normalized some gtk-doc syntax in
5248 some of the api documentation.
5250 2008-04-15 Øyvind Kolås <pippin@o-hand.com>
5252 * clutter/clutter-group.c: fixed typo in docs.
5254 2008-04-14 Matthew Allum <mallum@openedhand.com>
5256 * clutter/eglx/clutter-stage-egl.c:
5257 Actually set wm protocols on eglx stage windows. Fixes issues with
5258 cloising stages and cleanup.
5260 2008-04-14 Matthew Allum <mallum@openedhand.com>
5262 * clutter/cogl/gles/cogl.c: (cogl_color):
5263 Disable use of color4ub, issues with latest MBX SDL (#857)
5265 * clutter/eglx/clutter-backend-egl.c:
5266 * clutter/eglx/clutter-stage-egl.c:
5268 Fixup for the eglx backend to work with new backend/multistage code.
5269 Some issues remain in destroying stages.
5271 2008-04-14 Neil Roberts <neil@o-hand.com>
5275 * clutter/clutter-timeline.c (clutter_timeline_get_progressx): Fix
5276 arithmetic for calculating the reverse progress when the timeline
5277 is backward. (Should subtract from one instead of taking the
5280 2008-04-13 Neil Roberts <neil@o-hand.com>
5282 Upgraded the Win32 backend to work with the multi-stage
5285 * clutter/win32/clutter-stage-win32.h:
5286 * clutter/win32/clutter-stage-win32.c: Now inherits from
5287 ClutterGroup and implements ClutterStageWindow instead of
5288 inheriting directly from ClutterStage.
5290 * clutter/win32/clutter-event-win32.c (message_translate): Now
5291 takes an extra parameter to return whether DefWindowProc should be
5292 called. This is needed to prevent the default WM_CLOSE handler
5293 from destroying the window.
5295 * clutter/win32/clutter-backend-win32.c
5296 (clutter_backend_win32_dispose): Destroy all of the stages using
5297 g_slist_foreach as per bug #871. Now also destroys the GL context.
5298 (clutter_backend_win32_get_features): Added assertions to ensure
5299 there is a valid GL context.
5300 (clutter_backend_win32_ensure_context): Accepts NULL stage. Gets
5301 implementation pointer from the stage.
5303 2008-04-11 Emmanuele Bassi <ebassi@openedhand.com>
5305 * clutter/clutter-container.c:
5306 (clutter_container_get_type): Relax the precondition on the
5307 implementations of ClutterContainer from ClutterActor to
5310 2008-04-11 Emmanuele Bassi <ebassi@openedhand.com>
5312 * README: Add a note about the Shader API changes.
5314 * clutter/clutter-deprecated.h: Add deprecation symbols.
5316 * clutter/clutter-shader.[ch]: Rename the :bound read-only
5317 property to :compiled. Also rename clutter_shader_bind()
5318 and clutter_shader_is_bound() to clutter_shader_compil() and
5319 clutter_shader_is_compiled(), respectively.
5321 * clutter/glx/clutter-stage-glx.c:
5322 (clutter_stage_glx_unrealize): Update after
5323 clutter_shader_release_all() rename.
5325 * tests/test-shader.c (button_release_cb), (main): Update.
5327 2008-04-10 Emmanuele Bassi <ebassi@openedhand.com>
5329 * clutter/eglx/clutter-backend-egl.c:
5330 (clutter_backend_egl_ensure_context): Sync up with the GLX
5333 (clutter_backend_egl_create_stage): Dumb compilation fix.
5335 * clutter/glx/clutter-backend-glx.c:
5336 (clutter_backend_glx_create_stage): Unref the stage if we are
5339 2008-04-10 Emmanuele Bassi <ebassi@openedhand.com>
5341 * clutter/eglx/clutter-stage-egl.c:
5342 (clutter_stage_egl_realize): Sync up with the GLX backend.
5344 2008-04-09 Emmanuele Bassi <ebassi@openedhand.com>
5346 * clutter/Makefile.am: Update the regular expression to match
5347 all the namespaces we actually use. Thanks to Neil Roberts for
5348 spotting this. A make distclean is needed.
5350 * clutter/cogl/gl/Makefile.am:
5351 * clutter/cogl/gles/Makefile.am:
5352 * clutter/json/Makefile.am:
5353 * clutter/pango/Makefile.am: Revert previous commit.
5355 2008-04-09 Emmanuele Bassi <ebassi@openedhand.com>
5357 * clutter/cogl/Makefile.am:
5358 * clutter/cogl/gl/Makefile.am:
5359 * clutter/cogl/gles/Makefile.am:
5360 * clutter/json/Makefile.am:
5361 * clutter/pango/Makefile.am: Fix the visibility of all the
5362 symbols, for the main library and the statically linked ones.
5364 2008-04-09 Emmanuele Bassi <ebassi@openedhand.com>
5366 * autogen.sh: Clean up a bit
5368 * clutter/clutter-fixed.[ch]:
5369 (clutter_double_to_fixed),
5370 (clutter_double_to_int),
5371 (clutter_double_to_uint): Make these functions public, as they
5372 are expanded by their respective macros. This fixes the errors
5373 from the linker trying to resolve their name.
5375 2008-04-09 Neil Roberts <neil@o-hand.com>
5377 Applied patch from bug #871
5379 * clutter/x11/clutter-backend-x11.c (clutter_backend_x11_dispose):
5380 Call g_slist_foreach instead of iterating over the stage_manager
5381 list manually when deleting stages. Otherwise the 'next' pointer
5382 of the list node can get corrupted when the actor removes itself
5385 * clutter/clutter-stage.c (clutter_stage_dispose): Call
5386 clutter_actor_unrealize in the dispose handler. This fixes
5387 problems where the dispose handler for the ClutterStageWrapper
5388 can't deselect the GL context until the stage is unrealized.
5390 2008-04-04 Emmanuele Bassi <ebassi@openedhand.com>
5392 * clutter/clutter-backend.c: Add more debug messages
5394 * clutter/clutter-stage.h:
5395 * clutter/clutter-stage.c:
5396 (clutter_stage_is_default): Add a function to check if the
5397 stage is the default one.
5399 * clutter/glx/clutter-backend-glx.c:
5400 * clutter/glx/clutter-stage-glx.c:
5401 * clutter/x11/clutter-stage-x11.c: Keep the stage wrapper
5402 and implementation flags in sync, to ensure that the GL
5403 context is always set.
5405 2008-04-04 Neil Roberts <neil@o-hand.com>
5407 * README: Fixed typo
5409 2008-04-04 Matthew Allum <mallum@openedhand.com>
5412 Add a note on new show-on-set-parent prop and stage subclassing.
5414 2008-04-04 Emmanuele Bassi <ebassi@openedhand.com>
5416 Bug #864 - Allow instantiating and subclassing of ClutterStage
5418 * clutter/Makefile.am: Add clutter-stage-window.[ch]
5420 * clutter/clutter-stage-manager.c:
5421 (_clutter_stage_manager_remove_stage): Do not warn if removing
5422 a stage we don't manage, as we might be invoked multiple times
5423 during a ClutterState dispose sequence.
5425 * clutter/clutter-actor.c:
5426 * clutter/clutter-backend.[ch]:
5427 * clutter/clutter-main.c:
5428 * clutter/clutter-private.h:
5429 * clutter/clutter-stage.[ch]: Make ClutterStage a proxy actor,
5430 with a private actor implementing the ClutterStageWindow
5431 interface for handling the per-backend realization, painting
5432 and unrealization, plus all the windowing system abstraction.
5434 * clutter/x11/clutter-event-x11.c:
5435 * clutter/x11/clutter-stage-x11.[ch]: Port the X11 backend
5436 to the new backend and stage API and semantics.
5438 * clutter/glx/clutter-backend-glx.c:
5439 * clutter/glx/clutter-stage-glx.c: Port the GLX backend to
5440 the new backend and stage API and semantics.
5442 * clutter/eglx/clutter-backend-egl.[ch]:
5443 * clutter/eglx/clutter-stage-egl.[ch]: Port the EGLX backend
5444 to the new backend and stage API and semantics (untested).
5446 * tests/test-multistage.c (on_button_press): Rename
5447 clutter_stage_create_new() to clutter_stage_new().
5449 2008-04-04 Neil Roberts <neil@o-hand.com>
5451 Applied patch from bug #810.
5453 * clutter/x11/clutter-event-x11.c (event_translate): Set a flag
5454 when resizing the stage from a ConfigureNotify event.
5456 * clutter/x11/clutter-stage-x11.c
5457 (clutter_stage_x11_request_coords): Don't try to resize the window
5458 again if the flag is set.
5459 (clutter_stage_x11_init): Added initialiser for the flag.
5461 * clutter/x11/clutter-stage-x11.h (struct _ClutterStageX11): Added
5464 2008-04-04 Matthew Allum <mallum@openedhand.com>
5466 * clutter/clutter-actor.c:
5467 Remove uneeded stage private member.
5468 Add show-on-set-parent prop and make so by default Actors are
5469 now automatically shown when reparented (#791)
5471 * clutter/eglx/clutter-backend-egl.c:
5472 * clutter/cogl/gles/cogl.c:
5473 A couple of minor comments.
5475 * clutter/eglnative/Makefile.am:
5476 Add missing clutter-egl.h header (back port from trunk)
5478 * tests/test-actors.c:
5479 Modify to take advantage of new show-on-set-parent functionality.
5481 2008-04-03 Emmanuele Bassi <ebassi@openedhand.com>
5483 * clutter/Makefile.am: Only export symbols matching "^clutter.*",
5484 to avoid exposing the library-private symbols starting with
5487 2008-04-03 Emmanuele Bassi <ebassi@openedhand.com>
5489 * clutter/clutter-alpha.c: ClutterAlpha is an InitiallyUnowned
5490 subclass. This should fix a lot of leakage. (#860, Neil Roberts)
5492 2008-04-03 Emmanuele Bassi <ebassi@openedhand.com>
5494 * clutter/glx/clutter-backend-glx.c:
5495 (clutter_backend_glx_get_features): Assert if we don't have a
5496 GL context here or if it's not matched to a drawable. Asserting
5497 might seem too drastic, but if we don't have a valid GL context
5498 here then Clutter will segfault anyway, and I'll take an assert()
5499 over a hard to read, deep in GLX guts backtrace any day (and
5502 * clutter/x11/clutter-backend-x11.c:
5503 (clutter_backend_x11_get_features): No need for a variable here.
5505 2008-04-01 Matthew Allum <mallum@openedhand.com>
5507 * clutter/clutter-backend.c:
5508 * clutter/glx/clutter-backend-glx.c:
5509 * clutter/glx/clutter-stage-glx.c:
5510 Allow NULL to be passed to _clutter_backend_ensure_context
5511 which essentially clears GL context. This is hooked into stage
5512 unrealisation. Isn't yet quite bulletproof.
5513 Fixes issues with gtk-embed crasher (thanks to Neil).
5515 2008-04-1 Robert Bragg <bob@o-hand.com>
5517 * clutter/glx/clutter-glx-texture-pixmap.c:
5518 In clutter_glx_texture_pixmap_dispose; trap X errors around
5519 glXDestroyGLXPixmap so we can't die due to BadDrawable errors.
5521 2008-03-31 Matthew Allum <mallum@openedhand.com>
5524 Add notes on new multistage feature.
5526 * clutter/clutter-stage-manager.c:
5527 Dont ref contained stages.
5529 * clutter/clutter-stage.c:
5530 Automatically remove stage from stage manager on finalisation.
5531 Cleans up warnings when a stage is destroyed.
5533 * clutter/clutter-backend.h:
5534 * clutter/glx/clutter-backend-glx.c:
5535 Minor formatting cleanups.
5537 * clutter/glx/clutter-stage-glx.c:
5539 * clutter/clutter-version.h.in:
5540 Add a general CLUTTER_STAGE_TYPE define, should be useful for
5541 evntual stage subclassing and creating with g_object_new()
5543 2008-03-30 Neil Roberts <neil@o-hand.com>
5545 * clutter/win32/clutter-backend-win32.c
5546 (clutter_backend_win32_init): Added a call to
5547 timeBeginPeriod. Without this the frame rates are terrible because
5548 the glib timeouts are not accurate enough. However this requires
5549 Glib >= 2.16.0 to take any effect because of a change in the way
5550 g_poll is implemented. See revision 6597 of glib.
5551 (clutter_backend_win32_finalize): Added a call to timeEndPeriod.
5553 * configure.ac: Added -lwinmm to the library dependencies for the
5556 2008-03-30 Neil Roberts <neil@o-hand.com>
5558 * clutter/win32/clutter-win32.h:
5559 * clutter/win32/clutter-stage-win32.h:
5560 * clutter/win32/clutter-stage-win32.c:
5561 * clutter/win32/clutter-event-win32.c:
5562 * clutter/win32/clutter-backend-win32.h:
5563 * clutter/win32/clutter-backend-win32.c:
5564 Upgraded for multi-stage support.
5566 * clutter/win32/clutter-stage-win32.c
5567 (clutter_stage_win32_request_coords): Fixed so that it doesn't set
5568 the position or size if it hasn't changed. This was causing
5569 problems when the window was resized using the top left corner. In
5570 that case the window receives resize and move messages separately
5571 which caused the window to flash at a different size or position
5572 while one message was handled before the other.
5573 (clutter_stage_win32_realize): Added PFD_GENERIC_ACCELERATED to
5574 the list of pixel format flags to force it to use hardware
5577 2008-03-28 Matthew Allum <mallum@openedhand.com>
5579 * clutter/Makefile.am:
5580 * clutter/clutter-actor.c:
5581 * clutter/clutter-actor.h:
5582 * clutter/clutter-backend.c:
5583 * clutter/clutter-backend.h:
5584 * clutter/clutter-debug.h:
5585 * clutter/clutter-event.c:
5586 * clutter/clutter-event.h:
5587 * clutter/clutter-feature.h:
5588 * clutter/clutter-group.h:
5589 * clutter/clutter-main.c:
5590 * clutter/clutter-main.h:
5591 * clutter/clutter-private.h:
5592 * clutter/clutter-stage.c:
5593 * clutter/clutter-stage.h:
5594 * clutter/clutter-stage-manager.c
5595 * clutter/clutter-stage-manager.h
5596 * clutter/clutter-types.h:
5597 * clutter/glx/clutter-backend-glx.c:
5598 * clutter/glx/clutter-backend-glx.h:
5599 * clutter/glx/clutter-stage-glx.c:
5600 * clutter/glx/clutter-stage-glx.h:
5601 * clutter/x11/clutter-backend-x11.c:
5602 * clutter/x11/clutter-backend-x11.h:
5603 * clutter/x11/clutter-event-x11.c:
5604 * clutter/x11/clutter-stage-x11.c:
5605 * clutter/x11/clutter-x11.h:
5606 * tests/Makefile.am:
5607 * tests/test-multistage.c:
5608 Initial commit of multi stage support (mostly a merge from the
5609 clutter-multistage branch).
5610 Note, this commit will break all backends except glx.
5612 2008-03-26 Neil Roberts <neil@o-hand.com>
5614 * clutter/win32/clutter-win32.h: Added gtk-doc documentation for
5615 the Win32 backend section.
5617 * clutter/win32/clutter-stage-win32.c
5618 (clutter_win32_get_stage_window): Fixed punctuation in the
5621 * README: Added notes about the Win32 backend.
5623 2008-03-26 Neil Roberts <neil@o-hand.com>
5625 * clutter/win32/clutter-event-win32.c (clutter_event_check):
5626 Removed the pointless parameter in the call to check_msg_pending.
5627 (check_msg_pending): Fixed to use PeekMessageW instead of
5630 2008-03-25 Neil Roberts <neil@o-hand.com>
5632 Added a native Win32 WGL backend.
5634 * configure.ac: Added the 'win32' flavour.
5636 * clutter/cogl/gl/cogl.c (cogl_get_proc_address): Added an ifdef
5637 to use wglGetProcAddress with the Win32 backend.
5639 * clutter/Makefile.am (DIST_SUBDIRS): Added the win32 directory.
5641 * clutter/win32/clutter-win32.pc.in:
5642 * clutter/win32/clutter-win32.h:
5643 * clutter/win32/clutter-stage-win32.h:
5644 * clutter/win32/clutter-stage-win32.c:
5645 * clutter/win32/clutter-event-win32.c:
5646 * clutter/win32/clutter-backend-win32.h:
5647 * clutter/win32/Makefile.am:
5648 * clutter/win32/clutter-backend-win32.c: New files.
5650 2008-03-19 Emmanuele Bassi <ebassi@openedhand.com>
5652 * clutter/clutter-model.[ch]: Add a ::copy() virtual function
5653 for copying iterators.
5655 * clutter/clutter-list-model.c:
5656 (clutter_list_model_iter_copy),
5657 (clutter_list_model_iter_class_init): Implement the ::copy()
5658 function inside the ListModel iterator subclass.
5660 2008-03-19 Emmanuele Bassi <ebassi@openedhand.com>
5662 * clutter/clutter-group.c:
5663 * clutter/clutter-texture.c: Use CLUTTER_ACTOR_IS_VISIBLE()
5664 and not CLUTTER_ACTOR_IS_MAPPED().
5666 2008-03-19 Emmanuele Bassi <ebassi@openedhand.com>
5668 * clutter/clutter-score.[ch]: Small clean ups and refactoring.
5669 Use gulong instead of guint, so we have a bigger id space for
5670 the timelines inside a Score.
5672 2008-03-19 Chris Lord <chris@openedhand.com>
5674 * clutter/clutter-actor.c:
5675 (_clutter_actor_apply_modelview_transform), (clutter_actor_paint):
5676 Apply clip inside paint function instead of transform function
5678 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
5680 * clutter/clutter-score.c: Update documentation.
5682 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
5684 * clutter/clutter-score.[ch]: Remove all the API changes, and
5685 just add a clutter_score_append_at_marker(); the implementation
5686 remains the same, but the marker must be explicitly created by
5687 the developer. The ids are no longer used to create implicit
5688 markers, so they can return to be unsigned integers. (#450)
5690 * clutter/clutter-timeline.[ch]:
5691 (clutter_timeline_has_marker): Add a function to query a timeline
5692 for a marker being set.
5694 * tests/test-score.c (main): Update with the API changes.
5696 * clutter.symbols: Update exported symbols.
5698 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
5700 * clutter/clutter-texture.c: Small clean ups in the coding style.
5702 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
5704 * clutter.symbols: Add new symbols
5706 * clutter/clutter-score.[ch]: Use the newly added marker API
5707 on the timelines to implement attaching timelines at specific
5708 points, using either milliseconds or frames.
5710 * tests/test-score.c (main): Test the new API.
5712 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
5714 * clutter/clutter-marshal.list: Add signature for the
5715 ::marker-reached signal marshaller.
5717 * clutter/clutter-timeline.[ch]: Add timeline marker API;
5718 using markers it is possible to add a unique identifier to
5719 a particular frame of the timeline, and receive a signal
5720 notification when reaching that particular marker while
5721 playing the timeline. (#641)
5723 * tests/test-timeline.c: Update the test case to check for
5724 the marker-reached signal emission.
5726 * clutter.symbols: Add new symbols.
5728 2008-03-10 Øyvind Kolås <pippin@o-hand.com>
5730 * tests/test-shader.c: improved readability of fragment shader
5731 examples by factoring out common bits into FRAGMENT_SHADER_BEGIN and
5732 FRAGMENT_SHADER_END macros.
5734 2008-03-09 Matthew Allum <mallum@openedhand.com>
5736 * clutter/clutter-id-pool.c: (clutter_id_pool_free):
5737 Use g_slice_free not g_free.
5738 * clutter/clutter-main.c: (_clutter_do_pick):
5739 Dont 'over read' the framebuffer when picking (#839, Neil Roberts)
5741 2008-03-07 Øyvind Kolås <pippin@o-hand.com>
5743 Refactored the integer id->ClutterActor mapping code to be a self
5744 contained data structure.
5746 * clutter/clutter-id-pool.[ch]: new files.
5747 * clutter/Makefile.am: added clutter-id-pool.[ch]
5748 * clutter/clutter-private.h: use a ClutterIDPool instead of GArray and
5749 GSList to keep track of the reusable ids.
5750 * clutter/clutter-actor.c: moved id pool logic away.
5751 * clutter/clutter-main.c: simplified id pool creation/finalization.
5753 2008-03-07 Robert Bragg <bob@o-hand.com>
5755 * clutter/clutter-timeline.c:
5756 Timeline changes to fix the issues identified in bugzilla #439
5758 Notably, this includes some tweaks to timeline semantics.
5761 10 frame timeline here are some points about the new timeline code:
5763 - When you create a timeline it starts with current_frame_num == 0
5765 - After starting a timeline, the first timeout is for
5766 current_frame_num == 1 (Notably it isn't 0 since there is a delay
5767 before the first timeout signals so re-asserting the starting point
5768 would give a longer than average first frame.)
5770 - For a non looping timeline the last timeout would be for
5771 current_frame_num == 10
5773 - For a looping timeline the timeout for current_frame_num ==
5774 10 would be followed by a timeout for current_frame_num == 1
5775 and frame 0 is considered == frame 10.
5777 - Asking for a timeline of N frames might better be described
5778 as asking for a timeline of _length_ N.
5780 Warning: Although I tried to test things, I guess it's quite
5781 likely that this breaks somthing depending on a specific quirk
5782 of the previous timeline code.
5784 2008-03-06 Emmanuele Bassi <ebassi@openedhand.com>
5786 * clutter/clutter-actor.c:
5787 (clutter_actor_set_anchor_point_from_gravity): Fix a stupid
5788 conversion from pixels to units that should I not have made.
5790 2008-03-06 Emmanuele Bassi <ebassi@openedhand.com>
5792 * README: Update the release notes.
5794 2008-03-06 Gwenole Beauchesne <gbeauchesne@splitted-desktop.org>
5796 Signed off by: Emmanuele Bassi <ebassi@openedhand.com>
5798 * clutter/clutter-group.c (clutter_group_real_lower): Fix to
5799 actually lower the actor under the 'above' actor. (#822)
5801 2008-03-06 Emmanuele Bassi <ebassi@openedhand.com>
5803 * clutter/clutter-entry.h:
5804 * clutter/clutter-entry.c:
5805 (clutter_entry_handle_key_event_internal),
5806 (clutter_entry_key_press), (clutter_entry_class_init),
5807 (clutter_entry_handle_key_event): Provide a default class handler
5808 for the key-press-event, so that giving key focus to an entry will
5809 automatically make it work. This deprecates the
5810 clutter_entry_handle_key_event() function. (#824)
5812 * tests/test-entry.c (main): Remove the handle_key_event()
5813 machinery, and just give focus to the entry.
5815 2008-03-06 Chris Lord <chris@openedhand.com>
5817 * clutter/clutter-model.c: (clutter_model_set_sorting_column):
5818 Don't disable sorting on column 0
5820 2008-03-06 Emmanuele Bassi <ebassi@openedhand.com>
5822 Add support for the anchor point inside ClutterScript (#834,
5825 * clutter/clutter-actor.c:
5826 (clutter_actor_set_property),
5827 (clutter_actor_get_property),
5828 (clutter_actor_class_init): Add the :anchor-x and :anchor-y
5829 properties to the ClutterActor class.
5831 (clutter_actor_set_anchor_point),
5832 (clutter_actor_set_anchor_pointu),
5833 (clutter_actor_set_anchor_point_from_gravity): Reimplement
5834 the pixel based and gravity based API using the units based
5835 one. Emit the ::notify signal for the :anchor-x and :anchor-y
5839 (clutter_actor_parse_custom_node): Parse the :anchor-x and
5840 :anchor-y properties using the custom units format (mm, px,
5843 * tests/test-script.json: Test the newly added properties.
5845 2008-03-05 Emmanuele Bassi <ebassi@openedhand.com>
5847 * configure.ac: Add "osx" the the AC_HELP_STRING of the flavour
5848 selection. (#831, Peter Enzerink)
5850 2008-03-04 Emmanuele Bassi <ebassi@openedhand.com>
5852 * clutter/clutter-main.c (clutter_do_event): Do not throttle the
5853 motion events if the per-actor delivery has been disabled.
5855 2008-03-04 Øyvind Kolås <pippin@o-hand.com>
5857 * clutter/pango/pangoclutter-render.c: (draw_glyph): use g_slice_new0
5858 instead of g_slice_new when allocating the glyph_info, avoiding a
5859 branch based on uninitialized memory.
5861 2008-03-03 Emmanuele Bassi <ebassi@openedhand.com>
5863 * Makefile.am: Do not recurse into doc if we did not explicitly
5864 enabled the documentation build; we just recurse into doc if we
5865 are doing a dist or a distcheck.
5867 2008-02-29 Øyvind Kolås <pippin@o-hand.com>
5869 Reuse the numeric id's used for picking actors to avoid the potential
5870 of overflowing the id numbers when continusly creating and destroying
5871 actors on long running applications for 16bpp.
5873 * clutter/clutter-private.h: replaced hashtable with GArray and a
5874 GSList for available slots in the array.
5875 * clutter/clutter-actor.c: (create_actor_id): function to create an
5876 actor->id mapping, (release_actor_id): function to mark an existing id
5877 as available for reuse.
5878 * clutter/clutter-main.c: (clutter_context_free): added utility
5879 function for cleaning up the context,
5880 (clutter_get_actor_by_gid): use the GArray for looking up actors.
5882 2008-02-26 Emmanuele Bassi <ebassi@openedhand.com>
5884 * clutter/clutter-alpha.c:
5885 (clutter_exp_inc_func), (clutter_exp_dec_func): Clamp the value
5886 of the alpha function between [0, MAX_ALPHA]. (#800)
5888 2008-02-25 Emmanuele Bassi <ebassi@openedhand.com>
5890 * clutter/clutter-main.c (emit_event): Fix the last commit
5891 which inverted a condition.
5893 2008-02-25 Emmanuele Bassi <ebassi@openedhand.com>
5895 * clutter/clutter-actor.c: Remove the usage of g_return_if_fail()
5896 from static functions: either assert or use g_warning() to check
5897 internal state, as g_return_if_fail() can be compiled out.
5899 * clutter/clutter-main.c: Ditto as above.
5901 2008-02-25 Tomas Frydrych <tf@openedhand.com>
5903 * clutter/clutter-texture.c:
5904 (texture_update_data):
5905 Set alignment based on actual data rowstride, not the texture
5908 2008-02-21 Tomas Frydrych <tf@openedhand.com>
5910 * clutter/x11/clutter-backend-x11.h:
5911 * clutter/x11/clutter-event-x11.c:
5912 * clutter/x11/clutter-x11.h:
5913 (clutter_x11_handle_event):
5914 (clutter_x11_disable_event_retrieval):
5915 Functions to allow to hook into external XEvent retrieval (for
5916 example when using clutter with gtk); NB: this API is tentative.
5918 2008-02-21 Emmanuele Bassi <ebassi@openedhand.com>
5920 * clutter/x11/clutter-event-x11.c (event_translate): Ignore
5921 PropertyNotify events if they don't match our window.
5923 * clutter/x11/clutter-stage-x11.c:
5924 (clutter_stage_x11_request_coords): Chain up to the parent's
5927 2008-02-21 Emmanuele Bassi <ebassi@openedhand.com>
5929 * clutter/x11/clutter-event-x11.c (event_translate): Ignore
5930 ConfigureNotify events if we are painting on a foreign window.
5932 * clutter/x11/clutter-stage-x11.c:
5933 (clutter_stage_x11_request_coords): Reliquish control of the
5934 window size, if we are painting on a foreign window. This fixes
5935 the GtkClutterEmbed widget.
5937 2008-02-20 Emmanuele Bassi <ebassi@openedhand.com>
5939 * clutter/clutter-timeline.c (clutter_timeline_set_delay): Relax
5940 the condition to allow 0 msecs of delay (meaning: no delay).
5942 2008-02-20 Tomas Frydrych <tf@openedhand.com>
5944 * clutter/Makefile.am:
5945 Added libclutter_ ... _la_DEPENDENCIES to fix dependency tracking.
5947 2008-02-20 Tomas Frydrych <tf@openedhand.com>
5949 * clutter/x11/clutter-x11.h:
5950 * clutter/x11/clutter-backend-x11.c:
5951 (clutter_x11_set_display):
5952 Function to set X display connection prior to calling
5953 clutter_init(); stripped loads of trailing space.
5955 2008-02-20 Tomas Frydrych <tf@openedhand.com>
5957 * clutter/clutter-marshal.list:
5958 * clutter/glx/Makefile.am:
5959 * clutter/glx/clutter-backend-glx.c:
5960 * clutter/glx/clutter-backend-glx.h:
5961 * clutter/glx/clutter-glx.h:
5962 * clutter/x11/Makefile.am:
5963 ClutterX11TexturePixmap and ClutterGLXTexturePixmap actors (#713;
5964 patch by Johan Bilien).
5966 2008-02-20 Emmanuele Bassi <ebassi@openedhand.com>
5968 * clutter/clutter-actor.h:
5969 * clutter/clutter-actor.c:
5970 (clutter_actor_get_abs_opacity): Add function that does what
5971 get_opacity() does now...
5973 (clutter_actor_get_opacity): ... and make get_opacity() do what
5974 it's supposed to be doing. The original get_opacity() returned
5975 a composited value, and there's no way to actually extract the
5976 real opacity value set with set_opacity().
5978 * clutter/clutter-clone-texture.c:
5979 * clutter/clutter-rectangle.c:
5980 * clutter/clutter-texture.c: Update to use get_abs_opacity().
5982 * clutter/clutter-entry.c:
5983 * clutter/clutter-label.c: Ditto. Also, never change the stored
5986 * tests/Makefile.am:
5987 * tests/test-opacity.c: Test suite for the get_opacity() and
5988 get_abs_opacity() API, and correct opacity handling.
5990 * README: Add note about the change in get_opacity().
5992 2008-02-19 Chris Lord <chris@openedhand.com>
5994 * clutter/clutter-model.c: (clutter_model_resort):
5995 Don't return when there's no sort function set, leave that to the
5998 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
6001 * README: Post stable release bump to 0.7.1
6003 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
6006 * NEWS: Release 0.6.0
6008 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
6010 * clutter/clutter-list-model.c:
6011 (clutter_list_model_iter_set_value): Fix a typo in the conversion
6014 2008-02-18 Chris Lord <chris@openedhand.com>
6017 Fix spelling mistake and a typo
6019 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
6021 * clutter/clutter-actor.c:
6022 (clutter_actor_get_box_from_vertices): Avoid a masking warning
6023 caused by math.h utter braindamage.
6025 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
6027 * clutter/clutter-actor.c: Document the fact that ancestor can
6028 be NULL in the relative transformation API, and what are the
6031 2008-02-15 Matthew Allum <mallum@openedhand.com>
6033 * clutter/pango/pangoclutter-render.c: (draw_glyph):
6034 More safety checks (#796, Tero Saarni)
6036 2008-02-15 Chris Lord <chris@openedhand.com>
6038 * clutter/clutter-entry.c:
6039 * clutter/clutter-group.c:
6040 * clutter/clutter-label.c:
6041 * clutter/clutter-rectangle.c:
6042 * clutter/clutter-texture.c:
6043 More documentation fixes
6045 2008-02-15 Chris Lord <chris@openedhand.com>
6047 * clutter/clutter-entry.c: (clutter_entry_class_init):
6048 More documentation fixes
6050 2008-02-15 Chris Lord <chris@openedhand.com>
6052 * clutter/clutter-label.c: (clutter_label_class_init):
6053 More documentation fixes
6055 2008-02-15 Chris Lord <chris@openedhand.com>
6057 * clutter/clutter-clone-texture.c:
6058 * clutter/clutter-texture.c: (clutter_texture_class_init):
6059 More documentation fixes
6061 2008-02-15 Chris Lord <chris@openedhand.com>
6063 * clutter/clutter-actor.c:
6064 * clutter/clutter-container.c:
6065 * clutter/clutter-media.c:
6066 * clutter/clutter-rectangle.c:
6067 * clutter/clutter-stage.c: (clutter_stage_class_init):
6068 * clutter/clutter-stage.h:
6069 * clutter/clutter-texture.c:
6070 * doc/reference/clutter-docs.sgml:
6071 Fix more documentation
6073 2008-02-15 Emmanuele Bassi <ebassi@openedhand.com>
6075 * clutter/clutter-actor.[ch]:
6076 * clutter/clutter-types.h:
6077 * doc/reference/clutter-docs.sgml: Fix a lot of documentation.
6079 2008-02-15 Matthew Allum <mallum@openedhand.com>
6081 * clutter/cogl/gles/cogl.c: (cogl_paint_init):
6082 Remove depth test getting turned on by default (unlike GL backend)
6084 2008-02-15 Tomas Frydrych <tf@openedhand.com>
6087 * clutter/clutter-version.h.in:
6088 * build/msvc_2k5/clutter-version.h:
6089 Removed unused --without-fpu configure option and CLUTTER_NO_FPU
6092 2008-02-15 Tomas Frydrych <tf@openedhand.com>
6094 * build/mingw/README:
6095 * build/mingw/mingw-cross-compile.sh:
6096 Script that automates cross compilation with mingw by Neil Roberts
6097 <bpeeluk@yahoo.co.uk>
6099 2008-02-15 Emmanuele Bassi <ebassi@openedhand.com>
6101 * clutter/clutter-actor.[ch]: Rename
6102 clutter_actor_get_box_from_vertices() to
6103 clutter_actor_box_get_from_vertices().
6105 * clutter/clutter-group.c (clutter_group_query_coords): Fix the
6106 query_coords() implementation.
6108 2008-02-15 Tomas Frydrych <tf@openedhand.com>
6110 * clutter/clutter-actor.c:
6111 * clutter/clutter-actor.h:
6112 (clutter_group_query_coords):
6113 Added function to translate vertex array to a bounding box.
6115 (clutter_actor_is_scaled):
6116 (clutter_actor_is_rotated):
6117 Fixed documentation.
6119 2008-02-15 Tomas Frydrych <tf@openedhand.com>
6121 * clutter/clutter-group.c: (clutter_group_query_coords):
6122 Disabled new code taking into account actor scale and rotation.
6124 2008-02-14 Tomas Frydrych <tf@openedhand.com>
6126 * clutter/clutter-actor.c:
6127 * clutter/clutter-actor.h:
6128 (clutter_actor_is_scaled):
6129 (clutter_actor_is_rotated):
6130 Convenience functions to test whether actor is scaled or rotated.
6132 (clutter_actor_apply_relative_transform_to_point):
6133 Removed unused variable.
6135 * clutter/clutter-group.c:
6136 (clutter_group_query_coords):
6137 Use clutter_actor_get_relative_vertices() to calculate bounding
6138 boxes of children that are scaled or rotated.
6140 2008-02-14 Tomas Frydrych <tf@openedhand.com>
6142 * clutter/clutter-actor.c:
6143 * clutter/clutter-actor.h:
6144 (clutter_actor_get_relative_vertices):
6145 (clutter_actor_apply_relative_transform_to_point):
6146 Functions to calculate actor vertices in the plane of a given
6149 2008-02-12 Chris Lord <chris@openedhand.com>
6151 * clutter/clutter-texture.c: (texture_get_tile_pixbuf),
6152 (clutter_texture_get_pixbuf):
6153 Fix copying textures to pixbufs for tiled textures and correct #ifndef
6156 * clutter/clutter-util.c:
6159 2008-02-12 Matthew Allum <mallum@openedhand.com>
6161 * clutter/clutter-texture.c: (texture_get_tile_pixbuf):
6162 ifdef out 'leaked' GL only API call.
6164 2008-02-12 Tomas Frydrych <tf@openedhand.com>
6166 * clutter/clutter-texture.c (texture_update_data):
6167 Fixed incorrect calculation of offset into texture data (needs to
6168 use width of the texture, not of the updated area).
6170 2008-02-12 Tomas Frydrych <tf@openedhand.com>
6172 * clutter/clutter-texture.c (texture_update_data):
6173 Fixed incorrect aligment of texture data.
6175 2008-02-12 Tomas Frydrych <tf@openedhand.com>
6177 * clutter/x11/clutter-event-x11.c (event_translate):
6178 Ignore events not directed at the stage window once they have been
6179 passed to the filter functions.
6181 2008-02-11 Matthew Allum <mallum@openedhand.com>
6183 * clutter/clutter-actor.c:
6184 Minor documentation tweak to class description.
6186 * clutter/clutter-behaviour-scale.c:
6187 'Force' start + end vals of scale behaviour
6188 (#779, Havoc Pennington)
6190 2008-02-11 Emmanuele Bassi <ebassi@openedhand.com>
6193 * NEWS: Release 0.5.6
6195 * configure.ac: Post release bump to 0.5.7.
6197 * clutter/clutter-behaviour-scale.c:
6198 * tests/test-fbo.c: Fix compilation warnings.
6200 2008-02-11 Tomas Frydrych <tf@openedhand.com>
6202 * clutter/clutter-actor.c (clutter_actor_transform_stage_point):
6203 Moved part of the calculation to floating point to avoid overflow
6204 of ClutterFixed range for large actors (bug 613).
6206 2008-02-10 Matthew Allum <mallum@o-hand.com>
6208 * clutter/osx/clutter-stage-osx.c
6209 Fix up a couple of typos breaking build.
6211 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
6213 * clutter/clutter-actor.c: Add actor box diagram and notes.
6215 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
6217 * clutter/clutter-behaviour-path.c: Move the nice graph and
6218 description from the Path behaviour...
6220 * clutter/clutter-behaviour.c: ... to the main Behaviour class.
6222 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
6224 * clutter/clutter-behaviour-path.c: Add a paragraph describing
6225 the effects of different alpha functions on the path behaviour.
6227 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
6229 * clutter/clutter-actor.c: Reference the newly added event-flow.png
6231 * clutter/clutter-alpha.c: Ditto, with alpha-func.png
6233 * clutter/clutter-texture.c: Fix the XML.
6235 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
6237 * clutter/clutter-behaviour-path.c: Reference the newly
6238 added image showing the effects of different alpha functions
6239 on the same path behaviour.
6241 * configure.ac: Find out the prefix of some of the libraries
6242 we depend upon, so that gtk-doc can fix the references for us.
6244 2008-02-08 Matthew Allum <mallum@openedhand.com>
6246 * clutter/clutter-texture.c:
6247 Tidy up offscreen code, adding into realize/unrealize.
6248 Add more safety code.
6249 Improve documentation.
6251 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
6253 * clutter/clutter-script.c:
6254 (resolve_alpha_func): Use a whitelist containing the alpha function
6255 provided by Clutter, as a fallback in case g_module_open() does not
6258 (clutter_script_parse_alpha): Add an explicit warning in case we
6259 cannot find the alpha function used inside a UI definition.
6261 2008-02-07 Tomas Frydrych <tf@openedhand.com>
6263 * clutter/clutter-group.c (clutter_group_query_coords):
6264 Take into account the anchor point when calculating the box size.
6266 2008-02-07 Emmanuele Bassi <ebassi@openedhand.com>
6268 * clutter/clutter-actor.c: Add a note on clutter_actor_set_size()
6271 * clutter/clutter-group.c: Clarify group sizing.
6273 2008-02-07 Øyvind Kolås <pippin@o-hand.com>
6275 * tests/test-shader.c: (button_release_cb): added simplified
6276 implementation of a box-blur shader from Gwenole Beauchesne that
6277 should work on GLSL implementing low-end IGPs not implementing
6278 dynamic branching. The original code used crashed some of these
6279 due to bugs in drivers or similar. Resolves bug #710.
6281 2008-02-07 Tomas Frydrych <tf@openedhand.com>
6283 * tests/test-actors.c:
6284 Reverted previous change.
6286 2008-02-07 Tomas Frydrych <tf@openedhand.com>
6288 * clutter/clutter-actor.c:
6289 (clutter_actor_set_property):
6290 Fixed handling of PROP_ROTATE_CENTER_Y, ROTATE_CENTER_Z
6292 * tests/test-actors.c:
6293 Adjusted to use anchor point for both group and hands.
6295 2008-02-07 Neil J. Patel <njp@o-hand.com>
6297 * tests/test-actors.c: (frame_cb), (main):
6298 Changed set_anchor to move_anchor.
6299 Changed clutter_actor_rotate x & y values to 0,0.
6300 Switched on scaling because it seems to work without drifting.
6302 2008-02-07 Emmanuele Bassi <ebassi@openedhand.com>
6304 * clutter/clutter-script-parser.c:
6305 (clutter_script_get_type_from_symbol),
6306 (clutter_script_get_type_from_class): Use BIND_LAZY flag
6307 when looking at the symbols, so we don't load them all up.
6309 * clutter/clutter-script.c (resolve_alpha_func): Ditto as above.
6311 2008-02-07 Øyvind Kolås <pippin@o-hand.com>
6313 * clutter/clutter-actor.c:
6314 (_clutter_actor_apply_modelview_transform): perform translation as
6315 well as anchor point adjustment based on self not being stage (and
6316 not by self not being an orphan).
6318 2008-02-07 Matthew Allum <mallum@openedhand.com>
6320 * clutter/clutter-stage.c:
6321 * clutter/clutter-stage.h:
6322 * clutter/eglnative/clutter-stage-egl.c:
6323 * clutter/eglx/clutter-stage-egl.c:
6324 * clutter/osx/clutter-stage-osx.c:
6325 * clutter/sdl/clutter-stage-sdl.c:
6326 * clutter/x11/clutter-stage-x11.c:
6327 Add at least somne basic offscreen handling into all backends.
6328 Remove unused clutter_stage_set_offscreen vfunc. (#549)
6330 * clutter/clutter-texture.c:
6331 Minor API doc tweak, noting rowstride source in set_area
6333 2008-02-07 Emmanuele Bassi <ebassi@openedhand.com>
6335 * clutter/clutter-score.c (traverse_children): Actually implement
6336 clutter_score_list_timelines().
6338 * tests/test-score.c (main): Test clutter_score_list_timelines().
6340 2008-02-07 Matthew Allum <mallum@openedhand.com>
6342 * clutter/pango/pangoclutter-render.c:
6343 Warn if requested glyph is too big for underlying texture cache.
6346 2008-02-07 Matthew Allum <mallum@openedhand.com>
6348 * clutter/clutter-texture.c: (texture_upload_data):
6349 Remove random appearing 'priv->filter_quality =1' (#643)
6351 2008-02-06 Matthew Allum <mallum@openedhand.com>
6353 * clutter/clutter-texture.c:
6354 Minor clean up from last commit.
6357 Small tweak (rotate offscreen, rather than resize)
6359 2008-02-06 Matthew Allum <mallum@openedhand.com>
6361 * clutter/clutter-texture.c:
6362 Initial attempt at handling resizing/tranformed source textures.
6364 * clutter/pango/pangoclutter-render.c: (draw_glyph):
6365 Guards against freetype returning NULL bitmaps and
6366 thus causing device by zeros on NVIDIA drivers. (see ml)
6368 2008-02-05 Matthew Allum <mallum@openedhand.com>
6370 * clutter/clutter-actor.c: (clutter_actor_get_vertices):
6371 Make sure GL related Matrices are initialised. Fixes #756
6373 * clutter/clutter-texture.c:
6374 Fix up code from Norways answer to Jean-Michel Basquiat.
6375 (warning on tile_get_pixbuf)
6377 2008-02-05 Øyvind Kolås <pippin@o-hand.com>
6379 * clutter/clutter-texture.c: removed spurious left over debug printf.
6381 2008-02-05 Øyvind Kolås <pippin@o-hand.com>
6383 * clutter/clutter-texture.c: applied modified patch from Gwenole
6384 Beuchesne adressing bug #635. Adressing a buffer overflow in
6385 clutter_texture_get_pixbuf() when tiling is forced.
6387 2008-02-04 Emmanuele Bassi <ebassi@openedhand.com>
6389 * clutter/clutter-shader.c (clutter_shader_constructor): Keep the
6390 constructor line under the 80 columns using a variable.
6392 2008-02-04 Emmanuele Bassi <ebassi@openedhand.com>
6394 * clutter/clutter-actor.c:
6395 * clutter/clutter-shader.c: Small documentation and style fixes
6397 * tests/test-scale.c: Constify the gravities array.
6399 2008-02-04 Chris Lord <chris@openedhand.com>
6401 * clutter/clutter-actor.c: (clutter_actor_transform_stage_point):
6402 Check that x_out and y_out != NULL before setting their contents
6404 2008-02-04 Øyvind Kolås <pippin@o-hand.com>
6406 * clutter/clutter-timeline.c: (clutter_timeline_rewind): updated
6407 documentation to take direction into account.
6409 2008-02-04 Øyvind Kolås <pippin@o-hand.com>
6411 * tests/test-fbo.c: (make_shader):
6412 * tests/test-shader.c: (main): multiply the resulting gl_FragColor
6413 with gl_Color before being done to take opacity into account in the
6416 2008-02-04 Øyvind Kolås <pippin@o-hand.com>
6418 * clutter/clutter-actor.[ch]: added clutter_actor_get_shader and
6419 renamed clutter_actor_apply_shader to be clutter_actor_set_shader.
6420 Reindented/aligned header.
6421 * clutter/clutter-texture.c: (clutter_texture_paint): temporarily
6422 disable the shader on top of the clutter context's shader stack while
6423 rendering into the FBO.
6424 * tests/test-fbo.c: (main): s/apply_shader/set_shader/
6425 * tests/test-shader.c: (button_release_cb), (main):
6426 s/apply_shader/set_shader/
6428 2008-02-03 Matthew Allum <mallum@openedhand.com>
6430 * clutter/clutter-actor.c: (clutter_actor_set_rotationx):
6431 Add notify signal for set_rotate
6433 * clutter/clutter-texture.c:
6434 Add basic cleanup code for fbo's
6436 * tests/test-fbo.c: (main):
6439 * clutter/osx/clutter-stage-osx.c: (clutter_stage_osx_realize):
6442 2008-02-03 Matthew Allum <mallum@openedhand.com>
6444 * clutter/clutter-shader.c:
6445 Minor formatting cleanups to fit in 80 cols.
6447 * clutter/clutter-texture.c:
6448 More safety checks, clean ups in clutter_texture_new_from_actor()
6450 * clutter/cogl/gl/cogl.c:
6451 Always clear the FBO initially when rendering
6454 Overhall the test as to be more useful (and show current issues)
6456 2008-02-02 Matthew Allum <mallum@openedhand.com>
6458 * clutter/clutter-timeline.c:
6459 Document frame number limits in new-frame signal.
6461 * clutter/x11/clutter-event-x11.c:
6462 Remove uneeded error trap (#751)
6464 2008-02-01 Matthew Allum <mallum@openedhand.com>
6466 * clutter/cogl/cogl.h:
6467 * clutter/cogl/gl/cogl.c: (cogl_paint_init), (cogl_enable):
6468 * clutter/cogl/gles/cogl.c: (cogl_enable):
6470 Disable the depth test and buffer as has some strange side
6471 effects, mainly on x/y axis rotation with multiple layers at
6472 same depth (eg rotating text on a bg has very strange
6473 effect). Seems no clean 100% effective way to fix without other
6474 odd issues.. So for now move to application to handle and add
6475 cogl_enable_depth_test() as for custom actors (i.e groups) to
6478 2008-02-01 Matthew Allum <mallum@openedhand.com>
6480 * clutter/clutter-texture.c: (clutter_texture_new_from_actor):
6481 Fix typo breaking FBO rendering on anything other than a cloned
6484 2008-02-01 Matthew Allum <mallum@openedhand.com>
6486 * clutter/clutter-feature.h:
6487 * clutter/clutter-texture.c:
6488 * clutter/clutter-texture.h:
6489 * clutter/cogl/cogl.h:
6490 * clutter/cogl/gl/cogl.c:
6491 * clutter/cogl/gles/cogl.c:
6492 * tests/Makefile.am:
6494 Add initial support for FBO's in Clutter (OpenGL only so far).
6495 See new clutter_texture_new_from_actor()
6496 Initial implementation, needs work.
6498 * clutter/x11/clutter-stage-x11.c:
6499 (clutter_stage_x11_set_cursor_visible):
6500 Fall back to again not relying on xfixes to hide cursor. *sigh*
6502 * clutter/clutter-deprecated.h:
6503 Add clutter_group_find_child_by_id
6505 2008-02-01 Øyvind Kolås <pippin@o-hand.com>
6507 * clutter/cogl/gles/cogl.c: (cogl_rectangle_internal): increase size
6508 of GLfixed[] array to make contents fit.
6510 2008-02-01 Emmanuele Bassi <ebassi@openedhand.com>
6512 * clutter/clutter-actor.h: Clean up a bit the flag-related macros.
6514 2008-02-01 Emmanuele Bassi <ebassi@openedhand.com>
6516 * clutter/clutter-actor.c:
6517 (clutter_actor_get_property): Use clutter_actor_get_reactive()
6518 instead of the IS_REACTIVE() macro.
6520 (clutter_actor_set_reactive): Emit the notify signal for the
6523 * clutter/clutter-timeline.c:
6524 (timeline_timeout_func),
6525 (clutter_timeline_get_delta): Coding style fixes.
6527 2008-01-31 Rob Bradford <rob@openedhand.com>
6529 * clutter/glx/clutter-stage-glx.c:
6530 * clutter/glx/clutter-backend-glx.c:
6531 * clutter/glx/clutter-backend-glx.h:
6534 2008-01-31 Emmanuele Bassi <ebassi@sprite>
6536 * clutter/clutter-timeline.c (clutter_timeline_skip): Don't
6537 add the frames outside the direction check. (thanks to benoar
6538 on clutter-list for spotting it)
6540 2007-01-31 Tomas Frydrych <tf@openedhand.com>
6542 * clutter/clutter-actor.c:
6543 (clutter_actor_transform_vertices):
6544 Call clutter_actor_query_coords() instead of accessing the actor
6545 box, so that actors that calculate their bounding box on the fly
6546 (like ClutterGroup) work.
6548 * (_clutter_actor_apply_modelview_transform_recursive):
6549 Made to work for parentless actors.
6551 2008-01-31 Øyvind Kolås <pippin@o-hand.com>
6553 * tests/test-depth.c: added a box of cloned hands to further expand
6554 the scope of depth testing scenarios exercised by test-depth.
6556 2008-01-31 Øyvind Kolås <pippin@o-hand.com>
6558 * tests/test-depth.c: (timeline_completed): make use of
6559 clutter_timeline_set_direction instead of static state.
6560 (raise_top): made rectangle remain at fixed depth and raise
6562 (janus_group): added a rectangle with two faces, one red and
6563 one green, that spins around.
6565 2008-01-31 Emmanuele Bassi <ebassi@openedhand.com>
6567 * clutter/clutter-entry.h:
6568 * clutter/clutter-entry.c:
6569 (clutter_entry_set_cursor_position),
6570 (clutter_entry_get_cursor_position): Rename [gs]et_position()
6571 to [gs]set_cursor_position(), and avoid method name collisions
6572 with bindings for high-level languages.
6574 * clutter/clutter-deprecated.h: Add replacement warnings for the
6577 2008-01-31 Emmanuele Bassi <ebassi@openedhand.com>
6579 * clutter/clutter-actor.c (clutter_actor_init): Explicitly
6580 memset() to 0 the clip container, so if you get the clip without
6581 having set it, you won't get garbage.
6583 2008-01-31 Rob Bradford <rob@openedhand.com>
6585 * clutter/x11/clutter-backend-x11-private.h:
6586 Add missing start to comment
6588 * clutter/x11/clutter-backend-x11.c:
6589 * clutter/x11/clutter-event-x11.c:
6590 * clutter/x11/clutter-stage-x11.c:
6591 * clutter/x11/clutter-x11.h:
6594 2008-01-30 Emmanuele Bassi <ebassi@openedhand.com>
6596 * README: Add the osx flavour, and mark it experimental,
6597 along with the sdl backend. EGL-based backends should not be
6598 considered experimental anymore, even though they might require
6601 2008-01-30 Emmanuele Bassi <ebassi@openedhand.com>
6603 * HACKING: Expand the "document API" point, and the release
6606 * README: Update the release notes regarding the scale behaviour,
6607 now that the gravity has been removed.
6609 2007-01-30 Tomas Frydrych <tf@openedhand.com>
6611 * clutter/clutter-actor.c:
6612 * clutter/clutter-actor.h:
6613 Added new clutter_actor_move_anchor_point_ API.
6615 * clutter/clutter-behaviour-scale.c:
6616 * clutter/clutter-behaviour-scale.h:
6617 * clutter/clutter-effect.c:
6618 * clutter/clutter-effect.h:
6619 * tests/test-actors.c:
6620 * tests/test-effects.c:
6621 * tests/test-scale.c:
6622 Removed gravity from ClutterBehaviourScale.
6624 2008-01-27 Emmanuele Bassi <ebassi@openedhand.com>
6626 * tests/test-depth.c (main): Use a group instead of pushing
6627 the actors on the stage.
6629 2008-01-25 Emmanuele Bassi <ebassi@openedhand.com>
6631 * clutter/clutter-group.c (sort_z_order): Invert condition to
6632 return to the same as in revision 1976.
6634 2008-01-25 Emmanuele Bassi <ebassi@openedhand.com>
6636 * clutter/clutter-label.c (clutter_label_query_coords): Check
6637 if the layout logical rectangle size is bigger than the bounding
6638 box; this usually means that the bounding box changed in one
6639 point and the label private allocation needs to be
6642 2008-01-25 Emmanuele Bassi <ebassi@openedhand.com>
6644 * clutter/x11/Makefile.am: Add the generated clutter-x11 pkg-config
6645 file to CLEANFILES, to pass distcheck.
6648 * clutter/Makefile.am: Tweak up the Makefiles.
6651 * NEWS: Release 0.5.4
6653 * configure.ac: Post-release bump to 0.5.5
6655 2008-01-25 Emmanuele Bassi <ebassi@openedhand.com>
6657 * clutter/clutter-group.c: Use a shorter Z order sorting function,
6658 avoiding the checks.
6660 2008-01-25 Øyvind Kolås <pippin@o-hand.com>
6662 * clutter/clutter-shader.c: added documentation strings for
6665 2008-01-23 Emmanuele Bassi <ebassi@openedhand.com>
6667 * Makefile.am: Use variables, instead of substitutions.
6669 * clutter/clutter-private.h:
6670 * clutter/clutter-main.h: Make clutter_do_event() public again,
6671 as we need it in clutter-gtk.
6674 * clutter/x11/Makefile.am:
6675 * clutter/x11/clutter-x11.pc.in: Add a clutter-x11 pkg-config
6676 file for clutter-gtk, as it depends on the X11 backend API, as
6677 implemented by the GLX and EGLX backends.
6679 * clutter/x11/clutter-event-x11.c (event_translate): Do not
6680 propagate DestroyNotify events if the stage doesn't own the
6683 * tests/test-scale.c (main): Set values different from the default.
6685 2008-01-21 Emmanuele Bassi <ebassi@openedhand.com>
6687 * clutter/clutter-behaviour-scale.c:
6688 (clutter_behaviour_scale_set_property),
6689 (clutter_behaviour_scale_class_init): Fix stupid typo in the
6690 y-scale-end property declaration. (#720)
6692 2008-01-21 Emmanuele Bassi <ebassi@openedhand.com>
6694 * clutter/clutter-behaviour-depth.h:
6695 * clutter/clutter-behaviour-depth.c:
6696 (clutter_behaviour_depth_set_bounds),
6697 (clutter_behaviour_depth_get_bounds): Add the depth-start and
6698 depth-end accessors.
6700 * tests/test-depth.c (timeline_completed): Use set_bounds()
6701 instead of g_object_set().
6703 * clutter.symbols: Add clutter_behaviour_depth_set_bounds()
6704 and clutter_behaviour_opacity_get_bounds() to the list of
6707 2008-01-21 Emmanuele Bassi <ebassi@openedhand.com>
6709 * clutter/clutter-behaviour-scale.c: Use separate variables for
6710 storing the scale boundaries; apparently, using arrays broke
6711 the python bindings. (#720)
6713 2008-01-21 Matthew Allum <mallum@openedhand.com>
6715 * clutter/clutter-group.c:
6716 Make sure unrealizing a group also unrealizes children.
6718 * clutter/glx/clutter-stage-glx.c:
6719 Chain up to group unrealize to make sure textures get unrealized
6720 when changing context (see #718)
6722 * clutter/clutter-texture.c:
6725 2008-01-21 Øyvind Kolås <pippin@gimp.org>
6727 * tests/test-shader.c: fix incompatible types in shader programs
6729 Apparently floats can't be multiplied or divided with ints without
6730 explicit type casts. Use 2.0 or float(var) where appropriate. Patch
6731 from Tommi Komulainen (#715).
6733 2008-01-19 Emmanuele Bassi <ebassi@openedhand.com>
6735 * clutter/clutter-main.c (generate_enter_leave_events): Do not
6736 take the explicit reference, and let clutter_event_copy() do it
6737 for us. (#714, Neil Roberts)
6739 2008-01-19 Emmanuele Bassi <ebassi@openedhand.com>
6741 * clutter/clutter-event.c (clutter_event_copy): Take an extra
6742 reference on the related actor in ClutterEventCrossing that we
6743 explicitly unref in clutter_event_free(). (#714, Neil Roberts)
6745 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
6747 * tests/test-actors.c (input_cb): Fix the callback signature;
6748 hide the clicked actor only if it's a hand.
6750 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
6752 * clutter/clutter-main.c (clutter_do_event): Check the
6753 return value of the ::event signal for the CLUTTER_DELETE
6756 * clutter/clutter-stage.c (clutter_stage_event): Emit the
6757 ::event signal when receiving the CLUTTER_DELETE event; this
6758 allows to intercept the user's closing of the stage window.
6760 2007-01-18 Tomas Frydrych <tf@openedhand.com>
6762 * clutter/clutter-fixed.h:
6763 Added missing proto for clutter_fixed_qdivx().
6765 2007-01-18 Tomas Frydrych <tf@openedhand.com>
6767 * clutter/clutter-fixed.h:
6768 * clutter/clutter-fixed.c:
6769 Added CLUTTER_QDIV() for 64-bit division (bug 564, patch by
6770 Gwenole Beauchesne).
6772 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
6774 * clutter/clutter-event.h: Add a gunichar field for the Unicode
6775 representation of the key. (#555)
6777 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
6779 * clutter/clutter-actor.h:
6780 * clutter/clutter-script.h:
6781 * clutter/clutter-stage.h:
6782 * clutter/clutter-units.h: Documentation fixes and additions.
6784 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
6786 * clutter.symbols: Add ClutterBehaviourOpacity accessors.
6788 * clutter/clutter-behaviour-opacity.h:
6789 * clutter/clutter-behaviour-opacity.c:
6790 (clutter_behaviour_opacity_set_bounds),
6791 (clutter_behaviour_opacity_get_bounds): Add accessors for the
6792 opacity-start and opacity-end properties.
6794 * clutter/clutter-behaviour-scale.h: Fix the argument name to
6795 avoid complaints by gtk-doc.
6797 2008-01-17 Emmanuele Bassi <ebassi@openedhand.com>
6799 * clutter/clutter-behaviour-scale.c:
6800 (clutter_behaviour_scale_set_gravity): Notify on the right property
6803 2008-01-17 Emmanuele Bassi <ebassi@openedhand.com>
6805 * clutter.symbols: Add new ClutterBehaviourScale setters.
6807 * clutter/clutter-behaviour-scale.[ch]: Split the scaling factors
6808 on both axis. Add setters for all the behaviour properties.
6810 * clutter/clutter-effect.h:
6811 * clutter/clutter-effect.c (clutter_effect_scale): Split the
6812 final scale factor to match the ClutterBehaviourScale changes. (#709)
6814 * tests/test-actors.c:
6815 * tests/test-effects.c:
6816 * tests/test-rotate.c:
6817 * tests/test-scale.c: Update after API change.
6819 2008-01-16 Emmanuele Bassi <ebassi@openedhand.com>
6821 * clutter/cogl/cogl.h: Rename COGLhandleARB to COGLhandle.
6823 * clutter/cogl/gl/cogl-defines.h.in:
6824 * clutter/cogl/gl/cogl.c: Update GL implementation of COGL.
6826 * clutter/cogl/gles/cogl-defines.h:
6827 * clutter/cogl/gles/cogl.c: Update GLES implementation of COGL.
6829 * clutter/clutter-shader.c: Fix ClutterShader to use the new
6830 COGLhandle type instead of COGLhandlerARB.
6832 2008-01-16 Emmanuele Bassi <ebassi@openedhand.com>
6834 Define COGLhandleARB. (patch by Johan Bilien)
6836 * clutter/cogl/gles/cogl-defines.h: Define COGLhandleARB on
6837 GLES as well (using GLuint)
6839 * clutter/cogl/gles/cogl.c: Use COGLhandleARB.
6841 2008-01-14 Tommi Komulainen <tommi.komulainen@iki.fi>
6843 reviewed by: Emmanuele Bassi <ebassi@openedhand.com>
6845 * clutter/osx/clutter-event-osx.c (_clutter_event_osx_put):
6846 Initialize ClutterEvent structure with zeroes (#672)
6848 The 'source' member was uninitialized and being referenced in
6849 clutter_do_event leading to crash.
6851 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
6853 * tests/test-scale.c: Improve test case for scaling (#684,
6856 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
6858 * clutter/clutter-timeline.c (timeline_timeout_func): Fix
6859 check if the last frame was reached by skipping a frame (#654,
6862 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
6864 * clutter/clutter-shader.c: Use correct format string for
6865 gssize. (#695, Tommi Komulainen)
6867 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
6869 * clutter/cogl/gl/cogl.c (cogl_get_proc_address): Implement non-GLX
6870 version using GModule and looking up the symbol from the running
6871 process. It should work when linked to library providing the
6872 requested function. (#696, Tommi Komulainen)
6874 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
6876 * configure.ac: Post-release bump to 0.5.3
6879 * NEWS: Release 0.5.2
6881 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
6883 * clutter.symbols: Add clutter_model_insertv()
6885 * clutter/clutter-model.[ch] (clutter_model_insertv): Add a vector
6886 based insertion API, for language bindings
6888 2008-01-12 Emmanuele Bassi <ebassi@openedhand.com>
6890 * clutter/clutter-effect.c (clutter_effect_rotate): Make the
6891 rotate effect work on the passed axis, instead of hardcoding
6892 the X axis. (#700, Neil Roberts)
6894 2008-01-10 Øyvind Kolås <pippin@gimp.org>
6896 Added COGLhandleARB since the underlying type on OSX is void*,
6897 patch from Tommi Komulainen <tommi.komulainen@iki.fi>, (#694)
6899 * clutter/cogl/gl/cogl-defines.h.in: Added COGLhandleARB typedef.
6900 * clutter/cogl/cogl.h:
6901 * clutter/cogl/gl/cogl.c:
6902 * clutter/clutter-shader.c: Use COGLhandleARB instead of COGLint when
6903 referring to program or shader handles.
6905 2008-01-09 Emmanuele Bassi <ebassi@openedhand.com>
6907 * clutter/Makefile.am:
6908 * clutter/clutter.h:
6909 * clutter/clutter-list-model.[ch]: Complete the ClutterModelDefault
6910 to ClutterListModel rename by renaming the source files
6912 2008-01-09 Emmanuele Bassi <ebassi@openedhand.com>
6914 * clutter/clutter-model-default.[ch]: Rename ClutterModelDefault
6915 into ClutterListModel, to make it clear that the default
6916 ClutterModel implementation is list-based
6918 * tests/test-model.c: Update call
6920 2008-01-09 Emmanuele Bassi <ebassi@openedhand.com>
6922 * clutter/clutter-model-default.c:
6923 (clutter_model_default_new),
6924 (clutter_model_default_newv): Move the constructors in the
6927 * clutter/clutter-model-private.h: Add a private header for
6928 the ClutterModel implementations
6930 * clutter/clutter-model.c:
6931 (clutter_model_check_type),
6932 (clutter_model_set_n_columns),
6933 (clutter_model_set_column_type): Mark as private to Clutter,
6934 not static to ClutterModel
6936 * clutter/Makefile.am: Add clutter-model-private.h
6938 2008-01-09 Emmanuele Bassi <ebassi@openedhand.com>
6940 * clutter/clutter-label.c:
6941 (clutter_label_ensure_layout): Fix the ClutterUnits to Pango
6944 2008-01-08 Emmanuele Bassi <ebassi@openedhand.com>
6946 * clutter/clutter-model.c:
6947 (clutter_model_appendv),
6948 (clutter_model_prependv): Fix the columns length pre-condition
6950 2008-01-07 Emmanuele Bassi <ebassi@openedhand.com>
6952 * clutter/clutter-model-default.[ch]: Remove the ClutterModelDefault
6953 iterator symbols from the public API; the iterator implementation
6954 is a detail of the default ClutterModel class
6956 * clutter.symbols: Update
6958 2008-01-07 Emmanuele Bassi <ebassi@openedhand.com>
6960 * clutter/clutter-model.h:
6961 * clutter/clutter-model.c:
6962 (clutter_model_appendv),
6963 (clutter_model_prependv): Add vector based API for bindings.
6965 (clutter_model_get_column_name),
6966 (clutter_model_get_column_type),
6967 (clutter_model_set_sorting_column): Fix the check in the condition
6968 on the column index.
6970 * tests/test-scale.c (on_timeline_completed), (main): Fix spelling
6972 * clutter.symbols: Update public symbols
6974 2008-01-04 Emmanuele Bassi <ebassi@openedhand.com>
6976 * clutter.symbols: Add clutter_actor_move_byu()
6978 * clutter/clutter-actor.h:
6979 * clutter/clutter-actor.c:
6980 (clutter_actor_move_by),
6981 (clutter_actor_move_byu): Add a units-based variant of the
6982 clutter_actor_move_by() function
6984 2008-01-02 Johan Bilien <jobi@via.ecp.fr>
6986 reviewed by: Emmanuele Bassi <ebassi@openedhand.com>
6988 * configure.ac: Use AC_DEFINE_UNQUOTED to expand the
6989 variable. Fixes EGL backend build
6991 2008-01-02 Emmanuele Bassi <ebassi@openedhand.com>
6993 * configure.ac: Post release bump to 0.5.1
6995 2008-01-02 Emmanuele Bassi <ebassi@openedhand.com>
6998 * NEWS: Release 0.5.0
7000 2008-01-02 Emmanuele Bassi <ebassi@openedhand.com>
7002 * clutter/clutter-model-default.c:
7003 (clutter_model_default_get_iter_at_row),
7004 (clutter_model_default_insert_row): Fix off-by-one errors
7006 (clutter_model_default_class_init):
7007 (clutter_model_default_remove_row): Move the actual removal of the
7010 (clutter_model_default_row_removed): ... the signal class handler
7011 of ::row-removed; this way, signal handlers connected to
7012 ::row-removed will get a valid iterator, while signal handlers
7013 connected to ::row-removed with the AFTER flag will get an updated
7016 2007-12-31 Tomas Frydrych <tf@openedhand.com>
7019 * clutter/Makefile.am:
7020 Added -no-undefined to libtool LDFLAGS for mingw/SDL backend, to
7021 allow building of shared libraries for win32.
7023 2007-12-31 Tomas Frydrych <tf@openedhand.com>
7027 Added CLUTTER_REQUIRES automake var to allow deps in clutter.pc to
7028 be backend-specific.
7030 2007-12-28 Emmanuele Bassi <ebassi@openedhand.com>
7032 * clutter/clutter-texture.c:
7033 (clutter_texture_unrealize): Do not read the pixels back if the
7034 texture is being destroyed
7036 2007-12-28 Emmanuele Bassi <ebassi@openedhand.com>
7038 * clutter/clutter-model.c:
7039 (clutter_model_real_get_n_rows), (clutter_model_class_init),
7040 (clutter_model_get_n_rows): Provide a default implementation of
7041 the get_n_rows() method, so that subclasses do not strictly need
7044 2007-12-25 Emmanuele Bassi <ebassi@openedhand.com>
7046 * clutter/clutter-actor.c:
7047 (parse_rotation_array): Inline, and get the JsonArray as a parameter
7049 (parse_rotation): Update
7051 * clutter/clutter-script.c:
7052 (warn_missing_attribute): Fix for emacs-style warnings
7054 (clutter_script_parse_node): Remove an ifdeffed out section
7056 (clutter_script_construct_parameters),
7057 (clutter_script_construct_object): Rename get_parameters, so
7058 it's obvious what it does
7060 2007-12-25 Emmanuele Bassi <ebassi@openedhand.com>
7062 * tests/test-script.json: Fix the JSON syntax
7064 2007-12-25 Emmanuele Bassi <ebassi@openedhand.com>
7066 * clutter/clutter-enum-types.c.in: Fix the template
7068 2007-12-24 Emmanuele Bassi <ebassi@openedhand.com>
7070 * clutter/clutter-stage.c:
7071 * clutter/clutter-stage.h:
7072 * clutter/clutter-texture.c: Remove some of the remaining FIXMEs
7073 in the API documentation
7075 2007-12-24 Emmanuele Bassi <ebassi@openedhand.com>
7077 * clutter/clutter-color.c:
7078 * clutter/clutter-event.c:
7079 * clutter/clutter-stage.c: Intern more strings using the I_() macro
7081 * clutter/clutter-enum-types.c.in: Call g_intern_static_string()
7082 in the enum types template
7084 2007-12-24 Emmanuele Bassi <ebassi@openedhand.com>
7086 * clutter.symbols: Add clutter_actor_set_clipu() and
7087 clutter_actor_get_clipu()
7089 * clutter/clutter-actor.h:
7090 * clutter/clutter-actor.c:
7091 (clutter_actor_set_clipu), (clutter_actor_get_clipu): Add the
7092 new units-based versions of the clip accessors
7094 (clutter_actor_set_clip), (clutter_actor_get_clip): Reimplement
7095 the pixels-based clip accessors as proxies for the units-based
7098 2007-12-24 Emmanuele Bassi <ebassi@openedhand.com>
7100 * clutter/cogl/cogl.h: Update cogl_clip_set() to accept the
7101 clip components as ClutterFixed values
7103 * clutter/cogl/gl/cogl.c (cogl_clip_set): Update the GL implementation
7106 * clutter/cogl/gles/cogl.c:
7107 (cogl_rectangle_internal): Provide an internal, inlined rectangle
7108 drawing function using fixed point values, to be shared by
7109 cogl_clip_set() and cogl_rectangle()
7111 (cogl_clip_set), (cogl_rectangle): Update the GLES implementation
7112 of cogl_clip_set() and cogl_rectangle() to use the new internal
7113 rectangle drawing function
7115 * clutter/clutter-actor.c: Make the clip an array of ClutterUnit
7116 values instead of pixel-based; this allows higher precision and
7119 (_clutter_actor_apply_modelview_transform): Pass the clip
7120 components converting from units to fixed point values, using
7121 the new cogl_clip_set() signature
7123 (clutter_actor_get_property), (clutter_actor_set_clip),
7124 (clutter_actor_get_clip): Update the accessors of the clip
7127 2007-12-21 Emmanuele Bassi <ebassi@openedhand.com>
7129 * clutter/clutter-actor.h: Remove the unused ::set_depth() and
7130 ::get_depth() virtual functions. (#674, Murray Cumming)
7132 2007-12-21 Emmanuele Bassi <ebassi@openedhand.com>
7134 * clutter/clutter-group.c:
7135 * clutter/clutter-group.h: Add the clutter_group_add() convenience
7136 function; it's now "undeprecated" and implemented as a macro
7138 * clutter/clutter-stage.h: Add clutter_stage_add() as a convenience
7141 * clutter/cogl/cogl.h: Include just the needed headers instead
7142 of the whole clutter.h; this avoids rebuild cogl when not needed
7144 2007-12-21 Emmanuele Bassi <ebassi@openedhand.com>
7146 * Makefile.am: Move tests build before docs, to cut down the
7147 distcheck failure discovery
7149 * clutter.symbols: Add clutter_texture_set_area_from_rgb_data()
7151 * clutter/clutter-actor.c:
7152 * clutter/clutter-script.c:
7153 * clutter/clutter-texture.c:
7154 * clutter/json/json-generator.c:
7155 * clutter/json/json-parser.c: Compilation fixes for passing distcheck
7157 * tests/test-grab.c:
7158 * tests/test-score.c:
7159 * tests/test-script.c:
7160 * tests/test-shader.c:
7161 * tests/test-unproject.c: Ditto as above
7163 2007-12-21 Emmanuele Bassi <ebassi@openedhand.com>
7165 * clutter/clutter-label.c:
7166 (clutter_label_ensure_layout): Avoid rounding errors in the layout
7167 computing when switching between Clutter units and Pango units.
7169 2007-12-19 Øyvind Kolås <pippin@o-hand.com>
7171 * clutter/clutter-texture.[ch]: (bug #675) added
7172 clutter_texture_set_area_from_rgb_data, sharing some of the
7173 initialization infrastructure with clutter_texture_set_from_rgb_data.
7175 2007-12-20 Emmanuele Bassi <ebassi@openedhand.com>
7177 * clutter/clutter-container.c:
7178 (clutter_container_lower_child): Fix interface method call
7179 to actually call ClutterContainer::lower. (#670, Gwenole
7182 2007-12-20 Emmanuele Bassi <ebassi@openedhand.com>
7184 * clutter/clutter-label.c:
7185 (clutter_label_query_coords): Return the bounding box set inside
7186 request_coords(), if any; otherwise, return the natural allocation
7187 of the label. (#678, reported by Gwenole Beauchesne)
7189 * tests/test-rotate.c: Align the label
7191 2007-12-19 Tomas Frydrych <tf@openedhand.com>
7193 * clutter/Makefile.am:
7194 * clutter/cogl/gl/cogl-defines.h.in:
7195 * clutter/pango/pangoclutter-render.c:
7197 Fixes to allow cross-compilation with mingw (patch by Neil
7199 Removed trailing whitespace.
7201 2007-12-18 Øyvind Kolås <pippin@o-hand.com>
7203 * clutter/clutter-main.c: (generate_enter_leave_events): synthesize
7204 enter event (without related) and corresponding leave event when the
7205 actor the cursor is over has been destroyed.
7206 * clutter/clutter-event.c: (clutter_event_free): only unref the
7207 related_actor when it actually is set.
7209 2007-12-18 Emmanuele Bassi <ebassi@openedhand.com>
7211 * clutter/clutter-main.c:
7212 (unset_motion_last_actor),
7213 (generate_enter_leave_events): Attach a callback to the destroy
7214 signal on the last motion actor, so if it goes away while the
7215 pointer is in the middle of it we can unset the pointer.
7217 * clutter/clutter-private.h: Store the last motion actor inside
7220 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
7222 * clutter/clutter-actor.c:
7223 (clutter_actor_should_pick_paint),
7224 (clutter_actor_apply_transform_to_point): Fix the whitespace.
7226 (clutter_actor_set_rotation): Clarify that the coordinates of
7227 the centre of rotation are relative to the anchor point or,
7228 if not set, to the upper left corner of the bounding box.
7230 2007-12-17 Tomas Frydrych <tf@openedhand.com>
7232 * clutter/clutter-behaviour-ellipse.c:
7233 * clutter/clutter-behaviour-rotate.c:
7234 Clamping of start and end angles to <0, 360).
7236 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
7238 * clutter/clutter-behaviour-path.c: Clarify the equivalence
7239 between the upper and lower bounds of the ClutterAlpha and
7240 the position in the path. (#634)
7242 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
7244 * clutter/clutter-texture.c: Mention the fact that a ClutterTexture
7245 will scale its contents to fit inside the requested bounding
7248 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
7250 * clutter/clutter-actor.c: Fix documentation for
7251 the ::captured-event signal. (#673)
7253 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
7255 * clutter/clutter-actor.c: Clarify the set_clip() method
7256 documentation, pointing out that the clip area origin is
7257 always the top-left corner of an actor.
7259 2007-12-15 Emmanuele Bassi <ebassi@openedhand.com>
7261 * clutter/clutter-actor.c:
7262 * clutter/clutter-alpha.h:
7263 * clutter/clutter-event.h:
7264 * clutter/clutter-fixed.[ch]:
7265 * clutter/clutter-model.h:
7266 * clutter/clutter-shader.[ch]:
7267 * clutter/clutter-stage.c: Documentation fixes.
7269 2007-12-15 Emmanuele Bassi <ebassi@openedhand.com>
7271 * clutter/clutter-model-default.c:
7272 (clutter_model_default_iter_next),
7273 (clutter_model_default_iter_prev): Do not instantiate a new
7274 iterator, and update the passed one instead, as we say we do
7275 in the documentation. This avoid leaking tons of iterators.
7277 * clutter/clutter-model.[ch]: Update the documentation.
7279 * tests/test-model.c: Prettify some output.
7281 2007-12-14 Emmanuele Bassi <ebassi@openedhand.com>
7283 * clutter/clutter-behaviour.c:
7284 (clutter_knot_get_type): Use the I_() macro.
7286 * clutter/clutter-model.[ch]: Make ClutterModel and ClutterModelIter
7287 abstract classes; also, provide more virtual functions inside the
7288 ClutterModel vtable, to allow subclasses and language bindings to
7289 override the entire ClutterModel using other/native data types
7292 * clutter/clutter-model-default.[ch]: ClutterModelDefault is a
7293 default implementation of ClutterModel and ClutterModelIter using
7296 * clutter/Makefile.am:
7297 * clutter/clutter.h: Build glue for ClutterModelDefault.
7299 * tests/test-model.c: Update for constructor changes.
7301 * tests/test-shader.c: Fix a typo.
7303 2007-12-14 Matthew Allum <mallum@openedhand.com>
7305 * clutter/cogl/gl/cogl-defines.h.in:
7306 * clutter/cogl/gles/cogl-defines.h:
7307 Add CLUTTER_COGL_HAS_GL/GLES defines
7309 2007-12-11 Øyvind Kolås <pippin@o-hand.com>
7311 Refined the ClutterShader API based on a patch from Emmanuele Bassi.
7313 * clutter/clutter-actor.c: (clutter_actor_paint),
7314 (clutter_actor_apply_shader): queue a redraw of actor when shader is
7316 * clutter/clutter-actor.h: indentation.
7317 * clutter/clutter-shader.[ch]: made the fragment and vertex shader
7318 sources properties. Report error through GError when binding shaders.
7319 * tests/test-shader.c: modified to use newer API.
7321 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
7323 * clutter/clutter-model.c:
7324 (clutter_model_get_sorting_column): Fix wrong type check.
7326 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
7328 * clutter/clutter-model.[ch]: Allow unsorting the model (passing
7329 -1 as the sorting column)
7331 (clutter_model_iter_get_valist): Do not initialise twice che
7334 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
7336 * clutter/clutter-model.c (clutter_model_iter_get_value): Initialise
7337 the passed GValue like the other getters do.
7339 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
7341 * clutter/clutter-model.h:
7342 * clutter/clutter-model.c:
7343 (clutter_model_append_value),
7344 (clutter_model_prepend_value),
7345 (clutter_model_insert_value): Add a _value() variant for the
7346 insertion methods, for use of the language bindings.
7348 (clutter_model_append),
7349 (clutter_model_prepend),
7350 (clutter_model_insert): Do not return a boolean: insertion should
7351 never fail unless for a programming error, in which case we have
7354 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
7356 * clutter/clutter-behaviour-ellipse.c:
7357 (clutter_behaviour_ellipse_get_angle_tilt),
7358 (clutter_behaviour_ellipse_get_angle_tiltx),
7359 (clutter_behaviour_ellipse_set_tilt): Fix a double conversion
7360 that was messing up the returned results. (#665)
7362 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
7364 * clutter/clutter-actor.c:
7365 (clutter_actor_set_property),
7366 (clutter_actor_get_property),
7367 (clutter_actor_class_init): Add the rotation-* properties,
7368 controlling the rotation angle and center on each axis. (#614)
7370 (parse_rotation_array), (parse_rotation),
7371 (clutter_actor_parse_custom_node),
7372 (clutter_actor_set_custom_property),
7373 (clutter_scriptable_iface_init): Add a new "rotation" custom
7374 property for expressing the rotation along each axis in a
7378 { "x-axis" : [ <angle>, [ <y>, <z> ] ] },
7379 { "y-axis" : [ <angle>, [ <x>, <z> ] ] },
7380 { "z-axis" : [ <angle>, [ <x>, <y> ] ] }
7383 (clutter_geometry_get_type),(clutter_vertex_get_type),
7384 (clutter_actor_box_get_type): Use the I_() macro instead of
7385 directly calling g_intern_static_string().
7387 * clutter/clutter-entry.c (clutter_entry_request_coords):
7388 * clutter/clutter-label.c (clutter_label_ensure_layout),
7389 (clutter_label_request_coords): Use CLUTTER_UNITS_FROM_DEVICE()
7390 instead of CLUTTER_UNITS_FROM_INT(), as "device" means "pixels".
7392 * clutter/clutter-private.h: Add the I_() macro for intern
7395 * tests/test-script.json: Test the newly added "rotation"
7398 2007-12-10 Tomas Frydrych <tf@openedhand.com>
7400 * tests/Makefile.am:
7403 2007-12-10 Tomas Frydrych <tf@openedhand.com>
7405 * tests/test-viewport.c:
7406 * tests/Makefile.am:
7407 Added a simple viewport test.
7409 2007-12-10 Tomas Frydrych <tf@openedhand.com>
7411 * clutter/clutter-actor.c:
7412 (_clutter_actor_apply_modelview_transform):
7413 Moved offset translation after rotation so that rotation coords
7414 are also relative to the offset point.
7416 2007-12-09 Emmanuele Bassi <ebassi@openedhand.com>
7418 * tests/test-events.c (input_cb):
7419 * tests/test-text.c (main): Fix compiler errors. (#592,
7422 2007-12-09 Emmanuele Bassi <ebassi@openedhand.com>
7424 * clutter/clutter-actor.c: Document the values for full
7425 transparency and full opacity in the set_opacity()
7428 * clutter/clutter-behaviour-ellipse.c: Improve consistency
7431 2007-12-08 Emmanuele Bassi <ebassi@openedhand.com>
7433 * configure.ac: Make libtool respect the -s switch of make
7436 2007-12-07 Emmanuele Bassi <ebassi@openedhand.com>
7438 * clutter/clutter-actor.h:
7439 * clutter/clutter-actor.c:
7440 (clutter_actor_get_sizeu),
7441 (clutter_actor_get_positionu): Add unit-based accessors to
7442 the size and position.
7444 2007-12-07 Tomas Frydrych <tf@openedhand.com>
7446 * clutter/clutter-behaviour-ellipse.c:
7447 (clutter_behaviour_ellipse_set_angle_start):
7448 (clutter_behaviour_ellipse_set_angle_end):
7449 (clutter_behaviour_ellipse_set_angle_tilt):
7450 (clutter_behaviour_ellipse_set_tilt):
7451 Removed strayed degree -> ClutterAngle conversions left over from
7454 (clutter_behaviour_ellipse_set_angle_tiltx):
7455 Removed stray printf.
7457 2007-12-07 Tomas Frydrych <tf@openedhand.com>
7459 * clutter/clutter-behaviour-ellipse.c:
7460 Fixed tilt setters and getters.
7462 2007-12-06 Tomas Frydrych <tf@openedhand.com>
7464 * clutter/clutter-fixed.c:
7465 * clutter/clutter-fixed.h:
7467 Added extra iteration to the Newton-Rapson algorithm for arguments
7468 lesser than 342 to improve precission.
7470 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
7472 * clutter/clutter-main.c:
7473 (clutter_set_motion_events_frequency): Never allow the motion
7474 events devlivery frequency to exceed the default frame rate.
7476 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
7478 * clutter/json/json-parser.[ch]: Use gssize, size we allow -1
7479 as a length (meaning "use the whole string").
7481 (json_parser_load_from_data): Use the passed length instead of
7482 using strlen() all the time.
7484 * clutter/clutter-script.[ch]: Ditto as above.
7486 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
7488 * clutter/pango/pangoclutter-render.c: Hush a compiler warning
7489 by removing a unused variable.
7491 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
7493 * clutter/clutter-label.c (clutter_label_ensure_layout): If the
7494 label has a requested size, force it when ensuring the layout.
7496 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
7498 * tests/test-unproject.c: Fix type comparison.
7500 * tests/test-score.c: Save the returned ids.
7502 2007-12-05 Matthew Allum <mallum@openedhand.com>
7504 reviewed by: <delete if not using a buddy>
7506 * clutter/pango/pangoclutter-render.c: (tc_get), (free_glyph_info),
7507 (draw_glyph), (draw_trapezoid), (pango_clutter_render_layout),
7508 (pango_clutter_render_layout_line),
7509 (pango_clutter_render_clear_caches), (prepare_run), (draw_begin):
7511 2007-12-05 Emmanuele Bassi <ebassi@openedhand.com>
7513 * clutter/clutter-score.h: Rearrange declarations.
7515 * clutter/clutter-score.c: More documentation in the long
7516 description of the ClutterScore section.
7518 * clutter/clutter-debug.h:
7519 * clutter/clutter-main.c: Add the CLUTTER_DEBUG_SHADER flag,
7520 for debugging the shader calls.
7522 * clutter/clutter-feature.h: Fix the documentation of the
7525 * clutter/Makefile.am: Remove trailing whitespace.
7527 2007-12-05 Tomas Frydrych <tf@openedhand.com>
7529 * clutter/clutter-actor.c:
7530 * clutter/clutter-actor.h:
7531 * tests/Makefile.am:
7532 * tests/test-unproject:
7533 (clutter_actor_transform_stage_point):
7534 Added new function for translating stage coordinates into local
7537 2007-12-04 Emmanuele Bassi <ebassi@openedhand.com>
7539 * clutter/clutter-score.c: Better document ClutterScore
7542 2007-12-04 Emmanuele Bassi <ebassi@openedhand.com>
7544 * clutter/clutter-score.[ch]: Reimplement ClutterScore using
7545 a N-ary tree to store the timelines. Remove clutter_score_add():
7546 the same functionality can be achieved by passing a NULL
7547 parent to clutter_score_append().
7549 * tests/test-score.c: Update ClutterScore test unit, and add
7552 2007-12-04 Øyvind Kolås <pippin@o-hand.com>
7554 * clutter/clutter-shader.c: (bind_glsl_shader): use gchar instead of
7557 2007-12-03 Øyvind Kolås <pippin@o-hand.com>
7559 * clutter/clutter-shader.[ch]: do not include GL.h.
7561 2007-12-03 Øyvind Kolås <pippin@o-hand.com>
7563 Support for shaders in clutter. At the moment limited to drivers
7564 providing GLSL support.
7566 * clutter/cogl/cogl.h: added rather direct binding of needed for glsl
7568 * clutter/cogl/gl/cogl-defines.h.in:
7569 * clutter/cogl/gl/cogl.c:
7570 * clutter/cogl/gles/cogl-defines.h: added stubs.
7571 * clutter/cogl/gles/cogl.c: added stubs.
7573 * clutter/glx/clutter-stage-glx.c:
7574 (clutter_stage_glx_realize): unrelated memory management sanity fix.
7575 (clutter_stage_glx_unrealize): unbind all shaders on stage unrealize.
7577 * clutter/Makefile.am: added clutter-shader.[ch]
7578 * clutter/clutter-actor.[ch]: adding shader capability to
7580 * clutter/clutter-feature.h: added CLUTTER_FEATURE_SHADERS_GLSL
7581 * clutter/clutter-private.h: added stack of shaders to context.
7582 * clutter/clutter-shader.[ch]: new.
7584 * tests/Makefile.am: added shader test.
7585 * tests/test-shader.c: (frame_cb), (main): simple shader test,
7586 cycle through the inline shader with right/left mouse buttons.
7588 2007-12-03 Øyvind Kolås <pippin@o-hand.com>
7590 * clutter/glx/clutter-stage-glx.c: for extra sanity, set
7591 stage_x11->xvisinfo = NULL after XFree. Makes using the root window
7592 as foreign window possible.
7594 2007-11-30 Øyvind Kolås <pippin@o-hand.com>
7596 * clutter/clutter-timeline.c: (clutter_timeline_get_delta): return the
7597 number of milliseconds passed between new-frame events instead of
7598 since new-frame events, thus making sure that the sum of _get_delta's
7599 returned for all new-frame events is equal to total time elapsed.
7601 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
7603 * clutter/clutter-actor.c (parse_units),
7604 (clutter_actor_parse_custom_node): Do not allow using percentages
7605 of the stage on the stage itself, as it makes little to no
7608 * clutter/clutter-script.c:
7609 (clutter_script_construct_object): Rearrange code.
7611 * tests/test-script.json: Do not set the size of the stage, to
7612 test for the stage size percentage.
7614 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
7616 * clutter/clutter-model.h: Complete the documentation of
7617 the ClutterModelClass structure members.
7619 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
7621 * clutter/clutter-timeline.h:
7622 * clutter/clutter-timeline.c
7623 (timeline_timeout_func),
7624 (clutter_timeline_get_delta): Add a function for retrieving
7625 the number of frames and the time (in milliseconds) elapsed
7626 since the last timeline ::new-frame signal. This can be useful
7627 for implementing a physics engine or just for knowing how if
7628 and how many frames have been skipped.
7630 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
7632 * clutter/clutter-actor.c (parse_units),
7633 (clutter_actor_parse_custom_node),
7634 (clutter_scriptable_iface_init): Override the parsing code
7635 for the x, y, width and height properties of ClutterActor,
7636 to allow strings with modifiers when defining the position
7637 and/or the dimensions of an actor. Bare integers are assumed
7638 as pixels; floating point values in the [0, 1] interval are
7639 assumed as percentages; strings can have these modifiers:
7643 - pt - points (at the current resolution)
7644 - % - percentage of the stage
7646 * clutter/clutter-units.h: Fix the conversion macros
7648 * tests/test-script.json: Test the new values.
7650 2007-11-29 Emmanuele Bassi <ebassi@openedhand.com>
7652 * clutter/clutter-model.[ch]: Slight API change in the constructor
7653 functions for ClutterModel: clutter_model_new() now takes a list
7654 of GType/string pairs for both the column type and the column name.
7656 (clutter_model_set_n_columns),
7657 (clutter_model_set_names),
7658 (clutter_model_set_types): Subclasses of ClutterModel will be able
7659 to call clutter_model_set_types() and clutter_model_set_names() in
7660 any order, provided that they don't call each function more than
7663 * tests/test-model.c: Update the test case.
7665 2007-11-29 Tomas Frydrych <tf@openedhand.com>
7667 * clutter/clutter-actor.h:
7668 * clutter/clutter-actor.c:
7669 Converted depth and rotation offsets to ClutterUnit.
7671 (clutter_actor_set_depthu):
7672 (clutter_actor_get_depthu):
7673 Additional ClutterUnit API.
7675 (_clutter_actor_apply_modelview_transform):
7676 Use cogl_translatex() in place of cogl_translate().
7678 2007-11-29 Emmanuele Bassi <ebassi@openedhand.com>
7680 * *: Add svn:ignore property to every directory, so that
7681 svn status starts being useful.
7683 2007-11-29 Matthew Allum <mallum@openedhand.com>
7685 * clutter/clutter-main.c: (generate_enter_leave_events):
7686 Minor formatting tweak.
7688 Typo fix from Damien Lespiau (via mailing list)
7690 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
7692 Add more introspection capabilities to the base model class
7694 * clutter/clutter-model.h:
7695 * clutter/clutter-model.c:
7696 (clutter_model_finalize): Do no leak the column types array.
7698 (clutter_model_get_n_columns): Function for getting the number
7699 of columns inside a model.
7701 (clutter_model_set_names): Add API for setting the names of the
7704 (clutter_model_get_column_name),
7705 (_model_get_column_type): Add API for getting each column's name,
7706 and the default implementation for ClutterModel.
7708 (clutter_model_get_column_type),
7709 (_model_get_iter_at_row): Add API for getting each column's type,
7710 and the default implementation for ClutterModel.
7712 * clutter.symbols: Add ClutterModel and ClutterModelIter symbols,
7713 and keep the symbols file sorted.
7715 2007-11-28 Tomas Frydrych <tf@openedhand.com>
7717 * clutter/clutter-actor.c:
7718 * clutter/clutter-actor.h:
7719 (clutter_actor_set_positionu):
7720 (clutter_actor_set_sizeu):
7721 (clutter_actor_get_widthu):
7722 (clutter_actor_get_heightu):
7723 (clutter_actor_set_widthu):
7724 (clutter_actor_set_heightu):
7725 (clutter_actor_get_xu):
7726 (clutter_actor_get_yu):
7727 (clutter_actor_set_xu):
7728 (clutter_actor_set_yu):
7729 Expanded ClutterActor API with new ClutterUnit-base functions.
7731 * clutter/clutter-stage.c:
7732 * clutter/clutter-stage.h:
7733 (clutter_stage_get_resolution):
7734 (clutter_stage_get_resolutionx):
7735 New function to query stage resolution (floating and fixed point
7738 * clutter/clutter-units.h:
7739 (CLUTTER_UNITS_FROM_STAGE_WIDTH_PERCENTAGE):
7740 (CLUTTER_UNITS_FROM_STAGE_HEIGHT_PERCENTAGE):
7741 (CLUTTER_UNITS_FROM_PARENT_WIDTH_PERCENTAGE):
7742 (CLUTTER_UNITS_FROM_PARENT_HEIGHT_PERCENTAGE):
7743 (CLUTTER_UNITS_FROM_MM):
7744 (CLUTTER_UNITS_FROM_MMX):
7745 (CLUTTER_UNITS_FROM_POINTS):
7746 (CLUTTER_UNITS_FROM_POINTSX):
7747 New macros for conversions to ClutterUnits.
7751 ClutterActor anchor_point functions,
7752 clutter_stage_get_resolution functions.
7755 clutter_actor_scale_with_gravity functions.
7757 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
7759 * clutter/clutter-actor.[ch]: Documentation fixes.
7761 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
7763 Remove the layout containers: they will be moved to a
7766 * clutter/clutter.h:
7767 * clutter/Makefile.am: Remove layout and boxes from the
7770 * clutter/clutter-layout.[ch]: Remove the ClutterLayout
7773 * clutter/clutter-box.[ch]:
7774 * clutter/clutter-hbox.[ch]:
7775 * clutter/clutter-vbox.[ch]: Remove ClutterBox and its
7778 * clutter/clutter-label.c: Remove ClutterLayout implementation
7780 * clutter/clutter-script-private.h:
7781 * clutter/clutter-script-parser.c:
7782 * clutter/clutter-script.c:
7783 (clutter_script_parse_node): Remove special parsing for
7784 ClutterMargin and ClutterPadding.
7786 * clutter/clutter-types.h: Remove ClutterPadding and ClutterMargin.
7788 * tests/Makefile.am:
7789 * tests/test-boxes.c: Remove the boxes test case.
7791 2007-11-28 Tomas Frydrych <tf@openedhand.com>
7794 Started 0.6.0 section with comment on actor anchor point.
7796 * clutter/clutter/clutter-actor.c:
7797 * clutter/clutter/clutter-actor.h:
7798 * clutter/clutter/clutter-behaviour-scale.c:
7799 * clutter/clutter/clutter-deprecated.h:
7800 (clutter_actor_set_anchor_point):
7801 (clutter_actor_set_anchor_pointu):
7802 (clutter_actor_get_anchor_point):
7803 (clutter_actor_get_anchor_pointu):
7804 (clutter_actor_set_anchor_point_from_gravity):
7805 New anchor point API deprecating old gravity scaling, added
7806 comments on modelview matrix construction to ClutterActor
7809 (clutter_actor_set_scale_with_gravity):
7810 (clutter_actor_set_scale_with_gravityx):
7811 Deprecated; use clutter_actor_set_anchor_point_from_gravity() instead.
7813 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
7815 * clutter/clutter-effect.[ch]: Add clutter_effect_template_construct()
7816 function, for language bindings that need to set the alpha function
7817 but cannot call the clutter_effect_template_new() ctor themselves.
7819 2007-11-27 Tomas Frydrych <tf@openedhand.com>
7821 * clutter/clutter-behaviour-ellipse.c:
7822 * clutter/clutter-behaviour-ellipse.h:
7823 (clutter_behaviour_ellipse_get_angle_startx):
7824 (clutter_behaviour_ellipse_set_angle_startx):
7825 (clutter_behaviour_ellipse_get_angle_endx):
7826 (clutter_behaviour_ellipse_set_angle_endx):
7827 (clutter_behaviour_ellipse_get_angle_tiltx):
7828 (clutter_behaviour_ellipse_set_angle_tiltx):
7829 Changed to take and return angles in degrees represented as
7832 2007-11-27 Emmanuele Bassi <ebassi@openedhand.com>
7834 * clutter/clutter-actor.c (clutter_actor_destroy): Remove the
7835 reference we hold on the actor, as it was preventing the finalization
7836 of every child on the stage.
7838 2007-11-26 Emmanuele Bassi <ebassi@openedhand.com>
7840 * clutter/x11/clutter-stage-x11.c:
7841 (clutter_stage_x11_set_cursor_visible): Restore the XFixes usage,
7842 as it now seems to be have been fixed.
7844 2007-11-26 Emmanuele Bassi <ebassi@openedhand.com>
7846 * clutter/clutter-actor.c:
7847 (clutter_actor_real_show),
7848 (clutter_actor_real_hide): Do not set the MAPPED flag on the actor
7849 if it is a top-level one (like ClutterStage); the backends are
7850 responsible for setting that flag, as it might be the result of an
7851 asynchronous operation (e.g. on X11).
7853 * clutter/eglnative/clutter-stage-egl.c:
7854 (clutter_stage_egl_show),
7855 (clutter_stage_egl_hide): Set/unset the CLUTTER_ACTOR_MAPPED flag
7856 on show and hide respectively.
7858 * clutter/osx/clutter-stage-osx.c:
7859 (clutter_stage_osx_show),
7860 (clutter_stage_osx_hide): Ditto as above.
7862 * clutter/sdl/clutter-stage-sdl.c:
7863 (clutter_stage_sdl_show),
7864 (clutter_stage_sdl_hide): Ditto as above, plus chain up to the
7865 parent class show/hide virtual functions.
7867 * clutter/x11/clutter-event-x11.c (event_translate): Use the MapNotify
7868 and UnmapNotify events to call the X11 stage map/unmap functions.
7870 * clutter/x11/clutter-stage-x11.[ch]:
7871 (clutter_stage_x11_set_fullscreen): Set the fullscreen_on_map flag
7872 with the fullscreen value.
7874 (clutter_stage_x11_map), (clutter_stage_x11_unmap): Set the MAPPED
7875 flag on the stage actor and redraw; also, if the fullscreen_on_map
7876 flag was set, call clutter_stage_fullscreen() as well. (#648)
7878 * tests/Makefile.am:
7879 * tests/test-fullscreen.c: Add a fullscreen test case for checking
7880 whether fullscreen works on every backend/platform.
7882 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
7884 * clutter/clutter-actor.c:
7885 (clutter_actor_real_request_coords),
7886 (clutter_actor_request_coords),
7887 (clutter_actor_class_init): Provide a default ::request_coords()
7888 implementation in ClutterActor and use it to store the bounding
7889 box passed to clutter_actor_request_coords(). This makes the code
7890 more reliable and clean, and avoids a call to the subclass
7891 request_coords() method if the bounding box did not change. Now,
7892 every class overriding ClutterActor::request_coords() *must* chain
7893 up to the parent class method or the bounding box will not be
7894 saved inside the ClutterActor structure.
7896 * clutter/clutter-entry.c:
7897 * clutter/clutter-group.c:
7898 * clutter/clutter-hbox.c:
7899 * clutter/clutter-label.c:
7900 * clutter/clutter-texture.c:
7901 * clutter/clutter-vbox.c: Chain up to the parent class
7902 request_coords() method.
7904 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
7906 * clutter/clutter-event.h: Add more documentation.
7908 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
7910 * tests/test-event.c: Back out an accidental commit.
7912 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
7914 * clutter/clutter-actor.c:
7915 * clutter/clutter-alpha.c:
7916 * clutter/clutter-effect.c:
7917 * clutter/clutter-event.c:
7918 * clutter/clutter-event.h:
7919 * clutter/clutter-group.h:
7920 * clutter/clutter-model.c:,
7921 * clutter/clutter-script.c:
7922 * clutter/clutter-scriptable.h:
7923 * clutter/clutter-stage.c: Documentation fixes.
7925 * clutter/clutter-score.c: Fix implementation.
7927 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
7929 * clutter/x11/clutter-stage-x11.c: Chain up the hide and show
7930 to the parent's implementation.
7932 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
7934 * clutter/clutter-effect.[ch]: Update the effects API to remove
7935 the start value for most of them.
7937 (clutter_effect_move): Make it a simple "move from current
7938 position to new coordinates" effect.
7940 (clutter_effect_path): Rename from clutter_effect_move().
7942 (clutter_effect_rotate): Sync up with the new actor rotation API.
7944 * tests/test-effects.c: Regression test for the effects.
7946 * tests/Makefile.am: Build glue for test-effects
7948 * tests/test-behave.c: Emulate a full ramp by using a looping
7949 timeline changing its direction when reaching the last frame.
7951 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
7953 * clutter/clutter-actor.c (clutter_actor_destroy): Bail out
7954 if clutter_actor_destroy() was called on the stage: the stage
7955 is not for the user to destroy.
7957 * clutter/x11/clutter-backend-x11.c:
7958 * clutter/eglnative/clutter-backend-egl.c:
7959 * clutter/sdl/clutter-backend-sdl.c:
7960 * clutter/osx/clutter-backend-osx.c: Unset the top-level private
7961 flag on the stage when disposing it, so the backends can safely
7962 call clutter_actor_destroy().
7964 * clutter/clutter-private.h: Tweak the private flags accessors,
7965 to avoid the typecheck.
7967 2007-11-22 Emmanuele Bassi <ebassi@openedhand.com>
7969 * clutter/clutter-label.c (clutter_label_new_full): Set the
7970 terminating NULL which was removed when applying patch for
7971 fixing #606. (#645, Gwenole Beauchesne)
7973 2007-11-22 Øyvind Kolås <pippin@o-hand.com>
7975 * clutter/clutter-actor.c: mended a couple of typos in documentation.
7977 2007-11-21 Matthew Allum <mallum@openedhand.com>
7979 * clutter/cogl/gles/cogl.c: (cogl_fog_set):
7980 Minor fixes for fog on GLES.
7982 2007-11-21 Emmanuele Bassi <ebassi@openedhand.com>
7984 * clutter/cogl/cogl.h: Add cogl_fog_set() abstracting the
7985 glFog() functions and enabling the GL_FOG flag.
7987 * clutter/cogl/gl/cogl.c: Add GL implementation of cogl_fog_set().
7989 * clutter/cogl/gles/cogl.c: Add GL/ES implementation of
7992 * clutter.symbols: Add new symbols.
7994 * clutter/clutter-stage.h: Add API to enable depth cueing on
7995 the stage using a linear GL fog, and to set the parameters
7998 * clutter/clutter-stage.c (clutter_stage_paint): Enable the
7999 GL fog if the ClutterStage:use-fog property is true.
8001 * tests/test-depth.c: Test the new stage API.
8003 2007-11-20 Øyvind Kolås <pippin@o-hand.com>
8005 * clutter/clutter-main.c: (event_click_count_generate): generalized
8006 click_count generation code.
8007 * tests/test-events.c: (input_cb): extended test to report click_count
8008 for release and scroll events as well as press events.
8010 2007-11-20 Øyvind Kolås <pippin@o-hand.com>
8012 * clutter/clutter-main.c: (clutter_do_event): avoid computing source
8013 of events if it is already set (for synthetic events.)
8014 * clutter/clutter-event.c: Add more information to the documentation
8015 of clutter_event_put.
8017 2007-11-20 Emmanuele Bassi <ebassi@openedhand.com>
8019 * README: Add diff example command lines for submitting patches.
8021 2007-11-20 Emmanuele Bassi <ebassi@openedhand.com>
8023 * clutter/clutter-actor.c::
8024 * clutter/clutter-behaviour-opacity.c:
8025 * clutter/clutter-clone-texture.c:
8026 * clutter/clutter-effect.c:
8027 * clutter/clutter-label.c: Remove the usage of G_PARAM_CONSTRUCT
8028 without an override for the ::construct virtual function; using
8029 G_PARAM_CONSTRUCT to set the default value of a property is not
8030 the recommended approach; default values are set inside the
8031 instance init function.
8033 2007-11-20 Emmanuele Bassi <ebassi@openedhand.com>
8035 * clutter/clutter-texture.c (clutter_texture_init): Set filter-quality
8036 value to 1, to fix the regression caused when applying the patch for
8039 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
8041 * clutter/clutter-label.[ch]: Fix ClutterLabel size allocation when
8042 no bounding box has been provided, and store the box set by the
8043 user so that it can be reused when recomputing the layout. (#600)
8045 (clutter_label_class_init),
8046 (clutter_label_init): Set the :wrap property default to FALSE.
8048 * clutter/clutter-units.h: Add ClutterUnit-to-PangoUnit conversion
8051 * tests/test-rotate.c: Fix string.
8053 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
8055 * clutter/clutter-behaviour-bspline.c:
8056 * clutter/clutter-behaviour-depth.c:
8057 * clutter/clutter-behaviour-ellipse.c:
8058 * clutter/clutter-behaviour-opacity.c:
8059 * clutter/clutter-behaviour-path.c:
8060 * clutter/clutter-behaviour-rotate.c:
8061 * clutter/clutter-behaviour-scale.c: Fix gtk-doc short description.
8063 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
8065 * clutter.symbols: Update
8067 * clutter/clutter-actor.h: Rename the angle argument for
8068 set_rotationx() to avoid gtk-doc complaining
8070 * clutter/clutter-main.h:
8071 * clutter/clutter-main.c:
8072 (clutter_set_motion_events_enabled): Rename for consistency
8074 (clutter_get_motion_events_frequency),
8075 (clutter_set_motion_events_frequency): Add accessors for the default
8076 motion events deliver frequency.
8078 (clutter_do_event): Throttle down motion events delivery using the
8079 motion events frequency setting, to avoid excessive redraws. (#608)
8081 (clutter_context_get_default): Enable per-actor motion events, at
8084 * tests/test-events.c (red_button_cb):
8085 * tests/test-grab.c (green_press_cb): Update.
8087 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
8089 * clutter/clutter-timeline.c (timeline_timeout_func): Do not emit the
8090 ::new-frame signal twice for the last frame. (#531)
8092 2007-11-19 Øyvind Kolås <pippin@o-hand.com>
8094 * clutter/clutter-actor.[ch]: (clutter_actor_set_rotationx),
8095 (clutter_actor_set_rotation): swapped axis and angle around,
8096 the new argument order is: (axis, angle, x, y, z). Also removed
8097 deprecated rotation functions from header.
8099 Updated use of clutter_actor_set_rotation? in the following files:
8101 * clutter/clutter-behaviour-rotate.c:
8102 * clutter/clutter-effect.c:
8103 * tests/test-actors.c:
8104 * tests/test-project.c:
8106 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
8108 * clutter/clutter-label.[ch]: Constify the color argument
8109 for the ClutterLabel ctor. (#604)
8111 2007-11-18 Matthew Allum <mallum@openedhand.com>
8113 * clutter/clutter-actor.c:
8114 * clutter/clutter-actor.h:
8115 * clutter/clutter-group.c:
8116 * clutter/clutter-main.c:
8117 * clutter/clutter-stage.c:
8118 * tests/test-events.c:
8119 Parent Actors no longer need to be set reactive for reactive
8120 children to get events. Also makes groups now pickable.
8123 * clutter/clutter-texture.c:
8124 Handle case when 1x1 tiled texture is created,
8125 falling 'back' to being non tiled. (#596)
8127 * clutter/eglx/clutter-backend-egl.c:
8128 Call EglTerminate on backend shutdown.
8130 2007-11-18 Emmanuele Bassi <ebassi@openedhand.com>
8132 * clutter.pc.in: Bump up glib-2.0 dependency.
8134 2007-11-18 Emmanuele Bassi <ebassi@openedhand.com>
8136 * clutter/clutter-model.c: Add gtk-doc section for
8139 * clutter/clutter-script.h: Fix argument name.
8141 * clutter/x11/clutter-x11.h:
8142 * clutter/x11/clutter-event-x11.c:
8143 * clutter/x11/clutter-backend-x11.c: Document functions and
8146 2007-11-18 Emmanuele Bassi <ebassi@openedhand.com>
8148 * clutter.symbols: Update exported symbols.
8150 * clutter/clutter-actor.[ch]: Remove clutter_actor_rotate_*
8151 and clutter_actor_get_rx* and provide a simpler rotation API:
8152 clutter_actor_set_rotation() and clutter_actor_get_rotation().
8154 * clutter/clutter-deprecated.h: Deprecate the old rotation API.
8156 * clutter/clutter-behaviour-bspline.c:
8157 * clutter/clutter-behaviour-rotate.c:
8158 * clutter/clutter-effect.c: Update internal usage of the
8161 * tests/test-project.c: Ditto as above.
8163 2007-11-17 Emmanuele Bassi <ebassi@openedhand.com>
8165 Optimise Atoms usage in the X11 and X11-based backends.
8167 * clutter/x11/clutter-backend-x11.c:
8168 (clutter_backend_x11_post_parse): Call XInternAtoms() here and
8169 get all the atoms from X in one call.
8171 * clutter/x11/clutter-backend-x11.h: Store all the atoms inside
8172 the ClutterBackendX11 structure.
8174 * clutter/x11/clutter-event-x11.c:
8175 (xembed_send_message), (xembed_set_info),
8176 (_clutter_backend_x11_events_init),
8177 (set_user_time), (handle_wm_protocols_event),
8178 (handle_xembed_event), (event_translate): Do not cache atoms
8179 or call XInternAtom() directly, and use the atoms off the X11
8180 backend structure instead.
8182 * clutter/x11/clutter-stage-x11.c:
8183 (send_wmspec_change_state), (clutter_stage_x11_set_wm_protocols),
8184 (clutter_stage_x11_set_fullscreen),
8185 (clutter_stage_x11_set_title): Ditto as above.
8187 * clutter/x11/clutter-stage-x11.h: Update the set_wm_protocols()
8188 method to take the X11 stage implementation.
8190 * clutter/glx/clutter-stage-glx.c:
8191 (clutter_stage_glx_realize): Update for the set_wm_protocols()
8194 * tests/test-project.c: (main): Test clutter_stage_set_title().
8196 2007-11-17 Emmanuele Bassi <ebassi@openedhand.com>
8198 * configure.ac: Depend on GLib >= 2.14 because of ClutterModel
8201 2007-11-16 Øyvind Kolås <pippin@o-hand.com>
8203 * clutter/clutter-main.c: (emit_event): renamed from deliver_event,
8204 (emit_pointer_event): utility function to emit pointer event signals
8205 (which takes pointer grab into account).
8206 (emit_keyboard_event): utility function to emit keyboard event signals
8207 (which takes keyboard grab into account).
8208 (clutter_do_event): use the above utility functions, also reindented
8211 2007-11-16 Øyvind Kolås <pippin@o-hand.com>
8213 * tests/test-grab.c: (main): fix use of clutter_actor_set_reactive
8215 2007-11-15 Øyvind Kolås <pippin@o-hand.com>
8217 * clutter/clutter-main.[ch]: added clutter_grab_keyboard,
8218 clutter_ungrab_keyboard and clutter_get_keyboard_grab, in
8219 clutter_do_event deliver keyboard related events only to the
8220 actor with the keyboard grab if a grab exists.
8221 * clutter/clutter-private.h: added keyboard_grab_actor to context.
8222 * tests/test-grab.c: added testing for testing the keyboard grab.
8224 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
8226 * clutter/clutter-texture.c:
8227 (clutter_texture_request_coords), (clutter_texture_class_init),
8228 (clutter_texture_init): Unset :sync-size if explicitly setting
8229 the texture size. (#616)
8231 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
8233 * clutter/clutter-actor.[ch]: Massive API clean-ups. Initial
8234 fixes for bugs #614 and #628.
8236 * clutter/clutter-main.c:
8237 * clutter/clutter-stage.c: Update internal usage of the actor
8240 * tests/test-events.c: Update test suite.
8242 2007-11-15 Øyvind Kolås <pippin@o-hand.com>
8244 * clutter/clutter-main.c: (generate_enter_leave_events),
8245 (clutter_do_event): moved the generation of enter/leave events
8246 to a utility function.
8248 2007-11-15 Neil J. Patel <njp@o-hand.com>
8250 * clutter/clutter-model.c:
8251 Added some more examples to the documentation, plus explained how the
8252 iters work internally.
8254 2007-11-15 Øyvind Kolås <pippin@o-hand.com>
8256 * clutter/clutter-main.[ch]: added clutter_grab_pointer,
8257 clutter_ungrab_pointer and clutter_get_pointer_grab, in
8258 clutter_do_event deliver pointer related events only to the
8259 actor with the pointer grab if a grab exists.
8260 * clutter/clutter-private.h: added pointer_grab_actor to context.
8261 * tests/Makefile.am:
8262 * tests/test-grab.c: added test for testing the pointer grab.
8264 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
8266 * clutter/clutter-timeline.[ch]: Add ClutterTimeline:direction
8267 property, defining the direction (forward or backward) of the
8270 * tests/test-timeline.c: Test the direction property.
8272 * clutter.symbols: Update exported symbols
8274 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
8276 * clutter/clutter-effect.h:
8277 * clutter/clutter-effect.c:
8278 (clutter_effect_template_new_for_duration): Add a simple constructor
8279 for implicitly creating a ClutterTimeline with a given duration.
8281 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
8283 * clutter.symbols: Update with the new public symbols
8285 * clutter/clutter-script.h:
8286 * clutter/clutter-script-private.h:
8287 * clutter/clutter-script.c:
8288 (parse_signals), (json_object_end),
8289 (signal_info_free), (object_info_free): Parse the "signals"
8290 member for GObjects.
8292 (clutter_script_connect_signals),
8293 (clutter_script_connect_signals_full): Add new API for autoconnecting
8294 signal handlers using the UI definition files.
8296 * tests/test-script.c:
8297 * tests/test-script.json: Test signal autoconnection.
8299 2007-11-15 Matthew Allum <mallum@openedhand.com>
8301 * clutter/Makefile.am:
8302 * clutter/eglx/Makefile.am:
8303 * clutter/eglx/clutter-backend-egl.c:
8304 * clutter/eglx/clutter-backend-egl.h:
8305 * clutter/eglx/clutter-eglx.h:
8306 * clutter/eglx/clutter-event-egl.c:
8307 * clutter/eglx/clutter-stage-egl.c:
8308 * clutter/eglx/clutter-stage-egl.h:
8309 * clutter/glx/Makefile.am:
8310 * clutter/glx/clutter-backend-glx.c:
8311 * clutter/glx/clutter-backend-glx.h:
8312 * clutter/glx/clutter-event-glx.c:
8313 * clutter/glx/clutter-glx.h:
8314 * clutter/glx/clutter-stage-glx.c:
8315 * clutter/glx/clutter-stage-glx.h:
8316 * clutter/x11/Makefile.am:
8317 * clutter/x11/clutter-backend-x11-private.h:
8318 * clutter/x11/clutter-backend-x11.c:
8319 * clutter/x11/clutter-backend-x11.h:
8320 * clutter/x11/clutter-event-x11.c:
8321 * clutter/x11/clutter-stage-x11.c:
8322 * clutter/x11/clutter-stage-x11.h:
8323 * clutter/x11/clutter-x11.h:
8324 Create a new X11 backend class of which EGL and GLX 'real' backends
8325 then subclass. Effectively shares all X11 code between both backends
8326 avoids code duplication and brings many missing features to EGL X
8327 backend. Requires some cleanup and testing. (#518)
8329 * clutter/cogl/gles/cogl.c: (cogl_color):
8330 Add define to use color4ub only if configure finds it.
8331 If not fall back to old code.
8334 Drop support for vincent checks.
8336 Specifically check for color4ub call.
8338 2007-11-15 Neil J. Patel <njp@o-hand.com>
8340 * clutter/Makefile.am:
8341 * clutter/clutter-model.c:
8342 * clutter/clutter-model.h:
8343 * clutter/clutter.h:
8344 * tests/Makefile.am:
8345 * tests/test-model.c:
8346 Merged ClutterModel, which closes #443.
8348 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
8350 * clutter/clutter-clone-texture.c (set_parent_texture): Hide the
8351 clone texture only if it was visible, and show it again if we
8352 are adding a visible texture.
8354 * tests/test-script.json: Test the CloneTexture actor.
8356 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
8358 * clutter/clutter-actor.[ch]: Rename clutter_actor_get_id() to
8359 clutter_actor_get_gid().
8361 (clutter_actor_set_parent): Use GUINT_TO_POINTER().
8363 * clutter/clutter-deprecated.h: Add a replacement warning for
8364 clutter_actor_get_id().
8366 * clutter/clutter-texture.c (texture_upload_data): Use
8367 clutter_actor_get_gid(), and don't leak the filename string.
8369 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
8371 * clutter/clutter-scriptable.[ch]: Rename ::set_name and ::get_name
8372 to ::set_id and ::get_id, to avoid potential confusion with the
8373 ClutterActor:name property.
8375 * clutter/clutter-script.h:
8376 * clutter/clutter-script.c (clutter_script_construct_object): Use
8377 clutter_scriptable_set_id().
8379 (clutter_get_script_id): Add a public function to retrieve the ID
8380 used in the UI definition files from an object.
8382 * clutter/clutter-actor.c: Do not set the name of the actor with
8383 the ID set in the UI definition files.
8385 * tests/test-script.c: Test clutter_get_script_id().
8387 * clutter.symbols: Update with the new symbols.
8389 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
8391 * clutter/cutter-deprecated.h: Don't let everyone know from where
8392 we have stolen^Wtaken inspiration for the deprecation warnings.
8394 2007-11-13 Øyvind Kolås <pippin@o-hand.com>
8396 * clutter/clutter-behaviour-bspline.[ch]:
8397 Replaced clutter_behaviour_bspline_append with
8398 clutter_behaviour_bspline_append_knots. Fixes bug #582.
8399 * clutter/clutter-deprecated.h: added deprecation macro reflecting the
8402 2007-11-13 Øyvind Kolås <pippin@o-hand.com>
8404 * clutter/Makefile.am:
8405 * clutter/clutter.h: include clutter-deprecated.h
8406 * clutter/clutter-deprecated.h: added file containing macros that
8407 provides more meaningful errors when compiling clutter using code that
8408 uses deprecated functions.
8410 2007-11-13 Øyvind Kolås <pippin@o-hand.com>
8412 Renamed all properties of behaviours (and related
8413 functions/variables/parameters)
8414 to match the pattern something-start, something-end. Fixes bug #577.
8416 * clutter/clutter-behaviour-depth.c:
8417 * clutter/clutter-behaviour-depth.h:
8418 * clutter/clutter-behaviour-ellipse.c:
8419 * clutter/clutter-behaviour-ellipse.h:
8420 * clutter/clutter-behaviour-path.c:
8421 * clutter/clutter-behaviour-rotate.c:
8422 * clutter/clutter-behaviour-rotate.h:
8423 * clutter/clutter-behaviour-scale.c:
8424 * clutter/clutter-behaviour-scale.h:
8425 * clutter/clutter-effect.c:
8426 * clutter/clutter-effect.h:
8427 * clutter/clutter-script.c:
8428 * tests/test-depth.c:
8429 * tests/test-script.c:
8431 2007-11-06 Øyvind Kolås <pippin@o-hand.com>
8433 * clutter/clutter-event.h: made ClutterEventAny have a source field,
8434 rearanged other structs to have source in the same position.
8435 * clutter/clutter-event.c: (clutter_event_get_source): modified to use
8437 (clutter_event_free): removed unused variable.
8438 * clutter/clutter-main.c: (deliver_event), (clutter_do_event): reduced
8439 amount of code. As well as deliver button-release events to the stage.
8441 2007-11-08 Rob Bradford <rob@openedhand.com>
8443 * clutter/glx/clutter-glx.h:
8444 Include <X11/Xutil.h> needed for the definition of XVisualInfo.
8446 2007-11-08 Rob Bradford <rob@openedhand.com>
8448 * clutter/cogl/gles/cogl.c: (cogl_color):
8449 Switch over to using glColor4ub in the GLES backend. It's available in
8450 the header file but missing in the reference manual.
8452 2007-11-07 Emmanuele Bassi <ebassi@openedhand.com>
8454 * clutter/clutter-actor.[ch]: Fix the declaration of the
8455 class handlers for the ::captured-event, ::enter-event and
8456 ::leave-event signals; the function signatures were missing
8457 the return value the signals marshallers were expecting, and
8458 their names weren't respecting the convention for event-related
8461 2007-11-06 Tomas Frydrych <tf@o-hand.com>
8463 * clutter/clutter-fixed.h:
8464 Added CLUTTER_SQRTI_ARG_MAX, CLUTTER_SQRTI_5_PERCENT,
8465 CLUTTER_SQRTI_10_PERCENT expressing clutter_sqrti limits.
8466 Stripped trailing whitespace.
8468 * clutter/clutter-fixed.c:
8470 Updated documentation, stripped trailing whitespace.
8472 * clutter/clutter-behaviour-path.c:
8474 Use clib sqrt if clutter_sqrti() precission would be worse than
8476 Stripped trailing whitespace.
8478 2007-11-06 Emmanuele Bassi <ebassi@openedhand.com>
8480 * clutter/clutter-layout.h: Add commodity macros to test for
8481 a specific layout flag in one line.
8483 2007-11-06 Emmanuele Bassi <ebassi@openedhand.com>
8485 * clutter/clutter-box.c (clutter_box_dispose): Call unparent()
8486 on the children, instead of destroy(), to avoid a double free
8487 and a crash when destroying a ClutterBox.
8489 2007-11-06 Emmanuele Bassi <ebassi@openedhand.com>
8491 * clutter/clutter-label.c: Break the references in ::dispose,
8492 and free the resources in ::finalize.
8494 2007-11-05 Øyvind Kolås <pippin@o-hand.com>
8496 * clutter/clutter-container.[ch]: removed find_child_by_id method
8497 from interface (and all implementations of it) since this
8498 functionality is now implemented using a global hash.
8499 * clutter/clutter-box.c:
8500 * clutter/clutter-group.c:
8502 2007-11-01 Emmanuele Bassi <ebassi@openedhand.com>
8504 * clutter/clutter-script.c: Do not keep ownership of the
8507 2007-10-31 Øyvind Kolås <pippin@o-hand.com>
8509 * clutter/clutter-main.c: (_clutter_do_pick): disable dithering
8510 when painting in pick mode.
8512 2007-10-31 Matthew Allum <mallum@openedhand.com>
8514 * clutter/clutter-score.c:
8515 Various minor improvements to ClutterScore.
8517 2007-10-30 Emmanuele Bassi <ebassi@openedhand.com>
8519 * clutter/clutter-layout.c: Fix documentation, with regards to
8520 the containers handling of the children implementing the
8521 ClutterLayout interface.
8523 2007-10-29 Emmanuele Bassi <ebassi@openedhand.com>
8526 * clutter/cogl/gl/cogl-defines.h.in: The OS X backend has a funny
8527 OpenGL header location, so it basically did break every application
8528 including clutter/cogl.h because the GL header inclusion depended
8529 on symbols defined into Clutter's config.h. Now, we define the
8530 GL header into the configure template and use it to create the
8531 cogl-defines.h file cogl.h includes.
8533 2007-10-29 Emmanuele Bassi <ebassi@openedhand.com>
8535 * clutter/json/json-parser.c: Enable parsing of negative numbers;
8536 GScanner splits negative numbers into two tokens, so we need to
8539 2007-10-29 Emmanuele Bassi <ebassi@openedhand.com>
8541 * clutter/clutter-script.c: Add the :filename and :filename-set
8542 properties, to retrieve the path of the currently parsed file (if
8543 :filename-set is TRUE) from the ClutterScriptable implementations.
8545 2007-10-28 Matthew Allum <mallum@openedhand.com>
8547 * clutter/clutter-effect.c:
8548 Small doc fix (#584)
8550 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
8552 * clutter/json/json-parser.c:
8553 (json_scanner_msg_handler): Set the GError to be returned by
8554 the parsing functions into the GScanner error message handler.
8556 (json_parser_object): Return the symbol token in case we have
8557 a parse error after the member name.
8559 (json_parser_load_from_data): Propagate the error set in the
8560 message handler, if any.
8562 * clutter/json/json-node.c (json_node_free): Unref the objects
8563 only if are set, to avoid a couple of needless criticals we
8566 * tests/test-script.json: More properties.
8568 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
8570 * clutter/clutter-script.[ch]: Slight API change in the
8571 clutter_script_get_objects() function: now it takes
8572 object name/object return location pairs and returns the
8573 number of objects found and returned.
8575 * tests/test-script.c: Exercise the clutter_script_get_objects()
8578 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
8580 * clutter/clutter-rectangle.c (clutter_rectangle_paint): Use
8581 CGL_ENABLE_BLEND flag instead of CGL_BLEND value. (#580,
8584 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
8586 * clutter/clutter-color.c (clutter_color_to_string): Update the
8587 documentation for the format of the returned string, and remove
8588 the note: now clutter_color_parse() can parse the string this
8591 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
8593 * clutter/pango/pangoclutter-render.c: Last usage of guint
8594 replaced with COGLuint. (Tommi Komulainen)
8596 2007-10-26 Matthew Allum <mallum@openedhand.com>
8598 * clutter/clutter-texture.c:
8599 * clutter/cogl/cogl.h:
8600 * clutter/cogl/gl/cogl-defines.h:
8601 * clutter/cogl/gles/cogl-defines.h:
8602 * clutter/cogl/gl/cogl.c:
8603 * clutter/cogl/gles/cogl.c:
8604 Switch from use of guint to COGLuint. Avoids problems when
8605 guint != GLuint on some platforms, i.e OSX.
8606 (Tommi Komulainen, #525, #523)
8608 * clutter/Makefile.am:
8609 * clutter/osx/Makefile.am:
8610 * clutter/osx/clutter-backend-osx.c:
8611 * clutter/osx/clutter-backend-osx.h:
8612 * clutter/osx/clutter-event-osx.c:
8613 * clutter/osx/clutter-osx.h:
8614 * clutter/osx/clutter-stage-osx.c:
8615 * clutter/osx/clutter-stage-osx.h:
8617 Add initial Cocoa/OSX Backend (by Tommi Komulainen, see #526)
8619 2007-10-26 Emmanuele Bassi <ebassi@openedhand.com>
8621 * clutter/clutter-entry.c: Add a :x-align property for aligning
8622 the text in the entry, in case the actor is wider than the
8625 2007-10-26 Emmanuele Bassi <ebassi@openedhand.com>
8627 * clutter/clutter-main.c: Add a --clutter-default-fps run-time
8628 switch and CLUTTER_DEFAULT_FPS environment variable support for
8629 setting the default frame-rate at run-time.
8631 2007-10-26 Emmanuele Bassi <ebassi@openedhand.com>
8633 * clutter/clutter-script.h:
8634 * clutter/clutter-script.c: Add a ::get_type_from_name() virtual
8635 function for bindings to override. The current implementation
8636 calls g_type_from_name() and our lazy class resolver.
8638 * clutter.symbols: Update.
8640 * doc/reference/clutter-sections.txt: Update.
8642 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8644 * clutter/clutter-behaviour-path.c: Reverse the list of
8645 parsed knots, to preserve the real ordering after prepending
8646 them (thanks to Øyvind for spotting this).
8648 * clutter/clutter-behaviour-bspline.c: Ditto as above.
8650 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8652 * clutter/clutter-script-parser.c: Unset the GValue when
8653 getting a ClutterUnit from a JSON node.
8655 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8657 * clutter/clutter-behaviour-bspline.c: Implement the
8658 ClutterScriptableIface to parse the custom "knots" property.
8660 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8662 * tests/test-script.c:
8663 * tests/test-script.json: Rejig the test case and add a
8664 path behaviour to test the knot parsing code.
8666 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8668 * clutter/cogl/cogl.h: Do not include <clutter/clutter.h>.
8670 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8672 * clutter/clutter-behaviour-path.c: Implement the
8673 ClutterScriptableIface to parse the custom "knots" property.
8675 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8677 * clutter/clutter-texture.c (clutter_texture_set_property): Do
8678 not try to set NULL pixbufs.
8680 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8682 * clutter/clutter-actor.c: Implement part of the ClutterScriptable
8683 interface, using the ClutterActor API to set and get the name
8686 (clutter_geometry_copy), (clutter_geometry_free): Use
8687 the slice allocator to avoid fragmentation when setting
8688 properties and emitting signals (that is: when packing
8689 boxed types into GValues).
8691 (clutter_actor_box_copy), (clutter_actor_box_free),
8692 (clutter_vertex_copy), (clutter_vertex_free): Ditto.
8694 * clutter/clutter-actor.h:
8695 * clutter/clutter-actor.c:
8696 (clutter_actor_push_transform_child),
8697 (clutter_actor_pop_transfomr_child): Simple wrappers around
8698 COGL API, which avoid including clutter/cogl.h when writing
8699 container actors outside Clutter.
8701 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8703 * clutter/Makefile.am:
8704 * clutter/clutter.h:
8705 * clutter/clutter-scriptable.[ch]: Add the ClutterScriptable
8706 interface; by implementing this interface, a class can
8707 override the UI definition parsing and transform complex data
8708 types into GObject properties, or allow custom properties.
8710 * clutter/clutter-script.c:
8711 * clutter/clutter-script-parser.c:
8712 * clutter/clutter-script-private.h: Rearrange the code and
8713 use the ClutterScriptable interface to parse and build the
8714 custom properties. This cleans up the code and also it makes
8715 it more reliable (the complex type parsing is now done using
8716 the target type and not just the name of the property).
8718 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8720 * clutter/clutter-json.h: Header for including the JSON
8721 parsing and data types.
8723 * clutter/json/json-types.h: Add JSON_NODE_VALUE_TYPE() macro.
8725 * clutter/json/Makefile.am: Install the JSON headers into a
8726 private location. This might change in the future, and might
8727 also cause collisions if you're using JSON-GLib and Clutter
8728 at the same time, so be warned.
8730 2007-10-22 Emmanuele Bassi <ebassi@openedhand.com>
8732 * clutter/clutter-label.c (clutter_label_request_coords): If
8733 we get a size requisition, and we have ellipsization active,
8734 check if we are getting less space than what the layout needs
8735 and recompute the width.
8737 2007-10-22 Emmanuele Bassi <ebassi@openedhand.com>
8739 * clutter/clutter-color.c (clutter_color_to_string): Change
8740 the print format to "%02x%02x%02x%02x" because we use guint8
8741 for each component, not guint16.
8743 2007-10-19 Emmanuele Bassi <ebassi@openedhand.com>
8745 * clutter/clutter-entry.c (clutter_entry_paint): Fixed off by
8746 one error. (#566, Gwenole Beauchesne)
8748 2007-10-18 Øyvind Kolås <pippin@o-hand.com>
8750 * clutter/clutter-timeline.c: (clutter_timeline_set_duration):
8751 rearranged arithemetic to allow specifying duration with sub second
8752 precision (also enables durations smaller than one second).
8754 2007-10-18 Emmanuele Bassi <ebassi@openedhand.com>
8756 * clutter/clutter-script-private.h:
8757 * clutter/clutter-script.h:
8758 * clutter/clutter-script.c: Allow id-less objects: as long
8759 as they have a "type" member, a unique id will be provided.
8761 (json_object_end): Add merge id to the object information
8764 (apply_behaviours), (add_children): Keep the unresolved
8767 (construct_stage), (clutter_script_construct_object): If an
8768 object has unresolved children or behaviours try resolving
8769 them when we ask for it.
8771 (json_parse_end), (clutter_script_ensure_objects): Ensure
8772 that the objects are fully constructed as best as we can when
8775 (object_info_free), (remove_by_merge_id):
8776 (clutter_script_unmerge_objects): Remove objects under the
8777 same merge id returned by the loading functions. (Fixes
8780 * test/test-script.c:
8781 * test/test-script.json: Test unresolved merging and unmerging
8784 2007-10-18 Matthew Allum <mallum@openedhand.com>
8786 * clutter/clutter-score.c:
8787 * clutter/clutter-score.h:
8788 * tests/test-score.c:
8789 Implement more ClutterScore functionality.
8791 2007-10-17 Emmanuele Bassi <ebassi@openedhand.com>
8793 * clutter/clutter-actor.c:
8794 (clutter_actor_set_property), (clutter_actor_get_property),
8795 (clutter_actor_class_init): Add the :reactive property, to
8796 control reactiveness using the UI definition files.
8798 (clutter_actor_reparent): Do not assume the parent is a
8799 ClutterContainer, and call the container API only if needed.
8801 (clutter_actor_destroy): Remove from the parent if needed,
8802 just like the documentation says.
8804 2007-10-16 Øyvind Kolås <pippin@o-hand.com>
8806 * clutter/pango/pangoclutter-render.c: (tc_get): Provide for blank
8807 rows/columns of pixels between adjecant glyphs in the texture cache to
8808 avoid bilinear interpolation spillage at edges of glyphs.
8810 2007-10-16 Øyvind Kolås <pippin@o-hand.com>
8812 * clutter/clutter-main.c: (clutter_do_event): allow motion events
8813 only delivered to stage to be caught in the capture phase as well
8814 as the bubbling phase.
8816 2007-10-16 Emmanuele Bassi <ebassi@openedhand.com>
8818 * clutter/json/json-object.c: Automatically transform every
8819 delimiter into an underscore.
8821 * clutter/clutter-script.c: Implement the "parent_texture"
8822 property translation for ClutterCloneTextures, using the
8823 passed id of the parent texture.
8825 2007-10-16 Emmanuele Bassi <ebassi@openedhand.com>
8827 * clutter/clutter-timeline.[ch]: Added ClutterTimeline:duration,
8828 a property for setting the duration of a timeline in milliseconds.
8829 The property comes with accessors and a new constructor. The
8830 frame rate used is the default value.
8832 * clutter/clutter-private.h:
8833 * clutter/clutter-main.[ch]: Add clutter_get_default_frame_rate()
8834 and clutter_set_default_frame_rate(); these two functions control
8835 the default frame rate to be used when creating timelines. Currently
8836 is set to 60 frames-per-second.
8838 2007-10-16 Tomas Frydrych <tf@o-hand.com>
8841 Added MSVC project files.
8843 2007-10-16 Emmanuele bassi <ebassi@openedhand.com>
8845 * clutter/clutter-color.c: Copy the alpha when shading.
8847 2007-10-16 Tomas Frydrych <tf@o-hand.com>
8850 Added a bunch of missing symbols.
8852 * clutter/clutter-script.c:
8854 Use g_slice_new0 instead of g_slice_new to avoid passing
8855 garbage to functions.
8857 * tests/test-threads.c:
8858 Replaced non-portable sleep() with g_usleep().
8860 2007-10-15 Tomas Frydrych <tf@o-hand.com>
8862 * clutter/cogl/gl/cogl-defines.h:
8863 * clutter/cogl/gl/cogl.c:
8864 Fixup GL include for windows.
8866 2007-10-15 Matthew Allum <mallum@openedhand.com>
8868 * clutter/clutter-actor.c:
8869 More events documentation.
8871 * clutter/clutter-event.c:
8872 * clutter/clutter-event.h:
8873 Add synthetic flag and make put_event use it
8874 (via modded patch from pippin)
8876 * clutter/clutter-main.c: (clutter_do_event):
8877 dont use put event anymore when pushing enter/leave events.
8879 2007-10-15 Emmanuele Bassi <ebassi@openedhand.com>
8881 * clutter/pango/Makefile.am: Compile with the debug flags, if
8884 2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
8886 * clutter.symbols: Remove non-public symbols.
8888 2007-10-12 Tomas Frydrych <tf@o-hand.com>
8891 A list of public symbols, one per line; semi-autogenerated, so
8892 might not be complete -- PLEASE when adding new public APIs, add
8893 the function name to this file.
8895 2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
8897 * clutter/clutter-actor.c: Add a :depth property, so we can
8898 set the initial depth of an actor inside the UI definition
8901 2007-10-12 Tomas Frydrych <tf@o-hand.com>
8903 * tests/test-actors.c:
8904 When using MSVC, define _USE_MATH_DEFINES before including
8905 math.h, otherwise constants like M_PI will not be defined.
8907 2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
8909 * clutter/clutter-script.c (construct_timline),
8910 (parse_member_to_property): Transfer ownership of the
8911 implicit timelines to the behaviour, so that they get
8912 unreferenced when the behaviour is destroyed.
8914 (parse_member_to_property): Reverse the list of children
8917 2007-10-12 Tomas Frydrych <tf@o-hand.com>
8921 * clutter/clutter-private.h:
8922 Bracket #include "unistd.h" with #ifdef HAVE_UNISTD_H
8924 * clutter/clutter-fixed.c:
8925 Use "", not <> for inclusion of local files.
8927 (clutter_sqrtx): forward declare local variables.
8929 * clutter/clutter-debug.h:
8930 Added non-gcc (c99) implementation of variadic debug macros for
8931 when not compiling with gcc.
8933 * clutter/pango/pangoclutter-render.c:
8934 Fixed some strange uses of CLUTTER_NOTE() + stripped trailing
8937 2007-10-12 Tomas Frydrych <tf@o-hand.com>
8939 * clutter/clutter-actor.c:
8940 * clutter/clutter-backend.c:
8941 * clutter/clutter-behaviour-depth.c:
8942 * clutter/clutter-box.c:
8943 * clutter/clutter-clone-texture.c:
8944 * clutter/clutter-container.c:
8945 * clutter/clutter-entry.c:
8946 * clutter/clutter-feature.c:
8947 * clutter/clutter-fixed.c:
8948 * clutter/clutter-group.c:
8949 * clutter/clutter-hbox.c:
8950 * clutter/clutter-label.c:
8951 * clutter/clutter-layout.c:
8952 * clutter/clutter-media.c:
8953 * clutter/clutter-rectangle.c:
8954 * clutter/clutter-score.c:
8955 * clutter/clutter-script.c:
8956 * clutter/clutter-stage.c:
8957 * clutter/clutter-texture.c:
8958 * clutter/clutter-timeline.c:
8959 * clutter/clutter-timeout-pool.c:
8960 * clutter/clutter-vbox.c:
8961 * clutter/cogl/gl/cogl.c:
8962 * clutter/cogl/gles/cogl.c:
8963 * clutter/eglnative/clutter-backend-egl.c:
8964 * clutter/eglnative/clutter-event-egl.c:
8965 * clutter/eglnative/clutter-stage-egl.c:
8966 * clutter/eglx/clutter-backend-egl.c:
8967 * clutter/eglx/clutter-event-egl.c:
8968 * clutter/eglx/clutter-stage-egl.c:
8969 * clutter/glx/clutter-event-glx.c:
8970 * clutter/json/json-array.c:
8971 * clutter/json/json-generator.c:
8972 * clutter/json/json-node.c:
8973 * clutter/json/json-object.c:
8974 * clutter/json/json-parser.c:
8975 * clutter/sdl/clutter-backend-sdl.c:
8976 * clutter/sdl/clutter-event-sdl.c:
8977 * clutter/sdl/clutter-stage-sdl.c:
8979 Fixedup config.h inclusion (must always be bracketed with #ifdef
8982 2007-10-11 Tomas Frydrych <tf@o-hand.com>
8984 * clutter/clutter-entry.c:
8985 Avoid using C++ reserverd words to name variables.
8987 2007-10-11 Øyvind Kolås <pippin@o-hand.com>
8989 Improve the quality of text when the scale it is shown at screen is
8990 smaller than the original, seems to work well down to about a scale
8993 * clutter/pango/pangoclutter-fontmap.c:
8994 (pango_clutter_font_map_default_substitute): turn off hinting.
8995 * clutter/pango/pangoclutter-render.c: request linear filtering
8996 instead of nearest neighbour when scaling down.
8997 * tests/test-text.c: replaced test with a a test that renders a sample
8998 grid with various pixel sizes and scales for visual inspection of
8999 text rendering quality.
9001 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
9003 * clutter/glx/clutter-backend-glx.c: Fix documentation of the
9004 filter function API.
9006 * clutter/clutter-score.c:
9007 * clutter/clutter-effect.c:
9008 * clutter/clutter-actor.c: Documentation fixes.
9010 * clutter/clutter-actor.h: Automatically typecast to ClutterActor
9011 when setting/checking flags.
9013 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
9015 * clutter/clutter-actor.c: Beautify the ClutterActor documentation.
9017 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
9019 * clutter/clutter-actor.c: Remove the ::event-after signal:
9020 three event layers to connect to seems a bit overkill.
9022 (clutter_actor_event): Return FALSE, not TRUE by default,
9023 as g_signal_emit() will change the return value if no
9024 handlers are connected
9026 * clutter/clutter-stage.c: Emit ::notify when we change
9027 the fullscreen property.
9029 * clutter/clutter-script.c: Add more documentation for the
9030 definition format and keywords.
9032 (translate_property): Collapse the G_TYPE_ENUM and G_TYPE_FLAGS
9033 cases into one, to simplify the code.
9035 * tests/test-script.c: Test enumeration conversion by using
9036 a value different from the default.
9038 2007-10-10 Matthew Allum <mallum@openedhand.com>
9040 * clutter/clutter-actor.c:
9041 * clutter/clutter-actor.h:
9042 * clutter/clutter-event.c:
9043 * clutter/clutter-main.c:
9044 * tests/test-events.c:
9045 Add basic W3 DOM event 'capture' like functionality.
9047 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
9049 * clutter/clutter-script-private.h:
9050 * clutter/clutter-script.c: Parse flags like we parse enums.
9052 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
9054 * clutter/json/json-types.h:
9055 * clutter/json/json-array.c:
9056 * clutter/json/json-object.c: Resync with the upstream copy
9057 of JSON-GLib; add json_object_remove_member() and
9058 json_array_remove_element() and fix the g_hash_table_get_keys()
9059 replacement for GLib 2.12.
9061 * clutter/clutter-script.c: Clean up the complex properties
9064 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
9066 * clutter/clutter-script.c (json_object_end): Add "type_func"
9067 to the list of attributes we skip.
9069 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
9071 * clutter/json/json-parser.c: Use the commodity JsonNode API
9072 and accept bare values as root nodes.
9074 * clutter/clutter-script-private.h:
9075 * clutter/clutter-script.c: Unreference the created objects
9076 only if they are top-levels, like ClutterBehaviour and
9077 ClutterTimelines. Actors have floating references, so we
9078 just transfer ownership to their containers, and the stage
9079 is owned by the backend. Add the "type_func" key to the
9080 object definition, so the user can supply its own GType
9081 function if the class name doesn't follow the GObject rules.
9082 Document the ClutterScript public API.
9084 2007-10-10 Matthew Allum <mallum@openedhand.com>
9086 * clutter/clutter-actor.c:
9087 * clutter/clutter-actor.h:
9088 Add missing enter/leave event signals
9090 * clutter/clutter-main.c: (clutter_do_event):
9091 Set time in crossing events.
9092 Protect against do_pick() failing.
9094 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
9096 * clutter/clutter-script.c (resolve_alpha_func): Fix the
9097 ClutterAlphaFunc resolution function.
9099 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
9101 * tests/Makefile.am:
9102 * tests/test-script.c:
9103 * tests/test-script.json: Move part of the UI definition into
9104 its own file and exercise clutter_script_load_from_file().
9106 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
9108 * clutter/clutter-script.c (clutter_script_get_object): Construct
9109 the requested object if it hasn't been already. This allows
9110 referencing objects within the same snippet.
9112 * tests/test-script.c: Declare a timeline and use it inside
9113 multiple behaviours; apply multiple behaviours to various
9114 actors, then retrieve the timeline to start it when the test
9117 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
9119 * clutter/clutter-script-private.h:
9120 * clutter/clutter-script.c: Allow applying behaviours directly
9121 inside the UI definition data.
9123 * tests/test-script.c: Test the "behaviours" member.
9125 2007-10-09 Rob Bradford <rob@openedhand.com>
9127 * clutter/eglnative/clutter-backend-egl.c:
9128 (clutter_backend_egl_dispose):
9129 Call eglTerminate() on the display when the backend is disposed of.
9131 * clutter/eglnative/clutter-stage-egl.c:
9132 (clutter_stage_egl_realize):
9133 Don't use the createNativeWindow() call, it's not generic EGL.
9135 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
9137 * clutter/clutter-script-private.h:
9138 * clutter/clutter-script.h:
9139 * clutter/clutter-script.c: Add licensing information to
9140 the newly added files.
9142 * clutter/clutter-script.c: Support creating behaviours with
9143 ClutterScript. ClutterAlpha objects are implicit, but
9144 timelines can be both explicit objects using their id or
9145 implicit objects. Make the property resolution and translation
9146 more robust. Support the pixbuf property.
9148 * tests/test-script.c: Test the newly added features.
9150 * docs/reference/clutter-docs.sgml:
9151 * docs/reference/clutter-sections.txt: Add ClutterScript.
9153 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
9155 * clutter/clutter-fixed.h: Add deprecation guards around
9156 CLUTTER_FIXED_INT().
9158 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
9160 * clutter/clutter-script.c: Parse ClutterMargin and ClutterPadding
9161 properties from arrays or integers (assume pixels).
9163 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
9165 * clutter/clutter-script-private.h:
9166 * clutter/clutter-script.c: Allow defining childrens for every
9167 container actor inside the UI definition files.
9169 2007-10-08 Matthew Allum <mallum@openedhand.com>
9171 * clutter/clutter-actor.c:
9172 * clutter/clutter-actor.h:
9173 * clutter/clutter-private.h:
9174 * clutter/clutter-main.c:
9175 Add a hash to global clutter context mapping all parented actor
9177 Add clutter_get_actor_by_id() call.
9178 Convert picking machinery to use above.
9179 (performance/simpler composite actor creation)
9181 * clutter/clutter-stage.c: (clutter_stage_fullscreen),
9182 (clutter_stage_unfullscreen), (clutter_stage_event):
9183 Only set the fullscreen property on stage state fullscreen event(#545)
9184 Experimental as could be painful to implement on non X backends.
9186 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
9188 * clutter/clutter-script.c (json_parse_end):
9189 * clutter/json/json-object.c (json_object_get_members): Replace
9190 the GLib 2.14 API with the equivalent code for GLib < 2.14.
9192 * configure.ac: Revert the dependency bump.
9194 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
9196 Initial implementation of the UI definition files. (#424)
9198 * clutter/json/Makefile.am:
9199 * clutter/json/*.[ch]: In-tree copy of JSON-GLib, a GLib-based
9200 JSON parser/generator library. We use it in-tree because we might
9201 need to change the API. Ideally, we'd depend on it.
9203 * clutter/clutter.h:
9204 * clutter/clutter-script-private.h:
9205 * clutter/clutter-script.[ch]: ClutterScript, the scenegraph
9206 generator class. It parses JSON streams in form of buffers and
9207 files and builds the scene.
9209 * clutter/clutter-debug.h:
9210 * clutter/clutter-main.c: Add a "script" debug flag
9212 * clutter/Makefile.am: Build glue.
9214 * tests/Makefile.am:
9215 * tests/test-script.c: Add a test case for the ClutterScript.
9217 * configure.ac: Depend on GLib 2.14, so we can use the
9218 g_hash_table_get_key() and g_hash_table_get_values() functions
9219 for the time being; we can probably reimplement those, but we
9220 are going to need 2.14 anyway if we are going to implement a
9221 list model using GSequence.
9223 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
9225 * tests/test-behave.c: Use the right return type for the
9228 2007-10-03 Matthew Allum <mallum@openedhand.com>
9230 * clutter/clutter-actor.c:
9231 * clutter/clutter-event.c:
9232 * clutter/clutter-event.h:
9233 * clutter/clutter-main.c:
9234 * clutter/clutter-private.h:
9235 * clutter/eglnative/clutter-event-egl.c:
9236 * clutter/eglx/clutter-event-egl.c:
9237 * clutter/glx/clutter-event-glx.c:
9238 * clutter/sdl/clutter-event-sdl.c:
9239 Remove seperate double/triple click events and replace with
9240 a click_count member.
9241 Move calculating click counts from backend to do_event()
9242 Initial implementation of ENTER/LEAVE events.
9244 * tests/test-events.c:
9245 Add code to test above.
9247 * tests/test-behave.c:
9248 Sync with newer API.
9250 * clutter/clutter-score.c:
9253 2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
9255 * clutter/clutter-fixed.h: Add CLUTTER_FIXED_TO_INT() and
9256 deprecate CLUTTER_FIXED_INT(), for symmetry with
9257 CLUTTER_FIXED_FROM_INT().
9259 * clutter/clutter-alpha.c:
9260 * clutter/clutter-behaviour-depth.c:
9261 * clutter/clutter-behaviour-ellipse.c:
9262 * clutter/clutter-behaviour-path.c:
9263 * clutter/clutter-fixed.h: Use CLUTTER_FIXED_TO_INT().
9265 2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
9267 * clutter/clutter-actor.c (clutter_actor_get_size): Implement
9268 get_size() as a wrapper around clutter_actor_query_coords()
9269 instead of calling g_object_get() twice.
9271 (clutter_actor_init): Initialise the box in one call.
9273 2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
9275 * clutter/clutter-actor.[ch]: Remove the ::event-after signal
9276 class handler, as it's not meant to be overridden by sub-classes.
9278 (clutter_actor_class_init):
9279 Make every event-related signal return a boolean: return TRUE
9280 in a signal handler to block the emission. The value is accumulated
9281 automatically by the signal API.
9283 (clutter_actor_event): If ::event returns TRUE, skip to emitting
9284 ::event-after. Return the value accumulated by the signal emission
9287 * clutter/clutter-private.h: Rename _clutter_boolean_accumlator().
9289 * clutter/clutter-main.c (clutter_do_event): If clutter_actor_event()
9290 returns TRUE then stop the event emission chain from child to parent.
9292 * clutter/clutter-stage.c (clutter_stage_event): Behave like
9293 clutter_actor_event().
9295 (clutter_stage_get_key_focus),
9296 (clutter_stage_set_key_focus): Avoid a nasty circular reference
9297 issue: if the actor passed to set_key_focus is NULL then the stage
9300 * tests/test-events.c: Update the events test with the API
9303 2007-10-01 Tomas Frydrych <tf@openedhand.com>
9305 * clutter/clutter-actor.c:
9306 (clutter_actor_set_scale_with_gravityx):
9307 Use CLUTTER_QMUL for better precission (#532, patch by Gwenole
9310 * clutter/clutter-color.c:
9311 (clutter_color_to_hlsx):
9312 Added missing CLUTTER_INT_TO_FIXED conversion (#544, patch by Neil
9315 2007-10-01 Neil J. Patel <njp@o-hand.com>
9317 Patch by: Tommi Komulainen <tommi.komulainen@iki.fi>
9319 * clutter/clutter-entry.c: (clutter_entry_delete_text):
9320 Fix characters vs. bytes inconsistency (#520).
9322 2007-09-30 Matthew Allum <mallum@openedhand.com>
9324 * clutter/clutter-event.h:
9325 Removed unused POINTER_ENTER and POINTER_LEAVE states. (#546)
9326 * clutter/clutter-stage.c: (clutter_stage_fullscreen),
9327 (clutter_stage_unfullscreen):
9328 Only Change fullscreen prop if the backend implements fullscreen
9331 2007-09-28 Øyvind Kolås <pippin@openedhand.com>
9333 * clutter/clutter-container.[ch]: added
9334 clutter_container_find_child_by_name.
9336 2007-09-28 Øyvind Kolås <pippin@openedhand.com>
9338 * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize):
9339 removed unused variable perspective.
9340 * tests/test-events.c: (main): added CLUTTER_STAGE() cast.
9341 * tests/test-threads.c: include unistd.h for sleep().
9343 2007-09-28 Øyvind Kolås <pippin@openedhand.com>
9345 * clutter/clutter-label.c: (clutter_label_ensure_layout): avoid
9346 calling pango_layout_set_text|markup before we've got any text.
9348 2007-09-27 Matthew Allum <mallum@openedhand.com>
9350 * tests/test-scale.c:
9351 Fix out of about array addressing (#522, Tommi Komulainen)
9353 2007-09-27 Matthew Allum <mallum@openedhand.com>
9355 * clutter/clutter-clone-texture.c:
9356 * clutter/clutter-rectangle.c:
9357 Include "config.h" in all c files (#524, Tommi Komulainen)
9359 2007-09-27 Matthew Allum <mallum@openedhand.com>
9363 * clutter/clutter-behaviour-path.c: (path_alpha_to_position)
9364 Fix uninitialized variable (#480, Gwenole Beauchesne)
9366 2007-09-27 Matthew Allum <mallum@openedhand.com>
9368 * clutter/clutter-event.c:
9369 * clutter/clutter-event.h:
9370 * clutter/clutter-main.c:
9371 Further event tweaks;
9372 - Ref the event actor source
9373 - Protect against off stage events (button releases) (#511)
9374 - Move more into ClutterEventAny
9375 - Add a click count to button event (as yet unused)
9378 * clutter/clutter-actor.c:
9379 Make scale x/y a property.
9381 * clutter/clutter-private.h:
9382 Remove _clutter_actor_apply_modelview*
9384 * clutter/eglx/clutter-backend-egl.c:
9387 * clutter/eglx/clutter-stage-egl.c:
9388 * clutter/glx/clutter-stage-glx.c:
9389 * clutter/sdl/clutter-stage-sdl.c:
9390 Avoid setting viewport directly, but set sync flag.
9392 * clutter/pango/pangoclutter-render.c: (draw_glyph):
9395 * clutter/Makefile.am:
9396 * tests/Makefile.am:
9397 * tests/test-score.c
9398 * clutter/clutter.h:
9399 * clutter/clutter-score.h:
9400 * clutter/clutter-score.c:
9401 Add very initial (broken) ClutterScore implementation.
9403 2007-09-25 Ross Burton <ross@openedhand.com>
9407 * clutter/clutter-group.c:
9408 Optimise sort_z_order.
9410 2007-09-17 Emmanuele Bassi <ebassi@openedhand.com>
9414 * clutter/eglnative/clutter-event-egl.c:
9415 Flag every device click after the first as motion events
9416 instead of button presses. (#505, Shreyas Srinivasan)
9418 2007-09-10 Matthew Allum <mallum@openedhand.com>
9420 Port from stable branch.
9422 * clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch):
9423 Only declare tsevent if we have tslib (#498, Robert Bragg)
9425 2007-09-06 Emmanuele Bassi <ebassi@openedhand.com>
9427 * clutter/clutter-stage.c: Remove stray include <gdk-pixbuf-xlib.h>
9428 in ClutterStage: the code requesting it was moved in the backends.
9430 2007-08-31 Emmanuele Bassi <ebassi@openedhand.com>
9432 * clutter/clutter-rectangle.c: Fix the border drawing: do not
9433 overdraw the rectangle on the border and fix the check for
9434 different border colour. (#488, Neil Roberts)
9436 2007-08-29 Matthew Allum <mallum@openedhand.com>
9438 * clutter/clutter-effect.c: (clutter_effect_template_set_property):
9439 Add missing break statement. Whoops.
9441 2007-08-29 Matthew Allum <mallum@openedhand.com>
9443 * clutter/clutter-main.c: (_clutter_do_pick):
9444 Call glFinish before reading pixels
9445 * clutter/eglx/clutter-stage-egl.c: (clutter_stage_egl_realize):
9446 Add missing read surface in making context current.
9447 Above fixes via Kate Alhola.
9449 * clutter/glx/clutter-glx.h:
9450 Add missing filter funcs so there actually exported
9452 2007-08-24 Matthew Allum <mallum@openedhand.com>
9454 * clutter/clutter-actor.c:
9455 * clutter/clutter-event.h:
9456 * clutter/clutter-main.c:
9457 * clutter/clutter-stage.c:
9458 * clutter/clutter-stage.h:
9459 * clutter/glx/clutter-backend-glx.c:
9460 * clutter/glx/clutter-backend-glx.h:
9461 * clutter/glx/clutter-event-glx.c:
9462 * clutter/glx/clutter-stage-glx.c:
9463 * clutter/glx/clutter-stage-glx.h:
9464 Add initial support for stage state events.
9465 Fix fullscreening for an already mapped stage.
9467 * tests/test-events.c:
9468 Print out info from the above. Blue button now toggles
9471 * clutter/clutter-effect.c:
9472 * clutter/clutter-effect.h:
9473 Add a setting for templates to ref or clone underlying
9474 timelines. (As to improve sync issues like those in foofone)
9476 * tests/test-timeline.c:
9477 Also add completed signals.
9479 * clutter/cogl/gles/cogl.c: (cogl_texture_image_2d):
9481 Forward port from stable branch. RGB Image fixes gles
9482 and check for lower case libgles_cm.
9484 2007-08-24 Tomas Frydrych <tf@openedhand.com>
9486 * clutter/clutter-actor.c:
9487 (_clutter_actor_apply_modelview_transform):
9489 Fixed rotation around x axis (bug 486).
9491 2007-08-23 Emmanuele Bassi <ebassi@openedhand.com>
9493 * clutter/clutter-private.h:
9494 * clutter/clutter-event.c: Revert the event queue ordering
9497 * clutter/eglx/clutter-event-egl.c:
9498 * clutter/glx/clutter-event-glx.c:
9499 * clutter/sdl/clutter-event-sdl.c: Update backends.
9501 2007-08-22 Tomas Frydrych <tf@openedhand.com>
9503 * clutter/clutter-behaviour-rotate.c:
9504 * clutter/clutter-behaviour-ellipse.c:
9506 Fixed CCW rotation in rotate behaviour (bug 483); fixed overall
9507 path length calculation for angles > 360 in rotate and ellipse.
9509 2007-08-22 Emmanuele Bassi <ebassi@openedhand.com>
9511 * clutter/clutter-main.c (clutter_threads_dispatch_free): Remove
9512 the main threads locking calls: the main loop might remove the
9513 source while dispatching it, so whether or not we are already
9514 holding the lock is unpredictable for the library. Leave a comment
9515 with the relevant bug number in GNOME's Bugzilla and wait for a
9518 2007-08-21 Emmanuele Bassi <ebassi@openedhand.com>
9520 * clutter/clutter-event.c: Correctly initialise the state
9521 variables used to detect multiple clicks.
9523 (clutter_event_get_coords): Return the coordinates for
9524 CLUTTER_3BUTTON_PRESS events.
9526 (clutter_events_pending): Check from the tail of the queue backward,
9527 like we do in clutter_event_get() and clutter_event_peek().
9529 2007-08-21 Emmanuele Bassi <ebassi@openedhand.com>
9531 Preserve the ordering of the events in the queue when sythesising
9532 new events in the event translation sequence. (#481)
9534 * clutter/clutter-event.c:
9535 * clutter/clutter-private.h: Allow flagging new events on the
9536 events queue without breaking ClutterEvent using a masked type.
9538 (clutter_event_get), (clutter_event_put),
9539 (clutter_event_pending): Ignore events with the CLUTTER_EVENT_PENDING
9540 flag set when walking the events queue.
9542 * clutter/eglx/clutter-event-egl.c:
9543 * clutter/glx/clutter-event-glx.c:
9544 * clutter/sdl/clutter-event-sdl.c: Push the new events straight
9545 on the queue, with the CLUTTER_EVENT_PENDING flag set; remove the
9546 flag if the event translation was succesful, or remove the event
9549 2007-08-21 Emmanuele Bassi <ebassi@openedhand.com>
9551 * clutter/clutter-stage.c: Add missing documentation for the
9552 ClutterStage properties.
9554 2007-08-21 Tomas Frydrych <tf@openedhand.com>
9556 * clutter/clutter-fixed.c:
9559 Fixes for 64-bit platforms; use of SSE builtin when available
9560 (bugs 478, 479, patches by Gwenole Beauchesne).
9562 2007-08-20 Emmanuele Bassi <ebassi@openedhand.com>
9564 * clutter/Makefile.am:
9565 * clutter/clutter-enum-types.h.in:
9566 * clutter/clutter-enum-types.c.in: Use template files for
9567 glib-mkenums; this makes the Makefile template a bit more
9568 clean and the enum types generation more customisable (e.g.
9569 when GLib 2.14 has been released, we can use g_once_init_enter()
9570 and g_once_init_leave() to have thread-safe GType functions
9571 for the enum types as well).
9573 2007-08-20 Emmanuele Bassi <ebassi@openedhand.com>
9575 * clutter/clutter-version.h.in: Fix CLUTTER_CHECK_VERSION()
9576 macro to accept micro versions. (#477, Neil Roberts)
9578 2007-08-19 Emmanuele Bassi <ebassi@openedhand.com>
9580 Various timeline related changes.
9582 * clutter/clutter-timeout-pool.c: Use g_list_insert_sorted() to
9583 fix a timeout pool reversal happening with our homegrown
9584 sorted insertion function. (see #470)
9586 * tests/Makefile.am:
9587 * tests/test-timeline.c: Add a ClutterTimeline test suite, for
9588 finding regressions in the behaviour of the timelines. (#470,
9591 * clutter/clutter-main.c (clutter_do_event): Use an EVENT note,
9592 not a SCHEDULER one; SCHEDULER is for timelines and idle sources
9595 * clutter/clutter-version.h.in: Protect the bare numbers of
9596 the version components.
9598 * clutter/clutter-effect.c: Do not unref the ClutterAlpha, as
9599 the ownership is already of the behaviour used by the effect
9602 * clutter/clutter-timeline.c: Emit the ::new-frame signal only
9603 if the timeline is still active
9605 Always advance at least of one frame. (#471, Rob Bradford)
9607 Do not rewind the timeline if the user paused it in the ::new-frame
9608 signal handler: either the user has already done it with
9609 clutter_timeline_stop() or it's not what he's expecting if he
9610 called clutter_timeline_pause(). (#372, Johan Bilien)
9612 If we skipped the last frame before emitting the ::complete
9613 signal, emit ::new-frame with the last frame.
9615 Do not call clutter_timeline_stop() at the end of a non-looping
9616 timeline, as it emits the ::pause signal as well. Also, rewind the
9617 timeline *after* emitting ::complete, so that calling
9618 clutter_timeline_get_current_frame() in a signal handler still
9621 2007-08-19 Matthew Allum <mallum@openedhand.com>
9623 * clutter/eglx/clutter-event-egl.c: (clutter_event_dispatch):
9624 Fix clutter_thread typo (Kate Alhola)
9626 2007-08-18 Emmanuele Bassi <ebassi@openedhand.com>
9628 * clutter/clutter-effect.c:
9629 * clutter/clutter-main.c: Update the Since: tag for the
9632 * clutter/clutter-behaviour-rotate.c: Fix a typo in the get_center()
9633 method. (#468, Neil Roberts)
9635 Freeze and thaw the notification queue when changing multiple
9636 properties in the same method. Fix some coding style issues.
9638 2007-08-15 Emmanuele Bassi <ebassi@openedhand.com>
9640 * clutter/clutter-actor.c: Add checks for the "reactive" flag
9643 2007-08-15 Emmanuele Bassi <ebassi@openedhand.com>
9645 * clutter/clutter-effect.[ch]: Add clutter_effect_depth(), a
9646 simple wrapper around ClutterBehaviourDepth. (#464, Ali Sabil)
9648 2007-08-15 Emmanuele Bassi <ebassi@openedhand.com>
9650 * clutter/clutter-alpha.c (clutter_smoothstep_inc): Use the
9651 correct type for parameters, to avoid overflow (Ali Sabil).
9653 * clutter/clutter-behaviour-opacity.c: Use the right format
9654 when printing the unsigned alpha value and opacity to the
9657 2007-08-14 Emmanuele Bassi <ebassi@openedhand.com>
9659 * clutter/clutter-container.[ch]:
9660 * clutter/clutter-actor.c:
9661 * clutter/clutter-group.c: Rename clutter_container_raise() to
9662 clutter_container_raise_child(), and clutter_container_lower()
9663 to clutter_container_lower_child() to avoid clashing with
9664 ClutterActor raise() and lower() respectively.
9666 2007-08-13 Matthew Allum <mallum@openedhand.com>
9668 * clutter/clutter-actor.c:
9669 * clutter/clutter-actor.h:
9670 * clutter/clutter-event.c:
9671 * clutter/clutter-event.h:
9672 * clutter/clutter-main.c:
9673 * clutter/clutter-main.h:
9674 * clutter/clutter-private.h:
9675 * clutter/clutter-stage.c:
9676 * clutter/clutter-stage.h:
9677 * clutter/clutter-types.h:
9678 Initial implementation of actors emmitting event signals (423);
9679 - Actors set_reactive() to receive mouse events.
9680 (call clutter_enable_motion_events() for per action motion events)
9681 - clutter_stage_set_key_focus () to direct key events.
9682 - Events bubble up to parents (ending at stage)
9683 (original source identified by clutter_event_get_source())
9685 - enter/leave notifys for actors.
9686 - stage specific events - fullscreen
9689 * tests/test-events.c:
9690 Extend a little to use new API
9692 * clutter/cogl/gl/cogl.c:
9693 * clutter/glx/clutter-backend-glx.c:
9694 Move get_proc_address into cogl and out of backend.
9695 (shaders will need it)
9697 * clutter/clutter-group.c: (clutter_group_real_lower):
9698 Fix a minor compile warning.
9703 2007-08-13 Emmanuele Bassi <ebassi@openedhand.com>
9705 * clutter/clutter-container.[ch]: Add find_child_by_id(),
9706 raise(), lower() and sort_depth_order() virtual functions to
9709 * clutter/clutter-group.[ch]: Deprecate the redundant calls
9710 from ClutterGroup, and make ClutterGroup implement them as part
9711 of the ClutterContainer interface implementation.
9713 * clutter/clutter-box.c: Implement the newly added ClutterContainer
9714 methods; now clutter_stage_get_actor_at_pos() works with boxes
9717 * clutter/clutter-stage.c:
9718 * clutter/clutter-actor.c: Replace calls to ClutterGroup functions
9719 with ClutterContainer ones.
9721 2007-08-12 Emmanuele Bassi <ebassi@openedhand.com>
9723 * clutter/clutter-timeout-pool.c: Fix removing and adding timeouts
9724 to the timeout pool during a dispatch of a timeout source already
9725 inside the pool. (#456, based on a patch by Neil Roberts)
9727 (clutter_timeout_dispatch), (clutter_timeout_pool_dispatch): Hold
9728 the main Clutter lock in the pool dispatch function, instead of
9729 the per-timeout dispatch; this guarantees that the ref+unref of
9730 the single timeouts are done under the main lock.
9732 2007-08-12 Matthew Allum <mallum@openedhand.com>
9734 * clutter/clutter-texture.c: (texture_upload_data):
9735 Align texture data correctly for edge tiles.
9736 (#422 - Neil Roberts)
9738 2007-08-11 Matthew Allum <mallum@openedhand.com>
9740 * clutter/clutter-texture.c:
9741 Fix typo in clutter_texture_get_pixbuf (#458, Neil Roberts).
9742 Use take_object when getting pixbuf prop to avoid ref leak. (Neil
9745 2007-08-09 Emmanuele Bassi <ebassi@openedhand.com>
9747 * clutter/clutter-box.c: Rename a variable to fix a compiler
9750 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
9752 * clutter/clutter-behaviour-ellipse:
9753 (clutter_behaviour_ellipse_get_tiltx): Remove useless
9754 "Return" in the API documentation.
9756 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
9758 * clutter/clutter-timeout-pool.c: Fix sorting of the pool
9759 when inserting and removing timeout sources. (#449, Neil
9762 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
9764 * clutter/clutter-main.c (clutter_get_timestamp): Remove
9765 the microseconds remainder, which is mostly useless. (#447)
9767 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
9769 * clutter/clutter-main.c (clutter_get_timestamp): Return the
9770 correct number of microseconds (#447, Neil Roberts)
9772 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
9774 Merge the clutter.git/threading branch.
9776 * clutter/clutter-main.c:
9777 * clutter/clutter-main.h:
9778 * clutter/clutter-private.h: Add threading locking and unlocking
9779 functions, to mark a critical section and access the Clutter API
9780 from differen threads. Add an initialisation function and a function
9781 to override the default lock aquisition and release functions, for
9782 bindings and application-specific locking handling. Add MT-safe
9783 versions of g_idle_add() and g_timeout_add() which will call the
9784 functions under the main Clutter lock and without races. The
9785 Clutter thread-safe implementation is basically the same used by
9786 GDK, so the same caveats apply.
9788 * clutter/clutter-actor.c:
9789 * clutter/clutter-timeline.c:
9790 * clutter/clutter-timeout-pool.c: Use the new threading API when
9791 invoking idle and timeouts.
9793 * clutter/eglnative/clutter-event-egl.c:
9794 * clutter/eglx/clutter-event-egl.c:
9795 * clutter/glx/clutter-event-glx.c:
9796 * clutter/sdl/clutter-event-sdl.c: Acquire and release the main
9797 Clutter lock when preparing, checking and dispatching the events
9798 on the queue in every backend.
9800 * tests/Makefile.am:
9801 * tests/test-threads.c: Add a test case, showing how to use the
9802 threading API and write thread-safe Clutter applications.
9804 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
9806 * configure.ac: Bump up to 0.5.0 and start the new development
9809 2007-08-07 Emmanuele Bassi <ebassi@openedhand.com>
9811 * configure.ac: Bump up to 0.4.0.
9813 2007-08-07 Emmanuele Bassi <ebassi@openedhand.com>
9815 * clutter/clutter-entry.c:
9816 * clutter/clutter-fixed.c:
9817 * clutter/pango/pangoclutter.h: Small fixes for passing the
9818 distcheck phase with extra-strict compiler flags.
9820 2007-08-07 Emmanuele Bassi <ebassi@openedhand.com>
9822 * clutter/clutter-actor.h:
9823 * clutter/clutter-alpha.h:
9824 * clutter/clutter-behaviour-ellipse.[ch]:
9825 * clutter/clutter-behaviour-path.h:
9826 * clutter/clutter-behaviour-rotate.c:
9827 * clutter/clutter-behaviour.h:
9828 * clutter/clutter-box.h:
9829 * clutter/clutter-color.h:
9830 * clutter/clutter-container.h:
9831 * clutter/clutter-effect.h:
9832 * clutter/clutter-entry.h:
9833 * clutter/clutter-fixed.h:
9834 * clutter/clutter-layout.h:
9835 * clutter/clutter-main.h:
9836 * clutter/clutter-stage.h:
9837 * clutter/clutter-texture.h:
9838 * clutter/clutter-units.h:
9839 * clutter/clutter-version.h.in:
9840 * clutter/glx/clutter-glx.h: Documentation additions and
9843 2007-08-07 Matthew Allum <mallum@openedhand.com>
9845 * clutter/clutter-behaviour-ellipse.c:
9846 Add a documentation note regarding ellipse setting
9847 the applied actors position.
9849 2007-08-07 Matthew Allum <mallum@openedhand.com>
9853 More updates ready for 0.4.0
9855 2007-08-07 Matthew Allum <mallum@openedhand.com>
9857 * clutter/clutter-fixed.c:
9858 * clutter/clutter-fixed.h:
9861 * clutter/cogl/gl/cogl.c: (cogl_perspective):
9862 Remove CFX_* shortened macros
9864 2007-08-06 Emmanuele Bassi <ebassi@openedhand.com>
9866 * clutter/clutter-main.[ch]: Remove clutter_threads_enter()
9867 and clutter_threads_leave(); both are no-ops and they just
9868 confuse things. The thread-awareness in Clutter is planned
9874 2007-08-06 Emmanuele Bassi <ebassi@openedhand.com>
9876 * clutter/clutter-box.[ch]: Implement margin, color and default
9877 padding for ClutterBox. Provide API to pack a child by specifying
9878 every packing detail or just pack with the defaults. ClutterBox
9879 works like the HTML boxing model, API-wise: a box with margins
9880 and padding around each child. Needs work, still.
9882 * clutter/clutter-hbox.c:
9883 * clutter/clutter-vbox.c: Update with the new API and new attributes.
9885 * clutter/clutter-types.h: Add ClutterMargin and ClutterPadding.
9887 * test/test-boxes.c: Exercise the new API.
9889 2007-08-06 Matthew Allum <mallum@openedhand.com>
9891 * clutter/clutter-texture.c:
9892 Correct set pixbuf property as GDK_TYPE_PIXBUF
9893 (fix via Neil Roberts)
9895 2007-08-06 Matthew Allum <mallum@openedhand.com>
9897 * clutter/clutter-behaviour-depth.c:
9898 Modify to work like all other behvaiours in not forcing
9899 increasing order in behaviour 'limits'. (#436)
9900 Rename limit min/max props to start/end.
9902 * tests/test-depth.c:
9903 Simplify test-case to work with above change and
9904 without multiple ramps
9906 * clutter/clutter-behaviour-rotate.c:
9907 Handle CW rotation when end > start and similar for CCW just
9908 like ellipse behaviour.
9910 2007-08-05 Matthew Allum <mallum@openedhand.com>
9913 * clutter/clutter-actor.c:
9914 Document show/hide_all behaviour correctly.
9916 2007-08-05 Emmanuele Bassi <ebassi@openedhand.com>
9918 * clutter/clutter-behaviour-depth.c: Fix typo in the description.
9920 2007-08-04 Emmanuele Bassi <ebassi@openedhand.com>
9922 * clutter/clutter-behaviour-depth.c: Clarify the depth behaviour
9923 even more in the description used by the API reference.
9925 2007-08-04 Emmanuele Bassi <ebassi@openedhand.com>
9927 * clutter/clutter-behaviour-depth.[ch]: Clarify that what drives
9928 the movement along the Z axis is the ClutterAlpha object (we
9929 don't have the luxury of a rollover like the opacity does);
9930 so, if you want to go from 0 to -100 you have to use a
9931 decreasing function, just as well if you want to go from 100
9932 to 0. Using a min-depth of 100 and a max-depth of 0 and an
9933 increasing function is undefined behaviour.
9935 * tests/Makefile.am:
9936 * tests/test-depth.c: Add a test case for the depth behaviour.
9938 2007-08-04 Emmanuele Bassi <ebassi@openedhand.com>
9940 * clutter/clutter-actor.c (clutter_actor_set_opacity): Queue
9941 a redraw when setting the opacity of an actor.
9943 2007-08-03 Emmanuele Bassi <ebassi@openedhand.com>
9945 * clutter/clutter-behaviour-ellipse.c:
9946 (clutter_behaviour_ellipse_get_angle_tilt): Avoid recursion
9949 (clutter_behaviour_ellipse_get_angle_begin),
9950 (clutter_behaviour_ellipse_get_angle_end): Correct the angles
9953 2007-08-03 Emmanuele Bassi <ebassi@openedhand.com>
9955 * clutter/clutter-behaviour-ellipse.c:
9956 (clutter_behaviour_ellipse_get_property): Do not forget to
9957 correct the angles when returning them.
9959 2007-08-03 Tomas Frydrych <tf@openedhand.com>
9961 * clutter/clutter-behaviour-ellipse.c:
9962 * clutter/clutter-behaviour-ellipse.h:
9963 (clutter_behaviour_ellipse_new):
9964 (clutter_behaviour_ellipse_newx):
9966 Added direction parameter; made behaviour to respect direction
9967 parameter; unclumped angle_begin and angle_end values.
9969 2007-08-02 Matthew Allum <mallum@openedhand.com>
9973 Initial updating ready for release.
9975 2007-08-02 Emmanuele Bassi <ebassi@openedhand.com>
9977 * clutter/eglnative/clutter-backend-egl.c:
9978 * clutter/eglx/clutter-backend-egl.c:
9979 * clutter/sdl/clutter-backend-sdl.c: Set the default resolution
9980 as 96.0 dpi for every backend (we already were under this
9981 assumption anyway, and this makes it easier to change this
9982 setting per-backend).
9984 * clutter/pango/pangoclutter-fontmap.c:
9985 * clutter/pango/pangoclutter.h: Allow setting the resolution
9986 for the PangoClutterFontMap object and provide the implementation
9987 for the PangoFcFontMap::get_resolution() virtual function. This
9988 allows to set the resolution of the PangoContext when retrieving
9991 * clutter/clutter-label.c (clutter_label_init): Set the
9992 resolution of the font map with the one the backend gives us.
9994 * clutter/clutter-entry.c (clutter_entry_init): Ditto.
9996 2007-08-02 Emmanuele Bassi <ebassi@openedhand.com>
9998 * clutter/clutter-color.c (clutter_color_subtract): Invert the
9999 operands and match what the function says it does. (#435)
10001 2007-08-01 Matthew Allum <mallum@openedhand.com>
10003 * clutter/clutter-color.c: (clutter_color_from_pixel):
10004 Fix typo in alpha channel extraction (#434)
10006 2007-08-01 Emmanuele Bassi <ebassi@openedhand.com>
10008 * clutter/clutter-actor.[ch]: Add floating-point variant of the
10009 clutter_actor_get_r[xyz]angx() functions.
10011 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
10013 * clutter/clutter-stage.[ch]: Fix clutter_stage_set_user_resizable()
10014 name, and add a getter for the property.
10016 * clutter/glx/clutter-stage-glx.c: Use the accessor, not
10017 g_object_get() to retrieve the value of the resizable property.
10019 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
10021 * clutter/clutter-backend.[ch]: Add clutter_backend_set_resolution()
10022 and clutter_backend_get_resolution(); backends should use the former
10023 to set the resolution of the display when initialising, while actors
10024 should use the latter when sizing themselves depending on the
10025 resolution or the font size.
10027 * clutter/glx/clutter-backend-glx.c: Set the resolution as 96 dpi
10028 as a default and query the X server when opening the display.
10030 * clutter/clutter-entry.c: Drop the hardcoded dpi value and use
10031 clutter_backend_get_resolution() to compute the default size.
10033 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
10035 * clutter/clutter-entry.c (clutter_entry_init): Set the default
10036 size of the entry based on the size of the default font. (#414).
10038 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
10040 * clutter/sdl/clutter-backend-sdl.c: Fix a typo in
10041 clutter_backend_sdl_get_features() (#426, Pan Bohui)
10043 2007-07-30 Matthew Allum <mallum@openedhand.com>
10048 Various updates and improvements.
10051 Remove --disable-fast-fp-conversions
10053 2007-07-30 Tomas Frydrych <tf@openedhand.com>
10055 * clutter/clutter-behaviour-ellipse:
10056 (clutter_behaviour_ellipse_advance):
10058 Fixed invalid assumption about z cooordiance in calculation of
10061 2007-07-30 Tomas Frydrych <tf@openedhand.com>
10063 * clutter/clutter-actor.c:
10065 Fixed incorrect order of modelview matrix stack in calculating
10068 2007-07-30 Matthew Allum <mallum@openedhand.com>
10070 * clutter/clutter-backend.h:
10071 Remove #if 0's old backend_api
10072 (generating uneeded documentation)
10074 2007-07-30 Matthew Allum <mallum@openedhand.com>
10076 * clutter/clutter-texture.c:
10077 Fix re-relisation for large tiled textures.
10078 * tests/test-textures.c: (main):
10079 Add a show/hide to trigger above (see #442)
10081 2007-07-29 Emmanuele Bassi <ebassi@openedhand.com>
10083 * clutter/clutter-types.h: Document ClutterGravity enumeration
10084 and remove the only incomplete symbol of the api reference. Now
10085 we are up to 79% documented symbols.
10087 2007-07-29 Emmanuele Bassi <ebassi@openedhand.com>
10089 * clutter/clutter-media.c: Document ClutterMedia signals;
10090 replace the implementation of clutter_media_set_filename() with
10091 something a wee bit more robust (and portable) than a sprintf().
10093 2007-07-29 Emmanuele Bassi <ebassi@openedhand.com>
10095 * clutter/clutter-behaviour-ellipse.c: Documentation
10096 fixes; kill some indirections; freeze the notification
10097 queue when (potentially) emitting multiple notify
10100 * clutter/clutter-alpha.h: Remove the unused macro
10101 CLUTTER_TYPE_SMOOTHSTEP.
10103 2007-07-28 Emmanuele Bassi <ebassi@openedhand.com>
10105 * clutter/clutter-actor.[ch]: Use GInitiallyUnowned
10106 as the parent structure in the ClutterActor structure
10107 definition; somehow, this has escaped everyone attention
10108 in one year and a half. Luckily, GInitiallyUnowned is
10111 (clutter_actor_get_abs_position_units),
10112 (clutter_actor_get_abs_position): Check parameters.
10114 * clutter/clutter-texture.h: Unmangle the flags enum
10115 type declaration, so that dumb parsers like h2defs.py
10118 * clutter/clutter-behaviour-ellipse.[ch]:
10119 * clutter/clutter-effect.c: Fix some documentation
10120 issues and make gtk-doc happy.
10122 2007-07-27 Tomas Frydrych <tf@openedhand.com>
10124 * clutter/clutter-behaviour-ellipse.h:
10125 * clutter/clutter-behaviour-ellipse.c:
10126 * tests/test-behave.c:
10127 (clutter_behaviour_ellipse_get_angle_tilt):
10128 (clutter_behaviour_ellipse_set_angle_tilt):
10130 Pruned ClutterBehaviourEllipse api.
10132 2007-07-27 Tomas Frydrych <tf@openedhand.com>
10134 * clutter/clutter-behaviour-ellipse.h:
10135 * clutter/clutter-behaviour-ellipse.c:
10136 (clutter_behaviour_ellipse_set_angle_tilt_x):
10137 (clutter_behaviour_ellipse_set_angle_tilt_xx):
10138 (clutter_behaviour_ellipse_get_angle_tilt_x):
10139 (clutter_behaviour_ellipse_get_angle_tilt_xx):
10140 (clutter_behaviour_ellipse_set_angle_tilt_y):
10141 (clutter_behaviour_ellipse_set_angle_tilt_yx):
10142 (clutter_behaviour_ellipse_get_angle_tilt_y):
10143 (clutter_behaviour_ellipse_get_angle_tilt_yx):
10144 (clutter_behaviour_ellipse_set_angle_tilt_z):
10145 (clutter_behaviour_ellipse_set_angle_tilt_zx):
10146 (clutter_behaviour_ellipse_get_angle_tilt_z):
10147 (clutter_behaviour_ellipse_get_angle_tilt_zx):
10148 (clutter_behaviour_ellipse_set_tilt):
10149 (clutter_behaviour_ellipse_set_tiltx):
10150 (clutter_behaviour_ellipse_get_tilt):
10151 (clutter_behaviour_ellipse_get_tiltx):
10153 * tests/test-behave.c:
10155 Allow tilting ClutterBehaviourEllipse in all three axis; affects
10156 any code using the previous tilt api.
10158 2007-07-26 Matthew Allum <mallum@openedhand.com>
10160 * clutter/clutter-feature.h:
10161 Add new stage feature flags and document.
10163 * clutter/eglnative/clutter-backend-egl.c:
10164 * clutter/eglx/clutter-backend-egl.c:
10165 * clutter/sdl/clutter-backend-sdl.c:
10166 Set new feature flags.
10168 * clutter/glx/clutter-backend-glx.c:
10169 * clutter/glx/clutter-stage-glx.c:
10170 * clutter/clutter-stage.c:
10171 * clutter/clutter-stage.h:
10172 Add a 'user_resizeable' setting to the backend and implement
10175 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
10177 * clutter/clutter-behaviour-ellipse.c:
10178 * clutter/clutter-behaviour.h:
10179 * clutter/clutter-event.c:
10180 * clutter/clutter-texture.h:
10181 * clutter/clutter-types.h: Add missing documentation and fix
10182 parameters names to make gtk-doc happy.
10184 2007-07-26 Tomas Frydrych <tf@openedhand.com>
10186 * clutter/clutter-behaviour-ellipse.h:
10187 * clutter/clutter-behaviour-ellipse.c:
10188 * tests/test-behave.c:
10190 Removed tilt paramter from ClutterBehaviourEllipse constructors;
10191 Made angles to be relative to 12 o'clock;
10192 Added direction property;
10194 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
10196 * clutter/clutter-types.h:
10197 * clutter/Makefile.am: Add a header for common types, to avoid
10200 * clutter/clutter-actor.h:
10201 * clutter/clutter-behaviour.h:
10202 * clutter/clutter-behaviour-rotate.h:
10203 * clutter/clutter-behaviour-scale.h: Move some boxed types and som
10204 enums to clutter-types.h.
10206 2007-07-26 Neil J. Patel <njp@o-hand.com>
10208 * clutter/clutter-entry.c: (offset_to_bytes),
10209 (clutter_entry_ensure_cursor_position),
10210 (clutter_entry_new_with_text), (clutter_entry_new),
10211 (clutter_entry_insert_unichar), (clutter_entry_delete_chars):
10213 Fixed utf8 support so it actually works now, for both
10214 inserting and deleting chars. Fixed positioning of cursor for
10215 utf8 chars. Both GString and Pnago need bytes (not
10216 documented!) for string manipulation, so making sure all
10217 values were bytes and not char positions fixed the issue. Set
10218 a default size of 50x50 for the entry, otherwise no chars can
10219 be seen if the size is not set after creation (which confuses
10222 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
10224 * clutter/clutter-timeline.c:
10225 Do not accept zero as a value for the num-frames and fps properties
10226 in both the constructor and the setter functions.
10228 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
10230 * clutter/clutter-actor.[ch]:
10231 * clutter/clutter-behaviour-bspline.c:
10232 * clutter/clutter-behaviour.c:
10233 * clutter/clutter-box.[ch]:
10234 * clutter/clutter-clone-texture.c:
10235 * clutter/clutter-entry.c:
10236 * clutter/clutter-group.[ch]:
10237 * clutter/clutter-texture.c:
10238 * clutter/pango/pangoclutter-render.c:
10239 * tests/test-actors.c:
10240 * tests/test-behave.c:
10241 * tests/test-entry.c:
10242 * tests/test-events.c:
10243 * tests/test-project.c:
10244 * tests/test-rotate.c:
10245 * tests/test-scale.c:
10246 * tests/test-text.c:
10247 * tests/test-textures.c: Miscellaneous compiler warning fixes.
10249 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
10252 * Makefile.am: Add a configure switch to enable strict
10253 compiler flags, and turn it on when we are doing a distcheck.
10255 2007-07-25 Matthew Allum <mallum@openedhand.com>
10259 Add with initial notes on coding bits and bobs.
10261 * clutter/clutter-behaviour-scale.c:
10264 * clutter/clutter-event.c: (clutter_event_put):
10267 * clutter/glx/clutter-stage-glx.c:
10268 Disable wm user resizing of stage (At least for now)
10271 2007-07-25 Tomas Frydrych <tf@openedhand.com>
10273 * clutter/clutter-fixed.c:
10275 Fixed endianness issue in fast fp conversions.
10277 2007-07-25 Tomas Frydrych <tf@openedhand.com>
10280 * clutter/clutter-fixed.c:
10282 Added --disable-fast-fp-conversion option.
10284 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
10286 * clutter/clutter-label.[ch]: Ouch, clutter_label_get_alignment()
10287 returns a PangoAlignment, not a boolean.
10289 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
10291 * clutter/clutter-behaviour.h:
10292 * clutter/clutter-behaviour.c: Rename clutter_behaviour_clear()
10293 to clutter_behaviour_remove_all() to avoid method clashes in
10296 2007-07-25 Tomas Frydrych <tf@openedhand.com>
10298 * tests/test-rotate.c:
10299 * tests/Makefile.am:
10303 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
10305 * clutter/clutter-behaviour-bspline.c: Kill off some deep pointer
10306 indirections; use CLUTTER_NOTE() instead of ifdeffed out g_debug();
10307 add checks in every public entry point; move some initialisations
10308 of private data structures out of the constructor and into the
10309 init function, where they belong.
10311 2007-07-25 Matthew Allum <mallum@openedhand.com>
10313 * clutter/clutter-behaviour-rotate.c:
10314 * clutter/clutter-behaviour-rotate.h:
10315 Split 'center' prop into 3 seperate props for each axis.
10316 Use clutter_behaviour_actors_foreach() rather than
10317 clutter_behaviour_get_actors() to avoid copying list.
10318 Call fixed point rotation funcs internally.
10320 * clutter/clutter-effect.c:
10321 * clutter/clutter-effect.h:
10322 Add new simple rotation based effect funcs.
10324 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
10326 * clutter/clutter.h: Include clutter-behaviour-depth.h
10328 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
10330 * clutter/clutter-behaviour-rotate.[ch]: Add a center property
10331 for the center or rotation; implement the set_bounds() methods.
10333 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
10335 * clutter/eglx/clutter-backend-egl.c:
10336 * clutter/eglnative/clutter-backend-egl.c:
10337 * clutter/sdl/clutter-backend-sdl.c: Destroy the stage in every
10340 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
10342 * clutter/glx/clutter-backend-glx.c: Destroy the stage, don't
10345 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
10347 * clutter/clutter-main.c: Add debug markers.
10349 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
10351 * clutter/clutter-texture.[ch]: Add a ClutterTextureError
10352 to be returned by the loader functions; use the GObject API
10353 to allocate the private data structure instead of managing it
10354 ourselves; add documentation.
10356 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
10358 * clutter/clutter-actor.c:
10359 * clutter/clutter-box.h:
10360 * clutter/clutter-stage.c: Documentation fixes.
10362 2007-07-24 Matthew Allum <mallum@openedhand.com>
10364 * clutter/cogl/gl/cogl-defines.h:
10365 Add CGL_UNSIGNED_INT_8_8_8_8_REV (for big endian machines)
10367 2007-07-24 Matthew Allum <mallum@openedhand.com>
10369 * clutter/cogl/gl/cogl-defines.h:
10370 Another GL_TEXTURE_RECTANGLE_ARB related fix (#404)
10372 2007-07-24 Matthew Allum <mallum@openedhand.com>
10374 * clutter/clutter-backend.c:
10375 Minor build fixes (#413)
10377 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
10379 * clutter/clutter-effect.h:
10380 * clutter/clutter-effect.c: Add a secondary constructor for
10381 ClutterEffectTemplate, for use of the bindings.
10383 2007-07-24 Matthew Allum <mallum@openedhand.com>
10385 * clutter/cogl/gles/cogl.c: (cogl_get_bitmasks):
10386 Fix typo calling glGetIntegerv rather than glGetInteger
10388 2007-07-24 Matthew Allum <mallum@openedhand.com>
10390 * clutter/cogl/gl/cogl.c: (cogl_get_features):
10391 learn to use cpp properly.
10393 2007-07-24 Matthew Allum <mallum@openedhand.com>
10395 * clutter/clutter-media.c: (clutter_media_base_init):
10396 Remove #if 0! signal - assume causing issues with binding generation.
10399 * clutter/cogl/gl/cogl.c:
10400 Check GL_TEXTURE_RECTANGLE_ARB and GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB
10401 are defined in gl.h (#404)
10403 2007-07-24 Matthew Allum <mallum@openedhand.com>
10405 * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize):
10406 Create stage window with correct depth/visual. Via patch from
10407 Robert Bragg (#409).
10409 2007-07-23 Matthew Allum <mallum@openedhand.com>
10411 * clutter/clutter-texture.c: (texture_render_to_gl_quad),
10412 (clutter_texture_paint):
10413 Dont be over aggressive in throwing criticals for unrealized
10414 textures. Doesn't make sense for sub classes. (#403)
10416 2007-07-22 Emmanuele Bassi <ebassi@openedhand.com>
10418 Two small fixes for correctly debugging the deinitialisation
10419 phase of the backend:
10421 * clutter/glx/clutter-backend-glx.c: Remove the event source
10422 after we unref the main stage.
10424 * clutter/glx/clutter-stage-glx.c: Add a mark at the end of the
10425 unrealize call (the perl bindings seem to crash before we reach
10428 2007-07-22 Emmanuele Bassi <ebassi@openedhand.com>
10430 * clutter/clutter-behaviour-ellipse.c: Remove pointer indirections;
10431 add sanity checks on the public entry points; make all the public
10432 properties floating point (where needed) andconvert them to fixed
10433 point internally. (Partial fix for #389)
10435 2007-07-22 Emmanuele Bassi <ebassi@openedhand.com>
10437 * clutter/clutter-behaviour.[ch]: Rename ClutterBehaviour::apply
10438 and ClutterBehaviour::remove to ClutterBehaviour::applied and
10439 ClutterBehaviour::removed respectively, and emit them when the
10440 behaviour has been applied (or does no longer apply) to an actor.
10442 (clutter_behaviour_dispose), (clutter_behaviour_finalize),
10443 (clutter_behaviour_class_init): Move the actor removal to the
10444 ::dispose virtual function, and remove the ::finalize one;
10445 document the missing properties and signals.
10447 (clutter_behaviour_clear): Add function to clear a behaviour:
10448 every actor will be unreffed and the ClutterBehaviour::removed
10449 signal will be emitted.
10451 2007-07-21 Matthew Allum <mallum@openedhand.com>
10453 * clutter/clutter-event.c:
10454 Correct clutter_event_get_state () return type. Fixes #398
10456 * clutter/glx/clutter-stage-glx.c:
10457 Disable use XFixes cursor visibility funcs. Appears to have issues
10458 on feisty X Server at least. Fallback should work generally better.
10460 Fix non offscreen clutter_stage_snapshot to also rotate read pixel
10461 data to correct orientation.
10463 2007-07-12 Matthew Allum <mallum@openedhand.com>
10465 * clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch):
10466 Avoid sending too many events which are just pressure changes.
10468 2007-07-12 Matthew Allum <mallum@openedhand.com>
10470 * clutter/clutter-actor.c: (clutter_actor_paint):
10471 * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
10472 * clutter/cogl/cogl.h:
10473 * clutter/cogl/gl/cogl.c: (cogl_get_viewport):
10474 * clutter/cogl/gles/cogl.c: (cogl_get_viewport):
10475 Hopefully fix clutter_actor_at_pos on !32bpp displays.
10476 Based on patch from Pan Bohui, See;
10477 http://bugzilla.openedhand.com/show_bug.cgi?id=390
10482 2007-07-11 Emmanuele Bassi <ebassi@openedhand.com>
10484 * clutter/clutter-behaviour-opacity.c:
10485 Don't check direction in opacity.
10487 2007-07-11 Tomas Frydrych <tf@openedhand.com>
10489 * clutter/clutter-fixed.h:
10490 Fixed CLUTTER_ANGLE_ macros.
10492 * clutter/clutter-behaviour-ellipse.h:
10493 * clutter/clutter-behaviour-ellipse.c:
10494 Implemented "apply" signal closer to position actor on the start
10495 of the elliptic path.
10497 (clutter_behaviour_ellipse_get_angle_begin):
10498 (clutter_behaviour_ellipse_set_angle_begin):
10499 (clutter_behaviour_ellipse_get_angle_end):
10500 (clutter_behaviour_ellipse_set_angle_end):
10501 (clutter_behaviour_ellipse_get_angle_tilt):
10502 (clutter_behaviour_ellipse_set_angle_tilt):
10503 Renamed with an x suffix; added versions for angles in degrees.
10505 2007-07-09 Matthew Allum <mallum@openedhand.com>
10509 * clutter/clutter-stage.c:
10510 * clutter/glx/clutter-stage-glx.c:
10511 Fix cursor visibility property.
10512 Force a repaint before mapping to attempt to avoid flicker.
10514 2007-07-09 Richard Purdie <rpurdie@openedhand.com>
10516 * clutter/eglnative/clutter-event-egl.c:
10518 Add tslib support to eglnative backend.
10520 2007-07-09 Richard Purdie <rpurdie@openedhand.com>
10522 * clutter/eglnative/clutter-backend-egl.c:
10523 Tweaks to the eglnative backend.
10525 2007-07-09 Richard Purdie <rpurdie@openedhand.com>
10527 * clutter/clutter-backend.c:
10528 Make the backend add_option function optional.
10530 2007-07-09 Emmanuele Bassi <ebassi@openedhand.com>
10532 * clutter/clutter-behaviour-depth.h:
10533 * clutter/clutter-behaviour-depth.c:
10534 * clutter/Makefile.am: Add ClutterBehaviourDepth, a simple
10535 behaviour controlling the depth of a set of actors.
10537 * clutter/clutter-behaviour-opacity.c: Always make sure that
10538 the opacity applied to the actors is a positive integer, even
10539 in case where the start and end opacity are reversed; use the
10540 correct cast macros for passing the opacity as a pointer.
10542 2007-07-06 ====================== 0.3.1 Release ========================
10544 2007-07-06 Matthew Allum <mallum@openedhand.com>
10550 2007-07-06 Matthew Allum <mallum@openedhand.com>
10552 * clutter/eglx/Makefile.am:
10553 * clutter/eglx/clutter-egl.h:
10554 * clutter/eglx/clutter-event-egl.c:
10555 * clutter/eglx/clutter-stage-egl.c:
10556 Rename clutter-egl.h -> clutter-eglx.h
10560 Add info re EGL split.
10562 2007-07-06 Matthew Allum <mallum@openedhand.com>
10564 * clutter/Makefile.am:
10565 * clutter/eglnative/Makefile.am:
10566 * clutter/eglnative/clutter-backend-egl.c:
10567 * clutter/eglnative/clutter-backend-egl.h:
10568 * clutter/eglnative/clutter-egl.h:
10569 * clutter/eglnative/clutter-event-egl.c:
10570 * clutter/eglnative/clutter-stage-egl.c:
10571 * clutter/eglnative/clutter-stage-egl.h:
10572 * clutter/eglx/Makefile.am:
10573 * clutter/eglx/clutter-backend-egl.c:
10574 * clutter/eglx/clutter-egl.h:
10575 * clutter/eglx/clutter-event-egl.c:
10576 * clutter/eglx/clutter-stage-egl.c:
10578 Add a new 'native' EGL backend for non X based EGL's
10579 (i.e on framebuffer).
10580 Rename old backend to 'eglx' and namespace public funcs with this.
10582 * clutter/pango/pangoclutter-private.h:
10583 Add extra checks for expected defines.
10585 2007-07-06 Matthew Allum <mallum@openedhand.com>
10589 Updates for upcoming 0.3.1 release.
10590 * clutter/egl/Makefile.am:
10591 * clutter/egl/clutter-backend-egl.c:
10592 * clutter/egl/clutter-backend-egl.h:
10593 * clutter/egl/clutter-egl.h:
10594 * clutter/egl/clutter-event-egl.c:
10595 * clutter/egl/clutter-stage-egl.c:
10596 * clutter/egl/clutter-stage-egl.h:
10600 2007-07-06 Matthew Allum <mallum@openedhand.com>
10602 * clutter/clutter-box.c: (clutter_box_pick):
10603 Call clutter_box_paint rather than actor paint method avoiding
10604 infinte loop (Fixes test-boxes crasher).
10606 * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_unrealize):
10607 Trap the X calls to avoid potential X errors.
10609 2007-07-06 Ross Burton <ross@openedhand.com>
10611 * tests/Makefile.am:
10614 2007-07-05 Tomas Frydrych <tf@openedhand.com>
10616 * cluter/clutter-group.c:
10617 (clutter_group_query_coords:)
10618 Reset box size to zero width and height to report correct size if
10619 the contents of the group shrink.
10621 2007-07-05 Emmanuele Bassi <ebassi@openedhand.com>
10623 * clutter/clutter-rectangle.c: Fix off-by-border-width bug
10624 in the border creation of a ClutterRectangle.
10626 2007-07-05 Tomas Frydrych <tf@openedhand.com>
10628 * clutter/clutter-fixed.h:
10629 * clutter/clutter-fixed.c:
10630 Added CLUTTER_FLOAT_TO_UINT macro;
10634 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
10636 * clutter/*: Loads of fixes for the API reference.
10638 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
10640 Merge from clutter/work
10642 * clutter/clutter-alpha.[ch]: Fix the argument names for
10643 the smoothstep alpha functions, for gtk-doc.
10645 * clutter/clutter-group.c (clutter_group_remove_all): Fix
10646 the iteration on the children list.
10648 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
10650 * clutter/clutter-main.c (clutter_redraw): Move the stage
10651 paint init call from the main redraw function...
10653 * clutter/clutter-stage.c (clutter_stage_paint): ... to the
10654 ClutterActor::paint() overridden method in ClutterStage.
10656 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
10658 * clutter/clutter.h:
10659 * clutter/Makefile.am: ClutterBackend is marked as public API,
10660 so install the clutter-backend.h header and include it when
10661 including clutter.h.
10663 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
10665 * clutter/clutter-entry.[ch]: Various fixes to ClutterEntry:
10666 fix code style issues; add documentation for the various
10667 properties; add ClutterEntry:entry-padding property, for controlling
10668 the text padding (until we have style properties separated from
10669 the object properties); notify property changes; free resources
10670 in the ::finalize method; rename clutter_entry_add() to
10671 clutter_entry_insert_unichar(), and clutter_entry_remove() to
10672 clutter_entry_delete_chars() - for bindings and for matching the
10673 insert_text() and delete_text() existing methods; add a getter
10674 method for the max-length property.
10676 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
10678 * clutter/clutter-actor.[ch]: Use the right get_type() function
10679 name for ClutterVertex, and add the CLUTTER_TYPE_VERTEX macro.
10681 2007-07-03 Ross Burton <ross@openedhand.com>
10684 Check for XFixes 4 and above.
10686 2007-07-02 Tomas Frydrych <tf@openedhand.com>
10688 * clutter/clutter-actor.h:
10689 * clutter/clutter-actor.c:
10690 * tests/test-project.c:
10691 (clutter_actor_apply_transform_to_point):
10692 Use ClutterVertex for input and output parameters.
10694 2007-07-01 Emmanuele Bassi <ebassi@openedhand.com>
10696 Merge from clutter.git/work branch
10698 * clutter/clutter-effect.[ch]: Clean up ClutterEffect; use a
10699 pointer to access the private data structure, instead of doing
10700 a type check every time. Add description for the API reference.
10702 * docs/reference/clutter-sections.txt:
10703 * clutter/*.[ch]: Add various documentation fixes.
10705 * clutter/clutter-entry.c: Remove a stray g_print() call.
10707 2007-06-29 Neil J. Patel <njp@o-hand.com>
10709 * clutter/clutter-entry.c: (clutter_entry_handle_key_event),
10710 (clutter_entry_add), (clutter_entry_remove):
10711 Check if unichar == 0, and if so, return, as it will cause a delete in
10714 2007-06-20 ============== 0.3 Release ====================================
10716 2007-06-29 Matthew Allum <mallum@openedhand.com>
10718 * clutter/clutter-texture.c: (texture_upload_data):
10719 Fix a SEGV for GL ES textures.
10721 * clutter/cogl/gles/cogl.c: (cogl_setup_viewport):
10722 Tweak default z_camera for 60 degrees like GL.
10724 * clutter/egl/clutter-backend-egl.c::
10725 * clutter/egl/clutter-stage-egl.c:
10726 Fix edpy usage (thanks to Kaj Gronholm).
10728 2007-06-29 Tomas Frydrych <tf@openedhand.com>
10730 * clutter/clutter-group.c:
10731 (clutter_group_query_coords):
10732 Fixed box calculation.
10734 2007-06-28 Tomas Frydrych <tf@openedhand.com>
10736 * clutter/clutter-group.c:
10737 (clutter_group_raise):
10738 (clutter_group_lower):
10739 Fixed SIGSEGV when attempting to raise / lower an only child.
10741 2007-06-28 Matthew Allum <mallum@openedhand.com>
10743 * clutter/cogl/gl/cogl.c: (cogl_setup_viewport):
10744 Improve fixed z_camera value for defualt perspective.
10745 Appears pixel perfect on ATI and Intel at least
10747 2007-06-28 Tomas Frydrych <tf@openedhand.com>
10749 * tests/test-perspective.c:
10750 Moved red dots to be positioned 1px off each corner.
10752 2007-06-28 Matthew Allum <mallum@openedhand.com>
10754 * tests/Makefile.am:
10755 * tests/test-perspective.c:
10756 Add simple perspective test
10758 2007-06-27 Tomas Frydrych <tf@openedhand.com>
10760 * clutter/clutter-actor.h:
10761 * clutter/clutter-actor.c:
10762 * tests/test-project.c:
10763 Renamed clutter_actor_project_point() to
10764 clutter_actor_apply_trasform_to_point() and
10765 clutter_actor_project_vertices() to clutter_actor_get_vertices().
10767 2007-06-27 Tomas Frydrych <tf@openedhand.com>
10769 * clutter/clutter-actor.h:
10770 * clutter/clutter-actor.c:
10771 * tests/test-project.c:
10772 (clutter_actor_project_point):
10773 Separated input from output parameters.
10775 2007-06-27 Matthew Allum <mallum@openedhand.com>
10778 Dont remove README on make clean
10780 2007-06-27 Tomas Frydrych <tf@openedhand.com>
10782 * clutter/clutter-actor.c:
10783 (_clutter_actor_apply_modelview_transform):
10784 Fixed incorrect order of scaling an rotation that was causing
10785 objects that were both rotated and scaled to change position.
10787 2007-06-27 Tomas Frydrych <tf@openedhand.com>
10789 * clutter/clutter-actor.c:
10790 (clutter_actor_scale_with_gravityx):
10791 Made to work after changes to the behavivour of
10792 clutter_actor_get_absolute_size() for rotated actors.
10794 2007-06-26 Tomas Frydrych <tf@openedhand.com>
10796 * clutter/cogl/gl/cogl.c:
10797 * clutter/cogl/gles/cogl.c:
10798 (cogl_setup_viewport):
10799 For default perspective angle of 60 degrees, use a hardcoded
10800 z_camera constant that provides minimal artefacts when rendering
10801 text; for other angles we calculate.
10803 2007-06-26 Tomas Frydrych <tf@openedhand.com>
10805 * clutter/clutter-actor.h:
10806 * clutter/clutter-actor.c:
10807 Added fixed point version of clutter_actor_rotate_*() functions
10808 and accessors for rotation angles.
10810 2007-06-25 Matthew Allum <mallum@openedhand.com>
10813 Update a little more.
10814 * clutter/clutter-effect.c:
10815 Add missing func documentation
10816 * clutter/clutter-rectangle.c:
10817 Fix border drawing.
10819 2007-06-25 Tomas Frydrych <tf@openedhand.com>
10821 * clutter/clutter-fixed.h:
10822 Fixed definition of clutter_cosx() macro.
10824 * clutter/clutter-stage.c:
10825 * clutter/cogl/cogl.h:
10826 * clutter/cogl/gl/cogl.c:
10827 * clutter/cogl/gles/cogl.c:
10828 Changed ClutterPerspective.fovy from ClutterAngle to degrees to
10829 improve precission in Z-camera calculations.
10831 2007-06-22 Matthew Allum <mallum@openedhand.com>
10837 Move back to regular README naming at least for now.
10839 2007-06-22 Matthew Allum <mallum@openedhand.com>
10844 Update for 0.3 release.
10846 * clutter/clutter-actor.c:
10849 * clutter/clutter-texture.c:
10850 Various minor additions for handling non RGBA data.
10851 Fix a typo breaking clutter_texture_get_pixbuf() on tiled textures.
10853 * tests/test-actors.c:
10854 Disable scaling to avoid drifting (temporary till API is fixed)
10856 2007-06-21 Emmanuele Bassi <ebassi@openedhand.com>
10858 * clutter/clutter-timeline.c: Allow disabling the timeline pool
10859 by using the CLUTTER_TIMELINE environment variable set to
10862 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
10864 * README.in: Update release notes.
10866 2007-06-19 Matthew Allum <mallum@openedhand.com>
10868 * clutter/clutter-main.c: (clutter_init_with_args), (clutter_init):
10869 Safer checks for setting progname if NULL is passed in init.
10871 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
10873 * autogen.sh: autoreconf needs a README.
10875 2007-06-19 Matthew Allum <mallum@openedhand.com>
10879 * clutter/clutter-main.c:
10880 Set a default window title based on g_prgname().
10882 * clutter/clutter-stage.c:
10883 * clutter/clutter-stage.h:
10884 * clutter/egl/clutter-stage-egl.c:
10885 * clutter/glx/clutter-stage-glx.c:
10886 * clutter/sdl/clutter-stage-sdl.c:
10887 Alter draw_to_pixbuf to return a pixbuf
10890 Only full in gdk-pixbuf-xlib as a GLX backend dep.
10892 * tests/test-entry.c:
10893 Fix a couple of warnings.
10895 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
10897 * Makefile.am: Add README.in to the EXTRA_DIST.
10899 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
10902 * README.in: Use a template for the README file, so that
10903 it gets the right version number.
10905 2007-06-19 Matthew Allum <mallum@openedhand.com>
10907 * clutter/clutter-stage.c:
10908 * clutter/clutter-stage.h:
10909 * clutter/glx/clutter-stage-glx.c:
10910 * clutter/sdl/clutter-stage-sdl.c:
10911 Add window title setting/getting functionality.
10913 * clutter/clutter-event.c: (clutter_key_event_unicode):
10914 Remove uneeded convert case call.
10916 * clutter/cogl/gl/cogl.c: (cogl_rectangle)
10917 Use parameters correctly for underlying GL rect call.
10919 * tests/test-entry.c:
10920 Add a window title.
10922 2007-06-18 Matthew Allum <mallum@openedhand.com>
10924 * clutter/sdl/clutter-event-sdl.c:
10925 Seemingly fix SDL Event source.
10926 Add some very basic SDL keysym translation.
10927 (Thanks to Thomas Van Machelen for initial translation code)
10929 * tests/test-events.c:
10930 Dump some info on keysyms pressed.
10932 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
10934 * clutter/clutter-actor.h:
10935 * clutter/clutter-stage.h: Add 32 padding slots; when we
10936 reach 1.0 it'll be a long road until the following ABI
10939 * tests/test-behave.c: Don't forget to include headers.
10941 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
10943 * clutter/clutter-container.h:
10944 * clutter/clutter-layout.h: Interfaces are not checked
10945 at compile-time, so there's not need to add padding to
10948 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
10950 * configure.ac: Partially revert last commit, and fail
10951 with AC_MSG_ERROR() instead of disabling the manual build
10952 if no jw and xmlto were found.
10954 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
10956 * configure.ac: If the programs required to build the manual
10957 are not found and --enable-manual was passed, then just print
10958 a warning and disable the manual build instead of aborting the
10961 * doc/manual/Makefile.am: Use the full path gathered by the
10962 configure script when invoking jw and xmlto.
10964 2007-06-16 Matthew Allum <mallum@openedhand.com>
10966 * clutter/clutter-actor.c:
10967 Fix typo in x rotation transform (Thanks to Johan Billen #138)
10970 * doc/manual/Makefile.am:
10971 Fix manual build and required program check.
10973 * tests/Makefile.am:
10976 2007-06-15 Tomas Frydrych <tf@openedhand.com>
10978 * clutter/clutter-actor.c:
10979 Added some comments; renamed MTX_GL_SCALE to MTX_GL_SCALE_X for
10980 consistency; removed some debug output.
10982 2007-06-14 Tomas Frydrych <tf@openedhand.com>
10984 * clutter/clutter-vbox.c:
10985 * clutter/clutter-hbox.c:
10986 (clutter_vbox_pack_child):
10987 (clutter_hbox_pack_child):
10988 Fixed child coords.
10990 2007-06-14 Emmanuele Bassi <ebassi@openedhand.com>
10992 * clutter/clutter-box.[ch]: Base class for layout containers.
10994 * clutter/clutter-hbox.[ch]: Horizontal box actor.
10996 * clutter/clutter-vbox.[ch]: Vertical box actor.
10998 * clutter/clutter.h:
10999 * clutter/Makefile.am: Build glue
11001 * tests/Makefile.am:
11002 * tests/test-boxes.c: Test suite for ClutterBox API and
11005 2007-06-14 Matthew Allum <mallum@openedhand.com>
11007 * clutter/cogl/gl/cogl.c: (cogl_check_extension):
11008 Actually populate this func and remove the static alternate
11009 named one. Means GLX actually checks for available extensions.
11010 Other minor tidy ups.
11012 * clutter/glx/clutter-backend-glx.c:
11013 * clutter/glx/clutter-backend-glx.h:
11014 Add support for GLX_SGI_swap_control to do vblanking prefering
11015 over glXGetVideoSyncSGI. Should fix issues on Intel chips with
11016 very slow frame rates due to vblank problems.
11017 Thanks to Michel Danzer for tips, see;
11018 http://bugs.freedesktop.org/show_bug.cgi?id=10542
11020 * test/test-actors.c:
11023 2007-06-14 Emmanuele Bassi <ebassi@openedhand.com>
11025 * clutter/clutter-timeout-pool.c: Make ClutterTimeoutPool
11026 more thread-safe, using a static lock.
11028 (clutter_timeout_pool_dispatch), (clutter_timeout_pool_remove): Fix
11029 a race condition-turned-in-memory corruption bug, triggered by
11030 removing a timeout from the pool while still spinning the pool
11033 2007-06-14 Emmanuele Bassi <ebassi@openedhand.com>
11036 * doc/manual/Makefile.am: Find xmlto and jw in the path and
11037 use the symbolic names when building the manual.
11039 2007-06-14 Tomas Frydrych <tf@openedhand.com>
11041 * clutter/clutter-actor.c:
11042 (clutter_actor_get_abs_position):
11043 (clutter_actor_get_abs_size):
11044 Reimplement using clutter_actor_project_point() and
11045 clutter_actor_project_vertices().
11047 * tests/test-project.c:
11048 Rename clutter_actor_allocate_coords -> clutter_actor_query_coords
11050 2007-06-14 Matthew Allum <mallum@openedhand.com>
11052 * clutter/clutter-actor.c:
11053 * clutter/clutter-actor.h:
11054 * clutter/clutter-group.c:
11055 * clutter/clutter-label.c:
11056 * clutter/egl/clutter-stage-egl.c:
11057 * clutter/glx/clutter-stage-glx.c:
11058 * clutter/sdl/clutter-stage-sdl.c:
11059 Rename clutter_actor_allocate_coords -> clutter_actor_query_coords
11061 Change repaints to G_PRIORITY_DEFAULT + 10.
11062 (timelines are G_PRIORITY_DEFAULT + 30, events G_PRIORITY_DEFAULT)
11064 * clutter/glx/clutter-event-glx.c:
11065 Handle shift modifier in keycode -> keysym translation.
11067 * tests/test-actors.c:
11068 Remove (broken) screen saver code.
11069 Add scaling behaviour, clean code a little.
11071 2007-06-13 Tomas Frydrych <tf@openedhand.com>
11073 * clutter/clutter-actor.c:
11074 (clutter_actor_project_vertices):
11075 (clutter_actor_project_proint):
11076 Fixed translation of Y coords to match the windowing system.
11078 * clutter/egl/clutter-stage-egl.c:
11079 * clutter/glx/clutter-stage-glx.c:
11080 * clutter/sdl/clutter-stage-sdl.c:
11081 (clutter_stage_*_request_size):
11082 Initialize viewport when setting/resetting stage side.
11084 * tests/Makefile.am
11085 * tests/test-project.c:
11086 An interactive test of the projection stuff.
11088 2007-06-12 Tomas Frydrych <tf@openedhand.com>
11090 * clutter/clutter-main.c:
11092 Clear CLUTTER_ACTOR_SYNC_MATRICES flag after setting up viewport.
11094 2007-06-12 Matthew Allum <mallum@openedhand.com>
11096 * doc/manual/Makefile.am:
11097 Fix typo in Makefile so PDF's actually get built.
11099 * doc/manual/clutter-manual.xml.in:
11100 Add an FAQ section with initial entry.
11102 2007-06-12 Tomas Frydrych <tf@openedhand.com>
11104 * clutter/clutter-fixed.h:
11105 Added shorthand CFX_QMUL macro.
11107 * clutter/clutter-private.h:
11108 * clutter/clutter-actor.h:
11109 * clutter/clutter-actor.c:
11110 Replaced ClutterVertices with ClutterVertex;
11112 (clutter_actor_get_transformed_vertices):
11113 (clutter_actor_get_transformed_point):
11114 Replaced with clutter_actor_projected_vertices and
11115 clutter_actor_projected_point.
11117 (_clutter_actor_apply_modelview_transform):
11118 (_clutter_actor_apply_modelview_transform_recursive):
11119 Private functions to push actor modelview transforms on OpenGL
11122 * clutter/cogl/cogl.h:
11123 * clutter/cogl/gl/cogl.c:
11124 * clutter/cogl/gles/cogl.c:
11125 (cogl_get_viewport):
11126 (cogl_get_modelview_matrix):
11127 (cogl_get_projection_matrix):
11128 Functions to access OpenGL transforms.
11130 2007-06-12 Matthew Allum <mallum@openedhand.com>
11132 * clutter/clutter-alpha.c:
11133 Remove stray g_debug.
11135 * clutter/clutter-behaviour-rotate.c:
11136 Register private class member.
11138 * clutter/clutter-behaviour.c:
11139 * clutter/clutter-behaviour.h:
11140 Add applied and removed signals.
11144 * examples/Makefile.am:
11146 * examples/behave.c:
11147 * examples/slider.c:
11148 * examples/super-oh.c:
11149 * examples/test-entry.c:
11150 * examples/test-text.c:
11152 * tests/Makefile.am:
11153 Remove examples, moving applicable code into tests.
11155 2007-06-11 Tomas Frydrych <tf@openedhand.com>
11157 * clutter/clutter-alpha.c:
11158 (clutter_alpha_sine_inc):
11159 (clutter_alpha_sine_dec):
11160 (clutter_alpha_sine_half):
11161 Fixed unsigned overflow.
11163 2007-06-11 Emmanuele Bassi <ebassi@openedhand.com>
11165 * clutter/clutter-event.h: Add full modifier masks enums.
11167 * clutter/glx/clutter-event-glx.c: Copy the modifier masks from
11168 the native X event structure.
11170 * clutter/clutter-event.c: Convert to upper case if the
11171 shift or the lock masks are applied.
11173 2007-06-09 Emmanuele Bassi <ebassi@openedhand.com>
11175 * clutter/clutter.h:
11176 * clutter/clutter-timeout-pool.[ch]: Add a timeout pool source;
11177 every timeout added to this pool will use a single slice of the
11180 * clutter/clutter-timelince.c: Use a per-class timeout pool for
11183 2007-06-08 Matthew Allum <mallum@openedhand.com>
11185 * clutter/clutter-texture.c: (clutter_texture_get_pixbuf):
11186 Remove stray printf.
11188 2007-06-08 Matthew Allum <mallum@openedhand.com>
11190 * clutter/clutter-actor.c:
11191 * clutter/clutter-debug.h:
11192 * clutter/clutter-main.c:
11193 * clutter/clutter-main.h:
11194 * clutter/clutter-private.h:
11195 * clutter/clutter-timeline.c:
11196 Add 'schedule' debug flag and new CLUTTER_TIMESTAMP macro.
11198 * clutter/clutter-texture.c:
11199 * clutter/clutter-texture.h:
11200 * clutter/cogl/cogl.h:
11201 * clutter/cogl/gl/cogl-defines.h:
11202 * clutter/cogl/gles/cogl-defines.h:
11203 * clutter/cogl/gl/cogl.c:
11204 * clutter/cogl/gles/cogl.c:
11205 Add initial experiemental YUV texture support.
11206 Move texture rect size checks into cogl.
11207 Better handle moving texture data from video -> system memory
11208 (if support available).
11210 2007-06-07 Neil J. Patel <njp@o-hand.com>
11212 * clutter/clutter-entry.c: (clutter_entry_class_init),
11213 (clutter_entry_handle_key_event):
11214 * clutter/clutter-entry.h:
11215 Added an 'activated' signal, which is emitted when the 'Enter' key is
11218 * examples/test-entry.c: (on_entry_activated), (main):
11219 Added a test handler for the activated signal.
11221 2007-06-07 Emmanuele Bassi <ebassi@openedhand.com>
11223 * clutter/*: Move documentation from the templates into the
11226 2007-06-07 Emmanuele Bassi <ebassi@openedhand.com>
11228 * clutter/clutter-container.[ch]: Add a generic actor container
11229 interface, for actors to implement without subclassing ClutterGroup.
11231 * clutter/clutter-group.[ch]: Make ClutterGroup implement the
11232 ClutterContainer interface, and deprecate the colliding methods.
11234 * clutter/clutter-layout.[ch]: Add extended layout interface.
11235 Actors and containers requiring or honouring complex layout
11236 management should implement this interface and provide at least
11237 one of the available layout types: width for height, height for
11238 width, natural size, iterative size request.
11240 * clutter/clutter-label.c: A ClutterLabel requires height for
11241 width layout management, so it implements the ClutterLayout
11244 * clutter/Makefile.am: Add new files to the build.
11247 * examples/*.c: Update tests and examples code to use the
11248 new ClutterContainer API instead of ClutterGroup.
11250 2007-06-07 Emmanuele Bassi <ebassi@o-hand.com>
11252 * clutter/clutter-timeline.[ch]: Add a "delay" property, which
11253 delays the real start of the timeline by a number of milliseconds.
11255 (clutter_timeline_clone): Rename clutter_timeline_copy() to
11256 clutter_timeline_clone(), for consistency.
11258 2007-06-01 Neil J. Patel <njp@o-hand.com>
11260 * clutter/clutter-entry.c: (clutter_entry_set_property),
11261 (clutter_entry_get_property), (clutter_entry_class_init),
11262 (clutter_entry_init), (clutter_entry_set_text),
11263 (clutter_entry_set_max_length):
11264 * clutter/clutter-entry.h:
11265 * examples/test-entry.c: (main):
11266 Added a max-length property whihc limits the length of the text in the
11269 2007-06-01 Neil J. Patel <njp@o-hand.com>
11271 * clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position),
11272 (clutter_entry_paint), (clutter_entry_init),
11273 (clutter_entry_handle_key_event):
11274 Clipping within the entry class to stop it over-slipping its
11276 Text will move within the clip region to keep the cursor always
11278 Added some padding to the left and right to make sure cursor is
11281 2007-06-01 Tomas Frydrych <tf@openedhand.com>
11283 * clutter/clutter-actor.c:
11284 * clutter/clutter-stage.c:
11285 * clutter/clutter-private.h:
11286 Removed perspective matrix caching from ClutterStage.
11288 2007-06-01 Neil J. Patel <njp@o-hand.com>
11290 * clutter/clutter-entry.c: (clutter_entry_set_property),
11291 (clutter_entry_get_property), (clutter_entry_ensure_layout),
11292 (clutter_entry_class_init), (clutter_entry_init),
11293 (clutter_entry_set_visibility), (clutter_entry_get_visibility),
11294 (clutter_entry_set_invisible_char),
11295 (clutter_entry_get_invisible_char):
11296 * clutter/clutter-entry.h:
11297 Added text-visibility, which will allow you to show all entered text
11298 as a nominated charaecter ('*' is default).
11300 * examples/test-entry.c: (main):
11302 2007-06-01 Neil J. Patel <njp@o-hand.com>
11304 * clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position),
11305 (clutter_entry_clear_cursor_position),
11306 (clutter_entry_paint_cursor), (clutter_entry_paint),
11307 (clutter_entry_class_init), (clutter_entry_set_text),
11308 (clutter_entry_set_position):
11309 * clutter/clutter-entry.h:
11310 Added a signla to track cursor movements.
11311 Moved the sursor painting function so it can be subclassed.
11313 2007-06-01 Tomas Frydrych <tf@openedhand.com>
11315 * clutter/clutter-actor.c:
11316 (clutter_actor_get_transformed_point):
11317 Make input again relative to the actor; feed depth into transform.
11319 2007-06-01 Neil J. Patel <njp@o-hand.com>
11321 * clutter/clutter-entry.c: (clutter_entry_class_init),
11322 (clutter_entry_set_text):
11323 * clutter/clutter-entry.h:
11324 * examples/test-entry.c: (on_entry_text_changed), (main):
11325 Added a text-changed signal to the entry.
11327 2007-06-01 Neil J. Patel <njp@o-hand.com>
11329 * clutter/clutter-effect.h:
11330 Removed extra G_END_DECLS outside the #endif
11332 * clutter/clutter-entry.c: (clutter_entry_handle_key_event),
11333 (clutter_entry_add):
11334 * clutter/clutter-entry.h:
11335 * examples/test-entry.c: (on_key_release_cb):
11336 Added a function to deal with ClutterKeyEvents. Handles the majority
11337 of entry-related keyboard keys. However modifiers still need to be
11340 2007-06-01 Tomas Frydrych <tf@openedhand.com>
11342 * clutter/clutter-actor.c:
11344 Apply perspective transform before all other transforms.
11346 2007-06-01 Tomas Frydrych <tf@openedhand.com>
11348 * clutter/clutter-stage.c:
11349 (clutter_stage_init):
11350 Call _clutter_stage_refresh_perspective_matrix to initialize the
11351 matrix for default values.
11353 2007-06-01 Tomas Frydrych <tf@openedhand.com>
11355 * clutter/clutter-fixed.h:
11356 * clutter/clutter-behaviour-ellipse.h:
11357 * clutter/clutter-behaviour-ellipse.c:
11358 * clutter/clutter-behaviour-bspline.h:
11359 * clutter/clutter-behaviour-bspline.c:
11360 Documentation fixes.
11362 2007-05-31 Tomas Frydrych <tf@openedhand.com>
11364 * clutter/clutter-stage.c:
11365 * clutter/clutter-private.h:
11366 (_clutter_stage_get_perspective_matrix):
11369 * clutter/clutter-actor.c:
11370 (clutter_actor_get_tranformed_vertices):
11371 (clutter_actor_get_tranformed_point):
11372 Apply perspective matrix on the top of actor transform matrix.
11374 2007-05-31 Neil J Patel <njp@o-hand.com>
11376 * clutter/Makefile.am:
11377 * clutter/clutter-entry.c: (clutter_entry_set_property),
11378 (clutter_entry_get_property), (clutter_entry_ensure_layout),
11379 (clutter_entry_clear_layout),
11380 (clutter_entry_ensure_cursor_position), (clutter_entry_paint),
11381 (clutter_entry_request_coords), (clutter_entry_dispose),
11382 (clutter_entry_finalize), (clutter_entry_class_init),
11383 (clutter_entry_init), (clutter_entry_new_with_text),
11384 (clutter_entry_new_full), (clutter_entry_new),
11385 (clutter_entry_get_text), (clutter_entry_set_text),
11386 (clutter_entry_get_font_name), (clutter_entry_set_font_name),
11387 (clutter_entry_set_color), (clutter_entry_get_color),
11388 (clutter_entry_get_layout), (clutter_entry_set_alignment),
11389 (clutter_entry_get_alignment), (clutter_entry_set_position),
11390 (clutter_entry_get_position), (clutter_entry_add),
11391 (clutter_entry_remove), (clutter_entry_insert_text),
11392 (clutter_entry_delete_text), (clutter_entry_set_visible_cursor),
11393 (clutter_entry_get_visible_cursor):
11394 * clutter/clutter-entry.h:
11395 * clutter/clutter.h:
11396 * examples/Makefile.am:
11397 Initial import of ClutterEntry actor.
11399 * examples/test-entry.c: (on_key_release_cb), (main):
11400 A basic test for ClutterEntry
11402 2007-05-31 Tomas Frydrych <tf@openedhand.com>
11404 * clutter/clutter-actor.c:
11405 (clutter_actor_get_transformed_point):
11406 Fixed coordinance translation.
11408 2007-05-31 Matthew Allum <mallum@openedhand.com>
11410 * clutter/clutter-actor.c:
11411 * clutter/clutter-actor.h:
11412 Add clutter_actor_get_transformed_point()
11414 * clutter/clutter-main.c:
11415 Plug in perspective setup to redraw
11417 * clutter/clutter-stage.c:
11418 * clutter/clutter-stage.h:
11419 Remove audience code for now.
11421 2007-05-31 Matthew Allum <mallum@openedhand.com>
11423 * clutter/egl/clutter-backend-egl.c:
11424 * clutter/egl/clutter-backend-egl.h:
11425 * clutter/egl/clutter-event-egl.c:
11426 * clutter/egl/clutter-stage-egl.c:
11427 * clutter/egl/clutter-stage-egl.h:
11430 2007-05-31 Matthew Allum <mallum@openedhand.com>
11432 * clutter/glx/clutter-backend-glx.c:
11433 * clutter/glx/clutter-backend-glx.h:
11434 * clutter/glx/clutter-event-glx.c:
11435 * clutter/glx/clutter-glx.h:
11436 * clutter/glx/clutter-stage-glx.c:
11437 * clutter/glx/clutter-stage-glx.h:
11438 Change type nameing from Glx -> GLX.
11439 Add basic event filtering functionality
11441 2007-05-31 Tomas Frydrych <tf@openedhand.com>
11443 * clutter/clutter-behaviour-ellipse.c:
11444 Changed behaviour so that a beginning angle of 0 would correspond
11447 2007-05-31 Tomas Frydrych <tf@openedhand.com>
11449 * clutter/clutter-fixed.h:
11450 * clutter/clutter-fixed.c:
11451 (_clutter_double_to_int):
11452 Fixed return value to gint; added missing cast that broke negative
11453 number conversions.
11455 (CLUTTER_ANGLE_FROM_DEGX):
11456 Swapped division and multiplication around to avoid overflows.
11458 * clutter/clutter-behaviour-ellipse.c:
11459 Fixed incorrectly set lower bounds for angle properties.
11461 * clutter/clutter-actor.h:
11462 * clutter/clutter-actor.c:
11463 Added ClutterVertices type.
11464 (clutter_actor_get_transformed_vertices):
11467 2007-05-31 Matthew Allum <mallum@openedhand.com>
11469 Sync up for whats left for 0.4 release (and 0.6 ideas)
11471 2007-05-31 Matthew Allum <mallum@openedhand.com>
11473 * clutter/clutter-behaviour-ellipse.c:
11474 Remove uneeded knot signal
11476 * clutter/clutter-behaviour-path.c:
11477 Fix so knot signal is emitted only when a knot is reached.
11479 * clutter/clutter-effect.c:
11480 * clutter/clutter-effect.h:
11481 Add a scale effect.
11484 * doc/manual/Makefile.am:
11485 * doc/manual/clutter-manual.xml.in:
11486 * doc/manual/manual.xsl:
11487 * doc/manual/style.css:
11488 Add various bits for application developers manual.
11490 2007-05-30 Tomas Frydrych <tf@openedhand.com>
11492 * clutter/clutter-alpha.h:
11493 * clutter/clutter-alpha.c:
11494 Removed ClutterSmoothstep struct
11495 (clutter_smoothstep_inc_func):
11496 Renamed to clutter_smoothstep_func.
11497 (clutter_smoothstep_added_func):
11500 2007-05-29 Tomas Frydrych <tf@openedhand.com>
11502 * clutter/clutter-fixed.h:
11505 Fixed wrong sign in cos -> sin tranformation.
11507 * clutter/clutter-behaviour-ellipse.c:
11508 (clutter_behaviour_ellipse_advance):
11509 Replaced coordinace calculation for tilted ellipse with a sane
11512 * examples/behave.c:
11513 Added tilt parameter to the example ellptic path.
11515 2007-05-29 Tomas Frydrych <tf@openedhand.com>
11517 * clutter/cogl/gles/cogl.c:
11518 (cogl_setup_viewport):
11519 Fixed z_camera calculation.
11521 2007-05-28 Matthew Allum <mallum@openedhand.com>
11523 * clutter/clutter-texture.c: (clutter_texture_unrealize):
11524 Dont even try to move texture pixels from video -> system
11525 ram on unrealisation for GL/ES
11527 2007-05-28 Matthew Allum <mallum@openedhand.com>
11529 * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
11530 Fix for GL/ES. Barring texture reads this means all clutter
11531 functionality now works on GL/ES! (no doubt with a few yet to
11532 be discovered bugs)
11534 2007-05-28 Matthew Allum <mallum@openedhand.com>
11536 * clutter/clutter-backend.c:
11537 * clutter/clutter-backend.h:
11538 * clutter/glx/clutter-stage-glx.c:
11539 * clutter/glx/clutter-backend-glx.c:
11540 Fix up rendering pipeline removing clutter_backend_XXX_stage_paint
11541 and adding clutter_backend_XXX_redraw instead. Duplicates less
11542 code in backends, avoids clutter_actor_paint() getting called
11543 before stage is set up (viewport wise) and unbreaks things like
11546 * clutter/clutter-actor.c:
11547 * clutter/clutter-actor.h:
11548 * clutter/clutter-main.c:
11549 * clutter/clutter-private.h:
11550 * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
11551 Redo picking functionality a different way (via color indexing)
11552 as to provide more flexibility, possibly speed and more likely
11553 work with GL/ES (doesn't currently however - not sure why).
11555 * clutter/clutter-group.c:
11556 Add groups own 'pick' method.
11558 * clutter/cogl/cogl.h:
11559 * clutter/cogl/gl/cogl.c:
11560 * clutter/cogl/gles/cogl.c:
11561 Move clipping funtionality into cogl.
11563 * clutter/cogl/gles/cogl-defines.h:
11564 Hack around missing BGR format in GL/ES.
11566 * clutter/egl/clutter-backend-egl.c:
11567 * clutter/egl/clutter-backend-egl.h:
11568 * clutter/egl/clutter-stage-egl.c:
11569 * clutter/sdl/clutter-backend-sdl.c:
11570 * clutter/sdl/clutter-backend-sdl.h:
11571 * clutter/sdl/clutter-event-sdl.c:
11572 * clutter/sdl/clutter-stage-sdl.c:
11573 Update backends to newer API.
11574 Add basic mouse event translation to SDL.
11576 2007-05-25 Matthew Allum <mallum@openedhand.com>
11578 * clutter/clutter-color.c: (clutter_color_parse):
11579 Handle #rrggbbaa color setting strings (i.e with alpha).
11580 Set alpha to 0xff if it is not specified.
11582 * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos)
11583 Increase select buffer.
11585 * examples/super-oh.c:
11586 Fix up use of clutter_group_show_all()
11588 2007-05-25 Tomas Frydrych <tf@openedhand.com>
11590 * clutter/clutter-actor.c:
11591 * clutter/clutter-actor.h:
11592 Renamed clutter_actor_scalex() to clutter_actor_set_scale_with_gravityx
11593 Added floating point version clutter_actor_set_scale_with_gravity.
11595 * clutter/clutter-units.h:
11596 * clutter/clutter-actor.h:
11597 typedef ClutterUnit
11599 * clutter/clutter-fixed.h:
11600 * clutter/clutter-stage.c:
11601 CLUTTER_ANGLE_FROM_DEG(), CLUTTER_ANGLE_FROM_DEGX()
11602 renamed CLUTTER_DEGF_TO_CLUTTER_ANGLE to CLUTTER_ANGLE_FROM_DEGF
11604 * clutter/clutter-behaviour-ellipse.h:
11605 * clutter/clutter-behaviour-ellipse.c:
11606 * examples/behave.c:
11607 (clutter_behaviour_ellipse_new):
11608 Changed signature to take angles in degrees, and x,y offsets.
11609 (clutter_behaviour_ellipse_newx):
11610 Fixed version clutter_behaviour_ellipse_new.
11611 (clutter_behaviour_ellipse_set_center):
11612 (clutter_behaviour_ellipse_get_center):
11613 Changed signature to take x,y coords instead of ClutterKnot.
11615 clutter/cogl/gl/cogl.c:
11616 clutter/cogl/gles/cogl.c:
11617 (cogl_setup_viewport):
11618 Added z_camera calculation.
11620 2007-05-25 Matthew Allum <mallum@openedhand.com>
11623 Install a default flavour .pc file.
11625 * clutter/clutter-actor.c:
11626 Translate units correctly for translate()
11628 * clutter/clutter-feature.h:
11629 Add new texture features.
11631 * clutter/clutter-fixed.h:
11632 Add clutter angle conversion defines.
11634 * clutter/clutter-group.c:
11635 Use cogl not GL. Dont recurse on show all.
11637 * clutter/clutter-private.h:
11638 Remove sync_viewport.
11640 * clutter/clutter-rectangle.c:
11643 * clutter/clutter-stage.c:
11644 * clutter/clutter-stage.h:
11645 Add perspective settings. Remove viewport_sync.
11646 Add audience stubs. Fix up actor_at_pos a little (still broken)
11648 * clutter/clutter-texture.h:
11649 * clutter/clutter-texture.c:
11650 Redo pixel uploading. Add initial (disabled) YUV support.
11652 * clutter/clutter-timeline.c:
11653 Fire 'completed' signal when looping.
11655 * clutter/cogl/gl/cogl.c:
11656 Move some backend checks here.
11658 * clutter/glx/clutter-backend-glx.c:
11659 Actually check target display has GLX ext.
11661 * clutter/glx/clutter-stage-glx.c:
11662 Handle offscreen failing more gracefully.
11664 * examples/Makefile.am:
11667 * clutter/clutter-main.c:
11668 * clutter/clutter-feature.c:
11669 * clutter/clutter-backend.c:
11670 * clutter/clutter-alpha.c:
11671 Fix a compile warnings.
11673 * tests/Makefile.am:
11674 * tests/test-offscreen.c:
11675 * tests/test-scale.c:
11678 2007-05-23 Tomas Frydrych <tf@openedhand.com>
11680 * clutter/clutter-actor.c:
11681 * clutter/clutter-actor.h:
11682 (clutter_actor_get_abs_size_units):
11683 (clutter_actor_get_abs_position_units):
11684 removed from public api
11686 2007-05-22 Tomas Frydrych <tf@openedhand.com>
11691 * clutter/Makefile.am:
11692 * clutter/clutter-actor.c:
11693 * clutter/clutter-actor.h:
11694 * clutter/clutter-group.c:
11695 * clutter/clutter-label.c:
11696 * clutter/clutter-real.h:
11697 * clutter/clutter-units.h:
11698 * clutter/clutter.h:
11699 * clutter/egl/clutter-stage-egl.c:
11700 * clutter/glx/clutter-stage-glx.c:
11701 * clutter/sdl/clutter-stage-sdl.c:
11702 * examples/Makefile.am:
11703 * tests/Makefile.am:
11704 Removed ClutterReal; added clutter-units.
11706 2007-05-18 Tomas Frydrych <tf@openedhand.com>
11711 * clutter/Makefile.am:
11712 * clutter/clutter-actor.c:
11713 * clutter/clutter-actor.h:
11714 * clutter/clutter-behaviour-scale.c:
11715 * clutter/clutter-behaviour-scale.h:
11716 * clutter/clutter-group.c:
11717 * clutter/clutter-label.c:
11718 * clutter/clutter-real.h:
11719 * clutter/egl/clutter-stage-egl.c:
11720 * clutter/glx/clutter-stage-glx.c:
11721 * examples/Makefile.am:
11722 * tests/Makefile.am:
11725 2007-05-17 Emmanuele Bassi <ebassi@openedhand.com>
11727 * clutter/clutter-main.c: Use clutter_base_init() inside the
11728 initialisation process, instead of calling g_type_init() directly.
11730 * clutter/clutter-alpha.c:
11731 * clutter/clutter-behaviour-bspline.c:
11732 * clutter/clutter-behaviour-ellipse.c: Fix API documentation.
11734 2007-05-17 Matthew Allum <mallum@openedhand.com>
11737 Fix CLUTTER_NO_FPU typo.
11739 2007-05-17 Tomas Frydrych <tf@openedhand.com>
11741 * clutter/clutter-alpha.h:
11742 * clutter/clutter-alpha.c:
11743 * doc/reference/clutter-sections.txt:
11744 Added clutter_exp_inc_func() and clutter_exp_dec_func().
11746 2007-05-16 Emmanuele Bassi <ebassi@openedhand.com>
11748 * clutter/clutter-main.[ch]: Add clutter_base_init(), semi-private
11749 function to initialise just the base Clutter functionalities; it's
11750 only used by gtk-doc to introspect the classes.
11752 * clutter/clutter-feature.c: Do not access the private features
11753 data structure unless it has been initialised.
11755 2007-05-16 Tomas Frydrych <tf@openedhand.com>
11757 * clutter/clutter-alpha.h:
11758 * clutter/clutter-alpha.c:
11759 * doc/reference/clutter-sections.txt:
11760 Added clutter_sine_half().
11762 2007-05-16 Tomas Frydrych <tf@openedhand.com>
11764 * clutter/clutter-alpha.h:
11765 * clutter/clutter-alpha.c:
11766 * doc/reference/clutter-sections.txt:
11767 Fixed clutter_sine_inc(), added clutter_sine_dec().
11769 2007-05-16 Tomas Frydrych <tf@openedhand.com>
11771 * clutter/clutter-alpha.h:
11772 * clutter/clutter-alpha.c:
11773 * doc/reference/clutter-sections.txt:
11774 * doc/rererence/clutter.types:
11775 * doc/reference/tmpl/clutter-alpha.sgml:
11776 clutter_smoothstep_func alpha function,
11777 ClutterSmoothstep struct for smoothstep function data.
11779 2007-05-16 Matthew Allum <mallum@openedhand.com>
11781 * clutter/clutter-backend.c:
11782 * clutter/clutter-backend.h:
11783 * clutter/clutter-feature.c:
11784 * clutter/clutter-feature.h:
11785 * clutter/clutter-main.c:
11786 * clutter/clutter-main.h:
11787 * clutter/clutter-private.h:
11788 * clutter/clutter-stage.c:
11789 * clutter/cogl/cogl.h:
11790 * clutter/cogl/gl/cogl.c:
11791 * clutter/cogl/gles/cogl.c:
11792 * clutter/glx/clutter-backend-glx.c:
11793 * clutter/glx/clutter-backend-glx.h:
11794 * clutter/glx/clutter-glx.h:
11795 * clutter/glx/clutter-stage-glx.c:
11796 * clutter/glx/clutter-stage-glx.h:
11797 Rejig the features() foo, moving mostly into backends/cogl.
11799 2007-05-15 Tomas Frydrych <tf@openedhand.com>
11801 * clutter/clutter-actor.c:
11802 (clutter_actor_get_abs_position):
11803 Removed unnecessary CFX_MUL().
11805 2007-05-15 Tomas Frydrych <tf@openedhand.com>
11807 * clutter/clutter-behaviour-ellipse.h:
11808 * clutter/clutter-behaviour-ellipse.c:
11809 (clutter_behaviour_ellipse_new):
11810 Added a tilt parameter.
11812 2007-05-14 Matthew Allum <mallum@openedhand.com>
11814 * clutter/clutter-behaviour-path.c:
11815 Fix bug where last knot position wouldn't get reached.
11817 * clutter/clutter-group.c:
11820 * clutter/clutter-timeline.h:
11821 * clutter/clutter-timeline.c:
11822 Add clutter_timeline_copy (needed for ClutterEffect)
11824 * clutter/clutter-version.h.in:
11825 Export windowing system / GL backend etc defines.
11827 * clutter/Makefile.am:
11828 * clutter/clutter-effect.c:
11829 * clutter/clutter-effect.h:
11830 * clutter/clutter.h:
11832 * clutter/glx/clutter-backend-glx.c:
11835 * clutter/clutter-alpha.h:
11841 * examples/Makefile.am:
11842 * examples/slider.c:
11843 Add Robs slider game.
11845 2007-05-10 Matthew Allum <mallum@openedhand.com>
11847 * clutter/egl/clutter-backend-egl.c:
11848 * clutter/egl/clutter-event-egl.c:
11849 * clutter/sdl/clutter-backend-sdl.c:
11850 * clutter/sdl/clutter-event-sdl.c:
11851 Fix SDL & EGL backends to work with newer backend code.
11853 2007-05-10 Tomas Frydrych <tf@openedhand.com>
11855 * clutter/clutter-color.h:
11856 * clutter/clutter-color.c:
11857 Added clutter_color_to/from_hlsx()
11858 (clutter_color_to/from_hls):
11859 Clobber hue to 0 .. 250
11861 2007-05-10 Matthew Allum <mallum@openedhand.com>
11863 * clutter/clutter-backend.c:
11864 * clutter/clutter-backend.h:
11865 * clutter/clutter-event.c:
11866 * clutter/clutter-main.c:
11867 * clutter/clutter-private.h:
11868 * clutter/glx/clutter-backend-glx.c:
11869 * clutter/glx/clutter-backend-glx.h:
11870 * clutter/glx/clutter-event-glx.c:
11871 Rejig backend event code as to simplify a little.
11872 NOTE: This breaks non glx backends.
11874 * tests/Makefile.am:
11875 * tests/test-events.c:
11876 Add a very simple event test.
11878 * tests/test-textures.c: (main):
11879 Add some more sizes to the test.
11881 2007-05-05 Matthew Allum <mallum@openedhand.com>
11883 * clutter/clutter-texture.c:
11884 Fix typos with new cogl using texture code. Fixes tiled textures.
11885 Add a check for max npots size.
11889 * tests/Makefile.am:
11890 * tests/test-textures.c:
11891 Add a simple texture test.
11893 2007-05-02 Matthew Allum <mallum@openedhand.com>
11895 * clutter/Makefile.am:
11896 * clutter/clutter-stage.c:
11897 * clutter/sdl/Makefile.am:
11898 * clutter/sdl/clutter-backend-sdl.c:
11899 * clutter/sdl/clutter-backend-sdl.h:
11900 * clutter/sdl/clutter-event-sdl.c:
11901 * clutter/sdl/clutter-sdl.h:
11902 * clutter/sdl/clutter-stage-sdl.c:
11903 * clutter/sdl/clutter-stage-sdl.h:
11905 Add a basic SDL based backend. Lacks real input event handling
11906 (translation) as yet.
11907 Also allows for clutter to be built against dgles.
11909 2007-05-02 Matthew Allum <mallum@openedhand.com>
11911 * clutter/clutter-actor.c:
11912 * clutter/cogl/gles/cogl.c:
11913 Fix rotation + other fixed point cleanups.
11915 * clutter/clutter-texture.h:
11916 Sketch out an updated API.
11918 2007-05-01 Matthew Allum <mallum@openedhand.com>
11920 * clutter/clutter-rectangle.c:
11921 Comment out color match check for now as appears to be causing
11922 borders to always get pained.
11924 * clutter/clutter-texture.h:
11925 Add some format defines (unused as yet)
11927 * clutter/cogl/gles/cogl.c:
11928 * clutter/egl/clutter-stage-egl.c:
11930 Various OpenGL ES backend related fixes and tweaks.
11932 2007-04-30 Tomas Frydrych <tf@openedhand.com>
11934 * clutter/clutter-fixed.c (clutter_sini):
11935 Fixed bug in reducing angle to 0-2pi.
11937 * clutter/clutter-behaviour-ellipse.h:
11938 * clutter/clutter-behaviour-ellipse.c:
11939 * clutter/clutter.h:
11940 * clutter/Makefile.am:
11941 * doc/clutter.types:
11942 * doc/clutter-docs.sgml:
11943 Added ClutterBehaviourEllipse for movement along
11946 * examples/bspline.c:
11947 * examples/behave.c:
11948 * examples/Makefile.am:
11949 Added --path commandline option to behave to choose different
11950 path types (poly, ellipse, bspline) and dropped bspline example.
11952 2007-04-28 Matthew Allum <mallum@openedhand.com>
11954 * clutter/Makefile.am:
11955 * clutter/clutter-debug.h:
11956 * clutter/clutter-fixed.h:
11957 * clutter/clutter-main.c:
11958 * clutter/cogl/gles/Makefile.am:
11959 * clutter/cogl/gles/cogl-defines.h:
11960 * clutter/cogl/gles/cogl.c:
11961 * clutter/egl/clutter-backend-egl.c:
11962 * clutter/egl/clutter-backend-egl.h:
11963 * clutter/egl/clutter-stage-egl.c:
11965 Populate most stubs for cogl GL/ES implementation.
11966 (against vincent - see http://svn.o-hand.com/repos/misc/ogles)
11967 Add various fixups to EGL backend.
11968 Code builds and runs (on 16bpp) but yet displays much (is close!)
11970 * clutter/pango/pangoclutter-render.c:
11971 comment out some rouge glBegin/end calls.
11973 2007-04-27 Matthew Allum <mallum@openedhand.com>
11975 * clutter/Makefile.am:
11976 * clutter/clutter-actor.c:
11977 * clutter/clutter-clone-texture.c:
11978 * clutter/clutter-rectangle.c:
11979 * clutter/clutter-stage.c:
11980 * clutter/clutter-texture.c:
11981 * clutter/cogl/cogl.h:
11982 * clutter/cogl/gl/Makefile.am:
11983 * clutter/cogl/gl/cogl-defines.h:
11984 * clutter/cogl/gl/cogl.c:
11985 * clutter/cogl/gles/Makefile.am:
11986 * clutter/cogl/gles/cogl-defines.h:
11987 * clutter/cogl/gles/cogl.c:
11988 * clutter/glx/Makefile.am:
11989 * clutter/glx/clutter-stage-glx.c:
11990 * clutter/pango/Makefile.am:
11991 * clutter/pango/pangoclutter-render.c:
11993 Add initial 'cogl' implementation. 'cogl' is a simple abstration
11994 layer over GL and GL/ES used by clutter internally. It should
11995 eventually allow clutter applications to be run on both GL and GL/ES
11996 with just a recompile as well as provide more debugging and potentially
11997 profiling information for GL and GL/ES usage.
11999 This commit contains the initial GL implementation.
12001 2007-04-26 Emmanuele Bassi <ebassi@openedhand.com>
12003 Merge from clutter-0-2
12005 * clutter/clutter-label.c: Unbreak the "use-markup" property
12006 by actually passing the markup to pango_layout_set_markup().
12008 2007-04-25 Emmanuele Bassi <ebassi@openedhand.com>
12010 Merge from clutter.git/master
12012 * clutter/glx/clutter-event-glx.c:
12013 * clutter/glx/clutter-stage-glx.c: Implement the _NET_WM_PING
12014 protocol handling on the main stage window.
12016 * clutter/clutter-stage.h:
12017 * clutter/clutter-stage.c:
12018 * clutter/clutter-main.c: Handle CLUTTER_DELETE events internally,
12019 by calling clutter_main_quit(), and remove the ::delete-event
12020 signal from ClutterStage; clean up the signal emission sequence
12021 for the events: emit the ::event signal before emitting any signal
12022 and the ::event-after signal after the signal has been emitted; move
12023 the signal emission calls inside ClutterStage so we can call
12024 g_signal_emit() instead of g_signal_emit_by_name(), thus sparing us
12025 a lookup for each event.
12027 * examples/test.c: Remove ::delete-event signal handling.
12029 2007-04-19 Emmanuele Bassi <ebassi@openedhand.com>
12031 Merge from clutter.git/master
12033 * clutter/clutter-backend.h:
12034 * clutter/clutter-backend.c: Add API for getting screen/display
12035 properties from the backend.
12037 * clutter/glx/clutter-backend-glx.c:
12038 * clutter/glx/clutter-backend-egl.c: Retrieve screen/display
12039 properties inside the backends init function.
12041 * clutter/glx/clutter-event-glx.c: Handle the WM_PROTOCOLS
12042 ClientMessage events.
12044 * clutter/glx/clutter-stage-glx.c: Use XSetWMProtocols to enable
12045 the WM_PROTOCOLS ClientMessage events on the stage window.
12047 * clutter/glx/clutter-glx.h: Return the Screen pointer and not
12048 the screen number in clutter_glx_get_default_screen(). The screen
12049 number is returned by clutter_backend_get_screen_number(), or
12050 by calling XScreenNumberOfScreen on the returned pointer.
12052 * clutter/clutter-event.h: Add CLUTTER_DELETE to the event types.
12054 * clutter/clutter-main.c: Emit the ClutterStage::delete-event
12055 when receiving a CLUTTER_DELETE event; if the signal handlers
12056 return FALSE, call clutter_main_quit().
12058 * clutter/clutter-marshal.list:
12059 * clutter/clutter-stage.c: Use the right marshaller function
12060 for the delete-event closure.
12062 * examples/test.c: Test the "delete-event" signal handler.
12064 2007-04-16 Emmanuele Bassi <ebassi@openedhand.com>
12066 Merge from clutter.git/merge-from-stable
12068 * clutter/clutter-event.h:
12069 * clutter/glx/clutter-event-glx.c: Add the XEMBED protocol support
12070 in the GLX backend, for embedding the stage window into another
12071 X window. This allows cross-toolkit inclusion and makes clutter-gtk
12074 * clutter/clutter-behaviour-scale.c: Implement every ClutterGravity
12075 value inside the scale behaviour and make the actors anchor to a
12076 gravity when scaling up and down.
12078 * clutter/clutter-texture.c: Revert to copying GdkPixbuf areas to
12079 correctly implement the texture tiling. This fixes segmentation
12080 faults occurring with cards with a small texture memory area.
12082 * clutter/clutter-actor.c: Call g_object_freeze_notify() (and take
12083 a reference on the actor) inside clutter_actor_request_size() so
12084 that the notifications get unqueued at the end of the size request.
12086 2007-04-16 Emmanuele Bassi <ebassi@openedhand.com>
12088 Merge from clutter.git/work
12090 * clutter/clutter-behaviour-bspline.[ch]: Return a ClutterBehaviour
12091 when splicing the b-spline; fix the header and the API documentation;
12092 hush the compiler warnings; kill of some pointer indirections.
12094 * clutter/clutter-behaviour-rotate.[ch]: Add a rotate behaviour,
12095 with user defined axis, direction and sweep angle.
12097 * clutter/clutter-behaviour.c (clutter_behaviour_is_applied): Add
12098 a parameter ISA check and return FALSE if it fails.
12100 2007-04-12 Tomas Frydrych <tf@openedhand.com>
12102 * clutter/clutter-behaviour.h:
12103 * clutter/clutter-behaviour.c:
12104 * clutter/clutter-behaviour-path.h:
12105 * clutter/clutter-behaviour-path.c:
12106 Moved declaration of ClutterKnot from clutter-behaviour path
12107 into clutter-behaviour.
12109 * clutter/clutter-fixed.h
12110 * clutter/clutter-fixed.c
12111 Added myself as an author.
12113 * clutter/Makefile.am:
12114 * clutter/clutter.h:
12115 * clutter/clutter-behaviour-bspline.h:
12116 * clutter/clutter-behaviour-bspline.c:
12117 Added new bezier spline behaviour.
12119 * examples/bspline.c:
12120 * examples/Makefile.am:
12121 An example of using bspline path.
12123 2007-04-07 Matthew Allum <mallum@openedhand.com>
12125 * clutter/glx/clutter-backend-glx.c:
12128 2007-03-29 Tomas Frydrych <tf@openedhand.com>
12130 * clutter/clutter-stage.c:
12131 (perspective): fixed degree -> rad conversion for fovy angle
12132 (perspectivex): fixed degree -> rad conversion for fovy angle,
12133 added code for gle glMultMatrixx().
12135 2007-03-29 Tomas Frydrych <tf@openedhand.com>
12137 * configure.ac: fixed typo
12139 * clutter/clutter-fixed.c:
12140 * clutter/clutter-fixed.h:
12141 (clutter_tani): fast implementation of tan()
12142 (clutter_qmulx): improved-precission fixed point multiply
12144 * clutter/clutter-stage.c:
12145 (perspectivex): fixed point implementaiton of perspective()
12146 (_clutter_stage_sync_viewport):
12147 (clutter_stage_get_actor_at_pos):
12148 use perspectivex() instead of perspective()
12150 2007-03-27 Matthew Allum <mallum@openedhand.com>
12152 * clutter/cogl/Makefile.am:
12153 * clutter/cogl/cogl.h:
12154 * clutter/cogl/gles/Makefile.am:
12155 * clutter/cogl/gles/cogl.c:
12156 Begin poplulating cogl GLES code.
12159 * clutter/egl/clutter-event-egl.c:
12160 * clutter/egl/clutter-stage-egl.c:
12161 * clutter/egl/clutter-stage-egl.h:
12162 * clutter/egl/clutter-backend-egl.c:
12163 * clutter/egl/clutter-backend-egl.h:
12164 * clutter/egl/clutter-egl.h:
12165 Add initial EGL/X backend work mostly ported from backend branch.
12166 Builds but untested as yet.
12168 * clutter/glx/clutter-stage-glx.c:
12169 Only include XFixes Header if we have have it.
12171 * clutter/clutter-behaviour.c: (clutter_behaviour_apply):
12172 * clutter/clutter-behaviour.h:
12173 Add clutter_behaviour_is_applied()
12175 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
12177 * clutter/clutter-stage.h: Remove unused clutter_stage_flush()
12180 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
12182 * clutter/glx/clutter-glx.h:
12183 * clutter/glx/clutter-stage-glx.c: (Re-)Implement the foreign
12184 window setting function for the stage in the GLX backend.
12186 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
12188 * clutter/clutter-stage.h: Declare the clutter_perspective_get_type()
12189 function in the header.
12191 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
12193 * clutter/cogl/cogl.h: Add header and compiler guards.
12195 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
12197 * clutter/glx/clutter-stage-glx.c: Remove the check in the
12198 paint chain up: we know for sure that the parent's paint
12201 2007-03-27 Matthew Allum <mallum@openedhand.com>
12203 * clutter/clutter-feature.c:
12204 Rejig ifdef's a little. Make drm vblanking Linux only.
12206 * clutter/clutter-stage.c:
12207 * clutter/clutter-stage.h:
12208 Add a perspective boxed type.
12210 * clutter/glx/clutter-stage-glx.c:
12213 * clutter/Makefile.am:
12214 * clutter/cogl/Makefile.am:
12215 * clutter/cogl/cogl.h:
12216 * clutter/cogl/gl/Makefile.am:
12217 * clutter/cogl/gl/cogl.c:
12219 Very initial work on 'cogl' GL/GLES abstraction/utility code.
12221 2007-03-26 Emmanuele Bassi <ebassi@openedhand.com>
12223 * clutter/clutter-behaviour-scale.[ch]: Add API for getting
12224 the scale bounds and the gravity from a scale behaviour instance.
12226 2007-03-26 Emmanuele Bassi <ebassi@openedhand.com>
12228 * clutter/clutter-timeline.c: Fix last commit.
12230 2007-03-25 Emmanuele Bassi <ebassi@openedhand.com>
12232 * clutter/clutter-timeline.c: Slightly lower the proiority
12233 of the ClutterTimeline tick, so that events get a higher
12234 priority in the main loop.
12236 2007-03-25 Emmanuele Bassi <ebassi@openedhand.com>
12238 * clutter/clutter-event.[ch]: Remove the flags member from
12239 the ClutterEvent structure; remove the ClutterEventFlags
12242 2007-03-25 Emmanuele Bassi <ebassi@openedhand.com>
12244 * clutter/clutter-stage.h: Remove the ::get_actor_at_pos()
12245 and ::flush() vfuncs.
12247 * clutter/glx/clutter-stage-glx.c: Remove the implementations
12248 of those vfuncs from the backend specific code, as they are
12251 * clutter/clutter-stage.c: Add back the actor hit detection
12252 code in the base stage class, along with the viewport
12253 synchronisation function.
12255 * clutter/clutter-private.h: Declare the private function
12256 _clutter_stage_sync_viewport().
12258 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
12260 * clutter/clutter-backend.c: Clear the event queue when
12261 disposing the backend object; remove the initialisation
12262 of the backend structure members...
12264 * clutter/glx/clutter-backend-glx.c: ... and keep it here
12265 in the backends where it belongs.
12267 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
12269 * clutter/clutter-private.h:
12270 * clutter/clutter-backend.h: Move the backend functions
12271 into the private header.
12273 * clutter/glx/clutter-stage-glx.c:
12274 * clutter/glx/clutter-event-glx.c:
12275 * clutter/clutter-main.c:
12276 * clutter/clutter-stage.c: Update the calls to the private
12279 * clutter/clutter-backend.[ch]: Add an ::init_features
12280 vfunc to ClutterBackend.
12282 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
12284 * clutter/glx/clutter-stage-glx.c:
12285 Make sure the top-left corner of the box is our origin,
12286 when returning the allocation.
12288 * clutter/clutter-stage.c:
12289 * clutter/clutter-group.c: Add tracing for the paint
12292 2007-03-23 Matthew Allum <mallum@openedhand.com>
12294 * clutter/glx/clutter-stage-glx.c:
12295 (clutter_stage_glx_allocate_coords):
12296 Make new stage return correct width & height.
12298 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
12300 Assorted build fixes to pass distcheck.
12302 * clutter/glx/Makefile.am: Install the clutter-glx.h header.
12304 * clutter/Makefile.am: Actually apply linker flags.
12306 * configure.ac: Use a more readable CLUTTER_API_VERSION instead
12307 of CLUTTER_MAJORMINOR; require gobject-2.0 with glib-2.0 >= 2.10,
12308 as we are using GObject and the slice allocator from glib 2.10.
12310 * clutter.pc.in: Add the apiversion variable.
12312 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
12314 * clutter/clutter-event.c: Pop and peek the event queue
12315 from the tail - it's a queue, not a stack.
12317 * clutter/clutter-private.h:
12318 * clutter/clutter-main.c: Add a boolean signal accumulator.
12320 * clutter/clutter-stage.[ch]: Add an event argument to
12321 the 'delete-event' signal; rename the 'input-event' signal
12322 to 'event'; add the static scope flag to all the stage
12325 * examples/*.c: Update.
12327 2007-03-22 Emmanuele Bassi <ebassi@openedhand.com>
12329 * clutter.pc.in: Require gobject-2.0 too.
12331 * ChangeLog: Fix the previous commit log.
12333 2007-03-22 Emmanuele Bassi <ebassi@openedhand.com>
12335 * clutter/clutter-private.h: Remove inclusion of backend-specific
12336 headers; update the main context object; add the declarations for
12337 the event queue functions.
12339 * clutter/clutter-backend.[ch]: Add the abstract ClutterBackend
12340 object, which holds backend-specific settings, the main stage,
12341 and the event queue. Every backend must implement a subclass of
12342 ClutterBackend and ClutterStage.
12344 * clutter/clutter-feature.c: Protect the GLX specific calls
12345 behing #ifdef HAVE_CLUTTER_GLX.
12347 * clutter/clutter-actor.c:
12348 * clutter/clutter-group.c:
12349 * clutter/clutter-clone-texture.c: Include GL/gl.h
12351 * clutter/clutter-event.[ch]: Update public API and implement the
12352 event queue private API; hold a reference on the event objects;
12353 move out the keysym-to-unicode table; add the new event types.
12355 * clutter/clutter-color.h: Include clutter-fixed.h
12357 * clutter/clutter-main.c: Update API; get the main stage
12358 from the backend object; process the event received from the
12359 queue; lock/unlock the main mutex if we have one; move the
12360 initialisation process sooner in the init sequence, in order to
12361 have the backend object when we check for options; call the
12362 backed vfuncs in the pre/post parse hooks.
12364 * clutter/clutter-stage.c: Make ClutterStage and abstract class,
12365 implemented by the backends.
12367 * clutter/clutter/glx/clutter-glx.h:
12368 * clutter/clutter/glx/clutter-backend-glx.[ch]:
12369 * clutter/clutter/glx/clutter-event-glx.c:
12370 * clutter/clutter/glx/clutter-stage-glx.[ch]:
12371 * clutter/clutter/glx/Makefile.am: Add the GLX backend.
12373 * clutter/clutter/egl/clutter-backend-egl.[ch]:
12374 * clutter/clutter/egl/clutter-event-egl.c:
12375 * clutter/clutter/egl/clutter-stage-egl.[ch]:
12376 * clutter/clutter/egl/Makefile.am: Add the stub for a EGL backend.
12378 * examples/*.c: Update for the new API.
12380 * configure.ac: Check for the XFixes X extension; add a configure
12381 switch for choosing the backend; show the backend we are building
12384 * clutter.pc.in: Add the backend to the exported variables.
12386 * clutter/Makefile.am: Install the headers in the
12387 clutter-$api_version/clutter directory, as usual; call the shared
12388 object libclutter-$backend-$api_version; build glue for the
12389 backend static library.
12391 2007-03-19 Matthew Allum <mallum@openedhand.com>
12393 * clutter/clutter-label.c:
12395 * clutter/clutter-texture.c: (clutter_texture_get_pixbuf):
12396 Backport of fix to get_pixbuf on non alpha textures from 0_2 branch.
12398 2007-03-19 Emmanuele Bassi <ebassi@openedhand.com>
12400 * clutter/clutter-texture.c: Clean up code; add checks
12403 2007-02-18 Matthew Allum <mallum@openedhand.com>
12405 * clutter/clutter-actor.c: (clutter_actor_reparent):
12406 Add a FIXME re calling clutter_group here.
12407 * clutter/clutter-group.c:
12408 Fix clutter_group_remove_all
12410 2007-02-15 Matthew Allum <mallum@openedhand.com>
12412 * clutter/clutter-group.h:
12413 Add missing clutter_group_remove_all declaration.
12415 2007-02-14 Matthew Allum <mallum@openedhand.com>
12417 * clutter/Makefile.am:
12418 * clutter/clutter-main.c:
12419 * clutter/clutter-stage.c:
12420 * clutter/clutter-version.h.in:
12422 * examples/super-oh.c:
12423 Add CLUTTER_FLAVOUR define.
12425 2007-02-13 Matthew Allum <mallum@openedhand.com>
12427 * examples/super-oh.c: (screensaver_setup):
12428 Fix example to build with new glx api
12430 2007-02-07 Emmanuele Bassi <ebassi@openedhand.com>
12432 * clutter/clutter-debug.h: Define the CLUTTER_MARK()
12433 macro even when CLUTTER_ENABLE_DEBUG is not
12436 2007-01-30 Tomas Frydrych <tf@openedhand.com>
12438 * clutter/clutter-alpha.c:
12440 (clutter_sine_func):
12441 (clutter_sine_inc_func):
12442 fixed the fixed point math.
12444 2007-01-30 Emmanuele Bassi <ebassi@openedhand.com>
12446 * clutter/clutter-alpha.h:
12447 * clutter/clutter-alpha.c: Add the square waveform
12448 function clutter_square_func() to the precooked
12451 2007-01-23 Matthew Allum <mallum@openedhand.com>
12455 * clutter/Makefile.am:
12456 * clutter/clutter-backend-glx.c:
12457 * clutter/clutter-backend-glx.h:
12458 * clutter/clutter-event.c:
12459 * clutter/clutter-feature.c:
12460 * clutter/clutter-group.c:
12461 * clutter/clutter-main.c:
12462 * clutter/clutter-main.h:
12463 * clutter/clutter-private.h:
12464 * clutter/clutter-stage-glx.c:
12465 * clutter/clutter-stage-glx.h:
12466 * clutter/clutter-stage.c:
12467 * clutter/clutter-stage.h:
12468 * clutter/clutter-util.c:
12469 * clutter/clutter-util.h:
12470 * clutter/pango/pangoclutter-render.c:
12472 * examples/Makefile.am:
12473 Initial work in supporting different GL backends (ie. GLX/EGL/DirectFB etc).
12474 Currently just GLX supported and now mostly self contained.
12477 Add a note about caching glenables
12479 2007-01-23 Tomas Frydrych <tf@openedhand.com>
12481 * clutter/clutter-fixed.c:
12482 (_clutter_double_to_fixed):
12483 (_clutter_double_to_int):
12484 Fixed to avoid problems with punned pointers and gcc
12487 * clutter/pango/pangoclutter-private.h:
12488 Simplified PANGO_PIXELS_26_6 macro.
12490 * clutter/pango/pangoclutter-font.c:
12491 (_pango_clutter_font_new):
12492 Replace floating with fixed point math.
12494 2007-01-19 Tomas Frydrych <tf@openedhand.com>
12496 * clutter/clutter-fixed.c: (clutter_sqrti):
12497 Use union instead of casting int <-> float to get rid of
12498 punned-pointer warning and avoid gcc optimatisation breaking
12499 the function on arm.
12501 2007-01-19 Emmanuele Bassi <ebassi@openedhand.com>
12503 Allow the ClutterGroup subclasses to override the add and
12506 * clutter/clutter-group.c: Move the add and remove code from
12507 clutter_group_add() and clutter_group_remove() to the signal
12508 class closures; make the "add" and "remove" signals as
12511 2007-01-19 Tomas Frydrych <tf@openedhand.com>
12513 * clutter/clutter-fixed.h.:
12514 * clutter/clutter-fixed.c:
12515 Added fast double to int and double to fixed point conversion
12516 routines; changed CLUTTER_FLOAT_TO_FIXED to use it.
12517 Replaced clutter_sqrti with fixed point implementation of the QIII
12520 * clutter/clutter-behavior-path.c: use clutter_sqrti always
12522 * clutter/clutter-alpha.c:
12523 (sinc_func): replaced double -> int cast with CLUTTER_FLOAT_TO_INT
12525 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
12527 * configure.ac: Post release bump to 0.3.0.
12529 2007-01-18 =============== 0.2 Release ================================
12531 2007-01-18 Matthew Allum <mallum@openedhand.com>
12534 Update for 0.2 release
12536 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
12538 * clutter/clutter-group.h: Add public functions
12539 clutter_group_get_n_children() and clutter_group_get_nth_child().
12541 * clutter/clutter-behaviour.h:
12542 * clutter/clutter-behaviour.c: Fix header alignment; fix argument
12545 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
12547 * clutter/Makefile.am: Use the build dir when linking to the
12548 internal pango clutter renderer.
12550 2007-01-18 Tomas Frydrych <tf@openedhand.com>
12552 * clutter/clutter-fixed.h: fixed a typo in comment
12554 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
12556 * clutter/clutter-fixed.h: Remove some inline documentation to
12557 make the header more readable.
12559 * clutter/clutter-behaviour.c: The actors are store inside a
12560 GSList and not in a GList, so change the list operations to
12563 2007-01-18 Tomas Frydrych <tf@openedhand.com>
12565 * clutter/clutter-color.c:
12566 (clutter_color_darken):
12567 (clutter_color_lighten):
12568 Changed calls to clutter_color_shade calls to clutter_color_shadex
12570 2007-01-17 Matthew Allum <mallum@openedhand.com>
12573 Bump up version to 0.2.0
12575 2007-01-17 Tomas Frydrych <tf@openedhand.com>
12577 * clutter/clutter-behavior-path.c:
12578 Added --without-fpu option.
12580 * doc/refrence/tmpl/clutter-fixed.sgml:
12581 * clutter/clutter-fixed.c:
12582 * clutter/clutter-fixed.h:
12583 Documentation for fixed point API.
12585 * AUTHORS: added self.
12587 2007-01-17 Emmanuele Bassi <ebassi@openedhand.com>
12589 * clutter/clutter-feature.h:
12590 * clutter/clutter-feature.c: Move the GL headers from the
12591 header file to the body.
12593 * clutter/clutter-fixed.h:
12594 * clutter/clutter-fixed.c: Fix apidoc.
12596 * clutter/clutter-color.h:
12597 * clutter/clutter-color.c: Ditto.
12599 2007-01-17 Tomas Frydrych <tf@openedhand.com>
12601 * clutter/clutter-fixed.h:
12602 * clutter/clutter-fixed.c:
12603 * clutter/clutter-alpha.c:
12604 Renamed clutter_fixed_sin() to clutter_sinx() and
12605 clutter_angle_sin() to clutter_sini(); added clutter_sqrtx()
12606 and clutter_sqrti(); added missing copyright.
12608 * clutter/clutter-behavior.c:
12609 replaced call to sqrt() with clutter_sqrti()
12611 * clutter/clutter-behavior-scale.c:
12612 (clutter_behaviour_scale_alpha_notify):
12613 Replaced floating point math with fixed point.
12615 2007-01-16 Emmanuele Bassi <ebassi@openedhand.com>
12617 * clutter/clutter-feature.c: Use clutter_vblank_method() to
12618 get the VBlank method name from the environment variable OR
12619 the command line switch.
12621 (clutter_feature_do_init): Move the check on the features
12622 state here, to avoid an expensive function call, and inline
12625 * clutter/clutter-fixed.c: Fix gtk-doc.
12627 * clutter/clutter-main.c: Add a --clutter-vblank command line
12628 switch controlling the VBlank method to be used: it overrides
12629 the CLUTTER_VBLANK environment variable.
12631 (pre_parse_hook), (clutter_init),
12632 (clutter_init_with_args): Move thread initialisation before
12633 type init, to avoid the warning that comes with newer GLib
12636 * clutter/clutter-group.h:
12637 * clutter/clutter-group.c: Mark clutter_group_show_all() and
12638 clutter_group_hide_all() as deprecated.
12640 2007-01-16 Matthew Allum <mallum@openedhand.com>
12646 Sync up, mainly with 0.3 todo items
12648 * clutter/clutter-behaviour.c:
12649 * clutter/clutter-behaviour.h:
12650 clutter_behaviour_get_n_actors() / clutter_behaviour_get_nth_actor()
12653 * clutter/clutter-stage.c: (clutter_stage_realize):
12654 Experimental (disabled) visual setting code.
12656 * clutter/clutter-feature.c:
12657 Check for GL_EXT_texture_rectangle (#198 - Frederick Riss)
12659 * clutter/clutter-group.c: (clutter_group_allocate_coords):
12660 Fix for group size allocation (#199 - Frederick Riss)
12662 * clutter/clutter-texture.c: (texture_upload_data):
12663 Fix texture unpacking row length (#197 Frederick Riss)
12665 * examples/Makefile.am:
12666 Fix LDADD in build (#196 - Frederick Riss)
12668 2007-01-16 Tomas Frydrych <tf@openedhand.com>
12670 * clutter/clutter-fixed.h:
12671 Added integer ClutterAngle type, protype of clutter_angle_sin,
12672 convenience macros clutter_fixed_cos and clutter_angle_cos, plus
12673 other convenience macros for commonly used constants and ops.
12674 * clutter/clutter-fixed.c:
12675 (clutter_fixed_sin):
12676 Fixed to work for negative angles.
12677 (clutter_angle_sin):
12678 Fast fixed point sin function for ClutterAngle angles.
12679 * clutter/clutter-alpha.c:
12680 (clutter_sin_func, clutter_sin_inc_func):
12681 Changed to use clutter_angle_sin function.
12682 * clutter-behavior-path.c:
12683 replaced floating point with fixed point operations
12684 * clutter/clutter-color.c:
12685 * clutter/clutter-color.h:
12686 Added (clutter_color_shadex), replaced floating point operations
12689 2007-01-15 Tomas Frydrych <tf@openedhand.com>
12691 * clutter/clutter-fixed.h: (CLUTTER_FIXED_TO_DOUBLE/FLOAT):
12692 Fixed macro so it works for negative values.
12693 * clutter/clutter-fixed.c: (clutter_fixed_sin):
12694 Implemented fixed point sin function.
12695 * clutter/clutter-alpha.c: (clutter_sin_func, clutter_sin_inc_func):
12696 Pluged in fixed point sin function.
12698 2007-01-07 Matthew Allum <mallum@openedhand.com>
12700 * clutter/clutter-actor.c: (clutter_actor_allocate_coords):
12701 Fix an amazingly not noticed until now typo.
12704 * clutter/clutter-behaviour-opacity.c:
12705 (clutter_behaviour_alpha_notify):
12706 Take into account initial opacity value when calculating from alpha.
12708 * clutter/clutter-group.c:
12709 Add new get_nth_child() and get_n_children() api calls.
12711 2007-01-04 Matthew Allum <mallum@openedhand.com>
12713 * clutter/clutter-actor.c:
12714 * clutter/clutter-actor.h:
12715 Add new set_width/height API calls.
12716 Tweak scaling by reseting matrix.
12717 Make set_opactiy() take parent opacity into account.
12720 * clutter/clutter-alpha.c:
12721 Add more sine functionality.
12723 * clutter/clutter-behaviour-opacity.c:
12724 Dont make a copy of all applied actors but use a foreach()
12726 * clutter/clutter-behaviour-scale.c:
12727 Give correct limits to propertys.
12728 Tweak gravity a little more.
12731 * clutter/clutter-behaviour.c: (clutter_behaviour_remove):
12732 Minor warning text change.
12734 * clutter/clutter-feature.c: (clutter_feature_wait_for_vblank):
12735 Minor dri ioctl tweak.
12737 * clutter/clutter-label.c:
12738 * clutter/clutter-label.h:
12739 Add new label_full api call.
12741 2006-12-27 Emmanuele Bassi <ebassi@openedhand.com>
12743 * clutter/clutter-stage.[ch]:
12744 * clutter/clutter-event.[ch]: Revert changes; this is what
12745 happens when you keep old tree around.
12747 2006-12-27 Emmanuele Bassi <ebassi@openedhand.com>
12749 * clutter/clutter-color.h:
12750 * clutter/clutter-color.c: Add clutter_color_to_string(),
12751 which creates a hex-encoded color string from a ClutterColor.
12753 2006-12-20 Matthew Allum <mallum@openedhand.com>
12756 Add some missing improvements.
12758 2006-12-17 Emmanuele Bassi <ebassi@openedhand.com>
12760 * clutter/clutter-label.c: Remove some gtk-isms; always take
12761 a reference before calling g_object_notify(), as the object
12762 might get disposed while calling the closures inside the
12763 notify queue; notify the changes of the ellipsize property.
12765 2006-12-14 Emmanuele Bassi <ebassi@openedhand.com>
12767 * clutter/clutter-color.h:
12768 * clutter/clutter-color.c: Expose clutter_color_copy()
12769 and clutter_color_free() for the python bindings, so that
12770 they can manager the conversion automatically; use the
12771 slice allocator when copying/freeing a ClutterColor.
12773 2006-12-13 Emmanuele Bassi <ebassi@openedhand.com>
12775 * clutter/clutter-color.h:
12776 * clutter/clutter-color.c: Add clutter_color_equal(),
12777 a function for comparing two colors.
12779 * clutter/clutter-rectangle.c:
12780 (clutter_rectangle_set_color),
12781 (clutter_rectangle_set_border_color): Unset the border if
12782 the color of the rectangle and the color of the border are
12785 2006-12-13 Emmanuele Bassi <ebassi@openedhand.com>
12787 * clutter/clutter-actor.c:
12788 * clutter/clutter-clone-texture.c:
12789 * clutter/clutter-event.h:
12790 * clutter/clutter-stage.c:
12791 * clutter/clutter-texture.c:
12792 * clutter/clutter-timeline.c: Update the inline apidoc.
12794 2006-12-13 Matthew Allum <mallum@openedhand.com>
12796 * clutter/clutter-actor.c: (clutter_actor_class_init):
12797 Allow actor x,y props to be negative.
12799 2006-12-12 Emmanuele Bassi <ebassi@openedhand.com>
12801 Rework part of the show/hide machinery. Allow groups sub-classes
12802 and composite actors to override show_all/hide_all in order to
12803 decide which children they wish to show/hide. This means that
12804 if an actor overrides the default show/hide virtual methods, it'll
12805 have to chain up to the parent class show/hide. While we're at it,
12806 provide the fully recursive clutter_actor_show_all() and
12807 clutter_actor_hide_all() methods.
12809 * clutter/clutter-behaviour-path.c: Add apidoc for the ClutterKnot
12810 functions; add pathological equality case for clutter_knot_equal().
12812 * clutter/clutter-event.h:
12813 * clutter/clutter-feature.h:
12814 * clutter/clutter-behaviour.c:
12815 * clutter/clutter-behaviour-scale.c:Fix parameters name so that
12816 gtk-doc doesn't complain.
12818 * clutter/clutter-actor.c:
12819 * clutter/clutter-event.c: Add apidoc
12821 * clutter/clutter-actor.h:
12822 * clutter/clutter-actor.c: Add a clutter_actor_show_all() and a
12823 clutter_actor_hide_all() functions; provide a mechanism for
12824 groups and composited actors to programmatically select what to
12825 show/hide when clutter_actor_show_all() and clutter_actor_hide_all()
12826 are called. If you are overriding the ClutterActor::show or
12827 the ClutterActor::hide virtual methods you should chain up with
12830 * clutter/clutter-group.c: Override show_all and hide_all and
12831 recursively show/hide every child inside the group;
12832 clutter_group_show_all() and clutter_group_hide_all() remain as non
12833 recursive versions of clutter_actor_show_all() and
12834 clutter_actor_hide_all() (maybe we should rename them in order
12835 to avoid name clashes with the bindings).
12837 * clutter/clutter-stage.c:
12838 * clutter/clutter-texture.c: Chain up with parent class show
12841 * clutter/clutter-clone-texture.h:
12842 * clutter/clutter-clone-texture.c: Provide API for changing the
12843 parent texture of a clone texture actor.
12845 * examples/behave.c:
12846 * examples/super-oh.c:
12847 * examples/test.c: Use clutter_actor_show_all() instead of
12848 clutter_group_show_all().
12850 2006-12-08 Matthew Allum <mallum@openedhand.com>
12853 Put release date in correct format.
12855 2006-12-08 Emmanuele Bassi <ebassi@openedhand.com>
12857 * clutter/clutter-behaviour.h: Add a function prototype
12858 for the foreach function: we need something more specific
12859 than GFunc; add clutter_behaviour_get_actors(), used to
12860 get a list of the actors.
12862 * clutter/clutter-behaviour.c: Add debugging notes; add
12863 a warning for behaviour implementations missing the
12864 alpha_notify vfunc; add api documentation
12866 * clutter/clutter-behaviour-opacity.c:
12867 * clutter/clutter-behaviour-path.c:
12868 * clutter/clutter-behaviour-scale.c: Reimplement the
12869 alpha_notify functions using the new foreach function
12870 and, where possible, by directly iterating on the
12871 actors: this shaves off the number of recalculations
12872 of the property/alpha values, and the number of
12875 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
12877 * clutter/clutter-rectangle.c: Forgot to set the
12880 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
12882 * behave.c: Add test for clutter_color_parse().
12884 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
12886 * clutter/clutter-event.c: Move the apidoc out.
12888 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
12890 * clutter/clutter-color.h:
12891 * clutter/clutter-color.c: Add clutter_color_parse(),
12892 which parses a string containing a color definition as
12893 understood by XParseColor() (or pango_color_parse()).
12895 2006-12-04 Emmanuele Bassi <ebassi@openedhand.com>
12897 Avoid clutter segfaulting when used without invoking
12898 clutter_init(). This is needed when using api documentation
12899 tools and every other tool relying on the GObject
12900 introspection API (esp. on a headless box). see the
12901 note in clutter/clutter-feature.c:clutter_feature_init
12902 for a full explanation.
12904 * clutter/clutter-feature.c: Call clutter_feature_init()
12905 when needed by one of the accessors of the features
12908 * clutter/clutter-main.c:
12909 * clutter/clutter-private.h: Remove clutter_feature_init()
12910 public declaration: the features support check is done the
12911 first time a feature is needed.
12913 * clutter/clutter-main.c: Do not ever access the clutter
12914 main context pointer directly; instead, obtain a pointer
12915 to it via clutter_context_get_default(), which will always
12916 return something valid.
12918 2006-12-04 Emmanuele Bassi <ebassi@openedhand.com>
12920 * clutter/clutter-private.h: Add our own READABLE,
12921 WRITABLE and READWRITE paramspec flags, declaring the
12922 string components of the properties GParamSpec as static;
12923 this should shave off some bytes in the memory footprint
12924 and avoid relocations.
12926 * clutter/clutter-actor.c:
12927 * clutter/clutter-behaviour.c:
12928 * clutter/clutter-behaviour-opacity.c:
12929 * clutter/clutter-behaviour-path.c:
12930 * clutter/clutter-behavuour-scale.c:
12931 * clutter/clutter-clone-texture.c:
12932 * clutter/clutter-label.c:
12933 * clutter/clutter-rectangle.c:
12934 * clutter/clutter-stage.c:
12935 * clutter/clutter-texture.c:
12936 * clutter/clutter-timeline.c: Use the CLUTTER_PARAM_*
12937 macros we just added.
12939 * clutter/clutter-behaviour-scale.c: Add properties for
12940 the scale begin, scale end and gravity parameters.
12942 * clutter/clutter-behaviour-path.h: Mark the ClutterKnot
12943 memory management functions as public (for the bindings),
12944 since we use the slice allocator for copying knots around;
12945 add a clutter_knot_equal() function.
12947 * clutter/clutter-behaviour-path.c:
12948 (node_distance): Use clutter_knot_equal() as a fast path
12949 to avoid the sqrt() in case the nodes we are using are
12950 at the same position.
12951 (path_total_length): Additional check on the existence
12954 * examples/behave.c: Do not leak the ClutterBehaviour
12957 2006-12-03 Emmanuele Bassi <ebassi@openedhand.com>
12959 * clutter/clutter-texture.h: Clean up.
12961 * clutter/clutter-texture.c: Typo fix in the name
12962 of ClutterTextureTileDimension.
12964 * clutter/clutter-behaviour.c: Allow passing NULL
12965 to clutter_behaviour_set_alpha() (as we pass NULL
12966 in the finalize process).
12968 2006-12-02 Emmanuele Bassi <ebassi@openedhand.com>
12970 * clutter/clutter-version.h.in: Fix a stupid logic
12971 error in the CHECK_VERSION macro.
12973 2006-11-30 Matthew Allum <mallum@openedhand.com>
12978 2006-11-30 Emmanuele Bassi <ebassi@openedhand.com>
12980 * clutter/clutter-stage.h:
12981 * clutter/clutter-stage.c:
12982 (clutter_stage_swap_buffers): Remove, as the same is done
12983 via clutter_redraw() and clutter_actor_queue_redraw().
12985 (clutter_stage_unrealize), (clutter_stage_init),
12986 (clutter_stage_set_xwindow_foreign): Do not call
12987 XDestroyWindow() on the stage Window if we are using a
12988 foreign Window, as we don't control its lifetime.
12990 2006-11-30 Emmanuele Bassi <ebassi@openedhand.com>
12992 * Makefile.am: Remove the gtk directory from the SUBDIRS.
12994 * clutter/clutter-stage.h:
12995 * clutter/clutter-stage.c: Add clutter_stage_swap_buffers(),
12996 which swaps the GL buffers. This fixes the redraw in the
12999 2006-11-29 Emmanuele Bassi <ebassi@openedhand.com>
13001 * clutter/clutter-stage.c:
13002 (clutter_stage_set_xwindow_foreign): Add checks;
13003 remove an indirection to the private data.
13005 2006-11-29 Emmanuele Bassi <ebassi@openedhand.com>
13009 * Makfile.am: Remove the GTK+ widget from the
13010 main tree; now Clutter depends just on GLib,
13011 XLibs, GdkPixbuf and OpenGL.
13013 2006-11-29 Matthew Allum <mallum@openedhand.com>
13015 * clutter/clutter-stage.c: (clutter_stage_realize):
13016 Set colormap on stage window - should fix issues
13017 with indirect rendering.
13019 2006-11-23 Matthew Allum <mallum@openedhand.com>
13021 * clutter/clutter-debug.h:
13022 Fix small macro typo.
13024 2006-11-22 Matthew Allum <mallum@openedhand.com>
13026 * clutter/clutter-actor.c:
13027 * clutter/clutter-alpha.c:
13028 * clutter/clutter-behaviour-opacity.c:
13029 * clutter/clutter-behaviour-scale.c:
13030 * clutter/clutter-clone-texture.c:
13031 * clutter/clutter-feature.c:
13032 * clutter/clutter-label.c:
13033 * clutter/clutter-main.c:
13034 * clutter/clutter-stage.c:
13035 * clutter/clutter-texture.c
13036 * clutter/clutter-timeline.c:
13037 * clutter/clutter-debug.h:
13038 Make CLUTTER_NOTE() just take a string rather than a func.
13039 Add more default context to output.
13042 Fix flag and add more help docs for --ebable-debug option.
13044 2006-11-21 Emmanuele Bassi <ebassi@openedhand.com>
13046 * clutter/clutter-main.c: Add a --g-fatal-warnings switch
13047 for abort()-ing on warnings and criticals.
13049 2006-11-21 Emmanuele Bassi <ebassi@openedhand.com>
13051 * configure.ac: Enable debug messages also when
13052 --enable-debug is set to "minimum".
13054 * clutter/Makefile.am:
13055 * clutter/clutter-debug.h: Move all debugging macros inside
13056 this private header; make all debug macros depend on the
13057 CLUTTER_ENABLE_DEBUG compile time define, controlled by
13058 the --enable-debug configure switch; add G_LOG_DOMAIN define.
13060 * clutter/clutter-main.c: Clean up the debug stuff; add
13061 command line argument parsing using GOption; the debug
13062 messages now are triggered like this:
13064 CLUTTER_DEBUG=section:section:... clutter-app
13068 clutter-app --clutter-debug=section:section:...
13070 where "section" is one of the sections listed in clutter-main.c,
13071 or "all", for all sections; each section is bound to a flag,
13072 which can be used to define a domain when adding a debug note
13073 using the CLUTTER_NOTE() macro; the old CLUTTER_DBG() macro is
13074 just a wrapper around that, under the CLUTTER_DEBUG_MISC domain;
13075 CLUTTER_NOTE() is used like this:
13077 CLUTTER_NOTE (DOMAIN, log-function);
13079 where log function is g_printerr(), g_message(), g_warning(),
13080 g_critical() or directly g_log() - for instance:
13082 CLUTTER_NOTE (PANGO, g_warning ("Cache miss: %d", glyph));
13084 will print the warning only if the "pango" flag has been
13085 set to the CLUTTER_DEBUG envvar or passed to the --clutter-debug
13086 command line argument.
13088 similar to CLUTTER_SHOW_FPS, there's also the --clutter-show-fps
13089 command line switch; also, the --display and --screen command
13090 line switches have been added: the first overrides the DISPLAY
13091 envvar and the second controls the X screen used by Clutter to
13092 get the root window on the display.
13094 * clutter/clutter-main.h:
13095 * clutter/clutter-main.c: Add extended support for GOption
13096 in Clutter; use clutter_init_with_args() to let Clutter
13097 parse your own command line arguments; use instead
13098 clutter_get_option_group() to get the GOptionGroup used by
13099 Clutter if you want to do the parsing yourself with
13100 g_option_context_parse(). The init sequence has been verified,
13101 updated and moved into common functions where possible.
13103 * clutter/pango/pangoclutter-render.c:
13104 * clutter/*.c: Include "clutter-debug.h" where needed; use
13105 CLUTTER_NOTE() instead of CLUTTER_DBG().
13107 * examples/super-oh.c: Use the new clutter_init_with_args()
13108 function, and add a --num-hands command line switch to
13109 the SuperOH example code controlling the number of hands at
13112 2006-11-21 Emmanuele Bassi <ebassi@openedhand.com>
13114 * configure.ac: Rename G_ENABLE_DEBUG to CLUTTER_ENABLE_DEBUG.
13116 2006-11-20 Emmanuele Bassi <ebassi@openedhand.com>
13118 * clutter/clutter-rectangle.h:
13119 * clutter/clutter-rectangle.c: Add border to the ClutterRectangle
13120 actor; add "border-width", "border-color" and "has-border"
13121 properties, plus their accessors. The border generation code is
13122 pretty lame, at the moment.
13124 * examples/behave.c: Add code to test the new rectangle properties.
13126 2006-11-20 Matthew Allum <mallum@openedhand.com>
13129 Add an initial DOAP file to project
13131 2006-11-20 Emmanuele Bassi <ebassi@openedhand.com>
13133 * clutter/Makefile.am:
13134 * clutter/clutter.h:
13135 * clutter/clutter-version.h.in: Auto-generated versioning macros.
13137 * clutter/clutter-actor.h:
13138 * clutter/clutter-actor.c: Add a ClutterActor::parent-set signal,
13139 for notificating changes of an actor's parent; add api-doc for
13140 the actor's properties; add the ClutterActor "name" property; clean
13141 up a bit some functions; emit the "parent-set" signal when setting
13142 te parent and when unparenting; better warnings when lowering
13143 and raising an actor.
13146 * clutter/Makefile.am: Add a --enable-debug configure option,
13147 with three levels of debugging: no, minimum and yes; default
13148 for development releases (odd minor version) is "yes"; update
13149 the version m4 defines; update the libtool macros: now just
13150 changed the clutter_interface_age when releasing will update
13153 2006-11-17 Emmanuele Bassi <ebassi@openedhand.com>
13155 * clutter/clutter-behaviour-path.h:
13156 * clutter/clutter-behaviour-path.c: Add "since" strings; add
13157 a "knot" property which can be used to append a knot to the path;
13160 * clutter/clutter-alpha.c: Add "since" strings.
13162 * clutter/clutter-feature.c: Add apidoc.
13164 * clutter/clutter-behaviour-opacity.c: Add the "opacity-start"
13165 and "opacity-end" properties; rewrite constructor to use them.
13167 2006-11-17 Emmanuele Bassi <ebassi@openedhand.com>
13169 * clutter/clutter-behaviour-path.h:
13170 * clutter/clutter-behaviour-path.c: Add a "knot-reached" signal,
13171 which is emitted when the path reaches a node in the nodes list;
13172 flesh out the documentation a bit; sync the parameters names
13173 so that gtk-doc doesn't complain about missing stuff.
13175 * clutter/clutter-behaviour.h:
13176 * clutter/clutter-behaviour.c: Add the alpha value to the
13177 ClutterBehaviour::alpha_notify vfunc, so you don't have to
13178 get the value from the alpha inside the behaviour implementations;
13179 add more documentation.
13181 * clutter/clutter-alpha.c: Flesh out the description.
13183 * clutter/clutter-actor.h: Update the header.
13185 * clutter/clutter-behaviour-opacity.c:
13186 * clutter/clutter-behaviour-scale.c: Update docs.
13188 2006-11-17 Matthew Allum <mallum@openedhand.com>
13190 * clutter/clutter-alpha.c:
13191 * clutter/clutter-behaviour-opacity.c:
13194 * clutter/clutter-behaviour-path.h:
13195 * clutter/clutter-behaviour-path.c:
13196 More docs, add clutter_behaviour_path_insert_knot(),
13197 clutter_behaviour_path_remove_knot()
13199 * clutter/clutter-behaviour-scale.h:
13200 * clutter/clutter-behaviour-scale.c:
13201 More docs, add clutter_behaviour_scale_newx() taking fixed values.
13203 * clutter/Makefile.am:
13204 * clutter/pango/Makefile.am:
13205 Fix linking warning.
13207 2006-11-15 Matthew Allum <mallum@openedhand.com>
13209 * clutter/clutter-actor.h:
13210 * clutter/clutter-actor.c:
13211 Add new API clutter_actor_move_by(), clutter_actor_get_size()
13213 * clutter/clutter-alpha.c:
13214 * clutter/clutter-alpha.h:
13215 Add clutter alpha sine func
13217 * clutter/clutter-behaviours.h:
13218 * clutter/clutter-behaviours.c:
13219 Add a basic scale behaviour (needs work)
13221 * examples/behave.c: (main):
13222 More playing with new behaviour functionality
13224 * clutter/clutter-feature.c:
13225 * clutter/clutter-feature.h:
13226 * clutter/clutter-main.c:
13227 Add new experimental sync to vblank code
13228 Set env CLUTTER_VBLANK=none to disable.
13230 2006-11-16 Emmanuele Bassi <ebassi@openedhand.com>
13232 * clutter/clutter-private.h:
13233 * clutter/clutter-actor.c: Implement the defined
13234 clutter_actor_reparent() method; call unrealize
13235 when unparenting an actor.
13237 2006-11-15 Emmanuele Bassi <ebassi@openedhand.com>
13239 * clutter/clutter-alpha.h:
13240 * clutter/clutter-alpha.c: Add a data parameter to
13241 the ClutterAlphaFunc; add a data+destroy parameter
13242 to clutter_alpha_set_func() and to clutter_alpha_new(),
13243 and turned the latter into clutter_alpha_new_full();
13244 add a simple, empty constructor clutter_alpha_new().
13246 These changes makes writing bindings a tad more easy,
13247 as bindings require passing their own functions in
13248 order to call the real alpha function.
13250 * clutter/clutter-behaviour.h: Clean up the header.
13252 * clutter/clutter-behaviours.[ch]:
13253 * clutter/clutter-behaviour-opacity.[ch]:
13254 * clutter/clutter-behaviour-path.[ch]:
13255 * clutter/clutter-behaviour-scale.[ch]: Split the
13256 ClutterBehaviourPath, ClutterBehaviourOpacity and
13257 ClutterBehaviourScale into their own files as they
13258 have been growing a bit. Fix ClutterBehaviourPath
13261 * clutter/clutter-media.h: Remove the commented
13262 "metadata_available" signal: gtk-doc chokes up on that.
13264 * clutter/clutter-timeline.h:
13265 * clutter/clutter-timeline.c: Remove the useless
13266 ClutterTimelineAlphaFunc signature; add missing accessor
13267 methods for the properties; clean up a bit.
13269 * clutter/clutter-util.h:
13270 * clutter/clutter-util.c: Remove unneeded function
13271 clutter_util_can_create_texture().
13273 * clutter/clutter-feature.h: Sync the name of
13274 clutter_feature_get_all() with the name declared
13275 in clutter-feature.h.
13277 * clutter/Makefile.am:
13278 * clutter/clutter.h: Update.
13280 * examples/behave.c: Update to the new ClutterAlpha
13283 * examples/super-oh.c: Use the right pointer and avoid
13284 the compiler making a fuss about it.
13286 2006-11-15 Matthew Allum <mallum@openedhand.com>
13288 * clutter/clutter-actor.h:
13289 * clutter/clutter-actor.c:
13290 Add new API clutter_actor_move_by(), clutter_actor_get_size()
13292 * clutter/clutter-alpha.c:
13293 * clutter/clutter-alpha.h:
13294 Add clutter alpha sine func
13296 * clutter/clutter-behaviours.h:
13297 * clutter/clutter-behaviours.c:
13298 Add a basic scale behaviour (needs work)
13300 * examples/behave.c: (main):
13301 More playing with new behaviour functionality
13303 * clutter/clutter-feature.c:
13304 * clutter/clutter-feature.h:
13305 * clutter/clutter-main.c:
13306 Add new experimental sync to vblank code
13307 Set env CLUTTER_VBLANK=none to disable.
13309 2006-11-15 Emmanuele Bassi <ebassi@openedhand.com>
13311 * clutter/clutter-alpha.h:
13312 * clutter/clutter-alpha.c: ClutterAlpha is an initially
13313 floating object, as it makes sense only when bound to
13314 a ClutterBehaviour; add checks for public API.
13316 * clutter/clutter-behaviour.h:
13317 * clutter/clutter-behaviour.c: Remove the ClutterBehaviour
13318 constructor: ClutterBehaviour is an abstract class which
13319 must be implemented by subclassing; add checks for public
13320 API; unref the actors on finalize; sink the ClutterAlpha
13323 * clutter/clutter-behaviours.h: ClutterKnot is a boxed
13324 type: add the _get_type() function declaration and the
13327 2006-10-23 Matthew Allum <mallum@openedhand.com>
13329 * clutter/clutter-alpha.h:
13330 * clutter/clutter-behaviour.c:
13331 * clutter/clutter-behaviour.h:
13332 * clutter/clutter-behaviours.c:
13333 * clutter/clutter-behaviours.h:
13334 * examples/behave.c:
13335 Behaviours now only 'driven' by ClutterAlpha, not any object/prop.
13336 Add simple Clutter path behaviour.
13338 2006-10-03 Matthew Allum <mallum@openedhand.com>
13341 * clutter/Makefile.am:
13342 * clutter/clutter-actor.c:
13343 * clutter/clutter-label.c:
13344 * clutter/clutter-label.h:
13345 * clutter/pango/Makefile.am:
13346 * clutter/pango/pangoclutter-font.c:
13347 * clutter/pango/pangoclutter-fontmap.c:
13348 * clutter/pango/pangoclutter-private.h:
13349 * clutter/pango/pangoclutter-render.c:
13350 * clutter/pango/pangoclutter.h:
13351 Add initial rough new pango renderer and clutter-label.
13353 * examples/super-oh.c:
13357 2006-09-20 Matthew Allum <mallum@openedhand.com>
13359 * clutter/clutter-actor.c: (clutter_actor_paint):
13360 * clutter/clutter-clone-texture.c: (clutter_clone_texture_paint):
13361 * clutter/clutter-group.c: (clutter_group_paint):
13362 * clutter/clutter-rectangle.c: (clutter_rectangle_paint):
13363 * clutter/clutter-texture.c: (clutter_texture_paint):
13365 clutter_actor_paint() now translates to actor position as
13366 to not fix scaled groups positioning. Sub classes now paint
13369 2006-09-19 Matthew Allum <mallum@openedhand.com>
13371 * clutter/clutter-actor.c: (redraw_update_idle),
13372 (clutter_actor_queue_redraw):
13373 * clutter/clutter-main.c: (clutter_redraw):
13374 Remove now uneeded locks
13375 ( new gst and texture code makes redundant )
13377 * clutter/clutter-texture.c:
13378 * clutter/clutter-texture.h:
13379 Redo clutter texture as to not keep a reference
13380 to underlying texture.
13382 2006-09-15 Matthew Allum <mallum@openedhand.com>
13384 More fixes from Bastien Nocera (#155):
13386 * clutter/clutter-main.c: (clutter_init):
13387 * clutter/clutter-main.h:
13388 Add an enum for clutter init to return an error code.
13390 Dont check for XInitThreads, there is no need, its part of xlib.
13392 2006-09-14 Matthew Allum <mallum@openedhand.com>
13394 Various fixes from Bastien Nocera:
13396 * clutter/clutter-event.h:
13397 * clutter/clutter-stage.c: (clutter_stage_unrealize),
13398 (clutter_stage_realize), (clutter_stage_request_coords),
13399 (clutter_stage_dispose), (clutter_stage_init):
13400 * clutter/clutter-stage.h:
13401 * gtk/gtk-clutter-test.c: (input_cb), (frame_cb), (main):
13402 * gtk/gtk-clutter.c: (realize):
13405 * clutter/clutter-group.c: (clutter_group_remove):
13406 Remove uneeded ref count (#143)
13408 * examples/super-oh.c: (input_cb):
13409 Handle key release rather than presses (#154)
13412 Add old style X libs check when x11.pc unavailable (#101)
13414 2006-09-01 Matthew Allum <mallum@openedhand.com>
13416 * clutter/Makefile.am:
13417 * clutter/clutter-media.c:
13418 * clutter/clutter-media.h:
13419 * clutter/clutter.h:
13420 Re-add clutter media.
13422 2006-08-31 Matthew Allum <mallum@openedhand.com>
13424 * clutter/clutter-actor.c:
13425 * clutter/clutter-group.c: (clutter_group_paint),
13426 (clutter_group_request_coords), (clutter_group_allocate_coords),
13427 (clutter_group_add):
13428 Fix some group sizing/positioning issues.
13430 2006-08-30 Jorn Baayen <jorn@openedhand.com>
13434 Remove gstreamer deps.
13436 2006-08-30 Jorn Baayen <jorn@openedhand.com>
13439 * clutter/Makefile.am:
13440 * clutter/clutter-audio.c:
13441 * clutter/clutter-audio.h:
13442 * clutter/clutter-main.c: (clutter_init):
13443 * clutter/clutter-media.c:
13444 * clutter/clutter-media.h:
13445 * clutter/clutter-video-texture.c:
13446 * clutter/clutter-video-texture.h:
13447 * clutter/clutter.h:
13449 * examples/Makefile.am:
13451 * examples/video-cube.c:
13452 * examples/video-player.c:
13454 * gst/clutterimagesink.:
13455 * gst/clutterimagesink.c:
13456 * gst/clutterimagesink.h:
13459 Remove gstreamer bits. There live in clutter-gst now.
13461 2006-08-30 Jorn Baayen <jorn@openedhand.com>
13463 * clutter/Makefile.am:
13464 * clutter/clutter-audio.c:
13465 * clutter/clutter-audio.h:
13466 * clutter/clutter.h:
13468 Added ClutterAudio audio playback object.
13470 2006-08-29 Matthew Allum <mallum@openedhand.com>
13472 * clutter/clutter-fixed.h:
13473 Add basic fixed point utility defines and type.
13475 * clutter/Makefile.am:
13476 * clutter/clutter-actor.c:
13477 * clutter/clutter-actor.h:
13478 * clutter/clutter-group.c:
13479 * clutter/clutter-stage.c:
13480 * examples/super-oh.c: (main):
13481 Add scale API and functionality.
13482 Rework group sizing. Now group size requests have no effect
13485 2006-08-29 Jorn Baayen <jorn@openedhand.com>
13487 * clutter/clutter-behaviour.c: (_clutter_behaviour_finalize),
13488 (_clutter_behaviour_set_property),
13489 (_clutter_behaviour_get_property), (clutter_behaviour_class_init),
13490 (clutter_behaviour_init), (clutter_behaviour_apply),
13491 (clutter_behaviour_remove), (clutter_behaviour_remove_all),
13492 (clutter_behaviour_actors_foreach):
13493 * clutter/clutter-behaviour.h:
13494 * clutter/clutter-behaviours.c:
13495 (clutter_behaviour_property_change),
13496 (clutter_behaviour_opacity_dispose),
13497 (clutter_behaviour_opacity_finalize),
13498 (clutter_behaviour_opacity_class_init),
13499 (clutter_behaviour_opacity_init):
13500 * clutter/clutter-behaviours.h:
13501 * clutter/clutter-marshal.list:
13502 * examples/behave.c: (main):
13504 Behaviours track generic GObject properties.
13506 * clutter/clutter-video-texture.h:
13508 Remove signal prototypes - they are already specified in
13511 2006-08-28 Jorn Baayen <jorn@openedhand.com>
13513 * clutter/Makefile.am:
13514 * clutter/clutter-alpha.c:
13515 * clutter/clutter-alpha.h:
13516 * clutter/clutter-behaviours.c:
13517 (clutter_behaviour_opacity_dispose),
13518 (clutter_behaviour_opacity_init),
13519 (clutter_behaviour_opacity_frame_foreach),
13520 (clutter_behaviour_opacity_frame):
13521 * clutter/clutter-behaviours.h:
13522 * clutter/clutter-timeline.c: (clutter_timeline_class_init):
13523 * clutter/clutter-timeline.h:
13524 * clutter/clutter.h:
13525 * examples/behave.c: (main):
13527 Separate alpha calculation into its own class.
13529 * clutter/clutter-behaviour.c: (clutter_behaviour_set_timelime):
13531 Correct NULL check.
13533 2006-08-15 Matthew Allum <mallum@openedhand.com>
13535 * clutter/clutter-behaviour.h:
13536 Behaviours shouldn't subclass timelines.
13538 2006-08-15 Matthew Allum <mallum@openedhand.com>
13540 * clutter/clutter-behaviour.c:
13541 * clutter/clutter-behaviour.h:
13542 * clutter/clutter-behaviours.c:
13543 * clutter/clutter-timeline.c:
13544 * clutter/clutter-timeline.h:
13545 * clutter/clutter.h:
13546 Make basic behaviour infrastructure actually work.
13548 * examples/Makefile.am:
13549 * examples/behave.c:
13550 Add a simple behaviour demo/test
13552 * clutter/clutter-media.c: (clutter_media_set_volume):
13553 Actuall set volume rather than position.. (Fixes #141)
13555 2006-08-14 Matthew Allum <mallum@openedhand.com>
13557 * clutter/Makefile.am:
13558 * clutter/clutter-behaviour.c:
13559 * clutter/clutter-behaviour.h:
13560 * clutter/clutter-behaviours.c:
13561 * clutter/clutter-behaviours.h:
13562 * clutter/clutter-timeline.c:
13563 * clutter/clutter-timeline.h:
13564 Add very initial new behaviour functionality.
13566 * clutter/clutter-stage.c:
13567 * clutter/clutter-main.c:
13568 * clutter/clutter-actor.c:
13569 Improve clipping using stencil test rather than scissor check.
13570 ( Should now handle rotated clips etc ).
13572 * clutter/clutter-group.c: (clutter_group_paint):
13573 Fix typo on position check.
13575 2006-08-07 Matthew Allum <mallum@openedhand.com>
13577 * clutter/clutter-video-texture.c: (lay_pipeline):
13578 Set quality of service prop on fakesink to TRUE.
13580 2006-08-07 Matthew Allum <mallum@openedhand.com>
13582 * clutter/clutter-actor.c: (clutter_actor_paint):
13583 Remove relic from old stage behaviour - dont unref
13586 2006-07-27 Emmanuele Bassi <ebassi@openedhand.com>
13588 * clutter/clutter-feature.c: No need to call clutter_feature_init()
13589 each time: it's private and should never be seen from the outside;
13590 add a warning, just in case something screws up and calls it more
13593 2006-07-27 Emmanuele Bassi <ebassi@openedhand.com>
13595 * clutter/clutter-private.h: Move clutter_feature_init()
13596 declaration here: you shouldn't even need to initialise
13599 * clutter/clutter-feature.c: call clutter_feature_init()
13600 each time you try to access the feature list; add a static
13601 lock around the feature flags container; add api documentation.
13603 * clutter/clutter-feature.h: Add a type for the feature flags
13604 to make bindings happy.
13606 2006-07-24 Matthew Allum <mallum@openedhand.com>
13608 * clutter/Makefile.am:
13609 * clutter/clutter-feature.c:
13610 * clutter/clutter-feature.h:
13612 Add new funcs for checking for available runtime GL
13615 * clutter/clutter-clone-texture.c:
13616 * clutter/clutter-texture.c:
13618 Add support for non power of two textures
13619 if GL_TEXTURE_RECTANGLE_ARB extension available ( at runtime ).
13620 Should lower texture memory needs a little.
13622 2006-07-17 Emmanuele Bassi <ebassi@openedhand.com>
13624 * clutter/clutter-stage.c (clutter_stage_get_default): Fix
13627 2006-07-15 Emmanuele Bassi <ebassi@openedhand.com>
13629 * clutter/clutter-main.c:
13631 (clutter_main): Destroy the main stage, instead of unreffing it.
13633 (clutter_init): Ref and sink the main stage, as it is a top
13636 * clutter/clutter-stage.c (clutter_stage_unrealize): Access
13637 the Window private member directly, instead of calling the
13638 get_xwindow method.
13640 * examples/test.c (main): Quit on button press.
13642 2006-07-09 Emmanuele Bassi <ebassi@openedhand.com>
13644 * clutter/clutter-event.h: Change the name of the
13645 ClutterEvent union members to something a little shorter.
13647 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
13649 * configure.ac: Remove the python stuff, now that the bindings
13652 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
13654 * configure.ac: Mark this as 0.1.1, and change the version info
13657 * clutter/clutter-actor.c:
13658 * clutter/clutter-group.c: Fix documentation.
13660 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
13662 * clutter/clutter-actor.h:
13663 * clutter/clutter-actor.c:
13665 (clutter_actor_class_init), (clutter_actor_set_property),
13666 (clutter_actor_get_property): Add the "clip" and "has-clip"
13669 (clutter_actor_set_clip), (clutter_actor_remove_clip): Emit
13670 the notification for the changed properties.
13672 (clutter_actor_has_clip): Simple accessor to the "has-clip"
13675 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
13677 Big rework of the actor management semantics: now ClutterActor
13678 objects behave like GtkObjects - that is they have an initial
13679 "floating" reference that gets "sunk" when they are added to
13680 a ClutterGroup. This makes a group responsible of de-allocating
13681 each actor inside it, so you just have to destroy the group to
13682 get every child actor destroyed. Also, now you can do:
13684 clutter_group_add (group, clutter_video_texture_new ());
13686 without having to care about reference counting and explicit
13689 * clutter/clutter-private.h: Add private flags setter and
13692 * clutter/clutter-actor.h:
13693 * clutter/clutter-actor.c: Clean up; inherit from GInitiallyUnowned;
13694 add a "visible" property; add the "destroy", "show" and "hide"
13695 signals to ClutterActorClass.
13697 (clutter_actor_show), (clutter_actor_hide): Refactor a bit; emit
13698 the "show" and "hide" signals.
13700 (clutter_actor_set_property), (clutter_actor_get_property),
13701 (clutter_actor_class_init): Implement the "visible" property; add
13704 (clutter_actor_finalize): Do not leak the actor's name, if it is
13707 (clutter_actor_dispose): Emit the "destroy" signal here.
13709 (clutter_actor_init): Sink the initial floating flag if needed.
13711 (clutter_actor_destroy): Add a function to explicitely destroy
13714 (clutter_actor_set_parent), (clutter_actor_get_parent),
13715 (clutter_actor_unparent): Make set_parent require a valid parent;
13716 add unparent; check on get_parent; ref_sink the actor when
13717 setting its parent and unref it when unsetting it. Probably we'll
13718 need a function that does reparenting as unparent+set_parent in
13721 * clutter/clutter-group.h:
13722 * clutter/clutter-group.c (clutter_group_dispose),
13723 (clutter_group_finalize), (clutter_group_add),
13724 (clutter_group_remove): Make the group destroy its children when
13725 disposing it; clean up, and use the newly-available
13726 clutter_actor_unparent().
13728 * clutter/clutter-stage.h:
13729 * clutter/clutter-stage.c (clutter_stage_init): ClutterStage is
13730 a top-level actor; clean up.
13732 * clutter/clutter-video-texture.h:
13733 * clutter/clutter-video-texture.c: Clean up.
13735 * examples/super-oh.c:
13737 * examples/video-player.c:
13738 * examples/test-text.c:
13739 * examples/video-cube.c: Remove the g_object_unref() call, as the
13740 ClutterStage object is destroyed on clutter_main_quit().
13742 2006-06-23 Matthew Allum <mallum@openedhand.com>
13744 * examples/super-oh.c:
13745 Remove random stage unref fixing trails. Fixes #98
13747 2006-06-23 Matthew Allum <mallum@openedhand.com>
13749 * examples/video-player.c: (size_change):
13750 cast stage height to gint avoiding wierdness for when
13751 video height greater than half display height. Fixed #99
13753 2006-06-23 Matthew Allum <mallum@openedhand.com>
13755 * clutter/clutter-video-texture.c: (clutter_video_texture_new):
13756 Small fix for video playback on Big Endian. See #97
13758 2006-06-23 Iain Holmes <iain@openedhand.com>
13760 * clutter/clutter-texture.h: Add space :) Sorry.
13762 2006-06-23 Iain Holmes <iain@openedhand.com>
13764 * clutter/clutter-label.h:
13765 * clutter/clutter-group.h:
13766 * clutter/clutter-rectangle.h:
13767 * clutter/clutter-video-texture.h:
13768 * clutter/clutter-event.h:
13769 * clutter/clutter-texture.h: Fix the header layout so that C# parser
13770 can understand everything.
13772 2006-06-23 Ross Burton <ross@openedhand.com>
13776 Remove references to bindings/, it's moved.
13778 2006-06-23 Emmanuele Bassi <ebassi@openedhand.com>
13780 * clutter/clutter-group.c
13781 (clutter_group_get_children): Mention that you must free
13782 the returned list otherwise you'll leak stuff all around.
13784 2006-06-23 Ross Burton <ross@openedhand.com>
13786 * examples/super-oh.c:
13787 Fix build with trails enabled. Still crashes.
13789 2006-06-23 Ross Burton <ross@openedhand.com>
13792 Disable static libraries.
13794 2006-06-22 Matthew Allum <mallum@openedhand.com>
13797 Make OpeneHand link
13799 2006-06-22 Matthew Allum <mallum@openedhand.com>
13802 Add Pango ref, authors info.
13804 ========== 2006-06-22 0.1 Release =====================
13806 2006-06-22 Matthew Allum <mallum@openedhand.com>
13810 Correct Bugzilla link. Add debs link
13811 Bump up version to 0.1 !
13813 2006-06-22 Matthew Allum <mallum@openedhand.com>
13816 Add an entry for 0.1 release
13821 2006-06-22 Iain Holmes <iain@openedhand.com>
13823 * clutter/clutter-main.c: Guess what...more docs
13825 2006-06-22 Iain Holmes <iain@openedhand.com>
13827 * clutter/clutter-event.c: Add docs
13829 2006-06-22 Iain Holmes <iain@openedhand.com>
13831 * clutter/clutter-media.c: Add docs
13833 2006-06-22 Iain Holmes <iain@openedhand.com>
13835 * clutter/clutter-texture.c: Fix typos.
13837 * clutter/clutter-timeline.c: Fix typos.
13839 2006-06-22 Iain Holmes <iain@openedhand.com>
13841 * clutter/clutter-video-texture.c: Docs.
13843 2006-06-22 Iain Holmes <iain@openedhand.com>
13845 * clutter/clutter-group.c: More typo fixes
13847 * clutter/clutter-event.c: Documentation
13849 2006-06-22 Emmanuele Bassi <ebassi@openedhand.com>
13851 * clutter/clutter-timeline.h:
13852 * clutter/clutter-timeline.c: Add a "started" and a "paused"
13853 signals; add more sanity checks on the public functions.
13855 (clutter_timeline_get_loop): Add a getter function for the
13858 * clutter/clutter-marshal.list: Add marshallers.
13860 * clutter/clutter-timeline.h:
13861 * clutter/clutter-actor.h: Add padding for future expansion
13862 without breaking ABI.
13864 2006-06-22 Iain Holmes <iain@openedhand.com>
13866 * clutter/clutter-actor.c: Fix some typos in the docs.
13868 2006-06-22 Iain Holmes <iain@openedhand.com>
13870 * clutter/clutter-util.c: And more
13872 2006-06-22 Ross Burton <ross@openedhand.com>
13874 * clutter/clutter-label.c:
13875 * clutter/clutter-video-texture.c:
13876 * clutter/clutter-texture.c:
13877 * clutter/clutter-timeline.c:
13878 * clutter/clutter-group.c:
13879 Fix gtk-doc problems.
13881 2006-06-22 Iain Holmes <iain@openedhand.com>
13883 * clutter/clutter-main.c: More documentation
13885 2006-06-22 Matthew Allum <mallum@openedhand.com>
13887 * clutter/clutter-main.h:
13888 Remove bogus xvisual call.
13890 2006-06-22 Matthew Allum <mallum@openedhand.com>
13892 * clutter/clutter-actor.c:
13893 * clutter/clutter-actor.h:
13894 Remove mirroring related calls ( unimplemented )
13895 * gtk/gtk-clutter-test.c: 0 -> NULL
13897 2006-06-22 Iain Holmes <iain@openedhand.com>
13899 * clutter/clutter-actor.c:
13900 * clutter/clutter-stage.c:
13901 * gtk/gtk-clutter.c: More docs
13903 2006-06-22 Iain Holmes <iain@openedhand.com>
13905 * clutter/clutter-actor.c: Added some more docs.
13907 2006-06-22 Matthew Allum <mallum@openedhand.com>
13909 * clutter/clutter-actor.c:
13910 * clutter/clutter-clone-texture.c:
13911 * clutter/clutter-color.c:
13912 * clutter/clutter-event.c:
13913 * clutter/clutter-group.c:
13914 * clutter/clutter-label.c:
13915 * clutter/clutter-main.c:
13916 * clutter/clutter-media.c:
13917 * clutter/clutter-rectangle.c:
13918 * clutter/clutter-stage.c:
13919 * clutter/clutter-texture.c:
13920 * clutter/clutter-timeline.c:
13921 * clutter/clutter-util.c:
13922 * clutter/clutter-video-texture.c:
13924 Documentation updates - add section headers.
13926 2006-06-22 Iain Holmes <iain@openedhand.com>
13928 * gtk/gtk-clutter-test.c (main): Don't show the stage.
13930 2006-06-22 Iain Holmes <iain@openedhand.com>
13932 * gtk/gtk-clutter.[ch]: Rewrite to use
13933 clutter_stage_set_xwindow_foreign rather than GtkSocket.
13935 * gtk/gtk-clutter-test.c: Add fading!1!!!!11! OMGWTFBBQ!!!
13937 2006-06-21 Emmanuele Bassi <ebassi@openedhand.com>
13939 * examples/video-cube.c (main): Quit on key press.
13941 2006-06-21 Emmanuele Bassi <ebassi@openedhand.com>
13943 * clutter/Makefile.am: Re-fix distcheck after last commit.
13945 2006-06-21 Matthew Allum <mallum@openedhand.com>
13947 * clutter/Makefile.am:
13948 Make sure clutter.h included.
13949 * clutter/clutter-stage.c: (clutter_stage_realize),
13950 (clutter_stage_get_actor_at_pos):
13951 Select for motion events on X window.
13952 Return highest rather than lowest found actor for actor_at_pos.
13953 * examples/Makefile.am:
13954 Remove test-text, remane test video.
13956 Add info about the included examples.
13957 * examples/test-video.c:
13958 * examples/video-player.c:
13959 Redo test-video a little nicer and rename.
13960 * examples/video-cube.c:
13961 Fix so it at least 'works' again.
13965 2006-06-21 Ross Burton <ross@openedhand.com>
13969 Add gtk widget to distcheck and fix.
13971 2006-06-21 Emmanuele Bassi <ebassi@openedhand.com>
13973 * clutter/Makefile.am:
13974 * bindings/python/Makefile.am:
13975 * Makefile.am: Fix distcheck
13977 2006-06-21 Ross Burton <ross@openedhand.com>
13979 * clutter/Makefile.am:
13980 * examples/Makefile.am:
13983 2006-06-20 Matthew Allum <mallum@openedhand.com>
13987 * clutter/clutter-group.c:
13988 Attempt better group sizing code.
13989 * clutter/clutter-label.c:
13991 * clutter/clutter-texture.c:
13992 More debug info, make sure texture is realised for base_size()
13993 * clutter/clutter-video-texture.c:
13995 * examples/test.c: (main):
13996 Populate with more randomness.
13998 2006-06-15 Matthew Allum <mallum@openedhand.com>
14000 * clutter/clutter-stage.c:
14001 * clutter/clutter-stage.h:
14002 Add clutter_stage_set_xwindow_foreign() call
14003 * clutter/clutter-util.c:
14004 * clutter/clutter-util.h:
14005 Add some X error traps
14006 * examples/super-oh.c:
14007 Toy with us of new clutter_stage_set_xwindow_foreign() for
14008 optional screensaver functionality.
14010 2006-06-14 Matthew Allum <mallum@openedhand.com>
14013 Add checks for GL/gl.h and GL/glx.h
14015 2006-06-14 Matthew Allum <mallum@openedhand.com>
14022 2006-06-13 Matthew Allum <mallum@openedhand.com>
14024 * clutter/clutter-video-texture.c:
14025 Add missing license.
14027 2006-06-13 Matthew Allum <mallum@openedhand.com>
14029 * clutter/Makefile.am:
14030 * clutter/clutter-actor.c:
14031 * clutter/clutter-actor.h:
14032 * clutter/clutter-clone-texture.c:
14033 * clutter/clutter-clone-texture.h:
14034 * clutter/clutter-element.c:
14035 * clutter/clutter-element.h:
14036 * clutter/clutter-group.c:
14037 * clutter/clutter-group.h:
14038 * clutter/clutter-label.c:
14039 * clutter/clutter-label.h:
14040 * clutter/clutter-main.c:
14041 * clutter/clutter-main.h:
14042 * clutter/clutter-rectangle.c:
14043 * clutter/clutter-rectangle.h:
14044 * clutter/clutter-stage.c:
14045 * clutter/clutter-stage.h:
14046 * clutter/clutter-texture.c:
14047 * clutter/clutter-texture.h:
14048 * clutter/clutter-video-texture.c:
14049 * clutter/clutter-video-texture.h:
14050 * clutter/clutter.h:
14051 * examples/super-oh.c:
14052 * examples/test-text.c:
14053 * examples/test-video.c:
14055 * examples/video-cube.c:
14056 * gtk/gtk-clutter-test.c:
14057 * gtk/gtk-clutter.c:
14058 * gtk/gtk-clutter.h:
14059 Element to Actor Renaming.
14061 2006-06-12 Matthew Allum <mallum@openedhand.com>
14063 * clutter/Makefile.am:
14064 * clutter/clutter-media.c:
14065 * clutter/clutter-media.h:
14066 * clutter/clutter-video-texture.c:
14067 * clutter/clutter-video-texture.h:
14068 * clutter/clutter.h:
14069 * examples/test-video.c: (main):
14070 * examples/video-cube.c: (main):
14071 Add new 'media' interface.
14072 Drop Totem based video playback code replace with newly
14073 rewritten supper Jorn based code. Clutter is now fully LGPL.
14075 * clutter/clutter-texture.c: (tile_dimension):
14076 Remove uneeded overlap code.
14078 2006-06-08 Iain Holmes <iain@openedhand.com>
14080 * clutter/clutter-texture.c:
14081 Opps, undo change I didn't mean to commit
14083 2006-06-08 Iain Holmes <iain@openedhand.com>
14086 Add gdk-pixbuf-xlib cflags/libs to clutter libs
14087 Build the gtk-clutter.pc file.
14090 Add the gdk-pixbuf-xlib depends.
14092 * gtk/gtk-clutter.pc.in:
14093 pkg-config stuff for gtk-clutter
14096 Install gtk-clutter.pc
14098 2006-06-08 Matthew Allum <mallum@openedhand.com>
14100 * clutter/clutter-main.c:
14101 * clutter/clutter-private.h:
14102 * clutter/clutter-stage.c:
14103 Rework and fix offscreen rendering, also rejig GLX
14104 context handling, moving mostly into stage.
14105 Require at least OpenGL 1.2 ( CLAMP_TO_EDGE )
14107 * clutter/clutter-texture.c:
14108 Explicity set props on _init() as to avoid nasty can_create
14109 bug failing miserably in certain situations.
14110 Switch to CLAMP_TO_EDGE for textures to avoid tile seams.
14111 Add some more GL error checks.
14113 * clutter/clutter-label.c:
14117 Require gdk-pixbuf-xlib-2.0
14119 2006-06-06 Matthew Allum <mallum@openedhand.com>
14122 Use pkg-config to check for X. Really Check for GL libs.
14123 Make gtk binding optional. Cleanup a little.
14127 Make gtk binding optional
14129 * clutter/clutter-element.c:
14130 Cleanup a little, notify on size change.
14132 * clutter/clutter-texture.c:
14133 Lots of cleanups. Add waste prop. Add filter quality prop.
14135 * clutter/clutter-clone-texture.c:
14136 Make object construction simpler to work better with bindings.
14138 * clutter/clutter-stage.c:
14139 * clutter/clutter-timeline.c:
14140 Minor reformating, cleanups.
14142 * examples/test-text.c: (main):
14143 Random experimentation
14145 2006-06-06 Iain Holmes <iain@openedhand.com>
14147 * gtk/gtk-clutter.c (size_request): Take the size of the widget from
14149 (gtk_clutter_class_init): Hook up size-request
14151 2006-06-06 Iain Holmes <iain@openedhand.com>
14153 * gtk/: Add a gtk widget for clutter.
14155 * configure.ac: Add GTK checks
14157 * Makefile.am: Go into gtk/
14159 2006-06-05 Matthew Allum <mallum@openedhand.com>
14161 * clutter/clutter-group.c: (clutter_group_remove):
14164 2006-06-05 Matthew Allum <mallum@openedhand.com>
14166 * clutter/clutter-event.h:
14167 Remove send_event field. Clutter shouldn't need it.
14169 * clutter/clutter-main.c: (clutter_dispatch_x_event):
14170 Dont malloc a new clutter event for each xevent.
14172 * clutter/clutter-stage.h:
14173 * clutter/clutter-stage.c: (clutter_stage_class_init),
14174 (clutter_stage_get_default):
14175 Dont ref stage from clutter_stage_get_default.
14177 * examples/super-oh.c: (main):
14178 Remove some now uneeded debug g_prints
14180 2006-06-05 Emmanuele Bassi <ebassi@openedhand.com>
14183 * clutter-color.c: Reimplement ClutterColor as a boxed type;
14184 add convenience API for color handling, like: add, subtract,
14185 shade, HSL color-space conversion, packing and unpacking.
14187 * clutter-private.h: Update ClutterMainContext, and export the
14188 main context pointer here.
14190 * clutter-rectangle.h:
14191 * clutter-rectangle.c: Update the color-related code; make
14192 clutter_rectangle_new() and empty constructor and provide
14193 clutter_rectangle_new_with_color(); provide color setter
14197 * clutter-label.c: Rename the "font" property to "font-name";
14198 update the color-related code to the new ClutterColor object;
14199 rename clutter_label_new() to clutter_label_new_with_text(),
14200 and add setters and getters for the properties.
14202 * clutter-marshal.list: Add VOID:OBJECT and VOID:BOXED marshallers
14206 * clutter-stage.c: Rework the API: provide a default constructor
14207 for a singleton object, named clutter_stage_get_default(), which
14208 supercedes the clutter_stage() function in clutter-main; provide
14209 new events: button-press-event, button-release-event,
14210 key-press-event and key-release-event; update the color-related
14213 (clutter_stage_snapshot): Allow negative width and height when
14214 taking a snapshot (meaning: use full width/height).
14216 (clutter_stage_get_element_at_pos): Rename clutter_stage_pick().
14218 * clutter-element.c (clutter_element_paint): Clean up the
14219 stage and color related code.
14222 * clutter-event.c: Add generic ClutterAnyEvent type; add
14223 clutter_event_new(), clutter_event_copy() and clutter_event_free();
14224 make ClutterEvent a boxed type.
14227 * clutter-main.c: Remove clutter_stage(); add clutter_main_quit(),
14228 for cleanly quitting from clutter_main(); add multiple mainloops
14229 support; allocate the ClutterCntx instead of adding it to the
14230 stack; re-work the ClutterEvent dispatching.
14232 * clutter-group.c (clutter_group_add), (clutter_group_remove): Keep
14233 a reference on the element when added to a ClutterGroup.
14235 * examples/rects.py
14237 * examples/test-text.c:
14238 * examples/video-cube.c:
14239 * examples/super-oh.c:
14240 * examples/test-video.c: Update.
14242 2006-06-04 Matthew Allum <mallum@openedhand.com>
14244 * clutter/clutter-element.c:
14245 * clutter/clutter-group.c:
14246 * clutter/clutter-group.h:
14247 Work more on depth ( Z ) setting with sorting.
14249 * clutter/clutter-main.c: (clutter_redraw):
14250 Experiment with glXWaitVideoSyncSGI. Currently disabled.
14252 2006-06-02 Matthew Allum <mallum@openedhand.com>
14254 * clutter/clutter-element.h:
14255 Add missing _depth() declarations
14257 * clutter/clutter-main.c:
14258 * clutter/clutter-main.h:
14259 * clutter/clutter-private.h:
14260 * clutter/clutter-stage.c:
14261 * clutter/clutter-stage.h:
14262 Rejig GL setup as for stage to support an offscreen property.
14263 Offscreen support is however a little borked.
14265 2006-06-01 Matthew Allum <mallum@openedhand.com>
14267 * clutter/clutter-element.c:
14268 Fix a snafu in clutter_element_raise ()
14270 * clutter/clutter-timeline.c:
14271 * clutter/clutter-timeline.h:
14272 Add new clutter_timeline_is_playing() method
14274 2006-05-29 Matthew Allum <mallum@openedhand.com>
14276 * clutter/clutter-color.c: (clutter_color_set):
14277 Fix bit shifts in clutter color setters.
14279 2006-05-29 Matthew Allum <mallum@openedhand.com>
14281 * clutter/clutter-element.c:
14282 * clutter/clutter-element.h:
14283 Add initial new element depth() getter and setter.
14285 * clutter/clutter-group.c:
14286 * clutter/clutter-group.h:
14287 Add 2 new methods for listing a groups children externally.
14289 2006-05-27 Emmanuele Bassi <ebassi@openedhand.com>
14291 * clutter/clutter-clone-texture.c (set_parent_texture),
14292 (clutter_clone_texture_set_property),
14293 (clutter_clone_texture_get_property),
14294 (clutter_clone_texture_class_init),
14295 (clutter_clone_texture_new): Add a "parent-texture"
14296 constructor-only property to simplify the constructor code.
14298 * clutter/clutter-rectangle.c (clutter_rectangle_new):
14299 * clutter/clutter-timeline.c (clutter_timeline_new): Simplify
14300 the constructor code.
14302 * examples/rect.py: Use the new method names for clutter.main()
14303 and clutter.stage().
14305 2006-05-26 Emmanuele Bassi <ebassi@openedhand.com>
14307 * clutter/clutter-element.c: Fix gtk-doc annotations for public
14308 functions; add sanity checks for public API; factor out some
14309 pointer dereferences.
14311 2006-05-26 Emmanuele Bassi <ebassi@openedhand.com>
14313 Big entry, small changes.
14315 * clutter/clutter-rectangle.c:
14316 * clutter/clutter-clone-texture.c:
14317 * clutter/clutter-group.c:
14318 * clutter/clutter-element.c:
14319 * clutter/clutter-label.c: Use the GObject built-in definition
14320 of a private data structure; it removes the need for managing
14321 the allocation/de-allocation of a private structure ourselves.
14323 * clutter/clutter-group.h:
14324 * clutter/clutter-label.h: Add padding, for adding signals and
14325 other class-wide definitions without breaking ABI.
14327 * clutter/clutter-element.h:
14328 * clutter/clutter-element.c (clutter_element_box_get_type),
14329 (clutter_element_box_copy): Make ClutterElementBox a GBoxed
14330 type; clean up declarations of the enums and flags.
14332 * clutter/clutter-group.h:
14333 * clutter/clutter-group.c (clutter_group_add_many_valist),
14334 (clutter_group_add_many): Add a _valist version of
14335 clutter_group_add_many() function, and re-implement the latter
14336 as a proxy for the former; language bindings do not cope
14337 well with variable argument functions.
14339 * clutter/clutter-video-texture.h:
14340 * clutter/clutter-video-texture.c: Use the right prefix for
14341 the error and for the ratio enumerations.
14345 * clutter/Makefile.am: Use the <clutter/...> include path
14346 for parallel installations.
14348 * clutter/Makefile.am:
14349 * clutter/clutter-enum-types.h:
14350 * clutter/clutter-enum-types.c: Register the enumeration types
14351 inside the GObject type system in order to use them as properties
14352 and bindings automagically pick them up.
14354 * bindings/python/ChangeLog: Add a changelog for the bindings...
14356 * doc/reference/ChangeLog: ... and a changelog for the reference.
14359 * examples/video-cube.c:
14360 * examples/test-video.c: Use the <clutter/clutter.h> header.
14362 2006-05-25 Matthew Allum <mallum@openedhand.com>
14364 * clutter/clutter-clone-texture.c:
14365 (clone_texture_render_to_gl_quad):
14366 Remove uneeded bogus warning. Fix a typo causing large
14367 texture to get incorrectly rendered.
14368 * clutter/clutter-texture.c: (init_tiles),
14369 (texture_render_to_gl_quad), (clutter_texture_sync_pixbuf),
14370 (clutter_texture_realize):
14371 Add some new debug info.
14372 * clutter/clutter-video-texture.c: (fakesink_handoff_cb):
14373 Set the pixbuf from GST_BUFFER_DATA() a little safer.
14375 2006-05-25 Matthew Allum <mallum@openedhand.com>
14378 Fix prefix snafu via Ross.
14380 2006-05-24 Matthew Allum <mallum@openedhand.com>
14382 * clutter/clutter-element.c: (clutter_element_paint),
14383 (clutter_element_class_init):
14384 * clutter/clutter-label.c: (clutter_label_make_pixbuf):
14385 * clutter/clutter-main.c: (clutter_main):
14386 * clutter/clutter-stage.c: (sync_fullscreen), (sync_gl_viewport):
14387 * clutter/clutter-stage.h:
14388 Various minor tweaks / fixes needed by o.p.t
14389 * clutter/clutter-texture.c: (texture_render_to_gl_quad),
14390 (clutter_texture_sync_pixbuf), (clutter_texture_set_property),
14391 (clutter_texture_get_property), (clutter_texture_class_init):
14392 Experiment adding currently borked repreating textures,
14393 * clutter/clutter-timeline.c: (timeline_timeout_func),
14394 (clutter_timeline_skip):
14395 Fix timeline callback frame counting.
14396 * examples/test-video.c: (main):
14397 Experiment with repeated textures.
14399 2006-05-23 Matthew Allum <mallum@openedhand.com>
14401 * clutter/clutter-clone-texture.h:
14403 * clutter/clutter-element.c: (clutter_element_set_parent):
14404 Only unref if parent non NULL
14405 * clutter/clutter-label.c: (clutter_label_class_init),
14406 (clutter_label_set_text), (clutter_label_set_font):
14407 * clutter/clutter-stage.h:
14408 Add some utility defines
14409 * clutter/clutter-texture.c: (init_tiles):
14410 * clutter/clutter-timeline.c: (clutter_timeline_class_init),
14411 (timeline_timeout_func), (clutter_timeline_get_current_frame):
14412 * clutter/clutter-timeline.h:
14413 Add a 'completed' signal
14414 Dont free priv when g_type_class_private used.
14415 * clutter/clutter.h:
14416 Add missing clutter-rectangle.h
14417 * examples/Makefile.am:
14418 * examples/super-oh.c: (main):
14420 * examples/video-cube.c:
14423 2006-05-22 Matthew Allum <mallum@openedhand.com>
14425 * clutter/clutter-element.c:
14426 * clutter/clutter-element.h:
14427 * clutter/clutter-event.c:
14428 * clutter/clutter-group.c: (clutter_group_remove_all):
14429 * clutter/clutter-group.h:
14430 * clutter/clutter-main.c: (translate_button_event),
14431 (translate_motion_event):
14432 Improve mouse event handling.
14433 Add code to map arbituary ( i.e cursor ) position to
14434 a clutter element using OpenGL 'picking'.
14435 * clutter/clutter-texture.c:
14436 * clutter/clutter-clone-texture.c:
14437 re-realize parent texture if it gets hidden.
14438 * clutter/clutter-stage.c:
14439 * clutter/clutter-stage.h:
14440 Make sure stage sets gl viewport up even if just default size.
14441 (clutter_texture_hide), (clutter_texture_paint):
14442 * doc/reference/Makefile.am:
14443 * examples/super-oh.c: (input_cb), (frame_cb), (main):
14444 Add test for mouse events, click to remove.
14446 2006-05-21 Matthew Allum <mallum@openedhand.com>
14448 * clutter/clutter-element.c:
14449 * clutter/clutter-element.h:
14450 Add new core sizing methods and more documentation.
14451 * clutter/clutter-group.c:
14452 * clutter/clutter-group.h:
14453 Use the sizing bits and documentation.
14454 * clutter/clutter-main.c:
14455 * clutter/clutter-event.h:
14456 Add FPS display when CLUTTER_SHOW_FPS env var set.
14457 Add initial support for mouse events.
14458 * clutter/clutter-stage.c:
14459 Add 'snapshot' method.
14460 * clutter/clutter-texture.c: (clutter_texture_new_from_pixbuf):
14461 * clutter/clutter-texture.h:
14463 * clutter/clutter-timeline.c:
14464 Add support for changing FPS setting on the fly. Document.
14465 * examples/super-oh.c: (frame_cb), (main):
14466 Add an optional motion trails effect.
14468 2006-05-17 Matthew Allum <mallum@openedhand.com>
14471 Add a tiny bit of info
14474 * clutter/clutter-clone-texture.c:
14475 (clone_texture_render_to_gl_quad):
14476 * clutter/clutter-element.c: (clutter_element_show),
14477 (clutter_element_realize), (clutter_element_unrealize),
14478 (clutter_element_paint), (clutter_element_set_id),
14479 (clutter_element_get_id):
14480 * clutter/clutter-element.h:
14481 Rename REALISE() to REALIZE()
14483 * clutter/clutter-texture.c: (texture_render_to_gl_quad),
14484 (clutter_texture_sync_pixbuf), (clutter_texture_set_pixbuf):
14485 * clutter/clutter-video-texture.c: (query_timeout),
14486 (got_video_size), (caps_set), (parse_stream_info),
14487 (handle_element_message), (bus_message_cb),
14488 (poll_for_state_change_full), (clutter_video_texture_get_property),
14489 (clutter_video_texture_class_init), (clutter_video_texture_init),
14490 (clutter_video_texture_open), (clutter_video_texture_seek_time),
14491 (stop_play_pipeline):
14492 * clutter/clutter-video-texture.h:
14493 Move over using fakesink and handoff instead of custom element
14494 Support 3 channel pixbufs as textures and thus increase efficiency
14495 of video texture ( also avoids byte swapping. )
14496 Clean up video texture code somemore.
14497 Add some metadata support.
14501 Disable old custom clutter gst element from build.
14503 * examples/test-video.c: (foo), (size_change), (tick), (main):
14504 * examples/video-cube.c: (clutter_video_texture_cube_paint):
14505 Sink with new API. Pause on key press.
14507 2006-05-13 Matthew Allum <mallum@openedhand.com>
14509 * clutter/clutter-element.c: (redraw_update_idle),
14510 (clutter_element_show), (clutter_element_hide),
14511 (clutter_element_realize), (clutter_element_unrealize),
14512 (clutter_element_class_init), (clutter_element_init),
14513 (clutter_element_queue_redraw), (clutter_element_set_geometry),
14514 (clutter_element_get_geometry), (clutter_element_get_coords),
14515 (clutter_element_set_position), (clutter_element_set_size),
14516 (clutter_element_get_abs_position), (clutter_element_get_width),
14517 (clutter_element_get_height), (clutter_element_get_x),
14518 (clutter_element_get_y), (clutter_element_set_opacity):
14519 * clutter/clutter-texture.c: (clutter_texture_get_base_size),
14520 (clutter_texture_bind_tile), (clutter_texture_get_n_tiles),
14521 (clutter_texture_get_x_tile_detail),
14522 (clutter_texture_get_y_tile_detail):
14523 * doc/reference/Makefile.am:
14524 * doc/reference/clutter.types:
14525 Documentation updates.
14527 2006-05-13 Matthew Allum <mallum@openedhand.com>
14530 Add @MAJORMINOR@ to installed dirs.
14531 * clutter/clutter-main.c: (clutter_xscreen), (clutter_init):
14532 * clutter/clutter-main.h:
14533 * clutter/clutter-private.h:
14534 Quick fix for debug statements so now only appear
14535 if CLUTTER_DBBUG env var set.
14537 2006-05-12 Matthew Allum <mallum@openedhand.com>
14541 * clutter/Makefile.am:
14542 * bindings/python/Makefile.am:
14543 * examples/Makefile.am:
14545 Clean up autofoo a bit fixing versioning.
14546 * bootstrap-autotools.sh:
14547 * clutter-1.0.pc.in:
14550 2006-05-12 Matthew Allum <mallum@openedhand.com>
14552 * bindings/python/Makefile.am:
14553 * bindings/python/clutter.override:
14554 * clutter/Makefile.am:
14555 * clutter/clutter-bin.c:
14556 * clutter/clutter-bin.h:
14557 * clutter/clutter-element.c: (clutter_element_dispose),
14558 (clutter_element_raise), (clutter_element_lower):
14559 * clutter/clutter-group.c:
14560 * clutter/clutter-group.h:
14561 * clutter/clutter-main.c: (clutter_threads_leave):
14562 * clutter/clutter-main.h:
14563 * clutter/clutter-stage.c: (clutter_stage_class_init):
14564 * clutter/clutter-stage.h:
14565 * clutter/clutter.h:
14566 * examples/super-oh.c: (frame_cb), (main):
14567 * examples/test-text.c: (main):
14568 * examples/test-video.c: (main):
14569 * examples/test.c: (main):
14570 * examples/video-cube.c: (main):
14571 Rename clutter-bin to clutter-group
14573 2006-05-11 Matthew Allum <mallum@openedhand.com>
14575 * clutter/clutter-clone-texture.c:
14576 (clone_texture_render_to_gl_quad), (clutter_clone_texture_paint),
14577 (clutter_clone_texture_class_init), (clutter_clone_texture_new):
14579 * clutter/clutter-element.c: (clutter_element_rotate_z),
14580 (clutter_element_rotate_x), (clutter_element_rotate_y):
14582 * examples/Makefile.am:
14583 * examples/super-oh.c:
14584 Add a new demo - unsing rotations and clones.
14586 2006-05-11 Matthew Allum <mallum@openedhand.com>
14588 * bindings/python/Makefile.am:
14589 * bindings/python/clutter-base-types.defs:
14590 * bindings/python/clutter-base.defs:
14591 * bindings/python/clutter.override:
14592 Python goodiness from ebassi.
14593 - Element geometry handled nicely.
14594 - get_coords(), get_abs_position() added.
14596 * clutter/clutter-element.c: (clutter_element_rotate_x),
14597 (clutter_element_rotate_y), (clutter_element_mirror),
14598 * clutter/clutter-element.h:
14599 Add initial rotation API. Make Geometry boxed ( ebassi )
14601 * clutter/clutter-stage.c: (sync_gl_viewport):
14602 Set depth in main world transform.
14604 * clutter/clutter-timeline.h:
14605 Add missing new() api call.
14607 * examples/test.c: (timeout_text_cb), (frame_cb), (main):
14608 Tou with some rotation
14610 2006-05-11 Matthew Allum <mallum@openedhand.com>
14612 reviewed by: <delete if not using a buddy>
14614 * bindings/python/Makefile.am:
14615 * bindings/python/clutter-base-types.defs:
14616 * bindings/python/clutter-base.defs:
14617 * bindings/python/clutter.override:
14618 * clutter/clutter-bin.c: (clutter_bin_paint):
14619 * clutter/clutter-element.c: (clutter_element_paint),
14620 (clutter_element_get_height), (clutter_element_get_x),
14621 (clutter_element_get_y), (clutter_element_set_opacity),
14622 (clutter_element_get_opacity), (clutter_element_set_id),
14623 (clutter_element_get_id), (clutter_element_rotate_x),
14624 (clutter_element_rotate_y), (clutter_element_mirror),
14625 (clutter_element_set_clip), (clutter_element_remove_clip),
14626 (clutter_element_set_parent), (clutter_element_get_parent),
14627 (clutter_element_raise), (clutter_element_lower),
14628 (clutter_element_raise_top), (clutter_element_lower_bottom):
14629 * clutter/clutter-element.h:
14630 * clutter/clutter-main.c: (clutter_redraw):
14631 * clutter/clutter-stage.c: (sync_gl_viewport):
14632 * clutter/clutter-timeline.h:
14633 * examples/test.c: (timeout_text_cb), (frame_cb), (main):
14635 2006-05-09 Matthew Allum <mallum@openedhand.com>
14638 * clutter/clutter-bin.c:
14639 * clutter/clutter-bin.h:
14640 * clutter/clutter-clone-texture.c:
14641 * clutter/clutter-clone-texture.h:
14642 * clutter/clutter-color.c:
14643 * clutter/clutter-color.h:
14644 * clutter/clutter-element.c:
14645 * clutter/clutter-element.h:
14646 * clutter/clutter-event.c:
14647 * clutter/clutter-event.h:
14648 * clutter/clutter-keysyms.h:
14649 * clutter/clutter-label.c:
14650 * clutter/clutter-label.h:
14651 * clutter/clutter-main.c:
14652 * clutter/clutter-main.h:
14653 * clutter/clutter-private.h:
14654 * clutter/clutter-rectangle.c:
14655 * clutter/clutter-rectangle.h:
14656 * clutter/clutter-stage.c:
14657 * clutter/clutter-stage.h:
14658 * clutter/clutter-texture.c:
14659 * clutter/clutter-texture.h:
14660 * clutter/clutter-timeline.c:
14661 * clutter/clutter-timeline.h:
14662 * clutter/clutter-util.c:
14663 * clutter/clutter-util.h:
14666 2006-05-08 Matthew Allum <mallum@openedhand.com>
14668 * clutter/Makefile.am:
14669 * clutter/clutter-event.c:
14670 * clutter/clutter-event.h:
14671 * clutter/clutter-keysyms.h:
14672 * clutter/clutter-main.c: (clutter_dispatch_x_event):
14673 * clutter/clutter-stage.c: (clutter_stage_class_init):
14674 * clutter/clutter-stage.h:
14675 * clutter/clutter.h:
14676 * bindings/python/Makefile.am:
14677 * bindings/python/clutter.override:
14678 Add basic input event handling. Keys only atm.
14680 2006-05-08 Matthew Allum <mallum@openedhand.com>
14684 * bindings/python/Makefile.am:
14685 * bindings/python/clutter.override:
14686 Fix up so pixbufs now work ( thanks ebassi! )
14687 Add some missing newer headers.
14688 * clutter/clutter-main.h:
14689 Remove unused clutter_queue_redraw();
14691 2006-05-07 Matthew Allum <mallum@openedhand.com>
14693 * clutter/clutter-element.c: (clutter_element_class_init),
14694 (clutter_element_init), (clutter_element_queue_redraw),
14695 (clutter_element_set_geometry), (clutter_element_get_geometry),
14696 (clutter_element_get_coords), (clutter_element_set_position),
14697 (clutter_element_set_size), (clutter_element_get_abs_position),
14698 (clutter_element_get_width), (clutter_element_get_height),
14699 (clutter_element_get_x), (clutter_element_get_y),
14700 (clutter_element_set_opacity):
14701 * clutter/clutter-main.c: (clutter_dispatch_x_event):
14702 * clutter/clutter-main.h:
14703 * clutter/clutter-private.h:
14704 * clutter/clutter-stage.c: (clutter_stage_set_color):
14705 * clutter/clutter-texture.c: (clutter_texture_set_pixbuf):
14706 Rename clutter_queue_redraw -> clutter_element_queue_redraw
14708 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
14709 (clutter_label_set_property), (clutter_label_set_text_extents):
14710 * clutter/clutter-label.h:
14713 * examples/Makefile.am:
14714 * examples/test-text.c:
14715 Add sime test text example.
14717 2006-05-07 Matthew Allum <mallum@openedhand.com>
14719 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
14720 (clutter_label_get_property), (clutter_label_dispose),
14721 (clutter_label_class_init), (clutter_label_init),
14722 (clutter_label_new_with_text), (clutter_label_new),
14723 (clutter_label_set_text), (clutter_label_set_font),
14724 (clutter_label_set_text_extents), (clutter_label_set_fg_color):
14725 * examples/test.c: (main):
14726 Slight efficiency improvements. Add initial extents API.
14728 2006-05-07 Matthew Allum <mallum@openedhand.com>
14732 * clutter/Makefile.am:
14733 * clutter/clutter-clone-texture.c:
14734 * clutter/clutter-clone-texture.h:
14735 Add new texture clone element.
14736 * clutter/clutter-color.c:
14737 * clutter/clutter-color.h:
14738 Add simple color API.
14739 * clutter/clutter-util.c:
14740 * clutter/clutter-util.h:
14741 Move shared texture funcs into shared util code.
14742 * clutter/clutter-texture.c: (can_create), (tile_dimension),
14743 (init_tiles), (texture_render_to_gl_quad),
14744 (clutter_texture_unrealize), (clutter_texture_sync_pixbuf),
14745 (clutter_texture_realize), (clutter_texture_show),
14746 (clutter_texture_hide), (clutter_texture_paint),
14747 (clutter_texture_finalize), (clutter_texture_set_property),
14748 (clutter_texture_get_property), (clutter_texture_class_init),
14749 (clutter_texture_init), (clutter_texture_set_pixbuf),
14750 (clutter_texture_new_from_pixbuf), (clutter_texture_get_base_size),
14751 (clutter_texture_bind_tile):
14752 Changes for clones to work.
14753 * clutter/clutter-element.c: (clutter_element_paint),
14754 (clutter_element_set_property), (clutter_element_get_property),
14755 (clutter_element_set_position), (clutter_element_set_size),
14756 (clutter_element_get_abs_position), (clutter_element_get_width),
14757 (clutter_element_get_height), (clutter_element_get_x),
14758 (clutter_element_get_y), (clutter_element_set_opacity),
14759 (clutter_element_get_opacity), (clutter_element_set_id),
14760 (clutter_element_get_id), (clutter_element_set_clip):
14761 * clutter/clutter-element.h:
14762 Add clipping and other tweaks.
14763 * clutter/clutter-stage.c: (sync_gl_viewport),
14764 (clutter_stage_paint), (clutter_stage_init):
14765 Add psuedo 3D desktop like GL setup.
14766 * clutter/clutter-label.c: (clutter_label_make_pixbuf):
14767 * clutter/clutter-label.h:
14768 * clutter/clutter-main.c: (clutter_redraw):
14769 * clutter/clutter-main.h:
14770 * clutter/clutter-private.h:
14771 * clutter/clutter-rectangle.c: (clutter_rectangle_paint):
14772 * clutter/clutter-stage.h:
14773 * clutter/clutter-texture.h:
14774 * clutter/clutter-timeline.c: (clutter_timeline_class_init):
14775 * clutter/clutter-video-texture.c:
14776 * clutter/clutter.h:
14777 * examples/test-video.c: (foo), (size_change), (tick), (main):
14778 * examples/test.c: (main):
14779 * examples/video-cube.c: (clutter_video_texture_cube_paint),
14780 (clutter_video_texture_cube_class_init),
14781 (clutter_video_texture_cube_init):
14782 Various minor tweaks for API changes, new features etc.
14784 2006-05-03 Matthew Allum <mallum@openedhand.com>
14786 * clutter/clutter-bin.c: (clutter_bin_paint):
14787 * clutter/clutter-bin.h:
14788 * clutter/clutter-element.c: (clutter_element_unrealize),
14789 (clutter_element_paint), (clutter_element_set_property),
14790 (clutter_element_get_property), (clutter_element_dispose),
14791 (clutter_element_finalize), (clutter_element_class_init),
14792 (clutter_element_init), (clutter_element_queue_redraw),
14793 (clutter_element_set_geometry), (clutter_element_get_geometry),
14794 (clutter_element_get_coords), (clutter_element_set_position),
14795 (clutter_element_set_size), (clutter_element_get_abs_position),
14796 (clutter_element_set_opacity), (clutter_element_get_opacity),
14797 (clutter_element_set_clip), (clutter_element_remove_clip),
14798 (clutter_element_set_parent), (clutter_element_get_parent),
14799 (clutter_element_raise), (clutter_element_lower),
14800 (clutter_element_raise_top), (clutter_element_lower_bottom):
14801 * clutter/clutter-element.h:
14802 * clutter/clutter-label.c: (clutter_label_set_fg_color):
14803 * clutter/clutter-rectangle.c: (clutter_rectangle_paint),
14804 (clutter_rectangle_set_property), (clutter_rectangle_init):
14805 * clutter/clutter-stage.c: (sync_xwindow_size):
14806 * clutter/clutter-texture.c: (clutter_texture_paint),
14807 (clutter_texture_set_pixbuf):
14808 Clean up ClutterElement, removing globals, improving sizing
14809 and initial clipping code.
14811 * clutter/clutter.h:
14812 * clutter/clutter-timeline.c: (clutter_timeline_class_init),
14813 (timeline_timeout_func), (clutter_timeline_start),
14814 (clutter_timeline_pause), (clutter_timeline_rewind),
14815 (clutter_timeline_skip), (clutter_timeline_advance),
14816 (clutter_timeline_get_current_frame), (clutter_timeline_new):
14817 * clutter/clutter-timeline.h:
14818 Various fixes to timelines. Implement frame skipping.
14820 * examples/test.c: (timeout_text_cb), (main):
14821 Update to use timeline.
14823 2006-05-02 Matthew Allum <mallum@openedhand.com>
14827 * clutter/clutter-element.h:
14828 * clutter/clutter-rectangle.h:
14829 Minor formatting cleanups
14831 2006-05-02 Matthew Allum <mallum@openedhand.com>
14833 * clutter/Makefile.am:
14834 * clutter/clutter-timeline.c:
14835 * clutter/clutter-timeline.h:
14836 Add initial timeline implementation
14838 2006-05-02 Matthew Allum <mallum@openedhand.com>
14840 * bindings/python/Makefile.am:
14841 * bindings/python/cluttermodule.c: (initclutter):
14842 Fix python build with new -1.0 naming. Use of GdkPixbufs
14843 still causing crashes.
14845 2006-04-30 Matthew Allum <mallum@openedhand.com>
14847 * clutter/clutter-main.c: (events_init), (redraw_update_idle),
14848 (clutter_queue_redraw), (clutter_redraw):
14849 Fix repaint queueing, using idle handler now.
14850 Clean up some minor compiler warnings.
14851 * clutter/clutter-main.h:
14852 * clutter/clutter-texture.c: (clutter_texture_unrealize),
14853 (clutter_texture_set_pixbuf):
14854 Rename gl_lock/unlock to threads_enter/leaver
14856 2006-04-30 Matthew Allum <mallum@openedhand.com>
14859 * clutter-1.0.pc.in:
14860 * clutter/Makefile.am:
14861 * clutter/clutter-bin.h:
14862 * clutter/clutter-label.h:
14863 * clutter/clutter-rectangle.h:
14864 * clutter/clutter-stage.h:
14865 * clutter/clutter-texture.h:
14866 * clutter/clutter-video-texture.h:
14867 * clutter/clutter.h:
14869 * examples/Makefile.am:
14870 Add .pc file, tag -1.0 onto lib, includes dir naming.
14872 2006-04-29 Matthew Allum <mallum@openedhand.com>
14874 * clutter/clutter-main.c: (clutter_dispatch_x_event),
14875 (clutter_queue_redraw), (clutter_redraw):
14876 Simplify paint event queueing. Does not actually queue
14877 anymore (broken), needs wrong to reduce high number of
14880 * clutter/clutter-texture.c: (clutter_texture_set_pixbuf):
14881 Remove visible check which broke paints of resized texture pixmaps.
14883 2006-04-19 Matthew Allum <mallum@openedhand.com>
14885 * clutter/clutter-bin.c: (clutter_bin_paint), (clutter_bin_add):
14886 * clutter/clutter-element.c: (clutter_element_paint):
14887 * clutter/clutter-element.h:
14888 * clutter/clutter-label.c: (clutter_label_set_property),
14889 (clutter_label_get_property), (clutter_label_class_init):
14890 * clutter/clutter-marshal.list:
14891 * clutter/clutter-rectangle.c: (clutter_rectangle_set_property),
14892 (clutter_rectangle_get_property), (clutter_rectangle_class_init):
14893 * clutter/clutter-stage.c: (clutter_stage_dispose),
14894 (clutter_stage_get_property), (clutter_stage_class_init):
14895 * clutter/clutter-texture.c: (clutter_texture_realize),
14896 (clutter_texture_class_init), (clutter_texture_set_pixbuf):
14897 * clutter/clutter-texture.h:
14898 More object cleanups. Add signal to texture size changes.
14899 Fix color props. Adjust element realise flags workings ( broken ).
14900 * examples/test-video.c: (main):
14901 Broken due to realize flag changes.
14903 2006-04-18 Matthew Allum <mallum@openedhand.com>
14905 * clutter/clutter-bin.c: (clutter_bin_get_property),
14906 (clutter_bin_finalize), (clutter_bin_class_init),
14907 (clutter_bin_new), (clutter_bin_show_all), (clutter_bin_hide_all),
14909 * clutter/clutter-bin.h:
14910 * clutter/clutter-element.c: (clutter_element_get_property),
14911 (clutter_element_finalize), (clutter_element_class_init),
14912 (clutter_element_set_parent), (clutter_element_get_parent),
14913 (clutter_element_raise), (clutter_element_lower):
14914 * clutter/clutter-element.h:
14915 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
14916 (clutter_label_get_property), (clutter_label_dispose),
14917 (clutter_label_finalize), (clutter_label_class_init),
14918 (clutter_label_init), (clutter_label_new_with_text),
14919 (clutter_label_new), (clutter_label_set_text),
14920 (clutter_label_set_font), (clutter_label_set_fg_color):
14921 * clutter/clutter-label.h:
14922 * clutter/clutter-rectangle.c: (clutter_rectangle_paint),
14923 (clutter_rectangle_set_property), (clutter_rectangle_get_property),
14924 (clutter_rectangle_finalize), (clutter_rectangle_dispose),
14925 (clutter_rectangle_class_init), (clutter_rectangle_init),
14926 (clutter_rectangle_new):
14927 * clutter/clutter-texture.c: (clutter_texture_paint),
14928 (clutter_texture_dispose), (clutter_texture_finalize),
14929 (clutter_texture_set_property), (clutter_texture_get_property),
14930 (clutter_texture_class_init), (clutter_texture_init),
14931 (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf):
14932 Various GObject usages cleanups, adding properties and
14933 finalize/dispose functions properly.
14935 2006-04-18 Matthew Allum <mallum@openedhand.com>
14937 * bindings/python/Makefile.am:
14938 * bindings/python/clutter.override:
14939 * bindings/python/cluttermodule.c: (initclutter):
14940 * clutter/clutter-label.h:
14941 * clutter/clutter-rectangle.h:
14942 * clutter/clutter-video-texture.h:
14943 More fixups to now less broken python bindings
14944 * examples/rects.py:
14945 A simple python script using bindings
14947 2006-04-18 Matthew Allum <mallum@openedhand.com>
14949 * clutter/clutter-marshal.list:
14952 2006-04-17 Matthew Allum <mallum@openedhand.com>
14955 * bindings/Makefile.am:
14956 * bindings/python/Makefile.am:
14957 * bindings/python/clutter.override:
14958 * bindings/python/cluttermodule.c:
14960 First shot at some python bindings ( broken atm )
14961 * clutter/clutter-bin.h:
14962 * clutter/clutter-element.h:
14963 * clutter/clutter-stage.h:
14964 * clutter/clutter-texture.h:
14965 * clutter/clutter.h:
14966 Rejig headers a little so h2def.py happier
14968 2006-04-17 Matthew Allum <mallum@openedhand.com>
14971 * doc/clutter.types:
14972 * doc/reference/Makefile.am:
14973 Move gtk-doc gubbins to doc/reference
14975 2006-04-16 Matthew Allum <mallum@openedhand.com>
14980 * clutter/clutter-bin.c: (clutter_bin_paint):
14983 * clutter/clutter-texture.c: (clutter_texture_dispose),
14984 (clutter_texture_class_init), (clutter_texture_set_pixbuf):
14985 Fixup object finalization a little.
14987 * bootstrap-autotools.sh:
14990 * doc/clutter.types:
14991 Add gtk-doc infrastructure
14993 2006-04-15 Matthew Allum <mallum@openedhand.com>
14998 * clutter/Makefile.am:
14999 * clutter/clutter-rectangle.c: (clutter_rectangle_new):
15000 Sync passed color alpha chan to element opacity,
15002 * clutter/clutter-video-texture.c:
15003 (clutter_video_texture_error_quark), (signal_eos_delayed),
15004 (query_timeout), (got_video_size), (caps_set), (parse_stream_info),
15005 (handle_element_message)
15006 * clutter/clutter-video-texture.h:
15007 Port more of bacon video widget API.
15009 * examples/test-video.c: (foo), (tick), (main):
15010 Add a simple overlay displaying playback time.
15012 2006-04-15 Matthew Allum <mallum@openedhand.com>
15014 * clutter/clutter-element.c:
15015 * clutter/clutter-label.c: (clutter_label_init),
15016 (clutter_label_new_with_text):
15017 * clutter/clutter-label.h:
15018 * clutter/clutter-main.c: (clutter_redraw), (clutter_gl_unlock):
15019 * clutter/clutter-main.h:
15020 * clutter/clutter-rectangle.c: (clutter_rectangle_init),
15021 (clutter_rectangle_new):
15022 * clutter/clutter-rectangle.h:
15023 * clutter/clutter-texture.c: (clutter_texture_class_init),
15024 (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf):
15025 * clutter/clutter-texture.h:
15026 * clutter/clutter-video-texture.c: (clutter_video_texture_init):
15027 * clutter/clutter-video-texture.h:
15028 * examples/test-video.c: (main):
15029 * examples/test.c: (main):
15030 * examples/video-cube.c: (clutter_video_texture_cube_init), (main):
15031 Make xxx_new() return there type as ClutterElement*
15033 2006-04-15 Matthew Allum <mallum@openedhand.com>
15037 * clutter/clutter-main.c:
15038 * clutter/clutter-stage.c:
15039 * clutter/clutter-texture.c:
15040 * clutter/clutter-texture.h:
15041 * gst/clutterimagesink.c: (gst_clutterimagesink_clutterimage_put),
15042 (gst_clutterimagesink_context_get):
15043 Various experiments with textures and 3D views.
15045 * clutter/clutter-video-texture.c:
15046 (clutter_video_texture_class_init), (clutter_video_texture_init):
15047 * examples/Makefile.am:
15048 * examples/test-video.c: (main):
15049 * examples/video-cube.c:
15050 Add video-cube example
15052 2006-04-13 Matthew Allum <mallum@openedhand.com>
15057 * clutter/clutter-bin.c:
15058 * clutter/clutter-bin.h:
15059 New container element
15061 * clutter/clutter-stage.c:
15062 * clutter/clutter-stage.h:
15063 Make stage a proper element
15065 * clutter/Makefile.am:
15066 * clutter/clutter.h:
15067 * clutter/clutter-element.c: (clutter_element_show),
15068 (clutter_element_set_opacity):
15069 * clutter/clutter-element.h:
15070 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
15071 (clutter_label_set_text), (clutter_label_set_font):
15072 * clutter/clutter-private.h:
15073 Various tweaks new api calls.
15075 * clutter/clutter-main.c: (events_init):
15076 * clutter/clutter-main.h:
15077 Make ClutterContex Private to main
15079 * clutter/clutter-texture.c:
15080 * clutter/clutter-texture.h:
15081 * clutter/clutter-video-texture.c:
15082 (clutter_video_texture_finalize):
15085 * examples/test-video.c: (main):
15086 * examples/test.c: (main):
15087 Fix for API changes.
15089 2006-04-11 Matthew Allum <mallum@openedhand.com>
15093 * clutter/clutter-video-texture.c:
15094 (clutter_video_texture_finalize):
15095 * clutter/clutter-video-texture.h:
15096 Remove bogus pixbuf attribute
15098 2006-04-10 Matthew Allum <mallum@openedhand.com>
15100 * clutter/clutter-main.c: (clutter_dispatch_x_event),
15101 (clutter_queue_redraw), (clutter_main), (clutter_set_stage_params),
15103 * clutter/clutter-main.h:
15104 * clutter/clutter-private.h:
15105 Make Stage non fullscreen ( for now ). Change event loop to
15106 work better with video.
15108 * clutter/Makefile.am:
15109 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
15110 (clutter_label_class_init), (clutter_label_new_with_text),
15111 (clutter_label_set_text), (clutter_label_set_font):
15112 * clutter/clutter-texture.c: (texture_render_to_gl_quad),
15113 (clutter_texture_unrealize), (clutter_texture_sync_pixbuf),
15114 (clutter_texture_realize), (clutter_texture_show),
15115 (clutter_texture_hide), (clutter_texture_paint),
15116 (clutter_texture_finalize), (clutter_texture_set_property),
15117 (clutter_texture_get_property), (clutter_texture_class_init),
15118 (clutter_texture_init), (clutter_texture_get_pixbuf),
15119 (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf):
15120 * clutter/clutter-texture.h:
15121 * clutter/clutter.h:
15122 Fix leakage. Improve performance. Add support for non tiled
15125 * examples/Makefile.am:
15126 * examples/test.c: (timeout_text_cb), (main):
15129 * examples/test-video.c:
15132 * gst/clutterimagesink.c:
15133 * gst/clutterimagesink.h:
15134 * clutter/clutter-video-texture.c:
15135 * clutter/clutter-video-texture.h:
15136 Add initial support for video textures with gst-0.10
15138 * gst/cltrimagesink.c:
15139 * gst/cltrimagesink.h:
15140 Remove old gst-0.8 sink
15142 2006-04-05 Matthew Allum <mallum@openedhand.com>
15144 * clutter/Makefile.am:
15145 * clutter/clutter-element.c: (clutter_element_show),
15146 (clutter_element_hide), (clutter_element_realize),
15147 (clutter_element_unrealize), (clutter_element_paint),
15148 (clutter_element_finalize), (clutter_element_class_init),
15149 (clutter_element_init), (clutter_element_new):
15150 * clutter/clutter-element.h:
15151 * clutter/clutter.h:
15152 * clutter/clutter-main.c: (clutter_dispatch_x_event),
15153 (events_init), (clutter_redraw), (clutter_main), (clutter_init),
15154 (clutter_show_stage):
15155 * clutter/clutter-main.h:
15156 Various minor tweaks.
15158 * clutter/clutter-private.h:
15159 * clutter/clutter-texture.c: (can_create), (init_tiles),
15160 (clutter_texture_unrealize), (clutter_texture_realize),
15161 (clutter_texture_finalize), (clutter_texture_class_init),
15162 (clutter_texture_init):
15163 * clutter/clutter-texture.h:
15164 Much improve texture class.
15166 * clutter/clutter-label.c:
15167 * clutter/clutter-label.h:
15168 Add new text rendering class
15170 * clutter/clutter-rectangle.c:
15171 * clutter/clutter-rectangle.h:
15172 Add basic rectangle drawing class
15175 Add text rendering and animation to test.
15177 2006-04-04 Matthew Allum <mallum@openedhand.com>
15179 * clutter/Makefile.am:
15180 * clutter/clutter-element.c: (clutter_element_realize):
15181 * clutter/clutter-element.h:
15182 * clutter/clutter-image.c:
15183 * clutter/clutter-image.h:
15184 * clutter/clutter-main.c: (clutter_dispatch_x_event),
15185 (clutter_main), (clutter_set_stage_params), (clutter_init):
15186 * clutter/clutter-texture.c: (next_p2), (can_create),
15187 (tile_dimension), (init_tiles), (texture_render_to_gl_quad),
15188 (clutter_texture_unrealize), (clutter_texture_realize),
15189 (clutter_texture_get_pixbuf), (clutter_texture_paint),
15190 (clutter_texture_finalize), (clutter_texture_class_init):
15191 * clutter/clutter-texture.h:
15192 * clutter/clutter.h:
15195 Implement basic tiled texture painting.
15197 2006-04-03 Matthew Allum <mallum@openedhand.com>
15199 reviewed by: <delete if not using a buddy>
15201 * clutter/Makefile.am:
15202 * clutter/clutter-element.c:
15203 * clutter/clutter-element.h:
15204 * clutter/clutter-image.c:
15205 * clutter/clutter-image.h:
15206 * clutter/clutter-main.c: (events_init), (stage_realize),
15207 (clutter_queue_redraw), (clutter_redraw), (clutter_add_to_stage),
15208 (clutter_remove_from_stage), (clutter_main),
15209 (clutter_set_stage_params), (clutter_init):
15210 * clutter/clutter-main.h:
15211 * clutter/clutter-private.h:
15212 * clutter/clutter.h:
15215 2006-04-02 Matthew Allum <mallum@openedhand.com>
15217 * clutter/Makefile.am:
15218 * clutter/cltr-animator.c:
15219 * clutter/cltr-animator.h:
15220 * clutter/cltr-button.c:
15221 * clutter/cltr-button.h:
15222 * clutter/cltr-core.c:
15223 * clutter/cltr-core.h:
15224 * clutter/cltr-events.c:
15225 * clutter/cltr-events.h:
15226 * clutter/cltr-glu.c:
15227 * clutter/cltr-glu.h:
15228 * clutter/cltr-label.c:
15229 * clutter/cltr-label.h:
15230 * clutter/cltr-list.c:
15231 * clutter/cltr-list.h:
15232 * clutter/cltr-overlay.c:
15233 * clutter/cltr-overlay.h:
15234 * clutter/cltr-photo-grid.c:
15235 * clutter/cltr-photo-grid.h:
15236 * clutter/cltr-private.h:
15237 * clutter/cltr-scratch.c:
15238 * clutter/cltr-scratch.h:
15239 * clutter/cltr-texture.c:
15240 * clutter/cltr-texture.h:
15241 * clutter/cltr-video.c:
15242 * clutter/cltr-video.h:
15243 * clutter/cltr-widget.c:
15244 * clutter/cltr-widget.h:
15245 * clutter/cltr-window.c:
15246 * clutter/cltr-window.h:
15248 * clutter/clutter-main.c:
15249 * clutter/clutter-main.h:
15250 * clutter/clutter-private.h:
15251 * clutter/clutter.h:
15254 * clutter/pixbuf.c:
15255 * clutter/pixbuf.h:
15259 * examples/Makefile.am:
15260 * examples/photos.c:
15261 * examples/player.c:
15262 * examples/scratch.c:
15263 * examples/select.c:
15265 Remove old cltr files replacing with beginnings of
15266 rejigged 'clutter' ones.
15268 2005-05-27 mallum,,, <mallum@openedhand.com>
15270 * clutter/cltr-animator.c: (cltr_animator_zoom_new),
15271 (cltr_animator_move_new), (cltr_animator_fullzoom_new),
15272 (cltr_animator_new), (cltr_animator_set_args),
15273 (cltr_animator_wrapped_zoom_paint), (cltr_animator_reset),
15274 (cltr_animator_timeout_cb), (cltr_animator_run):
15275 * clutter/cltr-animator.h:
15276 * clutter/cltr-button.c: (cltr_button_set_label),
15277 (cltr_button_paint):
15278 * clutter/cltr-label.c: (cltr_label_new), (cltr_label_set_text),
15279 (cltr_label_get_text), (cltr_label_show),
15280 (cltr_label_handle_xevent), (cltr_label_paint):
15281 * clutter/cltr-label.h:
15282 * clutter/cltr-list.c: (cltr_list_paint):
15283 * clutter/cltr-widget.c:
15284 * examples/select.c: (usage), (video_ctrl_hide),
15285 (video_ctrl_stop_cb), (video_ctrl_play_cb),
15286 (video_ctrl_seek_begin_cb), (init_video_ctrl), (show_video_ctrl),
15287 (populate), (cell_to_item), (zoom_video_out), (init_show_controls),
15288 (handle_xevent), (zoom_out_complete), (zoom_in_complete):
15289 More select hacking ...
15291 2005-05-23 mallum,,, <mallum@openedhand.com>
15293 * clutter/cltr-button.c: (cltr_button_new_with_label),
15294 (cltr_button_handle_xevent), (cltr_button_paint):
15295 * clutter/cltr-button.h:
15296 * clutter/cltr-events.c: (cltr_main_loop):
15297 * clutter/cltr-list.c: (cltr_list_cell_new),
15298 (cltr_list_append_cell), (cltr_list_update_layout),
15300 * clutter/cltr-list.h:
15301 * clutter/cltr-overlay.c: (cltr_overlay_paint):
15302 * clutter/cltr-private.h:
15303 * clutter/cltr-widget.c: (cltr_widget_show),
15304 (cltr_widget_show_all), (cltr_widget_add_child):
15305 * clutter/cltr-widget.h:
15306 * clutter/cltr-window.c: (cltr_window_show), (cltr_window_paint),
15307 (cltr_window_handle_xevent), (cltr_window_post_paint),
15308 (cltr_window_set_paint_funcs), (cltr_window_xwin),
15309 (cltr_window_hide_cursor), (cltr_window_set_fullscreen):
15310 * clutter/cltr-window.h:
15311 * examples/select.c: (usage), (init_video_ctrl), (show_video_ctrl),
15312 (populate), (cell_to_item), (handle_xevent), (zoom_out_complete),
15313 (zoom_in_complete), (cell_activated), (main):
15314 Much Select hacking
15316 2005-05-17 mallum,,, <mallum@openedhand.com>
15318 * clutter/cltr-video.c: (cltr_video_get_pixbuf):
15319 * gst/cltrimagesink.c: (gst_cltrimagesink_change_state),
15320 (gst_cltrimagesink_chain):
15321 Fix thread related segv's on grabbing video image.
15322 Also pop any unplayed data from sink on stop
15324 2005-05-16 mallum,,, <mallum@openedhand.com>
15326 * clutter/cltr-animator.c: (cltr_animator_zoom_new),
15327 (cltr_animator_fullzoom_new), (cltr_animator_new),
15328 (cltr_animator_set_args), (cltr_animator_wrapped_paint):
15329 * clutter/cltr-animator.h:
15330 * clutter/cltr-list.c: (cltr_list_cell_new),
15331 (cltr_list_get_active_cell_co_ords), (cltr_list_show),
15332 (cltr_list_on_activate_cell), (cltr_list_update_layout),
15334 * clutter/cltr-list.h:
15335 * clutter/cltr-texture.c: (cltr_texture_realize),
15336 (cltr_texture_unref), (cltr_texture_sync_pixbuf),
15337 (cltr_texture_force_rgb_data):
15338 * clutter/cltr-video.c: (got_stream_length), (got_time_tick),
15339 (got_state_change), (parse_stream_info), (cb_iterate),
15340 (cltr_video_play), (cltr_video_set_volume),
15341 (cltr_video_get_volume), (cltr_video_get_pixbuf),
15342 (cltr_video_idler), (cltr_video_set_source),
15343 (cltr_video_handle_xevent), (cltr_video_paint):
15344 * clutter/cltr-video.h:
15345 * clutter/cltr-widget.c:
15346 * clutter/pixbuf.c: (pixbuf_write_png), (load_png_file),
15347 (pixbuf_copy), (pixbuf_fill_rect), (pixbuf_scale_down),
15349 * examples/select.c: (usage), (populate), (cell_to_item),
15350 (handle_xevent), (zoom_out_complete), (zoom_in_complete),
15351 (cell_activated), (main):
15352 * gst/cltrimagesink.c: (gst_cltrimagesink_getcaps),
15353 (gst_cltrimagesink_chain):
15354 Far too much hacking. Fix many endian image issues.
15355 Greatly improve select demo
15357 2005-05-16 mallum,,, <mallum@openedhand.com>
15359 * clutter/Makefile.am:
15360 * clutter/cltr-animator.c:
15361 * clutter/cltr-animator.h:
15362 * clutter/cltr-list.c: (distfunc), (cltr_list_new),
15363 (cltr_list_get_active_cell_co_ords), (cltr_list_show),
15364 (cltr_list_on_activate_cell), (cltr_list_handle_xevent),
15365 (cltr_list_animate), (cltr_list_timeout_cb),
15366 (cltr_list_update_layout), (cltr_list_paint):
15367 * clutter/cltr-list.h:
15368 * clutter/cltr-private.h:
15370 * clutter/pixbuf.c: (load_png_file):
15371 * examples/player.c:
15372 * examples/select.c: (usage), (populate), (cell_activated), (main):
15373 Work on animator zooming. Also build up select.c much
15375 2005-05-14 mallum,,, <mallum@openedhand.com>
15377 * clutter/cltr-animator.c:
15378 Add initial outline
15379 * clutter/cltr-button.c: (cltr_button_new_with_pixbuf),
15380 (cltr_button_handle_xkeyevent), (cltr_button_handle_xevent),
15381 (cltr_button_paint):
15382 various tweaks/experimentation
15383 * clutter/cltr-core.c: (cltr_init), (cltr_display_height):
15384 * clutter/cltr-glu.c: (cltr_glu_set_color):
15385 * clutter/cltr-glu.h:
15386 Add unfilled rect call.
15387 * clutter/cltr-label.c: (cltr_label_new), (cltr_label_paint):
15388 * clutter/cltr-list.c: (distfunc), (cltr_list_cell_new),
15389 (cltr_list_show), (cltr_list_animate), (cltr_list_paint):
15390 update list a little.
15391 * clutter/cltr-overlay.c: (cltr_overlay_handle_xevent),
15392 (cltr_overlay_paint):
15393 * clutter/cltr-private.h:
15394 * clutter/cltr-texture.c: (cltr_texture_realize):
15395 * clutter/cltr-video.c: (cltr_video_paint):
15397 * clutter/fonts.c: (draw_layout_on_pixbuf):
15398 Fix font alpha blending
15399 * examples/Makefile.am:
15400 * examples/player.c: (main):
15401 * examples/scratch.c: (main):
15403 * examples/select.c:
15406 2005-05-11 mallum,,, <mallum@openedhand.com>
15408 * clutter/cltr-video.c: (got_buffering), (cltr_video_new),
15409 (cltr_video_play), (cltr_video_idler):
15410 * examples/photos.c: (main):
15411 * examples/player.c: (handle_xevent), (main):
15412 * gst/cltrimagesink.c: (gst_cltrimagesink_chain):
15413 Fix Gl thread related crash on video playback
15414 Make examples less bound to my laptop ;)
15416 2005-05-06 mallum,,, <mallum@openedhand.com>
15418 * clutter/cltr-button.c: (cltr_button_new_with_label):
15419 * clutter/cltr-overlay.c:
15420 * clutter/cltr-photo-grid.c: (cltr_photo_grid_cell_new),
15421 (cltr_photo_grid_paint), (cltr_photo_grid_new):
15422 * clutter/cltr-video.c: (cltr_video_print_tag), (got_buffering),
15423 (got_error), (caps_set), (parse_stream_info), (cb_iterate),
15424 (cltr_video_new), (cltr_video_play), (cltr_video_seek),
15425 (cltr_video_seek_time), (cltr_video_stop), (cltr_video_close),
15426 (cltr_video_pause), (cltr_video_can_set_volume),
15427 (cltr_video_set_volume), (cltr_video_get_volume),
15428 (cltr_video_idler), (cltr_video_set_source), (cltr_video_show),
15429 (cltr_video_hide), (cltr_video_handle_xevent), (cltr_video_paint):
15430 * clutter/cltr-video.h:
15431 * clutter/cltr-widget.h:
15432 * clutter/cltr-window.c: (cltr_window_show), (cltr_window_paint),
15433 (cltr_window_handle_xevent), (cltr_window_set_fullscreen),
15434 (cltr_window_focus_widget):
15435 * clutter/cltr-window.h:
15437 * clutter/fonts.c: (get_layout_bitmap), (font_draw),
15438 (font_get_pixel_size):
15440 * examples/photos.c: (photo_grid_populate):
15441 * examples/player.c: (handle_xevent), (main):
15442 * examples/scratch.c: (main):
15443 Lots more tweaks, mainly updating video widget.
15445 2005-04-29 mallum,,, <mallum@openedhand.com>
15447 * clutter/cltr-button.c: (cltr_button_new),
15448 (cltr_button_on_activate), (cltr_button_new_with_label),
15449 (cltr_button_show):
15450 * clutter/cltr-button.h:
15451 * clutter/cltr-label.c: (cltr_label_new), (cltr_label_paint):
15452 * clutter/cltr-private.h:
15453 * clutter/cltr-video.c: (cltr_video_play):
15454 * clutter/cltr-widget.c: (cltr_widget_new), (cltr_widget_abs_x),
15455 (cltr_widget_abs_y), (cltr_widget_abs_x2), (cltr_widget_abs_y2),
15456 (cltr_widget_width), (cltr_widget_height), (cltr_widget_show),
15457 (cltr_widget_focus), (cltr_widget_unfocus),
15458 (cltr_widget_set_focus_next), (cltr_widget_get_focus_next),
15459 (cltr_widget_show_all):
15460 * clutter/cltr-widget.h:
15461 * clutter/cltr-window.c: (cltr_window_new),
15462 (cltr_window_focus_widget):
15464 * clutter/fonts.c: (draw_layout_on_pixbuf), (font_get_pixel_size):
15465 * examples/scratch.c: (main):
15466 Hack buttons some more
15468 2005-04-27 mallum,,, <mallum@openedhand.com>
15470 * clutter/Makefile.am:
15471 * clutter/cltr-button.c: (cltr_button_new):
15472 * clutter/cltr-label.c:
15473 * clutter/cltr-label.h:
15474 * clutter/cltr-photo-grid.c: (cltr_photo_grid_paint):
15475 * clutter/cltr-texture.c: (cltr_texture_realize),
15476 (cltr_texture_new), (cltr_texture_unref),
15477 (cltr_texture_no_tile_new):
15478 * clutter/cltr-texture.h:
15479 * clutter/cltr-video.c: (cltr_video_got_time_tick), (caps_set),
15480 (cltr_video_new), (cltr_video_idler), (cltr_video_set_source),
15481 (cltr_video_play), (cltr_video_pause), (cltr_video_show),
15482 (cltr_video_hide), (cltr_video_handle_xevent), (cltr_video_paint):
15484 * clutter/fonts.c: (font_new), (draw_layout_on_pixbuf),
15487 * clutter/pixbuf.c: (pixbuf_set_pixel), (pixbuf_get_pixel):
15488 * examples/photos.c: (photo_grid_populate), (main):
15489 * examples/player.c: (main):
15490 Improve video widget, use playbin rather than gst_play
15491 Lots of misc tweaks.
15493 2005-04-26 mallum,,, <mallum@openedhand.com>
15495 * clutter/Makefile.am:
15496 * clutter/cltr-core.c: (cltr_init):
15497 * clutter/cltr-events.c: (cltr_events_init), (cltr_main_loop):
15498 * clutter/cltr-photo-grid.c:
15499 * clutter/cltr-private.h:
15500 * clutter/cltr-scratch.c: (cltr_scratch_handle_xevent),
15501 (cltr_scratch_paint):
15502 * clutter/cltr-texture.c: (cltr_texture_render_to_gl_quad),
15503 (init_tiles), (cltr_texture_unrealize), (cltr_texture_realize),
15504 (cltr_texture_new), (cltr_texture_no_tile_new),
15505 (cltr_texture_get_pixbuf):
15506 * clutter/cltr-texture.h:
15507 * clutter/cltr-video.c:
15508 * clutter/cltr-video.h:
15509 * clutter/cltr-widget.c: (cltr_widget_queue_paint):
15511 * examples/Makefile.am:
15512 * examples/player.c:
15513 * gst/cltrimagesink.c: (gst_cltrimagesink_fixate),
15514 (gst_cltrimagesink_getcaps), (gst_cltrimagesink_sink_link),
15515 (gst_cltrimagesink_change_state), (gst_cltrimagesink_chain),
15516 (gst_cltrimagesink_set_property), (gst_cltrimagesink_get_property),
15517 (gst_cltrimagesink_finalize), (gst_cltrimagesink_class_init):
15518 * gst/cltrimagesink.h:
15519 Initial go at very hacky gst video widget
15521 2005-04-22 mallum,,, <mallum@openedhand.com>
15523 * clutter/Makefile.am:
15524 * clutter/cltr-button.c:
15525 * clutter/cltr-button.h:
15526 * clutter/cltr-core.c: (cltr_init):
15527 * clutter/cltr-overlay.c:
15528 * clutter/cltr-overlay.h:
15529 * clutter/cltr-photo-grid.c: (cltr_photo_grid_handle_xevent),
15530 (cltr_photo_grid_cell_new), (ctrl_photo_grid_get_zoomed_coords),
15531 (cell_is_offscreen), (cltr_photo_grid_idle_cb),
15532 (cltr_photo_grid_navigate), (cltr_photo_grid_activate_cell),
15533 (cltr_photo_grid_populate), (cltr_photo_grid_update_visual_state),
15534 (cltr_photo_grid_paint), (cltr_photo_grid_show),
15535 (cltr_photo_grid_set_fps), (cltr_photo_grid_get_fps),
15536 (cltr_photo_grid_set_anim_steps), (cltr_photo_grid_get_anim_steps),
15537 (cltr_photo_grid_new):
15538 Fix up grid so external prog can load images.
15539 * clutter/cltr-photo-grid.h:
15540 * clutter/cltr-texture.c: (cltr_texture_realize),
15541 (cltr_texture_new):
15542 * clutter/cltr-texture.h:
15543 * clutter/cltr-window.c: (cltr_window_set_fullscreen):
15545 * clutter/pixbuf.c: (pixbuf_scale_down), (ConvolveImage),
15546 (GaussianBlurImage):
15547 * clutter/pixbuf.h:
15548 New experimental Methods
15550 * examples/Makefile.am:
15551 * examples/photos.c:
15552 * examples/player.c:
15555 * gst/cltrimagesink.c:
15556 * gst/cltrimagesink.h:
15557 Add initial crusty ( broken ) gst stuff
15559 2005-04-13 mallum,,, <mallum@openedhand.com>
15561 * bootstrap-autotools.sh:
15562 * clutter/Makefile.am:
15565 * examples/Makefile.am:
15566 * examples/scratch.c:
15567 Initial autotooling of everything.
15569 2005-04-07 mallum,,, <mallum@openedhand.com>
15572 * cltr-events.c: (cltr_main_loop):
15576 * cltr-photo-grid.c: (cltr_photo_grid_cell_new),
15577 (cltr_photo_grid_append_cell), (ctrl_photo_grid_cell_to_coords),
15578 (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_idle_cb),
15579 (cltr_photo_grid_navigate), (cltr_photo_grid_activate_cell),
15580 (cltr_photo_grid_update_visual_state), (cltr_photo_grid_paint),
15581 (cltr_photo_grid_show), (cltr_photo_grid_new):
15584 * cltr-window.c: (cltr_window_new), (cltr_window_show),
15585 (cltr_window_handle_xevent):
15589 * pixbuf.c: (pixbuf_copy):
15593 2005-04-03 mallum,,, <mallum@openedhand.com>
15600 * cltr-photo-grid.c: (cltr_photo_grid_handle_xkeyevent),
15601 (cltr_photo_grid_handle_xevent), (cltr_photo_grid_cell_new),
15602 (cltr_photo_grid_append_cell), (ctrl_photo_grid_cell_to_coords),
15603 (ctrl_photo_grid_get_zoomed_coords), (cell_is_offscreen),
15604 (cltr_photo_grid_idle_cb), (cltr_photo_grid_navigate),
15605 (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
15606 (cltr_photo_grid_paint), (cltr_photo_grid_show),
15607 (cltr_photo_grid_new):
15608 * cltr-photo-grid.h:
15618 Add very basic initial toolkit infrastructure
15620 2005-03-31 mallum,,, <mallum@openedhand.com>
15622 * cltr-photo-grid.c: (cltr_photo_grid_append_cell),
15623 (ctrl_photo_grid_cell_to_coords),
15624 (ctrl_photo_grid_get_zoomed_coords), (cell_is_offscreen),
15625 (cltr_photo_grid_idle_cb), (cltr_photo_grid_navigate),
15626 (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
15627 (cltr_photo_grid_redraw), (cltr_photo_grid_new):
15628 * cltr-photo-grid.h:
15629 * cltr-texture.c: (cltr_texture_render_to_gl_quad), (init_tiles),
15630 (cltr_texture_realize):
15633 Implemented scrolling. Very rough around the edges, needs tidying.
15635 2005-03-30 mallum,,, <mallum@openedhand.com>
15638 * cltr-photo-grid.c: (cltr_photo_grid_redraw),
15639 (cltr_photo_grid_new):
15642 * cltr-texture.c: (cltr_texture_new):
15645 2005-03-30 mallum,,, <mallum@openedhand.com>
15647 * cltr-photo-grid.c: (cltr_photo_grid_populate),
15648 (cltr_photo_grid_redraw), (cltr_photo_grid_new):
15649 * cltr-photo-grid.h:
15650 * cltr-tex.c: (next_p2), (cltr_texture_render_to_gl_quad),
15651 (tile_dimension), (init_tiles), (cltr_texture_new):
15654 Rename CltrImage -> CltrTexture
15656 2005-03-30 mallum,,, <mallum@openedhand.com>
15659 * cltr-photo-grid.c: (cltr_photo_grid_populate),
15660 (cltr_photo_grid_redraw):
15661 * cltr-photo-grid.h:
15666 * pixbuf.c: (pixbuf_unref), (pixbuf_copy):
15668 Add intial new texture tiling code.
15670 2005-03-27 mallum,,, <mallum@openedhand.com>
15673 * cltr-photo-grid.c: (cltr_photo_grid_cell_new),
15674 (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_navigate),
15675 (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
15676 (cltr_photo_grid_redraw), (cltr_photo_grid_new):
15677 * cltr-photo-grid.h:
15678 * cltr.c: (cltr_dispatch_x_event), (cltr_init), (test_idle_cb),
15681 Add a very hacky threaded image loader.
15682 Make event handling a little more efficient, though still hacky
15683 * pixbuf.c: (pixel_set_vals), pixbuf.h:
15684 Add copy func ( unused as yet )
15686 2005-03-25 mallum,,, <mallum@openedhand.com>
15688 * cltr-photo-grid.c: (cltr_photo_grid_cell_new),
15689 (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_redraw),
15690 (cltr_photo_grid_new):
15691 * cltr-photo-grid.h:
15692 * cltr.c: (cltr_window_new), (idle_cb), (main):
15693 Use GL matrices in a saner way.
15694 Add random rotation to picts
15695 Random minor tweaks
15697 2005-03-24 mallum,,, <mallum@openedhand.com>
15700 * cltr-photo-grid.c:
15701 * cltr-photo-grid.h:
15702 * cltr.c: (cltr_window_new), (cltr_main_loop):
15704 Split up cltr.c a bit. start refactoring a bit.
15706 2005-03-23 mallum,,, <mallum@openedhand.com>
15708 * cltr.c: (cltr_photo_grid_populate), (cltr_photo_grid_redraw),
15709 (cltr_photo_grid_new), (main):
15711 Various minor tweaks
15712 * pixbuf.c: (pixbuf_set_pixel), (pixbuf_get_pixel):
15713 Fix RGBA ordering in set/get pixel
15715 2005-03-23 mallum,,, <mallum@openedhand.com>
15717 * cltr.c: (ctrl_photo_grid_get_trans_coords),
15718 Fix grid co-ords -> translation vals converter
15719 (cltr_photo_grid_navigate), (cltr_photo_grid_redraw),
15720 (cltr_photo_grid_new), (idle_cb):
15721 Fix moving between pictures when zoomed
15723 2005-03-23 mallum,,, <mallum@openedhand.com>
15725 * cltr.c: (cltr_dispatch_x_event), (cltr_window_new),
15726 (cltr_main_loop), (cltr_photo_grid_navigate),
15727 (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
15728 (cltr_photo_grid_redraw), (cltr_photo_grid_new), (idle_cb), (main):
15730 Lots, make the grid roughly work.
15732 * fonts.c: (get_layout_bitmap), (font_draw):
15733 remove debug printfs
15735 2005-03-22 mallum,,, <mallum@openedhand.com>
15737 * cltr.c: (x_event_prepare), (x_event_check), (x_event_dispatch),
15738 (cltr_dispatch_x_event), (cltr_init), (cltr_window_new),
15739 (cltr_photo_grid_append_cell), (cltr_photo_grid_populate),
15740 (cltr_photo_grid_redraw), (cltr_photo_grid_new),
15743 Add glib event loop