* clutter/clutter-script.c:
(resolve_alpha_func): Use a whitelist containing the alpha function
provided by Clutter, as a fallback in case g_module_open() does not
work.
(clutter_script_parse_alpha): Add an explicit warning in case we
cannot find the alpha function used inside a UI definition.
* clutter/clutter-actor.c:
(clutter_actor_set_property):
Fixed handling of PROP_ROTATE_CENTER_Y, ROTATE_CENTER_Z
* tests/test-actors.c:
Adjusted to use anchor point for both group and hands.
* clutter/clutter-script-parser.c:
(clutter_script_get_type_from_symbol),
(clutter_script_get_type_from_class): Use BIND_LAZY flag
when looking at the symbols, so we don't load them all up.
* clutter/clutter-script.c (resolve_alpha_func): Ditto as above.
(_clutter_actor_apply_modelview_transform): perform translation as
well as anchor point adjustment based on self not being stage (and
not by self not being an orphan).
* clutter/clutter-texture.c:
Initial attempt at handling resizing/tranformed source textures.
* clutter/pango/pangoclutter-render.c: (draw_glyph):
Guards against freetype returning NULL bitmaps and
thus causing device by zeros on NVIDIA drivers. (see ml)
* clutter/clutter-actor.c: (clutter_actor_get_vertices):
Make sure GL related Matrices are initialised. Fixes#756
* clutter/clutter-texture.c:
Fix up code from Norways answer to Jean-Michel Basquiat.
(warning on tile_get_pixbuf)
renamed clutter_actor_apply_shader to be clutter_actor_set_shader.
Reindented/aligned header.
* clutter/clutter-texture.c: (clutter_texture_paint): temporarily
disable the shader on top of the clutter context's shader stack while
rendering into the FBO.
* tests/test-fbo.c: (main): s/apply_shader/set_shader/
* tests/test-shader.c: (button_release_cb), (main):
s/apply_shader/set_shader/
* clutter/clutter-shader.c:
Minor formatting cleanups to fit in 80 cols.
* clutter/clutter-texture.c:
More safety checks, clean ups in clutter_texture_new_from_actor()
* clutter/cogl/gl/cogl.c:
Always clear the FBO initially when rendering
* tests/test-fbo.c:
Overhall the test as to be more useful (and show current issues)
* clutter/cogl/cogl.h:
* clutter/cogl/gl/cogl.c:
* clutter/cogl/gles/cogl.c:
Disable the depth test and buffer as has some strange side
effects, mainly on x/y axis rotation with multiple layers at
same depth (eg rotating text on a bg has very strange
effect). Seems no clean 100% effective way to fix without other
odd issues.. So for now move to application to handle and add
cogl_enable_depth_test() as for custom actors (i.e groups) to
enable if need be.
* clutter/clutter-feature.h:
* clutter/clutter-texture.c:
* clutter/clutter-texture.h:
* clutter/cogl/cogl.h:
* clutter/cogl/gl/cogl.c:
* clutter/cogl/gles/cogl.c:
* tests/Makefile.am:
* tests/test.fbo.c:
Add initial support for FBO's in Clutter (OpenGL only so far).
See new clutter_texture_new_from_actor()
Initial implementation, needs work.
* clutter/x11/clutter-stage-x11.c:
(clutter_stage_x11_set_cursor_visible):
Fall back to again not relying on xfixes to hide cursor. *sigh*
* clutter/clutter-deprecated.h:
Add clutter_group_find_child_by_id
* clutter/clutter-actor.c:
(clutter_actor_get_property): Use clutter_actor_get_reactive()
instead of the IS_REACTIVE() macro.
(clutter_actor_set_reactive): Emit the notify signal for the
reactive property.
* clutter/clutter-timeline.c:
(timeline_timeout_func),
(clutter_timeline_get_delta): Coding style fixes.
* clutter/clutter-timeline.c (clutter_timeline_skip): Don't
add the frames outside the direction check. (thanks to benoar
on clutter-list for spotting it)
* clutter/clutter-actor.c:
(clutter_actor_transform_vertices):
Call clutter_actor_query_coords() instead of accessing the actor
box, so that actors that calculate their bounding box on the fly
(like ClutterGroup) work.
* (_clutter_actor_apply_modelview_transform_recursive):
Made to work for parentless actors.
* clutter/clutter-entry.h:
* clutter/clutter-entry.c:
(clutter_entry_set_cursor_position),
(clutter_entry_get_cursor_position): Rename [gs]et_position()
to [gs]set_cursor_position(), and avoid method name collisions
with bindings for high-level languages.
* clutter/clutter-deprecated.h: Add replacement warnings for the
renamed methods.
* clutter/clutter-actor.c (clutter_actor_init): Explicitly
memset() to 0 the clip container, so if you get the clip without
having set it, you won't get garbage.
2008-01-31 Rob Bradford <rob@openedhand.com>
* clutter/clutter-label.c (clutter_label_query_coords): Check
if the layout logical rectangle size is bigger than the bounding
box; this usually means that the bounding box changed in one
point and the label private allocation needs to be
updated. (#724)
* Makefile.am: Use variables, instead of substitutions.
* clutter/clutter-private.h:
* clutter/clutter-main.h: Make clutter_do_event() public again,
as we need it in clutter-gtk.
* configure.ac:
* clutter/x11/Makefile.am:
* clutter/x11/clutter-x11.pc.in: Add a clutter-x11 pkg-config
file for clutter-gtk, as it depends on the X11 backend API, as
implemented by the GLX and EGLX backends.
* clutter/x11/clutter-event-x11.c (event_translate): Do not
propagate DestroyNotify events if the stage doesn't own the
window.
* tests/test-scale.c (main): Set values different from the default.
* clutter/clutter-behaviour-depth.h:
* clutter/clutter-behaviour-depth.c:
(clutter_behaviour_depth_set_bounds),
(clutter_behaviour_depth_get_bounds): Add the depth-start and
depth-end accessors.
* tests/test-depth.c (timeline_completed): Use set_bounds()
instead of g_object_set().
* clutter.symbols: Add clutter_behaviour_depth_set_bounds()
and clutter_behaviour_opacity_get_bounds() to the list of
public symbols.
* clutter/clutter-behaviour-scale.c: Use separate variables for
storing the scale boundaries; apparently, using arrays broke
the python bindings. (#720)
* clutter/clutter-group.c:
Make sure unrealizing a group also unrealizes children.
* clutter/glx/clutter-stage-glx.c:
Chain up to group unrealize to make sure textures get unrealized
when changing context (see #718)
* clutter/clutter-texture.c:
Formatting cleanups
* clutter/clutter-main.c (generate_enter_leave_events): Do not
take the explicit reference, and let clutter_event_copy() do it
for us. (#714, Neil Roberts)
* clutter/clutter-event.c (clutter_event_copy): Take an extra
reference on the related actor in ClutterEventCrossing that we
explicitly unref in clutter_event_free(). (#714, Neil Roberts)
* clutter/clutter-main.c (clutter_do_event): Check the
return value of the ::event signal for the CLUTTER_DELETE
event type.
* clutter/clutter-stage.c (clutter_stage_event): Emit the
::event signal when receiving the CLUTTER_DELETE event; this
allows to intercept the user's closing of the stage window.