commit c9b87435d563b9497d1570be5d007e710bf83881 Author: Emmanuele Bassi Date: Mon Feb 14 15:53:02 2011 +0000 Release Clutter 1.6.4 (stable) NEWS | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ configure.ac | 4 +- 2 files changed, 61 insertions(+), 2 deletions(-) commit 3d8445807a556bcf9b4f5346420eba2b0ed4a5b8 Author: Adel Gadllah Date: Sun Feb 13 00:04:52 2011 +0100 backend-glx: Remove redundant glFlush() As noted in commit ce3f55292a an explict glFlush is needed for both glBlitFramebuffer and glXCopySubBuffer. _clutter_backend_glx_blit_sub_buffer was already doing an explicit flush when using glBlitFramebuffer, so just do it unconditonally and remove the call from clutter_stage_glx_redraw. http://bugzilla.clutter-project.org/show_bug.cgi?id=2558 clutter/glx/clutter-backend-glx.c | 8 +++++++- clutter/glx/clutter-stage-glx.c | 7 ------- 2 files changed, 7 insertions(+), 8 deletions(-) commit 3a378b849b3b4e93c708130845c79dff42b34c2f Author: Emmanuele Bassi Date: Mon Feb 14 12:00:31 2011 +0000 stage/glx: Code clean ups clutter/glx/clutter-stage-glx.c | 32 ++++++++++++++++---------------- clutter/glx/clutter-stage-glx.h | 10 ++++++---- 2 files changed, 22 insertions(+), 20 deletions(-) commit 48f2cb1f0903084531402c93935d9ca56d8454dd Author: Emmanuele Bassi Date: Mon Feb 14 11:59:49 2011 +0000 stage/x11: Clean up ClutterStageX11 struct Use the right parent instance and class structure; the X11 stage implementation hasn't been a ClutterGroup in a long, long time. clutter/x11/clutter-stage-x11.h | 27 ++++++++++++++------------- 1 files changed, 14 insertions(+), 13 deletions(-) commit 24c311466ca9481044091f4bb89a60aa3d0eb8e0 Author: Emmanuele Bassi Date: Sun Feb 13 19:27:51 2011 +0000 tests/multi-stage: Clean up child stages Do not leave them around: force a destroy() on any child stage left when the main loop quits. tests/interactive/test-multistage.c | 14 ++++++++++++++ 1 files changed, 14 insertions(+), 0 deletions(-) commit 169df02a565a20810825180d217e6aa52c4c1965 Author: Emmanuele Bassi Date: Sun Feb 13 19:26:29 2011 +0000 stage: Call ClutterStageWindow::unrealize() on dispose Since we realize on creation we need to unrealize on destruction. This makes sure that the ClutterStageWindow implementation can tear down any resource set up during the realization phase. http://bugzilla.clutter-project.org/show_bug.cgi?id=2559 clutter/clutter-stage.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 7c356fd05bb05b939406b2664963fc45c8a21778 Author: Emmanuele Bassi Date: Sun Feb 13 19:25:21 2011 +0000 stage/x11: Add a debug note for unrealization We remove the ClutterStageWindow ↔ Window mapping in the ::unrealize implementation; let's just check that we get there using a simple debug note. clutter/x11/clutter-stage-x11.c | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) commit c2c51b2950634ecb166effef2337742c45e8ed2a Author: Emmanuele Bassi Date: Fri Feb 11 16:53:28 2011 +0000 build: Fix clutter-config.h defines The checks for non-x11/glx platforms were using the wrong configure.ac variables and values. configure.ac | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) commit 2abf56fe929f1495b230ca33222c3f00a46ef3a8 Merge: b152a97 734a236 Author: Emmanuele Bassi Date: Fri Feb 11 16:45:45 2011 +0000 Merge remote-tracking branch 'nobled/wayland-fixes2' * nobled/wayland-fixes2: wayland: fix shm buffers wayland: set renderable type on dummy surface wayland: check for egl extensions explicitly wayland: fall back to shm buffers if drm fails wayland: add shm buffer code wayland: make buffer handling generic wayland: really fix buffer format selection wayland: fix pixel format wayland: clean up buffer creation code wayland: don't require the surfaceless extensions wayland: check for API-specific surfaceless extension wayland: fix GLES context creation wayland: use EGL_NO_SURFACE wayland: update to new api wayland: fix connecting to default socket fix ClutterContainer docs commit b152a97ea57b3fdf6eeb88955ddf6afe95420618 Author: Chris Lord Date: Fri Feb 11 16:27:46 2011 +0000 actor: Rename in_clone_paint parameter to avoid variable shadowing The 'in_clone_paint' parameter of the private function _clutter_actor_set_in_clone_paint() shadowed the private function in_clone_paint(). Rename this parameter to 'is_in_clone_paint' to remove a compiler warning. clutter/clutter-actor-private.h | 2 +- clutter/clutter-actor.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) commit a297fb039409733afa7df6eaeb2d28f1af1a93a3 Author: Chris Lord Date: Fri Feb 11 15:18:08 2011 +0000 offscreen: Fix partially off-stage actors being clipped in the fbo If an actor was partially off of the stage, it would be clipped because of the stage viewport. This produces problems if you use an offscreen effect that relies on the entire actor being rendered (e.g. shadows). Expand the viewport in this scenario so that the offscreen-rendering isn't clipped. This fixes http://bugzilla.clutter-project.org/show_bug.cgi?id=2550 clutter/clutter-offscreen-effect.c | 43 +++++++++++++++++++++++++++++++++++- 1 files changed, 42 insertions(+), 1 deletions(-) commit 442d8c3f2e2246187468bcebcb4de287181785d4 Author: Chris Lord Date: Thu Feb 3 14:36:55 2011 +0000 offscreen-effect: Use actor's opacity_override when redirecting painting Override the actor's paint opacity so that it will appear fully opaque in the offscreen surface. This avoids multiple multiplications of an actor's opacity. Fixes http://bugzilla.clutter-project.org/show_bug.cgi?id=2541 clutter/clutter-offscreen-effect.c | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) commit b2ea7d1352cee7df3704c69b71ed43821363e1aa Author: Chris Lord Date: Thu Feb 3 13:58:20 2011 +0000 actor: Replace private opacity_parent with opacity_override Replace the opacity_parent with an opacity_override variable, to allow direct overriding of the paint opacity and simplify this mechanism somewhat. This also required a new private flag, in_clone_paint, to maintain the functionality of the public function clutter_actor_is_in_clone_paint() clutter/clutter-actor-private.h | 6 +++- clutter/clutter-actor.c | 48 ++++++++++++++++++-------------------- clutter/clutter-clone.c | 14 +++++++---- 3 files changed, 36 insertions(+), 32 deletions(-) commit 75434b8a69164518acc4a5f766ae95ba1a3f376a Author: Emmanuele Bassi Date: Fri Feb 11 15:45:13 2011 +0000 build: Modify maintainer compiler flags values We use the micro version for distinguishing released tarballs and Git builds; the maintainer compiler flags should be enabled for the latter, and not just for unstable cycles, since it makes sense to have extra warning flags even on stable cycles. We also want to allow people to turn on -Werror on demand, so let's add a third option to --enable-maintainer-flags. README | 5 +++-- configure.ac | 38 +++++++++++++++++++++++++++----------- 2 files changed, 30 insertions(+), 13 deletions(-) commit 7decee300e40b4e5fc9bba2ea4ff39d3c06610f0 Author: Emmanuele Bassi Date: Fri Feb 11 15:44:03 2011 +0000 docs: Clarify interface_age usage in configure.ac The clutter_interface_age value should be changed only on stable cycles; unstable cycles should reset the value to 0. configure.ac | 9 ++++----- 1 files changed, 4 insertions(+), 5 deletions(-) commit 5f9022b593a4a4b07a27a818744f79736b8c3ca5 Merge: 2ee7052 cf18836 Author: Emmanuele Bassi Date: Fri Feb 11 15:03:22 2011 +0000 Merge remote-tracking branch 'elliot/cookbook-animations-path' * elliot/cookbook-animations-path: docs: Add recipe for animating an actor on a curved path commit 2ee7052d8974051e380b7bbfeecbfc0b18484db1 Author: Neil Roberts Date: Wed Feb 2 15:17:50 2011 +0000 cogl-framebuffer: Fix flushing the framebuffer on push When pushing a framebuffer it would previously push COGL_INVALID_HANDLE to the top of the framebuffer stack so that when it later calls cogl_set_framebuffer it will recognise that the framebuffer is different and replace the top with the new pointer. This isn't ideal because it breaks the code to flush the journal because _cogl_framebuffer_flush_journal is called with the value of the old pointer which is NULL. That function was checking for a NULL pointer so it wouldn't actually flush. It also would mean that if you pushed the same framebuffer twice we would end up dirtying state unnecessarily. To fix this cogl_push_framebuffer now pushes a reference to the current framebuffer instead. clutter/cogl/cogl/cogl-framebuffer.c | 15 ++++++++++----- 1 files changed, 10 insertions(+), 5 deletions(-) commit 3afa732bcece85dabbccee3df225886a0af1a4bf Author: Neil Roberts Date: Wed Feb 9 19:31:42 2011 +0000 cogl-framebuffer: Remove all dependencies after a flush After a dependent framebuffer is added to a framebuffer it was never getting removed. Once the journal for a framebuffer is flushed we no longer depend on any framebuffers so the list should be cleared. This was causing leaks of offscreens and textures. clutter/cogl/cogl/cogl-framebuffer.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit ced045148fa2b5af892f590f4e0708bfce40fe95 Author: Emmanuele Bassi Date: Thu Feb 10 10:35:35 2011 +0000 clutter.modules: Fix Wayland's location The Git repository URL for Wayland has been moved into the main fd.o structure. build/clutter.modules | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit ce3f55292a343d4877558f817d3a02115bf2c453 Author: Robert Bragg Date: Tue Feb 8 17:54:49 2011 +0000 glx: Make sure to glFlush if blitting to frontbuffer. Unlike glXSwapBuffers, glXCopySubBuffer and glBlitFramebuffer don't issue an implicit glFlush() so we have to flush ourselves if we want the request to complete in finite amount of time since otherwise the driver can batch the command indefinitely. http://bugzilla.clutter-project.org/show_bug.cgi?id=2551 clutter/glx/clutter-stage-glx.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) commit 7b0491427c9162ce2dfa0d2ae6728a2f591ca458 Author: Robert Bragg Date: Tue Feb 1 13:24:13 2011 +0000 docs: clarify cogl_vertex_buffer_adds docs This adds a clarification that cogl_vertex_buffer_add can also be used to replace a previously added attribute with the same name. clutter/cogl/cogl/cogl-vertex-buffer.h | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit d0ca228776a5d057368cea2c743ea17b6c1a0c65 Author: Robert Bragg Date: Tue Feb 1 13:19:49 2011 +0000 matrix: note that _matrix_multiply can multiply in-place This adds a note to clarify that cogl_matrix_multiply allows you to multiply the @a matrix in-place, so @a can equal @result but @b can't equal @result. clutter/cogl/cogl/cogl-matrix.h | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) commit 9adbb2f20ce4e9d6e51380079fec6d635d538d08 Author: Emmanuele Bassi Date: Wed Feb 9 16:16:57 2011 +0000 Fix compilation of the EGL backend Sorry for breaking it. clutter/egl/clutter-stage-egl.c | 146 +++++++++++++++++++------------------- 1 files changed, 73 insertions(+), 73 deletions(-) commit bb56a26daa817c98d75a81c5656fa087d21e7762 Author: Emmanuele Bassi Date: Wed Feb 9 16:20:40 2011 +0000 keymap/x11: Remove unused variables Silence compiler warnings. clutter/x11/clutter-keymap-x11.c | 3 --- 1 files changed, 0 insertions(+), 3 deletions(-) commit 645ca5620815d36c4a49546fd61928bafc3d15dd Author: Neil Roberts Date: Wed Feb 9 15:24:43 2011 +0000 cogl: Set the layer matrix on the right layer instead of a random one When uploading the layer matrix to GL it wasn't first calling glActiveTextureMatrix to set the right texture unit for the layer. This would end up setting the texture matrix on whatever layer happened to be previously active. This happened to work for test-cogl-multitexture presumably because it was coincidentally setting the layer matrix on the last used layer. clutter/cogl/cogl/cogl-pipeline-vertend-fixed.c | 2 ++ clutter/cogl/cogl/cogl-pipeline-vertend-glsl.c | 2 ++ 2 files changed, 4 insertions(+), 0 deletions(-) commit 98a33e03d32efc8b551b80a1a5af065ea9e1f7a8 Author: Neil Roberts Date: Wed Feb 9 15:12:13 2011 +0000 Add a conformance test for cogl_pipeline_set_layer_matrix This adds a conformance test which paints using a pipeline that has two layers containing textures. Each layer has a different user matrix. When the two layers are combined with the right matrices then all of the colors end up white. The test then verifies this by reading back the pixels. tests/conform/Makefile.am | 1 + tests/conform/test-cogl-pipeline-user-matrix.c | 144 ++++++++++++++++++++++++ tests/conform/test-conform-main.c | 1 + 3 files changed, 146 insertions(+), 0 deletions(-) commit 95f6359f647a162f361b237d9c38a597c49987a7 Author: Emmanuele Bassi Date: Wed Feb 9 14:53:20 2011 +0000 Intern clutter_get_actor_by_gid() implementation As the prelude to deprecation of the function in 1.8, let's move the implementation to an internal function, and use that instead of the public facing one. clutter/clutter-main.c | 23 ++++++++++++----------- clutter/clutter-private.h | 3 ++- 2 files changed, 14 insertions(+), 12 deletions(-) commit 03358aca6c27f893330dd6678a22bb7b33070c77 Author: Emmanuele Bassi Date: Wed Feb 9 13:05:12 2011 +0000 test-actors: Clear the state on destroy The venerable test-actors used the default stage, which meant that closing the window just stopped the main loop but left the scene intact. This does not happen with a normal stage created through clutter_stage_new(). The change happened in 6ed6b2a54b5c8f44496399057ad5e58771bfc620, in an unhelpfully named commit that was just supposed to switch to static colors. My bad. Anyway, the change led to some assertion failures when closing the stage in the middle of an animation. The correct thing to do when using an actor from another object (a Timeline ::new-frame callback in this case) without owning the instance is to connect to the ::destroy signal and clean up the pointer to avoid calling an invalid actor. tests/interactive/test-actors.c | 55 ++++++++++++++++++++++++++++++-------- 1 files changed, 43 insertions(+), 12 deletions(-) commit 719e3b7e20d432bb43b0e1fd3b2d1e7035fa4863 Author: Emmanuele Bassi Date: Wed Feb 9 12:55:25 2011 +0000 Clean up ClutterMainContext and clutter-private.h Do a better job at documenting the main context structure fields; remove unused members; clean up the declarations. clutter/clutter-private.h | 86 +++++++++++++++++++++++++-------------------- 1 files changed, 48 insertions(+), 38 deletions(-) commit ef4688fd0eb1bd915c6f924bbe03399855ae85ef Author: Emmanuele Bassi Date: Wed Feb 9 12:38:10 2011 +0000 Avoid direct access to the main context events queue The GQueue that stores the global events queue is handled all over the place: • the structure is created in _clutter_backend_init_events(); • the queue is handled in clutter-event.c, clutter-stage.c and clutter-backend.c; • ClutterStage::dispose cleans up the events associated with the stage being destroyed; • the queue is destroyed in ClutterBackend::dispose. Since we need to have access to it in different places we cannot put it inside ClutterBackendPrivate, hence it should stay in ClutterMainContext; but we should still manage it from just one place - preferably by the ClutterEvent API only. clutter/clutter-backend.c | 16 +++------------- clutter/clutter-event.c | 8 +++++--- clutter/clutter-main.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ clutter/clutter-private.h | 4 ++++ clutter/clutter-stage.c | 23 ++++------------------- 5 files changed, 60 insertions(+), 35 deletions(-) commit 56d133f9080281ad9dbdda2af0f57f3fe3a0775c Author: Emmanuele Bassi Date: Wed Feb 9 12:20:56 2011 +0000 backend: Move event translators to the base class In the future, we want event translators to be the way to handle events in backends. For this reason, they should be a part of the base abstract ClutterBackend class, and not an X11-only concept. clutter/clutter-backend-private.h | 7 ++++ clutter/clutter-backend.c | 65 +++++++++++++++++++++++++++++++++++++ clutter/egl/clutter-backend-egl.c | 2 +- clutter/glx/clutter-backend-glx.c | 2 +- clutter/x11/clutter-backend-x11.c | 62 ++++++++++------------------------- clutter/x11/clutter-backend-x11.h | 11 ------ clutter/x11/clutter-keymap-x11.c | 7 +--- clutter/x11/clutter-stage-x11.c | 5 ++- 8 files changed, 96 insertions(+), 65 deletions(-) commit e9fa986ccc0328712e48342c6ba20cffb767f9b7 Author: Emmanuele Bassi Date: Tue Feb 8 18:03:43 2011 +0000 docs: Update the HACKING.backends documentation doc/HACKING.backends | 62 +++++++++++++++++++++++++++++++++++++------------ 1 files changed, 47 insertions(+), 15 deletions(-) commit 224280be22aafe1df9b57fb5d200627552f37c57 Author: Emmanuele Bassi Date: Fri Feb 4 15:09:41 2011 +0000 backend: Invoke ClutterStageWindow::redraw by default Instead of asking all backends to do that for us, we can call ClutterStageWindow::redraw ourselves by default. This changeset fixes all backends to actually do the right thing, and move the stage implementation redraw inside the ClutterStageWindow implementation itself. clutter/clutter-backend.c | 22 +++- clutter/egl/clutter-backend-egl.c | 16 --- clutter/egl/clutter-stage-egl.c | 21 ++-- clutter/egl/clutter-stage-egl.h | 4 +- clutter/glx/clutter-backend-glx.c | 23 ---- clutter/glx/clutter-stage-glx.c | 186 +++++++++++++++++---------------- clutter/glx/clutter-stage-glx.h | 3 - clutter/osx/clutter-backend-osx.c | 25 ----- clutter/osx/clutter-stage-osx.c | 14 +++ clutter/win32/clutter-backend-win32.c | 27 ----- clutter/win32/clutter-stage-win32.c | 17 +++ 11 files changed, 158 insertions(+), 200 deletions(-) commit 734a236a97a06d823ed9387640c390a5081c71ff Author: nobled Date: Tue Feb 8 15:55:18 2011 +0000 wayland: fix shm buffers We need to *write* to the shared memory, not read from it. cogl_texture_from_data() is read-only, it doesn't keep the data in sync with the texture. Instead, we have to call cogl_texture_get_data() ourselves to sync manually. clutter/wayland/clutter-stage-wayland.c | 44 ++++++++++++++++++++++-------- clutter/wayland/clutter-stage-wayland.h | 4 ++- 2 files changed, 35 insertions(+), 13 deletions(-) commit c1a27d481ba7579a59b720a6b9b7a4be46294110 Author: nobled Date: Tue Feb 8 15:53:08 2011 +0000 wayland: set renderable type on dummy surface Make sure it's compatible with the API that's in use. clutter/wayland/clutter-backend-wayland.c | 17 +++++++++++------ 1 files changed, 11 insertions(+), 6 deletions(-) commit 20b1350614cab53c2ded828cdffc96db3c083ddd Author: nobled Date: Tue Feb 8 15:45:39 2011 +0000 wayland: check for egl extensions explicitly eglGetProcAddress() returns non-null function pointers whether or not they're actually supported by the driver, since it can be used before any driver gets loaded. So we have to check if the extensions are advertised first, which requires having an initialized display, so we split the display creation code into its own function. The exception to extension-checking is EGL_MESA_drm_display, since by definition it's needed before any display is even created. clutter/wayland/clutter-backend-wayland.c | 89 +++++++++++++++++++++-------- 1 files changed, 65 insertions(+), 24 deletions(-) commit 7da930fb75b7a653b2d8360267b0060c6c996e67 Author: Emmanuele Bassi Date: Fri Feb 4 15:08:48 2011 +0000 stage-window: Add ::redraw virtual function How to redraw a ClutterStage's implementation should be part of the ClutterStageWindow interface. clutter/clutter-stage-window.c | 12 ++++++++++++ clutter/clutter-stage-window.h | 4 ++++ 2 files changed, 16 insertions(+), 0 deletions(-) commit bbf73f58b6e9e6f3554391ff1f2d6fca0682ebeb Author: Emmanuele Bassi Date: Tue Feb 8 15:31:20 2011 +0000 Skip some x11-specific calls when generating introspection Some types are just not handled currently. clutter/x11/clutter-backend-x11.c | 8 ++++---- clutter/x11/clutter-event-x11.c | 2 +- clutter/x11/clutter-stage-x11.c | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) commit 2f8d22ef89e74aa20b199ce540cbe88d588249a7 Author: Emmanuele Bassi Date: Tue Feb 8 15:30:48 2011 +0000 Unify the vfunc parameters names with their callers Otherwise g-ir-scanner will get fairly angry. clutter/clutter-actor.h | 4 ++-- clutter/clutter-container.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) commit cf18836ca0e9db22e745aaba59f647cba672962c Author: Elliot Smith Date: Tue Feb 8 14:37:59 2011 +0000 docs: Add recipe for animating an actor on a curved path Show how to animate an actor using a ClutterPathConstraint. This demonstrates how to get effects similar to ClutterPathBehaviour with the modern animation APIs. Includes 3 examples: 1) Simple ClutterPathConstraint used with implicit animations 2) ClutterPathConstraint used to simulate circular animation, using ClutterAnimator 3) Creating simple curved path animations with non-linear easing doc/cookbook/Makefile.am | 1 + doc/cookbook/animations.xml | 271 ++++++++++++++++++++++++ doc/cookbook/examples/Makefile.am | 6 + doc/cookbook/examples/animations-path-circle.c | 128 +++++++++++ doc/cookbook/examples/animations-path-easing.c | 104 +++++++++ doc/cookbook/examples/animations-path.c | 61 ++++++ doc/cookbook/videos/animations-path.ogv | Bin 0 -> 39639 bytes 7 files changed, 571 insertions(+), 0 deletions(-) commit 9090070a98d7ab8201d29807b18ffad4db89a131 Author: Emmanuele Bassi Date: Tue Feb 8 12:08:18 2011 +0000 x11: Refresh key mapping when notified by X11 Use both the MappingNotify event and the XKB XkbMapNotify event, if we're compiled with XKB support. This change is also useful for making ClutterKeymapX11 an event translator and let it deal with XKB events internally like we do for stage and input events. Based on a patch by: Damien Lespiau Signed-off by: Emmanuele Bassi http://bugzilla.clutter-project.org/show_bug.cgi?id=2525 clutter/x11/clutter-backend-x11.h | 2 +- clutter/x11/clutter-keymap-x11.c | 156 ++++++++++++++++++++++++------------- clutter/x11/clutter-stage-x11.c | 7 ++ 3 files changed, 111 insertions(+), 54 deletions(-) commit 4956152a1157e181b9e8b8179420628aa77a73fb Author: Emmanuele Bassi Date: Mon Feb 7 15:59:42 2011 +0000 Post-release version bump to 1.6.3 configure.ac | 4 +- po/clutter-1.0.pot | 56 ++++++++++++++++++++++++++-------------------------- po/de.po | 54 +++++++++++++++++++++++++------------------------- po/fr.po | 54 +++++++++++++++++++++++++------------------------- po/id.po | 54 +++++++++++++++++++++++++------------------------- po/it.po | 54 +++++++++++++++++++++++++------------------------- po/pl.po | 54 +++++++++++++++++++++++++------------------------- po/zh_CN.po | 54 +++++++++++++++++++++++++------------------------- 8 files changed, 192 insertions(+), 192 deletions(-) commit e855bc45a266ab72ac1545fadf506d0ae0128c50 Author: nobled Date: Mon Jan 31 05:05:28 2011 +0000 wayland: fall back to shm buffers if drm fails clutter/wayland/clutter-backend-wayland.c | 74 ++++++++++++++++++----------- clutter/wayland/clutter-backend-wayland.h | 1 + clutter/wayland/clutter-stage-wayland.c | 8 +++- 3 files changed, 54 insertions(+), 29 deletions(-) commit d84f31ef3a9ad56463b34af74a4a5f68ef0621a4 Author: nobled Date: Mon Jan 31 04:22:50 2011 +0000 wayland: add shm buffer code It's not enabled to do anything yet. clutter/wayland/clutter-backend-wayland.c | 4 ++ clutter/wayland/clutter-backend-wayland.h | 1 + clutter/wayland/clutter-stage-wayland.c | 62 +++++++++++++++++++++++++++++ clutter/wayland/clutter-stage-wayland.h | 8 ++++ 4 files changed, 75 insertions(+), 0 deletions(-) commit d4ccef786b4cf5b1885f51c2aa2fca43095f1a75 Author: nobled Date: Mon Jan 31 03:07:37 2011 +0000 wayland: make buffer handling generic Separate the code specific to DRM buffers into its own functions/subclass to prepare for adding SHM buffers. clutter/wayland/clutter-stage-wayland.c | 56 ++++++++++++++++++++++--------- clutter/wayland/clutter-stage-wayland.h | 12 +++++- 2 files changed, 50 insertions(+), 18 deletions(-) commit 15cd4705dbd51025e452810a873e2010bee494b9 Author: nobled Date: Mon Jan 31 02:45:01 2011 +0000 wayland: really fix buffer format selection Wayland visuals refer to a pixel's bytes in order from most significant to least significant, while the one-byte-per-component Cogl formats refer to the order of increasing memory addresses, so converting between the two depends on the system's endianness. clutter/wayland/clutter-stage-wayland.c | 31 ++++++++++++++++++++++++++++--- 1 files changed, 28 insertions(+), 3 deletions(-) commit 2ff5cf5aa0178e921203a220e64645ae2f705de2 Author: nobled Date: Mon Jan 31 02:27:23 2011 +0000 wayland: fix pixel format This matches to the Wayland premultiplied_argb_visual the rest of the code is using. The format needs to differ based on endianness, though... clutter/wayland/clutter-stage-wayland.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit f6a6a44fe7e7561558a375b780ba17b0dfa1e842 Author: nobled Date: Mon Jan 31 02:14:17 2011 +0000 wayland: clean up buffer creation code The height was being set from the ClutterGeometry in some parts and from the stage in others. And since both callers of this function pass &stage_wayland->allocation as the geometry anyway, the stage argument isn't really even needed. clutter/wayland/clutter-stage-wayland.c | 11 +++++------ 1 files changed, 5 insertions(+), 6 deletions(-) commit 7e4a8fd907d728d4daa7bd0c124a22e86659fc7b Author: nobled Date: Sun Jan 30 22:43:50 2011 +0000 wayland: don't require the surfaceless extensions Just create a one-pixel dummy surface for eglMakeCurrent(). clutter/wayland/clutter-backend-wayland.c | 62 ++++++++++++++++++++++------ clutter/wayland/clutter-backend-wayland.h | 1 + 2 files changed, 49 insertions(+), 14 deletions(-) commit ffd7197dd6679e539b2ede0bdd401f57461113d5 Author: nobled Date: Sun Jan 30 22:22:10 2011 +0000 wayland: check for API-specific surfaceless extension It's a whole different extension name for each GL api. clutter/wayland/clutter-backend-wayland.c | 12 ++++++++++-- 1 files changed, 10 insertions(+), 2 deletions(-) commit 542717e45b7279e220e033069a6712693eafa49d Author: nobled Date: Sun Jan 30 22:18:55 2011 +0000 wayland: fix GLES context creation It was unconditionally binding the desktop-GL API and requesting the wrong API version in the case of GLES1. clutter/wayland/clutter-backend-wayland.c | 19 ++++++++++++++----- 1 files changed, 14 insertions(+), 5 deletions(-) commit 9dcb9453ede3ff435ddaf492123a25ad128630e3 Author: nobled Date: Sun Jan 30 22:06:23 2011 +0000 wayland: use EGL_NO_SURFACE clutter/wayland/clutter-backend-wayland.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 0886452dc241d18a1c6d4d787b06e61ea75a2b57 Author: nobled Date: Fri Jan 28 17:29:48 2011 +0000 wayland: update to new api Adapt to changes from this Wayland commit: "Update surface.attach and change surface.map to surface.map_toplevel" (82da52b15b49da3f3c7b4bd85d334ddfaa375ebc) clutter/wayland/clutter-backend-wayland.c | 4 +--- clutter/wayland/clutter-stage-wayland.c | 10 ++++------ 2 files changed, 5 insertions(+), 9 deletions(-) commit 2a45ea6839eedc6f914d6192b02d6c0a78bfb212 Author: nobled Date: Fri Jan 28 16:50:06 2011 +0000 wayland: fix connecting to default socket Fixes a mistake in commit "wayland: Update to current api" (e7f62bc936995c5d998f7c8dc4b2b1b7254ea97d) clutter/wayland/clutter-backend-wayland.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 4197bada4208f08e7a4a3fc684f858aa8ea53b09 Author: nobled Date: Fri Jan 28 16:49:07 2011 +0000 fix ClutterContainer docs clutter/clutter-container.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)