profile/ivi/clutter.git
12 years agolayout-manager: Add a new animation API
Bastian Winkler [Thu, 24 May 2012 13:45:07 +0000 (15:45 +0200)]
layout-manager: Add a new animation API

It's similar to to the implicit animation API of ClutterActor and
compatible to deprecated API of ClutterBoxLayout and
ClutterTableLayout.

It adds :use-animations, :easing-mode, :easing-duration and
:easing-delay properties to control animations when allocation of a
child has changed. Layout manager implementers should call

use_animations = clutter_layout_manager_get_easing_state (manager,
                                                          &mode,
                                                          &duration,
                                                          &delay);

from the allocate() virtual function to access these values.

https://bugzilla.gnome.org/show_bug.cgi?id=676827

12 years agolayout-manager: Add a private struct to hold future properties
Bastian Winkler [Thu, 24 May 2012 12:26:57 +0000 (14:26 +0200)]
layout-manager: Add a private struct to hold future properties

In order to allow the abstract ClutterLayoutManager class to have own
GObject properties we'll need a private structure.

https://bugzilla.gnome.org/show_bug.cgi?id=676827

12 years agobuild: Move test-unit-names.h out of the dist
Emmanuele Bassi [Mon, 28 May 2012 14:33:01 +0000 (15:33 +0100)]
build: Move test-unit-names.h out of the dist

Let it be generated at build time, as it should.

https://bugzilla.gnome.org/show_bug.cgi?id=674365

12 years agopaint-volume: Use the correct coordinate for axis alignment
Emmanuele Bassi [Mon, 28 May 2012 13:07:04 +0000 (14:07 +0100)]
paint-volume: Use the correct coordinate for axis alignment

The z coordinate of the origin should be checked against the same
coordinate of the vertex behind it. Given that most actors are flat
surfaces, this check should always succeed.

https://bugzilla.gnome.org/show_bug.cgi?id=675396

12 years agotext: Enable implicit color animations
Bastian Winkler [Mon, 28 May 2012 12:02:25 +0000 (14:02 +0200)]
text: Enable implicit color animations

Implement the ClutterAnimatable interface to enable implicit animations
for :color, :cursor-color, :selected-text-color and :selection-color.

https://bugzilla.gnome.org/show_bug.cgi?id=676963

12 years agoevent: Add convenience functions for Shift and Ctrl modifiers
Emmanuele Bassi [Fri, 25 May 2012 10:33:57 +0000 (11:33 +0100)]
event: Add convenience functions for Shift and Ctrl modifiers

Instead of going through clutter_event_get_state() and checking if the
modifier mask is set, we can provide simple convenience functions to do
it for us.

12 years agoVisual C++ support: Copy clutter-gdk.h as well
Chun-wei Fan [Thu, 24 May 2012 15:34:36 +0000 (23:34 +0800)]
Visual C++ support: Copy clutter-gdk.h as well

... when the GDK backend is also built

12 years agoVisual C++ 2010: Fix x64 Release_GDK configs
Chun-wei Fan [Thu, 24 May 2012 14:27:57 +0000 (22:27 +0800)]
Visual C++ 2010: Fix x64 Release_GDK configs

12 years agoexamples: Update drag and drop action code
Emmanuele Bassi [Thu, 24 May 2012 11:08:58 +0000 (12:08 +0100)]
examples: Update drag and drop action code

Use modern API and show idiomatic behaviour.

12 years agoUpdate French translation
Alexandre Franke [Wed, 23 May 2012 15:46:15 +0000 (17:46 +0200)]
Update French translation

12 years agoflow-layout: Check for all positive values
Mike Ruprecht [Tue, 22 May 2012 13:25:19 +0000 (14:25 +0100)]
flow-layout: Check for all positive values

When creating a FlowLayout container, setting a specific size on it, and
adding a child to it, as per the attached testcase, it crashes. The line
on the backtrace doesn't really make sense, but from looking over it, it
appears that it's probably because priv->line_natural is NULL. The
attached patch makes it so in this case, priv->line_natural is
allocated.

https://bugzilla.gnome.org/show_bug.cgi?id=676068

Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
12 years agomodules: Use 0.10 branch for GStreamer packages
Emmanuele Bassi [Tue, 22 May 2012 12:58:40 +0000 (13:58 +0100)]
modules: Use 0.10 branch for GStreamer packages

12 years agovs9/clutter.sln: Fix missing build item
Chun-wei Fan [Mon, 21 May 2012 17:50:12 +0000 (01:50 +0800)]
vs9/clutter.sln: Fix missing build item

12 years agoBug 676150 GDK: Fix build on Windows
Chun-wei Fan [Wed, 16 May 2012 09:36:38 +0000 (17:36 +0800)]
Bug 676150 GDK: Fix build on Windows

-Don't include unistd.h and stdint.h unconditionally as not all Windows
 compilers have them around.
-Only include cogl/cogl-xlib.h when it is really supported by Cogl and GDK.
-sys/ioctl.h is not available on Windows (MinGW/MSVC).
-Correct the call to cogl_renderer_set_winsys_id:
 (backend_cogl->cogl_renderer, COGL_WINSYS_ID_WGL) ->
 (renderer, COGL_WINSYS_ID_WGL)

12 years agoactor: Add a custom scriptable "margin" property
Bastian Winkler [Sat, 19 May 2012 12:37:08 +0000 (14:37 +0200)]
actor: Add a custom scriptable "margin" property

The property uses an array with the following CSS style syntax

 [ top, right, bottom, left ] or
 [ top, left/right, bottom ] or
 [ top/bottom, left/right ] or
 [ top/right/bottom/left ]

https://bugzilla.gnome.org/show_bug.cgi?id=676367

12 years agoClutterText: Cannot pass NULL string to clutter_text_set_text()
Dominique Bureau [Fri, 11 May 2012 17:26:50 +0000 (13:26 -0400)]
ClutterText: Cannot pass NULL string to clutter_text_set_text()

Passing a NULL buffer to clutter_text_set_text() does not behave the same
way as passing an empty string "" (as specified in the documentation).
This was working as expected previously, but somehow the behaviour changed
at some point and created 2 new issues:
- Passing a NULL pointer will not reset the string
- If the ClutterText is editable, it will segfault in strcmp

Validations have been added to prevent this.

https://bugzilla.gnome.org/show_bug.cgi?id=675890

12 years agoClutterDropAction: Avoid accessing priv->stage is not yet resolved.
Tristan Van Berkom [Thu, 17 May 2012 22:08:57 +0000 (18:08 -0400)]
ClutterDropAction: Avoid accessing priv->stage is not yet resolved.

This fixes drop_action_unregister() to not call g_object_get_data()
on priv->stage if not yet resolved. This can happen if the action's
actor was destroyed before ever being mapped.

12 years agoscroll-actor: Check for point equality in the internal setter
Emmanuele Bassi [Fri, 18 May 2012 17:00:30 +0000 (18:00 +0100)]
scroll-actor: Check for point equality in the internal setter

The public API should just accept any valid value; it's up to the
internal setter to check if we're getting the same value as the one
currently set.

12 years agoscroll-actor: Fix ->transition not being reset
Bastien Nocera [Fri, 18 May 2012 16:34:18 +0000 (17:34 +0100)]
scroll-actor: Fix ->transition not being reset

When the transition was removed from the scroll-actor manually,
to cancel a not-finished animation, the transition struct member
wasn't reset to NULL.

This fixes this problem, and removes the need for the struct member
to be reset manually when animation has completed.

https://bugzilla.gnome.org/show_bug.cgi?id=676334

12 years agoMove scroll actor test to the examples
Emmanuele Bassi [Wed, 16 May 2012 15:12:20 +0000 (16:12 +0100)]
Move scroll actor test to the examples

Nothing specific to test, and the code is idiomatic enough to be used as
an example.

12 years agotable-layout: Remove unused animation helpers
Bastian Winkler [Wed, 16 May 2012 11:57:44 +0000 (13:57 +0200)]
table-layout: Remove unused animation helpers

They aren't used since ClutterTableLayout switched to the implicit
animations API.

https://bugzilla.gnome.org/show_bug.cgi?id=676158

12 years agoVS property sheets: Correct "install" process
Chun-wei Fan [Wed, 16 May 2012 10:58:53 +0000 (18:58 +0800)]
VS property sheets: Correct "install" process

Fix the location where clutter-win32.h is "installed".

12 years agoVisual C++ support: Fix clutter.def generation
Chun-wei Fan [Wed, 16 May 2012 10:36:51 +0000 (18:36 +0800)]
Visual C++ support: Fix clutter.def generation

I forgot about the Visual C++ 2010 files... :|

12 years agoVisual C++ support: Fix clutter.def generation
Chun-wei Fan [Wed, 16 May 2012 10:35:27 +0000 (18:35 +0800)]
Visual C++ support: Fix clutter.def generation

Some Windows-specific functions were not exported due to this problem.

12 years agoVisual C++ support: Avoid redefinition warnings
Chun-wei Fan [Wed, 16 May 2012 09:21:10 +0000 (17:21 +0800)]
Visual C++ support: Avoid redefinition warnings

CLUTTER_WINDOWING_GDK is defined in the (pre-configured) clutter-config.h,
so don't define that in the Projects again.

12 years agotext: Add missing introspection annotations
Bastian Winkler [Mon, 14 May 2012 23:44:51 +0000 (01:44 +0200)]
text: Add missing introspection annotations

Add allow-none annotations where appropriate

12 years agokeyframe-transition: Create a new interval if necessary
Bastian Winkler [Mon, 14 May 2012 14:32:53 +0000 (16:32 +0200)]
keyframe-transition: Create a new interval if necessary

When setting up the transition manually by calling

  clutter_keyframe_transition_set_key_frame (transition, n, keys);
  clutter_keyframe_transition_set_values (transition, n, values);
  clutter_keyframe_transition_set_modes (transition, n, modes);

the frame doesn't have a valid interval when calling set_keys(), so we
need to check its existence and create it if necessary.

https://bugzilla.gnome.org/show_bug.cgi?id=676031

12 years agokeyframe-transition: Documentation fixes
Bastian Winkler [Mon, 14 May 2012 14:17:34 +0000 (16:17 +0200)]
keyframe-transition: Documentation fixes

Update the documentation to use the right symbols

https://bugzilla.gnome.org/show_bug.cgi?id=676032

12 years agoscroll-actor: Paint children in pick mode
Emmanuele Bassi [Tue, 15 May 2012 14:06:20 +0000 (15:06 +0100)]
scroll-actor: Paint children in pick mode

Chaining up to the parent's implementation of pick() is not enough: we
need to paint our children explicitly because of the compatibility mode
checks we use to avoid breaking custom containers.

https://bugzilla.gnome.org/show_bug.cgi?id=676088

12 years agoscroll-actor: Implement pick()
Emmanuele Bassi [Mon, 14 May 2012 09:33:13 +0000 (10:33 +0100)]
scroll-actor: Implement pick()

We need to clip the children during picking as well as we do when
painting, to avoid reactive children outside of the visible area
receiving events.

This also allows us to refactor some common code into proper functions.

12 years agoVisual C++ support: Add support to build GDK backend
Chun-wei Fan [Mon, 14 May 2012 08:18:13 +0000 (16:18 +0800)]
Visual C++ support: Add support to build GDK backend

-Add configuration in Clutter projects to add option to build Clutter with
 the GDK3 backend in addition to the Win32 backend
-Add another preconfigured clutter-config.h.win32_GDK which contains
 backend configs for both GDK3 and Win32 windowing and input.

12 years agoexamples/canvas: Resize the canvas on allocation changes
Emmanuele Bassi [Fri, 11 May 2012 16:38:53 +0000 (17:38 +0100)]
examples/canvas: Resize the canvas on allocation changes

This should show how to make a Canvas resize whenever the actor that
uses it as content changes size. For good measure, it also shows how to
coalesce multiple allocations into one Canvas resize through a timeout
source.

12 years agobuild: Drop version check on auto*
Emmanuele Bassi [Fri, 11 May 2012 16:37:20 +0000 (17:37 +0100)]
build: Drop version check on auto*

Just use autoreconf, to avoid having to deal with changes in the version
of autotools.

If somebody has more recent autotools but the symbolic links used by
autoreconf are still pointing to an old version then they can also fix
their own installation, or get a better distribution.

12 years agomodules: Point to the correct branch of Cogl
Emmanuele Bassi [Fri, 11 May 2012 12:48:41 +0000 (13:48 +0100)]
modules: Point to the correct branch of Cogl

Clutter requires the cogl-1.10 branch of Cogl.

12 years agoactor: Include margin in explicit sizes for all cases
Emmanuele Bassi [Wed, 9 May 2012 14:03:51 +0000 (15:03 +0100)]
actor: Include margin in explicit sizes for all cases

When asking for the preferred width and height of an actor, in case
only one of either the minimum or the natural width is set, the margin
offsets should also be applied.

12 years agoPut bind-constraint back into the interactive tests
Emmanuele Bassi [Tue, 8 May 2012 09:51:14 +0000 (10:51 +0100)]
Put bind-constraint back into the interactive tests

The bind-constraint.c example still uses clutter_actor_animate(), and
it'd require some serious reworking to move it to
ClutterPropertyTransition or to implicit animations.

12 years agoscore: Add deprecation annotations to all docs
Emmanuele Bassi [Tue, 8 May 2012 15:13:26 +0000 (16:13 +0100)]
score: Add deprecation annotations to all docs

A single deprecation to the long-desc is not enough.

12 years agoscore: Fix version of the deprecation annotations
Emmanuele Bassi [Tue, 8 May 2012 15:06:59 +0000 (16:06 +0100)]
score: Fix version of the deprecation annotations

ClutterScore was deprecated in Clutter 1.8, not 1.10.

12 years agoexamples: Add an example of layout manager
Emmanuele Bassi [Fri, 4 May 2012 16:43:30 +0000 (17:43 +0100)]
examples: Add an example of layout manager

The MultiLayout shows how to write a layout manager with two policies,
and to use the easing state of a child to interpolate the allocation.

12 years agoAdd rounded corners rectangle example using Canvas
Emmanuele Bassi [Thu, 3 May 2012 12:53:29 +0000 (13:53 +0100)]
Add rounded corners rectangle example using Canvas

An old request: how to create a rectangle with rounded corners with
Clutter; we use ClutterCanvas and Cairo because we want anti-aliased
edges.

12 years agox11/device-manager-xi2: Fix assertions with touch
Bastien Nocera [Thu, 3 May 2012 16:58:12 +0000 (18:58 +0200)]
x11/device-manager-xi2: Fix assertions with touch

When getting touch events, the device manager would try
to pass an invalid device to translate_axes().

clutter_event_set_device() will only update event->touch.device
for touch events, not event->motion.device, as used.

Fixes Totem crashing on mouse motion/button press when using
a touchpad.

https://bugzilla.gnome.org/show_bug.cgi?id=675371

12 years agoevent: Fix copying touch events
Bastien Nocera [Thu, 3 May 2012 16:56:45 +0000 (18:56 +0200)]
event: Fix copying touch events

We were trying to copy motion axes instead of touch ones.

https://bugzilla.gnome.org/show_bug.cgi?id=675371

12 years agodocs: Update the configure switches in the README
Emmanuele Bassi [Thu, 3 May 2012 10:40:59 +0000 (11:40 +0100)]
docs: Update the configure switches in the README

12 years agoAnnotate deprecated get_type() functions
Emmanuele Bassi [Thu, 3 May 2012 10:35:20 +0000 (11:35 +0100)]
Annotate deprecated get_type() functions

Even if their usage is limited, it's good to consistently deprecate
functions.

12 years agocally: Disable deprecation warnings
Emmanuele Bassi [Thu, 3 May 2012 10:34:57 +0000 (11:34 +0100)]
cally: Disable deprecation warnings

For ClutterGroup and ClutterRectangle.

12 years agodocs: Disable deprecations when building the object scanner
Emmanuele Bassi [Thu, 3 May 2012 10:28:04 +0000 (11:28 +0100)]
docs: Disable deprecations when building the object scanner

We know it's going to be using deprecated symbols, since it has to
introspect all the GObject classes we expose.

12 years agodocs: Add annotation for ClutterEventSequence
Emmanuele Bassi [Thu, 3 May 2012 10:27:22 +0000 (11:27 +0100)]
docs: Add annotation for ClutterEventSequence

The last remaining undocumented symbol in the API reference according to
gtk-doc.

12 years agoClutterDropAction: Added "drop-cancel" signal.
Tristan Van Berkom [Wed, 2 May 2012 22:08:02 +0000 (18:08 -0400)]
ClutterDropAction: Added "drop-cancel" signal.

The drop-cancel signal allows the drop action to cleanup its
state if the can-drop signal is refused. This is especially
useful if the drop action (or its target actor) is managing
any drop target animations.

https://bugzilla.gnome.org/show_bug.cgi?id=675336

12 years agodocs: Move the easing modes graphs to the AnimationMode docs
Emmanuele Bassi [Wed, 2 May 2012 17:40:38 +0000 (18:40 +0100)]
docs: Move the easing modes graphs to the AnimationMode docs

12 years agodocs: Move ClutterAnimationMode's documentation
Emmanuele Bassi [Wed, 2 May 2012 17:38:20 +0000 (18:38 +0100)]
docs: Move ClutterAnimationMode's documentation

Given that ClutterAnimation is going to be deprecated, we should move
the ClutterAnimationMode enumeration to the ClutterTimeline section.

12 years agoMove the easing modes test into the examples
Emmanuele Bassi [Wed, 2 May 2012 17:37:36 +0000 (18:37 +0100)]
Move the easing modes test into the examples

It's a pretty simple, self-contained example of how to use different
easing modes, as well as the implicit animations API.

12 years agointeractive/transitions: Modernize
Emmanuele Bassi [Wed, 2 May 2012 11:45:45 +0000 (12:45 +0100)]
interactive/transitions: Modernize

Drop deprecated API.

12 years agointeractive/binding-pool: Modernize
Emmanuele Bassi [Wed, 2 May 2012 11:45:18 +0000 (12:45 +0100)]
interactive/binding-pool: Modernize

Drop deprecated API.

12 years agoMove FlowLayout test into examples
Emmanuele Bassi [Wed, 2 May 2012 11:14:45 +0000 (12:14 +0100)]
Move FlowLayout test into examples

There's nothing really test-worthy in the ClutterFlowLayout interactive
test; it can be lifted pretty much as is, and placed into the examples.

12 years agointeractive/flow-layout: Modernize code
Emmanuele Bassi [Wed, 2 May 2012 11:03:14 +0000 (12:03 +0100)]
interactive/flow-layout: Modernize code

Drop deprecated API usage.

12 years agobuild: Fix BUILD_TESTS condition check
Emmanuele Bassi [Wed, 2 May 2012 10:59:50 +0000 (11:59 +0100)]
build: Fix BUILD_TESTS condition check

12 years agobuild: Allow disabling all tests and examples
Emmanuele Bassi [Tue, 1 May 2012 17:51:19 +0000 (18:51 +0100)]
build: Allow disabling all tests and examples

This should allow nicer build automation and cross-compilation support.

The former --disable-conformance configure switch has been deprecated by
the --disable-tests one, which is more encompassing as it disables the
whole test suite.

12 years agoMove examples from tests/interactive to a new top-level
Emmanuele Bassi [Tue, 1 May 2012 17:30:10 +0000 (18:30 +0100)]
Move examples from tests/interactive to a new top-level

The example code that is meant to be XIncluded into the API reference
should not be part of the interactive test suite: it's code that it is
meant to be used as a reference implementation - whereas the interactive
test suite should be allowed to be lean and test behaviour even in nasty
ways. In short: the test suite should not be the place where we show off
idiomatic code for educational purposes.

12 years agoPost-release version bump to 1.11.3
Emmanuele Bassi [Tue, 1 May 2012 13:04:37 +0000 (14:04 +0100)]
Post-release version bump to 1.11.3

12 years agoRelease Clutter 1.11.2
Emmanuele Bassi [Tue, 1 May 2012 12:58:34 +0000 (13:58 +0100)]
Release Clutter 1.11.2

12 years agoconform/actor-graph: Add missing NULL terminator
Emmanuele Bassi [Tue, 1 May 2012 12:29:19 +0000 (13:29 +0100)]
conform/actor-graph: Add missing NULL terminator

12 years ago[l10n] Updated German translation
Christian Kirbach [Mon, 30 Apr 2012 21:20:03 +0000 (23:20 +0200)]
[l10n] Updated German translation

12 years agoAdd missing symbols
Emmanuele Bassi [Mon, 30 Apr 2012 17:34:37 +0000 (18:34 +0100)]
Add missing symbols

12 years agodocs: Replace unknown <envvar> tag with <varname>
Emmanuele Bassi [Mon, 30 Apr 2012 16:46:48 +0000 (17:46 +0100)]
docs: Replace unknown <envvar> tag with <varname>

12 years agodocs: Fix typo in the <structname> tag
Emmanuele Bassi [Mon, 30 Apr 2012 16:45:01 +0000 (17:45 +0100)]
docs: Fix typo in the <structname> tag

12 years agodocs: Annotation fixes
Emmanuele Bassi [Mon, 30 Apr 2012 16:12:12 +0000 (17:12 +0100)]
docs: Annotation fixes

The introspection scanner has become slightly more annoying, in the hope
that people start fixing their annotations. As it turns out, it was the
right move.

12 years agoUpdated Brazilian Portuguese translation
Jonh Wendell [Sat, 28 Apr 2012 13:27:05 +0000 (10:27 -0300)]
Updated Brazilian Portuguese translation

12 years agoUpdated Galician translations
Fran Diéguez [Fri, 27 Apr 2012 14:44:06 +0000 (16:44 +0200)]
Updated Galician translations

12 years agoUpdated Spanish translation
Daniel Mustieles [Fri, 27 Apr 2012 14:25:29 +0000 (16:25 +0200)]
Updated Spanish translation

12 years agoanimatable: Disable deprecation warnings
Emmanuele Bassi [Fri, 27 Apr 2012 13:21:25 +0000 (14:21 +0100)]
animatable: Disable deprecation warnings

We are using deprecated API internally.

12 years agoUpdated POTFILES.in
Piotr Drąg [Fri, 27 Apr 2012 12:58:55 +0000 (14:58 +0200)]
Updated POTFILES.in

12 years agoDisable deprecation warnings in deprecated classes
Emmanuele Bassi [Fri, 27 Apr 2012 11:38:19 +0000 (12:38 +0100)]
Disable deprecation warnings in deprecated classes

We know we're using deprecated symbols.

12 years agodocs: Mention that patches must pass the conformance tests
Emmanuele Bassi [Thu, 26 Apr 2012 13:33:53 +0000 (14:33 +0100)]
docs: Mention that patches must pass the conformance tests

People submitting patches should do a conformance test suite run, until
we have a buildbot and a way of running the conformance tests on a
headless setup.

12 years agodocs: Add missing symbols to the sections file
Emmanuele Bassi [Wed, 25 Apr 2012 16:28:05 +0000 (17:28 +0100)]
docs: Add missing symbols to the sections file

12 years agodocs: Specify scroll_to_point() coordinate space
Emmanuele Bassi [Wed, 25 Apr 2012 16:22:10 +0000 (17:22 +0100)]
docs: Specify scroll_to_point() coordinate space

12 years agoDeprecate ClutterAlpha
Emmanuele Bassi [Wed, 25 Apr 2012 16:13:29 +0000 (17:13 +0100)]
Deprecate ClutterAlpha

It's time. Now that we have clutter_actor_allocate() respecting the
easing state of an actor, and that the LayoutManager animation virtual
functions have been deprecated, we can put ClutterAlpha on the chopping
block, and be done with it, once and for all.

So long, ClutterAlpha; and thanks for all the fish.

12 years agodocs: Clean up index
Emmanuele Bassi [Wed, 25 Apr 2012 14:49:28 +0000 (15:49 +0100)]
docs: Clean up index

Move CairoTexture to the deprecated section.

12 years agodocs: Add ScrollActor to the API reference
Emmanuele Bassi [Wed, 25 Apr 2012 14:48:10 +0000 (15:48 +0100)]
docs: Add ScrollActor to the API reference

12 years agoAdd ClutterScrollActor
Emmanuele Bassi [Thu, 12 Apr 2012 14:56:53 +0000 (15:56 +0100)]
Add ClutterScrollActor

ClutterScrollActor is an actor that allows showing a portion of its
contents.

12 years agointeractive/table-layout: Enable animations
Emmanuele Bassi [Fri, 20 Apr 2012 17:23:21 +0000 (18:23 +0100)]
interactive/table-layout: Enable animations

12 years agolayout-manager: Deprecate the layout animation
Emmanuele Bassi [Fri, 20 Apr 2012 17:14:42 +0000 (18:14 +0100)]
layout-manager: Deprecate the layout animation

This semi-aborted API was broken for various reasons:

  - it strongly depended on ClutterAlpha, a class we're trying to
    deprecate;
  - it requires a lot of boilerplate and copy-and-paste code;
  - it requires a full relayout of the actor tree for something
    that ought to be automatically handled by ClutterActor.

Now that clutter_actor_allocate() handles transitions using the easing
state of the actor, we can deprecate the LayoutManager API for the 1.x
series, and remove it for the 2.x series.

12 years agotable-layout: Deprecate the animation API
Emmanuele Bassi [Fri, 20 Apr 2012 17:14:00 +0000 (18:14 +0100)]
table-layout: Deprecate the animation API

Similar to what we did for ClutterBoxLayout.

12 years agobox-layout: Deprecate the animation API
Emmanuele Bassi [Fri, 20 Apr 2012 17:11:57 +0000 (18:11 +0100)]
box-layout: Deprecate the animation API

BoxLayout will use the easing state of the children it's allocating; the
current API is re-implemented in terms of an implicit easing state
forced on each child prior to allocating it.

12 years agoactor: Make :allocation animatable
Emmanuele Bassi [Fri, 20 Apr 2012 17:06:02 +0000 (18:06 +0100)]
actor: Make :allocation animatable

Calling clutter_actor_allocate() should transition between the current
allocation and the new allocation, by using the defined implementation
of the easing state.

This means that:

  clutter_actor_save_easing_state (actor);
  clutter_actor_allocate (actor, &new_alloc, flags);
  clutter_actor_restore_easing_state (actor);

will cause "actor" to transition between the current allocation and the
desired new allocation.

The trick is to ensure that this happens without invalidating the
entire actor tree, but only the portion of the tree that has the
transitioned actor as the local root. For this reason, we just call the
allocate() implementation from within the transition frame advancement,
without invalidating flags: the actor, after all, *has* a valid
allocation for the duration of the transition.

12 years agoactor: Ignore allocation flags
Emmanuele Bassi [Mon, 23 Apr 2012 11:28:23 +0000 (12:28 +0100)]
actor: Ignore allocation flags

Allocation flags are informative, and are only meant to be used to
communicate additional information about the allocation process to
an actor.

12 years agoactor: Coalesce needs_[xy]_expand() into one method
Emmanuele Bassi [Fri, 20 Apr 2012 11:45:54 +0000 (12:45 +0100)]
actor: Coalesce needs_[xy]_expand() into one method

Use the orientation enumeration instead of a per-axis method.

12 years agobox-layout: Add the :orientation property
Emmanuele Bassi [Tue, 27 Mar 2012 16:08:59 +0000 (17:08 +0100)]
box-layout: Add the :orientation property

And deprecate the :vertical property.

An enumeration is clearer, and we can use it elsewhere in the API.

12 years agobin-layout: Deprecate BinLayout alignments
Emmanuele Bassi [Thu, 29 Mar 2012 16:27:34 +0000 (17:27 +0100)]
bin-layout: Deprecate BinLayout alignments

We should use the ClutterActor's API for this.

12 years agodocs: XInclude the bin layout example
Emmanuele Bassi [Thu, 29 Mar 2012 16:20:45 +0000 (17:20 +0100)]
docs: XInclude the bin layout example

12 years agointeractive/bin-layout: Improve the example code
Emmanuele Bassi [Thu, 29 Mar 2012 15:35:22 +0000 (16:35 +0100)]
interactive/bin-layout: Improve the example code

Use modern API; clean up the code, and document it so that it's possible
to XInclude it into the API reference.

12 years agobin-layout: Use the actor align/expand flags
Emmanuele Bassi [Thu, 29 Mar 2012 15:34:36 +0000 (16:34 +0100)]
bin-layout: Use the actor align/expand flags

If an actor is set to expand, we use the actor's horizontal and vertical
alignment values instead of the BinLayout's.

12 years agoactor: Add private get_effective_x_align() method
Emmanuele Bassi [Thu, 29 Mar 2012 15:33:53 +0000 (16:33 +0100)]
actor: Add private get_effective_x_align() method

A method to retrieve the effective horizontal alignment of the actor,
taking into consideration the text direction.

12 years agoactor: Add basic automatic expand flags
Emmanuele Bassi [Tue, 27 Mar 2012 13:53:27 +0000 (14:53 +0100)]
actor: Add basic automatic expand flags

The :x-expand and :y-expand flags on ClutterActor are used to signal
that an actor should expand horizontally and/or vertically - i.e. that
its parent's layout management policy should try to assign extra space
to the actor when allocating it.

The expand flags are automatic: when set on a leaf node in the actor
tree, they will bubble up through the parent and grandparents up to the
top level actor; during allocation, the actors with children will lazily
compute whether their children needs to expand.

12 years agoactor: Remove automatic transition init from add_transition()
Emmanuele Bassi [Thu, 19 Apr 2012 15:35:39 +0000 (16:35 +0100)]
actor: Remove automatic transition init from add_transition()

Adding an explicit transition overrides any consideration of the easing
state of an actor.

12 years agoFixes for the API reference
Emmanuele Bassi [Thu, 19 Apr 2012 15:00:23 +0000 (16:00 +0100)]
Fixes for the API reference

Typos, missing symbols, and missing documentation.

12 years agodocs: Clean up the animation section
Emmanuele Bassi [Wed, 11 Apr 2012 17:31:53 +0000 (18:31 +0100)]
docs: Clean up the animation section

12 years agoAdd deprecation annotations
Emmanuele Bassi [Wed, 11 Apr 2012 17:30:40 +0000 (18:30 +0100)]
Add deprecation annotations

12 years agoDeprecate ClutterAnimation, as well as clutter_actor_animate()
Emmanuele Bassi [Wed, 11 Apr 2012 17:18:27 +0000 (18:18 +0100)]
Deprecate ClutterAnimation, as well as clutter_actor_animate()

ClutterPropertyTransition, and the implicit animation API based on
ClutterTransition and ClutterAnimatable, are enough to replace this
whole API.

12 years agoDeprecate State and Animator
Emmanuele Bassi [Wed, 11 Apr 2012 17:00:23 +0000 (18:00 +0100)]
Deprecate State and Animator

The PropertyTransition, KeyframeTransition, and TransitionGroup classes
can effectively replace Animator and State in their common usage.

12 years agokeyframe-transition: Add direct accessors for key frames
Emmanuele Bassi [Wed, 11 Apr 2012 16:47:53 +0000 (17:47 +0100)]
keyframe-transition: Add direct accessors for key frames

This should allow modifying key frame details without requiring a full
reset of the KeyframeTransition instance.