profile/ivi/clutter.git
12 years agoactor: Background color
Emmanuele Bassi [Mon, 5 Dec 2011 08:41:51 +0000 (08:41 +0000)]
actor: Background color

Each actor should have a background color property, disabled by default.

This property allows us to cover 99% of the use cases for
ClutterRectangle, and brings us one step closer to being able to
instantiate ClutterActor directly.

12 years agoactor: Cosmetic fixes to internal add/remove child
Emmanuele Bassi [Fri, 2 Dec 2011 16:16:26 +0000 (16:16 +0000)]
actor: Cosmetic fixes to internal add/remove child

Avoid code duplication all over the place.

12 years agoconform/layout: Remove last Container.add_actor() usage
Emmanuele Bassi [Fri, 2 Dec 2011 15:38:25 +0000 (15:38 +0000)]
conform/layout: Remove last Container.add_actor() usage

Use clutter_actor_add_child(), now that Stage falls back to the default
implementation of Container provided by the Actor class.

12 years agogroup: Use the default paint() implementation
Emmanuele Bassi [Fri, 2 Dec 2011 15:36:58 +0000 (15:36 +0000)]
group: Use the default paint() implementation

ClutterActor's paint implementation is perfectly fine for ClutterGroup:
it paints the actor's children, which is exactly what ClutteGroup does.

12 years agoactor: Minor cosmetic fixes to the header
Emmanuele Bassi [Fri, 2 Dec 2011 14:41:55 +0000 (14:41 +0000)]
actor: Minor cosmetic fixes to the header

12 years agogroup: Do not override Container
Emmanuele Bassi [Fri, 2 Dec 2011 12:12:40 +0000 (12:12 +0000)]
group: Do not override Container

Let ClutterActor do all the work.

12 years agoactor: Make Actor.add_child and Container.add_actor idempotent
Emmanuele Bassi [Fri, 2 Dec 2011 11:51:15 +0000 (11:51 +0000)]
actor: Make Actor.add_child and Container.add_actor idempotent

And make sure that overriding Container and calling
clutter_actor_add_child() will result in the same sequence of operations
as the current set_parent()+queue_relayout()+signal_emit pattern.

Existing containers can continue using:

        clutter_actor_set_parent (child, CLUTTER_ACTOR (container));
        clutter_actor_queue_relayout (CLUTTER_ACTOR (container));
        g_signal_emit_by_name (container, "actor-added", child);

and newly written containers overriding Container.add() can simply call:

        clutter_actor_add_child (CLUTTER_ACTOR (container), child);

instead.

12 years agoactor: Do not leak the layout manager
Emmanuele Bassi [Tue, 29 Nov 2011 18:10:57 +0000 (18:10 +0000)]
actor: Do not leak the layout manager

12 years agobox: Drop Container interface overrides
Emmanuele Bassi [Tue, 29 Nov 2011 18:03:05 +0000 (18:03 +0000)]
box: Drop Container interface overrides

And defer as much as possible to ClutterActor's default implementation
for basically everything.

12 years agoactor: Implement Container::sort_depth_order
Emmanuele Bassi [Tue, 29 Nov 2011 18:02:20 +0000 (18:02 +0000)]
actor: Implement Container::sort_depth_order

There's no reason this vfunc should be left out.

12 years agoactor: Add child insertion methods
Emmanuele Bassi [Tue, 29 Nov 2011 17:41:33 +0000 (17:41 +0000)]
actor: Add child insertion methods

We should allow inserting children at given indices, and at given
stacking positions (relative or not to other children).

12 years agoconform: Begin a test suite for layout options
Emmanuele Bassi [Mon, 28 Nov 2011 17:42:49 +0000 (17:42 +0000)]
conform: Begin a test suite for layout options

A simple sampling check to validate that we're painting the right thing
at the right place.

12 years agoactor: Adjust the preferred size too
Emmanuele Bassi [Mon, 28 Nov 2011 15:30:52 +0000 (15:30 +0000)]
actor: Adjust the preferred size too

Don't adjust just the allocation: we need to adjust the preferred size
of the actor to account for the margin.

12 years agoactor: Maintain invariants in add_child/remove_child
Emmanuele Bassi [Fri, 25 Nov 2011 10:27:01 +0000 (10:27 +0000)]
actor: Maintain invariants in add_child/remove_child

We need to queue a relayout when removing a visible child from a visible
parent.

We also need to insert the child at the right position (depending on the
depth) so that newly added actors will be painted on top.

12 years agoactor: More cleanups to the Private data structure
Emmanuele Bassi [Thu, 24 Nov 2011 14:34:18 +0000 (14:34 +0000)]
actor: More cleanups to the Private data structure

Try to document it properly. We can also remove some things that are
properly encapsulated through functions, like the redraw clip volume.

12 years agoactor: Store the fixed sizes into LayoutInfo
Emmanuele Bassi [Thu, 24 Nov 2011 14:13:29 +0000 (14:13 +0000)]
actor: Store the fixed sizes into LayoutInfo

Remove four more floats from ClutterActorPrivate.

The fixed minimum and natural sizes should be stored inside the
ClutterLayoutInfo structure, along with the fixed position.

12 years agoactor: Update the underallocations check
Emmanuele Bassi [Thu, 24 Nov 2011 14:11:00 +0000 (14:11 +0000)]
actor: Update the underallocations check

Add a failsafe against a NULL parent, to avoid a segfault when calling
clutter_actor_allocate() on the Stage.

We also need to deal with floating point values: straight comparison is
not going to cut it.

12 years agoactor: Adjust the allocation prior to call allocate()
Emmanuele Bassi [Wed, 23 Nov 2011 18:16:29 +0000 (18:16 +0000)]
actor: Adjust the allocation prior to call allocate()

ClutterActor has various properties controlling the allocation:

  - x-align, y-align
  - margin-top, margin-bottom, margin-left, margin-right

These properties should adjust the ClutterActorBox passed from the
parent actor to its children when calling clutter_actor_allocate(),
so that the child can just allocate its children at the right origin
with the right available size.

12 years agoactor: Clean up property installation
Emmanuele Bassi [Tue, 22 Nov 2011 17:03:00 +0000 (17:03 +0000)]
actor: Clean up property installation

12 years agoactor: Add margin properties
Emmanuele Bassi [Mon, 21 Nov 2011 17:45:32 +0000 (17:45 +0000)]
actor: Add margin properties

The actor class should be able to hold the margin offsets like it does
for expand and alignment flags.

Instead of filling the private data structure with data, we should be
able to use an ancillary data structure, given that all this data is
optional and might never be set in the first place.

12 years agoactor: Add [xy]-align
Emmanuele Bassi [Mon, 21 Nov 2011 17:24:03 +0000 (17:24 +0000)]
actor: Add [xy]-align

Allow an actor to define how it should occupy the extra space given to
by its parent during the allocation.

12 years agoactor: Provide Container::raise/lower implementations
Emmanuele Bassi [Mon, 21 Nov 2011 14:53:14 +0000 (14:53 +0000)]
actor: Provide Container::raise/lower implementations

12 years agoactor: Remove is-a(Container) checks
Emmanuele Bassi [Mon, 21 Nov 2011 14:52:39 +0000 (14:52 +0000)]
actor: Remove is-a(Container) checks

All actors are now Container implementations, so there's no need to add
a type check.

12 years agoactor: Add [xy]-expand properties
Emmanuele Bassi [Sun, 20 Nov 2011 22:00:01 +0000 (22:00 +0000)]
actor: Add [xy]-expand properties

12 years agobox: Defer to ClutterActor
Emmanuele Bassi [Thu, 17 Nov 2011 17:26:15 +0000 (17:26 +0000)]
box: Defer to ClutterActor

Use the default implementation inside ClutterActor instead of our own,
wherever possible.

12 years agoactor: Default to a fixed layout manager
Emmanuele Bassi [Thu, 8 Dec 2011 11:57:19 +0000 (11:57 +0000)]
actor: Default to a fixed layout manager

In case no layout manager was set during construction, we fall back to a
FixedLayout. The FixedLayout has the property of making the fixed
positioning and sizing API, as well as the various Constraints, work
out of the box.

12 years agoactor: Add :layout-manager
Emmanuele Bassi [Thu, 17 Nov 2011 17:07:10 +0000 (17:07 +0000)]
actor: Add :layout-manager

Now that ClutterActor implements the Container contract we can actually
defer the size negotiation to a ClutterLayoutManager directly from the
default implementation of the Actor's virtual functions.

12 years agoactor: Provide a default Container implementation
Emmanuele Bassi [Thu, 17 Nov 2011 16:32:05 +0000 (16:32 +0000)]
actor: Provide a default Container implementation

We can provide most of the ClutterContainer implementation directly
within ClutterActor — basically removing the need of having the
Container interface in the first place. For backward compatibility
reasons we can keep the interface, but let Actor implement it directly.

12 years agoDo not use set_parent()/unparent() internally
Emmanuele Bassi [Thu, 17 Nov 2011 15:23:05 +0000 (15:23 +0000)]
Do not use set_parent()/unparent() internally

Use add_child()/remove_child() instead.

12 years agoactor: Provide add/remove child and get children methods
Emmanuele Bassi [Thu, 17 Nov 2011 15:03:32 +0000 (15:03 +0000)]
actor: Provide add/remove child and get children methods

Let's try and move away from the reverse implicit scene graph build API,
which we mutuated from GTK+, towards a more traditional node/child API.

The set_parent()/unparent() API is confusing, unless you know the
history; having a add_child()/remove_child() methods pair makes it more
explicit.

We can easily implement the old set_parent()/unparent() pair in terms of
the newly add_child()/remove_child() one.

12 years agoRemove use of CoglVector3
Neil Roberts [Mon, 16 Jan 2012 15:22:43 +0000 (15:22 +0000)]
Remove use of CoglVector3

Cogl has removed the CoglVector3 type in favour of directly using an
array of 3 floats.

Reviewed-by: Robert Bragg <robert@linux.intel.com>
12 years agoactor: Clean up the debug node for out-of-band transforms
Emmanuele Bassi [Fri, 13 Jan 2012 16:21:15 +0000 (16:21 +0000)]
actor: Clean up the debug node for out-of-band transforms

Enclose the check inside a #ifdef CLUTTER_ENABLE_DEBUG ... #endif, so
that we can compile it out; also, use g_string_append() instead of the
g_string_append_printf() function, given that we're just concatenating
strings.

12 years agoUpdated Galician translations
Fran Diéguez [Sat, 14 Jan 2012 23:19:35 +0000 (00:19 +0100)]
Updated Galician translations

12 years agoclutter.modules: Bump json-glib
Emmanuele Bassi [Thu, 12 Jan 2012 23:20:59 +0000 (23:20 +0000)]
clutter.modules: Bump json-glib

12 years agobackend: Remove ClutterBackend::redraw
Emmanuele Bassi [Thu, 12 Jan 2012 13:31:21 +0000 (13:31 +0000)]
backend: Remove ClutterBackend::redraw

The ::redraw virtual function was a throwback from olden times, and has
been thoroughly replaced by the equivalent vfunc on the StageWindow
interface. We can safely remove it, now, and simplify the flow of the
redraw code inside ClutterStage.

12 years agogesture-action: Protect against NULL pointers
Emmanuele Bassi [Thu, 12 Jan 2012 10:49:16 +0000 (10:49 +0000)]
gesture-action: Protect against NULL pointers

12 years agogesture-action: Use the event propagation macros
Emmanuele Bassi [Thu, 12 Jan 2012 10:49:02 +0000 (10:49 +0000)]
gesture-action: Use the event propagation macros

12 years agodocs: Add the ::destroy change in the release notes
Emmanuele Bassi [Thu, 12 Jan 2012 10:44:28 +0000 (10:44 +0000)]
docs: Add the ::destroy change in the release notes

Given that I had to fix code inside Clutter that did not check for NULL
pointers, I assume other people may experience the same issues.

12 years agotext: Use the event and source symbolic macros
Emmanuele Bassi [Thu, 12 Jan 2012 10:40:38 +0000 (10:40 +0000)]
text: Use the event and source symbolic macros

Instead of boolean values.

12 years agodrop-action: Use the event propagation macros
Emmanuele Bassi [Thu, 12 Jan 2012 10:39:59 +0000 (10:39 +0000)]
drop-action: Use the event propagation macros

12 years agodrag-action: Use the new event propagation macros
Emmanuele Bassi [Thu, 12 Jan 2012 10:34:50 +0000 (10:34 +0000)]
drag-action: Use the new event propagation macros

12 years agodeform-effect: Check against NULL pointers
Emmanuele Bassi [Thu, 12 Jan 2012 10:34:26 +0000 (10:34 +0000)]
deform-effect: Check against NULL pointers

Do not try to disconnect signal handlers from NULL pointers.

12 years agoclick-action: Use the new symbolic event propagation macros
Emmanuele Bassi [Thu, 12 Jan 2012 10:27:17 +0000 (10:27 +0000)]
click-action: Use the new symbolic event propagation macros

12 years agoclick-action: Be resilient against NULL pointers
Emmanuele Bassi [Thu, 12 Jan 2012 10:26:47 +0000 (10:26 +0000)]
click-action: Be resilient against NULL pointers

Do not try to disconnect signal handlers from NULL pointers.

12 years agobuild: Remove a bunch of useless checks
Emmanuele Bassi [Thu, 12 Jan 2012 10:17:01 +0000 (10:17 +0000)]
build: Remove a bunch of useless checks

Some pkg-config dependencies are still there from the days when Cogl
was in tree - and even then, they barely made sense.

12 years agobuild: Fix the private pkg-config requirements
Emmanuele Bassi [Thu, 12 Jan 2012 10:10:09 +0000 (10:10 +0000)]
build: Fix the private pkg-config requirements

Private pkg-config requirements are conditional.

12 years agowayland: Pull gdk-pixbuf in a private dependency
Rob Bradford [Wed, 11 Jan 2012 12:26:00 +0000 (12:26 +0000)]
wayland: Pull gdk-pixbuf in a private dependency

This means it will get tested for explicitly as well as appearing in the
Requires.private section of the pkg-config file.

12 years agobuild: Add infrastructure for inserting Requires.private into pkg-config files
Rob Bradford [Wed, 11 Jan 2012 12:23:46 +0000 (12:23 +0000)]
build: Add infrastructure for inserting Requires.private into pkg-config files

12 years agowayland: Attach cursor buffer to input device when it enters the surface
Rob Bradford [Tue, 10 Jan 2012 17:25:35 +0000 (17:25 +0000)]
wayland: Attach cursor buffer to input device when it enters the surface

The Wayland semantics mean that we must attach a buffer to the input device
when the pointer enters the surface to provide a cursor.

12 years agowayland: Load a buffer from well known location for the cursor
Rob Bradford [Tue, 10 Jan 2012 16:40:59 +0000 (16:40 +0000)]
wayland: Load a buffer from well known location for the cursor

Semantic changes to Wayland means that we cannot rely on the compositor
setting a pointer buffer for us if set it to nil. The first part of fixing
this is to create an shm buffer containing the bytes for our cursor.

The best way to do this currently is to load the cursor from the well known
location where weston instals its cursor images. The code to implemente this
was derivedlifted from the Wayland backend in GTK+.

12 years agoPrevent .po file updates on simple 'make'
Ryan Lortie [Mon, 9 Jan 2012 15:04:08 +0000 (16:04 +0100)]
Prevent .po file updates on simple 'make'

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

12 years agoUpdated Bulgarian translation
Alexander Shopov [Sun, 8 Jan 2012 12:30:48 +0000 (14:30 +0200)]
Updated Bulgarian translation

12 years agoosx: Use Lucida Grande as the default font
Emmanuele Bassi [Sat, 7 Jan 2012 10:41:25 +0000 (10:41 +0000)]
osx: Use Lucida Grande as the default font

Instead of falling back to the generic "Sans".

12 years agoactor: Change the point of emission of ::destroy
Emmanuele Bassi [Fri, 6 Jan 2012 14:04:43 +0000 (14:04 +0000)]
actor: Change the point of emission of ::destroy

Currently, we're emitting the ClutterActor::destroy at the end of the
dispose implementation - right before we chain up to the parent
implementation.

The point of emission makes the ::destroy signal handlers able to just
use the actor pointer - as the actor state will have been mostly cleared
by the time application can run. This (undocumented) behaviour severely
limits the amount of things you can do inside a ::destroy signal
handler, thus making the ::destroy signal just a weird weak reference,
instead of a proper way to break application reference cycles.

Given that this change relaxes some of the conditions, this change
should be safe - obviously, if anything happens, we'll back it out; the
conformance and interactive tests confirm that, for common patterns of
usage, this change does not break existing code.

12 years agoactor: Use g_clear_object()
Emmanuele Bassi [Fri, 6 Jan 2012 14:02:54 +0000 (14:02 +0000)]
actor: Use g_clear_object()

GLib has a nice, atomic object clearing function that allows us to drop
code looking like:

  if (priv->object != NULL)
    {
      g_object_unref (priv->object);
      priv->object = NULL;
    }

from the ::dispose implementation.

12 years agodocs: Add event propagation symbolic constants
Emmanuele Bassi [Tue, 3 Jan 2012 14:38:56 +0000 (14:38 +0000)]
docs: Add event propagation symbolic constants

12 years agoconfigure: Clean up help and configuration summary
Emmanuele Bassi [Tue, 3 Jan 2012 14:00:40 +0000 (14:00 +0000)]
configure: Clean up help and configuration summary

12 years agoMove Perspective and Fog definitions to clutter-types.h
Emmanuele Bassi [Tue, 3 Jan 2012 13:50:06 +0000 (13:50 +0000)]
Move Perspective and Fog definitions to clutter-types.h

Since we reference the types from multiple files.

12 years agodocs/cookbook: Mention the event control macros
Emmanuele Bassi [Tue, 3 Jan 2012 12:10:28 +0000 (12:10 +0000)]
docs/cookbook: Mention the event control macros

Now that we have symbolic names for event propagation values for signal
handlers, we ought to mention them in the cookbook.

12 years agoAdd symbolic constants for event propagation
Emmanuele Bassi [Tue, 20 Dec 2011 12:28:06 +0000 (12:28 +0000)]
Add symbolic constants for event propagation

I always have to think twice before returning a value from an event
signal handler, and I've been writing them for the past 10 years, so
it's conceivable that application developers that start with Clutter
will find them confusing as well.

Simple symbolic names should be easier to use.

12 years agodocs: Update the release notes
Emmanuele Bassi [Fri, 30 Dec 2011 10:34:54 +0000 (10:34 +0000)]
docs: Update the release notes

12 years agostage: Deprecate :use-fog and :fog
Emmanuele Bassi [Fri, 30 Dec 2011 10:23:15 +0000 (10:23 +0000)]
stage: Deprecate :use-fog and :fog

The depth cueing through GL fog has been broken for a long while, now.

The fog-related API in Clutter is ridiculously limited, and harks back
to simpler times; the ClutterFog structure is not enough to express all
the GL fog machinery, and required application code to connect to the
Stage's paint implementation and drop into Cogl directly.

Additionally, the fixed pipeline fog machinery in GL simply does not
work with premultiplied alpha, unless you use a shader - and in that
case it would only work for textures. Let's deprecate it, and just
don't do anything if somebody has the brilliant idea of setting the
:use-fog property to TRUE.

12 years agobox: Remove the sentinel annotation
Emmanuele Bassi [Fri, 30 Dec 2011 09:51:36 +0000 (09:51 +0000)]
box: Remove the sentinel annotation

Sadly, we need to remove the G_GNUC_NULL_TERMINATED annotation from
ClutterBox packing API; the compiler will otherwise emit a warning
for perfectly legal statements like:

  clutter_box_pack (box, child, NULL);

because of the missing sentinel.

See also: g_object_new().

12 years agodocs: Document CLUTTER_ENABLE_DIAGNOSTIC
Emmanuele Bassi [Tue, 27 Dec 2011 21:39:13 +0000 (21:39 +0000)]
docs: Document CLUTTER_ENABLE_DIAGNOSTIC

Add a note in the API reference.

12 years agoAdd diagnostic mode
Emmanuele Bassi [Tue, 20 Dec 2011 15:17:54 +0000 (15:17 +0000)]
Add diagnostic mode

GLib has a "diagnostic mode" switch that can be checked to enable debug
messages on deprecated properties and signals, as these are purely
run-time constructs, and as such cannot be caught by compiler warnings.
The diagnostic mode is toggled by a simple environment variable, and
can be used to ease porting of application code.

We can use something similar to mark deprecated virtual functions and
other run-time constructs; to avoid collisions, we should use our own
environment variable, CLUTTER_ENABLE_DIAGNOSTIC.

12 years agoUpdated Norwegian bokmål translation
Kjartan Maraas [Wed, 21 Dec 2011 21:06:54 +0000 (22:06 +0100)]
Updated Norwegian bokmål translation

12 years agoclutter-text: Fix memory leak
Jasper St. Pierre [Mon, 19 Dec 2011 04:20:04 +0000 (23:20 -0500)]
clutter-text: Fix memory leak

12 years agoUpdated Slovenian translation
Matej Urbančič [Sat, 17 Dec 2011 17:59:49 +0000 (18:59 +0100)]
Updated Slovenian translation

12 years agoVisual C++ 2008 projects update
Chun-wei Fan [Tue, 13 Dec 2011 05:07:46 +0000 (13:07 +0800)]
Visual C++ 2008 projects update

Refines things a little bit from the last Visual C++ 2008 project updates.

12 years agoUpdate Visual C++ 2010 Projects
Chun-wei Fan [Tue, 13 Dec 2011 05:05:16 +0000 (13:05 +0800)]
Update Visual C++ 2010 Projects

Disable deprecation warning messages for the accessibility, performance
and micro-bench programs.

12 years agoUpdate Visual C++ 2008 Projects
Chun-wei Fan [Tue, 13 Dec 2011 04:56:53 +0000 (12:56 +0800)]
Update Visual C++ 2008 Projects

Turn off the deprecation warnings for the accessibility, performance
and micro-bench programs.

12 years agoUpdate clutter.symbols...
Chun-wei Fan [Tue, 13 Dec 2011 04:44:27 +0000 (12:44 +0800)]
Update clutter.symbols...

...For the addition of queue_redraw_with_clip (commit f0a246cd)

12 years agowayland/surface: Use queue_redraw_with_clip()
Emmanuele Bassi [Mon, 12 Dec 2011 16:44:47 +0000 (16:44 +0000)]
wayland/surface: Use queue_redraw_with_clip()

Just like the X11 texture-pixmap actor.

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

12 years agox11/texture-pixmap: Use ClutterActor.queue_redraw_with_clip()
Emmanuele Bassi [Mon, 31 Oct 2011 11:56:23 +0000 (11:56 +0000)]
x11/texture-pixmap: Use ClutterActor.queue_redraw_with_clip()

Instead of using a PaintVolume for a 2D region, and an internal
function, use the newly added queue_redraw_with_clip() method.

This removes the last bit of internal API usage in the
ClutterX11TexturePixmap actor.

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

12 years agox11/stage: Use ClutterActor.queue_redraw_with_clip()
Emmanuele Bassi [Mon, 31 Oct 2011 11:55:35 +0000 (11:55 +0000)]
x11/stage: Use ClutterActor.queue_redraw_with_clip()

Instead of using a paint volume for a 2D region, use the newly added
queue_redraw_with_clip() method.

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

12 years agoactor: Add queue_redraw_with_clip()
Emmanuele Bassi [Mon, 31 Oct 2011 11:53:45 +0000 (11:53 +0000)]
actor: Add queue_redraw_with_clip()

Add a public version of the clipped queue redraw, using a 2D clip. This
allows implementing actors with trackable 2D clipped regions, like the
ClutterX11TexturePixmap, outside of Clutter itself.

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

12 years agoUpdated Spanish translation
Daniel Mustieles [Fri, 9 Dec 2011 17:08:48 +0000 (18:08 +0100)]
Updated Spanish translation

12 years agofixed-layout: Use a better quark name
Emmanuele Bassi [Thu, 8 Dec 2011 10:01:06 +0000 (10:01 +0000)]
fixed-layout: Use a better quark name

The "fixed-container" name is far too generic, and it may very likely
lead to collisions with application code.

12 years agobuild: Disable deprecation warnings in tests/accessibility
Emmanuele Bassi [Tue, 6 Dec 2011 17:43:13 +0000 (17:43 +0000)]
build: Disable deprecation warnings in tests/accessibility

Like we do in the other tests/ sections.

12 years agobuild: Disable deprecation warnings in tests/micro-bench
Emmanuele Bassi [Tue, 6 Dec 2011 17:56:45 +0000 (17:56 +0000)]
build: Disable deprecation warnings in tests/micro-bench

12 years agobuild: Disable deprecation warnings in tests/performance
Emmanuele Bassi [Tue, 6 Dec 2011 17:53:37 +0000 (17:53 +0000)]
build: Disable deprecation warnings in tests/performance

12 years agoUpdated Macedonian translation.
Jovan Naumovski [Thu, 8 Dec 2011 20:22:38 +0000 (21:22 +0100)]
Updated Macedonian translation.

12 years agoUpdated POTFILES.in
Piotr Drąg [Thu, 8 Dec 2011 19:54:12 +0000 (20:54 +0100)]
Updated POTFILES.in

12 years agowayland: Refine enter/leave event handling
Rob Bradford [Thu, 8 Dec 2011 17:39:15 +0000 (17:39 +0000)]
wayland: Refine enter/leave event handling

The Wayland protocol now has events represent when a pointer enters the
surface and when it leaves again.

For leaves the surface is not set in the event, for enters the surface is set.
Simply use this to determine whether to emit CLUTTER_ENTER or CLUTTER_LEAVE.

12 years agowayland: Update to latest Wayland API (wl_shell_surface transition)
Rob Bradford [Thu, 8 Dec 2011 17:32:27 +0000 (17:32 +0000)]
wayland: Update to latest Wayland API (wl_shell_surface transition)

Previously the wl_shell object held the methods that allowed a client to
request changes to the shell's state associated with a surface. These methods
have now been moved to a wl_shell_surface object.

This change allows configure events to be handled inside the stage rather than
the backend.

12 years agoAdd public CLUTTER_HAS_WAYLAND_COMPOSITOR_SUPPORT define
Robert Bragg [Tue, 6 Dec 2011 21:53:57 +0000 (21:53 +0000)]
Add public CLUTTER_HAS_WAYLAND_COMPOSITOR_SUPPORT define

When clutter has been built with Wayland compositor support then we now
expose a public CLUTTER_HAS_WAYLAND_COMPOSITOR_SUPPORT define so that
applications can #ifdef code that depends on the api that this feature
implies.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
12 years agobuild: make internal option_xkb_* symbols static
Robert Bragg [Tue, 6 Dec 2011 21:49:15 +0000 (21:49 +0000)]
build: make internal option_xkb_* symbols static

This makes the option_xkb_* symbols declared for the evdev device manager
and the wayland device manager private so we don't get symbol collisions
if both of these backends are enabled.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
12 years agoxkb-utils: Adds #ifdef guards for repeat includes
Robert Bragg [Tue, 6 Dec 2011 21:46:37 +0000 (21:46 +0000)]
xkb-utils: Adds #ifdef guards for repeat includes

This adds #ifdef/#define repeat include guards for clutter-xkb-utils.h

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
12 years agoeglnative: fix building eglnative BE with evdev support
Robert Bragg [Mon, 5 Dec 2011 14:01:30 +0000 (14:01 +0000)]
eglnative: fix building eglnative BE with evdev support

this fixes how clutter-device-manager-evdev.h is included to fix a build
problem caused by not being able to find the header.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
12 years agoevdev: fixes evdev build issues + don't ref default stage
Robert Bragg [Mon, 5 Dec 2011 13:59:12 +0000 (13:59 +0000)]
evdev: fixes evdev build issues + don't ref default stage

This updates the evdev input backend code to compile and also updates
the code to not refer to the default stage and instead check for a
stage to be associated with the input device. If no stage is currently
associated with a device generating events then the events are dropped
on the floor.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
12 years agoinput: adds internal _clutter_input_device_get_stage api
Robert Bragg [Mon, 5 Dec 2011 13:49:28 +0000 (13:49 +0000)]
input: adds internal _clutter_input_device_get_stage api

This adds internal api to be able to query the stage currently
associated with a given input device so input backends shouldn't need to
refer to the default stage.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
12 years agotests: Adds a simple wayland compositor example
Robert Bragg [Mon, 5 Dec 2011 14:05:57 +0000 (14:05 +0000)]
tests: Adds a simple wayland compositor example

This adds an extremely minimal wayland compositor to tests/interactive
to test the ClutterWaylandSurface actor. Currently this minimal
compositor doesn't support any input, it simply paints client surfaces
fixed at the top-left of the stage.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
12 years agoAdds wayland-surface actor for wayland compositors
Robert Bragg [Fri, 13 May 2011 15:54:11 +0000 (16:54 +0100)]
Adds wayland-surface actor for wayland compositors

This adds a --enable-wayland-compositor configure option which will add
support for a ClutterWaylandSurface actor which can be used to aid in
writing Wayland compositors using Clutter by providing a ClutterActor to
represent Wayland client surfaces.

Notably this configure option isn't tied into any particular backend
since conceptually the compositor support can be used in conjunction
with any clutter backend that has corresponding Cogl support.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
12 years agowayland: Updates client side wayland support
Robert Bragg [Mon, 9 May 2011 21:45:33 +0000 (22:45 +0100)]
wayland: Updates client side wayland support

This updates Wayland support in line with upstream changes to the Wayland
API and protocol.

This update means we no longer use the Cogl stub winsys so a lot of code
that had to manually interact with EGL and implement a swap_buffers
mechanism could be removed and instead we now depend on Cogl to handle
those things for us.

This update also adds an input device manager consistent with other
clutter backends.

Note: to use the client side "wayland" clutter backend you need to have
built Cogl with --enable-wayland-egl-platform. If Cogl has been built
with support for multiple winsys backends then you should run
applications with COGL_RENDERER=EGL in the environment.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
12 years agoUpdate Clutter Visual C++ 2008 Project
Chun-wei Fan [Thu, 8 Dec 2011 09:58:17 +0000 (17:58 +0800)]
Update Clutter Visual C++ 2008 Project

Made up for missed pre-build command for x64/Release.

12 years agoclutter/Makefile.am: Update gen-enums.bat generation
Chun-wei Fan [Thu, 8 Dec 2011 09:40:22 +0000 (17:40 +0800)]
clutter/Makefile.am: Update gen-enums.bat generation

It's $(srcdir)/win32/clutter-win32.h, not $(srcdir)/clutter-win32.h

Sorry!

12 years agoUpdate VS property sheets
Chun-wei Fan [Thu, 8 Dec 2011 09:39:26 +0000 (17:39 +0800)]
Update VS property sheets

Generate clutter-marshal.[ch] before the clutter-enum-types.[ch].
Strangely Visual C++ does funny things if this was done the other way
around. :|

12 years agoclutter/Makefile.am-Create batch to gen enums (VS Support)
Chun-wei Fan [Thu, 8 Dec 2011 09:04:46 +0000 (17:04 +0800)]
clutter/Makefile.am-Create batch to gen enums (VS Support)

Generate a .bat file to generate the clutter-enum-types.[ch] for use
during the Visual C++ build process, which will greatly simplify the
maintenanace of the VS build files as public headers are added or removed
during the development process.

12 years agoUpdate VS property sheets
Chun-wei Fan [Thu, 8 Dec 2011 09:02:17 +0000 (17:02 +0800)]
Update VS property sheets

Use a pregenerated .bat file to generate the clutter-enum-types.[ch], which
will greatly simplify the maintenanace of the VS build files as public
headers are added or removed.

12 years agoconform/Makefile.am: Update Win32 test .bat name
Chun-wei Fan [Wed, 7 Dec 2011 10:14:17 +0000 (18:14 +0800)]
conform/Makefile.am: Update Win32 test .bat name

Rename to test-conformance-clutter.bat to make the file name clearer to
users