1 2008-12-10 Neil Roberts <neil@linux.intel.com>
3 * clutter/cogl/gl/cogl.c:
4 * clutter/cogl/gl/cogl-defines.h.in:
5 * clutter/cogl/gl/cogl-context.h:
6 * clutter/cogl/common/cogl-mesh.c: Rename the glBufferDataSub
7 function to glBufferSubData. When calling glXGetProcAddress with
8 the former Mesa returns a stub dispatch function which will
9 segfault if you try to use it. With NVIDIA it returns NULL so
10 _cogl_features_init decides the card doesn't have VBO support.
12 2008-12-10 Neil Roberts <neil@linux.intel.com>
14 Bug 1323 - ClutterBehaviorDepth conflicts with other behaviors
16 * clutter/clutter-behaviour-ellipse.c (actor_apply_knot_foreach):
17 Don't set the depth if there is no x or y tilt. That way it can
18 still be used in conjunction with ClutterBehaviourDepth. Thanks to
21 2008-12-08 Emmanuele Bassi <ebassi@linux.intel.com>
23 * clutter/clutter-binding-pool.h: Fix the ActivateFunc
24 documentation by adding a "return value" annotation.
26 2008-12-08 Emmanuele Bassi <ebassi@linux.intel.com>
28 * clutter/Makefile.am:
29 * clutter/clutter.h: Add ClutterBindingPool to the build.
31 * clutter/clutter-binding-pool.c:
32 * clutter/clutter-binding-pool.h: Add ClutterBindingPool, a data
33 structure meant to hold (key symbol, modifiers) pairs and associate
34 them to a closure. The ClutterBindingPool can be used to install
35 key bindings for actors and then execute closures inside the
36 key-press-event signal handlers, removing the need for big
37 switch() or if() blocks for each key.
39 * clutter/clutter-event.c: Consistently use "key symbol" instead
42 * clutter/clutter-event.h: Add more modifier masks.
44 * clutter/clutter-marshal.list:
46 * tests/conform/Makefile.am:
47 * tests/conform/test-binding-pool.c:
48 * tests/conform/test-conform-main.c: Add ClutterBindingPool
51 * tests/interactive/Makefile.am:
52 * tests/interactive/test-binding-pool.c: Add interactive test (and
53 example code) for the ClutterBindingPool usage.
55 2008-12-08 Neil Roberts <neil@linux.intel.com>
57 * clutter/clutter-main.c (_clutter_do_pick): Restore the GL_DITHER
58 state after reading the pixel value instead of before. Suggested
59 in bug 1328 thanks to Guy Zadickario.
61 2008-12-05 Emmanuele Bassi <ebassi@linux.intel.com>
63 Bug 1309 - clutter_timeline_new and clutter_timeline_set_speed
64 have two standard of the fps limitation
66 * clutter/clutter-timeline.c:
67 (clutter_timeline_class_init): Set the maximum value of the
68 :fps property to be G_MAXUINT. (Zhang Wei)
70 2008-12-05 Neil Roberts <neil@linux.intel.com>
72 * clutter/clutter-entry.c: Fix the 'Since' annotation in the
75 2008-12-05 Neil Roberts <neil@linux.intel.com>
77 * clutter/clutter-timeline.c:
78 * clutter/clutter-texture.c:
79 * clutter/clutter-stage.c:
80 * clutter/clutter-label.c:
81 * clutter/clutter-behaviour-path.c:
82 * clutter/clutter-actor.c: Fix the 'Since' annotation in the
85 2008-12-05 Neil Roberts <neil@linux.intel.com>
87 Bug 1252 - Merge ClutterBehaviourPath and ClutterBehaviourBspline
89 * clutter/clutter-path.h:
90 * clutter/clutter-path.c: Implementation of new ClutterPath object
91 to represent a path combining straight line and bezier curve
94 * clutter/clutter.h: Include clutter-path.h and remove
95 clutter-behaviour-bspline.h
97 * tests/interactive/test-threads.c (test_threads_main):
98 * tests/interactive/test-script.c:
99 * tests/interactive/test-behave.c (test_behave_main): Use new path
102 * clutter/clutter-effect.c: Use the new ClutterBehaviourPath API.
104 * clutter/clutter-bezier.h:
105 * clutter/clutter-bezier.c: Moved bezier curve handling code out
106 from clutter-behaviour-bspline.c to a separate file.
108 * clutter/clutter-behaviour-path.h:
109 * clutter/clutter-behaviour-path.c: Reimplemented to work with a
112 * clutter/clutter-behaviour-bspline.h:
113 * clutter/clutter-behaviour-bspline.c: Removed
115 * clutter/Makefile.am: Add clutter-path and clutter-bezier, remove
116 clutter-behaviour-bspline.
118 * tests/conform/test-path.c: New automatic test for ClutterPath
121 * tests/conform/test-conform-main.c (main): Add test_path
123 * tests/conform/Makefile.am (test_conformance_SOURCES): Add
126 * clutter/clutter-sections.txt: Add ClutterPath docs
128 * clutter/clutter.types:
129 * clutter/clutter-docs.xml:
130 * doc/reference/clutter/clutter-animation-tutorial.xml: Remove
131 mention of ClutterBehaviourBspline
133 * clutter/clutter-marshal.list: Add VOID:UINT
135 2008-12-04 Neil Roberts <neil@linux.intel.com>
137 Bug 1297 - Bring back support for GL_ARB_texture_rectangle
139 * clutter/cogl/gl/cogl-texture.c (cogl_texture_new_from_foreign,
140 (_cogl_texture_quad_hw, cogl_texture_polygon),
141 (_cogl_texture_quad_sw): Support GL_ARB_texture_rectangle textures
143 * clutter/glx/clutter-glx-texture-pixmap.c: Use rectangle textures
144 when NPOTs are not available or it is forced by the
145 CLUTTER_PIXMAP_TEXTURE_RECTANGLE environment variable.
147 * clutter/cogl/gl/cogl.c (cogl_enable): Allow enabling
148 GL_TEXTURE_RECTANGLE_ARB.
150 2008-12-04 Neil Roberts <neil@linux.intel.com>
152 Bug 1172 - Disjoint paths and clip to path
154 * clutter/cogl/cogl-path.h:
155 * clutter/cogl/common/cogl-primitives.c:
156 * clutter/cogl/common/cogl-primitives.h:
157 * clutter/cogl/gl/cogl-primitives.c:
158 * clutter/cogl/gles/cogl-primitives.c: Changed the semantics of
159 cogl_path_move_to. Previously this always started a new path but
160 now it instead starts a new disjoint sub path. The path isn't
161 cleared until you call either cogl_path_stroke, cogl_path_fill or
162 cogl_path_new. There are also cogl_path_stroke_preserve and
163 cogl_path_fill_preserve functions.
165 * clutter/cogl/gl/cogl-context.c:
166 * clutter/cogl/gl/cogl-context.h:
167 * clutter/cogl/gles/cogl-context.c:
168 * clutter/cogl/gles/cogl-context.h: Convert the path nodes array
171 * clutter/cogl/gl/cogl-texture.c:
172 * clutter/cogl/gles/cogl-texture.c: Call cogl_clip_ensure
174 * clutter/cogl/common/cogl-clip-stack.c:
175 * clutter/cogl/common/cogl-clip-stack.h: Simplified the clip
176 stack code quite a bit to make it more maintainable. Previously
177 whenever you added a new clip it would go through a separate route
178 to immediately intersect with the current clip and when you
179 removed it again it would immediately rebuild the entire clip. Now
180 when you add or remove a clip it doesn't do anything immediately
181 but just sets a dirty flag instead.
183 * clutter/cogl/gl/cogl.c:
184 * clutter/cogl/gles/cogl.c: Taken away the code to intersect
185 stencil clips when there is exactly one stencil bit. It won't work
186 with path clips and I don't know of any platform that doesn't have
187 eight or zero stencil bits. It needs at least three bits to
188 intersect a path with an existing clip. cogl_features_init now
189 just decides you don't have a stencil buffer at all if you have
190 less than three bits.
192 * clutter/cogl/cogl.h.in: New functions and documentation.
194 * tests/interactive/test-clip.c: Replaced with a different test
195 that lets you add and remove clips. The three different mouse
196 buttons add clips in different shapes. This makes it easier to
197 test multiple levels of clipping.
199 * tests/interactive/test-cogl-primitives.c: Use
200 cogl_path_stroke_preserve when using the same path again.
202 * doc/reference/cogl/cogl-sections.txt: Document the new
205 2008-12-03 Robert Bragg <robert@linux.intel.com>
207 Bug 1303 - clutter_glx_texture_pixmap_using_extension doesn't check if
208 fallbacks are being used
210 * glx/clutter-glx-texture-pixmap.c:
211 clutter_glx_texture_pixmap_using_extension now checks to see if
212 priv->use_fallback is TRUE not just that the tfp extension is
215 2008-12-01 Neil Roberts <neil@linux.intel.com>
217 Bug 1305 - NPOT textures unaligned to a pixel sometimes have
220 * clutter/cogl/gl/cogl-texture.c: Set the wrap mode of a texture
223 Instead of setting the wrap mode once per texture at creation, it
224 is now changed whenever the texture is drawn. The previous value
225 is cached so that it isn't changed if the value is the same.
227 This is used in _cogl_texture_quad_hw to only enable GL_REPEAT
228 mode when the coordinates are not in the range [0,1]. Otherwise it
229 can pull in pixels from the other edge when the texture is
232 2008-11-28 Neil Roberts <neil@linux.intel.com>
234 * tests/conform/test-backface-culling.c (TEXTURE_SIZE): Don't set
235 to a funny size on GLES because it will break cogl_texture_polygon
237 2008-11-28 Neil Roberts <neil@linux.intel.com>
239 * tests/conform/test-backface-culling.c: New test for backface
242 * tests/conform/test-conform-main.c (main): Add
243 /texture/test_backface_culing
245 * tests/conform/Makefile.am (test_conformance_SOURCES): Add
246 test-backface-culling.c
248 2008-11-28 Neil Roberts <neil@linux.intel.com>
250 * tests/conform/test-mesh-mutability.c:
251 * tests/conform/test-mesh-interleved.c:
252 * tests/conform/test-mesh-contiguous.c: Remove the idle source
253 after the test is complete so that it won't interfere with other
256 2008-11-26 Emmanuele Bassi <ebassi@linux.intel.com>
258 * clutter/clutter-group.c:
259 (clutter_group_real_raise), (clutter_group_real_lower): Repaint
260 the Group on raise and lower.
262 2008-11-26 Neil Roberts <neil@linux.intel.com>
264 * clutter/cogl/gl/cogl-texture.c (cogl_texture_rectangle): Fixed
265 the test for whether to use hardware tiling. Previously it assumed
266 that texture coordinates are in increasing order but this is not
267 the case since bug 1057 was fixed. The texture coordinates are now
268 sorted later. It also allowed negative coordinates which doesn't
269 make sense if the texture has waste.
271 2008-11-25 Emmanuele Bassi <ebassi@linux.intel.com>
273 * configure.ac: Remove stray dependency on gdk-pixbuf-xlib; we
274 don't use the xlib specific API anymore. (thanks to Matthias
277 2008-11-25 Neil Roberts <neil@linux.intel.com>
279 Bug 1299 - clutter_score_remove will segmentation fault if
280 timelines are more than 52 and continue to remove them
282 * clutter/clutter-score.c (traverse_children): Don't destroy the
283 entry in the handler for REMOVE_BY_ID. It will be removed again
284 anyway in the call to g_node_traverse. This was causing a
285 crash. Thanks to zhangwei for spotting.
287 2008-11-24 Neil Roberts <neil@linux.intel.com>
289 Add a wrapper library to help testing without NPOTs.
291 * tests/tools/Makefile.am: Optionally build the
292 libdisable-npots.la library depending on whether libdl was
293 detected in the configure script. A helper script is also
294 generated to setup the LD_PRELOAD.
296 * tests/conform/Makefile.am: There are now two versions of the
297 test-report and full-report rules. test-report-normal is the same
298 as before and test-report-disable-npots runs the tests with the
299 disable-npots wrapper script. The full-report rule runs both of
300 them and displays two separate HTML files. The test-report rule
301 just runs the normal version as before.
303 * configure.ac: Add a test for libdl
305 * tests/tools/disable-npots.sh.in: New file. Template for the
308 * tests/tools/disable-npots.c: New file
310 2008-11-24 Neil Roberts <neil@linux.intel.com>
312 * clutter/cogl/gl/cogl-texture.c (cogl_texture_polygon): Fix the
313 equation for calculating texture coordinates when using sliced
314 textures. This became broken in revision 3520.
316 2008-11-21 Neil Roberts <neil@linux.intel.com>
318 Bug 1270 - Update to mingw-cross-compile.sh
320 * build/mingw/mingw-cross-compile.sh: Update to download latest
321 binaries. Patch thanks to David Kedves.
323 2008-11-21 Neil Roberts <neil@linux.intel.com>
325 Bug 1271 - mingw compiling failed: undefined reference to
326 `_glDrawRangeElements@24'
328 Resolve glDrawRangeElements with cogl_get_proc_address instead of
329 calling it directly because functions defined in GL > 1.1 are not
330 directly exported under Windows.
332 * clutter/cogl/common/cogl-mesh.c: Use the function pointer from
335 * clutter/cogl/gl/cogl-context.c (cogl_create_context): Initialise
338 * clutter/cogl/gl/cogl-context.h (CoglContext): Add a function
341 * clutter/cogl/gl/cogl-defines.h.in: Add a typedef for the
344 * clutter/cogl/gl/cogl.c (_cogl_features_init): Resolve
347 2008-11-21 Neil Roberts <neil@linux.intel.com>
349 * tests/interactive/Makefile.am:
350 * tests/conform/Makefile.am: Use $(EXEEXT) when specifying a
351 dependency on an executable otherwise there won't be a rule to
354 2008-11-21 Neil Roberts <neil@linux.intel.com>
356 Bug 1269 - mingw32 building failed at clutter-media.c
358 * clutter/clutter-media.c: Rename the 'ERROR' signal enum to
359 'ERROR_SIGNAL' otherwise it clashes with windgi.h. Thanks to David
362 2008-11-21 Neil Roberts <neil@linux.intel.com>
364 * clutter/pango/cogl-pango.h: Include pango/pango.h to get
365 pango-renderer.h. In versions prior to 1.18.4 pangocairo.h does
366 not include pango-renderer.h
368 2008-11-21 Neil Roberts <neil@linux.intel.com>
370 Bug 1280 - clutter_score_append_at_marker lead to segmentation
371 fault in trunk and incorrect appearance in clutter-0.8
373 * clutter/clutter-score.c (start_children_entries): Check whether
374 the child timeline is actually attached at a marker before
375 comparing whether the marker's name matches the marker
376 reached. This fixes a crash that happens when a marker is reached
377 on a timeline that also has child timelines attached at the
378 end. Thanks to zhangwei for spotting.
380 2008-11-20 Emmanuele Bassi <ebassi@linux.intel.com>
382 * clutter/clutter-actor.c:
383 (clutter_actor_set_property): Add sanity checks for NULL
384 boxed values when setting the rotation center.
386 * tests/interactive/test-animation.c:
387 (on_button_press): Add an example on how to use the rotation
388 properties to animate an actor.
390 2008-11-18 Neil Roberts <neil@linux.intel.com>
392 Fixed some trivial compiler warnings
394 * tests/interactive/test-pixmap.c (create_pixmap): Use a format
395 string instead of passing the error message directly to g_error.
397 * tests/interactive/test-easing.c (test_easing_main)
399 * tests/interactive/test-animation.c (on_button_press): Use
400 unsigned variables for the results from clutter_actor_get_size
401 otherwise it complains about the pointer signedness being
404 * clutter/clutter-script.c (clutter_script_add_search_paths): Use
405 G_GSIZE_FORMAT instead of %d for a gsize parameter otherwise it
406 gets upset on 64-bit.
408 2008-11-18 Neil Roberts <neil@linux.intel.com>
410 * tests/conform/test-timeline.c (test_timeline): Remove the delay
411 idle handler after the test is finished, otherwise it will
412 continue running during subsequent tests. This was breaking
413 test_timeline_interpolate.
415 2008-11-18 Robert Bragg <robert@linux.intel.com>
417 * clutter/cogl/common/cogl-mesh.c:
418 Re-works validate_custom_attribute_name() so it doesn't access an
419 un-initialised variable.
421 2008-11-18 Robert Bragg <robert@linux.intel.com>
423 A comparison of gl/cogl-texture.c and gles/cogl-texture.c, to reduce
424 differences and improve maintainability.
426 * clutter/cogl/gl/cogl-context.h:
427 Adds a CoglTextureGLVertex typedef + texture_vertices and
428 texture_vertices_size members to CoglContext for using vertex arrays
431 * clutter/cogl/gl/cogl-context.c:
432 Initializes texture_vertices + texture_vertices_size members
434 * clutter/cogl/gl/cogl-internal.h:
435 Adds COGL_ENABLE_COLOR_ARRAY
437 * clutter/cogl/gl/cogl.c:
438 Add COGL_ENABLE_COLOR_ARRAY support to cogl_enable
440 * clutter/cogl/gles/cogl-context.h:
441 Change the CoglTextureGLVertex to use GLfloat for the position
442 and texture coord attributes and GLubyte for the color.
444 * clutter/cogl/gles/cogl-texture-private.h:
445 Adds a wrap_mode member like GL has.
447 * clutter/cogl/gl/cogl-texture.c
448 * clutter/cogl/gles/cogl-texture.c:
449 Improves the comparability of the files, such that the remaining
450 differences, better reflect the fundamental differences needed
451 between GL and GLES. Notably GL no longer uses glBegin/glEnd for
452 submitting vertices, it uses vertex arrays like GLES and this gives
453 a small but measurable fps improvement for test-text.
455 2008-11-18 Robert Bragg <robert@linux.intel.com>
457 * clutter/cogl/gl/cogl-internal.h
458 * clutter/cogl/gles/cogl-internal.h:
459 Removes semicolon after the GE() macro since that breaks using it as a
462 2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
464 * clutter/clutter.h: Add clutter-shader.h and
465 clutter-shader-types.h to the global include.
467 2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
469 * clutter/cogl/cogl-shader.h: Add a function for setting an
470 integer uniform, similar to cogl_program_uniform_1f().
472 * clutter/cogl/gl/cogl-program.c: Implement the GL version
473 of cogl_program_uniform_1i().
475 * clutter/cogl/gles/cogl-program.c: Implement the GLES version
476 of cogl_program_uniform_1i().
478 2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
480 Bug 1049 - Clutter doesn't support most GLSL uniforms (patch
481 by Chris Lord and Neil Roberts)
483 * README: Update release notes.
485 * clutter/Makefile.am:
486 * clutter/clutter-shader-types.[ch]: Add GValue types for
489 * clutter/clutter-actor.[ch]: Update the shader API to use
490 the newly added GValue support for GLSL shader uniform
493 * clutter/clutter-shader.[ch]: Add float and integer convenience
494 API for single value GLSL uniform setters.
496 * clutter/cogl/cogl-shader.h: Add new uniform setters.
498 * clutter/cogl/gl/cogl-context.c:
499 * clutter/cogl/gl/cogl-context.h:
500 * clutter/cogl/gl/cogl-defines.h.in:
501 * clutter/cogl/gl/cogl-program.c:
502 * clutter/cogl/gl/cogl.c: Update the GL implementation of COGL
503 to handle the GLSL uniform setters.
505 * clutter/cogl/gles/cogl-gles2-wrapper.c:
506 * clutter/cogl/gles/cogl-gles2-wrapper.h:
507 * clutter/cogl/gles/cogl-internal.h:
508 * clutter/cogl/gles/cogl-program.c: Update the GLES 2.0 implementation
509 of COGL to handle the GLSL uniform setters.
511 * doc/reference/clutter/clutter-sections.txt:
512 * doc/reference/cogl/cogl-sections.txt: Update the documentation.
514 * tests/interactive/test-fbo.c:
515 * tests/interactive/test-shader.c: Update the shader tests.
517 2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
519 * clutter/clutter-texture.c:
520 (clutter_texture_get_preferred_width): Fix the usage of the
521 fixed point division macro.
523 2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
525 * tests/conform/test-conform-main.c (main): Do not run the
526 conformance test suite if we are on X11 but we do not have
527 a DISPLAY available. Some of the tests require a DISPLAY,
528 and everything passes through a clutter_init() call which will
529 fail anyway. If we are running make distcheck on an headless
530 box we might as well just skip the conformance test suite
531 without a meaningless error.
533 2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
535 * tests/conform/test-mesh-contiguous.c:
536 * tests/conform/test-mesh-interleved.c:
537 * tests/conform/test-mesh-mutability.c: Remove the last bare
538 g_print() from the conformance test suite.
540 2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
542 * clutter/clutter-alpha.h:
543 * clutter/clutter-alpha.c:
544 (clutter_alpha_set_mode): Use a lookup table to find the alpha
545 function given the animation mode.
547 (clutter_exp_in_func),
548 (clutter_exp_out_func),
549 (clutter_exp_in_out_func): Add new exponential functions.
551 * clutter/clutter-script.c: Update the lookup table with the
552 new animation modes; match "linear" to the ramp-inc alpha
555 * clutter/clutter-types.h: Add new AnimationMode values.
557 * tests/interactive/test-easing.c: Update the easing functions
560 2008-11-18 Neil Roberts <neil@linux.intel.com>
562 * tests/conform/test-pick.c (test_pick): The final result message
563 when --verbose is used was the wrong way around
565 2008-11-18 Neil Roberts <neil@linux.intel.com>
567 * tests/conform/test-conform-main.c (main): Fixed a typo in the
568 name of the path for test_realized.
570 2008-11-17 Emmanuele Bassi <ebassi@linux.intel.com>
572 Bug 1014 - Clutter Animation API Improvements
574 * clutter/Makefile.am:
575 * clutter/clutter.h: Update the build
577 * clutter/clutter-types.h: Add AnimationMode, an enumeration
578 for easing functions.
580 * clutter/clutter-alpha.[ch]: Add the :mode property to
581 control the function bound to an Alpha instance using an
582 enumeration value. Also add six new alpha functions:
584 - ease-in, ease-out, ease-in-out
585 - sine-in, sine-out, sine-in-out
587 * clutter/clutter-deprecated.h: Deprecate the #defines for
588 the alpha functions. They will be replaced by entries in the
589 ClutterAnimationMode.
591 * clutter/clutter-interval.[ch]: Add ClutterInterval, an
592 object for defining, validating and computing an interval
595 * clutter/clutter-animation.[ch]: Add ClutterAnimation, an
596 object responsible for animation the properties of a single
597 actor along an interval of values. ClutterAnimation memory
598 management is automatic. A simple wrapper method for
599 ClutterActor is provided:
601 clutter_actor_animate()
603 which will create, or update, an animation for the passed
606 * clutter/clutter-debug.h:
607 * clutter/clutter-main.c: Add a new 'animation' debug note.
609 * clutter/clutter-script.c: Clean up the alpha functions
610 whitelist, and add the new functions.
612 * doc/reference/clutter/Makefile.am:
613 * doc/reference/clutter/clutter-sections.txt: Update the
616 * doc/reference/clutter/clutter-animation.xml: Renamed to
617 doc/reference/clutter/clutter-animation-tutorial.xml to
618 avoid clashes with the ClutterAnimation section.
620 * doc/reference/clutter/clutter-docs.sgml: Renamed to
621 doc/reference/clutter/clutter-docs.xml, as it was an XML
622 file and not a SGML file.
625 * tests/interactive/Makefile.am:
626 * tests/interactive/test-animation.c:
627 * tests/interactive/test-easing.c: Add two tests for the
628 new simple animation API and the easing functions.
630 * tests/interactive/test-actors.c:
631 * tests/interactive/test-behave.c:
632 * tests/interactive/test-depth.c:
633 * tests/interactive/test-effects.c:
634 * tests/interactive/test-layout.c:
635 * tests/interactive/test-multistage.c:
636 * tests/interactive/test-paint-wrapper.c:
637 * tests/interactive/test-rotate.c:
638 * tests/interactive/test-scale.c:
639 * tests/interactive/test-texture-quality.c:
640 * tests/interactive/test-threads.c:
641 * tests/interactive/test-viewport.c: Update interactive tests
642 to the deprecations and new alpha API.
644 2008-11-17 Emmanuele Bassi <ebassi@linux.intel.com>
646 * clutter/clutter-entry.c:
647 * clutter/clutter-label.c:
648 * clutter/clutter-rectangle.c:
649 * clutter/clutter-script.c:
650 * clutter/clutter-stage.c: Use the ParamSpecColor and GValue
651 API for ClutterColor-based properties.
653 2008-11-14 Robert Bragg <ebassi@linux.intel.com>
655 * tests/interactive/Makefile.am
656 * tests/interactive/test-pixmap.c:
657 test-pixmap + test-devices accidentally got dropped from the makefiles
658 when changing the unit test layout; this puts them back.
660 2008-11-14 Emmanuele Bassi <ebassi@linux.intel.com>
662 Bug 1265 - ClutterScore doesn't emit 'started' signal (Bastian
665 * clutter/clutter-score.c: Emit the ::started signal.
667 * tests/interactive/test-score.c: Check the emission of the
670 2008-11-13 Neil Roberts <neil@linux.intel.com>
672 * clutter/cogl/gles/cogl-gles2-wrapper.h:
673 * clutter/cogl/gles/cogl-gles2-wrapper.c:
674 Initialise the 'tex' sampler uniform to 0. The GLSL spec
675 specifically says that you must initialize sampler uniforms. This
676 fixes texturing for GLES 2 when using the PowerVR simulator via
679 2008-11-13 Robert Bragg <robert@linux.intel.com>
681 Gets the mesh API working with GLES2
683 * clutter/cogl/common/cogl-mesh.c:
684 Make sure we use the appropriate cogl_wrap_gl* funcs as appropriate
686 * clutter/cogl/gles/cogl-gles2-wrapper.c
687 * clutter/cogl/gles/cogl-gles2-wrapper.h:
688 In our glColorPointer wrapper we needed to mark our color attribute
691 * tests/conform/Makefile.am:
692 When creating unit test symlinks we use the -l gtester option to
693 list tests, but when using the PVR SDK the test binary also spews
694 out some extra info that caused lots of random symlinks to be
695 created. We now grep for lines starting with a '/'
697 * tests/conform/test-mesh-contiguous.c
698 * tests/conform/test-mesh-mutability.c:
699 Use cogl_set_source_color instead of directly calling glColor4ub
701 2008-11-13 Neil Roberts <neil@linux.intel.com>
703 * clutter/clutter-actor.c (clutter_actor_get_paint_visibility):
704 Fix logic so that it won't return TRUE for a hidden stage.
706 2008-11-13 Emmanuele Bassi <ebassi@linux.intel.com>
708 * clutter/clutter-behaviour-ellipse.c:
709 (clutter_behaviour_ellipse_applied): Do not reset the depth
710 of the actors to which the Ellipse behaviour has been applied
711 to, unless the behaviour is going to update it because it has
712 a tilt on the X or Y axis.
714 2008-11-13 Neil Roberts <neil@linux.intel.com>
716 * clutter/clutter-actor.c (clutter_actor_get_reactive)
717 (clutter_actor_get_paint_visibility): Be sure to return exactly
718 TRUE or FALSE instead of zero or some non-zero value in these
719 functions that return a gboolean. Thanks to Kai Wei for spotting.
721 2008-11-12 Emmanuele Bassi <ebassi@linux.intel.com>
723 * tests/conform/Makefile.am:
724 * tests/conform/test-conform-main.c:
725 * tests/conform/test-paint-opacity.c: Add test unit for label,
726 rectangle and paint opacity.
728 2008-11-12 Emmanuele Bassi <ebassi@linux.intel.com>
730 * clutter/cogl/cogl-color.h:
731 * clutter/cogl/cogl-path.h:
732 * clutter/cogl/cogl-types.h:
733 * clutter/cogl/common/cogl-color.c: Deprecated cogl_color()
734 in favour of cogl_set_source_color() and friends; store the
735 CoglColor components as unsigned bytes instead of fixed point
736 normalized values; add functions for allocating, copying and
737 freeing CoglColor, for use of language bindings.
739 * clutter/cogl/cogl.h.in:
740 * clutter/cogl/cogl-deprecated.h: Added cogl-deprecated.h,
741 an header file containing the deprecation symbols similar
742 to clutter-deprecated.h.
744 * clutter/cogl/gl/Makefile.am:
745 * clutter/cogl/gl/cogl-texture.c:
746 * clutter/cogl/gl/cogl.c:
747 * clutter/cogl/gles/Makefile.am:
748 * clutter/cogl/gles/cogl-texture.c:
749 * clutter/cogl/gles/cogl.c: Update the GL and GLES implementations
750 of COGL after the CoglColor changes.
752 * clutter/clutter-actor.c:
753 * clutter/clutter-clone-texture.c:
754 * clutter/clutter-entry.c:
755 * clutter/clutter-label.c:
756 * clutter/clutter-rectangle.c:
757 * clutter/clutter-texture.c: Do not use CoglColor whenever it
758 is possible, and use cogl_set_source_color4ub() instead.
760 * clutter/pango/cogl-pango-render.c: Ditto as above.
762 * doc/reference/clutter/subclassing-ClutterActor.xml:
763 * doc/reference/cogl/cogl-sections.txt: Update the documentation.
765 * tests/interactive/test-cogl-offscreen.c:
766 * tests/interactive/test-cogl-primitives.c:
767 * tests/interactive/test-cogl-tex-convert.c:
768 * tests/interactive/test-cogl-tex-foreign.c:
769 * tests/interactive/test-cogl-tex-getset.c:
770 * tests/interactive/test-cogl-tex-polygon.c:
771 * tests/interactive/test-cogl-tex-tile.c:
772 * tests/interactive/test-paint-wrapper.c: Drop the usage of
773 CoglColor whenever it is possible.
775 2008-11-12 Neil Roberts <neil@linux.intel.com>
777 Bug 1057 - cogl_texture_rectangle doesn't support backward
780 * clutter/cogl/gl/cogl-texture.c: Instead of sorting the vertex
781 and texture coordinates passed to cogl_texture_rectangle, just
782 swap both sets whenever the texture coordinates are backward.
784 2008-11-12 Neil Roberts <neil@linux.intel.com>
786 * clutter/clutter-rectangle.c (clutter_rectangle_paint): Fixed so
787 that it doesn't use the alpha value from the border colour to draw
790 2008-11-12 Neil Roberts <neil@linux.intel.com>
792 * clutter/cogl/gles/Makefile.am (libclutterinclude_HEADERS):
793 * clutter/cogl/gl/Makefile.am (libclutterinclude_HEADERS):
794 * clutter/cogl/common/Makefile.am
795 (libclutter_cogl_common_la_SOURCES): Move cogl-mesh.h into the
796 headers for libclutter so that it will get installed.
798 2008-11-12 Neil Roberts <neil@linux.intel.com>
800 Fix warnings in mesh tests
802 * tests/conform/test-mesh-mutability.c (on_paint):
803 * tests/conform/test-mesh-interleved.c (on_paint):
804 * tests/conform/test-mesh-contiguous.c (on_paint): Use g_usleep
807 * tests/conform/test-mesh-mutability.c (queue_redraw):
808 * tests/conform/test-mesh-interleved.c (queue_redraw):
809 * tests/conform/test-mesh-contiguous.c (queue_redraw): Added
810 missing return statement
812 * clutter/cogl/cogl-mesh.h: Add a declaration for
815 * clutter/cogl/common/cogl-mesh.c (cogl_mesh_submit): Move the
816 documentation to cogl-mesh.h to match the rest of the functions
818 2008-11-10 Robert Bragg <robert@linux.intel.com>
820 Bug 1164 - Implements the proposed Mesh API
822 * clutter/cogl/cogl-mesh.h
823 * clutter/cogl/cogl-types.h
824 * clutter/cogl/cogl.h.in
825 * clutter/cogl/common/Makefile.am
826 * clutter/cogl/common/cogl-mesh-private.h
827 * clutter/cogl/common/cogl-mesh.c
828 * clutter/cogl/gl/cogl-context.c
829 * clutter/cogl/gl/cogl-context.h
830 * clutter/cogl/gl/cogl-defines.h.in
831 * clutter/cogl/gl/cogl.c
832 * clutter/cogl/gles/cogl-context.c
833 * clutter/cogl/gles/cogl-context.h:
834 The Mesh API provides a means for submitting an extensible number of
835 per vertex attributes to OpenGL in a way that doesn't require format
836 conversions and so that the data can be mapped into the GPU (in vertex
837 buffer objects) for - hopefully - fast re-use.
839 There are a number of things we can potentially use this API for, but
840 right now this just provides a foundation to build on. Please read
841 the extensive list of TODO items in cogl-mesh.c for examples.
843 Please refer to the cogl-mesh section in the reference manual for
844 documentation of the API.
846 * tests/conform/Makefile.am
847 * tests/conform/test-conform-main.c
848 * tests/conform/test-mesh-contiguous.c
849 * tests/conform/test-mesh-interleved.c
850 * tests/conform/test-mesh-mutability.c:
851 Privides basic coverage testing for the mesh API.
853 2008-11-10 Robert Bragg <robert@linux.intel.com>
855 Bug 1164 - Implements the proposed Mesh API
857 * clutter/cogl/cogl-mesh.h
858 * clutter/cogl/cogl-types.h
859 * clutter/cogl/cogl.h.in
860 * clutter/cogl/common/Makefile.am
861 * clutter/cogl/common/cogl-mesh-private.h
862 * clutter/cogl/common/cogl-mesh.c
863 * clutter/cogl/gl/cogl-context.c
864 * clutter/cogl/gl/cogl-context.h
865 * clutter/cogl/gl/cogl-defines.h.in
866 * clutter/cogl/gl/cogl.c
867 * clutter/cogl/gles/cogl-context.c
868 * clutter/cogl/gles/cogl-context.h:
869 The Mesh API provides a means for submitting an extensible number of
870 per vertex attributes to OpenGL in a way that doesn't require format
871 conversions and so that the data can be mapped into the GPU (in vertex
872 buffer objects) for - hopefully - fast re-use.
874 There are a number of things we can potentially use this API for, but
875 right now this just provides a foundation to build on. Please read
876 the extensive list of TODO items in cogl-mesh.c for examples.
878 Please refer to the cogl-mesh section in the reference manual for
879 documentation of the API.
881 * tests/conform/Makefile.am
882 * tests/conform/test-conform-main.c
883 * tests/conform/test-mesh-contiguous.c
884 * tests/conform/test-mesh-interleved.c
885 * tests/conform/test-mesh-mutability.c:
886 Privides basic coverage testing for the mesh API.
888 2008-11-10 Robert Bragg <robert@linux.intel.com>
890 * tests/conform/ADDING_NEW_TESTS
891 * tests/conform/test-conform-common.c
892 * tests/conform/test-pick.c:
893 Instead of using clutter_stage_new /clutter_actor_destroy as a way to
894 avoid cascading side effects between unit tests, due to left over
895 actors, we now destroy all children of the default stage between
898 * tests/conform/wrapper.sh:
899 Adds a convenience note about how to run valgrind for an individual
902 2008-11-10 Neil Roberts <neil@linux.intel.com>
904 * tests/interactive/test-main.c (main): Allow more than two
905 arguments so that the remaining arguments can be passed to the
906 test. This is needed for test-behave for example which can take a
909 2008-11-10 Emmanuele Bassi <ebassi@linux.intel.com>
911 * clutter/clutter-texture.c: Remove an unused function.
913 2008-11-10 Emmanuele Bassi <ebassi@linux.intel.com>
915 * tests/conform/test-label-cache.c:
916 * tests/conform/test-pick.c:
917 * tests/conform/test-timeline.c: Show all the output messages only
918 if the test was done with the verbose flag turned on.
920 * tests/interactive/test-main.c: Do not use the (gpointer*) cast,
921 but use a temporary gpointer instead.
923 2008-11-10 Robert Bragg <robert@linux.intel.com>
925 * tests/conform/Makefile.am:
926 * tests/conform/wrapper.sh:
927 * tests/conform/test-conform-main.c:
928 * tests/conform/test-timeline.c:
929 Adds Neil's updates to test-timeline.c so it now works with the new
930 unit testing infrastructure.
932 Also some fixes to ensure wrappers get setup correctly for the
935 * tests/interactive/test-main.c:
936 cast the symbol return pointer as (gpointer *) to avoid warning
938 * tests/conform/test-pick.c:
939 g_assert that the test passes, instead of using exit()
941 * test/conform/ADDING_NEW_TESTS:
944 2008-11-08 Emmanuele Bassi <ebassi@linux.intel.com>
946 * tests/conform/Makefile.am:
947 * tests/conform/test-actor-invariants.c:
948 * tests/conform/test-conform-main.c: Move the actor invariants
949 unit to the conform section of the test suite.
951 * tests/interactive/Makefile.am:
952 * tests/interactive/test-entry-auto.c:
953 * tests/interactive/test-invariants.c: Remove the entry-auto
954 and invariants test, since those two belong to the conform
957 2008-11-07 Robert Bragg <robert@linux.intel.com>
959 Bug 1162 - Re-works the tests/ to use the glib-2.16 unit testing
964 The tests have been reorganised into different categories: conformance,
965 interactive and micro benchmarks.
966 - conformance tests can be run as part of automated tests
967 - interactive tests are basically all the existing tests
968 - micro benchmarks focus on a single performance metric
970 I converted the timeline tests to conformance tests and also added some
971 tests from Neil Roberts and Ebassi.
973 Note: currently only the conformance tests use the glib test APIs,
974 though the micro benchmarks should too.
976 The other change is to make the unit tests link into monolithic binaries
977 which makes the build time for unit tests considerably faster. To deal
978 with the extra complexity this adds to debugging individual tests I
979 have added some sugar to the makefiles so all the tests can be run
980 directly via a symlink and when an individual test is run this way,
981 then a note is printed to the terminal explaining exactly how that test
982 may be debugged using GDB.
984 There is a convenience make rule: 'make test-report', that will run all
985 the conformance tests and hopefully even open the results in your web
986 browser. It skips some of the slower timeline tests, but you can run
987 those using 'make full-report'
989 2008-11-07 Emmanuele Bassi <ebassi@linux.intel.com>
991 * clutter/clutter-media.c: Improve documentation of the
992 ClutterMedia interface.
994 2008-11-07 Matthew Allum <mallum@linux.intel.com>
996 Bug 1238 - [PATCH] Pack bitfields in ClutterTexturePrivate
998 * clutter/clutter-texture.c:
1000 Using 'guint my_field : 1' for booleans to save space only
1001 makes sense if you group all such fields together. Fix
1002 grouping for ClutterTexturePrivate. Thanks to Owen Taylor for
1005 2008-11-07 Matthew Allum <mallum@linux.intel.com>
1007 Bug 1237 - clutter_texture_set_filter_quality calls
1008 clutter_texture_[un]realize
1010 * clutter/clutter-texture.c: (clutter_texture_set_filter_quality):
1011 Call clutter_actor_[un]realize and keep visibility state
1013 2008-11-07 Matthew Allum <mallum@linux.intel.com>
1015 * clutter/clutter-actor.c:
1016 * clutter/clutter-actor.h:
1017 * clutter/clutter-clone-texture.c:
1018 * clutter/clutter-private.h:
1019 * clutter/clutter-texture.c:
1020 * clutter/x11/clutter-x11-texture-pixmap.c:
1022 Attempt to lower overhead of updating TFP's (particularly mipmaped).
1023 Compresses mipmap updates only for visible TFPs.
1024 Avoiding updates for non visible TFP's whilst keeping visible
1027 2008-11-06 Neil Roberts <neil@linux.intel.com>
1029 Bug 1230 - Pick fails on low precision color buffers
1031 * clutter/clutter-main.c (_clutter_id_to_color): When using fuzzy
1032 picking to pick a color for an actor, it would previously set the
1033 fuzzy bit and then all but the most significant of the remaining
1034 unused bits. This meant that for 16-bit displays it would end up
1035 with a strange pattern for the unused bits like 1011 which could
1036 cause it to round up. Now it just sets all but the most
1037 significant of all of the unused bits giving a pattern like
1038 0111. Thanks to Guy Zadickario for the patch.
1040 2008-11-06 Neil Roberts <neil@linux.intel.com>
1042 * clutter/cogl/gles/cogl.c (cogl_perspective):
1043 * clutter/cogl/common/cogl-fixed.c (cogl_fixed_sin)
1044 (cogl_angle_sin, cogl_angle_tan, cogl_fixed_sqrt): Replaced uses
1045 of 1 + ~x with just -x which is equivalent and easier to
1048 2008-11-06 Emmanuele Bassi <ebassi@linux.intel.com>
1050 Bug 1233 - CLUTTER_ALPHA_SINE_INC is broken in trunk
1052 * clutter/clutter-alpha.c: Fix a rollover in the sine functions.
1054 2008-11-05 Neil Roberts <neil@linux.intel.com>
1056 * clutter/clutter-color.c (clutter_color_new): Remove CLAMP macros
1057 around the component parameters because they are guint8 anyway so
1058 the CLAMP is redundant and it causes a warning.
1060 2008-11-04 Thomas Wood <thomas@linux.intel.com>
1062 * clutter/clutter-color.c: Update ClutterColor documentation as
1063 changes have been backported to 0.8.4.
1065 2008-11-04 Emmanuele Bassi <ebassi@linux.intel.com>
1067 * clutter/clutter-script.c: Document the "is-default" member of
1068 a ClutterStage definition.
1070 2008-11-04 Neil Roberts <neil@linux.intel.com>
1072 * clutter/cogl/gl/cogl.c (cogl_perspective): Use the accurate
1073 64-bit multiplication macro instead of COGL_FIXED_FAST_DIV for
1074 calculating xmax as was done previously. This fixes
1075 test-perspective and other tests that had a gone a bit skewiff.
1077 2008-11-04 Neil Roberts <neil@linux.intel.com>
1079 Bug 1181 - In Score, timelines, appended at markers, are also
1082 * clutter/clutter-score.c (start_children_entries): Use the name
1083 of the marker to start as the data parameter and only start child
1084 timelines that have the same marker name. Previously the
1085 ClutterScore would just start all child entries when a marker was
1086 reached or the timeline completed regardless of whether they were
1087 added with a marker or not. Thanks to Mihail Naydenov for
1090 2008-11-03 Emmanuele Bassi <ebassi@linux.intel.com>
1092 * clutter/cogl/gl/Makefile.am: Whitespace fixes.
1094 * clutter/cogl/gles/Makefile.am: Put back a missing backslash
1095 that broke the GLES build.
1097 2008-11-03 Emmanuele Bassi <ebassi@linux.intel.com>
1099 Bug 1231 - Build fails in gles flavour in revision 3442
1101 * clutter/cogl/gles/cogl-context.h: Fix remaining use of
1102 ClutterFixed over CoglFixed. (Michael Boccara)
1104 2008-11-03 Neil Roberts <neil@linux.intel.com>
1106 Bug 1207 - Timelines sometime miss markers
1108 * clutter/clutter-timeline.c (timeline_timeout_func): Move the
1109 code for firing the new-frame and marker-reached signals into a
1110 separate static function so that it can also be called when the
1111 last frame is reached. Also fix an issue where the frame numbers
1112 were changed in the wrong direction when detecting missed markers
1113 in a reversed timeline. Based on a patch by Michael Boccara.
1115 * tests/test-timeline.c: Now tries to automatically verify whether
1116 the test worked by keeping track of all the signal emissions. The
1117 timelines are run a second time with an extra timeout that causes
1118 delays to simulate skipped frames.
1120 2008-10-31 Emmanuele Bassi <ebassi@linux.intel.com>
1122 * clutter/pango/cogl-pango-fontmap.c:
1123 * clutter/pango/cogl-pango-render.c: Whitespace fixes and code
1124 duplication removal. Plus, start documenting the CoglPango API.
1126 2008-10-31 Matthew Allum <mallum@openedhand.com>
1128 * clutter/clutter-texture.c: (clutter_texture_set_filter_quality),
1129 (clutter_texture_get_filter_quality):
1130 Fix up some logic, typos.
1132 * clutter/glx/clutter-glx-texture-pixmap.c:
1133 Improve support for mipmaped TFP textures.
1135 2008-10-31 Emmanuele Bassi <ebassi@linux.intel.com>
1137 Bug 1200 - Crash with invalid DISPLAY
1139 * clutter/clutter-main.c: Use the ClutterBackend wrapper API
1140 instead of directly checking the class structure.
1142 * clutter/glx/clutter-backend-glx.c: Return the correct value
1145 * clutter/x11/clutter-backend-x11.c: Bail out if XOpenDisplay()
1148 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
1150 * clutter/cogl/cogl-color.h:
1151 * clutter/cogl/cogl-fixed.h:
1152 * clutter/cogl/cogl-offscreen.h:
1153 * clutter/cogl/cogl-path.h:
1154 * clutter/cogl/cogl-shader.h:
1155 * clutter/cogl/cogl-texture.h:
1156 * clutter/cogl/cogl-types.h: Add copyright and licensing
1157 notice to the newly added files.
1159 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
1161 Bug 1219 - Clean up cogl.h
1163 * clutter/cogl/cogl.h.in:
1164 * clutter/cogl/cogl-offscreen.h:
1165 * clutter/cogl/cogl-path.h:
1166 * clutter/cogl/cogl-shader.h:
1167 * clutter/cogl/cogl-texture.h:
1168 * clutter/cogl/cogl-types.h: Split up the massive cogl.h file
1169 into sub-header for each section of the API.
1171 * clutter/cogl/gl/*:
1172 * clutter/cogl/gles/*: Update the GL and GLES implementations
1173 of COGL to cope with the new header structure.
1175 * doc/reference/cogl/Makefile.am: Fix symbol retrieval.
1177 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
1179 Bug 1215 - Move the Pango renderer to the public API
1181 * clutter/pango/*: Rename PangoClutter -> CoglPango.
1183 * clutter/Makefile.am:
1184 * clutter/clutter-backend.c:
1185 * clutter/clutter-entry.c:
1186 * clutter/clutter-label.c:
1187 * clutter/clutter-main.[ch]:
1188 * clutter/clutter-private.h: Update the users of the Pango
1191 * README: Update release notes.
1193 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
1195 Bug 1212 - Allow only a single include file for Clutter
1197 * clutter/*.h: Only allow including clutter.h in third
1200 * clutter/cogl/cogl-color.h:
1201 * clutter/cogl/cogl-fixed.h:
1202 * clutter/cogl/cogl.h.in: Only allow including cogl.h in
1205 * clutter/cogl/common/Makefile.am:
1206 * clutter/cogl/gl/Makefile.am:
1207 * clutter/cogl/gles/Makefile.am:
1208 * clutter/eglnative/Makefile.am:
1209 * clutter/eglx/Makefile.am:
1210 * clutter/fruity/Makefile.am:
1211 * clutter/glx/Makefile.am:
1212 * clutter/glx/clutter-glx.h:
1213 * clutter/osx/Makefile.am:
1214 * clutter/pango/Makefile.am:
1215 * clutter/sdl/Makefile.am:
1216 * clutter/win32/Makefile.am:
1217 * clutter/x11/Makefile.am: Fix build environment.
1219 * clutter/x11/clutter-x11-texture-pixmap.h:
1220 * clutter/x11/clutter-x11.h: Fix inclusion rules.
1222 * tests/test-pixmap.c: Fix inclusion of GdkPixbuf header.
1224 * README: Update release notes.
1226 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
1228 Bug 1211 - Drop ClutterFeatureFlags usage from COGL
1230 * clutter/cogl/cogl.h.in:
1231 * clutter/cogl/gl/cogl.c:
1232 * clutter/cogl/gles/cogl.c: Do not use ClutterFeatureFlags
1233 when CoglFeatureFlags will do. This removes the last usage
1234 of Clutter API inside COGL.
1236 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
1238 Bug 1210 - Add CoglColor API
1240 * clutter/cogl/cogl-color.h:
1241 * clutter/cogl/cogl.h.in:
1242 * clutter/cogl/common/Makefile.am:
1243 * clutter/cogl/common/cogl-color.c:
1244 * clutter/cogl/gl/Makefile.am:
1245 * clutter/cogl/gl/cogl.c:
1246 * clutter/cogl/gles/Makefile.am:
1247 * clutter/cogl/gles/cogl-texture.c:
1248 * clutter/cogl/gles/cogl.c: Add a new color-type, to be used by
1249 COGL. CoglColor is optimized to allow the minimum amount of
1250 conversions possible for both GL and GLES implementations.
1252 * clutter/clutter-actor.c:
1253 * clutter/clutter-clone-texture.c:
1254 * clutter/clutter-entry.c:
1255 * clutter/clutter-main.c:
1256 * clutter/clutter-rectangle.c:
1257 * clutter/clutter-stage.c:
1258 * clutter/clutter-texture.c: Use CoglColor when needed.
1260 * clutter/pango/pangoclutter-render.c: Use CoglColor when needed.
1262 * doc/reference/cogl/cogl-docs.sgml:
1263 * doc/reference/cogl/cogl-sections.txt: Update the documentation.
1265 * tests/test-cogl-offscreen.c:
1266 * tests/test-cogl-primitives.c:
1267 * tests/test-cogl-tex-convert.c:
1268 * tests/test-cogl-tex-foreign.c:
1269 * tests/test-cogl-tex-getset.c:
1270 * tests/test-cogl-tex-polygon.c:
1271 * tests/test-cogl-tex-tile.c:
1272 * tests/test-paint-wrapper.c: Update the tests.
1274 * README: Update release notes.
1276 2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
1278 Bug 1209 - Move fixed point API in COGL
1280 * clutter/cogl/cogl-fixed.h:
1281 * clutter/cogl/cogl.h.in:
1282 * clutter/cogl/common/Makefile.am:
1283 * clutter/cogl/common/cogl-fixed.c: Add fixed point API, modelled
1284 after the ClutterFixed. The CoglFixed API supercedes the ClutterFixed
1285 one and avoids the dependency of COGL on Clutter's own API.
1287 * clutter/cogl/common/cogl-clip-stack.c:
1288 * clutter/cogl/common/cogl-primitives.c:
1289 * clutter/cogl/common/cogl-primitives.h: Update internal usage of
1290 ClutterFixed to CoglFixed.
1292 * clutter/cogl/gl/Makefile.am:
1293 * clutter/cogl/gl/cogl-primitives.c:
1294 * clutter/cogl/gl/cogl-texture.c:
1295 * clutter/cogl/gl/cogl.c: Ditto, in the GL implementation of the
1298 * clutter/cogl/gles/Makefile.am:
1299 * clutter/cogl/gles/cogl-fbo.c:
1300 * clutter/cogl/gles/cogl-gles2-wrapper.c:
1301 * clutter/cogl/gles/cogl-primitives.c:
1302 * clutter/cogl/gles/cogl-texture.c:
1303 * clutter/cogl/gles/cogl.c: Ditto, in the GLES implementation of
1306 * clutter/pango/pangoclutter-glyph-cache.c:
1307 * clutter/pango/pangoclutter-glyph-cache.h: Ditto, in the Pango
1308 renderer glyphs cache.
1310 * clutter/clutter-fixed.c:
1311 * clutter/clutter-fixed.h: ClutterFixed and related API becomes
1312 a simple transition API for bindings and public Clutter API.
1314 * clutter/clutter-actor.c:
1315 * clutter/clutter-alpha.c:
1316 * clutter/clutter-backend.c:
1317 * clutter/clutter-behaviour-depth.c:
1318 * clutter/clutter-behaviour-ellipse.c:
1319 * clutter/clutter-behaviour-path.c:
1320 * clutter/clutter-behaviour-rotate.c:
1321 * clutter/clutter-behaviour-scale.c:
1322 * clutter/clutter-clone-texture.c:
1323 * clutter/clutter-color.c:
1324 * clutter/clutter-entry.c:
1325 * clutter/clutter-stage.c:
1326 * clutter/clutter-texture.c:
1327 * clutter/clutter-timeline.c:
1328 * clutter/clutter-units.h: Move from the internal usage of
1329 ClutterFixed to CoglFixed.
1331 * doc/reference/clutter/clutter-sections.txt:
1332 * doc/reference/cogl/cogl-docs.sgml:
1333 * doc/reference/cogl/cogl-sections.txt: Update the documentation.
1335 * tests/test-cogl-tex-tile.c:
1336 * tests/test-project.c: Fix tests after the API change
1338 * README: Add release notes.
1340 2008-10-29 Neil Roberts <neil@linux.intel.com>
1342 Bug 1074 - FBOs on GLES
1344 * clutter/cogl/gles/cogl-fbo.c: Copy the code from gl/cogl-fbo but
1345 use the API calls directly instead of loading an extension because
1346 it is part of the core in GLES 2.
1348 * clutter/cogl/gles/cogl.c (_cogl_features_init): Report
1349 COGL_FEATURE_OFFSCREEN.
1351 * clutter/cogl/gles/cogl-fbo.h (CoglFbo): Add gl_stencil_handle.
1353 * clutter/cogl/gles/cogl-context.h (CoglContext): Add
1356 * tests/test-fbo.c (make_shader): Conditionally use the GLES 2
1357 names of the shader variables
1359 2008-10-29 Neil Roberts <neil@linux.intel.com>
1361 Bug 1206 - Picking disabled dithering
1363 * clutter/clutter-main.c (_clutter_do_pick): After picking is
1364 finished, restore the state of glEnable (GL_DITHER). Otherwise it
1365 will cause the scene to look different after the first pick on low
1366 depth displays. (Thanks to Michael Boccara for the patch)
1368 2008-10-28 Thomas Wood <thomas@linux.intel.com>
1370 * clutter/clutter-color.c (param_color_set_default): Set the no copy
1371 flag when setting the default param spec value to prevent invalid
1374 2008-10-27 Neil Roberts <neil@linux.intel.com>
1376 Bug 1189 - Backface culling
1378 * clutter/cogl/gl/cogl-texture.c (cogl_texture_polygon)
1379 (_cogl_texture_quad_sw, _cogl_texture_quad_hw):
1380 * clutter/cogl/gles/cogl-texture.c (cogl_texture_polygon)
1381 (_cogl_texture_quad_sw, _cogl_texture_quad_hw): Enable backface
1382 culling in GL if it is requested.
1384 * clutter/cogl/gles/cogl-texture.c (_cogl_texture_quad_sw)
1385 (_cogl_texture_quad_hw):
1386 * clutter/cogl/gl/cogl-texture.c (_cogl_texture_quad_sw)
1387 (_cogl_texture_quad_hw): Reorder the
1388 vertices so that they are counter-clockwise.
1390 * clutter/cogl/gles/cogl-context.h (CoglContext):
1391 * clutter/cogl/gl/cogl-context.h (CoglContext): Added a flag to
1392 store whether backface culling is currently enabled.
1394 * clutter/cogl/gles/cogl.c (cogl_enable_backface_culling):
1395 * clutter/cogl/gl/cogl.c (cogl_enable_backface_culling): New
1398 * doc/reference/cogl/cogl-sections.txt: Add
1399 cogl_enable_backface_culling
1401 2008-10-27 Neil Roberts <neil@linux.intel.com>
1403 Bug 1196 - Texture border drawing problems
1405 * clutter/cogl/gl/cogl-texture.c (_cogl_texture_upload_subregion_to_gl)
1406 (_cogl_texture_upload_to_gl):
1408 * clutter/cogl/gles/cogl-texture.c (_cogl_texture_upload_to_gl)
1409 (_cogl_texture_upload_subregion_to_gl):
1411 When uploading data to a sliced texture, fill the waste pixels
1412 with copies of the edge of the real texture data. Otherwise the
1413 value of the waste pixels are undefined so it will show artifacts
1414 when the texture is scaled with GL_LINEAR and the pixels are
1417 2008-10-22 Thomas Wood <thomas@linux.intel.com>
1419 * tests/test-actors.c: Don't adjust the radius based on the number of
1422 2008-10-21 Emmanuele Bassi <ebassi@linux.intel.com>
1424 * clutter/clutter-color.[ch] (clutter_value_set_color): Constify
1425 colors and values where needed.
1427 2008-10-21 Emmanuele Bassi <ebassi@linux.intel.com>
1429 Bug 1197 - Missing const for clutter_init_with_args *
1431 * clutter/clutter-main.[ch] (clutter_init_with_args): Constify
1432 the string parameters. (Owen Taylor)
1434 2008-10-20 Emmanuele Bassi <ebassi@linux.intel.com>
1436 * configure.ac: Use gmodule-no-export-2.0, not gmodule-2.0,
1437 to avoid breaking the symbol hiding. (thanks to Ross Burton
1438 and Laurent Bigonville)
1440 2008-10-20 Neil Roberts <neil@linux.intel.com>
1442 Bug 1043 - COGL calls glTexSubImage2D() with out-of-bounds
1445 * clutter/cogl/gl/cogl-texture.c
1446 (_cogl_texture_upload_subregion_to_gl): When iterating over the
1447 slices, discard ones that don't intersect immediatly otherwise it
1448 will call glTexSubImage2D with a negative width/height and then
1449 move the source position incorrectly. Thanks to Gwenole
1452 2008-10-20 Emmanuele Bassi <ebassi@linux.intel.com>
1454 * clutter/clutter-color.h: Declare clutter_color_new() in the
1457 2008-10-20 Neil Roberts <neil@linux.intel.com>
1459 Bug 1195 - ClutterBehaviourBspline only works for very short paths
1461 * clutter/clutter-behaviour-bspline.c: Changed the CBZ_T_POW3 and
1462 CBZ_T_MUL functions so that they preserve more of the least
1463 significant bits. This fixes some of the jaggy behaviour with
1466 2008-10-17 Thomas Wood <thomas@linux.intel.com>
1468 reviewed by: Emmanuele Bassi <ebassi@linux.intel.com>
1470 * clutter/clutter-color.[ch]: Add GParamSpec and GValue integration
1471 for ClutterColor. With ClutterParamSpecColor it is possible to define
1472 color properties; with the GValue integration it's possible to
1473 automatically transform strings into colors and vice versa.
1475 (clutter_color_free): Allow NULL parameter to match other boxed
1478 (clutter_color_new): Add a constructor for the ClutterColor boxed
1479 type, mostly for bindings.
1481 2008-10-17 Emmanuele Bassi <ebassi@linux.intel.com>
1483 * clutter/clutter-color.c (clutter_color_parse): Add checks
1484 for the arguments, to avoid trying to parse NULL strings.
1486 2008-10-16 Emmanuele Bassi <ebassi@linux.intel.com>
1488 * clutter/clutter-container.[ch]: Add checks to the Container
1489 interface invocation methods, to avoid crashing or corrupting
1490 the stack when an actor does not implement every virtual
1491 function of the Container interface vtable. GObject allows this
1492 to happen so we must handle the case gracefully. This also means
1493 that we can classify some virtual function as mandatory (as is
1494 the case for ::add, ::remove and ::foreach) and some other
1497 2008-10-08 Emmanuele Bassi <ebassi@linux.intel.com>
1499 * tests/test-depth.c (raise_top), (main): Fix a shadowing
1500 with raise() from signal.h.
1502 2008-10-01 Øyvind Kolås <pippin@linux.intel.com>
1504 Bug 1108 - Enter/Leave events logics wrt. skipped motion events
1506 Handle dropped motion events when computing crossing events,
1507 based on a patch from Gwenole Beauchesne.
1509 * clutter/clutter-main.c: (clutter_event_get_device): internal static
1511 (clutter_do_event): generate enter/leave events for all pointer
1513 (generate_enter_leave_events): modified enter/leave events generator
1514 to work for all pointer event types. Enter/leave events are now
1515 delivered before the motion/button event that caused the crossing to
1517 * clutter/clutter-event.c: (clutter_event_copy), (clutter_event_free):
1518 removed reference counting logic that is not needed when the crossing
1519 events are directly delivered.
1521 2008-09-29 Emmanuele Bassi <ebassi@linux.intel.com>
1523 * configure.ac: Post branch bump to 0.9.0
1525 2008-09-25 Emmanuele Bassi <ebassi@linux.intel.com>
1527 * configure.ac: Post release bump to 0.8.3
1529 ======== Release 0.8.2 ========================================================
1531 2008-09-25 Emmanuele Bassi <ebassi@linux.intel.com>
1535 * NEWS: Release 0.8.2
1537 2008-09-25 Emmanuele Bassi <ebassi@linux.intel.com>
1539 * clutter/clutter-event.h: Fix missing documentation.
1541 2008-09-24 Emmanuele Bassi <ebassi@linux.intel.com>
1543 Bug 1130 - CLUTTER_MOTION is not emitted when time goes backwards.
1545 * clutter/clutter-main.c (clutter_do_event): Check for time
1546 rollbacks inside the motion event throttling. (Pierce Liu)
1548 2008-09-23 Emmanuele Bassi <ebassi@linux.intel.com>
1550 * clutter/clutter-timeout-pool.c: Reword previous commit.
1552 2008-09-23 Emmanuele Bassi <ebassi@linux.intel.com>
1554 * clutter/clutter-timeout-pool.c:
1555 (clutter_timeout_pool_new): Fix previous commit: g_source_unref()
1556 is not needed. (Thanks to Neil Roberts)
1558 2008-09-23 Emmanuele Bassi <ebassi@linux.intel.com>
1560 Bug 1154 - clutter_timeout_pool_new() documentation doesn't say
1563 * clutter/clutter-timeout-pool.c: Update the documentation to
1564 note that you must use g_source_unref() to free the timeout
1565 pool. (Murray Cumming)
1567 2008-09-23 Emmanuele Bassi <ebassi@linux.intel.com>
1569 Bug 1124 - Clutter causes an additional size request in each
1572 * clutter/clutter-actor.c:
1573 (clutter_actor_store_old_geometry): Store the allocation instead
1574 of causing a new size-request cycle. (Johan Bilien)
1576 2008-09-23 Emmanuele Bassi <ebassi@linux.intel.com>
1578 Bug 1125 - Save an extra pango_layout_get_size in many cases
1580 * clutter/clutter-label.c:
1581 (clutter_label_create_layout_no_cache): Add a simple check
1582 before calling pango_layout_get_size(). (Johan Bilien)
1584 2008-09-23 Emmanuele Bassi <ebassi@linux.intel.com>
1586 * clutter/clutter-alpha.c:
1587 (clutter_alpha_get_alpha): Do not return the cached value but
1588 just compute the current alpha value. The use case is pretty
1589 much straightforward: stop a timeline, advance it, and retrieve
1590 the alpha value before starting the timeline to adjust an
1591 animation dependent on the alpha. Caching the alpha value is
1592 not needed because the behaviours will always pass the alpha
1593 value inside the ::alpha-notify virtual function anyway, so
1594 there is no need for them to call clutter_alpha_get_alpha().
1596 This change makes it also possible to reliably unit-test
1599 (timeline_new_frame_cb): Call clutter_alpha_get_alpha().
1601 2008-09-23 Tomas Frydrych <tf@linux.intel.com>
1603 * clutter/clutter-main.c:
1604 * clutter/clutter-main.h:
1605 * clutter/clutter-private.h:
1606 * clutter/x11/clutter-backend-x11.c:
1607 (clutter_get_option_group_without_init):
1608 Function to obtain clutter option group without opening display
1609 (for use with foreign display and gtk_clutter_init). Bug 1033.
1611 Stripped trailing whitespace.
1613 2008-09-22 Neil Roberts <neil@linux.intel.com>
1615 Bug 856 - Teardown sequence is borked
1617 * clutter/clutter-main.c: Don't free the ClutterMainContext so
1618 that the main loop can be restarted.
1620 * clutter/eglx/clutter-backend-egl.c:
1621 * clutter/eglnative/clutter-backend-egl.c: Register an atexit
1622 handler which disposes the backend object so that we are still
1623 guaranteed to call eglTerminate on GLES.
1625 2008-09-22 Neil Roberts <neil@linux.intel.com>
1627 * tests/test-unproject.c (on_event):
1628 * tests/test-project.c (on_event): Use a return value for the
1629 'event' signal handler, otherwise it might accidentally return
1630 TRUE for unhandled events and you won't be able to close the
1633 2008-09-19 Emmanuele Bassi <ebassi@linux.intel.com>
1635 Bug 1033 - Manually parsing command line options prevents
1636 initializing clutter
1638 * clutter/clutter-main.c:
1639 (post_parse_hook), (clutter_init_with_args),
1640 (clutter_parse_args), (clutter_init): Move the initialization
1641 of Clutter at the end of the post-parse hook of Clutter's
1642 GOptionGroup. Clutter must be initialized at the end of the
1645 2008-09-19 Emmanuele Bassi <ebassi@linux.intel.com>
1647 * clutter/clutter-main.c: Properly document the
1648 clutter_get_option_group() function and the invariant that
1649 after parsing Clutter's option group the library will be
1650 initialized. (Thanks to Tomas Frydrych for pointing this
1653 2008-09-19 Emmanuele Bassi <ebassi@linux.intel.com>
1655 * clutter/x11/clutter-backend-x11.c: Properly document the
1656 usage of clutter_x11_set_display().
1658 * clutter/x11/clutter-x11.h: clutter_x11_set_display() is
1659 public API and should be declared in the header we install.
1661 2008-09-18 Neil Roberts <neil@linux.intel.com>
1663 Bug 1048 - SIGFPE in cogl_texture_set_region() with nvidia
1665 * clutter/cogl/gl/cogl-texture.c (cogl_texture_set_region):
1666 * clutter/cogl/gles/cogl-texture.c (cogl_texture_set_region):
1667 Don't attempt to upload any data if the width or height of the
1668 subregion is zero. Thanks to Gwenole Beauchesne.
1670 2008-09-18 Neil Roberts <neil@linux.intel.com>
1672 Bug 1044 - cogl_get_viewport error
1674 * clutter/cogl/gles/cogl.c (cogl_get_viewport): Use glGetIntegerv
1675 instead of glGetFixedv to read the viewport because the latter
1676 converts incorrectly on some hardware.
1678 2008-09-18 Neil Roberts <neil@linux.intel.com>
1680 Bug 1080 - clutter_stage_read_pixels has upside-down y coordinate
1682 * clutter/clutter-stage.c (clutter_stage_read_pixels): Use
1683 OpenGL's coordinate system for the arguments to glReadPixels (so
1684 that y zero is the bottom of the window). Use clutter_redraw
1685 instead of clutter_stage_paint to ensure the right GL context is
1686 selected. Set some of the glPixelStore parameters that might have
1687 been changed by Cogl.
1689 * tests/test-stage-read-pixels.c: Replace with a different test
1690 that gets a sub-region of the stage around the cursor.
1692 2008-09-17 Neil Roberts <neil@linux.intel.com>
1694 Bug 1145 - Flicker on resize the window
1696 * clutter/glx/clutter-stage-glx.c (clutter_stage_glx_realize):
1697 Don't set a backing pixel on the X window. Otherwise when the
1698 window resizes it will flicker when X paints the background
1699 immediatly before Clutter repaints the whole stage.
1701 2008-09-17 Neil Roberts <neil@linux.intel.com>
1703 * clutter/clutter-types.h: Swap left and right in the
1704 documentation for ClutterGravity.
1706 2008-09-17 Neil Roberts <neil@linux.intel.com>
1708 Bug 1121 - Setting anchor point doesn't work if set too early
1710 * clutter/clutter-actor.c
1711 (clutter_actor_set_anchor_point_from_gravity)
1712 (clutter_actor_move_anchor_point_from_gravity): Add documentation
1713 to make it clear that the anchor point won't move when the actor
1716 2008-09-16 Neil Roberts <neil@linux.intel.com>
1718 Bug 1100 - WM_SIZE not handled correctly, user_resize and
1719 window_style correction.
1721 * clutter/win32/clutter-stage-win32.c (get_window_style): Remove
1722 the WS_MAXIMIZEBOX style if the stage isn't resizable.
1723 (clutter_stage_win32_set_user_resize): Queue a redraw of the
1724 window frame when the user_resize property is changed.
1726 * clutter/win32/clutter-event-win32.c (message_translate): Don't
1727 update the size of the stage when handling WM_SIZE messages that
1728 result from the stage being minimized. Thanks to Roman Yazmin.
1730 2008-09-16 Tomas Frydrych <tf@linux.intel.com>
1732 * clutter/glx/clutter-glx-texture-pixmap.c:
1733 * clutter/x11/clutter-x11-texture-pixmap.c:
1734 TFP resyncing on MapNotify/ConfigureNotify (bug 1020; patch by
1735 Andy Wingo <wingo@pobox.com>).
1737 2008-09-15 Øyvind Kolås <pippin@linux.intel.com>
1739 * clutter/clutter-main.c: amended typo in gtk-doc.
1741 2008-09-12 Neil Roberts <neil@linux.intel.com>
1743 Bug 1034 - Picking doesn't work on Eee PC
1745 * clutter/clutter-main.c (_clutter_id_to_color): When choosing a
1746 pick color, set all but the most significant of the unused
1747 bits. This should make make it more likely that the GL
1748 implementation will round down to the right value.
1750 * tests/test-pick.c: Test case for picking. It creates 192 actors
1751 at known positions and stores their gids. It then calls
1752 clutter_stage_get_actor_at_pos with each position to check that
1753 the right gid is returned.
1755 * tests/Makefile.am (noinst_PROGRAMS): Add test-pick
1757 2008-09-12 Neil Roberts <neil@linux.intel.com>
1759 Bug 1010 - ClutterLabel does not update the layout (again)
1761 * clutter/clutter-label.c: Bring back layout caching. This time it
1762 will cache up to three different layouts. The width for which each
1763 layout was generated is stored so that if the same width is
1764 requested again it can use the cached version. If no cached
1765 version is available it will try to replace the oldest
1766 layout. 'Age' is determined by a counter which is incremented
1767 every time a layout is created. The cache is cleared after any
1768 property changes that might affect the layout.
1769 (struct _ClutterLabelPrivate): Removed extents_width,
1770 extents_height and context because they weren't used anywhere.
1772 * tests/test-label-cache.c: Add a test which checks whether the
1773 label is using a different layout when properties are
1774 changed. Also compares the extents of the label's layout with an
1775 independent layout and fails if they aren't the same.
1777 * tests/Makefile.am (noinst_PROGRAMS): Add test-label-cache
1779 2008-09-10 Neil Roberts <neil@o-hand.com>
1781 Bug 1137 - Setting the anchor point does not trigger a re-paint
1783 * clutter/clutter-actor.c (clutter_actor_set_property): When
1784 changing the anchor point properties, use set_anchor_pointu
1785 instead of changing the value directly so that a redraw will be
1787 (clutter_actor_set_anchor_pointu): Queue a redraw when the anchor
1788 point is changed. Thanks to Johan Bilien.
1790 2008-08-27 Emmanuele Bassi <ebassi@openedhand.com>
1792 Bug 1082 - Texture bitmap is destroyed in wrong way
1794 * clutter/cogl/common/cogl-bitmap-pixbuf.c:
1795 (_cogl_bitmap_from_file): Make a copy of the pixbuf data in
1796 the internal image loader so that we can keep working under
1797 the assumption that we are using the GLib memory allocation
1798 and deallocation functions.
1800 2008-08-27 Emmanuele Bassi <ebassi@openedhand.com>
1802 Bug 1099 - No ClutterScript API to get a list of IDs in a given file
1804 * clutter/clutter-script.[ch]: Add clutter_script_list_objects(),
1805 a function for retrieving all the objects built by a ClutterScript
1806 instance. (Based on a patch by Noah Gibbs)
1808 2008-08-26 Emmanuele Bassi <ebassi@openedhand.com>
1810 Bug 1090 - Label somtimes returns natural_width < min_width
1812 * clutter/clutter-label.c:
1813 (clutter_label_get_preferred_width): Check that the width of the
1814 layout is always greater than 0. (Johan Bilien)
1816 2008-08-19 Neil Roberts <neil@o-hand.com>
1818 Bug 1103 - Two typos in clutter documentation
1820 * doc/reference/clutter/subclassing-ClutterActor.xml: Update the
1821 custom actor example since the Cogl API was changed to namespace
1822 all of the path related functions in cogl_path_*. Thanks to Nati
1825 * clutter/clutter-score.c: Add missing parameter in example of
1826 calling clutter_score_start().
1828 2008-08-18 Neil Roberts <neil@o-hand.com>
1830 Bug 1085 - Cursor is in wrong position on ClutterEntry if set
1833 * clutter/clutter-entry.c (clutter_entry_paint): When calculating
1834 the position to draw the cursor at, take into account the
1835 alignment of the text. Queue a redraw when the x-align property is
1838 2008-08-07 Neil Roberts <neil@o-hand.com>
1840 Bug 1091 - WM_MOUSEWHEEL (scroll-event) not handled correctlly
1842 * clutter/win32/clutter-event-win32.c (message_translate): The
1843 coordinates in a WM_MOUSEWEEL message are given relative to the
1844 screen so they need to be converted to client coordinates before
1845 use. Thanks to Roman Yazmin.
1847 2008-08-06 Emmanuele Bassi <ebassi@openedhand.com>
1849 * clutter/clutter-child-meta.c:
1850 (clutter_child_meta_set_property),
1851 (clutter_child_meta_class_init): Make the :container and
1852 :actor properties of ChildMeta construct-only, to allow
1853 bindings to actually use ChildMeta without abusing the API.
1855 * clutter/clutter-container.c (create_child_meta): Instead of
1856 setting the members of the ChildMeta structure, use the
1857 constructor properties.
1859 2008-08-04 Emmanuele Bassi <ebassi@openedhand.com>
1861 * clutter/clutter-keysyms.h: Resync with keysymdef.h inside Xorg.
1863 2008-08-04 Emmanuele Bassi <ebassi@openedhand.com>
1865 * clutter/clutter-script.c:
1866 (clutter_script_default_connect): Improve wording and debug
1867 messages in the default autoconnection for signal handlers.
1869 2008-08-04 Emmanuele Bassi <ebassi@openedhand.com>
1871 * clutter/clutter-script-parser.c:
1872 * clutter/clutter-script-private.h: Clean up the code; add a
1873 conversion function for reading a ClutterColor out of a
1874 JSON object or array definition.
1876 * clutter/clutter-script.c: Clean up the code; document properly
1877 how we translate from type name to type function.
1879 2008-08-04 Emmanuele Bassi <ebassi@openedhand.com>
1881 * clutter/clutter-main.c: Rework and improve the documentation
1882 of the thread-safe timeout and idle source installer functions.
1884 2008-08-01 Neil Roberts <neil@o-hand.com>
1886 Bug 945 - Clipping+fbo cloning bugs
1888 * clutter/cogl/gl/cogl.c:
1889 * clutter/cogl/gles/cogl.c:
1890 * clutter/cogl/cogl.h.in: Add cogl_clip_stack_save,
1891 cogl_clip_stack_restore, cogl_viewport and cogl_frustum.
1893 * clutter/cogl/gl/cogl-fbo.h:
1894 * clutter/cogl/gl/cogl-fbo.c: Try to attach a stencil buffer when
1897 * clutter/cogl/common/cogl-clip-stack.c: Add functions to save and
1898 restore the whole state of the stack.
1900 * clutter/clutter-texture.c (clutter_texture_paint): When
1901 rendering the FBO source, setup a temporary asymmetric perspective
1902 projection matrix to render it as it would appear on screen.
1904 * clutter/clutter-private.h:
1905 * clutter/clutter-actor.c
1906 (_clutter_actor_apply_modelview_transform_recursive): No longer
1907 static and exported in clutter-private.h
1909 2008-08-01 Neil Roberts <neil@o-hand.com>
1911 Bug 1071 - clutter_timeline_get_duration doesn't always work
1913 * clutter/clutter-timeline.c: Calculate the 'duration' property
1914 on-demand instead of storing it as a member variable. Notify
1915 duration property changes whenever the fps or num_frames changes.
1917 2008-08-01 Neil Roberts <neil@o-hand.com>
1919 Bug 1069 - Warnings with ClutterScore
1921 * clutter/clutter-score.c (clutter_score_is_playing): Check
1922 whether priv->running_timelines is NULL before checking its
1924 (foreach_running_timeline): Remove the completed signal handler
1925 when stopping the score. Otherwise the completed callback will get
1926 called multiple times if the timeline is started later.
1928 2008-07-31 Neil Roberts <neil@o-hand.com>
1930 Bug 1075 - Difficult to bind clutter_stage_new
1932 * clutter/clutter-stage.c (clutter_stage_dispose): Unrealize the
1933 stage before removing the update idle handler. Otherwise
1934 unrealizing causes another redraw to be queued and if the stage
1935 object remains alive it will cause an assert and abort.
1937 2008-07-30 Neil Roberts <neil@o-hand.com>
1939 * clutter/clutter-stage.c (clutter_stage_class_init): Added the
1940 'perspective' property. All of the machinery was there to
1941 implement the property but somehow the call that actually installs
1944 2008-07-30 Emmanuele Bassi <ebassi@openedhand.com>
1946 * clutter/clutter-fixed.h:
1947 * clutter/clutter-units.h: Fix the upper and lower boundaries of
1948 ClutterFixed and ClutterUnit types; G_MAXINT16 and G_MININT16
1949 were not enough to describe those values.
1951 2008-07-30 Ross Burton <ross@openedhand.com>
1953 * clutter/clutter-main.c:
1954 Destroy the debugging timer when the context is freed.
1956 * clutter/clutter-stage.c:
1957 Free the stage title when the stage is finalized.
1959 2008-07-30 Neil Roberts <neil@o-hand.com>
1961 * clutter/clutter-model.c (clutter_model_set_sorting_column): This
1962 function is supposed to accept -1 to disable sorting. However it
1963 checks for whether the column is >= the number of columns, but
1964 clutter_model_get_n_columns() returns an unsigned int so the
1965 column number also gets promoted to unsigned for the
1966 comparison. Therefore -1 is always greater than the number of
1967 columns so it wouldn't let you set it.
1969 2008-07-26 Neil Roberts <neil@o-hand.com>
1971 * clutter/clutter-timeline.c (clutter_timeline_list_markers): When
1972 requesting the list of markers it was returning the marker data as
1973 a string instead of the name so it was copying garbage.
1975 2008-07-25 Neil Roberts <neil@o-hand.com>
1977 * clutter/clutter-actor.c (clutter_actor_remove_clip)
1978 (clutter_actor_set_clipu): Queue a redraw when the clip is
1981 2008-07-24 Neil Roberts <neil@o-hand.com>
1983 * clutter/clutter-script.c: The example in the documentation
1984 showed a color being specified as '0xff0000ff' but it should be
1987 2008-07-23 Emmanuele Bassi <ebassi@openedhand.com>
1989 Bug 1062 - clutter_actor_query_coords() replacement in 0.8
1991 * clutter/clutter-deprecated.h: Fix the deprecation warning
1992 for clutter_actor_query_coords(). (Gwenole Beauchesne)
1994 2008-07-17 Emmanuele Bassi <ebassi@openedhand.com>
1996 Bug 1047 - API documentation from release tarball is not
1997 installed by "make install"
2000 * Makefile.am: Make the recursion into the documentation
2001 directory depend on on whether we explicitly enable it or
2002 if we are not inside an SVN checkout.
2004 2008-07-17 Neil Roberts <neil@o-hand.com>
2006 * clutter/clutter-texture.c:
2007 * clutter/clutter-rectangle.c:
2008 * clutter/clutter-group.c:
2009 * clutter/clutter-entry.c:
2010 * clutter/clutter-clone-texture.c: Remove unnecessary calls to
2011 cogl_{push,pop}_matrix. The matrix is preserved in
2012 clutter_actor_paint whenever the actor's transformation is applied
2013 so there should be no need to push the matrix in actor paint
2014 implementations unless it does some additional transformations
2017 2008-07-16 Emmanuele Bassi <ebassi@openedhand.com>
2019 * clutter.pc.in: Add a variable containing the COGL backend
2020 inside the pkg-config file, for configure-time checks.
2022 2008-07-14 Neil Roberts <neil@o-hand.com>
2024 * clutter/cogl/common/cogl-primitives.c (cogl_path_rel_curve_to):
2025 Fixed a typo in the second parameter which meant the curve was
2028 2008-07-14 Emmanuele Bassi <ebassi@openedhand.com>
2030 * clutter/clutter.h: Include missing installed files.
2032 2008-07-14 Tomas Frydrych <tf@openedhand.com>
2034 * clutter/clutter-stage.c:
2035 (clutter_stage_hide_cursor):
2036 Fixed C&P bug that made it impossible to show cursor once hidden.
2038 Stripped trailing whitespace.
2040 2008-07-13 Matthew Allum <mallum@openedhand.com>
2042 * clutter/x11/clutter-x11-texture-pixmap.c:
2043 Call XSync in unredirect X error trap (Thanks to Andy Wingo)
2045 2008-07-13 Neil Roberts <neil@o-hand.com>
2047 * build/mingw/mingw-cross-compile.sh: Avoid using the --strip
2048 option to tar because it isn't supported in the version shipped
2051 2008-07-11 Tomas Frydrych <tf@openedhand.com>
2053 * clutter/clutter-fixed.c:
2054 Move G_IMPLEMENT_INLINES before all other #include statements (bug
2057 2008-07-11 Tomas Frydrych <tf@openedhand.com>
2059 * clutter/clutter-fixed.c:
2060 Changed #define G_IMPLEMENTS_INLINES to G_IMPLEMENT_INLINES (bug
2063 2008-07-10 Emmanuele Bassi <ebassi@openedhand.com>
2065 * configure.ac: Post release bump to 0.3.1.
2067 ======== Release 0.8.0 ========================================================
2069 2008-07-10 Emmanuele Bassi <ebassi@openedhand.com>
2072 * NEWS: Release 0.8.0.
2074 2008-07-10 Matthew Allum <mallum@openedhand.com>
2076 * clutter/cogl/gles/cogl-fbo.c:
2077 * clutter/cogl/gles/cogl-texture.c:
2078 Fix warnings with eglnative build
2080 2008-07-10 Matthew Allum <mallum@openedhand.com>
2083 Sync up/improve ready for 0.8 release.
2086 Sync up to date - hope I havn't missed anyone..
2088 2008-07-10 Matthew Allum <mallum@openedhand.com>
2090 * clutter/glx/clutter-glx-texture-pixmap.c:
2091 Assume TFP npots sized textures are always supported if TFP ext is!
2092 (Based on patch from James Ketrenos)
2094 2008-07-08 Matthew Allum <mallum@openedhand.com>
2096 Bug 1011 - Fix TFP fallback mechanism (take 2)
2098 * clutter/glx/clutter-glx-texture-pixmap.c:
2099 * tests/test-pixmap.c:
2100 Slightly modified patch from Gwenole Beauchesne applied
2101 to better handle both falling back to non accelerated tfp
2102 and improvements to the test case.
2104 2008-07-07 Matthew Allum <mallum@openedhand.com>
2106 Bug 1016 - Changing window-redirect-automatic property after
2107 creating ClutterX11TexturePixmap doesn't work.
2109 * clutter/x11/clutter-x11-texture-pixmap.c:
2110 (clutter_x11_texture_pixmap_set_window):
2111 Sync up redirection prop correctly (Jason Tackaberry)
2113 2008-07-07 Matthew Allum <mallum@openedhand.com>
2115 Bug 1019 - clutter-frame-source.h not included by clutter.h
2117 * clutter/clutter.h:
2118 Add missing header include.
2120 2008-07-05 Neil Roberts <neil@o-hand.com>
2122 * clutter/clutter-actor.h: Remove redundant duplicate declaration
2123 of clutter_actor_allocate_preferred_size
2125 2008-07-05 Emmanuele Bassi <ebassi@openedhand.com>
2127 Bug 1033 - Manually parsing command line options prevents
2128 initializing clutter (Armin Burgmeier)
2130 * clutter/clutter-main.c:
2131 (post_parse_hook), (clutter_init_real): Set the is_initialized
2132 flag inside the real initialization function.
2134 2008-07-04 Emmanuele Bassi <ebassi@openedhand.com>
2136 * clutter/clutter-label.c: Properly document the behaviour
2137 of the :alignment property.
2139 2008-07-04 Neil Roberts <neil@o-hand.com>
2141 * build/mingw/mingw-cross-compile.sh: Default to the win32 flavour
2142 instead of the SDL flavour
2144 2008-07-04 Neil Roberts <neil@o-hand.com>
2146 Bug 1015 - Cloning unparented actors with FBOs doesn't work with
2149 * clutter/clutter-texture.c (clutter_texture_new_from_actor): Now
2150 parents the source actor if it doesn't already have a parent so
2151 that it will get an allocation during layout.
2153 * tests/test-fbo.c: One of the tests tries to ensure that the
2154 ClutterTexture clone keeps the source actor alive by derefing
2155 it. However as actors have a floating reference then test-fbo
2156 doesn't have its own reference once the source is parented so
2157 unrefing just steals the parent's reference and causes
2158 badness. The test now claims the floating reference before cloning
2159 the source so that it can safely be unref'd later.
2161 2008-07-03 Emmanuele Bassi <ebassi@openedhand.com>
2163 * clutter/x11/Makefile.am: Fix distchecking by adding the
2164 generated enum types files to DISTCLEANFILES.
2166 2008-07-03 Tomas Frydrych <tf@openedhand.com>
2168 * clutter/clutter-fixed.h:
2169 * clutter/clutter-fixed.c
2170 Fixed inlining of clutter_qmulx() and clutter_qdivx() (bug 1022).
2172 2008-07-03 Neil Roberts <neil@o-hand.com>
2174 * clutter/clutter-shader.c (bind_glsl_shader): Fix a cut-and-paste
2175 error which broke vertex shaders
2177 2008-07-03 Øyvind Kolås <pippin@o-hand.com>
2179 * clutter/cogl/common/cogl-bitmap-pixbuf.c:
2180 (_cogl_bitmap_from_file): removed debug g_printf that announces each
2181 successful image load done by the internal image backend.
2183 2008-07-02 Neil Roberts <neil@o-hand.com>
2185 * clutter/clutter-actor.c
2186 (clutter_actor_get_abs_allocation_vertices): The initialization of
2187 the local stage pointer got moved away in revision 3081 so it was
2188 crashing if the function is called before the layout is run.
2190 2008-07-02 Emmanuele Bassi <ebassi@openedhand.com>
2192 * clutter/clutter-label.c:
2193 (clutter_label_create_layout_no_cache),
2194 (clutter_label_create_layout): Split the layout creation in two
2195 functions: one creating the layout, the other creating the layout
2196 and hitting the glyphs cache. The first one is for the offscren
2197 operations - like requesting the preferred size; the second one
2198 is for paint and allocation.
2200 (clutter_label_allocate): Try to aggressively cache the PangoLayout
2201 between allocations - to avoid recreating it even when the label
2202 just moved because of an animation. See bug #1010.
2204 2008-07-02 Øyvind Kolås <pippin@o-hand.com>
2206 * clutter/fruity/clutter-fruity.c: made the multi touch code more
2207 robust. There are situations though where the device seems to stop
2208 generating any touch events until all fingers have been lifted and
2209 a new interaction session is started.
2211 2008-07-02 Neil Roberts <neil@o-hand.com>
2213 * clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize):
2214 Use clutter_x11_has_event_retrieval() instead of
2215 !backend_x11->no_xevent_retrieval to reflect the changes to the
2216 GLX backend in revision 3078
2218 2008-07-02 Emmanuele Bassi <ebassi@openedhand.com>
2220 Bug 1010 - ClutterLabel does not update the layout (Lee Jusung)
2222 * clutter/clutter-actor.c:
2223 (clutter_actor_queue_relayout): Remove some pointer dereferencing.
2225 * clutter/clutter-label.c:
2226 (clutter_label_allocate): Revert the change of r2883 and remove the
2227 layout width cache and force a recreation of the layout every time
2228 we receive an allocation.
2230 2008-07-01 Neil Roberts <neil@o-hand.com>
2232 * clutter/clutter-actor.c (clutter_actor_get_transformed_sizeu):
2233 This is now do-what-I-mean like clutter_actor_get_size so that if
2234 the allocation box is available it will use that, otherwise it
2235 will use the preferred size. clutter_actor_transform_vertices has
2236 been converted to clutter_actor_transform_and_project_box so that
2237 it can be used by both functions. Based on a patch by Emmanuele
2239 (clutter_actor_get_abs_allocation_vertices)
2240 (clutter_actor_get_allocation_vertices): These two functions now
2241 force a relayout if the allocation box is not available.
2243 * tests/test-fbo.c: Fixed the shader to use texture2D instead of
2244 texture2DRect now that GL_EXT_texture_rectangle is no longer used.
2246 2008-07-01 Chris Lord <chris@openedhand.com>
2248 * clutter/clutter-stage.c:
2249 Add a note to the clutter_stage_read_pixels doc that the alpha channel
2250 isn't guaranteed to contain sensible data
2252 * tests/test-stage-read-pixels.c: (update_snapshot):
2253 Overwrite the alpha data when using clutter_stage_read_pixels; fixes
2254 this test on non-nvidia drivers
2256 2008-07-01 Matthew Allum <mallum@openedhand.com>
2258 * clutter/glx/clutter-stage-glx.c:
2259 * clutter/x11/clutter-backend-x11.c:
2260 * clutter/x11/clutter-backend-x11.h:
2261 * clutter/x11/clutter-event-x11.c:
2262 * clutter/x11/clutter-x11.h:
2263 * tests/test-devices.c:
2264 Disable use of XInput and add an explicit clutter_x11_enable_xinput
2266 Also fix up the x11 pre-init calls to not need g_type_init.
2268 2008-07-01 Øyvind Kolås <pippin@o-hand.com>
2270 Bug 1013 - Per device grabs are not obeyed in pointer device
2273 * clutter/clutter-event.c: (clutter_event_get_device_id): swap
2274 arguments of g_return_val_if_fail around.
2275 * clutter/clutter-event.h: added *device field to crossing events as
2277 * clutter/clutter-main.c: (emit_pointer_event): added a device
2278 argument and check for per device grabs if this device is passed.
2279 (clutter_do_event): pass the device if present for all pointer event
2281 (generate_enter_leave_events): copy the device from the motion events
2282 when generating enter/leave events.
2284 2008-07-01 Chris Lord <chris@openedhand.com>
2286 * clutter/clutter-texture.c:
2287 Correct documentation about accepted pixel formats
2289 * tests/test-stage-read-pixels.c: (main):
2290 Don't try to free a ClutterTexture after main, fixes segfault on quit
2292 2008-07-01 Emmanuele Bassi <ebassi@openedhand.com>
2294 * clutter/clutter-behaviour-bspline.h:
2295 * clutter/clutter-behaviour.h:
2296 * clutter/clutter-event.h:
2297 * clutter/clutter-texture.h: Add missing documentation and
2298 change the copyright and licensing notice to use the FSF
2299 website instead of its address. (#512)
2301 2008-06-30 Matthew Allum <mallum@openedhand.com>
2303 Bug 1008 - tfp still a bit borked
2305 * clutter/x11/clutter-x11-texture-pixmap.c:
2306 Fix from Andy Wingo for sync_window borkage
2308 2008-06-30 Neil Roberts <neil@o-hand.com>
2310 Bug 985 - MSC math.h / M_PI issue
2312 * clutter/cogl/gl/cogl.c (set_clip_plane):
2313 * clutter/clutter-alpha.c (sinc_func): Use G_PI instead of M_PI
2314 because M_PI isn't defined in MSVC without a special
2315 #define. Thanks to Haakon Sporsheim
2317 2008-06-30 Neil Roberts <neil@o-hand.com>
2319 * clutter/win32/clutter-backend-win32.c (check_vblank_env): Use
2320 g_ascii_strcasecmp instead of strcasecmp because strcasecmp isn't
2323 2008-06-30 Matthew Allum <mallum@openedhand.com>
2325 Bug 1007 - Fix TFP fallback mechanism
2327 * clutter/glx/clutter-glx-texture-pixmap.c:
2328 * clutter/x11/clutter-x11-texture-pixmap.c:
2329 Add some extra safety to glx pixmap creations and tidy up some notes.
2330 Patch from Gwenole Beauchesne.
2332 2008-06-30 Neil Roberts <neil@o-hand.com>
2334 * clutter/x11/clutter-event-x11.c:
2335 * clutter/win32/clutter-event-win32.c: Use the HAVE_CONFIG_H guard
2336 around #include "config.h"
2338 2008-06-30 Emmanuele Bassi <ebassi@openedhand.com>
2340 * clutter/Makefile.am:
2341 * clutter/eglx/Makefile.am:
2342 * clutter/glx/Makefile.am: Build the X11 base backend before
2343 the backends that depend on it.
2345 2008-06-30 Emmanuele Bassi <ebassi@openedhand.com>
2347 Bug 1000 - clutter-x11 should define gtypes for its enumerations
2349 * clutter/x11/Makefile.am:
2350 * clutter/x11/clutter-event-x11.c:
2351 * clutter/x11/clutter-x11-enum-types.c.in:
2352 * clutter/x11/clutter-x11-enum-types.h.in:
2353 * clutter/x11/clutter-x11.h: Add the GTypes for the X11-specific
2354 enumerations, so that they can be used by the bindings. (Andy
2357 2008-06-30 Chris Lord <chris@openedhand.com>
2359 * tests/test-shader.c:
2360 Fix edge-detect shader on ATI, thanks Gwenole Beauchesne
2362 2008-06-30 Matthew Allum <mallum@openedhand.com>
2364 Bug 997 - automatic updates not working for named TFP pixmaps,
2367 * clutter/glx/clutter-glx-texture-pixmap.c:
2368 * clutter/glx/clutter-glx-texture-pixmap.h:
2369 * clutter/x11/clutter-backend-x11.c:
2370 * clutter/x11/clutter-x11-texture-pixmap.c:
2371 * clutter/x11/clutter-x11-texture-pixmap.h:
2372 * clutter/x11/clutter-x11.h:
2374 * tests/test-pixmap.c:
2375 Rework Andy Wingos patch a little adding more safety for now also
2376 handling redirect Windows (as well as pixmaps)
2378 2008-06-30 Emmanuele Bassi <ebassi@openedhand.com>
2380 Bug 980 - cogl-bitmap-fallback.c compiler error/warning due to
2381 cast issue (Haakon Sporsheim)
2383 * clutter/cogl/common/cogl-bitmap-fallback.c:
2384 (_cogl_unpremult_alpha_last),
2385 (_cogl_unpremult_alpha_first): Cast to avoid a compiler warning
2388 2008-06-30 Chris Lord <chris@openedhand.com>
2390 * tests/test-shader.c: (main):
2391 Add a new shader to test-shaders (Sobel operator edge-detect)
2393 2008-06-30 Øyvind Kolås <pippin@o-hand.com>
2395 Disable XInput handling for keyboard events, re-enabling key press and
2396 release events when pointer is outside window as well as re-enabling
2399 * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize): select
2400 for KeyPressMask and KeyReleaseMask even with XInput enabled.
2401 * clutter/x11/clutter-backend-x11.c: (_clutter_x11_register_xinput):
2402 Disabled the XInput keyboard code paths (comments and #if 0's)
2403 * clutter/x11/clutter-event-x11.c: (event_translate): always handle
2404 keyboard events without regard to XInput.
2406 2008-06-29 Matthew Allum <mallum@openedhand.com>
2408 * clutter/x11/clutter-event-x11.c:
2409 ifdef convert_xdevicekey_to_xkey () with XINPUT check.
2410 (fix via Andy Wingo)
2412 2008-06-29 Tommi Komulainen <tommi.komulainen@iki.fi>
2414 * clutter/osx/clutter-osx.h (_clutter_event_osx_put)
2415 * clutter/osx/clutter-event-osx.c (clutter_event_osx_translate,
2416 NSEvent:clutterStage:)
2417 * clutter/osx/clutter-stage-osx.c (EVENT_HANDLER): Since events are
2418 delivered to ClutterGLView, pass the associated ClutterStage directly
2419 to event translation. Avoids relying on being embedded in
2420 ClutterGLWindow, which makes it easier to implement clutter-gtk.
2422 2008-06-29 Tommi Komulainen <tommi.komulainen@iki.fi>
2424 * clutter/osx/clutter-event.osx.c (NSEvent:clutterKeyVal:): Add
2425 comment, on OSX backend the Shift modifier is included in 'keyval'
2426 making it identical to 'unicode_value' Instead of <Shift>a or
2427 <Shift>3 you'd get <Shift>A and <Shift>#
2429 2008-06-27 Matthew Allum <mallum@openedhand.com>
2431 * clutter/cogl/gl/cogl.c:
2432 Temp workaround for 10.4 ATI card OSX folks, see #929
2435 Bug 998 - clutter always captures X input events
2437 * clutter/eglx/clutter-stage-egl.c:
2438 * clutter/glx/clutter-stage-glx.c:
2439 When we disable X event retrival, dont still select for window
2442 2008-06-27 Emmanuele Bassi <ebassi@openedhand.com>
2444 * clutter/clutter-event.h:
2445 * clutter/clutter-main.c:
2446 * clutter/x11/clutter-backend-x11.c: Add further documentation,
2447 and increase the coverage to 94%.
2449 2008-06-27 Emmanuele Bassi <ebassi@openedhand.com>
2451 * configure.ac: Post release bump to 0.7.7.
2453 ======== Release 0.7.6 ========================================================
2455 2008-06-27 Emmanuele Bassi <ebassi@openedhand.com>
2458 * NEWS: Release 0.7.6.
2460 2008-06-27 Neil Roberts <neil@o-hand.com>
2462 Bug 993 - Underline colors are sometimes wrong
2464 * clutter/pango/pangoclutter-render.c: Fixed so that instead
2465 of trying to set the color in prepare_run it uses draw_glyphs
2466 to draw groups of glyphs and requests the color for each part
2469 2008-06-26 Emmanuele Bassi <ebassi@openedhand.com>
2471 * clutter/clutter-actor.c:
2472 (clutter_actor_set_min_width),
2473 (clutter_actor_set_min_height),
2474 (clutter_actor_set_natural_width),
2475 (clutter_actor_set_natural_height): Ignore any override of the
2476 minimum and natural size of the stage on backends that only
2477 support static stages.
2479 * clutter/clutter-stage.c (clutter_stage_allocate): Use the
2480 preferred size of the ClutterStage implementation instead of
2483 * clutter/clutter-backend.[ch]: Remove get_display_size() and
2484 clutter_backend_get_display_size().
2486 * clutter/eglnative/clutter-backend-egl.c:
2487 * clutter/fruity/clutter-backend-fruity.c:
2488 * clutter/osx/clutter-backend-osx.c:
2489 * clutter/sdl/clutter-backend-sdl.c:
2490 * clutter/win32/clutter-backend-win32.c:
2491 * clutter/x11/clutter-backend-x11.c: Remove get_display_size()
2494 2008-06-26 Emmanuele Bassi <ebassi@openedhand.com>
2496 * clutter/clutter-shader.c (bind_glsl_shader): Verify that the
2497 vertex shader has been successfully compiled, like we do with
2498 the fragment shader.
2500 2008-06-26 Emmanuele Bassi <ebassi@openedhand.com>
2502 * clutter/osx/clutter-backend-osx.c:
2503 (clutter_backend_osx_get_display_size): Fix the allocation pool
2506 2008-06-26 Matthew Allum <mallum@openedhand.com>
2508 * clutter/glx/clutter-glx-texture-pixmap.c:
2509 Move the gl extension probe into the regular object init() rather than
2510 class_init. Should be a little safer.
2512 2008-06-26 Matthew Allum <mallum@openedhand.com>
2514 * tests/test-pixmap.c: (main):
2515 Use strtol on arg as to take hex values. Tweak from James Ketrenos
2517 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2519 * configure.ac: Post release bump to 0.7.5.
2521 ======== Release 0.7.4 ========================================================
2523 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2526 * NEWS: Release 0.7.4.
2528 2008-06-25 Neil Roberts <neil@o-hand.com>
2530 * clutter/win32/clutter-backend-win32.c
2531 (clutter_backend_win32_get_display_size): Implement
2532 get_display_size on the Win32 backend.
2534 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2536 * clutter/clutter-main.h: Make the priority constants public.
2538 * clutter/clutter-stage.c: Use CLUTTER_PRIORITY_REDRAW.
2540 * clutter/clutter-timeline.c: Use CLUTTER_PRIORITY_TIMELINE.
2542 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2544 * clutter/osx/clutter-backend-osx.c:
2545 (clutter_backend_osx_get_display_size),
2546 (clutter_backend_osx_class_init): Implement the get_display_size
2549 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2551 * clutter/clutter-actor.c:
2552 (clutter_actor_set_min_width),
2553 (clutter_actor_set_min_height),
2554 (clutter_actor_set_natural_width),
2555 (clutter_actor_set_natural_height): Add a comment explaining
2556 the override in place for backends providing a fixed size
2559 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2561 * clutter/clutter-actor.c:
2562 (clutter_actor_set_min_width),
2563 (clutter_actor_set_min_height),
2564 (clutter_actor_set_natural_width),
2565 (clutter_actor_set_natural_height): If setting the minimum
2566 and natural width and height on a top-level actor, and on
2567 a backend that provides only static stages, then override
2568 the value and use the size of the display as returned by
2571 * clutter/eglnative/clutter-stage-egl.c:
2572 (clutter_stage_egl_realize): Remove the setting of the
2573 minimum and natural width and height.
2575 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2577 * clutter/clutter-stage.c:
2578 (clutter_stage_allocate): Minor optimization.
2580 (clutter_stage_init): Do not set the minimum size of the
2581 stage wrapper, and require that the backends set the size
2584 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2586 * clutter/eglnative/clutter-stage-egl.c:
2587 (clutter_stage_egl_realize): Try to force the minimum and
2588 natural size on realization.
2590 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2592 * clutter/clutter-backend.c:
2593 (clutter_backend_get_display_size): Provide a fallback for
2594 backends not implementing get_display_size().
2596 * clutter/clutter-stage.c:
2597 (clutter_stage_allocate): Add debug messages.
2599 * clutter/sdl/clutter-backend-sdl.c:
2600 (clutter_backend_sdl_get_display_size),
2601 (clutter_backend_sdl_class_init): Implement get_display_size()
2604 2008-06-25 Chris Lord <chris@openedhand.com>
2606 * clutter/clutter-fixed.c: (clutter_sinx):
2607 Fix clutter_sinx for angles > CFX_2PI - CFX_ONE. Also add note to
2608 documentation about being able to use modulus with ClutterFixed
2610 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2612 * clutter/clutter-backend.h:
2613 * clutter/clutter-backend.c:
2614 (clutter_backend_get_display_size): Add a function for getting the
2615 display size out of the backend.
2617 * clutter/clutter-stage.c:
2618 (clutter_stage_allocate): When allocating on a backend with a
2619 static stage, we simply ignore the passed box and override it with
2620 the size of the display.
2622 * clutter/eglnative/clutter-backend-egl.c:
2623 (clutter_backend_egl_get_display_size),
2624 (clutter_backend_egl_class_init): Implement get_display_size() by
2625 returning the size of the EGL surface.
2627 * clutter/fruity/clutter-backend-fruity.c:
2628 (clutter_backend_egl_get_display_size),
2629 (clutter_backend_egl_class_init): Ditto as above.
2631 * clutter/x11/clutter-backend-x11.c:
2632 (clutter_backend_x11_get_display_size),
2633 (clutter_backend_x11_class_init): Implement get_display_size() by
2634 returning the DisplayWidth and DisplayHeight of the current
2637 2008-06-25 Neil Roberts <neil@o-hand.com>
2639 * clutter/win32/clutter-stage-win32.c
2640 (clutter_stage_win32_realize): Use a more direct method to choose
2641 the best pixel format instead of ChoosePixelFormat because
2642 otherwise if the display's depth is 16 then it will prefer the
2643 non-accelerated software implementation when the requested depth
2646 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2648 * clutter/clutter-stage.c (clutter_stage_allocate): Fix condition;
2649 should always test before committing.
2651 2008-06-25 Matthew Allum <mallum@openedhand.com>
2653 * clutter/x11/clutter-backend-x11.c: (_clutter_x11_register_xinput)
2654 Add extra safety and fallback if no useable pointing devices are
2657 2008-06-25 Emmanuele Bassi <ebassi@openedhand.com>
2659 * clutter/clutter-stage.c:
2660 (clutter_stage_allocate): Check if the stage provided by the
2661 backend is static (i.e. a framebuffer that cannot be resized)
2662 and interrupt the allocation chain there.
2664 * clutter/eglnative/clutter-stage-egl.c:
2665 (clutter_stage_egl_class_init): Remove the ::allocate empty
2668 2008-06-25 Matthew Allum <mallum@openedhand.com>
2670 * clutter/eglnative/clutter-stage-egl.c:
2671 * clutter/eglx/clutter-stage-egl.c:
2672 Disable passing of attribs to eglCreateContext() on GLES 1.1 h/w
2674 2008-06-25 Neil Roberts <neil@o-hand.com>
2676 * clutter/clutter-actor.c (clutter_actor_paint): Guard against the
2677 actor clip being enabled or disabled in an actor paint
2678 method. Otherwise the clip stack can be become unbalanced. This
2679 was happening in ClutterEntry until it was fixed in revision 2983.
2681 2008-06-24 Neil Roberts <neil@o-hand.com>
2683 Bug 979 - Wrong call convension for SwapIntervalProc in win32 backend
2685 * clutter/win32/clutter-backend-win32.c: Use the correct calling
2686 convention for SwapInterval. Thanks to Haakon Sporsheim.
2688 2008-06-24 Emmanuele Bassi <ebassi@openedhand.com>
2690 Bug 989 - Add a search path for clutter script assets
2692 * clutter/clutter-script.h:
2693 * clutter/clutter-script.c:
2694 (clutter_script_finalize),
2695 (clutter_script_add_search_paths),
2696 (clutter_script_lookup_filename): Add the ability to define multiple
2697 search paths inside ClutterScript and to look up a specific filename
2698 inside those search paths. This is useful to define a set of
2699 directories where the assets for a UI definition are and still
2700 reference those assets by their name instead of the full path. (989,
2701 based on a patch by Matthew Allum)
2703 * clutter/clutter-texture.c:
2704 (clutter_texture_set_custom_property): Use the newly added
2705 clutter_script_lookup_filename() function.
2707 2008-06-24 Neil Roberts <neil@o-hand.com>
2709 * clutter/cogl/gles/cogl-gles2-wrapper.h:
2710 * clutter/cogl/gles/cogl-gles2-wrapper.c: All of the settings and
2711 uniforms are now proxied into COGL variables instead of setting
2712 the GL uniforms directly. Just before glDrawArrays is executed a
2713 shader is generated using the given settings to avoid using 'if'
2714 statements. The shaders are cached.
2716 * clutter/cogl/gles/cogl-fixed-vertex-shader.glsl:
2717 * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: The shaders
2718 are now split into parts using comments instead of 'if' statements
2719 so that the simplest shader can be generated on the fly.
2721 * clutter/cogl/gles/stringify.sh: Now splits up the shader sources
2722 into separate C strings where deliminated by special comments.
2724 * clutter/cogl/gles/cogl-program.h:
2725 * clutter/cogl/gles/cogl-program.c: A custom shader can no longer
2726 be directly linked with the fixed-functionality replacement
2727 because the replacement changes depending on the settings. Instead
2728 the bound shader is linked with the appropriate replacement shader
2729 just before glDrawArrays is executed. The custom uniform variables
2730 must also be proxied through COGL variables because their location
2731 can change when relinked.
2733 2008-06-24 Øyvind Kolås <pippin@o-hand.com>
2735 * clutter/fruity/clutter-fruity.c: removed dead code and unused
2738 2008-06-24 Øyvind Kolås <pippin@o-hand.com>
2740 * configure.ac: better alignment of list of enabled experimental
2743 2008-06-24 Emmanuele Bassi <ebassi@openedhand.com>
2745 * doc/clutter-actor-invariants.txt: Fix grammar and spelling,
2746 document the ::parent-set signal emission.
2748 2008-06-24 Emmanuele Bassi <ebassi@openedhand.com>
2750 * clutter/clutter-entry.c:
2751 (clutter_entry_ensure_layout): Convert the invisible char
2752 to UTF-8 to avoid Pango barfing on us.
2754 2008-06-24 Matthew Allum <mallum@openedhand.com>
2756 * clutter/eglnative/clutter-stage-egl.c:
2757 Add an extra debug note.
2759 Generate version.xml for COGL API docs
2761 2008-06-24 Chris Lord <chris@openedhand.com>
2763 Bug 988 - cursor position wrong with multibyte invisible char
2765 * clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position):
2766 Fix cursor position calculation when using invisible text
2768 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2770 * clutter/x11/clutter-event-x11.c (event_translate): Set the
2771 event type explicitly in the union members as well for the
2772 key events, like we do for all the other events.
2774 2008-06-23 Neil Roberts <neil@o-hand.com>
2776 * clutter/clutter-entry.c (clutter_entry_paint): Set the clip
2777 using COGL directly instead of setting the actor clip. Otherwise
2778 the clip stack will be unbalanced after the first draw. This also
2779 frees up the actor clip to be set by an application.
2781 2008-06-23 Matthew Allum <mallum@openedhand.com>
2784 Add a quick note on fruity multiple deivce support.
2786 Add multiple device support details and some tweaks on
2787 Clutter requirements (i.e GdkPixbuf).
2789 2008-06-23 Matthew Allum <mallum@openedhand.com>
2791 Bug 987 - clutter-event.c c99 variable declaration
2793 * clutter/clutter-event.c:
2796 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2798 * configure.ac: Post release bump to 0.7.3.
2800 ======== Release 0.7.2 ========================================================
2802 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2805 * NEWS: Release 0.7.2.
2807 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2809 * clutter/clutter-texture.c:
2810 (clutter_texture_get_preferred_width),
2811 (clutter_texture_get_preferred_height),
2812 (clutter_texture_set_property),
2813 (clutter_texture_get_property),
2814 (clutter_texture_class_init),
2815 (clutter_texture_init): Add the new :keep-aspect-ratio property
2816 to ClutterTexture; when set to TRUE the texture will return a
2817 preferred width maintaining the aspect ratio with the given height
2818 and a preferred height maintaining the aspect ratio with the
2819 given width. This allows to set the width or the height and have
2820 the texture automatically request the height or the width respectively
2821 while maintaining the aspect ratio of the original image.
2823 * tests/test-script.json: Update to test the new :keep-aspect-ratio
2826 2008-06-23 Neil Roberts <neil@o-hand.com>
2828 Bug 918 - Group doesn't clip if it's children are clipped
2830 * clutter/cogl/common/cogl-clip-stack.h:
2831 * clutter/cogl/common/cogl-clip-stack.c: Added functions to
2832 maintain a stack of clipping rectangles.
2834 * clutter/cogl/gles/cogl.c:
2835 * clutter/cogl/gl/cogl.c: The cogl_clip_set and unset functions
2836 have moved into cogl-clip-stack.c which calls back to cogl.c to
2837 set the actual rectangles. Multiple clip rectangles are combined
2838 by merging the stencil buffers.
2840 * clutter/cogl/gles/cogl-primitives.c (_cogl_path_fill_nodes):
2841 * clutter/cogl/gl/cogl-primitives.c (_cogl_path_fill_nodes): Merge
2842 the stencil buffer with the contents of the clipping stack after
2845 * clutter/cogl/gles/cogl-context.h (CoglContext):
2846 * clutter/cogl/gl/cogl-context.h (CoglContext): Store the number
2847 of available stencil bits.
2849 * clutter/cogl/common/Makefile.am
2850 (libclutter_cogl_common_la_SOURCES): Added cogl-clip-stack.c
2852 2008-06-23 Robert Bragg <bob@o-hand.com>
2854 * clutter/eglx/clutter-stage-egl.c: Makes sure the eglx backend
2855 passes the EGL_OPENGL_ES2_BIT surface attrib when using
2858 2008-06-23 Chris Lord <chris@openedhand.com>
2860 * clutter/x11/clutter-event-x11.c: (convert_xdevicekey_to_xkey),
2861 (translate_key_event), (event_translate):
2862 Change the xinput event handling to use translate_key (fixes modifier
2863 handling with xinput key events)
2865 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2867 Bug 982 - __COGL_GET_CONTEXT MS compiler issue (Haakon Sporsheim)
2869 * clutter/cogl/common/cogl-handle.h:
2870 * clutter/cogl/common/cogl-primitives.c: Remove C99-isms.
2872 * clutter/cogl/gl/cogl-fbo.c:
2873 * clutter/cogl/gl/cogl-primitives.c:
2874 * clutter/cogl/gl/cogl-texture.c:
2875 * clutter/cogl/gl/cogl.c: Ditto as above.
2877 * clutter/cogl/gles/cogl-fbo.c:
2878 * clutter/cogl/gles/cogl-primitives.c:
2879 * clutter/cogl/gles/cogl-texture.c: Ditto as above.
2881 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2883 Bug 984 - pango_clutter_render_layout() declared void, but
2884 returns (Haakon Sporsheim)
2886 * clutter/pango/pangoclutter-render.c:
2887 (pango_clutter_render_layout): Do not use a return statement.
2889 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2891 Bug 905 - Paint cursor directly (Xan López)
2893 * clutter/clutter-entry.c:
2894 (clutter_entry_paint_cursor),
2895 (clutter_entry_init),
2896 (clutter_entry_set_color): Directly paint the cursor on the
2897 entry instead of using an actor.
2899 2008-06-23 Emmanuele Bassi <ebassi@openedhand.com>
2901 Bug 981 - clutter_stage_read_pixels temprow fix (Haakon Sporsheim)
2903 * clutter/clutter-stage.c (clutter_stage_read_pixels): Allocate
2904 the temporary row data used to flip the buffer from glReadPixels()
2905 in order to fix compilation under MSVC. Also validate the input
2906 parameters to avoid random segfaults.
2908 2008-06-23 Matthew Allum <mallum@openedhand.com>
2910 * clutter/clutter-actor.c:
2911 * clutter/clutter-actor.h:
2912 * clutter/clutter-event.c:
2913 * clutter/clutter-event.h:
2914 * clutter/clutter-main.c:
2915 * clutter/clutter-main.h:
2916 * clutter/clutter-private.h:
2917 * clutter/eglx/clutter-stage-egl.c:
2918 * clutter/fruity/clutter-backend-fruity.c:
2919 * clutter/fruity/clutter-backend-fruity.h:
2920 * clutter/fruity/clutter-fruity.c:
2921 * clutter/glx/clutter-stage-glx.c:
2922 * clutter/x11/clutter-backend-x11.c:
2923 * clutter/x11/clutter-backend-x11.h:
2924 * clutter/x11/clutter-event-x11.c:
2925 * clutter/x11/clutter-stage-x11.h:
2926 * clutter/x11/clutter-x11.h:
2928 * tests/Makefile.am:
2929 * tests/test-devices.c:
2930 Merge of 'xinput' branch giving initial basic support of
2931 multiple input devices.
2933 2008-06-23 Matthew Allum <mallum@openedhand.com>
2935 * clutter/clutter-actor.c:
2936 * clutter/clutter-actor.h:
2937 * clutter/clutter-group.c:
2938 Remove uneeded (at least for now) paint_area method (#970)
2940 2008-06-19 Emmanuele Bassi <ebassi@openedhand.com>
2942 * clutter/clutter-script.c: Be more explicit about the fact that
2943 the script id is not the name of an actor, and that it is retrieved
2944 by using clutter_get_script_id().
2946 2008-06-17 Emmanuele Bassi <ebassi@openedhand.com>
2948 * clutter/clutter-actor.h:
2949 * clutter/clutter-actor.c:
2950 (clutter_actor_allocate_preferred_size): Add more documentation
2951 and notes on where it's appropriate to call this function.
2953 2008-06-17 Chris Lord <chris@openedhand.com>
2955 * clutter/clutter-texture.c: (clutter_texture_get_preferred_width),
2956 (clutter_texture_get_preferred_height):
2957 Maintain aspect ratio with natural width/height when for_width/height
2960 2008-06-17 Matthew Allum <mallum@openedhand.com>
2962 * clutter/clutter-actor.c:
2963 * clutter/clutter-actor.h:
2964 Clean up of parenting code (see #972)
2965 Doc updates to section intro.
2966 Add clutter_actor_allocate_preferred_size () utility call
2968 * clutter/clutter-group.c: (clutter_fixed_layout_allocate):
2969 Use clutter_actor_allocate_preferred_size ()
2971 * doc/clutter-actor-invariants.txt:
2974 2008-06-17 Emmanuele Bassi <ebassi@openedhand.com>
2976 * clutter/clutter-actor.c:
2977 (clutter_actor_set_parent): Do not emit ::parent-set when
2980 (clutter_actor_unparent): Ditto, as above.
2982 (clutter_actor_reparent): Emit ::parent-set with the old
2983 parent and set the IN_REPARENT flag unconditionally.
2985 2008-06-17 Emmanuele Bassi <ebassi@openedhand.com>
2987 * doc/clutter-actor-invariants.txt: Document the flags, the
2988 invariants, the state changes and the minimum requirements for
2989 actor implementations. Needs to be tweaked and fleshed out
2990 before 0.8.0, and we obviously need to enforce the invariants.
2992 2008-06-17 Emmanuele Bassi <ebassi@openedhand.com>
2994 * clutter/clutter-actor.c:
2995 (clutter_actor_set_parent): Document and maintain the invariant
2996 that after setting a realized parent on an actor, the actor is
2997 also going to be realized.
2999 (clutter_actor_unparent): Change the invariant that an unparented
3000 actor is also unrealized: the paint is fast enough to avoid
3001 unrealizing, since it also causes more problems that what it's
3004 * tests/test-invariants.c (test_show_on_set_parent): Update the
3005 invariants test because we changed the invariants.
3007 2008-06-17 Jussi Kukkonen <jku@o-hand.com>
3009 * clutter/clutter-score.c (clutter_score_append):
3010 initialize "marker" string and "complete_id" signal id when creating a
3013 2008-06-16 Tomas Frydrych <tf@openedhand.com>
3015 * clutter/clutter-actor.c:
3016 (clutter_actor_move_anchor_point_from_gravity):
3017 Fixed incorrect sign of position adjustment (revert of earlier
3020 2008-06-16 Emmanuele Bassi <ebassi@openedhand.com>
3022 * clutter/clutter-actor.c (clutter_actor_unparent): Reset the
3023 :show-on-set-parent property to TRUE when unparenting.
3025 * tests/Makefile.am: Add test-invariant to the build.
3027 * tests/test-invariants.c: Test the invariants that we are going
3028 to honour (and document, at some point).
3030 2008-06-16 Emmanuele Bassi <ebassi@openedhand.com>
3032 * clutter/eglnative/clutter-stage-egl.c: Ignore any size allocation
3033 we receive from the user.
3035 * clutter/fruity/clutter-stage-fruity.c: Ditto as above.
3037 2008-06-16 Tomas Frydrych <tf@openedhand.com>
3039 * clutter/clutter-actor.c:
3040 (clutter_actor_move_anchor_point):
3041 (clutter_actor_move_anchor_pointu):
3042 (clutter_actor_move_anchor_point_from_gravity):
3043 Fixed incorrect sign of position adjustment.
3044 Fixed replace call to _move_by with move_byu in
3045 _move_anchor_pointu.
3047 Stripped trailing whitespace.
3049 2008-06-15 Emmanuele Bassi <ebassi@openedhand.com>
3051 Bug #967 - Mismatch of Timeline::marker-reached signal signature
3053 * clutter/clutter-marshal.list:
3054 * clutter/clutter-timeline.c:
3055 (clutter_timeline_class_init): Fix the type of the frame_num
3056 argument in the ::marker-reached signal creation to match the
3057 signal class handler. (Armin Burgmeier)
3059 2008-06-14 Emmanuele Bassi <ebassi@openedhand.com>
3061 * README: We depend on PangoCairo, now; also add all the missing
3062 release notes entries and the missing backends configuration notes.
3064 2008-06-14 Matthew Allum <mallum@openedhand.com>
3067 Make needed GL version 1.4, note GLES2 support, add some notes
3070 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3072 * configure.ac: Post release bump to 0.7.1.
3074 ======== Release 0.7.0 ========================================================
3076 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3080 * configure.ac: Release 0.7.0, "Booska".
3082 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3084 * tests/test-cogl-offscreen.c:
3085 * tests/test-cogl-primitives.c:
3086 * tests/test-cogl-tex-convert.c:
3087 * tests/test-cogl-tex-foreign.c:
3088 * tests/test-cogl-tex-getset.c:
3089 * tests/test-cogl-tex-tile.c:
3090 * tests/test-layout.c:
3091 * tests/test-pixmap.c:
3092 * tests/test-texture-quality.c: Miscellaneous fixes for distcheck
3095 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3097 * clutter/clutter-actor.c:
3098 * clutter/clutter-actor.h:
3099 * tests/test-cogl-primitives.c:
3100 * tests/test-events.c:
3101 * tests/test-multistage.c:
3102 * tests/test-textures.c:
3103 * tests/test-timeline.c: Miscellaneous fixes for distcheck to
3106 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3108 * clutter/clutter-texture.c:
3109 (clutter_texture_unrealize), (clutter_texture_dispose): Add a
3110 guard against reading back memory during the unrealization on
3113 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3115 Bug #953 - Actors are not hidden before unrealized or
3116 disposed (Tommi Komulainen)
3118 * clutter/clutter-actor.c:
3119 (clutter_actor_unrealize): Hide a visible actor when unrealizing
3122 (clutter_actor_dispose): Make sure to unrealize an actor when
3125 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3127 * clutter/clutter-actor.c:
3128 (clutter_actor_dispose), (clutter_actor_destroy),
3129 (clutter_actor_unparent): Clean up the actor's destruction
3130 sequence, making sure that every operation is performed
3131 under the CLUTTER_ACTOR_IN_DESTRUCTION internal flag. (thanks
3132 to Tomas Frydrych, Neil Roberts and Matthew Allum)
3134 2008-06-13 Emmanuele Bassi <ebassi@openedhand.com>
3136 Bug #960 - PangoContext creation code should not be duplicated
3138 * clutter/clutter-private.h:
3139 * clutter/clutter-main.c:
3140 (_clutter_context_create_pango_context): Abstract the creation
3141 of the PangoContext inside its own function, to avoid code and
3142 bugs duplication. (Tommi Komulainen)
3144 * clutter/clutter-entry.c (clutter_entry_init): Use the newly
3145 added PangoContext creation function.
3147 * clutter/clutter-label.c (clutter_label_init): Ditto as above.
3149 2008-06-12 Emmanuele Bassi <ebassi@openedhand.com>
3151 Bug #964 - "unrealized" signal of ClutterActor wrongly named
3153 * clutter/clutter-actor.c (clutter_actor_class_init): Fix typo
3154 in the ::unrealize signal name. (Armin Burgmeier)
3156 2008-06-12 Emmanuele Bassi <ebassi@openedhand.com>
3158 * doc/reference/cogl/Makefile.am: Ignore cogl/gl and cogl/gles
3159 when building the documentation.
3161 * clutter/cogl/cogl.h.in: Add sections in the header file.
3163 2008-06-12 Emmanuele Bassi <ebassi@openedhand.com>
3165 * clutter/clutter-actor.c: Add more clarifications on the
3166 size and position accessors and the distinction between
3167 transformed and untransformed actor box inside the actor's
3170 2008-06-12 Emmanuele Bassi <ebassi@openedhand.com>
3172 * clutter/clutter-actor.c: Clarify the documentation of the
3173 accessors of the width and height.
3175 2008-06-12 Neil Roberts <neil@o-hand.com>
3177 * clutter/win32/clutter-stage-win32.c: Updated to the new layout
3178 API. All code to do with positioning the stage has been removed so
3179 the window is left where Windows wants to put it and it can not be
3180 moved with clutter_actor_set_position.
3182 * clutter/win32/clutter-stage-win32.h (ClutterStageWin32): Remove
3183 win_xpos and win_ypos.
3185 * clutter/win32/clutter-event-win32.c (message_translate): Remove
3186 the handler for WM_MOVE because the stage no longer cares where it
3189 2008-06-12 Emmanuele Bassi <ebassi@openedhand.com>
3191 * clutter/clutter-actor.[ch]: Documentation fixes.
3193 * clutter/clutter-backend.c: Documentation fixes.
3195 * clutter/clutter-container.h: Documentation fixes.
3197 * clutter/clutter-fixed.c (clutter_qdivx): Fix the return
3198 value to be after the description.
3200 * clutter/clutter-texture.[ch]: Documentation fixes.
3202 * clutter/clutter-timeline.c: Documentation fixes.
3204 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3206 * tests/test-layout.c: Take into account the origin of the
3207 parent, if it has changed, and queue a relayout if we are
3208 using the transformed box when computing the layout.
3210 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3212 * clutter/eglnative/clutter-stage-egl.c: Remove a duplicate
3213 get_preferred_width() implementation. (thanks to Iain Holmes)
3215 2008-06-11 Neil Roberts <neil@o-hand.com>
3217 * clutter/clutter-actor.c (clutter_actor_allocate): Fixed the
3218 logic when detecting whether the actor has moved.
3220 2008-06-11 Iain Holmes <iain@openedhand.com>
3222 * configure.ac: Detect the GL headers in flavour=fruity
3224 * clutter/fruity/clutter-stage-fruity.c: Update the Fruity backend to
3225 use the new size negotiation API.
3227 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3229 * clutter/clutter-label.c (clutter_label_allocate): Keep the
3230 layout if the size of the allocation is the same as the last
3231 allocation received by the label.
3233 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3235 * clutter/clutter-actor.c: Notify :x, :y, :width and :height
3236 properties using ClutterUnits, not pixels.
3238 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3240 * clutter/eglnative/clutter-stage-egl.c: Update the EGL native
3241 backend to use the new size negotiation API.
3243 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3245 * clutter/sdl/clutter-stage-sdl.c: Update the SDL backend to
3246 use the new size negotiation API.
3248 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3250 Bug #961 - Fails to build on OSX
3252 * clutter/osx/clutter-stage-osx.c: Update the OSX backend to
3253 use the new size negotiation API.
3255 2008-06-11 Emmanuele Bassi <ebassi@openedhand.com>
3257 * autogen.sh: Force overwriting when glib-gettextize is
3258 invoked by autogen.sh.
3260 2008-06-10 Neil Roberts <neil@o-hand.com>
3262 * clutter/clutter-main.c: Include <locale.h> for setlocale()
3264 2008-06-10 Emmanuele Bassi <ebassi@openedhand.com>
3266 * clutter/clutter-child-meta.c: Fix section name
3268 * clutter/clutter-container.c:
3269 (clutter_container_child_set_property),
3270 (clutter_container_child_get_property): Fix gtk-doc parameter
3273 * clutter/clutter-container.h: Fix documentation of the
3276 * clutter/clutter-event.h: Fix documentation.
3278 * clutter/clutter-feature.h: Fix documentation.
3280 * clutter/clutter-types.h: Add ClutterRequestMode.
3282 * clutter/x11/clutter-event-x11.c: Fix documentation.
3284 * tests/test-fullscreen.c: Verify that the stage size has been
3285 changed by clutter_stage_fullscreen().
3287 2008-06-10 Emmanuele Bassi <ebassi@openedhand.com>
3289 Bug #815 - Split up request, allocation, and paint box
3291 * clutter/clutter-actor.[ch]: Rework the size allocation,
3292 request and paint area. Now ::request_coords() is called
3293 ::allocate(), and ::query_coords() has been split into
3294 ::get_preferred_width() and ::get_preferred_height(). See
3295 the documentation and the layout test on how to implement
3296 a container and layout manager with the new API. (#915,
3297 based on a patch by Havoc Pennington, Lucas Rocha and Johan
3300 * clutter/clutter-clone-texture.c: Port CloneTexture to
3301 the new size negotiation API; it just means forwarding
3302 the requests to the parent texture.
3304 * clutter/clutter-deprecated.h: Add deprecated and replaced
3307 * clutter/clutter-entry.c: Port Entry to the new size
3310 * clutter/clutter-group.c: Port Group to the new size
3311 negotiation API; the semantics of the Group actor do not
3314 * clutter/clutter-label.c: Port Label to the new size
3315 negotiation API, and vastly simplify the code.
3317 * clutter/clutter-main.[ch]: Add API for executing a
3318 relayout when needed.
3320 * clutter/clutter-private.h: Add new Stage private API.
3322 * clutter/clutter-rectangle.c: Update the get_abs_opacity()
3323 call to get_paint_opacity().
3325 * clutter/clutter-stage.c:
3326 (clutter_stage_get_preferred_width),
3327 (clutter_stage_get_preferred_height),
3328 (clutter_stage_allocate),
3329 (clutter_stage_class_init): Port Stage to the new size
3332 * clutter/clutter-texture.c: Port Texture to the new size
3335 * clutter/clutter-types.h: Add ClutterRequestMode enumeration.
3337 * clutter/x11/clutter-stage-x11.c: Port the X11 stage
3338 implementation to the new size negotiation API.
3340 * tests/Makefile.am: Add the layout manager test case.
3342 * tests/test-opacity.c: Update.
3344 * tests/test-project.c: Update.
3346 * tests/test-layout.c: Test case for a layout manager implemented
3347 using the new size negotiation API; the layout manager handles
3348 both transformed and untransformed children.
3350 2008-06-10 Emmanuele Bassi <ebassi@openedhand.com>
3352 * Makefile.am: Add the po/ directory to the build.
3354 2008-06-10 Emmanuele Bassi <ebassi@openedhand.com>
3356 * autogen.sh: Check for, and run glib-gettextize.
3358 * configure.ac: Set up the localization support.
3360 * clutter/clutter-main.c: Do not define the GETTEXT_PACKAGE,
3361 but use the one from the configure script.
3363 * po/POTFILES.in: Template for the translatable files.
3365 2008-06-10 Chris Lord <chris@openedhand.com>
3367 * clutter/clutter-main.c: (pre_parse_hook):
3368 Call setlocale on init
3370 * clutter/x11/clutter-event-x11.c: (translate_key_event):
3371 Fix typo and use the same buffer size as xev
3373 2008-06-10 Øyvind Kolås <pippin@o-hand.com>
3375 * clutter/clutter-texture.c: improved documentation for
3376 clutter_texture_set_filter_quality.
3378 2008-06-10 Chris Lord <chris@openedhand.com>
3380 Bug #916 - ClutterKeyEvent:unicode_value is ignored
3381 Bug #950 - AltGr not handled
3383 * clutter/osx/clutter-event-osx.c: (clutter_event_osx_translate):
3384 * clutter/x11/clutter-event-x11.c: (translate_key_event):
3385 * tests/test-events.c: (fill_keybuf), (input_cb):
3386 Apply patch from Tommi Komulainen, fill the unicode_value attribute of
3387 the ClutterKeyEvent struct. Also use XKeycodeToKeysym, as suggested in
3388 bug #950, comment #2
3390 2008-06-10 Matthew Allum <mallum@openedhand.com>
3392 * clutter/clutter-texture.c:
3393 Minor reformatting cleanups. Emit filter-quality prop on change.
3394 * clutter/glx/clutter-glx-texture-pixmap.c:
3395 Support mipmaps via filter quality prop.
3397 2008-06-10 Chris Lord <chris@openedhand.com>
3399 * tests/Makefile.am:
3400 * tests/test-entry-auto.c:
3401 Add automatic test for ClutterEntry, by Tommi Komulainen
3403 2008-06-10 Chris Lord <chris@openedhand.com>
3405 * clutter/cogl/common/cogl-primitives.c: (_cogl_path_arc):
3406 Draw as expected when end angle is lower than start angle (i.e. do not
3407 swap the angles). This aligns with cairo behaviour.
3409 2008-06-10 Tommi Komulainen <tommi.komulainen@iki.fi>
3411 Bug#959 - Multiple minor improvements
3413 * configure.ac: pick up GDKPIXBUF_PREFIX from gdk-pixbuf-2.0
3416 * clutter/clutter-keysyms-table.h: cosmetic fix for ifdef guard
3417 name in the comment (leftover from earlier commit)
3419 * tests/test-textures.c: don't depend on GdkPixbuf as we're not
3420 using any actual features from it, just plain pixel buffer
3423 * clutter/clutter-timeline.c
3424 * clutter/clutter-timeline.h (clutter_timeline_list_markers): Use
3425 gsize* to return number of items, not guint*
3426 * tests/test-paint-wrapper.c: use correct type (guint*) in call
3427 to clutter_actor_get_size()
3429 * tests/test-depth.c (janus_group): properly take height2 into
3430 account when calculating needed height for the rectangle
3432 * tests/test-cogl-tex-getset.c: use rowstride, not width*4, when
3433 calculating pixel offsets
3435 * tests/test-cogl-tex-getset.c: Don't assume/force RGBA format,
3436 also support ARGB format (needed with quartz imageloader.)
3438 2008-06-09 Tommi Komulainen <tommi.komulainen@iki.fi>
3440 * clutter/osx/clutter-backend-osx.c (clutter_backend_osx_post_parse):
3441 Print GL_VENDOR, GL_RENDERER, GL_VERSION and GL_EXTENSIONS to aid
3444 2008-06-09 Tommi Komulainen <tommi.komulainen@iki.fi>
3446 Bug #930 - add support for quartz imagebackend
3448 * clutter/cogl/common/cogl-bitmap-pixbuf.c
3449 (_cogl_bitmap_from_file): When USE_QUARTZ is defined implement
3450 using Core Graphics.
3451 * configure.ac: support --with-imagebackend=quartz and print
3452 which imagebackend is selected. Make quartz default on OSX
3454 2008-06-09 Øyvind Kolås <pippin@o-hand.com>
3456 * clutter/cogl/common/cogl-primitives.c: (cogl_path_rel_curve_to):
3457 fixed naming of implementation of cogl_path_rel_curve_to (it was
3458 called just cogl_rel_curve_to).
3460 2008-06-09 Emmanuele Bassi <ebassi@openedhand.com>
3462 * configure.ac: Clean up a bit the X11 and X extensions
3463 checks with PKG_CHECK_EXISTS(). Since we are filling up the
3464 X11_CFLAGS and X11_LIBS variables ourselves there is no
3465 point in polluting the Makefiles with unused variables.
3467 * clutter/Makefile.am: Remove the pkg-config variable
3468 evaluation and use the values retrieved from the configure
3471 2008-06-09 Chris Lord <chris@openedhand.com>
3473 Bug #914 - ClutterEntry is confused about characters vs. bytes
3475 * clutter/clutter-entry.c: (clutter_entry_ensure_layout),
3476 (clutter_entry_handle_key_event_internal),
3477 (clutter_entry_set_text):
3478 Fix mix-up of character and byte counts, handle unicode correctly.
3479 Use clutter_key_event_unicode() instead of
3480 clutter_keysym_to_unicode().
3482 * clutter/clutter-event.c: (clutter_key_event_unicode):
3483 Don't ignore ClutterKeyEvent.unicode_value
3485 * clutter/clutter-keysyms-table.h:
3486 Rename header define so as not to conflict with clutter-keysyms.h
3488 Patch originally by Emmanuele Bassi, with input from Tommi Komulainen.
3490 2008-06-07 Øyvind Kolås <pippin@o-hand.com>
3492 * clutter/clutter-texture.c: made the filter-quality proeprty also
3493 control the use of mipmapping.
3494 * clutter/clutter-texture.h: added ClutterTextureQuality enum.
3495 * tests/test-texture-quality.c: new test.
3496 * tests/Makefile.am: added test-texture-quality
3498 2008-06-06 Emmanuele Bassi <ebassi@openedhand.com>
3500 * clutter/clutter-texture.c:
3501 (clutter_texture_class_init): Do not unrealize on hide(), and
3502 do not realize() on show. By default, clutter_actor_show() will
3503 realize ourselves, and we don't want to unrealize when hidden
3504 to avoid paying the penalty of reading back the texture data
3505 from the video memory.
3507 * tests/test-actors.c: Show all textures again when pressing
3510 2008-06-06 Neil Roberts <neil@o-hand.com>
3512 * tests/test-shader.c: Use the special wrapper vars when building
3513 for GLES 2 and automatically cycle the shaders because it's
3514 difficult to right-click.
3516 2008-06-06 Neil Roberts <neil@o-hand.com>
3518 * tests/test-shader.c: Fixed to use sampler2D instead of
3519 sampler2DRect now that GL_TEXTURE_RECTANGLE support is disabled in
3520 revision 2834. The ClutterTexture actor now has the
3521 'disable-slicing' property set. The distance in texture
3522 coordinates between pixels is passed in as a uniform so that the
3523 box-blur shader can still work.
3525 2008-06-06 Emmanuele Bassi <ebassi@openedhand.com>
3527 Bug #952 - Fix test-textures in trunk
3529 * tests/test-textures.c: Use USE_GDKPIXBUF instead of
3530 USE_PIXBUF. (#952, Gwenole Beauchesne)
3532 2008-06-06 Emmanuele Bassi <ebassi@openedhand.com>
3534 Bug #951 - Fix clutter_entry_init() in trunk
3536 * clutter/clutter-entry.c (clutter_entry_init): Remove a
3537 variable shadowing another one. (#951, Tommi Komulainen)
3539 2008-06-06 Emmanuele Bassi <ebassi@openedhand.com>
3541 Bug #955 - ClutterLabel is missing fallback resolution handling
3543 * clutter/clutter-label.c (clutter_label_init): Handle
3544 clutter_backend_get_resolution() return value -1 similar to
3545 ClutterEntry (falling back to 96.0). (#955, Tommi Komulainen)
3547 2008-06-06 Neil Roberts <neil@o-hand.com>
3549 * clutter/eglnative/clutter-stage-egl.c
3550 (clutter_stage_egl_realize): Use ES 2 renderable type when
3551 building for GLES 2.
3553 * clutter/eglnative/clutter-event-egl.c (get_backend_time): Added
3554 a NULL for the microseconds parameter of g_timer_elapsed.
3556 * clutter/eglnative/clutter-stage-egl.h:
3557 * clutter/eglnative/clutter-egl.h:
3558 * clutter/eglnative/clutter-backend-egl.h: Include
3559 clutter-egl-headers.h instead of including the GL headers directly
3560 so it can include gl2.h when building for GLES 2.
3562 * clutter/eglnative/clutter-egl-headers.h:
3563 * clutter/eglnative/Makefile.am (libclutter_eglnative_la_SOURCES):
3564 Added clutter-egl-headers.h
3566 * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: GLES 2
3567 doesn't provide a default precision for floats in the fragment
3568 shader and it will reject the shader if there isn't one.
3570 2008-06-06 Matthew Allum <mallum@openedhand.com>
3572 Bug #948 - Remove texture rectangle support
3574 * clutter/clutter-feature.c:
3575 * clutter/clutter-feature.h:
3576 * clutter/clutter-texture.c:
3577 * clutter/cogl/gl/cogl.c:
3578 * clutter/glx/clutter-glx-texture-pixmap.c:
3579 Remove support for GL_TEXTURE_RECTANGLE_ARB (now using just regular
3580 2D textures, with optional npots extension). Simplifys code, + makes
3581 mipmap & shader support much more sane.
3583 2008-06-06 Øyvind Kolås <pippin@o-hand.com>
3585 Bug #931 - suspicious size allocation for pixel data.
3587 * clutter/cogl/common/cogl-bitmap-pixbuf.c:
3588 (_cogl_bitmap_from_file): allocate height×rowstride and not duplicate
3589 gdkpixbuf's strange optimization saving some bytes at the end of the
3592 2008-06-05 Tommi Komulainen <tommi.komulainen@iki.fi>
3594 Bug 913 - cogl fails to build on OSX
3596 * clutter/cogl/gl/cogl-fbo.c: define GL_READ_FRAMEBUFFER_EXT and
3597 GL_DRAW_FRAMEBUFFER_EXT if not defined in the build system. The
3598 #ifdef can fail if they're not #defines but variables or enums.
3599 As the values are supposed to be industry standard even then
3600 it shouldn't have ill effects.
3602 2008-06-05 Tommi Komulainen <tommi.komulainen@iki.fi>
3604 Bug #911 - OSX: add multistage support
3606 * clutter/osx/clutter-backend-osx.{c,h}
3607 (clutter_backend_osx_init_stage, clutter_backend_osx_get_stage,
3608 clutter_backend_osx_redraw, clutter_backend_osx_create_stage,
3609 clutter_backend_osx_ensure_context, clutter_backend_osx_class_init,
3610 clutter_backend_osx_dispose, ClutterGLView:drawRect:):
3611 * clutter/osx/clutter-stage-osx.{c,h} (clutter_stage_osx_realize,
3612 ClutterGLWindow:setFrameSize:):
3613 Adapt to new multistage backend API. Don't keep a pointer to
3614 default stage. Derive from ClutterActor instead of ClutterStage.
3615 Implement ClutterStageWindow interface. Paint, resize and
3616 otherwise manipulate the wrapper rather than self when necessary.
3618 (clutter_backend_post_parse): Create our singleton GL context
3619 here. We could probably create the context when the default
3620 stage is created, but I think this is more clean.
3622 * clutter/osx/clutter-event-osx.c (clutter_event_osx_translate)
3623 * clutter/osx/clutter-stage-osx.c (clutter_stage_osx_state_update,
3624 ClutterGLWindow:windowShouldClose:):
3625 * clutter/osx/clutter-stage-osx.h: Export ClutterGLWindow interface
3626 for clutter-event-osx.c to easily get the stage for NSWindow.
3627 Fill in ClutterEventAny::stage on our events.
3629 2008-06-05 Tommi Komulainen <tommi.komulainen@iki.fi>
3631 Bug #910 - OSX: missing memory pool
3633 * clutter/osx/clutter-backend-osx.c (clutter_backend_osx_redraw):
3634 Add missing memory pool wrapup.
3636 2008-06-05 Tommi Komulainen <tommi.komulainen@iki.fi>
3638 Bug #909 - OSX: missing NULL pointer handling
3640 * clutter/osx/clutter-stage-osx.c (ClutterGLWindow,
3641 clutter_stage_osx_set_title): NSString:stringWithUTF8String:
3642 does not accept NULL values, use empty string ("") instead.
3643 Avoids potential crash.
3645 2008-06-05 Emmanuele Bassi <ebassi@openedhand.com>
3647 * tests/Makefile.am:
3648 * tests/test-paint-wrapper.c: Add a test case (merely, a copy
3649 of test-actors.c) that verifies that handlers to the ::paint
3650 signal are called in the right order.
3652 2008-06-05 Emmanuele Bassi <ebassi@openedhand.com>
3654 Bug #840 - Implement prepare-paint and finish-paint signals.
3656 * clutter/clutter-actor.c:
3657 (clutter_actor_class_init): Add the ::paint, ::realize and
3658 ::unrealize signals to ClutterActor. It is possible to
3659 override the paint, realization and unrealization of an
3660 actor without subclassing it. The ::paint signal handlers
3661 have the same limitations of a ClutterActor::paint implementation
3664 (clutter_actor_realize),
3665 (clutter_actor_unrealize),
3666 (clutter_actor_paint): Emit the signals instead of calling
3667 the functions from the class vtable.
3669 2008-06-05 Emmanuele Bassi <ebassi@openedhand.com>
3671 * ChangeLog-ivan: Remove the ChangeLog of the clutter-ivan
3672 branch; the branch already contains it.
3674 2008-06-05 Matthew Allum <mallum@openedhand.com>
3676 * clutter/glx/clutter-glx-texture-pixmap.h:
3677 Actually export clutter_glx_texture_pixmap_using_extension ()
3679 2008-06-05 Chris Lord <chris@openedhand.com>
3681 * clutter/clutter-entry.c:
3682 Correct the documentation for clutter_entry_set_max_length, fixes bug
3685 2008-06-04 Robert Bragg <bob@o-hand.com>
3687 * tests/test-clip.c:
3688 Removes a spurious #include <gdk-pixbuf/gdk-pixbuf.h> which may not
3689 be found if using --with-imagebackend=internal
3691 2008-06-04 Robert Bragg <bob@o-hand.com>
3694 Checks that for pangocairo >= 1.18, since
3695 pangocairo-font.c uses pango_cairo_font_get_scaled_font which isn't
3696 otherwise available.
3698 2008-06-03 Neil Roberts <neil@o-hand.com>
3700 Applied patch from bug #947
3702 * clutter/clutter-stage.c (clutter_stage_get_default): Don't grab
3703 the floating reference when creating the default stage. The stage
3704 manager will take a reference to it so it will behave as any other
3706 (clutter_stage_new): Don't take the floating reference to the new
3707 stage but let the stage manager keep it instead.
3709 * clutter/clutter-stage-manager.c
3710 (_clutter_stage_manager_add_stage): Take a reference to the stage
3711 when it is added to the list.
3712 (_clutter_stage_manager_remove_stage): Unref the stage when it is
3713 removed from the list.
3714 (clutter_stage_manager_dispose): Keep track of the 'next' pointer
3715 as a separate variable so we can cope when the stage being
3716 destroyed removes itself from the list as the list is being
3719 * clutter/clutter-actor.c (clutter_actor_destroy): Take a
3720 reference at the beginning of the function even if there is no
3721 parent container so that overall the reference count is not
3722 changed when the actor is unref'd again at the bottom of the
3723 function. Previously it would have a net effect of leaving the
3724 reference count alone unless it is a top level actor in which case
3727 2008-06-03 Matthew Allum <mallum@openedhand.com>
3729 * clutter/glx/clutter-glx-texture-pixmap.c:
3730 Dont always fallback to x11 (slow) updates for a single
3733 * clutter/x11/clutter-x11-texture-pixmap.c:
3734 Move shm allocation to only area updates.
3736 2008-06-03 Øyvind Kolås <pippin@o-hand.com>
3738 * clutter/clutter-container.c: (container_get_child_property):
3739 s/g_object_set_property/g_object_get_property/
3741 2008-06-02 Neil Roberts <neil@o-hand.com>
3743 * clutter/pango/pangoclutter-glyph-cache.c
3744 (pango_clutter_glyph_cache_set): When creating a new band, make
3745 sure the texture is wide enough for the glyph, not just tall
3748 2008-06-02 Neil Roberts <neil@o-hand.com>
3750 Applied 'final patch' from bug #874
3752 * clutter/cogl/gles/cogl.c:
3753 * clutter/cogl/gl/cogl.c: The clip planes are now set using the
3754 inverse projection matrix as the modelview matrix so that they can
3755 be specified in screen coordinates.
3757 * clutter/cogl/gles/cogl-context.h (CoglContext):
3758 * clutter/cogl/gl/cogl-context.h (CoglContext): Added a member to
3759 cache the inverse projection matrix
3761 * clutter/clutter-fixed.h: Added a constant for converting from
3764 * clutter/clutter-fixed.c (clutter_atani, clutter_atan2i): Added
3765 fixed-point versions of atan and atan2.
3767 * tests/test-clip.c: Added a test for clipping with various
3768 rotations and depths.
3770 * tests/Makefile.am (noinst_PROGRAMS): Added test-clip
3772 2008-06-02 Neil Roberts <neil@o-hand.com>
3774 * clutter/cogl/gles/cogl-gles2-wrapper.h: The uniform numbers are
3775 now stored in a separate struct so they can be stored for
3776 application program objects as well.
3778 * clutter/cogl/gles/cogl.c: Moved stub shader functions into
3780 (_cogl_features_init): Report support for the shaders feature on
3783 * clutter/cogl/gles/cogl-shader.h:
3784 * clutter/cogl/gles/cogl-shader.c:
3785 * clutter/cogl/gles/cogl-program.h:
3786 * clutter/cogl/gles/cogl-program.c: Separate files to handle
3787 shaders on programs on GLES. If version 1.1 is being used then the
3788 stub functions which all fail are still used.
3790 * clutter/cogl/gles/cogl-gles2-wrapper.c
3791 (cogl_gles2_wrapper_init, cogl_gles2_wrapper_bind_attributes),
3792 (cogl_gles2_wrapper_get_uniforms): Move the uniforms and attribute
3793 bindings into a separate function so they can be used to bind on
3794 application shaders as well.
3795 (cogl_gles2_wrapper_update_matrix): Now takes a parameter and is
3796 no longer static so that it can be used to update all of the
3797 matrices when a new shader is bound.
3799 * clutter/cogl/gles/cogl-defines.h.in: Use GL_COMPILE_STATUS for
3800 CGL_OBJECT_COMPILE_STATUS if the latter isn't available (for
3803 * clutter/cogl/gles/cogl-context.h (CoglContext): Added handle
3804 arrays for programs and shaders.
3806 * clutter/cogl/gles/cogl-context.c (cogl_create_context)
3807 (cogl_destroy_context): Initialize and destroy program and shader
3810 * clutter/cogl/gles/Makefile.am (libclutter_cogl_la_SOURCES): Add
3811 cogl-{shader,program}.{c,h}
3813 2008-06-02 Neil Roberts <neil@o-hand.com>
3815 * clutter/cogl/gl/cogl-context.c (cogl_destroy_context): Fix
3816 cut-and-paste error where the wrong arrays were being freed.
3818 2008-06-01 Emmanuele Bassi <ebassi@openedhand.com>
3820 Merge from clutter-0-6:
3822 * clutter/clutter-model.c:
3823 (clutter_model_iter_set_internal_valist): Add an internal function
3824 wrapping ClutterModelIter::set_value that does not emit the
3825 ::row-changed signal. Emitting this signal before the ::row-added
3826 one is wrong: a row cannot change before being inserted.
3828 (clutter_model_append), (clutter_model_prepend),
3829 (clutter_model_insert): Use the non-signal emitting variant of
3830 clutter_model_iter_set_valist().
3832 (clutter_model_iter_set_valist): Use the internal version and emit
3833 the ::row-changed signal at the end.
3835 2008-05-31 Emmanuele Bassi <ebassi@openedhand.com>
3837 Bug #943 - Signals are only emitted within a certain area of
3840 * clutter/clutter-main.c (clutter_do_event): Use the proper
3841 API and not the macros for the default stage, in case we are
3842 using a backend supporting multiple stages. (Julian Aron Prenner)
3844 2008-05-30 Emmanuele Bassi <ebassi@openedhand.com>
3846 * clutter/pango/pangoclutter-fontmap.c:
3847 * clutter/pango/pangoclutter-renderer.c:
3848 * clutter/pango/pangoclutter.h
3849 * clutter/pango/pangoclutter-private.h: Add a function retrieving
3850 the font mipmapping setting.
3852 2008-05-29 Neil Roberts <neil@o-hand.com>
3854 * clutter/cogl/gles/cogl-gles2-wrapper.h (CoglGles2Wrapper): Added
3855 uniforms for alpha testing.
3857 * clutter/cogl/gles/cogl-gles2-wrapper.c
3858 (cogl_gles2_wrapper_init): Get the uniforms for alpha testing
3860 (cogl_wrap_glEnable, cogl_wrap_glDisable): Enable/disable alpha
3862 (cogl_wrap_glAlphaFunc): Filled in the wrapper.
3864 * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: Added alpha
3867 * clutter/cogl/gles/cogl-gles2-wrapper.h:
3868 * clutter/cogl/gles/cogl-gles2-wrapper.c
3869 (cogl_wrap_glGetIntegerv): Added a wrapper for glGetIntegerv so
3870 that it can report zero clip planes.
3872 * clutter/cogl/gles/cogl.c:
3873 * clutter/cogl/gles/cogl-texture.c: Use the wrapped version of
3876 * clutter/cogl/gles/cogl-primitives.c (_cogl_path_fill_nodes): Use
3877 _cogl_features_available to check for the stencil buffer instead
3878 of an #ifdef. The stencil buffer is available in the default
3879 profile for the GLES 2 simulator.
3881 2008-05-29 Emmanuele Bassi <ebassi@openedhand.com>
3883 * configure.ac: Check the --with switches as soon as we have them,
3884 to avoid further checks that will fail anyway.
3886 2008-05-29 Emmanuele Bassi <ebassi@openedhand.com>
3888 * README: Update the configure arguments list.
3890 2008-05-28 Neil Roberts <neil@o-hand.com>
3892 * clutter/cogl/gles/cogl-gles2-wrapper.c
3893 (cogl_gles2_wrapper_init): Get uniforms for fog parameters and
3895 (cogl_wrap_glDrawArrays): Store the modelview matrix in a uniform
3896 as well so that it can be used for fogging calculations.
3897 (cogl_wrap_glEnable, cogl_wrap_glDisable): Enable/disable fogging.
3898 (cogl_wrap_glFogx, cogl_wrap_glFogxv): Fill in wrapper to set
3901 * clutter/cogl/gles/cogl-fixed-vertex-shader.glsl: Calculate the
3902 fog amount if fogging is enabled.
3904 * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: Mix with fog
3907 * clutter/cogl/gles/cogl-gles2-wrapper.h (CoglGles2Wrapper): Add
3908 uniforms for fogging.
3910 2008-05-28 Emmanuele Bassi <ebassi@openedhand.com>
3912 * clutter/pango/pangoclutter-font.c: Remove unneeded file.
3914 * tests/Makefile.am:
3915 * tests/test-random-text.c: Add a test for checking the
3918 2008-05-28 Emmanuele Bassi <ebassi@openedhand.com>
3920 Bug #919 - Replacement pango renderer (Neil Roberts)
3922 * clutter/clutter-backend.h:
3923 * clutter/clutter-backend.c:
3924 (clutter_backend_set_font_options),
3925 (clutter_backend_get_font_options): Add the ability to set
3926 the cairo_font_options_t* for the backend at construction
3927 time, so that backend implementations can have their own
3930 * clutter/clutter-color.c: Include pango/pango-attributes.h
3931 for the pango_color_parse() function.
3933 * clutter/clutter-label.c:
3934 (clutter_label_ensure_layout),
3935 (clutter_label_init), (clutter_label_set_text),
3936 (clutter_label_set_font_name), (clutter_label_set_ellipsize),
3937 (clutter_label_set_use_markup): Ensure that the cache is
3938 always primed when the Label changes; this makes sure that
3939 the cache is rebuilt outside the paint run, which should
3940 make the painting perform better especially on embedded
3943 * clutter/clutter-entry.c:
3944 (clutter_entry_ensure_layout),
3945 (clutter_entry_init), (clutter_entry_set_text),
3946 (clutter_entry_set_font_name): Ditto as above.
3948 * clutter/clutter-private.h:
3949 * clutter/clutter-main.[ch]: Create the font-map inside the
3950 main context; add two new functions:
3952 clutter_clear_glyph_cache()
3953 clutter_set_use_mipmapped_text()
3955 that control the glyphs cache.
3957 * clutter/pango/Makefile.am:
3958 * clutter/pango/pangoclutter-fontmap.c:
3959 * clutter/pango/pangoclutter-private.h:
3960 * clutter/pango/pangoclutter-render.c:
3961 * clutter/pango/pangoclutter.h: Rewrite the Pango renderer
3962 using a PangoCairo context and saving the glyphs inside a
3963 more efficient cache.
3965 * configure.ac: Depend on pangocairo instead of pangoft2.
3967 2008-05-28 Emmanuele Bassi <ebassi@openedhand.com>
3969 Bug 882 - Allow child properties for containers implementing the
3970 ClutterContainer interface (Øyvind Kolås)
3972 * clutter/clutter-child-meta.[ch]: Base class for the metadata
3973 of a ClutterActor inside a ClutterContainer; the ChildMeta
3974 object implements a wrapper for storing data that is attached
3975 to a ClutterActor only when it's part of a ClutterContainer.
3976 The ChildMeta object is used to store the child properties
3977 accessible through the ClutterContainer API.
3979 * clutter/clutter-container.[ch]: Creates the ChildMeta for
3980 each actor, in case the Container specifies the ChildMeta
3983 * clutter/Makefile.am: Add clutter-child-meta.[ch] to the build.
3985 * clutter/clutter-marshal.list: Add the marshaller for the
3986 ClutterContainer::child-notify signal.
3988 * clutter/clutter-types.h: Declare ClutterContainer and
3989 ClutterChildMeta to avoid recursive inclusion.
3991 2008-05-28 Neil Roberts <neil@o-hand.com>
3993 * clutter/cogl/gles/Makefile.am: Use old-style Makefile rules for
3994 the stringify script so that automake won't complain.
3996 2008-05-28 Emmanuele Bassi <ebassi@openedhand.com>
3998 * tests/test-script.c:
3999 * tests/test-script.json: Test merging the same actor from two
4002 2008-05-28 Emmanuele Bassi <ebassi@openedhand.com>
4004 Fix merging of objects with the same id.
4006 * clutter/clutter-script.c:
4007 (json_object_end): If there already is an ObjectInfo under the
4008 parsed id, merge the construction with the currently stored
4011 (parse_children), (parse_signals),
4012 (parse_behaviours): Append the newly parsed children, signals
4013 and behaviours, in case the ObjectInfo already has unresolved
4016 (clutter_script_construct_object): Fix a typo in the type check.
4018 (clutter_script_init): Do not copy the key inside the hash
4019 table holding the objects - we are already holding it inside
4022 2008-05-28 Neil Roberts <neil@o-hand.com>
4024 * clutter/cogl/gles/cogl-gles2-wrapper.c (cogl_wrap_glGetFixedv):
4025 Filled in the wrapper for glGetFixedv
4027 2008-05-28 Neil Roberts <neil@o-hand.com>
4029 * clutter/cogl/gles/cogl-texture.c: Use the wrapper for
4030 glTexParameteri. Call glGenerateMipmap after every change to the
4033 * clutter/cogl/gles/cogl-gles2-wrapper.h:
4034 * clutter/cogl/gles/cogl-gles2-wrapper.c: Added a wrapper for
4035 glTexParameteri so that it can ignore requests to set
4036 GL_GENERATE_MIPMAP. Added a wrapper for glGenerateMipmap that does
4039 2008-05-28 Emmanuele Bassi <ebassi@openedhand.com>
4041 * clutter/clutter-script.c:
4042 (clutter_script_construct_object): Mark top-level objects,
4043 that is objects that don't have their ownership transferred
4044 when building up a ClutterScript.
4046 (object_info_free): Merge a fix from the stable branch, but
4047 do not check the type - check whether the object is a top
4048 level (we still need the ClutterActor type check in order to
4049 call clutter_actor_destroy()).
4051 2008-05-28 Emmanuele Bassi <ebassi@openedhand.com>
4053 * clutter/clutter-rectangle.c:
4054 (clutter_rectangle_paint): Remove commented out call to
4055 cogl_enable(); the call is not needed and the comment is
4058 2008-05-27 Neil Roberts <neil@o-hand.com>
4060 * clutter/eglx/clutter-stage-egl.h:
4061 * clutter/eglx/clutter-egl-headers.h:
4062 * clutter/eglx/clutter-backend-egl.h:
4063 * clutter/eglx/Makefile.am: Include the GLES and EGL headers via
4064 clutter-egl-headers.h so that the right version can be used
4065 depending on whether the GLES 2 wrapper is being used.
4067 * configure.ac: Added an automake conditional for whether the GLES
4068 2 wrapper should be used.
4070 * clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize):
4071 Remove the call to glGetIntegerv to get the max texture size. It
4072 was being called before the GL context was bound so it didn't work
4073 anyway and it was causing trouble for the GLES 2 simulator.
4075 * clutter/cogl/gles/stringify.sh: Shell script to convert the
4076 shaders into a C string.
4078 * clutter/cogl/gles/cogl-gles2-wrapper.h:
4079 * clutter/cogl/gles/cogl-gles2-wrapper.c: Wrappers for most of the
4080 missing GL functions in GLES 2.
4082 * clutter/cogl/gles/cogl-fixed-fragment-shader.glsl:
4083 * clutter/cogl/gles/cogl-fixed-vertex-shader.glsl: New shaders for
4086 * clutter/cogl/gles/cogl-defines.h.in: Use the @CLUTTER_GL_HEADER@
4087 macro instead of always using the GLES 1 header.
4089 * clutter/cogl/gles/cogl-context.h (CoglContext): Include a field
4090 for the state of the GLES 2 wrapper.
4092 * clutter/cogl/gles/cogl-texture.c:
4093 * clutter/cogl/gles/cogl-primitives.c:
4094 * clutter/cogl/gles/cogl.c: Use wrapped versions of the GL
4095 functions where neccessary.
4097 * clutter/cogl/gles/Makefile.am: Add sources for the GLES 2
4098 wrapper and an extra build step to put the GLSL files into a C
4099 string whenever the files change.
4101 2008-05-26 Matthew Allum <mallum@openedhand.com>
4103 * clutter/x11/clutter-stage-x11.c: (clutter_stage_x11_request_coords):
4104 Dont allow the window to be resize to 0 dimentions. (fixes #933)
4106 2008-05-23 Emmanuele Bassi <ebassi@openedhand.com>
4108 Bug #912 - Invalid use of int* as parameter for glGetIntegerv
4110 * clutter/cogl/gl/cogl.c (_cogl_features_init): Use GLint
4111 instead of int. (#912, Tommi Komulainen)
4113 2008-05-23 Emmanuele Bassi <ebassi@openedhand.com>
4115 Bug #928 - Reparenting a child that itself is a container
4118 * clutter/clutter-actor.c (clutter_actor_set_parent): Realize
4119 an actor when setting its parent, if the parent is realized.
4121 * clutter/clutter-group.c:
4122 (clutter_group_realize), (clutter_group_class_init): Add the
4123 missing implementation of the ::realize() virtual function; this
4124 makes sure that the children of a Group are realized if the Group
4127 2008-05-21 Neil Roberts <neil@o-hand.com>
4129 * clutter/cogl/gl/cogl.c (error_string):
4130 * clutter/cogl/gles/cogl.c (error_string): Rename to
4131 _cogl_error_string and remove the static scoping so that it can be
4132 called in cogl-texture etc.
4134 * clutter/cogl/gl/cogl-texture.c (cogl_texture_new_from_foreign):
4135 * clutter/cogl/gles/cogl-texture.c (cogl_texture_new_from_foreign):
4136 GE(*) can't be used to wrap around calls that use the return
4139 * clutter/cogl/gl/cogl-texture.c (_cogl_texture_quad_sw)
4140 (_cogl_texture_quad_hw, cogl_texture_polygon): Remove GE(*)
4141 wrapper around calls in the middle of a glBegin/glEnd pair which
4142 otherwise always generate an error because glGetError can only be
4143 called outside of the pair.
4145 * clutter/cogl/gl/cogl-internal.h: Include stdio.h when definig
4146 COGL_DEBUG and declare a prototype for _cogl_error_string.
4148 * clutter/cogl/gles/cogl-internal.h: Match GE(*) macro to GL
4151 2008-05-21 Ivan Leben <ivan@o-hand.com>
4153 * clutter/cogl/gles/cogl-texture.c:
4154 (_cogl_texture_download_from_gl:) Only comment out the broken
4155 check for framebuffer alpha bits, not the check for alpha in
4158 2008-05-20 Øyvind Kolås <pippin@o-hand.com>
4160 Decouple actor opacity from fill opacity in ClutterRectangle (fixes
4161 race when both are set from clutter script also makes it more
4162 consistent with the behavior of other actors.)
4164 * clutter/clutter-rectangle.c: (clutter_rectangle_set_color): stop
4165 setting the opacity of the actor from the specified color.
4166 (clutter_rectangle_paint): combine the absolute opacity of the actor
4167 with the alpha of the color when painting.
4169 2008-05-20 Ivan Leben <ivan@o-hand.com>
4171 * clutter/cogl/gles/cogl-texture.c:
4172 (cogl_texture_download_from_gl:) Implemented a workaround
4173 for missing alpha framebuffer channel. There are still
4174 some issues with detecting whether alpha is present in the
4175 framebuffer. See comments in code. Test-cogl-tex-getset now
4176 successfully retrieves a RGBA texture image data.
4178 2008-05-19 Ivan Leben <ivan@o-hand.com>
4180 * clutter/cogl/gles/cogl-texture.c:
4181 (cogl_texture_download_from_gl:) Store old blending factors
4182 and restore them when done. The lack of ability to retrieve
4183 the alpha channel now more noticable in test-cogl-tex-getset
4184 since the edges of the hand are not antialiased.
4186 * clutter/cogl/gl(es)/cogl-internal.h: Declare
4187 cogl_blend_func to avoid "implicit implementation" compile
4190 2008-05-19 Ivan Leben <ivan@o-hand.com>
4192 * clutter/cogl/gl(es)/cogl.c: New internal function
4193 cogl_blend_func caches blending setup much like cogl_enable
4194 does with the enable flags. This separates blending factors
4195 setup from the enable/disable operation in preparation of
4196 the texture image retrieval fix for alpha channel on GLES.
4197 (cogl_enable:) Does not modify blending factors anymore.
4199 * clutter/cogl/gl(es)/cogl-context.h: CoglContext holds two
4200 new variables to cache blending src and dst factors.
4202 * clutter/cogl/gl(es)/cogl-context.c:
4203 (cogl_create_context:) Initialize blending factors.
4205 * clutter/cogl/gles/cogl-texture.c:
4206 (cogl_texture_download_from_gl:) Set blending factors to
4207 CGL_ONE, CGL_ZERO which fixes the slighlty improper behavior
4208 where source colour was actually multiplied with its alpha
4209 value in the result (not noticable on current tests).
4211 2008-05-19 Emmanuele Bassi <ebassi@openedhand.com>
4213 * clutter/eglx/Makefile.am: Fix the INCLUDE directives to
4214 properly include the X11 backend headers.
4216 * clutter/glx/Makefile.am: Add the libclutter-x11.la static
4217 library to the LDADD directives.
4219 2008-05-19 Tomas Frydrych <tf@openedhand.com>
4221 * clutter/x11/clutter-x11.h:
4222 * clutter/glx/clutter-glx.h:
4223 Include texture pixmap headers.
4225 2008-05-16 Neil Roberts <neil@o-hand.com>
4227 * clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize):
4228 Fix name of parent class variable which otherwise breaks the
4231 2008-05-16 Neil Roberts <neil@o-hand.com>
4233 Use the Mesa headers instead of depending on GLee for Win32
4236 * configure.ac: No longer check for GLee
4238 * clutter/cogl/gl/cogl-defines.h.in: Don't bother including GLee.h
4240 * build/mingw/mingw-cross-compile.sh: No longer downloads libGLee
4241 but downloads the Mesa library instead and installs the headers
4242 from that. Fixed the libpng version.
4244 2008-05-16 Tomas Frydrych <tf@openedhand.com>
4246 * clutter/glx/Makefile.am:
4247 * clutter/x11/Makefile.am:
4248 Install glx and x11 specific includes into clutter/glx and
4249 clutter/x11 so that header files that include glx/*.h or x11/*.h
4252 2008-05-16 Neil Roberts <neil@o-hand.com>
4254 * clutter/win32/clutter-event-win32.c (message_translate): Fix
4255 signedness of old_xpos and old_ypos to get rid of compiler
4258 * clutter/win32/clutter-backend-win32.c
4259 (clutter_backend_win32_get_features): Cast the result of
4260 glGetString to a signed char pointer to avoid compiler warnings.
4262 2008-05-15 Neil Roberts <neil@o-hand.com>
4264 * clutter/win32/clutter-stage-win32.c:
4265 * clutter/win32/clutter-backend-win32.c: Reflect changes to the
4266 GLX/X11 backend in revisions 2708-2709 and 2713-2715 which
4267 simplify the backend a little.
4269 2008-05-15 Emmanuele Bassi <ebassi@openedhand.com>
4271 * clutter/x11/clutter-backend-x11.c:
4272 * clutter/clutter-event.h:
4273 * clutter/clutter-feature.h:
4274 * clutter/clutter-fixed.c:
4275 * clutter/clutter-model.h: Fix documentation.
4277 * clutter/eglnative/clutter-backend-egl.[ch]:
4278 * clutter/eglnative/clutter-event-egl.c: Add the same solution
4279 used for the SDL backend in order to get the time of an event.
4280 This should fix the motion event throttling and the click count
4281 on button press. (#906)
4283 * tests/test-pixmap.c (create_pixmap), (main): Fix preprocessor
4286 2008-05-14 Emmanuele Bassi <ebassi@openedhand.com>
4288 * tests/test-threads.c: Add a "progress bar" actor and
4289 make the test take less amount of time to complete.
4291 2008-05-14 Emmanuele Bassi <ebassi@openedhand.com>
4293 * tests/test-events.c: Clean up a bit, and print out more
4294 messages when pressing one of the rectangles.
4296 * tests/test-threads.c: Be more verbose in the console, and
4297 apply another behaviour on the rectangle, to show that we
4300 2008-05-14 Øyvind Kolås <pippin@o-hand.com>
4302 * clutter/cogl/gles/cogl.c: (_cogl_features_init): do not set
4303 COGL_FEATURE_TEXTURE_READ_PIXELS, since it is not available.
4305 2008-05-14 Matthew Allum <mallum@openedhand.com>
4307 * clutter/clutter-actor.c:
4308 * clutter/clutter-main.c:
4309 * clutter/clutter-private.h:
4310 Rejid Øyvind's previous commit a little moving more into
4311 clutter-main.c and using ClutterContext.
4312 Also Refactor clutter_init & clutter_init_with_args to share
4313 same core init code.
4315 2008-05-13 Øyvind Kolås <pippin@o-hand.com>
4317 Made it possible to do picking when the colors stored in the
4318 framebuffer are only approximately the correct value.
4320 * clutter/clutter-actor.c:
4321 (init_bits): initialize constants about how many bits are
4322 available/will be used for r,g,b components.
4323 (_clutter_pix_to_id): now own function, compute an id from a
4324 pixel into its own function (used from _clutter_do_pick).
4325 (_clutter_id_to_col): now own function, computes the color to use for
4327 (clutter_actor_paint): use clutter_id_to_col.
4328 * clutter/clutter-main.c:
4329 (_clutter_do_pick): use _clutter_pix_to_id
4330 (clutter_main): re-enable invocation of fruity app shell.
4332 2008-05-13 Emmanuele Bassi <ebassi@openedhand.com>
4334 * clutter/fruity/clutter-stage-fruity.c:
4335 (clutter_stage_egl_show), (clutter_stage_egl_hide): Don't chain
4336 up and set flags, as it is not needed anymore.
4338 (clutter_stage_egl_realize): Set the REALIZED flag.
4340 * clutter/eglnative/clutter-stage-egl.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 2008-05-13 Emmanuele Bassi <ebassi@openedhand.com>
4346 * clutter/glx/clutter-stage-glx.c:
4347 (clutter_stage_glx_unrealize): Move the shaders release from here...
4349 * clutter/glx/clutter-backend-glx.c:
4350 (clutter_backend_glx_dispose): ... to here. Shaders should be
4351 released when the GL context is being destroyed, and that only
4352 happens when the backend is being disposed, now that we support
4355 2008-05-13 Emmanuele Bassi <ebassi@openedhand.com>
4357 * clutter/clutter-backend.c:
4358 (_clutter_backend_create_stage): Call _clutter_stage_set_window()
4359 ourselves, thus removing yet another action that backends must
4360 implement and might get wrong; also cuts a backend-agnostic piece
4361 of code duplication.
4363 * clutter/eglnative/clutter-backend-egl.c:
4364 (clutter_backend_egl_create_stage): Update the EGL native backend.
4366 * clutter/eglx/clutter-backend-egl.c:
4367 (clutter_backend_egl_create_stage): Update the EGLX backend.
4369 * clutter/fruity/clutter-backend-fruity.c:
4370 (clutter_backend_egl_create_stage): Update the fruity backend
4372 * clutter/glx/clutter-backend-glx.c:
4373 (clutter_backend_glx_create_stage): Update the GLX backend.
4375 * clutter/sdl/clutter-backend-sdl.c:
4376 (clutter_backend_sdl_create_stage): Update the SDL backend.
4378 * HACKING.backends: Update the ::create_stage() description.
4380 2008-05-13 Emmanuele Bassi <ebassi@openedhand.com>
4382 * clutter/x11/clutter-event-x11.c (event_translate): Remove the
4383 cheap Expose event compression, as it seems to play games when a
4384 composite manager is running. It's also not really needed, as
4385 the redraw queue will avoid redraws too close to each other
4388 * clutter/x11/clutter-stage-x11.c:
4389 (clutter_stage_x11_show), (clutter_stage_x11_hide): Do not chain
4390 up just to set the flags. This fixes a critical warning coming
4391 from ClutterActor::hide() default implementation.
4393 2008-05-13 Ivan Leben <ivan.leben@o-hand.com>
4395 * clutter/cogl/gl/cogl-defines.h.in:
4396 Fix GL function prototypes on OS X by #definining APIENTRY and
4397 APIENTRYP if missing.
4399 2008-05-12 Ivan Leben <ivan.leben@o-hand.com>
4401 * clutter/cogl/gl/cogl-defines.h.in:
4402 Defined GL extension functions used by Cogl inside the COGL_
4405 * clutter/cogl/gl/cogl-context.h:
4406 * clutter/cogl/gl/cogl.c:
4407 Use COGL_ extension function prototypes instead of relying
4408 on glext.h to define them. Should fix the mac compilability
4409 bug, but haven't tested it yet.
4411 2008-05-12 Matthew Allum <mallum@openedhand.com>
4413 * clutter/x11/clutter-x11-texture-pixmap.c:
4415 * tests/Makefile.am:
4416 Remove the XComposite dep from Clutter itself, just use
4417 in test-pixmap (if available)
4419 2008-05-12 Emmanuele Bassi <ebassi@openedhand.com>
4421 Rework the stage wrapper/implementation relation: remove
4422 duplicated code and all the bookkeeping from the backends into
4423 ClutterStage whenever possible, to reduce the amount of work a
4424 backend must do (and possibly get wrong). Thanks to Tommi
4427 * clutter/clutter-main.c:
4428 (clutter_init_with_args), (clutter_init): Realize the default
4429 stage after creation. The default stage is special, because we
4430 use it in the initialization sequence. This removes the burden
4431 from the backends and reduces the things a backend can get
4434 * clutter/clutter-stage.c:
4435 (clutter_stage_show): Make sure to realize the implementation if
4436 it hasn't been realized yet.
4438 (clutter_stage_realize): Set the REALIZED flag and call
4439 clutter_stage_ensure_current() if the implementation was
4440 successfully realized.
4442 (clutter_stage_unrealized): Call clutter_stage_ensure_current()
4445 * clutter/glx/clutter-backend-glx.c:
4446 (clutter_backend_glx_create_stage): Do not realize the stage anymore
4447 when creating it, and let the normal realization sequence take
4450 (clutter_backend_glx_ensure_context): Trap for X11 errors.
4452 * clutter/glx/clutter-stage-glx.c:
4453 (clutter_stage_glx_realize): Chain up to the X11 implementation
4454 so that we can set up the window state (title, cursor visibility)
4455 when we actually have a X window. Also, do not call
4456 clutter_stage_ensure_current(), and rely on the wrapper to do
4457 it for us. This means we can drop setting the REALIZED flag on
4460 (clutter_stage_glx_unrealize): Do not call
4461 clutter_stage_ensure_current() ourselves, and rely on the wrapper
4464 * clutter/x11/clutter-stage-x11.c:
4465 (set_wm_title), (set_cursor_visible): Move the WM title and
4466 cursor visibility code inside their own functions.
4468 (clutter_stage_x11_realize): Set the window title and whether the
4469 cursor is visible or not after realizing the stage.
4471 (clutter_stage_x11_set_cursor_visible),
4472 (clutter_stage_x11_set_title): Call set_wm_title() and
4473 set_cursor_visible().
4475 (clutter_stage_x11_finalize): Free the title string.
4477 * clutter/x11/clutter-stage-x11.h: Save more of the stage state,
4478 so that we can set it even when the stage hasn't been realized
4481 * clutter/eglnative/clutter-backend-egl.c:
4482 (clutter_backend_egl_create_stage):
4483 * clutter/eglnative/clutter-stage-egl.c:
4484 (clutter_stage_egl_unrealize),
4485 (clutter_stage_egl_realize): Update the eglnative backend.
4487 * clutter/eglx/clutter-backend-egl.c:
4488 (clutter_backend_egl_ensure_context),
4489 (clutter_backend_egl_create_stage):
4490 * clutter/eglx/clutter-stage-egl.c:
4491 (clutter_stage_egl_unrealize),
4492 (clutter_stage_egl_realize): Update the eglx backend.
4494 * clutter/sdl/clutter-backend-sdl.c:
4495 (clutter_backend_sdl_create_stage):
4496 * clutter/sdl/clutter-stage-sdl.c:
4497 (clutter_stage_sdl_realize): Update the sdl backend.
4499 * clutter/fruity/clutter-backend-fruity.c:
4500 (clutter_backend_fruity_create_stage):
4501 * clutter/sdl/clutter-stage-fruity.c:
4502 (clutter_stage_fruity_realize): Update the fruity backend.
4504 * tests/test-multistage.c (on_button_press): Bail out if
4505 clutter_stage_new() returns NULL.
4507 * HACKING.backends: Update backend writing documentation.
4509 2008-05-12 Robert Bragg <bob@openedhand.com>
4511 * clutter/clutter-timeline.c:
4512 Adds clutter-timeline documentation RE: r2337, explaining
4513 the current timeline semantics.
4515 2008-05-12 Emmanuele Bassi <ebassi@openedhand.com>
4517 * HACKING.backends: Update documentation.
4519 * clutter/glx/clutter-stage-glx.c:
4520 (clutter_stage_glx_realize): Avoid setting more flags than
4523 2008-05-09 Neil Roberts <neil@o-hand.com>
4525 * clutter/clutter-frame-source.c (clutter_frame_source_add)
4526 (clutter_frame_source_add_full): Add gtk-doc and rename the
4527 'function' parameter to 'func'.
4529 * clutter/clutter-frame-source.h: Rename the 'function' parameters
4532 * clutter/Makefile.am (source_h): Make clutter-frame-source.h a
4535 * clutter/clutter-main.c (clutter_threads_add_frame_source_full):
4538 2008-05-09 Emmanuele Bassi <ebassi@openedhand.com>
4540 * clutter/clutter-script-private.h: Add a flag for the
4543 * clutter/clutter-script.c:
4544 (json_object_end): If the "type" member is "ClutterStage"
4545 and we have a "is-default" member set to true then this
4546 is the default stage.
4548 (clutter_script_construct_object): Special case the default
4549 stage instead of each ClutterStage.
4551 (object_info_free): Ditto as above.
4553 * tests/test-script.json: Test the creation of a non-default
4554 stage and the ::destroy handler to quit.
4556 2008-05-09 Emmanuele Bassi <ebassi@openedhand.com>
4558 Bug #908 - Support transform from G_TYPE_INT to ClutterUnit
4560 * clutter/clutter-units.c:
4561 (clutter_value_transform_int_unit),
4562 (clutter_unit_get_type): Add GValue transformation function from
4563 integer values to ClutterUnit. (#908)
4565 (param_unit_validate): Fix validation for ClutterParamSpecUnit;
4566 this allows writable ClutterUnit properties.
4568 * clutter/clutter-fixed.c:
4569 (clutter_value_transform_int_fixed),
4570 (clutter_value_transform_double_fixed),
4571 (clutter_value_transform_float_fixed): Add GValue transformation
4572 functions from native types (int, double, float) to ClutterFixed.
4574 (clutter_fixed_get_type): Register the new transformation functions.
4576 (param_fixed_validate): Fix validation for ClutterParamSpecUnit;
4577 this allows writable ClutterFixed properties.
4579 2008-05-07 Ivan Leben <ivan@o-hand.com>
4581 * clutter/cogl/cogl.h.in:
4582 * clutter/cogl/gl(es)/cogl-texture.h:
4583 * clutter/cogl/gl(es)/cogl-texture.c:
4584 cogl_texture_new_* functions take a gboolean auto_mipmap argument.
4585 If TRUE automatic mipmap generation is enabled during the process
4586 of slice texture object creation.
4587 (cogl_texture_new_from_foreign:) now allows mipmap min filter
4590 * clutter/clutter-texture.c:
4591 * clutter/glx/clutter-glx-texture-pixmap.c:
4592 * tests/test-cogl-offscreen.c:
4593 * tests/test-cogl-tex-tile.c:
4594 * tests/test-cogl-tex-convert.c:
4595 * tests/test-cogl-tex-polygon.c:
4596 * tests/test-cogl-tex-getset.c:
4597 Pass FALSE for auto_mipmap to cogl_texture_new_*.
4599 * clutter/pango/pangoclutter-render.c:
4600 (tc_get:) Pass TRUE to cogl_texture_new_with_size and use mipmap
4601 min filter for nicer glyphs at small scales. As a result test-text
4602 has gone all beautiful now.
4604 2008-05-07 Neil Roberts <neil@o-hand.com>
4606 * clutter/clutter-frame-source.h: Added the missing G_BEGIN_DECLS
4609 2008-05-07 Emmanuele Bassi <ebassi@openedhand.com>
4611 * clutter/sdl/clutter-backend-sdl.c:
4612 (clutter_backend_sdl_dispose): Destroy the timer that we created...
4613 (clutter_backend_sdl_init): ... here.
4615 * clutter/sdl/clutter-backend-sdl.h: Add a GTimer for time-based
4616 operations, like the event time.
4618 * clutter/sdl/clutter-event-sdl.c:
4619 (get_backend_time): Get the elapsed milliseconds for the SDL
4622 (_clutter_events_init): Start the timer provided by the backend...
4623 (_clutter_events_uninit): ... and the stop it.
4625 (key_event_translate), (event_translate): Use the backend time
4626 to fill out the time field of the event structures. This fixes
4627 the motion notification throttling on the SDL backend.
4629 2008-05-06 Matthew Allum <mallum@openedhand.com>
4631 * clutter/glx/clutter-glx-texture-pixmap.c:
4632 * clutter/x11/clutter-x11-texture-pixmap.c:
4633 More cleanups, safety additions.
4635 2008-05-05 Øyvind Kolås <pippin@o-hand.com>
4637 * clutter/cogl/gl/cogl-primitives.c:
4638 * clutter/cogl/gles/cogl-primitives.c:
4639 * clutter/cogl/common/cogl-primitives.c: moved declaration of
4640 gegl_rectangle and gegl_rectanglex here to satisfy linking
4641 requirements when building the fruity backend.
4643 2008-05-05 Øyvind Kolås <pippin@o-hand.com>
4645 * clutter/cogl/cogl.h.in: api review touch ups.
4646 * clutter/cogl/common/cogl-primitives.c: api review touch ups.
4647 * clutter/cogl/gl/cogl-primitives.c: (cogl_path_fill),
4648 (cogl_path_stroke): indentation.
4649 * clutter/cogl/gles/cogl-primitives.c:
4650 (_cogl_path_fill_nodes): free allocated resources.
4652 * tests/test-cogl-primitives.c: updated to new API, added rotation to
4653 test to show that cogl renders paths correct under perspective
4656 2008-05-02 Emmanuele Bassi <ebassi@openedhand.com>
4658 Bug #900 - clutter_actor_lower() and friends do not queue redraw
4660 * clutter/clutter-actor.c:
4661 (clutter_actor_raise),
4662 (clutter_actor_lower): Queue a redraw after raising and lowering
4663 and actor in the paint order stack. (#900)
4665 2008-05-01 Richard Purdie <rpurdie@openedhand.com>
4668 Set CLUTTER_COGL for fruity.
4670 2008-05-01 Emmanuele Bassi <ebassi@openedhand.com>
4672 Build fixes for the SDL flavour.
4674 * clutter/sdl/clutter-backend-sdl.c: Remove an unused function.
4676 * clutter/sdl/clutter-event-sdl.c:
4677 (clutter_event_dispatch): Properly cast the stage pointer.
4679 * clutter/sdl/clutter-stage-sdl.c:
4680 (clutter_stage_window_iface_init): Remove the draw_to_pixbuf()
4681 stub and assignment.
4683 2008-05-01 Richard Purdie <rpurdie@openedhand.com>
4686 Fix up fruity flavour configure option.
4688 2008-05-01 Øyvind Kolås <pippin@o-hand.com>
4690 * clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes): draw
4691 the rasterized scanlines as an array of triangles.
4693 2008-05-01 Emmanuele Bassi <ebassi@openedhand.com>
4695 * clutter/clutter-behaviour.c:
4696 (clutter_behaviour_remove_all): Disconnect the ::destroy
4697 handler when removing all actors, to match the behaviour
4698 of clutter_behaviour_remove().
4700 2008-05-01 Matthew Allum <mallum@openedhand.com>
4702 * clutter/glx/clutter-glx-texture-pixmap.c:
4703 * tests/test-pixmap.c:
4704 Fix up texture-pixmap, now works.
4705 Thanks to Neil for spotting we were actually using
4706 wrong texture type in fbconfig (COGL change).
4708 2008-04-30 Øyvind Kolås <pippin@o-hand.com>
4710 * clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes):
4711 keep track of direction we are drawing in and make sure we leave
4712 two intersection points when we have changed direction.
4714 2008-04-30 Øyvind Kolås <pippin@o-hand.com>
4716 * clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes):
4717 scanline rasterizer fallback for GLES without working stencil
4718 buffer (would benefit from optimization/smarter choice of
4721 2008-04-30 Emmanuele Bassi <ebassi@openedhand.com>
4723 * clutter/clutter-effect.c:
4724 (clutter_effect_closure_destroy): Do not remove the actor
4725 from the behaviour; the behaviour is an internal detail of the
4726 effect, and it will remove the actors anyway when finalized
4727 when g_object_unref() is called. This should guard against
4728 actors being destroyed while an effect is running.
4730 2008-04-30 Øyvind Kolås <pippin@o-hand.com>
4732 * clutter/cogl/common/Makefile.am:
4733 * clutter/cogl/common/cogl-primitives.c:
4734 * clutter/cogl/common/cogl-primitives.h:
4735 * clutter/cogl/gl/Makefile.am:
4736 * clutter/cogl/gl/cogl-primitives.c:
4737 * clutter/cogl/gl/cogl-primitives.h:
4738 * clutter/cogl/gles/Makefile.am:
4739 * clutter/cogl/gles/cogl-primitives.c:
4740 * clutter/cogl/gles/cogl-primitives.h: moved duplicated code to the
4743 2008-04-30 Robert Bragg <bob@openedhand.com>
4745 * clutter/clutter/x11/clutter-x11-texture-pixmap.c:
4746 In _update_area_real with depth=16 we weren't setting up the alpha
4749 2008-04-29 Matthew Allum <mallum@openedhand.com>
4751 * clutter/glx/Makefile.am:
4752 * clutter/x11/Makefile.am:
4753 Revert header install locations (Mistake in previous commit,
4756 2008-04-29 Neil Roberts <neil@o-hand.com>
4758 * clutter/clutter-actor.c (clutter_actor_move_anchor_point): The
4759 actor position was being moved in the wrong direction. Perhaps
4760 this was a cut-and-paste bug from move_anchor_point_from_gravity
4761 because in that function ax and ay represent the old anchor
4762 position, but in this function they represent the new.
4764 2008-04-29 Matthew Allum <mallum@openedhand.com>
4766 * clutter/glx/Makefile.am:
4767 * clutter/glx/clutter-glx-texture-pixmap.c:
4768 * clutter/glx/clutter-glx-texture-pixmap.h:
4769 * clutter/x11/Makefile.am:
4770 * clutter/x11/clutter-x11-texture-pixmap.c:
4771 * tests/test-pixmap.c:
4772 Commit newer x11 texture pixmap stuff (optionally using SHM).
4773 Also seemingly still broken overhauled glx-texture-pixmap
4774 (code by Robert and myself)
4777 Minor formatting change.
4779 2008-04-29 Neil Roberts <neil@o-hand.com>
4781 Removed COGLhandle and changed shader and program functions to be
4782 wrapped in reference-counted CoglHandles instead.
4784 * clutter/cogl/gl/cogl-shader.c:
4785 * clutter/cogl/gl/cogl-shader.h:
4786 * clutter/cogl/gl/cogl-program.c:
4787 * clutter/cogl/gl/cogl-program.h:
4788 New files to hold the shader and program functions.
4790 * clutter/cogl/gl/cogl.c: Removed shader and program functions.
4792 * clutter/cogl/common/cogl-handle.h: New header to define
4793 COGL_HANDLE_DEFINE which helps build functions to create
4794 reference-counted handles. This reduces the amount of duplicated
4797 * clutter/cogl/gl/cogl-texture.c:
4798 * clutter/cogl/gles/cogl-texture.c:
4799 * clutter/cogl/gl/cogl-fbo.c: Converted to use COGL_HANDLE_DEFINE
4800 from cogl-handle.h to avoid duplicating some of the common code.
4802 * clutter/cogl/gles/cogl-defines.h.in:
4803 * clutter/cogl/gl/cogl-defines.h.in: Removed COGLhandle
4805 * clutter/cogl/gl/cogl-context.h: Added handle arrays for programs
4808 * clutter/cogl/gl/cogl-context.c (cogl_create_context): Added
4809 initialisers for shader_handles and program_handles.
4810 (cogl_destroy_context): Added calls to g_array_free for all handle
4813 * clutter/cogl/gl/Makefile.am (libclutter_cogl_la_SOURCES): Added
4814 cogl-{program,shader}.{c,h}
4816 * clutter/cogl/common/Makefile.am
4817 (libclutter_cogl_common_la_SOURCES): Added cogl-handle.h
4819 * clutter/cogl/gles/cogl.c:
4820 * clutter/cogl/cogl.h.in: Programs and shaders are now wrapped in
4821 CoglHandles instead of COGLhandles. cogl_program_destroy and
4822 cogl_shader_destroy is now replaced with cogl_program_unref and
4823 cogl_shader_unref. cogl_program_ref and cogl_shader_ref are also
4826 * clutter/clutter-shader.c: Converted to use CoglHandles for the
4827 programs and shaders instead of COGLhandles.
4829 2008-04-29 Øyvind Kolås <pippin@o-hand.com>
4831 * clutter/cogl/cogl.h.in: renaming of API's in cogl to make the
4832 primitives and path API a bit smaller and more resembling cairo.
4833 * clutter/cogl/gl/cogl-primitives.c:
4834 * clutter/cogl/gles/cogl-primitives.c:
4835 * clutter/cogl/gles/cogl.c:
4837 * clutter/clutter-actor.c:
4838 * clutter/clutter-rectangle.c:
4839 * tests/test-cogl-offscreen.c:
4840 * tests/test-cogl-primitives.c:
4841 * tests/test-cogl-tex-convert.c:
4842 * tests/test-cogl-tex-foreign.c:
4843 * tests/test-cogl-tex-getset.c:
4844 * tests/test-cogl-tex-tile.c: updated according to changes in cogl.
4846 2008-04-29 Robert Bragg <bob@o-hand.com>
4848 * clutter/x11/clutter-x11-texture-pixmap.c:
4849 In clutter_x11_texture_pixmap_set_pixmap, dont assume that the actor
4850 size should be changed to match the size of the pixmap.
4852 2008-04-29 Robert Bragg <bob@o-hand.com>
4854 * clutter/cogl/gles/cogl-texture.c:
4855 Replaces an malloc call with g_malloc.
4857 2008-04-29 Robert Bragg <bob@o-hand.com>
4859 * clutter/configure.ac:
4860 When looking for a GLES 1 library, also try the name "GLESv1_CM".
4862 This also reduces the xfixes version requirement to v3, since we dont
4863 need support for Show/HideCursor.
4865 2008-04-28 Neil Roberts <neil@o-hand.com>
4869 * clutter/cogl/Makefile.am (EXTRA_DIST): Distribute cogl.h.in
4871 (DIST_SUBDIRS): Added common folder
4873 * clutter/cogl/gl/Makefile.am (libclutter_cogl_la_SOURCES): Remove
4874 cogl-defines.h and use the right location for cogl-defines.gl.h
4875 (EXTRA_DIST): Distribute cogl-defines.h.in
4877 * clutter/cogl/gles/Makefile.am (libclutter_cogl_la_SOURCES):
4878 Remove cogl-defines.h and use the right location for
4880 (EXTRA_DIST): Distribute cogl-defines.h.in
4882 * clutter/Makefile.am (DIST_SUBDIRS): Add fruity
4884 2008-04-28 Neil Roberts <neil@o-hand.com>
4886 * clutter/cogl/cogl.h.in (COGL_A_BIT): Added the missing comma
4887 after COGL_PIXEL_FORMAT_G_8
4889 2008-04-28 Emmanuele Bassi <ebassi@openedhand.com>
4891 * autogen.sh: Do not just touch the gtk-doc.make file, if we
4892 could not find gtkdocize, but echo an empty EXTRA_DIST into it
4893 so that the automake won't complain later on.
4895 2008-04-28 Øyvind Kolås <pippin@o-hand.com>
4897 * clutter/cogl/cogl.h.in: reindented.
4899 2008-04-28 Emmanuele Bassi <ebassi@openedhand.com>
4901 * clutter/clutter-actor.c:
4902 (parse_rotation_array),
4903 (clutter_actor_set_custom_property): Use the internal, unit based
4904 rotation setter when parsing the rotation from a ClutterScript
4907 (clutter_geometry_copy),
4908 (clutter_vertex_copy),
4909 (clutter_actor_box_copy): Use the more efficient g_slice_dup().
4911 (clutter_actor_get_stage): Add documentation.
4913 * clutter/clutter-group.c: Documentation fix.
4915 2008-04-28 Øyvind Kolås <pippin@o-hand.com>
4917 * clutter/cogl/cogl.h.in: moved the documentation of the cogl
4918 primitives to the main public header.
4919 * clutter/cogl/gl/cogl-primitives.c: from here ..
4920 * clutter/cogl/gles/cogl-primitives.c: .. _and_ here.
4922 2008-04-28 Øyvind Kolås <pippin@o-hand.com>
4924 * clutter/cogl/cogl.h.in: added documentation.
4926 2008-04-28 Emmanuele Bassi <ebassi@openedhand.com>
4928 * clutter/clutter-units.c (param_unit_init): Use the right
4929 macros to set the default minimum and maximum values.
4931 * clutter/clutter-fixed.c (param_fixed_init): Ditto as above.
4933 2008-04-28 Matthew Allum <mallum@openedhand.com>
4936 Dont display 'make' if configure fails.
4938 Add new --with-gles version option for eventual GLES2 support
4941 2008-04-28 Neil Roberts <neil@o-hand.com>
4943 * tests/test-cogl-tex-polygon.c: Added buttons to toggle whether
4944 slicing and linear filtering is enabled. By default slicing is
4945 disabled to help test on GL ES.
4947 2008-04-28 Neil Roberts <neil@o-hand.com>
4949 * tests/Makefile.am (INCLUDES): Added $(top_srcdir)/clutter to the
4950 include path. Otherwise the tests will fail to build trying to
4951 include "json/json-types.h" when building out-of-tree.
4953 2008-04-28 Emmanuele Bassi <ebassi@openedhand.com>
4955 * clutter/eglnative/clutter-backend-egl.c:
4956 (clutter_backend_egl_redraw): Whitespace fixes.
4958 * clutter/eglnative/clutter-stage-egl.c:
4959 (clutter_stage_egl_hide): Indentation fixes.
4961 (clutter_stage_egl_realize): Use g_critical() to report failure,
4962 unset the flags and bail out instead of continuing the realization
4965 2008-04-25 Neil Roberts <neil@o-hand.com>
4967 Merged in the clutter-ivan branch which contained the new public
4970 2008-04-25 Emmanuele Bassi <ebassi@openedhand.com>
4972 * clutter/sdl/clutter-stage-sdl.[ch]: Port the SDL stage to
4973 the new stage implementation API.
4975 * clutter/sdl/clutter-backend-sdl.[ch]: Port the SDL backend
4976 to the new backend API.
4978 * clutter/sdl/clutter-event-sdl.c:
4979 (clutter_event_dispatch): Assign the default stage as the
4980 origin of the event.
4982 2008-04-24 Emmanuele Bassi <ebassi@openedhand.com>
4984 * configure.ac: Add the --with-json configure switch to
4985 allow building Clutter with the external dependency on
4986 the system JSON-GLib; the default is to use the internal
4987 copy unless explicitly asked to check.
4989 2008-04-24 Emmanuele Bassi <ebassi@openedhand.com>
4991 * Makefile.am: Add HACKING.backends to the EXTRA_DIST.
4993 2008-04-24 Emmanuele Bassi <ebassi@openedhand.com>
4995 * HACKING.backends: Add documentation on how to write a
4996 backend for Clutter.
4998 2008-04-24 Emmanuele Bassi <ebassi@openedhand.com>
5000 * clutter/eglnative/clutter-backend-egl.c:
5001 (clutter_backend_egl_create_stage): Fix checks using a
5002 non assigned member of the ClutterBackendEGL structure.
5004 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5006 * clutter/eglnative/clutter-backend-egl.[ch]:
5007 * clutter/eglnative/clutter-stage-egl.[ch]:
5008 * clutter/eglnative/clutter-event-egl.c: Port to the new stage
5009 and backend APIs. *WARNING* untested and not compiled.
5011 * clutter/eglx/clutter-backend-egl.c:
5012 (clutter_backend_egl_init): Set some defaults.
5014 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5016 * tests/test-script.json: Remove the explicit "visible"
5017 member to test that the visibility of actors is TRUE
5020 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5023 * clutter/Makefile.am: Do not build the internal JSON-GLib
5024 copy if there is a system installed one.
5026 * clutter/clutter-json.h: Remove.
5028 * clutter/clutter-json.h.in: Template for the clutter-json.h
5029 header file, used to opaquely include the JSON-GLib types.
5031 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5033 * clutter/clutter-actor.c: Document :show-on-set-parent and
5034 the fact that calling clutter_actor_show() and hide() on an
5035 unparented actor will change that property as well as a side
5038 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5040 * clutter/clutter-actor.c (clutter_actor_set_property): Use the
5041 internal setter for the rotation center.
5043 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5045 * clutter/clutter-actor.[ch]: Add units based variant of the
5048 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5050 Bug 892 - Incorrect results using rotation-[center|angle] properties
5052 * clutter/clutter-actor.c:
5053 (clutter_actor_set_rotation_internal): Inline function for setting
5054 the rotation using fixed point for the angle and units for the
5057 (clutter_actor_set_property),
5058 (clutter_actor_set_rotationx): Use the internal setter to avoid
5059 loss of precision and too many conversions to and from units.
5061 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
5063 Bug 891 - assertion failed when test-behave exits
5065 * clutter/clutter-behaviour.c:
5066 (remove_actor_on_destroy),
5067 (clutter_behaviour_apply),
5068 (clutter_behaviour_remove): Remove the actor if it gets
5069 destroyed before the behaviour.
5071 2008-04-18 Emmanuele Bassi <ebassi@openedhand.com>
5073 Bug #884 - Add clutter_alpha_set_closure
5075 * clutter/clutter-alpha.[ch]: Add clutter_alpha_set_closure(),
5076 a GClosure variant of clutter_alpha_set_func(), and reimplement
5077 the latter as a special case of the former. (#884, Xan López)
5079 2008-04-18 Neil Roberts <neil@o-hand.com>
5081 * clutter/clutter-timeline.c (clutter_timeline_get_progressx):
5082 Changed to use clutter_qdiv instead of CLUTTER_FIXED_DIV otherwise
5083 it can't cope with timelines with more than 255 frames.
5085 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5087 * clutter/clutter-frame-source.c: Small coding style fixes.
5089 2008-04-17 Neil Roberts <neil@o-hand.com>
5091 Applied patch from bug #881
5093 * clutter/clutter-frame-source.h:
5094 * clutter/clutter-frame-source.c:
5095 New files that contain a replacement for g_timeout that try to
5096 cope with system delays.
5098 * clutter/Makefile.am: Added clutter-frame-source.{c,h}
5100 * clutter/clutter-timeline.c (timeout_add): Use a frame source
5101 instead of a g_timeout.
5103 * clutter/clutter-main.c (clutter_threads_add_frame_source_full)
5104 (clutter_threads_add_frame_source): New public functions to wrap a
5105 frame source and grab the Clutter mutex.
5107 * clutter/clutter-timeout-pool.c: Now calculates the timeout
5108 expiration times in the same way as a frame source does so that it
5109 counts time in frame intervals instead of setting the next
5110 expiration time as an offset from the current time.
5112 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5114 * clutter/clutter-fixed.c:
5115 (clutter_value_transform_fixed_int),
5116 (clutter_value_transform_fixed_double),
5117 (clutter_value_transform_fixed_float),
5118 (clutter_fixed_get_type): Add GValue transformation functions
5119 for ClutterFixed; copying a CLUTTER_TYPE_FIXED GValue into
5120 a G_TYPE_FLOAT/G_TYPE_DOUBLE one will automatically transform
5121 the fixed point representation into a floating point one. Also
5122 add the G_TYPE_INT transformation function to do a plain
5125 * clutter/clutter-units.c:
5126 (clutter_value_transform_unit_int),
5127 (clutter_unit_get_type): Add a unit->int transformation function.
5129 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5131 * clutter/clutter-fixed.c (clutter_value_get_fixed): Fix typo
5132 in the function name.
5134 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5136 * clutter/clutter-units.c (clutter_value_get_unit): Fix typo
5137 in the function name.
5139 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5141 * HACKING: Amend coding style and tenets, as it is now possible
5142 to install and use unit based properties in a safe way.
5144 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5146 * clutter/clutter-units.h:
5147 * clutter/clutter-fixed.h: Add boundaries for fixed point
5150 * doc/reference/clutter-sections.txt: Update the documentation.
5152 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5154 * autogen.sh: Try to continue even if we don't have gtk-doc
5155 installed; this will obviously won't work if you don't pass
5156 --disable-docs --disable-gtk-doc to autogen.sh as well.
5158 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5160 * clutter/clutter-fixed.[ch]: Add a ClutterFixed fundamental
5161 type, and wrappers for storing it into GValues; also add a
5162 GParamSpec subclass for defining parameters holding
5163 ClutterFixed values. This allows creating GObject properties
5164 using fixed point values.
5166 * doc/reference/clutter-sections.txt: Document the newly
5169 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
5171 * clutter/Makefile.am: Add clutter-units.c
5173 * clutter/clutter-units.[ch]: Add a ClutterUnit fundamental
5174 type, and wrappers for storing it into GValues; also add a
5175 GParamSpec subclass for defining parameters holding ClutterUnit
5176 values. This allows creating GObject properties using units.
5178 * doc/reference/clutter-sections.txt: Document the newly
5181 2008-04-15 Matthew Allum <mallum@openedhand.com>
5183 Work related to #873;
5185 * clutter/glx/clutter-backend-glx.c:
5186 * clutter/glx/clutter-backend-glx.h:
5187 * clutter/x11/clutter-x11-texture-pixmap.c:
5188 * clutter/x11/clutter-x11-texture-pixmap.h:
5189 General cleanup of texture pixmap code, adding;
5190 - Pixmap dimentions and depth now auto probed, read only props.
5191 - More X safety traps
5192 - Add support for optionally tracking damage and automatically
5195 * clutter/glx/clutter-glx-texture-pixmap.c:
5196 * clutter/glx/clutter-glx-texture-pixmap.h:
5197 General cleanup and some safety additions. Needs more work so
5198 'proper' subclass - dependent on new COGL.
5200 * clutter/x11/clutter-backend-x11.c: (clutter_x11_remove_filter):
5201 Invert g_return_if check.
5204 Pull in XComposite and XDamage (at least for now)
5206 * tests/Makefile.am:
5207 * tests/test-pixmap.c:
5208 Add a modified test from Johan for above.
5210 2008-04-15 Neil Roberts <neil@o-hand.com>
5212 Added support for foreign windows to the Win32 backend.
5214 * clutter/win32/clutter-stage-win32.c
5215 (clutter_stage_win32_request_coords): Don't resize foreign
5217 (clutter_stage_win32_unrealize): Don't destroy foreign windows.
5218 (clutter_stage_win32_init): Added initialiser for is_foreign_win.
5219 (clutter_win32_get_stage_from_window): Resort to looking in the
5220 stage list if the window isn't the right window class so that it
5221 can still find stages with foreign windows.
5222 (clutter_win32_set_stage_foreign): New public function to set a
5223 foreign window for a stage.
5225 * clutter/win32/clutter-event-win32.c
5226 (clutter_win32_disable_event_retrieval): New public function to
5227 disable event retrieval.
5228 (message_translate): Don't handle WM_SIZE or WM_MOVE for foreign
5231 * clutter/win32/clutter-backend-win32.h (struct
5232 _ClutterBackendWin32): Added a flag to disable event retrieval
5234 * clutter/win32/clutter-backend-win32.c
5235 (clutter_backend_win32_ensure_context): Update debug note to
5236 include whether the stage is foreign or not.
5238 2008-04-15 Øyvind Kolås <pippin@o-hand.com>
5240 * clutter/clutter-actor.c: (clutter_actor_set_shader_param): queue a
5241 redraw when a shader_param is set. Normalized some gtk-doc syntax in
5242 some of the api documentation.
5244 2008-04-15 Øyvind Kolås <pippin@o-hand.com>
5246 * clutter/clutter-group.c: fixed typo in docs.
5248 2008-04-14 Matthew Allum <mallum@openedhand.com>
5250 * clutter/eglx/clutter-stage-egl.c:
5251 Actually set wm protocols on eglx stage windows. Fixes issues with
5252 cloising stages and cleanup.
5254 2008-04-14 Matthew Allum <mallum@openedhand.com>
5256 * clutter/cogl/gles/cogl.c: (cogl_color):
5257 Disable use of color4ub, issues with latest MBX SDL (#857)
5259 * clutter/eglx/clutter-backend-egl.c:
5260 * clutter/eglx/clutter-stage-egl.c:
5262 Fixup for the eglx backend to work with new backend/multistage code.
5263 Some issues remain in destroying stages.
5265 2008-04-14 Neil Roberts <neil@o-hand.com>
5269 * clutter/clutter-timeline.c (clutter_timeline_get_progressx): Fix
5270 arithmetic for calculating the reverse progress when the timeline
5271 is backward. (Should subtract from one instead of taking the
5274 2008-04-13 Neil Roberts <neil@o-hand.com>
5276 Upgraded the Win32 backend to work with the multi-stage
5279 * clutter/win32/clutter-stage-win32.h:
5280 * clutter/win32/clutter-stage-win32.c: Now inherits from
5281 ClutterGroup and implements ClutterStageWindow instead of
5282 inheriting directly from ClutterStage.
5284 * clutter/win32/clutter-event-win32.c (message_translate): Now
5285 takes an extra parameter to return whether DefWindowProc should be
5286 called. This is needed to prevent the default WM_CLOSE handler
5287 from destroying the window.
5289 * clutter/win32/clutter-backend-win32.c
5290 (clutter_backend_win32_dispose): Destroy all of the stages using
5291 g_slist_foreach as per bug #871. Now also destroys the GL context.
5292 (clutter_backend_win32_get_features): Added assertions to ensure
5293 there is a valid GL context.
5294 (clutter_backend_win32_ensure_context): Accepts NULL stage. Gets
5295 implementation pointer from the stage.
5297 2008-04-11 Emmanuele Bassi <ebassi@openedhand.com>
5299 * clutter/clutter-container.c:
5300 (clutter_container_get_type): Relax the precondition on the
5301 implementations of ClutterContainer from ClutterActor to
5304 2008-04-11 Emmanuele Bassi <ebassi@openedhand.com>
5306 * README: Add a note about the Shader API changes.
5308 * clutter/clutter-deprecated.h: Add deprecation symbols.
5310 * clutter/clutter-shader.[ch]: Rename the :bound read-only
5311 property to :compiled. Also rename clutter_shader_bind()
5312 and clutter_shader_is_bound() to clutter_shader_compil() and
5313 clutter_shader_is_compiled(), respectively.
5315 * clutter/glx/clutter-stage-glx.c:
5316 (clutter_stage_glx_unrealize): Update after
5317 clutter_shader_release_all() rename.
5319 * tests/test-shader.c (button_release_cb), (main): Update.
5321 2008-04-10 Emmanuele Bassi <ebassi@openedhand.com>
5323 * clutter/eglx/clutter-backend-egl.c:
5324 (clutter_backend_egl_ensure_context): Sync up with the GLX
5327 (clutter_backend_egl_create_stage): Dumb compilation fix.
5329 * clutter/glx/clutter-backend-glx.c:
5330 (clutter_backend_glx_create_stage): Unref the stage if we are
5333 2008-04-10 Emmanuele Bassi <ebassi@openedhand.com>
5335 * clutter/eglx/clutter-stage-egl.c:
5336 (clutter_stage_egl_realize): Sync up with the GLX backend.
5338 2008-04-09 Emmanuele Bassi <ebassi@openedhand.com>
5340 * clutter/Makefile.am: Update the regular expression to match
5341 all the namespaces we actually use. Thanks to Neil Roberts for
5342 spotting this. A make distclean is needed.
5344 * clutter/cogl/gl/Makefile.am:
5345 * clutter/cogl/gles/Makefile.am:
5346 * clutter/json/Makefile.am:
5347 * clutter/pango/Makefile.am: Revert previous commit.
5349 2008-04-09 Emmanuele Bassi <ebassi@openedhand.com>
5351 * clutter/cogl/Makefile.am:
5352 * clutter/cogl/gl/Makefile.am:
5353 * clutter/cogl/gles/Makefile.am:
5354 * clutter/json/Makefile.am:
5355 * clutter/pango/Makefile.am: Fix the visibility of all the
5356 symbols, for the main library and the statically linked ones.
5358 2008-04-09 Emmanuele Bassi <ebassi@openedhand.com>
5360 * autogen.sh: Clean up a bit
5362 * clutter/clutter-fixed.[ch]:
5363 (clutter_double_to_fixed),
5364 (clutter_double_to_int),
5365 (clutter_double_to_uint): Make these functions public, as they
5366 are expanded by their respective macros. This fixes the errors
5367 from the linker trying to resolve their name.
5369 2008-04-09 Neil Roberts <neil@o-hand.com>
5371 Applied patch from bug #871
5373 * clutter/x11/clutter-backend-x11.c (clutter_backend_x11_dispose):
5374 Call g_slist_foreach instead of iterating over the stage_manager
5375 list manually when deleting stages. Otherwise the 'next' pointer
5376 of the list node can get corrupted when the actor removes itself
5379 * clutter/clutter-stage.c (clutter_stage_dispose): Call
5380 clutter_actor_unrealize in the dispose handler. This fixes
5381 problems where the dispose handler for the ClutterStageWrapper
5382 can't deselect the GL context until the stage is unrealized.
5384 2008-04-04 Emmanuele Bassi <ebassi@openedhand.com>
5386 * clutter/clutter-backend.c: Add more debug messages
5388 * clutter/clutter-stage.h:
5389 * clutter/clutter-stage.c:
5390 (clutter_stage_is_default): Add a function to check if the
5391 stage is the default one.
5393 * clutter/glx/clutter-backend-glx.c:
5394 * clutter/glx/clutter-stage-glx.c:
5395 * clutter/x11/clutter-stage-x11.c: Keep the stage wrapper
5396 and implementation flags in sync, to ensure that the GL
5397 context is always set.
5399 2008-04-04 Neil Roberts <neil@o-hand.com>
5401 * README: Fixed typo
5403 2008-04-04 Matthew Allum <mallum@openedhand.com>
5406 Add a note on new show-on-set-parent prop and stage subclassing.
5408 2008-04-04 Emmanuele Bassi <ebassi@openedhand.com>
5410 Bug #864 - Allow instantiating and subclassing of ClutterStage
5412 * clutter/Makefile.am: Add clutter-stage-window.[ch]
5414 * clutter/clutter-stage-manager.c:
5415 (_clutter_stage_manager_remove_stage): Do not warn if removing
5416 a stage we don't manage, as we might be invoked multiple times
5417 during a ClutterState dispose sequence.
5419 * clutter/clutter-actor.c:
5420 * clutter/clutter-backend.[ch]:
5421 * clutter/clutter-main.c:
5422 * clutter/clutter-private.h:
5423 * clutter/clutter-stage.[ch]: Make ClutterStage a proxy actor,
5424 with a private actor implementing the ClutterStageWindow
5425 interface for handling the per-backend realization, painting
5426 and unrealization, plus all the windowing system abstraction.
5428 * clutter/x11/clutter-event-x11.c:
5429 * clutter/x11/clutter-stage-x11.[ch]: Port the X11 backend
5430 to the new backend and stage API and semantics.
5432 * clutter/glx/clutter-backend-glx.c:
5433 * clutter/glx/clutter-stage-glx.c: Port the GLX backend to
5434 the new backend and stage API and semantics.
5436 * clutter/eglx/clutter-backend-egl.[ch]:
5437 * clutter/eglx/clutter-stage-egl.[ch]: Port the EGLX backend
5438 to the new backend and stage API and semantics (untested).
5440 * tests/test-multistage.c (on_button_press): Rename
5441 clutter_stage_create_new() to clutter_stage_new().
5443 2008-04-04 Neil Roberts <neil@o-hand.com>
5445 Applied patch from bug #810.
5447 * clutter/x11/clutter-event-x11.c (event_translate): Set a flag
5448 when resizing the stage from a ConfigureNotify event.
5450 * clutter/x11/clutter-stage-x11.c
5451 (clutter_stage_x11_request_coords): Don't try to resize the window
5452 again if the flag is set.
5453 (clutter_stage_x11_init): Added initialiser for the flag.
5455 * clutter/x11/clutter-stage-x11.h (struct _ClutterStageX11): Added
5458 2008-04-04 Matthew Allum <mallum@openedhand.com>
5460 * clutter/clutter-actor.c:
5461 Remove uneeded stage private member.
5462 Add show-on-set-parent prop and make so by default Actors are
5463 now automatically shown when reparented (#791)
5465 * clutter/eglx/clutter-backend-egl.c:
5466 * clutter/cogl/gles/cogl.c:
5467 A couple of minor comments.
5469 * clutter/eglnative/Makefile.am:
5470 Add missing clutter-egl.h header (back port from trunk)
5472 * tests/test-actors.c:
5473 Modify to take advantage of new show-on-set-parent functionality.
5475 2008-04-03 Emmanuele Bassi <ebassi@openedhand.com>
5477 * clutter/Makefile.am: Only export symbols matching "^clutter.*",
5478 to avoid exposing the library-private symbols starting with
5481 2008-04-03 Emmanuele Bassi <ebassi@openedhand.com>
5483 * clutter/clutter-alpha.c: ClutterAlpha is an InitiallyUnowned
5484 subclass. This should fix a lot of leakage. (#860, Neil Roberts)
5486 2008-04-03 Emmanuele Bassi <ebassi@openedhand.com>
5488 * clutter/glx/clutter-backend-glx.c:
5489 (clutter_backend_glx_get_features): Assert if we don't have a
5490 GL context here or if it's not matched to a drawable. Asserting
5491 might seem too drastic, but if we don't have a valid GL context
5492 here then Clutter will segfault anyway, and I'll take an assert()
5493 over a hard to read, deep in GLX guts backtrace any day (and
5496 * clutter/x11/clutter-backend-x11.c:
5497 (clutter_backend_x11_get_features): No need for a variable here.
5499 2008-04-01 Matthew Allum <mallum@openedhand.com>
5501 * clutter/clutter-backend.c:
5502 * clutter/glx/clutter-backend-glx.c:
5503 * clutter/glx/clutter-stage-glx.c:
5504 Allow NULL to be passed to _clutter_backend_ensure_context
5505 which essentially clears GL context. This is hooked into stage
5506 unrealisation. Isn't yet quite bulletproof.
5507 Fixes issues with gtk-embed crasher (thanks to Neil).
5509 2008-04-1 Robert Bragg <bob@o-hand.com>
5511 * clutter/glx/clutter-glx-texture-pixmap.c:
5512 In clutter_glx_texture_pixmap_dispose; trap X errors around
5513 glXDestroyGLXPixmap so we can't die due to BadDrawable errors.
5515 2008-03-31 Matthew Allum <mallum@openedhand.com>
5518 Add notes on new multistage feature.
5520 * clutter/clutter-stage-manager.c:
5521 Dont ref contained stages.
5523 * clutter/clutter-stage.c:
5524 Automatically remove stage from stage manager on finalisation.
5525 Cleans up warnings when a stage is destroyed.
5527 * clutter/clutter-backend.h:
5528 * clutter/glx/clutter-backend-glx.c:
5529 Minor formatting cleanups.
5531 * clutter/glx/clutter-stage-glx.c:
5533 * clutter/clutter-version.h.in:
5534 Add a general CLUTTER_STAGE_TYPE define, should be useful for
5535 evntual stage subclassing and creating with g_object_new()
5537 2008-03-30 Neil Roberts <neil@o-hand.com>
5539 * clutter/win32/clutter-backend-win32.c
5540 (clutter_backend_win32_init): Added a call to
5541 timeBeginPeriod. Without this the frame rates are terrible because
5542 the glib timeouts are not accurate enough. However this requires
5543 Glib >= 2.16.0 to take any effect because of a change in the way
5544 g_poll is implemented. See revision 6597 of glib.
5545 (clutter_backend_win32_finalize): Added a call to timeEndPeriod.
5547 * configure.ac: Added -lwinmm to the library dependencies for the
5550 2008-03-30 Neil Roberts <neil@o-hand.com>
5552 * clutter/win32/clutter-win32.h:
5553 * clutter/win32/clutter-stage-win32.h:
5554 * clutter/win32/clutter-stage-win32.c:
5555 * clutter/win32/clutter-event-win32.c:
5556 * clutter/win32/clutter-backend-win32.h:
5557 * clutter/win32/clutter-backend-win32.c:
5558 Upgraded for multi-stage support.
5560 * clutter/win32/clutter-stage-win32.c
5561 (clutter_stage_win32_request_coords): Fixed so that it doesn't set
5562 the position or size if it hasn't changed. This was causing
5563 problems when the window was resized using the top left corner. In
5564 that case the window receives resize and move messages separately
5565 which caused the window to flash at a different size or position
5566 while one message was handled before the other.
5567 (clutter_stage_win32_realize): Added PFD_GENERIC_ACCELERATED to
5568 the list of pixel format flags to force it to use hardware
5571 2008-03-28 Matthew Allum <mallum@openedhand.com>
5573 * clutter/Makefile.am:
5574 * clutter/clutter-actor.c:
5575 * clutter/clutter-actor.h:
5576 * clutter/clutter-backend.c:
5577 * clutter/clutter-backend.h:
5578 * clutter/clutter-debug.h:
5579 * clutter/clutter-event.c:
5580 * clutter/clutter-event.h:
5581 * clutter/clutter-feature.h:
5582 * clutter/clutter-group.h:
5583 * clutter/clutter-main.c:
5584 * clutter/clutter-main.h:
5585 * clutter/clutter-private.h:
5586 * clutter/clutter-stage.c:
5587 * clutter/clutter-stage.h:
5588 * clutter/clutter-stage-manager.c
5589 * clutter/clutter-stage-manager.h
5590 * clutter/clutter-types.h:
5591 * clutter/glx/clutter-backend-glx.c:
5592 * clutter/glx/clutter-backend-glx.h:
5593 * clutter/glx/clutter-stage-glx.c:
5594 * clutter/glx/clutter-stage-glx.h:
5595 * clutter/x11/clutter-backend-x11.c:
5596 * clutter/x11/clutter-backend-x11.h:
5597 * clutter/x11/clutter-event-x11.c:
5598 * clutter/x11/clutter-stage-x11.c:
5599 * clutter/x11/clutter-x11.h:
5600 * tests/Makefile.am:
5601 * tests/test-multistage.c:
5602 Initial commit of multi stage support (mostly a merge from the
5603 clutter-multistage branch).
5604 Note, this commit will break all backends except glx.
5606 2008-03-26 Neil Roberts <neil@o-hand.com>
5608 * clutter/win32/clutter-win32.h: Added gtk-doc documentation for
5609 the Win32 backend section.
5611 * clutter/win32/clutter-stage-win32.c
5612 (clutter_win32_get_stage_window): Fixed punctuation in the
5615 * README: Added notes about the Win32 backend.
5617 2008-03-26 Neil Roberts <neil@o-hand.com>
5619 * clutter/win32/clutter-event-win32.c (clutter_event_check):
5620 Removed the pointless parameter in the call to check_msg_pending.
5621 (check_msg_pending): Fixed to use PeekMessageW instead of
5624 2008-03-25 Neil Roberts <neil@o-hand.com>
5626 Added a native Win32 WGL backend.
5628 * configure.ac: Added the 'win32' flavour.
5630 * clutter/cogl/gl/cogl.c (cogl_get_proc_address): Added an ifdef
5631 to use wglGetProcAddress with the Win32 backend.
5633 * clutter/Makefile.am (DIST_SUBDIRS): Added the win32 directory.
5635 * clutter/win32/clutter-win32.pc.in:
5636 * clutter/win32/clutter-win32.h:
5637 * clutter/win32/clutter-stage-win32.h:
5638 * clutter/win32/clutter-stage-win32.c:
5639 * clutter/win32/clutter-event-win32.c:
5640 * clutter/win32/clutter-backend-win32.h:
5641 * clutter/win32/Makefile.am:
5642 * clutter/win32/clutter-backend-win32.c: New files.
5644 2008-03-19 Emmanuele Bassi <ebassi@openedhand.com>
5646 * clutter/clutter-model.[ch]: Add a ::copy() virtual function
5647 for copying iterators.
5649 * clutter/clutter-list-model.c:
5650 (clutter_list_model_iter_copy),
5651 (clutter_list_model_iter_class_init): Implement the ::copy()
5652 function inside the ListModel iterator subclass.
5654 2008-03-19 Emmanuele Bassi <ebassi@openedhand.com>
5656 * clutter/clutter-group.c:
5657 * clutter/clutter-texture.c: Use CLUTTER_ACTOR_IS_VISIBLE()
5658 and not CLUTTER_ACTOR_IS_MAPPED().
5660 2008-03-19 Emmanuele Bassi <ebassi@openedhand.com>
5662 * clutter/clutter-score.[ch]: Small clean ups and refactoring.
5663 Use gulong instead of guint, so we have a bigger id space for
5664 the timelines inside a Score.
5666 2008-03-19 Chris Lord <chris@openedhand.com>
5668 * clutter/clutter-actor.c:
5669 (_clutter_actor_apply_modelview_transform), (clutter_actor_paint):
5670 Apply clip inside paint function instead of transform function
5672 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
5674 * clutter/clutter-score.c: Update documentation.
5676 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
5678 * clutter/clutter-score.[ch]: Remove all the API changes, and
5679 just add a clutter_score_append_at_marker(); the implementation
5680 remains the same, but the marker must be explicitly created by
5681 the developer. The ids are no longer used to create implicit
5682 markers, so they can return to be unsigned integers. (#450)
5684 * clutter/clutter-timeline.[ch]:
5685 (clutter_timeline_has_marker): Add a function to query a timeline
5686 for a marker being set.
5688 * tests/test-score.c (main): Update with the API changes.
5690 * clutter.symbols: Update exported symbols.
5692 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
5694 * clutter/clutter-texture.c: Small clean ups in the coding style.
5696 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
5698 * clutter.symbols: Add new symbols
5700 * clutter/clutter-score.[ch]: Use the newly added marker API
5701 on the timelines to implement attaching timelines at specific
5702 points, using either milliseconds or frames.
5704 * tests/test-score.c (main): Test the new API.
5706 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
5708 * clutter/clutter-marshal.list: Add signature for the
5709 ::marker-reached signal marshaller.
5711 * clutter/clutter-timeline.[ch]: Add timeline marker API;
5712 using markers it is possible to add a unique identifier to
5713 a particular frame of the timeline, and receive a signal
5714 notification when reaching that particular marker while
5715 playing the timeline. (#641)
5717 * tests/test-timeline.c: Update the test case to check for
5718 the marker-reached signal emission.
5720 * clutter.symbols: Add new symbols.
5722 2008-03-10 Øyvind Kolås <pippin@o-hand.com>
5724 * tests/test-shader.c: improved readability of fragment shader
5725 examples by factoring out common bits into FRAGMENT_SHADER_BEGIN and
5726 FRAGMENT_SHADER_END macros.
5728 2008-03-09 Matthew Allum <mallum@openedhand.com>
5730 * clutter/clutter-id-pool.c: (clutter_id_pool_free):
5731 Use g_slice_free not g_free.
5732 * clutter/clutter-main.c: (_clutter_do_pick):
5733 Dont 'over read' the framebuffer when picking (#839, Neil Roberts)
5735 2008-03-07 Øyvind Kolås <pippin@o-hand.com>
5737 Refactored the integer id->ClutterActor mapping code to be a self
5738 contained data structure.
5740 * clutter/clutter-id-pool.[ch]: new files.
5741 * clutter/Makefile.am: added clutter-id-pool.[ch]
5742 * clutter/clutter-private.h: use a ClutterIDPool instead of GArray and
5743 GSList to keep track of the reusable ids.
5744 * clutter/clutter-actor.c: moved id pool logic away.
5745 * clutter/clutter-main.c: simplified id pool creation/finalization.
5747 2008-03-07 Robert Bragg <bob@o-hand.com>
5749 * clutter/clutter-timeline.c:
5750 Timeline changes to fix the issues identified in bugzilla #439
5752 Notably, this includes some tweaks to timeline semantics.
5755 10 frame timeline here are some points about the new timeline code:
5757 - When you create a timeline it starts with current_frame_num == 0
5759 - After starting a timeline, the first timeout is for
5760 current_frame_num == 1 (Notably it isn't 0 since there is a delay
5761 before the first timeout signals so re-asserting the starting point
5762 would give a longer than average first frame.)
5764 - For a non looping timeline the last timeout would be for
5765 current_frame_num == 10
5767 - For a looping timeline the timeout for current_frame_num ==
5768 10 would be followed by a timeout for current_frame_num == 1
5769 and frame 0 is considered == frame 10.
5771 - Asking for a timeline of N frames might better be described
5772 as asking for a timeline of _length_ N.
5774 Warning: Although I tried to test things, I guess it's quite
5775 likely that this breaks somthing depending on a specific quirk
5776 of the previous timeline code.
5778 2008-03-06 Emmanuele Bassi <ebassi@openedhand.com>
5780 * clutter/clutter-actor.c:
5781 (clutter_actor_set_anchor_point_from_gravity): Fix a stupid
5782 conversion from pixels to units that should I not have made.
5784 2008-03-06 Emmanuele Bassi <ebassi@openedhand.com>
5786 * README: Update the release notes.
5788 2008-03-06 Gwenole Beauchesne <gbeauchesne@splitted-desktop.org>
5790 Signed off by: Emmanuele Bassi <ebassi@openedhand.com>
5792 * clutter/clutter-group.c (clutter_group_real_lower): Fix to
5793 actually lower the actor under the 'above' actor. (#822)
5795 2008-03-06 Emmanuele Bassi <ebassi@openedhand.com>
5797 * clutter/clutter-entry.h:
5798 * clutter/clutter-entry.c:
5799 (clutter_entry_handle_key_event_internal),
5800 (clutter_entry_key_press), (clutter_entry_class_init),
5801 (clutter_entry_handle_key_event): Provide a default class handler
5802 for the key-press-event, so that giving key focus to an entry will
5803 automatically make it work. This deprecates the
5804 clutter_entry_handle_key_event() function. (#824)
5806 * tests/test-entry.c (main): Remove the handle_key_event()
5807 machinery, and just give focus to the entry.
5809 2008-03-06 Chris Lord <chris@openedhand.com>
5811 * clutter/clutter-model.c: (clutter_model_set_sorting_column):
5812 Don't disable sorting on column 0
5814 2008-03-06 Emmanuele Bassi <ebassi@openedhand.com>
5816 Add support for the anchor point inside ClutterScript (#834,
5819 * clutter/clutter-actor.c:
5820 (clutter_actor_set_property),
5821 (clutter_actor_get_property),
5822 (clutter_actor_class_init): Add the :anchor-x and :anchor-y
5823 properties to the ClutterActor class.
5825 (clutter_actor_set_anchor_point),
5826 (clutter_actor_set_anchor_pointu),
5827 (clutter_actor_set_anchor_point_from_gravity): Reimplement
5828 the pixel based and gravity based API using the units based
5829 one. Emit the ::notify signal for the :anchor-x and :anchor-y
5833 (clutter_actor_parse_custom_node): Parse the :anchor-x and
5834 :anchor-y properties using the custom units format (mm, px,
5837 * tests/test-script.json: Test the newly added properties.
5839 2008-03-05 Emmanuele Bassi <ebassi@openedhand.com>
5841 * configure.ac: Add "osx" the the AC_HELP_STRING of the flavour
5842 selection. (#831, Peter Enzerink)
5844 2008-03-04 Emmanuele Bassi <ebassi@openedhand.com>
5846 * clutter/clutter-main.c (clutter_do_event): Do not throttle the
5847 motion events if the per-actor delivery has been disabled.
5849 2008-03-04 Øyvind Kolås <pippin@o-hand.com>
5851 * clutter/pango/pangoclutter-render.c: (draw_glyph): use g_slice_new0
5852 instead of g_slice_new when allocating the glyph_info, avoiding a
5853 branch based on uninitialized memory.
5855 2008-03-03 Emmanuele Bassi <ebassi@openedhand.com>
5857 * Makefile.am: Do not recurse into doc if we did not explicitly
5858 enabled the documentation build; we just recurse into doc if we
5859 are doing a dist or a distcheck.
5861 2008-02-29 Øyvind Kolås <pippin@o-hand.com>
5863 Reuse the numeric id's used for picking actors to avoid the potential
5864 of overflowing the id numbers when continusly creating and destroying
5865 actors on long running applications for 16bpp.
5867 * clutter/clutter-private.h: replaced hashtable with GArray and a
5868 GSList for available slots in the array.
5869 * clutter/clutter-actor.c: (create_actor_id): function to create an
5870 actor->id mapping, (release_actor_id): function to mark an existing id
5871 as available for reuse.
5872 * clutter/clutter-main.c: (clutter_context_free): added utility
5873 function for cleaning up the context,
5874 (clutter_get_actor_by_gid): use the GArray for looking up actors.
5876 2008-02-26 Emmanuele Bassi <ebassi@openedhand.com>
5878 * clutter/clutter-alpha.c:
5879 (clutter_exp_inc_func), (clutter_exp_dec_func): Clamp the value
5880 of the alpha function between [0, MAX_ALPHA]. (#800)
5882 2008-02-25 Emmanuele Bassi <ebassi@openedhand.com>
5884 * clutter/clutter-main.c (emit_event): Fix the last commit
5885 which inverted a condition.
5887 2008-02-25 Emmanuele Bassi <ebassi@openedhand.com>
5889 * clutter/clutter-actor.c: Remove the usage of g_return_if_fail()
5890 from static functions: either assert or use g_warning() to check
5891 internal state, as g_return_if_fail() can be compiled out.
5893 * clutter/clutter-main.c: Ditto as above.
5895 2008-02-25 Tomas Frydrych <tf@openedhand.com>
5897 * clutter/clutter-texture.c:
5898 (texture_update_data):
5899 Set alignment based on actual data rowstride, not the texture
5902 2008-02-21 Tomas Frydrych <tf@openedhand.com>
5904 * clutter/x11/clutter-backend-x11.h:
5905 * clutter/x11/clutter-event-x11.c:
5906 * clutter/x11/clutter-x11.h:
5907 (clutter_x11_handle_event):
5908 (clutter_x11_disable_event_retrieval):
5909 Functions to allow to hook into external XEvent retrieval (for
5910 example when using clutter with gtk); NB: this API is tentative.
5912 2008-02-21 Emmanuele Bassi <ebassi@openedhand.com>
5914 * clutter/x11/clutter-event-x11.c (event_translate): Ignore
5915 PropertyNotify events if they don't match our window.
5917 * clutter/x11/clutter-stage-x11.c:
5918 (clutter_stage_x11_request_coords): Chain up to the parent's
5921 2008-02-21 Emmanuele Bassi <ebassi@openedhand.com>
5923 * clutter/x11/clutter-event-x11.c (event_translate): Ignore
5924 ConfigureNotify events if we are painting on a foreign window.
5926 * clutter/x11/clutter-stage-x11.c:
5927 (clutter_stage_x11_request_coords): Reliquish control of the
5928 window size, if we are painting on a foreign window. This fixes
5929 the GtkClutterEmbed widget.
5931 2008-02-20 Emmanuele Bassi <ebassi@openedhand.com>
5933 * clutter/clutter-timeline.c (clutter_timeline_set_delay): Relax
5934 the condition to allow 0 msecs of delay (meaning: no delay).
5936 2008-02-20 Tomas Frydrych <tf@openedhand.com>
5938 * clutter/Makefile.am:
5939 Added libclutter_ ... _la_DEPENDENCIES to fix dependency tracking.
5941 2008-02-20 Tomas Frydrych <tf@openedhand.com>
5943 * clutter/x11/clutter-x11.h:
5944 * clutter/x11/clutter-backend-x11.c:
5945 (clutter_x11_set_display):
5946 Function to set X display connection prior to calling
5947 clutter_init(); stripped loads of trailing space.
5949 2008-02-20 Tomas Frydrych <tf@openedhand.com>
5951 * clutter/clutter-marshal.list:
5952 * clutter/glx/Makefile.am:
5953 * clutter/glx/clutter-backend-glx.c:
5954 * clutter/glx/clutter-backend-glx.h:
5955 * clutter/glx/clutter-glx.h:
5956 * clutter/x11/Makefile.am:
5957 ClutterX11TexturePixmap and ClutterGLXTexturePixmap actors (#713;
5958 patch by Johan Bilien).
5960 2008-02-20 Emmanuele Bassi <ebassi@openedhand.com>
5962 * clutter/clutter-actor.h:
5963 * clutter/clutter-actor.c:
5964 (clutter_actor_get_abs_opacity): Add function that does what
5965 get_opacity() does now...
5967 (clutter_actor_get_opacity): ... and make get_opacity() do what
5968 it's supposed to be doing. The original get_opacity() returned
5969 a composited value, and there's no way to actually extract the
5970 real opacity value set with set_opacity().
5972 * clutter/clutter-clone-texture.c:
5973 * clutter/clutter-rectangle.c:
5974 * clutter/clutter-texture.c: Update to use get_abs_opacity().
5976 * clutter/clutter-entry.c:
5977 * clutter/clutter-label.c: Ditto. Also, never change the stored
5980 * tests/Makefile.am:
5981 * tests/test-opacity.c: Test suite for the get_opacity() and
5982 get_abs_opacity() API, and correct opacity handling.
5984 * README: Add note about the change in get_opacity().
5986 2008-02-19 Chris Lord <chris@openedhand.com>
5988 * clutter/clutter-model.c: (clutter_model_resort):
5989 Don't return when there's no sort function set, leave that to the
5992 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
5995 * README: Post stable release bump to 0.7.1
5997 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
6000 * NEWS: Release 0.6.0
6002 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
6004 * clutter/clutter-list-model.c:
6005 (clutter_list_model_iter_set_value): Fix a typo in the conversion
6008 2008-02-18 Chris Lord <chris@openedhand.com>
6011 Fix spelling mistake and a typo
6013 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
6015 * clutter/clutter-actor.c:
6016 (clutter_actor_get_box_from_vertices): Avoid a masking warning
6017 caused by math.h utter braindamage.
6019 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
6021 * clutter/clutter-actor.c: Document the fact that ancestor can
6022 be NULL in the relative transformation API, and what are the
6025 2008-02-15 Matthew Allum <mallum@openedhand.com>
6027 * clutter/pango/pangoclutter-render.c: (draw_glyph):
6028 More safety checks (#796, Tero Saarni)
6030 2008-02-15 Chris Lord <chris@openedhand.com>
6032 * clutter/clutter-entry.c:
6033 * clutter/clutter-group.c:
6034 * clutter/clutter-label.c:
6035 * clutter/clutter-rectangle.c:
6036 * clutter/clutter-texture.c:
6037 More documentation fixes
6039 2008-02-15 Chris Lord <chris@openedhand.com>
6041 * clutter/clutter-entry.c: (clutter_entry_class_init):
6042 More documentation fixes
6044 2008-02-15 Chris Lord <chris@openedhand.com>
6046 * clutter/clutter-label.c: (clutter_label_class_init):
6047 More documentation fixes
6049 2008-02-15 Chris Lord <chris@openedhand.com>
6051 * clutter/clutter-clone-texture.c:
6052 * clutter/clutter-texture.c: (clutter_texture_class_init):
6053 More documentation fixes
6055 2008-02-15 Chris Lord <chris@openedhand.com>
6057 * clutter/clutter-actor.c:
6058 * clutter/clutter-container.c:
6059 * clutter/clutter-media.c:
6060 * clutter/clutter-rectangle.c:
6061 * clutter/clutter-stage.c: (clutter_stage_class_init):
6062 * clutter/clutter-stage.h:
6063 * clutter/clutter-texture.c:
6064 * doc/reference/clutter-docs.sgml:
6065 Fix more documentation
6067 2008-02-15 Emmanuele Bassi <ebassi@openedhand.com>
6069 * clutter/clutter-actor.[ch]:
6070 * clutter/clutter-types.h:
6071 * doc/reference/clutter-docs.sgml: Fix a lot of documentation.
6073 2008-02-15 Matthew Allum <mallum@openedhand.com>
6075 * clutter/cogl/gles/cogl.c: (cogl_paint_init):
6076 Remove depth test getting turned on by default (unlike GL backend)
6078 2008-02-15 Tomas Frydrych <tf@openedhand.com>
6081 * clutter/clutter-version.h.in:
6082 * build/msvc_2k5/clutter-version.h:
6083 Removed unused --without-fpu configure option and CLUTTER_NO_FPU
6086 2008-02-15 Tomas Frydrych <tf@openedhand.com>
6088 * build/mingw/README:
6089 * build/mingw/mingw-cross-compile.sh:
6090 Script that automates cross compilation with mingw by Neil Roberts
6091 <bpeeluk@yahoo.co.uk>
6093 2008-02-15 Emmanuele Bassi <ebassi@openedhand.com>
6095 * clutter/clutter-actor.[ch]: Rename
6096 clutter_actor_get_box_from_vertices() to
6097 clutter_actor_box_get_from_vertices().
6099 * clutter/clutter-group.c (clutter_group_query_coords): Fix the
6100 query_coords() implementation.
6102 2008-02-15 Tomas Frydrych <tf@openedhand.com>
6104 * clutter/clutter-actor.c:
6105 * clutter/clutter-actor.h:
6106 (clutter_group_query_coords):
6107 Added function to translate vertex array to a bounding box.
6109 (clutter_actor_is_scaled):
6110 (clutter_actor_is_rotated):
6111 Fixed documentation.
6113 2008-02-15 Tomas Frydrych <tf@openedhand.com>
6115 * clutter/clutter-group.c: (clutter_group_query_coords):
6116 Disabled new code taking into account actor scale and rotation.
6118 2008-02-14 Tomas Frydrych <tf@openedhand.com>
6120 * clutter/clutter-actor.c:
6121 * clutter/clutter-actor.h:
6122 (clutter_actor_is_scaled):
6123 (clutter_actor_is_rotated):
6124 Convenience functions to test whether actor is scaled or rotated.
6126 (clutter_actor_apply_relative_transform_to_point):
6127 Removed unused variable.
6129 * clutter/clutter-group.c:
6130 (clutter_group_query_coords):
6131 Use clutter_actor_get_relative_vertices() to calculate bounding
6132 boxes of children that are scaled or rotated.
6134 2008-02-14 Tomas Frydrych <tf@openedhand.com>
6136 * clutter/clutter-actor.c:
6137 * clutter/clutter-actor.h:
6138 (clutter_actor_get_relative_vertices):
6139 (clutter_actor_apply_relative_transform_to_point):
6140 Functions to calculate actor vertices in the plane of a given
6143 2008-02-12 Chris Lord <chris@openedhand.com>
6145 * clutter/clutter-texture.c: (texture_get_tile_pixbuf),
6146 (clutter_texture_get_pixbuf):
6147 Fix copying textures to pixbufs for tiled textures and correct #ifndef
6150 * clutter/clutter-util.c:
6153 2008-02-12 Matthew Allum <mallum@openedhand.com>
6155 * clutter/clutter-texture.c: (texture_get_tile_pixbuf):
6156 ifdef out 'leaked' GL only API call.
6158 2008-02-12 Tomas Frydrych <tf@openedhand.com>
6160 * clutter/clutter-texture.c (texture_update_data):
6161 Fixed incorrect calculation of offset into texture data (needs to
6162 use width of the texture, not of the updated area).
6164 2008-02-12 Tomas Frydrych <tf@openedhand.com>
6166 * clutter/clutter-texture.c (texture_update_data):
6167 Fixed incorrect aligment of texture data.
6169 2008-02-12 Tomas Frydrych <tf@openedhand.com>
6171 * clutter/x11/clutter-event-x11.c (event_translate):
6172 Ignore events not directed at the stage window once they have been
6173 passed to the filter functions.
6175 2008-02-11 Matthew Allum <mallum@openedhand.com>
6177 * clutter/clutter-actor.c:
6178 Minor documentation tweak to class description.
6180 * clutter/clutter-behaviour-scale.c:
6181 'Force' start + end vals of scale behaviour
6182 (#779, Havoc Pennington)
6184 2008-02-11 Emmanuele Bassi <ebassi@openedhand.com>
6187 * NEWS: Release 0.5.6
6189 * configure.ac: Post release bump to 0.5.7.
6191 * clutter/clutter-behaviour-scale.c:
6192 * tests/test-fbo.c: Fix compilation warnings.
6194 2008-02-11 Tomas Frydrych <tf@openedhand.com>
6196 * clutter/clutter-actor.c (clutter_actor_transform_stage_point):
6197 Moved part of the calculation to floating point to avoid overflow
6198 of ClutterFixed range for large actors (bug 613).
6200 2008-02-10 Matthew Allum <mallum@o-hand.com>
6202 * clutter/osx/clutter-stage-osx.c
6203 Fix up a couple of typos breaking build.
6205 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
6207 * clutter/clutter-actor.c: Add actor box diagram and notes.
6209 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
6211 * clutter/clutter-behaviour-path.c: Move the nice graph and
6212 description from the Path behaviour...
6214 * clutter/clutter-behaviour.c: ... to the main Behaviour class.
6216 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
6218 * clutter/clutter-behaviour-path.c: Add a paragraph describing
6219 the effects of different alpha functions on the path behaviour.
6221 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
6223 * clutter/clutter-actor.c: Reference the newly added event-flow.png
6225 * clutter/clutter-alpha.c: Ditto, with alpha-func.png
6227 * clutter/clutter-texture.c: Fix the XML.
6229 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
6231 * clutter/clutter-behaviour-path.c: Reference the newly
6232 added image showing the effects of different alpha functions
6233 on the same path behaviour.
6235 * configure.ac: Find out the prefix of some of the libraries
6236 we depend upon, so that gtk-doc can fix the references for us.
6238 2008-02-08 Matthew Allum <mallum@openedhand.com>
6240 * clutter/clutter-texture.c:
6241 Tidy up offscreen code, adding into realize/unrealize.
6242 Add more safety code.
6243 Improve documentation.
6245 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
6247 * clutter/clutter-script.c:
6248 (resolve_alpha_func): Use a whitelist containing the alpha function
6249 provided by Clutter, as a fallback in case g_module_open() does not
6252 (clutter_script_parse_alpha): Add an explicit warning in case we
6253 cannot find the alpha function used inside a UI definition.
6255 2008-02-07 Tomas Frydrych <tf@openedhand.com>
6257 * clutter/clutter-group.c (clutter_group_query_coords):
6258 Take into account the anchor point when calculating the box size.
6260 2008-02-07 Emmanuele Bassi <ebassi@openedhand.com>
6262 * clutter/clutter-actor.c: Add a note on clutter_actor_set_size()
6265 * clutter/clutter-group.c: Clarify group sizing.
6267 2008-02-07 Øyvind Kolås <pippin@o-hand.com>
6269 * tests/test-shader.c: (button_release_cb): added simplified
6270 implementation of a box-blur shader from Gwenole Beauchesne that
6271 should work on GLSL implementing low-end IGPs not implementing
6272 dynamic branching. The original code used crashed some of these
6273 due to bugs in drivers or similar. Resolves bug #710.
6275 2008-02-07 Tomas Frydrych <tf@openedhand.com>
6277 * tests/test-actors.c:
6278 Reverted previous change.
6280 2008-02-07 Tomas Frydrych <tf@openedhand.com>
6282 * clutter/clutter-actor.c:
6283 (clutter_actor_set_property):
6284 Fixed handling of PROP_ROTATE_CENTER_Y, ROTATE_CENTER_Z
6286 * tests/test-actors.c:
6287 Adjusted to use anchor point for both group and hands.
6289 2008-02-07 Neil J. Patel <njp@o-hand.com>
6291 * tests/test-actors.c: (frame_cb), (main):
6292 Changed set_anchor to move_anchor.
6293 Changed clutter_actor_rotate x & y values to 0,0.
6294 Switched on scaling because it seems to work without drifting.
6296 2008-02-07 Emmanuele Bassi <ebassi@openedhand.com>
6298 * clutter/clutter-script-parser.c:
6299 (clutter_script_get_type_from_symbol),
6300 (clutter_script_get_type_from_class): Use BIND_LAZY flag
6301 when looking at the symbols, so we don't load them all up.
6303 * clutter/clutter-script.c (resolve_alpha_func): Ditto as above.
6305 2008-02-07 Øyvind Kolås <pippin@o-hand.com>
6307 * clutter/clutter-actor.c:
6308 (_clutter_actor_apply_modelview_transform): perform translation as
6309 well as anchor point adjustment based on self not being stage (and
6310 not by self not being an orphan).
6312 2008-02-07 Matthew Allum <mallum@openedhand.com>
6314 * clutter/clutter-stage.c:
6315 * clutter/clutter-stage.h:
6316 * clutter/eglnative/clutter-stage-egl.c:
6317 * clutter/eglx/clutter-stage-egl.c:
6318 * clutter/osx/clutter-stage-osx.c:
6319 * clutter/sdl/clutter-stage-sdl.c:
6320 * clutter/x11/clutter-stage-x11.c:
6321 Add at least somne basic offscreen handling into all backends.
6322 Remove unused clutter_stage_set_offscreen vfunc. (#549)
6324 * clutter/clutter-texture.c:
6325 Minor API doc tweak, noting rowstride source in set_area
6327 2008-02-07 Emmanuele Bassi <ebassi@openedhand.com>
6329 * clutter/clutter-score.c (traverse_children): Actually implement
6330 clutter_score_list_timelines().
6332 * tests/test-score.c (main): Test clutter_score_list_timelines().
6334 2008-02-07 Matthew Allum <mallum@openedhand.com>
6336 * clutter/pango/pangoclutter-render.c:
6337 Warn if requested glyph is too big for underlying texture cache.
6340 2008-02-07 Matthew Allum <mallum@openedhand.com>
6342 * clutter/clutter-texture.c: (texture_upload_data):
6343 Remove random appearing 'priv->filter_quality =1' (#643)
6345 2008-02-06 Matthew Allum <mallum@openedhand.com>
6347 * clutter/clutter-texture.c:
6348 Minor clean up from last commit.
6351 Small tweak (rotate offscreen, rather than resize)
6353 2008-02-06 Matthew Allum <mallum@openedhand.com>
6355 * clutter/clutter-texture.c:
6356 Initial attempt at handling resizing/tranformed source textures.
6358 * clutter/pango/pangoclutter-render.c: (draw_glyph):
6359 Guards against freetype returning NULL bitmaps and
6360 thus causing device by zeros on NVIDIA drivers. (see ml)
6362 2008-02-05 Matthew Allum <mallum@openedhand.com>
6364 * clutter/clutter-actor.c: (clutter_actor_get_vertices):
6365 Make sure GL related Matrices are initialised. Fixes #756
6367 * clutter/clutter-texture.c:
6368 Fix up code from Norways answer to Jean-Michel Basquiat.
6369 (warning on tile_get_pixbuf)
6371 2008-02-05 Øyvind Kolås <pippin@o-hand.com>
6373 * clutter/clutter-texture.c: removed spurious left over debug printf.
6375 2008-02-05 Øyvind Kolås <pippin@o-hand.com>
6377 * clutter/clutter-texture.c: applied modified patch from Gwenole
6378 Beuchesne adressing bug #635. Adressing a buffer overflow in
6379 clutter_texture_get_pixbuf() when tiling is forced.
6381 2008-02-04 Emmanuele Bassi <ebassi@openedhand.com>
6383 * clutter/clutter-shader.c (clutter_shader_constructor): Keep the
6384 constructor line under the 80 columns using a variable.
6386 2008-02-04 Emmanuele Bassi <ebassi@openedhand.com>
6388 * clutter/clutter-actor.c:
6389 * clutter/clutter-shader.c: Small documentation and style fixes
6391 * tests/test-scale.c: Constify the gravities array.
6393 2008-02-04 Chris Lord <chris@openedhand.com>
6395 * clutter/clutter-actor.c: (clutter_actor_transform_stage_point):
6396 Check that x_out and y_out != NULL before setting their contents
6398 2008-02-04 Øyvind Kolås <pippin@o-hand.com>
6400 * clutter/clutter-timeline.c: (clutter_timeline_rewind): updated
6401 documentation to take direction into account.
6403 2008-02-04 Øyvind Kolås <pippin@o-hand.com>
6405 * tests/test-fbo.c: (make_shader):
6406 * tests/test-shader.c: (main): multiply the resulting gl_FragColor
6407 with gl_Color before being done to take opacity into account in the
6410 2008-02-04 Øyvind Kolås <pippin@o-hand.com>
6412 * clutter/clutter-actor.[ch]: added clutter_actor_get_shader and
6413 renamed clutter_actor_apply_shader to be clutter_actor_set_shader.
6414 Reindented/aligned header.
6415 * clutter/clutter-texture.c: (clutter_texture_paint): temporarily
6416 disable the shader on top of the clutter context's shader stack while
6417 rendering into the FBO.
6418 * tests/test-fbo.c: (main): s/apply_shader/set_shader/
6419 * tests/test-shader.c: (button_release_cb), (main):
6420 s/apply_shader/set_shader/
6422 2008-02-03 Matthew Allum <mallum@openedhand.com>
6424 * clutter/clutter-actor.c: (clutter_actor_set_rotationx):
6425 Add notify signal for set_rotate
6427 * clutter/clutter-texture.c:
6428 Add basic cleanup code for fbo's
6430 * tests/test-fbo.c: (main):
6433 * clutter/osx/clutter-stage-osx.c: (clutter_stage_osx_realize):
6436 2008-02-03 Matthew Allum <mallum@openedhand.com>
6438 * clutter/clutter-shader.c:
6439 Minor formatting cleanups to fit in 80 cols.
6441 * clutter/clutter-texture.c:
6442 More safety checks, clean ups in clutter_texture_new_from_actor()
6444 * clutter/cogl/gl/cogl.c:
6445 Always clear the FBO initially when rendering
6448 Overhall the test as to be more useful (and show current issues)
6450 2008-02-02 Matthew Allum <mallum@openedhand.com>
6452 * clutter/clutter-timeline.c:
6453 Document frame number limits in new-frame signal.
6455 * clutter/x11/clutter-event-x11.c:
6456 Remove uneeded error trap (#751)
6458 2008-02-01 Matthew Allum <mallum@openedhand.com>
6460 * clutter/cogl/cogl.h:
6461 * clutter/cogl/gl/cogl.c: (cogl_paint_init), (cogl_enable):
6462 * clutter/cogl/gles/cogl.c: (cogl_enable):
6464 Disable the depth test and buffer as has some strange side
6465 effects, mainly on x/y axis rotation with multiple layers at
6466 same depth (eg rotating text on a bg has very strange
6467 effect). Seems no clean 100% effective way to fix without other
6468 odd issues.. So for now move to application to handle and add
6469 cogl_enable_depth_test() as for custom actors (i.e groups) to
6472 2008-02-01 Matthew Allum <mallum@openedhand.com>
6474 * clutter/clutter-texture.c: (clutter_texture_new_from_actor):
6475 Fix typo breaking FBO rendering on anything other than a cloned
6478 2008-02-01 Matthew Allum <mallum@openedhand.com>
6480 * clutter/clutter-feature.h:
6481 * clutter/clutter-texture.c:
6482 * clutter/clutter-texture.h:
6483 * clutter/cogl/cogl.h:
6484 * clutter/cogl/gl/cogl.c:
6485 * clutter/cogl/gles/cogl.c:
6486 * tests/Makefile.am:
6488 Add initial support for FBO's in Clutter (OpenGL only so far).
6489 See new clutter_texture_new_from_actor()
6490 Initial implementation, needs work.
6492 * clutter/x11/clutter-stage-x11.c:
6493 (clutter_stage_x11_set_cursor_visible):
6494 Fall back to again not relying on xfixes to hide cursor. *sigh*
6496 * clutter/clutter-deprecated.h:
6497 Add clutter_group_find_child_by_id
6499 2008-02-01 Øyvind Kolås <pippin@o-hand.com>
6501 * clutter/cogl/gles/cogl.c: (cogl_rectangle_internal): increase size
6502 of GLfixed[] array to make contents fit.
6504 2008-02-01 Emmanuele Bassi <ebassi@openedhand.com>
6506 * clutter/clutter-actor.h: Clean up a bit the flag-related macros.
6508 2008-02-01 Emmanuele Bassi <ebassi@openedhand.com>
6510 * clutter/clutter-actor.c:
6511 (clutter_actor_get_property): Use clutter_actor_get_reactive()
6512 instead of the IS_REACTIVE() macro.
6514 (clutter_actor_set_reactive): Emit the notify signal for the
6517 * clutter/clutter-timeline.c:
6518 (timeline_timeout_func),
6519 (clutter_timeline_get_delta): Coding style fixes.
6521 2008-01-31 Rob Bradford <rob@openedhand.com>
6523 * clutter/glx/clutter-stage-glx.c:
6524 * clutter/glx/clutter-backend-glx.c:
6525 * clutter/glx/clutter-backend-glx.h:
6528 2008-01-31 Emmanuele Bassi <ebassi@sprite>
6530 * clutter/clutter-timeline.c (clutter_timeline_skip): Don't
6531 add the frames outside the direction check. (thanks to benoar
6532 on clutter-list for spotting it)
6534 2007-01-31 Tomas Frydrych <tf@openedhand.com>
6536 * clutter/clutter-actor.c:
6537 (clutter_actor_transform_vertices):
6538 Call clutter_actor_query_coords() instead of accessing the actor
6539 box, so that actors that calculate their bounding box on the fly
6540 (like ClutterGroup) work.
6542 * (_clutter_actor_apply_modelview_transform_recursive):
6543 Made to work for parentless actors.
6545 2008-01-31 Øyvind Kolås <pippin@o-hand.com>
6547 * tests/test-depth.c: added a box of cloned hands to further expand
6548 the scope of depth testing scenarios exercised by test-depth.
6550 2008-01-31 Øyvind Kolås <pippin@o-hand.com>
6552 * tests/test-depth.c: (timeline_completed): make use of
6553 clutter_timeline_set_direction instead of static state.
6554 (raise_top): made rectangle remain at fixed depth and raise
6556 (janus_group): added a rectangle with two faces, one red and
6557 one green, that spins around.
6559 2008-01-31 Emmanuele Bassi <ebassi@openedhand.com>
6561 * clutter/clutter-entry.h:
6562 * clutter/clutter-entry.c:
6563 (clutter_entry_set_cursor_position),
6564 (clutter_entry_get_cursor_position): Rename [gs]et_position()
6565 to [gs]set_cursor_position(), and avoid method name collisions
6566 with bindings for high-level languages.
6568 * clutter/clutter-deprecated.h: Add replacement warnings for the
6571 2008-01-31 Emmanuele Bassi <ebassi@openedhand.com>
6573 * clutter/clutter-actor.c (clutter_actor_init): Explicitly
6574 memset() to 0 the clip container, so if you get the clip without
6575 having set it, you won't get garbage.
6577 2008-01-31 Rob Bradford <rob@openedhand.com>
6579 * clutter/x11/clutter-backend-x11-private.h:
6580 Add missing start to comment
6582 * clutter/x11/clutter-backend-x11.c:
6583 * clutter/x11/clutter-event-x11.c:
6584 * clutter/x11/clutter-stage-x11.c:
6585 * clutter/x11/clutter-x11.h:
6588 2008-01-30 Emmanuele Bassi <ebassi@openedhand.com>
6590 * README: Add the osx flavour, and mark it experimental,
6591 along with the sdl backend. EGL-based backends should not be
6592 considered experimental anymore, even though they might require
6595 2008-01-30 Emmanuele Bassi <ebassi@openedhand.com>
6597 * HACKING: Expand the "document API" point, and the release
6600 * README: Update the release notes regarding the scale behaviour,
6601 now that the gravity has been removed.
6603 2007-01-30 Tomas Frydrych <tf@openedhand.com>
6605 * clutter/clutter-actor.c:
6606 * clutter/clutter-actor.h:
6607 Added new clutter_actor_move_anchor_point_ API.
6609 * clutter/clutter-behaviour-scale.c:
6610 * clutter/clutter-behaviour-scale.h:
6611 * clutter/clutter-effect.c:
6612 * clutter/clutter-effect.h:
6613 * tests/test-actors.c:
6614 * tests/test-effects.c:
6615 * tests/test-scale.c:
6616 Removed gravity from ClutterBehaviourScale.
6618 2008-01-27 Emmanuele Bassi <ebassi@openedhand.com>
6620 * tests/test-depth.c (main): Use a group instead of pushing
6621 the actors on the stage.
6623 2008-01-25 Emmanuele Bassi <ebassi@openedhand.com>
6625 * clutter/clutter-group.c (sort_z_order): Invert condition to
6626 return to the same as in revision 1976.
6628 2008-01-25 Emmanuele Bassi <ebassi@openedhand.com>
6630 * clutter/clutter-label.c (clutter_label_query_coords): Check
6631 if the layout logical rectangle size is bigger than the bounding
6632 box; this usually means that the bounding box changed in one
6633 point and the label private allocation needs to be
6636 2008-01-25 Emmanuele Bassi <ebassi@openedhand.com>
6638 * clutter/x11/Makefile.am: Add the generated clutter-x11 pkg-config
6639 file to CLEANFILES, to pass distcheck.
6642 * clutter/Makefile.am: Tweak up the Makefiles.
6645 * NEWS: Release 0.5.4
6647 * configure.ac: Post-release bump to 0.5.5
6649 2008-01-25 Emmanuele Bassi <ebassi@openedhand.com>
6651 * clutter/clutter-group.c: Use a shorter Z order sorting function,
6652 avoiding the checks.
6654 2008-01-25 Øyvind Kolås <pippin@o-hand.com>
6656 * clutter/clutter-shader.c: added documentation strings for
6659 2008-01-23 Emmanuele Bassi <ebassi@openedhand.com>
6661 * Makefile.am: Use variables, instead of substitutions.
6663 * clutter/clutter-private.h:
6664 * clutter/clutter-main.h: Make clutter_do_event() public again,
6665 as we need it in clutter-gtk.
6668 * clutter/x11/Makefile.am:
6669 * clutter/x11/clutter-x11.pc.in: Add a clutter-x11 pkg-config
6670 file for clutter-gtk, as it depends on the X11 backend API, as
6671 implemented by the GLX and EGLX backends.
6673 * clutter/x11/clutter-event-x11.c (event_translate): Do not
6674 propagate DestroyNotify events if the stage doesn't own the
6677 * tests/test-scale.c (main): Set values different from the default.
6679 2008-01-21 Emmanuele Bassi <ebassi@openedhand.com>
6681 * clutter/clutter-behaviour-scale.c:
6682 (clutter_behaviour_scale_set_property),
6683 (clutter_behaviour_scale_class_init): Fix stupid typo in the
6684 y-scale-end property declaration. (#720)
6686 2008-01-21 Emmanuele Bassi <ebassi@openedhand.com>
6688 * clutter/clutter-behaviour-depth.h:
6689 * clutter/clutter-behaviour-depth.c:
6690 (clutter_behaviour_depth_set_bounds),
6691 (clutter_behaviour_depth_get_bounds): Add the depth-start and
6692 depth-end accessors.
6694 * tests/test-depth.c (timeline_completed): Use set_bounds()
6695 instead of g_object_set().
6697 * clutter.symbols: Add clutter_behaviour_depth_set_bounds()
6698 and clutter_behaviour_opacity_get_bounds() to the list of
6701 2008-01-21 Emmanuele Bassi <ebassi@openedhand.com>
6703 * clutter/clutter-behaviour-scale.c: Use separate variables for
6704 storing the scale boundaries; apparently, using arrays broke
6705 the python bindings. (#720)
6707 2008-01-21 Matthew Allum <mallum@openedhand.com>
6709 * clutter/clutter-group.c:
6710 Make sure unrealizing a group also unrealizes children.
6712 * clutter/glx/clutter-stage-glx.c:
6713 Chain up to group unrealize to make sure textures get unrealized
6714 when changing context (see #718)
6716 * clutter/clutter-texture.c:
6719 2008-01-21 Øyvind Kolås <pippin@gimp.org>
6721 * tests/test-shader.c: fix incompatible types in shader programs
6723 Apparently floats can't be multiplied or divided with ints without
6724 explicit type casts. Use 2.0 or float(var) where appropriate. Patch
6725 from Tommi Komulainen (#715).
6727 2008-01-19 Emmanuele Bassi <ebassi@openedhand.com>
6729 * clutter/clutter-main.c (generate_enter_leave_events): Do not
6730 take the explicit reference, and let clutter_event_copy() do it
6731 for us. (#714, Neil Roberts)
6733 2008-01-19 Emmanuele Bassi <ebassi@openedhand.com>
6735 * clutter/clutter-event.c (clutter_event_copy): Take an extra
6736 reference on the related actor in ClutterEventCrossing that we
6737 explicitly unref in clutter_event_free(). (#714, Neil Roberts)
6739 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
6741 * tests/test-actors.c (input_cb): Fix the callback signature;
6742 hide the clicked actor only if it's a hand.
6744 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
6746 * clutter/clutter-main.c (clutter_do_event): Check the
6747 return value of the ::event signal for the CLUTTER_DELETE
6750 * clutter/clutter-stage.c (clutter_stage_event): Emit the
6751 ::event signal when receiving the CLUTTER_DELETE event; this
6752 allows to intercept the user's closing of the stage window.
6754 2007-01-18 Tomas Frydrych <tf@openedhand.com>
6756 * clutter/clutter-fixed.h:
6757 Added missing proto for clutter_fixed_qdivx().
6759 2007-01-18 Tomas Frydrych <tf@openedhand.com>
6761 * clutter/clutter-fixed.h:
6762 * clutter/clutter-fixed.c:
6763 Added CLUTTER_QDIV() for 64-bit division (bug 564, patch by
6764 Gwenole Beauchesne).
6766 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
6768 * clutter/clutter-event.h: Add a gunichar field for the Unicode
6769 representation of the key. (#555)
6771 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
6773 * clutter/clutter-actor.h:
6774 * clutter/clutter-script.h:
6775 * clutter/clutter-stage.h:
6776 * clutter/clutter-units.h: Documentation fixes and additions.
6778 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
6780 * clutter.symbols: Add ClutterBehaviourOpacity accessors.
6782 * clutter/clutter-behaviour-opacity.h:
6783 * clutter/clutter-behaviour-opacity.c:
6784 (clutter_behaviour_opacity_set_bounds),
6785 (clutter_behaviour_opacity_get_bounds): Add accessors for the
6786 opacity-start and opacity-end properties.
6788 * clutter/clutter-behaviour-scale.h: Fix the argument name to
6789 avoid complaints by gtk-doc.
6791 2008-01-17 Emmanuele Bassi <ebassi@openedhand.com>
6793 * clutter/clutter-behaviour-scale.c:
6794 (clutter_behaviour_scale_set_gravity): Notify on the right property
6797 2008-01-17 Emmanuele Bassi <ebassi@openedhand.com>
6799 * clutter.symbols: Add new ClutterBehaviourScale setters.
6801 * clutter/clutter-behaviour-scale.[ch]: Split the scaling factors
6802 on both axis. Add setters for all the behaviour properties.
6804 * clutter/clutter-effect.h:
6805 * clutter/clutter-effect.c (clutter_effect_scale): Split the
6806 final scale factor to match the ClutterBehaviourScale changes. (#709)
6808 * tests/test-actors.c:
6809 * tests/test-effects.c:
6810 * tests/test-rotate.c:
6811 * tests/test-scale.c: Update after API change.
6813 2008-01-16 Emmanuele Bassi <ebassi@openedhand.com>
6815 * clutter/cogl/cogl.h: Rename COGLhandleARB to COGLhandle.
6817 * clutter/cogl/gl/cogl-defines.h.in:
6818 * clutter/cogl/gl/cogl.c: Update GL implementation of COGL.
6820 * clutter/cogl/gles/cogl-defines.h:
6821 * clutter/cogl/gles/cogl.c: Update GLES implementation of COGL.
6823 * clutter/clutter-shader.c: Fix ClutterShader to use the new
6824 COGLhandle type instead of COGLhandlerARB.
6826 2008-01-16 Emmanuele Bassi <ebassi@openedhand.com>
6828 Define COGLhandleARB. (patch by Johan Bilien)
6830 * clutter/cogl/gles/cogl-defines.h: Define COGLhandleARB on
6831 GLES as well (using GLuint)
6833 * clutter/cogl/gles/cogl.c: Use COGLhandleARB.
6835 2008-01-14 Tommi Komulainen <tommi.komulainen@iki.fi>
6837 reviewed by: Emmanuele Bassi <ebassi@openedhand.com>
6839 * clutter/osx/clutter-event-osx.c (_clutter_event_osx_put):
6840 Initialize ClutterEvent structure with zeroes (#672)
6842 The 'source' member was uninitialized and being referenced in
6843 clutter_do_event leading to crash.
6845 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
6847 * tests/test-scale.c: Improve test case for scaling (#684,
6850 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
6852 * clutter/clutter-timeline.c (timeline_timeout_func): Fix
6853 check if the last frame was reached by skipping a frame (#654,
6856 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
6858 * clutter/clutter-shader.c: Use correct format string for
6859 gssize. (#695, Tommi Komulainen)
6861 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
6863 * clutter/cogl/gl/cogl.c (cogl_get_proc_address): Implement non-GLX
6864 version using GModule and looking up the symbol from the running
6865 process. It should work when linked to library providing the
6866 requested function. (#696, Tommi Komulainen)
6868 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
6870 * configure.ac: Post-release bump to 0.5.3
6873 * NEWS: Release 0.5.2
6875 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
6877 * clutter.symbols: Add clutter_model_insertv()
6879 * clutter/clutter-model.[ch] (clutter_model_insertv): Add a vector
6880 based insertion API, for language bindings
6882 2008-01-12 Emmanuele Bassi <ebassi@openedhand.com>
6884 * clutter/clutter-effect.c (clutter_effect_rotate): Make the
6885 rotate effect work on the passed axis, instead of hardcoding
6886 the X axis. (#700, Neil Roberts)
6888 2008-01-10 Øyvind Kolås <pippin@gimp.org>
6890 Added COGLhandleARB since the underlying type on OSX is void*,
6891 patch from Tommi Komulainen <tommi.komulainen@iki.fi>, (#694)
6893 * clutter/cogl/gl/cogl-defines.h.in: Added COGLhandleARB typedef.
6894 * clutter/cogl/cogl.h:
6895 * clutter/cogl/gl/cogl.c:
6896 * clutter/clutter-shader.c: Use COGLhandleARB instead of COGLint when
6897 referring to program or shader handles.
6899 2008-01-09 Emmanuele Bassi <ebassi@openedhand.com>
6901 * clutter/Makefile.am:
6902 * clutter/clutter.h:
6903 * clutter/clutter-list-model.[ch]: Complete the ClutterModelDefault
6904 to ClutterListModel rename by renaming the source files
6906 2008-01-09 Emmanuele Bassi <ebassi@openedhand.com>
6908 * clutter/clutter-model-default.[ch]: Rename ClutterModelDefault
6909 into ClutterListModel, to make it clear that the default
6910 ClutterModel implementation is list-based
6912 * tests/test-model.c: Update call
6914 2008-01-09 Emmanuele Bassi <ebassi@openedhand.com>
6916 * clutter/clutter-model-default.c:
6917 (clutter_model_default_new),
6918 (clutter_model_default_newv): Move the constructors in the
6921 * clutter/clutter-model-private.h: Add a private header for
6922 the ClutterModel implementations
6924 * clutter/clutter-model.c:
6925 (clutter_model_check_type),
6926 (clutter_model_set_n_columns),
6927 (clutter_model_set_column_type): Mark as private to Clutter,
6928 not static to ClutterModel
6930 * clutter/Makefile.am: Add clutter-model-private.h
6932 2008-01-09 Emmanuele Bassi <ebassi@openedhand.com>
6934 * clutter/clutter-label.c:
6935 (clutter_label_ensure_layout): Fix the ClutterUnits to Pango
6938 2008-01-08 Emmanuele Bassi <ebassi@openedhand.com>
6940 * clutter/clutter-model.c:
6941 (clutter_model_appendv),
6942 (clutter_model_prependv): Fix the columns length pre-condition
6944 2008-01-07 Emmanuele Bassi <ebassi@openedhand.com>
6946 * clutter/clutter-model-default.[ch]: Remove the ClutterModelDefault
6947 iterator symbols from the public API; the iterator implementation
6948 is a detail of the default ClutterModel class
6950 * clutter.symbols: Update
6952 2008-01-07 Emmanuele Bassi <ebassi@openedhand.com>
6954 * clutter/clutter-model.h:
6955 * clutter/clutter-model.c:
6956 (clutter_model_appendv),
6957 (clutter_model_prependv): Add vector based API for bindings.
6959 (clutter_model_get_column_name),
6960 (clutter_model_get_column_type),
6961 (clutter_model_set_sorting_column): Fix the check in the condition
6962 on the column index.
6964 * tests/test-scale.c (on_timeline_completed), (main): Fix spelling
6966 * clutter.symbols: Update public symbols
6968 2008-01-04 Emmanuele Bassi <ebassi@openedhand.com>
6970 * clutter.symbols: Add clutter_actor_move_byu()
6972 * clutter/clutter-actor.h:
6973 * clutter/clutter-actor.c:
6974 (clutter_actor_move_by),
6975 (clutter_actor_move_byu): Add a units-based variant of the
6976 clutter_actor_move_by() function
6978 2008-01-02 Johan Bilien <jobi@via.ecp.fr>
6980 reviewed by: Emmanuele Bassi <ebassi@openedhand.com>
6982 * configure.ac: Use AC_DEFINE_UNQUOTED to expand the
6983 variable. Fixes EGL backend build
6985 2008-01-02 Emmanuele Bassi <ebassi@openedhand.com>
6987 * configure.ac: Post release bump to 0.5.1
6989 2008-01-02 Emmanuele Bassi <ebassi@openedhand.com>
6992 * NEWS: Release 0.5.0
6994 2008-01-02 Emmanuele Bassi <ebassi@openedhand.com>
6996 * clutter/clutter-model-default.c:
6997 (clutter_model_default_get_iter_at_row),
6998 (clutter_model_default_insert_row): Fix off-by-one errors
7000 (clutter_model_default_class_init):
7001 (clutter_model_default_remove_row): Move the actual removal of the
7004 (clutter_model_default_row_removed): ... the signal class handler
7005 of ::row-removed; this way, signal handlers connected to
7006 ::row-removed will get a valid iterator, while signal handlers
7007 connected to ::row-removed with the AFTER flag will get an updated
7010 2007-12-31 Tomas Frydrych <tf@openedhand.com>
7013 * clutter/Makefile.am:
7014 Added -no-undefined to libtool LDFLAGS for mingw/SDL backend, to
7015 allow building of shared libraries for win32.
7017 2007-12-31 Tomas Frydrych <tf@openedhand.com>
7021 Added CLUTTER_REQUIRES automake var to allow deps in clutter.pc to
7022 be backend-specific.
7024 2007-12-28 Emmanuele Bassi <ebassi@openedhand.com>
7026 * clutter/clutter-texture.c:
7027 (clutter_texture_unrealize): Do not read the pixels back if the
7028 texture is being destroyed
7030 2007-12-28 Emmanuele Bassi <ebassi@openedhand.com>
7032 * clutter/clutter-model.c:
7033 (clutter_model_real_get_n_rows), (clutter_model_class_init),
7034 (clutter_model_get_n_rows): Provide a default implementation of
7035 the get_n_rows() method, so that subclasses do not strictly need
7038 2007-12-25 Emmanuele Bassi <ebassi@openedhand.com>
7040 * clutter/clutter-actor.c:
7041 (parse_rotation_array): Inline, and get the JsonArray as a parameter
7043 (parse_rotation): Update
7045 * clutter/clutter-script.c:
7046 (warn_missing_attribute): Fix for emacs-style warnings
7048 (clutter_script_parse_node): Remove an ifdeffed out section
7050 (clutter_script_construct_parameters),
7051 (clutter_script_construct_object): Rename get_parameters, so
7052 it's obvious what it does
7054 2007-12-25 Emmanuele Bassi <ebassi@openedhand.com>
7056 * tests/test-script.json: Fix the JSON syntax
7058 2007-12-25 Emmanuele Bassi <ebassi@openedhand.com>
7060 * clutter/clutter-enum-types.c.in: Fix the template
7062 2007-12-24 Emmanuele Bassi <ebassi@openedhand.com>
7064 * clutter/clutter-stage.c:
7065 * clutter/clutter-stage.h:
7066 * clutter/clutter-texture.c: Remove some of the remaining FIXMEs
7067 in the API documentation
7069 2007-12-24 Emmanuele Bassi <ebassi@openedhand.com>
7071 * clutter/clutter-color.c:
7072 * clutter/clutter-event.c:
7073 * clutter/clutter-stage.c: Intern more strings using the I_() macro
7075 * clutter/clutter-enum-types.c.in: Call g_intern_static_string()
7076 in the enum types template
7078 2007-12-24 Emmanuele Bassi <ebassi@openedhand.com>
7080 * clutter.symbols: Add clutter_actor_set_clipu() and
7081 clutter_actor_get_clipu()
7083 * clutter/clutter-actor.h:
7084 * clutter/clutter-actor.c:
7085 (clutter_actor_set_clipu), (clutter_actor_get_clipu): Add the
7086 new units-based versions of the clip accessors
7088 (clutter_actor_set_clip), (clutter_actor_get_clip): Reimplement
7089 the pixels-based clip accessors as proxies for the units-based
7092 2007-12-24 Emmanuele Bassi <ebassi@openedhand.com>
7094 * clutter/cogl/cogl.h: Update cogl_clip_set() to accept the
7095 clip components as ClutterFixed values
7097 * clutter/cogl/gl/cogl.c (cogl_clip_set): Update the GL implementation
7100 * clutter/cogl/gles/cogl.c:
7101 (cogl_rectangle_internal): Provide an internal, inlined rectangle
7102 drawing function using fixed point values, to be shared by
7103 cogl_clip_set() and cogl_rectangle()
7105 (cogl_clip_set), (cogl_rectangle): Update the GLES implementation
7106 of cogl_clip_set() and cogl_rectangle() to use the new internal
7107 rectangle drawing function
7109 * clutter/clutter-actor.c: Make the clip an array of ClutterUnit
7110 values instead of pixel-based; this allows higher precision and
7113 (_clutter_actor_apply_modelview_transform): Pass the clip
7114 components converting from units to fixed point values, using
7115 the new cogl_clip_set() signature
7117 (clutter_actor_get_property), (clutter_actor_set_clip),
7118 (clutter_actor_get_clip): Update the accessors of the clip
7121 2007-12-21 Emmanuele Bassi <ebassi@openedhand.com>
7123 * clutter/clutter-actor.h: Remove the unused ::set_depth() and
7124 ::get_depth() virtual functions. (#674, Murray Cumming)
7126 2007-12-21 Emmanuele Bassi <ebassi@openedhand.com>
7128 * clutter/clutter-group.c:
7129 * clutter/clutter-group.h: Add the clutter_group_add() convenience
7130 function; it's now "undeprecated" and implemented as a macro
7132 * clutter/clutter-stage.h: Add clutter_stage_add() as a convenience
7135 * clutter/cogl/cogl.h: Include just the needed headers instead
7136 of the whole clutter.h; this avoids rebuild cogl when not needed
7138 2007-12-21 Emmanuele Bassi <ebassi@openedhand.com>
7140 * Makefile.am: Move tests build before docs, to cut down the
7141 distcheck failure discovery
7143 * clutter.symbols: Add clutter_texture_set_area_from_rgb_data()
7145 * clutter/clutter-actor.c:
7146 * clutter/clutter-script.c:
7147 * clutter/clutter-texture.c:
7148 * clutter/json/json-generator.c:
7149 * clutter/json/json-parser.c: Compilation fixes for passing distcheck
7151 * tests/test-grab.c:
7152 * tests/test-score.c:
7153 * tests/test-script.c:
7154 * tests/test-shader.c:
7155 * tests/test-unproject.c: Ditto as above
7157 2007-12-21 Emmanuele Bassi <ebassi@openedhand.com>
7159 * clutter/clutter-label.c:
7160 (clutter_label_ensure_layout): Avoid rounding errors in the layout
7161 computing when switching between Clutter units and Pango units.
7163 2007-12-19 Øyvind Kolås <pippin@o-hand.com>
7165 * clutter/clutter-texture.[ch]: (bug #675) added
7166 clutter_texture_set_area_from_rgb_data, sharing some of the
7167 initialization infrastructure with clutter_texture_set_from_rgb_data.
7169 2007-12-20 Emmanuele Bassi <ebassi@openedhand.com>
7171 * clutter/clutter-container.c:
7172 (clutter_container_lower_child): Fix interface method call
7173 to actually call ClutterContainer::lower. (#670, Gwenole
7176 2007-12-20 Emmanuele Bassi <ebassi@openedhand.com>
7178 * clutter/clutter-label.c:
7179 (clutter_label_query_coords): Return the bounding box set inside
7180 request_coords(), if any; otherwise, return the natural allocation
7181 of the label. (#678, reported by Gwenole Beauchesne)
7183 * tests/test-rotate.c: Align the label
7185 2007-12-19 Tomas Frydrych <tf@openedhand.com>
7187 * clutter/Makefile.am:
7188 * clutter/cogl/gl/cogl-defines.h.in:
7189 * clutter/pango/pangoclutter-render.c:
7191 Fixes to allow cross-compilation with mingw (patch by Neil
7193 Removed trailing whitespace.
7195 2007-12-18 Øyvind Kolås <pippin@o-hand.com>
7197 * clutter/clutter-main.c: (generate_enter_leave_events): synthesize
7198 enter event (without related) and corresponding leave event when the
7199 actor the cursor is over has been destroyed.
7200 * clutter/clutter-event.c: (clutter_event_free): only unref the
7201 related_actor when it actually is set.
7203 2007-12-18 Emmanuele Bassi <ebassi@openedhand.com>
7205 * clutter/clutter-main.c:
7206 (unset_motion_last_actor),
7207 (generate_enter_leave_events): Attach a callback to the destroy
7208 signal on the last motion actor, so if it goes away while the
7209 pointer is in the middle of it we can unset the pointer.
7211 * clutter/clutter-private.h: Store the last motion actor inside
7214 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
7216 * clutter/clutter-actor.c:
7217 (clutter_actor_should_pick_paint),
7218 (clutter_actor_apply_transform_to_point): Fix the whitespace.
7220 (clutter_actor_set_rotation): Clarify that the coordinates of
7221 the centre of rotation are relative to the anchor point or,
7222 if not set, to the upper left corner of the bounding box.
7224 2007-12-17 Tomas Frydrych <tf@openedhand.com>
7226 * clutter/clutter-behaviour-ellipse.c:
7227 * clutter/clutter-behaviour-rotate.c:
7228 Clamping of start and end angles to <0, 360).
7230 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
7232 * clutter/clutter-behaviour-path.c: Clarify the equivalence
7233 between the upper and lower bounds of the ClutterAlpha and
7234 the position in the path. (#634)
7236 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
7238 * clutter/clutter-texture.c: Mention the fact that a ClutterTexture
7239 will scale its contents to fit inside the requested bounding
7242 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
7244 * clutter/clutter-actor.c: Fix documentation for
7245 the ::captured-event signal. (#673)
7247 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
7249 * clutter/clutter-actor.c: Clarify the set_clip() method
7250 documentation, pointing out that the clip area origin is
7251 always the top-left corner of an actor.
7253 2007-12-15 Emmanuele Bassi <ebassi@openedhand.com>
7255 * clutter/clutter-actor.c:
7256 * clutter/clutter-alpha.h:
7257 * clutter/clutter-event.h:
7258 * clutter/clutter-fixed.[ch]:
7259 * clutter/clutter-model.h:
7260 * clutter/clutter-shader.[ch]:
7261 * clutter/clutter-stage.c: Documentation fixes.
7263 2007-12-15 Emmanuele Bassi <ebassi@openedhand.com>
7265 * clutter/clutter-model-default.c:
7266 (clutter_model_default_iter_next),
7267 (clutter_model_default_iter_prev): Do not instantiate a new
7268 iterator, and update the passed one instead, as we say we do
7269 in the documentation. This avoid leaking tons of iterators.
7271 * clutter/clutter-model.[ch]: Update the documentation.
7273 * tests/test-model.c: Prettify some output.
7275 2007-12-14 Emmanuele Bassi <ebassi@openedhand.com>
7277 * clutter/clutter-behaviour.c:
7278 (clutter_knot_get_type): Use the I_() macro.
7280 * clutter/clutter-model.[ch]: Make ClutterModel and ClutterModelIter
7281 abstract classes; also, provide more virtual functions inside the
7282 ClutterModel vtable, to allow subclasses and language bindings to
7283 override the entire ClutterModel using other/native data types
7286 * clutter/clutter-model-default.[ch]: ClutterModelDefault is a
7287 default implementation of ClutterModel and ClutterModelIter using
7290 * clutter/Makefile.am:
7291 * clutter/clutter.h: Build glue for ClutterModelDefault.
7293 * tests/test-model.c: Update for constructor changes.
7295 * tests/test-shader.c: Fix a typo.
7297 2007-12-14 Matthew Allum <mallum@openedhand.com>
7299 * clutter/cogl/gl/cogl-defines.h.in:
7300 * clutter/cogl/gles/cogl-defines.h:
7301 Add CLUTTER_COGL_HAS_GL/GLES defines
7303 2007-12-11 Øyvind Kolås <pippin@o-hand.com>
7305 Refined the ClutterShader API based on a patch from Emmanuele Bassi.
7307 * clutter/clutter-actor.c: (clutter_actor_paint),
7308 (clutter_actor_apply_shader): queue a redraw of actor when shader is
7310 * clutter/clutter-actor.h: indentation.
7311 * clutter/clutter-shader.[ch]: made the fragment and vertex shader
7312 sources properties. Report error through GError when binding shaders.
7313 * tests/test-shader.c: modified to use newer API.
7315 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
7317 * clutter/clutter-model.c:
7318 (clutter_model_get_sorting_column): Fix wrong type check.
7320 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
7322 * clutter/clutter-model.[ch]: Allow unsorting the model (passing
7323 -1 as the sorting column)
7325 (clutter_model_iter_get_valist): Do not initialise twice che
7328 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
7330 * clutter/clutter-model.c (clutter_model_iter_get_value): Initialise
7331 the passed GValue like the other getters do.
7333 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
7335 * clutter/clutter-model.h:
7336 * clutter/clutter-model.c:
7337 (clutter_model_append_value),
7338 (clutter_model_prepend_value),
7339 (clutter_model_insert_value): Add a _value() variant for the
7340 insertion methods, for use of the language bindings.
7342 (clutter_model_append),
7343 (clutter_model_prepend),
7344 (clutter_model_insert): Do not return a boolean: insertion should
7345 never fail unless for a programming error, in which case we have
7348 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
7350 * clutter/clutter-behaviour-ellipse.c:
7351 (clutter_behaviour_ellipse_get_angle_tilt),
7352 (clutter_behaviour_ellipse_get_angle_tiltx),
7353 (clutter_behaviour_ellipse_set_tilt): Fix a double conversion
7354 that was messing up the returned results. (#665)
7356 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
7358 * clutter/clutter-actor.c:
7359 (clutter_actor_set_property),
7360 (clutter_actor_get_property),
7361 (clutter_actor_class_init): Add the rotation-* properties,
7362 controlling the rotation angle and center on each axis. (#614)
7364 (parse_rotation_array), (parse_rotation),
7365 (clutter_actor_parse_custom_node),
7366 (clutter_actor_set_custom_property),
7367 (clutter_scriptable_iface_init): Add a new "rotation" custom
7368 property for expressing the rotation along each axis in a
7372 { "x-axis" : [ <angle>, [ <y>, <z> ] ] },
7373 { "y-axis" : [ <angle>, [ <x>, <z> ] ] },
7374 { "z-axis" : [ <angle>, [ <x>, <y> ] ] }
7377 (clutter_geometry_get_type),(clutter_vertex_get_type),
7378 (clutter_actor_box_get_type): Use the I_() macro instead of
7379 directly calling g_intern_static_string().
7381 * clutter/clutter-entry.c (clutter_entry_request_coords):
7382 * clutter/clutter-label.c (clutter_label_ensure_layout),
7383 (clutter_label_request_coords): Use CLUTTER_UNITS_FROM_DEVICE()
7384 instead of CLUTTER_UNITS_FROM_INT(), as "device" means "pixels".
7386 * clutter/clutter-private.h: Add the I_() macro for intern
7389 * tests/test-script.json: Test the newly added "rotation"
7392 2007-12-10 Tomas Frydrych <tf@openedhand.com>
7394 * tests/Makefile.am:
7397 2007-12-10 Tomas Frydrych <tf@openedhand.com>
7399 * tests/test-viewport.c:
7400 * tests/Makefile.am:
7401 Added a simple viewport test.
7403 2007-12-10 Tomas Frydrych <tf@openedhand.com>
7405 * clutter/clutter-actor.c:
7406 (_clutter_actor_apply_modelview_transform):
7407 Moved offset translation after rotation so that rotation coords
7408 are also relative to the offset point.
7410 2007-12-09 Emmanuele Bassi <ebassi@openedhand.com>
7412 * tests/test-events.c (input_cb):
7413 * tests/test-text.c (main): Fix compiler errors. (#592,
7416 2007-12-09 Emmanuele Bassi <ebassi@openedhand.com>
7418 * clutter/clutter-actor.c: Document the values for full
7419 transparency and full opacity in the set_opacity()
7422 * clutter/clutter-behaviour-ellipse.c: Improve consistency
7425 2007-12-08 Emmanuele Bassi <ebassi@openedhand.com>
7427 * configure.ac: Make libtool respect the -s switch of make
7430 2007-12-07 Emmanuele Bassi <ebassi@openedhand.com>
7432 * clutter/clutter-actor.h:
7433 * clutter/clutter-actor.c:
7434 (clutter_actor_get_sizeu),
7435 (clutter_actor_get_positionu): Add unit-based accessors to
7436 the size and position.
7438 2007-12-07 Tomas Frydrych <tf@openedhand.com>
7440 * clutter/clutter-behaviour-ellipse.c:
7441 (clutter_behaviour_ellipse_set_angle_start):
7442 (clutter_behaviour_ellipse_set_angle_end):
7443 (clutter_behaviour_ellipse_set_angle_tilt):
7444 (clutter_behaviour_ellipse_set_tilt):
7445 Removed strayed degree -> ClutterAngle conversions left over from
7448 (clutter_behaviour_ellipse_set_angle_tiltx):
7449 Removed stray printf.
7451 2007-12-07 Tomas Frydrych <tf@openedhand.com>
7453 * clutter/clutter-behaviour-ellipse.c:
7454 Fixed tilt setters and getters.
7456 2007-12-06 Tomas Frydrych <tf@openedhand.com>
7458 * clutter/clutter-fixed.c:
7459 * clutter/clutter-fixed.h:
7461 Added extra iteration to the Newton-Rapson algorithm for arguments
7462 lesser than 342 to improve precission.
7464 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
7466 * clutter/clutter-main.c:
7467 (clutter_set_motion_events_frequency): Never allow the motion
7468 events devlivery frequency to exceed the default frame rate.
7470 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
7472 * clutter/json/json-parser.[ch]: Use gssize, size we allow -1
7473 as a length (meaning "use the whole string").
7475 (json_parser_load_from_data): Use the passed length instead of
7476 using strlen() all the time.
7478 * clutter/clutter-script.[ch]: Ditto as above.
7480 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
7482 * clutter/pango/pangoclutter-render.c: Hush a compiler warning
7483 by removing a unused variable.
7485 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
7487 * clutter/clutter-label.c (clutter_label_ensure_layout): If the
7488 label has a requested size, force it when ensuring the layout.
7490 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
7492 * tests/test-unproject.c: Fix type comparison.
7494 * tests/test-score.c: Save the returned ids.
7496 2007-12-05 Matthew Allum <mallum@openedhand.com>
7498 reviewed by: <delete if not using a buddy>
7500 * clutter/pango/pangoclutter-render.c: (tc_get), (free_glyph_info),
7501 (draw_glyph), (draw_trapezoid), (pango_clutter_render_layout),
7502 (pango_clutter_render_layout_line),
7503 (pango_clutter_render_clear_caches), (prepare_run), (draw_begin):
7505 2007-12-05 Emmanuele Bassi <ebassi@openedhand.com>
7507 * clutter/clutter-score.h: Rearrange declarations.
7509 * clutter/clutter-score.c: More documentation in the long
7510 description of the ClutterScore section.
7512 * clutter/clutter-debug.h:
7513 * clutter/clutter-main.c: Add the CLUTTER_DEBUG_SHADER flag,
7514 for debugging the shader calls.
7516 * clutter/clutter-feature.h: Fix the documentation of the
7519 * clutter/Makefile.am: Remove trailing whitespace.
7521 2007-12-05 Tomas Frydrych <tf@openedhand.com>
7523 * clutter/clutter-actor.c:
7524 * clutter/clutter-actor.h:
7525 * tests/Makefile.am:
7526 * tests/test-unproject:
7527 (clutter_actor_transform_stage_point):
7528 Added new function for translating stage coordinates into local
7531 2007-12-04 Emmanuele Bassi <ebassi@openedhand.com>
7533 * clutter/clutter-score.c: Better document ClutterScore
7536 2007-12-04 Emmanuele Bassi <ebassi@openedhand.com>
7538 * clutter/clutter-score.[ch]: Reimplement ClutterScore using
7539 a N-ary tree to store the timelines. Remove clutter_score_add():
7540 the same functionality can be achieved by passing a NULL
7541 parent to clutter_score_append().
7543 * tests/test-score.c: Update ClutterScore test unit, and add
7546 2007-12-04 Øyvind Kolås <pippin@o-hand.com>
7548 * clutter/clutter-shader.c: (bind_glsl_shader): use gchar instead of
7551 2007-12-03 Øyvind Kolås <pippin@o-hand.com>
7553 * clutter/clutter-shader.[ch]: do not include GL.h.
7555 2007-12-03 Øyvind Kolås <pippin@o-hand.com>
7557 Support for shaders in clutter. At the moment limited to drivers
7558 providing GLSL support.
7560 * clutter/cogl/cogl.h: added rather direct binding of needed for glsl
7562 * clutter/cogl/gl/cogl-defines.h.in:
7563 * clutter/cogl/gl/cogl.c:
7564 * clutter/cogl/gles/cogl-defines.h: added stubs.
7565 * clutter/cogl/gles/cogl.c: added stubs.
7567 * clutter/glx/clutter-stage-glx.c:
7568 (clutter_stage_glx_realize): unrelated memory management sanity fix.
7569 (clutter_stage_glx_unrealize): unbind all shaders on stage unrealize.
7571 * clutter/Makefile.am: added clutter-shader.[ch]
7572 * clutter/clutter-actor.[ch]: adding shader capability to
7574 * clutter/clutter-feature.h: added CLUTTER_FEATURE_SHADERS_GLSL
7575 * clutter/clutter-private.h: added stack of shaders to context.
7576 * clutter/clutter-shader.[ch]: new.
7578 * tests/Makefile.am: added shader test.
7579 * tests/test-shader.c: (frame_cb), (main): simple shader test,
7580 cycle through the inline shader with right/left mouse buttons.
7582 2007-12-03 Øyvind Kolås <pippin@o-hand.com>
7584 * clutter/glx/clutter-stage-glx.c: for extra sanity, set
7585 stage_x11->xvisinfo = NULL after XFree. Makes using the root window
7586 as foreign window possible.
7588 2007-11-30 Øyvind Kolås <pippin@o-hand.com>
7590 * clutter/clutter-timeline.c: (clutter_timeline_get_delta): return the
7591 number of milliseconds passed between new-frame events instead of
7592 since new-frame events, thus making sure that the sum of _get_delta's
7593 returned for all new-frame events is equal to total time elapsed.
7595 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
7597 * clutter/clutter-actor.c (parse_units),
7598 (clutter_actor_parse_custom_node): Do not allow using percentages
7599 of the stage on the stage itself, as it makes little to no
7602 * clutter/clutter-script.c:
7603 (clutter_script_construct_object): Rearrange code.
7605 * tests/test-script.json: Do not set the size of the stage, to
7606 test for the stage size percentage.
7608 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
7610 * clutter/clutter-model.h: Complete the documentation of
7611 the ClutterModelClass structure members.
7613 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
7615 * clutter/clutter-timeline.h:
7616 * clutter/clutter-timeline.c
7617 (timeline_timeout_func),
7618 (clutter_timeline_get_delta): Add a function for retrieving
7619 the number of frames and the time (in milliseconds) elapsed
7620 since the last timeline ::new-frame signal. This can be useful
7621 for implementing a physics engine or just for knowing how if
7622 and how many frames have been skipped.
7624 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
7626 * clutter/clutter-actor.c (parse_units),
7627 (clutter_actor_parse_custom_node),
7628 (clutter_scriptable_iface_init): Override the parsing code
7629 for the x, y, width and height properties of ClutterActor,
7630 to allow strings with modifiers when defining the position
7631 and/or the dimensions of an actor. Bare integers are assumed
7632 as pixels; floating point values in the [0, 1] interval are
7633 assumed as percentages; strings can have these modifiers:
7637 - pt - points (at the current resolution)
7638 - % - percentage of the stage
7640 * clutter/clutter-units.h: Fix the conversion macros
7642 * tests/test-script.json: Test the new values.
7644 2007-11-29 Emmanuele Bassi <ebassi@openedhand.com>
7646 * clutter/clutter-model.[ch]: Slight API change in the constructor
7647 functions for ClutterModel: clutter_model_new() now takes a list
7648 of GType/string pairs for both the column type and the column name.
7650 (clutter_model_set_n_columns),
7651 (clutter_model_set_names),
7652 (clutter_model_set_types): Subclasses of ClutterModel will be able
7653 to call clutter_model_set_types() and clutter_model_set_names() in
7654 any order, provided that they don't call each function more than
7657 * tests/test-model.c: Update the test case.
7659 2007-11-29 Tomas Frydrych <tf@openedhand.com>
7661 * clutter/clutter-actor.h:
7662 * clutter/clutter-actor.c:
7663 Converted depth and rotation offsets to ClutterUnit.
7665 (clutter_actor_set_depthu):
7666 (clutter_actor_get_depthu):
7667 Additional ClutterUnit API.
7669 (_clutter_actor_apply_modelview_transform):
7670 Use cogl_translatex() in place of cogl_translate().
7672 2007-11-29 Emmanuele Bassi <ebassi@openedhand.com>
7674 * *: Add svn:ignore property to every directory, so that
7675 svn status starts being useful.
7677 2007-11-29 Matthew Allum <mallum@openedhand.com>
7679 * clutter/clutter-main.c: (generate_enter_leave_events):
7680 Minor formatting tweak.
7682 Typo fix from Damien Lespiau (via mailing list)
7684 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
7686 Add more introspection capabilities to the base model class
7688 * clutter/clutter-model.h:
7689 * clutter/clutter-model.c:
7690 (clutter_model_finalize): Do no leak the column types array.
7692 (clutter_model_get_n_columns): Function for getting the number
7693 of columns inside a model.
7695 (clutter_model_set_names): Add API for setting the names of the
7698 (clutter_model_get_column_name),
7699 (_model_get_column_type): Add API for getting each column's name,
7700 and the default implementation for ClutterModel.
7702 (clutter_model_get_column_type),
7703 (_model_get_iter_at_row): Add API for getting each column's type,
7704 and the default implementation for ClutterModel.
7706 * clutter.symbols: Add ClutterModel and ClutterModelIter symbols,
7707 and keep the symbols file sorted.
7709 2007-11-28 Tomas Frydrych <tf@openedhand.com>
7711 * clutter/clutter-actor.c:
7712 * clutter/clutter-actor.h:
7713 (clutter_actor_set_positionu):
7714 (clutter_actor_set_sizeu):
7715 (clutter_actor_get_widthu):
7716 (clutter_actor_get_heightu):
7717 (clutter_actor_set_widthu):
7718 (clutter_actor_set_heightu):
7719 (clutter_actor_get_xu):
7720 (clutter_actor_get_yu):
7721 (clutter_actor_set_xu):
7722 (clutter_actor_set_yu):
7723 Expanded ClutterActor API with new ClutterUnit-base functions.
7725 * clutter/clutter-stage.c:
7726 * clutter/clutter-stage.h:
7727 (clutter_stage_get_resolution):
7728 (clutter_stage_get_resolutionx):
7729 New function to query stage resolution (floating and fixed point
7732 * clutter/clutter-units.h:
7733 (CLUTTER_UNITS_FROM_STAGE_WIDTH_PERCENTAGE):
7734 (CLUTTER_UNITS_FROM_STAGE_HEIGHT_PERCENTAGE):
7735 (CLUTTER_UNITS_FROM_PARENT_WIDTH_PERCENTAGE):
7736 (CLUTTER_UNITS_FROM_PARENT_HEIGHT_PERCENTAGE):
7737 (CLUTTER_UNITS_FROM_MM):
7738 (CLUTTER_UNITS_FROM_MMX):
7739 (CLUTTER_UNITS_FROM_POINTS):
7740 (CLUTTER_UNITS_FROM_POINTSX):
7741 New macros for conversions to ClutterUnits.
7745 ClutterActor anchor_point functions,
7746 clutter_stage_get_resolution functions.
7749 clutter_actor_scale_with_gravity functions.
7751 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
7753 * clutter/clutter-actor.[ch]: Documentation fixes.
7755 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
7757 Remove the layout containers: they will be moved to a
7760 * clutter/clutter.h:
7761 * clutter/Makefile.am: Remove layout and boxes from the
7764 * clutter/clutter-layout.[ch]: Remove the ClutterLayout
7767 * clutter/clutter-box.[ch]:
7768 * clutter/clutter-hbox.[ch]:
7769 * clutter/clutter-vbox.[ch]: Remove ClutterBox and its
7772 * clutter/clutter-label.c: Remove ClutterLayout implementation
7774 * clutter/clutter-script-private.h:
7775 * clutter/clutter-script-parser.c:
7776 * clutter/clutter-script.c:
7777 (clutter_script_parse_node): Remove special parsing for
7778 ClutterMargin and ClutterPadding.
7780 * clutter/clutter-types.h: Remove ClutterPadding and ClutterMargin.
7782 * tests/Makefile.am:
7783 * tests/test-boxes.c: Remove the boxes test case.
7785 2007-11-28 Tomas Frydrych <tf@openedhand.com>
7788 Started 0.6.0 section with comment on actor anchor point.
7790 * clutter/clutter/clutter-actor.c:
7791 * clutter/clutter/clutter-actor.h:
7792 * clutter/clutter/clutter-behaviour-scale.c:
7793 * clutter/clutter/clutter-deprecated.h:
7794 (clutter_actor_set_anchor_point):
7795 (clutter_actor_set_anchor_pointu):
7796 (clutter_actor_get_anchor_point):
7797 (clutter_actor_get_anchor_pointu):
7798 (clutter_actor_set_anchor_point_from_gravity):
7799 New anchor point API deprecating old gravity scaling, added
7800 comments on modelview matrix construction to ClutterActor
7803 (clutter_actor_set_scale_with_gravity):
7804 (clutter_actor_set_scale_with_gravityx):
7805 Deprecated; use clutter_actor_set_anchor_point_from_gravity() instead.
7807 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
7809 * clutter/clutter-effect.[ch]: Add clutter_effect_template_construct()
7810 function, for language bindings that need to set the alpha function
7811 but cannot call the clutter_effect_template_new() ctor themselves.
7813 2007-11-27 Tomas Frydrych <tf@openedhand.com>
7815 * clutter/clutter-behaviour-ellipse.c:
7816 * clutter/clutter-behaviour-ellipse.h:
7817 (clutter_behaviour_ellipse_get_angle_startx):
7818 (clutter_behaviour_ellipse_set_angle_startx):
7819 (clutter_behaviour_ellipse_get_angle_endx):
7820 (clutter_behaviour_ellipse_set_angle_endx):
7821 (clutter_behaviour_ellipse_get_angle_tiltx):
7822 (clutter_behaviour_ellipse_set_angle_tiltx):
7823 Changed to take and return angles in degrees represented as
7826 2007-11-27 Emmanuele Bassi <ebassi@openedhand.com>
7828 * clutter/clutter-actor.c (clutter_actor_destroy): Remove the
7829 reference we hold on the actor, as it was preventing the finalization
7830 of every child on the stage.
7832 2007-11-26 Emmanuele Bassi <ebassi@openedhand.com>
7834 * clutter/x11/clutter-stage-x11.c:
7835 (clutter_stage_x11_set_cursor_visible): Restore the XFixes usage,
7836 as it now seems to be have been fixed.
7838 2007-11-26 Emmanuele Bassi <ebassi@openedhand.com>
7840 * clutter/clutter-actor.c:
7841 (clutter_actor_real_show),
7842 (clutter_actor_real_hide): Do not set the MAPPED flag on the actor
7843 if it is a top-level one (like ClutterStage); the backends are
7844 responsible for setting that flag, as it might be the result of an
7845 asynchronous operation (e.g. on X11).
7847 * clutter/eglnative/clutter-stage-egl.c:
7848 (clutter_stage_egl_show),
7849 (clutter_stage_egl_hide): Set/unset the CLUTTER_ACTOR_MAPPED flag
7850 on show and hide respectively.
7852 * clutter/osx/clutter-stage-osx.c:
7853 (clutter_stage_osx_show),
7854 (clutter_stage_osx_hide): Ditto as above.
7856 * clutter/sdl/clutter-stage-sdl.c:
7857 (clutter_stage_sdl_show),
7858 (clutter_stage_sdl_hide): Ditto as above, plus chain up to the
7859 parent class show/hide virtual functions.
7861 * clutter/x11/clutter-event-x11.c (event_translate): Use the MapNotify
7862 and UnmapNotify events to call the X11 stage map/unmap functions.
7864 * clutter/x11/clutter-stage-x11.[ch]:
7865 (clutter_stage_x11_set_fullscreen): Set the fullscreen_on_map flag
7866 with the fullscreen value.
7868 (clutter_stage_x11_map), (clutter_stage_x11_unmap): Set the MAPPED
7869 flag on the stage actor and redraw; also, if the fullscreen_on_map
7870 flag was set, call clutter_stage_fullscreen() as well. (#648)
7872 * tests/Makefile.am:
7873 * tests/test-fullscreen.c: Add a fullscreen test case for checking
7874 whether fullscreen works on every backend/platform.
7876 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
7878 * clutter/clutter-actor.c:
7879 (clutter_actor_real_request_coords),
7880 (clutter_actor_request_coords),
7881 (clutter_actor_class_init): Provide a default ::request_coords()
7882 implementation in ClutterActor and use it to store the bounding
7883 box passed to clutter_actor_request_coords(). This makes the code
7884 more reliable and clean, and avoids a call to the subclass
7885 request_coords() method if the bounding box did not change. Now,
7886 every class overriding ClutterActor::request_coords() *must* chain
7887 up to the parent class method or the bounding box will not be
7888 saved inside the ClutterActor structure.
7890 * clutter/clutter-entry.c:
7891 * clutter/clutter-group.c:
7892 * clutter/clutter-hbox.c:
7893 * clutter/clutter-label.c:
7894 * clutter/clutter-texture.c:
7895 * clutter/clutter-vbox.c: Chain up to the parent class
7896 request_coords() method.
7898 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
7900 * clutter/clutter-event.h: Add more documentation.
7902 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
7904 * tests/test-event.c: Back out an accidental commit.
7906 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
7908 * clutter/clutter-actor.c:
7909 * clutter/clutter-alpha.c:
7910 * clutter/clutter-effect.c:
7911 * clutter/clutter-event.c:
7912 * clutter/clutter-event.h:
7913 * clutter/clutter-group.h:
7914 * clutter/clutter-model.c:,
7915 * clutter/clutter-script.c:
7916 * clutter/clutter-scriptable.h:
7917 * clutter/clutter-stage.c: Documentation fixes.
7919 * clutter/clutter-score.c: Fix implementation.
7921 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
7923 * clutter/x11/clutter-stage-x11.c: Chain up the hide and show
7924 to the parent's implementation.
7926 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
7928 * clutter/clutter-effect.[ch]: Update the effects API to remove
7929 the start value for most of them.
7931 (clutter_effect_move): Make it a simple "move from current
7932 position to new coordinates" effect.
7934 (clutter_effect_path): Rename from clutter_effect_move().
7936 (clutter_effect_rotate): Sync up with the new actor rotation API.
7938 * tests/test-effects.c: Regression test for the effects.
7940 * tests/Makefile.am: Build glue for test-effects
7942 * tests/test-behave.c: Emulate a full ramp by using a looping
7943 timeline changing its direction when reaching the last frame.
7945 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
7947 * clutter/clutter-actor.c (clutter_actor_destroy): Bail out
7948 if clutter_actor_destroy() was called on the stage: the stage
7949 is not for the user to destroy.
7951 * clutter/x11/clutter-backend-x11.c:
7952 * clutter/eglnative/clutter-backend-egl.c:
7953 * clutter/sdl/clutter-backend-sdl.c:
7954 * clutter/osx/clutter-backend-osx.c: Unset the top-level private
7955 flag on the stage when disposing it, so the backends can safely
7956 call clutter_actor_destroy().
7958 * clutter/clutter-private.h: Tweak the private flags accessors,
7959 to avoid the typecheck.
7961 2007-11-22 Emmanuele Bassi <ebassi@openedhand.com>
7963 * clutter/clutter-label.c (clutter_label_new_full): Set the
7964 terminating NULL which was removed when applying patch for
7965 fixing #606. (#645, Gwenole Beauchesne)
7967 2007-11-22 Øyvind Kolås <pippin@o-hand.com>
7969 * clutter/clutter-actor.c: mended a couple of typos in documentation.
7971 2007-11-21 Matthew Allum <mallum@openedhand.com>
7973 * clutter/cogl/gles/cogl.c: (cogl_fog_set):
7974 Minor fixes for fog on GLES.
7976 2007-11-21 Emmanuele Bassi <ebassi@openedhand.com>
7978 * clutter/cogl/cogl.h: Add cogl_fog_set() abstracting the
7979 glFog() functions and enabling the GL_FOG flag.
7981 * clutter/cogl/gl/cogl.c: Add GL implementation of cogl_fog_set().
7983 * clutter/cogl/gles/cogl.c: Add GL/ES implementation of
7986 * clutter.symbols: Add new symbols.
7988 * clutter/clutter-stage.h: Add API to enable depth cueing on
7989 the stage using a linear GL fog, and to set the parameters
7992 * clutter/clutter-stage.c (clutter_stage_paint): Enable the
7993 GL fog if the ClutterStage:use-fog property is true.
7995 * tests/test-depth.c: Test the new stage API.
7997 2007-11-20 Øyvind Kolås <pippin@o-hand.com>
7999 * clutter/clutter-main.c: (event_click_count_generate): generalized
8000 click_count generation code.
8001 * tests/test-events.c: (input_cb): extended test to report click_count
8002 for release and scroll events as well as press events.
8004 2007-11-20 Øyvind Kolås <pippin@o-hand.com>
8006 * clutter/clutter-main.c: (clutter_do_event): avoid computing source
8007 of events if it is already set (for synthetic events.)
8008 * clutter/clutter-event.c: Add more information to the documentation
8009 of clutter_event_put.
8011 2007-11-20 Emmanuele Bassi <ebassi@openedhand.com>
8013 * README: Add diff example command lines for submitting patches.
8015 2007-11-20 Emmanuele Bassi <ebassi@openedhand.com>
8017 * clutter/clutter-actor.c::
8018 * clutter/clutter-behaviour-opacity.c:
8019 * clutter/clutter-clone-texture.c:
8020 * clutter/clutter-effect.c:
8021 * clutter/clutter-label.c: Remove the usage of G_PARAM_CONSTRUCT
8022 without an override for the ::construct virtual function; using
8023 G_PARAM_CONSTRUCT to set the default value of a property is not
8024 the recommended approach; default values are set inside the
8025 instance init function.
8027 2007-11-20 Emmanuele Bassi <ebassi@openedhand.com>
8029 * clutter/clutter-texture.c (clutter_texture_init): Set filter-quality
8030 value to 1, to fix the regression caused when applying the patch for
8033 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
8035 * clutter/clutter-label.[ch]: Fix ClutterLabel size allocation when
8036 no bounding box has been provided, and store the box set by the
8037 user so that it can be reused when recomputing the layout. (#600)
8039 (clutter_label_class_init),
8040 (clutter_label_init): Set the :wrap property default to FALSE.
8042 * clutter/clutter-units.h: Add ClutterUnit-to-PangoUnit conversion
8045 * tests/test-rotate.c: Fix string.
8047 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
8049 * clutter/clutter-behaviour-bspline.c:
8050 * clutter/clutter-behaviour-depth.c:
8051 * clutter/clutter-behaviour-ellipse.c:
8052 * clutter/clutter-behaviour-opacity.c:
8053 * clutter/clutter-behaviour-path.c:
8054 * clutter/clutter-behaviour-rotate.c:
8055 * clutter/clutter-behaviour-scale.c: Fix gtk-doc short description.
8057 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
8059 * clutter.symbols: Update
8061 * clutter/clutter-actor.h: Rename the angle argument for
8062 set_rotationx() to avoid gtk-doc complaining
8064 * clutter/clutter-main.h:
8065 * clutter/clutter-main.c:
8066 (clutter_set_motion_events_enabled): Rename for consistency
8068 (clutter_get_motion_events_frequency),
8069 (clutter_set_motion_events_frequency): Add accessors for the default
8070 motion events deliver frequency.
8072 (clutter_do_event): Throttle down motion events delivery using the
8073 motion events frequency setting, to avoid excessive redraws. (#608)
8075 (clutter_context_get_default): Enable per-actor motion events, at
8078 * tests/test-events.c (red_button_cb):
8079 * tests/test-grab.c (green_press_cb): Update.
8081 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
8083 * clutter/clutter-timeline.c (timeline_timeout_func): Do not emit the
8084 ::new-frame signal twice for the last frame. (#531)
8086 2007-11-19 Øyvind Kolås <pippin@o-hand.com>
8088 * clutter/clutter-actor.[ch]: (clutter_actor_set_rotationx),
8089 (clutter_actor_set_rotation): swapped axis and angle around,
8090 the new argument order is: (axis, angle, x, y, z). Also removed
8091 deprecated rotation functions from header.
8093 Updated use of clutter_actor_set_rotation? in the following files:
8095 * clutter/clutter-behaviour-rotate.c:
8096 * clutter/clutter-effect.c:
8097 * tests/test-actors.c:
8098 * tests/test-project.c:
8100 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
8102 * clutter/clutter-label.[ch]: Constify the color argument
8103 for the ClutterLabel ctor. (#604)
8105 2007-11-18 Matthew Allum <mallum@openedhand.com>
8107 * clutter/clutter-actor.c:
8108 * clutter/clutter-actor.h:
8109 * clutter/clutter-group.c:
8110 * clutter/clutter-main.c:
8111 * clutter/clutter-stage.c:
8112 * tests/test-events.c:
8113 Parent Actors no longer need to be set reactive for reactive
8114 children to get events. Also makes groups now pickable.
8117 * clutter/clutter-texture.c:
8118 Handle case when 1x1 tiled texture is created,
8119 falling 'back' to being non tiled. (#596)
8121 * clutter/eglx/clutter-backend-egl.c:
8122 Call EglTerminate on backend shutdown.
8124 2007-11-18 Emmanuele Bassi <ebassi@openedhand.com>
8126 * clutter.pc.in: Bump up glib-2.0 dependency.
8128 2007-11-18 Emmanuele Bassi <ebassi@openedhand.com>
8130 * clutter/clutter-model.c: Add gtk-doc section for
8133 * clutter/clutter-script.h: Fix argument name.
8135 * clutter/x11/clutter-x11.h:
8136 * clutter/x11/clutter-event-x11.c:
8137 * clutter/x11/clutter-backend-x11.c: Document functions and
8140 2007-11-18 Emmanuele Bassi <ebassi@openedhand.com>
8142 * clutter.symbols: Update exported symbols.
8144 * clutter/clutter-actor.[ch]: Remove clutter_actor_rotate_*
8145 and clutter_actor_get_rx* and provide a simpler rotation API:
8146 clutter_actor_set_rotation() and clutter_actor_get_rotation().
8148 * clutter/clutter-deprecated.h: Deprecate the old rotation API.
8150 * clutter/clutter-behaviour-bspline.c:
8151 * clutter/clutter-behaviour-rotate.c:
8152 * clutter/clutter-effect.c: Update internal usage of the
8155 * tests/test-project.c: Ditto as above.
8157 2007-11-17 Emmanuele Bassi <ebassi@openedhand.com>
8159 Optimise Atoms usage in the X11 and X11-based backends.
8161 * clutter/x11/clutter-backend-x11.c:
8162 (clutter_backend_x11_post_parse): Call XInternAtoms() here and
8163 get all the atoms from X in one call.
8165 * clutter/x11/clutter-backend-x11.h: Store all the atoms inside
8166 the ClutterBackendX11 structure.
8168 * clutter/x11/clutter-event-x11.c:
8169 (xembed_send_message), (xembed_set_info),
8170 (_clutter_backend_x11_events_init),
8171 (set_user_time), (handle_wm_protocols_event),
8172 (handle_xembed_event), (event_translate): Do not cache atoms
8173 or call XInternAtom() directly, and use the atoms off the X11
8174 backend structure instead.
8176 * clutter/x11/clutter-stage-x11.c:
8177 (send_wmspec_change_state), (clutter_stage_x11_set_wm_protocols),
8178 (clutter_stage_x11_set_fullscreen),
8179 (clutter_stage_x11_set_title): Ditto as above.
8181 * clutter/x11/clutter-stage-x11.h: Update the set_wm_protocols()
8182 method to take the X11 stage implementation.
8184 * clutter/glx/clutter-stage-glx.c:
8185 (clutter_stage_glx_realize): Update for the set_wm_protocols()
8188 * tests/test-project.c: (main): Test clutter_stage_set_title().
8190 2007-11-17 Emmanuele Bassi <ebassi@openedhand.com>
8192 * configure.ac: Depend on GLib >= 2.14 because of ClutterModel
8195 2007-11-16 Øyvind Kolås <pippin@o-hand.com>
8197 * clutter/clutter-main.c: (emit_event): renamed from deliver_event,
8198 (emit_pointer_event): utility function to emit pointer event signals
8199 (which takes pointer grab into account).
8200 (emit_keyboard_event): utility function to emit keyboard event signals
8201 (which takes keyboard grab into account).
8202 (clutter_do_event): use the above utility functions, also reindented
8205 2007-11-16 Øyvind Kolås <pippin@o-hand.com>
8207 * tests/test-grab.c: (main): fix use of clutter_actor_set_reactive
8209 2007-11-15 Øyvind Kolås <pippin@o-hand.com>
8211 * clutter/clutter-main.[ch]: added clutter_grab_keyboard,
8212 clutter_ungrab_keyboard and clutter_get_keyboard_grab, in
8213 clutter_do_event deliver keyboard related events only to the
8214 actor with the keyboard grab if a grab exists.
8215 * clutter/clutter-private.h: added keyboard_grab_actor to context.
8216 * tests/test-grab.c: added testing for testing the keyboard grab.
8218 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
8220 * clutter/clutter-texture.c:
8221 (clutter_texture_request_coords), (clutter_texture_class_init),
8222 (clutter_texture_init): Unset :sync-size if explicitly setting
8223 the texture size. (#616)
8225 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
8227 * clutter/clutter-actor.[ch]: Massive API clean-ups. Initial
8228 fixes for bugs #614 and #628.
8230 * clutter/clutter-main.c:
8231 * clutter/clutter-stage.c: Update internal usage of the actor
8234 * tests/test-events.c: Update test suite.
8236 2007-11-15 Øyvind Kolås <pippin@o-hand.com>
8238 * clutter/clutter-main.c: (generate_enter_leave_events),
8239 (clutter_do_event): moved the generation of enter/leave events
8240 to a utility function.
8242 2007-11-15 Neil J. Patel <njp@o-hand.com>
8244 * clutter/clutter-model.c:
8245 Added some more examples to the documentation, plus explained how the
8246 iters work internally.
8248 2007-11-15 Øyvind Kolås <pippin@o-hand.com>
8250 * clutter/clutter-main.[ch]: added clutter_grab_pointer,
8251 clutter_ungrab_pointer and clutter_get_pointer_grab, in
8252 clutter_do_event deliver pointer related events only to the
8253 actor with the pointer grab if a grab exists.
8254 * clutter/clutter-private.h: added pointer_grab_actor to context.
8255 * tests/Makefile.am:
8256 * tests/test-grab.c: added test for testing the pointer grab.
8258 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
8260 * clutter/clutter-timeline.[ch]: Add ClutterTimeline:direction
8261 property, defining the direction (forward or backward) of the
8264 * tests/test-timeline.c: Test the direction property.
8266 * clutter.symbols: Update exported symbols
8268 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
8270 * clutter/clutter-effect.h:
8271 * clutter/clutter-effect.c:
8272 (clutter_effect_template_new_for_duration): Add a simple constructor
8273 for implicitly creating a ClutterTimeline with a given duration.
8275 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
8277 * clutter.symbols: Update with the new public symbols
8279 * clutter/clutter-script.h:
8280 * clutter/clutter-script-private.h:
8281 * clutter/clutter-script.c:
8282 (parse_signals), (json_object_end),
8283 (signal_info_free), (object_info_free): Parse the "signals"
8284 member for GObjects.
8286 (clutter_script_connect_signals),
8287 (clutter_script_connect_signals_full): Add new API for autoconnecting
8288 signal handlers using the UI definition files.
8290 * tests/test-script.c:
8291 * tests/test-script.json: Test signal autoconnection.
8293 2007-11-15 Matthew Allum <mallum@openedhand.com>
8295 * clutter/Makefile.am:
8296 * clutter/eglx/Makefile.am:
8297 * clutter/eglx/clutter-backend-egl.c:
8298 * clutter/eglx/clutter-backend-egl.h:
8299 * clutter/eglx/clutter-eglx.h:
8300 * clutter/eglx/clutter-event-egl.c:
8301 * clutter/eglx/clutter-stage-egl.c:
8302 * clutter/eglx/clutter-stage-egl.h:
8303 * clutter/glx/Makefile.am:
8304 * clutter/glx/clutter-backend-glx.c:
8305 * clutter/glx/clutter-backend-glx.h:
8306 * clutter/glx/clutter-event-glx.c:
8307 * clutter/glx/clutter-glx.h:
8308 * clutter/glx/clutter-stage-glx.c:
8309 * clutter/glx/clutter-stage-glx.h:
8310 * clutter/x11/Makefile.am:
8311 * clutter/x11/clutter-backend-x11-private.h:
8312 * clutter/x11/clutter-backend-x11.c:
8313 * clutter/x11/clutter-backend-x11.h:
8314 * clutter/x11/clutter-event-x11.c:
8315 * clutter/x11/clutter-stage-x11.c:
8316 * clutter/x11/clutter-stage-x11.h:
8317 * clutter/x11/clutter-x11.h:
8318 Create a new X11 backend class of which EGL and GLX 'real' backends
8319 then subclass. Effectively shares all X11 code between both backends
8320 avoids code duplication and brings many missing features to EGL X
8321 backend. Requires some cleanup and testing. (#518)
8323 * clutter/cogl/gles/cogl.c: (cogl_color):
8324 Add define to use color4ub only if configure finds it.
8325 If not fall back to old code.
8328 Drop support for vincent checks.
8330 Specifically check for color4ub call.
8332 2007-11-15 Neil J. Patel <njp@o-hand.com>
8334 * clutter/Makefile.am:
8335 * clutter/clutter-model.c:
8336 * clutter/clutter-model.h:
8337 * clutter/clutter.h:
8338 * tests/Makefile.am:
8339 * tests/test-model.c:
8340 Merged ClutterModel, which closes #443.
8342 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
8344 * clutter/clutter-clone-texture.c (set_parent_texture): Hide the
8345 clone texture only if it was visible, and show it again if we
8346 are adding a visible texture.
8348 * tests/test-script.json: Test the CloneTexture actor.
8350 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
8352 * clutter/clutter-actor.[ch]: Rename clutter_actor_get_id() to
8353 clutter_actor_get_gid().
8355 (clutter_actor_set_parent): Use GUINT_TO_POINTER().
8357 * clutter/clutter-deprecated.h: Add a replacement warning for
8358 clutter_actor_get_id().
8360 * clutter/clutter-texture.c (texture_upload_data): Use
8361 clutter_actor_get_gid(), and don't leak the filename string.
8363 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
8365 * clutter/clutter-scriptable.[ch]: Rename ::set_name and ::get_name
8366 to ::set_id and ::get_id, to avoid potential confusion with the
8367 ClutterActor:name property.
8369 * clutter/clutter-script.h:
8370 * clutter/clutter-script.c (clutter_script_construct_object): Use
8371 clutter_scriptable_set_id().
8373 (clutter_get_script_id): Add a public function to retrieve the ID
8374 used in the UI definition files from an object.
8376 * clutter/clutter-actor.c: Do not set the name of the actor with
8377 the ID set in the UI definition files.
8379 * tests/test-script.c: Test clutter_get_script_id().
8381 * clutter.symbols: Update with the new symbols.
8383 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
8385 * clutter/cutter-deprecated.h: Don't let everyone know from where
8386 we have stolen^Wtaken inspiration for the deprecation warnings.
8388 2007-11-13 Øyvind Kolås <pippin@o-hand.com>
8390 * clutter/clutter-behaviour-bspline.[ch]:
8391 Replaced clutter_behaviour_bspline_append with
8392 clutter_behaviour_bspline_append_knots. Fixes bug #582.
8393 * clutter/clutter-deprecated.h: added deprecation macro reflecting the
8396 2007-11-13 Øyvind Kolås <pippin@o-hand.com>
8398 * clutter/Makefile.am:
8399 * clutter/clutter.h: include clutter-deprecated.h
8400 * clutter/clutter-deprecated.h: added file containing macros that
8401 provides more meaningful errors when compiling clutter using code that
8402 uses deprecated functions.
8404 2007-11-13 Øyvind Kolås <pippin@o-hand.com>
8406 Renamed all properties of behaviours (and related
8407 functions/variables/parameters)
8408 to match the pattern something-start, something-end. Fixes bug #577.
8410 * clutter/clutter-behaviour-depth.c:
8411 * clutter/clutter-behaviour-depth.h:
8412 * clutter/clutter-behaviour-ellipse.c:
8413 * clutter/clutter-behaviour-ellipse.h:
8414 * clutter/clutter-behaviour-path.c:
8415 * clutter/clutter-behaviour-rotate.c:
8416 * clutter/clutter-behaviour-rotate.h:
8417 * clutter/clutter-behaviour-scale.c:
8418 * clutter/clutter-behaviour-scale.h:
8419 * clutter/clutter-effect.c:
8420 * clutter/clutter-effect.h:
8421 * clutter/clutter-script.c:
8422 * tests/test-depth.c:
8423 * tests/test-script.c:
8425 2007-11-06 Øyvind Kolås <pippin@o-hand.com>
8427 * clutter/clutter-event.h: made ClutterEventAny have a source field,
8428 rearanged other structs to have source in the same position.
8429 * clutter/clutter-event.c: (clutter_event_get_source): modified to use
8431 (clutter_event_free): removed unused variable.
8432 * clutter/clutter-main.c: (deliver_event), (clutter_do_event): reduced
8433 amount of code. As well as deliver button-release events to the stage.
8435 2007-11-08 Rob Bradford <rob@openedhand.com>
8437 * clutter/glx/clutter-glx.h:
8438 Include <X11/Xutil.h> needed for the definition of XVisualInfo.
8440 2007-11-08 Rob Bradford <rob@openedhand.com>
8442 * clutter/cogl/gles/cogl.c: (cogl_color):
8443 Switch over to using glColor4ub in the GLES backend. It's available in
8444 the header file but missing in the reference manual.
8446 2007-11-07 Emmanuele Bassi <ebassi@openedhand.com>
8448 * clutter/clutter-actor.[ch]: Fix the declaration of the
8449 class handlers for the ::captured-event, ::enter-event and
8450 ::leave-event signals; the function signatures were missing
8451 the return value the signals marshallers were expecting, and
8452 their names weren't respecting the convention for event-related
8455 2007-11-06 Tomas Frydrych <tf@o-hand.com>
8457 * clutter/clutter-fixed.h:
8458 Added CLUTTER_SQRTI_ARG_MAX, CLUTTER_SQRTI_5_PERCENT,
8459 CLUTTER_SQRTI_10_PERCENT expressing clutter_sqrti limits.
8460 Stripped trailing whitespace.
8462 * clutter/clutter-fixed.c:
8464 Updated documentation, stripped trailing whitespace.
8466 * clutter/clutter-behaviour-path.c:
8468 Use clib sqrt if clutter_sqrti() precission would be worse than
8470 Stripped trailing whitespace.
8472 2007-11-06 Emmanuele Bassi <ebassi@openedhand.com>
8474 * clutter/clutter-layout.h: Add commodity macros to test for
8475 a specific layout flag in one line.
8477 2007-11-06 Emmanuele Bassi <ebassi@openedhand.com>
8479 * clutter/clutter-box.c (clutter_box_dispose): Call unparent()
8480 on the children, instead of destroy(), to avoid a double free
8481 and a crash when destroying a ClutterBox.
8483 2007-11-06 Emmanuele Bassi <ebassi@openedhand.com>
8485 * clutter/clutter-label.c: Break the references in ::dispose,
8486 and free the resources in ::finalize.
8488 2007-11-05 Øyvind Kolås <pippin@o-hand.com>
8490 * clutter/clutter-container.[ch]: removed find_child_by_id method
8491 from interface (and all implementations of it) since this
8492 functionality is now implemented using a global hash.
8493 * clutter/clutter-box.c:
8494 * clutter/clutter-group.c:
8496 2007-11-01 Emmanuele Bassi <ebassi@openedhand.com>
8498 * clutter/clutter-script.c: Do not keep ownership of the
8501 2007-10-31 Øyvind Kolås <pippin@o-hand.com>
8503 * clutter/clutter-main.c: (_clutter_do_pick): disable dithering
8504 when painting in pick mode.
8506 2007-10-31 Matthew Allum <mallum@openedhand.com>
8508 * clutter/clutter-score.c:
8509 Various minor improvements to ClutterScore.
8511 2007-10-30 Emmanuele Bassi <ebassi@openedhand.com>
8513 * clutter/clutter-layout.c: Fix documentation, with regards to
8514 the containers handling of the children implementing the
8515 ClutterLayout interface.
8517 2007-10-29 Emmanuele Bassi <ebassi@openedhand.com>
8520 * clutter/cogl/gl/cogl-defines.h.in: The OS X backend has a funny
8521 OpenGL header location, so it basically did break every application
8522 including clutter/cogl.h because the GL header inclusion depended
8523 on symbols defined into Clutter's config.h. Now, we define the
8524 GL header into the configure template and use it to create the
8525 cogl-defines.h file cogl.h includes.
8527 2007-10-29 Emmanuele Bassi <ebassi@openedhand.com>
8529 * clutter/json/json-parser.c: Enable parsing of negative numbers;
8530 GScanner splits negative numbers into two tokens, so we need to
8533 2007-10-29 Emmanuele Bassi <ebassi@openedhand.com>
8535 * clutter/clutter-script.c: Add the :filename and :filename-set
8536 properties, to retrieve the path of the currently parsed file (if
8537 :filename-set is TRUE) from the ClutterScriptable implementations.
8539 2007-10-28 Matthew Allum <mallum@openedhand.com>
8541 * clutter/clutter-effect.c:
8542 Small doc fix (#584)
8544 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
8546 * clutter/json/json-parser.c:
8547 (json_scanner_msg_handler): Set the GError to be returned by
8548 the parsing functions into the GScanner error message handler.
8550 (json_parser_object): Return the symbol token in case we have
8551 a parse error after the member name.
8553 (json_parser_load_from_data): Propagate the error set in the
8554 message handler, if any.
8556 * clutter/json/json-node.c (json_node_free): Unref the objects
8557 only if are set, to avoid a couple of needless criticals we
8560 * tests/test-script.json: More properties.
8562 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
8564 * clutter/clutter-script.[ch]: Slight API change in the
8565 clutter_script_get_objects() function: now it takes
8566 object name/object return location pairs and returns the
8567 number of objects found and returned.
8569 * tests/test-script.c: Exercise the clutter_script_get_objects()
8572 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
8574 * clutter/clutter-rectangle.c (clutter_rectangle_paint): Use
8575 CGL_ENABLE_BLEND flag instead of CGL_BLEND value. (#580,
8578 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
8580 * clutter/clutter-color.c (clutter_color_to_string): Update the
8581 documentation for the format of the returned string, and remove
8582 the note: now clutter_color_parse() can parse the string this
8585 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
8587 * clutter/pango/pangoclutter-render.c: Last usage of guint
8588 replaced with COGLuint. (Tommi Komulainen)
8590 2007-10-26 Matthew Allum <mallum@openedhand.com>
8592 * clutter/clutter-texture.c:
8593 * clutter/cogl/cogl.h:
8594 * clutter/cogl/gl/cogl-defines.h:
8595 * clutter/cogl/gles/cogl-defines.h:
8596 * clutter/cogl/gl/cogl.c:
8597 * clutter/cogl/gles/cogl.c:
8598 Switch from use of guint to COGLuint. Avoids problems when
8599 guint != GLuint on some platforms, i.e OSX.
8600 (Tommi Komulainen, #525, #523)
8602 * clutter/Makefile.am:
8603 * clutter/osx/Makefile.am:
8604 * clutter/osx/clutter-backend-osx.c:
8605 * clutter/osx/clutter-backend-osx.h:
8606 * clutter/osx/clutter-event-osx.c:
8607 * clutter/osx/clutter-osx.h:
8608 * clutter/osx/clutter-stage-osx.c:
8609 * clutter/osx/clutter-stage-osx.h:
8611 Add initial Cocoa/OSX Backend (by Tommi Komulainen, see #526)
8613 2007-10-26 Emmanuele Bassi <ebassi@openedhand.com>
8615 * clutter/clutter-entry.c: Add a :x-align property for aligning
8616 the text in the entry, in case the actor is wider than the
8619 2007-10-26 Emmanuele Bassi <ebassi@openedhand.com>
8621 * clutter/clutter-main.c: Add a --clutter-default-fps run-time
8622 switch and CLUTTER_DEFAULT_FPS environment variable support for
8623 setting the default frame-rate at run-time.
8625 2007-10-26 Emmanuele Bassi <ebassi@openedhand.com>
8627 * clutter/clutter-script.h:
8628 * clutter/clutter-script.c: Add a ::get_type_from_name() virtual
8629 function for bindings to override. The current implementation
8630 calls g_type_from_name() and our lazy class resolver.
8632 * clutter.symbols: Update.
8634 * doc/reference/clutter-sections.txt: Update.
8636 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8638 * clutter/clutter-behaviour-path.c: Reverse the list of
8639 parsed knots, to preserve the real ordering after prepending
8640 them (thanks to Øyvind for spotting this).
8642 * clutter/clutter-behaviour-bspline.c: Ditto as above.
8644 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8646 * clutter/clutter-script-parser.c: Unset the GValue when
8647 getting a ClutterUnit from a JSON node.
8649 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8651 * clutter/clutter-behaviour-bspline.c: Implement the
8652 ClutterScriptableIface to parse the custom "knots" property.
8654 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8656 * tests/test-script.c:
8657 * tests/test-script.json: Rejig the test case and add a
8658 path behaviour to test the knot parsing code.
8660 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8662 * clutter/cogl/cogl.h: Do not include <clutter/clutter.h>.
8664 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8666 * clutter/clutter-behaviour-path.c: Implement the
8667 ClutterScriptableIface to parse the custom "knots" property.
8669 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8671 * clutter/clutter-texture.c (clutter_texture_set_property): Do
8672 not try to set NULL pixbufs.
8674 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8676 * clutter/clutter-actor.c: Implement part of the ClutterScriptable
8677 interface, using the ClutterActor API to set and get the name
8680 (clutter_geometry_copy), (clutter_geometry_free): Use
8681 the slice allocator to avoid fragmentation when setting
8682 properties and emitting signals (that is: when packing
8683 boxed types into GValues).
8685 (clutter_actor_box_copy), (clutter_actor_box_free),
8686 (clutter_vertex_copy), (clutter_vertex_free): Ditto.
8688 * clutter/clutter-actor.h:
8689 * clutter/clutter-actor.c:
8690 (clutter_actor_push_transform_child),
8691 (clutter_actor_pop_transfomr_child): Simple wrappers around
8692 COGL API, which avoid including clutter/cogl.h when writing
8693 container actors outside Clutter.
8695 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8697 * clutter/Makefile.am:
8698 * clutter/clutter.h:
8699 * clutter/clutter-scriptable.[ch]: Add the ClutterScriptable
8700 interface; by implementing this interface, a class can
8701 override the UI definition parsing and transform complex data
8702 types into GObject properties, or allow custom properties.
8704 * clutter/clutter-script.c:
8705 * clutter/clutter-script-parser.c:
8706 * clutter/clutter-script-private.h: Rearrange the code and
8707 use the ClutterScriptable interface to parse and build the
8708 custom properties. This cleans up the code and also it makes
8709 it more reliable (the complex type parsing is now done using
8710 the target type and not just the name of the property).
8712 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
8714 * clutter/clutter-json.h: Header for including the JSON
8715 parsing and data types.
8717 * clutter/json/json-types.h: Add JSON_NODE_VALUE_TYPE() macro.
8719 * clutter/json/Makefile.am: Install the JSON headers into a
8720 private location. This might change in the future, and might
8721 also cause collisions if you're using JSON-GLib and Clutter
8722 at the same time, so be warned.
8724 2007-10-22 Emmanuele Bassi <ebassi@openedhand.com>
8726 * clutter/clutter-label.c (clutter_label_request_coords): If
8727 we get a size requisition, and we have ellipsization active,
8728 check if we are getting less space than what the layout needs
8729 and recompute the width.
8731 2007-10-22 Emmanuele Bassi <ebassi@openedhand.com>
8733 * clutter/clutter-color.c (clutter_color_to_string): Change
8734 the print format to "%02x%02x%02x%02x" because we use guint8
8735 for each component, not guint16.
8737 2007-10-19 Emmanuele Bassi <ebassi@openedhand.com>
8739 * clutter/clutter-entry.c (clutter_entry_paint): Fixed off by
8740 one error. (#566, Gwenole Beauchesne)
8742 2007-10-18 Øyvind Kolås <pippin@o-hand.com>
8744 * clutter/clutter-timeline.c: (clutter_timeline_set_duration):
8745 rearranged arithemetic to allow specifying duration with sub second
8746 precision (also enables durations smaller than one second).
8748 2007-10-18 Emmanuele Bassi <ebassi@openedhand.com>
8750 * clutter/clutter-script-private.h:
8751 * clutter/clutter-script.h:
8752 * clutter/clutter-script.c: Allow id-less objects: as long
8753 as they have a "type" member, a unique id will be provided.
8755 (json_object_end): Add merge id to the object information
8758 (apply_behaviours), (add_children): Keep the unresolved
8761 (construct_stage), (clutter_script_construct_object): If an
8762 object has unresolved children or behaviours try resolving
8763 them when we ask for it.
8765 (json_parse_end), (clutter_script_ensure_objects): Ensure
8766 that the objects are fully constructed as best as we can when
8769 (object_info_free), (remove_by_merge_id):
8770 (clutter_script_unmerge_objects): Remove objects under the
8771 same merge id returned by the loading functions. (Fixes
8774 * test/test-script.c:
8775 * test/test-script.json: Test unresolved merging and unmerging
8778 2007-10-18 Matthew Allum <mallum@openedhand.com>
8780 * clutter/clutter-score.c:
8781 * clutter/clutter-score.h:
8782 * tests/test-score.c:
8783 Implement more ClutterScore functionality.
8785 2007-10-17 Emmanuele Bassi <ebassi@openedhand.com>
8787 * clutter/clutter-actor.c:
8788 (clutter_actor_set_property), (clutter_actor_get_property),
8789 (clutter_actor_class_init): Add the :reactive property, to
8790 control reactiveness using the UI definition files.
8792 (clutter_actor_reparent): Do not assume the parent is a
8793 ClutterContainer, and call the container API only if needed.
8795 (clutter_actor_destroy): Remove from the parent if needed,
8796 just like the documentation says.
8798 2007-10-16 Øyvind Kolås <pippin@o-hand.com>
8800 * clutter/pango/pangoclutter-render.c: (tc_get): Provide for blank
8801 rows/columns of pixels between adjecant glyphs in the texture cache to
8802 avoid bilinear interpolation spillage at edges of glyphs.
8804 2007-10-16 Øyvind Kolås <pippin@o-hand.com>
8806 * clutter/clutter-main.c: (clutter_do_event): allow motion events
8807 only delivered to stage to be caught in the capture phase as well
8808 as the bubbling phase.
8810 2007-10-16 Emmanuele Bassi <ebassi@openedhand.com>
8812 * clutter/json/json-object.c: Automatically transform every
8813 delimiter into an underscore.
8815 * clutter/clutter-script.c: Implement the "parent_texture"
8816 property translation for ClutterCloneTextures, using the
8817 passed id of the parent texture.
8819 2007-10-16 Emmanuele Bassi <ebassi@openedhand.com>
8821 * clutter/clutter-timeline.[ch]: Added ClutterTimeline:duration,
8822 a property for setting the duration of a timeline in milliseconds.
8823 The property comes with accessors and a new constructor. The
8824 frame rate used is the default value.
8826 * clutter/clutter-private.h:
8827 * clutter/clutter-main.[ch]: Add clutter_get_default_frame_rate()
8828 and clutter_set_default_frame_rate(); these two functions control
8829 the default frame rate to be used when creating timelines. Currently
8830 is set to 60 frames-per-second.
8832 2007-10-16 Tomas Frydrych <tf@o-hand.com>
8835 Added MSVC project files.
8837 2007-10-16 Emmanuele bassi <ebassi@openedhand.com>
8839 * clutter/clutter-color.c: Copy the alpha when shading.
8841 2007-10-16 Tomas Frydrych <tf@o-hand.com>
8844 Added a bunch of missing symbols.
8846 * clutter/clutter-script.c:
8848 Use g_slice_new0 instead of g_slice_new to avoid passing
8849 garbage to functions.
8851 * tests/test-threads.c:
8852 Replaced non-portable sleep() with g_usleep().
8854 2007-10-15 Tomas Frydrych <tf@o-hand.com>
8856 * clutter/cogl/gl/cogl-defines.h:
8857 * clutter/cogl/gl/cogl.c:
8858 Fixup GL include for windows.
8860 2007-10-15 Matthew Allum <mallum@openedhand.com>
8862 * clutter/clutter-actor.c:
8863 More events documentation.
8865 * clutter/clutter-event.c:
8866 * clutter/clutter-event.h:
8867 Add synthetic flag and make put_event use it
8868 (via modded patch from pippin)
8870 * clutter/clutter-main.c: (clutter_do_event):
8871 dont use put event anymore when pushing enter/leave events.
8873 2007-10-15 Emmanuele Bassi <ebassi@openedhand.com>
8875 * clutter/pango/Makefile.am: Compile with the debug flags, if
8878 2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
8880 * clutter.symbols: Remove non-public symbols.
8882 2007-10-12 Tomas Frydrych <tf@o-hand.com>
8885 A list of public symbols, one per line; semi-autogenerated, so
8886 might not be complete -- PLEASE when adding new public APIs, add
8887 the function name to this file.
8889 2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
8891 * clutter/clutter-actor.c: Add a :depth property, so we can
8892 set the initial depth of an actor inside the UI definition
8895 2007-10-12 Tomas Frydrych <tf@o-hand.com>
8897 * tests/test-actors.c:
8898 When using MSVC, define _USE_MATH_DEFINES before including
8899 math.h, otherwise constants like M_PI will not be defined.
8901 2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
8903 * clutter/clutter-script.c (construct_timline),
8904 (parse_member_to_property): Transfer ownership of the
8905 implicit timelines to the behaviour, so that they get
8906 unreferenced when the behaviour is destroyed.
8908 (parse_member_to_property): Reverse the list of children
8911 2007-10-12 Tomas Frydrych <tf@o-hand.com>
8915 * clutter/clutter-private.h:
8916 Bracket #include "unistd.h" with #ifdef HAVE_UNISTD_H
8918 * clutter/clutter-fixed.c:
8919 Use "", not <> for inclusion of local files.
8921 (clutter_sqrtx): forward declare local variables.
8923 * clutter/clutter-debug.h:
8924 Added non-gcc (c99) implementation of variadic debug macros for
8925 when not compiling with gcc.
8927 * clutter/pango/pangoclutter-render.c:
8928 Fixed some strange uses of CLUTTER_NOTE() + stripped trailing
8931 2007-10-12 Tomas Frydrych <tf@o-hand.com>
8933 * clutter/clutter-actor.c:
8934 * clutter/clutter-backend.c:
8935 * clutter/clutter-behaviour-depth.c:
8936 * clutter/clutter-box.c:
8937 * clutter/clutter-clone-texture.c:
8938 * clutter/clutter-container.c:
8939 * clutter/clutter-entry.c:
8940 * clutter/clutter-feature.c:
8941 * clutter/clutter-fixed.c:
8942 * clutter/clutter-group.c:
8943 * clutter/clutter-hbox.c:
8944 * clutter/clutter-label.c:
8945 * clutter/clutter-layout.c:
8946 * clutter/clutter-media.c:
8947 * clutter/clutter-rectangle.c:
8948 * clutter/clutter-score.c:
8949 * clutter/clutter-script.c:
8950 * clutter/clutter-stage.c:
8951 * clutter/clutter-texture.c:
8952 * clutter/clutter-timeline.c:
8953 * clutter/clutter-timeout-pool.c:
8954 * clutter/clutter-vbox.c:
8955 * clutter/cogl/gl/cogl.c:
8956 * clutter/cogl/gles/cogl.c:
8957 * clutter/eglnative/clutter-backend-egl.c:
8958 * clutter/eglnative/clutter-event-egl.c:
8959 * clutter/eglnative/clutter-stage-egl.c:
8960 * clutter/eglx/clutter-backend-egl.c:
8961 * clutter/eglx/clutter-event-egl.c:
8962 * clutter/eglx/clutter-stage-egl.c:
8963 * clutter/glx/clutter-event-glx.c:
8964 * clutter/json/json-array.c:
8965 * clutter/json/json-generator.c:
8966 * clutter/json/json-node.c:
8967 * clutter/json/json-object.c:
8968 * clutter/json/json-parser.c:
8969 * clutter/sdl/clutter-backend-sdl.c:
8970 * clutter/sdl/clutter-event-sdl.c:
8971 * clutter/sdl/clutter-stage-sdl.c:
8973 Fixedup config.h inclusion (must always be bracketed with #ifdef
8976 2007-10-11 Tomas Frydrych <tf@o-hand.com>
8978 * clutter/clutter-entry.c:
8979 Avoid using C++ reserverd words to name variables.
8981 2007-10-11 Øyvind Kolås <pippin@o-hand.com>
8983 Improve the quality of text when the scale it is shown at screen is
8984 smaller than the original, seems to work well down to about a scale
8987 * clutter/pango/pangoclutter-fontmap.c:
8988 (pango_clutter_font_map_default_substitute): turn off hinting.
8989 * clutter/pango/pangoclutter-render.c: request linear filtering
8990 instead of nearest neighbour when scaling down.
8991 * tests/test-text.c: replaced test with a a test that renders a sample
8992 grid with various pixel sizes and scales for visual inspection of
8993 text rendering quality.
8995 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
8997 * clutter/glx/clutter-backend-glx.c: Fix documentation of the
8998 filter function API.
9000 * clutter/clutter-score.c:
9001 * clutter/clutter-effect.c:
9002 * clutter/clutter-actor.c: Documentation fixes.
9004 * clutter/clutter-actor.h: Automatically typecast to ClutterActor
9005 when setting/checking flags.
9007 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
9009 * clutter/clutter-actor.c: Beautify the ClutterActor documentation.
9011 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
9013 * clutter/clutter-actor.c: Remove the ::event-after signal:
9014 three event layers to connect to seems a bit overkill.
9016 (clutter_actor_event): Return FALSE, not TRUE by default,
9017 as g_signal_emit() will change the return value if no
9018 handlers are connected
9020 * clutter/clutter-stage.c: Emit ::notify when we change
9021 the fullscreen property.
9023 * clutter/clutter-script.c: Add more documentation for the
9024 definition format and keywords.
9026 (translate_property): Collapse the G_TYPE_ENUM and G_TYPE_FLAGS
9027 cases into one, to simplify the code.
9029 * tests/test-script.c: Test enumeration conversion by using
9030 a value different from the default.
9032 2007-10-10 Matthew Allum <mallum@openedhand.com>
9034 * clutter/clutter-actor.c:
9035 * clutter/clutter-actor.h:
9036 * clutter/clutter-event.c:
9037 * clutter/clutter-main.c:
9038 * tests/test-events.c:
9039 Add basic W3 DOM event 'capture' like functionality.
9041 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
9043 * clutter/clutter-script-private.h:
9044 * clutter/clutter-script.c: Parse flags like we parse enums.
9046 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
9048 * clutter/json/json-types.h:
9049 * clutter/json/json-array.c:
9050 * clutter/json/json-object.c: Resync with the upstream copy
9051 of JSON-GLib; add json_object_remove_member() and
9052 json_array_remove_element() and fix the g_hash_table_get_keys()
9053 replacement for GLib 2.12.
9055 * clutter/clutter-script.c: Clean up the complex properties
9058 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
9060 * clutter/clutter-script.c (json_object_end): Add "type_func"
9061 to the list of attributes we skip.
9063 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
9065 * clutter/json/json-parser.c: Use the commodity JsonNode API
9066 and accept bare values as root nodes.
9068 * clutter/clutter-script-private.h:
9069 * clutter/clutter-script.c: Unreference the created objects
9070 only if they are top-levels, like ClutterBehaviour and
9071 ClutterTimelines. Actors have floating references, so we
9072 just transfer ownership to their containers, and the stage
9073 is owned by the backend. Add the "type_func" key to the
9074 object definition, so the user can supply its own GType
9075 function if the class name doesn't follow the GObject rules.
9076 Document the ClutterScript public API.
9078 2007-10-10 Matthew Allum <mallum@openedhand.com>
9080 * clutter/clutter-actor.c:
9081 * clutter/clutter-actor.h:
9082 Add missing enter/leave event signals
9084 * clutter/clutter-main.c: (clutter_do_event):
9085 Set time in crossing events.
9086 Protect against do_pick() failing.
9088 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
9090 * clutter/clutter-script.c (resolve_alpha_func): Fix the
9091 ClutterAlphaFunc resolution function.
9093 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
9095 * tests/Makefile.am:
9096 * tests/test-script.c:
9097 * tests/test-script.json: Move part of the UI definition into
9098 its own file and exercise clutter_script_load_from_file().
9100 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
9102 * clutter/clutter-script.c (clutter_script_get_object): Construct
9103 the requested object if it hasn't been already. This allows
9104 referencing objects within the same snippet.
9106 * tests/test-script.c: Declare a timeline and use it inside
9107 multiple behaviours; apply multiple behaviours to various
9108 actors, then retrieve the timeline to start it when the test
9111 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
9113 * clutter/clutter-script-private.h:
9114 * clutter/clutter-script.c: Allow applying behaviours directly
9115 inside the UI definition data.
9117 * tests/test-script.c: Test the "behaviours" member.
9119 2007-10-09 Rob Bradford <rob@openedhand.com>
9121 * clutter/eglnative/clutter-backend-egl.c:
9122 (clutter_backend_egl_dispose):
9123 Call eglTerminate() on the display when the backend is disposed of.
9125 * clutter/eglnative/clutter-stage-egl.c:
9126 (clutter_stage_egl_realize):
9127 Don't use the createNativeWindow() call, it's not generic EGL.
9129 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
9131 * clutter/clutter-script-private.h:
9132 * clutter/clutter-script.h:
9133 * clutter/clutter-script.c: Add licensing information to
9134 the newly added files.
9136 * clutter/clutter-script.c: Support creating behaviours with
9137 ClutterScript. ClutterAlpha objects are implicit, but
9138 timelines can be both explicit objects using their id or
9139 implicit objects. Make the property resolution and translation
9140 more robust. Support the pixbuf property.
9142 * tests/test-script.c: Test the newly added features.
9144 * docs/reference/clutter-docs.sgml:
9145 * docs/reference/clutter-sections.txt: Add ClutterScript.
9147 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
9149 * clutter/clutter-fixed.h: Add deprecation guards around
9150 CLUTTER_FIXED_INT().
9152 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
9154 * clutter/clutter-script.c: Parse ClutterMargin and ClutterPadding
9155 properties from arrays or integers (assume pixels).
9157 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
9159 * clutter/clutter-script-private.h:
9160 * clutter/clutter-script.c: Allow defining childrens for every
9161 container actor inside the UI definition files.
9163 2007-10-08 Matthew Allum <mallum@openedhand.com>
9165 * clutter/clutter-actor.c:
9166 * clutter/clutter-actor.h:
9167 * clutter/clutter-private.h:
9168 * clutter/clutter-main.c:
9169 Add a hash to global clutter context mapping all parented actor
9171 Add clutter_get_actor_by_id() call.
9172 Convert picking machinery to use above.
9173 (performance/simpler composite actor creation)
9175 * clutter/clutter-stage.c: (clutter_stage_fullscreen),
9176 (clutter_stage_unfullscreen), (clutter_stage_event):
9177 Only set the fullscreen property on stage state fullscreen event(#545)
9178 Experimental as could be painful to implement on non X backends.
9180 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
9182 * clutter/clutter-script.c (json_parse_end):
9183 * clutter/json/json-object.c (json_object_get_members): Replace
9184 the GLib 2.14 API with the equivalent code for GLib < 2.14.
9186 * configure.ac: Revert the dependency bump.
9188 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
9190 Initial implementation of the UI definition files. (#424)
9192 * clutter/json/Makefile.am:
9193 * clutter/json/*.[ch]: In-tree copy of JSON-GLib, a GLib-based
9194 JSON parser/generator library. We use it in-tree because we might
9195 need to change the API. Ideally, we'd depend on it.
9197 * clutter/clutter.h:
9198 * clutter/clutter-script-private.h:
9199 * clutter/clutter-script.[ch]: ClutterScript, the scenegraph
9200 generator class. It parses JSON streams in form of buffers and
9201 files and builds the scene.
9203 * clutter/clutter-debug.h:
9204 * clutter/clutter-main.c: Add a "script" debug flag
9206 * clutter/Makefile.am: Build glue.
9208 * tests/Makefile.am:
9209 * tests/test-script.c: Add a test case for the ClutterScript.
9211 * configure.ac: Depend on GLib 2.14, so we can use the
9212 g_hash_table_get_key() and g_hash_table_get_values() functions
9213 for the time being; we can probably reimplement those, but we
9214 are going to need 2.14 anyway if we are going to implement a
9215 list model using GSequence.
9217 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
9219 * tests/test-behave.c: Use the right return type for the
9222 2007-10-03 Matthew Allum <mallum@openedhand.com>
9224 * clutter/clutter-actor.c:
9225 * clutter/clutter-event.c:
9226 * clutter/clutter-event.h:
9227 * clutter/clutter-main.c:
9228 * clutter/clutter-private.h:
9229 * clutter/eglnative/clutter-event-egl.c:
9230 * clutter/eglx/clutter-event-egl.c:
9231 * clutter/glx/clutter-event-glx.c:
9232 * clutter/sdl/clutter-event-sdl.c:
9233 Remove seperate double/triple click events and replace with
9234 a click_count member.
9235 Move calculating click counts from backend to do_event()
9236 Initial implementation of ENTER/LEAVE events.
9238 * tests/test-events.c:
9239 Add code to test above.
9241 * tests/test-behave.c:
9242 Sync with newer API.
9244 * clutter/clutter-score.c:
9247 2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
9249 * clutter/clutter-fixed.h: Add CLUTTER_FIXED_TO_INT() and
9250 deprecate CLUTTER_FIXED_INT(), for symmetry with
9251 CLUTTER_FIXED_FROM_INT().
9253 * clutter/clutter-alpha.c:
9254 * clutter/clutter-behaviour-depth.c:
9255 * clutter/clutter-behaviour-ellipse.c:
9256 * clutter/clutter-behaviour-path.c:
9257 * clutter/clutter-fixed.h: Use CLUTTER_FIXED_TO_INT().
9259 2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
9261 * clutter/clutter-actor.c (clutter_actor_get_size): Implement
9262 get_size() as a wrapper around clutter_actor_query_coords()
9263 instead of calling g_object_get() twice.
9265 (clutter_actor_init): Initialise the box in one call.
9267 2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
9269 * clutter/clutter-actor.[ch]: Remove the ::event-after signal
9270 class handler, as it's not meant to be overridden by sub-classes.
9272 (clutter_actor_class_init):
9273 Make every event-related signal return a boolean: return TRUE
9274 in a signal handler to block the emission. The value is accumulated
9275 automatically by the signal API.
9277 (clutter_actor_event): If ::event returns TRUE, skip to emitting
9278 ::event-after. Return the value accumulated by the signal emission
9281 * clutter/clutter-private.h: Rename _clutter_boolean_accumlator().
9283 * clutter/clutter-main.c (clutter_do_event): If clutter_actor_event()
9284 returns TRUE then stop the event emission chain from child to parent.
9286 * clutter/clutter-stage.c (clutter_stage_event): Behave like
9287 clutter_actor_event().
9289 (clutter_stage_get_key_focus),
9290 (clutter_stage_set_key_focus): Avoid a nasty circular reference
9291 issue: if the actor passed to set_key_focus is NULL then the stage
9294 * tests/test-events.c: Update the events test with the API
9297 2007-10-01 Tomas Frydrych <tf@openedhand.com>
9299 * clutter/clutter-actor.c:
9300 (clutter_actor_set_scale_with_gravityx):
9301 Use CLUTTER_QMUL for better precission (#532, patch by Gwenole
9304 * clutter/clutter-color.c:
9305 (clutter_color_to_hlsx):
9306 Added missing CLUTTER_INT_TO_FIXED conversion (#544, patch by Neil
9309 2007-10-01 Neil J. Patel <njp@o-hand.com>
9311 Patch by: Tommi Komulainen <tommi.komulainen@iki.fi>
9313 * clutter/clutter-entry.c: (clutter_entry_delete_text):
9314 Fix characters vs. bytes inconsistency (#520).
9316 2007-09-30 Matthew Allum <mallum@openedhand.com>
9318 * clutter/clutter-event.h:
9319 Removed unused POINTER_ENTER and POINTER_LEAVE states. (#546)
9320 * clutter/clutter-stage.c: (clutter_stage_fullscreen),
9321 (clutter_stage_unfullscreen):
9322 Only Change fullscreen prop if the backend implements fullscreen
9325 2007-09-28 Øyvind Kolås <pippin@openedhand.com>
9327 * clutter/clutter-container.[ch]: added
9328 clutter_container_find_child_by_name.
9330 2007-09-28 Øyvind Kolås <pippin@openedhand.com>
9332 * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize):
9333 removed unused variable perspective.
9334 * tests/test-events.c: (main): added CLUTTER_STAGE() cast.
9335 * tests/test-threads.c: include unistd.h for sleep().
9337 2007-09-28 Øyvind Kolås <pippin@openedhand.com>
9339 * clutter/clutter-label.c: (clutter_label_ensure_layout): avoid
9340 calling pango_layout_set_text|markup before we've got any text.
9342 2007-09-27 Matthew Allum <mallum@openedhand.com>
9344 * tests/test-scale.c:
9345 Fix out of about array addressing (#522, Tommi Komulainen)
9347 2007-09-27 Matthew Allum <mallum@openedhand.com>
9349 * clutter/clutter-clone-texture.c:
9350 * clutter/clutter-rectangle.c:
9351 Include "config.h" in all c files (#524, Tommi Komulainen)
9353 2007-09-27 Matthew Allum <mallum@openedhand.com>
9357 * clutter/clutter-behaviour-path.c: (path_alpha_to_position)
9358 Fix uninitialized variable (#480, Gwenole Beauchesne)
9360 2007-09-27 Matthew Allum <mallum@openedhand.com>
9362 * clutter/clutter-event.c:
9363 * clutter/clutter-event.h:
9364 * clutter/clutter-main.c:
9365 Further event tweaks;
9366 - Ref the event actor source
9367 - Protect against off stage events (button releases) (#511)
9368 - Move more into ClutterEventAny
9369 - Add a click count to button event (as yet unused)
9372 * clutter/clutter-actor.c:
9373 Make scale x/y a property.
9375 * clutter/clutter-private.h:
9376 Remove _clutter_actor_apply_modelview*
9378 * clutter/eglx/clutter-backend-egl.c:
9381 * clutter/eglx/clutter-stage-egl.c:
9382 * clutter/glx/clutter-stage-glx.c:
9383 * clutter/sdl/clutter-stage-sdl.c:
9384 Avoid setting viewport directly, but set sync flag.
9386 * clutter/pango/pangoclutter-render.c: (draw_glyph):
9389 * clutter/Makefile.am:
9390 * tests/Makefile.am:
9391 * tests/test-score.c
9392 * clutter/clutter.h:
9393 * clutter/clutter-score.h:
9394 * clutter/clutter-score.c:
9395 Add very initial (broken) ClutterScore implementation.
9397 2007-09-25 Ross Burton <ross@openedhand.com>
9401 * clutter/clutter-group.c:
9402 Optimise sort_z_order.
9404 2007-09-17 Emmanuele Bassi <ebassi@openedhand.com>
9408 * clutter/eglnative/clutter-event-egl.c:
9409 Flag every device click after the first as motion events
9410 instead of button presses. (#505, Shreyas Srinivasan)
9412 2007-09-10 Matthew Allum <mallum@openedhand.com>
9414 Port from stable branch.
9416 * clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch):
9417 Only declare tsevent if we have tslib (#498, Robert Bragg)
9419 2007-09-06 Emmanuele Bassi <ebassi@openedhand.com>
9421 * clutter/clutter-stage.c: Remove stray include <gdk-pixbuf-xlib.h>
9422 in ClutterStage: the code requesting it was moved in the backends.
9424 2007-08-31 Emmanuele Bassi <ebassi@openedhand.com>
9426 * clutter/clutter-rectangle.c: Fix the border drawing: do not
9427 overdraw the rectangle on the border and fix the check for
9428 different border colour. (#488, Neil Roberts)
9430 2007-08-29 Matthew Allum <mallum@openedhand.com>
9432 * clutter/clutter-effect.c: (clutter_effect_template_set_property):
9433 Add missing break statement. Whoops.
9435 2007-08-29 Matthew Allum <mallum@openedhand.com>
9437 * clutter/clutter-main.c: (_clutter_do_pick):
9438 Call glFinish before reading pixels
9439 * clutter/eglx/clutter-stage-egl.c: (clutter_stage_egl_realize):
9440 Add missing read surface in making context current.
9441 Above fixes via Kate Alhola.
9443 * clutter/glx/clutter-glx.h:
9444 Add missing filter funcs so there actually exported
9446 2007-08-24 Matthew Allum <mallum@openedhand.com>
9448 * clutter/clutter-actor.c:
9449 * clutter/clutter-event.h:
9450 * clutter/clutter-main.c:
9451 * clutter/clutter-stage.c:
9452 * clutter/clutter-stage.h:
9453 * clutter/glx/clutter-backend-glx.c:
9454 * clutter/glx/clutter-backend-glx.h:
9455 * clutter/glx/clutter-event-glx.c:
9456 * clutter/glx/clutter-stage-glx.c:
9457 * clutter/glx/clutter-stage-glx.h:
9458 Add initial support for stage state events.
9459 Fix fullscreening for an already mapped stage.
9461 * tests/test-events.c:
9462 Print out info from the above. Blue button now toggles
9465 * clutter/clutter-effect.c:
9466 * clutter/clutter-effect.h:
9467 Add a setting for templates to ref or clone underlying
9468 timelines. (As to improve sync issues like those in foofone)
9470 * tests/test-timeline.c:
9471 Also add completed signals.
9473 * clutter/cogl/gles/cogl.c: (cogl_texture_image_2d):
9475 Forward port from stable branch. RGB Image fixes gles
9476 and check for lower case libgles_cm.
9478 2007-08-24 Tomas Frydrych <tf@openedhand.com>
9480 * clutter/clutter-actor.c:
9481 (_clutter_actor_apply_modelview_transform):
9483 Fixed rotation around x axis (bug 486).
9485 2007-08-23 Emmanuele Bassi <ebassi@openedhand.com>
9487 * clutter/clutter-private.h:
9488 * clutter/clutter-event.c: Revert the event queue ordering
9491 * clutter/eglx/clutter-event-egl.c:
9492 * clutter/glx/clutter-event-glx.c:
9493 * clutter/sdl/clutter-event-sdl.c: Update backends.
9495 2007-08-22 Tomas Frydrych <tf@openedhand.com>
9497 * clutter/clutter-behaviour-rotate.c:
9498 * clutter/clutter-behaviour-ellipse.c:
9500 Fixed CCW rotation in rotate behaviour (bug 483); fixed overall
9501 path length calculation for angles > 360 in rotate and ellipse.
9503 2007-08-22 Emmanuele Bassi <ebassi@openedhand.com>
9505 * clutter/clutter-main.c (clutter_threads_dispatch_free): Remove
9506 the main threads locking calls: the main loop might remove the
9507 source while dispatching it, so whether or not we are already
9508 holding the lock is unpredictable for the library. Leave a comment
9509 with the relevant bug number in GNOME's Bugzilla and wait for a
9512 2007-08-21 Emmanuele Bassi <ebassi@openedhand.com>
9514 * clutter/clutter-event.c: Correctly initialise the state
9515 variables used to detect multiple clicks.
9517 (clutter_event_get_coords): Return the coordinates for
9518 CLUTTER_3BUTTON_PRESS events.
9520 (clutter_events_pending): Check from the tail of the queue backward,
9521 like we do in clutter_event_get() and clutter_event_peek().
9523 2007-08-21 Emmanuele Bassi <ebassi@openedhand.com>
9525 Preserve the ordering of the events in the queue when sythesising
9526 new events in the event translation sequence. (#481)
9528 * clutter/clutter-event.c:
9529 * clutter/clutter-private.h: Allow flagging new events on the
9530 events queue without breaking ClutterEvent using a masked type.
9532 (clutter_event_get), (clutter_event_put),
9533 (clutter_event_pending): Ignore events with the CLUTTER_EVENT_PENDING
9534 flag set when walking the events queue.
9536 * clutter/eglx/clutter-event-egl.c:
9537 * clutter/glx/clutter-event-glx.c:
9538 * clutter/sdl/clutter-event-sdl.c: Push the new events straight
9539 on the queue, with the CLUTTER_EVENT_PENDING flag set; remove the
9540 flag if the event translation was succesful, or remove the event
9543 2007-08-21 Emmanuele Bassi <ebassi@openedhand.com>
9545 * clutter/clutter-stage.c: Add missing documentation for the
9546 ClutterStage properties.
9548 2007-08-21 Tomas Frydrych <tf@openedhand.com>
9550 * clutter/clutter-fixed.c:
9553 Fixes for 64-bit platforms; use of SSE builtin when available
9554 (bugs 478, 479, patches by Gwenole Beauchesne).
9556 2007-08-20 Emmanuele Bassi <ebassi@openedhand.com>
9558 * clutter/Makefile.am:
9559 * clutter/clutter-enum-types.h.in:
9560 * clutter/clutter-enum-types.c.in: Use template files for
9561 glib-mkenums; this makes the Makefile template a bit more
9562 clean and the enum types generation more customisable (e.g.
9563 when GLib 2.14 has been released, we can use g_once_init_enter()
9564 and g_once_init_leave() to have thread-safe GType functions
9565 for the enum types as well).
9567 2007-08-20 Emmanuele Bassi <ebassi@openedhand.com>
9569 * clutter/clutter-version.h.in: Fix CLUTTER_CHECK_VERSION()
9570 macro to accept micro versions. (#477, Neil Roberts)
9572 2007-08-19 Emmanuele Bassi <ebassi@openedhand.com>
9574 Various timeline related changes.
9576 * clutter/clutter-timeout-pool.c: Use g_list_insert_sorted() to
9577 fix a timeout pool reversal happening with our homegrown
9578 sorted insertion function. (see #470)
9580 * tests/Makefile.am:
9581 * tests/test-timeline.c: Add a ClutterTimeline test suite, for
9582 finding regressions in the behaviour of the timelines. (#470,
9585 * clutter/clutter-main.c (clutter_do_event): Use an EVENT note,
9586 not a SCHEDULER one; SCHEDULER is for timelines and idle sources
9589 * clutter/clutter-version.h.in: Protect the bare numbers of
9590 the version components.
9592 * clutter/clutter-effect.c: Do not unref the ClutterAlpha, as
9593 the ownership is already of the behaviour used by the effect
9596 * clutter/clutter-timeline.c: Emit the ::new-frame signal only
9597 if the timeline is still active
9599 Always advance at least of one frame. (#471, Rob Bradford)
9601 Do not rewind the timeline if the user paused it in the ::new-frame
9602 signal handler: either the user has already done it with
9603 clutter_timeline_stop() or it's not what he's expecting if he
9604 called clutter_timeline_pause(). (#372, Johan Bilien)
9606 If we skipped the last frame before emitting the ::complete
9607 signal, emit ::new-frame with the last frame.
9609 Do not call clutter_timeline_stop() at the end of a non-looping
9610 timeline, as it emits the ::pause signal as well. Also, rewind the
9611 timeline *after* emitting ::complete, so that calling
9612 clutter_timeline_get_current_frame() in a signal handler still
9615 2007-08-19 Matthew Allum <mallum@openedhand.com>
9617 * clutter/eglx/clutter-event-egl.c: (clutter_event_dispatch):
9618 Fix clutter_thread typo (Kate Alhola)
9620 2007-08-18 Emmanuele Bassi <ebassi@openedhand.com>
9622 * clutter/clutter-effect.c:
9623 * clutter/clutter-main.c: Update the Since: tag for the
9626 * clutter/clutter-behaviour-rotate.c: Fix a typo in the get_center()
9627 method. (#468, Neil Roberts)
9629 Freeze and thaw the notification queue when changing multiple
9630 properties in the same method. Fix some coding style issues.
9632 2007-08-15 Emmanuele Bassi <ebassi@openedhand.com>
9634 * clutter/clutter-actor.c: Add checks for the "reactive" flag
9637 2007-08-15 Emmanuele Bassi <ebassi@openedhand.com>
9639 * clutter/clutter-effect.[ch]: Add clutter_effect_depth(), a
9640 simple wrapper around ClutterBehaviourDepth. (#464, Ali Sabil)
9642 2007-08-15 Emmanuele Bassi <ebassi@openedhand.com>
9644 * clutter/clutter-alpha.c (clutter_smoothstep_inc): Use the
9645 correct type for parameters, to avoid overflow (Ali Sabil).
9647 * clutter/clutter-behaviour-opacity.c: Use the right format
9648 when printing the unsigned alpha value and opacity to the
9651 2007-08-14 Emmanuele Bassi <ebassi@openedhand.com>
9653 * clutter/clutter-container.[ch]:
9654 * clutter/clutter-actor.c:
9655 * clutter/clutter-group.c: Rename clutter_container_raise() to
9656 clutter_container_raise_child(), and clutter_container_lower()
9657 to clutter_container_lower_child() to avoid clashing with
9658 ClutterActor raise() and lower() respectively.
9660 2007-08-13 Matthew Allum <mallum@openedhand.com>
9662 * clutter/clutter-actor.c:
9663 * clutter/clutter-actor.h:
9664 * clutter/clutter-event.c:
9665 * clutter/clutter-event.h:
9666 * clutter/clutter-main.c:
9667 * clutter/clutter-main.h:
9668 * clutter/clutter-private.h:
9669 * clutter/clutter-stage.c:
9670 * clutter/clutter-stage.h:
9671 * clutter/clutter-types.h:
9672 Initial implementation of actors emmitting event signals (423);
9673 - Actors set_reactive() to receive mouse events.
9674 (call clutter_enable_motion_events() for per action motion events)
9675 - clutter_stage_set_key_focus () to direct key events.
9676 - Events bubble up to parents (ending at stage)
9677 (original source identified by clutter_event_get_source())
9679 - enter/leave notifys for actors.
9680 - stage specific events - fullscreen
9683 * tests/test-events.c:
9684 Extend a little to use new API
9686 * clutter/cogl/gl/cogl.c:
9687 * clutter/glx/clutter-backend-glx.c:
9688 Move get_proc_address into cogl and out of backend.
9689 (shaders will need it)
9691 * clutter/clutter-group.c: (clutter_group_real_lower):
9692 Fix a minor compile warning.
9697 2007-08-13 Emmanuele Bassi <ebassi@openedhand.com>
9699 * clutter/clutter-container.[ch]: Add find_child_by_id(),
9700 raise(), lower() and sort_depth_order() virtual functions to
9703 * clutter/clutter-group.[ch]: Deprecate the redundant calls
9704 from ClutterGroup, and make ClutterGroup implement them as part
9705 of the ClutterContainer interface implementation.
9707 * clutter/clutter-box.c: Implement the newly added ClutterContainer
9708 methods; now clutter_stage_get_actor_at_pos() works with boxes
9711 * clutter/clutter-stage.c:
9712 * clutter/clutter-actor.c: Replace calls to ClutterGroup functions
9713 with ClutterContainer ones.
9715 2007-08-12 Emmanuele Bassi <ebassi@openedhand.com>
9717 * clutter/clutter-timeout-pool.c: Fix removing and adding timeouts
9718 to the timeout pool during a dispatch of a timeout source already
9719 inside the pool. (#456, based on a patch by Neil Roberts)
9721 (clutter_timeout_dispatch), (clutter_timeout_pool_dispatch): Hold
9722 the main Clutter lock in the pool dispatch function, instead of
9723 the per-timeout dispatch; this guarantees that the ref+unref of
9724 the single timeouts are done under the main lock.
9726 2007-08-12 Matthew Allum <mallum@openedhand.com>
9728 * clutter/clutter-texture.c: (texture_upload_data):
9729 Align texture data correctly for edge tiles.
9730 (#422 - Neil Roberts)
9732 2007-08-11 Matthew Allum <mallum@openedhand.com>
9734 * clutter/clutter-texture.c:
9735 Fix typo in clutter_texture_get_pixbuf (#458, Neil Roberts).
9736 Use take_object when getting pixbuf prop to avoid ref leak. (Neil
9739 2007-08-09 Emmanuele Bassi <ebassi@openedhand.com>
9741 * clutter/clutter-box.c: Rename a variable to fix a compiler
9744 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
9746 * clutter/clutter-behaviour-ellipse:
9747 (clutter_behaviour_ellipse_get_tiltx): Remove useless
9748 "Return" in the API documentation.
9750 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
9752 * clutter/clutter-timeout-pool.c: Fix sorting of the pool
9753 when inserting and removing timeout sources. (#449, Neil
9756 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
9758 * clutter/clutter-main.c (clutter_get_timestamp): Remove
9759 the microseconds remainder, which is mostly useless. (#447)
9761 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
9763 * clutter/clutter-main.c (clutter_get_timestamp): Return the
9764 correct number of microseconds (#447, Neil Roberts)
9766 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
9768 Merge the clutter.git/threading branch.
9770 * clutter/clutter-main.c:
9771 * clutter/clutter-main.h:
9772 * clutter/clutter-private.h: Add threading locking and unlocking
9773 functions, to mark a critical section and access the Clutter API
9774 from differen threads. Add an initialisation function and a function
9775 to override the default lock aquisition and release functions, for
9776 bindings and application-specific locking handling. Add MT-safe
9777 versions of g_idle_add() and g_timeout_add() which will call the
9778 functions under the main Clutter lock and without races. The
9779 Clutter thread-safe implementation is basically the same used by
9780 GDK, so the same caveats apply.
9782 * clutter/clutter-actor.c:
9783 * clutter/clutter-timeline.c:
9784 * clutter/clutter-timeout-pool.c: Use the new threading API when
9785 invoking idle and timeouts.
9787 * clutter/eglnative/clutter-event-egl.c:
9788 * clutter/eglx/clutter-event-egl.c:
9789 * clutter/glx/clutter-event-glx.c:
9790 * clutter/sdl/clutter-event-sdl.c: Acquire and release the main
9791 Clutter lock when preparing, checking and dispatching the events
9792 on the queue in every backend.
9794 * tests/Makefile.am:
9795 * tests/test-threads.c: Add a test case, showing how to use the
9796 threading API and write thread-safe Clutter applications.
9798 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
9800 * configure.ac: Bump up to 0.5.0 and start the new development
9803 2007-08-07 Emmanuele Bassi <ebassi@openedhand.com>
9805 * configure.ac: Bump up to 0.4.0.
9807 2007-08-07 Emmanuele Bassi <ebassi@openedhand.com>
9809 * clutter/clutter-entry.c:
9810 * clutter/clutter-fixed.c:
9811 * clutter/pango/pangoclutter.h: Small fixes for passing the
9812 distcheck phase with extra-strict compiler flags.
9814 2007-08-07 Emmanuele Bassi <ebassi@openedhand.com>
9816 * clutter/clutter-actor.h:
9817 * clutter/clutter-alpha.h:
9818 * clutter/clutter-behaviour-ellipse.[ch]:
9819 * clutter/clutter-behaviour-path.h:
9820 * clutter/clutter-behaviour-rotate.c:
9821 * clutter/clutter-behaviour.h:
9822 * clutter/clutter-box.h:
9823 * clutter/clutter-color.h:
9824 * clutter/clutter-container.h:
9825 * clutter/clutter-effect.h:
9826 * clutter/clutter-entry.h:
9827 * clutter/clutter-fixed.h:
9828 * clutter/clutter-layout.h:
9829 * clutter/clutter-main.h:
9830 * clutter/clutter-stage.h:
9831 * clutter/clutter-texture.h:
9832 * clutter/clutter-units.h:
9833 * clutter/clutter-version.h.in:
9834 * clutter/glx/clutter-glx.h: Documentation additions and
9837 2007-08-07 Matthew Allum <mallum@openedhand.com>
9839 * clutter/clutter-behaviour-ellipse.c:
9840 Add a documentation note regarding ellipse setting
9841 the applied actors position.
9843 2007-08-07 Matthew Allum <mallum@openedhand.com>
9847 More updates ready for 0.4.0
9849 2007-08-07 Matthew Allum <mallum@openedhand.com>
9851 * clutter/clutter-fixed.c:
9852 * clutter/clutter-fixed.h:
9855 * clutter/cogl/gl/cogl.c: (cogl_perspective):
9856 Remove CFX_* shortened macros
9858 2007-08-06 Emmanuele Bassi <ebassi@openedhand.com>
9860 * clutter/clutter-main.[ch]: Remove clutter_threads_enter()
9861 and clutter_threads_leave(); both are no-ops and they just
9862 confuse things. The thread-awareness in Clutter is planned
9868 2007-08-06 Emmanuele Bassi <ebassi@openedhand.com>
9870 * clutter/clutter-box.[ch]: Implement margin, color and default
9871 padding for ClutterBox. Provide API to pack a child by specifying
9872 every packing detail or just pack with the defaults. ClutterBox
9873 works like the HTML boxing model, API-wise: a box with margins
9874 and padding around each child. Needs work, still.
9876 * clutter/clutter-hbox.c:
9877 * clutter/clutter-vbox.c: Update with the new API and new attributes.
9879 * clutter/clutter-types.h: Add ClutterMargin and ClutterPadding.
9881 * test/test-boxes.c: Exercise the new API.
9883 2007-08-06 Matthew Allum <mallum@openedhand.com>
9885 * clutter/clutter-texture.c:
9886 Correct set pixbuf property as GDK_TYPE_PIXBUF
9887 (fix via Neil Roberts)
9889 2007-08-06 Matthew Allum <mallum@openedhand.com>
9891 * clutter/clutter-behaviour-depth.c:
9892 Modify to work like all other behvaiours in not forcing
9893 increasing order in behaviour 'limits'. (#436)
9894 Rename limit min/max props to start/end.
9896 * tests/test-depth.c:
9897 Simplify test-case to work with above change and
9898 without multiple ramps
9900 * clutter/clutter-behaviour-rotate.c:
9901 Handle CW rotation when end > start and similar for CCW just
9902 like ellipse behaviour.
9904 2007-08-05 Matthew Allum <mallum@openedhand.com>
9907 * clutter/clutter-actor.c:
9908 Document show/hide_all behaviour correctly.
9910 2007-08-05 Emmanuele Bassi <ebassi@openedhand.com>
9912 * clutter/clutter-behaviour-depth.c: Fix typo in the description.
9914 2007-08-04 Emmanuele Bassi <ebassi@openedhand.com>
9916 * clutter/clutter-behaviour-depth.c: Clarify the depth behaviour
9917 even more in the description used by the API reference.
9919 2007-08-04 Emmanuele Bassi <ebassi@openedhand.com>
9921 * clutter/clutter-behaviour-depth.[ch]: Clarify that what drives
9922 the movement along the Z axis is the ClutterAlpha object (we
9923 don't have the luxury of a rollover like the opacity does);
9924 so, if you want to go from 0 to -100 you have to use a
9925 decreasing function, just as well if you want to go from 100
9926 to 0. Using a min-depth of 100 and a max-depth of 0 and an
9927 increasing function is undefined behaviour.
9929 * tests/Makefile.am:
9930 * tests/test-depth.c: Add a test case for the depth behaviour.
9932 2007-08-04 Emmanuele Bassi <ebassi@openedhand.com>
9934 * clutter/clutter-actor.c (clutter_actor_set_opacity): Queue
9935 a redraw when setting the opacity of an actor.
9937 2007-08-03 Emmanuele Bassi <ebassi@openedhand.com>
9939 * clutter/clutter-behaviour-ellipse.c:
9940 (clutter_behaviour_ellipse_get_angle_tilt): Avoid recursion
9943 (clutter_behaviour_ellipse_get_angle_begin),
9944 (clutter_behaviour_ellipse_get_angle_end): Correct the angles
9947 2007-08-03 Emmanuele Bassi <ebassi@openedhand.com>
9949 * clutter/clutter-behaviour-ellipse.c:
9950 (clutter_behaviour_ellipse_get_property): Do not forget to
9951 correct the angles when returning them.
9953 2007-08-03 Tomas Frydrych <tf@openedhand.com>
9955 * clutter/clutter-behaviour-ellipse.c:
9956 * clutter/clutter-behaviour-ellipse.h:
9957 (clutter_behaviour_ellipse_new):
9958 (clutter_behaviour_ellipse_newx):
9960 Added direction parameter; made behaviour to respect direction
9961 parameter; unclumped angle_begin and angle_end values.
9963 2007-08-02 Matthew Allum <mallum@openedhand.com>
9967 Initial updating ready for release.
9969 2007-08-02 Emmanuele Bassi <ebassi@openedhand.com>
9971 * clutter/eglnative/clutter-backend-egl.c:
9972 * clutter/eglx/clutter-backend-egl.c:
9973 * clutter/sdl/clutter-backend-sdl.c: Set the default resolution
9974 as 96.0 dpi for every backend (we already were under this
9975 assumption anyway, and this makes it easier to change this
9976 setting per-backend).
9978 * clutter/pango/pangoclutter-fontmap.c:
9979 * clutter/pango/pangoclutter.h: Allow setting the resolution
9980 for the PangoClutterFontMap object and provide the implementation
9981 for the PangoFcFontMap::get_resolution() virtual function. This
9982 allows to set the resolution of the PangoContext when retrieving
9985 * clutter/clutter-label.c (clutter_label_init): Set the
9986 resolution of the font map with the one the backend gives us.
9988 * clutter/clutter-entry.c (clutter_entry_init): Ditto.
9990 2007-08-02 Emmanuele Bassi <ebassi@openedhand.com>
9992 * clutter/clutter-color.c (clutter_color_subtract): Invert the
9993 operands and match what the function says it does. (#435)
9995 2007-08-01 Matthew Allum <mallum@openedhand.com>
9997 * clutter/clutter-color.c: (clutter_color_from_pixel):
9998 Fix typo in alpha channel extraction (#434)
10000 2007-08-01 Emmanuele Bassi <ebassi@openedhand.com>
10002 * clutter/clutter-actor.[ch]: Add floating-point variant of the
10003 clutter_actor_get_r[xyz]angx() functions.
10005 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
10007 * clutter/clutter-stage.[ch]: Fix clutter_stage_set_user_resizable()
10008 name, and add a getter for the property.
10010 * clutter/glx/clutter-stage-glx.c: Use the accessor, not
10011 g_object_get() to retrieve the value of the resizable property.
10013 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
10015 * clutter/clutter-backend.[ch]: Add clutter_backend_set_resolution()
10016 and clutter_backend_get_resolution(); backends should use the former
10017 to set the resolution of the display when initialising, while actors
10018 should use the latter when sizing themselves depending on the
10019 resolution or the font size.
10021 * clutter/glx/clutter-backend-glx.c: Set the resolution as 96 dpi
10022 as a default and query the X server when opening the display.
10024 * clutter/clutter-entry.c: Drop the hardcoded dpi value and use
10025 clutter_backend_get_resolution() to compute the default size.
10027 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
10029 * clutter/clutter-entry.c (clutter_entry_init): Set the default
10030 size of the entry based on the size of the default font. (#414).
10032 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
10034 * clutter/sdl/clutter-backend-sdl.c: Fix a typo in
10035 clutter_backend_sdl_get_features() (#426, Pan Bohui)
10037 2007-07-30 Matthew Allum <mallum@openedhand.com>
10042 Various updates and improvements.
10045 Remove --disable-fast-fp-conversions
10047 2007-07-30 Tomas Frydrych <tf@openedhand.com>
10049 * clutter/clutter-behaviour-ellipse:
10050 (clutter_behaviour_ellipse_advance):
10052 Fixed invalid assumption about z cooordiance in calculation of
10055 2007-07-30 Tomas Frydrych <tf@openedhand.com>
10057 * clutter/clutter-actor.c:
10059 Fixed incorrect order of modelview matrix stack in calculating
10062 2007-07-30 Matthew Allum <mallum@openedhand.com>
10064 * clutter/clutter-backend.h:
10065 Remove #if 0's old backend_api
10066 (generating uneeded documentation)
10068 2007-07-30 Matthew Allum <mallum@openedhand.com>
10070 * clutter/clutter-texture.c:
10071 Fix re-relisation for large tiled textures.
10072 * tests/test-textures.c: (main):
10073 Add a show/hide to trigger above (see #442)
10075 2007-07-29 Emmanuele Bassi <ebassi@openedhand.com>
10077 * clutter/clutter-types.h: Document ClutterGravity enumeration
10078 and remove the only incomplete symbol of the api reference. Now
10079 we are up to 79% documented symbols.
10081 2007-07-29 Emmanuele Bassi <ebassi@openedhand.com>
10083 * clutter/clutter-media.c: Document ClutterMedia signals;
10084 replace the implementation of clutter_media_set_filename() with
10085 something a wee bit more robust (and portable) than a sprintf().
10087 2007-07-29 Emmanuele Bassi <ebassi@openedhand.com>
10089 * clutter/clutter-behaviour-ellipse.c: Documentation
10090 fixes; kill some indirections; freeze the notification
10091 queue when (potentially) emitting multiple notify
10094 * clutter/clutter-alpha.h: Remove the unused macro
10095 CLUTTER_TYPE_SMOOTHSTEP.
10097 2007-07-28 Emmanuele Bassi <ebassi@openedhand.com>
10099 * clutter/clutter-actor.[ch]: Use GInitiallyUnowned
10100 as the parent structure in the ClutterActor structure
10101 definition; somehow, this has escaped everyone attention
10102 in one year and a half. Luckily, GInitiallyUnowned is
10105 (clutter_actor_get_abs_position_units),
10106 (clutter_actor_get_abs_position): Check parameters.
10108 * clutter/clutter-texture.h: Unmangle the flags enum
10109 type declaration, so that dumb parsers like h2defs.py
10112 * clutter/clutter-behaviour-ellipse.[ch]:
10113 * clutter/clutter-effect.c: Fix some documentation
10114 issues and make gtk-doc happy.
10116 2007-07-27 Tomas Frydrych <tf@openedhand.com>
10118 * clutter/clutter-behaviour-ellipse.h:
10119 * clutter/clutter-behaviour-ellipse.c:
10120 * tests/test-behave.c:
10121 (clutter_behaviour_ellipse_get_angle_tilt):
10122 (clutter_behaviour_ellipse_set_angle_tilt):
10124 Pruned ClutterBehaviourEllipse api.
10126 2007-07-27 Tomas Frydrych <tf@openedhand.com>
10128 * clutter/clutter-behaviour-ellipse.h:
10129 * clutter/clutter-behaviour-ellipse.c:
10130 (clutter_behaviour_ellipse_set_angle_tilt_x):
10131 (clutter_behaviour_ellipse_set_angle_tilt_xx):
10132 (clutter_behaviour_ellipse_get_angle_tilt_x):
10133 (clutter_behaviour_ellipse_get_angle_tilt_xx):
10134 (clutter_behaviour_ellipse_set_angle_tilt_y):
10135 (clutter_behaviour_ellipse_set_angle_tilt_yx):
10136 (clutter_behaviour_ellipse_get_angle_tilt_y):
10137 (clutter_behaviour_ellipse_get_angle_tilt_yx):
10138 (clutter_behaviour_ellipse_set_angle_tilt_z):
10139 (clutter_behaviour_ellipse_set_angle_tilt_zx):
10140 (clutter_behaviour_ellipse_get_angle_tilt_z):
10141 (clutter_behaviour_ellipse_get_angle_tilt_zx):
10142 (clutter_behaviour_ellipse_set_tilt):
10143 (clutter_behaviour_ellipse_set_tiltx):
10144 (clutter_behaviour_ellipse_get_tilt):
10145 (clutter_behaviour_ellipse_get_tiltx):
10147 * tests/test-behave.c:
10149 Allow tilting ClutterBehaviourEllipse in all three axis; affects
10150 any code using the previous tilt api.
10152 2007-07-26 Matthew Allum <mallum@openedhand.com>
10154 * clutter/clutter-feature.h:
10155 Add new stage feature flags and document.
10157 * clutter/eglnative/clutter-backend-egl.c:
10158 * clutter/eglx/clutter-backend-egl.c:
10159 * clutter/sdl/clutter-backend-sdl.c:
10160 Set new feature flags.
10162 * clutter/glx/clutter-backend-glx.c:
10163 * clutter/glx/clutter-stage-glx.c:
10164 * clutter/clutter-stage.c:
10165 * clutter/clutter-stage.h:
10166 Add a 'user_resizeable' setting to the backend and implement
10169 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
10171 * clutter/clutter-behaviour-ellipse.c:
10172 * clutter/clutter-behaviour.h:
10173 * clutter/clutter-event.c:
10174 * clutter/clutter-texture.h:
10175 * clutter/clutter-types.h: Add missing documentation and fix
10176 parameters names to make gtk-doc happy.
10178 2007-07-26 Tomas Frydrych <tf@openedhand.com>
10180 * clutter/clutter-behaviour-ellipse.h:
10181 * clutter/clutter-behaviour-ellipse.c:
10182 * tests/test-behave.c:
10184 Removed tilt paramter from ClutterBehaviourEllipse constructors;
10185 Made angles to be relative to 12 o'clock;
10186 Added direction property;
10188 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
10190 * clutter/clutter-types.h:
10191 * clutter/Makefile.am: Add a header for common types, to avoid
10194 * clutter/clutter-actor.h:
10195 * clutter/clutter-behaviour.h:
10196 * clutter/clutter-behaviour-rotate.h:
10197 * clutter/clutter-behaviour-scale.h: Move some boxed types and som
10198 enums to clutter-types.h.
10200 2007-07-26 Neil J. Patel <njp@o-hand.com>
10202 * clutter/clutter-entry.c: (offset_to_bytes),
10203 (clutter_entry_ensure_cursor_position),
10204 (clutter_entry_new_with_text), (clutter_entry_new),
10205 (clutter_entry_insert_unichar), (clutter_entry_delete_chars):
10207 Fixed utf8 support so it actually works now, for both
10208 inserting and deleting chars. Fixed positioning of cursor for
10209 utf8 chars. Both GString and Pnago need bytes (not
10210 documented!) for string manipulation, so making sure all
10211 values were bytes and not char positions fixed the issue. Set
10212 a default size of 50x50 for the entry, otherwise no chars can
10213 be seen if the size is not set after creation (which confuses
10216 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
10218 * clutter/clutter-timeline.c:
10219 Do not accept zero as a value for the num-frames and fps properties
10220 in both the constructor and the setter functions.
10222 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
10224 * clutter/clutter-actor.[ch]:
10225 * clutter/clutter-behaviour-bspline.c:
10226 * clutter/clutter-behaviour.c:
10227 * clutter/clutter-box.[ch]:
10228 * clutter/clutter-clone-texture.c:
10229 * clutter/clutter-entry.c:
10230 * clutter/clutter-group.[ch]:
10231 * clutter/clutter-texture.c:
10232 * clutter/pango/pangoclutter-render.c:
10233 * tests/test-actors.c:
10234 * tests/test-behave.c:
10235 * tests/test-entry.c:
10236 * tests/test-events.c:
10237 * tests/test-project.c:
10238 * tests/test-rotate.c:
10239 * tests/test-scale.c:
10240 * tests/test-text.c:
10241 * tests/test-textures.c: Miscellaneous compiler warning fixes.
10243 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
10246 * Makefile.am: Add a configure switch to enable strict
10247 compiler flags, and turn it on when we are doing a distcheck.
10249 2007-07-25 Matthew Allum <mallum@openedhand.com>
10253 Add with initial notes on coding bits and bobs.
10255 * clutter/clutter-behaviour-scale.c:
10258 * clutter/clutter-event.c: (clutter_event_put):
10261 * clutter/glx/clutter-stage-glx.c:
10262 Disable wm user resizing of stage (At least for now)
10265 2007-07-25 Tomas Frydrych <tf@openedhand.com>
10267 * clutter/clutter-fixed.c:
10269 Fixed endianness issue in fast fp conversions.
10271 2007-07-25 Tomas Frydrych <tf@openedhand.com>
10274 * clutter/clutter-fixed.c:
10276 Added --disable-fast-fp-conversion option.
10278 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
10280 * clutter/clutter-label.[ch]: Ouch, clutter_label_get_alignment()
10281 returns a PangoAlignment, not a boolean.
10283 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
10285 * clutter/clutter-behaviour.h:
10286 * clutter/clutter-behaviour.c: Rename clutter_behaviour_clear()
10287 to clutter_behaviour_remove_all() to avoid method clashes in
10290 2007-07-25 Tomas Frydrych <tf@openedhand.com>
10292 * tests/test-rotate.c:
10293 * tests/Makefile.am:
10297 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
10299 * clutter/clutter-behaviour-bspline.c: Kill off some deep pointer
10300 indirections; use CLUTTER_NOTE() instead of ifdeffed out g_debug();
10301 add checks in every public entry point; move some initialisations
10302 of private data structures out of the constructor and into the
10303 init function, where they belong.
10305 2007-07-25 Matthew Allum <mallum@openedhand.com>
10307 * clutter/clutter-behaviour-rotate.c:
10308 * clutter/clutter-behaviour-rotate.h:
10309 Split 'center' prop into 3 seperate props for each axis.
10310 Use clutter_behaviour_actors_foreach() rather than
10311 clutter_behaviour_get_actors() to avoid copying list.
10312 Call fixed point rotation funcs internally.
10314 * clutter/clutter-effect.c:
10315 * clutter/clutter-effect.h:
10316 Add new simple rotation based effect funcs.
10318 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
10320 * clutter/clutter.h: Include clutter-behaviour-depth.h
10322 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
10324 * clutter/clutter-behaviour-rotate.[ch]: Add a center property
10325 for the center or rotation; implement the set_bounds() methods.
10327 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
10329 * clutter/eglx/clutter-backend-egl.c:
10330 * clutter/eglnative/clutter-backend-egl.c:
10331 * clutter/sdl/clutter-backend-sdl.c: Destroy the stage in every
10334 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
10336 * clutter/glx/clutter-backend-glx.c: Destroy the stage, don't
10339 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
10341 * clutter/clutter-main.c: Add debug markers.
10343 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
10345 * clutter/clutter-texture.[ch]: Add a ClutterTextureError
10346 to be returned by the loader functions; use the GObject API
10347 to allocate the private data structure instead of managing it
10348 ourselves; add documentation.
10350 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
10352 * clutter/clutter-actor.c:
10353 * clutter/clutter-box.h:
10354 * clutter/clutter-stage.c: Documentation fixes.
10356 2007-07-24 Matthew Allum <mallum@openedhand.com>
10358 * clutter/cogl/gl/cogl-defines.h:
10359 Add CGL_UNSIGNED_INT_8_8_8_8_REV (for big endian machines)
10361 2007-07-24 Matthew Allum <mallum@openedhand.com>
10363 * clutter/cogl/gl/cogl-defines.h:
10364 Another GL_TEXTURE_RECTANGLE_ARB related fix (#404)
10366 2007-07-24 Matthew Allum <mallum@openedhand.com>
10368 * clutter/clutter-backend.c:
10369 Minor build fixes (#413)
10371 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
10373 * clutter/clutter-effect.h:
10374 * clutter/clutter-effect.c: Add a secondary constructor for
10375 ClutterEffectTemplate, for use of the bindings.
10377 2007-07-24 Matthew Allum <mallum@openedhand.com>
10379 * clutter/cogl/gles/cogl.c: (cogl_get_bitmasks):
10380 Fix typo calling glGetIntegerv rather than glGetInteger
10382 2007-07-24 Matthew Allum <mallum@openedhand.com>
10384 * clutter/cogl/gl/cogl.c: (cogl_get_features):
10385 learn to use cpp properly.
10387 2007-07-24 Matthew Allum <mallum@openedhand.com>
10389 * clutter/clutter-media.c: (clutter_media_base_init):
10390 Remove #if 0! signal - assume causing issues with binding generation.
10393 * clutter/cogl/gl/cogl.c:
10394 Check GL_TEXTURE_RECTANGLE_ARB and GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB
10395 are defined in gl.h (#404)
10397 2007-07-24 Matthew Allum <mallum@openedhand.com>
10399 * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize):
10400 Create stage window with correct depth/visual. Via patch from
10401 Robert Bragg (#409).
10403 2007-07-23 Matthew Allum <mallum@openedhand.com>
10405 * clutter/clutter-texture.c: (texture_render_to_gl_quad),
10406 (clutter_texture_paint):
10407 Dont be over aggressive in throwing criticals for unrealized
10408 textures. Doesn't make sense for sub classes. (#403)
10410 2007-07-22 Emmanuele Bassi <ebassi@openedhand.com>
10412 Two small fixes for correctly debugging the deinitialisation
10413 phase of the backend:
10415 * clutter/glx/clutter-backend-glx.c: Remove the event source
10416 after we unref the main stage.
10418 * clutter/glx/clutter-stage-glx.c: Add a mark at the end of the
10419 unrealize call (the perl bindings seem to crash before we reach
10422 2007-07-22 Emmanuele Bassi <ebassi@openedhand.com>
10424 * clutter/clutter-behaviour-ellipse.c: Remove pointer indirections;
10425 add sanity checks on the public entry points; make all the public
10426 properties floating point (where needed) andconvert them to fixed
10427 point internally. (Partial fix for #389)
10429 2007-07-22 Emmanuele Bassi <ebassi@openedhand.com>
10431 * clutter/clutter-behaviour.[ch]: Rename ClutterBehaviour::apply
10432 and ClutterBehaviour::remove to ClutterBehaviour::applied and
10433 ClutterBehaviour::removed respectively, and emit them when the
10434 behaviour has been applied (or does no longer apply) to an actor.
10436 (clutter_behaviour_dispose), (clutter_behaviour_finalize),
10437 (clutter_behaviour_class_init): Move the actor removal to the
10438 ::dispose virtual function, and remove the ::finalize one;
10439 document the missing properties and signals.
10441 (clutter_behaviour_clear): Add function to clear a behaviour:
10442 every actor will be unreffed and the ClutterBehaviour::removed
10443 signal will be emitted.
10445 2007-07-21 Matthew Allum <mallum@openedhand.com>
10447 * clutter/clutter-event.c:
10448 Correct clutter_event_get_state () return type. Fixes #398
10450 * clutter/glx/clutter-stage-glx.c:
10451 Disable use XFixes cursor visibility funcs. Appears to have issues
10452 on feisty X Server at least. Fallback should work generally better.
10454 Fix non offscreen clutter_stage_snapshot to also rotate read pixel
10455 data to correct orientation.
10457 2007-07-12 Matthew Allum <mallum@openedhand.com>
10459 * clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch):
10460 Avoid sending too many events which are just pressure changes.
10462 2007-07-12 Matthew Allum <mallum@openedhand.com>
10464 * clutter/clutter-actor.c: (clutter_actor_paint):
10465 * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
10466 * clutter/cogl/cogl.h:
10467 * clutter/cogl/gl/cogl.c: (cogl_get_viewport):
10468 * clutter/cogl/gles/cogl.c: (cogl_get_viewport):
10469 Hopefully fix clutter_actor_at_pos on !32bpp displays.
10470 Based on patch from Pan Bohui, See;
10471 http://bugzilla.openedhand.com/show_bug.cgi?id=390
10476 2007-07-11 Emmanuele Bassi <ebassi@openedhand.com>
10478 * clutter/clutter-behaviour-opacity.c:
10479 Don't check direction in opacity.
10481 2007-07-11 Tomas Frydrych <tf@openedhand.com>
10483 * clutter/clutter-fixed.h:
10484 Fixed CLUTTER_ANGLE_ macros.
10486 * clutter/clutter-behaviour-ellipse.h:
10487 * clutter/clutter-behaviour-ellipse.c:
10488 Implemented "apply" signal closer to position actor on the start
10489 of the elliptic path.
10491 (clutter_behaviour_ellipse_get_angle_begin):
10492 (clutter_behaviour_ellipse_set_angle_begin):
10493 (clutter_behaviour_ellipse_get_angle_end):
10494 (clutter_behaviour_ellipse_set_angle_end):
10495 (clutter_behaviour_ellipse_get_angle_tilt):
10496 (clutter_behaviour_ellipse_set_angle_tilt):
10497 Renamed with an x suffix; added versions for angles in degrees.
10499 2007-07-09 Matthew Allum <mallum@openedhand.com>
10503 * clutter/clutter-stage.c:
10504 * clutter/glx/clutter-stage-glx.c:
10505 Fix cursor visibility property.
10506 Force a repaint before mapping to attempt to avoid flicker.
10508 2007-07-09 Richard Purdie <rpurdie@openedhand.com>
10510 * clutter/eglnative/clutter-event-egl.c:
10512 Add tslib support to eglnative backend.
10514 2007-07-09 Richard Purdie <rpurdie@openedhand.com>
10516 * clutter/eglnative/clutter-backend-egl.c:
10517 Tweaks to the eglnative backend.
10519 2007-07-09 Richard Purdie <rpurdie@openedhand.com>
10521 * clutter/clutter-backend.c:
10522 Make the backend add_option function optional.
10524 2007-07-09 Emmanuele Bassi <ebassi@openedhand.com>
10526 * clutter/clutter-behaviour-depth.h:
10527 * clutter/clutter-behaviour-depth.c:
10528 * clutter/Makefile.am: Add ClutterBehaviourDepth, a simple
10529 behaviour controlling the depth of a set of actors.
10531 * clutter/clutter-behaviour-opacity.c: Always make sure that
10532 the opacity applied to the actors is a positive integer, even
10533 in case where the start and end opacity are reversed; use the
10534 correct cast macros for passing the opacity as a pointer.
10536 2007-07-06 ====================== 0.3.1 Release ========================
10538 2007-07-06 Matthew Allum <mallum@openedhand.com>
10544 2007-07-06 Matthew Allum <mallum@openedhand.com>
10546 * clutter/eglx/Makefile.am:
10547 * clutter/eglx/clutter-egl.h:
10548 * clutter/eglx/clutter-event-egl.c:
10549 * clutter/eglx/clutter-stage-egl.c:
10550 Rename clutter-egl.h -> clutter-eglx.h
10554 Add info re EGL split.
10556 2007-07-06 Matthew Allum <mallum@openedhand.com>
10558 * clutter/Makefile.am:
10559 * clutter/eglnative/Makefile.am:
10560 * clutter/eglnative/clutter-backend-egl.c:
10561 * clutter/eglnative/clutter-backend-egl.h:
10562 * clutter/eglnative/clutter-egl.h:
10563 * clutter/eglnative/clutter-event-egl.c:
10564 * clutter/eglnative/clutter-stage-egl.c:
10565 * clutter/eglnative/clutter-stage-egl.h:
10566 * clutter/eglx/Makefile.am:
10567 * clutter/eglx/clutter-backend-egl.c:
10568 * clutter/eglx/clutter-egl.h:
10569 * clutter/eglx/clutter-event-egl.c:
10570 * clutter/eglx/clutter-stage-egl.c:
10572 Add a new 'native' EGL backend for non X based EGL's
10573 (i.e on framebuffer).
10574 Rename old backend to 'eglx' and namespace public funcs with this.
10576 * clutter/pango/pangoclutter-private.h:
10577 Add extra checks for expected defines.
10579 2007-07-06 Matthew Allum <mallum@openedhand.com>
10583 Updates for upcoming 0.3.1 release.
10584 * clutter/egl/Makefile.am:
10585 * clutter/egl/clutter-backend-egl.c:
10586 * clutter/egl/clutter-backend-egl.h:
10587 * clutter/egl/clutter-egl.h:
10588 * clutter/egl/clutter-event-egl.c:
10589 * clutter/egl/clutter-stage-egl.c:
10590 * clutter/egl/clutter-stage-egl.h:
10594 2007-07-06 Matthew Allum <mallum@openedhand.com>
10596 * clutter/clutter-box.c: (clutter_box_pick):
10597 Call clutter_box_paint rather than actor paint method avoiding
10598 infinte loop (Fixes test-boxes crasher).
10600 * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_unrealize):
10601 Trap the X calls to avoid potential X errors.
10603 2007-07-06 Ross Burton <ross@openedhand.com>
10605 * tests/Makefile.am:
10608 2007-07-05 Tomas Frydrych <tf@openedhand.com>
10610 * cluter/clutter-group.c:
10611 (clutter_group_query_coords:)
10612 Reset box size to zero width and height to report correct size if
10613 the contents of the group shrink.
10615 2007-07-05 Emmanuele Bassi <ebassi@openedhand.com>
10617 * clutter/clutter-rectangle.c: Fix off-by-border-width bug
10618 in the border creation of a ClutterRectangle.
10620 2007-07-05 Tomas Frydrych <tf@openedhand.com>
10622 * clutter/clutter-fixed.h:
10623 * clutter/clutter-fixed.c:
10624 Added CLUTTER_FLOAT_TO_UINT macro;
10628 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
10630 * clutter/*: Loads of fixes for the API reference.
10632 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
10634 Merge from clutter/work
10636 * clutter/clutter-alpha.[ch]: Fix the argument names for
10637 the smoothstep alpha functions, for gtk-doc.
10639 * clutter/clutter-group.c (clutter_group_remove_all): Fix
10640 the iteration on the children list.
10642 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
10644 * clutter/clutter-main.c (clutter_redraw): Move the stage
10645 paint init call from the main redraw function...
10647 * clutter/clutter-stage.c (clutter_stage_paint): ... to the
10648 ClutterActor::paint() overridden method in ClutterStage.
10650 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
10652 * clutter/clutter.h:
10653 * clutter/Makefile.am: ClutterBackend is marked as public API,
10654 so install the clutter-backend.h header and include it when
10655 including clutter.h.
10657 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
10659 * clutter/clutter-entry.[ch]: Various fixes to ClutterEntry:
10660 fix code style issues; add documentation for the various
10661 properties; add ClutterEntry:entry-padding property, for controlling
10662 the text padding (until we have style properties separated from
10663 the object properties); notify property changes; free resources
10664 in the ::finalize method; rename clutter_entry_add() to
10665 clutter_entry_insert_unichar(), and clutter_entry_remove() to
10666 clutter_entry_delete_chars() - for bindings and for matching the
10667 insert_text() and delete_text() existing methods; add a getter
10668 method for the max-length property.
10670 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
10672 * clutter/clutter-actor.[ch]: Use the right get_type() function
10673 name for ClutterVertex, and add the CLUTTER_TYPE_VERTEX macro.
10675 2007-07-03 Ross Burton <ross@openedhand.com>
10678 Check for XFixes 4 and above.
10680 2007-07-02 Tomas Frydrych <tf@openedhand.com>
10682 * clutter/clutter-actor.h:
10683 * clutter/clutter-actor.c:
10684 * tests/test-project.c:
10685 (clutter_actor_apply_transform_to_point):
10686 Use ClutterVertex for input and output parameters.
10688 2007-07-01 Emmanuele Bassi <ebassi@openedhand.com>
10690 Merge from clutter.git/work branch
10692 * clutter/clutter-effect.[ch]: Clean up ClutterEffect; use a
10693 pointer to access the private data structure, instead of doing
10694 a type check every time. Add description for the API reference.
10696 * docs/reference/clutter-sections.txt:
10697 * clutter/*.[ch]: Add various documentation fixes.
10699 * clutter/clutter-entry.c: Remove a stray g_print() call.
10701 2007-06-29 Neil J. Patel <njp@o-hand.com>
10703 * clutter/clutter-entry.c: (clutter_entry_handle_key_event),
10704 (clutter_entry_add), (clutter_entry_remove):
10705 Check if unichar == 0, and if so, return, as it will cause a delete in
10708 2007-06-20 ============== 0.3 Release ====================================
10710 2007-06-29 Matthew Allum <mallum@openedhand.com>
10712 * clutter/clutter-texture.c: (texture_upload_data):
10713 Fix a SEGV for GL ES textures.
10715 * clutter/cogl/gles/cogl.c: (cogl_setup_viewport):
10716 Tweak default z_camera for 60 degrees like GL.
10718 * clutter/egl/clutter-backend-egl.c::
10719 * clutter/egl/clutter-stage-egl.c:
10720 Fix edpy usage (thanks to Kaj Gronholm).
10722 2007-06-29 Tomas Frydrych <tf@openedhand.com>
10724 * clutter/clutter-group.c:
10725 (clutter_group_query_coords):
10726 Fixed box calculation.
10728 2007-06-28 Tomas Frydrych <tf@openedhand.com>
10730 * clutter/clutter-group.c:
10731 (clutter_group_raise):
10732 (clutter_group_lower):
10733 Fixed SIGSEGV when attempting to raise / lower an only child.
10735 2007-06-28 Matthew Allum <mallum@openedhand.com>
10737 * clutter/cogl/gl/cogl.c: (cogl_setup_viewport):
10738 Improve fixed z_camera value for defualt perspective.
10739 Appears pixel perfect on ATI and Intel at least
10741 2007-06-28 Tomas Frydrych <tf@openedhand.com>
10743 * tests/test-perspective.c:
10744 Moved red dots to be positioned 1px off each corner.
10746 2007-06-28 Matthew Allum <mallum@openedhand.com>
10748 * tests/Makefile.am:
10749 * tests/test-perspective.c:
10750 Add simple perspective test
10752 2007-06-27 Tomas Frydrych <tf@openedhand.com>
10754 * clutter/clutter-actor.h:
10755 * clutter/clutter-actor.c:
10756 * tests/test-project.c:
10757 Renamed clutter_actor_project_point() to
10758 clutter_actor_apply_trasform_to_point() and
10759 clutter_actor_project_vertices() to clutter_actor_get_vertices().
10761 2007-06-27 Tomas Frydrych <tf@openedhand.com>
10763 * clutter/clutter-actor.h:
10764 * clutter/clutter-actor.c:
10765 * tests/test-project.c:
10766 (clutter_actor_project_point):
10767 Separated input from output parameters.
10769 2007-06-27 Matthew Allum <mallum@openedhand.com>
10772 Dont remove README on make clean
10774 2007-06-27 Tomas Frydrych <tf@openedhand.com>
10776 * clutter/clutter-actor.c:
10777 (_clutter_actor_apply_modelview_transform):
10778 Fixed incorrect order of scaling an rotation that was causing
10779 objects that were both rotated and scaled to change position.
10781 2007-06-27 Tomas Frydrych <tf@openedhand.com>
10783 * clutter/clutter-actor.c:
10784 (clutter_actor_scale_with_gravityx):
10785 Made to work after changes to the behavivour of
10786 clutter_actor_get_absolute_size() for rotated actors.
10788 2007-06-26 Tomas Frydrych <tf@openedhand.com>
10790 * clutter/cogl/gl/cogl.c:
10791 * clutter/cogl/gles/cogl.c:
10792 (cogl_setup_viewport):
10793 For default perspective angle of 60 degrees, use a hardcoded
10794 z_camera constant that provides minimal artefacts when rendering
10795 text; for other angles we calculate.
10797 2007-06-26 Tomas Frydrych <tf@openedhand.com>
10799 * clutter/clutter-actor.h:
10800 * clutter/clutter-actor.c:
10801 Added fixed point version of clutter_actor_rotate_*() functions
10802 and accessors for rotation angles.
10804 2007-06-25 Matthew Allum <mallum@openedhand.com>
10807 Update a little more.
10808 * clutter/clutter-effect.c:
10809 Add missing func documentation
10810 * clutter/clutter-rectangle.c:
10811 Fix border drawing.
10813 2007-06-25 Tomas Frydrych <tf@openedhand.com>
10815 * clutter/clutter-fixed.h:
10816 Fixed definition of clutter_cosx() macro.
10818 * clutter/clutter-stage.c:
10819 * clutter/cogl/cogl.h:
10820 * clutter/cogl/gl/cogl.c:
10821 * clutter/cogl/gles/cogl.c:
10822 Changed ClutterPerspective.fovy from ClutterAngle to degrees to
10823 improve precission in Z-camera calculations.
10825 2007-06-22 Matthew Allum <mallum@openedhand.com>
10831 Move back to regular README naming at least for now.
10833 2007-06-22 Matthew Allum <mallum@openedhand.com>
10838 Update for 0.3 release.
10840 * clutter/clutter-actor.c:
10843 * clutter/clutter-texture.c:
10844 Various minor additions for handling non RGBA data.
10845 Fix a typo breaking clutter_texture_get_pixbuf() on tiled textures.
10847 * tests/test-actors.c:
10848 Disable scaling to avoid drifting (temporary till API is fixed)
10850 2007-06-21 Emmanuele Bassi <ebassi@openedhand.com>
10852 * clutter/clutter-timeline.c: Allow disabling the timeline pool
10853 by using the CLUTTER_TIMELINE environment variable set to
10856 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
10858 * README.in: Update release notes.
10860 2007-06-19 Matthew Allum <mallum@openedhand.com>
10862 * clutter/clutter-main.c: (clutter_init_with_args), (clutter_init):
10863 Safer checks for setting progname if NULL is passed in init.
10865 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
10867 * autogen.sh: autoreconf needs a README.
10869 2007-06-19 Matthew Allum <mallum@openedhand.com>
10873 * clutter/clutter-main.c:
10874 Set a default window title based on g_prgname().
10876 * clutter/clutter-stage.c:
10877 * clutter/clutter-stage.h:
10878 * clutter/egl/clutter-stage-egl.c:
10879 * clutter/glx/clutter-stage-glx.c:
10880 * clutter/sdl/clutter-stage-sdl.c:
10881 Alter draw_to_pixbuf to return a pixbuf
10884 Only full in gdk-pixbuf-xlib as a GLX backend dep.
10886 * tests/test-entry.c:
10887 Fix a couple of warnings.
10889 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
10891 * Makefile.am: Add README.in to the EXTRA_DIST.
10893 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
10896 * README.in: Use a template for the README file, so that
10897 it gets the right version number.
10899 2007-06-19 Matthew Allum <mallum@openedhand.com>
10901 * clutter/clutter-stage.c:
10902 * clutter/clutter-stage.h:
10903 * clutter/glx/clutter-stage-glx.c:
10904 * clutter/sdl/clutter-stage-sdl.c:
10905 Add window title setting/getting functionality.
10907 * clutter/clutter-event.c: (clutter_key_event_unicode):
10908 Remove uneeded convert case call.
10910 * clutter/cogl/gl/cogl.c: (cogl_rectangle)
10911 Use parameters correctly for underlying GL rect call.
10913 * tests/test-entry.c:
10914 Add a window title.
10916 2007-06-18 Matthew Allum <mallum@openedhand.com>
10918 * clutter/sdl/clutter-event-sdl.c:
10919 Seemingly fix SDL Event source.
10920 Add some very basic SDL keysym translation.
10921 (Thanks to Thomas Van Machelen for initial translation code)
10923 * tests/test-events.c:
10924 Dump some info on keysyms pressed.
10926 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
10928 * clutter/clutter-actor.h:
10929 * clutter/clutter-stage.h: Add 32 padding slots; when we
10930 reach 1.0 it'll be a long road until the following ABI
10933 * tests/test-behave.c: Don't forget to include headers.
10935 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
10937 * clutter/clutter-container.h:
10938 * clutter/clutter-layout.h: Interfaces are not checked
10939 at compile-time, so there's not need to add padding to
10942 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
10944 * configure.ac: Partially revert last commit, and fail
10945 with AC_MSG_ERROR() instead of disabling the manual build
10946 if no jw and xmlto were found.
10948 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
10950 * configure.ac: If the programs required to build the manual
10951 are not found and --enable-manual was passed, then just print
10952 a warning and disable the manual build instead of aborting the
10955 * doc/manual/Makefile.am: Use the full path gathered by the
10956 configure script when invoking jw and xmlto.
10958 2007-06-16 Matthew Allum <mallum@openedhand.com>
10960 * clutter/clutter-actor.c:
10961 Fix typo in x rotation transform (Thanks to Johan Billen #138)
10964 * doc/manual/Makefile.am:
10965 Fix manual build and required program check.
10967 * tests/Makefile.am:
10970 2007-06-15 Tomas Frydrych <tf@openedhand.com>
10972 * clutter/clutter-actor.c:
10973 Added some comments; renamed MTX_GL_SCALE to MTX_GL_SCALE_X for
10974 consistency; removed some debug output.
10976 2007-06-14 Tomas Frydrych <tf@openedhand.com>
10978 * clutter/clutter-vbox.c:
10979 * clutter/clutter-hbox.c:
10980 (clutter_vbox_pack_child):
10981 (clutter_hbox_pack_child):
10982 Fixed child coords.
10984 2007-06-14 Emmanuele Bassi <ebassi@openedhand.com>
10986 * clutter/clutter-box.[ch]: Base class for layout containers.
10988 * clutter/clutter-hbox.[ch]: Horizontal box actor.
10990 * clutter/clutter-vbox.[ch]: Vertical box actor.
10992 * clutter/clutter.h:
10993 * clutter/Makefile.am: Build glue
10995 * tests/Makefile.am:
10996 * tests/test-boxes.c: Test suite for ClutterBox API and
10999 2007-06-14 Matthew Allum <mallum@openedhand.com>
11001 * clutter/cogl/gl/cogl.c: (cogl_check_extension):
11002 Actually populate this func and remove the static alternate
11003 named one. Means GLX actually checks for available extensions.
11004 Other minor tidy ups.
11006 * clutter/glx/clutter-backend-glx.c:
11007 * clutter/glx/clutter-backend-glx.h:
11008 Add support for GLX_SGI_swap_control to do vblanking prefering
11009 over glXGetVideoSyncSGI. Should fix issues on Intel chips with
11010 very slow frame rates due to vblank problems.
11011 Thanks to Michel Danzer for tips, see;
11012 http://bugs.freedesktop.org/show_bug.cgi?id=10542
11014 * test/test-actors.c:
11017 2007-06-14 Emmanuele Bassi <ebassi@openedhand.com>
11019 * clutter/clutter-timeout-pool.c: Make ClutterTimeoutPool
11020 more thread-safe, using a static lock.
11022 (clutter_timeout_pool_dispatch), (clutter_timeout_pool_remove): Fix
11023 a race condition-turned-in-memory corruption bug, triggered by
11024 removing a timeout from the pool while still spinning the pool
11027 2007-06-14 Emmanuele Bassi <ebassi@openedhand.com>
11030 * doc/manual/Makefile.am: Find xmlto and jw in the path and
11031 use the symbolic names when building the manual.
11033 2007-06-14 Tomas Frydrych <tf@openedhand.com>
11035 * clutter/clutter-actor.c:
11036 (clutter_actor_get_abs_position):
11037 (clutter_actor_get_abs_size):
11038 Reimplement using clutter_actor_project_point() and
11039 clutter_actor_project_vertices().
11041 * tests/test-project.c:
11042 Rename clutter_actor_allocate_coords -> clutter_actor_query_coords
11044 2007-06-14 Matthew Allum <mallum@openedhand.com>
11046 * clutter/clutter-actor.c:
11047 * clutter/clutter-actor.h:
11048 * clutter/clutter-group.c:
11049 * clutter/clutter-label.c:
11050 * clutter/egl/clutter-stage-egl.c:
11051 * clutter/glx/clutter-stage-glx.c:
11052 * clutter/sdl/clutter-stage-sdl.c:
11053 Rename clutter_actor_allocate_coords -> clutter_actor_query_coords
11055 Change repaints to G_PRIORITY_DEFAULT + 10.
11056 (timelines are G_PRIORITY_DEFAULT + 30, events G_PRIORITY_DEFAULT)
11058 * clutter/glx/clutter-event-glx.c:
11059 Handle shift modifier in keycode -> keysym translation.
11061 * tests/test-actors.c:
11062 Remove (broken) screen saver code.
11063 Add scaling behaviour, clean code a little.
11065 2007-06-13 Tomas Frydrych <tf@openedhand.com>
11067 * clutter/clutter-actor.c:
11068 (clutter_actor_project_vertices):
11069 (clutter_actor_project_proint):
11070 Fixed translation of Y coords to match the windowing system.
11072 * clutter/egl/clutter-stage-egl.c:
11073 * clutter/glx/clutter-stage-glx.c:
11074 * clutter/sdl/clutter-stage-sdl.c:
11075 (clutter_stage_*_request_size):
11076 Initialize viewport when setting/resetting stage side.
11078 * tests/Makefile.am
11079 * tests/test-project.c:
11080 An interactive test of the projection stuff.
11082 2007-06-12 Tomas Frydrych <tf@openedhand.com>
11084 * clutter/clutter-main.c:
11086 Clear CLUTTER_ACTOR_SYNC_MATRICES flag after setting up viewport.
11088 2007-06-12 Matthew Allum <mallum@openedhand.com>
11090 * doc/manual/Makefile.am:
11091 Fix typo in Makefile so PDF's actually get built.
11093 * doc/manual/clutter-manual.xml.in:
11094 Add an FAQ section with initial entry.
11096 2007-06-12 Tomas Frydrych <tf@openedhand.com>
11098 * clutter/clutter-fixed.h:
11099 Added shorthand CFX_QMUL macro.
11101 * clutter/clutter-private.h:
11102 * clutter/clutter-actor.h:
11103 * clutter/clutter-actor.c:
11104 Replaced ClutterVertices with ClutterVertex;
11106 (clutter_actor_get_transformed_vertices):
11107 (clutter_actor_get_transformed_point):
11108 Replaced with clutter_actor_projected_vertices and
11109 clutter_actor_projected_point.
11111 (_clutter_actor_apply_modelview_transform):
11112 (_clutter_actor_apply_modelview_transform_recursive):
11113 Private functions to push actor modelview transforms on OpenGL
11116 * clutter/cogl/cogl.h:
11117 * clutter/cogl/gl/cogl.c:
11118 * clutter/cogl/gles/cogl.c:
11119 (cogl_get_viewport):
11120 (cogl_get_modelview_matrix):
11121 (cogl_get_projection_matrix):
11122 Functions to access OpenGL transforms.
11124 2007-06-12 Matthew Allum <mallum@openedhand.com>
11126 * clutter/clutter-alpha.c:
11127 Remove stray g_debug.
11129 * clutter/clutter-behaviour-rotate.c:
11130 Register private class member.
11132 * clutter/clutter-behaviour.c:
11133 * clutter/clutter-behaviour.h:
11134 Add applied and removed signals.
11138 * examples/Makefile.am:
11140 * examples/behave.c:
11141 * examples/slider.c:
11142 * examples/super-oh.c:
11143 * examples/test-entry.c:
11144 * examples/test-text.c:
11146 * tests/Makefile.am:
11147 Remove examples, moving applicable code into tests.
11149 2007-06-11 Tomas Frydrych <tf@openedhand.com>
11151 * clutter/clutter-alpha.c:
11152 (clutter_alpha_sine_inc):
11153 (clutter_alpha_sine_dec):
11154 (clutter_alpha_sine_half):
11155 Fixed unsigned overflow.
11157 2007-06-11 Emmanuele Bassi <ebassi@openedhand.com>
11159 * clutter/clutter-event.h: Add full modifier masks enums.
11161 * clutter/glx/clutter-event-glx.c: Copy the modifier masks from
11162 the native X event structure.
11164 * clutter/clutter-event.c: Convert to upper case if the
11165 shift or the lock masks are applied.
11167 2007-06-09 Emmanuele Bassi <ebassi@openedhand.com>
11169 * clutter/clutter.h:
11170 * clutter/clutter-timeout-pool.[ch]: Add a timeout pool source;
11171 every timeout added to this pool will use a single slice of the
11174 * clutter/clutter-timelince.c: Use a per-class timeout pool for
11177 2007-06-08 Matthew Allum <mallum@openedhand.com>
11179 * clutter/clutter-texture.c: (clutter_texture_get_pixbuf):
11180 Remove stray printf.
11182 2007-06-08 Matthew Allum <mallum@openedhand.com>
11184 * clutter/clutter-actor.c:
11185 * clutter/clutter-debug.h:
11186 * clutter/clutter-main.c:
11187 * clutter/clutter-main.h:
11188 * clutter/clutter-private.h:
11189 * clutter/clutter-timeline.c:
11190 Add 'schedule' debug flag and new CLUTTER_TIMESTAMP macro.
11192 * clutter/clutter-texture.c:
11193 * clutter/clutter-texture.h:
11194 * clutter/cogl/cogl.h:
11195 * clutter/cogl/gl/cogl-defines.h:
11196 * clutter/cogl/gles/cogl-defines.h:
11197 * clutter/cogl/gl/cogl.c:
11198 * clutter/cogl/gles/cogl.c:
11199 Add initial experiemental YUV texture support.
11200 Move texture rect size checks into cogl.
11201 Better handle moving texture data from video -> system memory
11202 (if support available).
11204 2007-06-07 Neil J. Patel <njp@o-hand.com>
11206 * clutter/clutter-entry.c: (clutter_entry_class_init),
11207 (clutter_entry_handle_key_event):
11208 * clutter/clutter-entry.h:
11209 Added an 'activated' signal, which is emitted when the 'Enter' key is
11212 * examples/test-entry.c: (on_entry_activated), (main):
11213 Added a test handler for the activated signal.
11215 2007-06-07 Emmanuele Bassi <ebassi@openedhand.com>
11217 * clutter/*: Move documentation from the templates into the
11220 2007-06-07 Emmanuele Bassi <ebassi@openedhand.com>
11222 * clutter/clutter-container.[ch]: Add a generic actor container
11223 interface, for actors to implement without subclassing ClutterGroup.
11225 * clutter/clutter-group.[ch]: Make ClutterGroup implement the
11226 ClutterContainer interface, and deprecate the colliding methods.
11228 * clutter/clutter-layout.[ch]: Add extended layout interface.
11229 Actors and containers requiring or honouring complex layout
11230 management should implement this interface and provide at least
11231 one of the available layout types: width for height, height for
11232 width, natural size, iterative size request.
11234 * clutter/clutter-label.c: A ClutterLabel requires height for
11235 width layout management, so it implements the ClutterLayout
11238 * clutter/Makefile.am: Add new files to the build.
11241 * examples/*.c: Update tests and examples code to use the
11242 new ClutterContainer API instead of ClutterGroup.
11244 2007-06-07 Emmanuele Bassi <ebassi@o-hand.com>
11246 * clutter/clutter-timeline.[ch]: Add a "delay" property, which
11247 delays the real start of the timeline by a number of milliseconds.
11249 (clutter_timeline_clone): Rename clutter_timeline_copy() to
11250 clutter_timeline_clone(), for consistency.
11252 2007-06-01 Neil J. Patel <njp@o-hand.com>
11254 * clutter/clutter-entry.c: (clutter_entry_set_property),
11255 (clutter_entry_get_property), (clutter_entry_class_init),
11256 (clutter_entry_init), (clutter_entry_set_text),
11257 (clutter_entry_set_max_length):
11258 * clutter/clutter-entry.h:
11259 * examples/test-entry.c: (main):
11260 Added a max-length property whihc limits the length of the text in the
11263 2007-06-01 Neil J. Patel <njp@o-hand.com>
11265 * clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position),
11266 (clutter_entry_paint), (clutter_entry_init),
11267 (clutter_entry_handle_key_event):
11268 Clipping within the entry class to stop it over-slipping its
11270 Text will move within the clip region to keep the cursor always
11272 Added some padding to the left and right to make sure cursor is
11275 2007-06-01 Tomas Frydrych <tf@openedhand.com>
11277 * clutter/clutter-actor.c:
11278 * clutter/clutter-stage.c:
11279 * clutter/clutter-private.h:
11280 Removed perspective matrix caching from ClutterStage.
11282 2007-06-01 Neil J. Patel <njp@o-hand.com>
11284 * clutter/clutter-entry.c: (clutter_entry_set_property),
11285 (clutter_entry_get_property), (clutter_entry_ensure_layout),
11286 (clutter_entry_class_init), (clutter_entry_init),
11287 (clutter_entry_set_visibility), (clutter_entry_get_visibility),
11288 (clutter_entry_set_invisible_char),
11289 (clutter_entry_get_invisible_char):
11290 * clutter/clutter-entry.h:
11291 Added text-visibility, which will allow you to show all entered text
11292 as a nominated charaecter ('*' is default).
11294 * examples/test-entry.c: (main):
11296 2007-06-01 Neil J. Patel <njp@o-hand.com>
11298 * clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position),
11299 (clutter_entry_clear_cursor_position),
11300 (clutter_entry_paint_cursor), (clutter_entry_paint),
11301 (clutter_entry_class_init), (clutter_entry_set_text),
11302 (clutter_entry_set_position):
11303 * clutter/clutter-entry.h:
11304 Added a signla to track cursor movements.
11305 Moved the sursor painting function so it can be subclassed.
11307 2007-06-01 Tomas Frydrych <tf@openedhand.com>
11309 * clutter/clutter-actor.c:
11310 (clutter_actor_get_transformed_point):
11311 Make input again relative to the actor; feed depth into transform.
11313 2007-06-01 Neil J. Patel <njp@o-hand.com>
11315 * clutter/clutter-entry.c: (clutter_entry_class_init),
11316 (clutter_entry_set_text):
11317 * clutter/clutter-entry.h:
11318 * examples/test-entry.c: (on_entry_text_changed), (main):
11319 Added a text-changed signal to the entry.
11321 2007-06-01 Neil J. Patel <njp@o-hand.com>
11323 * clutter/clutter-effect.h:
11324 Removed extra G_END_DECLS outside the #endif
11326 * clutter/clutter-entry.c: (clutter_entry_handle_key_event),
11327 (clutter_entry_add):
11328 * clutter/clutter-entry.h:
11329 * examples/test-entry.c: (on_key_release_cb):
11330 Added a function to deal with ClutterKeyEvents. Handles the majority
11331 of entry-related keyboard keys. However modifiers still need to be
11334 2007-06-01 Tomas Frydrych <tf@openedhand.com>
11336 * clutter/clutter-actor.c:
11338 Apply perspective transform before all other transforms.
11340 2007-06-01 Tomas Frydrych <tf@openedhand.com>
11342 * clutter/clutter-stage.c:
11343 (clutter_stage_init):
11344 Call _clutter_stage_refresh_perspective_matrix to initialize the
11345 matrix for default values.
11347 2007-06-01 Tomas Frydrych <tf@openedhand.com>
11349 * clutter/clutter-fixed.h:
11350 * clutter/clutter-behaviour-ellipse.h:
11351 * clutter/clutter-behaviour-ellipse.c:
11352 * clutter/clutter-behaviour-bspline.h:
11353 * clutter/clutter-behaviour-bspline.c:
11354 Documentation fixes.
11356 2007-05-31 Tomas Frydrych <tf@openedhand.com>
11358 * clutter/clutter-stage.c:
11359 * clutter/clutter-private.h:
11360 (_clutter_stage_get_perspective_matrix):
11363 * clutter/clutter-actor.c:
11364 (clutter_actor_get_tranformed_vertices):
11365 (clutter_actor_get_tranformed_point):
11366 Apply perspective matrix on the top of actor transform matrix.
11368 2007-05-31 Neil J Patel <njp@o-hand.com>
11370 * clutter/Makefile.am:
11371 * clutter/clutter-entry.c: (clutter_entry_set_property),
11372 (clutter_entry_get_property), (clutter_entry_ensure_layout),
11373 (clutter_entry_clear_layout),
11374 (clutter_entry_ensure_cursor_position), (clutter_entry_paint),
11375 (clutter_entry_request_coords), (clutter_entry_dispose),
11376 (clutter_entry_finalize), (clutter_entry_class_init),
11377 (clutter_entry_init), (clutter_entry_new_with_text),
11378 (clutter_entry_new_full), (clutter_entry_new),
11379 (clutter_entry_get_text), (clutter_entry_set_text),
11380 (clutter_entry_get_font_name), (clutter_entry_set_font_name),
11381 (clutter_entry_set_color), (clutter_entry_get_color),
11382 (clutter_entry_get_layout), (clutter_entry_set_alignment),
11383 (clutter_entry_get_alignment), (clutter_entry_set_position),
11384 (clutter_entry_get_position), (clutter_entry_add),
11385 (clutter_entry_remove), (clutter_entry_insert_text),
11386 (clutter_entry_delete_text), (clutter_entry_set_visible_cursor),
11387 (clutter_entry_get_visible_cursor):
11388 * clutter/clutter-entry.h:
11389 * clutter/clutter.h:
11390 * examples/Makefile.am:
11391 Initial import of ClutterEntry actor.
11393 * examples/test-entry.c: (on_key_release_cb), (main):
11394 A basic test for ClutterEntry
11396 2007-05-31 Tomas Frydrych <tf@openedhand.com>
11398 * clutter/clutter-actor.c:
11399 (clutter_actor_get_transformed_point):
11400 Fixed coordinance translation.
11402 2007-05-31 Matthew Allum <mallum@openedhand.com>
11404 * clutter/clutter-actor.c:
11405 * clutter/clutter-actor.h:
11406 Add clutter_actor_get_transformed_point()
11408 * clutter/clutter-main.c:
11409 Plug in perspective setup to redraw
11411 * clutter/clutter-stage.c:
11412 * clutter/clutter-stage.h:
11413 Remove audience code for now.
11415 2007-05-31 Matthew Allum <mallum@openedhand.com>
11417 * clutter/egl/clutter-backend-egl.c:
11418 * clutter/egl/clutter-backend-egl.h:
11419 * clutter/egl/clutter-event-egl.c:
11420 * clutter/egl/clutter-stage-egl.c:
11421 * clutter/egl/clutter-stage-egl.h:
11424 2007-05-31 Matthew Allum <mallum@openedhand.com>
11426 * clutter/glx/clutter-backend-glx.c:
11427 * clutter/glx/clutter-backend-glx.h:
11428 * clutter/glx/clutter-event-glx.c:
11429 * clutter/glx/clutter-glx.h:
11430 * clutter/glx/clutter-stage-glx.c:
11431 * clutter/glx/clutter-stage-glx.h:
11432 Change type nameing from Glx -> GLX.
11433 Add basic event filtering functionality
11435 2007-05-31 Tomas Frydrych <tf@openedhand.com>
11437 * clutter/clutter-behaviour-ellipse.c:
11438 Changed behaviour so that a beginning angle of 0 would correspond
11441 2007-05-31 Tomas Frydrych <tf@openedhand.com>
11443 * clutter/clutter-fixed.h:
11444 * clutter/clutter-fixed.c:
11445 (_clutter_double_to_int):
11446 Fixed return value to gint; added missing cast that broke negative
11447 number conversions.
11449 (CLUTTER_ANGLE_FROM_DEGX):
11450 Swapped division and multiplication around to avoid overflows.
11452 * clutter/clutter-behaviour-ellipse.c:
11453 Fixed incorrectly set lower bounds for angle properties.
11455 * clutter/clutter-actor.h:
11456 * clutter/clutter-actor.c:
11457 Added ClutterVertices type.
11458 (clutter_actor_get_transformed_vertices):
11461 2007-05-31 Matthew Allum <mallum@openedhand.com>
11463 Sync up for whats left for 0.4 release (and 0.6 ideas)
11465 2007-05-31 Matthew Allum <mallum@openedhand.com>
11467 * clutter/clutter-behaviour-ellipse.c:
11468 Remove uneeded knot signal
11470 * clutter/clutter-behaviour-path.c:
11471 Fix so knot signal is emitted only when a knot is reached.
11473 * clutter/clutter-effect.c:
11474 * clutter/clutter-effect.h:
11475 Add a scale effect.
11478 * doc/manual/Makefile.am:
11479 * doc/manual/clutter-manual.xml.in:
11480 * doc/manual/manual.xsl:
11481 * doc/manual/style.css:
11482 Add various bits for application developers manual.
11484 2007-05-30 Tomas Frydrych <tf@openedhand.com>
11486 * clutter/clutter-alpha.h:
11487 * clutter/clutter-alpha.c:
11488 Removed ClutterSmoothstep struct
11489 (clutter_smoothstep_inc_func):
11490 Renamed to clutter_smoothstep_func.
11491 (clutter_smoothstep_added_func):
11494 2007-05-29 Tomas Frydrych <tf@openedhand.com>
11496 * clutter/clutter-fixed.h:
11499 Fixed wrong sign in cos -> sin tranformation.
11501 * clutter/clutter-behaviour-ellipse.c:
11502 (clutter_behaviour_ellipse_advance):
11503 Replaced coordinace calculation for tilted ellipse with a sane
11506 * examples/behave.c:
11507 Added tilt parameter to the example ellptic path.
11509 2007-05-29 Tomas Frydrych <tf@openedhand.com>
11511 * clutter/cogl/gles/cogl.c:
11512 (cogl_setup_viewport):
11513 Fixed z_camera calculation.
11515 2007-05-28 Matthew Allum <mallum@openedhand.com>
11517 * clutter/clutter-texture.c: (clutter_texture_unrealize):
11518 Dont even try to move texture pixels from video -> system
11519 ram on unrealisation for GL/ES
11521 2007-05-28 Matthew Allum <mallum@openedhand.com>
11523 * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
11524 Fix for GL/ES. Barring texture reads this means all clutter
11525 functionality now works on GL/ES! (no doubt with a few yet to
11526 be discovered bugs)
11528 2007-05-28 Matthew Allum <mallum@openedhand.com>
11530 * clutter/clutter-backend.c:
11531 * clutter/clutter-backend.h:
11532 * clutter/glx/clutter-stage-glx.c:
11533 * clutter/glx/clutter-backend-glx.c:
11534 Fix up rendering pipeline removing clutter_backend_XXX_stage_paint
11535 and adding clutter_backend_XXX_redraw instead. Duplicates less
11536 code in backends, avoids clutter_actor_paint() getting called
11537 before stage is set up (viewport wise) and unbreaks things like
11540 * clutter/clutter-actor.c:
11541 * clutter/clutter-actor.h:
11542 * clutter/clutter-main.c:
11543 * clutter/clutter-private.h:
11544 * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
11545 Redo picking functionality a different way (via color indexing)
11546 as to provide more flexibility, possibly speed and more likely
11547 work with GL/ES (doesn't currently however - not sure why).
11549 * clutter/clutter-group.c:
11550 Add groups own 'pick' method.
11552 * clutter/cogl/cogl.h:
11553 * clutter/cogl/gl/cogl.c:
11554 * clutter/cogl/gles/cogl.c:
11555 Move clipping funtionality into cogl.
11557 * clutter/cogl/gles/cogl-defines.h:
11558 Hack around missing BGR format in GL/ES.
11560 * clutter/egl/clutter-backend-egl.c:
11561 * clutter/egl/clutter-backend-egl.h:
11562 * clutter/egl/clutter-stage-egl.c:
11563 * clutter/sdl/clutter-backend-sdl.c:
11564 * clutter/sdl/clutter-backend-sdl.h:
11565 * clutter/sdl/clutter-event-sdl.c:
11566 * clutter/sdl/clutter-stage-sdl.c:
11567 Update backends to newer API.
11568 Add basic mouse event translation to SDL.
11570 2007-05-25 Matthew Allum <mallum@openedhand.com>
11572 * clutter/clutter-color.c: (clutter_color_parse):
11573 Handle #rrggbbaa color setting strings (i.e with alpha).
11574 Set alpha to 0xff if it is not specified.
11576 * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos)
11577 Increase select buffer.
11579 * examples/super-oh.c:
11580 Fix up use of clutter_group_show_all()
11582 2007-05-25 Tomas Frydrych <tf@openedhand.com>
11584 * clutter/clutter-actor.c:
11585 * clutter/clutter-actor.h:
11586 Renamed clutter_actor_scalex() to clutter_actor_set_scale_with_gravityx
11587 Added floating point version clutter_actor_set_scale_with_gravity.
11589 * clutter/clutter-units.h:
11590 * clutter/clutter-actor.h:
11591 typedef ClutterUnit
11593 * clutter/clutter-fixed.h:
11594 * clutter/clutter-stage.c:
11595 CLUTTER_ANGLE_FROM_DEG(), CLUTTER_ANGLE_FROM_DEGX()
11596 renamed CLUTTER_DEGF_TO_CLUTTER_ANGLE to CLUTTER_ANGLE_FROM_DEGF
11598 * clutter/clutter-behaviour-ellipse.h:
11599 * clutter/clutter-behaviour-ellipse.c:
11600 * examples/behave.c:
11601 (clutter_behaviour_ellipse_new):
11602 Changed signature to take angles in degrees, and x,y offsets.
11603 (clutter_behaviour_ellipse_newx):
11604 Fixed version clutter_behaviour_ellipse_new.
11605 (clutter_behaviour_ellipse_set_center):
11606 (clutter_behaviour_ellipse_get_center):
11607 Changed signature to take x,y coords instead of ClutterKnot.
11609 clutter/cogl/gl/cogl.c:
11610 clutter/cogl/gles/cogl.c:
11611 (cogl_setup_viewport):
11612 Added z_camera calculation.
11614 2007-05-25 Matthew Allum <mallum@openedhand.com>
11617 Install a default flavour .pc file.
11619 * clutter/clutter-actor.c:
11620 Translate units correctly for translate()
11622 * clutter/clutter-feature.h:
11623 Add new texture features.
11625 * clutter/clutter-fixed.h:
11626 Add clutter angle conversion defines.
11628 * clutter/clutter-group.c:
11629 Use cogl not GL. Dont recurse on show all.
11631 * clutter/clutter-private.h:
11632 Remove sync_viewport.
11634 * clutter/clutter-rectangle.c:
11637 * clutter/clutter-stage.c:
11638 * clutter/clutter-stage.h:
11639 Add perspective settings. Remove viewport_sync.
11640 Add audience stubs. Fix up actor_at_pos a little (still broken)
11642 * clutter/clutter-texture.h:
11643 * clutter/clutter-texture.c:
11644 Redo pixel uploading. Add initial (disabled) YUV support.
11646 * clutter/clutter-timeline.c:
11647 Fire 'completed' signal when looping.
11649 * clutter/cogl/gl/cogl.c:
11650 Move some backend checks here.
11652 * clutter/glx/clutter-backend-glx.c:
11653 Actually check target display has GLX ext.
11655 * clutter/glx/clutter-stage-glx.c:
11656 Handle offscreen failing more gracefully.
11658 * examples/Makefile.am:
11661 * clutter/clutter-main.c:
11662 * clutter/clutter-feature.c:
11663 * clutter/clutter-backend.c:
11664 * clutter/clutter-alpha.c:
11665 Fix a compile warnings.
11667 * tests/Makefile.am:
11668 * tests/test-offscreen.c:
11669 * tests/test-scale.c:
11672 2007-05-23 Tomas Frydrych <tf@openedhand.com>
11674 * clutter/clutter-actor.c:
11675 * clutter/clutter-actor.h:
11676 (clutter_actor_get_abs_size_units):
11677 (clutter_actor_get_abs_position_units):
11678 removed from public api
11680 2007-05-22 Tomas Frydrych <tf@openedhand.com>
11685 * clutter/Makefile.am:
11686 * clutter/clutter-actor.c:
11687 * clutter/clutter-actor.h:
11688 * clutter/clutter-group.c:
11689 * clutter/clutter-label.c:
11690 * clutter/clutter-real.h:
11691 * clutter/clutter-units.h:
11692 * clutter/clutter.h:
11693 * clutter/egl/clutter-stage-egl.c:
11694 * clutter/glx/clutter-stage-glx.c:
11695 * clutter/sdl/clutter-stage-sdl.c:
11696 * examples/Makefile.am:
11697 * tests/Makefile.am:
11698 Removed ClutterReal; added clutter-units.
11700 2007-05-18 Tomas Frydrych <tf@openedhand.com>
11705 * clutter/Makefile.am:
11706 * clutter/clutter-actor.c:
11707 * clutter/clutter-actor.h:
11708 * clutter/clutter-behaviour-scale.c:
11709 * clutter/clutter-behaviour-scale.h:
11710 * clutter/clutter-group.c:
11711 * clutter/clutter-label.c:
11712 * clutter/clutter-real.h:
11713 * clutter/egl/clutter-stage-egl.c:
11714 * clutter/glx/clutter-stage-glx.c:
11715 * examples/Makefile.am:
11716 * tests/Makefile.am:
11719 2007-05-17 Emmanuele Bassi <ebassi@openedhand.com>
11721 * clutter/clutter-main.c: Use clutter_base_init() inside the
11722 initialisation process, instead of calling g_type_init() directly.
11724 * clutter/clutter-alpha.c:
11725 * clutter/clutter-behaviour-bspline.c:
11726 * clutter/clutter-behaviour-ellipse.c: Fix API documentation.
11728 2007-05-17 Matthew Allum <mallum@openedhand.com>
11731 Fix CLUTTER_NO_FPU typo.
11733 2007-05-17 Tomas Frydrych <tf@openedhand.com>
11735 * clutter/clutter-alpha.h:
11736 * clutter/clutter-alpha.c:
11737 * doc/reference/clutter-sections.txt:
11738 Added clutter_exp_inc_func() and clutter_exp_dec_func().
11740 2007-05-16 Emmanuele Bassi <ebassi@openedhand.com>
11742 * clutter/clutter-main.[ch]: Add clutter_base_init(), semi-private
11743 function to initialise just the base Clutter functionalities; it's
11744 only used by gtk-doc to introspect the classes.
11746 * clutter/clutter-feature.c: Do not access the private features
11747 data structure unless it has been initialised.
11749 2007-05-16 Tomas Frydrych <tf@openedhand.com>
11751 * clutter/clutter-alpha.h:
11752 * clutter/clutter-alpha.c:
11753 * doc/reference/clutter-sections.txt:
11754 Added clutter_sine_half().
11756 2007-05-16 Tomas Frydrych <tf@openedhand.com>
11758 * clutter/clutter-alpha.h:
11759 * clutter/clutter-alpha.c:
11760 * doc/reference/clutter-sections.txt:
11761 Fixed clutter_sine_inc(), added clutter_sine_dec().
11763 2007-05-16 Tomas Frydrych <tf@openedhand.com>
11765 * clutter/clutter-alpha.h:
11766 * clutter/clutter-alpha.c:
11767 * doc/reference/clutter-sections.txt:
11768 * doc/rererence/clutter.types:
11769 * doc/reference/tmpl/clutter-alpha.sgml:
11770 clutter_smoothstep_func alpha function,
11771 ClutterSmoothstep struct for smoothstep function data.
11773 2007-05-16 Matthew Allum <mallum@openedhand.com>
11775 * clutter/clutter-backend.c:
11776 * clutter/clutter-backend.h:
11777 * clutter/clutter-feature.c:
11778 * clutter/clutter-feature.h:
11779 * clutter/clutter-main.c:
11780 * clutter/clutter-main.h:
11781 * clutter/clutter-private.h:
11782 * clutter/clutter-stage.c:
11783 * clutter/cogl/cogl.h:
11784 * clutter/cogl/gl/cogl.c:
11785 * clutter/cogl/gles/cogl.c:
11786 * clutter/glx/clutter-backend-glx.c:
11787 * clutter/glx/clutter-backend-glx.h:
11788 * clutter/glx/clutter-glx.h:
11789 * clutter/glx/clutter-stage-glx.c:
11790 * clutter/glx/clutter-stage-glx.h:
11791 Rejig the features() foo, moving mostly into backends/cogl.
11793 2007-05-15 Tomas Frydrych <tf@openedhand.com>
11795 * clutter/clutter-actor.c:
11796 (clutter_actor_get_abs_position):
11797 Removed unnecessary CFX_MUL().
11799 2007-05-15 Tomas Frydrych <tf@openedhand.com>
11801 * clutter/clutter-behaviour-ellipse.h:
11802 * clutter/clutter-behaviour-ellipse.c:
11803 (clutter_behaviour_ellipse_new):
11804 Added a tilt parameter.
11806 2007-05-14 Matthew Allum <mallum@openedhand.com>
11808 * clutter/clutter-behaviour-path.c:
11809 Fix bug where last knot position wouldn't get reached.
11811 * clutter/clutter-group.c:
11814 * clutter/clutter-timeline.h:
11815 * clutter/clutter-timeline.c:
11816 Add clutter_timeline_copy (needed for ClutterEffect)
11818 * clutter/clutter-version.h.in:
11819 Export windowing system / GL backend etc defines.
11821 * clutter/Makefile.am:
11822 * clutter/clutter-effect.c:
11823 * clutter/clutter-effect.h:
11824 * clutter/clutter.h:
11826 * clutter/glx/clutter-backend-glx.c:
11829 * clutter/clutter-alpha.h:
11835 * examples/Makefile.am:
11836 * examples/slider.c:
11837 Add Robs slider game.
11839 2007-05-10 Matthew Allum <mallum@openedhand.com>
11841 * clutter/egl/clutter-backend-egl.c:
11842 * clutter/egl/clutter-event-egl.c:
11843 * clutter/sdl/clutter-backend-sdl.c:
11844 * clutter/sdl/clutter-event-sdl.c:
11845 Fix SDL & EGL backends to work with newer backend code.
11847 2007-05-10 Tomas Frydrych <tf@openedhand.com>
11849 * clutter/clutter-color.h:
11850 * clutter/clutter-color.c:
11851 Added clutter_color_to/from_hlsx()
11852 (clutter_color_to/from_hls):
11853 Clobber hue to 0 .. 250
11855 2007-05-10 Matthew Allum <mallum@openedhand.com>
11857 * clutter/clutter-backend.c:
11858 * clutter/clutter-backend.h:
11859 * clutter/clutter-event.c:
11860 * clutter/clutter-main.c:
11861 * clutter/clutter-private.h:
11862 * clutter/glx/clutter-backend-glx.c:
11863 * clutter/glx/clutter-backend-glx.h:
11864 * clutter/glx/clutter-event-glx.c:
11865 Rejig backend event code as to simplify a little.
11866 NOTE: This breaks non glx backends.
11868 * tests/Makefile.am:
11869 * tests/test-events.c:
11870 Add a very simple event test.
11872 * tests/test-textures.c: (main):
11873 Add some more sizes to the test.
11875 2007-05-05 Matthew Allum <mallum@openedhand.com>
11877 * clutter/clutter-texture.c:
11878 Fix typos with new cogl using texture code. Fixes tiled textures.
11879 Add a check for max npots size.
11883 * tests/Makefile.am:
11884 * tests/test-textures.c:
11885 Add a simple texture test.
11887 2007-05-02 Matthew Allum <mallum@openedhand.com>
11889 * clutter/Makefile.am:
11890 * clutter/clutter-stage.c:
11891 * clutter/sdl/Makefile.am:
11892 * clutter/sdl/clutter-backend-sdl.c:
11893 * clutter/sdl/clutter-backend-sdl.h:
11894 * clutter/sdl/clutter-event-sdl.c:
11895 * clutter/sdl/clutter-sdl.h:
11896 * clutter/sdl/clutter-stage-sdl.c:
11897 * clutter/sdl/clutter-stage-sdl.h:
11899 Add a basic SDL based backend. Lacks real input event handling
11900 (translation) as yet.
11901 Also allows for clutter to be built against dgles.
11903 2007-05-02 Matthew Allum <mallum@openedhand.com>
11905 * clutter/clutter-actor.c:
11906 * clutter/cogl/gles/cogl.c:
11907 Fix rotation + other fixed point cleanups.
11909 * clutter/clutter-texture.h:
11910 Sketch out an updated API.
11912 2007-05-01 Matthew Allum <mallum@openedhand.com>
11914 * clutter/clutter-rectangle.c:
11915 Comment out color match check for now as appears to be causing
11916 borders to always get pained.
11918 * clutter/clutter-texture.h:
11919 Add some format defines (unused as yet)
11921 * clutter/cogl/gles/cogl.c:
11922 * clutter/egl/clutter-stage-egl.c:
11924 Various OpenGL ES backend related fixes and tweaks.
11926 2007-04-30 Tomas Frydrych <tf@openedhand.com>
11928 * clutter/clutter-fixed.c (clutter_sini):
11929 Fixed bug in reducing angle to 0-2pi.
11931 * clutter/clutter-behaviour-ellipse.h:
11932 * clutter/clutter-behaviour-ellipse.c:
11933 * clutter/clutter.h:
11934 * clutter/Makefile.am:
11935 * doc/clutter.types:
11936 * doc/clutter-docs.sgml:
11937 Added ClutterBehaviourEllipse for movement along
11940 * examples/bspline.c:
11941 * examples/behave.c:
11942 * examples/Makefile.am:
11943 Added --path commandline option to behave to choose different
11944 path types (poly, ellipse, bspline) and dropped bspline example.
11946 2007-04-28 Matthew Allum <mallum@openedhand.com>
11948 * clutter/Makefile.am:
11949 * clutter/clutter-debug.h:
11950 * clutter/clutter-fixed.h:
11951 * clutter/clutter-main.c:
11952 * clutter/cogl/gles/Makefile.am:
11953 * clutter/cogl/gles/cogl-defines.h:
11954 * clutter/cogl/gles/cogl.c:
11955 * clutter/egl/clutter-backend-egl.c:
11956 * clutter/egl/clutter-backend-egl.h:
11957 * clutter/egl/clutter-stage-egl.c:
11959 Populate most stubs for cogl GL/ES implementation.
11960 (against vincent - see http://svn.o-hand.com/repos/misc/ogles)
11961 Add various fixups to EGL backend.
11962 Code builds and runs (on 16bpp) but yet displays much (is close!)
11964 * clutter/pango/pangoclutter-render.c:
11965 comment out some rouge glBegin/end calls.
11967 2007-04-27 Matthew Allum <mallum@openedhand.com>
11969 * clutter/Makefile.am:
11970 * clutter/clutter-actor.c:
11971 * clutter/clutter-clone-texture.c:
11972 * clutter/clutter-rectangle.c:
11973 * clutter/clutter-stage.c:
11974 * clutter/clutter-texture.c:
11975 * clutter/cogl/cogl.h:
11976 * clutter/cogl/gl/Makefile.am:
11977 * clutter/cogl/gl/cogl-defines.h:
11978 * clutter/cogl/gl/cogl.c:
11979 * clutter/cogl/gles/Makefile.am:
11980 * clutter/cogl/gles/cogl-defines.h:
11981 * clutter/cogl/gles/cogl.c:
11982 * clutter/glx/Makefile.am:
11983 * clutter/glx/clutter-stage-glx.c:
11984 * clutter/pango/Makefile.am:
11985 * clutter/pango/pangoclutter-render.c:
11987 Add initial 'cogl' implementation. 'cogl' is a simple abstration
11988 layer over GL and GL/ES used by clutter internally. It should
11989 eventually allow clutter applications to be run on both GL and GL/ES
11990 with just a recompile as well as provide more debugging and potentially
11991 profiling information for GL and GL/ES usage.
11993 This commit contains the initial GL implementation.
11995 2007-04-26 Emmanuele Bassi <ebassi@openedhand.com>
11997 Merge from clutter-0-2
11999 * clutter/clutter-label.c: Unbreak the "use-markup" property
12000 by actually passing the markup to pango_layout_set_markup().
12002 2007-04-25 Emmanuele Bassi <ebassi@openedhand.com>
12004 Merge from clutter.git/master
12006 * clutter/glx/clutter-event-glx.c:
12007 * clutter/glx/clutter-stage-glx.c: Implement the _NET_WM_PING
12008 protocol handling on the main stage window.
12010 * clutter/clutter-stage.h:
12011 * clutter/clutter-stage.c:
12012 * clutter/clutter-main.c: Handle CLUTTER_DELETE events internally,
12013 by calling clutter_main_quit(), and remove the ::delete-event
12014 signal from ClutterStage; clean up the signal emission sequence
12015 for the events: emit the ::event signal before emitting any signal
12016 and the ::event-after signal after the signal has been emitted; move
12017 the signal emission calls inside ClutterStage so we can call
12018 g_signal_emit() instead of g_signal_emit_by_name(), thus sparing us
12019 a lookup for each event.
12021 * examples/test.c: Remove ::delete-event signal handling.
12023 2007-04-19 Emmanuele Bassi <ebassi@openedhand.com>
12025 Merge from clutter.git/master
12027 * clutter/clutter-backend.h:
12028 * clutter/clutter-backend.c: Add API for getting screen/display
12029 properties from the backend.
12031 * clutter/glx/clutter-backend-glx.c:
12032 * clutter/glx/clutter-backend-egl.c: Retrieve screen/display
12033 properties inside the backends init function.
12035 * clutter/glx/clutter-event-glx.c: Handle the WM_PROTOCOLS
12036 ClientMessage events.
12038 * clutter/glx/clutter-stage-glx.c: Use XSetWMProtocols to enable
12039 the WM_PROTOCOLS ClientMessage events on the stage window.
12041 * clutter/glx/clutter-glx.h: Return the Screen pointer and not
12042 the screen number in clutter_glx_get_default_screen(). The screen
12043 number is returned by clutter_backend_get_screen_number(), or
12044 by calling XScreenNumberOfScreen on the returned pointer.
12046 * clutter/clutter-event.h: Add CLUTTER_DELETE to the event types.
12048 * clutter/clutter-main.c: Emit the ClutterStage::delete-event
12049 when receiving a CLUTTER_DELETE event; if the signal handlers
12050 return FALSE, call clutter_main_quit().
12052 * clutter/clutter-marshal.list:
12053 * clutter/clutter-stage.c: Use the right marshaller function
12054 for the delete-event closure.
12056 * examples/test.c: Test the "delete-event" signal handler.
12058 2007-04-16 Emmanuele Bassi <ebassi@openedhand.com>
12060 Merge from clutter.git/merge-from-stable
12062 * clutter/clutter-event.h:
12063 * clutter/glx/clutter-event-glx.c: Add the XEMBED protocol support
12064 in the GLX backend, for embedding the stage window into another
12065 X window. This allows cross-toolkit inclusion and makes clutter-gtk
12068 * clutter/clutter-behaviour-scale.c: Implement every ClutterGravity
12069 value inside the scale behaviour and make the actors anchor to a
12070 gravity when scaling up and down.
12072 * clutter/clutter-texture.c: Revert to copying GdkPixbuf areas to
12073 correctly implement the texture tiling. This fixes segmentation
12074 faults occurring with cards with a small texture memory area.
12076 * clutter/clutter-actor.c: Call g_object_freeze_notify() (and take
12077 a reference on the actor) inside clutter_actor_request_size() so
12078 that the notifications get unqueued at the end of the size request.
12080 2007-04-16 Emmanuele Bassi <ebassi@openedhand.com>
12082 Merge from clutter.git/work
12084 * clutter/clutter-behaviour-bspline.[ch]: Return a ClutterBehaviour
12085 when splicing the b-spline; fix the header and the API documentation;
12086 hush the compiler warnings; kill of some pointer indirections.
12088 * clutter/clutter-behaviour-rotate.[ch]: Add a rotate behaviour,
12089 with user defined axis, direction and sweep angle.
12091 * clutter/clutter-behaviour.c (clutter_behaviour_is_applied): Add
12092 a parameter ISA check and return FALSE if it fails.
12094 2007-04-12 Tomas Frydrych <tf@openedhand.com>
12096 * clutter/clutter-behaviour.h:
12097 * clutter/clutter-behaviour.c:
12098 * clutter/clutter-behaviour-path.h:
12099 * clutter/clutter-behaviour-path.c:
12100 Moved declaration of ClutterKnot from clutter-behaviour path
12101 into clutter-behaviour.
12103 * clutter/clutter-fixed.h
12104 * clutter/clutter-fixed.c
12105 Added myself as an author.
12107 * clutter/Makefile.am:
12108 * clutter/clutter.h:
12109 * clutter/clutter-behaviour-bspline.h:
12110 * clutter/clutter-behaviour-bspline.c:
12111 Added new bezier spline behaviour.
12113 * examples/bspline.c:
12114 * examples/Makefile.am:
12115 An example of using bspline path.
12117 2007-04-07 Matthew Allum <mallum@openedhand.com>
12119 * clutter/glx/clutter-backend-glx.c:
12122 2007-03-29 Tomas Frydrych <tf@openedhand.com>
12124 * clutter/clutter-stage.c:
12125 (perspective): fixed degree -> rad conversion for fovy angle
12126 (perspectivex): fixed degree -> rad conversion for fovy angle,
12127 added code for gle glMultMatrixx().
12129 2007-03-29 Tomas Frydrych <tf@openedhand.com>
12131 * configure.ac: fixed typo
12133 * clutter/clutter-fixed.c:
12134 * clutter/clutter-fixed.h:
12135 (clutter_tani): fast implementation of tan()
12136 (clutter_qmulx): improved-precission fixed point multiply
12138 * clutter/clutter-stage.c:
12139 (perspectivex): fixed point implementaiton of perspective()
12140 (_clutter_stage_sync_viewport):
12141 (clutter_stage_get_actor_at_pos):
12142 use perspectivex() instead of perspective()
12144 2007-03-27 Matthew Allum <mallum@openedhand.com>
12146 * clutter/cogl/Makefile.am:
12147 * clutter/cogl/cogl.h:
12148 * clutter/cogl/gles/Makefile.am:
12149 * clutter/cogl/gles/cogl.c:
12150 Begin poplulating cogl GLES code.
12153 * clutter/egl/clutter-event-egl.c:
12154 * clutter/egl/clutter-stage-egl.c:
12155 * clutter/egl/clutter-stage-egl.h:
12156 * clutter/egl/clutter-backend-egl.c:
12157 * clutter/egl/clutter-backend-egl.h:
12158 * clutter/egl/clutter-egl.h:
12159 Add initial EGL/X backend work mostly ported from backend branch.
12160 Builds but untested as yet.
12162 * clutter/glx/clutter-stage-glx.c:
12163 Only include XFixes Header if we have have it.
12165 * clutter/clutter-behaviour.c: (clutter_behaviour_apply):
12166 * clutter/clutter-behaviour.h:
12167 Add clutter_behaviour_is_applied()
12169 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
12171 * clutter/clutter-stage.h: Remove unused clutter_stage_flush()
12174 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
12176 * clutter/glx/clutter-glx.h:
12177 * clutter/glx/clutter-stage-glx.c: (Re-)Implement the foreign
12178 window setting function for the stage in the GLX backend.
12180 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
12182 * clutter/clutter-stage.h: Declare the clutter_perspective_get_type()
12183 function in the header.
12185 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
12187 * clutter/cogl/cogl.h: Add header and compiler guards.
12189 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
12191 * clutter/glx/clutter-stage-glx.c: Remove the check in the
12192 paint chain up: we know for sure that the parent's paint
12195 2007-03-27 Matthew Allum <mallum@openedhand.com>
12197 * clutter/clutter-feature.c:
12198 Rejig ifdef's a little. Make drm vblanking Linux only.
12200 * clutter/clutter-stage.c:
12201 * clutter/clutter-stage.h:
12202 Add a perspective boxed type.
12204 * clutter/glx/clutter-stage-glx.c:
12207 * clutter/Makefile.am:
12208 * clutter/cogl/Makefile.am:
12209 * clutter/cogl/cogl.h:
12210 * clutter/cogl/gl/Makefile.am:
12211 * clutter/cogl/gl/cogl.c:
12213 Very initial work on 'cogl' GL/GLES abstraction/utility code.
12215 2007-03-26 Emmanuele Bassi <ebassi@openedhand.com>
12217 * clutter/clutter-behaviour-scale.[ch]: Add API for getting
12218 the scale bounds and the gravity from a scale behaviour instance.
12220 2007-03-26 Emmanuele Bassi <ebassi@openedhand.com>
12222 * clutter/clutter-timeline.c: Fix last commit.
12224 2007-03-25 Emmanuele Bassi <ebassi@openedhand.com>
12226 * clutter/clutter-timeline.c: Slightly lower the proiority
12227 of the ClutterTimeline tick, so that events get a higher
12228 priority in the main loop.
12230 2007-03-25 Emmanuele Bassi <ebassi@openedhand.com>
12232 * clutter/clutter-event.[ch]: Remove the flags member from
12233 the ClutterEvent structure; remove the ClutterEventFlags
12236 2007-03-25 Emmanuele Bassi <ebassi@openedhand.com>
12238 * clutter/clutter-stage.h: Remove the ::get_actor_at_pos()
12239 and ::flush() vfuncs.
12241 * clutter/glx/clutter-stage-glx.c: Remove the implementations
12242 of those vfuncs from the backend specific code, as they are
12245 * clutter/clutter-stage.c: Add back the actor hit detection
12246 code in the base stage class, along with the viewport
12247 synchronisation function.
12249 * clutter/clutter-private.h: Declare the private function
12250 _clutter_stage_sync_viewport().
12252 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
12254 * clutter/clutter-backend.c: Clear the event queue when
12255 disposing the backend object; remove the initialisation
12256 of the backend structure members...
12258 * clutter/glx/clutter-backend-glx.c: ... and keep it here
12259 in the backends where it belongs.
12261 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
12263 * clutter/clutter-private.h:
12264 * clutter/clutter-backend.h: Move the backend functions
12265 into the private header.
12267 * clutter/glx/clutter-stage-glx.c:
12268 * clutter/glx/clutter-event-glx.c:
12269 * clutter/clutter-main.c:
12270 * clutter/clutter-stage.c: Update the calls to the private
12273 * clutter/clutter-backend.[ch]: Add an ::init_features
12274 vfunc to ClutterBackend.
12276 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
12278 * clutter/glx/clutter-stage-glx.c:
12279 Make sure the top-left corner of the box is our origin,
12280 when returning the allocation.
12282 * clutter/clutter-stage.c:
12283 * clutter/clutter-group.c: Add tracing for the paint
12286 2007-03-23 Matthew Allum <mallum@openedhand.com>
12288 * clutter/glx/clutter-stage-glx.c:
12289 (clutter_stage_glx_allocate_coords):
12290 Make new stage return correct width & height.
12292 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
12294 Assorted build fixes to pass distcheck.
12296 * clutter/glx/Makefile.am: Install the clutter-glx.h header.
12298 * clutter/Makefile.am: Actually apply linker flags.
12300 * configure.ac: Use a more readable CLUTTER_API_VERSION instead
12301 of CLUTTER_MAJORMINOR; require gobject-2.0 with glib-2.0 >= 2.10,
12302 as we are using GObject and the slice allocator from glib 2.10.
12304 * clutter.pc.in: Add the apiversion variable.
12306 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
12308 * clutter/clutter-event.c: Pop and peek the event queue
12309 from the tail - it's a queue, not a stack.
12311 * clutter/clutter-private.h:
12312 * clutter/clutter-main.c: Add a boolean signal accumulator.
12314 * clutter/clutter-stage.[ch]: Add an event argument to
12315 the 'delete-event' signal; rename the 'input-event' signal
12316 to 'event'; add the static scope flag to all the stage
12319 * examples/*.c: Update.
12321 2007-03-22 Emmanuele Bassi <ebassi@openedhand.com>
12323 * clutter.pc.in: Require gobject-2.0 too.
12325 * ChangeLog: Fix the previous commit log.
12327 2007-03-22 Emmanuele Bassi <ebassi@openedhand.com>
12329 * clutter/clutter-private.h: Remove inclusion of backend-specific
12330 headers; update the main context object; add the declarations for
12331 the event queue functions.
12333 * clutter/clutter-backend.[ch]: Add the abstract ClutterBackend
12334 object, which holds backend-specific settings, the main stage,
12335 and the event queue. Every backend must implement a subclass of
12336 ClutterBackend and ClutterStage.
12338 * clutter/clutter-feature.c: Protect the GLX specific calls
12339 behing #ifdef HAVE_CLUTTER_GLX.
12341 * clutter/clutter-actor.c:
12342 * clutter/clutter-group.c:
12343 * clutter/clutter-clone-texture.c: Include GL/gl.h
12345 * clutter/clutter-event.[ch]: Update public API and implement the
12346 event queue private API; hold a reference on the event objects;
12347 move out the keysym-to-unicode table; add the new event types.
12349 * clutter/clutter-color.h: Include clutter-fixed.h
12351 * clutter/clutter-main.c: Update API; get the main stage
12352 from the backend object; process the event received from the
12353 queue; lock/unlock the main mutex if we have one; move the
12354 initialisation process sooner in the init sequence, in order to
12355 have the backend object when we check for options; call the
12356 backed vfuncs in the pre/post parse hooks.
12358 * clutter/clutter-stage.c: Make ClutterStage and abstract class,
12359 implemented by the backends.
12361 * clutter/clutter/glx/clutter-glx.h:
12362 * clutter/clutter/glx/clutter-backend-glx.[ch]:
12363 * clutter/clutter/glx/clutter-event-glx.c:
12364 * clutter/clutter/glx/clutter-stage-glx.[ch]:
12365 * clutter/clutter/glx/Makefile.am: Add the GLX backend.
12367 * clutter/clutter/egl/clutter-backend-egl.[ch]:
12368 * clutter/clutter/egl/clutter-event-egl.c:
12369 * clutter/clutter/egl/clutter-stage-egl.[ch]:
12370 * clutter/clutter/egl/Makefile.am: Add the stub for a EGL backend.
12372 * examples/*.c: Update for the new API.
12374 * configure.ac: Check for the XFixes X extension; add a configure
12375 switch for choosing the backend; show the backend we are building
12378 * clutter.pc.in: Add the backend to the exported variables.
12380 * clutter/Makefile.am: Install the headers in the
12381 clutter-$api_version/clutter directory, as usual; call the shared
12382 object libclutter-$backend-$api_version; build glue for the
12383 backend static library.
12385 2007-03-19 Matthew Allum <mallum@openedhand.com>
12387 * clutter/clutter-label.c:
12389 * clutter/clutter-texture.c: (clutter_texture_get_pixbuf):
12390 Backport of fix to get_pixbuf on non alpha textures from 0_2 branch.
12392 2007-03-19 Emmanuele Bassi <ebassi@openedhand.com>
12394 * clutter/clutter-texture.c: Clean up code; add checks
12397 2007-02-18 Matthew Allum <mallum@openedhand.com>
12399 * clutter/clutter-actor.c: (clutter_actor_reparent):
12400 Add a FIXME re calling clutter_group here.
12401 * clutter/clutter-group.c:
12402 Fix clutter_group_remove_all
12404 2007-02-15 Matthew Allum <mallum@openedhand.com>
12406 * clutter/clutter-group.h:
12407 Add missing clutter_group_remove_all declaration.
12409 2007-02-14 Matthew Allum <mallum@openedhand.com>
12411 * clutter/Makefile.am:
12412 * clutter/clutter-main.c:
12413 * clutter/clutter-stage.c:
12414 * clutter/clutter-version.h.in:
12416 * examples/super-oh.c:
12417 Add CLUTTER_FLAVOUR define.
12419 2007-02-13 Matthew Allum <mallum@openedhand.com>
12421 * examples/super-oh.c: (screensaver_setup):
12422 Fix example to build with new glx api
12424 2007-02-07 Emmanuele Bassi <ebassi@openedhand.com>
12426 * clutter/clutter-debug.h: Define the CLUTTER_MARK()
12427 macro even when CLUTTER_ENABLE_DEBUG is not
12430 2007-01-30 Tomas Frydrych <tf@openedhand.com>
12432 * clutter/clutter-alpha.c:
12434 (clutter_sine_func):
12435 (clutter_sine_inc_func):
12436 fixed the fixed point math.
12438 2007-01-30 Emmanuele Bassi <ebassi@openedhand.com>
12440 * clutter/clutter-alpha.h:
12441 * clutter/clutter-alpha.c: Add the square waveform
12442 function clutter_square_func() to the precooked
12445 2007-01-23 Matthew Allum <mallum@openedhand.com>
12449 * clutter/Makefile.am:
12450 * clutter/clutter-backend-glx.c:
12451 * clutter/clutter-backend-glx.h:
12452 * clutter/clutter-event.c:
12453 * clutter/clutter-feature.c:
12454 * clutter/clutter-group.c:
12455 * clutter/clutter-main.c:
12456 * clutter/clutter-main.h:
12457 * clutter/clutter-private.h:
12458 * clutter/clutter-stage-glx.c:
12459 * clutter/clutter-stage-glx.h:
12460 * clutter/clutter-stage.c:
12461 * clutter/clutter-stage.h:
12462 * clutter/clutter-util.c:
12463 * clutter/clutter-util.h:
12464 * clutter/pango/pangoclutter-render.c:
12466 * examples/Makefile.am:
12467 Initial work in supporting different GL backends (ie. GLX/EGL/DirectFB etc).
12468 Currently just GLX supported and now mostly self contained.
12471 Add a note about caching glenables
12473 2007-01-23 Tomas Frydrych <tf@openedhand.com>
12475 * clutter/clutter-fixed.c:
12476 (_clutter_double_to_fixed):
12477 (_clutter_double_to_int):
12478 Fixed to avoid problems with punned pointers and gcc
12481 * clutter/pango/pangoclutter-private.h:
12482 Simplified PANGO_PIXELS_26_6 macro.
12484 * clutter/pango/pangoclutter-font.c:
12485 (_pango_clutter_font_new):
12486 Replace floating with fixed point math.
12488 2007-01-19 Tomas Frydrych <tf@openedhand.com>
12490 * clutter/clutter-fixed.c: (clutter_sqrti):
12491 Use union instead of casting int <-> float to get rid of
12492 punned-pointer warning and avoid gcc optimatisation breaking
12493 the function on arm.
12495 2007-01-19 Emmanuele Bassi <ebassi@openedhand.com>
12497 Allow the ClutterGroup subclasses to override the add and
12500 * clutter/clutter-group.c: Move the add and remove code from
12501 clutter_group_add() and clutter_group_remove() to the signal
12502 class closures; make the "add" and "remove" signals as
12505 2007-01-19 Tomas Frydrych <tf@openedhand.com>
12507 * clutter/clutter-fixed.h.:
12508 * clutter/clutter-fixed.c:
12509 Added fast double to int and double to fixed point conversion
12510 routines; changed CLUTTER_FLOAT_TO_FIXED to use it.
12511 Replaced clutter_sqrti with fixed point implementation of the QIII
12514 * clutter/clutter-behavior-path.c: use clutter_sqrti always
12516 * clutter/clutter-alpha.c:
12517 (sinc_func): replaced double -> int cast with CLUTTER_FLOAT_TO_INT
12519 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
12521 * configure.ac: Post release bump to 0.3.0.
12523 2007-01-18 =============== 0.2 Release ================================
12525 2007-01-18 Matthew Allum <mallum@openedhand.com>
12528 Update for 0.2 release
12530 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
12532 * clutter/clutter-group.h: Add public functions
12533 clutter_group_get_n_children() and clutter_group_get_nth_child().
12535 * clutter/clutter-behaviour.h:
12536 * clutter/clutter-behaviour.c: Fix header alignment; fix argument
12539 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
12541 * clutter/Makefile.am: Use the build dir when linking to the
12542 internal pango clutter renderer.
12544 2007-01-18 Tomas Frydrych <tf@openedhand.com>
12546 * clutter/clutter-fixed.h: fixed a typo in comment
12548 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
12550 * clutter/clutter-fixed.h: Remove some inline documentation to
12551 make the header more readable.
12553 * clutter/clutter-behaviour.c: The actors are store inside a
12554 GSList and not in a GList, so change the list operations to
12557 2007-01-18 Tomas Frydrych <tf@openedhand.com>
12559 * clutter/clutter-color.c:
12560 (clutter_color_darken):
12561 (clutter_color_lighten):
12562 Changed calls to clutter_color_shade calls to clutter_color_shadex
12564 2007-01-17 Matthew Allum <mallum@openedhand.com>
12567 Bump up version to 0.2.0
12569 2007-01-17 Tomas Frydrych <tf@openedhand.com>
12571 * clutter/clutter-behavior-path.c:
12572 Added --without-fpu option.
12574 * doc/refrence/tmpl/clutter-fixed.sgml:
12575 * clutter/clutter-fixed.c:
12576 * clutter/clutter-fixed.h:
12577 Documentation for fixed point API.
12579 * AUTHORS: added self.
12581 2007-01-17 Emmanuele Bassi <ebassi@openedhand.com>
12583 * clutter/clutter-feature.h:
12584 * clutter/clutter-feature.c: Move the GL headers from the
12585 header file to the body.
12587 * clutter/clutter-fixed.h:
12588 * clutter/clutter-fixed.c: Fix apidoc.
12590 * clutter/clutter-color.h:
12591 * clutter/clutter-color.c: Ditto.
12593 2007-01-17 Tomas Frydrych <tf@openedhand.com>
12595 * clutter/clutter-fixed.h:
12596 * clutter/clutter-fixed.c:
12597 * clutter/clutter-alpha.c:
12598 Renamed clutter_fixed_sin() to clutter_sinx() and
12599 clutter_angle_sin() to clutter_sini(); added clutter_sqrtx()
12600 and clutter_sqrti(); added missing copyright.
12602 * clutter/clutter-behavior.c:
12603 replaced call to sqrt() with clutter_sqrti()
12605 * clutter/clutter-behavior-scale.c:
12606 (clutter_behaviour_scale_alpha_notify):
12607 Replaced floating point math with fixed point.
12609 2007-01-16 Emmanuele Bassi <ebassi@openedhand.com>
12611 * clutter/clutter-feature.c: Use clutter_vblank_method() to
12612 get the VBlank method name from the environment variable OR
12613 the command line switch.
12615 (clutter_feature_do_init): Move the check on the features
12616 state here, to avoid an expensive function call, and inline
12619 * clutter/clutter-fixed.c: Fix gtk-doc.
12621 * clutter/clutter-main.c: Add a --clutter-vblank command line
12622 switch controlling the VBlank method to be used: it overrides
12623 the CLUTTER_VBLANK environment variable.
12625 (pre_parse_hook), (clutter_init),
12626 (clutter_init_with_args): Move thread initialisation before
12627 type init, to avoid the warning that comes with newer GLib
12630 * clutter/clutter-group.h:
12631 * clutter/clutter-group.c: Mark clutter_group_show_all() and
12632 clutter_group_hide_all() as deprecated.
12634 2007-01-16 Matthew Allum <mallum@openedhand.com>
12640 Sync up, mainly with 0.3 todo items
12642 * clutter/clutter-behaviour.c:
12643 * clutter/clutter-behaviour.h:
12644 clutter_behaviour_get_n_actors() / clutter_behaviour_get_nth_actor()
12647 * clutter/clutter-stage.c: (clutter_stage_realize):
12648 Experimental (disabled) visual setting code.
12650 * clutter/clutter-feature.c:
12651 Check for GL_EXT_texture_rectangle (#198 - Frederick Riss)
12653 * clutter/clutter-group.c: (clutter_group_allocate_coords):
12654 Fix for group size allocation (#199 - Frederick Riss)
12656 * clutter/clutter-texture.c: (texture_upload_data):
12657 Fix texture unpacking row length (#197 Frederick Riss)
12659 * examples/Makefile.am:
12660 Fix LDADD in build (#196 - Frederick Riss)
12662 2007-01-16 Tomas Frydrych <tf@openedhand.com>
12664 * clutter/clutter-fixed.h:
12665 Added integer ClutterAngle type, protype of clutter_angle_sin,
12666 convenience macros clutter_fixed_cos and clutter_angle_cos, plus
12667 other convenience macros for commonly used constants and ops.
12668 * clutter/clutter-fixed.c:
12669 (clutter_fixed_sin):
12670 Fixed to work for negative angles.
12671 (clutter_angle_sin):
12672 Fast fixed point sin function for ClutterAngle angles.
12673 * clutter/clutter-alpha.c:
12674 (clutter_sin_func, clutter_sin_inc_func):
12675 Changed to use clutter_angle_sin function.
12676 * clutter-behavior-path.c:
12677 replaced floating point with fixed point operations
12678 * clutter/clutter-color.c:
12679 * clutter/clutter-color.h:
12680 Added (clutter_color_shadex), replaced floating point operations
12683 2007-01-15 Tomas Frydrych <tf@openedhand.com>
12685 * clutter/clutter-fixed.h: (CLUTTER_FIXED_TO_DOUBLE/FLOAT):
12686 Fixed macro so it works for negative values.
12687 * clutter/clutter-fixed.c: (clutter_fixed_sin):
12688 Implemented fixed point sin function.
12689 * clutter/clutter-alpha.c: (clutter_sin_func, clutter_sin_inc_func):
12690 Pluged in fixed point sin function.
12692 2007-01-07 Matthew Allum <mallum@openedhand.com>
12694 * clutter/clutter-actor.c: (clutter_actor_allocate_coords):
12695 Fix an amazingly not noticed until now typo.
12698 * clutter/clutter-behaviour-opacity.c:
12699 (clutter_behaviour_alpha_notify):
12700 Take into account initial opacity value when calculating from alpha.
12702 * clutter/clutter-group.c:
12703 Add new get_nth_child() and get_n_children() api calls.
12705 2007-01-04 Matthew Allum <mallum@openedhand.com>
12707 * clutter/clutter-actor.c:
12708 * clutter/clutter-actor.h:
12709 Add new set_width/height API calls.
12710 Tweak scaling by reseting matrix.
12711 Make set_opactiy() take parent opacity into account.
12714 * clutter/clutter-alpha.c:
12715 Add more sine functionality.
12717 * clutter/clutter-behaviour-opacity.c:
12718 Dont make a copy of all applied actors but use a foreach()
12720 * clutter/clutter-behaviour-scale.c:
12721 Give correct limits to propertys.
12722 Tweak gravity a little more.
12725 * clutter/clutter-behaviour.c: (clutter_behaviour_remove):
12726 Minor warning text change.
12728 * clutter/clutter-feature.c: (clutter_feature_wait_for_vblank):
12729 Minor dri ioctl tweak.
12731 * clutter/clutter-label.c:
12732 * clutter/clutter-label.h:
12733 Add new label_full api call.
12735 2006-12-27 Emmanuele Bassi <ebassi@openedhand.com>
12737 * clutter/clutter-stage.[ch]:
12738 * clutter/clutter-event.[ch]: Revert changes; this is what
12739 happens when you keep old tree around.
12741 2006-12-27 Emmanuele Bassi <ebassi@openedhand.com>
12743 * clutter/clutter-color.h:
12744 * clutter/clutter-color.c: Add clutter_color_to_string(),
12745 which creates a hex-encoded color string from a ClutterColor.
12747 2006-12-20 Matthew Allum <mallum@openedhand.com>
12750 Add some missing improvements.
12752 2006-12-17 Emmanuele Bassi <ebassi@openedhand.com>
12754 * clutter/clutter-label.c: Remove some gtk-isms; always take
12755 a reference before calling g_object_notify(), as the object
12756 might get disposed while calling the closures inside the
12757 notify queue; notify the changes of the ellipsize property.
12759 2006-12-14 Emmanuele Bassi <ebassi@openedhand.com>
12761 * clutter/clutter-color.h:
12762 * clutter/clutter-color.c: Expose clutter_color_copy()
12763 and clutter_color_free() for the python bindings, so that
12764 they can manager the conversion automatically; use the
12765 slice allocator when copying/freeing a ClutterColor.
12767 2006-12-13 Emmanuele Bassi <ebassi@openedhand.com>
12769 * clutter/clutter-color.h:
12770 * clutter/clutter-color.c: Add clutter_color_equal(),
12771 a function for comparing two colors.
12773 * clutter/clutter-rectangle.c:
12774 (clutter_rectangle_set_color),
12775 (clutter_rectangle_set_border_color): Unset the border if
12776 the color of the rectangle and the color of the border are
12779 2006-12-13 Emmanuele Bassi <ebassi@openedhand.com>
12781 * clutter/clutter-actor.c:
12782 * clutter/clutter-clone-texture.c:
12783 * clutter/clutter-event.h:
12784 * clutter/clutter-stage.c:
12785 * clutter/clutter-texture.c:
12786 * clutter/clutter-timeline.c: Update the inline apidoc.
12788 2006-12-13 Matthew Allum <mallum@openedhand.com>
12790 * clutter/clutter-actor.c: (clutter_actor_class_init):
12791 Allow actor x,y props to be negative.
12793 2006-12-12 Emmanuele Bassi <ebassi@openedhand.com>
12795 Rework part of the show/hide machinery. Allow groups sub-classes
12796 and composite actors to override show_all/hide_all in order to
12797 decide which children they wish to show/hide. This means that
12798 if an actor overrides the default show/hide virtual methods, it'll
12799 have to chain up to the parent class show/hide. While we're at it,
12800 provide the fully recursive clutter_actor_show_all() and
12801 clutter_actor_hide_all() methods.
12803 * clutter/clutter-behaviour-path.c: Add apidoc for the ClutterKnot
12804 functions; add pathological equality case for clutter_knot_equal().
12806 * clutter/clutter-event.h:
12807 * clutter/clutter-feature.h:
12808 * clutter/clutter-behaviour.c:
12809 * clutter/clutter-behaviour-scale.c:Fix parameters name so that
12810 gtk-doc doesn't complain.
12812 * clutter/clutter-actor.c:
12813 * clutter/clutter-event.c: Add apidoc
12815 * clutter/clutter-actor.h:
12816 * clutter/clutter-actor.c: Add a clutter_actor_show_all() and a
12817 clutter_actor_hide_all() functions; provide a mechanism for
12818 groups and composited actors to programmatically select what to
12819 show/hide when clutter_actor_show_all() and clutter_actor_hide_all()
12820 are called. If you are overriding the ClutterActor::show or
12821 the ClutterActor::hide virtual methods you should chain up with
12824 * clutter/clutter-group.c: Override show_all and hide_all and
12825 recursively show/hide every child inside the group;
12826 clutter_group_show_all() and clutter_group_hide_all() remain as non
12827 recursive versions of clutter_actor_show_all() and
12828 clutter_actor_hide_all() (maybe we should rename them in order
12829 to avoid name clashes with the bindings).
12831 * clutter/clutter-stage.c:
12832 * clutter/clutter-texture.c: Chain up with parent class show
12835 * clutter/clutter-clone-texture.h:
12836 * clutter/clutter-clone-texture.c: Provide API for changing the
12837 parent texture of a clone texture actor.
12839 * examples/behave.c:
12840 * examples/super-oh.c:
12841 * examples/test.c: Use clutter_actor_show_all() instead of
12842 clutter_group_show_all().
12844 2006-12-08 Matthew Allum <mallum@openedhand.com>
12847 Put release date in correct format.
12849 2006-12-08 Emmanuele Bassi <ebassi@openedhand.com>
12851 * clutter/clutter-behaviour.h: Add a function prototype
12852 for the foreach function: we need something more specific
12853 than GFunc; add clutter_behaviour_get_actors(), used to
12854 get a list of the actors.
12856 * clutter/clutter-behaviour.c: Add debugging notes; add
12857 a warning for behaviour implementations missing the
12858 alpha_notify vfunc; add api documentation
12860 * clutter/clutter-behaviour-opacity.c:
12861 * clutter/clutter-behaviour-path.c:
12862 * clutter/clutter-behaviour-scale.c: Reimplement the
12863 alpha_notify functions using the new foreach function
12864 and, where possible, by directly iterating on the
12865 actors: this shaves off the number of recalculations
12866 of the property/alpha values, and the number of
12869 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
12871 * clutter/clutter-rectangle.c: Forgot to set the
12874 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
12876 * behave.c: Add test for clutter_color_parse().
12878 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
12880 * clutter/clutter-event.c: Move the apidoc out.
12882 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
12884 * clutter/clutter-color.h:
12885 * clutter/clutter-color.c: Add clutter_color_parse(),
12886 which parses a string containing a color definition as
12887 understood by XParseColor() (or pango_color_parse()).
12889 2006-12-04 Emmanuele Bassi <ebassi@openedhand.com>
12891 Avoid clutter segfaulting when used without invoking
12892 clutter_init(). This is needed when using api documentation
12893 tools and every other tool relying on the GObject
12894 introspection API (esp. on a headless box). see the
12895 note in clutter/clutter-feature.c:clutter_feature_init
12896 for a full explanation.
12898 * clutter/clutter-feature.c: Call clutter_feature_init()
12899 when needed by one of the accessors of the features
12902 * clutter/clutter-main.c:
12903 * clutter/clutter-private.h: Remove clutter_feature_init()
12904 public declaration: the features support check is done the
12905 first time a feature is needed.
12907 * clutter/clutter-main.c: Do not ever access the clutter
12908 main context pointer directly; instead, obtain a pointer
12909 to it via clutter_context_get_default(), which will always
12910 return something valid.
12912 2006-12-04 Emmanuele Bassi <ebassi@openedhand.com>
12914 * clutter/clutter-private.h: Add our own READABLE,
12915 WRITABLE and READWRITE paramspec flags, declaring the
12916 string components of the properties GParamSpec as static;
12917 this should shave off some bytes in the memory footprint
12918 and avoid relocations.
12920 * clutter/clutter-actor.c:
12921 * clutter/clutter-behaviour.c:
12922 * clutter/clutter-behaviour-opacity.c:
12923 * clutter/clutter-behaviour-path.c:
12924 * clutter/clutter-behavuour-scale.c:
12925 * clutter/clutter-clone-texture.c:
12926 * clutter/clutter-label.c:
12927 * clutter/clutter-rectangle.c:
12928 * clutter/clutter-stage.c:
12929 * clutter/clutter-texture.c:
12930 * clutter/clutter-timeline.c: Use the CLUTTER_PARAM_*
12931 macros we just added.
12933 * clutter/clutter-behaviour-scale.c: Add properties for
12934 the scale begin, scale end and gravity parameters.
12936 * clutter/clutter-behaviour-path.h: Mark the ClutterKnot
12937 memory management functions as public (for the bindings),
12938 since we use the slice allocator for copying knots around;
12939 add a clutter_knot_equal() function.
12941 * clutter/clutter-behaviour-path.c:
12942 (node_distance): Use clutter_knot_equal() as a fast path
12943 to avoid the sqrt() in case the nodes we are using are
12944 at the same position.
12945 (path_total_length): Additional check on the existence
12948 * examples/behave.c: Do not leak the ClutterBehaviour
12951 2006-12-03 Emmanuele Bassi <ebassi@openedhand.com>
12953 * clutter/clutter-texture.h: Clean up.
12955 * clutter/clutter-texture.c: Typo fix in the name
12956 of ClutterTextureTileDimension.
12958 * clutter/clutter-behaviour.c: Allow passing NULL
12959 to clutter_behaviour_set_alpha() (as we pass NULL
12960 in the finalize process).
12962 2006-12-02 Emmanuele Bassi <ebassi@openedhand.com>
12964 * clutter/clutter-version.h.in: Fix a stupid logic
12965 error in the CHECK_VERSION macro.
12967 2006-11-30 Matthew Allum <mallum@openedhand.com>
12972 2006-11-30 Emmanuele Bassi <ebassi@openedhand.com>
12974 * clutter/clutter-stage.h:
12975 * clutter/clutter-stage.c:
12976 (clutter_stage_swap_buffers): Remove, as the same is done
12977 via clutter_redraw() and clutter_actor_queue_redraw().
12979 (clutter_stage_unrealize), (clutter_stage_init),
12980 (clutter_stage_set_xwindow_foreign): Do not call
12981 XDestroyWindow() on the stage Window if we are using a
12982 foreign Window, as we don't control its lifetime.
12984 2006-11-30 Emmanuele Bassi <ebassi@openedhand.com>
12986 * Makefile.am: Remove the gtk directory from the SUBDIRS.
12988 * clutter/clutter-stage.h:
12989 * clutter/clutter-stage.c: Add clutter_stage_swap_buffers(),
12990 which swaps the GL buffers. This fixes the redraw in the
12993 2006-11-29 Emmanuele Bassi <ebassi@openedhand.com>
12995 * clutter/clutter-stage.c:
12996 (clutter_stage_set_xwindow_foreign): Add checks;
12997 remove an indirection to the private data.
12999 2006-11-29 Emmanuele Bassi <ebassi@openedhand.com>
13003 * Makfile.am: Remove the GTK+ widget from the
13004 main tree; now Clutter depends just on GLib,
13005 XLibs, GdkPixbuf and OpenGL.
13007 2006-11-29 Matthew Allum <mallum@openedhand.com>
13009 * clutter/clutter-stage.c: (clutter_stage_realize):
13010 Set colormap on stage window - should fix issues
13011 with indirect rendering.
13013 2006-11-23 Matthew Allum <mallum@openedhand.com>
13015 * clutter/clutter-debug.h:
13016 Fix small macro typo.
13018 2006-11-22 Matthew Allum <mallum@openedhand.com>
13020 * clutter/clutter-actor.c:
13021 * clutter/clutter-alpha.c:
13022 * clutter/clutter-behaviour-opacity.c:
13023 * clutter/clutter-behaviour-scale.c:
13024 * clutter/clutter-clone-texture.c:
13025 * clutter/clutter-feature.c:
13026 * clutter/clutter-label.c:
13027 * clutter/clutter-main.c:
13028 * clutter/clutter-stage.c:
13029 * clutter/clutter-texture.c
13030 * clutter/clutter-timeline.c:
13031 * clutter/clutter-debug.h:
13032 Make CLUTTER_NOTE() just take a string rather than a func.
13033 Add more default context to output.
13036 Fix flag and add more help docs for --ebable-debug option.
13038 2006-11-21 Emmanuele Bassi <ebassi@openedhand.com>
13040 * clutter/clutter-main.c: Add a --g-fatal-warnings switch
13041 for abort()-ing on warnings and criticals.
13043 2006-11-21 Emmanuele Bassi <ebassi@openedhand.com>
13045 * configure.ac: Enable debug messages also when
13046 --enable-debug is set to "minimum".
13048 * clutter/Makefile.am:
13049 * clutter/clutter-debug.h: Move all debugging macros inside
13050 this private header; make all debug macros depend on the
13051 CLUTTER_ENABLE_DEBUG compile time define, controlled by
13052 the --enable-debug configure switch; add G_LOG_DOMAIN define.
13054 * clutter/clutter-main.c: Clean up the debug stuff; add
13055 command line argument parsing using GOption; the debug
13056 messages now are triggered like this:
13058 CLUTTER_DEBUG=section:section:... clutter-app
13062 clutter-app --clutter-debug=section:section:...
13064 where "section" is one of the sections listed in clutter-main.c,
13065 or "all", for all sections; each section is bound to a flag,
13066 which can be used to define a domain when adding a debug note
13067 using the CLUTTER_NOTE() macro; the old CLUTTER_DBG() macro is
13068 just a wrapper around that, under the CLUTTER_DEBUG_MISC domain;
13069 CLUTTER_NOTE() is used like this:
13071 CLUTTER_NOTE (DOMAIN, log-function);
13073 where log function is g_printerr(), g_message(), g_warning(),
13074 g_critical() or directly g_log() - for instance:
13076 CLUTTER_NOTE (PANGO, g_warning ("Cache miss: %d", glyph));
13078 will print the warning only if the "pango" flag has been
13079 set to the CLUTTER_DEBUG envvar or passed to the --clutter-debug
13080 command line argument.
13082 similar to CLUTTER_SHOW_FPS, there's also the --clutter-show-fps
13083 command line switch; also, the --display and --screen command
13084 line switches have been added: the first overrides the DISPLAY
13085 envvar and the second controls the X screen used by Clutter to
13086 get the root window on the display.
13088 * clutter/clutter-main.h:
13089 * clutter/clutter-main.c: Add extended support for GOption
13090 in Clutter; use clutter_init_with_args() to let Clutter
13091 parse your own command line arguments; use instead
13092 clutter_get_option_group() to get the GOptionGroup used by
13093 Clutter if you want to do the parsing yourself with
13094 g_option_context_parse(). The init sequence has been verified,
13095 updated and moved into common functions where possible.
13097 * clutter/pango/pangoclutter-render.c:
13098 * clutter/*.c: Include "clutter-debug.h" where needed; use
13099 CLUTTER_NOTE() instead of CLUTTER_DBG().
13101 * examples/super-oh.c: Use the new clutter_init_with_args()
13102 function, and add a --num-hands command line switch to
13103 the SuperOH example code controlling the number of hands at
13106 2006-11-21 Emmanuele Bassi <ebassi@openedhand.com>
13108 * configure.ac: Rename G_ENABLE_DEBUG to CLUTTER_ENABLE_DEBUG.
13110 2006-11-20 Emmanuele Bassi <ebassi@openedhand.com>
13112 * clutter/clutter-rectangle.h:
13113 * clutter/clutter-rectangle.c: Add border to the ClutterRectangle
13114 actor; add "border-width", "border-color" and "has-border"
13115 properties, plus their accessors. The border generation code is
13116 pretty lame, at the moment.
13118 * examples/behave.c: Add code to test the new rectangle properties.
13120 2006-11-20 Matthew Allum <mallum@openedhand.com>
13123 Add an initial DOAP file to project
13125 2006-11-20 Emmanuele Bassi <ebassi@openedhand.com>
13127 * clutter/Makefile.am:
13128 * clutter/clutter.h:
13129 * clutter/clutter-version.h.in: Auto-generated versioning macros.
13131 * clutter/clutter-actor.h:
13132 * clutter/clutter-actor.c: Add a ClutterActor::parent-set signal,
13133 for notificating changes of an actor's parent; add api-doc for
13134 the actor's properties; add the ClutterActor "name" property; clean
13135 up a bit some functions; emit the "parent-set" signal when setting
13136 te parent and when unparenting; better warnings when lowering
13137 and raising an actor.
13140 * clutter/Makefile.am: Add a --enable-debug configure option,
13141 with three levels of debugging: no, minimum and yes; default
13142 for development releases (odd minor version) is "yes"; update
13143 the version m4 defines; update the libtool macros: now just
13144 changed the clutter_interface_age when releasing will update
13147 2006-11-17 Emmanuele Bassi <ebassi@openedhand.com>
13149 * clutter/clutter-behaviour-path.h:
13150 * clutter/clutter-behaviour-path.c: Add "since" strings; add
13151 a "knot" property which can be used to append a knot to the path;
13154 * clutter/clutter-alpha.c: Add "since" strings.
13156 * clutter/clutter-feature.c: Add apidoc.
13158 * clutter/clutter-behaviour-opacity.c: Add the "opacity-start"
13159 and "opacity-end" properties; rewrite constructor to use them.
13161 2006-11-17 Emmanuele Bassi <ebassi@openedhand.com>
13163 * clutter/clutter-behaviour-path.h:
13164 * clutter/clutter-behaviour-path.c: Add a "knot-reached" signal,
13165 which is emitted when the path reaches a node in the nodes list;
13166 flesh out the documentation a bit; sync the parameters names
13167 so that gtk-doc doesn't complain about missing stuff.
13169 * clutter/clutter-behaviour.h:
13170 * clutter/clutter-behaviour.c: Add the alpha value to the
13171 ClutterBehaviour::alpha_notify vfunc, so you don't have to
13172 get the value from the alpha inside the behaviour implementations;
13173 add more documentation.
13175 * clutter/clutter-alpha.c: Flesh out the description.
13177 * clutter/clutter-actor.h: Update the header.
13179 * clutter/clutter-behaviour-opacity.c:
13180 * clutter/clutter-behaviour-scale.c: Update docs.
13182 2006-11-17 Matthew Allum <mallum@openedhand.com>
13184 * clutter/clutter-alpha.c:
13185 * clutter/clutter-behaviour-opacity.c:
13188 * clutter/clutter-behaviour-path.h:
13189 * clutter/clutter-behaviour-path.c:
13190 More docs, add clutter_behaviour_path_insert_knot(),
13191 clutter_behaviour_path_remove_knot()
13193 * clutter/clutter-behaviour-scale.h:
13194 * clutter/clutter-behaviour-scale.c:
13195 More docs, add clutter_behaviour_scale_newx() taking fixed values.
13197 * clutter/Makefile.am:
13198 * clutter/pango/Makefile.am:
13199 Fix linking warning.
13201 2006-11-15 Matthew Allum <mallum@openedhand.com>
13203 * clutter/clutter-actor.h:
13204 * clutter/clutter-actor.c:
13205 Add new API clutter_actor_move_by(), clutter_actor_get_size()
13207 * clutter/clutter-alpha.c:
13208 * clutter/clutter-alpha.h:
13209 Add clutter alpha sine func
13211 * clutter/clutter-behaviours.h:
13212 * clutter/clutter-behaviours.c:
13213 Add a basic scale behaviour (needs work)
13215 * examples/behave.c: (main):
13216 More playing with new behaviour functionality
13218 * clutter/clutter-feature.c:
13219 * clutter/clutter-feature.h:
13220 * clutter/clutter-main.c:
13221 Add new experimental sync to vblank code
13222 Set env CLUTTER_VBLANK=none to disable.
13224 2006-11-16 Emmanuele Bassi <ebassi@openedhand.com>
13226 * clutter/clutter-private.h:
13227 * clutter/clutter-actor.c: Implement the defined
13228 clutter_actor_reparent() method; call unrealize
13229 when unparenting an actor.
13231 2006-11-15 Emmanuele Bassi <ebassi@openedhand.com>
13233 * clutter/clutter-alpha.h:
13234 * clutter/clutter-alpha.c: Add a data parameter to
13235 the ClutterAlphaFunc; add a data+destroy parameter
13236 to clutter_alpha_set_func() and to clutter_alpha_new(),
13237 and turned the latter into clutter_alpha_new_full();
13238 add a simple, empty constructor clutter_alpha_new().
13240 These changes makes writing bindings a tad more easy,
13241 as bindings require passing their own functions in
13242 order to call the real alpha function.
13244 * clutter/clutter-behaviour.h: Clean up the header.
13246 * clutter/clutter-behaviours.[ch]:
13247 * clutter/clutter-behaviour-opacity.[ch]:
13248 * clutter/clutter-behaviour-path.[ch]:
13249 * clutter/clutter-behaviour-scale.[ch]: Split the
13250 ClutterBehaviourPath, ClutterBehaviourOpacity and
13251 ClutterBehaviourScale into their own files as they
13252 have been growing a bit. Fix ClutterBehaviourPath
13255 * clutter/clutter-media.h: Remove the commented
13256 "metadata_available" signal: gtk-doc chokes up on that.
13258 * clutter/clutter-timeline.h:
13259 * clutter/clutter-timeline.c: Remove the useless
13260 ClutterTimelineAlphaFunc signature; add missing accessor
13261 methods for the properties; clean up a bit.
13263 * clutter/clutter-util.h:
13264 * clutter/clutter-util.c: Remove unneeded function
13265 clutter_util_can_create_texture().
13267 * clutter/clutter-feature.h: Sync the name of
13268 clutter_feature_get_all() with the name declared
13269 in clutter-feature.h.
13271 * clutter/Makefile.am:
13272 * clutter/clutter.h: Update.
13274 * examples/behave.c: Update to the new ClutterAlpha
13277 * examples/super-oh.c: Use the right pointer and avoid
13278 the compiler making a fuss about it.
13280 2006-11-15 Matthew Allum <mallum@openedhand.com>
13282 * clutter/clutter-actor.h:
13283 * clutter/clutter-actor.c:
13284 Add new API clutter_actor_move_by(), clutter_actor_get_size()
13286 * clutter/clutter-alpha.c:
13287 * clutter/clutter-alpha.h:
13288 Add clutter alpha sine func
13290 * clutter/clutter-behaviours.h:
13291 * clutter/clutter-behaviours.c:
13292 Add a basic scale behaviour (needs work)
13294 * examples/behave.c: (main):
13295 More playing with new behaviour functionality
13297 * clutter/clutter-feature.c:
13298 * clutter/clutter-feature.h:
13299 * clutter/clutter-main.c:
13300 Add new experimental sync to vblank code
13301 Set env CLUTTER_VBLANK=none to disable.
13303 2006-11-15 Emmanuele Bassi <ebassi@openedhand.com>
13305 * clutter/clutter-alpha.h:
13306 * clutter/clutter-alpha.c: ClutterAlpha is an initially
13307 floating object, as it makes sense only when bound to
13308 a ClutterBehaviour; add checks for public API.
13310 * clutter/clutter-behaviour.h:
13311 * clutter/clutter-behaviour.c: Remove the ClutterBehaviour
13312 constructor: ClutterBehaviour is an abstract class which
13313 must be implemented by subclassing; add checks for public
13314 API; unref the actors on finalize; sink the ClutterAlpha
13317 * clutter/clutter-behaviours.h: ClutterKnot is a boxed
13318 type: add the _get_type() function declaration and the
13321 2006-10-23 Matthew Allum <mallum@openedhand.com>
13323 * clutter/clutter-alpha.h:
13324 * clutter/clutter-behaviour.c:
13325 * clutter/clutter-behaviour.h:
13326 * clutter/clutter-behaviours.c:
13327 * clutter/clutter-behaviours.h:
13328 * examples/behave.c:
13329 Behaviours now only 'driven' by ClutterAlpha, not any object/prop.
13330 Add simple Clutter path behaviour.
13332 2006-10-03 Matthew Allum <mallum@openedhand.com>
13335 * clutter/Makefile.am:
13336 * clutter/clutter-actor.c:
13337 * clutter/clutter-label.c:
13338 * clutter/clutter-label.h:
13339 * clutter/pango/Makefile.am:
13340 * clutter/pango/pangoclutter-font.c:
13341 * clutter/pango/pangoclutter-fontmap.c:
13342 * clutter/pango/pangoclutter-private.h:
13343 * clutter/pango/pangoclutter-render.c:
13344 * clutter/pango/pangoclutter.h:
13345 Add initial rough new pango renderer and clutter-label.
13347 * examples/super-oh.c:
13351 2006-09-20 Matthew Allum <mallum@openedhand.com>
13353 * clutter/clutter-actor.c: (clutter_actor_paint):
13354 * clutter/clutter-clone-texture.c: (clutter_clone_texture_paint):
13355 * clutter/clutter-group.c: (clutter_group_paint):
13356 * clutter/clutter-rectangle.c: (clutter_rectangle_paint):
13357 * clutter/clutter-texture.c: (clutter_texture_paint):
13359 clutter_actor_paint() now translates to actor position as
13360 to not fix scaled groups positioning. Sub classes now paint
13363 2006-09-19 Matthew Allum <mallum@openedhand.com>
13365 * clutter/clutter-actor.c: (redraw_update_idle),
13366 (clutter_actor_queue_redraw):
13367 * clutter/clutter-main.c: (clutter_redraw):
13368 Remove now uneeded locks
13369 ( new gst and texture code makes redundant )
13371 * clutter/clutter-texture.c:
13372 * clutter/clutter-texture.h:
13373 Redo clutter texture as to not keep a reference
13374 to underlying texture.
13376 2006-09-15 Matthew Allum <mallum@openedhand.com>
13378 More fixes from Bastien Nocera (#155):
13380 * clutter/clutter-main.c: (clutter_init):
13381 * clutter/clutter-main.h:
13382 Add an enum for clutter init to return an error code.
13384 Dont check for XInitThreads, there is no need, its part of xlib.
13386 2006-09-14 Matthew Allum <mallum@openedhand.com>
13388 Various fixes from Bastien Nocera:
13390 * clutter/clutter-event.h:
13391 * clutter/clutter-stage.c: (clutter_stage_unrealize),
13392 (clutter_stage_realize), (clutter_stage_request_coords),
13393 (clutter_stage_dispose), (clutter_stage_init):
13394 * clutter/clutter-stage.h:
13395 * gtk/gtk-clutter-test.c: (input_cb), (frame_cb), (main):
13396 * gtk/gtk-clutter.c: (realize):
13399 * clutter/clutter-group.c: (clutter_group_remove):
13400 Remove uneeded ref count (#143)
13402 * examples/super-oh.c: (input_cb):
13403 Handle key release rather than presses (#154)
13406 Add old style X libs check when x11.pc unavailable (#101)
13408 2006-09-01 Matthew Allum <mallum@openedhand.com>
13410 * clutter/Makefile.am:
13411 * clutter/clutter-media.c:
13412 * clutter/clutter-media.h:
13413 * clutter/clutter.h:
13414 Re-add clutter media.
13416 2006-08-31 Matthew Allum <mallum@openedhand.com>
13418 * clutter/clutter-actor.c:
13419 * clutter/clutter-group.c: (clutter_group_paint),
13420 (clutter_group_request_coords), (clutter_group_allocate_coords),
13421 (clutter_group_add):
13422 Fix some group sizing/positioning issues.
13424 2006-08-30 Jorn Baayen <jorn@openedhand.com>
13428 Remove gstreamer deps.
13430 2006-08-30 Jorn Baayen <jorn@openedhand.com>
13433 * clutter/Makefile.am:
13434 * clutter/clutter-audio.c:
13435 * clutter/clutter-audio.h:
13436 * clutter/clutter-main.c: (clutter_init):
13437 * clutter/clutter-media.c:
13438 * clutter/clutter-media.h:
13439 * clutter/clutter-video-texture.c:
13440 * clutter/clutter-video-texture.h:
13441 * clutter/clutter.h:
13443 * examples/Makefile.am:
13445 * examples/video-cube.c:
13446 * examples/video-player.c:
13448 * gst/clutterimagesink.:
13449 * gst/clutterimagesink.c:
13450 * gst/clutterimagesink.h:
13453 Remove gstreamer bits. There live in clutter-gst now.
13455 2006-08-30 Jorn Baayen <jorn@openedhand.com>
13457 * clutter/Makefile.am:
13458 * clutter/clutter-audio.c:
13459 * clutter/clutter-audio.h:
13460 * clutter/clutter.h:
13462 Added ClutterAudio audio playback object.
13464 2006-08-29 Matthew Allum <mallum@openedhand.com>
13466 * clutter/clutter-fixed.h:
13467 Add basic fixed point utility defines and type.
13469 * clutter/Makefile.am:
13470 * clutter/clutter-actor.c:
13471 * clutter/clutter-actor.h:
13472 * clutter/clutter-group.c:
13473 * clutter/clutter-stage.c:
13474 * examples/super-oh.c: (main):
13475 Add scale API and functionality.
13476 Rework group sizing. Now group size requests have no effect
13479 2006-08-29 Jorn Baayen <jorn@openedhand.com>
13481 * clutter/clutter-behaviour.c: (_clutter_behaviour_finalize),
13482 (_clutter_behaviour_set_property),
13483 (_clutter_behaviour_get_property), (clutter_behaviour_class_init),
13484 (clutter_behaviour_init), (clutter_behaviour_apply),
13485 (clutter_behaviour_remove), (clutter_behaviour_remove_all),
13486 (clutter_behaviour_actors_foreach):
13487 * clutter/clutter-behaviour.h:
13488 * clutter/clutter-behaviours.c:
13489 (clutter_behaviour_property_change),
13490 (clutter_behaviour_opacity_dispose),
13491 (clutter_behaviour_opacity_finalize),
13492 (clutter_behaviour_opacity_class_init),
13493 (clutter_behaviour_opacity_init):
13494 * clutter/clutter-behaviours.h:
13495 * clutter/clutter-marshal.list:
13496 * examples/behave.c: (main):
13498 Behaviours track generic GObject properties.
13500 * clutter/clutter-video-texture.h:
13502 Remove signal prototypes - they are already specified in
13505 2006-08-28 Jorn Baayen <jorn@openedhand.com>
13507 * clutter/Makefile.am:
13508 * clutter/clutter-alpha.c:
13509 * clutter/clutter-alpha.h:
13510 * clutter/clutter-behaviours.c:
13511 (clutter_behaviour_opacity_dispose),
13512 (clutter_behaviour_opacity_init),
13513 (clutter_behaviour_opacity_frame_foreach),
13514 (clutter_behaviour_opacity_frame):
13515 * clutter/clutter-behaviours.h:
13516 * clutter/clutter-timeline.c: (clutter_timeline_class_init):
13517 * clutter/clutter-timeline.h:
13518 * clutter/clutter.h:
13519 * examples/behave.c: (main):
13521 Separate alpha calculation into its own class.
13523 * clutter/clutter-behaviour.c: (clutter_behaviour_set_timelime):
13525 Correct NULL check.
13527 2006-08-15 Matthew Allum <mallum@openedhand.com>
13529 * clutter/clutter-behaviour.h:
13530 Behaviours shouldn't subclass timelines.
13532 2006-08-15 Matthew Allum <mallum@openedhand.com>
13534 * clutter/clutter-behaviour.c:
13535 * clutter/clutter-behaviour.h:
13536 * clutter/clutter-behaviours.c:
13537 * clutter/clutter-timeline.c:
13538 * clutter/clutter-timeline.h:
13539 * clutter/clutter.h:
13540 Make basic behaviour infrastructure actually work.
13542 * examples/Makefile.am:
13543 * examples/behave.c:
13544 Add a simple behaviour demo/test
13546 * clutter/clutter-media.c: (clutter_media_set_volume):
13547 Actuall set volume rather than position.. (Fixes #141)
13549 2006-08-14 Matthew Allum <mallum@openedhand.com>
13551 * clutter/Makefile.am:
13552 * clutter/clutter-behaviour.c:
13553 * clutter/clutter-behaviour.h:
13554 * clutter/clutter-behaviours.c:
13555 * clutter/clutter-behaviours.h:
13556 * clutter/clutter-timeline.c:
13557 * clutter/clutter-timeline.h:
13558 Add very initial new behaviour functionality.
13560 * clutter/clutter-stage.c:
13561 * clutter/clutter-main.c:
13562 * clutter/clutter-actor.c:
13563 Improve clipping using stencil test rather than scissor check.
13564 ( Should now handle rotated clips etc ).
13566 * clutter/clutter-group.c: (clutter_group_paint):
13567 Fix typo on position check.
13569 2006-08-07 Matthew Allum <mallum@openedhand.com>
13571 * clutter/clutter-video-texture.c: (lay_pipeline):
13572 Set quality of service prop on fakesink to TRUE.
13574 2006-08-07 Matthew Allum <mallum@openedhand.com>
13576 * clutter/clutter-actor.c: (clutter_actor_paint):
13577 Remove relic from old stage behaviour - dont unref
13580 2006-07-27 Emmanuele Bassi <ebassi@openedhand.com>
13582 * clutter/clutter-feature.c: No need to call clutter_feature_init()
13583 each time: it's private and should never be seen from the outside;
13584 add a warning, just in case something screws up and calls it more
13587 2006-07-27 Emmanuele Bassi <ebassi@openedhand.com>
13589 * clutter/clutter-private.h: Move clutter_feature_init()
13590 declaration here: you shouldn't even need to initialise
13593 * clutter/clutter-feature.c: call clutter_feature_init()
13594 each time you try to access the feature list; add a static
13595 lock around the feature flags container; add api documentation.
13597 * clutter/clutter-feature.h: Add a type for the feature flags
13598 to make bindings happy.
13600 2006-07-24 Matthew Allum <mallum@openedhand.com>
13602 * clutter/Makefile.am:
13603 * clutter/clutter-feature.c:
13604 * clutter/clutter-feature.h:
13606 Add new funcs for checking for available runtime GL
13609 * clutter/clutter-clone-texture.c:
13610 * clutter/clutter-texture.c:
13612 Add support for non power of two textures
13613 if GL_TEXTURE_RECTANGLE_ARB extension available ( at runtime ).
13614 Should lower texture memory needs a little.
13616 2006-07-17 Emmanuele Bassi <ebassi@openedhand.com>
13618 * clutter/clutter-stage.c (clutter_stage_get_default): Fix
13621 2006-07-15 Emmanuele Bassi <ebassi@openedhand.com>
13623 * clutter/clutter-main.c:
13625 (clutter_main): Destroy the main stage, instead of unreffing it.
13627 (clutter_init): Ref and sink the main stage, as it is a top
13630 * clutter/clutter-stage.c (clutter_stage_unrealize): Access
13631 the Window private member directly, instead of calling the
13632 get_xwindow method.
13634 * examples/test.c (main): Quit on button press.
13636 2006-07-09 Emmanuele Bassi <ebassi@openedhand.com>
13638 * clutter/clutter-event.h: Change the name of the
13639 ClutterEvent union members to something a little shorter.
13641 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
13643 * configure.ac: Remove the python stuff, now that the bindings
13646 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
13648 * configure.ac: Mark this as 0.1.1, and change the version info
13651 * clutter/clutter-actor.c:
13652 * clutter/clutter-group.c: Fix documentation.
13654 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
13656 * clutter/clutter-actor.h:
13657 * clutter/clutter-actor.c:
13659 (clutter_actor_class_init), (clutter_actor_set_property),
13660 (clutter_actor_get_property): Add the "clip" and "has-clip"
13663 (clutter_actor_set_clip), (clutter_actor_remove_clip): Emit
13664 the notification for the changed properties.
13666 (clutter_actor_has_clip): Simple accessor to the "has-clip"
13669 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
13671 Big rework of the actor management semantics: now ClutterActor
13672 objects behave like GtkObjects - that is they have an initial
13673 "floating" reference that gets "sunk" when they are added to
13674 a ClutterGroup. This makes a group responsible of de-allocating
13675 each actor inside it, so you just have to destroy the group to
13676 get every child actor destroyed. Also, now you can do:
13678 clutter_group_add (group, clutter_video_texture_new ());
13680 without having to care about reference counting and explicit
13683 * clutter/clutter-private.h: Add private flags setter and
13686 * clutter/clutter-actor.h:
13687 * clutter/clutter-actor.c: Clean up; inherit from GInitiallyUnowned;
13688 add a "visible" property; add the "destroy", "show" and "hide"
13689 signals to ClutterActorClass.
13691 (clutter_actor_show), (clutter_actor_hide): Refactor a bit; emit
13692 the "show" and "hide" signals.
13694 (clutter_actor_set_property), (clutter_actor_get_property),
13695 (clutter_actor_class_init): Implement the "visible" property; add
13698 (clutter_actor_finalize): Do not leak the actor's name, if it is
13701 (clutter_actor_dispose): Emit the "destroy" signal here.
13703 (clutter_actor_init): Sink the initial floating flag if needed.
13705 (clutter_actor_destroy): Add a function to explicitely destroy
13708 (clutter_actor_set_parent), (clutter_actor_get_parent),
13709 (clutter_actor_unparent): Make set_parent require a valid parent;
13710 add unparent; check on get_parent; ref_sink the actor when
13711 setting its parent and unref it when unsetting it. Probably we'll
13712 need a function that does reparenting as unparent+set_parent in
13715 * clutter/clutter-group.h:
13716 * clutter/clutter-group.c (clutter_group_dispose),
13717 (clutter_group_finalize), (clutter_group_add),
13718 (clutter_group_remove): Make the group destroy its children when
13719 disposing it; clean up, and use the newly-available
13720 clutter_actor_unparent().
13722 * clutter/clutter-stage.h:
13723 * clutter/clutter-stage.c (clutter_stage_init): ClutterStage is
13724 a top-level actor; clean up.
13726 * clutter/clutter-video-texture.h:
13727 * clutter/clutter-video-texture.c: Clean up.
13729 * examples/super-oh.c:
13731 * examples/video-player.c:
13732 * examples/test-text.c:
13733 * examples/video-cube.c: Remove the g_object_unref() call, as the
13734 ClutterStage object is destroyed on clutter_main_quit().
13736 2006-06-23 Matthew Allum <mallum@openedhand.com>
13738 * examples/super-oh.c:
13739 Remove random stage unref fixing trails. Fixes #98
13741 2006-06-23 Matthew Allum <mallum@openedhand.com>
13743 * examples/video-player.c: (size_change):
13744 cast stage height to gint avoiding wierdness for when
13745 video height greater than half display height. Fixed #99
13747 2006-06-23 Matthew Allum <mallum@openedhand.com>
13749 * clutter/clutter-video-texture.c: (clutter_video_texture_new):
13750 Small fix for video playback on Big Endian. See #97
13752 2006-06-23 Iain Holmes <iain@openedhand.com>
13754 * clutter/clutter-texture.h: Add space :) Sorry.
13756 2006-06-23 Iain Holmes <iain@openedhand.com>
13758 * clutter/clutter-label.h:
13759 * clutter/clutter-group.h:
13760 * clutter/clutter-rectangle.h:
13761 * clutter/clutter-video-texture.h:
13762 * clutter/clutter-event.h:
13763 * clutter/clutter-texture.h: Fix the header layout so that C# parser
13764 can understand everything.
13766 2006-06-23 Ross Burton <ross@openedhand.com>
13770 Remove references to bindings/, it's moved.
13772 2006-06-23 Emmanuele Bassi <ebassi@openedhand.com>
13774 * clutter/clutter-group.c
13775 (clutter_group_get_children): Mention that you must free
13776 the returned list otherwise you'll leak stuff all around.
13778 2006-06-23 Ross Burton <ross@openedhand.com>
13780 * examples/super-oh.c:
13781 Fix build with trails enabled. Still crashes.
13783 2006-06-23 Ross Burton <ross@openedhand.com>
13786 Disable static libraries.
13788 2006-06-22 Matthew Allum <mallum@openedhand.com>
13791 Make OpeneHand link
13793 2006-06-22 Matthew Allum <mallum@openedhand.com>
13796 Add Pango ref, authors info.
13798 ========== 2006-06-22 0.1 Release =====================
13800 2006-06-22 Matthew Allum <mallum@openedhand.com>
13804 Correct Bugzilla link. Add debs link
13805 Bump up version to 0.1 !
13807 2006-06-22 Matthew Allum <mallum@openedhand.com>
13810 Add an entry for 0.1 release
13815 2006-06-22 Iain Holmes <iain@openedhand.com>
13817 * clutter/clutter-main.c: Guess what...more docs
13819 2006-06-22 Iain Holmes <iain@openedhand.com>
13821 * clutter/clutter-event.c: Add docs
13823 2006-06-22 Iain Holmes <iain@openedhand.com>
13825 * clutter/clutter-media.c: Add docs
13827 2006-06-22 Iain Holmes <iain@openedhand.com>
13829 * clutter/clutter-texture.c: Fix typos.
13831 * clutter/clutter-timeline.c: Fix typos.
13833 2006-06-22 Iain Holmes <iain@openedhand.com>
13835 * clutter/clutter-video-texture.c: Docs.
13837 2006-06-22 Iain Holmes <iain@openedhand.com>
13839 * clutter/clutter-group.c: More typo fixes
13841 * clutter/clutter-event.c: Documentation
13843 2006-06-22 Emmanuele Bassi <ebassi@openedhand.com>
13845 * clutter/clutter-timeline.h:
13846 * clutter/clutter-timeline.c: Add a "started" and a "paused"
13847 signals; add more sanity checks on the public functions.
13849 (clutter_timeline_get_loop): Add a getter function for the
13852 * clutter/clutter-marshal.list: Add marshallers.
13854 * clutter/clutter-timeline.h:
13855 * clutter/clutter-actor.h: Add padding for future expansion
13856 without breaking ABI.
13858 2006-06-22 Iain Holmes <iain@openedhand.com>
13860 * clutter/clutter-actor.c: Fix some typos in the docs.
13862 2006-06-22 Iain Holmes <iain@openedhand.com>
13864 * clutter/clutter-util.c: And more
13866 2006-06-22 Ross Burton <ross@openedhand.com>
13868 * clutter/clutter-label.c:
13869 * clutter/clutter-video-texture.c:
13870 * clutter/clutter-texture.c:
13871 * clutter/clutter-timeline.c:
13872 * clutter/clutter-group.c:
13873 Fix gtk-doc problems.
13875 2006-06-22 Iain Holmes <iain@openedhand.com>
13877 * clutter/clutter-main.c: More documentation
13879 2006-06-22 Matthew Allum <mallum@openedhand.com>
13881 * clutter/clutter-main.h:
13882 Remove bogus xvisual call.
13884 2006-06-22 Matthew Allum <mallum@openedhand.com>
13886 * clutter/clutter-actor.c:
13887 * clutter/clutter-actor.h:
13888 Remove mirroring related calls ( unimplemented )
13889 * gtk/gtk-clutter-test.c: 0 -> NULL
13891 2006-06-22 Iain Holmes <iain@openedhand.com>
13893 * clutter/clutter-actor.c:
13894 * clutter/clutter-stage.c:
13895 * gtk/gtk-clutter.c: More docs
13897 2006-06-22 Iain Holmes <iain@openedhand.com>
13899 * clutter/clutter-actor.c: Added some more docs.
13901 2006-06-22 Matthew Allum <mallum@openedhand.com>
13903 * clutter/clutter-actor.c:
13904 * clutter/clutter-clone-texture.c:
13905 * clutter/clutter-color.c:
13906 * clutter/clutter-event.c:
13907 * clutter/clutter-group.c:
13908 * clutter/clutter-label.c:
13909 * clutter/clutter-main.c:
13910 * clutter/clutter-media.c:
13911 * clutter/clutter-rectangle.c:
13912 * clutter/clutter-stage.c:
13913 * clutter/clutter-texture.c:
13914 * clutter/clutter-timeline.c:
13915 * clutter/clutter-util.c:
13916 * clutter/clutter-video-texture.c:
13918 Documentation updates - add section headers.
13920 2006-06-22 Iain Holmes <iain@openedhand.com>
13922 * gtk/gtk-clutter-test.c (main): Don't show the stage.
13924 2006-06-22 Iain Holmes <iain@openedhand.com>
13926 * gtk/gtk-clutter.[ch]: Rewrite to use
13927 clutter_stage_set_xwindow_foreign rather than GtkSocket.
13929 * gtk/gtk-clutter-test.c: Add fading!1!!!!11! OMGWTFBBQ!!!
13931 2006-06-21 Emmanuele Bassi <ebassi@openedhand.com>
13933 * examples/video-cube.c (main): Quit on key press.
13935 2006-06-21 Emmanuele Bassi <ebassi@openedhand.com>
13937 * clutter/Makefile.am: Re-fix distcheck after last commit.
13939 2006-06-21 Matthew Allum <mallum@openedhand.com>
13941 * clutter/Makefile.am:
13942 Make sure clutter.h included.
13943 * clutter/clutter-stage.c: (clutter_stage_realize),
13944 (clutter_stage_get_actor_at_pos):
13945 Select for motion events on X window.
13946 Return highest rather than lowest found actor for actor_at_pos.
13947 * examples/Makefile.am:
13948 Remove test-text, remane test video.
13950 Add info about the included examples.
13951 * examples/test-video.c:
13952 * examples/video-player.c:
13953 Redo test-video a little nicer and rename.
13954 * examples/video-cube.c:
13955 Fix so it at least 'works' again.
13959 2006-06-21 Ross Burton <ross@openedhand.com>
13963 Add gtk widget to distcheck and fix.
13965 2006-06-21 Emmanuele Bassi <ebassi@openedhand.com>
13967 * clutter/Makefile.am:
13968 * bindings/python/Makefile.am:
13969 * Makefile.am: Fix distcheck
13971 2006-06-21 Ross Burton <ross@openedhand.com>
13973 * clutter/Makefile.am:
13974 * examples/Makefile.am:
13977 2006-06-20 Matthew Allum <mallum@openedhand.com>
13981 * clutter/clutter-group.c:
13982 Attempt better group sizing code.
13983 * clutter/clutter-label.c:
13985 * clutter/clutter-texture.c:
13986 More debug info, make sure texture is realised for base_size()
13987 * clutter/clutter-video-texture.c:
13989 * examples/test.c: (main):
13990 Populate with more randomness.
13992 2006-06-15 Matthew Allum <mallum@openedhand.com>
13994 * clutter/clutter-stage.c:
13995 * clutter/clutter-stage.h:
13996 Add clutter_stage_set_xwindow_foreign() call
13997 * clutter/clutter-util.c:
13998 * clutter/clutter-util.h:
13999 Add some X error traps
14000 * examples/super-oh.c:
14001 Toy with us of new clutter_stage_set_xwindow_foreign() for
14002 optional screensaver functionality.
14004 2006-06-14 Matthew Allum <mallum@openedhand.com>
14007 Add checks for GL/gl.h and GL/glx.h
14009 2006-06-14 Matthew Allum <mallum@openedhand.com>
14016 2006-06-13 Matthew Allum <mallum@openedhand.com>
14018 * clutter/clutter-video-texture.c:
14019 Add missing license.
14021 2006-06-13 Matthew Allum <mallum@openedhand.com>
14023 * clutter/Makefile.am:
14024 * clutter/clutter-actor.c:
14025 * clutter/clutter-actor.h:
14026 * clutter/clutter-clone-texture.c:
14027 * clutter/clutter-clone-texture.h:
14028 * clutter/clutter-element.c:
14029 * clutter/clutter-element.h:
14030 * clutter/clutter-group.c:
14031 * clutter/clutter-group.h:
14032 * clutter/clutter-label.c:
14033 * clutter/clutter-label.h:
14034 * clutter/clutter-main.c:
14035 * clutter/clutter-main.h:
14036 * clutter/clutter-rectangle.c:
14037 * clutter/clutter-rectangle.h:
14038 * clutter/clutter-stage.c:
14039 * clutter/clutter-stage.h:
14040 * clutter/clutter-texture.c:
14041 * clutter/clutter-texture.h:
14042 * clutter/clutter-video-texture.c:
14043 * clutter/clutter-video-texture.h:
14044 * clutter/clutter.h:
14045 * examples/super-oh.c:
14046 * examples/test-text.c:
14047 * examples/test-video.c:
14049 * examples/video-cube.c:
14050 * gtk/gtk-clutter-test.c:
14051 * gtk/gtk-clutter.c:
14052 * gtk/gtk-clutter.h:
14053 Element to Actor Renaming.
14055 2006-06-12 Matthew Allum <mallum@openedhand.com>
14057 * clutter/Makefile.am:
14058 * clutter/clutter-media.c:
14059 * clutter/clutter-media.h:
14060 * clutter/clutter-video-texture.c:
14061 * clutter/clutter-video-texture.h:
14062 * clutter/clutter.h:
14063 * examples/test-video.c: (main):
14064 * examples/video-cube.c: (main):
14065 Add new 'media' interface.
14066 Drop Totem based video playback code replace with newly
14067 rewritten supper Jorn based code. Clutter is now fully LGPL.
14069 * clutter/clutter-texture.c: (tile_dimension):
14070 Remove uneeded overlap code.
14072 2006-06-08 Iain Holmes <iain@openedhand.com>
14074 * clutter/clutter-texture.c:
14075 Opps, undo change I didn't mean to commit
14077 2006-06-08 Iain Holmes <iain@openedhand.com>
14080 Add gdk-pixbuf-xlib cflags/libs to clutter libs
14081 Build the gtk-clutter.pc file.
14084 Add the gdk-pixbuf-xlib depends.
14086 * gtk/gtk-clutter.pc.in:
14087 pkg-config stuff for gtk-clutter
14090 Install gtk-clutter.pc
14092 2006-06-08 Matthew Allum <mallum@openedhand.com>
14094 * clutter/clutter-main.c:
14095 * clutter/clutter-private.h:
14096 * clutter/clutter-stage.c:
14097 Rework and fix offscreen rendering, also rejig GLX
14098 context handling, moving mostly into stage.
14099 Require at least OpenGL 1.2 ( CLAMP_TO_EDGE )
14101 * clutter/clutter-texture.c:
14102 Explicity set props on _init() as to avoid nasty can_create
14103 bug failing miserably in certain situations.
14104 Switch to CLAMP_TO_EDGE for textures to avoid tile seams.
14105 Add some more GL error checks.
14107 * clutter/clutter-label.c:
14111 Require gdk-pixbuf-xlib-2.0
14113 2006-06-06 Matthew Allum <mallum@openedhand.com>
14116 Use pkg-config to check for X. Really Check for GL libs.
14117 Make gtk binding optional. Cleanup a little.
14121 Make gtk binding optional
14123 * clutter/clutter-element.c:
14124 Cleanup a little, notify on size change.
14126 * clutter/clutter-texture.c:
14127 Lots of cleanups. Add waste prop. Add filter quality prop.
14129 * clutter/clutter-clone-texture.c:
14130 Make object construction simpler to work better with bindings.
14132 * clutter/clutter-stage.c:
14133 * clutter/clutter-timeline.c:
14134 Minor reformating, cleanups.
14136 * examples/test-text.c: (main):
14137 Random experimentation
14139 2006-06-06 Iain Holmes <iain@openedhand.com>
14141 * gtk/gtk-clutter.c (size_request): Take the size of the widget from
14143 (gtk_clutter_class_init): Hook up size-request
14145 2006-06-06 Iain Holmes <iain@openedhand.com>
14147 * gtk/: Add a gtk widget for clutter.
14149 * configure.ac: Add GTK checks
14151 * Makefile.am: Go into gtk/
14153 2006-06-05 Matthew Allum <mallum@openedhand.com>
14155 * clutter/clutter-group.c: (clutter_group_remove):
14158 2006-06-05 Matthew Allum <mallum@openedhand.com>
14160 * clutter/clutter-event.h:
14161 Remove send_event field. Clutter shouldn't need it.
14163 * clutter/clutter-main.c: (clutter_dispatch_x_event):
14164 Dont malloc a new clutter event for each xevent.
14166 * clutter/clutter-stage.h:
14167 * clutter/clutter-stage.c: (clutter_stage_class_init),
14168 (clutter_stage_get_default):
14169 Dont ref stage from clutter_stage_get_default.
14171 * examples/super-oh.c: (main):
14172 Remove some now uneeded debug g_prints
14174 2006-06-05 Emmanuele Bassi <ebassi@openedhand.com>
14177 * clutter-color.c: Reimplement ClutterColor as a boxed type;
14178 add convenience API for color handling, like: add, subtract,
14179 shade, HSL color-space conversion, packing and unpacking.
14181 * clutter-private.h: Update ClutterMainContext, and export the
14182 main context pointer here.
14184 * clutter-rectangle.h:
14185 * clutter-rectangle.c: Update the color-related code; make
14186 clutter_rectangle_new() and empty constructor and provide
14187 clutter_rectangle_new_with_color(); provide color setter
14191 * clutter-label.c: Rename the "font" property to "font-name";
14192 update the color-related code to the new ClutterColor object;
14193 rename clutter_label_new() to clutter_label_new_with_text(),
14194 and add setters and getters for the properties.
14196 * clutter-marshal.list: Add VOID:OBJECT and VOID:BOXED marshallers
14200 * clutter-stage.c: Rework the API: provide a default constructor
14201 for a singleton object, named clutter_stage_get_default(), which
14202 supercedes the clutter_stage() function in clutter-main; provide
14203 new events: button-press-event, button-release-event,
14204 key-press-event and key-release-event; update the color-related
14207 (clutter_stage_snapshot): Allow negative width and height when
14208 taking a snapshot (meaning: use full width/height).
14210 (clutter_stage_get_element_at_pos): Rename clutter_stage_pick().
14212 * clutter-element.c (clutter_element_paint): Clean up the
14213 stage and color related code.
14216 * clutter-event.c: Add generic ClutterAnyEvent type; add
14217 clutter_event_new(), clutter_event_copy() and clutter_event_free();
14218 make ClutterEvent a boxed type.
14221 * clutter-main.c: Remove clutter_stage(); add clutter_main_quit(),
14222 for cleanly quitting from clutter_main(); add multiple mainloops
14223 support; allocate the ClutterCntx instead of adding it to the
14224 stack; re-work the ClutterEvent dispatching.
14226 * clutter-group.c (clutter_group_add), (clutter_group_remove): Keep
14227 a reference on the element when added to a ClutterGroup.
14229 * examples/rects.py
14231 * examples/test-text.c:
14232 * examples/video-cube.c:
14233 * examples/super-oh.c:
14234 * examples/test-video.c: Update.
14236 2006-06-04 Matthew Allum <mallum@openedhand.com>
14238 * clutter/clutter-element.c:
14239 * clutter/clutter-group.c:
14240 * clutter/clutter-group.h:
14241 Work more on depth ( Z ) setting with sorting.
14243 * clutter/clutter-main.c: (clutter_redraw):
14244 Experiment with glXWaitVideoSyncSGI. Currently disabled.
14246 2006-06-02 Matthew Allum <mallum@openedhand.com>
14248 * clutter/clutter-element.h:
14249 Add missing _depth() declarations
14251 * clutter/clutter-main.c:
14252 * clutter/clutter-main.h:
14253 * clutter/clutter-private.h:
14254 * clutter/clutter-stage.c:
14255 * clutter/clutter-stage.h:
14256 Rejig GL setup as for stage to support an offscreen property.
14257 Offscreen support is however a little borked.
14259 2006-06-01 Matthew Allum <mallum@openedhand.com>
14261 * clutter/clutter-element.c:
14262 Fix a snafu in clutter_element_raise ()
14264 * clutter/clutter-timeline.c:
14265 * clutter/clutter-timeline.h:
14266 Add new clutter_timeline_is_playing() method
14268 2006-05-29 Matthew Allum <mallum@openedhand.com>
14270 * clutter/clutter-color.c: (clutter_color_set):
14271 Fix bit shifts in clutter color setters.
14273 2006-05-29 Matthew Allum <mallum@openedhand.com>
14275 * clutter/clutter-element.c:
14276 * clutter/clutter-element.h:
14277 Add initial new element depth() getter and setter.
14279 * clutter/clutter-group.c:
14280 * clutter/clutter-group.h:
14281 Add 2 new methods for listing a groups children externally.
14283 2006-05-27 Emmanuele Bassi <ebassi@openedhand.com>
14285 * clutter/clutter-clone-texture.c (set_parent_texture),
14286 (clutter_clone_texture_set_property),
14287 (clutter_clone_texture_get_property),
14288 (clutter_clone_texture_class_init),
14289 (clutter_clone_texture_new): Add a "parent-texture"
14290 constructor-only property to simplify the constructor code.
14292 * clutter/clutter-rectangle.c (clutter_rectangle_new):
14293 * clutter/clutter-timeline.c (clutter_timeline_new): Simplify
14294 the constructor code.
14296 * examples/rect.py: Use the new method names for clutter.main()
14297 and clutter.stage().
14299 2006-05-26 Emmanuele Bassi <ebassi@openedhand.com>
14301 * clutter/clutter-element.c: Fix gtk-doc annotations for public
14302 functions; add sanity checks for public API; factor out some
14303 pointer dereferences.
14305 2006-05-26 Emmanuele Bassi <ebassi@openedhand.com>
14307 Big entry, small changes.
14309 * clutter/clutter-rectangle.c:
14310 * clutter/clutter-clone-texture.c:
14311 * clutter/clutter-group.c:
14312 * clutter/clutter-element.c:
14313 * clutter/clutter-label.c: Use the GObject built-in definition
14314 of a private data structure; it removes the need for managing
14315 the allocation/de-allocation of a private structure ourselves.
14317 * clutter/clutter-group.h:
14318 * clutter/clutter-label.h: Add padding, for adding signals and
14319 other class-wide definitions without breaking ABI.
14321 * clutter/clutter-element.h:
14322 * clutter/clutter-element.c (clutter_element_box_get_type),
14323 (clutter_element_box_copy): Make ClutterElementBox a GBoxed
14324 type; clean up declarations of the enums and flags.
14326 * clutter/clutter-group.h:
14327 * clutter/clutter-group.c (clutter_group_add_many_valist),
14328 (clutter_group_add_many): Add a _valist version of
14329 clutter_group_add_many() function, and re-implement the latter
14330 as a proxy for the former; language bindings do not cope
14331 well with variable argument functions.
14333 * clutter/clutter-video-texture.h:
14334 * clutter/clutter-video-texture.c: Use the right prefix for
14335 the error and for the ratio enumerations.
14339 * clutter/Makefile.am: Use the <clutter/...> include path
14340 for parallel installations.
14342 * clutter/Makefile.am:
14343 * clutter/clutter-enum-types.h:
14344 * clutter/clutter-enum-types.c: Register the enumeration types
14345 inside the GObject type system in order to use them as properties
14346 and bindings automagically pick them up.
14348 * bindings/python/ChangeLog: Add a changelog for the bindings...
14350 * doc/reference/ChangeLog: ... and a changelog for the reference.
14353 * examples/video-cube.c:
14354 * examples/test-video.c: Use the <clutter/clutter.h> header.
14356 2006-05-25 Matthew Allum <mallum@openedhand.com>
14358 * clutter/clutter-clone-texture.c:
14359 (clone_texture_render_to_gl_quad):
14360 Remove uneeded bogus warning. Fix a typo causing large
14361 texture to get incorrectly rendered.
14362 * clutter/clutter-texture.c: (init_tiles),
14363 (texture_render_to_gl_quad), (clutter_texture_sync_pixbuf),
14364 (clutter_texture_realize):
14365 Add some new debug info.
14366 * clutter/clutter-video-texture.c: (fakesink_handoff_cb):
14367 Set the pixbuf from GST_BUFFER_DATA() a little safer.
14369 2006-05-25 Matthew Allum <mallum@openedhand.com>
14372 Fix prefix snafu via Ross.
14374 2006-05-24 Matthew Allum <mallum@openedhand.com>
14376 * clutter/clutter-element.c: (clutter_element_paint),
14377 (clutter_element_class_init):
14378 * clutter/clutter-label.c: (clutter_label_make_pixbuf):
14379 * clutter/clutter-main.c: (clutter_main):
14380 * clutter/clutter-stage.c: (sync_fullscreen), (sync_gl_viewport):
14381 * clutter/clutter-stage.h:
14382 Various minor tweaks / fixes needed by o.p.t
14383 * clutter/clutter-texture.c: (texture_render_to_gl_quad),
14384 (clutter_texture_sync_pixbuf), (clutter_texture_set_property),
14385 (clutter_texture_get_property), (clutter_texture_class_init):
14386 Experiment adding currently borked repreating textures,
14387 * clutter/clutter-timeline.c: (timeline_timeout_func),
14388 (clutter_timeline_skip):
14389 Fix timeline callback frame counting.
14390 * examples/test-video.c: (main):
14391 Experiment with repeated textures.
14393 2006-05-23 Matthew Allum <mallum@openedhand.com>
14395 * clutter/clutter-clone-texture.h:
14397 * clutter/clutter-element.c: (clutter_element_set_parent):
14398 Only unref if parent non NULL
14399 * clutter/clutter-label.c: (clutter_label_class_init),
14400 (clutter_label_set_text), (clutter_label_set_font):
14401 * clutter/clutter-stage.h:
14402 Add some utility defines
14403 * clutter/clutter-texture.c: (init_tiles):
14404 * clutter/clutter-timeline.c: (clutter_timeline_class_init),
14405 (timeline_timeout_func), (clutter_timeline_get_current_frame):
14406 * clutter/clutter-timeline.h:
14407 Add a 'completed' signal
14408 Dont free priv when g_type_class_private used.
14409 * clutter/clutter.h:
14410 Add missing clutter-rectangle.h
14411 * examples/Makefile.am:
14412 * examples/super-oh.c: (main):
14414 * examples/video-cube.c:
14417 2006-05-22 Matthew Allum <mallum@openedhand.com>
14419 * clutter/clutter-element.c:
14420 * clutter/clutter-element.h:
14421 * clutter/clutter-event.c:
14422 * clutter/clutter-group.c: (clutter_group_remove_all):
14423 * clutter/clutter-group.h:
14424 * clutter/clutter-main.c: (translate_button_event),
14425 (translate_motion_event):
14426 Improve mouse event handling.
14427 Add code to map arbituary ( i.e cursor ) position to
14428 a clutter element using OpenGL 'picking'.
14429 * clutter/clutter-texture.c:
14430 * clutter/clutter-clone-texture.c:
14431 re-realize parent texture if it gets hidden.
14432 * clutter/clutter-stage.c:
14433 * clutter/clutter-stage.h:
14434 Make sure stage sets gl viewport up even if just default size.
14435 (clutter_texture_hide), (clutter_texture_paint):
14436 * doc/reference/Makefile.am:
14437 * examples/super-oh.c: (input_cb), (frame_cb), (main):
14438 Add test for mouse events, click to remove.
14440 2006-05-21 Matthew Allum <mallum@openedhand.com>
14442 * clutter/clutter-element.c:
14443 * clutter/clutter-element.h:
14444 Add new core sizing methods and more documentation.
14445 * clutter/clutter-group.c:
14446 * clutter/clutter-group.h:
14447 Use the sizing bits and documentation.
14448 * clutter/clutter-main.c:
14449 * clutter/clutter-event.h:
14450 Add FPS display when CLUTTER_SHOW_FPS env var set.
14451 Add initial support for mouse events.
14452 * clutter/clutter-stage.c:
14453 Add 'snapshot' method.
14454 * clutter/clutter-texture.c: (clutter_texture_new_from_pixbuf):
14455 * clutter/clutter-texture.h:
14457 * clutter/clutter-timeline.c:
14458 Add support for changing FPS setting on the fly. Document.
14459 * examples/super-oh.c: (frame_cb), (main):
14460 Add an optional motion trails effect.
14462 2006-05-17 Matthew Allum <mallum@openedhand.com>
14465 Add a tiny bit of info
14468 * clutter/clutter-clone-texture.c:
14469 (clone_texture_render_to_gl_quad):
14470 * clutter/clutter-element.c: (clutter_element_show),
14471 (clutter_element_realize), (clutter_element_unrealize),
14472 (clutter_element_paint), (clutter_element_set_id),
14473 (clutter_element_get_id):
14474 * clutter/clutter-element.h:
14475 Rename REALISE() to REALIZE()
14477 * clutter/clutter-texture.c: (texture_render_to_gl_quad),
14478 (clutter_texture_sync_pixbuf), (clutter_texture_set_pixbuf):
14479 * clutter/clutter-video-texture.c: (query_timeout),
14480 (got_video_size), (caps_set), (parse_stream_info),
14481 (handle_element_message), (bus_message_cb),
14482 (poll_for_state_change_full), (clutter_video_texture_get_property),
14483 (clutter_video_texture_class_init), (clutter_video_texture_init),
14484 (clutter_video_texture_open), (clutter_video_texture_seek_time),
14485 (stop_play_pipeline):
14486 * clutter/clutter-video-texture.h:
14487 Move over using fakesink and handoff instead of custom element
14488 Support 3 channel pixbufs as textures and thus increase efficiency
14489 of video texture ( also avoids byte swapping. )
14490 Clean up video texture code somemore.
14491 Add some metadata support.
14495 Disable old custom clutter gst element from build.
14497 * examples/test-video.c: (foo), (size_change), (tick), (main):
14498 * examples/video-cube.c: (clutter_video_texture_cube_paint):
14499 Sink with new API. Pause on key press.
14501 2006-05-13 Matthew Allum <mallum@openedhand.com>
14503 * clutter/clutter-element.c: (redraw_update_idle),
14504 (clutter_element_show), (clutter_element_hide),
14505 (clutter_element_realize), (clutter_element_unrealize),
14506 (clutter_element_class_init), (clutter_element_init),
14507 (clutter_element_queue_redraw), (clutter_element_set_geometry),
14508 (clutter_element_get_geometry), (clutter_element_get_coords),
14509 (clutter_element_set_position), (clutter_element_set_size),
14510 (clutter_element_get_abs_position), (clutter_element_get_width),
14511 (clutter_element_get_height), (clutter_element_get_x),
14512 (clutter_element_get_y), (clutter_element_set_opacity):
14513 * clutter/clutter-texture.c: (clutter_texture_get_base_size),
14514 (clutter_texture_bind_tile), (clutter_texture_get_n_tiles),
14515 (clutter_texture_get_x_tile_detail),
14516 (clutter_texture_get_y_tile_detail):
14517 * doc/reference/Makefile.am:
14518 * doc/reference/clutter.types:
14519 Documentation updates.
14521 2006-05-13 Matthew Allum <mallum@openedhand.com>
14524 Add @MAJORMINOR@ to installed dirs.
14525 * clutter/clutter-main.c: (clutter_xscreen), (clutter_init):
14526 * clutter/clutter-main.h:
14527 * clutter/clutter-private.h:
14528 Quick fix for debug statements so now only appear
14529 if CLUTTER_DBBUG env var set.
14531 2006-05-12 Matthew Allum <mallum@openedhand.com>
14535 * clutter/Makefile.am:
14536 * bindings/python/Makefile.am:
14537 * examples/Makefile.am:
14539 Clean up autofoo a bit fixing versioning.
14540 * bootstrap-autotools.sh:
14541 * clutter-1.0.pc.in:
14544 2006-05-12 Matthew Allum <mallum@openedhand.com>
14546 * bindings/python/Makefile.am:
14547 * bindings/python/clutter.override:
14548 * clutter/Makefile.am:
14549 * clutter/clutter-bin.c:
14550 * clutter/clutter-bin.h:
14551 * clutter/clutter-element.c: (clutter_element_dispose),
14552 (clutter_element_raise), (clutter_element_lower):
14553 * clutter/clutter-group.c:
14554 * clutter/clutter-group.h:
14555 * clutter/clutter-main.c: (clutter_threads_leave):
14556 * clutter/clutter-main.h:
14557 * clutter/clutter-stage.c: (clutter_stage_class_init):
14558 * clutter/clutter-stage.h:
14559 * clutter/clutter.h:
14560 * examples/super-oh.c: (frame_cb), (main):
14561 * examples/test-text.c: (main):
14562 * examples/test-video.c: (main):
14563 * examples/test.c: (main):
14564 * examples/video-cube.c: (main):
14565 Rename clutter-bin to clutter-group
14567 2006-05-11 Matthew Allum <mallum@openedhand.com>
14569 * clutter/clutter-clone-texture.c:
14570 (clone_texture_render_to_gl_quad), (clutter_clone_texture_paint),
14571 (clutter_clone_texture_class_init), (clutter_clone_texture_new):
14573 * clutter/clutter-element.c: (clutter_element_rotate_z),
14574 (clutter_element_rotate_x), (clutter_element_rotate_y):
14576 * examples/Makefile.am:
14577 * examples/super-oh.c:
14578 Add a new demo - unsing rotations and clones.
14580 2006-05-11 Matthew Allum <mallum@openedhand.com>
14582 * bindings/python/Makefile.am:
14583 * bindings/python/clutter-base-types.defs:
14584 * bindings/python/clutter-base.defs:
14585 * bindings/python/clutter.override:
14586 Python goodiness from ebassi.
14587 - Element geometry handled nicely.
14588 - get_coords(), get_abs_position() added.
14590 * clutter/clutter-element.c: (clutter_element_rotate_x),
14591 (clutter_element_rotate_y), (clutter_element_mirror),
14592 * clutter/clutter-element.h:
14593 Add initial rotation API. Make Geometry boxed ( ebassi )
14595 * clutter/clutter-stage.c: (sync_gl_viewport):
14596 Set depth in main world transform.
14598 * clutter/clutter-timeline.h:
14599 Add missing new() api call.
14601 * examples/test.c: (timeout_text_cb), (frame_cb), (main):
14602 Tou with some rotation
14604 2006-05-11 Matthew Allum <mallum@openedhand.com>
14606 reviewed by: <delete if not using a buddy>
14608 * bindings/python/Makefile.am:
14609 * bindings/python/clutter-base-types.defs:
14610 * bindings/python/clutter-base.defs:
14611 * bindings/python/clutter.override:
14612 * clutter/clutter-bin.c: (clutter_bin_paint):
14613 * clutter/clutter-element.c: (clutter_element_paint),
14614 (clutter_element_get_height), (clutter_element_get_x),
14615 (clutter_element_get_y), (clutter_element_set_opacity),
14616 (clutter_element_get_opacity), (clutter_element_set_id),
14617 (clutter_element_get_id), (clutter_element_rotate_x),
14618 (clutter_element_rotate_y), (clutter_element_mirror),
14619 (clutter_element_set_clip), (clutter_element_remove_clip),
14620 (clutter_element_set_parent), (clutter_element_get_parent),
14621 (clutter_element_raise), (clutter_element_lower),
14622 (clutter_element_raise_top), (clutter_element_lower_bottom):
14623 * clutter/clutter-element.h:
14624 * clutter/clutter-main.c: (clutter_redraw):
14625 * clutter/clutter-stage.c: (sync_gl_viewport):
14626 * clutter/clutter-timeline.h:
14627 * examples/test.c: (timeout_text_cb), (frame_cb), (main):
14629 2006-05-09 Matthew Allum <mallum@openedhand.com>
14632 * clutter/clutter-bin.c:
14633 * clutter/clutter-bin.h:
14634 * clutter/clutter-clone-texture.c:
14635 * clutter/clutter-clone-texture.h:
14636 * clutter/clutter-color.c:
14637 * clutter/clutter-color.h:
14638 * clutter/clutter-element.c:
14639 * clutter/clutter-element.h:
14640 * clutter/clutter-event.c:
14641 * clutter/clutter-event.h:
14642 * clutter/clutter-keysyms.h:
14643 * clutter/clutter-label.c:
14644 * clutter/clutter-label.h:
14645 * clutter/clutter-main.c:
14646 * clutter/clutter-main.h:
14647 * clutter/clutter-private.h:
14648 * clutter/clutter-rectangle.c:
14649 * clutter/clutter-rectangle.h:
14650 * clutter/clutter-stage.c:
14651 * clutter/clutter-stage.h:
14652 * clutter/clutter-texture.c:
14653 * clutter/clutter-texture.h:
14654 * clutter/clutter-timeline.c:
14655 * clutter/clutter-timeline.h:
14656 * clutter/clutter-util.c:
14657 * clutter/clutter-util.h:
14660 2006-05-08 Matthew Allum <mallum@openedhand.com>
14662 * clutter/Makefile.am:
14663 * clutter/clutter-event.c:
14664 * clutter/clutter-event.h:
14665 * clutter/clutter-keysyms.h:
14666 * clutter/clutter-main.c: (clutter_dispatch_x_event):
14667 * clutter/clutter-stage.c: (clutter_stage_class_init):
14668 * clutter/clutter-stage.h:
14669 * clutter/clutter.h:
14670 * bindings/python/Makefile.am:
14671 * bindings/python/clutter.override:
14672 Add basic input event handling. Keys only atm.
14674 2006-05-08 Matthew Allum <mallum@openedhand.com>
14678 * bindings/python/Makefile.am:
14679 * bindings/python/clutter.override:
14680 Fix up so pixbufs now work ( thanks ebassi! )
14681 Add some missing newer headers.
14682 * clutter/clutter-main.h:
14683 Remove unused clutter_queue_redraw();
14685 2006-05-07 Matthew Allum <mallum@openedhand.com>
14687 * clutter/clutter-element.c: (clutter_element_class_init),
14688 (clutter_element_init), (clutter_element_queue_redraw),
14689 (clutter_element_set_geometry), (clutter_element_get_geometry),
14690 (clutter_element_get_coords), (clutter_element_set_position),
14691 (clutter_element_set_size), (clutter_element_get_abs_position),
14692 (clutter_element_get_width), (clutter_element_get_height),
14693 (clutter_element_get_x), (clutter_element_get_y),
14694 (clutter_element_set_opacity):
14695 * clutter/clutter-main.c: (clutter_dispatch_x_event):
14696 * clutter/clutter-main.h:
14697 * clutter/clutter-private.h:
14698 * clutter/clutter-stage.c: (clutter_stage_set_color):
14699 * clutter/clutter-texture.c: (clutter_texture_set_pixbuf):
14700 Rename clutter_queue_redraw -> clutter_element_queue_redraw
14702 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
14703 (clutter_label_set_property), (clutter_label_set_text_extents):
14704 * clutter/clutter-label.h:
14707 * examples/Makefile.am:
14708 * examples/test-text.c:
14709 Add sime test text example.
14711 2006-05-07 Matthew Allum <mallum@openedhand.com>
14713 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
14714 (clutter_label_get_property), (clutter_label_dispose),
14715 (clutter_label_class_init), (clutter_label_init),
14716 (clutter_label_new_with_text), (clutter_label_new),
14717 (clutter_label_set_text), (clutter_label_set_font),
14718 (clutter_label_set_text_extents), (clutter_label_set_fg_color):
14719 * examples/test.c: (main):
14720 Slight efficiency improvements. Add initial extents API.
14722 2006-05-07 Matthew Allum <mallum@openedhand.com>
14726 * clutter/Makefile.am:
14727 * clutter/clutter-clone-texture.c:
14728 * clutter/clutter-clone-texture.h:
14729 Add new texture clone element.
14730 * clutter/clutter-color.c:
14731 * clutter/clutter-color.h:
14732 Add simple color API.
14733 * clutter/clutter-util.c:
14734 * clutter/clutter-util.h:
14735 Move shared texture funcs into shared util code.
14736 * clutter/clutter-texture.c: (can_create), (tile_dimension),
14737 (init_tiles), (texture_render_to_gl_quad),
14738 (clutter_texture_unrealize), (clutter_texture_sync_pixbuf),
14739 (clutter_texture_realize), (clutter_texture_show),
14740 (clutter_texture_hide), (clutter_texture_paint),
14741 (clutter_texture_finalize), (clutter_texture_set_property),
14742 (clutter_texture_get_property), (clutter_texture_class_init),
14743 (clutter_texture_init), (clutter_texture_set_pixbuf),
14744 (clutter_texture_new_from_pixbuf), (clutter_texture_get_base_size),
14745 (clutter_texture_bind_tile):
14746 Changes for clones to work.
14747 * clutter/clutter-element.c: (clutter_element_paint),
14748 (clutter_element_set_property), (clutter_element_get_property),
14749 (clutter_element_set_position), (clutter_element_set_size),
14750 (clutter_element_get_abs_position), (clutter_element_get_width),
14751 (clutter_element_get_height), (clutter_element_get_x),
14752 (clutter_element_get_y), (clutter_element_set_opacity),
14753 (clutter_element_get_opacity), (clutter_element_set_id),
14754 (clutter_element_get_id), (clutter_element_set_clip):
14755 * clutter/clutter-element.h:
14756 Add clipping and other tweaks.
14757 * clutter/clutter-stage.c: (sync_gl_viewport),
14758 (clutter_stage_paint), (clutter_stage_init):
14759 Add psuedo 3D desktop like GL setup.
14760 * clutter/clutter-label.c: (clutter_label_make_pixbuf):
14761 * clutter/clutter-label.h:
14762 * clutter/clutter-main.c: (clutter_redraw):
14763 * clutter/clutter-main.h:
14764 * clutter/clutter-private.h:
14765 * clutter/clutter-rectangle.c: (clutter_rectangle_paint):
14766 * clutter/clutter-stage.h:
14767 * clutter/clutter-texture.h:
14768 * clutter/clutter-timeline.c: (clutter_timeline_class_init):
14769 * clutter/clutter-video-texture.c:
14770 * clutter/clutter.h:
14771 * examples/test-video.c: (foo), (size_change), (tick), (main):
14772 * examples/test.c: (main):
14773 * examples/video-cube.c: (clutter_video_texture_cube_paint),
14774 (clutter_video_texture_cube_class_init),
14775 (clutter_video_texture_cube_init):
14776 Various minor tweaks for API changes, new features etc.
14778 2006-05-03 Matthew Allum <mallum@openedhand.com>
14780 * clutter/clutter-bin.c: (clutter_bin_paint):
14781 * clutter/clutter-bin.h:
14782 * clutter/clutter-element.c: (clutter_element_unrealize),
14783 (clutter_element_paint), (clutter_element_set_property),
14784 (clutter_element_get_property), (clutter_element_dispose),
14785 (clutter_element_finalize), (clutter_element_class_init),
14786 (clutter_element_init), (clutter_element_queue_redraw),
14787 (clutter_element_set_geometry), (clutter_element_get_geometry),
14788 (clutter_element_get_coords), (clutter_element_set_position),
14789 (clutter_element_set_size), (clutter_element_get_abs_position),
14790 (clutter_element_set_opacity), (clutter_element_get_opacity),
14791 (clutter_element_set_clip), (clutter_element_remove_clip),
14792 (clutter_element_set_parent), (clutter_element_get_parent),
14793 (clutter_element_raise), (clutter_element_lower),
14794 (clutter_element_raise_top), (clutter_element_lower_bottom):
14795 * clutter/clutter-element.h:
14796 * clutter/clutter-label.c: (clutter_label_set_fg_color):
14797 * clutter/clutter-rectangle.c: (clutter_rectangle_paint),
14798 (clutter_rectangle_set_property), (clutter_rectangle_init):
14799 * clutter/clutter-stage.c: (sync_xwindow_size):
14800 * clutter/clutter-texture.c: (clutter_texture_paint),
14801 (clutter_texture_set_pixbuf):
14802 Clean up ClutterElement, removing globals, improving sizing
14803 and initial clipping code.
14805 * clutter/clutter.h:
14806 * clutter/clutter-timeline.c: (clutter_timeline_class_init),
14807 (timeline_timeout_func), (clutter_timeline_start),
14808 (clutter_timeline_pause), (clutter_timeline_rewind),
14809 (clutter_timeline_skip), (clutter_timeline_advance),
14810 (clutter_timeline_get_current_frame), (clutter_timeline_new):
14811 * clutter/clutter-timeline.h:
14812 Various fixes to timelines. Implement frame skipping.
14814 * examples/test.c: (timeout_text_cb), (main):
14815 Update to use timeline.
14817 2006-05-02 Matthew Allum <mallum@openedhand.com>
14821 * clutter/clutter-element.h:
14822 * clutter/clutter-rectangle.h:
14823 Minor formatting cleanups
14825 2006-05-02 Matthew Allum <mallum@openedhand.com>
14827 * clutter/Makefile.am:
14828 * clutter/clutter-timeline.c:
14829 * clutter/clutter-timeline.h:
14830 Add initial timeline implementation
14832 2006-05-02 Matthew Allum <mallum@openedhand.com>
14834 * bindings/python/Makefile.am:
14835 * bindings/python/cluttermodule.c: (initclutter):
14836 Fix python build with new -1.0 naming. Use of GdkPixbufs
14837 still causing crashes.
14839 2006-04-30 Matthew Allum <mallum@openedhand.com>
14841 * clutter/clutter-main.c: (events_init), (redraw_update_idle),
14842 (clutter_queue_redraw), (clutter_redraw):
14843 Fix repaint queueing, using idle handler now.
14844 Clean up some minor compiler warnings.
14845 * clutter/clutter-main.h:
14846 * clutter/clutter-texture.c: (clutter_texture_unrealize),
14847 (clutter_texture_set_pixbuf):
14848 Rename gl_lock/unlock to threads_enter/leaver
14850 2006-04-30 Matthew Allum <mallum@openedhand.com>
14853 * clutter-1.0.pc.in:
14854 * clutter/Makefile.am:
14855 * clutter/clutter-bin.h:
14856 * clutter/clutter-label.h:
14857 * clutter/clutter-rectangle.h:
14858 * clutter/clutter-stage.h:
14859 * clutter/clutter-texture.h:
14860 * clutter/clutter-video-texture.h:
14861 * clutter/clutter.h:
14863 * examples/Makefile.am:
14864 Add .pc file, tag -1.0 onto lib, includes dir naming.
14866 2006-04-29 Matthew Allum <mallum@openedhand.com>
14868 * clutter/clutter-main.c: (clutter_dispatch_x_event),
14869 (clutter_queue_redraw), (clutter_redraw):
14870 Simplify paint event queueing. Does not actually queue
14871 anymore (broken), needs wrong to reduce high number of
14874 * clutter/clutter-texture.c: (clutter_texture_set_pixbuf):
14875 Remove visible check which broke paints of resized texture pixmaps.
14877 2006-04-19 Matthew Allum <mallum@openedhand.com>
14879 * clutter/clutter-bin.c: (clutter_bin_paint), (clutter_bin_add):
14880 * clutter/clutter-element.c: (clutter_element_paint):
14881 * clutter/clutter-element.h:
14882 * clutter/clutter-label.c: (clutter_label_set_property),
14883 (clutter_label_get_property), (clutter_label_class_init):
14884 * clutter/clutter-marshal.list:
14885 * clutter/clutter-rectangle.c: (clutter_rectangle_set_property),
14886 (clutter_rectangle_get_property), (clutter_rectangle_class_init):
14887 * clutter/clutter-stage.c: (clutter_stage_dispose),
14888 (clutter_stage_get_property), (clutter_stage_class_init):
14889 * clutter/clutter-texture.c: (clutter_texture_realize),
14890 (clutter_texture_class_init), (clutter_texture_set_pixbuf):
14891 * clutter/clutter-texture.h:
14892 More object cleanups. Add signal to texture size changes.
14893 Fix color props. Adjust element realise flags workings ( broken ).
14894 * examples/test-video.c: (main):
14895 Broken due to realize flag changes.
14897 2006-04-18 Matthew Allum <mallum@openedhand.com>
14899 * clutter/clutter-bin.c: (clutter_bin_get_property),
14900 (clutter_bin_finalize), (clutter_bin_class_init),
14901 (clutter_bin_new), (clutter_bin_show_all), (clutter_bin_hide_all),
14903 * clutter/clutter-bin.h:
14904 * clutter/clutter-element.c: (clutter_element_get_property),
14905 (clutter_element_finalize), (clutter_element_class_init),
14906 (clutter_element_set_parent), (clutter_element_get_parent),
14907 (clutter_element_raise), (clutter_element_lower):
14908 * clutter/clutter-element.h:
14909 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
14910 (clutter_label_get_property), (clutter_label_dispose),
14911 (clutter_label_finalize), (clutter_label_class_init),
14912 (clutter_label_init), (clutter_label_new_with_text),
14913 (clutter_label_new), (clutter_label_set_text),
14914 (clutter_label_set_font), (clutter_label_set_fg_color):
14915 * clutter/clutter-label.h:
14916 * clutter/clutter-rectangle.c: (clutter_rectangle_paint),
14917 (clutter_rectangle_set_property), (clutter_rectangle_get_property),
14918 (clutter_rectangle_finalize), (clutter_rectangle_dispose),
14919 (clutter_rectangle_class_init), (clutter_rectangle_init),
14920 (clutter_rectangle_new):
14921 * clutter/clutter-texture.c: (clutter_texture_paint),
14922 (clutter_texture_dispose), (clutter_texture_finalize),
14923 (clutter_texture_set_property), (clutter_texture_get_property),
14924 (clutter_texture_class_init), (clutter_texture_init),
14925 (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf):
14926 Various GObject usages cleanups, adding properties and
14927 finalize/dispose functions properly.
14929 2006-04-18 Matthew Allum <mallum@openedhand.com>
14931 * bindings/python/Makefile.am:
14932 * bindings/python/clutter.override:
14933 * bindings/python/cluttermodule.c: (initclutter):
14934 * clutter/clutter-label.h:
14935 * clutter/clutter-rectangle.h:
14936 * clutter/clutter-video-texture.h:
14937 More fixups to now less broken python bindings
14938 * examples/rects.py:
14939 A simple python script using bindings
14941 2006-04-18 Matthew Allum <mallum@openedhand.com>
14943 * clutter/clutter-marshal.list:
14946 2006-04-17 Matthew Allum <mallum@openedhand.com>
14949 * bindings/Makefile.am:
14950 * bindings/python/Makefile.am:
14951 * bindings/python/clutter.override:
14952 * bindings/python/cluttermodule.c:
14954 First shot at some python bindings ( broken atm )
14955 * clutter/clutter-bin.h:
14956 * clutter/clutter-element.h:
14957 * clutter/clutter-stage.h:
14958 * clutter/clutter-texture.h:
14959 * clutter/clutter.h:
14960 Rejig headers a little so h2def.py happier
14962 2006-04-17 Matthew Allum <mallum@openedhand.com>
14965 * doc/clutter.types:
14966 * doc/reference/Makefile.am:
14967 Move gtk-doc gubbins to doc/reference
14969 2006-04-16 Matthew Allum <mallum@openedhand.com>
14974 * clutter/clutter-bin.c: (clutter_bin_paint):
14977 * clutter/clutter-texture.c: (clutter_texture_dispose),
14978 (clutter_texture_class_init), (clutter_texture_set_pixbuf):
14979 Fixup object finalization a little.
14981 * bootstrap-autotools.sh:
14984 * doc/clutter.types:
14985 Add gtk-doc infrastructure
14987 2006-04-15 Matthew Allum <mallum@openedhand.com>
14992 * clutter/Makefile.am:
14993 * clutter/clutter-rectangle.c: (clutter_rectangle_new):
14994 Sync passed color alpha chan to element opacity,
14996 * clutter/clutter-video-texture.c:
14997 (clutter_video_texture_error_quark), (signal_eos_delayed),
14998 (query_timeout), (got_video_size), (caps_set), (parse_stream_info),
14999 (handle_element_message)
15000 * clutter/clutter-video-texture.h:
15001 Port more of bacon video widget API.
15003 * examples/test-video.c: (foo), (tick), (main):
15004 Add a simple overlay displaying playback time.
15006 2006-04-15 Matthew Allum <mallum@openedhand.com>
15008 * clutter/clutter-element.c:
15009 * clutter/clutter-label.c: (clutter_label_init),
15010 (clutter_label_new_with_text):
15011 * clutter/clutter-label.h:
15012 * clutter/clutter-main.c: (clutter_redraw), (clutter_gl_unlock):
15013 * clutter/clutter-main.h:
15014 * clutter/clutter-rectangle.c: (clutter_rectangle_init),
15015 (clutter_rectangle_new):
15016 * clutter/clutter-rectangle.h:
15017 * clutter/clutter-texture.c: (clutter_texture_class_init),
15018 (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf):
15019 * clutter/clutter-texture.h:
15020 * clutter/clutter-video-texture.c: (clutter_video_texture_init):
15021 * clutter/clutter-video-texture.h:
15022 * examples/test-video.c: (main):
15023 * examples/test.c: (main):
15024 * examples/video-cube.c: (clutter_video_texture_cube_init), (main):
15025 Make xxx_new() return there type as ClutterElement*
15027 2006-04-15 Matthew Allum <mallum@openedhand.com>
15031 * clutter/clutter-main.c:
15032 * clutter/clutter-stage.c:
15033 * clutter/clutter-texture.c:
15034 * clutter/clutter-texture.h:
15035 * gst/clutterimagesink.c: (gst_clutterimagesink_clutterimage_put),
15036 (gst_clutterimagesink_context_get):
15037 Various experiments with textures and 3D views.
15039 * clutter/clutter-video-texture.c:
15040 (clutter_video_texture_class_init), (clutter_video_texture_init):
15041 * examples/Makefile.am:
15042 * examples/test-video.c: (main):
15043 * examples/video-cube.c:
15044 Add video-cube example
15046 2006-04-13 Matthew Allum <mallum@openedhand.com>
15051 * clutter/clutter-bin.c:
15052 * clutter/clutter-bin.h:
15053 New container element
15055 * clutter/clutter-stage.c:
15056 * clutter/clutter-stage.h:
15057 Make stage a proper element
15059 * clutter/Makefile.am:
15060 * clutter/clutter.h:
15061 * clutter/clutter-element.c: (clutter_element_show),
15062 (clutter_element_set_opacity):
15063 * clutter/clutter-element.h:
15064 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
15065 (clutter_label_set_text), (clutter_label_set_font):
15066 * clutter/clutter-private.h:
15067 Various tweaks new api calls.
15069 * clutter/clutter-main.c: (events_init):
15070 * clutter/clutter-main.h:
15071 Make ClutterContex Private to main
15073 * clutter/clutter-texture.c:
15074 * clutter/clutter-texture.h:
15075 * clutter/clutter-video-texture.c:
15076 (clutter_video_texture_finalize):
15079 * examples/test-video.c: (main):
15080 * examples/test.c: (main):
15081 Fix for API changes.
15083 2006-04-11 Matthew Allum <mallum@openedhand.com>
15087 * clutter/clutter-video-texture.c:
15088 (clutter_video_texture_finalize):
15089 * clutter/clutter-video-texture.h:
15090 Remove bogus pixbuf attribute
15092 2006-04-10 Matthew Allum <mallum@openedhand.com>
15094 * clutter/clutter-main.c: (clutter_dispatch_x_event),
15095 (clutter_queue_redraw), (clutter_main), (clutter_set_stage_params),
15097 * clutter/clutter-main.h:
15098 * clutter/clutter-private.h:
15099 Make Stage non fullscreen ( for now ). Change event loop to
15100 work better with video.
15102 * clutter/Makefile.am:
15103 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
15104 (clutter_label_class_init), (clutter_label_new_with_text),
15105 (clutter_label_set_text), (clutter_label_set_font):
15106 * clutter/clutter-texture.c: (texture_render_to_gl_quad),
15107 (clutter_texture_unrealize), (clutter_texture_sync_pixbuf),
15108 (clutter_texture_realize), (clutter_texture_show),
15109 (clutter_texture_hide), (clutter_texture_paint),
15110 (clutter_texture_finalize), (clutter_texture_set_property),
15111 (clutter_texture_get_property), (clutter_texture_class_init),
15112 (clutter_texture_init), (clutter_texture_get_pixbuf),
15113 (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf):
15114 * clutter/clutter-texture.h:
15115 * clutter/clutter.h:
15116 Fix leakage. Improve performance. Add support for non tiled
15119 * examples/Makefile.am:
15120 * examples/test.c: (timeout_text_cb), (main):
15123 * examples/test-video.c:
15126 * gst/clutterimagesink.c:
15127 * gst/clutterimagesink.h:
15128 * clutter/clutter-video-texture.c:
15129 * clutter/clutter-video-texture.h:
15130 Add initial support for video textures with gst-0.10
15132 * gst/cltrimagesink.c:
15133 * gst/cltrimagesink.h:
15134 Remove old gst-0.8 sink
15136 2006-04-05 Matthew Allum <mallum@openedhand.com>
15138 * clutter/Makefile.am:
15139 * clutter/clutter-element.c: (clutter_element_show),
15140 (clutter_element_hide), (clutter_element_realize),
15141 (clutter_element_unrealize), (clutter_element_paint),
15142 (clutter_element_finalize), (clutter_element_class_init),
15143 (clutter_element_init), (clutter_element_new):
15144 * clutter/clutter-element.h:
15145 * clutter/clutter.h:
15146 * clutter/clutter-main.c: (clutter_dispatch_x_event),
15147 (events_init), (clutter_redraw), (clutter_main), (clutter_init),
15148 (clutter_show_stage):
15149 * clutter/clutter-main.h:
15150 Various minor tweaks.
15152 * clutter/clutter-private.h:
15153 * clutter/clutter-texture.c: (can_create), (init_tiles),
15154 (clutter_texture_unrealize), (clutter_texture_realize),
15155 (clutter_texture_finalize), (clutter_texture_class_init),
15156 (clutter_texture_init):
15157 * clutter/clutter-texture.h:
15158 Much improve texture class.
15160 * clutter/clutter-label.c:
15161 * clutter/clutter-label.h:
15162 Add new text rendering class
15164 * clutter/clutter-rectangle.c:
15165 * clutter/clutter-rectangle.h:
15166 Add basic rectangle drawing class
15169 Add text rendering and animation to test.
15171 2006-04-04 Matthew Allum <mallum@openedhand.com>
15173 * clutter/Makefile.am:
15174 * clutter/clutter-element.c: (clutter_element_realize):
15175 * clutter/clutter-element.h:
15176 * clutter/clutter-image.c:
15177 * clutter/clutter-image.h:
15178 * clutter/clutter-main.c: (clutter_dispatch_x_event),
15179 (clutter_main), (clutter_set_stage_params), (clutter_init):
15180 * clutter/clutter-texture.c: (next_p2), (can_create),
15181 (tile_dimension), (init_tiles), (texture_render_to_gl_quad),
15182 (clutter_texture_unrealize), (clutter_texture_realize),
15183 (clutter_texture_get_pixbuf), (clutter_texture_paint),
15184 (clutter_texture_finalize), (clutter_texture_class_init):
15185 * clutter/clutter-texture.h:
15186 * clutter/clutter.h:
15189 Implement basic tiled texture painting.
15191 2006-04-03 Matthew Allum <mallum@openedhand.com>
15193 reviewed by: <delete if not using a buddy>
15195 * clutter/Makefile.am:
15196 * clutter/clutter-element.c:
15197 * clutter/clutter-element.h:
15198 * clutter/clutter-image.c:
15199 * clutter/clutter-image.h:
15200 * clutter/clutter-main.c: (events_init), (stage_realize),
15201 (clutter_queue_redraw), (clutter_redraw), (clutter_add_to_stage),
15202 (clutter_remove_from_stage), (clutter_main),
15203 (clutter_set_stage_params), (clutter_init):
15204 * clutter/clutter-main.h:
15205 * clutter/clutter-private.h:
15206 * clutter/clutter.h:
15209 2006-04-02 Matthew Allum <mallum@openedhand.com>
15211 * clutter/Makefile.am:
15212 * clutter/cltr-animator.c:
15213 * clutter/cltr-animator.h:
15214 * clutter/cltr-button.c:
15215 * clutter/cltr-button.h:
15216 * clutter/cltr-core.c:
15217 * clutter/cltr-core.h:
15218 * clutter/cltr-events.c:
15219 * clutter/cltr-events.h:
15220 * clutter/cltr-glu.c:
15221 * clutter/cltr-glu.h:
15222 * clutter/cltr-label.c:
15223 * clutter/cltr-label.h:
15224 * clutter/cltr-list.c:
15225 * clutter/cltr-list.h:
15226 * clutter/cltr-overlay.c:
15227 * clutter/cltr-overlay.h:
15228 * clutter/cltr-photo-grid.c:
15229 * clutter/cltr-photo-grid.h:
15230 * clutter/cltr-private.h:
15231 * clutter/cltr-scratch.c:
15232 * clutter/cltr-scratch.h:
15233 * clutter/cltr-texture.c:
15234 * clutter/cltr-texture.h:
15235 * clutter/cltr-video.c:
15236 * clutter/cltr-video.h:
15237 * clutter/cltr-widget.c:
15238 * clutter/cltr-widget.h:
15239 * clutter/cltr-window.c:
15240 * clutter/cltr-window.h:
15242 * clutter/clutter-main.c:
15243 * clutter/clutter-main.h:
15244 * clutter/clutter-private.h:
15245 * clutter/clutter.h:
15248 * clutter/pixbuf.c:
15249 * clutter/pixbuf.h:
15253 * examples/Makefile.am:
15254 * examples/photos.c:
15255 * examples/player.c:
15256 * examples/scratch.c:
15257 * examples/select.c:
15259 Remove old cltr files replacing with beginnings of
15260 rejigged 'clutter' ones.
15262 2005-05-27 mallum,,, <mallum@openedhand.com>
15264 * clutter/cltr-animator.c: (cltr_animator_zoom_new),
15265 (cltr_animator_move_new), (cltr_animator_fullzoom_new),
15266 (cltr_animator_new), (cltr_animator_set_args),
15267 (cltr_animator_wrapped_zoom_paint), (cltr_animator_reset),
15268 (cltr_animator_timeout_cb), (cltr_animator_run):
15269 * clutter/cltr-animator.h:
15270 * clutter/cltr-button.c: (cltr_button_set_label),
15271 (cltr_button_paint):
15272 * clutter/cltr-label.c: (cltr_label_new), (cltr_label_set_text),
15273 (cltr_label_get_text), (cltr_label_show),
15274 (cltr_label_handle_xevent), (cltr_label_paint):
15275 * clutter/cltr-label.h:
15276 * clutter/cltr-list.c: (cltr_list_paint):
15277 * clutter/cltr-widget.c:
15278 * examples/select.c: (usage), (video_ctrl_hide),
15279 (video_ctrl_stop_cb), (video_ctrl_play_cb),
15280 (video_ctrl_seek_begin_cb), (init_video_ctrl), (show_video_ctrl),
15281 (populate), (cell_to_item), (zoom_video_out), (init_show_controls),
15282 (handle_xevent), (zoom_out_complete), (zoom_in_complete):
15283 More select hacking ...
15285 2005-05-23 mallum,,, <mallum@openedhand.com>
15287 * clutter/cltr-button.c: (cltr_button_new_with_label),
15288 (cltr_button_handle_xevent), (cltr_button_paint):
15289 * clutter/cltr-button.h:
15290 * clutter/cltr-events.c: (cltr_main_loop):
15291 * clutter/cltr-list.c: (cltr_list_cell_new),
15292 (cltr_list_append_cell), (cltr_list_update_layout),
15294 * clutter/cltr-list.h:
15295 * clutter/cltr-overlay.c: (cltr_overlay_paint):
15296 * clutter/cltr-private.h:
15297 * clutter/cltr-widget.c: (cltr_widget_show),
15298 (cltr_widget_show_all), (cltr_widget_add_child):
15299 * clutter/cltr-widget.h:
15300 * clutter/cltr-window.c: (cltr_window_show), (cltr_window_paint),
15301 (cltr_window_handle_xevent), (cltr_window_post_paint),
15302 (cltr_window_set_paint_funcs), (cltr_window_xwin),
15303 (cltr_window_hide_cursor), (cltr_window_set_fullscreen):
15304 * clutter/cltr-window.h:
15305 * examples/select.c: (usage), (init_video_ctrl), (show_video_ctrl),
15306 (populate), (cell_to_item), (handle_xevent), (zoom_out_complete),
15307 (zoom_in_complete), (cell_activated), (main):
15308 Much Select hacking
15310 2005-05-17 mallum,,, <mallum@openedhand.com>
15312 * clutter/cltr-video.c: (cltr_video_get_pixbuf):
15313 * gst/cltrimagesink.c: (gst_cltrimagesink_change_state),
15314 (gst_cltrimagesink_chain):
15315 Fix thread related segv's on grabbing video image.
15316 Also pop any unplayed data from sink on stop
15318 2005-05-16 mallum,,, <mallum@openedhand.com>
15320 * clutter/cltr-animator.c: (cltr_animator_zoom_new),
15321 (cltr_animator_fullzoom_new), (cltr_animator_new),
15322 (cltr_animator_set_args), (cltr_animator_wrapped_paint):
15323 * clutter/cltr-animator.h:
15324 * clutter/cltr-list.c: (cltr_list_cell_new),
15325 (cltr_list_get_active_cell_co_ords), (cltr_list_show),
15326 (cltr_list_on_activate_cell), (cltr_list_update_layout),
15328 * clutter/cltr-list.h:
15329 * clutter/cltr-texture.c: (cltr_texture_realize),
15330 (cltr_texture_unref), (cltr_texture_sync_pixbuf),
15331 (cltr_texture_force_rgb_data):
15332 * clutter/cltr-video.c: (got_stream_length), (got_time_tick),
15333 (got_state_change), (parse_stream_info), (cb_iterate),
15334 (cltr_video_play), (cltr_video_set_volume),
15335 (cltr_video_get_volume), (cltr_video_get_pixbuf),
15336 (cltr_video_idler), (cltr_video_set_source),
15337 (cltr_video_handle_xevent), (cltr_video_paint):
15338 * clutter/cltr-video.h:
15339 * clutter/cltr-widget.c:
15340 * clutter/pixbuf.c: (pixbuf_write_png), (load_png_file),
15341 (pixbuf_copy), (pixbuf_fill_rect), (pixbuf_scale_down),
15343 * examples/select.c: (usage), (populate), (cell_to_item),
15344 (handle_xevent), (zoom_out_complete), (zoom_in_complete),
15345 (cell_activated), (main):
15346 * gst/cltrimagesink.c: (gst_cltrimagesink_getcaps),
15347 (gst_cltrimagesink_chain):
15348 Far too much hacking. Fix many endian image issues.
15349 Greatly improve select demo
15351 2005-05-16 mallum,,, <mallum@openedhand.com>
15353 * clutter/Makefile.am:
15354 * clutter/cltr-animator.c:
15355 * clutter/cltr-animator.h:
15356 * clutter/cltr-list.c: (distfunc), (cltr_list_new),
15357 (cltr_list_get_active_cell_co_ords), (cltr_list_show),
15358 (cltr_list_on_activate_cell), (cltr_list_handle_xevent),
15359 (cltr_list_animate), (cltr_list_timeout_cb),
15360 (cltr_list_update_layout), (cltr_list_paint):
15361 * clutter/cltr-list.h:
15362 * clutter/cltr-private.h:
15364 * clutter/pixbuf.c: (load_png_file):
15365 * examples/player.c:
15366 * examples/select.c: (usage), (populate), (cell_activated), (main):
15367 Work on animator zooming. Also build up select.c much
15369 2005-05-14 mallum,,, <mallum@openedhand.com>
15371 * clutter/cltr-animator.c:
15372 Add initial outline
15373 * clutter/cltr-button.c: (cltr_button_new_with_pixbuf),
15374 (cltr_button_handle_xkeyevent), (cltr_button_handle_xevent),
15375 (cltr_button_paint):
15376 various tweaks/experimentation
15377 * clutter/cltr-core.c: (cltr_init), (cltr_display_height):
15378 * clutter/cltr-glu.c: (cltr_glu_set_color):
15379 * clutter/cltr-glu.h:
15380 Add unfilled rect call.
15381 * clutter/cltr-label.c: (cltr_label_new), (cltr_label_paint):
15382 * clutter/cltr-list.c: (distfunc), (cltr_list_cell_new),
15383 (cltr_list_show), (cltr_list_animate), (cltr_list_paint):
15384 update list a little.
15385 * clutter/cltr-overlay.c: (cltr_overlay_handle_xevent),
15386 (cltr_overlay_paint):
15387 * clutter/cltr-private.h:
15388 * clutter/cltr-texture.c: (cltr_texture_realize):
15389 * clutter/cltr-video.c: (cltr_video_paint):
15391 * clutter/fonts.c: (draw_layout_on_pixbuf):
15392 Fix font alpha blending
15393 * examples/Makefile.am:
15394 * examples/player.c: (main):
15395 * examples/scratch.c: (main):
15397 * examples/select.c:
15400 2005-05-11 mallum,,, <mallum@openedhand.com>
15402 * clutter/cltr-video.c: (got_buffering), (cltr_video_new),
15403 (cltr_video_play), (cltr_video_idler):
15404 * examples/photos.c: (main):
15405 * examples/player.c: (handle_xevent), (main):
15406 * gst/cltrimagesink.c: (gst_cltrimagesink_chain):
15407 Fix Gl thread related crash on video playback
15408 Make examples less bound to my laptop ;)
15410 2005-05-06 mallum,,, <mallum@openedhand.com>
15412 * clutter/cltr-button.c: (cltr_button_new_with_label):
15413 * clutter/cltr-overlay.c:
15414 * clutter/cltr-photo-grid.c: (cltr_photo_grid_cell_new),
15415 (cltr_photo_grid_paint), (cltr_photo_grid_new):
15416 * clutter/cltr-video.c: (cltr_video_print_tag), (got_buffering),
15417 (got_error), (caps_set), (parse_stream_info), (cb_iterate),
15418 (cltr_video_new), (cltr_video_play), (cltr_video_seek),
15419 (cltr_video_seek_time), (cltr_video_stop), (cltr_video_close),
15420 (cltr_video_pause), (cltr_video_can_set_volume),
15421 (cltr_video_set_volume), (cltr_video_get_volume),
15422 (cltr_video_idler), (cltr_video_set_source), (cltr_video_show),
15423 (cltr_video_hide), (cltr_video_handle_xevent), (cltr_video_paint):
15424 * clutter/cltr-video.h:
15425 * clutter/cltr-widget.h:
15426 * clutter/cltr-window.c: (cltr_window_show), (cltr_window_paint),
15427 (cltr_window_handle_xevent), (cltr_window_set_fullscreen),
15428 (cltr_window_focus_widget):
15429 * clutter/cltr-window.h:
15431 * clutter/fonts.c: (get_layout_bitmap), (font_draw),
15432 (font_get_pixel_size):
15434 * examples/photos.c: (photo_grid_populate):
15435 * examples/player.c: (handle_xevent), (main):
15436 * examples/scratch.c: (main):
15437 Lots more tweaks, mainly updating video widget.
15439 2005-04-29 mallum,,, <mallum@openedhand.com>
15441 * clutter/cltr-button.c: (cltr_button_new),
15442 (cltr_button_on_activate), (cltr_button_new_with_label),
15443 (cltr_button_show):
15444 * clutter/cltr-button.h:
15445 * clutter/cltr-label.c: (cltr_label_new), (cltr_label_paint):
15446 * clutter/cltr-private.h:
15447 * clutter/cltr-video.c: (cltr_video_play):
15448 * clutter/cltr-widget.c: (cltr_widget_new), (cltr_widget_abs_x),
15449 (cltr_widget_abs_y), (cltr_widget_abs_x2), (cltr_widget_abs_y2),
15450 (cltr_widget_width), (cltr_widget_height), (cltr_widget_show),
15451 (cltr_widget_focus), (cltr_widget_unfocus),
15452 (cltr_widget_set_focus_next), (cltr_widget_get_focus_next),
15453 (cltr_widget_show_all):
15454 * clutter/cltr-widget.h:
15455 * clutter/cltr-window.c: (cltr_window_new),
15456 (cltr_window_focus_widget):
15458 * clutter/fonts.c: (draw_layout_on_pixbuf), (font_get_pixel_size):
15459 * examples/scratch.c: (main):
15460 Hack buttons some more
15462 2005-04-27 mallum,,, <mallum@openedhand.com>
15464 * clutter/Makefile.am:
15465 * clutter/cltr-button.c: (cltr_button_new):
15466 * clutter/cltr-label.c:
15467 * clutter/cltr-label.h:
15468 * clutter/cltr-photo-grid.c: (cltr_photo_grid_paint):
15469 * clutter/cltr-texture.c: (cltr_texture_realize),
15470 (cltr_texture_new), (cltr_texture_unref),
15471 (cltr_texture_no_tile_new):
15472 * clutter/cltr-texture.h:
15473 * clutter/cltr-video.c: (cltr_video_got_time_tick), (caps_set),
15474 (cltr_video_new), (cltr_video_idler), (cltr_video_set_source),
15475 (cltr_video_play), (cltr_video_pause), (cltr_video_show),
15476 (cltr_video_hide), (cltr_video_handle_xevent), (cltr_video_paint):
15478 * clutter/fonts.c: (font_new), (draw_layout_on_pixbuf),
15481 * clutter/pixbuf.c: (pixbuf_set_pixel), (pixbuf_get_pixel):
15482 * examples/photos.c: (photo_grid_populate), (main):
15483 * examples/player.c: (main):
15484 Improve video widget, use playbin rather than gst_play
15485 Lots of misc tweaks.
15487 2005-04-26 mallum,,, <mallum@openedhand.com>
15489 * clutter/Makefile.am:
15490 * clutter/cltr-core.c: (cltr_init):
15491 * clutter/cltr-events.c: (cltr_events_init), (cltr_main_loop):
15492 * clutter/cltr-photo-grid.c:
15493 * clutter/cltr-private.h:
15494 * clutter/cltr-scratch.c: (cltr_scratch_handle_xevent),
15495 (cltr_scratch_paint):
15496 * clutter/cltr-texture.c: (cltr_texture_render_to_gl_quad),
15497 (init_tiles), (cltr_texture_unrealize), (cltr_texture_realize),
15498 (cltr_texture_new), (cltr_texture_no_tile_new),
15499 (cltr_texture_get_pixbuf):
15500 * clutter/cltr-texture.h:
15501 * clutter/cltr-video.c:
15502 * clutter/cltr-video.h:
15503 * clutter/cltr-widget.c: (cltr_widget_queue_paint):
15505 * examples/Makefile.am:
15506 * examples/player.c:
15507 * gst/cltrimagesink.c: (gst_cltrimagesink_fixate),
15508 (gst_cltrimagesink_getcaps), (gst_cltrimagesink_sink_link),
15509 (gst_cltrimagesink_change_state), (gst_cltrimagesink_chain),
15510 (gst_cltrimagesink_set_property), (gst_cltrimagesink_get_property),
15511 (gst_cltrimagesink_finalize), (gst_cltrimagesink_class_init):
15512 * gst/cltrimagesink.h:
15513 Initial go at very hacky gst video widget
15515 2005-04-22 mallum,,, <mallum@openedhand.com>
15517 * clutter/Makefile.am:
15518 * clutter/cltr-button.c:
15519 * clutter/cltr-button.h:
15520 * clutter/cltr-core.c: (cltr_init):
15521 * clutter/cltr-overlay.c:
15522 * clutter/cltr-overlay.h:
15523 * clutter/cltr-photo-grid.c: (cltr_photo_grid_handle_xevent),
15524 (cltr_photo_grid_cell_new), (ctrl_photo_grid_get_zoomed_coords),
15525 (cell_is_offscreen), (cltr_photo_grid_idle_cb),
15526 (cltr_photo_grid_navigate), (cltr_photo_grid_activate_cell),
15527 (cltr_photo_grid_populate), (cltr_photo_grid_update_visual_state),
15528 (cltr_photo_grid_paint), (cltr_photo_grid_show),
15529 (cltr_photo_grid_set_fps), (cltr_photo_grid_get_fps),
15530 (cltr_photo_grid_set_anim_steps), (cltr_photo_grid_get_anim_steps),
15531 (cltr_photo_grid_new):
15532 Fix up grid so external prog can load images.
15533 * clutter/cltr-photo-grid.h:
15534 * clutter/cltr-texture.c: (cltr_texture_realize),
15535 (cltr_texture_new):
15536 * clutter/cltr-texture.h:
15537 * clutter/cltr-window.c: (cltr_window_set_fullscreen):
15539 * clutter/pixbuf.c: (pixbuf_scale_down), (ConvolveImage),
15540 (GaussianBlurImage):
15541 * clutter/pixbuf.h:
15542 New experimental Methods
15544 * examples/Makefile.am:
15545 * examples/photos.c:
15546 * examples/player.c:
15549 * gst/cltrimagesink.c:
15550 * gst/cltrimagesink.h:
15551 Add initial crusty ( broken ) gst stuff
15553 2005-04-13 mallum,,, <mallum@openedhand.com>
15555 * bootstrap-autotools.sh:
15556 * clutter/Makefile.am:
15559 * examples/Makefile.am:
15560 * examples/scratch.c:
15561 Initial autotooling of everything.
15563 2005-04-07 mallum,,, <mallum@openedhand.com>
15566 * cltr-events.c: (cltr_main_loop):
15570 * cltr-photo-grid.c: (cltr_photo_grid_cell_new),
15571 (cltr_photo_grid_append_cell), (ctrl_photo_grid_cell_to_coords),
15572 (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_idle_cb),
15573 (cltr_photo_grid_navigate), (cltr_photo_grid_activate_cell),
15574 (cltr_photo_grid_update_visual_state), (cltr_photo_grid_paint),
15575 (cltr_photo_grid_show), (cltr_photo_grid_new):
15578 * cltr-window.c: (cltr_window_new), (cltr_window_show),
15579 (cltr_window_handle_xevent):
15583 * pixbuf.c: (pixbuf_copy):
15587 2005-04-03 mallum,,, <mallum@openedhand.com>
15594 * cltr-photo-grid.c: (cltr_photo_grid_handle_xkeyevent),
15595 (cltr_photo_grid_handle_xevent), (cltr_photo_grid_cell_new),
15596 (cltr_photo_grid_append_cell), (ctrl_photo_grid_cell_to_coords),
15597 (ctrl_photo_grid_get_zoomed_coords), (cell_is_offscreen),
15598 (cltr_photo_grid_idle_cb), (cltr_photo_grid_navigate),
15599 (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
15600 (cltr_photo_grid_paint), (cltr_photo_grid_show),
15601 (cltr_photo_grid_new):
15602 * cltr-photo-grid.h:
15612 Add very basic initial toolkit infrastructure
15614 2005-03-31 mallum,,, <mallum@openedhand.com>
15616 * cltr-photo-grid.c: (cltr_photo_grid_append_cell),
15617 (ctrl_photo_grid_cell_to_coords),
15618 (ctrl_photo_grid_get_zoomed_coords), (cell_is_offscreen),
15619 (cltr_photo_grid_idle_cb), (cltr_photo_grid_navigate),
15620 (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
15621 (cltr_photo_grid_redraw), (cltr_photo_grid_new):
15622 * cltr-photo-grid.h:
15623 * cltr-texture.c: (cltr_texture_render_to_gl_quad), (init_tiles),
15624 (cltr_texture_realize):
15627 Implemented scrolling. Very rough around the edges, needs tidying.
15629 2005-03-30 mallum,,, <mallum@openedhand.com>
15632 * cltr-photo-grid.c: (cltr_photo_grid_redraw),
15633 (cltr_photo_grid_new):
15636 * cltr-texture.c: (cltr_texture_new):
15639 2005-03-30 mallum,,, <mallum@openedhand.com>
15641 * cltr-photo-grid.c: (cltr_photo_grid_populate),
15642 (cltr_photo_grid_redraw), (cltr_photo_grid_new):
15643 * cltr-photo-grid.h:
15644 * cltr-tex.c: (next_p2), (cltr_texture_render_to_gl_quad),
15645 (tile_dimension), (init_tiles), (cltr_texture_new):
15648 Rename CltrImage -> CltrTexture
15650 2005-03-30 mallum,,, <mallum@openedhand.com>
15653 * cltr-photo-grid.c: (cltr_photo_grid_populate),
15654 (cltr_photo_grid_redraw):
15655 * cltr-photo-grid.h:
15660 * pixbuf.c: (pixbuf_unref), (pixbuf_copy):
15662 Add intial new texture tiling code.
15664 2005-03-27 mallum,,, <mallum@openedhand.com>
15667 * cltr-photo-grid.c: (cltr_photo_grid_cell_new),
15668 (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_navigate),
15669 (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
15670 (cltr_photo_grid_redraw), (cltr_photo_grid_new):
15671 * cltr-photo-grid.h:
15672 * cltr.c: (cltr_dispatch_x_event), (cltr_init), (test_idle_cb),
15675 Add a very hacky threaded image loader.
15676 Make event handling a little more efficient, though still hacky
15677 * pixbuf.c: (pixel_set_vals), pixbuf.h:
15678 Add copy func ( unused as yet )
15680 2005-03-25 mallum,,, <mallum@openedhand.com>
15682 * cltr-photo-grid.c: (cltr_photo_grid_cell_new),
15683 (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_redraw),
15684 (cltr_photo_grid_new):
15685 * cltr-photo-grid.h:
15686 * cltr.c: (cltr_window_new), (idle_cb), (main):
15687 Use GL matrices in a saner way.
15688 Add random rotation to picts
15689 Random minor tweaks
15691 2005-03-24 mallum,,, <mallum@openedhand.com>
15694 * cltr-photo-grid.c:
15695 * cltr-photo-grid.h:
15696 * cltr.c: (cltr_window_new), (cltr_main_loop):
15698 Split up cltr.c a bit. start refactoring a bit.
15700 2005-03-23 mallum,,, <mallum@openedhand.com>
15702 * cltr.c: (cltr_photo_grid_populate), (cltr_photo_grid_redraw),
15703 (cltr_photo_grid_new), (main):
15705 Various minor tweaks
15706 * pixbuf.c: (pixbuf_set_pixel), (pixbuf_get_pixel):
15707 Fix RGBA ordering in set/get pixel
15709 2005-03-23 mallum,,, <mallum@openedhand.com>
15711 * cltr.c: (ctrl_photo_grid_get_trans_coords),
15712 Fix grid co-ords -> translation vals converter
15713 (cltr_photo_grid_navigate), (cltr_photo_grid_redraw),
15714 (cltr_photo_grid_new), (idle_cb):
15715 Fix moving between pictures when zoomed
15717 2005-03-23 mallum,,, <mallum@openedhand.com>
15719 * cltr.c: (cltr_dispatch_x_event), (cltr_window_new),
15720 (cltr_main_loop), (cltr_photo_grid_navigate),
15721 (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
15722 (cltr_photo_grid_redraw), (cltr_photo_grid_new), (idle_cb), (main):
15724 Lots, make the grid roughly work.
15726 * fonts.c: (get_layout_bitmap), (font_draw):
15727 remove debug printfs
15729 2005-03-22 mallum,,, <mallum@openedhand.com>
15731 * cltr.c: (x_event_prepare), (x_event_check), (x_event_dispatch),
15732 (cltr_dispatch_x_event), (cltr_init), (cltr_window_new),
15733 (cltr_photo_grid_append_cell), (cltr_photo_grid_populate),
15734 (cltr_photo_grid_redraw), (cltr_photo_grid_new),
15737 Add glib event loop