profile/ivi/clutter.git
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

12 years agobackend: Fix em computation for non-absolute fonts
Emmanuele Bassi [Mon, 5 Dec 2011 11:43:48 +0000 (11:43 +0000)]
backend: Fix em computation for non-absolute fonts

If a font description is not set to have an absolute size then we were
using the wrong transformation for points to device units.

12 years agobackend: Return the correct default resolution
Emmanuele Bassi [Mon, 5 Dec 2011 11:42:49 +0000 (11:42 +0000)]
backend: Return the correct default resolution

If ClutterSettings:font-dpi is set to -1 then the default resolution
should be returned by ClutterBackend — i.e. 96.0.

12 years agoFix Brazilian Portuguese translation
Bastien Nocera [Thu, 1 Dec 2011 18:29:58 +0000 (19:29 +0100)]
Fix Brazilian Portuguese translation

Once you add the missing translator comments, it makes a lot
more sense...

12 years agomain: Fix keyboard event emission for non-reactive actors
Jasper St. Pierre [Sat, 26 Nov 2011 10:15:17 +0000 (05:15 -0500)]
main: Fix keyboard event emission for non-reactive actors

This is an innocent copy-paste issue that ended up breaking a few things

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

12 years agox11: Do not try to access private structures
Emmanuele Bassi [Thu, 1 Dec 2011 13:41:45 +0000 (13:41 +0000)]
x11: Do not try to access private structures

ClutterInputDeviceX11 has been made private, so we cannot access it from
outside of clutter-input-device-core-x11.c. We should have simple
accessors for the min/max keycode, which is the only detail that we use.

12 years agoCurrently Clutter only prints out a warning message in case some shader effects fail...
Manuel Osdoba [Sun, 13 Nov 2011 20:49:23 +0000 (21:49 +0100)]
Currently Clutter only prints out a warning message in case some shader effects fail to compile

Clutter-WARNING **: Unable to compile the GLSL
shader: Fragment shader failed to compile with the following errors:

The attached patch (against current git) should print out more
information what makes it easier to answer user feedback.

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

12 years agopath: Fix introspection annotations
Bastian Winkler [Fri, 18 Nov 2011 14:18:28 +0000 (15:18 +0100)]
path: Fix introspection annotations

Add out annotations for clutter_path_get_node() and
clutter_path_get_position()

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

12 years agodocs: Fix up the state.set_key() comment
Emmanuele Bassi [Thu, 1 Dec 2011 10:39:11 +0000 (10:39 +0000)]
docs: Fix up the state.set_key() comment

12 years agoAdds (allow-none) as source_target for clutter_state_set_key
Jeremy Moles [Thu, 1 Dec 2011 10:36:38 +0000 (10:36 +0000)]
Adds (allow-none) as source_target for clutter_state_set_key

While working through the Python3/pygobject bindings, I came across a missing
(allow-none) in clutter_state_set_key(). This allows the API to specify to None
as the source_target.

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

12 years agoeffects: Use effect_queue_repaint instead of actor_queue_redraw
Neil Roberts [Mon, 28 Nov 2011 14:19:28 +0000 (14:19 +0000)]
effects: Use effect_queue_repaint instead of actor_queue_redraw

The builtin effects ClutterColorizeEffect, ClutterDesaturateEffect and
ClutterShaderEffect all have properties which only affect the
rendering of the final texture not the contents of it. When these
properties are updated we should queue a repaint of the effect not
the actor so that we don't waste time repainting the contents of the
offscreen buffer.

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

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
12 years agoFix building with profiling enabled
Neil Roberts [Mon, 28 Nov 2011 16:27:57 +0000 (16:27 +0000)]
Fix building with profiling enabled

There was an #ifdef'd section of code for profiling that was using the
wrong variable name so it would not build.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
12 years agooffscreen-effect: Track the size of the actor separately
Neil Roberts [Mon, 28 Nov 2011 13:08:57 +0000 (13:08 +0000)]
offscreen-effect: Track the size of the actor separately

Previously the offscreen effect was keeping track of the size of the
texture so that it could detect when a different size is requested and
create a new texture. However this breaks if a subclass overrides
create_texture to make the texture bigger because in that case the
size of the texture will always be different from the calculated size
of the actor. This patch makes it also track the size of the fbo that
was requested before being passed through create_texture() and it
instead uses that to detect when a new FBO is needed.

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

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
12 years agoconform: Add markers parsing to the timeline unit
Emmanuele Bassi [Sun, 27 Nov 2011 12:18:49 +0000 (12:18 +0000)]
conform: Add markers parsing to the timeline unit

We should check that the newly added custom parser for timeline
markers is working as intended.

12 years agotimeline: Add custom parser for "markers"
Emmanuele Bassi [Sun, 27 Nov 2011 12:16:32 +0000 (12:16 +0000)]
timeline: Add custom parser for "markers"

It should be possible to define markers in ClutterScript when
describing a ClutterTimeline.

The syntax is a trivial:

  "markers" : [
    { "name", <marker-name>, "time" : <msecs> }
  ]

While at it, we should document it inside the API reference, as well
as fleshing out the ClutterTimeline description.

12 years agoUpdated Slovenian translation
Matej Urbančič [Fri, 25 Nov 2011 20:21:46 +0000 (21:21 +0100)]
Updated Slovenian translation

12 years agoscript: Don't skip introspection for connect_signals_full()
Bastian Winkler [Thu, 24 Nov 2011 19:14:05 +0000 (20:14 +0100)]
script: Don't skip introspection for connect_signals_full()

To allow language bindings to properly override Script.connect_signals()
they'll need access access to Script.connect_signals_full().

Thanks to Jeremy Moles for reporting.

12 years agopc: Fix unexpanded variables
Emmanuele Bassi [Wed, 23 Nov 2011 17:29:23 +0000 (17:29 +0000)]
pc: Fix unexpanded variables

PkgConfig doesn't like those.

12 years agoUpdated Romanian translation
Lucian Adrian Grijincu [Tue, 22 Nov 2011 18:25:02 +0000 (20:25 +0200)]
Updated Romanian translation

12 years agoPost-release version bump to 1.9.3
Emmanuele Bassi [Tue, 22 Nov 2011 14:08:36 +0000 (14:08 +0000)]
Post-release version bump to 1.9.3

12 years agoRelease Clutter 1.9.2 (snapshot)
Emmanuele Bassi [Tue, 22 Nov 2011 11:59:33 +0000 (11:59 +0000)]
Release Clutter 1.9.2 (snapshot)

12 years agobuild: Fix distcheck
Emmanuele Bassi [Tue, 22 Nov 2011 12:11:06 +0000 (12:11 +0000)]
build: Fix distcheck

12 years agoUpdate NEWS file
Emmanuele Bassi [Tue, 22 Nov 2011 01:20:48 +0000 (01:20 +0000)]
Update NEWS file

12 years agoconform: Bail out GLSL-based tests
Emmanuele Bassi [Tue, 22 Nov 2011 01:00:58 +0000 (01:00 +0000)]
conform: Bail out GLSL-based tests

If we don't have GLSL support on the platform.

12 years agodocs: Fixes for the API reference
Emmanuele Bassi [Tue, 22 Nov 2011 00:29:08 +0000 (00:29 +0000)]
docs: Fixes for the API reference

12 years agoAdd missing include
Florian Müllner [Fri, 18 Nov 2011 21:04:31 +0000 (22:04 +0100)]
Add missing include

clutter-profile.h used to be included via clutter-debug.h, but no
more (8a4dc3c011) ...

12 years agodebug: Simple whitespace cleanups
Emmanuele Bassi [Fri, 18 Nov 2011 17:54:19 +0000 (17:54 +0000)]
debug: Simple whitespace cleanups

12 years agodebug: Clean up profile/debug symbols
Emmanuele Bassi [Fri, 18 Nov 2011 17:44:42 +0000 (17:44 +0000)]
debug: Clean up profile/debug symbols

Since we have a _clutter_debug_message() function compiled in
unconditionally we have no further need for the equivalent conditional
version defined in clutter-profile.[ch]: we can simply do the work in
one function.

12 years agodebug: Remove CLUTTER_GLERR
Emmanuele Bassi [Fri, 18 Nov 2011 17:32:01 +0000 (17:32 +0000)]
debug: Remove CLUTTER_GLERR

The macro hasn't been used in a long while, as Cogl had its own version
of it; and Clutter hasn't been using pure GL for some time now.

12 years agodebug: Remove CLUTTER_MARK
Emmanuele Bassi [Fri, 18 Nov 2011 17:30:39 +0000 (17:30 +0000)]
debug: Remove CLUTTER_MARK

The debug macro is seldom used, and it's a bit lame at that.

12 years agoconform/cogl-pixel-buffer: Remove unused variable
Emmanuele Bassi [Fri, 18 Nov 2011 17:23:30 +0000 (17:23 +0000)]
conform/cogl-pixel-buffer: Remove unused variable

12 years agocairo-texture: Skip ::draw emission for 0x0 surfaces
Emmanuele Bassi [Fri, 18 Nov 2011 17:22:12 +0000 (17:22 +0000)]
cairo-texture: Skip ::draw emission for 0x0 surfaces

This also avoids an assertion failure.

12 years agoFix 'make dist'
Rico Tzschichholz [Fri, 18 Nov 2011 17:08:01 +0000 (18:08 +0100)]
Fix 'make dist'

12 years agotests: Remove some trailing spaces
Rico Tzschichholz [Fri, 18 Nov 2011 16:38:45 +0000 (17:38 +0100)]
tests: Remove some trailing spaces

12 years agobuild: Clean up the VS build rules
Emmanuele Bassi [Fri, 18 Nov 2011 15:12:45 +0000 (15:12 +0000)]
build: Clean up the VS build rules

Some minor cleanups of the Visual Studio rules in the interactive and
conformance test suites.

12 years agobuild: Make sure test-unit-names.h is generated
Rico Tzschichholz [Fri, 18 Nov 2011 12:39:06 +0000 (13:39 +0100)]
build: Make sure test-unit-names.h is generated

12 years agoMerge branch 'master' into msvc-support-master
Chun-wei Fan [Thu, 17 Nov 2011 14:17:01 +0000 (22:17 +0800)]
Merge branch 'master' into msvc-support-master

12 years agodocs: Document the DeformEffect wrap-mode change
Emmanuele Bassi [Wed, 16 Nov 2011 16:42:41 +0000 (16:42 +0000)]
docs: Document the DeformEffect wrap-mode change

The change from CoglVertexBuffer to CoglPrimitive led to a change of the
default wrap-mode for the pipeline. Since using REPEAT can introduce
artifacts when sampling outside the [ 0, 1 ] texture coordinates range,
and since the default wrap mode was not documented anyway, we want to
keep the change from REPEAT to CLAMP, but it's worth adding an entry in
the release notes.

12 years agointeractive: Remove test-model
Emmanuele Bassi [Wed, 16 Nov 2011 14:50:36 +0000 (14:50 +0000)]
interactive: Remove test-model

The model API is already tested in the conformance test suite.

12 years agointeractive: Remove test-unproject
Emmanuele Bassi [Wed, 16 Nov 2011 13:59:11 +0000 (13:59 +0000)]
interactive: Remove test-unproject

The coordinate transformation code is exercised throughout the
conformance and interactive tests, so there's no need to have a specific
interactive test that doesn't do anything more complicated than calling
clutter_actor_transform_stage_point().

12 years agoMerge branch 'master' into msvc-support-master
Chun-wei Fan [Wed, 16 Nov 2011 01:15:16 +0000 (09:15 +0800)]
Merge branch 'master' into msvc-support-master

12 years agoDeprecate some more old, useless API
Emmanuele Bassi [Tue, 15 Nov 2011 17:58:25 +0000 (17:58 +0000)]
Deprecate some more old, useless API

We still ship clutter_get_show_fps() and clutter_get_debug_enabled() as
public entry points. Yet another case of missing API review prior to the
1.0 release, so really the bucket stops around my desk.

Let's deprecate these two useless functions, and reduce the API
footprint of Clutter.

12 years agoDeprecate clutter_get_timestamp()
Emmanuele Bassi [Tue, 15 Nov 2011 17:47:00 +0000 (17:47 +0000)]
Deprecate clutter_get_timestamp()

This function should have never been made public in the first place; its
output depends on a configuration option of Clutter, and it's basically
useful only for internal debugging.

12 years agoRework debug output
Emmanuele Bassi [Tue, 15 Nov 2011 17:39:49 +0000 (17:39 +0000)]
Rework debug output

Make it consistent across the various build options (with or without
profiling enabled), and add a timestamp using the monotonic clock to
every debug message.

12 years agoRemove CLUTTER_TIMESTAMP debug macro
Emmanuele Bassi [Tue, 15 Nov 2011 16:07:13 +0000 (16:07 +0000)]
Remove CLUTTER_TIMESTAMP debug macro

It's pretty much unused, and it doesn't print out really informative
messages. We should make CLUTTER_NOTE print out a decent timestamp
instead.

12 years agoRemove the GTimer used by clutter_get_timestamp()
Emmanuele Bassi [Tue, 15 Nov 2011 15:34:51 +0000 (15:34 +0000)]
Remove the GTimer used by clutter_get_timestamp()

Use g_get_monotonic_time() instead, which does the right thing.

12 years agotexture: Do not use clutter_get_timestamp()
Emmanuele Bassi [Tue, 15 Nov 2011 14:59:50 +0000 (14:59 +0000)]
texture: Do not use clutter_get_timestamp()

The clutter_get_timestamp() output depends on whether Clutter was
compiled with debugging support — it's meant to be used only by the
debugging notes, and it should not be used for anything else.

12 years agodeform-effect: Use CoglPipeline instead of setting legacy state
Neil Roberts [Tue, 8 Nov 2011 15:45:14 +0000 (15:45 +0000)]
deform-effect: Use CoglPipeline instead of setting legacy state

Instead of calling cogl_set_depth_test_enabled and
cogl_set_backface_culling_enabled ClutterDeformEffect now uses the
experimental CoglPipeline API. Those global state functions will soon
be deprecated in Cogl and they are implemented by flushing a temporary
override pipline which isn't ideal.

Using the new culling API we can also avoid having a separate buffer
of indices for the back of the texture by just changing the culling
mode to cull front baces instead of the back.

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

12 years agodeform-effect: Use CoglPrimitives instead of CoglVertexBuffers
Neil Roberts [Tue, 8 Nov 2011 11:37:27 +0000 (11:37 +0000)]
deform-effect: Use CoglPrimitives instead of CoglVertexBuffers

This changes ClutterDeformEffect to use a CoglAttributeBuffer with a
CoglPrimitive instead of the old CoglVertexBuffer. The old vertex
buffer code is now implemented in terms of the attribute buffer code
and it will eventually be deprecated. Using CoglPrimitives should be
slightly more efficient.

This also changes the struct we store the vertices to be
CoglVertexP3T2C4 instead of CoglTextureVertex. The latter is
technically not compatible with neither vertex buffers nor attribute
buffers because it contains a CoglColor and the internal members of
that are private so it is not valid to assume it contains 4 bytes and
use that as an attribute. Also it contains padding so it ends up
redundantly creating a larger buffer. CoglTextureVertex is in the
public API for the deform_vertex virtual so we still have to maintain
that. Instead of directly manipulating the array to upload, the
application is now passed a stack allocated temporary struct which
gets converted to a CoglVertexP3T2C4. This also means that we can map
the buffer as write only and still let the application read-write the
vertex.

The paint debug code to draw line strips for the deform mesh was
previously trying to set a red source material. However this wasn't
working because the material color was being overwritten by the color
attribute in the vertex buffer. This patch fixes that by creating a
seperate primitive for the lines and not adding the color
attribute. The lines code was also drawing both the front and back
indices. I don't think that entirely makes sense so I've just changed
it to draw only the front indices. Maybe painting both would make more
sense if backface culling was still enabled.

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

12 years agoVisual C++ support update
Chun-wei Fan [Tue, 15 Nov 2011 09:18:51 +0000 (17:18 +0800)]
Visual C++ support update

Add Projects to compile the performance test files.

12 years agotest-picking.c: Use G_PI rather than M_PI
Chun-wei Fan [Tue, 15 Nov 2011 08:29:35 +0000 (16:29 +0800)]
test-picking.c: Use G_PI rather than M_PI

M_PI is not universally available...

12 years agoUpdate interactive/conformance .bat names
Chun-wei Fan [Tue, 15 Nov 2011 08:19:06 +0000 (16:19 +0800)]
Update interactive/conformance .bat names

Add a -clutter suffix to avoid confustion with others, such as COGL.

12 years agoFix up VS property sheets
Chun-wei Fan [Tue, 15 Nov 2011 07:31:17 +0000 (15:31 +0800)]
Fix up VS property sheets

Should be ..\..\..\clutter\deprecated\clutter-keysyms.h, not
..\..\..\clutter\deprecated\clutter-keysyms-deprecated.h

12 years agoUpdate Visual C++ projects
Chun-wei Fan [Tue, 15 Nov 2011 07:19:09 +0000 (15:19 +0800)]
Update Visual C++ projects

Update output DLL/LIB names to be consistent with the autotools output,
due to the newl-introduced multi-backend feature (only the Win32 backend
is supported here for now, GDK3 support will be added when it stabilizes)

12 years agoMerge branch 'master' into msvc-support-master
Chun-wei Fan [Tue, 15 Nov 2011 06:20:22 +0000 (14:20 +0800)]
Merge branch 'master' into msvc-support-master

12 years agoStore the master clock pointer in the main context
Emmanuele Bassi [Mon, 14 Nov 2011 17:04:14 +0000 (17:04 +0000)]
Store the master clock pointer in the main context

Let's try and move all singletons into ClutterMainContext.

12 years agostage-manager: Store the stage manager into the main context
Emmanuele Bassi [Mon, 14 Nov 2011 15:43:20 +0000 (15:43 +0000)]
stage-manager: Store the stage manager into the main context

Use the main context to store the stage manager singleton, instead of a
static pointer inside clutter-stage-manager.c.

12 years agoMerge branch 'master' into msvc-support-master
Chun-wei Fan [Mon, 14 Nov 2011 14:57:50 +0000 (22:57 +0800)]
Merge branch 'master' into msvc-support-master

12 years agodeform-effect: do not redraw actor on invalidate
Lionel Landwerlin [Wed, 9 Nov 2011 02:04:31 +0000 (02:04 +0000)]
deform-effect: do not redraw actor on invalidate

When invalidating the deform effect, we are invalidating the vertices
shaping the deformation of an actor. Therefore, there is no need to
trigger a redraw of the associated actor, we can just repaint the
effect.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@linux.intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=663720

12 years agostage: Clean up
Emmanuele Bassi [Mon, 14 Nov 2011 11:46:02 +0000 (11:46 +0000)]
stage: Clean up

Improve the consistency of the code.

12 years agostage: Deprecate clutter_stage_queue_redraw()
Emmanuele Bassi [Mon, 14 Nov 2011 11:45:14 +0000 (11:45 +0000)]
stage: Deprecate clutter_stage_queue_redraw()

It's a wrapper around clutter_actor_queue_redraw().

12 years agoMerge branch 'deprecate-default-stage'
Emmanuele Bassi [Mon, 14 Nov 2011 11:07:54 +0000 (11:07 +0000)]
Merge branch 'deprecate-default-stage'

* deprecate-default-stage:
  evdev: do not associate device with stage
  evdev: don't even process events without a default stage
  docs: Note default stage deprecation in README
  docs: Remove clutter_stage_get_default()
  stage: Deprecate the default stage
  script: Do not use clutter_stage_get_default()
  cally/actor: Do not use the default stage as a fallback
  Try to mop up the default stage mess
  performance/*: Do not use clutter_stage_get_default()
  interactive/*: Do not use clutter_stage_get_default()
  Merge with a11y
  micro-bench/*: Do not use clutter_stage_get_default()
  accessibility/*: Do not use clutter_stage_get_default()
  conform/*: Do not use clutter_stage_get_default()

12 years agoFix clutter-bakend-win32.c
Chun-wei Fan [Mon, 14 Nov 2011 05:36:52 +0000 (13:36 +0800)]
Fix clutter-bakend-win32.c

The VBLANK environmental variable is done universally in clutter-main.c
as in commits e8562089 (main: Add a sync-to-vblank global flag) and
db211a21 (Remove per-backend CLUTTER_VBLANK envvar), so remove these things
here as well.

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

12 years agoFix clutter-bakend-win32.c
Chun-wei Fan [Mon, 14 Nov 2011 05:36:52 +0000 (13:36 +0800)]
Fix clutter-bakend-win32.c

The VBLANK environmental variable is done universally in clutter-main.c
as in commits e8562089 (main: Add a sync-to-vblank global flag) and
db211a21 (Remove per-backend CLUTTER_VBLANK envvar), so remove these things
here as well.

12 years agoclutter-config.h.win32: Add CLUTTER_INPUT_NULL
Chun-wei Fan [Mon, 14 Nov 2011 05:33:04 +0000 (13:33 +0800)]
clutter-config.h.win32: Add CLUTTER_INPUT_NULL

12 years agoFix VS property sheets
Chun-wei Fan [Mon, 14 Nov 2011 05:32:29 +0000 (13:32 +0800)]
Fix VS property sheets

Should be clutter-keysyms.compat.h that should land in deprecated/, not
clutter-keysyms.h

12 years agoUpdate config.h.win32.in/clutter-config.h.win32
Chun-wei Fan [Mon, 14 Nov 2011 04:49:52 +0000 (12:49 +0800)]
Update config.h.win32.in/clutter-config.h.win32

-Make the contents of config.h.win32.in more like config.h.in
-Define CLUTTER_INPUT_WIN32 accordingly (no GDK3 defines yet, until
 GDK3 on Windows is more stable)

12 years agoMerge branch 'master' into msvc-support-master
Chun-wei Fan [Mon, 14 Nov 2011 03:40:49 +0000 (11:40 +0800)]
Merge branch 'master' into msvc-support-master

12 years agoUpdated Galician translations
Fran Diéguez [Sun, 13 Nov 2011 17:52:21 +0000 (18:52 +0100)]
Updated Galician translations

12 years agoUpdate clutter-config.h.win32
Chun-wei Fan [Sat, 12 Nov 2011 04:03:53 +0000 (12:03 +0800)]
Update clutter-config.h.win32

The CLUTTER_WINDOWING_WIN32 needs to be in-sync with what is in
configure.ac, due to the implementation of multiple backends.

12 years agoUpdated Spanish translation
Daniel Mustieles [Fri, 11 Nov 2011 17:16:06 +0000 (18:16 +0100)]
Updated Spanish translation

12 years agoUpdated POTFILES.in
Piotr Drąg [Thu, 10 Nov 2011 18:54:53 +0000 (19:54 +0100)]
Updated POTFILES.in

12 years agopo: update POTFILES.in
Rico Tzschichholz [Thu, 10 Nov 2011 18:02:19 +0000 (19:02 +0100)]
po: update POTFILES.in

12 years agodocs: fix some headers paths
Rico Tzschichholz [Thu, 10 Nov 2011 18:01:48 +0000 (19:01 +0100)]
docs: fix some headers paths

12 years agobuild: Disable evdev input by default
Emmanuele Bassi [Thu, 10 Nov 2011 17:59:17 +0000 (17:59 +0000)]
build: Disable evdev input by default

It's an experimental input backend, so it should be enabled explicitly.

12 years agoevdev: do not associate device with stage
Lionel Landwerlin [Thu, 10 Nov 2011 15:41:41 +0000 (15:41 +0000)]
evdev: do not associate device with stage

Their might not be any stage at that time, so this avoids to create a
default one.

Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=651718

12 years agoevdev: don't even process events without a default stage
Lionel Landwerlin [Fri, 17 Jun 2011 10:31:34 +0000 (11:31 +0100)]
evdev: don't even process events without a default stage

The evdev system is a bit different from other input systems in
Clutter because it's completly decorrelated from anything graphic.

In the case of embedded devices with no proper windowing system, you
might want to not implicitly create a default stage when you're
receiving the first input event.

This patch changes this behavior by not forwarding any event if you
don't have a default stage.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@linux.intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=651718

12 years agodocs: Note default stage deprecation in README
Emmanuele Bassi [Thu, 10 Nov 2011 15:09:04 +0000 (15:09 +0000)]
docs: Note default stage deprecation in README

Mention the behaviour of Clutter when creating more than one stage on
platforms that only support one stage instance.

12 years agodocs: Remove clutter_stage_get_default()
Emmanuele Bassi [Wed, 9 Nov 2011 17:49:25 +0000 (17:49 +0000)]
docs: Remove clutter_stage_get_default()

A lot of the example code in the cookbook and the API reference still
uses the default stage — sometimes as if it were a non-default one,
which once again demonstrates how the default stage was a flawed concept
that just confused people.

12 years agostage: Deprecate the default stage
Emmanuele Bassi [Wed, 9 Nov 2011 17:12:45 +0000 (17:12 +0000)]
stage: Deprecate the default stage

Deprecate the clutter_stage_get_default() function, as well as the
clutter_stage_is_default() one, and replace its internal usage.

12 years agoscript: Do not use clutter_stage_get_default()
Emmanuele Bassi [Wed, 9 Nov 2011 17:09:37 +0000 (17:09 +0000)]
script: Do not use clutter_stage_get_default()

It's about to go away, so we should use the StageManager API instead.

12 years agocally/actor: Do not use the default stage as a fallback
Emmanuele Bassi [Wed, 9 Nov 2011 17:03:30 +0000 (17:03 +0000)]
cally/actor: Do not use the default stage as a fallback

Using the default stage as a fallback is wrong in all circumstances.

In this specific case, if an actor is not associated to a stage then it
cannot possibly be the key focus.

12 years agoTry to mop up the default stage mess
Emmanuele Bassi [Wed, 9 Nov 2011 14:04:05 +0000 (14:04 +0000)]
Try to mop up the default stage mess

The default stage was a neat concept when we started Clutter out,
somewhere in the Jurassic era; a singleton instance that gets created at
initialization time, and remains the same for the entire duration of the
process.

Worked well enough when Clutter was a small library meant to be used to
write fullscreen media browsers, but since the introduction of multiple
stages, and Clutter being used to create all sorts of applications, the
default stage is just a vestigial remainder of that past, like an
appendix; something that complicates the layout of the code and
introduces weird behaviour, so that you notice its existence only when
something goes wrong.

Some platforms we do support, though, only have one framebuffer, so it
makes sense for them to have only one stage.

At this point, the only sane thing to do is to go through the same code
paths on all platforms, and that code path is the stage instance
creation and initialization — i.e. clutter_stage_new() (or
g_object_new() with CLUTTER_TYPE_STAGE).

For platforms that support multiple stages, nothing has changed: the stage
created by clutter_stage_get_default() will be set as the default one;
if nobody calls it, the default stage is never created, and it just
lives on as a meaningless check.

For platforms that only support one stage, clutter_stage_new() and
clutter_stage_get_default() will behave exactly the same the first time
they are called: both will create a stage, and set it as the default.
Calling clutter_stage_new() a second time is treated as a programmer
error, and will result in Clutter aborting. This is a behavioural change
because the existing behaviour or creating a new ClutterStage instance
with the same ClutterStageWindow private implementation is, simply put,
utterly braindamaged and I should have *never* had written it, and I
apologize for it. In my defence, I didn't know any better at the time.

This is the first step towards the complete deprecation of
clutter_stage_get_default() and clutter_stage_is_default(), which will
come later.

12 years agoperformance/*: Do not use clutter_stage_get_default()
Emmanuele Bassi [Wed, 9 Nov 2011 13:52:03 +0000 (13:52 +0000)]
performance/*: Do not use clutter_stage_get_default()

12 years agointeractive/*: Do not use clutter_stage_get_default()
Emmanuele Bassi [Wed, 9 Nov 2011 13:41:15 +0000 (13:41 +0000)]
interactive/*: Do not use clutter_stage_get_default()

12 years agoMerge with a11y
Emmanuele Bassi [Wed, 9 Nov 2011 10:55:49 +0000 (10:55 +0000)]
Merge with a11y