profile/ivi/clutter.git
16 years agoUpdate TODO
Emmanuele Bassi [Wed, 17 Oct 2007 10:41:42 +0000 (10:41 +0000)]
Update TODO

16 years ago* clutter/pango/pangoclutter-render.c: (tc_get): Provide for blank
Øyvind Kolås [Tue, 16 Oct 2007 19:14:52 +0000 (19:14 +0000)]
* clutter/pango/pangoclutter-render.c: (tc_get): Provide for blank
rows/columns of pixels between adjecant glyphs in the texture cache to
avoid bilinear interpolation spillage at edges of glyphs.

16 years ago* clutter/clutter-main.c: (clutter_do_event): allow motion events
Øyvind Kolås [Tue, 16 Oct 2007 16:35:02 +0000 (16:35 +0000)]
* clutter/clutter-main.c: (clutter_do_event): allow motion events
only delivered to stage to be chaugt in the capture phase as well
as the bubbling phase.

16 years ago2007-10-16 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Tue, 16 Oct 2007 14:40:00 +0000 (14:40 +0000)]
2007-10-16  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/json/json-object.c: Automatically transform every
delimiter into an underscore.

* clutter/clutter-script.c: Implement the "parent_texture"
property translation for ClutterCloneTextures, using the
passed id of the parent texture.

16 years ago2007-10-16 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Tue, 16 Oct 2007 13:41:34 +0000 (13:41 +0000)]
2007-10-16  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-timeline.[ch]: Added ClutterTimeline:duration,
a property for setting the duration of a timeline in milliseconds.
The property comes with accessors and a new constructor. The
frame rate used is the default value.

* clutter/clutter-private.h:
* clutter/clutter-main.[ch]: Add clutter_get_default_frame_rate()
and clutter_set_default_frame_rate(); these two functions control
the default frame rate to be used when creating timelines. Currently
is set to 60 frames-per-second.

16 years ago2007-10-16 Tomas Frydrych <tf@o-hand.com>
Tomas Frydrych [Tue, 16 Oct 2007 10:18:36 +0000 (10:18 +0000)]
2007-10-16  Tomas Frydrych  <tf@o-hand.com>

        * build/msvc_2k5:
        Added MSVC project files.

16 years ago2007-10-16 Emmanuele bassi <ebassi@openedhand.com>
Emmanuele Bassi [Tue, 16 Oct 2007 09:39:15 +0000 (09:39 +0000)]
2007-10-16  Emmanuele bassi  <ebassi@openedhand.com>

* clutter/clutter-color.c: Copy the alpha when shading.

16 years ago2007-10-16 Tomas Frydrych <tf@o-hand.com>
Tomas Frydrych [Tue, 16 Oct 2007 08:34:16 +0000 (08:34 +0000)]
2007-10-16  Tomas Frydrych  <tf@o-hand.com>

* clutter.symbols:
Added a bunch of missing symbols.

* clutter/clutter-script.c:
* json/json-node.c:
Use g_slice_new0 instead of g_slice_new to avoid passing garbage to functions.

* tests/test-threads.c:
Replaced non-portable sleep() with g_usleep().

16 years ago2007-10-15 Tomas Frydrych <tf@o-hand.com>
Tomas Frydrych [Mon, 15 Oct 2007 19:19:42 +0000 (19:19 +0000)]
2007-10-15  Tomas Frydrych  <tf@o-hand.com>

* clutter/cogl/gl/cogl-defines.h:
* clutter/cogl/gl/cogl.c:
Fixed up GL include for windows.

16 years ago2007-10-15 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Mon, 15 Oct 2007 16:50:59 +0000 (16:50 +0000)]
2007-10-15  Matthew Allum  <mallum@openedhand.com>

        * clutter/clutter-actor.c:
        More events documentation.

        * clutter/clutter-event.c:
        * clutter/clutter-event.h:
        Add synthetic flag and make put_event use it
        (via modded patch from pippin)

        * clutter/clutter-main.c: (clutter_do_event):
        dont use put event anymore when pushing enter/leave events.

16 years ago2007-10-15 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Mon, 15 Oct 2007 09:09:04 +0000 (09:09 +0000)]
2007-10-15  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/pango/Makefile.am: Compile with the debug flags, if
set.

16 years ago2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Fri, 12 Oct 2007 17:36:38 +0000 (17:36 +0000)]
2007-10-12  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter.symbols: Remove non-public symbols.

16 years ago2007-10-12 Tomas Frydrych <tf@o-hand.com>
Tomas Frydrych [Fri, 12 Oct 2007 15:16:22 +0000 (15:16 +0000)]
2007-10-12  Tomas Frydrych  <tf@o-hand.com>

* clutter.symbols:
A list of public symbols, one per line; semi-autogenerated, so
might not be complete -- PLEASE when adding new public APIs, add
the function name to this file.

16 years ago2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Fri, 12 Oct 2007 12:42:54 +0000 (12:42 +0000)]
2007-10-12  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-actor.c: Add a :depth property, so we can
set the initial depth of an actor inside the UI definition
files.

16 years ago2007-10-12 Tomas Frydrych <tf@o-hand.com>
Tomas Frydrych [Fri, 12 Oct 2007 10:02:28 +0000 (10:02 +0000)]
2007-10-12  Tomas Frydrych  <tf@o-hand.com>

* tests/test-actors.c:
When using MSVC, define _USE_MATH_DEFINES before including
math.h, otherwise constants like M_PI will not be defined.

16 years ago2007-10-12 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Fri, 12 Oct 2007 09:43:27 +0000 (09:43 +0000)]
2007-10-12  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-script.c (construct_timline),
(parse_member_to_property): Transfer ownership of the
implicit timelines to the behaviour, so that they get
unreferenced when the behaviour is destroyed.

(parse_member_to_property): Reverse the list of children
and behaviours.

16 years ago2007-10-12 Tomas Frydrych <tf@o-hand.com>
Tomas Frydrych [Fri, 12 Oct 2007 09:39:41 +0000 (09:39 +0000)]
2007-10-12  Tomas Frydrych  <tf@o-hand.com>

Portability fixes:

* clutter/clutter-private.h:
Bracket #include "unistd.h" with #ifdef HAVE_UNISTD_H

* clutter/clutter-fixed.c:
Use "", not <> for inclusion of local files.

(clutter_sqrtx): forward declare local variables.

* clutter/clutter-debug.h:
Added non-gcc (c99) implementation of variadic debug macros for
when not compiling with gcc.

* clutter/pango/pangoclutter-render.c:
Fixed some strange uses of CLUTTER_NOTE() + stripped trailing
whitespace.

16 years ago2007-10-12 Tomas Frydrych <tf@o-hand.com>
Tomas Frydrych [Fri, 12 Oct 2007 08:17:00 +0000 (08:17 +0000)]
2007-10-12  Tomas Frydrych  <tf@o-hand.com>

        * clutter/clutter-actor.c:
        * clutter/clutter-backend.c:
        * clutter/clutter-behaviour-depth.c:
        * clutter/clutter-box.c:
        * clutter/clutter-clone-texture.c:
        * clutter/clutter-container.c:
        * clutter/clutter-entry.c:
        * clutter/clutter-feature.c:
        * clutter/clutter-fixed.c:
        * clutter/clutter-group.c:
        * clutter/clutter-hbox.c:
        * clutter/clutter-label.c:
        * clutter/clutter-layout.c:
        * clutter/clutter-media.c:
        * clutter/clutter-rectangle.c:
        * clutter/clutter-score.c:
        * clutter/clutter-script.c:
        * clutter/clutter-stage.c:
        * clutter/clutter-texture.c:
        * clutter/clutter-timeline.c:
        * clutter/clutter-timeout-pool.c:
        * clutter/clutter-vbox.c:
        * clutter/cogl/gl/cogl.c:
        * clutter/cogl/gles/cogl.c:
        * clutter/eglnative/clutter-backend-egl.c:
        * clutter/eglnative/clutter-event-egl.c:
        * clutter/eglnative/clutter-stage-egl.c:
        * clutter/eglx/clutter-backend-egl.c:
        * clutter/eglx/clutter-event-egl.c:
        * clutter/eglx/clutter-stage-egl.c:
        * clutter/glx/clutter-event-glx.c:
        * clutter/json/json-array.c:
        * clutter/json/json-generator.c:
        * clutter/json/json-node.c:
        * clutter/json/json-object.c:
        * clutter/json/json-parser.c:
        * clutter/sdl/clutter-backend-sdl.c:
        * clutter/sdl/clutter-event-sdl.c:
        * clutter/sdl/clutter-stage-sdl.c:

Fixedup config.h inclusion (must always be bracketed with #ifdef
HAVE_CONFIG_H).

16 years ago2007-10-11 Tomas Frydrych <tf@o-hand.com>
Tomas Frydrych [Thu, 11 Oct 2007 15:07:36 +0000 (15:07 +0000)]
2007-10-11  Tomas Frydrych  <tf@o-hand.com>

* clutter/clutter-entry.c:
Avoid using C++ reserverd words to name variables.

16 years agoImprove the quality of text when the scale it is shown at screen is
Øyvind Kolås [Thu, 11 Oct 2007 12:18:01 +0000 (12:18 +0000)]
Improve the quality of text when the scale it is shown at screen is
smaller than the original, seems to work well down to about a scale
of 50%.
* clutter/pango/pangoclutter-fontmap.c:
(pango_clutter_font_map_default_substitute): turn off hinting.
* clutter/pango/pangoclutter-render.c: request linear filtering
instead of nearest neighbour when scaling down.
* tests/test-text.c: replaced test with a a test that renders a sample
grid with various pixel sizes and scales for visual inspection of
text rendering quality.

16 years ago2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Wed, 10 Oct 2007 16:02:54 +0000 (16:02 +0000)]
2007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/glx/clutter-backend-glx.c: Fix documentation of the
filter function API.

* clutter/clutter-score.c:
* clutter/clutter-effect.c:
* clutter/clutter-actor.c: Documentation fixes.

* clutter/clutter-actor.h: Automatically typecast to ClutterActor
when setting/checking flags.

16 years ago2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Wed, 10 Oct 2007 16:00:41 +0000 (16:00 +0000)]
2007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter-sections.txt: Add new API and rearrange the subsections.

16 years ago2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Wed, 10 Oct 2007 14:51:25 +0000 (14:51 +0000)]
2007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-actor.c: Beautify the ClutterActor documentation.

16 years ago2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Wed, 10 Oct 2007 14:29:29 +0000 (14:29 +0000)]
2007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-actor.c: Remove the ::event-after signal:
three event layers to connect to seems a bit overkill.

(clutter_actor_event): Return FALSE, not TRUE by default,
as g_signal_emit() will change the return value if no
handlers are connected

* clutter/clutter-stage.c: Emit ::notify when we change
the fullscreen property.

* clutter/clutter-script.c: Add more documentation for the
definition format and keywords.

(translate_property): Collapse the G_TYPE_ENUM and G_TYPE_FLAGS
cases into one, to simplify the code.

* tests/test-script.c: Test enumeration conversion by using
a value different from the default.

16 years ago2007-10-10 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Wed, 10 Oct 2007 13:04:34 +0000 (13:04 +0000)]
2007-10-10  Matthew Allum  <mallum@openedhand.com>

        * clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
        * clutter/clutter-event.c:
        * clutter/clutter-main.c:
        * tests/test-events.c:
        Add basic W3 DOM  event 'capture' like functionality.

16 years ago2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Wed, 10 Oct 2007 13:01:09 +0000 (13:01 +0000)]
2007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-script-private.h:
* clutter/clutter-script.c: Parse flags like we parse enums.

16 years ago2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Wed, 10 Oct 2007 12:51:51 +0000 (12:51 +0000)]
2007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/json/json-types.h:
* clutter/json/json-array.c:
* clutter/json/json-object.c: Resync with the upstream copy
of JSON-GLib; add json_object_remove_member() and
json_array_remove_element() and fix the g_hash_table_get_keys()
replacement for GLib 2.12.

* clutter/clutter-script.c: Clean up the complex properties
parsing code.

16 years ago2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Wed, 10 Oct 2007 10:44:45 +0000 (10:44 +0000)]
2007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-script.c (json_object_end): Add "type_func"
to the list of attributes we skip.

16 years ago2007-10-10 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Wed, 10 Oct 2007 10:42:19 +0000 (10:42 +0000)]
2007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/json/json-parser.c: Use the commodity JsonNode API
and accept bare values as root nodes.

* clutter/clutter-script-private.h:
* clutter/clutter-script.c: Unreference the created objects
only if they are top-levels, like ClutterBehaviour and
ClutterTimelines. Actors have floating references, so we
just transfer ownership to their containers, and the stage
is owned by the backend. Add the "type_func" key to the
object definition, so the user can supply its own GType
function if the class name doesn't follow the GObject rules.
Document the ClutterScript public API.

16 years ago2007-10-10 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Tue, 9 Oct 2007 23:45:49 +0000 (23:45 +0000)]
2007-10-10  Matthew Allum  <mallum@openedhand.com>

        * clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
        Add missing enter/leave event signals

        * clutter/clutter-main.c: (clutter_do_event):
        Set time in crossing events.
        Protect against do_pick() failing.

16 years ago2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Tue, 9 Oct 2007 20:04:23 +0000 (20:04 +0000)]
2007-10-09  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-script.c (resolve_alpha_func): Fix the
ClutterAlphaFunc resolution function.

16 years ago2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Tue, 9 Oct 2007 16:44:44 +0000 (16:44 +0000)]
2007-10-09  Emmanuele Bassi  <ebassi@openedhand.com>

* tests/Makefile.am:
* tests/test-script.c:
* tests/test-script.json: Move part of the UI definition into
its own file and exercise clutter_script_load_from_file().

16 years ago2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Tue, 9 Oct 2007 16:21:04 +0000 (16:21 +0000)]
2007-10-09  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-script.c (clutter_script_get_object): Construct
the requested object if it hasn't been already. This allows
referencing objects within the same snippet.

* tests/test-script.c: Declare a timeline and use it inside
multiple behaviours; apply multiple behaviours to various
actors, then retrieve the timeline to start it when the test
runs.

16 years ago2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Tue, 9 Oct 2007 15:11:01 +0000 (15:11 +0000)]
2007-10-09  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-script-private.h:
* clutter/clutter-script.c: Allow applying behaviours directly
inside the UI definition data.

* tests/test-script.c: Test the "behaviours" member.

16 years ago2007-10-09 Rob Bradford <rob@openedhand.com>
Robert Bradford [Tue, 9 Oct 2007 13:56:29 +0000 (13:56 +0000)]
2007-10-09  Rob Bradford  <rob@openedhand.com>

* clutter/eglnative/clutter-backend-egl.c:
(clutter_backend_egl_dispose):
Call eglTerminate() on the display when the backend is disposed of.

* clutter/eglnative/clutter-stage-egl.c:
(clutter_stage_egl_realize):
Don't use the createNativeWindow() call, it's not generic EGL.

16 years ago2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Tue, 9 Oct 2007 13:29:03 +0000 (13:29 +0000)]
2007-10-09  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-script-private.h:
* clutter/clutter-script.h:
* clutter/clutter-script.c: Add licensing information to
the newly added files.

* clutter/clutter-script.c: Support creating behaviours with
ClutterScript. ClutterAlpha objects are implicit, but
timelines can be both explicit objects using their id or
implicit objects. Make the property resolution and translation
more robust. Support the pixbuf property.

* tests/test-script.c: Test the newly added features.

* docs/reference/clutter-docs.sgml:
* docs/reference/clutter-sections.txt: Add ClutterScript.

16 years ago2007-10-09 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Tue, 9 Oct 2007 13:24:52 +0000 (13:24 +0000)]
2007-10-09  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-fixed.h: Add deprecation guards around
CLUTTER_FIXED_INT().

16 years agoFix typo in GLib version check
Emmanuele Bassi [Tue, 9 Oct 2007 12:10:11 +0000 (12:10 +0000)]
Fix typo in GLib version check

16 years ago2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Mon, 8 Oct 2007 16:48:22 +0000 (16:48 +0000)]
2007-10-08  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-script.c: Parse ClutterMargin and ClutterPadding
properties from arrays or integers (assume pixels).

16 years ago2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Mon, 8 Oct 2007 16:25:10 +0000 (16:25 +0000)]
2007-10-08  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-script-private.h:
* clutter/clutter-script.c: Allow defining childrens for every
container actor inside the UI definition files.

16 years ago2007-10-08 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Mon, 8 Oct 2007 16:18:33 +0000 (16:18 +0000)]
2007-10-08  Matthew Allum  <mallum@openedhand.com>

        * clutter/clutter-actor.c:
        * clutter/clutter-actor.h:
        * clutter/clutter-private.h:
        * clutter/clutter-main.c:
        Add a hash to global clutter context mapping all parented actor
        id's to actors.
        Add clutter_get_actor_by_id() call.
        Convert picking machinery to use above.
        (performance/simpler composite actor creation)

        * clutter/clutter-stage.c: (clutter_stage_fullscreen),
        (clutter_stage_unfullscreen), (clutter_stage_event):
        Only set the fullscreen property on stage state fullscreen event(#545)
        Experimental as could be painful to implement on non X backends.

16 years ago2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Mon, 8 Oct 2007 15:18:31 +0000 (15:18 +0000)]
2007-10-08  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-script.c (json_parse_end):
* clutter/json/json-object.c (json_object_get_members): Replace
the GLib 2.14 API with the equivalent code for GLib < 2.14.

* configure.ac: Revert the dependency bump.

16 years agoFix includes in ClutterScript
Emmanuele Bassi [Mon, 8 Oct 2007 15:04:13 +0000 (15:04 +0000)]
Fix includes in ClutterScript

16 years ago2007-10-08 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Mon, 8 Oct 2007 15:03:22 +0000 (15:03 +0000)]
2007-10-08  Emmanuele Bassi  <ebassi@openedhand.com>

Initial implementation of the UI definition files. (#424)

* clutter/json/Makefile.am:
* clutter/json/*.[ch]: In-tree copy of JSON-GLib, a GLib-based
JSON parser/generator library. We use it in-tree because we might
need to change the API. Ideally, we'd depend on it.

* clutter/clutter.h:
* clutter/clutter-script-private.h:
* clutter/clutter-script.[ch]: ClutterScript, the scenegraph
generator class. It parses JSON streams in form of buffers and
files and builds the scene.

* clutter/clutter-debug.h:
* clutter/clutter-main.c: Add a "script" debug flag

* clutter/Makefile.am: Build glue.

* tests/Makefile.am:
* tests/test-script.c: Add a test case for the ClutterScript.

* configure.ac: Depend on GLib 2.14, so we can use the
g_hash_table_get_key() and g_hash_table_get_values() functions
for the time being; we can probably reimplement those, but we
are going to need 2.14 anyway if we are going to implement a
list model using GSequence.

16 years ago2007-10-03 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Mon, 8 Oct 2007 14:51:26 +0000 (14:51 +0000)]
2007-10-03  Emmanuele Bassi  <ebassi@openedhand.com>

* tests/test-behave.c: Use the right return type for the
event callbacks.

16 years ago2007-10-03 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Mon, 8 Oct 2007 14:51:14 +0000 (14:51 +0000)]
2007-10-03  Emmanuele Bassi  <ebassi@openedhand.com>

* tests/test-behave.c: Use the right return type for the
event callbacks.

16 years ago2007-10-03 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Wed, 3 Oct 2007 09:28:16 +0000 (09:28 +0000)]
2007-10-03  Matthew Allum  <mallum@openedhand.com>

        * clutter/clutter-actor.c:
        * clutter/clutter-event.c:
        * clutter/clutter-event.h:
        * clutter/clutter-main.c:
        * clutter/clutter-private.h:
        * clutter/eglnative/clutter-event-egl.c:
        * clutter/eglx/clutter-event-egl.c:
        * clutter/glx/clutter-event-glx.c:
        * clutter/sdl/clutter-event-sdl.c:
        Remove seperate double/triple click events and replace with
        a click_count member.
        Move calculating click counts from backend to do_event()
        Initial implementation of ENTER/LEAVE events.

        * tests/test-events.c:
        Add code to test above.

        * tests/test-behave.c:
        Sync with newer API.

        * clutter/clutter-score.c:
        Silence a warning.

16 years ago2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Tue, 2 Oct 2007 14:53:32 +0000 (14:53 +0000)]
2007-10-01  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-fixed.h: Add CLUTTER_FIXED_TO_INT() and
deprecate CLUTTER_FIXED_INT(), for symmetry with
CLUTTER_FIXED_FROM_INT().

* clutter/clutter-alpha.c:
* clutter/clutter-behaviour-depth.c:
* clutter/clutter-behaviour-ellipse.c:
* clutter/clutter-behaviour-path.c:
* clutter/clutter-fixed.h: Use CLUTTER_FIXED_TO_INT().

16 years ago2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Tue, 2 Oct 2007 14:45:40 +0000 (14:45 +0000)]
2007-10-01  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-actor.c (clutter_actor_get_size): Implement
get_size() as a wrapper around clutter_actor_query_coords()
instead of calling g_object_get() twice.

(clutter_actor_init): Initialise the box in one call.

16 years ago2007-10-01 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Tue, 2 Oct 2007 14:03:36 +0000 (14:03 +0000)]
2007-10-01  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-actor.[ch]: Remove the ::event-after signal
class handler, as it's not meant to be overridden by sub-classes.

(clutter_actor_class_init):
Make every event-related signal return a boolean: return TRUE
in a signal handler to block the emission. The value is accumulated
automatically by the signal API.

(clutter_actor_event): If ::event returns TRUE, skip to emitting
::event-after. Return the value accumulated by the signal emission
chain.

* clutter/clutter-private.h: Rename _clutter_boolean_accumlator().

* clutter/clutter-main.c (clutter_do_event): If clutter_actor_event()
returns TRUE then stop the event emission chain from child to parent.

* clutter/clutter-stage.c (clutter_stage_event): Behave like
clutter_actor_event().

(clutter_stage_get_key_focus),
(clutter_stage_set_key_focus): Avoid a nasty circular reference
issue: if the actor passed to set_key_focus is NULL then the stage
has the key focus.

* tests/test-events.c: Update the events test with the API
changes.

16 years ago2007-10-01 Tomas Frydrych <tf@openedhand.com>
Tomas Frydrych [Mon, 1 Oct 2007 15:26:09 +0000 (15:26 +0000)]
2007-10-01  Tomas Frydrych  <tf@openedhand.com>

* clutter/clutter-actor.c:
(clutter_actor_set_scale_with_gravityx):
Use CLUTTER_QMUL for better precission (#532, patch by Gwenole
Beauchesne).

* clutter/clutter-color.c:
(clutter_color_to_hlsx):
Added missing CLUTTER_INT_TO_FIXED conversion (#544, patch by Neil
Roberts).

16 years ago2007-10-01 Neil J. Patel <njp@o-hand.com>
Neil J. Patel [Mon, 1 Oct 2007 13:44:33 +0000 (13:44 +0000)]
2007-10-01  Neil J. Patel  <njp@o-hand.com>

Patch by: Tommi Komulainen <tommi.komulainen@iki.fi>

* clutter/clutter-entry.c: (clutter_entry_delete_text):
Fix characters vs. bytes inconsistency (#520).

16 years ago2007-09-30 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Sun, 30 Sep 2007 22:27:52 +0000 (22:27 +0000)]
2007-09-30  Matthew Allum  <mallum@openedhand.com>

        * clutter/clutter-event.h:
        Removed unused POINTER_ENTER and POINTER_LEAVE states. (#546)
        * clutter/clutter-stage.c: (clutter_stage_fullscreen),
        (clutter_stage_unfullscreen):
        Only Change fullscreen prop if the backend implements fullscreen
        methods. (#545)

16 years ago2007-09-28 Øyvind Kolås <pippin@openedhand.com>
Øyvind Kolås [Fri, 28 Sep 2007 14:52:54 +0000 (14:52 +0000)]
2007-09-28  Øyvind Kolås  <pippin@openedhand.com>

* clutter/clutter-container.[ch]: added
clutter_container_find_child_by_name.

16 years ago2007-09-28 Øyvind Kolås <pippin@openedhand.com>
Øyvind Kolås [Fri, 28 Sep 2007 11:03:21 +0000 (11:03 +0000)]
2007-09-28  Øyvind Kolås  <pippin@openedhand.com>

* clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize):
removed unused variable perspective.
* tests/test-events.c: (main): added CLUTTER_STAGE() cast.
* tests/test-threads.c: include unistd.h for sleep().

16 years ago * clutter/clutter-label.c: (clutter_label_ensure_layout): avoid
Øyvind Kolås [Fri, 28 Sep 2007 10:54:42 +0000 (10:54 +0000)]
* clutter/clutter-label.c: (clutter_label_ensure_layout): avoid
calling pango_layout_set_text|markup before we've got any text.

16 years ago2007-09-27 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Thu, 27 Sep 2007 22:30:58 +0000 (22:30 +0000)]
2007-09-27  Matthew Allum  <mallum@openedhand.com>

        * tests/test-scale.c:
        Fix out of about array addressing (#522, Tommi Komulainen)

16 years ago2007-09-27 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Thu, 27 Sep 2007 22:20:30 +0000 (22:20 +0000)]
2007-09-27  Matthew Allum  <mallum@openedhand.com>

        * clutter/clutter-clone-texture.c:
        * clutter/clutter-rectangle.c:
        Include config.h in all c files (#524, Tommi Komulainen)

16 years ago2007-09-27 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Thu, 27 Sep 2007 22:15:25 +0000 (22:15 +0000)]
2007-09-27  Matthew Allum  <mallum@openedhand.com>

        Merge from stable.

        * clutter/clutter-behaviour-path.c: (path_alpha_to_position)
        Fix uninitialized variable (#480, Gwenole Beauchesne)

16 years ago2007-09-27 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Thu, 27 Sep 2007 21:38:38 +0000 (21:38 +0000)]
2007-09-27  Matthew Allum  <mallum@openedhand.com>

        * clutter/clutter-event.c:
        * clutter/clutter-event.h:
        * clutter/clutter-main.c:
        Further event tweaks;
        - Ref the event actor source
        - Protect against off stage events (button releases)
        - Move more into ClutterEventAny
        - Add a click count to button event (as yet unused)
        - Minor cleanups

        * clutter/clutter-actor.c:
        Make scale x/y a property.

        * clutter/clutter-private.h:
        Remove _clutter_actor_apply_modelview*

        * clutter/eglx/clutter-backend-egl.c:
        Warning cleanup

        * clutter/eglx/clutter-stage-egl.c:
        * clutter/glx/clutter-stage-glx.c:
        * clutter/sdl/clutter-stage-sdl.c:
        Avoid setting viewport directly, but set sync flag.

        * clutter/pango/pangoclutter-render.c: (draw_glyph):
        Minor cleanups.

        * clutter/Makefile.am:
        * tests/Makefile.am:
        * tests/test-score.c
        * clutter/clutter.h:
        * clutter/clutter-score.h:
        * clutter/clutter-score.c:
        Add very initial (broken) ClutterScore implementation.

16 years ago2007-09-25 Ross Burton <ross@openedhand.com>
Ross Burton [Tue, 25 Sep 2007 13:22:24 +0000 (13:22 +0000)]
2007-09-25  Ross Burton  <ross@openedhand.com>

Merge from stable.

* clutter/clutter-group.c:
Optimise sort_z_order.

16 years ago2007-09-17 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Mon, 17 Sep 2007 11:34:03 +0000 (11:34 +0000)]
2007-09-17  Emmanuele Bassi  <ebassi@openedhand.com>

Merge from stable

* clutter/eglnative/clutter-event-egl.c:
Flag every device click after the first as motion events
instead of button presses. (#505, Shreyas Srinivasan)

16 years ago2007-09-10 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Mon, 10 Sep 2007 09:16:33 +0000 (09:16 +0000)]
2007-09-10  Matthew Allum  <mallum@openedhand.com>

        Port from stable branch.

        * clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch):
        Only declare tsevent if we have tslib (#498, Robert Bragg)

16 years ago2007-09-06 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Thu, 6 Sep 2007 10:37:24 +0000 (10:37 +0000)]
2007-09-06  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-stage.c: Remove stray include <gdk-pixbuf-xlib.h>
in ClutterStage: the code requesting it was moved in the backends.

16 years agoFix the ClutterRectangle border drawing
Emmanuele Bassi [Fri, 31 Aug 2007 11:58:20 +0000 (11:58 +0000)]
Fix the ClutterRectangle border drawing

Apply a patch from Neil Roberts (bug 488) for fixing the drawing of the
rectangle border, by not overdrawing the rectangle on the border and by
doing the correct check on the border colour.

16 years ago2007-08-29 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Wed, 29 Aug 2007 22:32:47 +0000 (22:32 +0000)]
2007-08-29  Matthew Allum  <mallum@openedhand.com>

        * clutter/clutter-effect.c: (clutter_effect_template_set_property):
        Add missing break statement. Whoops.

16 years ago2007-08-29 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Wed, 29 Aug 2007 19:11:18 +0000 (19:11 +0000)]
2007-08-29  Matthew Allum  <mallum@openedhand.com>

        * clutter/clutter-main.c: (_clutter_do_pick):
        Call glFinish before reading pixels
        * clutter/eglx/clutter-stage-egl.c: (clutter_stage_egl_realize):
        Add missing read surface in making context current.
        Above fixes via Kate Alhola.

        * clutter/glx/clutter-glx.h:
        Add missing filter funcs so there actually exported

16 years ago2007-08-24 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Fri, 24 Aug 2007 15:12:52 +0000 (15:12 +0000)]
2007-08-24  Matthew Allum  <mallum@openedhand.com>

        * clutter/clutter-actor.c:
        * clutter/clutter-event.h:
        * clutter/clutter-main.c:
        * clutter/clutter-stage.c:
        * clutter/clutter-stage.h:
        * clutter/glx/clutter-backend-glx.c:
        * clutter/glx/clutter-backend-glx.h:
        * clutter/glx/clutter-event-glx.c:
        * clutter/glx/clutter-stage-glx.c:
        * clutter/glx/clutter-stage-glx.h:
        Add initial support for stage state events.
        Fix fullscreening for an already mapped stage.

        * tests/test-events.c:
        Print out info from the above. Blue button now toggles
        fullscreen.

        * clutter/clutter-effect.c:
        * clutter/clutter-effect.h:
        Add a setting for templates to ref or clone underlying
        timelines. (As to improve sync issues like those in foofone)

        * tests/test-timeline.c:
        Also add completed signals.

        * clutter/cogl/gles/cogl.c: (cogl_texture_image_2d):
        * configure.ac:
        Forward port from stable branch. RGB Image fixes gles
        and check for lower case libgles_cm.

16 years agoFixed rotation around x axis (bug 486).
Tomas Frydrych [Fri, 24 Aug 2007 06:19:06 +0000 (06:19 +0000)]
Fixed rotation around x axis (bug 486).
* clutter/clutter-actor.c:
(_clutter_actor_apply_modelview_transform):

16 years ago2007-08-23 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Thu, 23 Aug 2007 12:47:25 +0000 (12:47 +0000)]
2007-08-23  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/clutter-private.h:
* clutter/clutter-event.c: Revert the event queue ordering
commit.

* clutter/eglx/clutter-event-egl.c:
* clutter/glx/clutter-event-glx.c:
* clutter/sdl/clutter-event-sdl.c: Update backends.

16 years agoFixed CCW rotation in rotate behaviour (bug 483); fixed overall path length calculati...
Tomas Frydrych [Wed, 22 Aug 2007 10:33:26 +0000 (10:33 +0000)]
Fixed CCW rotation in rotate behaviour (bug 483); fixed overall path length calculation for angles > 360 in rotate and ellipse.

16 years agoUpdate ChangeLog for SVN users
Emmanuele Bassi [Wed, 22 Aug 2007 10:12:20 +0000 (10:12 +0000)]
Update ChangeLog for SVN users

16 years agoRemove the threads locking in the dispatchers destruction notification
Emmanuele Bassi [Wed, 22 Aug 2007 10:12:15 +0000 (10:12 +0000)]
Remove the threads locking in the dispatchers destruction notification

The GLib main loop allows destroying sources while still in the dispatcher
function, so whether the Clutter threading lock is being held or not is
actually unpredictable by the library. This might be fixed in GLib, so we
just do what GTK+ does for the time being and wait.

See bug: http://bugzilla.gnome.org/show_bug.cgi?id=459555

16 years agoUpdate ChangeLog for SVN users
Emmanuele Bassi [Tue, 21 Aug 2007 15:48:57 +0000 (15:48 +0000)]
Update ChangeLog for SVN users

16 years agoReturn event coordinates for 3BUTTON_PRESS events
Emmanuele Bassi [Tue, 21 Aug 2007 15:48:51 +0000 (15:48 +0000)]
Return event coordinates for 3BUTTON_PRESS events

The switch() in clutter_event_get_coords() wasn't returning the coordinates
for the 3 button press events, thus those events never reached the actors.

16 years agoCorrectly initialise the multiple clicks variables
Emmanuele Bassi [Tue, 21 Aug 2007 15:48:44 +0000 (15:48 +0000)]
Correctly initialise the multiple clicks variables

16 years agoCheck for pending events from the tail of the events queue
Emmanuele Bassi [Tue, 21 Aug 2007 15:48:37 +0000 (15:48 +0000)]
Check for pending events from the tail of the events queue

When checking for pending events we need to look from the tail of the
list backwards.

16 years agoFix previous ChangeLog message
Emmanuele Bassi [Tue, 21 Aug 2007 15:48:30 +0000 (15:48 +0000)]
Fix previous ChangeLog message

16 years agoUpdate ChangeLog for SVN users
Emmanuele Bassi [Tue, 21 Aug 2007 15:48:24 +0000 (15:48 +0000)]
Update ChangeLog for SVN users

16 years agoPreserve ordering when placing synthetic events in the queue
Emmanuele Bassi [Tue, 21 Aug 2007 15:48:13 +0000 (15:48 +0000)]
Preserve ordering when placing synthetic events in the queue

When we are in the the event translation function sometimes we need to
synthesise events: the double and triple click events are synthetic events
placed on the queue after a sequence of events has been received, for
instance.

Until now, the events were placed on the queue after the translation from
the native events was successful. This led to a loss of ordering because
we put the synthesised event on the queue before the last event that
triggered it.

This patch puts the events on the queue before translating them, with a
"pending" flag set; if the translation sequence is completed then the flag
is removed - otherwise the event is removed from the queue altogether. The
queue manipulation functions have been modified to ignore the "pending"
flag when looking for events.

This patch also adds a private structure overlayed on the ClutterEvent
struct so that we can extend the events with private data without exposing
it in the public API.

16 years agoUpdate ChangeLog for SVN users
Emmanuele Bassi [Tue, 21 Aug 2007 15:48:03 +0000 (15:48 +0000)]
Update ChangeLog for SVN users

16 years agoDocument ClutterStage properties
Emmanuele Bassi [Tue, 21 Aug 2007 15:47:51 +0000 (15:47 +0000)]
Document ClutterStage properties

Add missing documentation for the ClutterStage properties and enable the
properties and signals in the gtk-doc API reference.

16 years agoFixes for 64-bit platforms; use of SSE builtin when available (patches by Gwenole...
Tomas Frydrych [Tue, 21 Aug 2007 09:25:09 +0000 (09:25 +0000)]
Fixes for 64-bit platforms; use of SSE builtin when available (patches by Gwenole Beauchesne).

16 years ago2007-08-20 Emmanuele Bassi <ebassi@openedhand.com>
Emmanuele Bassi [Mon, 20 Aug 2007 20:16:15 +0000 (20:16 +0000)]
2007-08-20  Emmanuele Bassi  <ebassi@openedhand.com>

* clutter/Makefile.am:
* clutter/clutter-enum-types.h.in:
* clutter/clutter-enum-types.c.in: Use template files for
glib-mkenums; this makes the Makefile template a bit more
clean and the enum types generation more customisable (e.g.
when GLib 2.14 has been released, we can use g_once_init_enter()
and g_once_init_leave() to have thread-safe GType functions
for the enum types as well).

16 years agoRelax the CLUTTER_CHECK_VERSION() macro check
Emmanuele Bassi [Mon, 20 Aug 2007 11:54:28 +0000 (11:54 +0000)]
Relax the CLUTTER_CHECK_VERSION() macro check

The macro should check for a micro version greater or equal to the specified
micro version parameter. Fixes bug 477, patch by Neil Roberts.

16 years agoFix compiler warnings in test-timeline
Emmanuele Bassi [Mon, 20 Aug 2007 11:22:11 +0000 (11:22 +0000)]
Fix compiler warnings in test-timeline

16 years agoMake gtk-doc produce the ClutterTimeline signals
Emmanuele Bassi [Mon, 20 Aug 2007 09:17:23 +0000 (09:17 +0000)]
Make gtk-doc produce the ClutterTimeline signals

16 years agoUpdate ChangeLog for SVN users
Emmanuele Bassi [Sun, 19 Aug 2007 19:09:26 +0000 (19:09 +0000)]
Update ChangeLog for SVN users

16 years agoVarious fixes to ClutterTimeline
Emmanuele Bassi [Sun, 19 Aug 2007 19:09:20 +0000 (19:09 +0000)]
Various fixes to ClutterTimeline

Emit the ClutterTimeline::new-frame signal only if we arrive there with an
active timeout source. Also, make sure to take a reference on the timeout
when emitting signals.

If the timeline is advancing of zero frames, bump it up to one frame. (bug
471, Rob Bradford)

If the user called clutter_timeline_pause() while in the ::new-frame handler
the timeout is removed and the timeline is reset, while the correct behaviour
should be to simply return. (#371, Johan Bilien)

If we skipped the last frames and we ended up over the frame number, emit
the ::new-frame signal with the last frame before emitting the ::completed
signal.

Remove the call to clutter_timeline_stop() when reaching the end of the
timeline: it was used just to remove the timeout source and it emitted the
::paused signal, which doesn't make any sense. Also rewind the timeline
after emitting the ::completed signal, so that calling get_current_frame()
in the ::completed signal handlers still work.

16 years agoNo need to unref the ClutterAlpha in the effect closure
Emmanuele Bassi [Sun, 19 Aug 2007 17:06:54 +0000 (17:06 +0000)]
No need to unref the ClutterAlpha in the effect closure

The ownership of the ClutterAlpha object is transferred to the ClutterBehaviour
used by the effect; we just need to unref the behaviour to make the alpha
object disappear.

16 years agoProtect the version components
Emmanuele Bassi [Sun, 19 Aug 2007 17:06:41 +0000 (17:06 +0000)]
Protect the version components

16 years agoReplace the note in clutter_do_event()
Emmanuele Bassi [Sun, 19 Aug 2007 17:06:37 +0000 (17:06 +0000)]
Replace the note in clutter_do_event()

Use an EVENT note and not a SCHEDULER one.

16 years agoUse g_list_insert_sorted() instead of our custom function
Emmanuele Bassi [Sun, 19 Aug 2007 17:06:22 +0000 (17:06 +0000)]
Use g_list_insert_sorted() instead of our custom function

The clutter_timeout_pool_insert_sorted() function caused an inversion of
the timeout sources in the pool; this led to a wrong behaviour in the
execution of the timeout functions. See bug 471.

This patch drops clutter_timeout_pool_insert_sorted() in favour of the
standard g_list_insert_sorted(), which produces identical behaviours with
and without the pool.

A new test, written by Rob Bradford, has been added to the regression test
suite in order to identify sorting issues with the timeout pools.

16 years ago2007-08-19 Matthew Allum <mallum@openedhand.com>
Matthew Allum [Sun, 19 Aug 2007 00:03:01 +0000 (00:03 +0000)]
2007-08-19  Matthew Allum  <mallum@openedhand.com>

        * clutter/eglx/clutter-event-egl.c: (clutter_event_dispatch):
        Fix clutter_thread typo (Kate Alhola)

16 years agoUpdate ChangeLog for SVN users
Emmanuele Bassi [Sat, 18 Aug 2007 12:39:40 +0000 (12:39 +0000)]
Update ChangeLog for SVN users

16 years agoFix clutter_behaviour_rotate_get_center()
Emmanuele Bassi [Sat, 18 Aug 2007 12:39:36 +0000 (12:39 +0000)]
Fix clutter_behaviour_rotate_get_center()

Apply a patch from Neil Roberts (bug 468) that makes the get_center() method
of ClutterBehaviourRotate return the correct tuple of coordinates.

Also, fix some coding style issues and make sure to freeze and thaw the
GObject notification queue when emitting the notify signal on multiple
properties in one method.

16 years agoUpdate the Since version in the API that has been backported
Emmanuele Bassi [Sat, 18 Aug 2007 12:39:30 +0000 (12:39 +0000)]
Update the Since version in the API that has been backported

Some of the API landed in trunk has been backported to the stable branch
after testing. This patch updates the Since: tag in the API reference to
reflect the time when the API was first added to a release.

16 years agoUpdate ChangeLog for SVN users
Emmanuele Bassi [Wed, 15 Aug 2007 19:50:36 +0000 (19:50 +0000)]
Update ChangeLog for SVN users

16 years agoAdd checks on the reactive accessors
Emmanuele Bassi [Wed, 15 Aug 2007 19:50:31 +0000 (19:50 +0000)]
Add checks on the reactive accessors

Check for the parameter in the various "reactive" flag accessors.

16 years agoUpdate ChangeLogs for SVN users
Emmanuele Bassi [Wed, 15 Aug 2007 19:50:24 +0000 (19:50 +0000)]
Update ChangeLogs for SVN users