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

12 years agomicro-bench/*: Do not use clutter_stage_get_default()
Emmanuele Bassi [Tue, 8 Nov 2011 17:23:52 +0000 (17:23 +0000)]
micro-bench/*: Do not use clutter_stage_get_default()

12 years agoaccessibility/*: Do not use clutter_stage_get_default()
Emmanuele Bassi [Tue, 8 Nov 2011 17:11:34 +0000 (17:11 +0000)]
accessibility/*: Do not use clutter_stage_get_default()

12 years agoconform/*: Do not use clutter_stage_get_default()
Emmanuele Bassi [Tue, 8 Nov 2011 17:04:44 +0000 (17:04 +0000)]
conform/*: Do not use clutter_stage_get_default()

Use the correct stage creation/destruction API.

12 years agodocs: Update the release notes in the README
Emmanuele Bassi [Mon, 7 Nov 2011 19:06:22 +0000 (19:06 +0000)]
docs: Update the release notes in the README

12 years agoosx: Clean up the backend implementation
Emmanuele Bassi [Mon, 7 Nov 2011 14:48:48 +0000 (14:48 +0000)]
osx: Clean up the backend implementation

Instead of implementing create_stage() and a constructor for
ClutterStageOSX, we can use the default implementations in
ClutterBackend, and spare us some code duplication.

12 years agowayland/backend: Remove create_stage()
Emmanuele Bassi [Mon, 7 Nov 2011 14:44:37 +0000 (14:44 +0000)]
wayland/backend: Remove create_stage()

The create_stage() implementation in ClutterBackendWayland isn't doing
anything special, so we can fall back to the default one.

12 years agobuild: Clean up the configuration summary
Emmanuele Bassi [Fri, 4 Nov 2011 19:49:45 +0000 (19:49 +0000)]
build: Clean up the configuration summary

List the input backends, and remove the EGL backend options.

12 years agobackend: Clean up the device manager creation
Emmanuele Bassi [Fri, 4 Nov 2011 19:25:54 +0000 (19:25 +0000)]
backend: Clean up the device manager creation

Create the device manager during the event initialization, where it
makes sense.

This allows us to get rid of the per-backend get_device_manager()
virtual function, and just store the DeviceManager pointer into the
ClutterBackend structure.

12 years ago*/backend: Clean up the stage creation
Emmanuele Bassi [Fri, 4 Nov 2011 19:01:32 +0000 (19:01 +0000)]
*/backend: Clean up the stage creation

Use the default implementation of create_stage() wherever possible.

12 years agobackend: Provide a default create_stage()
Emmanuele Bassi [Fri, 4 Nov 2011 19:00:49 +0000 (19:00 +0000)]
backend: Provide a default create_stage()

We can now safely create a ClutterStageWindow in the shared code path,
instead of deferring to the backend.

12 years agostage-window: Add :backend and :wrapper properties
Emmanuele Bassi [Fri, 4 Nov 2011 18:50:46 +0000 (18:50 +0000)]
stage-window: Add :backend and :wrapper properties

All StageWindow implementation already have back pointers, but we need a
unified API to actually set them from the generic code path; we can use
properties on the StageWindow interface — though this requires fixing
all backends at the same time, to avoid GObject complaining.

12 years agogdk/backend: Fix an invalid chain up
Emmanuele Bassi [Fri, 4 Nov 2011 18:50:02 +0000 (18:50 +0000)]
gdk/backend: Fix an invalid chain up

12 years ago*/backend: Store the StageWindow implementation type
Emmanuele Bassi [Fri, 4 Nov 2011 18:27:08 +0000 (18:27 +0000)]
*/backend: Store the StageWindow implementation type

12 years agobackend: Store the type of the StageWindow implementation
Emmanuele Bassi [Fri, 4 Nov 2011 18:26:33 +0000 (18:26 +0000)]
backend: Store the type of the StageWindow implementation

We can use it later on to create it and provide a default create_stage()
implementation.

12 years agoegl/backend: Clean up
Emmanuele Bassi [Fri, 4 Nov 2011 17:49:25 +0000 (17:49 +0000)]
egl/backend: Clean up

The "EGL native" backend is just a short-hand for a pure Cogl backend,
using whatever input mechanism was enabled at run-time.

12 years agoAdd a CEx100-specific backend
Emmanuele Bassi [Fri, 4 Nov 2011 17:44:55 +0000 (17:44 +0000)]
Add a CEx100-specific backend

Instead of piggybacking on the EGL backend, let's create a small
ClutterBackend for the CEx100 platforms. This allows us to handle the
CEx100-specific details in a much cleaner way.

12 years agocogl/backend: Remove the ClutterBackendCogl class
Emmanuele Bassi [Fri, 4 Nov 2011 16:52:44 +0000 (16:52 +0000)]
cogl/backend: Remove the ClutterBackendCogl class

All the functionality that ClutterBackendCogl provided has been moved
into ClutterBackend itself, so there is no need to have this class
around in the source.

Cogl-based backends can derive directly from ClutterBackend.

12 years agocogl/backend: Remove pre/post_parse
Emmanuele Bassi [Fri, 4 Nov 2011 16:41:52 +0000 (16:41 +0000)]
cogl/backend: Remove pre/post_parse

The CLUTTER_VBLANK environment variable is now handled in the common
code path.

12 years agoRemove per-backend CLUTTER_VBLANK envvar
Emmanuele Bassi [Fri, 4 Nov 2011 16:39:52 +0000 (16:39 +0000)]
Remove per-backend CLUTTER_VBLANK envvar

We have a global flag we can use.

12 years agomain: Add a sync-to-vblank global flag
Emmanuele Bassi [Fri, 4 Nov 2011 16:35:38 +0000 (16:35 +0000)]
main: Add a sync-to-vblank global flag

It replaces the per-backend CLUTTER_VBLANK environment variable.

12 years agobackend: Provide a default get_features() implementation
Emmanuele Bassi [Fri, 4 Nov 2011 16:13:04 +0000 (16:13 +0000)]
backend: Provide a default get_features() implementation

Continue gutting ClutterBackendCogl; get_features() is the last bit that
still does something, but now we can use the Cogl API.

12 years agowin32/backend: Use the default context creation
Emmanuele Bassi [Fri, 4 Nov 2011 15:57:01 +0000 (15:57 +0000)]
win32/backend: Use the default context creation

The win32 backend doesn't do anything special on context creation, so we
can just use the default implementation provided by ClutterBackend.

12 years agogdk/backend: Use the context creation hooks
Emmanuele Bassi [Fri, 4 Nov 2011 15:54:58 +0000 (15:54 +0000)]
gdk/backend: Use the context creation hooks

Same as it has happened to the X11 backend.

12 years agox11/backend: Use the context creation hooks
Emmanuele Bassi [Fri, 4 Nov 2011 15:53:47 +0000 (15:53 +0000)]
x11/backend: Use the context creation hooks

Don't replace create_context(): given that the X11 backend already uses
Cogl for the context creation, we can just provide the right data
structures ourselves.

12 years agobackend: Provide a default create_context()
Emmanuele Bassi [Fri, 4 Nov 2011 15:50:47 +0000 (15:50 +0000)]
backend: Provide a default create_context()

Since we use Cogl for the context creation we can now provide a default
context creation that should just work, plus a couple of hooks to allow
plugging into the creation sequence for platforms supported by Cogl that
require special handling — like foreign displays or alpha-enabled swap
chains.

The various backends have now two choices: either replace the
create_context() in its entirety, or plug themselves into the default
context creation.

12 years agobackend: Fix up the input backend detection ordering
Emmanuele Bassi [Fri, 4 Nov 2011 12:21:11 +0000 (12:21 +0000)]
backend: Fix up the input backend detection ordering

And add a missing 'else' in the OSX check, to avoid a g_error().

12 years agoAdd a 'null' input backend symbol
Emmanuele Bassi [Thu, 3 Nov 2011 18:27:09 +0000 (18:27 +0000)]
Add a 'null' input backend symbol

We should have an input backend symbol that thoroughly disables all
input event handling.

12 years agobackend: Unify the event initialization
Emmanuele Bassi [Thu, 3 Nov 2011 17:53:54 +0000 (17:53 +0000)]
backend: Unify the event initialization

Input backends are, in some cases, independent from the windowing system
backends; we can initialize input handling using a model similar to what
we use for windowing backends, including an environment variable and
compile-/run-time checks.

This model allows us to remove the backend-specific init_events(), and
use a generic implementation directly inside the base ClutterBackend
class, thus further reducing the backend-specific code that every
platform has to implement.

This requires some minor surgery to every single backend, to make sure
that the function exposed to initialize the event loop is similar and
performs roughly the same operations.

12 years agowin32/backend: Remove ensure_context()
Emmanuele Bassi [Thu, 3 Nov 2011 16:48:20 +0000 (16:48 +0000)]
win32/backend: Remove ensure_context()

We have a fallback, now.

12 years agowin32/stage: Implement get_active_framebuffer()
Emmanuele Bassi [Thu, 3 Nov 2011 16:47:57 +0000 (16:47 +0000)]
win32/stage: Implement get_active_framebuffer()

12 years agowayland/backend: Remove empty ensure_context()
Emmanuele Bassi [Thu, 3 Nov 2011 16:47:18 +0000 (16:47 +0000)]
wayland/backend: Remove empty ensure_context()

There is a default fallback, now.

12 years agocogl/backend: Remove ensure_context()
Emmanuele Bassi [Thu, 3 Nov 2011 16:46:48 +0000 (16:46 +0000)]
cogl/backend: Remove ensure_context()

We have a default implementation for it, now.

12 years agobackend: Provide an implementation of ensure_backend()
Emmanuele Bassi [Thu, 3 Nov 2011 16:45:56 +0000 (16:45 +0000)]
backend: Provide an implementation of ensure_backend()

We can do it for all Cogl-based backends.

12 years agoconform/color: Check invalid strings
Emmanuele Bassi [Thu, 10 Nov 2011 14:15:32 +0000 (14:15 +0000)]
conform/color: Check invalid strings

We need to make sure to fail consistently for invalid strings.

12 years agocolor: Validate hex formats
Emmanuele Bassi [Thu, 10 Nov 2011 14:13:45 +0000 (14:13 +0000)]
color: Validate hex formats

Right now, we pass through to Pango unrecognized hexadecimal formats
when parsing colors from strings. Since we parse all possible formats
ourselves, we can do validation ourselves as well, and avoid the Pango
path.

12 years agoconform/color: Test hsla() format
Emmanuele Bassi [Thu, 10 Nov 2011 12:56:47 +0000 (12:56 +0000)]
conform/color: Test hsla() format

12 years agoclutter-stage-x11: Make sure to set geometry x and y
Jasper St. Pierre [Wed, 9 Nov 2011 21:37:32 +0000 (16:37 -0500)]
clutter-stage-x11: Make sure to set geometry x and y

Otherwise, we could be dealing with uninitialized values, causing
havoc all over the place.

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

12 years agoMinor whitespace fix for clutter color parsing of hsla(h,s,l,a)
Craig R. Hughes [Tue, 8 Nov 2011 01:00:45 +0000 (17:00 -0800)]
Minor whitespace fix for clutter color parsing of hsla(h,s,l,a)

Previously, if there was whitespace between "l" and the comma before the
alpha value, parsing would fail.  This patch allows that whitespace
making it consistent with whitespace being allowed everywhere else.

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

12 years agocally: Use the proper role for password entries
Matthias Clasen [Fri, 4 Nov 2011 11:14:47 +0000 (07:14 -0400)]
cally: Use the proper role for password entries

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

12 years agomain: Add a debug note when reading the settings file
Emmanuele Bassi [Wed, 9 Nov 2011 09:09:37 +0000 (09:09 +0000)]
main: Add a debug note when reading the settings file

So that's easier to track in the debug log.

12 years agoMerge branch 'master' into msvc-support-master
Chun-wei Fan [Tue, 8 Nov 2011 16:30:32 +0000 (00:30 +0800)]
Merge branch 'master' into msvc-support-master

12 years agoactor: Deprecate [sg]et_geometry()
Emmanuele Bassi [Tue, 8 Nov 2011 14:46:55 +0000 (14:46 +0000)]
actor: Deprecate [sg]et_geometry()

These methods are short-hands for accessing the position and size,
which are already shorthands for accessing the various dimensional
and positional attributes. Plus, they use ClutterGeometry, which is a
fairly bad data type for a rectangle.

12 years agoReplace usage of [sg]et_geometry()
Emmanuele Bassi [Tue, 8 Nov 2011 14:46:16 +0000 (14:46 +0000)]
Replace usage of [sg]et_geometry()

The set_geometry() and get_geometry() methods are going to be
deprecated.

12 years agoReplace ClutterGeometry with cairo_rectangle_int_t
Emmanuele Bassi [Tue, 8 Nov 2011 14:20:32 +0000 (14:20 +0000)]
Replace ClutterGeometry with cairo_rectangle_int_t

We still use ClutterGeometry internally in a couple of places, but we
should really move away from that flawed rectangle data type, and use
the Cairo one.

Sadly, we still have some public API that we cannot remove yet.

12 years agobuild: Remove mention of missing file
Emmanuele Bassi [Tue, 8 Nov 2011 11:19:22 +0000 (11:19 +0000)]
build: Remove mention of missing file

There is no clutter-event-gdk.h in the build.

12 years agomain: Deprecate clutter_set_default_frame_rate()
Emmanuele Bassi [Mon, 7 Nov 2011 20:24:13 +0000 (20:24 +0000)]
main: Deprecate clutter_set_default_frame_rate()

Setting the default frame rate does not do anything even remotely
useful, unless synchronization to the vertical refresh rate is also
disabled - which can only be done through environment variable or
through configuration file. Having a programmatic way to change the
default frame rate is, thus, completely pointless.

Changing the default frame rate through environment variable and
configuration file is still allowed.

12 years agoUpdate VS property sheets
Chun-wei Fan [Mon, 7 Nov 2011 04:46:56 +0000 (12:46 +0800)]
Update VS property sheets

In response to the following moved to deprecated in the following commits:

a39be454
main: Move deprecated symbols to a separate header
40d703a0
backend: Move deprecated symbols to a separate header
b19c9196
actor: Move deprecated symbols into separate headers
142cd0bf
Move clutter-keysyms-compat.h to the deprecated section
530b07f1
Don't use a -deprecated suffix for headers
11420a70
group: Move deprecated macro into its own header
98b467f9
stage: Move the deprecated macros to a separate header

12 years agoAdd GDK-specific symbols to clutter.symbols
Chun-wei Fan [Mon, 7 Nov 2011 04:44:44 +0000 (12:44 +0800)]
Add GDK-specific symbols to clutter.symbols

A GDK backend for clutter was added in commits 610a9c17
(Add A new GDK backend) and f14cbf5b (gdk: Allow disabling event retrieval)

These are not included in the Win32 builds for the moment as GDK3 is
quite unstable on Windows at this time

12 years agoUpdate clutter-version.h.win32.in
Chun-wei Fan [Mon, 7 Nov 2011 04:12:53 +0000 (12:12 +0800)]
Update clutter-version.h.win32.in

-Update clutter-version.h.win32.in to reflect the state of
 clutter-version.h.in commit 21a24c86 (updated in commit 8249e488)
-Also add clutter_check_windowing_backend to clutter.symbols as a result.

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

12 years agoosx/stage: Fix compilation
Emmanuele Bassi [Fri, 4 Nov 2011 12:03:13 +0000 (12:03 +0000)]
osx/stage: Fix compilation

We need to include clutter-stage-window.h.

12 years agoFix cally-atkevents-example VS projects
Chun-wei Fan [Fri, 4 Nov 2011 04:01:51 +0000 (12:01 +0800)]
Fix cally-atkevents-example VS projects

Refer to $(srcroot)\clutter so that the correct Cally headers can be
referenced

12 years agobuild: Ensure libdir exists before installing to it
Colin Walters [Thu, 3 Nov 2011 18:42:07 +0000 (14:42 -0400)]
build: Ensure libdir exists before installing to it

12 years agodocs: Fixes for the API reference build
Emmanuele Bassi [Thu, 3 Nov 2011 16:05:36 +0000 (16:05 +0000)]
docs: Fixes for the API reference build