1 2008-04-28 Øyvind Kolås <pippin@o-hand.com>
3 * clutter/cogl/cogl.h.in: reindented.
5 2008-04-28 Emmanuele Bassi <ebassi@openedhand.com>
7 * clutter/clutter-actor.c:
8 (parse_rotation_array),
9 (clutter_actor_set_custom_property): Use the internal, unit based
10 rotation setter when parsing the rotation from a ClutterScript
13 (clutter_geometry_copy),
14 (clutter_vertex_copy),
15 (clutter_actor_box_copy): Use the more efficient g_slice_dup().
17 (clutter_actor_get_stage): Add documentation.
19 * clutter/clutter-group.c: Documentation fix.
21 2008-04-28 Øyvind Kolås <pippin@o-hand.com>
23 * clutter/cogl/cogl.h.in: moved the documentation of the cogl
24 primitives to the main public header.
25 * clutter/cogl/gl/cogl-primitives.c: from here ..
26 * clutter/cogl/gles/cogl-primitives.c: .. _and_ here.
28 2008-04-28 Øyvind Kolås <pippin@o-hand.com>
30 * clutter/cogl/cogl.h.in: added documentation.
32 2008-04-28 Emmanuele Bassi <ebassi@openedhand.com>
34 * clutter/clutter-units.c (param_unit_init): Use the right
35 macros to set the default minimum and maximum values.
37 * clutter/clutter-fixed.c (param_fixed_init): Ditto as above.
39 2008-04-28 Matthew Allum <mallum@openedhand.com>
42 Dont display 'make' if configure fails.
44 Add new --with-gles version option for eventual GLES2 support
47 2008-04-28 Neil Roberts <neil@o-hand.com>
49 * tests/test-cogl-tex-polygon.c: Added buttons to toggle whether
50 slicing and linear filtering is enabled. By default slicing is
51 disabled to help test on GL ES.
53 2008-04-28 Neil Roberts <neil@o-hand.com>
55 * tests/Makefile.am (INCLUDES): Added $(top_srcdir)/clutter to the
56 include path. Otherwise the tests will fail to build trying to
57 include "json/json-types.h" when building out-of-tree.
59 2008-04-28 Emmanuele Bassi <ebassi@openedhand.com>
61 * clutter/eglnative/clutter-backend-egl.c:
62 (clutter_backend_egl_redraw): Whitespace fixes.
64 * clutter/eglnative/clutter-stage-egl.c:
65 (clutter_stage_egl_hide): Indentation fixes.
67 (clutter_stage_egl_realize): Use g_critical() to report failure,
68 unset the flags and bail out instead of continuing the realization
71 2008-04-25 Neil Roberts <neil@o-hand.com>
73 Merged in the clutter-ivan branch which contained the new public
76 2008-04-25 Emmanuele Bassi <ebassi@openedhand.com>
78 * clutter/sdl/clutter-stage-sdl.[ch]: Port the SDL stage to
79 the new stage implementation API.
81 * clutter/sdl/clutter-backend-sdl.[ch]: Port the SDL backend
82 to the new backend API.
84 * clutter/sdl/clutter-event-sdl.c:
85 (clutter_event_dispatch): Assign the default stage as the
88 2008-04-24 Emmanuele Bassi <ebassi@openedhand.com>
90 * configure.ac: Add the --with-json configure switch to
91 allow building Clutter with the external dependency on
92 the system JSON-GLib; the default is to use the internal
93 copy unless explicitly asked to check.
95 2008-04-24 Emmanuele Bassi <ebassi@openedhand.com>
97 * Makefile.am: Add HACKING.backends to the EXTRA_DIST.
99 2008-04-24 Emmanuele Bassi <ebassi@openedhand.com>
101 * HACKING.backends: Add documentation on how to write a
104 2008-04-24 Emmanuele Bassi <ebassi@openedhand.com>
106 * clutter/eglnative/clutter-backend-egl.c:
107 (clutter_backend_egl_create_stage): Fix checks using a
108 non assigned member of the ClutterBackendEGL structure.
110 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
112 * clutter/eglnative/clutter-backend-egl.[ch]:
113 * clutter/eglnative/clutter-stage-egl.[ch]:
114 * clutter/eglnative/clutter-event-egl.c: Port to the new stage
115 and backend APIs. *WARNING* untested and not compiled.
117 * clutter/eglx/clutter-backend-egl.c:
118 (clutter_backend_egl_init): Set some defaults.
120 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
122 * tests/test-script.json: Remove the explicit "visible"
123 member to test that the visibility of actors is TRUE
126 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
129 * clutter/Makefile.am: Do not build the internal JSON-GLib
130 copy if there is a system installed one.
132 * clutter/clutter-json.h: Remove.
134 * clutter/clutter-json.h.in: Template for the clutter-json.h
135 header file, used to opaquely include the JSON-GLib types.
137 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
139 * clutter/clutter-actor.c: Document :show-on-set-parent and
140 the fact that calling clutter_actor_show() and hide() on an
141 unparented actor will change that property as well as a side
144 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
146 * clutter/clutter-actor.c (clutter_actor_set_property): Use the
147 internal setter for the rotation center.
149 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
151 * clutter/clutter-actor.[ch]: Add units based variant of the
154 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
156 Bug 892 - Incorrect results using rotation-[center|angle] properties
158 * clutter/clutter-actor.c:
159 (clutter_actor_set_rotation_internal): Inline function for setting
160 the rotation using fixed point for the angle and units for the
163 (clutter_actor_set_property),
164 (clutter_actor_set_rotationx): Use the internal setter to avoid
165 loss of precision and too many conversions to and from units.
167 2008-04-23 Emmanuele Bassi <ebassi@openedhand.com>
169 Bug 891 - assertion failed when test-behave exits
171 * clutter/clutter-behaviour.c:
172 (remove_actor_on_destroy),
173 (clutter_behaviour_apply),
174 (clutter_behaviour_remove): Remove the actor if it gets
175 destroyed before the behaviour.
177 2008-04-18 Emmanuele Bassi <ebassi@openedhand.com>
179 Bug #884 - Add clutter_alpha_set_closure
181 * clutter/clutter-alpha.[ch]: Add clutter_alpha_set_closure(),
182 a GClosure variant of clutter_alpha_set_func(), and reimplement
183 the latter as a special case of the former. (#884, Xan López)
185 2008-04-18 Neil Roberts <neil@o-hand.com>
187 * clutter/clutter-timeline.c (clutter_timeline_get_progressx):
188 Changed to use clutter_qdiv instead of CLUTTER_FIXED_DIV otherwise
189 it can't cope with timelines with more than 255 frames.
191 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
193 * clutter/clutter-frame-source.c: Small coding style fixes.
195 2008-04-17 Neil Roberts <neil@o-hand.com>
197 Applied patch from bug #881
199 * clutter/clutter-frame-source.h:
200 * clutter/clutter-frame-source.c:
201 New files that contain a replacement for g_timeout that try to
202 cope with system delays.
204 * clutter/Makefile.am: Added clutter-frame-source.{c,h}
206 * clutter/clutter-timeline.c (timeout_add): Use a frame source
207 instead of a g_timeout.
209 * clutter/clutter-main.c (clutter_threads_add_frame_source_full)
210 (clutter_threads_add_frame_source): New public functions to wrap a
211 frame source and grab the Clutter mutex.
213 * clutter/clutter-timeout-pool.c: Now calculates the timeout
214 expiration times in the same way as a frame source does so that it
215 counts time in frame intervals instead of setting the next
216 expiration time as an offset from the current time.
218 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
220 * clutter/clutter-fixed.c:
221 (clutter_value_transform_fixed_int),
222 (clutter_value_transform_fixed_double),
223 (clutter_value_transform_fixed_float),
224 (clutter_fixed_get_type): Add GValue transformation functions
225 for ClutterFixed; copying a CLUTTER_TYPE_FIXED GValue into
226 a G_TYPE_FLOAT/G_TYPE_DOUBLE one will automatically transform
227 the fixed point representation into a floating point one. Also
228 add the G_TYPE_INT transformation function to do a plain
231 * clutter/clutter-units.c:
232 (clutter_value_transform_unit_int),
233 (clutter_unit_get_type): Add a unit->int transformation function.
235 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
237 * clutter/clutter-fixed.c (clutter_value_get_fixed): Fix typo
238 in the function name.
240 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
242 * clutter/clutter-units.c (clutter_value_get_unit): Fix typo
243 in the function name.
245 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
247 * HACKING: Amend coding style and tenets, as it is now possible
248 to install and use unit based properties in a safe way.
250 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
252 * clutter/clutter-units.h:
253 * clutter/clutter-fixed.h: Add boundaries for fixed point
256 * doc/reference/clutter-sections.txt: Update the documentation.
258 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
260 * autogen.sh: Try to continue even if we don't have gtk-doc
261 installed; this will obviously won't work if you don't pass
262 --disable-docs --disable-gtk-doc to autogen.sh as well.
264 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
266 * clutter/clutter-fixed.[ch]: Add a ClutterFixed fundamental
267 type, and wrappers for storing it into GValues; also add a
268 GParamSpec subclass for defining parameters holding
269 ClutterFixed values. This allows creating GObject properties
270 using fixed point values.
272 * doc/reference/clutter-sections.txt: Document the newly
275 2008-04-17 Emmanuele Bassi <ebassi@openedhand.com>
277 * clutter/Makefile.am: Add clutter-units.c
279 * clutter/clutter-units.[ch]: Add a ClutterUnit fundamental
280 type, and wrappers for storing it into GValues; also add a
281 GParamSpec subclass for defining parameters holding ClutterUnit
282 values. This allows creating GObject properties using units.
284 * doc/reference/clutter-sections.txt: Document the newly
287 2008-04-15 Matthew Allum <mallum@openedhand.com>
289 Work related to #873;
291 * clutter/glx/clutter-backend-glx.c:
292 * clutter/glx/clutter-backend-glx.h:
293 * clutter/x11/clutter-x11-texture-pixmap.c:
294 * clutter/x11/clutter-x11-texture-pixmap.h:
295 General cleanup of texture pixmap code, adding;
296 - Pixmap dimentions and depth now auto probed, read only props.
297 - More X safety traps
298 - Add support for optionally tracking damage and automatically
301 * clutter/glx/clutter-glx-texture-pixmap.c:
302 * clutter/glx/clutter-glx-texture-pixmap.h:
303 General cleanup and some safety additions. Needs more work so
304 'proper' subclass - dependent on new COGL.
306 * clutter/x11/clutter-backend-x11.c: (clutter_x11_remove_filter):
307 Invert g_return_if check.
310 Pull in XComposite and XDamage (at least for now)
313 * tests/test-pixmap.c:
314 Add a modified test from Johan for above.
316 2008-04-15 Neil Roberts <neil@o-hand.com>
318 Added support for foreign windows to the Win32 backend.
320 * clutter/win32/clutter-stage-win32.c
321 (clutter_stage_win32_request_coords): Don't resize foreign
323 (clutter_stage_win32_unrealize): Don't destroy foreign windows.
324 (clutter_stage_win32_init): Added initialiser for is_foreign_win.
325 (clutter_win32_get_stage_from_window): Resort to looking in the
326 stage list if the window isn't the right window class so that it
327 can still find stages with foreign windows.
328 (clutter_win32_set_stage_foreign): New public function to set a
329 foreign window for a stage.
331 * clutter/win32/clutter-event-win32.c
332 (clutter_win32_disable_event_retrieval): New public function to
333 disable event retrieval.
334 (message_translate): Don't handle WM_SIZE or WM_MOVE for foreign
337 * clutter/win32/clutter-backend-win32.h (struct
338 _ClutterBackendWin32): Added a flag to disable event retrieval
340 * clutter/win32/clutter-backend-win32.c
341 (clutter_backend_win32_ensure_context): Update debug note to
342 include whether the stage is foreign or not.
344 2008-04-15 Øyvind Kolås <pippin@o-hand.com>
346 * clutter/clutter-actor.c: (clutter_actor_set_shader_param): queue a
347 redraw when a shader_param is set. Normalized some gtk-doc syntax in
348 some of the api documentation.
350 2008-04-15 Øyvind Kolås <pippin@o-hand.com>
352 * clutter/clutter-group.c: fixed typo in docs.
354 2008-04-14 Matthew Allum <mallum@openedhand.com>
356 * clutter/eglx/clutter-stage-egl.c:
357 Actually set wm protocols on eglx stage windows. Fixes issues with
358 cloising stages and cleanup.
360 2008-04-14 Matthew Allum <mallum@openedhand.com>
362 * clutter/cogl/gles/cogl.c: (cogl_color):
363 Disable use of color4ub, issues with latest MBX SDL (#857)
365 * clutter/eglx/clutter-backend-egl.c:
366 * clutter/eglx/clutter-stage-egl.c:
368 Fixup for the eglx backend to work with new backend/multistage code.
369 Some issues remain in destroying stages.
371 2008-04-14 Neil Roberts <neil@o-hand.com>
375 * clutter/clutter-timeline.c (clutter_timeline_get_progressx): Fix
376 arithmetic for calculating the reverse progress when the timeline
377 is backward. (Should subtract from one instead of taking the
380 2008-04-13 Neil Roberts <neil@o-hand.com>
382 Upgraded the Win32 backend to work with the multi-stage
385 * clutter/win32/clutter-stage-win32.h:
386 * clutter/win32/clutter-stage-win32.c: Now inherits from
387 ClutterGroup and implements ClutterStageWindow instead of
388 inheriting directly from ClutterStage.
390 * clutter/win32/clutter-event-win32.c (message_translate): Now
391 takes an extra parameter to return whether DefWindowProc should be
392 called. This is needed to prevent the default WM_CLOSE handler
393 from destroying the window.
395 * clutter/win32/clutter-backend-win32.c
396 (clutter_backend_win32_dispose): Destroy all of the stages using
397 g_slist_foreach as per bug #871. Now also destroys the GL context.
398 (clutter_backend_win32_get_features): Added assertions to ensure
399 there is a valid GL context.
400 (clutter_backend_win32_ensure_context): Accepts NULL stage. Gets
401 implementation pointer from the stage.
403 2008-04-11 Emmanuele Bassi <ebassi@openedhand.com>
405 * clutter/clutter-container.c:
406 (clutter_container_get_type): Relax the precondition on the
407 implementations of ClutterContainer from ClutterActor to
410 2008-04-11 Emmanuele Bassi <ebassi@openedhand.com>
412 * README: Add a note about the Shader API changes.
414 * clutter/clutter-deprecated.h: Add deprecation symbols.
416 * clutter/clutter-shader.[ch]: Rename the :bound read-only
417 property to :compiled. Also rename clutter_shader_bind()
418 and clutter_shader_is_bound() to clutter_shader_compil() and
419 clutter_shader_is_compiled(), respectively.
421 * clutter/glx/clutter-stage-glx.c:
422 (clutter_stage_glx_unrealize): Update after
423 clutter_shader_release_all() rename.
425 * tests/test-shader.c (button_release_cb), (main): Update.
427 2008-04-10 Emmanuele Bassi <ebassi@openedhand.com>
429 * clutter/eglx/clutter-backend-egl.c:
430 (clutter_backend_egl_ensure_context): Sync up with the GLX
433 (clutter_backend_egl_create_stage): Dumb compilation fix.
435 * clutter/glx/clutter-backend-glx.c:
436 (clutter_backend_glx_create_stage): Unref the stage if we are
439 2008-04-10 Emmanuele Bassi <ebassi@openedhand.com>
441 * clutter/eglx/clutter-stage-egl.c:
442 (clutter_stage_egl_realize): Sync up with the GLX backend.
444 2008-04-09 Emmanuele Bassi <ebassi@openedhand.com>
446 * clutter/Makefile.am: Update the regular expression to match
447 all the namespaces we actually use. Thanks to Neil Roberts for
448 spotting this. A make distclean is needed.
450 * clutter/cogl/gl/Makefile.am:
451 * clutter/cogl/gles/Makefile.am:
452 * clutter/json/Makefile.am:
453 * clutter/pango/Makefile.am: Revert previous commit.
455 2008-04-09 Emmanuele Bassi <ebassi@openedhand.com>
457 * clutter/cogl/Makefile.am:
458 * clutter/cogl/gl/Makefile.am:
459 * clutter/cogl/gles/Makefile.am:
460 * clutter/json/Makefile.am:
461 * clutter/pango/Makefile.am: Fix the visibility of all the
462 symbols, for the main library and the statically linked ones.
464 2008-04-09 Emmanuele Bassi <ebassi@openedhand.com>
466 * autogen.sh: Clean up a bit
468 * clutter/clutter-fixed.[ch]:
469 (clutter_double_to_fixed),
470 (clutter_double_to_int),
471 (clutter_double_to_uint): Make these functions public, as they
472 are expanded by their respective macros. This fixes the errors
473 from the linker trying to resolve their name.
475 2008-04-09 Neil Roberts <neil@o-hand.com>
477 Applied patch from bug #871
479 * clutter/x11/clutter-backend-x11.c (clutter_backend_x11_dispose):
480 Call g_slist_foreach instead of iterating over the stage_manager
481 list manually when deleting stages. Otherwise the 'next' pointer
482 of the list node can get corrupted when the actor removes itself
485 * clutter/clutter-stage.c (clutter_stage_dispose): Call
486 clutter_actor_unrealize in the dispose handler. This fixes
487 problems where the dispose handler for the ClutterStageWrapper
488 can't deselect the GL context until the stage is unrealized.
490 2008-04-04 Emmanuele Bassi <ebassi@openedhand.com>
492 * clutter/clutter-backend.c: Add more debug messages
494 * clutter/clutter-stage.h:
495 * clutter/clutter-stage.c:
496 (clutter_stage_is_default): Add a function to check if the
497 stage is the default one.
499 * clutter/glx/clutter-backend-glx.c:
500 * clutter/glx/clutter-stage-glx.c:
501 * clutter/x11/clutter-stage-x11.c: Keep the stage wrapper
502 and implementation flags in sync, to ensure that the GL
503 context is always set.
505 2008-04-04 Neil Roberts <neil@o-hand.com>
509 2008-04-04 Matthew Allum <mallum@openedhand.com>
512 Add a note on new show-on-set-parent prop and stage subclassing.
514 2008-04-04 Emmanuele Bassi <ebassi@openedhand.com>
516 Bug #864 - Allow instantiating and subclassing of ClutterStage
518 * clutter/Makefile.am: Add clutter-stage-window.[ch]
520 * clutter/clutter-stage-manager.c:
521 (_clutter_stage_manager_remove_stage): Do not warn if removing
522 a stage we don't manage, as we might be invoked multiple times
523 during a ClutterState dispose sequence.
525 * clutter/clutter-actor.c:
526 * clutter/clutter-backend.[ch]:
527 * clutter/clutter-main.c:
528 * clutter/clutter-private.h:
529 * clutter/clutter-stage.[ch]: Make ClutterStage a proxy actor,
530 with a private actor implementing the ClutterStageWindow
531 interface for handling the per-backend realization, painting
532 and unrealization, plus all the windowing system abstraction.
534 * clutter/x11/clutter-event-x11.c:
535 * clutter/x11/clutter-stage-x11.[ch]: Port the X11 backend
536 to the new backend and stage API and semantics.
538 * clutter/glx/clutter-backend-glx.c:
539 * clutter/glx/clutter-stage-glx.c: Port the GLX backend to
540 the new backend and stage API and semantics.
542 * clutter/eglx/clutter-backend-egl.[ch]:
543 * clutter/eglx/clutter-stage-egl.[ch]: Port the EGLX backend
544 to the new backend and stage API and semantics (untested).
546 * tests/test-multistage.c (on_button_press): Rename
547 clutter_stage_create_new() to clutter_stage_new().
549 2008-04-04 Neil Roberts <neil@o-hand.com>
551 Applied patch from bug #810.
553 * clutter/x11/clutter-event-x11.c (event_translate): Set a flag
554 when resizing the stage from a ConfigureNotify event.
556 * clutter/x11/clutter-stage-x11.c
557 (clutter_stage_x11_request_coords): Don't try to resize the window
558 again if the flag is set.
559 (clutter_stage_x11_init): Added initialiser for the flag.
561 * clutter/x11/clutter-stage-x11.h (struct _ClutterStageX11): Added
564 2008-04-04 Matthew Allum <mallum@openedhand.com>
566 * clutter/clutter-actor.c:
567 Remove uneeded stage private member.
568 Add show-on-set-parent prop and make so by default Actors are
569 now automatically shown when reparented (#791)
571 * clutter/eglx/clutter-backend-egl.c:
572 * clutter/cogl/gles/cogl.c:
573 A couple of minor comments.
575 * clutter/eglnative/Makefile.am:
576 Add missing clutter-egl.h header (back port from trunk)
578 * tests/test-actors.c:
579 Modify to take advantage of new show-on-set-parent functionality.
581 2008-04-03 Emmanuele Bassi <ebassi@openedhand.com>
583 * clutter/Makefile.am: Only export symbols matching "^clutter.*",
584 to avoid exposing the library-private symbols starting with
587 2008-04-03 Emmanuele Bassi <ebassi@openedhand.com>
589 * clutter/clutter-alpha.c: ClutterAlpha is an InitiallyUnowned
590 subclass. This should fix a lot of leakage. (#860, Neil Roberts)
592 2008-04-03 Emmanuele Bassi <ebassi@openedhand.com>
594 * clutter/glx/clutter-backend-glx.c:
595 (clutter_backend_glx_get_features): Assert if we don't have a
596 GL context here or if it's not matched to a drawable. Asserting
597 might seem too drastic, but if we don't have a valid GL context
598 here then Clutter will segfault anyway, and I'll take an assert()
599 over a hard to read, deep in GLX guts backtrace any day (and
602 * clutter/x11/clutter-backend-x11.c:
603 (clutter_backend_x11_get_features): No need for a variable here.
605 2008-04-01 Matthew Allum <mallum@openedhand.com>
607 * clutter/clutter-backend.c:
608 * clutter/glx/clutter-backend-glx.c:
609 * clutter/glx/clutter-stage-glx.c:
610 Allow NULL to be passed to _clutter_backend_ensure_context
611 which essentially clears GL context. This is hooked into stage
612 unrealisation. Isn't yet quite bulletproof.
613 Fixes issues with gtk-embed crasher (thanks to Neil).
615 2008-04-1 Robert Bragg <bob@o-hand.com>
617 * clutter/glx/clutter-glx-texture-pixmap.c:
618 In clutter_glx_texture_pixmap_dispose; trap X errors around
619 glXDestroyGLXPixmap so we can't die due to BadDrawable errors.
621 2008-03-31 Matthew Allum <mallum@openedhand.com>
624 Add notes on new multistage feature.
626 * clutter/clutter-stage-manager.c:
627 Dont ref contained stages.
629 * clutter/clutter-stage.c:
630 Automatically remove stage from stage manager on finalisation.
631 Cleans up warnings when a stage is destroyed.
633 * clutter/clutter-backend.h:
634 * clutter/glx/clutter-backend-glx.c:
635 Minor formatting cleanups.
637 * clutter/glx/clutter-stage-glx.c:
639 * clutter/clutter-version.h.in:
640 Add a general CLUTTER_STAGE_TYPE define, should be useful for
641 evntual stage subclassing and creating with g_object_new()
643 2008-03-30 Neil Roberts <neil@o-hand.com>
645 * clutter/win32/clutter-backend-win32.c
646 (clutter_backend_win32_init): Added a call to
647 timeBeginPeriod. Without this the frame rates are terrible because
648 the glib timeouts are not accurate enough. However this requires
649 Glib >= 2.16.0 to take any effect because of a change in the way
650 g_poll is implemented. See revision 6597 of glib.
651 (clutter_backend_win32_finalize): Added a call to timeEndPeriod.
653 * configure.ac: Added -lwinmm to the library dependencies for the
656 2008-03-30 Neil Roberts <neil@o-hand.com>
658 * clutter/win32/clutter-win32.h:
659 * clutter/win32/clutter-stage-win32.h:
660 * clutter/win32/clutter-stage-win32.c:
661 * clutter/win32/clutter-event-win32.c:
662 * clutter/win32/clutter-backend-win32.h:
663 * clutter/win32/clutter-backend-win32.c:
664 Upgraded for multi-stage support.
666 * clutter/win32/clutter-stage-win32.c
667 (clutter_stage_win32_request_coords): Fixed so that it doesn't set
668 the position or size if it hasn't changed. This was causing
669 problems when the window was resized using the top left corner. In
670 that case the window receives resize and move messages separately
671 which caused the window to flash at a different size or position
672 while one message was handled before the other.
673 (clutter_stage_win32_realize): Added PFD_GENERIC_ACCELERATED to
674 the list of pixel format flags to force it to use hardware
677 2008-03-28 Matthew Allum <mallum@openedhand.com>
679 * clutter/Makefile.am:
680 * clutter/clutter-actor.c:
681 * clutter/clutter-actor.h:
682 * clutter/clutter-backend.c:
683 * clutter/clutter-backend.h:
684 * clutter/clutter-debug.h:
685 * clutter/clutter-event.c:
686 * clutter/clutter-event.h:
687 * clutter/clutter-feature.h:
688 * clutter/clutter-group.h:
689 * clutter/clutter-main.c:
690 * clutter/clutter-main.h:
691 * clutter/clutter-private.h:
692 * clutter/clutter-stage.c:
693 * clutter/clutter-stage.h:
694 * clutter/clutter-stage-manager.c
695 * clutter/clutter-stage-manager.h
696 * clutter/clutter-types.h:
697 * clutter/glx/clutter-backend-glx.c:
698 * clutter/glx/clutter-backend-glx.h:
699 * clutter/glx/clutter-stage-glx.c:
700 * clutter/glx/clutter-stage-glx.h:
701 * clutter/x11/clutter-backend-x11.c:
702 * clutter/x11/clutter-backend-x11.h:
703 * clutter/x11/clutter-event-x11.c:
704 * clutter/x11/clutter-stage-x11.c:
705 * clutter/x11/clutter-x11.h:
707 * tests/test-multistage.c:
708 Initial commit of multi stage support (mostly a merge from the
709 clutter-multistage branch).
710 Note, this commit will break all backends except glx.
712 2008-03-26 Neil Roberts <neil@o-hand.com>
714 * clutter/win32/clutter-win32.h: Added gtk-doc documentation for
715 the Win32 backend section.
717 * clutter/win32/clutter-stage-win32.c
718 (clutter_win32_get_stage_window): Fixed punctuation in the
721 * README: Added notes about the Win32 backend.
723 2008-03-26 Neil Roberts <neil@o-hand.com>
725 * clutter/win32/clutter-event-win32.c (clutter_event_check):
726 Removed the pointless parameter in the call to check_msg_pending.
727 (check_msg_pending): Fixed to use PeekMessageW instead of
730 2008-03-25 Neil Roberts <neil@o-hand.com>
732 Added a native Win32 WGL backend.
734 * configure.ac: Added the 'win32' flavour.
736 * clutter/cogl/gl/cogl.c (cogl_get_proc_address): Added an ifdef
737 to use wglGetProcAddress with the Win32 backend.
739 * clutter/Makefile.am (DIST_SUBDIRS): Added the win32 directory.
741 * clutter/win32/clutter-win32.pc.in:
742 * clutter/win32/clutter-win32.h:
743 * clutter/win32/clutter-stage-win32.h:
744 * clutter/win32/clutter-stage-win32.c:
745 * clutter/win32/clutter-event-win32.c:
746 * clutter/win32/clutter-backend-win32.h:
747 * clutter/win32/Makefile.am:
748 * clutter/win32/clutter-backend-win32.c: New files.
750 2008-03-19 Emmanuele Bassi <ebassi@openedhand.com>
752 * clutter/clutter-model.[ch]: Add a ::copy() virtual function
753 for copying iterators.
755 * clutter/clutter-list-model.c:
756 (clutter_list_model_iter_copy),
757 (clutter_list_model_iter_class_init): Implement the ::copy()
758 function inside the ListModel iterator subclass.
760 2008-03-19 Emmanuele Bassi <ebassi@openedhand.com>
762 * clutter/clutter-group.c:
763 * clutter/clutter-texture.c: Use CLUTTER_ACTOR_IS_VISIBLE()
764 and not CLUTTER_ACTOR_IS_MAPPED().
766 2008-03-19 Emmanuele Bassi <ebassi@openedhand.com>
768 * clutter/clutter-score.[ch]: Small clean ups and refactoring.
769 Use gulong instead of guint, so we have a bigger id space for
770 the timelines inside a Score.
772 2008-03-19 Chris Lord <chris@openedhand.com>
774 * clutter/clutter-actor.c:
775 (_clutter_actor_apply_modelview_transform), (clutter_actor_paint):
776 Apply clip inside paint function instead of transform function
778 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
780 * clutter/clutter-score.c: Update documentation.
782 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
784 * clutter/clutter-score.[ch]: Remove all the API changes, and
785 just add a clutter_score_append_at_marker(); the implementation
786 remains the same, but the marker must be explicitly created by
787 the developer. The ids are no longer used to create implicit
788 markers, so they can return to be unsigned integers. (#450)
790 * clutter/clutter-timeline.[ch]:
791 (clutter_timeline_has_marker): Add a function to query a timeline
792 for a marker being set.
794 * tests/test-score.c (main): Update with the API changes.
796 * clutter.symbols: Update exported symbols.
798 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
800 * clutter/clutter-texture.c: Small clean ups in the coding style.
802 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
804 * clutter.symbols: Add new symbols
806 * clutter/clutter-score.[ch]: Use the newly added marker API
807 on the timelines to implement attaching timelines at specific
808 points, using either milliseconds or frames.
810 * tests/test-score.c (main): Test the new API.
812 2008-03-18 Emmanuele Bassi <ebassi@openedhand.com>
814 * clutter/clutter-marshal.list: Add signature for the
815 ::marker-reached signal marshaller.
817 * clutter/clutter-timeline.[ch]: Add timeline marker API;
818 using markers it is possible to add a unique identifier to
819 a particular frame of the timeline, and receive a signal
820 notification when reaching that particular marker while
821 playing the timeline. (#641)
823 * tests/test-timeline.c: Update the test case to check for
824 the marker-reached signal emission.
826 * clutter.symbols: Add new symbols.
828 2008-03-10 Øyvind Kolås <pippin@o-hand.com>
830 * tests/test-shader.c: improved readability of fragment shader
831 examples by factoring out common bits into FRAGMENT_SHADER_BEGIN and
832 FRAGMENT_SHADER_END macros.
834 2008-03-09 Matthew Allum <mallum@openedhand.com>
836 * clutter/clutter-id-pool.c: (clutter_id_pool_free):
837 Use g_slice_free not g_free.
838 * clutter/clutter-main.c: (_clutter_do_pick):
839 Dont 'over read' the framebuffer when picking (#839, Neil Roberts)
841 2008-03-07 Øyvind Kolås <pippin@o-hand.com>
843 Refactored the integer id->ClutterActor mapping code to be a self
844 contained data structure.
846 * clutter/clutter-id-pool.[ch]: new files.
847 * clutter/Makefile.am: added clutter-id-pool.[ch]
848 * clutter/clutter-private.h: use a ClutterIDPool instead of GArray and
849 GSList to keep track of the reusable ids.
850 * clutter/clutter-actor.c: moved id pool logic away.
851 * clutter/clutter-main.c: simplified id pool creation/finalization.
853 2008-03-07 Robert Bragg <bob@o-hand.com>
855 * clutter/clutter-timeline.c:
856 Timeline changes to fix the issues identified in bugzilla #439
858 Notably, this includes some tweaks to timeline semantics.
861 10 frame timeline here are some points about the new timeline code:
863 - When you create a timeline it starts with current_frame_num == 0
865 - After starting a timeline, the first timeout is for
866 current_frame_num == 1 (Notably it isn't 0 since there is a delay
867 before the first timeout signals so re-asserting the starting point
868 would give a longer than average first frame.)
870 - For a non looping timeline the last timeout would be for
871 current_frame_num == 10
873 - For a looping timeline the timeout for current_frame_num ==
874 10 would be followed by a timeout for current_frame_num == 1
875 and frame 0 is considered == frame 10.
877 - Asking for a timeline of N frames might better be described
878 as asking for a timeline of _length_ N.
880 Warning: Although I tried to test things, I guess it's quite
881 likely that this breaks somthing depending on a specific quirk
882 of the previous timeline code.
884 2008-03-06 Emmanuele Bassi <ebassi@openedhand.com>
886 * clutter/clutter-actor.c:
887 (clutter_actor_set_anchor_point_from_gravity): Fix a stupid
888 conversion from pixels to units that should I not have made.
890 2008-03-06 Emmanuele Bassi <ebassi@openedhand.com>
892 * README: Update the release notes.
894 2008-03-06 Gwenole Beauchesne <gbeauchesne@splitted-desktop.org>
896 Signed off by: Emmanuele Bassi <ebassi@openedhand.com>
898 * clutter/clutter-group.c (clutter_group_real_lower): Fix to
899 actually lower the actor under the 'above' actor. (#822)
901 2008-03-06 Emmanuele Bassi <ebassi@openedhand.com>
903 * clutter/clutter-entry.h:
904 * clutter/clutter-entry.c:
905 (clutter_entry_handle_key_event_internal),
906 (clutter_entry_key_press), (clutter_entry_class_init),
907 (clutter_entry_handle_key_event): Provide a default class handler
908 for the key-press-event, so that giving key focus to an entry will
909 automatically make it work. This deprecates the
910 clutter_entry_handle_key_event() function. (#824)
912 * tests/test-entry.c (main): Remove the handle_key_event()
913 machinery, and just give focus to the entry.
915 2008-03-06 Chris Lord <chris@openedhand.com>
917 * clutter/clutter-model.c: (clutter_model_set_sorting_column):
918 Don't disable sorting on column 0
920 2008-03-06 Emmanuele Bassi <ebassi@openedhand.com>
922 Add support for the anchor point inside ClutterScript (#834,
925 * clutter/clutter-actor.c:
926 (clutter_actor_set_property),
927 (clutter_actor_get_property),
928 (clutter_actor_class_init): Add the :anchor-x and :anchor-y
929 properties to the ClutterActor class.
931 (clutter_actor_set_anchor_point),
932 (clutter_actor_set_anchor_pointu),
933 (clutter_actor_set_anchor_point_from_gravity): Reimplement
934 the pixel based and gravity based API using the units based
935 one. Emit the ::notify signal for the :anchor-x and :anchor-y
939 (clutter_actor_parse_custom_node): Parse the :anchor-x and
940 :anchor-y properties using the custom units format (mm, px,
943 * tests/test-script.json: Test the newly added properties.
945 2008-03-05 Emmanuele Bassi <ebassi@openedhand.com>
947 * configure.ac: Add "osx" the the AC_HELP_STRING of the flavour
948 selection. (#831, Peter Enzerink)
950 2008-03-04 Emmanuele Bassi <ebassi@openedhand.com>
952 * clutter/clutter-main.c (clutter_do_event): Do not throttle the
953 motion events if the per-actor delivery has been disabled.
955 2008-03-04 Øyvind Kolås <pippin@o-hand.com>
957 * clutter/pango/pangoclutter-render.c: (draw_glyph): use g_slice_new0
958 instead of g_slice_new when allocating the glyph_info, avoiding a
959 branch based on uninitialized memory.
961 2008-03-03 Emmanuele Bassi <ebassi@openedhand.com>
963 * Makefile.am: Do not recurse into doc if we did not explicitly
964 enabled the documentation build; we just recurse into doc if we
965 are doing a dist or a distcheck.
967 2008-02-29 Øyvind Kolås <pippin@o-hand.com>
969 Reuse the numeric id's used for picking actors to avoid the potential
970 of overflowing the id numbers when continusly creating and destroying
971 actors on long running applications for 16bpp.
973 * clutter/clutter-private.h: replaced hashtable with GArray and a
974 GSList for available slots in the array.
975 * clutter/clutter-actor.c: (create_actor_id): function to create an
976 actor->id mapping, (release_actor_id): function to mark an existing id
977 as available for reuse.
978 * clutter/clutter-main.c: (clutter_context_free): added utility
979 function for cleaning up the context,
980 (clutter_get_actor_by_gid): use the GArray for looking up actors.
982 2008-02-26 Emmanuele Bassi <ebassi@openedhand.com>
984 * clutter/clutter-alpha.c:
985 (clutter_exp_inc_func), (clutter_exp_dec_func): Clamp the value
986 of the alpha function between [0, MAX_ALPHA]. (#800)
988 2008-02-25 Emmanuele Bassi <ebassi@openedhand.com>
990 * clutter/clutter-main.c (emit_event): Fix the last commit
991 which inverted a condition.
993 2008-02-25 Emmanuele Bassi <ebassi@openedhand.com>
995 * clutter/clutter-actor.c: Remove the usage of g_return_if_fail()
996 from static functions: either assert or use g_warning() to check
997 internal state, as g_return_if_fail() can be compiled out.
999 * clutter/clutter-main.c: Ditto as above.
1001 2008-02-25 Tomas Frydrych <tf@openedhand.com>
1003 * clutter/clutter-texture.c:
1004 (texture_update_data):
1005 Set alignment based on actual data rowstride, not the texture
1008 2008-02-21 Tomas Frydrych <tf@openedhand.com>
1010 * clutter/x11/clutter-backend-x11.h:
1011 * clutter/x11/clutter-event-x11.c:
1012 * clutter/x11/clutter-x11.h:
1013 (clutter_x11_handle_event):
1014 (clutter_x11_disable_event_retrieval):
1015 Functions to allow to hook into external XEvent retrieval (for
1016 example when using clutter with gtk); NB: this API is tentative.
1018 2008-02-21 Emmanuele Bassi <ebassi@openedhand.com>
1020 * clutter/x11/clutter-event-x11.c (event_translate): Ignore
1021 PropertyNotify events if they don't match our window.
1023 * clutter/x11/clutter-stage-x11.c:
1024 (clutter_stage_x11_request_coords): Chain up to the parent's
1027 2008-02-21 Emmanuele Bassi <ebassi@openedhand.com>
1029 * clutter/x11/clutter-event-x11.c (event_translate): Ignore
1030 ConfigureNotify events if we are painting on a foreign window.
1032 * clutter/x11/clutter-stage-x11.c:
1033 (clutter_stage_x11_request_coords): Reliquish control of the
1034 window size, if we are painting on a foreign window. This fixes
1035 the GtkClutterEmbed widget.
1037 2008-02-20 Emmanuele Bassi <ebassi@openedhand.com>
1039 * clutter/clutter-timeline.c (clutter_timeline_set_delay): Relax
1040 the condition to allow 0 msecs of delay (meaning: no delay).
1042 2008-02-20 Tomas Frydrych <tf@openedhand.com>
1044 * clutter/Makefile.am:
1045 Added libclutter_ ... _la_DEPENDENCIES to fix dependency tracking.
1047 2008-02-20 Tomas Frydrych <tf@openedhand.com>
1049 * clutter/x11/clutter-x11.h:
1050 * clutter/x11/clutter-backend-x11.c:
1051 (clutter_x11_set_display):
1052 Function to set X display connection prior to calling
1053 clutter_init(); stripped loads of trailing space.
1055 2008-02-20 Tomas Frydrych <tf@openedhand.com>
1057 * clutter/clutter-marshal.list:
1058 * clutter/glx/Makefile.am:
1059 * clutter/glx/clutter-backend-glx.c:
1060 * clutter/glx/clutter-backend-glx.h:
1061 * clutter/glx/clutter-glx.h:
1062 * clutter/x11/Makefile.am:
1063 ClutterX11TexturePixmap and ClutterGLXTexturePixmap actors (#713;
1064 patch by Johan Bilien).
1066 2008-02-20 Emmanuele Bassi <ebassi@openedhand.com>
1068 * clutter/clutter-actor.h:
1069 * clutter/clutter-actor.c:
1070 (clutter_actor_get_abs_opacity): Add function that does what
1071 get_opacity() does now...
1073 (clutter_actor_get_opacity): ... and make get_opacity() do what
1074 it's supposed to be doing. The original get_opacity() returned
1075 a composited value, and there's no way to actually extract the
1076 real opacity value set with set_opacity().
1078 * clutter/clutter-clone-texture.c:
1079 * clutter/clutter-rectangle.c:
1080 * clutter/clutter-texture.c: Update to use get_abs_opacity().
1082 * clutter/clutter-entry.c:
1083 * clutter/clutter-label.c: Ditto. Also, never change the stored
1086 * tests/Makefile.am:
1087 * tests/test-opacity.c: Test suite for the get_opacity() and
1088 get_abs_opacity() API, and correct opacity handling.
1090 * README: Add note about the change in get_opacity().
1092 2008-02-19 Chris Lord <chris@openedhand.com>
1094 * clutter/clutter-model.c: (clutter_model_resort):
1095 Don't return when there's no sort function set, leave that to the
1098 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
1101 * README: Post stable release bump to 0.7.1
1103 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
1106 * NEWS: Release 0.6.0
1108 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
1110 * clutter/clutter-list-model.c:
1111 (clutter_list_model_iter_set_value): Fix a typo in the conversion
1114 2008-02-18 Chris Lord <chris@openedhand.com>
1117 Fix spelling mistake and a typo
1119 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
1121 * clutter/clutter-actor.c:
1122 (clutter_actor_get_box_from_vertices): Avoid a masking warning
1123 caused by math.h utter braindamage.
1125 2008-02-18 Emmanuele Bassi <ebassi@openedhand.com>
1127 * clutter/clutter-actor.c: Document the fact that ancestor can
1128 be NULL in the relative transformation API, and what are the
1131 2008-02-15 Matthew Allum <mallum@openedhand.com>
1133 * clutter/pango/pangoclutter-render.c: (draw_glyph):
1134 More safety checks (#796, Tero Saarni)
1136 2008-02-15 Chris Lord <chris@openedhand.com>
1138 * clutter/clutter-entry.c:
1139 * clutter/clutter-group.c:
1140 * clutter/clutter-label.c:
1141 * clutter/clutter-rectangle.c:
1142 * clutter/clutter-texture.c:
1143 More documentation fixes
1145 2008-02-15 Chris Lord <chris@openedhand.com>
1147 * clutter/clutter-entry.c: (clutter_entry_class_init):
1148 More documentation fixes
1150 2008-02-15 Chris Lord <chris@openedhand.com>
1152 * clutter/clutter-label.c: (clutter_label_class_init):
1153 More documentation fixes
1155 2008-02-15 Chris Lord <chris@openedhand.com>
1157 * clutter/clutter-clone-texture.c:
1158 * clutter/clutter-texture.c: (clutter_texture_class_init):
1159 More documentation fixes
1161 2008-02-15 Chris Lord <chris@openedhand.com>
1163 * clutter/clutter-actor.c:
1164 * clutter/clutter-container.c:
1165 * clutter/clutter-media.c:
1166 * clutter/clutter-rectangle.c:
1167 * clutter/clutter-stage.c: (clutter_stage_class_init):
1168 * clutter/clutter-stage.h:
1169 * clutter/clutter-texture.c:
1170 * doc/reference/clutter-docs.sgml:
1171 Fix more documentation
1173 2008-02-15 Emmanuele Bassi <ebassi@openedhand.com>
1175 * clutter/clutter-actor.[ch]:
1176 * clutter/clutter-types.h:
1177 * doc/reference/clutter-docs.sgml: Fix a lot of documentation.
1179 2008-02-15 Matthew Allum <mallum@openedhand.com>
1181 * clutter/cogl/gles/cogl.c: (cogl_paint_init):
1182 Remove depth test getting turned on by default (unlike GL backend)
1184 2008-02-15 Tomas Frydrych <tf@openedhand.com>
1187 * clutter/clutter-version.h.in:
1188 * build/msvc_2k5/clutter-version.h:
1189 Removed unused --without-fpu configure option and CLUTTER_NO_FPU
1192 2008-02-15 Tomas Frydrych <tf@openedhand.com>
1194 * build/mingw/README:
1195 * build/mingw/mingw-cross-compile.sh:
1196 Script that automates cross compilation with mingw by Neil Roberts
1197 <bpeeluk@yahoo.co.uk>
1199 2008-02-15 Emmanuele Bassi <ebassi@openedhand.com>
1201 * clutter/clutter-actor.[ch]: Rename
1202 clutter_actor_get_box_from_vertices() to
1203 clutter_actor_box_get_from_vertices().
1205 * clutter/clutter-group.c (clutter_group_query_coords): Fix the
1206 query_coords() implementation.
1208 2008-02-15 Tomas Frydrych <tf@openedhand.com>
1210 * clutter/clutter-actor.c:
1211 * clutter/clutter-actor.h:
1212 (clutter_group_query_coords):
1213 Added function to translate vertex array to a bounding box.
1215 (clutter_actor_is_scaled):
1216 (clutter_actor_is_rotated):
1217 Fixed documentation.
1219 2008-02-15 Tomas Frydrych <tf@openedhand.com>
1221 * clutter/clutter-group.c: (clutter_group_query_coords):
1222 Disabled new code taking into account actor scale and rotation.
1224 2008-02-14 Tomas Frydrych <tf@openedhand.com>
1226 * clutter/clutter-actor.c:
1227 * clutter/clutter-actor.h:
1228 (clutter_actor_is_scaled):
1229 (clutter_actor_is_rotated):
1230 Convenience functions to test whether actor is scaled or rotated.
1232 (clutter_actor_apply_relative_transform_to_point):
1233 Removed unused variable.
1235 * clutter/clutter-group.c:
1236 (clutter_group_query_coords):
1237 Use clutter_actor_get_relative_vertices() to calculate bounding
1238 boxes of children that are scaled or rotated.
1240 2008-02-14 Tomas Frydrych <tf@openedhand.com>
1242 * clutter/clutter-actor.c:
1243 * clutter/clutter-actor.h:
1244 (clutter_actor_get_relative_vertices):
1245 (clutter_actor_apply_relative_transform_to_point):
1246 Functions to calculate actor vertices in the plane of a given
1249 2008-02-12 Chris Lord <chris@openedhand.com>
1251 * clutter/clutter-texture.c: (texture_get_tile_pixbuf),
1252 (clutter_texture_get_pixbuf):
1253 Fix copying textures to pixbufs for tiled textures and correct #ifndef
1256 * clutter/clutter-util.c:
1259 2008-02-12 Matthew Allum <mallum@openedhand.com>
1261 * clutter/clutter-texture.c: (texture_get_tile_pixbuf):
1262 ifdef out 'leaked' GL only API call.
1264 2008-02-12 Tomas Frydrych <tf@openedhand.com>
1266 * clutter/clutter-texture.c (texture_update_data):
1267 Fixed incorrect calculation of offset into texture data (needs to
1268 use width of the texture, not of the updated area).
1270 2008-02-12 Tomas Frydrych <tf@openedhand.com>
1272 * clutter/clutter-texture.c (texture_update_data):
1273 Fixed incorrect aligment of texture data.
1275 2008-02-12 Tomas Frydrych <tf@openedhand.com>
1277 * clutter/x11/clutter-event-x11.c (event_translate):
1278 Ignore events not directed at the stage window once they have been
1279 passed to the filter functions.
1281 2008-02-11 Matthew Allum <mallum@openedhand.com>
1283 * clutter/clutter-actor.c:
1284 Minor documentation tweak to class description.
1286 * clutter/clutter-behaviour-scale.c:
1287 'Force' start + end vals of scale behaviour
1288 (#779, Havoc Pennington)
1290 2008-02-11 Emmanuele Bassi <ebassi@openedhand.com>
1293 * NEWS: Release 0.5.6
1295 * configure.ac: Post release bump to 0.5.7.
1297 * clutter/clutter-behaviour-scale.c:
1298 * tests/test-fbo.c: Fix compilation warnings.
1300 2008-02-11 Tomas Frydrych <tf@openedhand.com>
1302 * clutter/clutter-actor.c (clutter_actor_transform_stage_point):
1303 Moved part of the calculation to floating point to avoid overflow
1304 of ClutterFixed range for large actors (bug 613).
1306 2008-02-10 Matthew Allum <mallum@o-hand.com>
1308 * clutter/osx/clutter-stage-osx.c
1309 Fix up a couple of typos breaking build.
1311 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
1313 * clutter/clutter-actor.c: Add actor box diagram and notes.
1315 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
1317 * clutter/clutter-behaviour-path.c: Move the nice graph and
1318 description from the Path behaviour...
1320 * clutter/clutter-behaviour.c: ... to the main Behaviour class.
1322 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
1324 * clutter/clutter-behaviour-path.c: Add a paragraph describing
1325 the effects of different alpha functions on the path behaviour.
1327 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
1329 * clutter/clutter-actor.c: Reference the newly added event-flow.png
1331 * clutter/clutter-alpha.c: Ditto, with alpha-func.png
1333 * clutter/clutter-texture.c: Fix the XML.
1335 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
1337 * clutter/clutter-behaviour-path.c: Reference the newly
1338 added image showing the effects of different alpha functions
1339 on the same path behaviour.
1341 * configure.ac: Find out the prefix of some of the libraries
1342 we depend upon, so that gtk-doc can fix the references for us.
1344 2008-02-08 Matthew Allum <mallum@openedhand.com>
1346 * clutter/clutter-texture.c:
1347 Tidy up offscreen code, adding into realize/unrealize.
1348 Add more safety code.
1349 Improve documentation.
1351 2008-02-08 Emmanuele Bassi <ebassi@openedhand.com>
1353 * clutter/clutter-script.c:
1354 (resolve_alpha_func): Use a whitelist containing the alpha function
1355 provided by Clutter, as a fallback in case g_module_open() does not
1358 (clutter_script_parse_alpha): Add an explicit warning in case we
1359 cannot find the alpha function used inside a UI definition.
1361 2008-02-07 Tomas Frydrych <tf@openedhand.com>
1363 * clutter/clutter-group.c (clutter_group_query_coords):
1364 Take into account the anchor point when calculating the box size.
1366 2008-02-07 Emmanuele Bassi <ebassi@openedhand.com>
1368 * clutter/clutter-actor.c: Add a note on clutter_actor_set_size()
1371 * clutter/clutter-group.c: Clarify group sizing.
1373 2008-02-07 Øyvind Kolås <pippin@o-hand.com>
1375 * tests/test-shader.c: (button_release_cb): added simplified
1376 implementation of a box-blur shader from Gwenole Beauchesne that
1377 should work on GLSL implementing low-end IGPs not implementing
1378 dynamic branching. The original code used crashed some of these
1379 due to bugs in drivers or similar. Resolves bug #710.
1381 2008-02-07 Tomas Frydrych <tf@openedhand.com>
1383 * tests/test-actors.c:
1384 Reverted previous change.
1386 2008-02-07 Tomas Frydrych <tf@openedhand.com>
1388 * clutter/clutter-actor.c:
1389 (clutter_actor_set_property):
1390 Fixed handling of PROP_ROTATE_CENTER_Y, ROTATE_CENTER_Z
1392 * tests/test-actors.c:
1393 Adjusted to use anchor point for both group and hands.
1395 2008-02-07 Neil J. Patel <njp@o-hand.com>
1397 * tests/test-actors.c: (frame_cb), (main):
1398 Changed set_anchor to move_anchor.
1399 Changed clutter_actor_rotate x & y values to 0,0.
1400 Switched on scaling because it seems to work without drifting.
1402 2008-02-07 Emmanuele Bassi <ebassi@openedhand.com>
1404 * clutter/clutter-script-parser.c:
1405 (clutter_script_get_type_from_symbol),
1406 (clutter_script_get_type_from_class): Use BIND_LAZY flag
1407 when looking at the symbols, so we don't load them all up.
1409 * clutter/clutter-script.c (resolve_alpha_func): Ditto as above.
1411 2008-02-07 Øyvind Kolås <pippin@o-hand.com>
1413 * clutter/clutter-actor.c:
1414 (_clutter_actor_apply_modelview_transform): perform translation as
1415 well as anchor point adjustment based on self not being stage (and
1416 not by self not being an orphan).
1418 2008-02-07 Matthew Allum <mallum@openedhand.com>
1420 * clutter/clutter-stage.c:
1421 * clutter/clutter-stage.h:
1422 * clutter/eglnative/clutter-stage-egl.c:
1423 * clutter/eglx/clutter-stage-egl.c:
1424 * clutter/osx/clutter-stage-osx.c:
1425 * clutter/sdl/clutter-stage-sdl.c:
1426 * clutter/x11/clutter-stage-x11.c:
1427 Add at least somne basic offscreen handling into all backends.
1428 Remove unused clutter_stage_set_offscreen vfunc. (#549)
1430 * clutter/clutter-texture.c:
1431 Minor API doc tweak, noting rowstride source in set_area
1433 2008-02-07 Emmanuele Bassi <ebassi@openedhand.com>
1435 * clutter/clutter-score.c (traverse_children): Actually implement
1436 clutter_score_list_timelines().
1438 * tests/test-score.c (main): Test clutter_score_list_timelines().
1440 2008-02-07 Matthew Allum <mallum@openedhand.com>
1442 * clutter/pango/pangoclutter-render.c:
1443 Warn if requested glyph is too big for underlying texture cache.
1446 2008-02-07 Matthew Allum <mallum@openedhand.com>
1448 * clutter/clutter-texture.c: (texture_upload_data):
1449 Remove random appearing 'priv->filter_quality =1' (#643)
1451 2008-02-06 Matthew Allum <mallum@openedhand.com>
1453 * clutter/clutter-texture.c:
1454 Minor clean up from last commit.
1457 Small tweak (rotate offscreen, rather than resize)
1459 2008-02-06 Matthew Allum <mallum@openedhand.com>
1461 * clutter/clutter-texture.c:
1462 Initial attempt at handling resizing/tranformed source textures.
1464 * clutter/pango/pangoclutter-render.c: (draw_glyph):
1465 Guards against freetype returning NULL bitmaps and
1466 thus causing device by zeros on NVIDIA drivers. (see ml)
1468 2008-02-05 Matthew Allum <mallum@openedhand.com>
1470 * clutter/clutter-actor.c: (clutter_actor_get_vertices):
1471 Make sure GL related Matrices are initialised. Fixes #756
1473 * clutter/clutter-texture.c:
1474 Fix up code from Norways answer to Jean-Michel Basquiat.
1475 (warning on tile_get_pixbuf)
1477 2008-02-05 Øyvind Kolås <pippin@o-hand.com>
1479 * clutter/clutter-texture.c: removed spurious left over debug printf.
1481 2008-02-05 Øyvind Kolås <pippin@o-hand.com>
1483 * clutter/clutter-texture.c: applied modified patch from Gwenole
1484 Beuchesne adressing bug #635. Adressing a buffer overflow in
1485 clutter_texture_get_pixbuf() when tiling is forced.
1487 2008-02-04 Emmanuele Bassi <ebassi@openedhand.com>
1489 * clutter/clutter-shader.c (clutter_shader_constructor): Keep the
1490 constructor line under the 80 columns using a variable.
1492 2008-02-04 Emmanuele Bassi <ebassi@openedhand.com>
1494 * clutter/clutter-actor.c:
1495 * clutter/clutter-shader.c: Small documentation and style fixes
1497 * tests/test-scale.c: Constify the gravities array.
1499 2008-02-04 Chris Lord <chris@openedhand.com>
1501 * clutter/clutter-actor.c: (clutter_actor_transform_stage_point):
1502 Check that x_out and y_out != NULL before setting their contents
1504 2008-02-04 Øyvind Kolås <pippin@o-hand.com>
1506 * clutter/clutter-timeline.c: (clutter_timeline_rewind): updated
1507 documentation to take direction into account.
1509 2008-02-04 Øyvind Kolås <pippin@o-hand.com>
1511 * tests/test-fbo.c: (make_shader):
1512 * tests/test-shader.c: (main): multiply the resulting gl_FragColor
1513 with gl_Color before being done to take opacity into account in the
1516 2008-02-04 Øyvind Kolås <pippin@o-hand.com>
1518 * clutter/clutter-actor.[ch]: added clutter_actor_get_shader and
1519 renamed clutter_actor_apply_shader to be clutter_actor_set_shader.
1520 Reindented/aligned header.
1521 * clutter/clutter-texture.c: (clutter_texture_paint): temporarily
1522 disable the shader on top of the clutter context's shader stack while
1523 rendering into the FBO.
1524 * tests/test-fbo.c: (main): s/apply_shader/set_shader/
1525 * tests/test-shader.c: (button_release_cb), (main):
1526 s/apply_shader/set_shader/
1528 2008-02-03 Matthew Allum <mallum@openedhand.com>
1530 * clutter/clutter-actor.c: (clutter_actor_set_rotationx):
1531 Add notify signal for set_rotate
1533 * clutter/clutter-texture.c:
1534 Add basic cleanup code for fbo's
1536 * tests/test-fbo.c: (main):
1539 * clutter/osx/clutter-stage-osx.c: (clutter_stage_osx_realize):
1542 2008-02-03 Matthew Allum <mallum@openedhand.com>
1544 * clutter/clutter-shader.c:
1545 Minor formatting cleanups to fit in 80 cols.
1547 * clutter/clutter-texture.c:
1548 More safety checks, clean ups in clutter_texture_new_from_actor()
1550 * clutter/cogl/gl/cogl.c:
1551 Always clear the FBO initially when rendering
1554 Overhall the test as to be more useful (and show current issues)
1556 2008-02-02 Matthew Allum <mallum@openedhand.com>
1558 * clutter/clutter-timeline.c:
1559 Document frame number limits in new-frame signal.
1561 * clutter/x11/clutter-event-x11.c:
1562 Remove uneeded error trap (#751)
1564 2008-02-01 Matthew Allum <mallum@openedhand.com>
1566 * clutter/cogl/cogl.h:
1567 * clutter/cogl/gl/cogl.c: (cogl_paint_init), (cogl_enable):
1568 * clutter/cogl/gles/cogl.c: (cogl_enable):
1570 Disable the depth test and buffer as has some strange side
1571 effects, mainly on x/y axis rotation with multiple layers at
1572 same depth (eg rotating text on a bg has very strange
1573 effect). Seems no clean 100% effective way to fix without other
1574 odd issues.. So for now move to application to handle and add
1575 cogl_enable_depth_test() as for custom actors (i.e groups) to
1579 2008-02-01 Matthew Allum <mallum@openedhand.com>
1581 * clutter/clutter-texture.c: (clutter_texture_new_from_actor):
1582 Fix typo breaking FBO rendering on anything other than a cloned
1585 2008-02-01 Matthew Allum <mallum@openedhand.com>
1587 * clutter/clutter-feature.h:
1588 * clutter/clutter-texture.c:
1589 * clutter/clutter-texture.h:
1590 * clutter/cogl/cogl.h:
1591 * clutter/cogl/gl/cogl.c:
1592 * clutter/cogl/gles/cogl.c:
1593 * tests/Makefile.am:
1595 Add initial support for FBO's in Clutter (OpenGL only so far).
1596 See new clutter_texture_new_from_actor()
1597 Initial implementation, needs work.
1599 * clutter/x11/clutter-stage-x11.c:
1600 (clutter_stage_x11_set_cursor_visible):
1601 Fall back to again not relying on xfixes to hide cursor. *sigh*
1603 * clutter/clutter-deprecated.h:
1604 Add clutter_group_find_child_by_id
1606 2008-02-01 Øyvind Kolås <pippin@o-hand.com>
1608 * clutter/cogl/gles/cogl.c: (cogl_rectangle_internal): increase size
1609 of GLfixed[] array to make contents fit.
1611 2008-02-01 Emmanuele Bassi <ebassi@openedhand.com>
1613 * clutter/clutter-actor.h: Clean up a bit the flag-related macros.
1615 2008-02-01 Emmanuele Bassi <ebassi@openedhand.com>
1617 * clutter/clutter-actor.c:
1618 (clutter_actor_get_property): Use clutter_actor_get_reactive()
1619 instead of the IS_REACTIVE() macro.
1621 (clutter_actor_set_reactive): Emit the notify signal for the
1624 * clutter/clutter-timeline.c:
1625 (timeline_timeout_func),
1626 (clutter_timeline_get_delta): Coding style fixes.
1628 2008-01-31 Rob Bradford <rob@openedhand.com>
1630 * clutter/glx/clutter-stage-glx.c:
1631 * clutter/glx/clutter-backend-glx.c:
1632 * clutter/glx/clutter-backend-glx.h:
1635 2008-01-31 Emmanuele Bassi <ebassi@sprite>
1637 * clutter/clutter-timeline.c (clutter_timeline_skip): Don't
1638 add the frames outside the direction check. (thanks to benoar
1639 on clutter-list for spotting it)
1641 2007-01-31 Tomas Frydrych <tf@openedhand.com>
1643 * clutter/clutter-actor.c:
1644 (clutter_actor_transform_vertices):
1645 Call clutter_actor_query_coords() instead of accessing the actor
1646 box, so that actors that calculate their bounding box on the fly
1647 (like ClutterGroup) work.
1649 * (_clutter_actor_apply_modelview_transform_recursive):
1650 Made to work for parentless actors.
1652 2008-01-31 Øyvind Kolås <pippin@o-hand.com>
1654 * tests/test-depth.c: added a box of cloned hands to further expand
1655 the scope of depth testing scenarios exercised by test-depth.
1657 2008-01-31 Øyvind Kolås <pippin@o-hand.com>
1659 * tests/test-depth.c: (timeline_completed): make use of
1660 clutter_timeline_set_direction instead of static state.
1661 (raise_top): made rectangle remain at fixed depth and raise
1663 (janus_group): added a rectangle with two faces, one red and
1664 one green, that spins around.
1666 2008-01-31 Emmanuele Bassi <ebassi@openedhand.com>
1668 * clutter/clutter-entry.h:
1669 * clutter/clutter-entry.c:
1670 (clutter_entry_set_cursor_position),
1671 (clutter_entry_get_cursor_position): Rename [gs]et_position()
1672 to [gs]set_cursor_position(), and avoid method name collisions
1673 with bindings for high-level languages.
1675 * clutter/clutter-deprecated.h: Add replacement warnings for the
1678 2008-01-31 Emmanuele Bassi <ebassi@openedhand.com>
1680 * clutter/clutter-actor.c (clutter_actor_init): Explicitly
1681 memset() to 0 the clip container, so if you get the clip without
1682 having set it, you won't get garbage.
1684 2008-01-31 Rob Bradford <rob@openedhand.com>
1686 * clutter/x11/clutter-backend-x11-private.h:
1687 Add missing start to comment
1689 * clutter/x11/clutter-backend-x11.c:
1690 * clutter/x11/clutter-event-x11.c:
1691 * clutter/x11/clutter-stage-x11.c:
1692 * clutter/x11/clutter-x11.h:
1695 2008-01-30 Emmanuele Bassi <ebassi@openedhand.com>
1697 * README: Add the osx flavour, and mark it experimental,
1698 along with the sdl backend. EGL-based backends should not be
1699 considered experimental anymore, even though they might require
1702 2008-01-30 Emmanuele Bassi <ebassi@openedhand.com>
1704 * HACKING: Expand the "document API" point, and the release
1707 * README: Update the release notes regarding the scale behaviour,
1708 now that the gravity has been removed.
1710 2007-01-30 Tomas Frydrych <tf@openedhand.com>
1712 * clutter/clutter-actor.c:
1713 * clutter/clutter-actor.h:
1714 Added new clutter_actor_move_anchor_point_ API.
1716 * clutter/clutter-behaviour-scale.c:
1717 * clutter/clutter-behaviour-scale.h:
1718 * clutter/clutter-effect.c:
1719 * clutter/clutter-effect.h:
1720 * tests/test-actors.c:
1721 * tests/test-effects.c:
1722 * tests/test-scale.c:
1723 Removed gravity from ClutterBehaviourScale.
1725 2008-01-27 Emmanuele Bassi <ebassi@openedhand.com>
1727 * tests/test-depth.c (main): Use a group instead of pushing
1728 the actors on the stage.
1730 2008-01-25 Emmanuele Bassi <ebassi@openedhand.com>
1732 * clutter/clutter-group.c (sort_z_order): Invert condition to
1733 return to the same as in revision 1976.
1735 2008-01-25 Emmanuele Bassi <ebassi@openedhand.com>
1737 * clutter/clutter-label.c (clutter_label_query_coords): Check
1738 if the layout logical rectangle size is bigger than the bounding
1739 box; this usually means that the bounding box changed in one
1740 point and the label private allocation needs to be
1743 2008-01-25 Emmanuele Bassi <ebassi@openedhand.com>
1745 * clutter/x11/Makefile.am: Add the generated clutter-x11 pkg-config
1746 file to CLEANFILES, to pass distcheck.
1749 * clutter/Makefile.am: Tweak up the Makefiles.
1752 * NEWS: Release 0.5.4
1754 * configure.ac: Post-release bump to 0.5.5
1756 2008-01-25 Emmanuele Bassi <ebassi@openedhand.com>
1758 * clutter/clutter-group.c: Use a shorter Z order sorting function,
1759 avoiding the checks.
1761 2008-01-25 Øyvind Kolås <pippin@o-hand.com>
1763 * clutter/clutter-shader.c: added documentation strings for
1766 2008-01-23 Emmanuele Bassi <ebassi@openedhand.com>
1768 * Makefile.am: Use variables, instead of substitutions.
1770 * clutter/clutter-private.h:
1771 * clutter/clutter-main.h: Make clutter_do_event() public again,
1772 as we need it in clutter-gtk.
1775 * clutter/x11/Makefile.am:
1776 * clutter/x11/clutter-x11.pc.in: Add a clutter-x11 pkg-config
1777 file for clutter-gtk, as it depends on the X11 backend API, as
1778 implemented by the GLX and EGLX backends.
1780 * clutter/x11/clutter-event-x11.c (event_translate): Do not
1781 propagate DestroyNotify events if the stage doesn't own the
1784 * tests/test-scale.c (main): Set values different from the default.
1786 2008-01-21 Emmanuele Bassi <ebassi@openedhand.com>
1788 * clutter/clutter-behaviour-scale.c:
1789 (clutter_behaviour_scale_set_property),
1790 (clutter_behaviour_scale_class_init): Fix stupid typo in the
1791 y-scale-end property declaration. (#720)
1793 2008-01-21 Emmanuele Bassi <ebassi@openedhand.com>
1795 * clutter/clutter-behaviour-depth.h:
1796 * clutter/clutter-behaviour-depth.c:
1797 (clutter_behaviour_depth_set_bounds),
1798 (clutter_behaviour_depth_get_bounds): Add the depth-start and
1799 depth-end accessors.
1801 * tests/test-depth.c (timeline_completed): Use set_bounds()
1802 instead of g_object_set().
1804 * clutter.symbols: Add clutter_behaviour_depth_set_bounds()
1805 and clutter_behaviour_opacity_get_bounds() to the list of
1808 2008-01-21 Emmanuele Bassi <ebassi@openedhand.com>
1810 * clutter/clutter-behaviour-scale.c: Use separate variables for
1811 storing the scale boundaries; apparently, using arrays broke
1812 the python bindings. (#720)
1814 2008-01-21 Matthew Allum <mallum@openedhand.com>
1816 * clutter/clutter-group.c:
1817 Make sure unrealizing a group also unrealizes children.
1819 * clutter/glx/clutter-stage-glx.c:
1820 Chain up to group unrealize to make sure textures get unrealized
1821 when changing context (see #718)
1823 * clutter/clutter-texture.c:
1826 2008-01-21 Øyvind Kolås <pippin@gimp.org>
1828 * tests/test-shader.c: fix incompatible types in shader programs
1830 Apparently floats can't be multiplied or divided with ints without
1831 explicit type casts. Use 2.0 or float(var) where appropriate. Patch
1832 from Tommi Komulainen (#715).
1834 2008-01-19 Emmanuele Bassi <ebassi@openedhand.com>
1836 * clutter/clutter-main.c (generate_enter_leave_events): Do not
1837 take the explicit reference, and let clutter_event_copy() do it
1838 for us. (#714, Neil Roberts)
1840 2008-01-19 Emmanuele Bassi <ebassi@openedhand.com>
1842 * clutter/clutter-event.c (clutter_event_copy): Take an extra
1843 reference on the related actor in ClutterEventCrossing that we
1844 explicitly unref in clutter_event_free(). (#714, Neil Roberts)
1846 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
1848 * tests/test-actors.c (input_cb): Fix the callback signature;
1849 hide the clicked actor only if it's a hand.
1851 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
1853 * clutter/clutter-main.c (clutter_do_event): Check the
1854 return value of the ::event signal for the CLUTTER_DELETE
1857 * clutter/clutter-stage.c (clutter_stage_event): Emit the
1858 ::event signal when receiving the CLUTTER_DELETE event; this
1859 allows to intercept the user's closing of the stage window.
1861 2007-01-18 Tomas Frydrych <tf@openedhand.com>
1863 * clutter/clutter-fixed.h:
1864 Added missing proto for clutter_fixed_qdivx().
1866 2007-01-18 Tomas Frydrych <tf@openedhand.com>
1868 * clutter/clutter-fixed.h:
1869 * clutter/clutter-fixed.c:
1870 Added CLUTTER_QDIV() for 64-bit division (bug 564, patch by
1871 Gwenole Beauchesne).
1873 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
1875 * clutter/clutter-event.h: Add a gunichar field for the Unicode
1876 representation of the key. (#555)
1878 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
1880 * clutter/clutter-actor.h:
1881 * clutter/clutter-script.h:
1882 * clutter/clutter-stage.h:
1883 * clutter/clutter-units.h: Documentation fixes and additions.
1885 2008-01-18 Emmanuele Bassi <ebassi@openedhand.com>
1887 * clutter.symbols: Add ClutterBehaviourOpacity accessors.
1889 * clutter/clutter-behaviour-opacity.h:
1890 * clutter/clutter-behaviour-opacity.c:
1891 (clutter_behaviour_opacity_set_bounds),
1892 (clutter_behaviour_opacity_get_bounds): Add accessors for the
1893 opacity-start and opacity-end properties.
1895 * clutter/clutter-behaviour-scale.h: Fix the argument name to
1896 avoid complaints by gtk-doc.
1898 2008-01-17 Emmanuele Bassi <ebassi@openedhand.com>
1900 * clutter/clutter-behaviour-scale.c:
1901 (clutter_behaviour_scale_set_gravity): Notify on the right property
1904 2008-01-17 Emmanuele Bassi <ebassi@openedhand.com>
1906 * clutter.symbols: Add new ClutterBehaviourScale setters.
1908 * clutter/clutter-behaviour-scale.[ch]: Split the scaling factors
1909 on both axis. Add setters for all the behaviour properties.
1911 * clutter/clutter-effect.h:
1912 * clutter/clutter-effect.c (clutter_effect_scale): Split the
1913 final scale factor to match the ClutterBehaviourScale changes. (#709)
1915 * tests/test-actors.c:
1916 * tests/test-effects.c:
1917 * tests/test-rotate.c:
1918 * tests/test-scale.c: Update after API change.
1920 2008-01-16 Emmanuele Bassi <ebassi@openedhand.com>
1922 * clutter/cogl/cogl.h: Rename COGLhandleARB to COGLhandle.
1924 * clutter/cogl/gl/cogl-defines.h.in:
1925 * clutter/cogl/gl/cogl.c: Update GL implementation of COGL.
1927 * clutter/cogl/gles/cogl-defines.h:
1928 * clutter/cogl/gles/cogl.c: Update GLES implementation of COGL.
1930 * clutter/clutter-shader.c: Fix ClutterShader to use the new
1931 COGLhandle type instead of COGLhandlerARB.
1933 2008-01-16 Emmanuele Bassi <ebassi@openedhand.com>
1935 Define COGLhandleARB. (patch by Johan Bilien)
1937 * clutter/cogl/gles/cogl-defines.h: Define COGLhandleARB on
1938 GLES as well (using GLuint)
1940 * clutter/cogl/gles/cogl.c: Use COGLhandleARB.
1942 2008-01-14 Tommi Komulainen <tommi.komulainen@iki.fi>
1944 reviewed by: Emmanuele Bassi <ebassi@openedhand.com>
1946 * clutter/osx/clutter-event-osx.c (_clutter_event_osx_put):
1947 Initialize ClutterEvent structure with zeroes (#672)
1949 The 'source' member was uninitialized and being referenced in
1950 clutter_do_event leading to crash.
1952 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
1954 * tests/test-scale.c: Improve test case for scaling (#684,
1957 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
1959 * clutter/clutter-timeline.c (timeline_timeout_func): Fix
1960 check if the last frame was reached by skipping a frame (#654,
1963 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
1965 * clutter/clutter-shader.c: Use correct format string for
1966 gssize. (#695, Tommi Komulainen)
1968 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
1970 * clutter/cogl/gl/cogl.c (cogl_get_proc_address): Implement non-GLX
1971 version using GModule and looking up the symbol from the running
1972 process. It should work when linked to library providing the
1973 requested function. (#696, Tommi Komulainen)
1975 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
1977 * configure.ac: Post-release bump to 0.5.3
1980 * NEWS: Release 0.5.2
1982 2008-01-14 Emmanuele Bassi <ebassi@openedhand.com>
1984 * clutter.symbols: Add clutter_model_insertv()
1986 * clutter/clutter-model.[ch] (clutter_model_insertv): Add a vector
1987 based insertion API, for language bindings
1989 2008-01-12 Emmanuele Bassi <ebassi@openedhand.com>
1991 * clutter/clutter-effect.c (clutter_effect_rotate): Make the
1992 rotate effect work on the passed axis, instead of hardcoding
1993 the X axis. (#700, Neil Roberts)
1995 2008-01-10 Øyvind Kolås <pippin@gimp.org>
1997 Added COGLhandleARB since the underlying type on OSX is void*,
1998 patch from Tommi Komulainen <tommi.komulainen@iki.fi>, (#694)
2000 * clutter/cogl/gl/cogl-defines.h.in: Added COGLhandleARB typedef.
2001 * clutter/cogl/cogl.h:
2002 * clutter/cogl/gl/cogl.c:
2003 * clutter/clutter-shader.c: Use COGLhandleARB instead of COGLint when
2004 referring to program or shader handles.
2006 2008-01-09 Emmanuele Bassi <ebassi@openedhand.com>
2008 * clutter/Makefile.am:
2009 * clutter/clutter.h:
2010 * clutter/clutter-list-model.[ch]: Complete the ClutterModelDefault
2011 to ClutterListModel rename by renaming the source files
2013 2008-01-09 Emmanuele Bassi <ebassi@openedhand.com>
2015 * clutter/clutter-model-default.[ch]: Rename ClutterModelDefault
2016 into ClutterListModel, to make it clear that the default
2017 ClutterModel implementation is list-based
2019 * tests/test-model.c: Update call
2021 2008-01-09 Emmanuele Bassi <ebassi@openedhand.com>
2023 * clutter/clutter-model-default.c:
2024 (clutter_model_default_new),
2025 (clutter_model_default_newv): Move the constructors in the
2028 * clutter/clutter-model-private.h: Add a private header for
2029 the ClutterModel implementations
2031 * clutter/clutter-model.c:
2032 (clutter_model_check_type),
2033 (clutter_model_set_n_columns),
2034 (clutter_model_set_column_type): Mark as private to Clutter,
2035 not static to ClutterModel
2037 * clutter/Makefile.am: Add clutter-model-private.h
2039 2008-01-09 Emmanuele Bassi <ebassi@openedhand.com>
2041 * clutter/clutter-label.c:
2042 (clutter_label_ensure_layout): Fix the ClutterUnits to Pango
2045 2008-01-08 Emmanuele Bassi <ebassi@openedhand.com>
2047 * clutter/clutter-model.c:
2048 (clutter_model_appendv),
2049 (clutter_model_prependv): Fix the columns length pre-condition
2051 2008-01-07 Emmanuele Bassi <ebassi@openedhand.com>
2053 * clutter/clutter-model-default.[ch]: Remove the ClutterModelDefault
2054 iterator symbols from the public API; the iterator implementation
2055 is a detail of the default ClutterModel class
2057 * clutter.symbols: Update
2059 2008-01-07 Emmanuele Bassi <ebassi@openedhand.com>
2061 * clutter/clutter-model.h:
2062 * clutter/clutter-model.c:
2063 (clutter_model_appendv),
2064 (clutter_model_prependv): Add vector based API for bindings.
2066 (clutter_model_get_column_name),
2067 (clutter_model_get_column_type),
2068 (clutter_model_set_sorting_column): Fix the check in the condition
2069 on the column index.
2071 * tests/test-scale.c (on_timeline_completed), (main): Fix spelling
2073 * clutter.symbols: Update public symbols
2075 2008-01-04 Emmanuele Bassi <ebassi@openedhand.com>
2077 * clutter.symbols: Add clutter_actor_move_byu()
2079 * clutter/clutter-actor.h:
2080 * clutter/clutter-actor.c:
2081 (clutter_actor_move_by),
2082 (clutter_actor_move_byu): Add a units-based variant of the
2083 clutter_actor_move_by() function
2085 2008-01-02 Johan Bilien <jobi@via.ecp.fr>
2087 reviewed by: Emmanuele Bassi <ebassi@openedhand.com>
2089 * configure.ac: Use AC_DEFINE_UNQUOTED to expand the
2090 variable. Fixes EGL backend build
2092 2008-01-02 Emmanuele Bassi <ebassi@openedhand.com>
2094 * configure.ac: Post release bump to 0.5.1
2096 2008-01-02 Emmanuele Bassi <ebassi@openedhand.com>
2099 * NEWS: Release 0.5.0
2101 2008-01-02 Emmanuele Bassi <ebassi@openedhand.com>
2103 * clutter/clutter-model-default.c:
2104 (clutter_model_default_get_iter_at_row),
2105 (clutter_model_default_insert_row): Fix off-by-one errors
2107 (clutter_model_default_class_init):
2108 (clutter_model_default_remove_row): Move the actual removal of the
2111 (clutter_model_default_row_removed): ... the signal class handler
2112 of ::row-removed; this way, signal handlers connected to
2113 ::row-removed will get a valid iterator, while signal handlers
2114 connected to ::row-removed with the AFTER flag will get an updated
2117 2007-12-31 Tomas Frydrych <tf@openedhand.com>
2120 * clutter/Makefile.am:
2121 Added -no-undefined to libtool LDFLAGS for mingw/SDL backend, to
2122 allow building of shared libraries for win32.
2124 2007-12-31 Tomas Frydrych <tf@openedhand.com>
2128 Added CLUTTER_REQUIRES automake var to allow deps in clutter.pc to
2129 be backend-specific.
2131 2007-12-28 Emmanuele Bassi <ebassi@openedhand.com>
2133 * clutter/clutter-texture.c:
2134 (clutter_texture_unrealize): Do not read the pixels back if the
2135 texture is being destroyed
2137 2007-12-28 Emmanuele Bassi <ebassi@openedhand.com>
2139 * clutter/clutter-model.c:
2140 (clutter_model_real_get_n_rows), (clutter_model_class_init),
2141 (clutter_model_get_n_rows): Provide a default implementation of
2142 the get_n_rows() method, so that subclasses do not strictly need
2145 2007-12-25 Emmanuele Bassi <ebassi@openedhand.com>
2147 * clutter/clutter-actor.c:
2148 (parse_rotation_array): Inline, and get the JsonArray as a parameter
2150 (parse_rotation): Update
2152 * clutter/clutter-script.c:
2153 (warn_missing_attribute): Fix for emacs-style warnings
2155 (clutter_script_parse_node): Remove an ifdeffed out section
2157 (clutter_script_construct_parameters),
2158 (clutter_script_construct_object): Rename get_parameters, so
2159 it's obvious what it does
2161 2007-12-25 Emmanuele Bassi <ebassi@openedhand.com>
2163 * tests/test-script.json: Fix the JSON syntax
2165 2007-12-25 Emmanuele Bassi <ebassi@openedhand.com>
2167 * clutter/clutter-enum-types.c.in: Fix the template
2169 2007-12-24 Emmanuele Bassi <ebassi@openedhand.com>
2171 * clutter/clutter-stage.c:
2172 * clutter/clutter-stage.h:
2173 * clutter/clutter-texture.c: Remove some of the remaining FIXMEs
2174 in the API documentation
2176 2007-12-24 Emmanuele Bassi <ebassi@openedhand.com>
2178 * clutter/clutter-color.c:
2179 * clutter/clutter-event.c:
2180 * clutter/clutter-stage.c: Intern more strings using the I_() macro
2182 * clutter/clutter-enum-types.c.in: Call g_intern_static_string()
2183 in the enum types template
2185 2007-12-24 Emmanuele Bassi <ebassi@openedhand.com>
2187 * clutter.symbols: Add clutter_actor_set_clipu() and
2188 clutter_actor_get_clipu()
2190 * clutter/clutter-actor.h:
2191 * clutter/clutter-actor.c:
2192 (clutter_actor_set_clipu), (clutter_actor_get_clipu): Add the
2193 new units-based versions of the clip accessors
2195 (clutter_actor_set_clip), (clutter_actor_get_clip): Reimplement
2196 the pixels-based clip accessors as proxies for the units-based
2199 2007-12-24 Emmanuele Bassi <ebassi@openedhand.com>
2201 * clutter/cogl/cogl.h: Update cogl_clip_set() to accept the
2202 clip components as ClutterFixed values
2204 * clutter/cogl/gl/cogl.c (cogl_clip_set): Update the GL implementation
2207 * clutter/cogl/gles/cogl.c:
2208 (cogl_rectangle_internal): Provide an internal, inlined rectangle
2209 drawing function using fixed point values, to be shared by
2210 cogl_clip_set() and cogl_rectangle()
2212 (cogl_clip_set), (cogl_rectangle): Update the GLES implementation
2213 of cogl_clip_set() and cogl_rectangle() to use the new internal
2214 rectangle drawing function
2216 * clutter/clutter-actor.c: Make the clip an array of ClutterUnit
2217 values instead of pixel-based; this allows higher precision and
2220 (_clutter_actor_apply_modelview_transform): Pass the clip
2221 components converting from units to fixed point values, using
2222 the new cogl_clip_set() signature
2224 (clutter_actor_get_property), (clutter_actor_set_clip),
2225 (clutter_actor_get_clip): Update the accessors of the clip
2228 2007-12-21 Emmanuele Bassi <ebassi@openedhand.com>
2230 * clutter/clutter-actor.h: Remove the unused ::set_depth() and
2231 ::get_depth() virtual functions. (#674, Murray Cumming)
2233 2007-12-21 Emmanuele Bassi <ebassi@openedhand.com>
2235 * clutter/clutter-group.c:
2236 * clutter/clutter-group.h: Add the clutter_group_add() convenience
2237 function; it's now "undeprecated" and implemented as a macro
2239 * clutter/clutter-stage.h: Add clutter_stage_add() as a convenience
2242 * clutter/cogl/cogl.h: Include just the needed headers instead
2243 of the whole clutter.h; this avoids rebuild cogl when not needed
2245 2007-12-21 Emmanuele Bassi <ebassi@openedhand.com>
2247 * Makefile.am: Move tests build before docs, to cut down the
2248 distcheck failure discovery
2250 * clutter.symbols: Add clutter_texture_set_area_from_rgb_data()
2252 * clutter/clutter-actor.c:
2253 * clutter/clutter-script.c:
2254 * clutter/clutter-texture.c:
2255 * clutter/json/json-generator.c:
2256 * clutter/json/json-parser.c: Compilation fixes for passing distcheck
2258 * tests/test-grab.c:
2259 * tests/test-score.c:
2260 * tests/test-script.c:
2261 * tests/test-shader.c:
2262 * tests/test-unproject.c: Ditto as above
2264 2007-12-21 Emmanuele Bassi <ebassi@openedhand.com>
2266 * clutter/clutter-label.c:
2267 (clutter_label_ensure_layout): Avoid rounding errors in the layout
2268 computing when switching between Clutter units and Pango units.
2270 2007-12-19 Øyvind Kolås <pippin@o-hand.com>
2272 * clutter/clutter-texture.[ch]: (bug #675) added
2273 clutter_texture_set_area_from_rgb_data, sharing some of the
2274 initialization infrastructure with clutter_texture_set_from_rgb_data.
2276 2007-12-20 Emmanuele Bassi <ebassi@openedhand.com>
2278 * clutter/clutter-container.c:
2279 (clutter_container_lower_child): Fix interface method call
2280 to actually call ClutterContainer::lower. (#670, Gwenole
2283 2007-12-20 Emmanuele Bassi <ebassi@openedhand.com>
2285 * clutter/clutter-label.c:
2286 (clutter_label_query_coords): Return the bounding box set inside
2287 request_coords(), if any; otherwise, return the natural allocation
2288 of the label. (#678, reported by Gwenole Beauchesne)
2290 * tests/test-rotate.c: Align the label
2292 2007-12-19 Tomas Frydrych <tf@openedhand.com>
2294 * clutter/Makefile.am:
2295 * clutter/cogl/gl/cogl-defines.h.in:
2296 * clutter/pango/pangoclutter-render.c:
2298 Fixes to allow cross-compilation with mingw (patch by Neil
2300 Removed trailing whitespace.
2302 2007-12-18 Øyvind Kolås <pippin@o-hand.com>
2304 * clutter/clutter-main.c: (generate_enter_leave_events): synthesize
2305 enter event (without related) and corresponding leave event when the
2306 actor the cursor is over has been destroyed.
2307 * clutter/clutter-event.c: (clutter_event_free): only unref the
2308 related_actor when it actually is set.
2310 2007-12-18 Emmanuele Bassi <ebassi@openedhand.com>
2312 * clutter/clutter-main.c:
2313 (unset_motion_last_actor),
2314 (generate_enter_leave_events): Attach a callback to the destroy
2315 signal on the last motion actor, so if it goes away while the
2316 pointer is in the middle of it we can unset the pointer.
2318 * clutter/clutter-private.h: Store the last motion actor inside
2321 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
2323 * clutter/clutter-actor.c:
2324 (clutter_actor_should_pick_paint),
2325 (clutter_actor_apply_transform_to_point): Fix the whitespace.
2327 (clutter_actor_set_rotation): Clarify that the coordinates of
2328 the centre of rotation are relative to the anchor point or,
2329 if not set, to the upper left corner of the bounding box.
2331 2007-12-17 Tomas Frydrych <tf@openedhand.com>
2333 * clutter/clutter-behaviour-ellipse.c:
2334 * clutter/clutter-behaviour-rotate.c:
2335 Clamping of start and end angles to <0, 360).
2337 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
2339 * clutter/clutter-behaviour-path.c: Clarify the equivalence
2340 between the upper and lower bounds of the ClutterAlpha and
2341 the position in the path. (#634)
2343 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
2345 * clutter/clutter-texture.c: Mention the fact that a ClutterTexture
2346 will scale its contents to fit inside the requested bounding
2349 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
2351 * clutter/clutter-actor.c: Fix documentation for
2352 the ::captured-event signal. (#673)
2354 2007-12-17 Emmanuele Bassi <ebassi@openedhand.com>
2356 * clutter/clutter-actor.c: Clarify the set_clip() method
2357 documentation, pointing out that the clip area origin is
2358 always the top-left corner of an actor.
2360 2007-12-15 Emmanuele Bassi <ebassi@openedhand.com>
2362 * clutter/clutter-actor.c:
2363 * clutter/clutter-alpha.h:
2364 * clutter/clutter-event.h:
2365 * clutter/clutter-fixed.[ch]:
2366 * clutter/clutter-model.h:
2367 * clutter/clutter-shader.[ch]:
2368 * clutter/clutter-stage.c: Documentation fixes.
2370 2007-12-15 Emmanuele Bassi <ebassi@openedhand.com>
2372 * clutter/clutter-model-default.c:
2373 (clutter_model_default_iter_next),
2374 (clutter_model_default_iter_prev): Do not instantiate a new
2375 iterator, and update the passed one instead, as we say we do
2376 in the documentation. This avoid leaking tons of iterators.
2378 * clutter/clutter-model.[ch]: Update the documentation.
2380 * tests/test-model.c: Prettify some output.
2382 2007-12-14 Emmanuele Bassi <ebassi@openedhand.com>
2384 * clutter/clutter-behaviour.c:
2385 (clutter_knot_get_type): Use the I_() macro.
2387 * clutter/clutter-model.[ch]: Make ClutterModel and ClutterModelIter
2388 abstract classes; also, provide more virtual functions inside the
2389 ClutterModel vtable, to allow subclasses and language bindings to
2390 override the entire ClutterModel using other/native data types
2393 * clutter/clutter-model-default.[ch]: ClutterModelDefault is a
2394 default implementation of ClutterModel and ClutterModelIter using
2397 * clutter/Makefile.am:
2398 * clutter/clutter.h: Build glue for ClutterModelDefault.
2400 * tests/test-model.c: Update for constructor changes.
2402 * tests/test-shader.c: Fix a typo.
2404 2007-12-14 Matthew Allum <mallum@openedhand.com>
2406 * clutter/cogl/gl/cogl-defines.h.in:
2407 * clutter/cogl/gles/cogl-defines.h:
2408 Add CLUTTER_COGL_HAS_GL/GLES defines
2410 2007-12-11 Øyvind Kolås <pippin@o-hand.com>
2412 Refined the ClutterShader API based on a patch from Emmanuele Bassi.
2414 * clutter/clutter-actor.c: (clutter_actor_paint),
2415 (clutter_actor_apply_shader): queue a redraw of actor when shader is
2417 * clutter/clutter-actor.h: indentation.
2418 * clutter/clutter-shader.[ch]: made the fragment and vertex shader
2419 sources properties. Report error through GError when binding shaders.
2420 * tests/test-shader.c: modified to use newer API.
2422 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
2424 * clutter/clutter-model.c:
2425 (clutter_model_get_sorting_column): Fix wrong type check.
2427 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
2429 * clutter/clutter-model.[ch]: Allow unsorting the model (passing
2430 -1 as the sorting column)
2432 (clutter_model_iter_get_valist): Do not initialise twice che
2435 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
2437 * clutter/clutter-model.c (clutter_model_iter_get_value): Initialise
2438 the passed GValue like the other getters do.
2440 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
2442 * clutter/clutter-model.h:
2443 * clutter/clutter-model.c:
2444 (clutter_model_append_value),
2445 (clutter_model_prepend_value),
2446 (clutter_model_insert_value): Add a _value() variant for the
2447 insertion methods, for use of the language bindings.
2449 (clutter_model_append),
2450 (clutter_model_prepend),
2451 (clutter_model_insert): Do not return a boolean: insertion should
2452 never fail unless for a programming error, in which case we have
2455 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
2457 * clutter/clutter-behaviour-ellipse.c:
2458 (clutter_behaviour_ellipse_get_angle_tilt),
2459 (clutter_behaviour_ellipse_get_angle_tiltx),
2460 (clutter_behaviour_ellipse_set_tilt): Fix a double conversion
2461 that was messing up the returned results. (#665)
2463 2007-12-10 Emmanuele Bassi <ebassi@openedhand.com>
2465 * clutter/clutter-actor.c:
2466 (clutter_actor_set_property),
2467 (clutter_actor_get_property),
2468 (clutter_actor_class_init): Add the rotation-* properties,
2469 controlling the rotation angle and center on each axis. (#614)
2471 (parse_rotation_array), (parse_rotation),
2472 (clutter_actor_parse_custom_node),
2473 (clutter_actor_set_custom_property),
2474 (clutter_scriptable_iface_init): Add a new "rotation" custom
2475 property for expressing the rotation along each axis in a
2479 { "x-axis" : [ <angle>, [ <y>, <z> ] ] },
2480 { "y-axis" : [ <angle>, [ <x>, <z> ] ] },
2481 { "z-axis" : [ <angle>, [ <x>, <y> ] ] }
2484 (clutter_geometry_get_type),(clutter_vertex_get_type),
2485 (clutter_actor_box_get_type): Use the I_() macro instead of
2486 directly calling g_intern_static_string().
2488 * clutter/clutter-entry.c (clutter_entry_request_coords):
2489 * clutter/clutter-label.c (clutter_label_ensure_layout),
2490 (clutter_label_request_coords): Use CLUTTER_UNITS_FROM_DEVICE()
2491 instead of CLUTTER_UNITS_FROM_INT(), as "device" means "pixels".
2493 * clutter/clutter-private.h: Add the I_() macro for intern
2496 * tests/test-script.json: Test the newly added "rotation"
2499 2007-12-10 Tomas Frydrych <tf@openedhand.com>
2501 * tests/Makefile.am:
2504 2007-12-10 Tomas Frydrych <tf@openedhand.com>
2506 * tests/test-viewport.c:
2507 * tests/Makefile.am:
2508 Added a simple viewport test.
2510 2007-12-10 Tomas Frydrych <tf@openedhand.com>
2512 * clutter/clutter-actor.c:
2513 (_clutter_actor_apply_modelview_transform):
2514 Moved offset translation after rotation so that rotation coords
2515 are also relative to the offset point.
2518 2007-12-09 Emmanuele Bassi <ebassi@openedhand.com>
2520 * tests/test-events.c (input_cb):
2521 * tests/test-text.c (main): Fix compiler errors. (#592,
2524 2007-12-09 Emmanuele Bassi <ebassi@openedhand.com>
2526 * clutter/clutter-actor.c: Document the values for full
2527 transparency and full opacity in the set_opacity()
2530 * clutter/clutter-behaviour-ellipse.c: Improve consistency
2533 2007-12-08 Emmanuele Bassi <ebassi@openedhand.com>
2535 * configure.ac: Make libtool respect the -s switch of make
2538 2007-12-07 Emmanuele Bassi <ebassi@openedhand.com>
2540 * clutter/clutter-actor.h:
2541 * clutter/clutter-actor.c:
2542 (clutter_actor_get_sizeu),
2543 (clutter_actor_get_positionu): Add unit-based accessors to
2544 the size and position.
2546 2007-12-07 Tomas Frydrych <tf@openedhand.com>
2548 * clutter/clutter-behaviour-ellipse.c:
2549 (clutter_behaviour_ellipse_set_angle_start):
2550 (clutter_behaviour_ellipse_set_angle_end):
2551 (clutter_behaviour_ellipse_set_angle_tilt):
2552 (clutter_behaviour_ellipse_set_tilt):
2553 Removed strayed degree -> ClutterAngle conversions left over from
2556 (clutter_behaviour_ellipse_set_angle_tiltx):
2557 Removed stray printf.
2559 2007-12-07 Tomas Frydrych <tf@openedhand.com>
2561 * clutter/clutter-behaviour-ellipse.c:
2562 Fixed tilt setters and getters.
2564 2007-12-06 Tomas Frydrych <tf@openedhand.com>
2566 * clutter/clutter-fixed.c:
2567 * clutter/clutter-fixed.h:
2569 Added extra iteration to the Newton-Rapson algorithm for arguments
2570 lesser than 342 to improve precission.
2572 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
2574 * clutter/clutter-main.c:
2575 (clutter_set_motion_events_frequency): Never allow the motion
2576 events devlivery frequency to exceed the default frame rate.
2578 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
2580 * clutter/json/json-parser.[ch]: Use gssize, size we allow -1
2581 as a length (meaning "use the whole string").
2583 (json_parser_load_from_data): Use the passed length instead of
2584 using strlen() all the time.
2586 * clutter/clutter-script.[ch]: Ditto as above.
2588 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
2590 * clutter/pango/pangoclutter-render.c: Hush a compiler warning
2591 by removing a unused variable.
2593 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
2595 * clutter/clutter-label.c (clutter_label_ensure_layout): If the
2596 label has a requested size, force it when ensuring the layout.
2598 2007-12-06 Emmanuele Bassi <ebassi@openedhand.com>
2600 * tests/test-unproject.c: Fix type comparison.
2602 * tests/test-score.c: Save the returned ids.
2604 2007-12-05 Matthew Allum <mallum@openedhand.com>
2606 reviewed by: <delete if not using a buddy>
2608 * clutter/pango/pangoclutter-render.c: (tc_get), (free_glyph_info),
2609 (draw_glyph), (draw_trapezoid), (pango_clutter_render_layout),
2610 (pango_clutter_render_layout_line),
2611 (pango_clutter_render_clear_caches), (prepare_run), (draw_begin):
2613 2007-12-05 Emmanuele Bassi <ebassi@openedhand.com>
2615 * clutter/clutter-score.h: Rearrange declarations.
2617 * clutter/clutter-score.c: More documentation in the long
2618 description of the ClutterScore section.
2620 * clutter/clutter-debug.h:
2621 * clutter/clutter-main.c: Add the CLUTTER_DEBUG_SHADER flag,
2622 for debugging the shader calls.
2624 * clutter/clutter-feature.h: Fix the documentation of the
2627 * clutter/Makefile.am: Remove trailing whitespace.
2629 2007-12-05 Tomas Frydrych <tf@openedhand.com>
2631 * clutter/clutter-actor.c:
2632 * clutter/clutter-actor.h:
2633 * tests/Makefile.am:
2634 * tests/test-unproject:
2635 (clutter_actor_transform_stage_point):
2636 Added new function for translating stage coordinates into local
2639 2007-12-04 Emmanuele Bassi <ebassi@openedhand.com>
2641 * clutter/clutter-score.c: Better document ClutterScore
2644 2007-12-04 Emmanuele Bassi <ebassi@openedhand.com>
2646 * clutter/clutter-score.[ch]: Reimplement ClutterScore using
2647 a N-ary tree to store the timelines. Remove clutter_score_add():
2648 the same functionality can be achieved by passing a NULL
2649 parent to clutter_score_append().
2651 * tests/test-score.c: Update ClutterScore test unit, and add
2654 2007-12-04 Øyvind Kolås <pippin@o-hand.com>
2656 * clutter/clutter-shader.c: (bind_glsl_shader): use gchar instead of
2659 2007-12-03 Øyvind Kolås <pippin@o-hand.com>
2661 * clutter/clutter-shader.[ch]: do not include GL.h.
2663 2007-12-03 Øyvind Kolås <pippin@o-hand.com>
2665 Support for shaders in clutter. At the moment limited to drivers
2666 providing GLSL support.
2668 * clutter/cogl/cogl.h: added rather direct binding of needed for glsl
2670 * clutter/cogl/gl/cogl-defines.h.in:
2671 * clutter/cogl/gl/cogl.c:
2672 * clutter/cogl/gles/cogl-defines.h: added stubs.
2673 * clutter/cogl/gles/cogl.c: added stubs.
2675 * clutter/glx/clutter-stage-glx.c:
2676 (clutter_stage_glx_realize): unrelated memory management sanity fix.
2677 (clutter_stage_glx_unrealize): unbind all shaders on stage unrealize.
2679 * clutter/Makefile.am: added clutter-shader.[ch]
2680 * clutter/clutter-actor.[ch]: adding shader capability to
2682 * clutter/clutter-feature.h: added CLUTTER_FEATURE_SHADERS_GLSL
2683 * clutter/clutter-private.h: added stack of shaders to context.
2684 * clutter/clutter-shader.[ch]: new.
2686 * tests/Makefile.am: added shader test.
2687 * tests/test-shader.c: (frame_cb), (main): simple shader test,
2688 cycle through the inline shader with right/left mouse buttons.
2690 2007-12-03 Øyvind Kolås <pippin@o-hand.com>
2692 * clutter/glx/clutter-stage-glx.c: for extra sanity, set
2693 stage_x11->xvisinfo = NULL after XFree. Makes using the root window
2694 as foreign window possible.
2696 2007-11-30 Øyvind Kolås <pippin@o-hand.com>
2698 * clutter/clutter-timeline.c: (clutter_timeline_get_delta): return the
2699 number of milliseconds passed between new-frame events instead of
2700 since new-frame events, thus making sure that the sum of _get_delta's
2701 returned for all new-frame events is equal to total time elapsed.
2703 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
2705 * clutter/clutter-actor.c (parse_units),
2706 (clutter_actor_parse_custom_node): Do not allow using percentages
2707 of the stage on the stage itself, as it makes little to no
2710 * clutter/clutter-script.c:
2711 (clutter_script_construct_object): Rearrange code.
2713 * tests/test-script.json: Do not set the size of the stage, to
2714 test for the stage size percentage.
2716 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
2718 * clutter/clutter-model.h: Complete the documentation of
2719 the ClutterModelClass structure members.
2721 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
2723 * clutter/clutter-timeline.h:
2724 * clutter/clutter-timeline.c
2725 (timeline_timeout_func),
2726 (clutter_timeline_get_delta): Add a function for retrieving
2727 the number of frames and the time (in milliseconds) elapsed
2728 since the last timeline ::new-frame signal. This can be useful
2729 for implementing a physics engine or just for knowing how if
2730 and how many frames have been skipped.
2732 2007-11-30 Emmanuele Bassi <ebassi@openedhand.com>
2734 * clutter/clutter-actor.c (parse_units),
2735 (clutter_actor_parse_custom_node),
2736 (clutter_scriptable_iface_init): Override the parsing code
2737 for the x, y, width and height properties of ClutterActor,
2738 to allow strings with modifiers when defining the position
2739 and/or the dimensions of an actor. Bare integers are assumed
2740 as pixels; floating point values in the [0, 1] interval are
2741 assumed as percentages; strings can have these modifiers:
2745 - pt - points (at the current resolution)
2746 - % - percentage of the stage
2748 * clutter/clutter-units.h: Fix the conversion macros
2750 * tests/test-script.json: Test the new values.
2752 2007-11-29 Emmanuele Bassi <ebassi@openedhand.com>
2754 * clutter/clutter-model.[ch]: Slight API change in the constructor
2755 functions for ClutterModel: clutter_model_new() now takes a list
2756 of GType/string pairs for both the column type and the column name.
2758 (clutter_model_set_n_columns),
2759 (clutter_model_set_names),
2760 (clutter_model_set_types): Subclasses of ClutterModel will be able
2761 to call clutter_model_set_types() and clutter_model_set_names() in
2762 any order, provided that they don't call each function more than
2765 * tests/test-model.c: Update the test case.
2767 2007-11-29 Tomas Frydrych <tf@openedhand.com>
2769 * clutter/clutter-actor.h:
2770 * clutter/clutter-actor.c:
2771 Converted depth and rotation offsets to ClutterUnit.
2773 (clutter_actor_set_depthu):
2774 (clutter_actor_get_depthu):
2775 Additional ClutterUnit API.
2777 (_clutter_actor_apply_modelview_transform):
2778 Use cogl_translatex() in place of cogl_translate().
2780 2007-11-29 Emmanuele Bassi <ebassi@openedhand.com>
2782 * *: Add svn:ignore property to every directory, so that
2783 svn status starts being useful.
2785 2007-11-29 Matthew Allum <mallum@openedhand.com>
2787 * clutter/clutter-main.c: (generate_enter_leave_events):
2788 Minor formatting tweak.
2790 Typo fix from Damien Lespiau (via mailing list)
2792 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
2794 Add more introspection capabilities to the base model class
2796 * clutter/clutter-model.h:
2797 * clutter/clutter-model.c:
2798 (clutter_model_finalize): Do no leak the column types array.
2800 (clutter_model_get_n_columns): Function for getting the number
2801 of columns inside a model.
2803 (clutter_model_set_names): Add API for setting the names of the
2806 (clutter_model_get_column_name),
2807 (_model_get_column_type): Add API for getting each column's name,
2808 and the default implementation for ClutterModel.
2810 (clutter_model_get_column_type),
2811 (_model_get_iter_at_row): Add API for getting each column's type,
2812 and the default implementation for ClutterModel.
2814 * clutter.symbols: Add ClutterModel and ClutterModelIter symbols,
2815 and keep the symbols file sorted.
2817 2007-11-28 Tomas Frydrych <tf@openedhand.com>
2819 * clutter/clutter-actor.c:
2820 * clutter/clutter-actor.h:
2821 (clutter_actor_set_positionu):
2822 (clutter_actor_set_sizeu):
2823 (clutter_actor_get_widthu):
2824 (clutter_actor_get_heightu):
2825 (clutter_actor_set_widthu):
2826 (clutter_actor_set_heightu):
2827 (clutter_actor_get_xu):
2828 (clutter_actor_get_yu):
2829 (clutter_actor_set_xu):
2830 (clutter_actor_set_yu):
2831 Expanded ClutterActor API with new ClutterUnit-base functions.
2833 * clutter/clutter-stage.c:
2834 * clutter/clutter-stage.h:
2835 (clutter_stage_get_resolution):
2836 (clutter_stage_get_resolutionx):
2837 New function to query stage resolution (floating and fixed point
2840 * clutter/clutter-units.h:
2841 (CLUTTER_UNITS_FROM_STAGE_WIDTH_PERCENTAGE):
2842 (CLUTTER_UNITS_FROM_STAGE_HEIGHT_PERCENTAGE):
2843 (CLUTTER_UNITS_FROM_PARENT_WIDTH_PERCENTAGE):
2844 (CLUTTER_UNITS_FROM_PARENT_HEIGHT_PERCENTAGE):
2845 (CLUTTER_UNITS_FROM_MM):
2846 (CLUTTER_UNITS_FROM_MMX):
2847 (CLUTTER_UNITS_FROM_POINTS):
2848 (CLUTTER_UNITS_FROM_POINTSX):
2849 New macros for conversions to ClutterUnits.
2853 ClutterActor anchor_point functions,
2854 clutter_stage_get_resolution functions.
2857 clutter_actor_scale_with_gravity functions.
2859 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
2861 * clutter/clutter-actor.[ch]: Documentation fixes.
2863 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
2865 Remove the layout containers: they will be moved to a
2868 * clutter/clutter.h:
2869 * clutter/Makefile.am: Remove layout and boxes from the
2872 * clutter/clutter-layout.[ch]: Remove the ClutterLayout
2875 * clutter/clutter-box.[ch]:
2876 * clutter/clutter-hbox.[ch]:
2877 * clutter/clutter-vbox.[ch]: Remove ClutterBox and its
2880 * clutter/clutter-label.c: Remove ClutterLayout implementation
2882 * clutter/clutter-script-private.h:
2883 * clutter/clutter-script-parser.c:
2884 * clutter/clutter-script.c:
2885 (clutter_script_parse_node): Remove special parsing for
2886 ClutterMargin and ClutterPadding.
2888 * clutter/clutter-types.h: Remove ClutterPadding and ClutterMargin.
2890 * tests/Makefile.am:
2891 * tests/test-boxes.c: Remove the boxes test case.
2893 2007-11-28 Tomas Frydrych <tf@openedhand.com>
2896 Started 0.6.0 section with comment on actor anchor point.
2898 * clutter/clutter/clutter-actor.c:
2899 * clutter/clutter/clutter-actor.h:
2900 * clutter/clutter/clutter-behaviour-scale.c:
2901 * clutter/clutter/clutter-deprecated.h:
2902 (clutter_actor_set_anchor_point):
2903 (clutter_actor_set_anchor_pointu):
2904 (clutter_actor_get_anchor_point):
2905 (clutter_actor_get_anchor_pointu):
2906 (clutter_actor_set_anchor_point_from_gravity):
2907 New anchor point API deprecating old gravity scaling, added
2908 comments on modelview matrix construction to ClutterActor
2911 (clutter_actor_set_scale_with_gravity):
2912 (clutter_actor_set_scale_with_gravityx):
2913 Deprecated; use clutter_actor_set_anchor_point_from_gravity() instead.
2915 2007-11-28 Emmanuele Bassi <ebassi@openedhand.com>
2917 * clutter/clutter-effect.[ch]: Add clutter_effect_template_construct()
2918 function, for language bindings that need to set the alpha function
2919 but cannot call the clutter_effect_template_new() ctor themselves.
2921 2007-11-27 Tomas Frydrych <tf@openedhand.com>
2923 * clutter/clutter-behaviour-ellipse.c:
2924 * clutter/clutter-behaviour-ellipse.h:
2925 (clutter_behaviour_ellipse_get_angle_startx):
2926 (clutter_behaviour_ellipse_set_angle_startx):
2927 (clutter_behaviour_ellipse_get_angle_endx):
2928 (clutter_behaviour_ellipse_set_angle_endx):
2929 (clutter_behaviour_ellipse_get_angle_tiltx):
2930 (clutter_behaviour_ellipse_set_angle_tiltx):
2931 Changed to take and return angles in degrees represented as
2934 2007-11-27 Emmanuele Bassi <ebassi@openedhand.com>
2936 * clutter/clutter-actor.c (clutter_actor_destroy): Remove the
2937 reference we hold on the actor, as it was preventing the finalization
2938 of every child on the stage.
2940 2007-11-26 Emmanuele Bassi <ebassi@openedhand.com>
2942 * clutter/x11/clutter-stage-x11.c:
2943 (clutter_stage_x11_set_cursor_visible): Restore the XFixes usage,
2944 as it now seems to be have been fixed.
2946 2007-11-26 Emmanuele Bassi <ebassi@openedhand.com>
2948 * clutter/clutter-actor.c:
2949 (clutter_actor_real_show),
2950 (clutter_actor_real_hide): Do not set the MAPPED flag on the actor
2951 if it is a top-level one (like ClutterStage); the backends are
2952 responsible for setting that flag, as it might be the result of an
2953 asynchronous operation (e.g. on X11).
2955 * clutter/eglnative/clutter-stage-egl.c:
2956 (clutter_stage_egl_show),
2957 (clutter_stage_egl_hide): Set/unset the CLUTTER_ACTOR_MAPPED flag
2958 on show and hide respectively.
2960 * clutter/osx/clutter-stage-osx.c:
2961 (clutter_stage_osx_show),
2962 (clutter_stage_osx_hide): Ditto as above.
2964 * clutter/sdl/clutter-stage-sdl.c:
2965 (clutter_stage_sdl_show),
2966 (clutter_stage_sdl_hide): Ditto as above, plus chain up to the
2967 parent class show/hide virtual functions.
2969 * clutter/x11/clutter-event-x11.c (event_translate): Use the MapNotify
2970 and UnmapNotify events to call the X11 stage map/unmap functions.
2972 * clutter/x11/clutter-stage-x11.[ch]:
2973 (clutter_stage_x11_set_fullscreen): Set the fullscreen_on_map flag
2974 with the fullscreen value.
2976 (clutter_stage_x11_map), (clutter_stage_x11_unmap): Set the MAPPED
2977 flag on the stage actor and redraw; also, if the fullscreen_on_map
2978 flag was set, call clutter_stage_fullscreen() as well. (#648)
2980 * tests/Makefile.am:
2981 * tests/test-fullscreen.c: Add a fullscreen test case for checking
2982 whether fullscreen works on every backend/platform.
2984 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
2986 * clutter/clutter-actor.c:
2987 (clutter_actor_real_request_coords),
2988 (clutter_actor_request_coords),
2989 (clutter_actor_class_init): Provide a default ::request_coords()
2990 implementation in ClutterActor and use it to store the bounding
2991 box passed to clutter_actor_request_coords(). This makes the code
2992 more reliable and clean, and avoids a call to the subclass
2993 request_coords() method if the bounding box did not change. Now,
2994 every class overriding ClutterActor::request_coords() *must* chain
2995 up to the parent class method or the bounding box will not be
2996 saved inside the ClutterActor structure.
2998 * clutter/clutter-entry.c:
2999 * clutter/clutter-group.c:
3000 * clutter/clutter-hbox.c:
3001 * clutter/clutter-label.c:
3002 * clutter/clutter-texture.c:
3003 * clutter/clutter-vbox.c: Chain up to the parent class
3004 request_coords() method.
3006 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
3008 * clutter/clutter-event.h: Add more documentation.
3010 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
3012 * tests/test-event.c: Back out an accidental commit.
3014 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
3016 * clutter/clutter-actor.c:
3017 * clutter/clutter-alpha.c:
3018 * clutter/clutter-effect.c:
3019 * clutter/clutter-event.c:
3020 * clutter/clutter-event.h:
3021 * clutter/clutter-group.h:
3022 * clutter/clutter-model.c:,
3023 * clutter/clutter-script.c:
3024 * clutter/clutter-scriptable.h:
3025 * clutter/clutter-stage.c: Documentation fixes.
3027 * clutter/clutter-score.c: Fix implementation.
3029 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
3031 * clutter/x11/clutter-stage-x11.c: Chain up the hide and show
3032 to the parent's implementation.
3034 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
3036 * clutter/clutter-effect.[ch]: Update the effects API to remove
3037 the start value for most of them.
3039 (clutter_effect_move): Make it a simple "move from current
3040 position to new coordinates" effect.
3042 (clutter_effect_path): Rename from clutter_effect_move().
3044 (clutter_effect_rotate): Sync up with the new actor rotation API.
3046 * tests/test-effects.c: Regression test for the effects.
3048 * tests/Makefile.am: Build glue for test-effects
3050 * tests/test-behave.c: Emulate a full ramp by using a looping
3051 timeline changing its direction when reaching the last frame.
3053 2007-11-23 Emmanuele Bassi <ebassi@openedhand.com>
3055 * clutter/clutter-actor.c (clutter_actor_destroy): Bail out
3056 if clutter_actor_destroy() was called on the stage: the stage
3057 is not for the user to destroy.
3059 * clutter/x11/clutter-backend-x11.c:
3060 * clutter/eglnative/clutter-backend-egl.c:
3061 * clutter/sdl/clutter-backend-sdl.c:
3062 * clutter/osx/clutter-backend-osx.c: Unset the top-level private
3063 flag on the stage when disposing it, so the backends can safely
3064 call clutter_actor_destroy().
3066 * clutter/clutter-private.h: Tweak the private flags accessors,
3067 to avoid the typecheck.
3069 2007-11-22 Emmanuele Bassi <ebassi@openedhand.com>
3071 * clutter/clutter-label.c (clutter_label_new_full): Set the
3072 terminating NULL which was removed when applying patch for
3073 fixing #606. (#645, Gwenole Beauchesne)
3075 2007-11-22 Øyvind Kolås <pippin@o-hand.com>
3077 * clutter/clutter-actor.c: mended a couple of typos in documentation.
3079 2007-11-21 Matthew Allum <mallum@openedhand.com>
3081 * clutter/cogl/gles/cogl.c: (cogl_fog_set):
3082 Minor fixes for fog on GLES.
3084 2007-11-21 Emmanuele Bassi <ebassi@openedhand.com>
3086 * clutter/cogl/cogl.h: Add cogl_fog_set() abstracting the
3087 glFog() functions and enabling the GL_FOG flag.
3089 * clutter/cogl/gl/cogl.c: Add GL implementation of cogl_fog_set().
3091 * clutter/cogl/gles/cogl.c: Add GL/ES implementation of
3094 * clutter.symbols: Add new symbols.
3096 * clutter/clutter-stage.h: Add API to enable depth cueing on
3097 the stage using a linear GL fog, and to set the parameters
3100 * clutter/clutter-stage.c (clutter_stage_paint): Enable the
3101 GL fog if the ClutterStage:use-fog property is true.
3103 * tests/test-depth.c: Test the new stage API.
3105 2007-11-20 Øyvind Kolås <pippin@o-hand.com>
3107 * clutter/clutter-main.c: (event_click_count_generate): generalized
3108 click_count generation code.
3109 * tests/test-events.c: (input_cb): extended test to report click_count
3110 for release and scroll events as well as press events.
3112 2007-11-20 Øyvind Kolås <pippin@o-hand.com>
3114 * clutter/clutter-main.c: (clutter_do_event): avoid computing source
3115 of events if it is already set (for synthetic events.)
3116 * clutter/clutter-event.c: Add more information to the documentation
3117 of clutter_event_put.
3119 2007-11-20 Emmanuele Bassi <ebassi@openedhand.com>
3121 * README: Add diff example command lines for submitting patches.
3123 2007-11-20 Emmanuele Bassi <ebassi@openedhand.com>
3125 * clutter/clutter-actor.c::
3126 * clutter/clutter-behaviour-opacity.c:
3127 * clutter/clutter-clone-texture.c:
3128 * clutter/clutter-effect.c:
3129 * clutter/clutter-label.c: Remove the usage of G_PARAM_CONSTRUCT
3130 without an override for the ::construct virtual function; using
3131 G_PARAM_CONSTRUCT to set the default value of a property is not
3132 the recommended approach; default values are set inside the
3133 instance init function.
3135 2007-11-20 Emmanuele Bassi <ebassi@openedhand.com>
3137 * clutter/clutter-texture.c (clutter_texture_init): Set filter-quality
3138 value to 1, to fix the regression caused when applying the patch for
3141 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
3143 * clutter/clutter-label.[ch]: Fix ClutterLabel size allocation when
3144 no bounding box has been provided, and store the box set by the
3145 user so that it can be reused when recomputing the layout. (#600)
3147 (clutter_label_class_init),
3148 (clutter_label_init): Set the :wrap property default to FALSE.
3150 * clutter/clutter-units.h: Add ClutterUnit-to-PangoUnit conversion
3153 * tests/test-rotate.c: Fix string.
3155 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
3157 * clutter/clutter-behaviour-bspline.c:
3158 * clutter/clutter-behaviour-depth.c:
3159 * clutter/clutter-behaviour-ellipse.c:
3160 * clutter/clutter-behaviour-opacity.c:
3161 * clutter/clutter-behaviour-path.c:
3162 * clutter/clutter-behaviour-rotate.c:
3163 * clutter/clutter-behaviour-scale.c: Fix gtk-doc short description.
3165 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
3167 * clutter.symbols: Update
3169 * clutter/clutter-actor.h: Rename the angle argument for
3170 set_rotationx() to avoid gtk-doc complaining
3172 * clutter/clutter-main.h:
3173 * clutter/clutter-main.c:
3174 (clutter_set_motion_events_enabled): Rename for consistency
3176 (clutter_get_motion_events_frequency),
3177 (clutter_set_motion_events_frequency): Add accessors for the default
3178 motion events deliver frequency.
3180 (clutter_do_event): Throttle down motion events delivery using the
3181 motion events frequency setting, to avoid excessive redraws. (#608)
3183 (clutter_context_get_default): Enable per-actor motion events, at
3186 * tests/test-events.c (red_button_cb):
3187 * tests/test-grab.c (green_press_cb): Update.
3189 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
3191 * clutter/clutter-timeline.c (timeline_timeout_func): Do not emit the
3192 ::new-frame signal twice for the last frame. (#531)
3194 2007-11-19 Øyvind Kolås <pippin@o-hand.com>
3196 * clutter/clutter-actor.[ch]: (clutter_actor_set_rotationx),
3197 (clutter_actor_set_rotation): swapped axis and angle around,
3198 the new argument order is: (axis, angle, x, y, z). Also removed
3199 deprecated rotation functions from header.
3201 Updated use of clutter_actor_set_rotation? in the following files:
3203 * clutter/clutter-behaviour-rotate.c:
3204 * clutter/clutter-effect.c:
3205 * tests/test-actors.c:
3206 * tests/test-project.c:
3208 2007-11-19 Emmanuele Bassi <ebassi@openedhand.com>
3210 * clutter/clutter-label.[ch]: Constify the color argument
3211 for the ClutterLabel ctor. (#604)
3213 2007-11-18 Matthew Allum <mallum@openedhand.com>
3215 * clutter/clutter-actor.c:
3216 * clutter/clutter-actor.h:
3217 * clutter/clutter-group.c:
3218 * clutter/clutter-main.c:
3219 * clutter/clutter-stage.c:
3220 * tests/test-events.c:
3221 Parent Actors no longer need to be set reactive for reactive
3222 children to get events. Also makes groups now pickable.
3225 * clutter/clutter-texture.c:
3226 Handle case when 1x1 tiled texture is created,
3227 falling 'back' to being non tiled. (#596)
3229 * clutter/eglx/clutter-backend-egl.c:
3230 Call EglTerminate on backend shutdown.
3232 2007-11-18 Emmanuele Bassi <ebassi@openedhand.com>
3234 * clutter.pc.in: Bump up glib-2.0 dependency.
3236 2007-11-18 Emmanuele Bassi <ebassi@openedhand.com>
3238 * clutter/clutter-model.c: Add gtk-doc section for
3241 * clutter/clutter-script.h: Fix argument name.
3243 * clutter/x11/clutter-x11.h:
3244 * clutter/x11/clutter-event-x11.c:
3245 * clutter/x11/clutter-backend-x11.c: Document functions and
3248 2007-11-18 Emmanuele Bassi <ebassi@openedhand.com>
3250 * clutter.symbols: Update exported symbols.
3252 * clutter/clutter-actor.[ch]: Remove clutter_actor_rotate_*
3253 and clutter_actor_get_rx* and provide a simpler rotation API:
3254 clutter_actor_set_rotation() and clutter_actor_get_rotation().
3256 * clutter/clutter-deprecated.h: Deprecate the old rotation API.
3258 * clutter/clutter-behaviour-bspline.c:
3259 * clutter/clutter-behaviour-rotate.c:
3260 * clutter/clutter-effect.c: Update internal usage of the
3263 * tests/test-project.c: Ditto as above.
3265 2007-11-17 Emmanuele Bassi <ebassi@openedhand.com>
3267 Optimise Atoms usage in the X11 and X11-based backends.
3269 * clutter/x11/clutter-backend-x11.c:
3270 (clutter_backend_x11_post_parse): Call XInternAtoms() here and
3271 get all the atoms from X in one call.
3273 * clutter/x11/clutter-backend-x11.h: Store all the atoms inside
3274 the ClutterBackendX11 structure.
3276 * clutter/x11/clutter-event-x11.c:
3277 (xembed_send_message), (xembed_set_info),
3278 (_clutter_backend_x11_events_init),
3279 (set_user_time), (handle_wm_protocols_event),
3280 (handle_xembed_event), (event_translate): Do not cache atoms
3281 or call XInternAtom() directly, and use the atoms off the X11
3282 backend structure instead.
3284 * clutter/x11/clutter-stage-x11.c:
3285 (send_wmspec_change_state), (clutter_stage_x11_set_wm_protocols),
3286 (clutter_stage_x11_set_fullscreen),
3287 (clutter_stage_x11_set_title): Ditto as above.
3289 * clutter/x11/clutter-stage-x11.h: Update the set_wm_protocols()
3290 method to take the X11 stage implementation.
3292 * clutter/glx/clutter-stage-glx.c:
3293 (clutter_stage_glx_realize): Update for the set_wm_protocols()
3296 * tests/test-project.c: (main): Test clutter_stage_set_title().
3298 2007-11-17 Emmanuele Bassi <ebassi@openedhand.com>
3300 * configure.ac: Depend on GLib >= 2.14 because of ClutterModel
3303 2007-11-16 Øyvind Kolås <pippin@o-hand.com>
3305 * clutter/clutter-main.c: (emit_event): renamed from deliver_event,
3306 (emit_pointer_event): utility function to emit pointer event signals
3307 (which takes pointer grab into account).
3308 (emit_keyboard_event): utility function to emit keyboard event signals
3309 (which takes keyboard grab into account).
3310 (clutter_do_event): use the above utility functions, also reindented
3313 2007-11-16 Øyvind Kolås <pippin@o-hand.com>
3315 * tests/test-grab.c: (main): fix use of clutter_actor_set_reactive
3317 2007-11-15 Øyvind Kolås <pippin@o-hand.com>
3319 * clutter/clutter-main.[ch]: added clutter_grab_keyboard,
3320 clutter_ungrab_keyboard and clutter_get_keyboard_grab, in
3321 clutter_do_event deliver keyboard related events only to the
3322 actor with the keyboard grab if a grab exists.
3323 * clutter/clutter-private.h: added keyboard_grab_actor to context.
3324 * tests/test-grab.c: added testing for testing the keyboard grab.
3326 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
3328 * clutter/clutter-texture.c:
3329 (clutter_texture_request_coords), (clutter_texture_class_init),
3330 (clutter_texture_init): Unset :sync-size if explicitly setting
3331 the texture size. (#616)
3333 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
3335 * clutter/clutter-actor.[ch]: Massive API clean-ups. Initial
3336 fixes for bugs #614 and #628.
3338 * clutter/clutter-main.c:
3339 * clutter/clutter-stage.c: Update internal usage of the actor
3342 * tests/test-events.c: Update test suite.
3344 2007-11-15 Øyvind Kolås <pippin@o-hand.com>
3346 * clutter/clutter-main.c: (generate_enter_leave_events),
3347 (clutter_do_event): moved the generation of enter/leave events
3348 to a utility function.
3350 2007-11-15 Neil J. Patel <njp@o-hand.com>
3352 * clutter/clutter-model.c:
3353 Added some more examples to the documentation, plus explained how the
3354 iters work internally.
3356 2007-11-15 Øyvind Kolås <pippin@o-hand.com>
3358 * clutter/clutter-main.[ch]: added clutter_grab_pointer,
3359 clutter_ungrab_pointer and clutter_get_pointer_grab, in
3360 clutter_do_event deliver pointer related events only to the
3361 actor with the pointer grab if a grab exists.
3362 * clutter/clutter-private.h: added pointer_grab_actor to context.
3363 * tests/Makefile.am:
3364 * tests/test-grab.c: added test for testing the pointer grab.
3366 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
3368 * clutter/clutter-timeline.[ch]: Add ClutterTimeline:direction
3369 property, defining the direction (forward or backward) of the
3372 * tests/test-timeline.c: Test the direction property.
3374 * clutter.symbols: Update exported symbols
3376 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
3378 * clutter/clutter-effect.h:
3379 * clutter/clutter-effect.c:
3380 (clutter_effect_template_new_for_duration): Add a simple constructor
3381 for implicitly creating a ClutterTimeline with a given duration.
3383 2007-11-15 Emmanuele Bassi <ebassi@openedhand.com>
3385 * clutter.symbols: Update with the new public symbols
3387 * clutter/clutter-script.h:
3388 * clutter/clutter-script-private.h:
3389 * clutter/clutter-script.c:
3390 (parse_signals), (json_object_end),
3391 (signal_info_free), (object_info_free): Parse the "signals"
3392 member for GObjects.
3394 (clutter_script_connect_signals),
3395 (clutter_script_connect_signals_full): Add new API for autoconnecting
3396 signal handlers using the UI definition files.
3398 * tests/test-script.c:
3399 * tests/test-script.json: Test signal autoconnection.
3401 2007-11-15 Matthew Allum <mallum@openedhand.com>
3403 * clutter/Makefile.am:
3404 * clutter/eglx/Makefile.am:
3405 * clutter/eglx/clutter-backend-egl.c:
3406 * clutter/eglx/clutter-backend-egl.h:
3407 * clutter/eglx/clutter-eglx.h:
3408 * clutter/eglx/clutter-event-egl.c:
3409 * clutter/eglx/clutter-stage-egl.c:
3410 * clutter/eglx/clutter-stage-egl.h:
3411 * clutter/glx/Makefile.am:
3412 * clutter/glx/clutter-backend-glx.c:
3413 * clutter/glx/clutter-backend-glx.h:
3414 * clutter/glx/clutter-event-glx.c:
3415 * clutter/glx/clutter-glx.h:
3416 * clutter/glx/clutter-stage-glx.c:
3417 * clutter/glx/clutter-stage-glx.h:
3418 * clutter/x11/Makefile.am:
3419 * clutter/x11/clutter-backend-x11-private.h:
3420 * clutter/x11/clutter-backend-x11.c:
3421 * clutter/x11/clutter-backend-x11.h:
3422 * clutter/x11/clutter-event-x11.c:
3423 * clutter/x11/clutter-stage-x11.c:
3424 * clutter/x11/clutter-stage-x11.h:
3425 * clutter/x11/clutter-x11.h:
3426 Create a new X11 backend class of which EGL and GLX 'real' backends
3427 then subclass. Effectively shares all X11 code between both backends
3428 avoids code duplication and brings many missing features to EGL X
3429 backend. Requires some cleanup and testing. (#518)
3431 * clutter/cogl/gles/cogl.c: (cogl_color):
3432 Add define to use color4ub only if configure finds it.
3433 If not fall back to old code.
3436 Drop support for vincent checks.
3438 Specifically check for color4ub call.
3440 2007-11-15 Neil J. Patel <njp@o-hand.com>
3442 * clutter/Makefile.am:
3443 * clutter/clutter-model.c:
3444 * clutter/clutter-model.h:
3445 * clutter/clutter.h:
3446 * tests/Makefile.am:
3447 * tests/test-model.c:
3448 Merged ClutterModel, which closes #443.
3450 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
3452 * clutter/clutter-clone-texture.c (set_parent_texture): Hide the
3453 clone texture only if it was visible, and show it again if we
3454 are adding a visible texture.
3456 * tests/test-script.json: Test the CloneTexture actor.
3458 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
3460 * clutter/clutter-actor.[ch]: Rename clutter_actor_get_id() to
3461 clutter_actor_get_gid().
3463 (clutter_actor_set_parent): Use GUINT_TO_POINTER().
3465 * clutter/clutter-deprecated.h: Add a replacement warning for
3466 clutter_actor_get_id().
3468 * clutter/clutter-texture.c (texture_upload_data): Use
3469 clutter_actor_get_gid(), and don't leak the filename string.
3471 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
3473 * clutter/clutter-scriptable.[ch]: Rename ::set_name and ::get_name
3474 to ::set_id and ::get_id, to avoid potential confusion with the
3475 ClutterActor:name property.
3477 * clutter/clutter-script.h:
3478 * clutter/clutter-script.c (clutter_script_construct_object): Use
3479 clutter_scriptable_set_id().
3481 (clutter_get_script_id): Add a public function to retrieve the ID
3482 used in the UI definition files from an object.
3484 * clutter/clutter-actor.c: Do not set the name of the actor with
3485 the ID set in the UI definition files.
3487 * tests/test-script.c: Test clutter_get_script_id().
3489 * clutter.symbols: Update with the new symbols.
3491 2007-11-14 Emmanuele Bassi <ebassi@openedhand.com>
3493 * clutter/cutter-deprecated.h: Don't let everyone know from where
3494 we have stolen^Wtaken inspiration for the deprecation warnings.
3496 2007-11-13 Øyvind Kolås <pippin@o-hand.com>
3498 * clutter/clutter-behaviour-bspline.[ch]:
3499 Replaced clutter_behaviour_bspline_append with
3500 clutter_behaviour_bspline_append_knots. Fixes bug #582.
3501 * clutter/clutter-deprecated.h: added deprecation macro reflecting the
3504 2007-11-13 Øyvind Kolås <pippin@o-hand.com>
3506 * clutter/Makefile.am:
3507 * clutter/clutter.h: include clutter-deprecated.h
3508 * clutter/clutter-deprecated.h: added file containing macros that
3509 provides more meaningful errors when compiling clutter using code that
3510 uses deprecated functions.
3512 2007-11-13 Øyvind Kolås <pippin@o-hand.com>
3514 Renamed all properties of behaviours (and related
3515 functions/variables/parameters)
3516 to match the pattern something-start, something-end. Fixes bug #577.
3518 * clutter/clutter-behaviour-depth.c:
3519 * clutter/clutter-behaviour-depth.h:
3520 * clutter/clutter-behaviour-ellipse.c:
3521 * clutter/clutter-behaviour-ellipse.h:
3522 * clutter/clutter-behaviour-path.c:
3523 * clutter/clutter-behaviour-rotate.c:
3524 * clutter/clutter-behaviour-rotate.h:
3525 * clutter/clutter-behaviour-scale.c:
3526 * clutter/clutter-behaviour-scale.h:
3527 * clutter/clutter-effect.c:
3528 * clutter/clutter-effect.h:
3529 * clutter/clutter-script.c:
3530 * tests/test-depth.c:
3531 * tests/test-script.c:
3533 2007-11-06 Øyvind Kolås <pippin@o-hand.com>
3535 * clutter/clutter-event.h: made ClutterEventAny have a source field,
3536 rearanged other structs to have source in the same position.
3537 * clutter/clutter-event.c: (clutter_event_get_source): modified to use
3539 (clutter_event_free): removed unused variable.
3540 * clutter/clutter-main.c: (deliver_event), (clutter_do_event): reduced
3541 amount of code. As well as deliver button-release events to the stage.
3543 2007-11-08 Rob Bradford <rob@openedhand.com>
3545 * clutter/glx/clutter-glx.h:
3546 Include <X11/Xutil.h> needed for the definition of XVisualInfo.
3548 2007-11-08 Rob Bradford <rob@openedhand.com>
3550 * clutter/cogl/gles/cogl.c: (cogl_color):
3551 Switch over to using glColor4ub in the GLES backend. It's available in
3552 the header file but missing in the reference manual.
3554 2007-11-07 Emmanuele Bassi <ebassi@openedhand.com>
3556 * clutter/clutter-actor.[ch]: Fix the declaration of the
3557 class handlers for the ::captured-event, ::enter-event and
3558 ::leave-event signals; the function signatures were missing
3559 the return value the signals marshallers were expecting, and
3560 their names weren't respecting the convention for event-related
3563 2007-11-06 Tomas Frydrych <tf@o-hand.com>
3565 * clutter/clutter-fixed.h:
3566 Added CLUTTER_SQRTI_ARG_MAX, CLUTTER_SQRTI_5_PERCENT,
3567 CLUTTER_SQRTI_10_PERCENT expressing clutter_sqrti limits.
3568 Stripped trailing whitespace.
3570 * clutter/clutter-fixed.c:
3572 Updated documentation, stripped trailing whitespace.
3574 * clutter/clutter-behaviour-path.c:
3576 Use clib sqrt if clutter_sqrti() precission would be worse than
3578 Stripped trailing whitespace.
3580 2007-11-06 Emmanuele Bassi <ebassi@openedhand.com>
3582 * clutter/clutter-layout.h: Add commodity macros to test for
3583 a specific layout flag in one line.
3585 2007-11-06 Emmanuele Bassi <ebassi@openedhand.com>
3587 * clutter/clutter-box.c (clutter_box_dispose): Call unparent()
3588 on the children, instead of destroy(), to avoid a double free
3589 and a crash when destroying a ClutterBox.
3591 2007-11-06 Emmanuele Bassi <ebassi@openedhand.com>
3593 * clutter/clutter-label.c: Break the references in ::dispose,
3594 and free the resources in ::finalize.
3596 2007-11-05 Øyvind Kolås <pippin@o-hand.com>
3598 * clutter/clutter-container.[ch]: removed find_child_by_id method
3599 from interface (and all implementations of it) since this
3600 functionality is now implemented using a global hash.
3601 * clutter/clutter-box.c:
3602 * clutter/clutter-group.c:
3604 2007-11-01 Emmanuele Bassi <ebassi@openedhand.com>
3606 * clutter/clutter-script.c: Do not keep ownership of the
3609 2007-10-31 Øyvind Kolås <pippin@o-hand.com>
3611 * clutter/clutter-main.c: (_clutter_do_pick): disable dithering
3612 when painting in pick mode.
3614 2007-10-31 Matthew Allum <mallum@openedhand.com>
3616 * clutter/clutter-score.c:
3617 Various minor improvements to ClutterScore.
3619 2007-10-30 Emmanuele Bassi <ebassi@openedhand.com>
3621 * clutter/clutter-layout.c: Fix documentation, with regards to
3622 the containers handling of the children implementing the
3623 ClutterLayout interface.
3625 2007-10-29 Emmanuele Bassi <ebassi@openedhand.com>
3628 * clutter/cogl/gl/cogl-defines.h.in: The OS X backend has a funny
3629 OpenGL header location, so it basically did break every application
3630 including clutter/cogl.h because the GL header inclusion depended
3631 on symbols defined into Clutter's config.h. Now, we define the
3632 GL header into the configure template and use it to create the
3633 cogl-defines.h file cogl.h includes.
3635 2007-10-29 Emmanuele Bassi <ebassi@openedhand.com>
3637 * clutter/json/json-parser.c: Enable parsing of negative numbers;
3638 GScanner splits negative numbers into two tokens, so we need to
3641 2007-10-29 Emmanuele Bassi <ebassi@openedhand.com>
3643 * clutter/clutter-script.c: Add the :filename and :filename-set
3644 properties, to retrieve the path of the currently parsed file (if
3645 :filename-set is TRUE) from the ClutterScriptable implementations.
3647 2007-10-28 Matthew Allum <mallum@openedhand.com>
3649 * clutter/clutter-effect.c:
3650 Small doc fix (#584)
3652 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
3654 * clutter/json/json-parser.c:
3655 (json_scanner_msg_handler): Set the GError to be returned by
3656 the parsing functions into the GScanner error message handler.
3658 (json_parser_object): Return the symbol token in case we have
3659 a parse error after the member name.
3661 (json_parser_load_from_data): Propagate the error set in the
3662 message handler, if any.
3664 * clutter/json/json-node.c (json_node_free): Unref the objects
3665 only if are set, to avoid a couple of needless criticals we
3668 * tests/test-script.json: More properties.
3670 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
3672 * clutter/clutter-script.[ch]: Slight API change in the
3673 clutter_script_get_objects() function: now it takes
3674 object name/object return location pairs and returns the
3675 number of objects found and returned.
3677 * tests/test-script.c: Exercise the clutter_script_get_objects()
3680 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
3682 * clutter/clutter-rectangle.c (clutter_rectangle_paint): Use
3683 CGL_ENABLE_BLEND flag instead of CGL_BLEND value. (#580,
3686 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
3688 * clutter/clutter-color.c (clutter_color_to_string): Update the
3689 documentation for the format of the returned string, and remove
3690 the note: now clutter_color_parse() can parse the string this
3693 2007-10-27 Emmanuele Bassi <ebassi@openedhand.com>
3695 * clutter/pango/pangoclutter-render.c: Last usage of guint
3696 replaced with COGLuint. (Tommi Komulainen)
3698 2007-10-26 Matthew Allum <mallum@openedhand.com>
3700 * clutter/clutter-texture.c:
3701 * clutter/cogl/cogl.h:
3702 * clutter/cogl/gl/cogl-defines.h:
3703 * clutter/cogl/gles/cogl-defines.h:
3704 * clutter/cogl/gl/cogl.c:
3705 * clutter/cogl/gles/cogl.c:
3706 Switch from use of guint to COGLuint. Avoids problems when
3707 guint != GLuint on some platforms, i.e OSX.
3708 (Tommi Komulainen, #525, #523)
3710 * clutter/Makefile.am:
3711 * clutter/osx/Makefile.am:
3712 * clutter/osx/clutter-backend-osx.c:
3713 * clutter/osx/clutter-backend-osx.h:
3714 * clutter/osx/clutter-event-osx.c:
3715 * clutter/osx/clutter-osx.h:
3716 * clutter/osx/clutter-stage-osx.c:
3717 * clutter/osx/clutter-stage-osx.h:
3719 Add initial Cocoa/OSX Backend (by Tommi Komulainen, see #526)
3721 2007-10-26 Emmanuele Bassi <ebassi@openedhand.com>
3723 * clutter/clutter-entry.c: Add a :x-align property for aligning
3724 the text in the entry, in case the actor is wider than the
3727 2007-10-26 Emmanuele Bassi <ebassi@openedhand.com>
3729 * clutter/clutter-main.c: Add a --clutter-default-fps run-time
3730 switch and CLUTTER_DEFAULT_FPS environment variable support for
3731 setting the default frame-rate at run-time.
3733 2007-10-26 Emmanuele Bassi <ebassi@openedhand.com>
3735 * clutter/clutter-script.h:
3736 * clutter/clutter-script.c: Add a ::get_type_from_name() virtual
3737 function for bindings to override. The current implementation
3738 calls g_type_from_name() and our lazy class resolver.
3740 * clutter.symbols: Update.
3742 * doc/reference/clutter-sections.txt: Update.
3744 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
3746 * clutter/clutter-behaviour-path.c: Reverse the list of
3747 parsed knots, to preserve the real ordering after prepending
3748 them (thanks to Øyvind for spotting this).
3750 * clutter/clutter-behaviour-bspline.c: Ditto as above.
3752 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
3754 * clutter/clutter-script-parser.c: Unset the GValue when
3755 getting a ClutterUnit from a JSON node.
3757 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
3759 * clutter/clutter-behaviour-bspline.c: Implement the
3760 ClutterScriptableIface to parse the custom "knots" property.
3762 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
3764 * tests/test-script.c:
3765 * tests/test-script.json: Rejig the test case and add a
3766 path behaviour to test the knot parsing code.
3768 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
3770 * clutter/cogl/cogl.h: Do not include <clutter/clutter.h>.
3772 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
3774 * clutter/clutter-behaviour-path.c: Implement the
3775 ClutterScriptableIface to parse the custom "knots" property.
3777 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
3779 * clutter/clutter-texture.c (clutter_texture_set_property): Do
3780 not try to set NULL pixbufs.
3782 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
3784 * clutter/clutter-actor.c: Implement part of the ClutterScriptable
3785 interface, using the ClutterActor API to set and get the name
3788 (clutter_geometry_copy), (clutter_geometry_free): Use
3789 the slice allocator to avoid fragmentation when setting
3790 properties and emitting signals (that is: when packing
3791 boxed types into GValues).
3793 (clutter_actor_box_copy), (clutter_actor_box_free),
3794 (clutter_vertex_copy), (clutter_vertex_free): Ditto.
3796 * clutter/clutter-actor.h:
3797 * clutter/clutter-actor.c:
3798 (clutter_actor_push_transform_child),
3799 (clutter_actor_pop_transfomr_child): Simple wrappers around
3800 COGL API, which avoid including clutter/cogl.h when writing
3801 container actors outside Clutter.
3803 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
3805 * clutter/Makefile.am:
3806 * clutter/clutter.h:
3807 * clutter/clutter-scriptable.[ch]: Add the ClutterScriptable
3808 interface; by implementing this interface, a class can
3809 override the UI definition parsing and transform complex data
3810 types into GObject properties, or allow custom properties.
3812 * clutter/clutter-script.c:
3813 * clutter/clutter-script-parser.c:
3814 * clutter/clutter-script-private.h: Rearrange the code and
3815 use the ClutterScriptable interface to parse and build the
3816 custom properties. This cleans up the code and also it makes
3817 it more reliable (the complex type parsing is now done using
3818 the target type and not just the name of the property).
3820 2007-10-25 Emmanuele Bassi <ebassi@openedhand.com>
3822 * clutter/clutter-json.h: Header for including the JSON
3823 parsing and data types.
3825 * clutter/json/json-types.h: Add JSON_NODE_VALUE_TYPE() macro.
3827 * clutter/json/Makefile.am: Install the JSON headers into a
3828 private location. This might change in the future, and might
3829 also cause collisions if you're using JSON-GLib and Clutter
3830 at the same time, so be warned.
3832 2007-10-22 Emmanuele Bassi <ebassi@openedhand.com>
3834 * clutter/clutter-label.c (clutter_label_request_coords): If
3835 we get a size requisition, and we have ellipsization active,
3836 check if we are getting less space than what the layout needs
3837 and recompute the width.
3839 2007-10-22 Emmanuele Bassi <ebassi@openedhand.com>
3841 * clutter/clutter-color.c (clutter_color_to_string): Change
3842 the print format to "%02x%02x%02x%02x" because we use guint8
3843 for each component, not guint16.
3845 2007-10-19 Emmanuele Bassi <ebassi@openedhand.com>
3847 * clutter/clutter-entry.c (clutter_entry_paint): Fixed off by
3848 one error. (#566, Gwenole Beauchesne)
3850 2007-10-18 Øyvind Kolås <pippin@o-hand.com>
3852 * clutter/clutter-timeline.c: (clutter_timeline_set_duration):
3853 rearranged arithemetic to allow specifying duration with sub second
3854 precision (also enables durations smaller than one second).
3856 2007-10-18 Emmanuele Bassi <ebassi@openedhand.com>
3858 * clutter/clutter-script-private.h:
3859 * clutter/clutter-script.h:
3860 * clutter/clutter-script.c: Allow id-less objects: as long
3861 as they have a "type" member, a unique id will be provided.
3863 (json_object_end): Add merge id to the object information
3866 (apply_behaviours), (add_children): Keep the unresolved
3869 (construct_stage), (clutter_script_construct_object): If an
3870 object has unresolved children or behaviours try resolving
3871 them when we ask for it.
3873 (json_parse_end), (clutter_script_ensure_objects): Ensure
3874 that the objects are fully constructed as best as we can when
3877 (object_info_free), (remove_by_merge_id):
3878 (clutter_script_unmerge_objects): Remove objects under the
3879 same merge id returned by the loading functions. (Fixes
3882 * test/test-script.c:
3883 * test/test-script.json: Test unresolved merging and unmerging
3886 2007-10-18 Matthew Allum <mallum@openedhand.com>
3888 * clutter/clutter-score.c:
3889 * clutter/clutter-score.h:
3890 * tests/test-score.c:
3891 Implement more ClutterScore functionality.
3893 2007-10-17 Emmanuele Bassi <ebassi@openedhand.com>
3895 * clutter/clutter-actor.c:
3896 (clutter_actor_set_property), (clutter_actor_get_property),
3897 (clutter_actor_class_init): Add the :reactive property, to
3898 control reactiveness using the UI definition files.
3900 (clutter_actor_reparent): Do not assume the parent is a
3901 ClutterContainer, and call the container API only if needed.
3903 (clutter_actor_destroy): Remove from the parent if needed,
3904 just like the documentation says.
3906 2007-10-16 Øyvind Kolås <pippin@o-hand.com>
3908 * clutter/pango/pangoclutter-render.c: (tc_get): Provide for blank
3909 rows/columns of pixels between adjecant glyphs in the texture cache to
3910 avoid bilinear interpolation spillage at edges of glyphs.
3912 2007-10-16 Øyvind Kolås <pippin@o-hand.com>
3914 * clutter/clutter-main.c: (clutter_do_event): allow motion events
3915 only delivered to stage to be caught in the capture phase as well
3916 as the bubbling phase.
3918 2007-10-16 Emmanuele Bassi <ebassi@openedhand.com>
3920 * clutter/json/json-object.c: Automatically transform every
3921 delimiter into an underscore.
3923 * clutter/clutter-script.c: Implement the "parent_texture"
3924 property translation for ClutterCloneTextures, using the
3925 passed id of the parent texture.
3927 2007-10-16 Emmanuele Bassi <ebassi@openedhand.com>
3929 * clutter/clutter-timeline.[ch]: Added ClutterTimeline:duration,
3930 a property for setting the duration of a timeline in milliseconds.
3931 The property comes with accessors and a new constructor. The
3932 frame rate used is the default value.
3934 * clutter/clutter-private.h:
3935 * clutter/clutter-main.[ch]: Add clutter_get_default_frame_rate()
3936 and clutter_set_default_frame_rate(); these two functions control
3937 the default frame rate to be used when creating timelines. Currently
3938 is set to 60 frames-per-second.
3940 2007-10-16 Tomas Frydrych <tf@o-hand.com>
3943 Added MSVC project files.
3945 2007-10-16 Emmanuele bassi <ebassi@openedhand.com>
3947 * clutter/clutter-color.c: Copy the alpha when shading.
3949 2007-10-16 Tomas Frydrych <tf@o-hand.com>
3952 Added a bunch of missing symbols.
3954 * clutter/clutter-script.c:
3956 Use g_slice_new0 instead of g_slice_new to avoid passing
3957 garbage to functions.
3959 * tests/test-threads.c:
3960 Replaced non-portable sleep() with g_usleep().
3962 2007-10-15 Tomas Frydrych <tf@o-hand.com>
3964 * clutter/cogl/gl/cogl-defines.h:
3965 * clutter/cogl/gl/cogl.c:
3966 Fixup GL include for windows.
3968 2007-10-15 Matthew Allum <mallum@openedhand.com>
3970 * clutter/clutter-actor.c:
3971 More events documentation.
3973 * clutter/clutter-event.c:
3974 * clutter/clutter-event.h:
3975 Add synthetic flag and make put_event use it
3976 (via modded patch from pippin)
3978 * clutter/clutter-main.c: (clutter_do_event):
3979 dont use put event anymore when pushing enter/leave events.
3981 2007-10-15 Emmanuele Bassi <ebassi@openedhand.com>
3983 * clutter/pango/Makefile.am: Compile with the debug flags, if
3986 2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
3988 * clutter.symbols: Remove non-public symbols.
3990 2007-10-12 Tomas Frydrych <tf@o-hand.com>
3993 A list of public symbols, one per line; semi-autogenerated, so
3994 might not be complete -- PLEASE when adding new public APIs, add
3995 the function name to this file.
3997 2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
3999 * clutter/clutter-actor.c: Add a :depth property, so we can
4000 set the initial depth of an actor inside the UI definition
4003 2007-10-12 Tomas Frydrych <tf@o-hand.com>
4005 * tests/test-actors.c:
4006 When using MSVC, define _USE_MATH_DEFINES before including
4007 math.h, otherwise constants like M_PI will not be defined.
4009 2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
4011 * clutter/clutter-script.c (construct_timline),
4012 (parse_member_to_property): Transfer ownership of the
4013 implicit timelines to the behaviour, so that they get
4014 unreferenced when the behaviour is destroyed.
4016 (parse_member_to_property): Reverse the list of children
4019 2007-10-12 Tomas Frydrych <tf@o-hand.com>
4023 * clutter/clutter-private.h:
4024 Bracket #include "unistd.h" with #ifdef HAVE_UNISTD_H
4026 * clutter/clutter-fixed.c:
4027 Use "", not <> for inclusion of local files.
4029 (clutter_sqrtx): forward declare local variables.
4031 * clutter/clutter-debug.h:
4032 Added non-gcc (c99) implementation of variadic debug macros for
4033 when not compiling with gcc.
4035 * clutter/pango/pangoclutter-render.c:
4036 Fixed some strange uses of CLUTTER_NOTE() + stripped trailing
4039 2007-10-12 Tomas Frydrych <tf@o-hand.com>
4041 * clutter/clutter-actor.c:
4042 * clutter/clutter-backend.c:
4043 * clutter/clutter-behaviour-depth.c:
4044 * clutter/clutter-box.c:
4045 * clutter/clutter-clone-texture.c:
4046 * clutter/clutter-container.c:
4047 * clutter/clutter-entry.c:
4048 * clutter/clutter-feature.c:
4049 * clutter/clutter-fixed.c:
4050 * clutter/clutter-group.c:
4051 * clutter/clutter-hbox.c:
4052 * clutter/clutter-label.c:
4053 * clutter/clutter-layout.c:
4054 * clutter/clutter-media.c:
4055 * clutter/clutter-rectangle.c:
4056 * clutter/clutter-score.c:
4057 * clutter/clutter-script.c:
4058 * clutter/clutter-stage.c:
4059 * clutter/clutter-texture.c:
4060 * clutter/clutter-timeline.c:
4061 * clutter/clutter-timeout-pool.c:
4062 * clutter/clutter-vbox.c:
4063 * clutter/cogl/gl/cogl.c:
4064 * clutter/cogl/gles/cogl.c:
4065 * clutter/eglnative/clutter-backend-egl.c:
4066 * clutter/eglnative/clutter-event-egl.c:
4067 * clutter/eglnative/clutter-stage-egl.c:
4068 * clutter/eglx/clutter-backend-egl.c:
4069 * clutter/eglx/clutter-event-egl.c:
4070 * clutter/eglx/clutter-stage-egl.c:
4071 * clutter/glx/clutter-event-glx.c:
4072 * clutter/json/json-array.c:
4073 * clutter/json/json-generator.c:
4074 * clutter/json/json-node.c:
4075 * clutter/json/json-object.c:
4076 * clutter/json/json-parser.c:
4077 * clutter/sdl/clutter-backend-sdl.c:
4078 * clutter/sdl/clutter-event-sdl.c:
4079 * clutter/sdl/clutter-stage-sdl.c:
4081 Fixedup config.h inclusion (must always be bracketed with #ifdef
4084 2007-10-11 Tomas Frydrych <tf@o-hand.com>
4086 * clutter/clutter-entry.c:
4087 Avoid using C++ reserverd words to name variables.
4089 2007-10-11 Øyvind Kolås <pippin@o-hand.com>
4091 Improve the quality of text when the scale it is shown at screen is
4092 smaller than the original, seems to work well down to about a scale
4095 * clutter/pango/pangoclutter-fontmap.c:
4096 (pango_clutter_font_map_default_substitute): turn off hinting.
4097 * clutter/pango/pangoclutter-render.c: request linear filtering
4098 instead of nearest neighbour when scaling down.
4099 * tests/test-text.c: replaced test with a a test that renders a sample
4100 grid with various pixel sizes and scales for visual inspection of
4101 text rendering quality.
4103 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
4105 * clutter/glx/clutter-backend-glx.c: Fix documentation of the
4106 filter function API.
4108 * clutter/clutter-score.c:
4109 * clutter/clutter-effect.c:
4110 * clutter/clutter-actor.c: Documentation fixes.
4112 * clutter/clutter-actor.h: Automatically typecast to ClutterActor
4113 when setting/checking flags.
4115 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
4117 * clutter/clutter-actor.c: Beautify the ClutterActor documentation.
4119 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
4121 * clutter/clutter-actor.c: Remove the ::event-after signal:
4122 three event layers to connect to seems a bit overkill.
4124 (clutter_actor_event): Return FALSE, not TRUE by default,
4125 as g_signal_emit() will change the return value if no
4126 handlers are connected
4128 * clutter/clutter-stage.c: Emit ::notify when we change
4129 the fullscreen property.
4131 * clutter/clutter-script.c: Add more documentation for the
4132 definition format and keywords.
4134 (translate_property): Collapse the G_TYPE_ENUM and G_TYPE_FLAGS
4135 cases into one, to simplify the code.
4137 * tests/test-script.c: Test enumeration conversion by using
4138 a value different from the default.
4140 2007-10-10 Matthew Allum <mallum@openedhand.com>
4142 * clutter/clutter-actor.c:
4143 * clutter/clutter-actor.h:
4144 * clutter/clutter-event.c:
4145 * clutter/clutter-main.c:
4146 * tests/test-events.c:
4147 Add basic W3 DOM event 'capture' like functionality.
4149 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
4151 * clutter/clutter-script-private.h:
4152 * clutter/clutter-script.c: Parse flags like we parse enums.
4154 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
4156 * clutter/json/json-types.h:
4157 * clutter/json/json-array.c:
4158 * clutter/json/json-object.c: Resync with the upstream copy
4159 of JSON-GLib; add json_object_remove_member() and
4160 json_array_remove_element() and fix the g_hash_table_get_keys()
4161 replacement for GLib 2.12.
4163 * clutter/clutter-script.c: Clean up the complex properties
4166 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
4168 * clutter/clutter-script.c (json_object_end): Add "type_func"
4169 to the list of attributes we skip.
4171 2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
4173 * clutter/json/json-parser.c: Use the commodity JsonNode API
4174 and accept bare values as root nodes.
4176 * clutter/clutter-script-private.h:
4177 * clutter/clutter-script.c: Unreference the created objects
4178 only if they are top-levels, like ClutterBehaviour and
4179 ClutterTimelines. Actors have floating references, so we
4180 just transfer ownership to their containers, and the stage
4181 is owned by the backend. Add the "type_func" key to the
4182 object definition, so the user can supply its own GType
4183 function if the class name doesn't follow the GObject rules.
4184 Document the ClutterScript public API.
4186 2007-10-10 Matthew Allum <mallum@openedhand.com>
4188 * clutter/clutter-actor.c:
4189 * clutter/clutter-actor.h:
4190 Add missing enter/leave event signals
4192 * clutter/clutter-main.c: (clutter_do_event):
4193 Set time in crossing events.
4194 Protect against do_pick() failing.
4196 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
4198 * clutter/clutter-script.c (resolve_alpha_func): Fix the
4199 ClutterAlphaFunc resolution function.
4201 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
4203 * tests/Makefile.am:
4204 * tests/test-script.c:
4205 * tests/test-script.json: Move part of the UI definition into
4206 its own file and exercise clutter_script_load_from_file().
4208 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
4210 * clutter/clutter-script.c (clutter_script_get_object): Construct
4211 the requested object if it hasn't been already. This allows
4212 referencing objects within the same snippet.
4214 * tests/test-script.c: Declare a timeline and use it inside
4215 multiple behaviours; apply multiple behaviours to various
4216 actors, then retrieve the timeline to start it when the test
4219 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
4221 * clutter/clutter-script-private.h:
4222 * clutter/clutter-script.c: Allow applying behaviours directly
4223 inside the UI definition data.
4225 * tests/test-script.c: Test the "behaviours" member.
4227 2007-10-09 Rob Bradford <rob@openedhand.com>
4229 * clutter/eglnative/clutter-backend-egl.c:
4230 (clutter_backend_egl_dispose):
4231 Call eglTerminate() on the display when the backend is disposed of.
4233 * clutter/eglnative/clutter-stage-egl.c:
4234 (clutter_stage_egl_realize):
4235 Don't use the createNativeWindow() call, it's not generic EGL.
4237 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
4239 * clutter/clutter-script-private.h:
4240 * clutter/clutter-script.h:
4241 * clutter/clutter-script.c: Add licensing information to
4242 the newly added files.
4244 * clutter/clutter-script.c: Support creating behaviours with
4245 ClutterScript. ClutterAlpha objects are implicit, but
4246 timelines can be both explicit objects using their id or
4247 implicit objects. Make the property resolution and translation
4248 more robust. Support the pixbuf property.
4250 * tests/test-script.c: Test the newly added features.
4252 * docs/reference/clutter-docs.sgml:
4253 * docs/reference/clutter-sections.txt: Add ClutterScript.
4255 2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
4257 * clutter/clutter-fixed.h: Add deprecation guards around
4258 CLUTTER_FIXED_INT().
4260 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
4262 * clutter/clutter-script.c: Parse ClutterMargin and ClutterPadding
4263 properties from arrays or integers (assume pixels).
4265 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
4267 * clutter/clutter-script-private.h:
4268 * clutter/clutter-script.c: Allow defining childrens for every
4269 container actor inside the UI definition files.
4271 2007-10-08 Matthew Allum <mallum@openedhand.com>
4273 * clutter/clutter-actor.c:
4274 * clutter/clutter-actor.h:
4275 * clutter/clutter-private.h:
4276 * clutter/clutter-main.c:
4277 Add a hash to global clutter context mapping all parented actor
4279 Add clutter_get_actor_by_id() call.
4280 Convert picking machinery to use above.
4281 (performance/simpler composite actor creation)
4283 * clutter/clutter-stage.c: (clutter_stage_fullscreen),
4284 (clutter_stage_unfullscreen), (clutter_stage_event):
4285 Only set the fullscreen property on stage state fullscreen event(#545)
4286 Experimental as could be painful to implement on non X backends.
4288 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
4290 * clutter/clutter-script.c (json_parse_end):
4291 * clutter/json/json-object.c (json_object_get_members): Replace
4292 the GLib 2.14 API with the equivalent code for GLib < 2.14.
4294 * configure.ac: Revert the dependency bump.
4296 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
4298 Initial implementation of the UI definition files. (#424)
4300 * clutter/json/Makefile.am:
4301 * clutter/json/*.[ch]: In-tree copy of JSON-GLib, a GLib-based
4302 JSON parser/generator library. We use it in-tree because we might
4303 need to change the API. Ideally, we'd depend on it.
4305 * clutter/clutter.h:
4306 * clutter/clutter-script-private.h:
4307 * clutter/clutter-script.[ch]: ClutterScript, the scenegraph
4308 generator class. It parses JSON streams in form of buffers and
4309 files and builds the scene.
4311 * clutter/clutter-debug.h:
4312 * clutter/clutter-main.c: Add a "script" debug flag
4314 * clutter/Makefile.am: Build glue.
4316 * tests/Makefile.am:
4317 * tests/test-script.c: Add a test case for the ClutterScript.
4319 * configure.ac: Depend on GLib 2.14, so we can use the
4320 g_hash_table_get_key() and g_hash_table_get_values() functions
4321 for the time being; we can probably reimplement those, but we
4322 are going to need 2.14 anyway if we are going to implement a
4323 list model using GSequence.
4325 2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
4327 * tests/test-behave.c: Use the right return type for the
4330 2007-10-03 Matthew Allum <mallum@openedhand.com>
4332 * clutter/clutter-actor.c:
4333 * clutter/clutter-event.c:
4334 * clutter/clutter-event.h:
4335 * clutter/clutter-main.c:
4336 * clutter/clutter-private.h:
4337 * clutter/eglnative/clutter-event-egl.c:
4338 * clutter/eglx/clutter-event-egl.c:
4339 * clutter/glx/clutter-event-glx.c:
4340 * clutter/sdl/clutter-event-sdl.c:
4341 Remove seperate double/triple click events and replace with
4342 a click_count member.
4343 Move calculating click counts from backend to do_event()
4344 Initial implementation of ENTER/LEAVE events.
4346 * tests/test-events.c:
4347 Add code to test above.
4349 * tests/test-behave.c:
4350 Sync with newer API.
4352 * clutter/clutter-score.c:
4355 2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
4357 * clutter/clutter-fixed.h: Add CLUTTER_FIXED_TO_INT() and
4358 deprecate CLUTTER_FIXED_INT(), for symmetry with
4359 CLUTTER_FIXED_FROM_INT().
4361 * clutter/clutter-alpha.c:
4362 * clutter/clutter-behaviour-depth.c:
4363 * clutter/clutter-behaviour-ellipse.c:
4364 * clutter/clutter-behaviour-path.c:
4365 * clutter/clutter-fixed.h: Use CLUTTER_FIXED_TO_INT().
4367 2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
4369 * clutter/clutter-actor.c (clutter_actor_get_size): Implement
4370 get_size() as a wrapper around clutter_actor_query_coords()
4371 instead of calling g_object_get() twice.
4373 (clutter_actor_init): Initialise the box in one call.
4375 2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
4377 * clutter/clutter-actor.[ch]: Remove the ::event-after signal
4378 class handler, as it's not meant to be overridden by sub-classes.
4380 (clutter_actor_class_init):
4381 Make every event-related signal return a boolean: return TRUE
4382 in a signal handler to block the emission. The value is accumulated
4383 automatically by the signal API.
4385 (clutter_actor_event): If ::event returns TRUE, skip to emitting
4386 ::event-after. Return the value accumulated by the signal emission
4389 * clutter/clutter-private.h: Rename _clutter_boolean_accumlator().
4391 * clutter/clutter-main.c (clutter_do_event): If clutter_actor_event()
4392 returns TRUE then stop the event emission chain from child to parent.
4394 * clutter/clutter-stage.c (clutter_stage_event): Behave like
4395 clutter_actor_event().
4397 (clutter_stage_get_key_focus),
4398 (clutter_stage_set_key_focus): Avoid a nasty circular reference
4399 issue: if the actor passed to set_key_focus is NULL then the stage
4402 * tests/test-events.c: Update the events test with the API
4405 2007-10-01 Tomas Frydrych <tf@openedhand.com>
4407 * clutter/clutter-actor.c:
4408 (clutter_actor_set_scale_with_gravityx):
4409 Use CLUTTER_QMUL for better precission (#532, patch by Gwenole
4412 * clutter/clutter-color.c:
4413 (clutter_color_to_hlsx):
4414 Added missing CLUTTER_INT_TO_FIXED conversion (#544, patch by Neil
4417 2007-10-01 Neil J. Patel <njp@o-hand.com>
4419 Patch by: Tommi Komulainen <tommi.komulainen@iki.fi>
4421 * clutter/clutter-entry.c: (clutter_entry_delete_text):
4422 Fix characters vs. bytes inconsistency (#520).
4424 2007-09-30 Matthew Allum <mallum@openedhand.com>
4426 * clutter/clutter-event.h:
4427 Removed unused POINTER_ENTER and POINTER_LEAVE states. (#546)
4428 * clutter/clutter-stage.c: (clutter_stage_fullscreen),
4429 (clutter_stage_unfullscreen):
4430 Only Change fullscreen prop if the backend implements fullscreen
4433 2007-09-28 Øyvind Kolås <pippin@openedhand.com>
4435 * clutter/clutter-container.[ch]: added
4436 clutter_container_find_child_by_name.
4438 2007-09-28 Øyvind Kolås <pippin@openedhand.com>
4440 * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize):
4441 removed unused variable perspective.
4442 * tests/test-events.c: (main): added CLUTTER_STAGE() cast.
4443 * tests/test-threads.c: include unistd.h for sleep().
4445 2007-09-28 Øyvind Kolås <pippin@openedhand.com>
4447 * clutter/clutter-label.c: (clutter_label_ensure_layout): avoid
4448 calling pango_layout_set_text|markup before we've got any text.
4450 2007-09-27 Matthew Allum <mallum@openedhand.com>
4452 * tests/test-scale.c:
4453 Fix out of about array addressing (#522, Tommi Komulainen)
4455 2007-09-27 Matthew Allum <mallum@openedhand.com>
4457 * clutter/clutter-clone-texture.c:
4458 * clutter/clutter-rectangle.c:
4459 Include "config.h" in all c files (#524, Tommi Komulainen)
4461 2007-09-27 Matthew Allum <mallum@openedhand.com>
4465 * clutter/clutter-behaviour-path.c: (path_alpha_to_position)
4466 Fix uninitialized variable (#480, Gwenole Beauchesne)
4468 2007-09-27 Matthew Allum <mallum@openedhand.com>
4470 * clutter/clutter-event.c:
4471 * clutter/clutter-event.h:
4472 * clutter/clutter-main.c:
4473 Further event tweaks;
4474 - Ref the event actor source
4475 - Protect against off stage events (button releases) (#511)
4476 - Move more into ClutterEventAny
4477 - Add a click count to button event (as yet unused)
4480 * clutter/clutter-actor.c:
4481 Make scale x/y a property.
4483 * clutter/clutter-private.h:
4484 Remove _clutter_actor_apply_modelview*
4486 * clutter/eglx/clutter-backend-egl.c:
4489 * clutter/eglx/clutter-stage-egl.c:
4490 * clutter/glx/clutter-stage-glx.c:
4491 * clutter/sdl/clutter-stage-sdl.c:
4492 Avoid setting viewport directly, but set sync flag.
4494 * clutter/pango/pangoclutter-render.c: (draw_glyph):
4497 * clutter/Makefile.am:
4498 * tests/Makefile.am:
4499 * tests/test-score.c
4500 * clutter/clutter.h:
4501 * clutter/clutter-score.h:
4502 * clutter/clutter-score.c:
4503 Add very initial (broken) ClutterScore implementation.
4505 2007-09-25 Ross Burton <ross@openedhand.com>
4509 * clutter/clutter-group.c:
4510 Optimise sort_z_order.
4512 2007-09-17 Emmanuele Bassi <ebassi@openedhand.com>
4516 * clutter/eglnative/clutter-event-egl.c:
4517 Flag every device click after the first as motion events
4518 instead of button presses. (#505, Shreyas Srinivasan)
4520 2007-09-10 Matthew Allum <mallum@openedhand.com>
4522 Port from stable branch.
4524 * clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch):
4525 Only declare tsevent if we have tslib (#498, Robert Bragg)
4527 2007-09-06 Emmanuele Bassi <ebassi@openedhand.com>
4529 * clutter/clutter-stage.c: Remove stray include <gdk-pixbuf-xlib.h>
4530 in ClutterStage: the code requesting it was moved in the backends.
4532 2007-08-31 Emmanuele Bassi <ebassi@openedhand.com>
4534 * clutter/clutter-rectangle.c: Fix the border drawing: do not
4535 overdraw the rectangle on the border and fix the check for
4536 different border colour. (#488, Neil Roberts)
4538 2007-08-29 Matthew Allum <mallum@openedhand.com>
4540 * clutter/clutter-effect.c: (clutter_effect_template_set_property):
4541 Add missing break statement. Whoops.
4543 2007-08-29 Matthew Allum <mallum@openedhand.com>
4545 * clutter/clutter-main.c: (_clutter_do_pick):
4546 Call glFinish before reading pixels
4547 * clutter/eglx/clutter-stage-egl.c: (clutter_stage_egl_realize):
4548 Add missing read surface in making context current.
4549 Above fixes via Kate Alhola.
4551 * clutter/glx/clutter-glx.h:
4552 Add missing filter funcs so there actually exported
4554 2007-08-24 Matthew Allum <mallum@openedhand.com>
4556 * clutter/clutter-actor.c:
4557 * clutter/clutter-event.h:
4558 * clutter/clutter-main.c:
4559 * clutter/clutter-stage.c:
4560 * clutter/clutter-stage.h:
4561 * clutter/glx/clutter-backend-glx.c:
4562 * clutter/glx/clutter-backend-glx.h:
4563 * clutter/glx/clutter-event-glx.c:
4564 * clutter/glx/clutter-stage-glx.c:
4565 * clutter/glx/clutter-stage-glx.h:
4566 Add initial support for stage state events.
4567 Fix fullscreening for an already mapped stage.
4569 * tests/test-events.c:
4570 Print out info from the above. Blue button now toggles
4573 * clutter/clutter-effect.c:
4574 * clutter/clutter-effect.h:
4575 Add a setting for templates to ref or clone underlying
4576 timelines. (As to improve sync issues like those in foofone)
4578 * tests/test-timeline.c:
4579 Also add completed signals.
4581 * clutter/cogl/gles/cogl.c: (cogl_texture_image_2d):
4583 Forward port from stable branch. RGB Image fixes gles
4584 and check for lower case libgles_cm.
4587 2007-08-24 Tomas Frydrych <tf@openedhand.com>
4589 * clutter/clutter-actor.c:
4590 (_clutter_actor_apply_modelview_transform):
4592 Fixed rotation around x axis (bug 486).
4594 2007-08-23 Emmanuele Bassi <ebassi@openedhand.com>
4596 * clutter/clutter-private.h:
4597 * clutter/clutter-event.c: Revert the event queue ordering
4600 * clutter/eglx/clutter-event-egl.c:
4601 * clutter/glx/clutter-event-glx.c:
4602 * clutter/sdl/clutter-event-sdl.c: Update backends.
4604 2007-08-22 Tomas Frydrych <tf@openedhand.com>
4606 * clutter/clutter-behaviour-rotate.c:
4607 * clutter/clutter-behaviour-ellipse.c:
4609 Fixed CCW rotation in rotate behaviour (bug 483); fixed overall
4610 path length calculation for angles > 360 in rotate and ellipse.
4612 2007-08-22 Emmanuele Bassi <ebassi@openedhand.com>
4614 * clutter/clutter-main.c (clutter_threads_dispatch_free): Remove
4615 the main threads locking calls: the main loop might remove the
4616 source while dispatching it, so whether or not we are already
4617 holding the lock is unpredictable for the library. Leave a comment
4618 with the relevant bug number in GNOME's Bugzilla and wait for a
4621 2007-08-21 Emmanuele Bassi <ebassi@openedhand.com>
4623 * clutter/clutter-event.c: Correctly initialise the state
4624 variables used to detect multiple clicks.
4626 (clutter_event_get_coords): Return the coordinates for
4627 CLUTTER_3BUTTON_PRESS events.
4629 (clutter_events_pending): Check from the tail of the queue backward,
4630 like we do in clutter_event_get() and clutter_event_peek().
4632 2007-08-21 Emmanuele Bassi <ebassi@openedhand.com>
4634 Preserve the ordering of the events in the queue when sythesising
4635 new events in the event translation sequence. (#481)
4637 * clutter/clutter-event.c:
4638 * clutter/clutter-private.h: Allow flagging new events on the
4639 events queue without breaking ClutterEvent using a masked type.
4641 (clutter_event_get), (clutter_event_put),
4642 (clutter_event_pending): Ignore events with the CLUTTER_EVENT_PENDING
4643 flag set when walking the events queue.
4645 * clutter/eglx/clutter-event-egl.c:
4646 * clutter/glx/clutter-event-glx.c:
4647 * clutter/sdl/clutter-event-sdl.c: Push the new events straight
4648 on the queue, with the CLUTTER_EVENT_PENDING flag set; remove the
4649 flag if the event translation was succesful, or remove the event
4652 2007-08-21 Emmanuele Bassi <ebassi@openedhand.com>
4654 * clutter/clutter-stage.c: Add missing documentation for the
4655 ClutterStage properties.
4657 2007-08-21 Tomas Frydrych <tf@openedhand.com>
4659 * clutter/clutter-fixed.c:
4662 Fixes for 64-bit platforms; use of SSE builtin when available
4663 (bugs 478, 479, patches by Gwenole Beauchesne).
4665 2007-08-20 Emmanuele Bassi <ebassi@openedhand.com>
4667 * clutter/Makefile.am:
4668 * clutter/clutter-enum-types.h.in:
4669 * clutter/clutter-enum-types.c.in: Use template files for
4670 glib-mkenums; this makes the Makefile template a bit more
4671 clean and the enum types generation more customisable (e.g.
4672 when GLib 2.14 has been released, we can use g_once_init_enter()
4673 and g_once_init_leave() to have thread-safe GType functions
4674 for the enum types as well).
4676 2007-08-20 Emmanuele Bassi <ebassi@openedhand.com>
4678 * clutter/clutter-version.h.in: Fix CLUTTER_CHECK_VERSION()
4679 macro to accept micro versions. (#477, Neil Roberts)
4681 2007-08-19 Emmanuele Bassi <ebassi@openedhand.com>
4683 Various timeline related changes.
4685 * clutter/clutter-timeout-pool.c: Use g_list_insert_sorted() to
4686 fix a timeout pool reversal happening with our homegrown
4687 sorted insertion function. (see #470)
4689 * tests/Makefile.am:
4690 * tests/test-timeline.c: Add a ClutterTimeline test suite, for
4691 finding regressions in the behaviour of the timelines. (#470,
4694 * clutter/clutter-main.c (clutter_do_event): Use an EVENT note,
4695 not a SCHEDULER one; SCHEDULER is for timelines and idle sources
4698 * clutter/clutter-version.h.in: Protect the bare numbers of
4699 the version components.
4701 * clutter/clutter-effect.c: Do not unref the ClutterAlpha, as
4702 the ownership is already of the behaviour used by the effect
4705 * clutter/clutter-timeline.c: Emit the ::new-frame signal only
4706 if the timeline is still active
4708 Always advance at least of one frame. (#471, Rob Bradford)
4710 Do not rewind the timeline if the user paused it in the ::new-frame
4711 signal handler: either the user has already done it with
4712 clutter_timeline_stop() or it's not what he's expecting if he
4713 called clutter_timeline_pause(). (#372, Johan Bilien)
4715 If we skipped the last frame before emitting the ::complete
4716 signal, emit ::new-frame with the last frame.
4718 Do not call clutter_timeline_stop() at the end of a non-looping
4719 timeline, as it emits the ::pause signal as well. Also, rewind the
4720 timeline *after* emitting ::complete, so that calling
4721 clutter_timeline_get_current_frame() in a signal handler still
4724 2007-08-19 Matthew Allum <mallum@openedhand.com>
4726 * clutter/eglx/clutter-event-egl.c: (clutter_event_dispatch):
4727 Fix clutter_thread typo (Kate Alhola)
4729 2007-08-18 Emmanuele Bassi <ebassi@openedhand.com>
4731 * clutter/clutter-effect.c:
4732 * clutter/clutter-main.c: Update the Since: tag for the
4735 * clutter/clutter-behaviour-rotate.c: Fix a typo in the get_center()
4736 method. (#468, Neil Roberts)
4738 Freeze and thaw the notification queue when changing multiple
4739 properties in the same method. Fix some coding style issues.
4741 2007-08-15 Emmanuele Bassi <ebassi@openedhand.com>
4743 * clutter/clutter-actor.c: Add checks for the "reactive" flag
4746 2007-08-15 Emmanuele Bassi <ebassi@openedhand.com>
4748 * clutter/clutter-effect.[ch]: Add clutter_effect_depth(), a
4749 simple wrapper around ClutterBehaviourDepth. (#464, Ali Sabil)
4751 2007-08-15 Emmanuele Bassi <ebassi@openedhand.com>
4753 * clutter/clutter-alpha.c (clutter_smoothstep_inc): Use the
4754 correct type for parameters, to avoid overflow (Ali Sabil).
4756 * clutter/clutter-behaviour-opacity.c: Use the right format
4757 when printing the unsigned alpha value and opacity to the
4760 2007-08-14 Emmanuele Bassi <ebassi@openedhand.com>
4762 * clutter/clutter-container.[ch]:
4763 * clutter/clutter-actor.c:
4764 * clutter/clutter-group.c: Rename clutter_container_raise() to
4765 clutter_container_raise_child(), and clutter_container_lower()
4766 to clutter_container_lower_child() to avoid clashing with
4767 ClutterActor raise() and lower() respectively.
4769 2007-08-13 Matthew Allum <mallum@openedhand.com>
4771 * clutter/clutter-actor.c:
4772 * clutter/clutter-actor.h:
4773 * clutter/clutter-event.c:
4774 * clutter/clutter-event.h:
4775 * clutter/clutter-main.c:
4776 * clutter/clutter-main.h:
4777 * clutter/clutter-private.h:
4778 * clutter/clutter-stage.c:
4779 * clutter/clutter-stage.h:
4780 * clutter/clutter-types.h:
4781 Initial implementation of actors emmitting event signals (423);
4782 - Actors set_reactive() to receive mouse events.
4783 (call clutter_enable_motion_events() for per action motion events)
4784 - clutter_stage_set_key_focus () to direct key events.
4785 - Events bubble up to parents (ending at stage)
4786 (original source identified by clutter_event_get_source())
4788 - enter/leave notifys for actors.
4789 - stage specific events - fullscreen
4792 * tests/test-events.c:
4793 Extend a little to use new API
4795 * clutter/cogl/gl/cogl.c:
4796 * clutter/glx/clutter-backend-glx.c:
4797 Move get_proc_address into cogl and out of backend.
4798 (shaders will need it)
4800 * clutter/clutter-group.c: (clutter_group_real_lower):
4801 Fix a minor compile warning.
4806 2007-08-13 Emmanuele Bassi <ebassi@openedhand.com>
4808 * clutter/clutter-container.[ch]: Add find_child_by_id(),
4809 raise(), lower() and sort_depth_order() virtual functions to
4812 * clutter/clutter-group.[ch]: Deprecate the redundant calls
4813 from ClutterGroup, and make ClutterGroup implement them as part
4814 of the ClutterContainer interface implementation.
4816 * clutter/clutter-box.c: Implement the newly added ClutterContainer
4817 methods; now clutter_stage_get_actor_at_pos() works with boxes
4820 * clutter/clutter-stage.c:
4821 * clutter/clutter-actor.c: Replace calls to ClutterGroup functions
4822 with ClutterContainer ones.
4824 2007-08-12 Emmanuele Bassi <ebassi@openedhand.com>
4826 * clutter/clutter-timeout-pool.c: Fix removing and adding timeouts
4827 to the timeout pool during a dispatch of a timeout source already
4828 inside the pool. (#456, based on a patch by Neil Roberts)
4830 (clutter_timeout_dispatch), (clutter_timeout_pool_dispatch): Hold
4831 the main Clutter lock in the pool dispatch function, instead of
4832 the per-timeout dispatch; this guarantees that the ref+unref of
4833 the single timeouts are done under the main lock.
4835 2007-08-12 Matthew Allum <mallum@openedhand.com>
4837 * clutter/clutter-texture.c: (texture_upload_data):
4838 Align texture data correctly for edge tiles.
4839 (#422 - Neil Roberts)
4841 2007-08-11 Matthew Allum <mallum@openedhand.com>
4843 * clutter/clutter-texture.c:
4844 Fix typo in clutter_texture_get_pixbuf (#458, Neil Roberts).
4845 Use take_object when getting pixbuf prop to avoid ref leak. (Neil
4848 2007-08-09 Emmanuele Bassi <ebassi@openedhand.com>
4850 * clutter/clutter-box.c: Rename a variable to fix a compiler
4853 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
4855 * clutter/clutter-behaviour-ellipse:
4856 (clutter_behaviour_ellipse_get_tiltx): Remove useless
4857 "Return" in the API documentation.
4859 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
4861 * clutter/clutter-timeout-pool.c: Fix sorting of the pool
4862 when inserting and removing timeout sources. (#449, Neil
4865 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
4867 * clutter/clutter-main.c (clutter_get_timestamp): Remove
4868 the microseconds remainder, which is mostly useless. (#447)
4870 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
4872 * clutter/clutter-main.c (clutter_get_timestamp): Return the
4873 correct number of microseconds (#447, Neil Roberts)
4875 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
4877 Merge the clutter.git/threading branch.
4879 * clutter/clutter-main.c:
4880 * clutter/clutter-main.h:
4881 * clutter/clutter-private.h: Add threading locking and unlocking
4882 functions, to mark a critical section and access the Clutter API
4883 from differen threads. Add an initialisation function and a function
4884 to override the default lock aquisition and release functions, for
4885 bindings and application-specific locking handling. Add MT-safe
4886 versions of g_idle_add() and g_timeout_add() which will call the
4887 functions under the main Clutter lock and without races. The
4888 Clutter thread-safe implementation is basically the same used by
4889 GDK, so the same caveats apply.
4891 * clutter/clutter-actor.c:
4892 * clutter/clutter-timeline.c:
4893 * clutter/clutter-timeout-pool.c: Use the new threading API when
4894 invoking idle and timeouts.
4896 * clutter/eglnative/clutter-event-egl.c:
4897 * clutter/eglx/clutter-event-egl.c:
4898 * clutter/glx/clutter-event-glx.c:
4899 * clutter/sdl/clutter-event-sdl.c: Acquire and release the main
4900 Clutter lock when preparing, checking and dispatching the events
4901 on the queue in every backend.
4903 * tests/Makefile.am:
4904 * tests/test-threads.c: Add a test case, showing how to use the
4905 threading API and write thread-safe Clutter applications.
4907 2007-08-08 Emmanuele Bassi <ebassi@openedhand.com>
4909 * configure.ac: Bump up to 0.5.0 and start the new development
4912 2007-08-07 Emmanuele Bassi <ebassi@openedhand.com>
4914 * configure.ac: Bump up to 0.4.0.
4916 2007-08-07 Emmanuele Bassi <ebassi@openedhand.com>
4918 * clutter/clutter-entry.c:
4919 * clutter/clutter-fixed.c:
4920 * clutter/pango/pangoclutter.h: Small fixes for passing the
4921 distcheck phase with extra-strict compiler flags.
4923 2007-08-07 Emmanuele Bassi <ebassi@openedhand.com>
4925 * clutter/clutter-actor.h:
4926 * clutter/clutter-alpha.h:
4927 * clutter/clutter-behaviour-ellipse.[ch]:
4928 * clutter/clutter-behaviour-path.h:
4929 * clutter/clutter-behaviour-rotate.c:
4930 * clutter/clutter-behaviour.h:
4931 * clutter/clutter-box.h:
4932 * clutter/clutter-color.h:
4933 * clutter/clutter-container.h:
4934 * clutter/clutter-effect.h:
4935 * clutter/clutter-entry.h:
4936 * clutter/clutter-fixed.h:
4937 * clutter/clutter-layout.h:
4938 * clutter/clutter-main.h:
4939 * clutter/clutter-stage.h:
4940 * clutter/clutter-texture.h:
4941 * clutter/clutter-units.h:
4942 * clutter/clutter-version.h.in:
4943 * clutter/glx/clutter-glx.h: Documentation additions and
4946 2007-08-07 Matthew Allum <mallum@openedhand.com>
4948 * clutter/clutter-behaviour-ellipse.c:
4949 Add a documentation note regarding ellipse setting
4950 the applied actors position.
4952 2007-08-07 Matthew Allum <mallum@openedhand.com>
4956 More updates ready for 0.4.0
4958 2007-08-07 Matthew Allum <mallum@openedhand.com>
4960 * clutter/clutter-fixed.c:
4961 * clutter/clutter-fixed.h:
4964 * clutter/cogl/gl/cogl.c: (cogl_perspective):
4965 Remove CFX_* shortened macros
4967 2007-08-06 Emmanuele Bassi <ebassi@openedhand.com>
4969 * clutter/clutter-main.[ch]: Remove clutter_threads_enter()
4970 and clutter_threads_leave(); both are no-ops and they just
4971 confuse things. The thread-awareness in Clutter is planned
4977 2007-08-06 Emmanuele Bassi <ebassi@openedhand.com>
4979 * clutter/clutter-box.[ch]: Implement margin, color and default
4980 padding for ClutterBox. Provide API to pack a child by specifying
4981 every packing detail or just pack with the defaults. ClutterBox
4982 works like the HTML boxing model, API-wise: a box with margins
4983 and padding around each child. Needs work, still.
4985 * clutter/clutter-hbox.c:
4986 * clutter/clutter-vbox.c: Update with the new API and new attributes.
4988 * clutter/clutter-types.h: Add ClutterMargin and ClutterPadding.
4990 * test/test-boxes.c: Exercise the new API.
4992 2007-08-06 Matthew Allum <mallum@openedhand.com>
4994 * clutter/clutter-texture.c:
4995 Correct set pixbuf property as GDK_TYPE_PIXBUF
4996 (fix via Neil Roberts)
4998 2007-08-06 Matthew Allum <mallum@openedhand.com>
5000 * clutter/clutter-behaviour-depth.c:
5001 Modify to work like all other behvaiours in not forcing
5002 increasing order in behaviour 'limits'. (#436)
5003 Rename limit min/max props to start/end.
5005 * tests/test-depth.c:
5006 Simplify test-case to work with above change and
5007 without multiple ramps
5009 * clutter/clutter-behaviour-rotate.c:
5010 Handle CW rotation when end > start and similar for CCW just
5011 like ellipse behaviour.
5013 2007-08-05 Matthew Allum <mallum@openedhand.com>
5016 * clutter/clutter-actor.c:
5017 Document show/hide_all behaviour correctly.
5019 2007-08-05 Emmanuele Bassi <ebassi@openedhand.com>
5021 * clutter/clutter-behaviour-depth.c: Fix typo in the description.
5023 2007-08-04 Emmanuele Bassi <ebassi@openedhand.com>
5025 * clutter/clutter-behaviour-depth.c: Clarify the depth behaviour
5026 even more in the description used by the API reference.
5028 2007-08-04 Emmanuele Bassi <ebassi@openedhand.com>
5030 * clutter/clutter-behaviour-depth.[ch]: Clarify that what drives
5031 the movement along the Z axis is the ClutterAlpha object (we
5032 don't have the luxury of a rollover like the opacity does);
5033 so, if you want to go from 0 to -100 you have to use a
5034 decreasing function, just as well if you want to go from 100
5035 to 0. Using a min-depth of 100 and a max-depth of 0 and an
5036 increasing function is undefined behaviour.
5038 * tests/Makefile.am:
5039 * tests/test-depth.c: Add a test case for the depth behaviour.
5041 2007-08-04 Emmanuele Bassi <ebassi@openedhand.com>
5043 * clutter/clutter-actor.c (clutter_actor_set_opacity): Queue
5044 a redraw when setting the opacity of an actor.
5046 2007-08-03 Emmanuele Bassi <ebassi@openedhand.com>
5048 * clutter/clutter-behaviour-ellipse.c:
5049 (clutter_behaviour_ellipse_get_angle_tilt): Avoid recursion
5052 (clutter_behaviour_ellipse_get_angle_begin),
5053 (clutter_behaviour_ellipse_get_angle_end): Correct the angles
5056 2007-08-03 Emmanuele Bassi <ebassi@openedhand.com>
5058 * clutter/clutter-behaviour-ellipse.c:
5059 (clutter_behaviour_ellipse_get_property): Do not forget to
5060 correct the angles when returning them.
5062 2007-08-03 Tomas Frydrych <tf@openedhand.com>
5064 * clutter/clutter-behaviour-ellipse.c:
5065 * clutter/clutter-behaviour-ellipse.h:
5066 (clutter_behaviour_ellipse_new):
5067 (clutter_behaviour_ellipse_newx):
5069 Added direction parameter; made behaviour to respect direction
5070 parameter; unclumped angle_begin and angle_end values.
5072 2007-08-02 Matthew Allum <mallum@openedhand.com>
5076 Initial updating ready for release.
5078 2007-08-02 Emmanuele Bassi <ebassi@openedhand.com>
5080 * clutter/eglnative/clutter-backend-egl.c:
5081 * clutter/eglx/clutter-backend-egl.c:
5082 * clutter/sdl/clutter-backend-sdl.c: Set the default resolution
5083 as 96.0 dpi for every backend (we already were under this
5084 assumption anyway, and this makes it easier to change this
5085 setting per-backend).
5087 * clutter/pango/pangoclutter-fontmap.c:
5088 * clutter/pango/pangoclutter.h: Allow setting the resolution
5089 for the PangoClutterFontMap object and provide the implementation
5090 for the PangoFcFontMap::get_resolution() virtual function. This
5091 allows to set the resolution of the PangoContext when retrieving
5094 * clutter/clutter-label.c (clutter_label_init): Set the
5095 resolution of the font map with the one the backend gives us.
5097 * clutter/clutter-entry.c (clutter_entry_init): Ditto.
5099 2007-08-02 Emmanuele Bassi <ebassi@openedhand.com>
5101 * clutter/clutter-color.c (clutter_color_subtract): Invert the
5102 operands and match what the function says it does. (#435)
5104 2007-08-01 Matthew Allum <mallum@openedhand.com>
5106 * clutter/clutter-color.c: (clutter_color_from_pixel):
5107 Fix typo in alpha channel extraction (#434)
5109 2007-08-01 Emmanuele Bassi <ebassi@openedhand.com>
5111 * clutter/clutter-actor.[ch]: Add floating-point variant of the
5112 clutter_actor_get_r[xyz]angx() functions.
5114 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
5116 * clutter/clutter-stage.[ch]: Fix clutter_stage_set_user_resizable()
5117 name, and add a getter for the property.
5119 * clutter/glx/clutter-stage-glx.c: Use the accessor, not
5120 g_object_get() to retrieve the value of the resizable property.
5122 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
5124 * clutter/clutter-backend.[ch]: Add clutter_backend_set_resolution()
5125 and clutter_backend_get_resolution(); backends should use the former
5126 to set the resolution of the display when initialising, while actors
5127 should use the latter when sizing themselves depending on the
5128 resolution or the font size.
5130 * clutter/glx/clutter-backend-glx.c: Set the resolution as 96 dpi
5131 as a default and query the X server when opening the display.
5133 * clutter/clutter-entry.c: Drop the hardcoded dpi value and use
5134 clutter_backend_get_resolution() to compute the default size.
5136 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
5138 * clutter/clutter-entry.c (clutter_entry_init): Set the default
5139 size of the entry based on the size of the default font. (#414).
5141 2007-07-31 Emmanuele Bassi <ebassi@openedhand.com>
5143 * clutter/sdl/clutter-backend-sdl.c: Fix a typo in
5144 clutter_backend_sdl_get_features() (#426, Pan Bohui)
5146 2007-07-30 Matthew Allum <mallum@openedhand.com>
5151 Various updates and improvements.
5154 Remove --disable-fast-fp-conversions
5156 2007-07-30 Tomas Frydrych <tf@openedhand.com>
5158 * clutter/clutter-behaviour-ellipse:
5159 (clutter_behaviour_ellipse_advance):
5161 Fixed invalid assumption about z cooordiance in calculation of
5164 2007-07-30 Tomas Frydrych <tf@openedhand.com>
5166 * clutter/clutter-actor.c:
5168 Fixed incorrect order of modelview matrix stack in calculating
5171 2007-07-30 Matthew Allum <mallum@openedhand.com>
5173 * clutter/clutter-backend.h:
5174 Remove #if 0's old backend_api
5175 (generating uneeded documentation)
5177 2007-07-30 Matthew Allum <mallum@openedhand.com>
5179 * clutter/clutter-texture.c:
5180 Fix re-relisation for large tiled textures.
5181 * tests/test-textures.c: (main):
5182 Add a show/hide to trigger above (see #442)
5184 2007-07-29 Emmanuele Bassi <ebassi@openedhand.com>
5186 * clutter/clutter-types.h: Document ClutterGravity enumeration
5187 and remove the only incomplete symbol of the api reference. Now
5188 we are up to 79% documented symbols.
5190 2007-07-29 Emmanuele Bassi <ebassi@openedhand.com>
5192 * clutter/clutter-media.c: Document ClutterMedia signals;
5193 replace the implementation of clutter_media_set_filename() with
5194 something a wee bit more robust (and portable) than a sprintf().
5196 2007-07-29 Emmanuele Bassi <ebassi@openedhand.com>
5198 * clutter/clutter-behaviour-ellipse.c: Documentation
5199 fixes; kill some indirections; freeze the notification
5200 queue when (potentially) emitting multiple notify
5203 * clutter/clutter-alpha.h: Remove the unused macro
5204 CLUTTER_TYPE_SMOOTHSTEP.
5206 2007-07-28 Emmanuele Bassi <ebassi@openedhand.com>
5208 * clutter/clutter-actor.[ch]: Use GInitiallyUnowned
5209 as the parent structure in the ClutterActor structure
5210 definition; somehow, this has escaped everyone attention
5211 in one year and a half. Luckily, GInitiallyUnowned is
5214 (clutter_actor_get_abs_position_units),
5215 (clutter_actor_get_abs_position): Check parameters.
5217 * clutter/clutter-texture.h: Unmangle the flags enum
5218 type declaration, so that dumb parsers like h2defs.py
5221 * clutter/clutter-behaviour-ellipse.[ch]:
5222 * clutter/clutter-effect.c: Fix some documentation
5223 issues and make gtk-doc happy.
5225 2007-07-27 Tomas Frydrych <tf@openedhand.com>
5227 * clutter/clutter-behaviour-ellipse.h:
5228 * clutter/clutter-behaviour-ellipse.c:
5229 * tests/test-behave.c:
5230 (clutter_behaviour_ellipse_get_angle_tilt):
5231 (clutter_behaviour_ellipse_set_angle_tilt):
5233 Pruned ClutterBehaviourEllipse api.
5235 2007-07-27 Tomas Frydrych <tf@openedhand.com>
5237 * clutter/clutter-behaviour-ellipse.h:
5238 * clutter/clutter-behaviour-ellipse.c:
5239 (clutter_behaviour_ellipse_set_angle_tilt_x):
5240 (clutter_behaviour_ellipse_set_angle_tilt_xx):
5241 (clutter_behaviour_ellipse_get_angle_tilt_x):
5242 (clutter_behaviour_ellipse_get_angle_tilt_xx):
5243 (clutter_behaviour_ellipse_set_angle_tilt_y):
5244 (clutter_behaviour_ellipse_set_angle_tilt_yx):
5245 (clutter_behaviour_ellipse_get_angle_tilt_y):
5246 (clutter_behaviour_ellipse_get_angle_tilt_yx):
5247 (clutter_behaviour_ellipse_set_angle_tilt_z):
5248 (clutter_behaviour_ellipse_set_angle_tilt_zx):
5249 (clutter_behaviour_ellipse_get_angle_tilt_z):
5250 (clutter_behaviour_ellipse_get_angle_tilt_zx):
5251 (clutter_behaviour_ellipse_set_tilt):
5252 (clutter_behaviour_ellipse_set_tiltx):
5253 (clutter_behaviour_ellipse_get_tilt):
5254 (clutter_behaviour_ellipse_get_tiltx):
5256 * tests/test-behave.c:
5258 Allow tilting ClutterBehaviourEllipse in all three axis; affects
5259 any code using the previous tilt api.
5262 2007-07-26 Matthew Allum <mallum@openedhand.com>
5264 * clutter/clutter-feature.h:
5265 Add new stage feature flags and document.
5267 * clutter/eglnative/clutter-backend-egl.c:
5268 * clutter/eglx/clutter-backend-egl.c:
5269 * clutter/sdl/clutter-backend-sdl.c:
5270 Set new feature flags.
5272 * clutter/glx/clutter-backend-glx.c:
5273 * clutter/glx/clutter-stage-glx.c:
5274 * clutter/clutter-stage.c:
5275 * clutter/clutter-stage.h:
5276 Add a 'user_resizeable' setting to the backend and implement
5279 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
5281 * clutter/clutter-behaviour-ellipse.c:
5282 * clutter/clutter-behaviour.h:
5283 * clutter/clutter-event.c:
5284 * clutter/clutter-texture.h:
5285 * clutter/clutter-types.h: Add missing documentation and fix
5286 parameters names to make gtk-doc happy.
5288 2007-07-26 Tomas Frydrych <tf@openedhand.com>
5290 * clutter/clutter-behaviour-ellipse.h:
5291 * clutter/clutter-behaviour-ellipse.c:
5292 * tests/test-behave.c:
5294 Removed tilt paramter from ClutterBehaviourEllipse constructors;
5295 Made angles to be relative to 12 o'clock;
5296 Added direction property;
5298 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
5300 * clutter/clutter-types.h:
5301 * clutter/Makefile.am: Add a header for common types, to avoid
5304 * clutter/clutter-actor.h:
5305 * clutter/clutter-behaviour.h:
5306 * clutter/clutter-behaviour-rotate.h:
5307 * clutter/clutter-behaviour-scale.h: Move some boxed types and som
5308 enums to clutter-types.h.
5310 2007-07-26 Neil J. Patel <njp@o-hand.com>
5312 * clutter/clutter-entry.c: (offset_to_bytes),
5313 (clutter_entry_ensure_cursor_position),
5314 (clutter_entry_new_with_text), (clutter_entry_new),
5315 (clutter_entry_insert_unichar), (clutter_entry_delete_chars):
5317 Fixed utf8 support so it actually works now, for both
5318 inserting and deleting chars. Fixed positioning of cursor for
5319 utf8 chars. Both GString and Pnago need bytes (not
5320 documented!) for string manipulation, so making sure all
5321 values were bytes and not char positions fixed the issue. Set
5322 a default size of 50x50 for the entry, otherwise no chars can
5323 be seen if the size is not set after creation (which confuses
5326 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
5328 * clutter/clutter-timeline.c:
5329 Do not accept zero as a value for the num-frames and fps properties
5330 in both the constructor and the setter functions.
5332 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
5334 * clutter/clutter-actor.[ch]:
5335 * clutter/clutter-behaviour-bspline.c:
5336 * clutter/clutter-behaviour.c:
5337 * clutter/clutter-box.[ch]:
5338 * clutter/clutter-clone-texture.c:
5339 * clutter/clutter-entry.c:
5340 * clutter/clutter-group.[ch]:
5341 * clutter/clutter-texture.c:
5342 * clutter/pango/pangoclutter-render.c:
5343 * tests/test-actors.c:
5344 * tests/test-behave.c:
5345 * tests/test-entry.c:
5346 * tests/test-events.c:
5347 * tests/test-project.c:
5348 * tests/test-rotate.c:
5349 * tests/test-scale.c:
5350 * tests/test-text.c:
5351 * tests/test-textures.c: Miscellaneous compiler warning fixes.
5353 2007-07-26 Emmanuele Bassi <ebassi@openedhand.com>
5356 * Makefile.am: Add a configure switch to enable strict
5357 compiler flags, and turn it on when we are doing a distcheck.
5359 2007-07-25 Matthew Allum <mallum@openedhand.com>
5363 Add with initial notes on coding bits and bobs.
5365 * clutter/clutter-behaviour-scale.c:
5368 * clutter/clutter-event.c: (clutter_event_put):
5371 * clutter/glx/clutter-stage-glx.c:
5372 Disable wm user resizing of stage (At least for now)
5375 2007-07-25 Tomas Frydrych <tf@openedhand.com>
5377 * clutter/clutter-fixed.c:
5379 Fixed endianness issue in fast fp conversions.
5381 2007-07-25 Tomas Frydrych <tf@openedhand.com>
5384 * clutter/clutter-fixed.c:
5386 Added --disable-fast-fp-conversion option.
5388 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
5390 * clutter/clutter-label.[ch]: Ouch, clutter_label_get_alignment()
5391 returns a PangoAlignment, not a boolean.
5393 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
5395 * clutter/clutter-behaviour.h:
5396 * clutter/clutter-behaviour.c: Rename clutter_behaviour_clear()
5397 to clutter_behaviour_remove_all() to avoid method clashes in
5400 2007-07-25 Tomas Frydrych <tf@openedhand.com>
5402 * tests/test-rotate.c:
5403 * tests/Makefile.am:
5407 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
5409 * clutter/clutter-behaviour-bspline.c: Kill off some deep pointer
5410 indirections; use CLUTTER_NOTE() instead of ifdeffed out g_debug();
5411 add checks in every public entry point; move some initialisations
5412 of private data structures out of the constructor and into the
5413 init function, where they belong.
5415 2007-07-25 Matthew Allum <mallum@openedhand.com>
5417 * clutter/clutter-behaviour-rotate.c:
5418 * clutter/clutter-behaviour-rotate.h:
5419 Split 'center' prop into 3 seperate props for each axis.
5420 Use clutter_behaviour_actors_foreach() rather than
5421 clutter_behaviour_get_actors() to avoid copying list.
5422 Call fixed point rotation funcs internally.
5424 * clutter/clutter-effect.c:
5425 * clutter/clutter-effect.h:
5426 Add new simple rotation based effect funcs.
5428 2007-07-25 Emmanuele Bassi <ebassi@openedhand.com>
5430 * clutter/clutter.h: Include clutter-behaviour-depth.h
5432 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
5434 * clutter/clutter-behaviour-rotate.[ch]: Add a center property
5435 for the center or rotation; implement the set_bounds() methods.
5437 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
5439 * clutter/eglx/clutter-backend-egl.c:
5440 * clutter/eglnative/clutter-backend-egl.c:
5441 * clutter/sdl/clutter-backend-sdl.c: Destroy the stage in every
5444 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
5446 * clutter/glx/clutter-backend-glx.c: Destroy the stage, don't
5449 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
5451 * clutter/clutter-main.c: Add debug markers.
5453 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
5455 * clutter/clutter-texture.[ch]: Add a ClutterTextureError
5456 to be returned by the loader functions; use the GObject API
5457 to allocate the private data structure instead of managing it
5458 ourselves; add documentation.
5460 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
5462 * clutter/clutter-actor.c:
5463 * clutter/clutter-box.h:
5464 * clutter/clutter-stage.c: Documentation fixes.
5466 2007-07-24 Matthew Allum <mallum@openedhand.com>
5468 * clutter/cogl/gl/cogl-defines.h:
5469 Add CGL_UNSIGNED_INT_8_8_8_8_REV (for big endian machines)
5471 2007-07-24 Matthew Allum <mallum@openedhand.com>
5473 * clutter/cogl/gl/cogl-defines.h:
5474 Another GL_TEXTURE_RECTANGLE_ARB related fix (#404)
5476 2007-07-24 Matthew Allum <mallum@openedhand.com>
5478 * clutter/clutter-backend.c:
5479 Minor build fixes (#413)
5481 2007-07-24 Emmanuele Bassi <ebassi@openedhand.com>
5483 * clutter/clutter-effect.h:
5484 * clutter/clutter-effect.c: Add a secondary constructor for
5485 ClutterEffectTemplate, for use of the bindings.
5487 2007-07-24 Matthew Allum <mallum@openedhand.com>
5489 * clutter/cogl/gles/cogl.c: (cogl_get_bitmasks):
5490 Fix typo calling glGetIntegerv rather than glGetInteger
5492 2007-07-24 Matthew Allum <mallum@openedhand.com>
5494 * clutter/cogl/gl/cogl.c: (cogl_get_features):
5495 learn to use cpp properly.
5497 2007-07-24 Matthew Allum <mallum@openedhand.com>
5499 * clutter/clutter-media.c: (clutter_media_base_init):
5500 Remove #if 0! signal - assume causing issues with binding generation.
5503 * clutter/cogl/gl/cogl.c:
5504 Check GL_TEXTURE_RECTANGLE_ARB and GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB
5505 are defined in gl.h (#404)
5507 2007-07-24 Matthew Allum <mallum@openedhand.com>
5509 * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize):
5510 Create stage window with correct depth/visual. Via patch from
5511 Robert Bragg (#409).
5513 2007-07-23 Matthew Allum <mallum@openedhand.com>
5515 * clutter/clutter-texture.c: (texture_render_to_gl_quad),
5516 (clutter_texture_paint):
5517 Dont be over aggressive in throwing criticals for unrealized
5518 textures. Doesn't make sense for sub classes. (#403)
5520 2007-07-22 Emmanuele Bassi <ebassi@openedhand.com>
5522 Two small fixes for correctly debugging the deinitialisation
5523 phase of the backend:
5525 * clutter/glx/clutter-backend-glx.c: Remove the event source
5526 after we unref the main stage.
5528 * clutter/glx/clutter-stage-glx.c: Add a mark at the end of the
5529 unrealize call (the perl bindings seem to crash before we reach
5532 2007-07-22 Emmanuele Bassi <ebassi@openedhand.com>
5534 * clutter/clutter-behaviour-ellipse.c: Remove pointer indirections;
5535 add sanity checks on the public entry points; make all the public
5536 properties floating point (where needed) andconvert them to fixed
5537 point internally. (Partial fix for #389)
5539 2007-07-22 Emmanuele Bassi <ebassi@openedhand.com>
5541 * clutter/clutter-behaviour.[ch]: Rename ClutterBehaviour::apply
5542 and ClutterBehaviour::remove to ClutterBehaviour::applied and
5543 ClutterBehaviour::removed respectively, and emit them when the
5544 behaviour has been applied (or does no longer apply) to an actor.
5546 (clutter_behaviour_dispose), (clutter_behaviour_finalize),
5547 (clutter_behaviour_class_init): Move the actor removal to the
5548 ::dispose virtual function, and remove the ::finalize one;
5549 document the missing properties and signals.
5551 (clutter_behaviour_clear): Add function to clear a behaviour:
5552 every actor will be unreffed and the ClutterBehaviour::removed
5553 signal will be emitted.
5555 2007-07-21 Matthew Allum <mallum@openedhand.com>
5557 * clutter/clutter-event.c:
5558 Correct clutter_event_get_state () return type. Fixes #398
5560 * clutter/glx/clutter-stage-glx.c:
5561 Disable use XFixes cursor visibility funcs. Appears to have issues
5562 on feisty X Server at least. Fallback should work generally better.
5564 Fix non offscreen clutter_stage_snapshot to also rotate read pixel
5565 data to correct orientation.
5567 2007-07-12 Matthew Allum <mallum@openedhand.com>
5569 * clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch):
5570 Avoid sending too many events which are just pressure changes.
5572 2007-07-12 Matthew Allum <mallum@openedhand.com>
5574 * clutter/clutter-actor.c: (clutter_actor_paint):
5575 * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
5576 * clutter/cogl/cogl.h:
5577 * clutter/cogl/gl/cogl.c: (cogl_get_viewport):
5578 * clutter/cogl/gles/cogl.c: (cogl_get_viewport):
5579 Hopefully fix clutter_actor_at_pos on !32bpp displays.
5580 Based on patch from Pan Bohui, See;
5581 http://bugzilla.openedhand.com/show_bug.cgi?id=390
5586 2007-07-11 Emmanuele Bassi <ebassi@openedhand.com>
5588 * clutter/clutter-behaviour-opacity.c:
5589 Don't check direction in opacity.
5591 2007-07-11 Tomas Frydrych <tf@openedhand.com>
5593 * clutter/clutter-fixed.h:
5594 Fixed CLUTTER_ANGLE_ macros.
5596 * clutter/clutter-behaviour-ellipse.h:
5597 * clutter/clutter-behaviour-ellipse.c:
5598 Implemented "apply" signal closer to position actor on the start
5599 of the elliptic path.
5601 (clutter_behaviour_ellipse_get_angle_begin):
5602 (clutter_behaviour_ellipse_set_angle_begin):
5603 (clutter_behaviour_ellipse_get_angle_end):
5604 (clutter_behaviour_ellipse_set_angle_end):
5605 (clutter_behaviour_ellipse_get_angle_tilt):
5606 (clutter_behaviour_ellipse_set_angle_tilt):
5607 Renamed with an x suffix; added versions for angles in degrees.
5609 2007-07-09 Matthew Allum <mallum@openedhand.com>
5613 * clutter/clutter-stage.c:
5614 * clutter/glx/clutter-stage-glx.c:
5615 Fix cursor visibility property.
5616 Force a repaint before mapping to attempt to avoid flicker.
5618 2007-07-09 Richard Purdie <rpurdie@openedhand.com>
5620 * clutter/eglnative/clutter-event-egl.c:
5622 Add tslib support to eglnative backend.
5624 2007-07-09 Richard Purdie <rpurdie@openedhand.com>
5626 * clutter/eglnative/clutter-backend-egl.c:
5627 Tweaks to the eglnative backend.
5629 2007-07-09 Richard Purdie <rpurdie@openedhand.com>
5631 * clutter/clutter-backend.c:
5632 Make the backend add_option function optional.
5634 2007-07-09 Emmanuele Bassi <ebassi@openedhand.com>
5636 * clutter/clutter-behaviour-depth.h:
5637 * clutter/clutter-behaviour-depth.c:
5638 * clutter/Makefile.am: Add ClutterBehaviourDepth, a simple
5639 behaviour controlling the depth of a set of actors.
5641 * clutter/clutter-behaviour-opacity.c: Always make sure that
5642 the opacity applied to the actors is a positive integer, even
5643 in case where the start and end opacity are reversed; use the
5644 correct cast macros for passing the opacity as a pointer.
5646 2007-07-06 ====================== 0.3.1 Release ========================
5648 2007-07-06 Matthew Allum <mallum@openedhand.com>
5654 2007-07-06 Matthew Allum <mallum@openedhand.com>
5656 * clutter/eglx/Makefile.am:
5657 * clutter/eglx/clutter-egl.h:
5658 * clutter/eglx/clutter-event-egl.c:
5659 * clutter/eglx/clutter-stage-egl.c:
5660 Rename clutter-egl.h -> clutter-eglx.h
5664 Add info re EGL split.
5666 2007-07-06 Matthew Allum <mallum@openedhand.com>
5668 * clutter/Makefile.am:
5669 * clutter/eglnative/Makefile.am:
5670 * clutter/eglnative/clutter-backend-egl.c:
5671 * clutter/eglnative/clutter-backend-egl.h:
5672 * clutter/eglnative/clutter-egl.h:
5673 * clutter/eglnative/clutter-event-egl.c:
5674 * clutter/eglnative/clutter-stage-egl.c:
5675 * clutter/eglnative/clutter-stage-egl.h:
5676 * clutter/eglx/Makefile.am:
5677 * clutter/eglx/clutter-backend-egl.c:
5678 * clutter/eglx/clutter-egl.h:
5679 * clutter/eglx/clutter-event-egl.c:
5680 * clutter/eglx/clutter-stage-egl.c:
5682 Add a new 'native' EGL backend for non X based EGL's
5683 (i.e on framebuffer).
5684 Rename old backend to 'eglx' and namespace public funcs with this.
5686 * clutter/pango/pangoclutter-private.h:
5687 Add extra checks for expected defines.
5689 2007-07-06 Matthew Allum <mallum@openedhand.com>
5693 Updates for upcoming 0.3.1 release.
5694 * clutter/egl/Makefile.am:
5695 * clutter/egl/clutter-backend-egl.c:
5696 * clutter/egl/clutter-backend-egl.h:
5697 * clutter/egl/clutter-egl.h:
5698 * clutter/egl/clutter-event-egl.c:
5699 * clutter/egl/clutter-stage-egl.c:
5700 * clutter/egl/clutter-stage-egl.h:
5704 2007-07-06 Matthew Allum <mallum@openedhand.com>
5706 * clutter/clutter-box.c: (clutter_box_pick):
5707 Call clutter_box_paint rather than actor paint method avoiding
5708 infinte loop (Fixes test-boxes crasher).
5710 * clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_unrealize):
5711 Trap the X calls to avoid potential X errors.
5713 2007-07-06 Ross Burton <ross@openedhand.com>
5715 * tests/Makefile.am:
5718 2007-07-05 Tomas Frydrych <tf@openedhand.com>
5720 * cluter/clutter-group.c:
5721 (clutter_group_query_coords:)
5722 Reset box size to zero width and height to report correct size if
5723 the contents of the group shrink.
5725 2007-07-05 Emmanuele Bassi <ebassi@openedhand.com>
5727 * clutter/clutter-rectangle.c: Fix off-by-border-width bug
5728 in the border creation of a ClutterRectangle.
5730 2007-07-05 Tomas Frydrych <tf@openedhand.com>
5732 * clutter/clutter-fixed.h:
5733 * clutter/clutter-fixed.c:
5734 Added CLUTTER_FLOAT_TO_UINT macro;
5738 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
5740 * clutter/*: Loads of fixes for the API reference.
5742 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
5744 Merge from clutter/work
5746 * clutter/clutter-alpha.[ch]: Fix the argument names for
5747 the smoothstep alpha functions, for gtk-doc.
5749 * clutter/clutter-group.c (clutter_group_remove_all): Fix
5750 the iteration on the children list.
5752 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
5754 * clutter/clutter-main.c (clutter_redraw): Move the stage
5755 paint init call from the main redraw function...
5757 * clutter/clutter-stage.c (clutter_stage_paint): ... to the
5758 ClutterActor::paint() overridden method in ClutterStage.
5760 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
5762 * clutter/clutter.h:
5763 * clutter/Makefile.am: ClutterBackend is marked as public API,
5764 so install the clutter-backend.h header and include it when
5765 including clutter.h.
5767 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
5769 * clutter/clutter-entry.[ch]: Various fixes to ClutterEntry:
5770 fix code style issues; add documentation for the various
5771 properties; add ClutterEntry:entry-padding property, for controlling
5772 the text padding (until we have style properties separated from
5773 the object properties); notify property changes; free resources
5774 in the ::finalize method; rename clutter_entry_add() to
5775 clutter_entry_insert_unichar(), and clutter_entry_remove() to
5776 clutter_entry_delete_chars() - for bindings and for matching the
5777 insert_text() and delete_text() existing methods; add a getter
5778 method for the max-length property.
5780 2007-07-04 Emmanuele Bassi <ebassi@openedhand.com>
5782 * clutter/clutter-actor.[ch]: Use the right get_type() function
5783 name for ClutterVertex, and add the CLUTTER_TYPE_VERTEX macro.
5785 2007-07-03 Ross Burton <ross@openedhand.com>
5788 Check for XFixes 4 and above.
5790 2007-07-02 Tomas Frydrych <tf@openedhand.com>
5792 * clutter/clutter-actor.h:
5793 * clutter/clutter-actor.c:
5794 * tests/test-project.c:
5795 (clutter_actor_apply_transform_to_point):
5796 Use ClutterVertex for input and output parameters.
5798 2007-07-01 Emmanuele Bassi <ebassi@openedhand.com>
5800 Merge from clutter.git/work branch
5802 * clutter/clutter-effect.[ch]: Clean up ClutterEffect; use a
5803 pointer to access the private data structure, instead of doing
5804 a type check every time. Add description for the API reference.
5806 * docs/reference/clutter-sections.txt:
5807 * clutter/*.[ch]: Add various documentation fixes.
5809 * clutter/clutter-entry.c: Remove a stray g_print() call.
5811 2007-06-29 Neil J. Patel <njp@o-hand.com>
5813 * clutter/clutter-entry.c: (clutter_entry_handle_key_event),
5814 (clutter_entry_add), (clutter_entry_remove):
5815 Check if unichar == 0, and if so, return, as it will cause a delete in
5818 2007-06-20 ============== 0.3 Release ====================================
5820 2007-06-29 Matthew Allum <mallum@openedhand.com>
5822 * clutter/clutter-texture.c: (texture_upload_data):
5823 Fix a SEGV for GL ES textures.
5825 * clutter/cogl/gles/cogl.c: (cogl_setup_viewport):
5826 Tweak default z_camera for 60 degrees like GL.
5828 * clutter/egl/clutter-backend-egl.c::
5829 * clutter/egl/clutter-stage-egl.c:
5830 Fix edpy usage (thanks to Kaj Gronholm).
5832 2007-06-29 Tomas Frydrych <tf@openedhand.com>
5834 * clutter/clutter-group.c:
5835 (clutter_group_query_coords):
5836 Fixed box calculation.
5838 2007-06-28 Tomas Frydrych <tf@openedhand.com>
5840 * clutter/clutter-group.c:
5841 (clutter_group_raise):
5842 (clutter_group_lower):
5843 Fixed SIGSEGV when attempting to raise / lower an only child.
5845 2007-06-28 Matthew Allum <mallum@openedhand.com>
5847 * clutter/cogl/gl/cogl.c: (cogl_setup_viewport):
5848 Improve fixed z_camera value for defualt perspective.
5849 Appears pixel perfect on ATI and Intel at least
5851 2007-06-28 Tomas Frydrych <tf@openedhand.com>
5853 * tests/test-perspective.c:
5854 Moved red dots to be positioned 1px off each corner.
5856 2007-06-28 Matthew Allum <mallum@openedhand.com>
5858 * tests/Makefile.am:
5859 * tests/test-perspective.c:
5860 Add simple perspective test
5862 2007-06-27 Tomas Frydrych <tf@openedhand.com>
5864 * clutter/clutter-actor.h:
5865 * clutter/clutter-actor.c:
5866 * tests/test-project.c:
5867 Renamed clutter_actor_project_point() to
5868 clutter_actor_apply_trasform_to_point() and
5869 clutter_actor_project_vertices() to clutter_actor_get_vertices().
5871 2007-06-27 Tomas Frydrych <tf@openedhand.com>
5873 * clutter/clutter-actor.h:
5874 * clutter/clutter-actor.c:
5875 * tests/test-project.c:
5876 (clutter_actor_project_point):
5877 Separated input from output parameters.
5879 2007-06-27 Matthew Allum <mallum@openedhand.com>
5882 Dont remove README on make clean
5884 2007-06-27 Tomas Frydrych <tf@openedhand.com>
5886 * clutter/clutter-actor.c:
5887 (_clutter_actor_apply_modelview_transform):
5888 Fixed incorrect order of scaling an rotation that was causing
5889 objects that were both rotated and scaled to change position.
5891 2007-06-27 Tomas Frydrych <tf@openedhand.com>
5893 * clutter/clutter-actor.c:
5894 (clutter_actor_scale_with_gravityx):
5895 Made to work after changes to the behavivour of
5896 clutter_actor_get_absolute_size() for rotated actors.
5898 2007-06-26 Tomas Frydrych <tf@openedhand.com>
5900 * clutter/cogl/gl/cogl.c:
5901 * clutter/cogl/gles/cogl.c:
5902 (cogl_setup_viewport):
5903 For default perspective angle of 60 degrees, use a hardcoded
5904 z_camera constant that provides minimal artefacts when rendering
5905 text; for other angles we calculate.
5907 2007-06-26 Tomas Frydrych <tf@openedhand.com>
5909 * clutter/clutter-actor.h:
5910 * clutter/clutter-actor.c:
5911 Added fixed point version of clutter_actor_rotate_*() functions
5912 and accessors for rotation angles.
5914 2007-06-25 Matthew Allum <mallum@openedhand.com>
5917 Update a little more.
5918 * clutter/clutter-effect.c:
5919 Add missing func documentation
5920 * clutter/clutter-rectangle.c:
5923 2007-06-25 Tomas Frydrych <tf@openedhand.com>
5925 * clutter/clutter-fixed.h:
5926 Fixed definition of clutter_cosx() macro.
5928 * clutter/clutter-stage.c:
5929 * clutter/cogl/cogl.h:
5930 * clutter/cogl/gl/cogl.c:
5931 * clutter/cogl/gles/cogl.c:
5932 Changed ClutterPerspective.fovy from ClutterAngle to degrees to
5933 improve precission in Z-camera calculations.
5935 2007-06-22 Matthew Allum <mallum@openedhand.com>
5941 Move back to regular README naming at least for now.
5943 2007-06-22 Matthew Allum <mallum@openedhand.com>
5948 Update for 0.3 release.
5950 * clutter/clutter-actor.c:
5953 * clutter/clutter-texture.c:
5954 Various minor additions for handling non RGBA data.
5955 Fix a typo breaking clutter_texture_get_pixbuf() on tiled textures.
5957 * tests/test-actors.c:
5958 Disable scaling to avoid drifting (temporary till API is fixed)
5960 2007-06-21 Emmanuele Bassi <ebassi@openedhand.com>
5962 * clutter/clutter-timeline.c: Allow disabling the timeline pool
5963 by using the CLUTTER_TIMELINE environment variable set to
5966 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
5968 * README.in: Update release notes.
5970 2007-06-19 Matthew Allum <mallum@openedhand.com>
5972 * clutter/clutter-main.c: (clutter_init_with_args), (clutter_init):
5973 Safer checks for setting progname if NULL is passed in init.
5975 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
5977 * autogen.sh: autoreconf needs a README.
5979 2007-06-19 Matthew Allum <mallum@openedhand.com>
5983 * clutter/clutter-main.c:
5984 Set a default window title based on g_prgname().
5986 * clutter/clutter-stage.c:
5987 * clutter/clutter-stage.h:
5988 * clutter/egl/clutter-stage-egl.c:
5989 * clutter/glx/clutter-stage-glx.c:
5990 * clutter/sdl/clutter-stage-sdl.c:
5991 Alter draw_to_pixbuf to return a pixbuf
5994 Only full in gdk-pixbuf-xlib as a GLX backend dep.
5996 * tests/test-entry.c:
5997 Fix a couple of warnings.
5999 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
6001 * Makefile.am: Add README.in to the EXTRA_DIST.
6003 2007-06-19 Emmanuele Bassi <ebassi@openedhand.com>
6006 * README.in: Use a template for the README file, so that
6007 it gets the right version number.
6009 2007-06-19 Matthew Allum <mallum@openedhand.com>
6011 * clutter/clutter-stage.c:
6012 * clutter/clutter-stage.h:
6013 * clutter/glx/clutter-stage-glx.c:
6014 * clutter/sdl/clutter-stage-sdl.c:
6015 Add window title setting/getting functionality.
6017 * clutter/clutter-event.c: (clutter_key_event_unicode):
6018 Remove uneeded convert case call.
6020 * clutter/cogl/gl/cogl.c: (cogl_rectangle)
6021 Use parameters correctly for underlying GL rect call.
6023 * tests/test-entry.c:
6026 2007-06-18 Matthew Allum <mallum@openedhand.com>
6028 * clutter/sdl/clutter-event-sdl.c:
6029 Seemingly fix SDL Event source.
6030 Add some very basic SDL keysym translation.
6031 (Thanks to Thomas Van Machelen for initial translation code)
6033 * tests/test-events.c:
6034 Dump some info on keysyms pressed.
6036 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
6038 * clutter/clutter-actor.h:
6039 * clutter/clutter-stage.h: Add 32 padding slots; when we
6040 reach 1.0 it'll be a long road until the following ABI
6043 * tests/test-behave.c: Don't forget to include headers.
6045 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
6047 * clutter/clutter-container.h:
6048 * clutter/clutter-layout.h: Interfaces are not checked
6049 at compile-time, so there's not need to add padding to
6052 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
6054 * configure.ac: Partially revert last commit, and fail
6055 with AC_MSG_ERROR() instead of disabling the manual build
6056 if no jw and xmlto were found.
6058 2007-06-16 Emmanuele Bassi <ebassi@openedhand.com>
6060 * configure.ac: If the programs required to build the manual
6061 are not found and --enable-manual was passed, then just print
6062 a warning and disable the manual build instead of aborting the
6065 * doc/manual/Makefile.am: Use the full path gathered by the
6066 configure script when invoking jw and xmlto.
6068 2007-06-16 Matthew Allum <mallum@openedhand.com>
6070 * clutter/clutter-actor.c:
6071 Fix typo in x rotation transform (Thanks to Johan Billen #138)
6074 * doc/manual/Makefile.am:
6075 Fix manual build and required program check.
6077 * tests/Makefile.am:
6080 2007-06-15 Tomas Frydrych <tf@openedhand.com>
6082 * clutter/clutter-actor.c:
6083 Added some comments; renamed MTX_GL_SCALE to MTX_GL_SCALE_X for
6084 consistency; removed some debug output.
6086 2007-06-14 Tomas Frydrych <tf@openedhand.com>
6088 * clutter/clutter-vbox.c:
6089 * clutter/clutter-hbox.c:
6090 (clutter_vbox_pack_child):
6091 (clutter_hbox_pack_child):
6094 2007-06-14 Emmanuele Bassi <ebassi@openedhand.com>
6096 * clutter/clutter-box.[ch]: Base class for layout containers.
6098 * clutter/clutter-hbox.[ch]: Horizontal box actor.
6100 * clutter/clutter-vbox.[ch]: Vertical box actor.
6102 * clutter/clutter.h:
6103 * clutter/Makefile.am: Build glue
6105 * tests/Makefile.am:
6106 * tests/test-boxes.c: Test suite for ClutterBox API and
6109 2007-06-14 Matthew Allum <mallum@openedhand.com>
6111 * clutter/cogl/gl/cogl.c: (cogl_check_extension):
6112 Actually populate this func and remove the static alternate
6113 named one. Means GLX actually checks for available extensions.
6114 Other minor tidy ups.
6116 * clutter/glx/clutter-backend-glx.c:
6117 * clutter/glx/clutter-backend-glx.h:
6118 Add support for GLX_SGI_swap_control to do vblanking prefering
6119 over glXGetVideoSyncSGI. Should fix issues on Intel chips with
6120 very slow frame rates due to vblank problems.
6121 Thanks to Michel Danzer for tips, see;
6122 http://bugs.freedesktop.org/show_bug.cgi?id=10542
6124 * test/test-actors.c:
6127 2007-06-14 Emmanuele Bassi <ebassi@openedhand.com>
6129 * clutter/clutter-timeout-pool.c: Make ClutterTimeoutPool
6130 more thread-safe, using a static lock.
6132 (clutter_timeout_pool_dispatch), (clutter_timeout_pool_remove): Fix
6133 a race condition-turned-in-memory corruption bug, triggered by
6134 removing a timeout from the pool while still spinning the pool
6137 2007-06-14 Emmanuele Bassi <ebassi@openedhand.com>
6140 * doc/manual/Makefile.am: Find xmlto and jw in the path and
6141 use the symbolic names when building the manual.
6143 2007-06-14 Tomas Frydrych <tf@openedhand.com>
6145 * clutter/clutter-actor.c:
6146 (clutter_actor_get_abs_position):
6147 (clutter_actor_get_abs_size):
6148 Reimplement using clutter_actor_project_point() and
6149 clutter_actor_project_vertices().
6151 * tests/test-project.c:
6152 Rename clutter_actor_allocate_coords -> clutter_actor_query_coords
6154 2007-06-14 Matthew Allum <mallum@openedhand.com>
6156 * clutter/clutter-actor.c:
6157 * clutter/clutter-actor.h:
6158 * clutter/clutter-group.c:
6159 * clutter/clutter-label.c:
6160 * clutter/egl/clutter-stage-egl.c:
6161 * clutter/glx/clutter-stage-glx.c:
6162 * clutter/sdl/clutter-stage-sdl.c:
6163 Rename clutter_actor_allocate_coords -> clutter_actor_query_coords
6165 Change repaints to G_PRIORITY_DEFAULT + 10.
6166 (timelines are G_PRIORITY_DEFAULT + 30, events G_PRIORITY_DEFAULT)
6168 * clutter/glx/clutter-event-glx.c:
6169 Handle shift modifier in keycode -> keysym translation.
6171 * tests/test-actors.c:
6172 Remove (broken) screen saver code.
6173 Add scaling behaviour, clean code a little.
6175 2007-06-13 Tomas Frydrych <tf@openedhand.com>
6177 * clutter/clutter-actor.c:
6178 (clutter_actor_project_vertices):
6179 (clutter_actor_project_proint):
6180 Fixed translation of Y coords to match the windowing system.
6182 * clutter/egl/clutter-stage-egl.c:
6183 * clutter/glx/clutter-stage-glx.c:
6184 * clutter/sdl/clutter-stage-sdl.c:
6185 (clutter_stage_*_request_size):
6186 Initialize viewport when setting/resetting stage side.
6189 * tests/test-project.c:
6190 An interactive test of the projection stuff.
6192 2007-06-12 Tomas Frydrych <tf@openedhand.com>
6194 * clutter/clutter-main.c:
6196 Clear CLUTTER_ACTOR_SYNC_MATRICES flag after setting up viewport.
6198 2007-06-12 Matthew Allum <mallum@openedhand.com>
6200 * doc/manual/Makefile.am:
6201 Fix typo in Makefile so PDF's actually get built.
6203 * doc/manual/clutter-manual.xml.in:
6204 Add an FAQ section with initial entry.
6206 2007-06-12 Tomas Frydrych <tf@openedhand.com>
6208 * clutter/clutter-fixed.h:
6209 Added shorthand CFX_QMUL macro.
6211 * clutter/clutter-private.h:
6212 * clutter/clutter-actor.h:
6213 * clutter/clutter-actor.c:
6214 Replaced ClutterVertices with ClutterVertex;
6216 (clutter_actor_get_transformed_vertices):
6217 (clutter_actor_get_transformed_point):
6218 Replaced with clutter_actor_projected_vertices and
6219 clutter_actor_projected_point.
6221 (_clutter_actor_apply_modelview_transform):
6222 (_clutter_actor_apply_modelview_transform_recursive):
6223 Private functions to push actor modelview transforms on OpenGL
6226 * clutter/cogl/cogl.h:
6227 * clutter/cogl/gl/cogl.c:
6228 * clutter/cogl/gles/cogl.c:
6229 (cogl_get_viewport):
6230 (cogl_get_modelview_matrix):
6231 (cogl_get_projection_matrix):
6232 Functions to access OpenGL transforms.
6234 2007-06-12 Matthew Allum <mallum@openedhand.com>
6236 * clutter/clutter-alpha.c:
6237 Remove stray g_debug.
6239 * clutter/clutter-behaviour-rotate.c:
6240 Register private class member.
6242 * clutter/clutter-behaviour.c:
6243 * clutter/clutter-behaviour.h:
6244 Add applied and removed signals.
6248 * examples/Makefile.am:
6250 * examples/behave.c:
6251 * examples/slider.c:
6252 * examples/super-oh.c:
6253 * examples/test-entry.c:
6254 * examples/test-text.c:
6256 * tests/Makefile.am:
6257 Remove examples, moving applicable code into tests.
6259 2007-06-11 Tomas Frydrych <tf@openedhand.com>
6261 * clutter/clutter-alpha.c:
6262 (clutter_alpha_sine_inc):
6263 (clutter_alpha_sine_dec):
6264 (clutter_alpha_sine_half):
6265 Fixed unsigned overflow.
6267 2007-06-11 Emmanuele Bassi <ebassi@openedhand.com>
6269 * clutter/clutter-event.h: Add full modifier masks enums.
6271 * clutter/glx/clutter-event-glx.c: Copy the modifier masks from
6272 the native X event structure.
6274 * clutter/clutter-event.c: Convert to upper case if the
6275 shift or the lock masks are applied.
6277 2007-06-09 Emmanuele Bassi <ebassi@openedhand.com>
6279 * clutter/clutter.h:
6280 * clutter/clutter-timeout-pool.[ch]: Add a timeout pool source;
6281 every timeout added to this pool will use a single slice of the
6284 * clutter/clutter-timelince.c: Use a per-class timeout pool for
6287 2007-06-08 Matthew Allum <mallum@openedhand.com>
6289 * clutter/clutter-texture.c: (clutter_texture_get_pixbuf):
6290 Remove stray printf.
6292 2007-06-08 Matthew Allum <mallum@openedhand.com>
6294 * clutter/clutter-actor.c:
6295 * clutter/clutter-debug.h:
6296 * clutter/clutter-main.c:
6297 * clutter/clutter-main.h:
6298 * clutter/clutter-private.h:
6299 * clutter/clutter-timeline.c:
6300 Add 'schedule' debug flag and new CLUTTER_TIMESTAMP macro.
6302 * clutter/clutter-texture.c:
6303 * clutter/clutter-texture.h:
6304 * clutter/cogl/cogl.h:
6305 * clutter/cogl/gl/cogl-defines.h:
6306 * clutter/cogl/gles/cogl-defines.h:
6307 * clutter/cogl/gl/cogl.c:
6308 * clutter/cogl/gles/cogl.c:
6309 Add initial experiemental YUV texture support.
6310 Move texture rect size checks into cogl.
6311 Better handle moving texture data from video -> system memory
6312 (if support available).
6314 2007-06-07 Neil J. Patel <njp@o-hand.com>
6316 * clutter/clutter-entry.c: (clutter_entry_class_init),
6317 (clutter_entry_handle_key_event):
6318 * clutter/clutter-entry.h:
6319 Added an 'activated' signal, which is emitted when the 'Enter' key is
6322 * examples/test-entry.c: (on_entry_activated), (main):
6323 Added a test handler for the activated signal.
6325 2007-06-07 Emmanuele Bassi <ebassi@openedhand.com>
6327 * clutter/*: Move documentation from the templates into the
6330 2007-06-07 Emmanuele Bassi <ebassi@openedhand.com>
6332 * clutter/clutter-container.[ch]: Add a generic actor container
6333 interface, for actors to implement without subclassing ClutterGroup.
6335 * clutter/clutter-group.[ch]: Make ClutterGroup implement the
6336 ClutterContainer interface, and deprecate the colliding methods.
6338 * clutter/clutter-layout.[ch]: Add extended layout interface.
6339 Actors and containers requiring or honouring complex layout
6340 management should implement this interface and provide at least
6341 one of the available layout types: width for height, height for
6342 width, natural size, iterative size request.
6344 * clutter/clutter-label.c: A ClutterLabel requires height for
6345 width layout management, so it implements the ClutterLayout
6348 * clutter/Makefile.am: Add new files to the build.
6351 * examples/*.c: Update tests and examples code to use the
6352 new ClutterContainer API instead of ClutterGroup.
6354 2007-06-07 Emmanuele Bassi <ebassi@o-hand.com>
6356 * clutter/clutter-timeline.[ch]: Add a "delay" property, which
6357 delays the real start of the timeline by a number of milliseconds.
6359 (clutter_timeline_clone): Rename clutter_timeline_copy() to
6360 clutter_timeline_clone(), for consistency.
6362 2007-06-01 Neil J. Patel <njp@o-hand.com>
6364 * clutter/clutter-entry.c: (clutter_entry_set_property),
6365 (clutter_entry_get_property), (clutter_entry_class_init),
6366 (clutter_entry_init), (clutter_entry_set_text),
6367 (clutter_entry_set_max_length):
6368 * clutter/clutter-entry.h:
6369 * examples/test-entry.c: (main):
6370 Added a max-length property whihc limits the length of the text in the
6373 2007-06-01 Neil J. Patel <njp@o-hand.com>
6375 * clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position),
6376 (clutter_entry_paint), (clutter_entry_init),
6377 (clutter_entry_handle_key_event):
6378 Clipping within the entry class to stop it over-slipping its
6380 Text will move within the clip region to keep the cursor always
6382 Added some padding to the left and right to make sure cursor is
6385 2007-06-01 Tomas Frydrych <tf@openedhand.com>
6387 * clutter/clutter-actor.c:
6388 * clutter/clutter-stage.c:
6389 * clutter/clutter-private.h:
6390 Removed perspective matrix caching from ClutterStage.
6392 2007-06-01 Neil J. Patel <njp@o-hand.com>
6394 * clutter/clutter-entry.c: (clutter_entry_set_property),
6395 (clutter_entry_get_property), (clutter_entry_ensure_layout),
6396 (clutter_entry_class_init), (clutter_entry_init),
6397 (clutter_entry_set_visibility), (clutter_entry_get_visibility),
6398 (clutter_entry_set_invisible_char),
6399 (clutter_entry_get_invisible_char):
6400 * clutter/clutter-entry.h:
6401 Added text-visibility, which will allow you to show all entered text
6402 as a nominated charaecter ('*' is default).
6404 * examples/test-entry.c: (main):
6406 2007-06-01 Neil J. Patel <njp@o-hand.com>
6408 * clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position),
6409 (clutter_entry_clear_cursor_position),
6410 (clutter_entry_paint_cursor), (clutter_entry_paint),
6411 (clutter_entry_class_init), (clutter_entry_set_text),
6412 (clutter_entry_set_position):
6413 * clutter/clutter-entry.h:
6414 Added a signla to track cursor movements.
6415 Moved the sursor painting function so it can be subclassed.
6417 2007-06-01 Tomas Frydrych <tf@openedhand.com>
6419 * clutter/clutter-actor.c:
6420 (clutter_actor_get_transformed_point):
6421 Make input again relative to the actor; feed depth into transform.
6423 2007-06-01 Neil J. Patel <njp@o-hand.com>
6425 * clutter/clutter-entry.c: (clutter_entry_class_init),
6426 (clutter_entry_set_text):
6427 * clutter/clutter-entry.h:
6428 * examples/test-entry.c: (on_entry_text_changed), (main):
6429 Added a text-changed signal to the entry.
6431 2007-06-01 Neil J. Patel <njp@o-hand.com>
6433 * clutter/clutter-effect.h:
6434 Removed extra G_END_DECLS outside the #endif
6436 * clutter/clutter-entry.c: (clutter_entry_handle_key_event),
6437 (clutter_entry_add):
6438 * clutter/clutter-entry.h:
6439 * examples/test-entry.c: (on_key_release_cb):
6440 Added a function to deal with ClutterKeyEvents. Handles the majority
6441 of entry-related keyboard keys. However modifiers still need to be
6444 2007-06-01 Tomas Frydrych <tf@openedhand.com>
6446 * clutter/clutter-actor.c:
6448 Apply perspective transform before all other transforms.
6450 2007-06-01 Tomas Frydrych <tf@openedhand.com>
6452 * clutter/clutter-stage.c:
6453 (clutter_stage_init):
6454 Call _clutter_stage_refresh_perspective_matrix to initialize the
6455 matrix for default values.
6457 2007-06-01 Tomas Frydrych <tf@openedhand.com>
6459 * clutter/clutter-fixed.h:
6460 * clutter/clutter-behaviour-ellipse.h:
6461 * clutter/clutter-behaviour-ellipse.c:
6462 * clutter/clutter-behaviour-bspline.h:
6463 * clutter/clutter-behaviour-bspline.c:
6464 Documentation fixes.
6466 2007-05-31 Tomas Frydrych <tf@openedhand.com>
6468 * clutter/clutter-stage.c:
6469 * clutter/clutter-private.h:
6470 (_clutter_stage_get_perspective_matrix):
6473 * clutter/clutter-actor.c:
6474 (clutter_actor_get_tranformed_vertices):
6475 (clutter_actor_get_tranformed_point):
6476 Apply perspective matrix on the top of actor transform matrix.
6478 2007-05-31 Neil J Patel <njp@o-hand.com>
6480 * clutter/Makefile.am:
6481 * clutter/clutter-entry.c: (clutter_entry_set_property),
6482 (clutter_entry_get_property), (clutter_entry_ensure_layout),
6483 (clutter_entry_clear_layout),
6484 (clutter_entry_ensure_cursor_position), (clutter_entry_paint),
6485 (clutter_entry_request_coords), (clutter_entry_dispose),
6486 (clutter_entry_finalize), (clutter_entry_class_init),
6487 (clutter_entry_init), (clutter_entry_new_with_text),
6488 (clutter_entry_new_full), (clutter_entry_new),
6489 (clutter_entry_get_text), (clutter_entry_set_text),
6490 (clutter_entry_get_font_name), (clutter_entry_set_font_name),
6491 (clutter_entry_set_color), (clutter_entry_get_color),
6492 (clutter_entry_get_layout), (clutter_entry_set_alignment),
6493 (clutter_entry_get_alignment), (clutter_entry_set_position),
6494 (clutter_entry_get_position), (clutter_entry_add),
6495 (clutter_entry_remove), (clutter_entry_insert_text),
6496 (clutter_entry_delete_text), (clutter_entry_set_visible_cursor),
6497 (clutter_entry_get_visible_cursor):
6498 * clutter/clutter-entry.h:
6499 * clutter/clutter.h:
6500 * examples/Makefile.am:
6501 Initial import of ClutterEntry actor.
6503 * examples/test-entry.c: (on_key_release_cb), (main):
6504 A basic test for ClutterEntry
6506 2007-05-31 Tomas Frydrych <tf@openedhand.com>
6508 * clutter/clutter-actor.c:
6509 (clutter_actor_get_transformed_point):
6510 Fixed coordinance translation.
6512 2007-05-31 Matthew Allum <mallum@openedhand.com>
6514 * clutter/clutter-actor.c:
6515 * clutter/clutter-actor.h:
6516 Add clutter_actor_get_transformed_point()
6518 * clutter/clutter-main.c:
6519 Plug in perspective setup to redraw
6521 * clutter/clutter-stage.c:
6522 * clutter/clutter-stage.h:
6523 Remove audience code for now.
6525 2007-05-31 Matthew Allum <mallum@openedhand.com>
6527 * clutter/egl/clutter-backend-egl.c:
6528 * clutter/egl/clutter-backend-egl.h:
6529 * clutter/egl/clutter-event-egl.c:
6530 * clutter/egl/clutter-stage-egl.c:
6531 * clutter/egl/clutter-stage-egl.h:
6534 2007-05-31 Matthew Allum <mallum@openedhand.com>
6536 * clutter/glx/clutter-backend-glx.c:
6537 * clutter/glx/clutter-backend-glx.h:
6538 * clutter/glx/clutter-event-glx.c:
6539 * clutter/glx/clutter-glx.h:
6540 * clutter/glx/clutter-stage-glx.c:
6541 * clutter/glx/clutter-stage-glx.h:
6542 Change type nameing from Glx -> GLX.
6543 Add basic event filtering functionality
6545 2007-05-31 Tomas Frydrych <tf@openedhand.com>
6547 * clutter/clutter-behaviour-ellipse.c:
6548 Changed behaviour so that a beginning angle of 0 would correspond
6551 2007-05-31 Tomas Frydrych <tf@openedhand.com>
6553 * clutter/clutter-fixed.h:
6554 * clutter/clutter-fixed.c:
6555 (_clutter_double_to_int):
6556 Fixed return value to gint; added missing cast that broke negative
6559 (CLUTTER_ANGLE_FROM_DEGX):
6560 Swapped division and multiplication around to avoid overflows.
6562 * clutter/clutter-behaviour-ellipse.c:
6563 Fixed incorrectly set lower bounds for angle properties.
6565 * clutter/clutter-actor.h:
6566 * clutter/clutter-actor.c:
6567 Added ClutterVertices type.
6568 (clutter_actor_get_transformed_vertices):
6571 2007-05-31 Matthew Allum <mallum@openedhand.com>
6573 Sync up for whats left for 0.4 release (and 0.6 ideas)
6575 2007-05-31 Matthew Allum <mallum@openedhand.com>
6577 * clutter/clutter-behaviour-ellipse.c:
6578 Remove uneeded knot signal
6580 * clutter/clutter-behaviour-path.c:
6581 Fix so knot signal is emitted only when a knot is reached.
6583 * clutter/clutter-effect.c:
6584 * clutter/clutter-effect.h:
6588 * doc/manual/Makefile.am:
6589 * doc/manual/clutter-manual.xml.in:
6590 * doc/manual/manual.xsl:
6591 * doc/manual/style.css:
6592 Add various bits for application developers manual.
6594 2007-05-30 Tomas Frydrych <tf@openedhand.com>
6596 * clutter/clutter-alpha.h:
6597 * clutter/clutter-alpha.c:
6598 Removed ClutterSmoothstep struct
6599 (clutter_smoothstep_inc_func):
6600 Renamed to clutter_smoothstep_func.
6601 (clutter_smoothstep_added_func):
6604 2007-05-29 Tomas Frydrych <tf@openedhand.com>
6606 * clutter/clutter-fixed.h:
6609 Fixed wrong sign in cos -> sin tranformation.
6611 * clutter/clutter-behaviour-ellipse.c:
6612 (clutter_behaviour_ellipse_advance):
6613 Replaced coordinace calculation for tilted ellipse with a sane
6616 * examples/behave.c:
6617 Added tilt parameter to the example ellptic path.
6619 2007-05-29 Tomas Frydrych <tf@openedhand.com>
6621 * clutter/cogl/gles/cogl.c:
6622 (cogl_setup_viewport):
6623 Fixed z_camera calculation.
6625 2007-05-28 Matthew Allum <mallum@openedhand.com>
6627 * clutter/clutter-texture.c: (clutter_texture_unrealize):
6628 Dont even try to move texture pixels from video -> system
6629 ram on unrealisation for GL/ES
6631 2007-05-28 Matthew Allum <mallum@openedhand.com>
6633 * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
6634 Fix for GL/ES. Barring texture reads this means all clutter
6635 functionality now works on GL/ES! (no doubt with a few yet to
6638 2007-05-28 Matthew Allum <mallum@openedhand.com>
6640 * clutter/clutter-backend.c:
6641 * clutter/clutter-backend.h:
6642 * clutter/glx/clutter-stage-glx.c:
6643 * clutter/glx/clutter-backend-glx.c:
6644 Fix up rendering pipeline removing clutter_backend_XXX_stage_paint
6645 and adding clutter_backend_XXX_redraw instead. Duplicates less
6646 code in backends, avoids clutter_actor_paint() getting called
6647 before stage is set up (viewport wise) and unbreaks things like
6650 * clutter/clutter-actor.c:
6651 * clutter/clutter-actor.h:
6652 * clutter/clutter-main.c:
6653 * clutter/clutter-private.h:
6654 * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
6655 Redo picking functionality a different way (via color indexing)
6656 as to provide more flexibility, possibly speed and more likely
6657 work with GL/ES (doesn't currently however - not sure why).
6659 * clutter/clutter-group.c:
6660 Add groups own 'pick' method.
6662 * clutter/cogl/cogl.h:
6663 * clutter/cogl/gl/cogl.c:
6664 * clutter/cogl/gles/cogl.c:
6665 Move clipping funtionality into cogl.
6667 * clutter/cogl/gles/cogl-defines.h:
6668 Hack around missing BGR format in GL/ES.
6670 * clutter/egl/clutter-backend-egl.c:
6671 * clutter/egl/clutter-backend-egl.h:
6672 * clutter/egl/clutter-stage-egl.c:
6673 * clutter/sdl/clutter-backend-sdl.c:
6674 * clutter/sdl/clutter-backend-sdl.h:
6675 * clutter/sdl/clutter-event-sdl.c:
6676 * clutter/sdl/clutter-stage-sdl.c:
6677 Update backends to newer API.
6678 Add basic mouse event translation to SDL.
6680 2007-05-25 Matthew Allum <mallum@openedhand.com>
6682 * clutter/clutter-color.c: (clutter_color_parse):
6683 Handle #rrggbbaa color setting strings (i.e with alpha).
6684 Set alpha to 0xff if it is not specified.
6686 * clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos)
6687 Increase select buffer.
6689 * examples/super-oh.c:
6690 Fix up use of clutter_group_show_all()
6692 2007-05-25 Tomas Frydrych <tf@openedhand.com>
6694 * clutter/clutter-actor.c:
6695 * clutter/clutter-actor.h:
6696 Renamed clutter_actor_scalex() to clutter_actor_set_scale_with_gravityx
6697 Added floating point version clutter_actor_set_scale_with_gravity.
6699 * clutter/clutter-units.h:
6700 * clutter/clutter-actor.h:
6703 * clutter/clutter-fixed.h:
6704 * clutter/clutter-stage.c:
6705 CLUTTER_ANGLE_FROM_DEG(), CLUTTER_ANGLE_FROM_DEGX()
6706 renamed CLUTTER_DEGF_TO_CLUTTER_ANGLE to CLUTTER_ANGLE_FROM_DEGF
6708 * clutter/clutter-behaviour-ellipse.h:
6709 * clutter/clutter-behaviour-ellipse.c:
6710 * examples/behave.c:
6711 (clutter_behaviour_ellipse_new):
6712 Changed signature to take angles in degrees, and x,y offsets.
6713 (clutter_behaviour_ellipse_newx):
6714 Fixed version clutter_behaviour_ellipse_new.
6715 (clutter_behaviour_ellipse_set_center):
6716 (clutter_behaviour_ellipse_get_center):
6717 Changed signature to take x,y coords instead of ClutterKnot.
6719 clutter/cogl/gl/cogl.c:
6720 clutter/cogl/gles/cogl.c:
6721 (cogl_setup_viewport):
6722 Added z_camera calculation.
6724 2007-05-25 Matthew Allum <mallum@openedhand.com>
6727 Install a default flavour .pc file.
6729 * clutter/clutter-actor.c:
6730 Translate units correctly for translate()
6732 * clutter/clutter-feature.h:
6733 Add new texture features.
6735 * clutter/clutter-fixed.h:
6736 Add clutter angle conversion defines.
6738 * clutter/clutter-group.c:
6739 Use cogl not GL. Dont recurse on show all.
6741 * clutter/clutter-private.h:
6742 Remove sync_viewport.
6744 * clutter/clutter-rectangle.c:
6747 * clutter/clutter-stage.c:
6748 * clutter/clutter-stage.h:
6749 Add perspective settings. Remove viewport_sync.
6750 Add audience stubs. Fix up actor_at_pos a little (still broken)
6752 * clutter/clutter-texture.h:
6753 * clutter/clutter-texture.c:
6754 Redo pixel uploading. Add initial (disabled) YUV support.
6756 * clutter/clutter-timeline.c:
6757 Fire 'completed' signal when looping.
6759 * clutter/cogl/gl/cogl.c:
6760 Move some backend checks here.
6762 * clutter/glx/clutter-backend-glx.c:
6763 Actually check target display has GLX ext.
6765 * clutter/glx/clutter-stage-glx.c:
6766 Handle offscreen failing more gracefully.
6768 * examples/Makefile.am:
6771 * clutter/clutter-main.c:
6772 * clutter/clutter-feature.c:
6773 * clutter/clutter-backend.c:
6774 * clutter/clutter-alpha.c:
6775 Fix a compile warnings.
6777 * tests/Makefile.am:
6778 * tests/test-offscreen.c:
6779 * tests/test-scale.c:
6782 2007-05-23 Tomas Frydrych <tf@openedhand.com>
6784 * clutter/clutter-actor.c:
6785 * clutter/clutter-actor.h:
6786 (clutter_actor_get_abs_size_units):
6787 (clutter_actor_get_abs_position_units):
6788 removed from public api
6790 2007-05-22 Tomas Frydrych <tf@openedhand.com>
6795 * clutter/Makefile.am:
6796 * clutter/clutter-actor.c:
6797 * clutter/clutter-actor.h:
6798 * clutter/clutter-group.c:
6799 * clutter/clutter-label.c:
6800 * clutter/clutter-real.h:
6801 * clutter/clutter-units.h:
6802 * clutter/clutter.h:
6803 * clutter/egl/clutter-stage-egl.c:
6804 * clutter/glx/clutter-stage-glx.c:
6805 * clutter/sdl/clutter-stage-sdl.c:
6806 * examples/Makefile.am:
6807 * tests/Makefile.am:
6808 Removed ClutterReal; added clutter-units.
6810 2007-05-18 Tomas Frydrych <tf@openedhand.com>
6815 * clutter/Makefile.am:
6816 * clutter/clutter-actor.c:
6817 * clutter/clutter-actor.h:
6818 * clutter/clutter-behaviour-scale.c:
6819 * clutter/clutter-behaviour-scale.h:
6820 * clutter/clutter-group.c:
6821 * clutter/clutter-label.c:
6822 * clutter/clutter-real.h:
6823 * clutter/egl/clutter-stage-egl.c:
6824 * clutter/glx/clutter-stage-glx.c:
6825 * examples/Makefile.am:
6826 * tests/Makefile.am:
6829 2007-05-17 Emmanuele Bassi <ebassi@openedhand.com>
6831 * clutter/clutter-main.c: Use clutter_base_init() inside the
6832 initialisation process, instead of calling g_type_init() directly.
6834 * clutter/clutter-alpha.c:
6835 * clutter/clutter-behaviour-bspline.c:
6836 * clutter/clutter-behaviour-ellipse.c: Fix API documentation.
6838 2007-05-17 Matthew Allum <mallum@openedhand.com>
6841 Fix CLUTTER_NO_FPU typo.
6843 2007-05-17 Tomas Frydrych <tf@openedhand.com>
6845 * clutter/clutter-alpha.h:
6846 * clutter/clutter-alpha.c:
6847 * doc/reference/clutter-sections.txt:
6848 Added clutter_exp_inc_func() and clutter_exp_dec_func().
6850 2007-05-16 Emmanuele Bassi <ebassi@openedhand.com>
6852 * clutter/clutter-main.[ch]: Add clutter_base_init(), semi-private
6853 function to initialise just the base Clutter functionalities; it's
6854 only used by gtk-doc to introspect the classes.
6856 * clutter/clutter-feature.c: Do not access the private features
6857 data structure unless it has been initialised.
6859 2007-05-16 Tomas Frydrych <tf@openedhand.com>
6861 * clutter/clutter-alpha.h:
6862 * clutter/clutter-alpha.c:
6863 * doc/reference/clutter-sections.txt:
6864 Added clutter_sine_half().
6866 2007-05-16 Tomas Frydrych <tf@openedhand.com>
6868 * clutter/clutter-alpha.h:
6869 * clutter/clutter-alpha.c:
6870 * doc/reference/clutter-sections.txt:
6871 Fixed clutter_sine_inc(), added clutter_sine_dec().
6873 2007-05-16 Tomas Frydrych <tf@openedhand.com>
6875 * clutter/clutter-alpha.h:
6876 * clutter/clutter-alpha.c:
6877 * doc/reference/clutter-sections.txt:
6878 * doc/rererence/clutter.types:
6879 * doc/reference/tmpl/clutter-alpha.sgml:
6880 clutter_smoothstep_func alpha function,
6881 ClutterSmoothstep struct for smoothstep function data.
6883 2007-05-16 Matthew Allum <mallum@openedhand.com>
6885 * clutter/clutter-backend.c:
6886 * clutter/clutter-backend.h:
6887 * clutter/clutter-feature.c:
6888 * clutter/clutter-feature.h:
6889 * clutter/clutter-main.c:
6890 * clutter/clutter-main.h:
6891 * clutter/clutter-private.h:
6892 * clutter/clutter-stage.c:
6893 * clutter/cogl/cogl.h:
6894 * clutter/cogl/gl/cogl.c:
6895 * clutter/cogl/gles/cogl.c:
6896 * clutter/glx/clutter-backend-glx.c:
6897 * clutter/glx/clutter-backend-glx.h:
6898 * clutter/glx/clutter-glx.h:
6899 * clutter/glx/clutter-stage-glx.c:
6900 * clutter/glx/clutter-stage-glx.h:
6901 Rejig the features() foo, moving mostly into backends/cogl.
6903 2007-05-15 Tomas Frydrych <tf@openedhand.com>
6905 * clutter/clutter-actor.c:
6906 (clutter_actor_get_abs_position):
6907 Removed unnecessary CFX_MUL().
6909 2007-05-15 Tomas Frydrych <tf@openedhand.com>
6911 * clutter/clutter-behaviour-ellipse.h:
6912 * clutter/clutter-behaviour-ellipse.c:
6913 (clutter_behaviour_ellipse_new):
6914 Added a tilt parameter.
6916 2007-05-14 Matthew Allum <mallum@openedhand.com>
6918 * clutter/clutter-behaviour-path.c:
6919 Fix bug where last knot position wouldn't get reached.
6921 * clutter/clutter-group.c:
6924 * clutter/clutter-timeline.h:
6925 * clutter/clutter-timeline.c:
6926 Add clutter_timeline_copy (needed for ClutterEffect)
6928 * clutter/clutter-version.h.in:
6929 Export windowing system / GL backend etc defines.
6931 * clutter/Makefile.am:
6932 * clutter/clutter-effect.c:
6933 * clutter/clutter-effect.h:
6934 * clutter/clutter.h:
6936 * clutter/glx/clutter-backend-glx.c:
6939 * clutter/clutter-alpha.h:
6945 * examples/Makefile.am:
6946 * examples/slider.c:
6947 Add Robs slider game.
6949 2007-05-10 Matthew Allum <mallum@openedhand.com>
6951 * clutter/egl/clutter-backend-egl.c:
6952 * clutter/egl/clutter-event-egl.c:
6953 * clutter/sdl/clutter-backend-sdl.c:
6954 * clutter/sdl/clutter-event-sdl.c:
6955 Fix SDL & EGL backends to work with newer backend code.
6957 2007-05-10 Tomas Frydrych <tf@openedhand.com>
6959 * clutter/clutter-color.h:
6960 * clutter/clutter-color.c:
6961 Added clutter_color_to/from_hlsx()
6962 (clutter_color_to/from_hls):
6963 Clobber hue to 0 .. 250
6965 2007-05-10 Matthew Allum <mallum@openedhand.com>
6967 * clutter/clutter-backend.c:
6968 * clutter/clutter-backend.h:
6969 * clutter/clutter-event.c:
6970 * clutter/clutter-main.c:
6971 * clutter/clutter-private.h:
6972 * clutter/glx/clutter-backend-glx.c:
6973 * clutter/glx/clutter-backend-glx.h:
6974 * clutter/glx/clutter-event-glx.c:
6975 Rejig backend event code as to simplify a little.
6976 NOTE: This breaks non glx backends.
6978 * tests/Makefile.am:
6979 * tests/test-events.c:
6980 Add a very simple event test.
6982 * tests/test-textures.c: (main):
6983 Add some more sizes to the test.
6985 2007-05-05 Matthew Allum <mallum@openedhand.com>
6987 * clutter/clutter-texture.c:
6988 Fix typos with new cogl using texture code. Fixes tiled textures.
6989 Add a check for max npots size.
6993 * tests/Makefile.am:
6994 * tests/test-textures.c:
6995 Add a simple texture test.
6997 2007-05-02 Matthew Allum <mallum@openedhand.com>
6999 * clutter/Makefile.am:
7000 * clutter/clutter-stage.c:
7001 * clutter/sdl/Makefile.am:
7002 * clutter/sdl/clutter-backend-sdl.c:
7003 * clutter/sdl/clutter-backend-sdl.h:
7004 * clutter/sdl/clutter-event-sdl.c:
7005 * clutter/sdl/clutter-sdl.h:
7006 * clutter/sdl/clutter-stage-sdl.c:
7007 * clutter/sdl/clutter-stage-sdl.h:
7009 Add a basic SDL based backend. Lacks real input event handling
7010 (translation) as yet.
7011 Also allows for clutter to be built against dgles.
7013 2007-05-02 Matthew Allum <mallum@openedhand.com>
7015 * clutter/clutter-actor.c:
7016 * clutter/cogl/gles/cogl.c:
7017 Fix rotation + other fixed point cleanups.
7019 * clutter/clutter-texture.h:
7020 Sketch out an updated API.
7022 2007-05-01 Matthew Allum <mallum@openedhand.com>
7024 * clutter/clutter-rectangle.c:
7025 Comment out color match check for now as appears to be causing
7026 borders to always get pained.
7028 * clutter/clutter-texture.h:
7029 Add some format defines (unused as yet)
7031 * clutter/cogl/gles/cogl.c:
7032 * clutter/egl/clutter-stage-egl.c:
7034 Various OpenGL ES backend related fixes and tweaks.
7036 2007-04-30 Tomas Frydrych <tf@openedhand.com>
7038 * clutter/clutter-fixed.c (clutter_sini):
7039 Fixed bug in reducing angle to 0-2pi.
7041 * clutter/clutter-behaviour-ellipse.h:
7042 * clutter/clutter-behaviour-ellipse.c:
7043 * clutter/clutter.h:
7044 * clutter/Makefile.am:
7045 * doc/clutter.types:
7046 * doc/clutter-docs.sgml:
7047 Added ClutterBehaviourEllipse for movement along
7050 * examples/bspline.c:
7051 * examples/behave.c:
7052 * examples/Makefile.am:
7053 Added --path commandline option to behave to choose different
7054 path types (poly, ellipse, bspline) and dropped bspline example.
7056 2007-04-28 Matthew Allum <mallum@openedhand.com>
7058 * clutter/Makefile.am:
7059 * clutter/clutter-debug.h:
7060 * clutter/clutter-fixed.h:
7061 * clutter/clutter-main.c:
7062 * clutter/cogl/gles/Makefile.am:
7063 * clutter/cogl/gles/cogl-defines.h:
7064 * clutter/cogl/gles/cogl.c:
7065 * clutter/egl/clutter-backend-egl.c:
7066 * clutter/egl/clutter-backend-egl.h:
7067 * clutter/egl/clutter-stage-egl.c:
7069 Populate most stubs for cogl GL/ES implementation.
7070 (against vincent - see http://svn.o-hand.com/repos/misc/ogles)
7071 Add various fixups to EGL backend.
7072 Code builds and runs (on 16bpp) but yet displays much (is close!)
7074 * clutter/pango/pangoclutter-render.c:
7075 comment out some rouge glBegin/end calls.
7077 2007-04-27 Matthew Allum <mallum@openedhand.com>
7079 * clutter/Makefile.am:
7080 * clutter/clutter-actor.c:
7081 * clutter/clutter-clone-texture.c:
7082 * clutter/clutter-rectangle.c:
7083 * clutter/clutter-stage.c:
7084 * clutter/clutter-texture.c:
7085 * clutter/cogl/cogl.h:
7086 * clutter/cogl/gl/Makefile.am:
7087 * clutter/cogl/gl/cogl-defines.h:
7088 * clutter/cogl/gl/cogl.c:
7089 * clutter/cogl/gles/Makefile.am:
7090 * clutter/cogl/gles/cogl-defines.h:
7091 * clutter/cogl/gles/cogl.c:
7092 * clutter/glx/Makefile.am:
7093 * clutter/glx/clutter-stage-glx.c:
7094 * clutter/pango/Makefile.am:
7095 * clutter/pango/pangoclutter-render.c:
7097 Add initial 'cogl' implementation. 'cogl' is a simple abstration
7098 layer over GL and GL/ES used by clutter internally. It should
7099 eventually allow clutter applications to be run on both GL and GL/ES
7100 with just a recompile as well as provide more debugging and potentially
7101 profiling information for GL and GL/ES usage.
7103 This commit contains the initial GL implementation.
7105 2007-04-26 Emmanuele Bassi <ebassi@openedhand.com>
7107 Merge from clutter-0-2
7109 * clutter/clutter-label.c: Unbreak the "use-markup" property
7110 by actually passing the markup to pango_layout_set_markup().
7112 2007-04-25 Emmanuele Bassi <ebassi@openedhand.com>
7114 Merge from clutter.git/master
7116 * clutter/glx/clutter-event-glx.c:
7117 * clutter/glx/clutter-stage-glx.c: Implement the _NET_WM_PING
7118 protocol handling on the main stage window.
7120 * clutter/clutter-stage.h:
7121 * clutter/clutter-stage.c:
7122 * clutter/clutter-main.c: Handle CLUTTER_DELETE events internally,
7123 by calling clutter_main_quit(), and remove the ::delete-event
7124 signal from ClutterStage; clean up the signal emission sequence
7125 for the events: emit the ::event signal before emitting any signal
7126 and the ::event-after signal after the signal has been emitted; move
7127 the signal emission calls inside ClutterStage so we can call
7128 g_signal_emit() instead of g_signal_emit_by_name(), thus sparing us
7129 a lookup for each event.
7131 * examples/test.c: Remove ::delete-event signal handling.
7133 2007-04-19 Emmanuele Bassi <ebassi@openedhand.com>
7135 Merge from clutter.git/master
7137 * clutter/clutter-backend.h:
7138 * clutter/clutter-backend.c: Add API for getting screen/display
7139 properties from the backend.
7141 * clutter/glx/clutter-backend-glx.c:
7142 * clutter/glx/clutter-backend-egl.c: Retrieve screen/display
7143 properties inside the backends init function.
7145 * clutter/glx/clutter-event-glx.c: Handle the WM_PROTOCOLS
7146 ClientMessage events.
7148 * clutter/glx/clutter-stage-glx.c: Use XSetWMProtocols to enable
7149 the WM_PROTOCOLS ClientMessage events on the stage window.
7151 * clutter/glx/clutter-glx.h: Return the Screen pointer and not
7152 the screen number in clutter_glx_get_default_screen(). The screen
7153 number is returned by clutter_backend_get_screen_number(), or
7154 by calling XScreenNumberOfScreen on the returned pointer.
7156 * clutter/clutter-event.h: Add CLUTTER_DELETE to the event types.
7158 * clutter/clutter-main.c: Emit the ClutterStage::delete-event
7159 when receiving a CLUTTER_DELETE event; if the signal handlers
7160 return FALSE, call clutter_main_quit().
7162 * clutter/clutter-marshal.list:
7163 * clutter/clutter-stage.c: Use the right marshaller function
7164 for the delete-event closure.
7166 * examples/test.c: Test the "delete-event" signal handler.
7168 2007-04-16 Emmanuele Bassi <ebassi@openedhand.com>
7170 Merge from clutter.git/merge-from-stable
7172 * clutter/clutter-event.h:
7173 * clutter/glx/clutter-event-glx.c: Add the XEMBED protocol support
7174 in the GLX backend, for embedding the stage window into another
7175 X window. This allows cross-toolkit inclusion and makes clutter-gtk
7178 * clutter/clutter-behaviour-scale.c: Implement every ClutterGravity
7179 value inside the scale behaviour and make the actors anchor to a
7180 gravity when scaling up and down.
7182 * clutter/clutter-texture.c: Revert to copying GdkPixbuf areas to
7183 correctly implement the texture tiling. This fixes segmentation
7184 faults occurring with cards with a small texture memory area.
7186 * clutter/clutter-actor.c: Call g_object_freeze_notify() (and take
7187 a reference on the actor) inside clutter_actor_request_size() so
7188 that the notifications get unqueued at the end of the size request.
7190 2007-04-16 Emmanuele Bassi <ebassi@openedhand.com>
7192 Merge from clutter.git/work
7194 * clutter/clutter-behaviour-bspline.[ch]: Return a ClutterBehaviour
7195 when splicing the b-spline; fix the header and the API documentation;
7196 hush the compiler warnings; kill of some pointer indirections.
7198 * clutter/clutter-behaviour-rotate.[ch]: Add a rotate behaviour,
7199 with user defined axis, direction and sweep angle.
7201 * clutter/clutter-behaviour.c (clutter_behaviour_is_applied): Add
7202 a parameter ISA check and return FALSE if it fails.
7204 2007-04-12 Tomas Frydrych <tf@openedhand.com>
7206 * clutter/clutter-behaviour.h:
7207 * clutter/clutter-behaviour.c:
7208 * clutter/clutter-behaviour-path.h:
7209 * clutter/clutter-behaviour-path.c:
7210 Moved declaration of ClutterKnot from clutter-behaviour path
7211 into clutter-behaviour.
7213 * clutter/clutter-fixed.h
7214 * clutter/clutter-fixed.c
7215 Added myself as an author.
7217 * clutter/Makefile.am:
7218 * clutter/clutter.h:
7219 * clutter/clutter-behaviour-bspline.h:
7220 * clutter/clutter-behaviour-bspline.c:
7221 Added new bezier spline behaviour.
7223 * examples/bspline.c:
7224 * examples/Makefile.am:
7225 An example of using bspline path.
7227 2007-04-07 Matthew Allum <mallum@openedhand.com>
7229 * clutter/glx/clutter-backend-glx.c:
7232 2007-03-29 Tomas Frydrych <tf@openedhand.com>
7234 * clutter/clutter-stage.c:
7235 (perspective): fixed degree -> rad conversion for fovy angle
7236 (perspectivex): fixed degree -> rad conversion for fovy angle,
7237 added code for gle glMultMatrixx().
7239 2007-03-29 Tomas Frydrych <tf@openedhand.com>
7241 * configure.ac: fixed typo
7243 * clutter/clutter-fixed.c:
7244 * clutter/clutter-fixed.h:
7245 (clutter_tani): fast implementation of tan()
7246 (clutter_qmulx): improved-precission fixed point multiply
7248 * clutter/clutter-stage.c:
7249 (perspectivex): fixed point implementaiton of perspective()
7250 (_clutter_stage_sync_viewport):
7251 (clutter_stage_get_actor_at_pos):
7252 use perspectivex() instead of perspective()
7254 2007-03-27 Matthew Allum <mallum@openedhand.com>
7256 * clutter/cogl/Makefile.am:
7257 * clutter/cogl/cogl.h:
7258 * clutter/cogl/gles/Makefile.am:
7259 * clutter/cogl/gles/cogl.c:
7260 Begin poplulating cogl GLES code.
7263 * clutter/egl/clutter-event-egl.c:
7264 * clutter/egl/clutter-stage-egl.c:
7265 * clutter/egl/clutter-stage-egl.h:
7266 * clutter/egl/clutter-backend-egl.c:
7267 * clutter/egl/clutter-backend-egl.h:
7268 * clutter/egl/clutter-egl.h:
7269 Add initial EGL/X backend work mostly ported from backend branch.
7270 Builds but untested as yet.
7272 * clutter/glx/clutter-stage-glx.c:
7273 Only include XFixes Header if we have have it.
7275 * clutter/clutter-behaviour.c: (clutter_behaviour_apply):
7276 * clutter/clutter-behaviour.h:
7277 Add clutter_behaviour_is_applied()
7279 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
7281 * clutter/clutter-stage.h: Remove unused clutter_stage_flush()
7284 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
7286 * clutter/glx/clutter-glx.h:
7287 * clutter/glx/clutter-stage-glx.c: (Re-)Implement the foreign
7288 window setting function for the stage in the GLX backend.
7290 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
7292 * clutter/clutter-stage.h: Declare the clutter_perspective_get_type()
7293 function in the header.
7295 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
7297 * clutter/cogl/cogl.h: Add header and compiler guards.
7299 2007-03-27 Emmanuele Bassi <ebassi@openedhand.com>
7301 * clutter/glx/clutter-stage-glx.c: Remove the check in the
7302 paint chain up: we know for sure that the parent's paint
7305 2007-03-27 Matthew Allum <mallum@openedhand.com>
7307 * clutter/clutter-feature.c:
7308 Rejig ifdef's a little. Make drm vblanking Linux only.
7310 * clutter/clutter-stage.c:
7311 * clutter/clutter-stage.h:
7312 Add a perspective boxed type.
7314 * clutter/glx/clutter-stage-glx.c:
7317 * clutter/Makefile.am:
7318 * clutter/cogl/Makefile.am:
7319 * clutter/cogl/cogl.h:
7320 * clutter/cogl/gl/Makefile.am:
7321 * clutter/cogl/gl/cogl.c:
7323 Very initial work on 'cogl' GL/GLES abstraction/utility code.
7325 2007-03-26 Emmanuele Bassi <ebassi@openedhand.com>
7327 * clutter/clutter-behaviour-scale.[ch]: Add API for getting
7328 the scale bounds and the gravity from a scale behaviour instance.
7330 2007-03-26 Emmanuele Bassi <ebassi@openedhand.com>
7332 * clutter/clutter-timeline.c: Fix last commit.
7334 2007-03-25 Emmanuele Bassi <ebassi@openedhand.com>
7336 * clutter/clutter-timeline.c: Slightly lower the proiority
7337 of the ClutterTimeline tick, so that events get a higher
7338 priority in the main loop.
7340 2007-03-25 Emmanuele Bassi <ebassi@openedhand.com>
7342 * clutter/clutter-event.[ch]: Remove the flags member from
7343 the ClutterEvent structure; remove the ClutterEventFlags
7346 2007-03-25 Emmanuele Bassi <ebassi@openedhand.com>
7348 * clutter/clutter-stage.h: Remove the ::get_actor_at_pos()
7349 and ::flush() vfuncs.
7351 * clutter/glx/clutter-stage-glx.c: Remove the implementations
7352 of those vfuncs from the backend specific code, as they are
7355 * clutter/clutter-stage.c: Add back the actor hit detection
7356 code in the base stage class, along with the viewport
7357 synchronisation function.
7359 * clutter/clutter-private.h: Declare the private function
7360 _clutter_stage_sync_viewport().
7362 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
7364 * clutter/clutter-backend.c: Clear the event queue when
7365 disposing the backend object; remove the initialisation
7366 of the backend structure members...
7368 * clutter/glx/clutter-backend-glx.c: ... and keep it here
7369 in the backends where it belongs.
7371 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
7373 * clutter/clutter-private.h:
7374 * clutter/clutter-backend.h: Move the backend functions
7375 into the private header.
7377 * clutter/glx/clutter-stage-glx.c:
7378 * clutter/glx/clutter-event-glx.c:
7379 * clutter/clutter-main.c:
7380 * clutter/clutter-stage.c: Update the calls to the private
7383 * clutter/clutter-backend.[ch]: Add an ::init_features
7384 vfunc to ClutterBackend.
7386 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
7388 * clutter/glx/clutter-stage-glx.c:
7389 Make sure the top-left corner of the box is our origin,
7390 when returning the allocation.
7392 * clutter/clutter-stage.c:
7393 * clutter/clutter-group.c: Add tracing for the paint
7396 2007-03-23 Matthew Allum <mallum@openedhand.com>
7398 * clutter/glx/clutter-stage-glx.c:
7399 (clutter_stage_glx_allocate_coords):
7400 Make new stage return correct width & height.
7402 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
7404 Assorted build fixes to pass distcheck.
7406 * clutter/glx/Makefile.am: Install the clutter-glx.h header.
7408 * clutter/Makefile.am: Actually apply linker flags.
7410 * configure.ac: Use a more readable CLUTTER_API_VERSION instead
7411 of CLUTTER_MAJORMINOR; require gobject-2.0 with glib-2.0 >= 2.10,
7412 as we are using GObject and the slice allocator from glib 2.10.
7414 * clutter.pc.in: Add the apiversion variable.
7416 2007-03-23 Emmanuele Bassi <ebassi@openedhand.com>
7418 * clutter/clutter-event.c: Pop and peek the event queue
7419 from the tail - it's a queue, not a stack.
7421 * clutter/clutter-private.h:
7422 * clutter/clutter-main.c: Add a boolean signal accumulator.
7424 * clutter/clutter-stage.[ch]: Add an event argument to
7425 the 'delete-event' signal; rename the 'input-event' signal
7426 to 'event'; add the static scope flag to all the stage
7429 * examples/*.c: Update.
7431 2007-03-22 Emmanuele Bassi <ebassi@openedhand.com>
7433 * clutter.pc.in: Require gobject-2.0 too.
7435 * ChangeLog: Fix the previous commit log.
7437 2007-03-22 Emmanuele Bassi <ebassi@openedhand.com>
7439 * clutter/clutter-private.h: Remove inclusion of backend-specific
7440 headers; update the main context object; add the declarations for
7441 the event queue functions.
7443 * clutter/clutter-backend.[ch]: Add the abstract ClutterBackend
7444 object, which holds backend-specific settings, the main stage,
7445 and the event queue. Every backend must implement a subclass of
7446 ClutterBackend and ClutterStage.
7448 * clutter/clutter-feature.c: Protect the GLX specific calls
7449 behing #ifdef HAVE_CLUTTER_GLX.
7451 * clutter/clutter-actor.c:
7452 * clutter/clutter-group.c:
7453 * clutter/clutter-clone-texture.c: Include GL/gl.h
7455 * clutter/clutter-event.[ch]: Update public API and implement the
7456 event queue private API; hold a reference on the event objects;
7457 move out the keysym-to-unicode table; add the new event types.
7459 * clutter/clutter-color.h: Include clutter-fixed.h
7461 * clutter/clutter-main.c: Update API; get the main stage
7462 from the backend object; process the event received from the
7463 queue; lock/unlock the main mutex if we have one; move the
7464 initialisation process sooner in the init sequence, in order to
7465 have the backend object when we check for options; call the
7466 backed vfuncs in the pre/post parse hooks.
7468 * clutter/clutter-stage.c: Make ClutterStage and abstract class,
7469 implemented by the backends.
7471 * clutter/clutter/glx/clutter-glx.h:
7472 * clutter/clutter/glx/clutter-backend-glx.[ch]:
7473 * clutter/clutter/glx/clutter-event-glx.c:
7474 * clutter/clutter/glx/clutter-stage-glx.[ch]:
7475 * clutter/clutter/glx/Makefile.am: Add the GLX backend.
7477 * clutter/clutter/egl/clutter-backend-egl.[ch]:
7478 * clutter/clutter/egl/clutter-event-egl.c:
7479 * clutter/clutter/egl/clutter-stage-egl.[ch]:
7480 * clutter/clutter/egl/Makefile.am: Add the stub for a EGL backend.
7482 * examples/*.c: Update for the new API.
7484 * configure.ac: Check for the XFixes X extension; add a configure
7485 switch for choosing the backend; show the backend we are building
7488 * clutter.pc.in: Add the backend to the exported variables.
7490 * clutter/Makefile.am: Install the headers in the
7491 clutter-$api_version/clutter directory, as usual; call the shared
7492 object libclutter-$backend-$api_version; build glue for the
7493 backend static library.
7495 2007-03-19 Matthew Allum <mallum@openedhand.com>
7497 * clutter/clutter-label.c:
7499 * clutter/clutter-texture.c: (clutter_texture_get_pixbuf):
7500 Backport of fix to get_pixbuf on non alpha textures from 0_2 branch.
7502 2007-03-19 Emmanuele Bassi <ebassi@openedhand.com>
7504 * clutter/clutter-texture.c: Clean up code; add checks
7507 2007-02-18 Matthew Allum <mallum@openedhand.com>
7509 * clutter/clutter-actor.c: (clutter_actor_reparent):
7510 Add a FIXME re calling clutter_group here.
7511 * clutter/clutter-group.c:
7512 Fix clutter_group_remove_all
7514 2007-02-15 Matthew Allum <mallum@openedhand.com>
7516 * clutter/clutter-group.h:
7517 Add missing clutter_group_remove_all declaration.
7519 2007-02-14 Matthew Allum <mallum@openedhand.com>
7521 * clutter/Makefile.am:
7522 * clutter/clutter-main.c:
7523 * clutter/clutter-stage.c:
7524 * clutter/clutter-version.h.in:
7526 * examples/super-oh.c:
7527 Add CLUTTER_FLAVOUR define.
7529 2007-02-13 Matthew Allum <mallum@openedhand.com>
7531 * examples/super-oh.c: (screensaver_setup):
7532 Fix example to build with new glx api
7534 2007-02-07 Emmanuele Bassi <ebassi@openedhand.com>
7536 * clutter/clutter-debug.h: Define the CLUTTER_MARK()
7537 macro even when CLUTTER_ENABLE_DEBUG is not
7540 2007-01-30 Tomas Frydrych <tf@openedhand.com>
7542 * clutter/clutter-alpha.c:
7544 (clutter_sine_func):
7545 (clutter_sine_inc_func):
7546 fixed the fixed point math.
7548 2007-01-30 Emmanuele Bassi <ebassi@openedhand.com>
7550 * clutter/clutter-alpha.h:
7551 * clutter/clutter-alpha.c: Add the square waveform
7552 function clutter_square_func() to the precooked
7555 2007-01-23 Matthew Allum <mallum@openedhand.com>
7559 * clutter/Makefile.am:
7560 * clutter/clutter-backend-glx.c:
7561 * clutter/clutter-backend-glx.h:
7562 * clutter/clutter-event.c:
7563 * clutter/clutter-feature.c:
7564 * clutter/clutter-group.c:
7565 * clutter/clutter-main.c:
7566 * clutter/clutter-main.h:
7567 * clutter/clutter-private.h:
7568 * clutter/clutter-stage-glx.c:
7569 * clutter/clutter-stage-glx.h:
7570 * clutter/clutter-stage.c:
7571 * clutter/clutter-stage.h:
7572 * clutter/clutter-util.c:
7573 * clutter/clutter-util.h:
7574 * clutter/pango/pangoclutter-render.c:
7576 * examples/Makefile.am:
7577 Initial work in supporting different GL backends (ie. GLX/EGL/DirectFB etc).
7578 Currently just GLX supported and now mostly self contained.
7581 Add a note about caching glenables
7583 2007-01-23 Tomas Frydrych <tf@openedhand.com>
7585 * clutter/clutter-fixed.c:
7586 (_clutter_double_to_fixed):
7587 (_clutter_double_to_int):
7588 Fixed to avoid problems with punned pointers and gcc
7591 * clutter/pango/pangoclutter-private.h:
7592 Simplified PANGO_PIXELS_26_6 macro.
7594 * clutter/pango/pangoclutter-font.c:
7595 (_pango_clutter_font_new):
7596 Replace floating with fixed point math.
7598 2007-01-19 Tomas Frydrych <tf@openedhand.com>
7600 * clutter/clutter-fixed.c: (clutter_sqrti):
7601 Use union instead of casting int <-> float to get rid of
7602 punned-pointer warning and avoid gcc optimatisation breaking
7603 the function on arm.
7605 2007-01-19 Emmanuele Bassi <ebassi@openedhand.com>
7607 Allow the ClutterGroup subclasses to override the add and
7610 * clutter/clutter-group.c: Move the add and remove code from
7611 clutter_group_add() and clutter_group_remove() to the signal
7612 class closures; make the "add" and "remove" signals as
7615 2007-01-19 Tomas Frydrych <tf@openedhand.com>
7617 * clutter/clutter-fixed.h.:
7618 * clutter/clutter-fixed.c:
7619 Added fast double to int and double to fixed point conversion
7620 routines; changed CLUTTER_FLOAT_TO_FIXED to use it.
7621 Replaced clutter_sqrti with fixed point implementation of the QIII
7625 * clutter/clutter-behavior-path.c: use clutter_sqrti always
7627 * clutter/clutter-alpha.c:
7628 (sinc_func): replaced double -> int cast with CLUTTER_FLOAT_TO_INT
7631 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
7633 * configure.ac: Post release bump to 0.3.0.
7635 2007-01-18 =============== 0.2 Release ================================
7637 2007-01-18 Matthew Allum <mallum@openedhand.com>
7640 Update for 0.2 release
7642 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
7644 * clutter/clutter-group.h: Add public functions
7645 clutter_group_get_n_children() and clutter_group_get_nth_child().
7647 * clutter/clutter-behaviour.h:
7648 * clutter/clutter-behaviour.c: Fix header alignment; fix argument
7651 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
7653 * clutter/Makefile.am: Use the build dir when linking to the
7654 internal pango clutter renderer.
7656 2007-01-18 Tomas Frydrych <tf@openedhand.com>
7658 * clutter/clutter-fixed.h: fixed a typo in comment
7660 2007-01-18 Emmanuele Bassi <ebassi@openedhand.com>
7662 * clutter/clutter-fixed.h: Remove some inline documentation to
7663 make the header more readable.
7665 * clutter/clutter-behaviour.c: The actors are store inside a
7666 GSList and not in a GList, so change the list operations to
7669 2007-01-18 Tomas Frydrych <tf@openedhand.com>
7671 * clutter/clutter-color.c:
7672 (clutter_color_darken):
7673 (clutter_color_lighten):
7674 Changed calls to clutter_color_shade calls to clutter_color_shadex
7676 2007-01-17 Matthew Allum <mallum@openedhand.com>
7679 Bump up version to 0.2.0
7681 2007-01-17 Tomas Frydrych <tf@openedhand.com>
7683 * clutter/clutter-behavior-path.c:
7684 Added --without-fpu option.
7686 * doc/refrence/tmpl/clutter-fixed.sgml:
7687 * clutter/clutter-fixed.c:
7688 * clutter/clutter-fixed.h:
7689 Documentation for fixed point API.
7691 * AUTHORS: added self.
7693 2007-01-17 Emmanuele Bassi <ebassi@openedhand.com>
7695 * clutter/clutter-feature.h:
7696 * clutter/clutter-feature.c: Move the GL headers from the
7697 header file to the body.
7699 * clutter/clutter-fixed.h:
7700 * clutter/clutter-fixed.c: Fix apidoc.
7702 * clutter/clutter-color.h:
7703 * clutter/clutter-color.c: Ditto.
7705 2007-01-17 Tomas Frydrych <tf@openedhand.com>
7707 * clutter/clutter-fixed.h:
7708 * clutter/clutter-fixed.c:
7709 * clutter/clutter-alpha.c:
7710 Renamed clutter_fixed_sin() to clutter_sinx() and
7711 clutter_angle_sin() to clutter_sini(); added clutter_sqrtx()
7712 and clutter_sqrti(); added missing copyright.
7714 * clutter/clutter-behavior.c:
7715 replaced call to sqrt() with clutter_sqrti()
7717 * clutter/clutter-behavior-scale.c:
7718 (clutter_behaviour_scale_alpha_notify):
7719 Replaced floating point math with fixed point.
7721 2007-01-16 Emmanuele Bassi <ebassi@openedhand.com>
7723 * clutter/clutter-feature.c: Use clutter_vblank_method() to
7724 get the VBlank method name from the environment variable OR
7725 the command line switch.
7727 (clutter_feature_do_init): Move the check on the features
7728 state here, to avoid an expensive function call, and inline
7731 * clutter/clutter-fixed.c: Fix gtk-doc.
7733 * clutter/clutter-main.c: Add a --clutter-vblank command line
7734 switch controlling the VBlank method to be used: it overrides
7735 the CLUTTER_VBLANK environment variable.
7737 (pre_parse_hook), (clutter_init),
7738 (clutter_init_with_args): Move thread initialisation before
7739 type init, to avoid the warning that comes with newer GLib
7742 * clutter/clutter-group.h:
7743 * clutter/clutter-group.c: Mark clutter_group_show_all() and
7744 clutter_group_hide_all() as deprecated.
7746 2007-01-16 Matthew Allum <mallum@openedhand.com>
7752 Sync up, mainly with 0.3 todo items
7754 * clutter/clutter-behaviour.c:
7755 * clutter/clutter-behaviour.h:
7756 clutter_behaviour_get_n_actors() / clutter_behaviour_get_nth_actor()
7759 * clutter/clutter-stage.c: (clutter_stage_realize):
7760 Experimental (disabled) visual setting code.
7762 * clutter/clutter-feature.c:
7763 Check for GL_EXT_texture_rectangle (#198 - Frederick Riss)
7765 * clutter/clutter-group.c: (clutter_group_allocate_coords):
7766 Fix for group size allocation (#199 - Frederick Riss)
7768 * clutter/clutter-texture.c: (texture_upload_data):
7769 Fix texture unpacking row length (#197 Frederick Riss)
7771 * examples/Makefile.am:
7772 Fix LDADD in build (#196 - Frederick Riss)
7774 2007-01-16 Tomas Frydrych <tf@openedhand.com>
7776 * clutter/clutter-fixed.h:
7777 Added integer ClutterAngle type, protype of clutter_angle_sin,
7778 convenience macros clutter_fixed_cos and clutter_angle_cos, plus
7779 other convenience macros for commonly used constants and ops.
7780 * clutter/clutter-fixed.c:
7781 (clutter_fixed_sin):
7782 Fixed to work for negative angles.
7783 (clutter_angle_sin):
7784 Fast fixed point sin function for ClutterAngle angles.
7785 * clutter/clutter-alpha.c:
7786 (clutter_sin_func, clutter_sin_inc_func):
7787 Changed to use clutter_angle_sin function.
7788 * clutter-behavior-path.c:
7789 replaced floating point with fixed point operations
7790 * clutter/clutter-color.c:
7791 * clutter/clutter-color.h:
7792 Added (clutter_color_shadex), replaced floating point operations
7795 2007-01-15 Tomas Frydrych <tf@openedhand.com>
7797 * clutter/clutter-fixed.h: (CLUTTER_FIXED_TO_DOUBLE/FLOAT):
7798 Fixed macro so it works for negative values.
7799 * clutter/clutter-fixed.c: (clutter_fixed_sin):
7800 Implemented fixed point sin function.
7801 * clutter/clutter-alpha.c: (clutter_sin_func, clutter_sin_inc_func):
7802 Pluged in fixed point sin function.
7804 2007-01-07 Matthew Allum <mallum@openedhand.com>
7806 * clutter/clutter-actor.c: (clutter_actor_allocate_coords):
7807 Fix an amazingly not noticed until now typo.
7810 * clutter/clutter-behaviour-opacity.c:
7811 (clutter_behaviour_alpha_notify):
7812 Take into account initial opacity value when calculating from alpha.
7814 * clutter/clutter-group.c:
7815 Add new get_nth_child() and get_n_children() api calls.
7817 2007-01-04 Matthew Allum <mallum@openedhand.com>
7819 * clutter/clutter-actor.c:
7820 * clutter/clutter-actor.h:
7821 Add new set_width/height API calls.
7822 Tweak scaling by reseting matrix.
7823 Make set_opactiy() take parent opacity into account.
7826 * clutter/clutter-alpha.c:
7827 Add more sine functionality.
7829 * clutter/clutter-behaviour-opacity.c:
7830 Dont make a copy of all applied actors but use a foreach()
7832 * clutter/clutter-behaviour-scale.c:
7833 Give correct limits to propertys.
7834 Tweak gravity a little more.
7837 * clutter/clutter-behaviour.c: (clutter_behaviour_remove):
7838 Minor warning text change.
7840 * clutter/clutter-feature.c: (clutter_feature_wait_for_vblank):
7841 Minor dri ioctl tweak.
7843 * clutter/clutter-label.c:
7844 * clutter/clutter-label.h:
7845 Add new label_full api call.
7847 2006-12-27 Emmanuele Bassi <ebassi@openedhand.com>
7849 * clutter/clutter-stage.[ch]:
7850 * clutter/clutter-event.[ch]: Revert changes; this is what
7851 happens when you keep old tree around.
7853 2006-12-27 Emmanuele Bassi <ebassi@openedhand.com>
7855 * clutter/clutter-color.h:
7856 * clutter/clutter-color.c: Add clutter_color_to_string(),
7857 which creates a hex-encoded color string from a ClutterColor.
7859 2006-12-20 Matthew Allum <mallum@openedhand.com>
7862 Add some missing improvements.
7864 2006-12-17 Emmanuele Bassi <ebassi@openedhand.com>
7866 * clutter/clutter-label.c: Remove some gtk-isms; always take
7867 a reference before calling g_object_notify(), as the object
7868 might get disposed while calling the closures inside the
7869 notify queue; notify the changes of the ellipsize property.
7871 2006-12-14 Emmanuele Bassi <ebassi@openedhand.com>
7873 * clutter/clutter-color.h:
7874 * clutter/clutter-color.c: Expose clutter_color_copy()
7875 and clutter_color_free() for the python bindings, so that
7876 they can manager the conversion automatically; use the
7877 slice allocator when copying/freeing a ClutterColor.
7879 2006-12-13 Emmanuele Bassi <ebassi@openedhand.com>
7881 * clutter/clutter-color.h:
7882 * clutter/clutter-color.c: Add clutter_color_equal(),
7883 a function for comparing two colors.
7885 * clutter/clutter-rectangle.c:
7886 (clutter_rectangle_set_color),
7887 (clutter_rectangle_set_border_color): Unset the border if
7888 the color of the rectangle and the color of the border are
7891 2006-12-13 Emmanuele Bassi <ebassi@openedhand.com>
7893 * clutter/clutter-actor.c:
7894 * clutter/clutter-clone-texture.c:
7895 * clutter/clutter-event.h:
7896 * clutter/clutter-stage.c:
7897 * clutter/clutter-texture.c:
7898 * clutter/clutter-timeline.c: Update the inline apidoc.
7900 2006-12-13 Matthew Allum <mallum@openedhand.com>
7902 * clutter/clutter-actor.c: (clutter_actor_class_init):
7903 Allow actor x,y props to be negative.
7905 2006-12-12 Emmanuele Bassi <ebassi@openedhand.com>
7907 Rework part of the show/hide machinery. Allow groups sub-classes
7908 and composite actors to override show_all/hide_all in order to
7909 decide which children they wish to show/hide. This means that
7910 if an actor overrides the default show/hide virtual methods, it'll
7911 have to chain up to the parent class show/hide. While we're at it,
7912 provide the fully recursive clutter_actor_show_all() and
7913 clutter_actor_hide_all() methods.
7915 * clutter/clutter-behaviour-path.c: Add apidoc for the ClutterKnot
7916 functions; add pathological equality case for clutter_knot_equal().
7918 * clutter/clutter-event.h:
7919 * clutter/clutter-feature.h:
7920 * clutter/clutter-behaviour.c:
7921 * clutter/clutter-behaviour-scale.c:Fix parameters name so that
7922 gtk-doc doesn't complain.
7924 * clutter/clutter-actor.c:
7925 * clutter/clutter-event.c: Add apidoc
7927 * clutter/clutter-actor.h:
7928 * clutter/clutter-actor.c: Add a clutter_actor_show_all() and a
7929 clutter_actor_hide_all() functions; provide a mechanism for
7930 groups and composited actors to programmatically select what to
7931 show/hide when clutter_actor_show_all() and clutter_actor_hide_all()
7932 are called. If you are overriding the ClutterActor::show or
7933 the ClutterActor::hide virtual methods you should chain up with
7936 * clutter/clutter-group.c: Override show_all and hide_all and
7937 recursively show/hide every child inside the group;
7938 clutter_group_show_all() and clutter_group_hide_all() remain as non
7939 recursive versions of clutter_actor_show_all() and
7940 clutter_actor_hide_all() (maybe we should rename them in order
7941 to avoid name clashes with the bindings).
7943 * clutter/clutter-stage.c:
7944 * clutter/clutter-texture.c: Chain up with parent class show
7947 * clutter/clutter-clone-texture.h:
7948 * clutter/clutter-clone-texture.c: Provide API for changing the
7949 parent texture of a clone texture actor.
7951 * examples/behave.c:
7952 * examples/super-oh.c:
7953 * examples/test.c: Use clutter_actor_show_all() instead of
7954 clutter_group_show_all().
7956 2006-12-08 Matthew Allum <mallum@openedhand.com>
7959 Put release date in correct format.
7961 2006-12-08 Emmanuele Bassi <ebassi@openedhand.com>
7963 * clutter/clutter-behaviour.h: Add a function prototype
7964 for the foreach function: we need something more specific
7965 than GFunc; add clutter_behaviour_get_actors(), used to
7966 get a list of the actors.
7968 * clutter/clutter-behaviour.c: Add debugging notes; add
7969 a warning for behaviour implementations missing the
7970 alpha_notify vfunc; add api documentation
7972 * clutter/clutter-behaviour-opacity.c:
7973 * clutter/clutter-behaviour-path.c:
7974 * clutter/clutter-behaviour-scale.c: Reimplement the
7975 alpha_notify functions using the new foreach function
7976 and, where possible, by directly iterating on the
7977 actors: this shaves off the number of recalculations
7978 of the property/alpha values, and the number of
7981 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
7983 * clutter/clutter-rectangle.c: Forgot to set the
7986 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
7988 * behave.c: Add test for clutter_color_parse().
7990 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
7992 * clutter/clutter-event.c: Move the apidoc out.
7994 2006-12-05 Emmanuele Bassi <ebassi@openedhand.com>
7996 * clutter/clutter-color.h:
7997 * clutter/clutter-color.c: Add clutter_color_parse(),
7998 which parses a string containing a color definition as
7999 understood by XParseColor() (or pango_color_parse()).
8001 2006-12-04 Emmanuele Bassi <ebassi@openedhand.com>
8003 Avoid clutter segfaulting when used without invoking
8004 clutter_init(). This is needed when using api documentation
8005 tools and every other tool relying on the GObject
8006 introspection API (esp. on a headless box). see the
8007 note in clutter/clutter-feature.c:clutter_feature_init
8008 for a full explanation.
8010 * clutter/clutter-feature.c: Call clutter_feature_init()
8011 when needed by one of the accessors of the features
8014 * clutter/clutter-main.c:
8015 * clutter/clutter-private.h: Remove clutter_feature_init()
8016 public declaration: the features support check is done the
8017 first time a feature is needed.
8019 * clutter/clutter-main.c: Do not ever access the clutter
8020 main context pointer directly; instead, obtain a pointer
8021 to it via clutter_context_get_default(), which will always
8022 return something valid.
8024 2006-12-04 Emmanuele Bassi <ebassi@openedhand.com>
8026 * clutter/clutter-private.h: Add our own READABLE,
8027 WRITABLE and READWRITE paramspec flags, declaring the
8028 string components of the properties GParamSpec as static;
8029 this should shave off some bytes in the memory footprint
8030 and avoid relocations.
8032 * clutter/clutter-actor.c:
8033 * clutter/clutter-behaviour.c:
8034 * clutter/clutter-behaviour-opacity.c:
8035 * clutter/clutter-behaviour-path.c:
8036 * clutter/clutter-behavuour-scale.c:
8037 * clutter/clutter-clone-texture.c:
8038 * clutter/clutter-label.c:
8039 * clutter/clutter-rectangle.c:
8040 * clutter/clutter-stage.c:
8041 * clutter/clutter-texture.c:
8042 * clutter/clutter-timeline.c: Use the CLUTTER_PARAM_*
8043 macros we just added.
8045 * clutter/clutter-behaviour-scale.c: Add properties for
8046 the scale begin, scale end and gravity parameters.
8048 * clutter/clutter-behaviour-path.h: Mark the ClutterKnot
8049 memory management functions as public (for the bindings),
8050 since we use the slice allocator for copying knots around;
8051 add a clutter_knot_equal() function.
8053 * clutter/clutter-behaviour-path.c:
8054 (node_distance): Use clutter_knot_equal() as a fast path
8055 to avoid the sqrt() in case the nodes we are using are
8056 at the same position.
8057 (path_total_length): Additional check on the existence
8060 * examples/behave.c: Do not leak the ClutterBehaviour
8063 2006-12-03 Emmanuele Bassi <ebassi@openedhand.com>
8065 * clutter/clutter-texture.h: Clean up.
8067 * clutter/clutter-texture.c: Typo fix in the name
8068 of ClutterTextureTileDimension.
8070 * clutter/clutter-behaviour.c: Allow passing NULL
8071 to clutter_behaviour_set_alpha() (as we pass NULL
8072 in the finalize process).
8074 2006-12-02 Emmanuele Bassi <ebassi@openedhand.com>
8076 * clutter/clutter-version.h.in: Fix a stupid logic
8077 error in the CHECK_VERSION macro.
8079 2006-11-30 Matthew Allum <mallum@openedhand.com>
8084 2006-11-30 Emmanuele Bassi <ebassi@openedhand.com>
8086 * clutter/clutter-stage.h:
8087 * clutter/clutter-stage.c:
8088 (clutter_stage_swap_buffers): Remove, as the same is done
8089 via clutter_redraw() and clutter_actor_queue_redraw().
8091 (clutter_stage_unrealize), (clutter_stage_init),
8092 (clutter_stage_set_xwindow_foreign): Do not call
8093 XDestroyWindow() on the stage Window if we are using a
8094 foreign Window, as we don't control its lifetime.
8096 2006-11-30 Emmanuele Bassi <ebassi@openedhand.com>
8098 * Makefile.am: Remove the gtk directory from the SUBDIRS.
8100 * clutter/clutter-stage.h:
8101 * clutter/clutter-stage.c: Add clutter_stage_swap_buffers(),
8102 which swaps the GL buffers. This fixes the redraw in the
8105 2006-11-29 Emmanuele Bassi <ebassi@openedhand.com>
8107 * clutter/clutter-stage.c:
8108 (clutter_stage_set_xwindow_foreign): Add checks;
8109 remove an indirection to the private data.
8111 2006-11-29 Emmanuele Bassi <ebassi@openedhand.com>
8115 * Makfile.am: Remove the GTK+ widget from the
8116 main tree; now Clutter depends just on GLib,
8117 XLibs, GdkPixbuf and OpenGL.
8119 2006-11-29 Matthew Allum <mallum@openedhand.com>
8121 * clutter/clutter-stage.c: (clutter_stage_realize):
8122 Set colormap on stage window - should fix issues
8123 with indirect rendering.
8125 2006-11-23 Matthew Allum <mallum@openedhand.com>
8127 * clutter/clutter-debug.h:
8128 Fix small macro typo.
8130 2006-11-22 Matthew Allum <mallum@openedhand.com>
8132 * clutter/clutter-actor.c:
8133 * clutter/clutter-alpha.c:
8134 * clutter/clutter-behaviour-opacity.c:
8135 * clutter/clutter-behaviour-scale.c:
8136 * clutter/clutter-clone-texture.c:
8137 * clutter/clutter-feature.c:
8138 * clutter/clutter-label.c:
8139 * clutter/clutter-main.c:
8140 * clutter/clutter-stage.c:
8141 * clutter/clutter-texture.c
8142 * clutter/clutter-timeline.c:
8143 * clutter/clutter-debug.h:
8144 Make CLUTTER_NOTE() just take a string rather than a func.
8145 Add more default context to output.
8148 Fix flag and add more help docs for --ebable-debug option.
8150 2006-11-21 Emmanuele Bassi <ebassi@openedhand.com>
8152 * clutter/clutter-main.c: Add a --g-fatal-warnings switch
8153 for abort()-ing on warnings and criticals.
8155 2006-11-21 Emmanuele Bassi <ebassi@openedhand.com>
8157 * configure.ac: Enable debug messages also when
8158 --enable-debug is set to "minimum".
8160 * clutter/Makefile.am:
8161 * clutter/clutter-debug.h: Move all debugging macros inside
8162 this private header; make all debug macros depend on the
8163 CLUTTER_ENABLE_DEBUG compile time define, controlled by
8164 the --enable-debug configure switch; add G_LOG_DOMAIN define.
8166 * clutter/clutter-main.c: Clean up the debug stuff; add
8167 command line argument parsing using GOption; the debug
8168 messages now are triggered like this:
8170 CLUTTER_DEBUG=section:section:... clutter-app
8174 clutter-app --clutter-debug=section:section:...
8176 where "section" is one of the sections listed in clutter-main.c,
8177 or "all", for all sections; each section is bound to a flag,
8178 which can be used to define a domain when adding a debug note
8179 using the CLUTTER_NOTE() macro; the old CLUTTER_DBG() macro is
8180 just a wrapper around that, under the CLUTTER_DEBUG_MISC domain;
8181 CLUTTER_NOTE() is used like this:
8183 CLUTTER_NOTE (DOMAIN, log-function);
8185 where log function is g_printerr(), g_message(), g_warning(),
8186 g_critical() or directly g_log() - for instance:
8188 CLUTTER_NOTE (PANGO, g_warning ("Cache miss: %d", glyph));
8190 will print the warning only if the "pango" flag has been
8191 set to the CLUTTER_DEBUG envvar or passed to the --clutter-debug
8192 command line argument.
8194 similar to CLUTTER_SHOW_FPS, there's also the --clutter-show-fps
8195 command line switch; also, the --display and --screen command
8196 line switches have been added: the first overrides the DISPLAY
8197 envvar and the second controls the X screen used by Clutter to
8198 get the root window on the display.
8200 * clutter/clutter-main.h:
8201 * clutter/clutter-main.c: Add extended support for GOption
8202 in Clutter; use clutter_init_with_args() to let Clutter
8203 parse your own command line arguments; use instead
8204 clutter_get_option_group() to get the GOptionGroup used by
8205 Clutter if you want to do the parsing yourself with
8206 g_option_context_parse(). The init sequence has been verified,
8207 updated and moved into common functions where possible.
8209 * clutter/pango/pangoclutter-render.c:
8210 * clutter/*.c: Include "clutter-debug.h" where needed; use
8211 CLUTTER_NOTE() instead of CLUTTER_DBG().
8213 * examples/super-oh.c: Use the new clutter_init_with_args()
8214 function, and add a --num-hands command line switch to
8215 the SuperOH example code controlling the number of hands at
8218 2006-11-21 Emmanuele Bassi <ebassi@openedhand.com>
8220 * configure.ac: Rename G_ENABLE_DEBUG to CLUTTER_ENABLE_DEBUG.
8222 2006-11-20 Emmanuele Bassi <ebassi@openedhand.com>
8224 * clutter/clutter-rectangle.h:
8225 * clutter/clutter-rectangle.c: Add border to the ClutterRectangle
8226 actor; add "border-width", "border-color" and "has-border"
8227 properties, plus their accessors. The border generation code is
8228 pretty lame, at the moment.
8230 * examples/behave.c: Add code to test the new rectangle properties.
8232 2006-11-20 Matthew Allum <mallum@openedhand.com>
8235 Add an initial DOAP file to project
8237 2006-11-20 Emmanuele Bassi <ebassi@openedhand.com>
8239 * clutter/Makefile.am:
8240 * clutter/clutter.h:
8241 * clutter/clutter-version.h.in: Auto-generated versioning macros.
8243 * clutter/clutter-actor.h:
8244 * clutter/clutter-actor.c: Add a ClutterActor::parent-set signal,
8245 for notificating changes of an actor's parent; add api-doc for
8246 the actor's properties; add the ClutterActor "name" property; clean
8247 up a bit some functions; emit the "parent-set" signal when setting
8248 te parent and when unparenting; better warnings when lowering
8249 and raising an actor.
8252 * clutter/Makefile.am: Add a --enable-debug configure option,
8253 with three levels of debugging: no, minimum and yes; default
8254 for development releases (odd minor version) is "yes"; update
8255 the version m4 defines; update the libtool macros: now just
8256 changed the clutter_interface_age when releasing will update
8259 2006-11-17 Emmanuele Bassi <ebassi@openedhand.com>
8261 * clutter/clutter-behaviour-path.h:
8262 * clutter/clutter-behaviour-path.c: Add "since" strings; add
8263 a "knot" property which can be used to append a knot to the path;
8266 * clutter/clutter-alpha.c: Add "since" strings.
8268 * clutter/clutter-feature.c: Add apidoc.
8270 * clutter/clutter-behaviour-opacity.c: Add the "opacity-start"
8271 and "opacity-end" properties; rewrite constructor to use them.
8273 2006-11-17 Emmanuele Bassi <ebassi@openedhand.com>
8275 * clutter/clutter-behaviour-path.h:
8276 * clutter/clutter-behaviour-path.c: Add a "knot-reached" signal,
8277 which is emitted when the path reaches a node in the nodes list;
8278 flesh out the documentation a bit; sync the parameters names
8279 so that gtk-doc doesn't complain about missing stuff.
8281 * clutter/clutter-behaviour.h:
8282 * clutter/clutter-behaviour.c: Add the alpha value to the
8283 ClutterBehaviour::alpha_notify vfunc, so you don't have to
8284 get the value from the alpha inside the behaviour implementations;
8285 add more documentation.
8287 * clutter/clutter-alpha.c: Flesh out the description.
8289 * clutter/clutter-actor.h: Update the header.
8291 * clutter/clutter-behaviour-opacity.c:
8292 * clutter/clutter-behaviour-scale.c: Update docs.
8294 2006-11-17 Matthew Allum <mallum@openedhand.com>
8296 * clutter/clutter-alpha.c:
8297 * clutter/clutter-behaviour-opacity.c:
8300 * clutter/clutter-behaviour-path.h:
8301 * clutter/clutter-behaviour-path.c:
8302 More docs, add clutter_behaviour_path_insert_knot(),
8303 clutter_behaviour_path_remove_knot()
8305 * clutter/clutter-behaviour-scale.h:
8306 * clutter/clutter-behaviour-scale.c:
8307 More docs, add clutter_behaviour_scale_newx() taking fixed values.
8309 * clutter/Makefile.am:
8310 * clutter/pango/Makefile.am:
8311 Fix linking warning.
8313 2006-11-15 Matthew Allum <mallum@openedhand.com>
8315 * clutter/clutter-actor.h:
8316 * clutter/clutter-actor.c:
8317 Add new API clutter_actor_move_by(), clutter_actor_get_size()
8319 * clutter/clutter-alpha.c:
8320 * clutter/clutter-alpha.h:
8321 Add clutter alpha sine func
8323 * clutter/clutter-behaviours.h:
8324 * clutter/clutter-behaviours.c:
8325 Add a basic scale behaviour (needs work)
8327 * examples/behave.c: (main):
8328 More playing with new behaviour functionality
8330 * clutter/clutter-feature.c:
8331 * clutter/clutter-feature.h:
8332 * clutter/clutter-main.c:
8333 Add new experimental sync to vblank code
8334 Set env CLUTTER_VBLANK=none to disable.
8336 2006-11-16 Emmanuele Bassi <ebassi@openedhand.com>
8338 * clutter/clutter-private.h:
8339 * clutter/clutter-actor.c: Implement the defined
8340 clutter_actor_reparent() method; call unrealize
8341 when unparenting an actor.
8343 2006-11-15 Emmanuele Bassi <ebassi@openedhand.com>
8345 * clutter/clutter-alpha.h:
8346 * clutter/clutter-alpha.c: Add a data parameter to
8347 the ClutterAlphaFunc; add a data+destroy parameter
8348 to clutter_alpha_set_func() and to clutter_alpha_new(),
8349 and turned the latter into clutter_alpha_new_full();
8350 add a simple, empty constructor clutter_alpha_new().
8352 These changes makes writing bindings a tad more easy,
8353 as bindings require passing their own functions in
8354 order to call the real alpha function.
8356 * clutter/clutter-behaviour.h: Clean up the header.
8358 * clutter/clutter-behaviours.[ch]:
8359 * clutter/clutter-behaviour-opacity.[ch]:
8360 * clutter/clutter-behaviour-path.[ch]:
8361 * clutter/clutter-behaviour-scale.[ch]: Split the
8362 ClutterBehaviourPath, ClutterBehaviourOpacity and
8363 ClutterBehaviourScale into their own files as they
8364 have been growing a bit. Fix ClutterBehaviourPath
8367 * clutter/clutter-media.h: Remove the commented
8368 "metadata_available" signal: gtk-doc chokes up on that.
8370 * clutter/clutter-timeline.h:
8371 * clutter/clutter-timeline.c: Remove the useless
8372 ClutterTimelineAlphaFunc signature; add missing accessor
8373 methods for the properties; clean up a bit.
8375 * clutter/clutter-util.h:
8376 * clutter/clutter-util.c: Remove unneeded function
8377 clutter_util_can_create_texture().
8379 * clutter/clutter-feature.h: Sync the name of
8380 clutter_feature_get_all() with the name declared
8381 in clutter-feature.h.
8383 * clutter/Makefile.am:
8384 * clutter/clutter.h: Update.
8386 * examples/behave.c: Update to the new ClutterAlpha
8389 * examples/super-oh.c: Use the right pointer and avoid
8390 the compiler making a fuss about it.
8392 2006-11-15 Matthew Allum <mallum@openedhand.com>
8394 * clutter/clutter-actor.h:
8395 * clutter/clutter-actor.c:
8396 Add new API clutter_actor_move_by(), clutter_actor_get_size()
8398 * clutter/clutter-alpha.c:
8399 * clutter/clutter-alpha.h:
8400 Add clutter alpha sine func
8402 * clutter/clutter-behaviours.h:
8403 * clutter/clutter-behaviours.c:
8404 Add a basic scale behaviour (needs work)
8406 * examples/behave.c: (main):
8407 More playing with new behaviour functionality
8409 * clutter/clutter-feature.c:
8410 * clutter/clutter-feature.h:
8411 * clutter/clutter-main.c:
8412 Add new experimental sync to vblank code
8413 Set env CLUTTER_VBLANK=none to disable.
8415 2006-11-15 Emmanuele Bassi <ebassi@openedhand.com>
8417 * clutter/clutter-alpha.h:
8418 * clutter/clutter-alpha.c: ClutterAlpha is an initially
8419 floating object, as it makes sense only when bound to
8420 a ClutterBehaviour; add checks for public API.
8422 * clutter/clutter-behaviour.h:
8423 * clutter/clutter-behaviour.c: Remove the ClutterBehaviour
8424 constructor: ClutterBehaviour is an abstract class which
8425 must be implemented by subclassing; add checks for public
8426 API; unref the actors on finalize; sink the ClutterAlpha
8429 * clutter/clutter-behaviours.h: ClutterKnot is a boxed
8430 type: add the _get_type() function declaration and the
8433 2006-10-23 Matthew Allum <mallum@openedhand.com>
8435 * clutter/clutter-alpha.h:
8436 * clutter/clutter-behaviour.c:
8437 * clutter/clutter-behaviour.h:
8438 * clutter/clutter-behaviours.c:
8439 * clutter/clutter-behaviours.h:
8440 * examples/behave.c:
8441 Behaviours now only 'driven' by ClutterAlpha, not any object/prop.
8442 Add simple Clutter path behaviour.
8444 2006-10-03 Matthew Allum <mallum@openedhand.com>
8447 * clutter/Makefile.am:
8448 * clutter/clutter-actor.c:
8449 * clutter/clutter-label.c:
8450 * clutter/clutter-label.h:
8451 * clutter/pango/Makefile.am:
8452 * clutter/pango/pangoclutter-font.c:
8453 * clutter/pango/pangoclutter-fontmap.c:
8454 * clutter/pango/pangoclutter-private.h:
8455 * clutter/pango/pangoclutter-render.c:
8456 * clutter/pango/pangoclutter.h:
8457 Add initial rough new pango renderer and clutter-label.
8459 * examples/super-oh.c:
8463 2006-09-20 Matthew Allum <mallum@openedhand.com>
8465 * clutter/clutter-actor.c: (clutter_actor_paint):
8466 * clutter/clutter-clone-texture.c: (clutter_clone_texture_paint):
8467 * clutter/clutter-group.c: (clutter_group_paint):
8468 * clutter/clutter-rectangle.c: (clutter_rectangle_paint):
8469 * clutter/clutter-texture.c: (clutter_texture_paint):
8471 clutter_actor_paint() now translates to actor position as
8472 to not fix scaled groups positioning. Sub classes now paint
8475 2006-09-19 Matthew Allum <mallum@openedhand.com>
8477 * clutter/clutter-actor.c: (redraw_update_idle),
8478 (clutter_actor_queue_redraw):
8479 * clutter/clutter-main.c: (clutter_redraw):
8480 Remove now uneeded locks
8481 ( new gst and texture code makes redundant )
8483 * clutter/clutter-texture.c:
8484 * clutter/clutter-texture.h:
8485 Redo clutter texture as to not keep a reference
8486 to underlying texture.
8488 2006-09-15 Matthew Allum <mallum@openedhand.com>
8490 More fixes from Bastien Nocera (#155):
8492 * clutter/clutter-main.c: (clutter_init):
8493 * clutter/clutter-main.h:
8494 Add an enum for clutter init to return an error code.
8496 Dont check for XInitThreads, there is no need, its part of xlib.
8498 2006-09-14 Matthew Allum <mallum@openedhand.com>
8500 Various fixes from Bastien Nocera:
8502 * clutter/clutter-event.h:
8503 * clutter/clutter-stage.c: (clutter_stage_unrealize),
8504 (clutter_stage_realize), (clutter_stage_request_coords),
8505 (clutter_stage_dispose), (clutter_stage_init):
8506 * clutter/clutter-stage.h:
8507 * gtk/gtk-clutter-test.c: (input_cb), (frame_cb), (main):
8508 * gtk/gtk-clutter.c: (realize):
8511 * clutter/clutter-group.c: (clutter_group_remove):
8512 Remove uneeded ref count (#143)
8514 * examples/super-oh.c: (input_cb):
8515 Handle key release rather than presses (#154)
8518 Add old style X libs check when x11.pc unavailable (#101)
8520 2006-09-01 Matthew Allum <mallum@openedhand.com>
8522 * clutter/Makefile.am:
8523 * clutter/clutter-media.c:
8524 * clutter/clutter-media.h:
8525 * clutter/clutter.h:
8526 Re-add clutter media.
8528 2006-08-31 Matthew Allum <mallum@openedhand.com>
8530 * clutter/clutter-actor.c:
8531 * clutter/clutter-group.c: (clutter_group_paint),
8532 (clutter_group_request_coords), (clutter_group_allocate_coords),
8533 (clutter_group_add):
8534 Fix some group sizing/positioning issues.
8536 2006-08-30 Jorn Baayen <jorn@openedhand.com>
8540 Remove gstreamer deps.
8542 2006-08-30 Jorn Baayen <jorn@openedhand.com>
8545 * clutter/Makefile.am:
8546 * clutter/clutter-audio.c:
8547 * clutter/clutter-audio.h:
8548 * clutter/clutter-main.c: (clutter_init):
8549 * clutter/clutter-media.c:
8550 * clutter/clutter-media.h:
8551 * clutter/clutter-video-texture.c:
8552 * clutter/clutter-video-texture.h:
8553 * clutter/clutter.h:
8555 * examples/Makefile.am:
8557 * examples/video-cube.c:
8558 * examples/video-player.c:
8560 * gst/clutterimagesink.:
8561 * gst/clutterimagesink.c:
8562 * gst/clutterimagesink.h:
8565 Remove gstreamer bits. There live in clutter-gst now.
8567 2006-08-30 Jorn Baayen <jorn@openedhand.com>
8569 * clutter/Makefile.am:
8570 * clutter/clutter-audio.c:
8571 * clutter/clutter-audio.h:
8572 * clutter/clutter.h:
8574 Added ClutterAudio audio playback object.
8576 2006-08-29 Matthew Allum <mallum@openedhand.com>
8578 * clutter/clutter-fixed.h:
8579 Add basic fixed point utility defines and type.
8581 * clutter/Makefile.am:
8582 * clutter/clutter-actor.c:
8583 * clutter/clutter-actor.h:
8584 * clutter/clutter-group.c:
8585 * clutter/clutter-stage.c:
8586 * examples/super-oh.c: (main):
8587 Add scale API and functionality.
8588 Rework group sizing. Now group size requests have no effect
8591 2006-08-29 Jorn Baayen <jorn@openedhand.com>
8593 * clutter/clutter-behaviour.c: (_clutter_behaviour_finalize),
8594 (_clutter_behaviour_set_property),
8595 (_clutter_behaviour_get_property), (clutter_behaviour_class_init),
8596 (clutter_behaviour_init), (clutter_behaviour_apply),
8597 (clutter_behaviour_remove), (clutter_behaviour_remove_all),
8598 (clutter_behaviour_actors_foreach):
8599 * clutter/clutter-behaviour.h:
8600 * clutter/clutter-behaviours.c:
8601 (clutter_behaviour_property_change),
8602 (clutter_behaviour_opacity_dispose),
8603 (clutter_behaviour_opacity_finalize),
8604 (clutter_behaviour_opacity_class_init),
8605 (clutter_behaviour_opacity_init):
8606 * clutter/clutter-behaviours.h:
8607 * clutter/clutter-marshal.list:
8608 * examples/behave.c: (main):
8610 Behaviours track generic GObject properties.
8612 * clutter/clutter-video-texture.h:
8614 Remove signal prototypes - they are already specified in
8617 2006-08-28 Jorn Baayen <jorn@openedhand.com>
8619 * clutter/Makefile.am:
8620 * clutter/clutter-alpha.c:
8621 * clutter/clutter-alpha.h:
8622 * clutter/clutter-behaviours.c:
8623 (clutter_behaviour_opacity_dispose),
8624 (clutter_behaviour_opacity_init),
8625 (clutter_behaviour_opacity_frame_foreach),
8626 (clutter_behaviour_opacity_frame):
8627 * clutter/clutter-behaviours.h:
8628 * clutter/clutter-timeline.c: (clutter_timeline_class_init):
8629 * clutter/clutter-timeline.h:
8630 * clutter/clutter.h:
8631 * examples/behave.c: (main):
8633 Separate alpha calculation into its own class.
8635 * clutter/clutter-behaviour.c: (clutter_behaviour_set_timelime):
8639 2006-08-15 Matthew Allum <mallum@openedhand.com>
8641 * clutter/clutter-behaviour.h:
8642 Behaviours shouldn't subclass timelines.
8644 2006-08-15 Matthew Allum <mallum@openedhand.com>
8646 * clutter/clutter-behaviour.c:
8647 * clutter/clutter-behaviour.h:
8648 * clutter/clutter-behaviours.c:
8649 * clutter/clutter-timeline.c:
8650 * clutter/clutter-timeline.h:
8651 * clutter/clutter.h:
8652 Make basic behaviour infrastructure actually work.
8654 * examples/Makefile.am:
8655 * examples/behave.c:
8656 Add a simple behaviour demo/test
8658 * clutter/clutter-media.c: (clutter_media_set_volume):
8659 Actuall set volume rather than position.. (Fixes #141)
8661 2006-08-14 Matthew Allum <mallum@openedhand.com>
8663 * clutter/Makefile.am:
8664 * clutter/clutter-behaviour.c:
8665 * clutter/clutter-behaviour.h:
8666 * clutter/clutter-behaviours.c:
8667 * clutter/clutter-behaviours.h:
8668 * clutter/clutter-timeline.c:
8669 * clutter/clutter-timeline.h:
8670 Add very initial new behaviour functionality.
8672 * clutter/clutter-stage.c:
8673 * clutter/clutter-main.c:
8674 * clutter/clutter-actor.c:
8675 Improve clipping using stencil test rather than scissor check.
8676 ( Should now handle rotated clips etc ).
8678 * clutter/clutter-group.c: (clutter_group_paint):
8679 Fix typo on position check.
8681 2006-08-07 Matthew Allum <mallum@openedhand.com>
8683 * clutter/clutter-video-texture.c: (lay_pipeline):
8684 Set quality of service prop on fakesink to TRUE.
8686 2006-08-07 Matthew Allum <mallum@openedhand.com>
8688 * clutter/clutter-actor.c: (clutter_actor_paint):
8689 Remove relic from old stage behaviour - dont unref
8692 2006-07-27 Emmanuele Bassi <ebassi@openedhand.com>
8694 * clutter/clutter-feature.c: No need to call clutter_feature_init()
8695 each time: it's private and should never be seen from the outside;
8696 add a warning, just in case something screws up and calls it more
8699 2006-07-27 Emmanuele Bassi <ebassi@openedhand.com>
8701 * clutter/clutter-private.h: Move clutter_feature_init()
8702 declaration here: you shouldn't even need to initialise
8705 * clutter/clutter-feature.c: call clutter_feature_init()
8706 each time you try to access the feature list; add a static
8707 lock around the feature flags container; add api documentation.
8709 * clutter/clutter-feature.h: Add a type for the feature flags
8710 to make bindings happy.
8712 2006-07-24 Matthew Allum <mallum@openedhand.com>
8714 * clutter/Makefile.am:
8715 * clutter/clutter-feature.c:
8716 * clutter/clutter-feature.h:
8718 Add new funcs for checking for available runtime GL
8721 * clutter/clutter-clone-texture.c:
8722 * clutter/clutter-texture.c:
8724 Add support for non power of two textures
8725 if GL_TEXTURE_RECTANGLE_ARB extension available ( at runtime ).
8726 Should lower texture memory needs a little.
8728 2006-07-17 Emmanuele Bassi <ebassi@openedhand.com>
8730 * clutter/clutter-stage.c (clutter_stage_get_default): Fix
8733 2006-07-15 Emmanuele Bassi <ebassi@openedhand.com>
8735 * clutter/clutter-main.c:
8737 (clutter_main): Destroy the main stage, instead of unreffing it.
8739 (clutter_init): Ref and sink the main stage, as it is a top
8742 * clutter/clutter-stage.c (clutter_stage_unrealize): Access
8743 the Window private member directly, instead of calling the
8746 * examples/test.c (main): Quit on button press.
8748 2006-07-09 Emmanuele Bassi <ebassi@openedhand.com>
8750 * clutter/clutter-event.h: Change the name of the
8751 ClutterEvent union members to something a little shorter.
8753 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
8755 * configure.ac: Remove the python stuff, now that the bindings
8758 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
8760 * configure.ac: Mark this as 0.1.1, and change the version info
8763 * clutter/clutter-actor.c:
8764 * clutter/clutter-group.c: Fix documentation.
8766 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
8768 * clutter/clutter-actor.h:
8769 * clutter/clutter-actor.c:
8771 (clutter_actor_class_init), (clutter_actor_set_property),
8772 (clutter_actor_get_property): Add the "clip" and "has-clip"
8775 (clutter_actor_set_clip), (clutter_actor_remove_clip): Emit
8776 the notification for the changed properties.
8778 (clutter_actor_has_clip): Simple accessor to the "has-clip"
8781 2006-07-06 Emmanuele Bassi <ebassi@openedhand.com>
8783 Big rework of the actor management semantics: now ClutterActor
8784 objects behave like GtkObjects - that is they have an initial
8785 "floating" reference that gets "sunk" when they are added to
8786 a ClutterGroup. This makes a group responsible of de-allocating
8787 each actor inside it, so you just have to destroy the group to
8788 get every child actor destroyed. Also, now you can do:
8790 clutter_group_add (group, clutter_video_texture_new ());
8792 without having to care about reference counting and explicit
8795 * clutter/clutter-private.h: Add private flags setter and
8798 * clutter/clutter-actor.h:
8799 * clutter/clutter-actor.c: Clean up; inherit from GInitiallyUnowned;
8800 add a "visible" property; add the "destroy", "show" and "hide"
8801 signals to ClutterActorClass.
8803 (clutter_actor_show), (clutter_actor_hide): Refactor a bit; emit
8804 the "show" and "hide" signals.
8806 (clutter_actor_set_property), (clutter_actor_get_property),
8807 (clutter_actor_class_init): Implement the "visible" property; add
8810 (clutter_actor_finalize): Do not leak the actor's name, if it is
8813 (clutter_actor_dispose): Emit the "destroy" signal here.
8815 (clutter_actor_init): Sink the initial floating flag if needed.
8817 (clutter_actor_destroy): Add a function to explicitely destroy
8820 (clutter_actor_set_parent), (clutter_actor_get_parent),
8821 (clutter_actor_unparent): Make set_parent require a valid parent;
8822 add unparent; check on get_parent; ref_sink the actor when
8823 setting its parent and unref it when unsetting it. Probably we'll
8824 need a function that does reparenting as unparent+set_parent in
8827 * clutter/clutter-group.h:
8828 * clutter/clutter-group.c (clutter_group_dispose),
8829 (clutter_group_finalize), (clutter_group_add),
8830 (clutter_group_remove): Make the group destroy its children when
8831 disposing it; clean up, and use the newly-available
8832 clutter_actor_unparent().
8834 * clutter/clutter-stage.h:
8835 * clutter/clutter-stage.c (clutter_stage_init): ClutterStage is
8836 a top-level actor; clean up.
8838 * clutter/clutter-video-texture.h:
8839 * clutter/clutter-video-texture.c: Clean up.
8841 * examples/super-oh.c:
8843 * examples/video-player.c:
8844 * examples/test-text.c:
8845 * examples/video-cube.c: Remove the g_object_unref() call, as the
8846 ClutterStage object is destroyed on clutter_main_quit().
8848 2006-06-23 Matthew Allum <mallum@openedhand.com>
8850 * examples/super-oh.c:
8851 Remove random stage unref fixing trails. Fixes #98
8853 2006-06-23 Matthew Allum <mallum@openedhand.com>
8855 * examples/video-player.c: (size_change):
8856 cast stage height to gint avoiding wierdness for when
8857 video height greater than half display height. Fixed #99
8859 2006-06-23 Matthew Allum <mallum@openedhand.com>
8861 * clutter/clutter-video-texture.c: (clutter_video_texture_new):
8862 Small fix for video playback on Big Endian. See #97
8864 2006-06-23 Iain Holmes <iain@openedhand.com>
8866 * clutter/clutter-texture.h: Add space :) Sorry.
8868 2006-06-23 Iain Holmes <iain@openedhand.com>
8870 * clutter/clutter-label.h:
8871 * clutter/clutter-group.h:
8872 * clutter/clutter-rectangle.h:
8873 * clutter/clutter-video-texture.h:
8874 * clutter/clutter-event.h:
8875 * clutter/clutter-texture.h: Fix the header layout so that C# parser
8876 can understand everything.
8878 2006-06-23 Ross Burton <ross@openedhand.com>
8882 Remove references to bindings/, it's moved.
8884 2006-06-23 Emmanuele Bassi <ebassi@openedhand.com>
8886 * clutter/clutter-group.c
8887 (clutter_group_get_children): Mention that you must free
8888 the returned list otherwise you'll leak stuff all around.
8890 2006-06-23 Ross Burton <ross@openedhand.com>
8892 * examples/super-oh.c:
8893 Fix build with trails enabled. Still crashes.
8895 2006-06-23 Ross Burton <ross@openedhand.com>
8898 Disable static libraries.
8900 2006-06-22 Matthew Allum <mallum@openedhand.com>
8905 2006-06-22 Matthew Allum <mallum@openedhand.com>
8908 Add Pango ref, authors info.
8910 ========== 2006-06-22 0.1 Release =====================
8912 2006-06-22 Matthew Allum <mallum@openedhand.com>
8916 Correct Bugzilla link. Add debs link
8917 Bump up version to 0.1 !
8919 2006-06-22 Matthew Allum <mallum@openedhand.com>
8922 Add an entry for 0.1 release
8927 2006-06-22 Iain Holmes <iain@openedhand.com>
8929 * clutter/clutter-main.c: Guess what...more docs
8931 2006-06-22 Iain Holmes <iain@openedhand.com>
8933 * clutter/clutter-event.c: Add docs
8935 2006-06-22 Iain Holmes <iain@openedhand.com>
8937 * clutter/clutter-media.c: Add docs
8939 2006-06-22 Iain Holmes <iain@openedhand.com>
8941 * clutter/clutter-texture.c: Fix typos.
8943 * clutter/clutter-timeline.c: Fix typos.
8945 2006-06-22 Iain Holmes <iain@openedhand.com>
8947 * clutter/clutter-video-texture.c: Docs.
8949 2006-06-22 Iain Holmes <iain@openedhand.com>
8951 * clutter/clutter-group.c: More typo fixes
8953 * clutter/clutter-event.c: Documentation
8955 2006-06-22 Emmanuele Bassi <ebassi@openedhand.com>
8957 * clutter/clutter-timeline.h:
8958 * clutter/clutter-timeline.c: Add a "started" and a "paused"
8959 signals; add more sanity checks on the public functions.
8961 (clutter_timeline_get_loop): Add a getter function for the
8964 * clutter/clutter-marshal.list: Add marshallers.
8966 * clutter/clutter-timeline.h:
8967 * clutter/clutter-actor.h: Add padding for future expansion
8968 without breaking ABI.
8970 2006-06-22 Iain Holmes <iain@openedhand.com>
8972 * clutter/clutter-actor.c: Fix some typos in the docs.
8974 2006-06-22 Iain Holmes <iain@openedhand.com>
8976 * clutter/clutter-util.c: And more
8978 2006-06-22 Ross Burton <ross@openedhand.com>
8980 * clutter/clutter-label.c:
8981 * clutter/clutter-video-texture.c:
8982 * clutter/clutter-texture.c:
8983 * clutter/clutter-timeline.c:
8984 * clutter/clutter-group.c:
8985 Fix gtk-doc problems.
8987 2006-06-22 Iain Holmes <iain@openedhand.com>
8989 * clutter/clutter-main.c: More documentation
8991 2006-06-22 Matthew Allum <mallum@openedhand.com>
8993 * clutter/clutter-main.h:
8994 Remove bogus xvisual call.
8996 2006-06-22 Matthew Allum <mallum@openedhand.com>
8998 * clutter/clutter-actor.c:
8999 * clutter/clutter-actor.h:
9000 Remove mirroring related calls ( unimplemented )
9001 * gtk/gtk-clutter-test.c: 0 -> NULL
9003 2006-06-22 Iain Holmes <iain@openedhand.com>
9005 * clutter/clutter-actor.c:
9006 * clutter/clutter-stage.c:
9007 * gtk/gtk-clutter.c: More docs
9009 2006-06-22 Iain Holmes <iain@openedhand.com>
9011 * clutter/clutter-actor.c: Added some more docs.
9013 2006-06-22 Matthew Allum <mallum@openedhand.com>
9015 * clutter/clutter-actor.c:
9016 * clutter/clutter-clone-texture.c:
9017 * clutter/clutter-color.c:
9018 * clutter/clutter-event.c:
9019 * clutter/clutter-group.c:
9020 * clutter/clutter-label.c:
9021 * clutter/clutter-main.c:
9022 * clutter/clutter-media.c:
9023 * clutter/clutter-rectangle.c:
9024 * clutter/clutter-stage.c:
9025 * clutter/clutter-texture.c:
9026 * clutter/clutter-timeline.c:
9027 * clutter/clutter-util.c:
9028 * clutter/clutter-video-texture.c:
9030 Documentation updates - add section headers.
9032 2006-06-22 Iain Holmes <iain@openedhand.com>
9034 * gtk/gtk-clutter-test.c (main): Don't show the stage.
9036 2006-06-22 Iain Holmes <iain@openedhand.com>
9038 * gtk/gtk-clutter.[ch]: Rewrite to use
9039 clutter_stage_set_xwindow_foreign rather than GtkSocket.
9041 * gtk/gtk-clutter-test.c: Add fading!1!!!!11! OMGWTFBBQ!!!
9043 2006-06-21 Emmanuele Bassi <ebassi@openedhand.com>
9045 * examples/video-cube.c (main): Quit on key press.
9047 2006-06-21 Emmanuele Bassi <ebassi@openedhand.com>
9049 * clutter/Makefile.am: Re-fix distcheck after last commit.
9051 2006-06-21 Matthew Allum <mallum@openedhand.com>
9053 * clutter/Makefile.am:
9054 Make sure clutter.h included.
9055 * clutter/clutter-stage.c: (clutter_stage_realize),
9056 (clutter_stage_get_actor_at_pos):
9057 Select for motion events on X window.
9058 Return highest rather than lowest found actor for actor_at_pos.
9059 * examples/Makefile.am:
9060 Remove test-text, remane test video.
9062 Add info about the included examples.
9063 * examples/test-video.c:
9064 * examples/video-player.c:
9065 Redo test-video a little nicer and rename.
9066 * examples/video-cube.c:
9067 Fix so it at least 'works' again.
9071 2006-06-21 Ross Burton <ross@openedhand.com>
9075 Add gtk widget to distcheck and fix.
9077 2006-06-21 Emmanuele Bassi <ebassi@openedhand.com>
9079 * clutter/Makefile.am:
9080 * bindings/python/Makefile.am:
9081 * Makefile.am: Fix distcheck
9083 2006-06-21 Ross Burton <ross@openedhand.com>
9085 * clutter/Makefile.am:
9086 * examples/Makefile.am:
9089 2006-06-20 Matthew Allum <mallum@openedhand.com>
9093 * clutter/clutter-group.c:
9094 Attempt better group sizing code.
9095 * clutter/clutter-label.c:
9097 * clutter/clutter-texture.c:
9098 More debug info, make sure texture is realised for base_size()
9099 * clutter/clutter-video-texture.c:
9101 * examples/test.c: (main):
9102 Populate with more randomness.
9104 2006-06-15 Matthew Allum <mallum@openedhand.com>
9106 * clutter/clutter-stage.c:
9107 * clutter/clutter-stage.h:
9108 Add clutter_stage_set_xwindow_foreign() call
9109 * clutter/clutter-util.c:
9110 * clutter/clutter-util.h:
9111 Add some X error traps
9112 * examples/super-oh.c:
9113 Toy with us of new clutter_stage_set_xwindow_foreign() for
9114 optional screensaver functionality.
9116 2006-06-14 Matthew Allum <mallum@openedhand.com>
9119 Add checks for GL/gl.h and GL/glx.h
9121 2006-06-14 Matthew Allum <mallum@openedhand.com>
9128 2006-06-13 Matthew Allum <mallum@openedhand.com>
9130 * clutter/clutter-video-texture.c:
9131 Add missing license.
9133 2006-06-13 Matthew Allum <mallum@openedhand.com>
9135 * clutter/Makefile.am:
9136 * clutter/clutter-actor.c:
9137 * clutter/clutter-actor.h:
9138 * clutter/clutter-clone-texture.c:
9139 * clutter/clutter-clone-texture.h:
9140 * clutter/clutter-element.c:
9141 * clutter/clutter-element.h:
9142 * clutter/clutter-group.c:
9143 * clutter/clutter-group.h:
9144 * clutter/clutter-label.c:
9145 * clutter/clutter-label.h:
9146 * clutter/clutter-main.c:
9147 * clutter/clutter-main.h:
9148 * clutter/clutter-rectangle.c:
9149 * clutter/clutter-rectangle.h:
9150 * clutter/clutter-stage.c:
9151 * clutter/clutter-stage.h:
9152 * clutter/clutter-texture.c:
9153 * clutter/clutter-texture.h:
9154 * clutter/clutter-video-texture.c:
9155 * clutter/clutter-video-texture.h:
9156 * clutter/clutter.h:
9157 * examples/super-oh.c:
9158 * examples/test-text.c:
9159 * examples/test-video.c:
9161 * examples/video-cube.c:
9162 * gtk/gtk-clutter-test.c:
9163 * gtk/gtk-clutter.c:
9164 * gtk/gtk-clutter.h:
9165 Element to Actor Renaming.
9167 2006-06-12 Matthew Allum <mallum@openedhand.com>
9169 * clutter/Makefile.am:
9170 * clutter/clutter-media.c:
9171 * clutter/clutter-media.h:
9172 * clutter/clutter-video-texture.c:
9173 * clutter/clutter-video-texture.h:
9174 * clutter/clutter.h:
9175 * examples/test-video.c: (main):
9176 * examples/video-cube.c: (main):
9177 Add new 'media' interface.
9178 Drop Totem based video playback code replace with newly
9179 rewritten supper Jorn based code. Clutter is now fully LGPL.
9181 * clutter/clutter-texture.c: (tile_dimension):
9182 Remove uneeded overlap code.
9184 2006-06-08 Iain Holmes <iain@openedhand.com>
9186 * clutter/clutter-texture.c:
9187 Opps, undo change I didn't mean to commit
9189 2006-06-08 Iain Holmes <iain@openedhand.com>
9192 Add gdk-pixbuf-xlib cflags/libs to clutter libs
9193 Build the gtk-clutter.pc file.
9196 Add the gdk-pixbuf-xlib depends.
9198 * gtk/gtk-clutter.pc.in:
9199 pkg-config stuff for gtk-clutter
9202 Install gtk-clutter.pc
9204 2006-06-08 Matthew Allum <mallum@openedhand.com>
9206 * clutter/clutter-main.c:
9207 * clutter/clutter-private.h:
9208 * clutter/clutter-stage.c:
9209 Rework and fix offscreen rendering, also rejig GLX
9210 context handling, moving mostly into stage.
9211 Require at least OpenGL 1.2 ( CLAMP_TO_EDGE )
9213 * clutter/clutter-texture.c:
9214 Explicity set props on _init() as to avoid nasty can_create
9215 bug failing miserably in certain situations.
9216 Switch to CLAMP_TO_EDGE for textures to avoid tile seams.
9217 Add some more GL error checks.
9219 * clutter/clutter-label.c:
9223 Require gdk-pixbuf-xlib-2.0
9225 2006-06-06 Matthew Allum <mallum@openedhand.com>
9228 Use pkg-config to check for X. Really Check for GL libs.
9229 Make gtk binding optional. Cleanup a little.
9233 Make gtk binding optional
9235 * clutter/clutter-element.c:
9236 Cleanup a little, notify on size change.
9238 * clutter/clutter-texture.c:
9239 Lots of cleanups. Add waste prop. Add filter quality prop.
9241 * clutter/clutter-clone-texture.c:
9242 Make object construction simpler to work better with bindings.
9244 * clutter/clutter-stage.c:
9245 * clutter/clutter-timeline.c:
9246 Minor reformating, cleanups.
9248 * examples/test-text.c: (main):
9249 Random experimentation
9251 2006-06-06 Iain Holmes <iain@openedhand.com>
9253 * gtk/gtk-clutter.c (size_request): Take the size of the widget from
9255 (gtk_clutter_class_init): Hook up size-request
9257 2006-06-06 Iain Holmes <iain@openedhand.com>
9259 * gtk/: Add a gtk widget for clutter.
9261 * configure.ac: Add GTK checks
9263 * Makefile.am: Go into gtk/
9265 2006-06-05 Matthew Allum <mallum@openedhand.com>
9267 * clutter/clutter-group.c: (clutter_group_remove):
9270 2006-06-05 Matthew Allum <mallum@openedhand.com>
9272 * clutter/clutter-event.h:
9273 Remove send_event field. Clutter shouldn't need it.
9275 * clutter/clutter-main.c: (clutter_dispatch_x_event):
9276 Dont malloc a new clutter event for each xevent.
9278 * clutter/clutter-stage.h:
9279 * clutter/clutter-stage.c: (clutter_stage_class_init),
9280 (clutter_stage_get_default):
9281 Dont ref stage from clutter_stage_get_default.
9283 * examples/super-oh.c: (main):
9284 Remove some now uneeded debug g_prints
9286 2006-06-05 Emmanuele Bassi <ebassi@openedhand.com>
9289 * clutter-color.c: Reimplement ClutterColor as a boxed type;
9290 add convenience API for color handling, like: add, subtract,
9291 shade, HSL color-space conversion, packing and unpacking.
9293 * clutter-private.h: Update ClutterMainContext, and export the
9294 main context pointer here.
9296 * clutter-rectangle.h:
9297 * clutter-rectangle.c: Update the color-related code; make
9298 clutter_rectangle_new() and empty constructor and provide
9299 clutter_rectangle_new_with_color(); provide color setter
9303 * clutter-label.c: Rename the "font" property to "font-name";
9304 update the color-related code to the new ClutterColor object;
9305 rename clutter_label_new() to clutter_label_new_with_text(),
9306 and add setters and getters for the properties.
9308 * clutter-marshal.list: Add VOID:OBJECT and VOID:BOXED marshallers
9312 * clutter-stage.c: Rework the API: provide a default constructor
9313 for a singleton object, named clutter_stage_get_default(), which
9314 supercedes the clutter_stage() function in clutter-main; provide
9315 new events: button-press-event, button-release-event,
9316 key-press-event and key-release-event; update the color-related
9319 (clutter_stage_snapshot): Allow negative width and height when
9320 taking a snapshot (meaning: use full width/height).
9322 (clutter_stage_get_element_at_pos): Rename clutter_stage_pick().
9324 * clutter-element.c (clutter_element_paint): Clean up the
9325 stage and color related code.
9328 * clutter-event.c: Add generic ClutterAnyEvent type; add
9329 clutter_event_new(), clutter_event_copy() and clutter_event_free();
9330 make ClutterEvent a boxed type.
9333 * clutter-main.c: Remove clutter_stage(); add clutter_main_quit(),
9334 for cleanly quitting from clutter_main(); add multiple mainloops
9335 support; allocate the ClutterCntx instead of adding it to the
9336 stack; re-work the ClutterEvent dispatching.
9338 * clutter-group.c (clutter_group_add), (clutter_group_remove): Keep
9339 a reference on the element when added to a ClutterGroup.
9343 * examples/test-text.c:
9344 * examples/video-cube.c:
9345 * examples/super-oh.c:
9346 * examples/test-video.c: Update.
9348 2006-06-04 Matthew Allum <mallum@openedhand.com>
9350 * clutter/clutter-element.c:
9351 * clutter/clutter-group.c:
9352 * clutter/clutter-group.h:
9353 Work more on depth ( Z ) setting with sorting.
9355 * clutter/clutter-main.c: (clutter_redraw):
9356 Experiment with glXWaitVideoSyncSGI. Currently disabled.
9358 2006-06-02 Matthew Allum <mallum@openedhand.com>
9360 * clutter/clutter-element.h:
9361 Add missing _depth() declarations
9363 * clutter/clutter-main.c:
9364 * clutter/clutter-main.h:
9365 * clutter/clutter-private.h:
9366 * clutter/clutter-stage.c:
9367 * clutter/clutter-stage.h:
9368 Rejig GL setup as for stage to support an offscreen property.
9369 Offscreen support is however a little borked.
9371 2006-06-01 Matthew Allum <mallum@openedhand.com>
9373 * clutter/clutter-element.c:
9374 Fix a snafu in clutter_element_raise ()
9376 * clutter/clutter-timeline.c:
9377 * clutter/clutter-timeline.h:
9378 Add new clutter_timeline_is_playing() method
9380 2006-05-29 Matthew Allum <mallum@openedhand.com>
9382 * clutter/clutter-color.c: (clutter_color_set):
9383 Fix bit shifts in clutter color setters.
9385 2006-05-29 Matthew Allum <mallum@openedhand.com>
9387 * clutter/clutter-element.c:
9388 * clutter/clutter-element.h:
9389 Add initial new element depth() getter and setter.
9391 * clutter/clutter-group.c:
9392 * clutter/clutter-group.h:
9393 Add 2 new methods for listing a groups children externally.
9395 2006-05-27 Emmanuele Bassi <ebassi@openedhand.com>
9397 * clutter/clutter-clone-texture.c (set_parent_texture),
9398 (clutter_clone_texture_set_property),
9399 (clutter_clone_texture_get_property),
9400 (clutter_clone_texture_class_init),
9401 (clutter_clone_texture_new): Add a "parent-texture"
9402 constructor-only property to simplify the constructor code.
9404 * clutter/clutter-rectangle.c (clutter_rectangle_new):
9405 * clutter/clutter-timeline.c (clutter_timeline_new): Simplify
9406 the constructor code.
9408 * examples/rect.py: Use the new method names for clutter.main()
9409 and clutter.stage().
9411 2006-05-26 Emmanuele Bassi <ebassi@openedhand.com>
9413 * clutter/clutter-element.c: Fix gtk-doc annotations for public
9414 functions; add sanity checks for public API; factor out some
9415 pointer dereferences.
9417 2006-05-26 Emmanuele Bassi <ebassi@openedhand.com>
9419 Big entry, small changes.
9421 * clutter/clutter-rectangle.c:
9422 * clutter/clutter-clone-texture.c:
9423 * clutter/clutter-group.c:
9424 * clutter/clutter-element.c:
9425 * clutter/clutter-label.c: Use the GObject built-in definition
9426 of a private data structure; it removes the need for managing
9427 the allocation/de-allocation of a private structure ourselves.
9429 * clutter/clutter-group.h:
9430 * clutter/clutter-label.h: Add padding, for adding signals and
9431 other class-wide definitions without breaking ABI.
9433 * clutter/clutter-element.h:
9434 * clutter/clutter-element.c (clutter_element_box_get_type),
9435 (clutter_element_box_copy): Make ClutterElementBox a GBoxed
9436 type; clean up declarations of the enums and flags.
9438 * clutter/clutter-group.h:
9439 * clutter/clutter-group.c (clutter_group_add_many_valist),
9440 (clutter_group_add_many): Add a _valist version of
9441 clutter_group_add_many() function, and re-implement the latter
9442 as a proxy for the former; language bindings do not cope
9443 well with variable argument functions.
9445 * clutter/clutter-video-texture.h:
9446 * clutter/clutter-video-texture.c: Use the right prefix for
9447 the error and for the ratio enumerations.
9451 * clutter/Makefile.am: Use the <clutter/...> include path
9452 for parallel installations.
9454 * clutter/Makefile.am:
9455 * clutter/clutter-enum-types.h:
9456 * clutter/clutter-enum-types.c: Register the enumeration types
9457 inside the GObject type system in order to use them as properties
9458 and bindings automagically pick them up.
9460 * bindings/python/ChangeLog: Add a changelog for the bindings...
9462 * doc/reference/ChangeLog: ... and a changelog for the reference.
9465 * examples/video-cube.c:
9466 * examples/test-video.c: Use the <clutter/clutter.h> header.
9468 2006-05-25 Matthew Allum <mallum@openedhand.com>
9470 * clutter/clutter-clone-texture.c:
9471 (clone_texture_render_to_gl_quad):
9472 Remove uneeded bogus warning. Fix a typo causing large
9473 texture to get incorrectly rendered.
9474 * clutter/clutter-texture.c: (init_tiles),
9475 (texture_render_to_gl_quad), (clutter_texture_sync_pixbuf),
9476 (clutter_texture_realize):
9477 Add some new debug info.
9478 * clutter/clutter-video-texture.c: (fakesink_handoff_cb):
9479 Set the pixbuf from GST_BUFFER_DATA() a little safer.
9481 2006-05-25 Matthew Allum <mallum@openedhand.com>
9484 Fix prefix snafu via Ross.
9486 2006-05-24 Matthew Allum <mallum@openedhand.com>
9488 * clutter/clutter-element.c: (clutter_element_paint),
9489 (clutter_element_class_init):
9490 * clutter/clutter-label.c: (clutter_label_make_pixbuf):
9491 * clutter/clutter-main.c: (clutter_main):
9492 * clutter/clutter-stage.c: (sync_fullscreen), (sync_gl_viewport):
9493 * clutter/clutter-stage.h:
9494 Various minor tweaks / fixes needed by o.p.t
9495 * clutter/clutter-texture.c: (texture_render_to_gl_quad),
9496 (clutter_texture_sync_pixbuf), (clutter_texture_set_property),
9497 (clutter_texture_get_property), (clutter_texture_class_init):
9498 Experiment adding currently borked repreating textures,
9499 * clutter/clutter-timeline.c: (timeline_timeout_func),
9500 (clutter_timeline_skip):
9501 Fix timeline callback frame counting.
9502 * examples/test-video.c: (main):
9503 Experiment with repeated textures.
9505 2006-05-23 Matthew Allum <mallum@openedhand.com>
9507 * clutter/clutter-clone-texture.h:
9509 * clutter/clutter-element.c: (clutter_element_set_parent):
9510 Only unref if parent non NULL
9511 * clutter/clutter-label.c: (clutter_label_class_init),
9512 (clutter_label_set_text), (clutter_label_set_font):
9513 * clutter/clutter-stage.h:
9514 Add some utility defines
9515 * clutter/clutter-texture.c: (init_tiles):
9516 * clutter/clutter-timeline.c: (clutter_timeline_class_init),
9517 (timeline_timeout_func), (clutter_timeline_get_current_frame):
9518 * clutter/clutter-timeline.h:
9519 Add a 'completed' signal
9520 Dont free priv when g_type_class_private used.
9521 * clutter/clutter.h:
9522 Add missing clutter-rectangle.h
9523 * examples/Makefile.am:
9524 * examples/super-oh.c: (main):
9526 * examples/video-cube.c:
9529 2006-05-22 Matthew Allum <mallum@openedhand.com>
9531 * clutter/clutter-element.c:
9532 * clutter/clutter-element.h:
9533 * clutter/clutter-event.c:
9534 * clutter/clutter-group.c: (clutter_group_remove_all):
9535 * clutter/clutter-group.h:
9536 * clutter/clutter-main.c: (translate_button_event),
9537 (translate_motion_event):
9538 Improve mouse event handling.
9539 Add code to map arbituary ( i.e cursor ) position to
9540 a clutter element using OpenGL 'picking'.
9541 * clutter/clutter-texture.c:
9542 * clutter/clutter-clone-texture.c:
9543 re-realize parent texture if it gets hidden.
9544 * clutter/clutter-stage.c:
9545 * clutter/clutter-stage.h:
9546 Make sure stage sets gl viewport up even if just default size.
9547 (clutter_texture_hide), (clutter_texture_paint):
9548 * doc/reference/Makefile.am:
9549 * examples/super-oh.c: (input_cb), (frame_cb), (main):
9550 Add test for mouse events, click to remove.
9552 2006-05-21 Matthew Allum <mallum@openedhand.com>
9554 * clutter/clutter-element.c:
9555 * clutter/clutter-element.h:
9556 Add new core sizing methods and more documentation.
9557 * clutter/clutter-group.c:
9558 * clutter/clutter-group.h:
9559 Use the sizing bits and documentation.
9560 * clutter/clutter-main.c:
9561 * clutter/clutter-event.h:
9562 Add FPS display when CLUTTER_SHOW_FPS env var set.
9563 Add initial support for mouse events.
9564 * clutter/clutter-stage.c:
9565 Add 'snapshot' method.
9566 * clutter/clutter-texture.c: (clutter_texture_new_from_pixbuf):
9567 * clutter/clutter-texture.h:
9569 * clutter/clutter-timeline.c:
9570 Add support for changing FPS setting on the fly. Document.
9571 * examples/super-oh.c: (frame_cb), (main):
9572 Add an optional motion trails effect.
9574 2006-05-17 Matthew Allum <mallum@openedhand.com>
9577 Add a tiny bit of info
9580 * clutter/clutter-clone-texture.c:
9581 (clone_texture_render_to_gl_quad):
9582 * clutter/clutter-element.c: (clutter_element_show),
9583 (clutter_element_realize), (clutter_element_unrealize),
9584 (clutter_element_paint), (clutter_element_set_id),
9585 (clutter_element_get_id):
9586 * clutter/clutter-element.h:
9587 Rename REALISE() to REALIZE()
9589 * clutter/clutter-texture.c: (texture_render_to_gl_quad),
9590 (clutter_texture_sync_pixbuf), (clutter_texture_set_pixbuf):
9591 * clutter/clutter-video-texture.c: (query_timeout),
9592 (got_video_size), (caps_set), (parse_stream_info),
9593 (handle_element_message), (bus_message_cb),
9594 (poll_for_state_change_full), (clutter_video_texture_get_property),
9595 (clutter_video_texture_class_init), (clutter_video_texture_init),
9596 (clutter_video_texture_open), (clutter_video_texture_seek_time),
9597 (stop_play_pipeline):
9598 * clutter/clutter-video-texture.h:
9599 Move over using fakesink and handoff instead of custom element
9600 Support 3 channel pixbufs as textures and thus increase efficiency
9601 of video texture ( also avoids byte swapping. )
9602 Clean up video texture code somemore.
9603 Add some metadata support.
9607 Disable old custom clutter gst element from build.
9609 * examples/test-video.c: (foo), (size_change), (tick), (main):
9610 * examples/video-cube.c: (clutter_video_texture_cube_paint):
9611 Sink with new API. Pause on key press.
9613 2006-05-13 Matthew Allum <mallum@openedhand.com>
9615 * clutter/clutter-element.c: (redraw_update_idle),
9616 (clutter_element_show), (clutter_element_hide),
9617 (clutter_element_realize), (clutter_element_unrealize),
9618 (clutter_element_class_init), (clutter_element_init),
9619 (clutter_element_queue_redraw), (clutter_element_set_geometry),
9620 (clutter_element_get_geometry), (clutter_element_get_coords),
9621 (clutter_element_set_position), (clutter_element_set_size),
9622 (clutter_element_get_abs_position), (clutter_element_get_width),
9623 (clutter_element_get_height), (clutter_element_get_x),
9624 (clutter_element_get_y), (clutter_element_set_opacity):
9625 * clutter/clutter-texture.c: (clutter_texture_get_base_size),
9626 (clutter_texture_bind_tile), (clutter_texture_get_n_tiles),
9627 (clutter_texture_get_x_tile_detail),
9628 (clutter_texture_get_y_tile_detail):
9629 * doc/reference/Makefile.am:
9630 * doc/reference/clutter.types:
9631 Documentation updates.
9633 2006-05-13 Matthew Allum <mallum@openedhand.com>
9636 Add @MAJORMINOR@ to installed dirs.
9637 * clutter/clutter-main.c: (clutter_xscreen), (clutter_init):
9638 * clutter/clutter-main.h:
9639 * clutter/clutter-private.h:
9640 Quick fix for debug statements so now only appear
9641 if CLUTTER_DBBUG env var set.
9643 2006-05-12 Matthew Allum <mallum@openedhand.com>
9647 * clutter/Makefile.am:
9648 * bindings/python/Makefile.am:
9649 * examples/Makefile.am:
9651 Clean up autofoo a bit fixing versioning.
9652 * bootstrap-autotools.sh:
9653 * clutter-1.0.pc.in:
9656 2006-05-12 Matthew Allum <mallum@openedhand.com>
9658 * bindings/python/Makefile.am:
9659 * bindings/python/clutter.override:
9660 * clutter/Makefile.am:
9661 * clutter/clutter-bin.c:
9662 * clutter/clutter-bin.h:
9663 * clutter/clutter-element.c: (clutter_element_dispose),
9664 (clutter_element_raise), (clutter_element_lower):
9665 * clutter/clutter-group.c:
9666 * clutter/clutter-group.h:
9667 * clutter/clutter-main.c: (clutter_threads_leave):
9668 * clutter/clutter-main.h:
9669 * clutter/clutter-stage.c: (clutter_stage_class_init):
9670 * clutter/clutter-stage.h:
9671 * clutter/clutter.h:
9672 * examples/super-oh.c: (frame_cb), (main):
9673 * examples/test-text.c: (main):
9674 * examples/test-video.c: (main):
9675 * examples/test.c: (main):
9676 * examples/video-cube.c: (main):
9677 Rename clutter-bin to clutter-group
9679 2006-05-11 Matthew Allum <mallum@openedhand.com>
9681 * clutter/clutter-clone-texture.c:
9682 (clone_texture_render_to_gl_quad), (clutter_clone_texture_paint),
9683 (clutter_clone_texture_class_init), (clutter_clone_texture_new):
9685 * clutter/clutter-element.c: (clutter_element_rotate_z),
9686 (clutter_element_rotate_x), (clutter_element_rotate_y):
9688 * examples/Makefile.am:
9689 * examples/super-oh.c:
9690 Add a new demo - unsing rotations and clones.
9692 2006-05-11 Matthew Allum <mallum@openedhand.com>
9694 * bindings/python/Makefile.am:
9695 * bindings/python/clutter-base-types.defs:
9696 * bindings/python/clutter-base.defs:
9697 * bindings/python/clutter.override:
9698 Python goodiness from ebassi.
9699 - Element geometry handled nicely.
9700 - get_coords(), get_abs_position() added.
9702 * clutter/clutter-element.c: (clutter_element_rotate_x),
9703 (clutter_element_rotate_y), (clutter_element_mirror),
9704 * clutter/clutter-element.h:
9705 Add initial rotation API. Make Geometry boxed ( ebassi )
9707 * clutter/clutter-stage.c: (sync_gl_viewport):
9708 Set depth in main world transform.
9710 * clutter/clutter-timeline.h:
9711 Add missing new() api call.
9713 * examples/test.c: (timeout_text_cb), (frame_cb), (main):
9714 Tou with some rotation
9716 2006-05-11 Matthew Allum <mallum@openedhand.com>
9718 reviewed by: <delete if not using a buddy>
9720 * bindings/python/Makefile.am:
9721 * bindings/python/clutter-base-types.defs:
9722 * bindings/python/clutter-base.defs:
9723 * bindings/python/clutter.override:
9724 * clutter/clutter-bin.c: (clutter_bin_paint):
9725 * clutter/clutter-element.c: (clutter_element_paint),
9726 (clutter_element_get_height), (clutter_element_get_x),
9727 (clutter_element_get_y), (clutter_element_set_opacity),
9728 (clutter_element_get_opacity), (clutter_element_set_id),
9729 (clutter_element_get_id), (clutter_element_rotate_x),
9730 (clutter_element_rotate_y), (clutter_element_mirror),
9731 (clutter_element_set_clip), (clutter_element_remove_clip),
9732 (clutter_element_set_parent), (clutter_element_get_parent),
9733 (clutter_element_raise), (clutter_element_lower),
9734 (clutter_element_raise_top), (clutter_element_lower_bottom):
9735 * clutter/clutter-element.h:
9736 * clutter/clutter-main.c: (clutter_redraw):
9737 * clutter/clutter-stage.c: (sync_gl_viewport):
9738 * clutter/clutter-timeline.h:
9739 * examples/test.c: (timeout_text_cb), (frame_cb), (main):
9741 2006-05-09 Matthew Allum <mallum@openedhand.com>
9744 * clutter/clutter-bin.c:
9745 * clutter/clutter-bin.h:
9746 * clutter/clutter-clone-texture.c:
9747 * clutter/clutter-clone-texture.h:
9748 * clutter/clutter-color.c:
9749 * clutter/clutter-color.h:
9750 * clutter/clutter-element.c:
9751 * clutter/clutter-element.h:
9752 * clutter/clutter-event.c:
9753 * clutter/clutter-event.h:
9754 * clutter/clutter-keysyms.h:
9755 * clutter/clutter-label.c:
9756 * clutter/clutter-label.h:
9757 * clutter/clutter-main.c:
9758 * clutter/clutter-main.h:
9759 * clutter/clutter-private.h:
9760 * clutter/clutter-rectangle.c:
9761 * clutter/clutter-rectangle.h:
9762 * clutter/clutter-stage.c:
9763 * clutter/clutter-stage.h:
9764 * clutter/clutter-texture.c:
9765 * clutter/clutter-texture.h:
9766 * clutter/clutter-timeline.c:
9767 * clutter/clutter-timeline.h:
9768 * clutter/clutter-util.c:
9769 * clutter/clutter-util.h:
9772 2006-05-08 Matthew Allum <mallum@openedhand.com>
9774 * clutter/Makefile.am:
9775 * clutter/clutter-event.c:
9776 * clutter/clutter-event.h:
9777 * clutter/clutter-keysyms.h:
9778 * clutter/clutter-main.c: (clutter_dispatch_x_event):
9779 * clutter/clutter-stage.c: (clutter_stage_class_init):
9780 * clutter/clutter-stage.h:
9781 * clutter/clutter.h:
9782 * bindings/python/Makefile.am:
9783 * bindings/python/clutter.override:
9784 Add basic input event handling. Keys only atm.
9786 2006-05-08 Matthew Allum <mallum@openedhand.com>
9790 * bindings/python/Makefile.am:
9791 * bindings/python/clutter.override:
9792 Fix up so pixbufs now work ( thanks ebassi! )
9793 Add some missing newer headers.
9794 * clutter/clutter-main.h:
9795 Remove unused clutter_queue_redraw();
9797 2006-05-07 Matthew Allum <mallum@openedhand.com>
9799 * clutter/clutter-element.c: (clutter_element_class_init),
9800 (clutter_element_init), (clutter_element_queue_redraw),
9801 (clutter_element_set_geometry), (clutter_element_get_geometry),
9802 (clutter_element_get_coords), (clutter_element_set_position),
9803 (clutter_element_set_size), (clutter_element_get_abs_position),
9804 (clutter_element_get_width), (clutter_element_get_height),
9805 (clutter_element_get_x), (clutter_element_get_y),
9806 (clutter_element_set_opacity):
9807 * clutter/clutter-main.c: (clutter_dispatch_x_event):
9808 * clutter/clutter-main.h:
9809 * clutter/clutter-private.h:
9810 * clutter/clutter-stage.c: (clutter_stage_set_color):
9811 * clutter/clutter-texture.c: (clutter_texture_set_pixbuf):
9812 Rename clutter_queue_redraw -> clutter_element_queue_redraw
9814 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
9815 (clutter_label_set_property), (clutter_label_set_text_extents):
9816 * clutter/clutter-label.h:
9819 * examples/Makefile.am:
9820 * examples/test-text.c:
9821 Add sime test text example.
9823 2006-05-07 Matthew Allum <mallum@openedhand.com>
9825 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
9826 (clutter_label_get_property), (clutter_label_dispose),
9827 (clutter_label_class_init), (clutter_label_init),
9828 (clutter_label_new_with_text), (clutter_label_new),
9829 (clutter_label_set_text), (clutter_label_set_font),
9830 (clutter_label_set_text_extents), (clutter_label_set_fg_color):
9831 * examples/test.c: (main):
9832 Slight efficiency improvements. Add initial extents API.
9834 2006-05-07 Matthew Allum <mallum@openedhand.com>
9838 * clutter/Makefile.am:
9839 * clutter/clutter-clone-texture.c:
9840 * clutter/clutter-clone-texture.h:
9841 Add new texture clone element.
9842 * clutter/clutter-color.c:
9843 * clutter/clutter-color.h:
9844 Add simple color API.
9845 * clutter/clutter-util.c:
9846 * clutter/clutter-util.h:
9847 Move shared texture funcs into shared util code.
9848 * clutter/clutter-texture.c: (can_create), (tile_dimension),
9849 (init_tiles), (texture_render_to_gl_quad),
9850 (clutter_texture_unrealize), (clutter_texture_sync_pixbuf),
9851 (clutter_texture_realize), (clutter_texture_show),
9852 (clutter_texture_hide), (clutter_texture_paint),
9853 (clutter_texture_finalize), (clutter_texture_set_property),
9854 (clutter_texture_get_property), (clutter_texture_class_init),
9855 (clutter_texture_init), (clutter_texture_set_pixbuf),
9856 (clutter_texture_new_from_pixbuf), (clutter_texture_get_base_size),
9857 (clutter_texture_bind_tile):
9858 Changes for clones to work.
9859 * clutter/clutter-element.c: (clutter_element_paint),
9860 (clutter_element_set_property), (clutter_element_get_property),
9861 (clutter_element_set_position), (clutter_element_set_size),
9862 (clutter_element_get_abs_position), (clutter_element_get_width),
9863 (clutter_element_get_height), (clutter_element_get_x),
9864 (clutter_element_get_y), (clutter_element_set_opacity),
9865 (clutter_element_get_opacity), (clutter_element_set_id),
9866 (clutter_element_get_id), (clutter_element_set_clip):
9867 * clutter/clutter-element.h:
9868 Add clipping and other tweaks.
9869 * clutter/clutter-stage.c: (sync_gl_viewport),
9870 (clutter_stage_paint), (clutter_stage_init):
9871 Add psuedo 3D desktop like GL setup.
9872 * clutter/clutter-label.c: (clutter_label_make_pixbuf):
9873 * clutter/clutter-label.h:
9874 * clutter/clutter-main.c: (clutter_redraw):
9875 * clutter/clutter-main.h:
9876 * clutter/clutter-private.h:
9877 * clutter/clutter-rectangle.c: (clutter_rectangle_paint):
9878 * clutter/clutter-stage.h:
9879 * clutter/clutter-texture.h:
9880 * clutter/clutter-timeline.c: (clutter_timeline_class_init):
9881 * clutter/clutter-video-texture.c:
9882 * clutter/clutter.h:
9883 * examples/test-video.c: (foo), (size_change), (tick), (main):
9884 * examples/test.c: (main):
9885 * examples/video-cube.c: (clutter_video_texture_cube_paint),
9886 (clutter_video_texture_cube_class_init),
9887 (clutter_video_texture_cube_init):
9888 Various minor tweaks for API changes, new features etc.
9890 2006-05-03 Matthew Allum <mallum@openedhand.com>
9892 * clutter/clutter-bin.c: (clutter_bin_paint):
9893 * clutter/clutter-bin.h:
9894 * clutter/clutter-element.c: (clutter_element_unrealize),
9895 (clutter_element_paint), (clutter_element_set_property),
9896 (clutter_element_get_property), (clutter_element_dispose),
9897 (clutter_element_finalize), (clutter_element_class_init),
9898 (clutter_element_init), (clutter_element_queue_redraw),
9899 (clutter_element_set_geometry), (clutter_element_get_geometry),
9900 (clutter_element_get_coords), (clutter_element_set_position),
9901 (clutter_element_set_size), (clutter_element_get_abs_position),
9902 (clutter_element_set_opacity), (clutter_element_get_opacity),
9903 (clutter_element_set_clip), (clutter_element_remove_clip),
9904 (clutter_element_set_parent), (clutter_element_get_parent),
9905 (clutter_element_raise), (clutter_element_lower),
9906 (clutter_element_raise_top), (clutter_element_lower_bottom):
9907 * clutter/clutter-element.h:
9908 * clutter/clutter-label.c: (clutter_label_set_fg_color):
9909 * clutter/clutter-rectangle.c: (clutter_rectangle_paint),
9910 (clutter_rectangle_set_property), (clutter_rectangle_init):
9911 * clutter/clutter-stage.c: (sync_xwindow_size):
9912 * clutter/clutter-texture.c: (clutter_texture_paint),
9913 (clutter_texture_set_pixbuf):
9914 Clean up ClutterElement, removing globals, improving sizing
9915 and initial clipping code.
9917 * clutter/clutter.h:
9918 * clutter/clutter-timeline.c: (clutter_timeline_class_init),
9919 (timeline_timeout_func), (clutter_timeline_start),
9920 (clutter_timeline_pause), (clutter_timeline_rewind),
9921 (clutter_timeline_skip), (clutter_timeline_advance),
9922 (clutter_timeline_get_current_frame), (clutter_timeline_new):
9923 * clutter/clutter-timeline.h:
9924 Various fixes to timelines. Implement frame skipping.
9926 * examples/test.c: (timeout_text_cb), (main):
9927 Update to use timeline.
9929 2006-05-02 Matthew Allum <mallum@openedhand.com>
9933 * clutter/clutter-element.h:
9934 * clutter/clutter-rectangle.h:
9935 Minor formatting cleanups
9937 2006-05-02 Matthew Allum <mallum@openedhand.com>
9939 * clutter/Makefile.am:
9940 * clutter/clutter-timeline.c:
9941 * clutter/clutter-timeline.h:
9942 Add initial timeline implementation
9944 2006-05-02 Matthew Allum <mallum@openedhand.com>
9946 * bindings/python/Makefile.am:
9947 * bindings/python/cluttermodule.c: (initclutter):
9948 Fix python build with new -1.0 naming. Use of GdkPixbufs
9949 still causing crashes.
9951 2006-04-30 Matthew Allum <mallum@openedhand.com>
9953 * clutter/clutter-main.c: (events_init), (redraw_update_idle),
9954 (clutter_queue_redraw), (clutter_redraw):
9955 Fix repaint queueing, using idle handler now.
9956 Clean up some minor compiler warnings.
9957 * clutter/clutter-main.h:
9958 * clutter/clutter-texture.c: (clutter_texture_unrealize),
9959 (clutter_texture_set_pixbuf):
9960 Rename gl_lock/unlock to threads_enter/leaver
9962 2006-04-30 Matthew Allum <mallum@openedhand.com>
9965 * clutter-1.0.pc.in:
9966 * clutter/Makefile.am:
9967 * clutter/clutter-bin.h:
9968 * clutter/clutter-label.h:
9969 * clutter/clutter-rectangle.h:
9970 * clutter/clutter-stage.h:
9971 * clutter/clutter-texture.h:
9972 * clutter/clutter-video-texture.h:
9973 * clutter/clutter.h:
9975 * examples/Makefile.am:
9976 Add .pc file, tag -1.0 onto lib, includes dir naming.
9978 2006-04-29 Matthew Allum <mallum@openedhand.com>
9980 * clutter/clutter-main.c: (clutter_dispatch_x_event),
9981 (clutter_queue_redraw), (clutter_redraw):
9982 Simplify paint event queueing. Does not actually queue
9983 anymore (broken), needs wrong to reduce high number of
9986 * clutter/clutter-texture.c: (clutter_texture_set_pixbuf):
9987 Remove visible check which broke paints of resized texture pixmaps.
9989 2006-04-19 Matthew Allum <mallum@openedhand.com>
9991 * clutter/clutter-bin.c: (clutter_bin_paint), (clutter_bin_add):
9992 * clutter/clutter-element.c: (clutter_element_paint):
9993 * clutter/clutter-element.h:
9994 * clutter/clutter-label.c: (clutter_label_set_property),
9995 (clutter_label_get_property), (clutter_label_class_init):
9996 * clutter/clutter-marshal.list:
9997 * clutter/clutter-rectangle.c: (clutter_rectangle_set_property),
9998 (clutter_rectangle_get_property), (clutter_rectangle_class_init):
9999 * clutter/clutter-stage.c: (clutter_stage_dispose),
10000 (clutter_stage_get_property), (clutter_stage_class_init):
10001 * clutter/clutter-texture.c: (clutter_texture_realize),
10002 (clutter_texture_class_init), (clutter_texture_set_pixbuf):
10003 * clutter/clutter-texture.h:
10004 More object cleanups. Add signal to texture size changes.
10005 Fix color props. Adjust element realise flags workings ( broken ).
10006 * examples/test-video.c: (main):
10007 Broken due to realize flag changes.
10009 2006-04-18 Matthew Allum <mallum@openedhand.com>
10011 * clutter/clutter-bin.c: (clutter_bin_get_property),
10012 (clutter_bin_finalize), (clutter_bin_class_init),
10013 (clutter_bin_new), (clutter_bin_show_all), (clutter_bin_hide_all),
10015 * clutter/clutter-bin.h:
10016 * clutter/clutter-element.c: (clutter_element_get_property),
10017 (clutter_element_finalize), (clutter_element_class_init),
10018 (clutter_element_set_parent), (clutter_element_get_parent),
10019 (clutter_element_raise), (clutter_element_lower):
10020 * clutter/clutter-element.h:
10021 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
10022 (clutter_label_get_property), (clutter_label_dispose),
10023 (clutter_label_finalize), (clutter_label_class_init),
10024 (clutter_label_init), (clutter_label_new_with_text),
10025 (clutter_label_new), (clutter_label_set_text),
10026 (clutter_label_set_font), (clutter_label_set_fg_color):
10027 * clutter/clutter-label.h:
10028 * clutter/clutter-rectangle.c: (clutter_rectangle_paint),
10029 (clutter_rectangle_set_property), (clutter_rectangle_get_property),
10030 (clutter_rectangle_finalize), (clutter_rectangle_dispose),
10031 (clutter_rectangle_class_init), (clutter_rectangle_init),
10032 (clutter_rectangle_new):
10033 * clutter/clutter-texture.c: (clutter_texture_paint),
10034 (clutter_texture_dispose), (clutter_texture_finalize),
10035 (clutter_texture_set_property), (clutter_texture_get_property),
10036 (clutter_texture_class_init), (clutter_texture_init),
10037 (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf):
10038 Various GObject usages cleanups, adding properties and
10039 finalize/dispose functions properly.
10041 2006-04-18 Matthew Allum <mallum@openedhand.com>
10043 * bindings/python/Makefile.am:
10044 * bindings/python/clutter.override:
10045 * bindings/python/cluttermodule.c: (initclutter):
10046 * clutter/clutter-label.h:
10047 * clutter/clutter-rectangle.h:
10048 * clutter/clutter-video-texture.h:
10049 More fixups to now less broken python bindings
10050 * examples/rects.py:
10051 A simple python script using bindings
10053 2006-04-18 Matthew Allum <mallum@openedhand.com>
10055 * clutter/clutter-marshal.list:
10058 2006-04-17 Matthew Allum <mallum@openedhand.com>
10061 * bindings/Makefile.am:
10062 * bindings/python/Makefile.am:
10063 * bindings/python/clutter.override:
10064 * bindings/python/cluttermodule.c:
10066 First shot at some python bindings ( broken atm )
10067 * clutter/clutter-bin.h:
10068 * clutter/clutter-element.h:
10069 * clutter/clutter-stage.h:
10070 * clutter/clutter-texture.h:
10071 * clutter/clutter.h:
10072 Rejig headers a little so h2def.py happier
10074 2006-04-17 Matthew Allum <mallum@openedhand.com>
10077 * doc/clutter.types:
10078 * doc/reference/Makefile.am:
10079 Move gtk-doc gubbins to doc/reference
10081 2006-04-16 Matthew Allum <mallum@openedhand.com>
10086 * clutter/clutter-bin.c: (clutter_bin_paint):
10089 * clutter/clutter-texture.c: (clutter_texture_dispose),
10090 (clutter_texture_class_init), (clutter_texture_set_pixbuf):
10091 Fixup object finalization a little.
10093 * bootstrap-autotools.sh:
10096 * doc/clutter.types:
10097 Add gtk-doc infrastructure
10099 2006-04-15 Matthew Allum <mallum@openedhand.com>
10104 * clutter/Makefile.am:
10105 * clutter/clutter-rectangle.c: (clutter_rectangle_new):
10106 Sync passed color alpha chan to element opacity,
10108 * clutter/clutter-video-texture.c:
10109 (clutter_video_texture_error_quark), (signal_eos_delayed),
10110 (query_timeout), (got_video_size), (caps_set), (parse_stream_info),
10111 (handle_element_message)
10112 * clutter/clutter-video-texture.h:
10113 Port more of bacon video widget API.
10115 * examples/test-video.c: (foo), (tick), (main):
10116 Add a simple overlay displaying playback time.
10118 2006-04-15 Matthew Allum <mallum@openedhand.com>
10120 * clutter/clutter-element.c:
10121 * clutter/clutter-label.c: (clutter_label_init),
10122 (clutter_label_new_with_text):
10123 * clutter/clutter-label.h:
10124 * clutter/clutter-main.c: (clutter_redraw), (clutter_gl_unlock):
10125 * clutter/clutter-main.h:
10126 * clutter/clutter-rectangle.c: (clutter_rectangle_init),
10127 (clutter_rectangle_new):
10128 * clutter/clutter-rectangle.h:
10129 * clutter/clutter-texture.c: (clutter_texture_class_init),
10130 (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf):
10131 * clutter/clutter-texture.h:
10132 * clutter/clutter-video-texture.c: (clutter_video_texture_init):
10133 * clutter/clutter-video-texture.h:
10134 * examples/test-video.c: (main):
10135 * examples/test.c: (main):
10136 * examples/video-cube.c: (clutter_video_texture_cube_init), (main):
10137 Make xxx_new() return there type as ClutterElement*
10139 2006-04-15 Matthew Allum <mallum@openedhand.com>
10143 * clutter/clutter-main.c:
10144 * clutter/clutter-stage.c:
10145 * clutter/clutter-texture.c:
10146 * clutter/clutter-texture.h:
10147 * gst/clutterimagesink.c: (gst_clutterimagesink_clutterimage_put),
10148 (gst_clutterimagesink_context_get):
10149 Various experiments with textures and 3D views.
10151 * clutter/clutter-video-texture.c:
10152 (clutter_video_texture_class_init), (clutter_video_texture_init):
10153 * examples/Makefile.am:
10154 * examples/test-video.c: (main):
10155 * examples/video-cube.c:
10156 Add video-cube example
10158 2006-04-13 Matthew Allum <mallum@openedhand.com>
10163 * clutter/clutter-bin.c:
10164 * clutter/clutter-bin.h:
10165 New container element
10167 * clutter/clutter-stage.c:
10168 * clutter/clutter-stage.h:
10169 Make stage a proper element
10171 * clutter/Makefile.am:
10172 * clutter/clutter.h:
10173 * clutter/clutter-element.c: (clutter_element_show),
10174 (clutter_element_set_opacity):
10175 * clutter/clutter-element.h:
10176 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
10177 (clutter_label_set_text), (clutter_label_set_font):
10178 * clutter/clutter-private.h:
10179 Various tweaks new api calls.
10181 * clutter/clutter-main.c: (events_init):
10182 * clutter/clutter-main.h:
10183 Make ClutterContex Private to main
10185 * clutter/clutter-texture.c:
10186 * clutter/clutter-texture.h:
10187 * clutter/clutter-video-texture.c:
10188 (clutter_video_texture_finalize):
10191 * examples/test-video.c: (main):
10192 * examples/test.c: (main):
10193 Fix for API changes.
10195 2006-04-11 Matthew Allum <mallum@openedhand.com>
10199 * clutter/clutter-video-texture.c:
10200 (clutter_video_texture_finalize):
10201 * clutter/clutter-video-texture.h:
10202 Remove bogus pixbuf attribute
10204 2006-04-10 Matthew Allum <mallum@openedhand.com>
10206 * clutter/clutter-main.c: (clutter_dispatch_x_event),
10207 (clutter_queue_redraw), (clutter_main), (clutter_set_stage_params),
10209 * clutter/clutter-main.h:
10210 * clutter/clutter-private.h:
10211 Make Stage non fullscreen ( for now ). Change event loop to
10212 work better with video.
10214 * clutter/Makefile.am:
10215 * clutter/clutter-label.c: (clutter_label_make_pixbuf),
10216 (clutter_label_class_init), (clutter_label_new_with_text),
10217 (clutter_label_set_text), (clutter_label_set_font):
10218 * clutter/clutter-texture.c: (texture_render_to_gl_quad),
10219 (clutter_texture_unrealize), (clutter_texture_sync_pixbuf),
10220 (clutter_texture_realize), (clutter_texture_show),
10221 (clutter_texture_hide), (clutter_texture_paint),
10222 (clutter_texture_finalize), (clutter_texture_set_property),
10223 (clutter_texture_get_property), (clutter_texture_class_init),
10224 (clutter_texture_init), (clutter_texture_get_pixbuf),
10225 (clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf):
10226 * clutter/clutter-texture.h:
10227 * clutter/clutter.h:
10228 Fix leakage. Improve performance. Add support for non tiled
10231 * examples/Makefile.am:
10232 * examples/test.c: (timeout_text_cb), (main):
10235 * examples/test-video.c:
10238 * gst/clutterimagesink.c:
10239 * gst/clutterimagesink.h:
10240 * clutter/clutter-video-texture.c:
10241 * clutter/clutter-video-texture.h:
10242 Add initial support for video textures with gst-0.10
10244 * gst/cltrimagesink.c:
10245 * gst/cltrimagesink.h:
10246 Remove old gst-0.8 sink
10249 2006-04-05 Matthew Allum <mallum@openedhand.com>
10251 * clutter/Makefile.am:
10252 * clutter/clutter-element.c: (clutter_element_show),
10253 (clutter_element_hide), (clutter_element_realize),
10254 (clutter_element_unrealize), (clutter_element_paint),
10255 (clutter_element_finalize), (clutter_element_class_init),
10256 (clutter_element_init), (clutter_element_new):
10257 * clutter/clutter-element.h:
10258 * clutter/clutter.h:
10259 * clutter/clutter-main.c: (clutter_dispatch_x_event),
10260 (events_init), (clutter_redraw), (clutter_main), (clutter_init),
10261 (clutter_show_stage):
10262 * clutter/clutter-main.h:
10263 Various minor tweaks.
10265 * clutter/clutter-private.h:
10266 * clutter/clutter-texture.c: (can_create), (init_tiles),
10267 (clutter_texture_unrealize), (clutter_texture_realize),
10268 (clutter_texture_finalize), (clutter_texture_class_init),
10269 (clutter_texture_init):
10270 * clutter/clutter-texture.h:
10271 Much improve texture class.
10273 * clutter/clutter-label.c:
10274 * clutter/clutter-label.h:
10275 Add new text rendering class
10277 * clutter/clutter-rectangle.c:
10278 * clutter/clutter-rectangle.h:
10279 Add basic rectangle drawing class
10282 Add text rendering and animation to test.
10284 2006-04-04 Matthew Allum <mallum@openedhand.com>
10286 * clutter/Makefile.am:
10287 * clutter/clutter-element.c: (clutter_element_realize):
10288 * clutter/clutter-element.h:
10289 * clutter/clutter-image.c:
10290 * clutter/clutter-image.h:
10291 * clutter/clutter-main.c: (clutter_dispatch_x_event),
10292 (clutter_main), (clutter_set_stage_params), (clutter_init):
10293 * clutter/clutter-texture.c: (next_p2), (can_create),
10294 (tile_dimension), (init_tiles), (texture_render_to_gl_quad),
10295 (clutter_texture_unrealize), (clutter_texture_realize),
10296 (clutter_texture_get_pixbuf), (clutter_texture_paint),
10297 (clutter_texture_finalize), (clutter_texture_class_init):
10298 * clutter/clutter-texture.h:
10299 * clutter/clutter.h:
10302 Implement basic tiled texture painting.
10304 2006-04-03 Matthew Allum <mallum@openedhand.com>
10306 reviewed by: <delete if not using a buddy>
10308 * clutter/Makefile.am:
10309 * clutter/clutter-element.c:
10310 * clutter/clutter-element.h:
10311 * clutter/clutter-image.c:
10312 * clutter/clutter-image.h:
10313 * clutter/clutter-main.c: (events_init), (stage_realize),
10314 (clutter_queue_redraw), (clutter_redraw), (clutter_add_to_stage),
10315 (clutter_remove_from_stage), (clutter_main),
10316 (clutter_set_stage_params), (clutter_init):
10317 * clutter/clutter-main.h:
10318 * clutter/clutter-private.h:
10319 * clutter/clutter.h:
10322 2006-04-02 Matthew Allum <mallum@openedhand.com>
10324 * clutter/Makefile.am:
10325 * clutter/cltr-animator.c:
10326 * clutter/cltr-animator.h:
10327 * clutter/cltr-button.c:
10328 * clutter/cltr-button.h:
10329 * clutter/cltr-core.c:
10330 * clutter/cltr-core.h:
10331 * clutter/cltr-events.c:
10332 * clutter/cltr-events.h:
10333 * clutter/cltr-glu.c:
10334 * clutter/cltr-glu.h:
10335 * clutter/cltr-label.c:
10336 * clutter/cltr-label.h:
10337 * clutter/cltr-list.c:
10338 * clutter/cltr-list.h:
10339 * clutter/cltr-overlay.c:
10340 * clutter/cltr-overlay.h:
10341 * clutter/cltr-photo-grid.c:
10342 * clutter/cltr-photo-grid.h:
10343 * clutter/cltr-private.h:
10344 * clutter/cltr-scratch.c:
10345 * clutter/cltr-scratch.h:
10346 * clutter/cltr-texture.c:
10347 * clutter/cltr-texture.h:
10348 * clutter/cltr-video.c:
10349 * clutter/cltr-video.h:
10350 * clutter/cltr-widget.c:
10351 * clutter/cltr-widget.h:
10352 * clutter/cltr-window.c:
10353 * clutter/cltr-window.h:
10355 * clutter/clutter-main.c:
10356 * clutter/clutter-main.h:
10357 * clutter/clutter-private.h:
10358 * clutter/clutter.h:
10361 * clutter/pixbuf.c:
10362 * clutter/pixbuf.h:
10366 * examples/Makefile.am:
10367 * examples/photos.c:
10368 * examples/player.c:
10369 * examples/scratch.c:
10370 * examples/select.c:
10372 Remove old cltr files replacing with beginnings of
10373 rejigged 'clutter' ones.
10375 2005-05-27 mallum,,, <mallum@openedhand.com>
10377 * clutter/cltr-animator.c: (cltr_animator_zoom_new),
10378 (cltr_animator_move_new), (cltr_animator_fullzoom_new),
10379 (cltr_animator_new), (cltr_animator_set_args),
10380 (cltr_animator_wrapped_zoom_paint), (cltr_animator_reset),
10381 (cltr_animator_timeout_cb), (cltr_animator_run):
10382 * clutter/cltr-animator.h:
10383 * clutter/cltr-button.c: (cltr_button_set_label),
10384 (cltr_button_paint):
10385 * clutter/cltr-label.c: (cltr_label_new), (cltr_label_set_text),
10386 (cltr_label_get_text), (cltr_label_show),
10387 (cltr_label_handle_xevent), (cltr_label_paint):
10388 * clutter/cltr-label.h:
10389 * clutter/cltr-list.c: (cltr_list_paint):
10390 * clutter/cltr-widget.c:
10391 * examples/select.c: (usage), (video_ctrl_hide),
10392 (video_ctrl_stop_cb), (video_ctrl_play_cb),
10393 (video_ctrl_seek_begin_cb), (init_video_ctrl), (show_video_ctrl),
10394 (populate), (cell_to_item), (zoom_video_out), (init_show_controls),
10395 (handle_xevent), (zoom_out_complete), (zoom_in_complete):
10396 More select hacking ...
10398 2005-05-23 mallum,,, <mallum@openedhand.com>
10400 * clutter/cltr-button.c: (cltr_button_new_with_label),
10401 (cltr_button_handle_xevent), (cltr_button_paint):
10402 * clutter/cltr-button.h:
10403 * clutter/cltr-events.c: (cltr_main_loop):
10404 * clutter/cltr-list.c: (cltr_list_cell_new),
10405 (cltr_list_append_cell), (cltr_list_update_layout),
10407 * clutter/cltr-list.h:
10408 * clutter/cltr-overlay.c: (cltr_overlay_paint):
10409 * clutter/cltr-private.h:
10410 * clutter/cltr-widget.c: (cltr_widget_show),
10411 (cltr_widget_show_all), (cltr_widget_add_child):
10412 * clutter/cltr-widget.h:
10413 * clutter/cltr-window.c: (cltr_window_show), (cltr_window_paint),
10414 (cltr_window_handle_xevent), (cltr_window_post_paint),
10415 (cltr_window_set_paint_funcs), (cltr_window_xwin),
10416 (cltr_window_hide_cursor), (cltr_window_set_fullscreen):
10417 * clutter/cltr-window.h:
10418 * examples/select.c: (usage), (init_video_ctrl), (show_video_ctrl),
10419 (populate), (cell_to_item), (handle_xevent), (zoom_out_complete),
10420 (zoom_in_complete), (cell_activated), (main):
10421 Much Select hacking
10423 2005-05-17 mallum,,, <mallum@openedhand.com>
10425 * clutter/cltr-video.c: (cltr_video_get_pixbuf):
10426 * gst/cltrimagesink.c: (gst_cltrimagesink_change_state),
10427 (gst_cltrimagesink_chain):
10428 Fix thread related segv's on grabbing video image.
10429 Also pop any unplayed data from sink on stop
10431 2005-05-16 mallum,,, <mallum@openedhand.com>
10433 * clutter/cltr-animator.c: (cltr_animator_zoom_new),
10434 (cltr_animator_fullzoom_new), (cltr_animator_new),
10435 (cltr_animator_set_args), (cltr_animator_wrapped_paint):
10436 * clutter/cltr-animator.h:
10437 * clutter/cltr-list.c: (cltr_list_cell_new),
10438 (cltr_list_get_active_cell_co_ords), (cltr_list_show),
10439 (cltr_list_on_activate_cell), (cltr_list_update_layout),
10441 * clutter/cltr-list.h:
10442 * clutter/cltr-texture.c: (cltr_texture_realize),
10443 (cltr_texture_unref), (cltr_texture_sync_pixbuf),
10444 (cltr_texture_force_rgb_data):
10445 * clutter/cltr-video.c: (got_stream_length), (got_time_tick),
10446 (got_state_change), (parse_stream_info), (cb_iterate),
10447 (cltr_video_play), (cltr_video_set_volume),
10448 (cltr_video_get_volume), (cltr_video_get_pixbuf),
10449 (cltr_video_idler), (cltr_video_set_source),
10450 (cltr_video_handle_xevent), (cltr_video_paint):
10451 * clutter/cltr-video.h:
10452 * clutter/cltr-widget.c:
10453 * clutter/pixbuf.c: (pixbuf_write_png), (load_png_file),
10454 (pixbuf_copy), (pixbuf_fill_rect), (pixbuf_scale_down),
10456 * examples/select.c: (usage), (populate), (cell_to_item),
10457 (handle_xevent), (zoom_out_complete), (zoom_in_complete),
10458 (cell_activated), (main):
10459 * gst/cltrimagesink.c: (gst_cltrimagesink_getcaps),
10460 (gst_cltrimagesink_chain):
10461 Far too much hacking. Fix many endian image issues.
10462 Greatly improve select demo
10464 2005-05-16 mallum,,, <mallum@openedhand.com>
10466 * clutter/Makefile.am:
10467 * clutter/cltr-animator.c:
10468 * clutter/cltr-animator.h:
10469 * clutter/cltr-list.c: (distfunc), (cltr_list_new),
10470 (cltr_list_get_active_cell_co_ords), (cltr_list_show),
10471 (cltr_list_on_activate_cell), (cltr_list_handle_xevent),
10472 (cltr_list_animate), (cltr_list_timeout_cb),
10473 (cltr_list_update_layout), (cltr_list_paint):
10474 * clutter/cltr-list.h:
10475 * clutter/cltr-private.h:
10477 * clutter/pixbuf.c: (load_png_file):
10478 * examples/player.c:
10479 * examples/select.c: (usage), (populate), (cell_activated), (main):
10480 Work on animator zooming. Also build up select.c much
10482 2005-05-14 mallum,,, <mallum@openedhand.com>
10484 * clutter/cltr-animator.c:
10485 Add initial outline
10486 * clutter/cltr-button.c: (cltr_button_new_with_pixbuf),
10487 (cltr_button_handle_xkeyevent), (cltr_button_handle_xevent),
10488 (cltr_button_paint):
10489 various tweaks/experimentation
10490 * clutter/cltr-core.c: (cltr_init), (cltr_display_height):
10491 * clutter/cltr-glu.c: (cltr_glu_set_color):
10492 * clutter/cltr-glu.h:
10493 Add unfilled rect call.
10494 * clutter/cltr-label.c: (cltr_label_new), (cltr_label_paint):
10495 * clutter/cltr-list.c: (distfunc), (cltr_list_cell_new),
10496 (cltr_list_show), (cltr_list_animate), (cltr_list_paint):
10497 update list a little.
10498 * clutter/cltr-overlay.c: (cltr_overlay_handle_xevent),
10499 (cltr_overlay_paint):
10500 * clutter/cltr-private.h:
10501 * clutter/cltr-texture.c: (cltr_texture_realize):
10502 * clutter/cltr-video.c: (cltr_video_paint):
10504 * clutter/fonts.c: (draw_layout_on_pixbuf):
10505 Fix font alpha blending
10506 * examples/Makefile.am:
10507 * examples/player.c: (main):
10508 * examples/scratch.c: (main):
10510 * examples/select.c:
10513 2005-05-11 mallum,,, <mallum@openedhand.com>
10515 * clutter/cltr-video.c: (got_buffering), (cltr_video_new),
10516 (cltr_video_play), (cltr_video_idler):
10517 * examples/photos.c: (main):
10518 * examples/player.c: (handle_xevent), (main):
10519 * gst/cltrimagesink.c: (gst_cltrimagesink_chain):
10520 Fix Gl thread related crash on video playback
10521 Make examples less bound to my laptop ;)
10523 2005-05-06 mallum,,, <mallum@openedhand.com>
10525 * clutter/cltr-button.c: (cltr_button_new_with_label):
10526 * clutter/cltr-overlay.c:
10527 * clutter/cltr-photo-grid.c: (cltr_photo_grid_cell_new),
10528 (cltr_photo_grid_paint), (cltr_photo_grid_new):
10529 * clutter/cltr-video.c: (cltr_video_print_tag), (got_buffering),
10530 (got_error), (caps_set), (parse_stream_info), (cb_iterate),
10531 (cltr_video_new), (cltr_video_play), (cltr_video_seek),
10532 (cltr_video_seek_time), (cltr_video_stop), (cltr_video_close),
10533 (cltr_video_pause), (cltr_video_can_set_volume),
10534 (cltr_video_set_volume), (cltr_video_get_volume),
10535 (cltr_video_idler), (cltr_video_set_source), (cltr_video_show),
10536 (cltr_video_hide), (cltr_video_handle_xevent), (cltr_video_paint):
10537 * clutter/cltr-video.h:
10538 * clutter/cltr-widget.h:
10539 * clutter/cltr-window.c: (cltr_window_show), (cltr_window_paint),
10540 (cltr_window_handle_xevent), (cltr_window_set_fullscreen),
10541 (cltr_window_focus_widget):
10542 * clutter/cltr-window.h:
10544 * clutter/fonts.c: (get_layout_bitmap), (font_draw),
10545 (font_get_pixel_size):
10547 * examples/photos.c: (photo_grid_populate):
10548 * examples/player.c: (handle_xevent), (main):
10549 * examples/scratch.c: (main):
10550 Lots more tweaks, mainly updating video widget.
10552 2005-04-29 mallum,,, <mallum@openedhand.com>
10554 * clutter/cltr-button.c: (cltr_button_new),
10555 (cltr_button_on_activate), (cltr_button_new_with_label),
10556 (cltr_button_show):
10557 * clutter/cltr-button.h:
10558 * clutter/cltr-label.c: (cltr_label_new), (cltr_label_paint):
10559 * clutter/cltr-private.h:
10560 * clutter/cltr-video.c: (cltr_video_play):
10561 * clutter/cltr-widget.c: (cltr_widget_new), (cltr_widget_abs_x),
10562 (cltr_widget_abs_y), (cltr_widget_abs_x2), (cltr_widget_abs_y2),
10563 (cltr_widget_width), (cltr_widget_height), (cltr_widget_show),
10564 (cltr_widget_focus), (cltr_widget_unfocus),
10565 (cltr_widget_set_focus_next), (cltr_widget_get_focus_next),
10566 (cltr_widget_show_all):
10567 * clutter/cltr-widget.h:
10568 * clutter/cltr-window.c: (cltr_window_new),
10569 (cltr_window_focus_widget):
10571 * clutter/fonts.c: (draw_layout_on_pixbuf), (font_get_pixel_size):
10572 * examples/scratch.c: (main):
10573 Hack buttons some more
10576 2005-04-27 mallum,,, <mallum@openedhand.com>
10578 * clutter/Makefile.am:
10579 * clutter/cltr-button.c: (cltr_button_new):
10580 * clutter/cltr-label.c:
10581 * clutter/cltr-label.h:
10582 * clutter/cltr-photo-grid.c: (cltr_photo_grid_paint):
10583 * clutter/cltr-texture.c: (cltr_texture_realize),
10584 (cltr_texture_new), (cltr_texture_unref),
10585 (cltr_texture_no_tile_new):
10586 * clutter/cltr-texture.h:
10587 * clutter/cltr-video.c: (cltr_video_got_time_tick), (caps_set),
10588 (cltr_video_new), (cltr_video_idler), (cltr_video_set_source),
10589 (cltr_video_play), (cltr_video_pause), (cltr_video_show),
10590 (cltr_video_hide), (cltr_video_handle_xevent), (cltr_video_paint):
10592 * clutter/fonts.c: (font_new), (draw_layout_on_pixbuf),
10595 * clutter/pixbuf.c: (pixbuf_set_pixel), (pixbuf_get_pixel):
10596 * examples/photos.c: (photo_grid_populate), (main):
10597 * examples/player.c: (main):
10598 Improve video widget, use playbin rather than gst_play
10599 Lots of misc tweaks.
10601 2005-04-26 mallum,,, <mallum@openedhand.com>
10603 * clutter/Makefile.am:
10604 * clutter/cltr-core.c: (cltr_init):
10605 * clutter/cltr-events.c: (cltr_events_init), (cltr_main_loop):
10606 * clutter/cltr-photo-grid.c:
10607 * clutter/cltr-private.h:
10608 * clutter/cltr-scratch.c: (cltr_scratch_handle_xevent),
10609 (cltr_scratch_paint):
10610 * clutter/cltr-texture.c: (cltr_texture_render_to_gl_quad),
10611 (init_tiles), (cltr_texture_unrealize), (cltr_texture_realize),
10612 (cltr_texture_new), (cltr_texture_no_tile_new),
10613 (cltr_texture_get_pixbuf):
10614 * clutter/cltr-texture.h:
10615 * clutter/cltr-video.c:
10616 * clutter/cltr-video.h:
10617 * clutter/cltr-widget.c: (cltr_widget_queue_paint):
10619 * examples/Makefile.am:
10620 * examples/player.c:
10621 * gst/cltrimagesink.c: (gst_cltrimagesink_fixate),
10622 (gst_cltrimagesink_getcaps), (gst_cltrimagesink_sink_link),
10623 (gst_cltrimagesink_change_state), (gst_cltrimagesink_chain),
10624 (gst_cltrimagesink_set_property), (gst_cltrimagesink_get_property),
10625 (gst_cltrimagesink_finalize), (gst_cltrimagesink_class_init):
10626 * gst/cltrimagesink.h:
10627 Initial go at very hacky gst video widget
10629 2005-04-22 mallum,,, <mallum@openedhand.com>
10631 * clutter/Makefile.am:
10632 * clutter/cltr-button.c:
10633 * clutter/cltr-button.h:
10634 * clutter/cltr-core.c: (cltr_init):
10635 * clutter/cltr-overlay.c:
10636 * clutter/cltr-overlay.h:
10637 * clutter/cltr-photo-grid.c: (cltr_photo_grid_handle_xevent),
10638 (cltr_photo_grid_cell_new), (ctrl_photo_grid_get_zoomed_coords),
10639 (cell_is_offscreen), (cltr_photo_grid_idle_cb),
10640 (cltr_photo_grid_navigate), (cltr_photo_grid_activate_cell),
10641 (cltr_photo_grid_populate), (cltr_photo_grid_update_visual_state),
10642 (cltr_photo_grid_paint), (cltr_photo_grid_show),
10643 (cltr_photo_grid_set_fps), (cltr_photo_grid_get_fps),
10644 (cltr_photo_grid_set_anim_steps), (cltr_photo_grid_get_anim_steps),
10645 (cltr_photo_grid_new):
10646 Fix up grid so external prog can load images.
10647 * clutter/cltr-photo-grid.h:
10648 * clutter/cltr-texture.c: (cltr_texture_realize),
10649 (cltr_texture_new):
10650 * clutter/cltr-texture.h:
10651 * clutter/cltr-window.c: (cltr_window_set_fullscreen):
10653 * clutter/pixbuf.c: (pixbuf_scale_down), (ConvolveImage),
10654 (GaussianBlurImage):
10655 * clutter/pixbuf.h:
10656 New experimental Methods
10658 * examples/Makefile.am:
10659 * examples/photos.c:
10660 * examples/player.c:
10663 * gst/cltrimagesink.c:
10664 * gst/cltrimagesink.h:
10665 Add initial crusty ( broken ) gst stuff
10667 2005-04-13 mallum,,, <mallum@openedhand.com>
10669 * bootstrap-autotools.sh:
10670 * clutter/Makefile.am:
10673 * examples/Makefile.am:
10674 * examples/scratch.c:
10675 Initial autotooling of everything.
10677 2005-04-07 mallum,,, <mallum@openedhand.com>
10680 * cltr-events.c: (cltr_main_loop):
10684 * cltr-photo-grid.c: (cltr_photo_grid_cell_new),
10685 (cltr_photo_grid_append_cell), (ctrl_photo_grid_cell_to_coords),
10686 (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_idle_cb),
10687 (cltr_photo_grid_navigate), (cltr_photo_grid_activate_cell),
10688 (cltr_photo_grid_update_visual_state), (cltr_photo_grid_paint),
10689 (cltr_photo_grid_show), (cltr_photo_grid_new):
10692 * cltr-window.c: (cltr_window_new), (cltr_window_show),
10693 (cltr_window_handle_xevent):
10697 * pixbuf.c: (pixbuf_copy):
10701 2005-04-03 mallum,,, <mallum@openedhand.com>
10708 * cltr-photo-grid.c: (cltr_photo_grid_handle_xkeyevent),
10709 (cltr_photo_grid_handle_xevent), (cltr_photo_grid_cell_new),
10710 (cltr_photo_grid_append_cell), (ctrl_photo_grid_cell_to_coords),
10711 (ctrl_photo_grid_get_zoomed_coords), (cell_is_offscreen),
10712 (cltr_photo_grid_idle_cb), (cltr_photo_grid_navigate),
10713 (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
10714 (cltr_photo_grid_paint), (cltr_photo_grid_show),
10715 (cltr_photo_grid_new):
10716 * cltr-photo-grid.h:
10726 Add very basic initial toolkit infrastructure
10728 2005-03-31 mallum,,, <mallum@openedhand.com>
10730 * cltr-photo-grid.c: (cltr_photo_grid_append_cell),
10731 (ctrl_photo_grid_cell_to_coords),
10732 (ctrl_photo_grid_get_zoomed_coords), (cell_is_offscreen),
10733 (cltr_photo_grid_idle_cb), (cltr_photo_grid_navigate),
10734 (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
10735 (cltr_photo_grid_redraw), (cltr_photo_grid_new):
10736 * cltr-photo-grid.h:
10737 * cltr-texture.c: (cltr_texture_render_to_gl_quad), (init_tiles),
10738 (cltr_texture_realize):
10741 Implemented scrolling. Very rough around the edges, needs tidying.
10743 2005-03-30 mallum,,, <mallum@openedhand.com>
10746 * cltr-photo-grid.c: (cltr_photo_grid_redraw),
10747 (cltr_photo_grid_new):
10750 * cltr-texture.c: (cltr_texture_new):
10753 2005-03-30 mallum,,, <mallum@openedhand.com>
10755 * cltr-photo-grid.c: (cltr_photo_grid_populate),
10756 (cltr_photo_grid_redraw), (cltr_photo_grid_new):
10757 * cltr-photo-grid.h:
10758 * cltr-tex.c: (next_p2), (cltr_texture_render_to_gl_quad),
10759 (tile_dimension), (init_tiles), (cltr_texture_new):
10762 Rename CltrImage -> CltrTexture
10764 2005-03-30 mallum,,, <mallum@openedhand.com>
10767 * cltr-photo-grid.c: (cltr_photo_grid_populate),
10768 (cltr_photo_grid_redraw):
10769 * cltr-photo-grid.h:
10774 * pixbuf.c: (pixbuf_unref), (pixbuf_copy):
10776 Add intial new texture tiling code.
10778 2005-03-27 mallum,,, <mallum@openedhand.com>
10781 * cltr-photo-grid.c: (cltr_photo_grid_cell_new),
10782 (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_navigate),
10783 (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
10784 (cltr_photo_grid_redraw), (cltr_photo_grid_new):
10785 * cltr-photo-grid.h:
10786 * cltr.c: (cltr_dispatch_x_event), (cltr_init), (test_idle_cb),
10789 Add a very hacky threaded image loader.
10790 Make event handling a little more efficient, though still hacky
10791 * pixbuf.c: (pixel_set_vals), pixbuf.h:
10792 Add copy func ( unused as yet )
10794 2005-03-25 mallum,,, <mallum@openedhand.com>
10796 * cltr-photo-grid.c: (cltr_photo_grid_cell_new),
10797 (ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_redraw),
10798 (cltr_photo_grid_new):
10799 * cltr-photo-grid.h:
10800 * cltr.c: (cltr_window_new), (idle_cb), (main):
10801 Use GL matrices in a saner way.
10802 Add random rotation to picts
10803 Random minor tweaks
10805 2005-03-24 mallum,,, <mallum@openedhand.com>
10808 * cltr-photo-grid.c:
10809 * cltr-photo-grid.h:
10810 * cltr.c: (cltr_window_new), (cltr_main_loop):
10812 Split up cltr.c a bit. start refactoring a bit.
10814 2005-03-23 mallum,,, <mallum@openedhand.com>
10816 * cltr.c: (cltr_photo_grid_populate), (cltr_photo_grid_redraw),
10817 (cltr_photo_grid_new), (main):
10819 Various minor tweaks
10820 * pixbuf.c: (pixbuf_set_pixel), (pixbuf_get_pixel):
10821 Fix RGBA ordering in set/get pixel
10823 2005-03-23 mallum,,, <mallum@openedhand.com>
10825 * cltr.c: (ctrl_photo_grid_get_trans_coords),
10826 Fix grid co-ords -> translation vals converter
10827 (cltr_photo_grid_navigate), (cltr_photo_grid_redraw),
10828 (cltr_photo_grid_new), (idle_cb):
10829 Fix moving between pictures when zoomed
10832 2005-03-23 mallum,,, <mallum@openedhand.com>
10834 * cltr.c: (cltr_dispatch_x_event), (cltr_window_new),
10835 (cltr_main_loop), (cltr_photo_grid_navigate),
10836 (cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
10837 (cltr_photo_grid_redraw), (cltr_photo_grid_new), (idle_cb), (main):
10839 Lots, make the grid roughly work.
10841 * fonts.c: (get_layout_bitmap), (font_draw):
10842 remove debug printfs
10844 2005-03-22 mallum,,, <mallum@openedhand.com>
10846 * cltr.c: (x_event_prepare), (x_event_check), (x_event_dispatch),
10847 (cltr_dispatch_x_event), (cltr_init), (cltr_window_new),
10848 (cltr_photo_grid_append_cell), (cltr_photo_grid_populate),
10849 (cltr_photo_grid_redraw), (cltr_photo_grid_new),
10852 Add glib event loop