update to 1.10.4
[profile/ivi/clutter.git] / ChangeLog.pre-1.2
1 commit ab6184298083541d37356f1f5656380d0cda047c
2 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3 Date:   Tue Mar 2 18:03:23 2010 +0000
4
5     Release 1.2.0 (stable)
6
7  configure.ac |    6 +++---
8  1 file changed, 3 insertions(+), 3 deletions(-)
9
10 commit 3c9a24f4a78cd676e635ad32df639b57e65e3be7
11 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12 Date:   Tue Mar 2 18:03:13 2010 +0000
13
14     Update the NEWS file
15
16  NEWS |   42 ++++++++++++++++++++++++++++++++++++++++++
17  1 file changed, 42 insertions(+)
18
19 commit 9e4c008117da6b36237608bd896fb164577ef314
20 Author: Emmanuele Bassi <ebassi@linux.intel.com>
21 Date:   Tue Mar 2 19:17:28 2010 +0000
22
23     build: Include test-script-model.json
24     
25     The Model conformance test for ClutterScript parsing requires the file
26     to be inside the dist.
27
28  tests/data/Makefile.am |    1 +
29  1 file changed, 1 insertion(+)
30
31 commit 2d51432e52745d9484cf2d54567c2f95670ea5ae
32 Author: Emmanuele Bassi <ebassi@linux.intel.com>
33 Date:   Tue Mar 2 19:29:22 2010 +0000
34
35     build: Add test-animator-3.json to EXTRA_DIST
36
37  tests/data/Makefile.am |    1 +
38  1 file changed, 1 insertion(+)
39
40 commit 2f68949962d964e38a640581e232c4b673ce3023
41 Author: Emmanuele Bassi <ebassi@linux.intel.com>
42 Date:   Tue Mar 2 19:09:20 2010 +0000
43
44     conformance: Use g_assert_no_error() if available
45     
46     GLib 2.20 has a nice g_assert() wrapper which will print out the GError
47     if it's not NULL.
48
49  tests/conform/test-animator.c      |   15 +++++++++++++++
50  tests/conform/test-model.c         |    5 +++++
51  tests/conform/test-script-parser.c |   30 ++++++++++++++++++++++++++++++
52  3 files changed, 50 insertions(+)
53
54 commit 048fcea988446af1ce18356eb1718f85088e73c8
55 Author: Neil Roberts <neil@linux.intel.com>
56 Date:   Tue Mar 2 18:30:31 2010 +0000
57
58     clutter-actor: Initialize with the identity matrix in get_transform
59     
60     The documentation and name of the get_transformation_matrix function
61     implies that 'matrix' is purely an out parameter. However it wasn't
62     initializing the matrix before calling the 'apply_transform' virtual
63     so it was basically just a wrapper for the virtual. The virtual
64     assumes the matrix parameter is in/out and applies the actor's
65     transformation on top of any existing transformations. This causes
66     unexpected semantics that are inconsistent with the documentation.
67
68  clutter/clutter-actor.c |    2 ++
69  1 file changed, 2 insertions(+)
70
71 commit e550755f3dc13f11a9d956bb9b52294ea33c8da6
72 Author: Emmanuele Bassi <ebassi@linux.intel.com>
73 Date:   Tue Mar 2 17:47:13 2010 +0000
74
75     text-field: Cast GString->len to integer before printing
76     
77     The compiler will warn on 64bit architectures when using %d for
78     printing a gsize field.
79     
80     http://bugzilla.openedhand.com/show_bug.cgi?id=2019
81
82  tests/interactive/test-text-field.c |    5 ++++-
83  1 file changed, 4 insertions(+), 1 deletion(-)
84
85 commit 38a24144980bd0c6d717f39eb5d215d3abc30ef5
86 Author: Robert Bragg <robert@linux.intel.com>
87 Date:   Tue Mar 2 14:04:54 2010 +0000
88
89     glx tfp: make clutter_glx_texture_pixmap_update_area cheap
90     
91     This changes clutter_glx_texture_pixmap_update_area so it defers the
92     call to glXBindTexImageEXT until our pre "paint" signal handler which
93     makes clutter_glx_texture_pixmap_update_area cheap to call.
94     
95     The hope is that mutter can switch to reporting raw damage updates to
96     ClutterGLXTexturePixmap and we can use these to queue clipped redraws.
97
98  clutter/glx/clutter-glx-texture-pixmap.c |  186 ++++++++++++++----------------
99  1 file changed, 89 insertions(+), 97 deletions(-)
100
101 commit c0d5af5de5bcc504abeb81a7f7a1ec0f696b574d
102 Author: Robert Bragg <robert@linux.intel.com>
103 Date:   Mon Nov 30 17:47:55 2009 +0000
104
105     Adds initial clipped redraw support to Clutter
106     
107     A new (internal only currently) API, _clutter_actor_queue_clipped_redraw
108     can be used to queue a redraw along with a clip rectangle in actor
109     coordinates. This clip rectangle propagates up to the stage and clutter
110     backend which may optionally use the information to optimize stage
111     redraws. The GLX backend in particular may scissor the next redraw to
112     the clip rectangle and use GLX_MESA_copy_sub_buffer to present the stage
113     subregion.
114     
115     The intention is that any actors that can naturally determine the bounds
116     of updates should queue clipped redraws to reduce the cost of updating
117     small regions of the screen.
118     
119     Notes:
120     » If GLX_MESA_copy_sub_buffer isn't available then the GLX backend
121       ignores any clip rectangles.
122     
123     » queuing multiple clipped redraws will result in the bounding box of
124       each clip rectangle being used.
125     
126     » If a clipped redraw has a height > 300 pixels then it's promoted into
127       a full stage redraw, so that the GPU doesn't end up blocking too long
128       waiting for the vsync to reach the optimal position to avoid tearing.
129     
130       » Note: no empirical data was used to come up with this threshold so
131         we may need to tune this.
132     
133     » Currently only ClutterX11TexturePixmap makes use of this new API. This
134       is done via a new "queue-damage-redraw" signal that is emitted when
135       the pixmap is updated. The default handler queues a clipped redraw
136       with the assumption that the pixmap is being painted as a rectangle
137       covering the actors transformed allocation. If you subclass
138       ClutterX11TexturePixmap and change how it's painted you now also
139       need to override the signal handler and queue your own redraw.
140     
141       Technically this is a semantic break, but it's assumed that no one
142       is currently doing this.
143     
144     This still leaves a few unsolved issues with regards to optimizing sub
145     stage redraws that need to be addressed in further work so this can only
146     be considered a stepping stone a this point:
147     
148     » Because we have no reliable way to determine if the painting of any
149       given actor is being modified any optimizations implemented using
150       _clutter_actor_queue_redraw_with_clip must be overridable by a
151       subclass, and technically must be opt-in for existing classes to avoid
152       a change in semantics. E.g. consider that a user connects to the paint
153       signal for ClutterTexture and paints a circle instead of a rectangle.
154       In this case any original logic to queue clipped redraws would be
155       incorrect.
156     
157     » Currently only the implementation of an actor has enough information
158       with which to queue clipped redraws. E.g. It is not possible for
159       generic code in clutter-actor.c to queue a clipped redraw when hiding
160       an actor because actors have no way to report a "paint box". (remember
161       actors can draw outside their allocation and actors with depth may
162       also be projected outside of their allocation)
163     
164       » The current plan is to add a actor_class->get_paint_cuboid()
165         virtual so actors can report a bounding cube for everything they
166         would draw in their current state and use that to queue clipped
167         redraws against the stage by projecting the paint cube into stage
168         coordinates.
169     
170     » Our heuristics for promoting clipped redraws into full redraws to
171       avoid blocking the GPU while we wait for the vsync need improving:
172     
173       » vsync issues aren't relevant for redirected/composited applications
174         so they should use different heuristics. In this case we instead
175         need to trade off the cost of blitting when using glXCopySubBuffer
176         vs promoting to a full redraw and flipping instead.
177
178  clutter/clutter-actor.c                  |  402 ++++++++++++++++++++++------
179  clutter/clutter-actor.h                  |   20 ++
180  clutter/clutter-debug.h                  |    6 +-
181  clutter/clutter-main.c                   |    4 +-
182  clutter/clutter-private.h                |   39 ++-
183  clutter/clutter-stage-window.c           |   29 ++
184  clutter/clutter-stage-window.h           |   82 +++---
185  clutter/clutter-stage.c                  |   64 +++++
186  clutter/glx/clutter-backend-glx.c        |  185 ++-----------
187  clutter/glx/clutter-backend-glx.h        |    5 +
188  clutter/glx/clutter-glx-texture-pixmap.c |   14 +-
189  clutter/glx/clutter-stage-glx.c          |  426 ++++++++++++++++++++++++++++++
190  clutter/glx/clutter-stage-glx.h          |    8 +-
191  clutter/x11/clutter-x11-texture-pixmap.c |  172 +++++++++---
192  14 files changed, 1116 insertions(+), 340 deletions(-)
193
194 commit 09d8460a5c3f905573378172ed553fd57d49913e
195 Author: Øyvind Kolås <pippin@linux.intel.com>
196 Date:   Tue Mar 2 17:03:03 2010 +0000
197
198     animator: s/clutter_animator_run/clutter_animator_start/
199     
200     This is consistent with choice of words in clutter_timeline_start and
201     makes the API less surprising.
202
203  clutter/clutter-animator.c                 |    4 ++--
204  clutter/clutter-animator.h                 |    2 +-
205  doc/reference/clutter/clutter-sections.txt |    2 +-
206  tests/interactive/test-animator.c          |    2 +-
207  4 files changed, 5 insertions(+), 5 deletions(-)
208
209 commit 9d1ea81dc51464e86d7a4eee27874136e9e34cad
210 Author: Robert Bragg <robert@linux.intel.com>
211 Date:   Tue Mar 2 02:07:40 2010 +0000
212
213     cogl debug: Adds missing guards around debug cogl_args[]
214     
215     commit 511e5ceb516dc accidentally removed the #ifdef COGL_ENABLE_DEBUG
216     guards around the "cogl-debug" and "cogl-no-debug" cogl_args[] which
217     this patch restores.
218
219  clutter/cogl/cogl/cogl-debug.c |    2 ++
220  1 file changed, 2 insertions(+)
221
222 commit aba6c5acc7f1cb15f92666d1681a95b5a805efaf
223 Author: Emmanuele Bassi <ebassi@linux.intel.com>
224 Date:   Tue Mar 2 15:08:01 2010 +0000
225
226     flow-layout: Provide a preferred size
227     
228     The FlowLayout fails to provide a preferred size in case no sizing is
229     specified on one axis. It should, instead, have the preferred size of
230     the sum of its children, depending on the orientation property.
231     
232     http://bugzilla.openedhand.com/show_bug.cgi?id=2013
233
234  clutter/clutter-flow-layout.c        |   92 ++++++++++++++++++++++++++--------
235  tests/interactive/test-flow-layout.c |   20 +++++---
236  2 files changed, 82 insertions(+), 30 deletions(-)
237
238 commit e3fba5f2e80a4c72cc4ef0c193a0b6569e1d8cbf
239 Author: Emmanuele Bassi <ebassi@linux.intel.com>
240 Date:   Tue Mar 2 13:32:46 2010 +0000
241
242     build: Require libtool >= 2.2.6
243     
244     Update the configure.ac to use the LT_INIT() instead of the deprecated
245     AC_PROG_LIBTOOL. This also allows us to depend on a specific libtool
246     version, namely one that doesn't thoroughly suck.
247
248  configure.ac |    6 ++++--
249  1 file changed, 4 insertions(+), 2 deletions(-)
250
251 commit 9a55ddc7c36185b31120b5c5275dac60f5926d8d
252 Author: Øyvind Kolås <pippin@linux.intel.com>
253 Date:   Tue Mar 2 12:38:51 2010 +0000
254
255     animator: restore accidentally removed break
256     
257     In 505e5966 a break statement was removed by accident, causing the
258     animator to enter infinite loops if no initial key is present.
259
260  clutter/clutter-animator.c |    2 ++
261  1 file changed, 2 insertions(+)
262
263 commit 3a84af0106522e46d930fc81013c86465357dc89
264 Merge: 0baeabc a2573ad
265 Author: Emmanuele Bassi <ebassi@linux.intel.com>
266 Date:   Tue Mar 2 12:25:45 2010 +0000
267
268     Merge branch 'eglnative-update'
269     
270     * eglnative-update:
271       eglnative: Add CLUTTER_FB_DEVICE
272       eglnative: Update implementation
273
274 commit a2573ad2ad39931d2a817d4585d87b70c3f86526
275 Author: Emmanuele Bassi <ebassi@linux.intel.com>
276 Date:   Mon Mar 1 11:38:41 2010 +0000
277
278     eglnative: Add CLUTTER_FB_DEVICE
279     
280     Some EGL drivers for embedded devices require a specific framebuffer
281     device to be opened and passed to eglCreateWindowSurface(). Since it's
282     optional, we can provide an environment variabled called
283     CLUTTER_FB_DEVICE that can be used to specify the path of the device
284     to be opened.
285     
286     http://bugzilla.openedhand.com/show_bug.cgi?id=1997
287
288  clutter/eglnative/clutter-backend-egl.c |   59 ++++++++++++++++++++++++++++---
289  clutter/eglnative/clutter-backend-egl.h |    3 ++
290  2 files changed, 57 insertions(+), 5 deletions(-)
291
292 commit b4e9f40394fb2e4d63bccc9f9d932a5da87cc2a2
293 Author: Emmanuele Bassi <ebassi@linux.intel.com>
294 Date:   Sat Feb 27 09:42:42 2010 +0000
295
296     eglnative: Update implementation
297     
298     Update the EGL native framebuffer backend to be 1.2-ready:
299     
300       » create the EGL context and the surface inside the create_context()
301         implementation so that a context is always available
302     
303       » simplify the StageWindow implementation
304     
305       » clean up old code
306     
307     http://bugzilla.openedhand.com/show_bug.cgi?id=1997
308
309  clutter/eglnative/clutter-backend-egl.c |  186 ++++++++++++++++++++--
310  clutter/eglnative/clutter-backend-egl.h |   20 ++-
311  clutter/eglnative/clutter-event-egl.c   |   60 ++++---
312  clutter/eglnative/clutter-stage-egl.c   |  259 +++++++------------------------
313  clutter/eglnative/clutter-stage-egl.h   |    8 +-
314  5 files changed, 275 insertions(+), 258 deletions(-)
315
316 commit 0baeabc2aa1a4b2a1908b7acd15f947cb8b1eb4d
317 Author: Owen W. Taylor <otaylor@fishsoup.net>
318 Date:   Mon Mar 1 13:54:03 2010 -0500
319
320     Fall back in _cogl_texture_2d_new_from_bitmap()
321     
322     Just like _cogl_texture_2d_new_with_size(),
323     _cogl_texture_2d_new_from_bitmap() needs to check if an unsliced
324     texture can be created at the given size, or if hardware
325     limitations prevent this.
326     
327     http://bugzilla.openedhand.com/show_bug.cgi?id=2014
328     
329     Signed-off-by: Neil Roberts <neil@linux.intel.com>
330
331  clutter/cogl/cogl/cogl-texture-2d.c |    3 +++
332  1 file changed, 3 insertions(+)
333
334 commit 74a27bbb1c0ae12ba937d215323d5a716781cb1b
335 Author: Emmanuele Bassi <ebassi@linux.intel.com>
336 Date:   Tue Mar 2 09:53:55 2010 +0000
337
338     docs: Documentation fixes
339     
340     Let's see if we can get a 100% coverage for Clutter too.
341
342  clutter/clutter-animatable.h               |    9 +++++
343  clutter/clutter-animator.c                 |    5 +--
344  clutter/clutter-box.c                      |    3 ++
345  clutter/clutter-box.h                      |   49 +++++++++++++++++++++++++
346  clutter/clutter-container.h                |    9 +++++
347  clutter/clutter-device-manager.h           |   13 +++++--
348  clutter/clutter-media.h                    |    9 +++++
349  clutter/clutter-scriptable.h               |    9 +++++
350  clutter/clutter-version.h.in               |   38 ++++++++++++++++++++
351  clutter/eglnative/clutter-backend-egl.c    |    7 ++++
352  clutter/glx/clutter-glx-texture-pixmap.c   |   53 ++++++++++++++--------------
353  clutter/glx/clutter-glx-texture-pixmap.h   |   16 +++++++++
354  clutter/x11/clutter-backend-x11.c          |    8 +++++
355  clutter/x11/clutter-x11-texture-pixmap.c   |   36 ++++++++++++++-----
356  clutter/x11/clutter-x11-texture-pixmap.h   |   20 ++++++++++-
357  clutter/x11/clutter-x11.h                  |    8 ++++-
358  doc/reference/clutter/Makefile.am          |    4 ---
359  doc/reference/clutter/clutter-sections.txt |    4 +--
360  18 files changed, 252 insertions(+), 48 deletions(-)
361
362 commit c0a553163b5e82cb70e956e802d7f9b61bb13948
363 Author: Neil Roberts <neil@linux.intel.com>
364 Date:   Mon Mar 1 18:08:41 2010 +0000
365
366     cogl: Support any format in cogl_read_pixels
367     
368     cogl_read_pixels() no longer asserts that the format passed in is
369     RGBA_8888 but instead accepts any format. The appropriate GL enums for
370     the format are passed to glReadPixels so OpenGL should be perform a
371     conversion if neccessary.
372     
373     It currently assumes glReadPixels will always give us premultiplied
374     data. This will usually be correct because the result of the default
375     blending operations for Cogl ends up with premultiplied data in the
376     framebuffer. However it is possible for the framebuffer to be in
377     whatever format depending on what CoglMaterial is used to render to
378     it. Eventually we may want to add a way for an application to inform
379     Cogl that the framebuffer is not premultiplied in case it is being
380     used for some special purpose.
381     
382     If the requested format is not premultiplied then Cogl will convert
383     it. The tests have been changed to read the data as premultiplied so
384     that they won't be affected by the conversion. Picking in Clutter has
385     been changed to use COGL_PIXEL_FORMAT_RGB_888 because it doesn't need
386     the alpha component. clutter_stage_read_pixels is left unchanged
387     because the application can't specify a format for that so it seems to
388     make most sense to store unpremultiplied values.
389     
390     http://bugzilla.openedhand.com/show_bug.cgi?id=1959
391
392  clutter/clutter-main.c                             |   10 +--
393  clutter/cogl/cogl/cogl.c                           |   84 +++++++++++++-------
394  clutter/cogl/cogl/cogl.h                           |    8 +-
395  tests/conform/test-cogl-backface-culling.c         |    2 +-
396  tests/conform/test-cogl-blend-strings.c            |    4 +-
397  tests/conform/test-cogl-materials.c                |    2 +-
398  tests/conform/test-cogl-multitexture.c             |    2 +-
399  tests/conform/test-cogl-offscreen.c                |    8 +-
400  tests/conform/test-cogl-premult.c                  |    2 +-
401  tests/conform/test-cogl-readpixels.c               |   26 +++++-
402  tests/conform/test-cogl-texture-mipmaps.c          |    2 +-
403  tests/conform/test-cogl-vertex-buffer-contiguous.c |   10 +--
404  tests/conform/test-cogl-vertex-buffer-interleved.c |    2 +-
405  tests/conform/test-cogl-vertex-buffer-mutability.c |    4 +-
406  tests/conform/test-cogl-viewport.c                 |    2 +-
407  15 files changed, 113 insertions(+), 55 deletions(-)
408
409 commit 505e5966e4ee649b7528cdf0410a4e52d59a25ec
410 Author: Øyvind Kolås <pippin@linux.intel.com>
411 Date:   Mon Mar 1 18:35:01 2010 +0000
412
413     Do not overwrite the initial key, making ease-in work as expected.
414     
415     Fixes bug #2008, where a property with ease-in would jump instead of
416     start at the properties initial value.
417
418  clutter/clutter-animator.c |    9 ---------
419  1 file changed, 9 deletions(-)
420
421 commit 7d0ad7ac1b8f6b8a92d0c97180d2885a3a18bcdd
422 Author: Bastian Winkler <buz@netbuz.org>
423 Date:   Mon Mar 1 17:00:41 2010 +0100
424
425     animator: Remove redundant declaration in header file
426     
427     clutter_animator_property_set_interpolation was declared twice in
428     clutter-animator.h
429     
430     http://bugzilla.openedhand.com/show_bug.cgi?id=2012
431
432  clutter/clutter-animator.h |    5 -----
433  1 file changed, 5 deletions(-)
434
435 commit 53eecb8469855d17e863c2113a58f0b6e9c26729
436 Author: Emmanuele Bassi <ebassi@linux.intel.com>
437 Date:   Mon Mar 1 17:47:52 2010 +0000
438
439     docs: Add Animator.compute_value()
440     
441     The clutter_animator_compute_value() has been added to the API, but it
442     is missing from the API reference.
443
444  doc/reference/clutter/clutter-sections.txt |    1 +
445  1 file changed, 1 insertion(+)
446
447 commit 1d9ddad9a3ee79d32091b12197bd18e0b283da22
448 Author: Emmanuele Bassi <ebassi@linux.intel.com>
449 Date:   Mon Mar 1 17:45:00 2010 +0000
450
451     docs: Fix syntax error in Model's documentation
452     
453     A missing opening quote sign is breaking gtk-doc for ClutterModel.
454
455  clutter/clutter-model.c |    2 +-
456  1 file changed, 1 insertion(+), 1 deletion(-)
457
458 commit 1777a69f2f036e2ead5986a5c91f18480a14e4fd
459 Merge: 8146d8d 7ffb62e
460 Author: Emmanuele Bassi <ebassi@linux.intel.com>
461 Date:   Mon Mar 1 15:37:12 2010 +0000
462
463     Merge branch 'stage-min-size-rework'
464     
465     * stage-min-size-rework:
466       docs: Update minimum size accessors
467       actor: Use the TOPLEVEL flag instead of a type check
468       [stage] Use min-width/height props for min size
469
470 commit 8146d8d08deafd6cf86238a4a8c2fa6149e5c691
471 Author: Robert Bragg <robert@linux.intel.com>
472 Date:   Fri Feb 26 09:44:29 2010 +0000
473
474     profile: avoid segfault generating reports with no stats
475     
476     The clutter-profile.c print_report() code would crash if no stats had
477     been gathered because uprof would return NULL for the "Redrawing" timer
478     which we then dereferenced.
479     
480     This changes the code to start by checking for the "Mainloop",
481     "Redrawing" and "Do Pick" timers and if none are present it returns
482     immediately without generating any report.
483
484  clutter/clutter-profile.c |   18 +++++++++---------
485  1 file changed, 9 insertions(+), 9 deletions(-)
486
487 commit b9a91594f4b37388222b587eaea7618ea8c78381
488 Author: Robert Bragg <robert@linux.intel.com>
489 Date:   Fri Feb 26 09:48:43 2010 +0000
490
491     build: Fixes out of tree builds
492     
493     When building the gobject introspection data the build wasn't able to
494     find clutter/clutter-json.h so this adds $(top_builddir) to INCLUDES.
495
496  clutter/Makefile.am |    3 ++-
497  1 file changed, 2 insertions(+), 1 deletion(-)
498
499 commit 79acb088e7f6916fb77a6341c22f9022c0f50208
500 Author: Emmanuele Bassi <ebassi@linux.intel.com>
501 Date:   Mon Mar 1 12:56:10 2010 +0000
502
503     Remove mentions of the FSF address
504     
505     Since using addresses that might change is something that finally
506     the FSF acknowledge as a plausible scenario (after changing address
507     twice), the license blurb in the source files should use the URI
508     for getting the license in case the library did not come with it.
509     
510     Not that URIs cannot possibly change, but at least it's easier to
511     set up a redirection at the same place.
512     
513     As a side note: this commit closes the oldes bug in Clutter's bug
514     report tool.
515     
516     http://bugzilla.openedhand.com/show_bug.cgi?id=521
517
518  clutter/clutter-actor.c                                |    7 +++----
519  clutter/clutter-actor.h                                |    3 ++-
520  clutter/clutter-alpha.c                                |    6 ++----
521  clutter/clutter-backend.c                              |   11 ++++++-----
522  clutter/clutter-behaviour-depth.c                      |    4 +---
523  clutter/clutter-behaviour-ellipse.c                    |   10 +---------
524  clutter/clutter-behaviour-opacity.c                    |    4 +---
525  clutter/clutter-behaviour-path.c                       |   11 ++++++-----
526  clutter/clutter-behaviour-rotate.c                     |    4 +---
527  clutter/clutter-behaviour-scale.c                      |    4 +---
528  clutter/clutter-behaviour.c                            |    4 +---
529  clutter/clutter-bezier.c                               |    4 +---
530  clutter/clutter-cairo-texture.c                        |    6 ++----
531  clutter/clutter-cairo-texture.h                        |    7 +++----
532  clutter/clutter-child-meta.c                           |    4 +---
533  clutter/clutter-color.c                                |    4 +---
534  clutter/clutter-container.c                            |    6 +++---
535  clutter/clutter-event.c                                |    6 +++---
536  clutter/clutter-feature.c                              |    6 +++---
537  clutter/clutter-fixed.c                                |    6 +++---
538  clutter/clutter-frame-source.c                         |    6 +++---
539  clutter/clutter-group.c                                |    6 +++---
540  clutter/clutter-id-pool.c                              |    6 +++---
541  clutter/clutter-keysyms.h                              |    6 +++---
542  clutter/clutter-list-model.c                           |    6 +++---
543  clutter/clutter-main.c                                 |    6 +++---
544  clutter/clutter-model.c                                |    6 +++---
545  clutter/clutter-private.h                              |    6 +++---
546  clutter/clutter-rectangle.c                            |    6 +++---
547  clutter/clutter-score.c                                |    6 +++---
548  clutter/clutter-script-parser.c                        |    6 +++---
549  clutter/clutter-script-private.h                       |    6 +++---
550  clutter/clutter-script.c                               |    6 +++---
551  clutter/clutter-scriptable.c                           |    6 +++---
552  clutter/clutter-shader-types.c                         |    6 +++---
553  clutter/clutter-shader.c                               |    6 +++---
554  clutter/clutter-stage.c                                |    6 +++---
555  clutter/clutter-texture.c                              |    6 +++---
556  clutter/clutter-timeline.c                             |    6 +++---
557  clutter/clutter-timeout-pool.c                         |    6 +++---
558  clutter/clutter-units.c                                |    6 +++---
559  clutter/clutter-util.c                                 |    6 +++---
560  clutter/clutter-version.h.in                           |    6 +++---
561  clutter/clutter.h                                      |    6 +++---
562  clutter/cogl/cogl/cogl-atlas-texture-private.h         |    6 +++---
563  clutter/cogl/cogl/cogl-atlas-texture.c                 |    6 +++---
564  clutter/cogl/cogl/cogl-atlas.c                         |    6 +++---
565  clutter/cogl/cogl/cogl-atlas.h                         |    6 +++---
566  clutter/cogl/cogl/cogl-bitmap-fallback.c               |    6 +++---
567  clutter/cogl/cogl/cogl-bitmap-pixbuf.c                 |    6 +++---
568  clutter/cogl/cogl/cogl-bitmap-private.h                |    6 +++---
569  clutter/cogl/cogl/cogl-bitmap.c                        |    6 +++---
570  clutter/cogl/cogl/cogl-bitmap.h                        |    6 +++---
571  clutter/cogl/cogl/cogl-blend-string.c                  |    6 +++---
572  clutter/cogl/cogl/cogl-blend-string.h                  |    6 +++---
573  clutter/cogl/cogl/cogl-buffer-private.h                |    6 +++---
574  clutter/cogl/cogl/cogl-buffer.c                        |    6 +++---
575  clutter/cogl/cogl/cogl-buffer.h                        |    6 +++---
576  clutter/cogl/cogl/cogl-clip-stack.c                    |    6 +++---
577  clutter/cogl/cogl/cogl-clip-stack.h                    |    6 +++---
578  clutter/cogl/cogl/cogl-color.c                         |    6 +++---
579  clutter/cogl/cogl/cogl-color.h                         |    6 +++---
580  clutter/cogl/cogl/cogl-context.c                       |    6 +++---
581  clutter/cogl/cogl/cogl-context.h                       |    6 +++---
582  clutter/cogl/cogl/cogl-debug.c                         |    6 +++---
583  clutter/cogl/cogl/cogl-debug.h                         |    6 +++---
584  clutter/cogl/cogl/cogl-deprecated.h                    |    6 +++---
585  clutter/cogl/cogl/cogl-feature-private.c               |    6 +++---
586  clutter/cogl/cogl/cogl-feature-private.h               |    6 +++---
587  clutter/cogl/cogl/cogl-fixed.c                         |    6 +++---
588  clutter/cogl/cogl/cogl-fixed.h                         |    6 +++---
589  clutter/cogl/cogl/cogl-framebuffer-private.h           |    6 +++---
590  clutter/cogl/cogl/cogl-framebuffer.c                   |    6 +++---
591  clutter/cogl/cogl/cogl-handle.h                        |    6 +++---
592  clutter/cogl/cogl/cogl-internal.h                      |    6 +++---
593  clutter/cogl/cogl/cogl-journal-private.h               |    6 +++---
594  clutter/cogl/cogl/cogl-journal.c                       |    6 +++---
595  clutter/cogl/cogl/cogl-material-private.h              |    6 +++---
596  clutter/cogl/cogl/cogl-material.c                      |    6 +++---
597  clutter/cogl/cogl/cogl-material.h                      |    6 +++---
598  clutter/cogl/cogl/cogl-matrix-mesa.c                   |    6 +++---
599  clutter/cogl/cogl/cogl-matrix-mesa.h                   |    6 +++---
600  clutter/cogl/cogl/cogl-matrix-private.h                |    6 +++---
601  clutter/cogl/cogl/cogl-matrix-stack.c                  |    6 +++---
602  clutter/cogl/cogl/cogl-matrix-stack.h                  |    6 +++---
603  clutter/cogl/cogl/cogl-matrix.c                        |    6 +++---
604  clutter/cogl/cogl/cogl-matrix.h                        |    6 +++---
605  clutter/cogl/cogl/cogl-offscreen.h                     |    6 +++---
606  clutter/cogl/cogl/cogl-path.c                          |    6 +++---
607  clutter/cogl/cogl/cogl-path.h                          |    6 +++---
608  clutter/cogl/cogl/cogl-pixel-buffer-private.h          |    6 +++---
609  clutter/cogl/cogl/cogl-pixel-buffer.c                  |    6 +++---
610  clutter/cogl/cogl/cogl-pixel-buffer.h                  |    6 +++---
611  clutter/cogl/cogl/cogl-primitives.c                    |    6 +++---
612  clutter/cogl/cogl/cogl-primitives.h                    |    6 +++---
613  clutter/cogl/cogl/cogl-profile.h                       |    6 +++---
614  clutter/cogl/cogl/cogl-shader.h                        |    6 +++---
615  clutter/cogl/cogl/cogl-spans.c                         |    6 +++---
616  clutter/cogl/cogl/cogl-spans.h                         |    6 +++---
617  clutter/cogl/cogl/cogl-sub-texture-private.h           |    6 +++---
618  clutter/cogl/cogl/cogl-sub-texture.c                   |    6 +++---
619  clutter/cogl/cogl/cogl-texture-2d-private.h            |    6 +++---
620  clutter/cogl/cogl/cogl-texture-2d-sliced-private.h     |    6 +++---
621  clutter/cogl/cogl/cogl-texture-2d-sliced.c             |    6 +++---
622  clutter/cogl/cogl/cogl-texture-2d.c                    |    6 +++---
623  clutter/cogl/cogl/cogl-texture-driver.h                |    6 +++---
624  clutter/cogl/cogl/cogl-texture-private.h               |    6 +++---
625  clutter/cogl/cogl/cogl-texture.c                       |    6 +++---
626  clutter/cogl/cogl/cogl-texture.h                       |    6 +++---
627  clutter/cogl/cogl/cogl-types.h                         |    6 +++---
628  clutter/cogl/cogl/cogl-util.c                          |    6 +++---
629  clutter/cogl/cogl/cogl-util.h                          |    6 +++---
630  clutter/cogl/cogl/cogl-vertex-buffer-private.h         |    6 +++---
631  clutter/cogl/cogl/cogl-vertex-buffer.c                 |    6 +++---
632  clutter/cogl/cogl/cogl-vertex-buffer.h                 |    6 +++---
633  clutter/cogl/cogl/cogl.c                               |    6 +++---
634  clutter/cogl/cogl/cogl.h                               |    6 +++---
635  clutter/cogl/cogl/driver/gl/cogl-context-driver.c      |    6 +++---
636  clutter/cogl/cogl/driver/gl/cogl-context-driver.h      |    6 +++---
637  clutter/cogl/cogl/driver/gl/cogl-defines.h.in          |    6 +++---
638  clutter/cogl/cogl/driver/gl/cogl-feature-functions.h   |    6 +++---
639  clutter/cogl/cogl/driver/gl/cogl-program.c             |    6 +++---
640  clutter/cogl/cogl/driver/gl/cogl-program.h             |    6 +++---
641  clutter/cogl/cogl/driver/gl/cogl-shader-private.h      |    6 +++---
642  clutter/cogl/cogl/driver/gl/cogl-shader.c              |    6 +++---
643  clutter/cogl/cogl/driver/gl/cogl-texture-driver.c      |    6 +++---
644  clutter/cogl/cogl/driver/gl/cogl.c                     |    6 +++---
645  clutter/cogl/cogl/driver/gles/cogl-context-driver.c    |    6 +++---
646  clutter/cogl/cogl/driver/gles/cogl-context-driver.h    |    6 +++---
647  clutter/cogl/cogl/driver/gles/cogl-defines.h.in        |    6 +++---
648  clutter/cogl/cogl/driver/gles/cogl-feature-functions.h |    6 +++---
649  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c     |    6 +++---
650  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.h     |    6 +++---
651  clutter/cogl/cogl/driver/gles/cogl-program.c           |    6 +++---
652  clutter/cogl/cogl/driver/gles/cogl-program.h           |    6 +++---
653  clutter/cogl/cogl/driver/gles/cogl-shader-private.h    |    6 +++---
654  clutter/cogl/cogl/driver/gles/cogl-shader.c            |    6 +++---
655  clutter/cogl/cogl/driver/gles/cogl-texture-driver.c    |    6 +++---
656  clutter/cogl/cogl/driver/gles/cogl.c                   |    6 +++---
657  clutter/cogl/cogl/winsys/cogl-eglnative.c              |    6 +++---
658  clutter/cogl/cogl/winsys/cogl-eglx.c                   |    6 +++---
659  clutter/cogl/cogl/winsys/cogl-fruity.c                 |    6 +++---
660  clutter/cogl/cogl/winsys/cogl-glx.c                    |    6 +++---
661  clutter/cogl/cogl/winsys/cogl-osx.c                    |    6 +++---
662  clutter/cogl/cogl/winsys/cogl-sdl.c                    |    6 +++---
663  clutter/cogl/cogl/winsys/cogl-win32.c                  |    6 +++---
664  clutter/cogl/cogl/winsys/cogl-winsys.h                 |    6 +++---
665  clutter/eglnative/clutter-backend-egl.h                |    6 +++---
666  clutter/eglnative/clutter-egl-headers.h                |    6 +++---
667  clutter/eglnative/clutter-egl.h                        |    6 +++---
668  clutter/eglnative/clutter-event-egl.c                  |    6 +++---
669  clutter/eglx/clutter-backend-egl.h                     |    6 +++---
670  clutter/eglx/clutter-egl-headers.h                     |    6 +++---
671  clutter/eglx/clutter-eglx.h                            |    6 +++---
672  clutter/fruity/clutter-backend-fruity.h                |    6 +++---
673  clutter/fruity/clutter-fruity.h                        |    6 +++---
674  clutter/glx/clutter-backend-glx.c                      |    6 +++---
675  clutter/glx/clutter-backend-glx.h                      |    6 +++---
676  clutter/glx/clutter-event-glx.c                        |    6 +++---
677  clutter/glx/clutter-event-glx.h                        |    6 +++---
678  clutter/glx/clutter-glx-texture-pixmap.c               |    6 +++---
679  clutter/glx/clutter-glx-texture-pixmap.h               |    6 +++---
680  clutter/glx/clutter-glx.h                              |    6 +++---
681  clutter/glx/clutter-stage-glx.c                        |    6 +++---
682  clutter/glx/clutter-stage-glx.h                        |    6 +++---
683  clutter/osx/clutter-backend-osx.c                      |    6 +++---
684  clutter/osx/clutter-backend-osx.h                      |    6 +++---
685  clutter/osx/clutter-event-osx.c                        |    6 +++---
686  clutter/osx/clutter-osx.h                              |    6 +++---
687  clutter/osx/clutter-stage-osx.c                        |    6 +++---
688  clutter/osx/clutter-stage-osx.h                        |    6 +++---
689  clutter/win32/clutter-backend-win32.c                  |    6 +++---
690  clutter/win32/clutter-backend-win32.h                  |    6 +++---
691  clutter/win32/clutter-event-win32.c                    |    6 +++---
692  clutter/win32/clutter-stage-win32.c                    |    6 +++---
693  clutter/win32/clutter-stage-win32.h                    |    6 +++---
694  clutter/win32/clutter-win32.h                          |    6 +++---
695  clutter/x11/clutter-backend-x11-private.h              |    6 +++---
696  clutter/x11/clutter-backend-x11.c                      |    6 +++---
697  clutter/x11/clutter-backend-x11.h                      |    6 +++---
698  clutter/x11/clutter-event-x11.c                        |    6 +++---
699  clutter/x11/clutter-stage-x11.c                        |    6 +++---
700  clutter/x11/clutter-stage-x11.h                        |    6 +++---
701  clutter/x11/clutter-x11-texture-pixmap.c               |    6 +++---
702  clutter/x11/clutter-x11-texture-pixmap.h               |    6 +++---
703  clutter/x11/clutter-x11.h                              |    6 +++---
704  186 files changed, 543 insertions(+), 570 deletions(-)
705
706 commit 23867875a14ab6d7288d6a67c67b20a1f136be94
707 Author: Emmanuele Bassi <ebassi@linux.intel.com>
708 Date:   Mon Mar 1 11:12:16 2010 +0000
709
710     build: Remove unused checks on platform functions
711     
712     There is no need for us to check for low-level functions and header
713     files, especially since we haven't been checking the results until
714     now. This makes cross-compiling slightly more bearable.
715
716  clutter/clutter-private.h         |    8 ++------
717  clutter/x11/clutter-backend-x11.c |    9 +++++----
718  clutter/x11/clutter-stage-x11.c   |    4 ++++
719  configure.ac                      |   12 +++---------
720  4 files changed, 14 insertions(+), 19 deletions(-)
721
722 commit ce6a24eb2b5eaba4b60f82855af7a24d0f5afdad
723 Author: Emmanuele Bassi <ebassi@linux.intel.com>
724 Date:   Sun Feb 28 10:59:29 2010 +0000
725
726     actor: Call unparent() in destroy
727     
728     If the actor is an internal child of another actor then we should call
729     unparent() when destroying it, like clutter_actor_reparent() does;
730     otherwise we'll leak the actor, since the parent holds a reference to
731     it.
732     
733     http://bugzilla.openedhand.com/show_bug.cgi?id=2009
734
735  clutter/clutter-actor.c |    4 ++--
736  1 file changed, 2 insertions(+), 2 deletions(-)
737
738 commit 7ffb62eab939de46b8234243cab6f6c4b40d60ec
739 Author: Emmanuele Bassi <ebassi@linux.intel.com>
740 Date:   Sat Feb 27 18:56:34 2010 +0000
741
742     docs: Update minimum size accessors
743     
744     Expand the documentation for set_minimum_size() and get_minimum_size(),
745     and add introspection annotations for get_minimum_size().
746
747  clutter/clutter-stage.c |   41 +++++++++++++++++++++++++++++------------
748  1 file changed, 29 insertions(+), 12 deletions(-)
749
750 commit 52ba9a1800302f887ebe6d2e7aa7ab4503ea6e5e
751 Author: Emmanuele Bassi <ebassi@linux.intel.com>
752 Date:   Sat Feb 27 18:24:17 2010 +0000
753
754     actor: Use the TOPLEVEL flag instead of a type check
755     
756     We can use the internal private CLUTTER_ACTOR_IS_TOPLEVEL flag, which is
757     set only on Stages.
758
759  clutter/clutter-actor.c |   19 +++++++++++++++----
760  1 file changed, 15 insertions(+), 4 deletions(-)
761
762 commit cd62dfbd1419870fb6792bcab87ea8e7d0e760f5
763 Author: Chris Lord <chris@linux.intel.com>
764 Date:   Fri Feb 26 18:36:38 2010 +0000
765
766     [stage] Use min-width/height props for min size
767     
768     Instead of shadowing these properties with different properties with the
769     same names on stage, actually use them. Behaviour should be identical,
770     except the minimum stage size can now be enforced by setting the
771     min-width/height properties as well as using the set_minimum_size
772     function.
773
774  clutter/clutter-actor.c |   13 ++++--
775  clutter/clutter-stage.c |  102 +++++++++++++++++++++++++++++++----------------
776  2 files changed, 77 insertions(+), 38 deletions(-)
777
778 commit 9f67e4826c9880732e4f2a74ac42f729e7e80042
779 Author: Emmanuele Bassi <ebassi@linux.intel.com>
780 Date:   Fri Feb 26 16:43:02 2010 +0000
781
782     docs: Update --enable-cogl-debug description
783     
784     The 'no' value is not the default any more. The 'minimum' value is
785     always the default, regardless of the release status.
786
787  README |    3 +--
788  1 file changed, 1 insertion(+), 2 deletions(-)
789
790 commit 62f2961f8a9b2974e0a7a11ea534f0b14f8fef1a
791 Author: Emmanuele Bassi <ebassi@linux.intel.com>
792 Date:   Fri Feb 26 15:12:27 2010 +0000
793
794     docs: Unicode-ify NEWS
795
796  NEWS | 1302 +++++++++++++++++++++++++++++++++---------------------------------
797  1 file changed, 651 insertions(+), 651 deletions(-)
798
799 commit c8c62af0cf5d33f3fe3e4aab44ed49363263252c
800 Author: Emmanuele Bassi <ebassi@linux.intel.com>
801 Date:   Fri Feb 26 15:00:47 2010 +0000
802
803     build: More options for Automake
804     
805     Require automake >= 1.10, and add the following options:
806     
807       » dist-bzip2: create a bz2 tarball in the dist process
808       » check-news: check that we changed the NEWS file prior to dist,
809         to avoid another release without NEWS updates, like 1.1.10
810
811  configure.ac |    2 +-
812  1 file changed, 1 insertion(+), 1 deletion(-)
813
814 commit e0f04efa411c0987db32c056958ad2c7cf5b6736
815 Author: Emmanuele Bassi <ebassi@linux.intel.com>
816 Date:   Fri Feb 26 10:36:17 2010 +0000
817
818     device: When changing the stage, unset the pointer actor
819     
820     If we do not unset the Stage we will have stale data, and the Crossing
821     event when re-entering a Stage will not be emitted, as the actor under
822     the pointer might be the same as before.
823
824  clutter/clutter-input-device.c |   14 ++++++++++++--
825  1 file changed, 12 insertions(+), 2 deletions(-)
826
827 commit 5d8346829585bb4b6d4617a232f87e3dab4eee5f
828 Author: Neil Roberts <neil@linux.intel.com>
829 Date:   Tue Feb 23 14:45:44 2010 +0000
830
831     cogl-vertex-buffer: Add support for unsigned int indices
832     
833     This adds a COGL_INDICES_TYPE_UNSIGNED_INT enum value so that unsigned
834     ints can be used with cogl_vertex_buffer_indices_new.  Unsigned ints
835     are not supported in core on GLES so a feature flag has also been
836     added to advertise this. GLES only sets the feature if the
837     GL_OES_element_index_uint extension is available. It is an error to
838     call indices_new() with unsigned ints unless the feature is
839     advertised.
840     
841     http://bugzilla.openedhand.com/show_bug.cgi?id=1998
842
843  clutter/cogl/cogl/cogl-types.h                        |    6 +++++-
844  clutter/cogl/cogl/cogl-vertex-buffer.c                |   17 ++++++++++++++++-
845  clutter/cogl/cogl/cogl-vertex-buffer.h                |    8 ++++++++
846  clutter/cogl/cogl/driver/gl/cogl.c                    |    3 ++-
847  .../cogl/cogl/driver/gles/cogl-feature-functions.h    |    6 ++++++
848  5 files changed, 37 insertions(+), 3 deletions(-)
849
850 commit 67d9d928147aa59905960480a5d0b4c19c9d1920
851 Author: Emmanuele Bassi <ebassi@linux.intel.com>
852 Date:   Thu Feb 25 23:23:53 2010 +0000
853
854     docs: Document the "columns" syntax for ClutterModel
855     
856     Like we do for other classes implementing custom properties, we should
857     document the syntax of the "columns" scriptable property of ClutterModel.
858
859  clutter/clutter-model.c |   24 ++++++++++++++++++++++++
860  1 file changed, 24 insertions(+)
861
862 commit 70d7bad98ba50a657204ee356fd5ac5ccf4e8bea
863 Author: Emmanuele Bassi <ebassi@linux.intel.com>
864 Date:   Thu Feb 25 23:15:59 2010 +0000
865
866     conformance: Use g_test_verbose() for logging
867     
868     Protect g_print() calls behind the g_test_verbose() check, to avoid
869     unwanted output during the conformance test run.
870
871  tests/conform/test-model.c |    9 ++++++++-
872  1 file changed, 8 insertions(+), 1 deletion(-)
873
874 commit 96c31bbf0ea14c7cb6eaa824a6d5cf66d58b8d5b
875 Author: Bastian Winkler <buz@netbuz.org>
876 Date:   Thu Feb 25 23:47:49 2010 +0100
877
878     model: Implement ClutterScriptable interface
879     
880     Allow a ClutterModel to be constructed through the ClutterScript API.
881     Currently this allows a model to be generated like like this:
882     
883     {
884       "id" : "test-model",
885       "type" : "ClutterListModel",
886       "columns" : [
887         [ "text-column", "gchararray" ],
888         [ "int-column", "gint" ],
889         [ "actor-column", "ClutterRectangle" ]
890       ]
891     }
892     
893     where 'columns' is an array containing arrays of column-name,
894     column-type pairs.
895     
896     http://bugzilla.openedhand.com/show_bug.cgi?id=2007
897
898  .gitignore                        |    1 +
899  clutter/clutter-model.c           |  105 ++++++++++++++++++++++++++++++++++++-
900  tests/conform/test-conform-main.c |    1 +
901  tests/conform/test-model.c        |   34 ++++++++++++
902  tests/data/test-script-model.json |    9 ++++
903  5 files changed, 149 insertions(+), 1 deletion(-)
904
905 commit 63279f827e9d4e517c3dc88633a8b5ed47fbd74e
906 Author: Emmanuele Bassi <ebassi@linux.intel.com>
907 Date:   Thu Feb 25 22:50:38 2010 +0000
908
909     docs: gtk-doc fixes for Animator
910     
911     Fix the syntax for:
912     
913       → enumeration values
914       → return values
915       → @since tags
916     
917     Also, fix the introspection annotations.
918
919  clutter/clutter-animator.c |   40 +++++++++++++++++++++++++++-------------
920  1 file changed, 27 insertions(+), 13 deletions(-)
921
922 commit 9db135c4eff97a3d3520cc05c9c3e85c153e8cc4
923 Author: Emmanuele Bassi <ebassi@linux.intel.com>
924 Date:   Thu Feb 25 18:28:37 2010 +0000
925
926     glx: Clean up sync-to-vblank mechanism discovery
927     
928     The code has gotten really complicated to follow.
929     
930     As soon as we have a sync-to-vblank mechanism we should just bail out.
931     
932     Also, __GL_SYNC_TO_VBLANK (which is used by nVidia) should be assumed
933     equivalent to a CLUTTER_VBLANK_GLX_SWAP.
934
935  clutter/glx/clutter-backend-glx.c |  169 ++++++++++++++++++++-----------------
936  1 file changed, 92 insertions(+), 77 deletions(-)
937
938 commit 655cb966c08b0ec3a0b73ed1b18fc9ebbe9a93b8
939 Author: Emmanuele Bassi <ebassi@linux.intel.com>
940 Date:   Thu Feb 25 17:09:55 2010 +0000
941
942     docs: Add visual cue for Animator's key frames
943     
944     We should explain what a "key frame" is for ClutterAnimator, possibly
945     with some sort of visual cue.
946     
947     This allows me to demonstrate my poor skills at using Inkscape, as well
948     as my overall bad taste for graphics design.
949
950  clutter/clutter-animator.c                    |   21 ++
951  doc/reference/clutter/Makefile.am             |    3 +
952  doc/reference/clutter/animator-key-frames.png |  Bin 0 -> 11936 bytes
953  doc/reference/clutter/animator-key-frames.svg |  271 +++++++++++++++++++++++++
954  4 files changed, 295 insertions(+)
955
956 commit d3d05261e6a394736757cebb5aad9b9267e7cf53
957 Author: Emmanuele Bassi <ebassi@linux.intel.com>
958 Date:   Thu Feb 25 14:22:08 2010 +0000
959
960     script-parser: Remove top-level types list
961     
962     The top-level types list was comically out of date, and it was only
963     determining whether the type we were constructing was initially unowned
964     or a full object. We can safely replace it with a simple type check.
965
966  clutter/clutter-script-parser.c |   36 ++++--------------------------------
967  1 file changed, 4 insertions(+), 32 deletions(-)
968
969 commit c0be19eff65c4c72aa5c934cee3b582903db40f6
970 Author: Emmanuele Bassi <ebassi@linux.intel.com>
971 Date:   Thu Feb 25 14:20:05 2010 +0000
972
973     script-parser: Be more strict with "children" members
974     
975     The "children" member for Container definitions should only reference
976     actors, and warn about any other type.
977
978  clutter/clutter-script-parser.c |   12 ++++++++++++
979  1 file changed, 12 insertions(+)
980
981 commit c291d5a660f4ebac3dc57acad79b8153686a47f0
982 Author: Emmanuele Bassi <ebassi@linux.intel.com>
983 Date:   Thu Feb 25 14:08:57 2010 +0000
984
985     animator: Add a :timeline property
986     
987     It would be useful to be able to share the Timeline across different
988     animator instances, or with different animation constructs. Also this
989     allows sharing definitions of Timelines in ClutterScript.
990
991  clutter/clutter-animator.c |   26 +++++++++++++++++++++++++-
992  1 file changed, 25 insertions(+), 1 deletion(-)
993
994 commit 641582533952c91576fb53724b70cbe6afb119db
995 Author: Emmanuele Bassi <ebassi@linux.intel.com>
996 Date:   Thu Feb 25 14:02:29 2010 +0000
997
998     animator: Remove NULL check in remove_key()
999     
1000     The arguments for remove_key() can be NULL, but there is an extraneous
1001     assertion that fails if they are. The pre-conditions should match the
1002     documentation, in this case.
1003
1004  clutter/clutter-animator.c |   11 ++++++-----
1005  1 file changed, 6 insertions(+), 5 deletions(-)
1006
1007 commit 4bc4c604e926b07af9ef4c02fd5f000fc939259b
1008 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1009 Date:   Thu Feb 25 12:45:02 2010 +0000
1010
1011     box: Let pack_at() create the ChildMeta, if any
1012     
1013     A sub-class of ClutterBox might add ChildMeta support, and since
1014     pack_at() does not go through clutter_container_add_actor(), we
1015     need to manually call the create_child_meta() ourselves.
1016
1017  clutter/clutter-box.c |    5 +++++
1018  1 file changed, 5 insertions(+)
1019
1020 commit 543e2d3f0609864cebb1f1eaf258108abab50770
1021 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1022 Date:   Thu Feb 25 12:39:24 2010 +0000
1023
1024     container: Expose create and destroy ChildMeta methods
1025     
1026     It is conceivable that Container implementations might add children
1027     outside of the Container::add() implementation - e.g. for packing at
1028     a specific index. Since the addition (and removal) might happen outside
1029     the common path we need to expose all the API that is implicitly called
1030     by ClutterContainer when adding and removing a child - namely the
1031     ChildMeta creation and destruction.
1032
1033  clutter/clutter-container.c                |   44 ++++++++++++++++++++--------
1034  clutter/clutter-container.h                |    4 +++
1035  doc/reference/clutter/clutter-sections.txt |    2 ++
1036  3 files changed, 38 insertions(+), 12 deletions(-)
1037
1038 commit 31b5856d69e8d53de17270da7ab59dd290e2868a
1039 Author: Neil Roberts <neil@linux.intel.com>
1040 Date:   Wed Feb 24 23:04:39 2010 +0000
1041
1042     test-cogl-blend-strings: Add some more tests
1043     
1044     The adds tests for the remaining layer combine functions, the 1 minus
1045     value operator and the TEXTURE_N source. Note however that Cogl
1046     currently fails when parsing a TEXTURE_N source so the test is
1047     commented out.
1048
1049  tests/conform/test-cogl-blend-strings.c |   46 +++++++++++++++++++++++++++++++
1050  1 file changed, 46 insertions(+)
1051
1052 commit 14999bec5e6b3d0aab057ef544f233d968e5cf67
1053 Author: Neil Roberts <neil@linux.intel.com>
1054 Date:   Wed Feb 24 11:13:55 2010 +0000
1055
1056     gles2: Remove the special wrapper for glBindTexture
1057     
1058     Previously the GLES2 backend needed a special wrapper for
1059     glBindTexture because it needed to know the internal GL format of the
1060     texture in order to correctly implement the GL_MODULATE texture env
1061     mode. When GL_MODULATE is used then the RGB values are taken from the
1062     previous texture layer rather than being fetched from the
1063     texture. However since the material API was added Cogl no longer uses
1064     the GL_MODULATE texture env mode but instead always uses GL_COMBINE.
1065     
1066     Compiling the GLES2 backend broke since the more-texture-backends
1067     branch merge because the cogl_get_internal_gl_format function was
1068     removed and there was one place in GLES2 specific code that was using
1069     this to bind the texture.
1070
1071  clutter/cogl/cogl/cogl-material.c                  |   10 ---------
1072  clutter/cogl/cogl/cogl-texture-2d-sliced.c         |    5 ++---
1073  clutter/cogl/cogl/cogl-texture-driver.h            |    7 -------
1074  clutter/cogl/cogl/driver/gl/cogl-texture-driver.c  |   12 -----------
1075  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c |   22 --------------------
1076  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.h |   12 -----------
1077  .../cogl/cogl/driver/gles/cogl-texture-driver.c    |   13 ------------
1078  7 files changed, 2 insertions(+), 79 deletions(-)
1079
1080 commit eba07020c549ff0ede9982c6d911d67e353ca5a3
1081 Author: Neil Roberts <neil@linux.intel.com>
1082 Date:   Wed Feb 24 16:50:32 2010 +0000
1083
1084     cogl-gles2-wrapper: Add support for the layer combine operations
1085     
1086     The texture layer combine functions are now hard coded to GL_COMBINE
1087     instead of GL_MODULATE. The combine function can be customized with
1088     all the parameters of GL_COMBINE. A shader is generated to implement
1089     the given parameters.
1090     
1091     Currently it will try to generate code for the constant color but it
1092     will use a uniform which does not exist.
1093
1094  clutter/cogl/cogl/cogl-blend-string.c              |    9 -
1095  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c |  382 ++++++++++++++++++--
1096  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.h |   16 +
1097  3 files changed, 371 insertions(+), 36 deletions(-)
1098
1099 commit 02b952394ae9efe9e80b803e671bca1b1f711a9a
1100 Author: Neil Roberts <neil@linux.intel.com>
1101 Date:   Wed Feb 24 10:42:59 2010 +0000
1102
1103     gles2: Implement a wrapper for glGetIntegerv(GL_MAX_TEXTURE_UNITS)
1104     
1105     The GLES2 backend for Cogl is failing to compile because
1106     GL_MAX_TEXTURE_UNITS is not defined. Let's define it and provide a
1107     wrapper which uses GL_MAX_TEXTURE_IMAGE_UNITS or
1108     COGL_GLES2_MAX_TEXTURE_UNITS, whichever is the smallest.
1109
1110  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c |    6 ++++++
1111  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.h |    2 ++
1112  2 files changed, 8 insertions(+)
1113
1114 commit 3bc0672feff7c58326c4d50612bedf15aa9c02cb
1115 Author: Øyvind Kolås <pippin@linux.intel.com>
1116 Date:   Thu Feb 25 12:30:07 2010 +0000
1117
1118     animator: handle no initial key
1119     
1120     Fixing the crasher reported in bug #1995.
1121
1122  clutter/clutter-animator.c |  108 ++++++++++++++++++++++++++------------------
1123  1 file changed, 65 insertions(+), 43 deletions(-)
1124
1125 commit d2db512788aac496a3741cb424caea41cf4357a1
1126 Author: Øyvind Kolås <pippin@linux.intel.com>
1127 Date:   Thu Feb 25 11:48:44 2010 +0000
1128
1129     animator: added clutter_animator_compute_value
1130     
1131     Allow querying the computed values of properties managed by a
1132     ClutterAnimator.
1133
1134  clutter/clutter-animator.c |  212 +++++++++++++++++++++++++++++++++++++++++---
1135  clutter/clutter-animator.h |   12 +++
1136  2 files changed, 211 insertions(+), 13 deletions(-)
1137
1138 commit e8d32fd153268c653c1adc5c66f30f0ee624b432
1139 Author: Øyvind Kolås <pippin@linux.intel.com>
1140 Date:   Thu Feb 25 11:28:32 2010 +0000
1141
1142     animator: removed bogus arg in keys interpolation accessor
1143     
1144     A bogus ClutterInterpolation argument had been carried from
1145     clutter_animator_set_interpolation to clutter_animator_get_interpolation
1146     in copy and paste.
1147
1148  clutter/clutter-animator.c |   16 +++++++---------
1149  clutter/clutter-animator.h |    3 +--
1150  2 files changed, 8 insertions(+), 11 deletions(-)
1151
1152 commit be8f53f229397e72fcf5a1bed245d555ea4747e9
1153 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1154 Date:   Thu Feb 25 12:01:03 2010 +0000
1155
1156     animation: Fix a typo
1157     
1158     This will teach me to check before compiling a version-dependent branch
1159     that I'm actually using my jhbuild environment and not the system
1160     libraries.
1161
1162  clutter/clutter-animation.c |    2 +-
1163  1 file changed, 1 insertion(+), 1 deletion(-)
1164
1165 commit 26e22b2ede0eb0fdfbe3d96189cb2aa196da83f8
1166 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1167 Date:   Thu Feb 25 10:22:36 2010 +0000
1168
1169     Conditionally use G_VALUE_COLLECT_INIT() macro
1170     
1171     GLib 2.24 (but starting from the 2.23.2 unstable release) added a new
1172     macro for collecting GValues from a va_list.
1173     
1174     The newly added G_VALUE_COLLECT_INIT() macro should be used in place
1175     of initializing the GValue and calling G_VALUE_COLLECT(), and improves
1176     the collection performances by avoiding multiple checks, free and
1177     initialization calls.
1178
1179  clutter/clutter-animation.c      |    8 ++++++++
1180  clutter/clutter-animator.c       |    7 ++++++-
1181  clutter/clutter-box.c            |    7 +++++++
1182  clutter/clutter-container.c      |    7 +++++++
1183  clutter/clutter-interval.c       |   10 ++++++++++
1184  clutter/clutter-layout-manager.c |    7 +++++++
1185  6 files changed, 45 insertions(+), 1 deletion(-)
1186
1187 commit bd303d6efb7dfddbdf671f7c66ff5b73bb216f3f
1188 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1189 Date:   Wed Feb 24 16:43:17 2010 +0000
1190
1191     conform: Verify parsing of multiple properties
1192     
1193     The ClutterAnimator support for parsing multiple properties should be
1194     verified in the conformance test suite.
1195     
1196     http://bugzilla.openedhand.com/show_bug.cgi?id=2003
1197
1198  .gitignore                        |    1 +
1199  tests/conform/test-animator.c     |   98 +++++++++++++++++++++++++++++++++++++
1200  tests/conform/test-conform-main.c |    1 +
1201  tests/data/test-animator-3.json   |   40 +++++++++++++++
1202  4 files changed, 140 insertions(+)
1203
1204 commit 59fd7e4a810f51bad31c2eafb609d545557ef264
1205 Author: Bastian Winkler <buz@netbuz.org>
1206 Date:   Wed Feb 24 16:32:19 2010 +0100
1207
1208     animator: Append parsed animator keys to previously parsed ones
1209     
1210     Reuse the GSList of the previously parsed property when building a
1211     ClutterAnimator from script, otherwise only the last used property will
1212     be used
1213     
1214     http://bugzilla.openedhand.com/show_bug.cgi?id=2003
1215
1216  clutter/clutter-animator.c |    7 +++++--
1217  1 file changed, 5 insertions(+), 2 deletions(-)
1218
1219 commit fd6f6707433a8ab57c8232afee65038213d4120c
1220 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1221 Date:   Wed Feb 24 14:40:22 2010 +0000
1222
1223     Post-release version bump to 1.1.15
1224
1225  configure.ac |    4 ++--
1226  1 file changed, 2 insertions(+), 2 deletions(-)
1227
1228 commit 18659b008c800b2dde6e5a2453fba04f5990f2b7
1229 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1230 Date:   Wed Feb 24 14:26:46 2010 +0000
1231
1232     Release 1.1.14
1233
1234  configure.ac |    4 ++--
1235  1 file changed, 2 insertions(+), 2 deletions(-)
1236
1237 commit ec0c7fcd9bb734c3fd488b4b3ec3d469ba5e967f
1238 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1239 Date:   Wed Feb 24 14:23:58 2010 +0000
1240
1241     build: Use the right headers when enumerating them
1242     
1243     The installed _HEADERS should be the public ones and the enumeration
1244     types; repeating clutter-x11-texture-pixmap.h breaks with automake 1.11
1245     and doesn't strictly make any sense.
1246     
1247     http://bugzilla.openedhand.com/show_bug.cgi?id=2002
1248
1249  clutter/x11/Makefile.am |    2 +-
1250  1 file changed, 1 insertion(+), 1 deletion(-)
1251
1252 commit 1370d72a7a1490c1ed60f02634f146995482116d
1253 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1254 Date:   Wed Feb 24 14:20:14 2010 +0000
1255
1256     Update NEWS file
1257
1258  NEWS |   44 ++++++++++++++++++++++++++++++++++++++++++++
1259  1 file changed, 44 insertions(+)
1260
1261 commit d1ca0e1b8f3dc6f5b5fec0ce3fba4702b9e75386
1262 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1263 Date:   Wed Feb 24 12:23:46 2010 +0000
1264
1265     fixed layout: Store a back pointer to the Container
1266     
1267     When set_container() is called with a NULL container we cannot use the
1268     passed pointer to unset the CLUTTER_ACTOR_NO_LAYOUT flag. We should
1269     store a back pointer to the container as object data (there's no need
1270     to add a Private data structure in this case) and unset the flag on the
1271     back pointer instead.
1272
1273  clutter/clutter-fixed-layout.c |   14 ++++++++++++--
1274  1 file changed, 12 insertions(+), 2 deletions(-)
1275
1276 commit 3a9d842164708baa8fe877d829f9e9cdcbde3831
1277 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1278 Date:   Wed Feb 24 12:09:13 2010 +0000
1279
1280     conformance: Show the Stage to test invariants
1281     
1282     We need to make the Stage set the MAPPED flag on itself if we want to
1283     verify the MAPPED state. That was always the case - it just worked
1284     before because the Stage was shown at least once.
1285
1286  tests/conform/test-actor-invariants.c |    9 +++++++++
1287  1 file changed, 9 insertions(+)
1288
1289 commit aa8c8127059326c2d13d9f8dd6a294e787e3760e
1290 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1291 Date:   Wed Feb 24 12:08:07 2010 +0000
1292
1293     box: Do not short-circuit size negotiation for empty Boxes
1294     
1295     The LayoutManager used might decide to have a default allocation or a
1296     default preferred size when empty.
1297
1298  clutter/clutter-box.c |   31 -------------------------------
1299  1 file changed, 31 deletions(-)
1300
1301 commit 523bab0868255e3f2b2910a60a868bffeb5bf64a
1302 Author: Robert Bragg <robert@linux.intel.com>
1303 Date:   Thu Feb 11 11:45:36 2010 +0000
1304
1305     layout: allow wider use of the CLUTTER_ACTOR_NO_LAYOUT flag
1306     
1307     Previously only ClutterGroup was able to set the CLUTTER_ACTOR_NO_LAYOUT
1308     flag which allows clutter-actor.c to avoid a relayout when showing or
1309     hiding fixed layout containers. Instead of it being the responsibility
1310     of the container to set this flag this patch makes the layout manager
1311     itself decide in the ::set_container method. This way both ClutterBox
1312     and ClutterGroup can take advantage of the optimization.
1313
1314  clutter/clutter-fixed-layout.c |   17 +++++++++++++++++
1315  clutter/clutter-group.c        |    8 +++-----
1316  2 files changed, 20 insertions(+), 5 deletions(-)
1317
1318 commit f21e649c80a3e0db5db7dc1128f7828535dbebc2
1319 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1320 Date:   Wed Feb 24 11:28:44 2010 +0000
1321
1322     docs: Detail replacement for cogl_check_extension()
1323     
1324     The cogl_check_extension() function has been deprecated, but it's easily
1325     replaceable with a simple strstr() call.
1326
1327  clutter/cogl/cogl/cogl.h |   11 +++++++----
1328  1 file changed, 7 insertions(+), 4 deletions(-)
1329
1330 commit 829d3f4bc5d083320f7f1b70d25e0115e1b6512f
1331 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1332 Date:   Wed Feb 24 11:27:51 2010 +0000
1333
1334     docs: Update NEWS and README
1335     
1336     The NEWS file was not updated for the 1.1.12 release, so we need to
1337     update it now.
1338     
1339     The Release Notes section for Clutter and Cogl also needs some more
1340     entries that escaped previous releases.
1341
1342  NEWS   |   33 +++++++++++++++++++++++++++++++++
1343  README |   21 +++++++++++++++++++++
1344  2 files changed, 54 insertions(+)
1345
1346 commit d54af2363d390bf598aaa931821a46604d4f192a
1347 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1348 Date:   Wed Feb 24 10:20:10 2010 +0000
1349
1350     build: Use template for ClutterX11 enumerationt types
1351     
1352     Clutter and Cogl use the template Makefile.am.enums for building the
1353     enumeration GTypes from public headers, but ClutterX11 is not.
1354
1355  .gitignore              |   13 ++++----
1356  clutter/x11/Makefile.am |   77 +++++++++++++++++++----------------------------
1357  2 files changed, 37 insertions(+), 53 deletions(-)
1358
1359 commit eb35c446b119274658ba45937e02b5cfd1ec27fe
1360 Author: Neil Roberts <neil@linux.intel.com>
1361 Date:   Tue Feb 23 22:06:59 2010 +0000
1362
1363     clutter-box: Layer new actors on top of all others at the same depth
1364     
1365     g_list_insert_sorted inserts the new actor before all others that
1366     compare equal so for the normal case when all actors have depth==0
1367     this has the surprising behaviour of layering the actors in reverse
1368     order. To fix this it now manually inserts the actor in the right
1369     place by searching until it finds an actor at a higher depth and
1370     inserting before that.
1371     
1372     http://bugzilla.openedhand.com/show_bug.cgi?id=1988
1373
1374  clutter/clutter-box.c |   25 ++++++++++++++++++++++---
1375  1 file changed, 22 insertions(+), 3 deletions(-)
1376
1377 commit da0315e4d666cc7cbfcfe7dab63d731df2a02338
1378 Author: Neil Roberts <neil@linux.intel.com>
1379 Date:   Tue Feb 23 22:10:30 2010 +0000
1380
1381     box: Revert "Tweak the depth sorting function"
1382     
1383     This reverts commit 939e56e2b12e5c96fa1173be33c2786ddfe57c25.
1384     
1385     Changing the depth sort function to have inconsistent behaviour for
1386     nodes that compare equal breaks the stability of g_list_sort. It ends
1387     up so that every time clutter_container_sort_depth_order is called the
1388     order of all actors with the same depth is reversed.
1389     
1390     http://bugzilla.openedhand.com/show_bug.cgi?id=1988
1391
1392  clutter/clutter-box.c |    2 +-
1393  1 file changed, 1 insertion(+), 1 deletion(-)
1394
1395 commit 1c65f2ee1e4595d3044d05cadb4f33fc2d03a6f3
1396 Author: Robert Bragg <robert@linux.intel.com>
1397 Date:   Wed Feb 17 18:45:08 2010 +0000
1398
1399     cogl debug: Adds glViewport call tracing
1400     
1401     To aid in the debugging of Clutter stage resize issues this adds a
1402     COGL_DEBUG=opengl option that will trace "some select OpenGL calls"
1403     (currently just glViewport calls)
1404
1405  clutter/cogl/cogl/cogl-debug.c       |    2 ++
1406  clutter/cogl/cogl/cogl-debug.h       |    3 ++-
1407  clutter/cogl/cogl/cogl-framebuffer.c |    6 ++++++
1408  3 files changed, 10 insertions(+), 1 deletion(-)
1409
1410 commit fa3830ff20962dc72b676a5411a7fa1829a870cd
1411 Author: Robert Bragg <robert@linux.intel.com>
1412 Date:   Wed Feb 17 17:53:28 2010 +0000
1413
1414     cogl debug: hint that all debugging paths are G_UNLIKELY
1415     
1416     Most Cogl debugging code conditions are marked as G_UNLIKELY with the
1417     intention of having the CPU branch prediction always assume the
1418     path is disabled so having debugging support in release binaries has
1419     negligible overhead.
1420     
1421     This patch simply fixes a few cases where we weren't using G_UNLIKELY.
1422
1423  clutter/cogl/cogl/cogl-journal.c |    9 +++++----
1424  clutter/cogl/cogl/cogl.c         |    2 +-
1425  2 files changed, 6 insertions(+), 5 deletions(-)
1426
1427 commit a58d6e8ee5e26185ff090845df68b61076275c21
1428 Author: Robert Bragg <robert@linux.intel.com>
1429 Date:   Wed Feb 17 17:40:57 2010 +0000
1430
1431     cogl debug: Support "minimum" level debugging by default
1432     
1433     We basically want all Clutter applications out in the wild to at least
1434     have the basic set of COGL_DEBUG/--cogl-debug options available for
1435     investigating issues.
1436
1437  configure.ac |    4 ++--
1438  1 file changed, 2 insertions(+), 2 deletions(-)
1439
1440 commit 511e5ceb516dcbf2c406a7c2e8e0e56d2135fb0d
1441 Author: Robert Bragg <robert@linux.intel.com>
1442 Date:   Wed Feb 17 14:38:11 2010 +0000
1443
1444     cogl debug: Makes COGL_DEBUG=all|verbose|help more useful
1445     
1446     COGL_DEBUG=all wasn't previously useful as there are several options
1447     that change the behaviour of Cogl and all together wouldn't help anyone
1448     debug anything.
1449     
1450     This patch makes it so COGL_DEBUG=all|verbose now only enables options
1451     that don't change the behaviour of Cogl, i.e. they only affect the
1452     amount of noise we'll print to a terminal.
1453     
1454     In addition to that this patch also improves the output from
1455     COGL_DEBUG=help so we now print a table of options including one liner
1456     descriptions of what each option enables.
1457
1458  clutter/cogl/cogl/cogl-debug.c             |  121 +++++++++++++++++++++-------
1459  clutter/cogl/cogl/cogl-debug.h             |   37 ++++-----
1460  clutter/cogl/cogl/cogl-texture-2d-sliced.c |    2 +-
1461  3 files changed, 111 insertions(+), 49 deletions(-)
1462
1463 commit 939e56e2b12e5c96fa1173be33c2786ddfe57c25
1464 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1465 Date:   Tue Feb 23 17:59:09 2010 +0000
1466
1467     box: Tweak the depth sorting function
1468     
1469     By changing the depth sorting function we can achieve the same effect as
1470     ClutterGroup but without the costly append+sort.
1471     
1472     http://bugzilla.openedhand.com/show_bug.cgi?id=1988
1473
1474  clutter/clutter-box.c |    2 +-
1475  1 file changed, 1 insertion(+), 1 deletion(-)
1476
1477 commit 95960ab902852e9c4830815b89d0a315fb9e4c50
1478 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1479 Date:   Tue Feb 23 16:51:26 2010 +0000
1480
1481     cogl: Add deprecation annotation to CoglMaterial ref/unref
1482     
1483     The G_GNUC_DEPRECATED annotation was missing from the material ref and
1484     unref functions.
1485
1486  clutter/cogl/cogl/cogl-material.h |    4 ++--
1487  1 file changed, 2 insertions(+), 2 deletions(-)
1488
1489 commit a9941e94995d2701783f055e69fba52a64f609e0
1490 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1491 Date:   Tue Feb 16 20:08:35 2010 +0000
1492
1493     debug: Split debugging notes from behavioural modifiers
1494     
1495     Some of the ClutterDebugFlags are not meant as a logging facility: they
1496     actually change Clutter's behaviour at run-time.
1497     
1498     It would be useful to have this distinction ratified, and thus split
1499     ClutterDebugFlags into two: one DebugFlags for logging facilities and
1500     another set of flags for behavioural changes.
1501     
1502     This split is warranted because:
1503     
1504       • it should be possible to do "CLUTTER_DEBUG=all" and only have
1505         log messages on the output
1506     
1507       • it should be possible to use behavioural modifiers even on a
1508         Clutter that has been compiled without debugging messages
1509         support
1510     
1511     The commit adds two new debugging flags:
1512     
1513       ClutterPickDebugFlags - controlled by the CLUTTER_PICK environment
1514                               variable
1515     
1516       ClutterPaintDebugFlags - controlled by the CLUTTER_PAINT environment
1517                                variable
1518     
1519     The PickDebugFlags are:
1520     
1521       nop-picking
1522       dump-pick-buffers
1523     
1524     While the PaintDebugFlags is:
1525     
1526       disable-swap-events
1527     
1528     The mechanism is equivalent to the CLUTTER_DEBUG environment variable,
1529     but it does not depend on the debug level selected when configuring and
1530     compiling Clutter. The picking and painting debugging flags are
1531     initialized at clutter_init() time.
1532     
1533     http://bugzilla.openedhand.com/show_bug.cgi?id=1991
1534
1535  clutter/clutter-debug.h           |   14 ++++++++---
1536  clutter/clutter-main.c            |   49 +++++++++++++++++++++++++++++--------
1537  clutter/glx/clutter-backend-glx.c |    6 +++--
1538  3 files changed, 54 insertions(+), 15 deletions(-)
1539
1540 commit a9c307ff5d94489b30d7398ac80072fe7222a434
1541 Author: Neil Roberts <neil@linux.intel.com>
1542 Date:   Wed Feb 17 22:16:17 2010 +0000
1543
1544     cogl-vertex-buffer: Fix the malloc fallback for indices
1545     
1546     The size of the malloc'd buffer for indices when VBOs are not
1547     available was too small so memory corruption would result if it was
1548     used.
1549     
1550     http://bugzilla.o-hand.com/show_bug.cgi?id=1996
1551
1552  clutter/cogl/cogl/cogl-vertex-buffer.c |    2 +-
1553  1 file changed, 1 insertion(+), 1 deletion(-)
1554
1555 commit 14669657737cc1547fb0db261232e63bdd2755d9
1556 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1557 Date:   Mon Feb 22 11:34:04 2010 +0000
1558
1559     device: Motion events compression should honour the device
1560     
1561     The motion event compression should be affected by the device field of
1562     the event; that is: we should compress motion events coming from the
1563     same device.
1564
1565  clutter/clutter-stage.c |   29 ++++++++++++++++++++++-------
1566  1 file changed, 22 insertions(+), 7 deletions(-)
1567
1568 commit 5ed4732737202c3051044455a91dc70c213fb800
1569 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1570 Date:   Mon Feb 22 11:30:14 2010 +0000
1571
1572     device: Force ENTER on Stage with overlapping Actors
1573     
1574     If an actor is on the boundary of a Stage and the pointer for a device
1575     enters the Stage over that actor, the sequence of events currently is:
1576     
1577       ➔ ENTER (source: actor, related: NULL)
1578       ➔ MOTION
1579     
1580     Thus the Stage never gets an ENTER event. This is a regression from
1581     Clutter 1.0.
1582     
1583     The correct sequence is:
1584     
1585       ➔ ENTER (source: stage, related: NULL)
1586       ➔ ENTER (source: actor, related: stage)
1587       ➔ MOTION
1588     
1589     This also maps to the sequence of events sythesized by Clutter when
1590     leaving the Stage through an actor overlapping the Stage boundary.
1591     
1592     http://bugzilla.moblin.org/show_bug.cgi?id=9781
1593
1594  clutter/clutter-input-device.c |   27 +++++++++++++++++++++++----
1595  1 file changed, 23 insertions(+), 4 deletions(-)
1596
1597 commit ee33357fd5d08be824a5ecb3161a79568afa4e5c
1598 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1599 Date:   Thu Feb 18 16:58:29 2010 +0000
1600
1601     stage: Only clutter_stage_get_default() creates the default stage
1602     
1603     The introduction of the StageManager in 0.8 implied that the first Stage
1604     instance to be created was automatically assigned the status of "default
1605     stage". This was all well and good, since the default stage was created
1606     behind the curtains by the initialization sequence.
1607     
1608     Now that the initialization sequence does not create a default stage any
1609     longer, it means that the first stage created using clutter_stage_new()
1610     gets to be the default, and all special and warm and fuzzy - which also
1611     means that the first stage created by clutter_stage_new() cannot be
1612     destroyed or handled as any other stage. Whoopsie.
1613     
1614     Let's go back to the old semantics: the stage created by the first
1615     invocation of clutter_stage_get_default() is the default stage, and
1616     nothing else can be set as default. One day we'll be able to break the
1617     API and the whole default stage business will be a thing of the past.
1618
1619  clutter/clutter-private.h       |   10 ++++++----
1620  clutter/clutter-stage-manager.c |   32 +++++++++++++++++++++++++-------
1621  clutter/clutter-stage.c         |    1 +
1622  3 files changed, 32 insertions(+), 11 deletions(-)
1623
1624 commit 9a6de8757f27ff8a8cf9f89209f9366e03b7aadf
1625 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1626 Date:   Thu Feb 18 11:34:06 2010 +0000
1627
1628     docs: Document the InputDevice update method
1629     
1630     Embedding toolkits should benefit from a proper documentation of
1631     clutter_input_device_update_from_event(): its meaning, its use and
1632     the caveats for the "update_stage" argument.
1633
1634  clutter/clutter-input-device.c |   49 ++++++++++++++++++++++++++++++++++++++++
1635  1 file changed, 49 insertions(+)
1636
1637 commit a2afc9d7ba0a80733044b97498a7df26de5a4ab2
1638 Author: Neil Roberts <neil@linux.intel.com>
1639 Date:   Wed Feb 17 18:18:38 2010 +0000
1640
1641     win32: Fixup compilation errors from b398292089b0f7
1642     
1643     That commit added some Win32 code which breaks compilation.
1644     
1645     Thanks to Samuel Degrande for help with this.
1646
1647  clutter/win32/clutter-backend-win32.c        |    5 ++---
1648  clutter/win32/clutter-device-manager-win32.c |   18 ++++++------------
1649  clutter/win32/clutter-event-win32.c          |    2 +-
1650  3 files changed, 9 insertions(+), 16 deletions(-)
1651
1652 commit 5de743de705ba9bb9a2061a66045b32091165ad5
1653 Author: Robert Bragg <robert@linux.intel.com>
1654 Date:   Tue Feb 16 14:53:10 2010 +0000
1655
1656     cogl_texture_new_from_foreign: improve docs
1657     
1658     Improve the explanation of what the x_pot_waste and y_pot_waste
1659     arguments can be used for.
1660
1661  clutter/cogl/cogl/cogl-texture.h |   15 +++++++++++----
1662  1 file changed, 11 insertions(+), 4 deletions(-)
1663
1664 commit 9c06c94374c61c019ca49fa6fd80679e6ad2f29a
1665 Author: Robert Bragg <robert@linux.intel.com>
1666 Date:   Tue Feb 16 14:23:11 2010 +0000
1667
1668     cogl-texture: for foreign textures; always trust user geom
1669     
1670     We now never query the width and height of the given texture object
1671     from OpenGL. The problem is that the user may be creating a Cogl
1672     texture from a texture_from_pixmap object where glTexImage2D was
1673     never called and the texture_from_pixmap spec doesn't clarify that
1674     it's reliable to query the width from OpenGL.
1675     
1676     This should address:
1677     http://bugzilla.openedhand.com/show_bug.cgi?id=1502
1678     
1679     Thanks to Johan Bilien for reporting
1680
1681  clutter/cogl/cogl/cogl-texture-2d-sliced.c |   24 +++++++++---------------
1682  1 file changed, 9 insertions(+), 15 deletions(-)
1683
1684 commit 8b040cac4dfaaa9d91635d31d93a79d00f637772
1685 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1686 Date:   Wed Feb 17 19:02:43 2010 +0000
1687
1688     docs: Fixes for DeviceManager
1689
1690  clutter/clutter-device-manager.h           |   12 ++++++------
1691  doc/reference/clutter/clutter-sections.txt |    6 ++++++
1692  2 files changed, 12 insertions(+), 6 deletions(-)
1693
1694 commit 51a3e49c8228a22c1fbcd42971ad27d26d83991b
1695 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1696 Date:   Wed Feb 17 18:21:50 2010 +0000
1697
1698     device: Allow updating devices from embedding toolkits
1699     
1700     Embedding toolkits most likely will disable the event handling, so all
1701     the input device code will not be executed. Unfortunately, the newly
1702     added synthetic event generation of ENTER and LEAVE event pairs depends
1703     on having input devices.
1704     
1705     In order to unbreak things without reintroducing the madness of the
1706     previous code we should allow embedding toolkits to just update the
1707     state of an InputDevice by using the data contained inside the
1708     ClutterEvent. This strategy has two obvious reasons:
1709     
1710       • the embedding toolkit is creating a ClutterEvent by translating
1711         a toolkit-native event anyway
1712     
1713       • this is exactly what ClutterStage does when processing events
1714     
1715     We are, essentially, deferring input device handling to the embedding
1716     toolkits, just like we're deferring event handling to them.
1717
1718  clutter/clutter-event.h                    |    2 -
1719  clutter/clutter-input-device.c             |   59 ++++++++++++++++++++++++++++
1720  clutter/clutter-input-device.h             |    5 +++
1721  clutter/clutter-types.h                    |    2 +
1722  doc/reference/clutter/clutter-sections.txt |    2 +
1723  5 files changed, 68 insertions(+), 2 deletions(-)
1724
1725 commit b398292089b0f70b9457985426d6b962d9179fa7
1726 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1727 Date:   Wed Feb 17 17:06:25 2010 +0000
1728
1729     device: Impose per-backend DeviceManager
1730     
1731     The DeviceManager class should be abstract in Clutter, and implemented
1732     by each backend, as different backends will have different ways to
1733     detect, initialize and list devices; the X11 backend alone has *two*
1734     ways of dealing with devices.
1735     
1736     This commit makes DeviceManager an abstract class and delegates the
1737     device initialization and enumeration to per-backend sub-classes.
1738     
1739     The responsible for creating the device manager is, obviously, the
1740     backend singleton.
1741     
1742     The X11 and Win32 backends have been updated to the new layout; the
1743     Win32 backend has been updated blindly, so it might require additional
1744     testing.
1745
1746  clutter/clutter-backend.h                    |   38 +--
1747  clutter/clutter-device-manager.c             |  166 ++++++++----
1748  clutter/clutter-device-manager.h             |   51 +++-
1749  clutter/clutter-private.h                    |    7 -
1750  clutter/win32/Makefile.am                    |    2 +
1751  clutter/win32/clutter-backend-win32.c        |   38 +--
1752  clutter/win32/clutter-backend-win32.h        |    3 +-
1753  clutter/win32/clutter-device-manager-win32.c |  173 +++++++++++++
1754  clutter/win32/clutter-device-manager-win32.h |   60 +++++
1755  clutter/win32/clutter-event-win32.c          |   34 ++-
1756  clutter/x11/Makefile.am                      |    2 +
1757  clutter/x11/clutter-backend-x11.c            |  168 +++----------
1758  clutter/x11/clutter-backend-x11.h            |    3 +-
1759  clutter/x11/clutter-device-manager-x11.c     |  349 ++++++++++++++++++++++++++
1760  clutter/x11/clutter-device-manager-x11.h     |   68 +++++
1761  clutter/x11/clutter-event-x11.c              |   14 +-
1762  16 files changed, 930 insertions(+), 246 deletions(-)
1763
1764 commit 0bf6d57ab128f301588695d011a9ab5d1b1dce1a
1765 Author: Chris Lord <chris@linux.intel.com>
1766 Date:   Wed Feb 17 16:56:30 2010 +0000
1767
1768     [event-x11] Don't relayout on window move
1769     
1770     ConfigureNotify is delivered on window movements too, but there is no
1771     need to queue a relayout on these as the viewport hasn't changed size.
1772     Check for the window actually changing size on ConfigureNotify before
1773     queueing a relayout.
1774     
1775     This fixes laggy window movement when moving a window in response to
1776     Clutter mouse motion events.
1777
1778  clutter/x11/clutter-event-x11.c |   26 ++++++++++++++++----------
1779  1 file changed, 16 insertions(+), 10 deletions(-)
1780
1781 commit 05054bed87866d10c927642fe6273c5bd8f89a95
1782 Author: Neil Roberts <neil@linux.intel.com>
1783 Date:   Wed Feb 17 15:58:32 2010 +0000
1784
1785     cogl-clip-stack: Round the coords when clipping to a window rect
1786     
1787     The size and position of the window rectangle for clipping in
1788     try_pushing_rect_as_window_rect is calculated by projecting the
1789     rectangle coordinates. Due to rounding errors, this can end up with
1790     slightly off numbers like 34.999999. These were then being cast
1791     directly to an integer so it could end up off by one.
1792     
1793     This uses a new macro called COGL_UTIL_NEARBYINT which is a
1794     replacement for the C99 nearbyint function.
1795
1796  clutter/cogl/cogl/cogl-clip-stack.c |    6 +++++-
1797  clutter/cogl/cogl/cogl-util.h       |    8 ++++++++
1798  2 files changed, 13 insertions(+), 1 deletion(-)
1799
1800 commit a726ef32aa4721070b57df2e08c304096cb24736
1801 Author: Neil Roberts <neil@linux.intel.com>
1802 Date:   Wed Feb 17 14:38:45 2010 +0000
1803
1804     test-cogl-vertex-buffer: Fix the maximum index number
1805     
1806     It was passing the number of vertices to
1807     cogl_vertex_buffer_draw_elements but instead it should take the
1808     maximum index which would be the number of vertices minus one. This
1809     was causing errors to be reported with the checks filterset of Bugle.
1810
1811  tests/interactive/test-cogl-vertex-buffer.c |    2 +-
1812  1 file changed, 1 insertion(+), 1 deletion(-)
1813
1814 commit fbcaf1e0b34f68934e0c84b01adfa5ea920c6c6a
1815 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1816 Date:   Wed Feb 17 10:46:16 2010 +0000
1817
1818     Improve LEAVE events for border actors
1819     
1820     If an actor is lying on the border of the Stage it might miss the LEAVE
1821     event when the pointer of a device leaves the Stage window. Since the
1822     backend is unsetting the Stage back pointer on the InputDevice we can
1823     queue the emission of a LEAVE event on the pointer actor as well.
1824     
1825     http://bugzilla.moblin.org/show_bug.cgi?id=9677
1826
1827  clutter/clutter-input-device.c  |   23 ++++++++++++++++++++++-
1828  tests/interactive/test-events.c |   22 +++++++++++++++++-----
1829  2 files changed, 39 insertions(+), 6 deletions(-)
1830
1831 commit 719e314b8e364955b046c990ddc1c9f07b0cc55f
1832 Author: Chris Lord <chris@linux.intel.com>
1833 Date:   Tue Feb 16 18:25:46 2010 +0000
1834
1835     [stage-x11] Fix a warning due to a missing cast
1836     
1837     I stupidly forgot to cast a ClutterStage to a ClutterActor and somehow
1838     missed or didn't get the compiler warning. Fix.
1839
1840  clutter/x11/clutter-stage-x11.c |    2 +-
1841  1 file changed, 1 insertion(+), 1 deletion(-)
1842
1843 commit f9f03894a691cfb8f791f34c684d82f8a6d5b5b8
1844 Author: Chris Lord <chris@linux.intel.com>
1845 Date:   Tue Feb 16 18:17:55 2010 +0000
1846
1847     [stage-x11] Fix resizing for foreign windows
1848     
1849     As well as manually setting the geometry size, we needed to queue a
1850     relayout. This is what the ConfigureNotify handler would normally do,
1851     but we don't get this event when using a foreign window (obviously).
1852     
1853     This should fix resizing in things like gtk-clutter.
1854
1855  clutter/x11/clutter-stage-x11.c |    5 +++++
1856  1 file changed, 5 insertions(+)
1857
1858 commit df6e7aee73a3c3818acab8218732659eb77a3cdc
1859 Author: Chris Lord <chris@linux.intel.com>
1860 Date:   Tue Feb 16 17:46:52 2010 +0000
1861
1862     [stage-x11] Set the geometry size for foreign wins
1863     
1864     If we get into the resize function and it's a foreign window, set the
1865     geometry size so that the allocate will set the backend size and call
1866     glViewport.
1867
1868  clutter/x11/clutter-stage-x11.c |    9 ++++++++-
1869  1 file changed, 8 insertions(+), 1 deletion(-)
1870
1871 commit c2d016471258c529d7829ed807e76a4e029b614b
1872 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1873 Date:   Tue Feb 16 16:31:20 2010 +0000
1874
1875     Add test-stage-sizing to the ignore file
1876
1877  .gitignore |    1 +
1878  1 file changed, 1 insertion(+)
1879
1880 commit d42f928c43994331017bca7145b7b06fd5848909
1881 Author: Chris Lord <chris@linux.intel.com>
1882 Date:   Tue Feb 16 15:39:08 2010 +0000
1883
1884     [test-interactive] Add a stage sizing test
1885     
1886     Add an interactive stage sizing test to test the interaction of
1887     fullscreening/resizing/expanding/shrinking a visible stage.
1888
1889  tests/interactive/Makefile.am         |    3 +-
1890  tests/interactive/test-stage-sizing.c |  113 +++++++++++++++++++++++++++++++++
1891  2 files changed, 115 insertions(+), 1 deletion(-)
1892
1893 commit 1117b6a9ac974dd5855c5e76965c15329c608ff4
1894 Author: Chris Lord <chris@linux.intel.com>
1895 Date:   Tue Feb 16 14:50:14 2010 +0000
1896
1897     [stage-x11] Fix switching fullscreen mode
1898     
1899     Setting/unsetting fullscreen on a mapped or unmapped window now works
1900     correctly.
1901     
1902     If you unfullscreen a window that was initially full-screened, it will
1903     unset the fullscreen hint and the WM will likely push the size down to
1904     the largest valid size.
1905     
1906     If the window was previously un-fullscreened, Clutter will restore the
1907     previous size.
1908     
1909     Fullscreening also now works if the WM switches the hint without the
1910     application's knowledge (as happens when you resize a window to the size
1911     of the screen, for example, with stock metacity).
1912
1913  clutter/clutter-stage.c         |    3 +-
1914  clutter/x11/clutter-event-x11.c |   13 +++++--
1915  clutter/x11/clutter-stage-x11.c |   71 ++++++++++++++++++++++-----------------
1916  clutter/x11/clutter-stage-x11.h |    2 +-
1917  4 files changed, 54 insertions(+), 35 deletions(-)
1918
1919 commit dd36c3ad5c4f3d25d0286cf1c2a9a25abf7d2ea4
1920 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1921 Date:   Tue Feb 16 12:32:37 2010 +0000
1922
1923     Post-release version bump to 1.1.13
1924
1925  configure.ac |    4 ++--
1926  1 file changed, 2 insertions(+), 2 deletions(-)
1927
1928 commit 21354b2b7518c9518fa8405f07ed1f929736d4a2
1929 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1930 Date:   Tue Feb 16 12:21:15 2010 +0000
1931
1932     Release 1.1.12 (developers snapshot)
1933
1934  configure.ac |    4 ++--
1935  1 file changed, 2 insertions(+), 2 deletions(-)
1936
1937 commit 7a3eb452b802e5b38542d224da179c4267706e7b
1938 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1939 Date:   Tue Feb 16 12:16:02 2010 +0000
1940
1941     conform: Do not resize the stage
1942     
1943     Since all conformance tests share the same state we should not touch
1944     stuff like the stage size; sharing is already fairly complex and adds a
1945     lot of caveats on the implementation of a conformance test unit, and if
1946     we make tests influence later ones then we might slip in bugs or false
1947     negatives - thus defeating the whole point of a conformance test suite.
1948
1949  tests/conform/test-cogl-offscreen.c  |    1 -
1950  tests/conform/test-cogl-readpixels.c |    1 -
1951  tests/conform/test-cogl-viewport.c   |    1 -
1952  tests/conform/test-pick.c            |    1 -
1953  4 files changed, 4 deletions(-)
1954
1955 commit 4cadc7300504828fa0db8cb21e1b9d8e23be6319
1956 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1957 Date:   Tue Feb 16 12:15:23 2010 +0000
1958
1959     conform: Use a 640x480 stage in test-pick
1960     
1961     Do not resize the stage to a smaller size: the default size is perfectly
1962     fine.
1963
1964  tests/conform/test-pick.c |    4 ++--
1965  1 file changed, 2 insertions(+), 2 deletions(-)
1966
1967 commit 958545aa70e526a12720bf2dd0d9b9a24d273b8d
1968 Author: Neil Roberts <neil@linux.intel.com>
1969 Date:   Tue Feb 16 12:01:18 2010 +0000
1970
1971     cogl-atlas-texture: Don't use the atlas if FBOs aren't supported
1972     
1973     If FBOs aren't supported then it will end up very slow to reorganize
1974     the atlas. Also currently the CoglTexture2D backend will refuse to
1975     create any textures anyway so the full atlas texture won't be created.
1976
1977  clutter/cogl/cogl/cogl-atlas-texture.c |    8 +++++---
1978  1 file changed, 5 insertions(+), 3 deletions(-)
1979
1980 commit a5021ba30f553d641399545d9777eb5b4b385ac1
1981 Author: Neil Roberts <neil@linux.intel.com>
1982 Date:   Tue Feb 16 11:58:47 2010 +0000
1983
1984     cogl-atlas-texture: Check for errors when creating the atlas texture
1985     
1986     cogl_texture_2d_new may fail in certain circumstances so
1987     cogl_atlas_texture_reserve_space should detect this and also
1988     fail. This will cause cogl_texture_new to fallback to a sliced
1989     texture.
1990     
1991     Thanks to Vladimir Ivakin for reporting this problem.
1992
1993  clutter/cogl/cogl/cogl-atlas-texture.c |   19 ++++++++++++-------
1994  1 file changed, 12 insertions(+), 7 deletions(-)
1995
1996 commit e65bb38720c8990684ce24bda08b78d8da49cc1b
1997 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1998 Date:   Tue Feb 16 11:38:51 2010 +0000
1999
2000     conform: Use g_assert_cmpint() in cogl-readpixels test
2001     
2002     The g_assert_cmpint() macro prints out not just the assertion condition
2003     but also the assertion contents; this is useful to catch wrong values
2004     without incrementing the verbosity of the test itself.
2005
2006  tests/conform/test-cogl-readpixels.c |   18 ++++++++----------
2007  1 file changed, 8 insertions(+), 10 deletions(-)
2008
2009 commit 56f164f8a1c634e2d0ba6ffb5879672d456e1488
2010 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2011 Date:   Mon Feb 15 19:03:37 2010 +0000
2012
2013     docs: Document SWAP_EVENTS feature flag
2014
2015  clutter/clutter-feature.h |    1 +
2016  1 file changed, 1 insertion(+)
2017
2018 commit 2fcb644e4fb02375bdf8b1f54677bcde7abdceba
2019 Author: Chris Lord <chris@linux.intel.com>
2020 Date:   Mon Feb 15 18:53:58 2010 +0000
2021
2022     [stage] Fix some races to do with window resizing
2023     
2024     When we resize, we relied on the stage's allocate to re-initialise the
2025     GL viewport. Unfortunately, if we resized within Clutter, the new size
2026     was cached before the window is actually resized, so glViewport wasn't
2027     being called after resizing (some of the time, it's a race condition).
2028     
2029     Change the way resizing works slightly so that we only resize when the
2030     geometry size doesn't match our preferred size, and queue a relayout on
2031     ConfigureNotify so the glViewport gets called.
2032     
2033     Also change window creation slightly so that setting the size of a
2034     window before it's realized works correctly.
2035
2036  clutter/clutter-stage.c         |   36 +++++++++++++++---------------------
2037  clutter/glx/clutter-stage-glx.c |   19 +++++++++++++++++--
2038  clutter/x11/clutter-event-x11.c |   13 +++++++++++++
2039  clutter/x11/clutter-stage-x11.c |   24 ++++++++++--------------
2040  4 files changed, 55 insertions(+), 37 deletions(-)
2041
2042 commit 0d428655e23c18064176aa823db0d7165581ba02
2043 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2044 Date:   Mon Feb 15 16:09:26 2010 +0000
2045
2046     actor: Turn push/pop_internal into Actor methods
2047     
2048     Since the "internal" state is global, it will leak onto actors that you
2049     didn't intend for it to, because it applies not just to the actors you
2050     create, but also to any actors *they* create. Eg, if you have a dialog
2051     box class, you might push/pop_internal around creating its buttons, so
2052     that those buttons get marked as internal to the dialog box. But
2053     ctx->internal_child will still be set during the *button*'s constructor
2054     as well, and so, eg, the label and icon inside the button actor will
2055     *also* be marked as internal children, even if that isn't what the
2056     button class wanted.
2057     
2058     The least intrusive change at this point is to make push_internal() and
2059     pop_internal() two methods of the Actor class, and take a ClutterActor
2060     pointer as the argument - thus moving the locality of the internal_child
2061     counter to the Actor itself.
2062     
2063     http://bugzilla.openedhand.com/show_bug.cgi?id=1990
2064
2065  clutter/clutter-actor.c            |   31 ++++++++++++++++++-------------
2066  clutter/clutter-actor.h            |    4 ++--
2067  clutter/clutter-private.h          |    2 --
2068  tests/conform/test-actor-destroy.c |    4 ++--
2069  4 files changed, 22 insertions(+), 19 deletions(-)
2070
2071 commit 2229cafc3833a017b3a107b4f6b207f0a95908f5
2072 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2073 Date:   Mon Feb 15 12:04:50 2010 +0000
2074
2075     stage: Add sanity checks for get_pending_swaps()
2076     
2077     The master clock might have a Stage during its destruction phase,
2078     without a StageWindow attached to it. If this happens and we try
2079     to dereference the StageWindow to get its class and call a virtual
2080     function we might experience some slight turbulence and... then...
2081     explode.
2082     
2083     http://bugzilla.openedhand.com/show_bug.cgi?id=1987
2084
2085  clutter/clutter-master-clock.c |   21 +++++++++++++--------
2086  clutter/clutter-stage.c        |   10 +++++++++-
2087  2 files changed, 22 insertions(+), 9 deletions(-)
2088
2089 commit fef82fae5c716f15cd345fcfbc37f01578a82580
2090 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2091 Date:   Mon Feb 15 11:58:55 2010 +0000
2092
2093     build: Enable experimental COGL API in tests/conform
2094     
2095     Enable the experimental API when building the conformance test suite.
2096
2097  tests/conform/Makefile.am              |    1 +
2098  tests/conform/test-cogl-pixel-buffer.c |    3 ---
2099  2 files changed, 1 insertion(+), 3 deletions(-)
2100
2101 commit 032121ce17fb825592ba435cf260107b52f8196c
2102 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2103 Date:   Mon Feb 15 11:57:48 2010 +0000
2104
2105     build: Disable deprecated API in tests/conform
2106     
2107     We should not be using deprecated API in the conformance test suite.
2108
2109  tests/conform/Makefile.am |    1 +
2110  1 file changed, 1 insertion(+)
2111
2112 commit c3354cb2c0acc7d80b2cea3f970a1d83a47d585c
2113 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2114 Date:   Mon Feb 15 11:56:34 2010 +0000
2115
2116     conform: Do not use deprecated API
2117     
2118     There is no more type-specific ref/unref pairs: it is all under
2119     CoglHandle now.
2120
2121  tests/conform/test-cogl-blend-strings.c   |    6 +++---
2122  tests/conform/test-cogl-multitexture.c    |    2 +-
2123  tests/conform/test-cogl-texture-mipmaps.c |    2 +-
2124  3 files changed, 5 insertions(+), 5 deletions(-)
2125
2126 commit d607400f01be1c1e26f54b3d83794e0d246e8db0
2127 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2128 Date:   Mon Feb 15 11:45:35 2010 +0000
2129
2130     x11: Do not set pid or title on foreign windows
2131     
2132     If a StageX11 is using a foreign window we should not need to set the
2133     _NET_WM_PID or the WM_TITLE properies.
2134     
2135     http://bugzilla.openedhand.com/show_bug.cgi?id=1989
2136
2137  clutter/x11/clutter-stage-x11.c |    6 +++---
2138  1 file changed, 3 insertions(+), 3 deletions(-)
2139
2140 commit 89191e8bbc591f33dd0f45e2317f31eeaa7d4023
2141 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2142 Date:   Mon Feb 15 11:44:02 2010 +0000
2143
2144     docs: Mention signal-swapped-after modifier
2145     
2146     The signal-swapped-after:: modifier for signal connection inside the
2147     clutter_actor_animate* variadic arguments functions is not mentioned in
2148     the documentation.
2149
2150  clutter/clutter-animation.c |   34 ++++++++++++++++++++++++----------
2151  1 file changed, 24 insertions(+), 10 deletions(-)
2152
2153 commit 262782feae4e8130321be414f7aac9141ae22eab
2154 Author: Damien Lespiau <damien.lespiau@intel.com>
2155 Date:   Mon Feb 8 19:18:36 2010 +0000
2156
2157     docs: Add 2010 in COGL's Copyright notice
2158     
2159     While at it, fix the usage of <year> in <copyright> to let the
2160     stylesheet do the collation when having several years.
2161
2162  doc/reference/clutter/clutter-docs.xml.in |    7 +++++--
2163  doc/reference/cogl/cogl-docs.xml.in       |    1 +
2164  2 files changed, 6 insertions(+), 2 deletions(-)
2165
2166 commit 01bf50905689b363877f85942403cdc947f8c82c
2167 Author: Damien Lespiau <damien.lespiau@intel.com>
2168 Date:   Fri Feb 12 17:24:15 2010 +0000
2169
2170     cogl-buffer: fix compilation for GL ES
2171     
2172     In the frenzy of the last 10mins before API freeze, I obviously forgot
2173     to update the OpenGL path for _cogl_buffer_hints_to_gl_enum(). This
2174     commit fixes this.
2175
2176  clutter/cogl/cogl/cogl-buffer.c |   15 +++++----------
2177  1 file changed, 5 insertions(+), 10 deletions(-)
2178
2179 commit e668a2f228acb1f38853eea4245f87e10e82fe23
2180 Author: Neil Roberts <neil@linux.intel.com>
2181 Date:   Fri Feb 12 15:33:56 2010 +0000
2182
2183     cogl-atlas-texture: Flush the journal before adding a new texture
2184     
2185     When the atlas is reorganised we could potentially be moving around
2186     textures that are already referenced in the journal. We therefore need
2187     to flush the journal otherwise they will be rendered with incorrect
2188     texture coordinates. We also need to flush the journal even if we are
2189     not reorganizing so that we can rely on the old texture contents
2190     remaining in the atlas after migrating a texture out.
2191
2192  clutter/cogl/cogl/cogl-atlas-texture.c |   26 +++++++++++++++++++++++++-
2193  1 file changed, 25 insertions(+), 1 deletion(-)
2194
2195 commit 4be4f56bdf463ccac89c7068b47ba1450bee95ee
2196 Author: Neil Roberts <neil@linux.intel.com>
2197 Date:   Fri Feb 12 10:08:51 2010 +0000
2198
2199     cogl-sub-texture: Optimise taking a sub texture of a sub texture
2200     
2201     When creating a Cogl sub-texture, if the full texture is also a sub
2202     texture it will now just offset the x and y and reference the full
2203     texture instead. This avoids one level of indirection when rendering
2204     the texture which reduces the chances of getting rounding errors in
2205     the calculations.
2206
2207  clutter/cogl/cogl/cogl-sub-texture-private.h |   17 ++++-
2208  clutter/cogl/cogl/cogl-sub-texture.c         |   29 +++++++--
2209  clutter/cogl/cogl/cogl-texture.h             |    4 ++
2210  tests/conform/test-cogl-sub-texture.c        |   89 +++++++++++++++++---------
2211  4 files changed, 99 insertions(+), 40 deletions(-)
2212
2213 commit 2018b5b16750b090c5592ebd5262fc66d809183e
2214 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2215 Date:   Fri Feb 12 16:24:27 2010 +0000
2216
2217     actor: Split get_paint_opacity() from the type check
2218     
2219     Since get_paint_opacity() recurses through the hierarchy it might lead
2220     to a lot of type checks while we walk the parent-child chain. We can
2221     split the recursive function from the public entry point and perform the
2222     type check just once.
2223
2224  clutter/clutter-actor.c |   55 ++++++++++++++++++++++++++++++-----------------
2225  1 file changed, 35 insertions(+), 20 deletions(-)
2226
2227 commit 37d51cb78e41ea36f01c049eda6163bddc84ce33
2228 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2229 Date:   Fri Feb 12 16:18:12 2010 +0000
2230
2231     actor: Do not call get_opacity() from get_paint_opacity()
2232     
2233     We already have access to the opacity private field, there's no need to
2234     go through the public API.
2235
2236  clutter/clutter-actor.c |    6 +++---
2237  1 file changed, 3 insertions(+), 3 deletions(-)
2238
2239 commit 124f30cccef75feabb0933c074753b392f373e82
2240 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2241 Date:   Fri Feb 12 15:52:07 2010 +0000
2242
2243     docs: Fixes for Cogl
2244
2245  clutter/cogl/cogl/cogl-material.h     |    1 +
2246  clutter/cogl/cogl/cogl-pixel-buffer.h |    2 +-
2247  doc/reference/cogl/Makefile.am        |    3 ++-
2248  doc/reference/cogl/cogl-sections.txt  |    8 ++++----
2249  4 files changed, 8 insertions(+), 6 deletions(-)
2250
2251 commit 27e6c3b1e0db6fcb36a8f7e44e457b672ee34565
2252 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2253 Date:   Fri Feb 12 14:46:43 2010 +0000
2254
2255     build: Use -Wuninitialized instead of -Wno-uninitialized
2256     
2257     We want to be warned about uninitialized variables.
2258
2259  configure.ac |    2 +-
2260  1 file changed, 1 insertion(+), 1 deletion(-)
2261
2262 commit 00c4bfc3c69ba1c1c37852392b46c0fe601a98a1
2263 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2264 Date:   Fri Feb 12 14:45:49 2010 +0000
2265
2266     analysis: Interactive tests
2267     
2268     Abort if test-behave was passed the wrong type of behaviour to test.
2269
2270  tests/interactive/test-behave.c |    4 ++++
2271  1 file changed, 4 insertions(+)
2272
2273 commit 46182233c031c480b5d4d1f6109ab28a6199d369
2274 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2275 Date:   Fri Feb 12 14:45:04 2010 +0000
2276
2277     analysis: Conformance tests
2278     
2279     Initialize ClutterPathNote members to 0 using "{ 0, }".
2280
2281  tests/conform/test-path.c |   14 +++++++-------
2282  1 file changed, 7 insertions(+), 7 deletions(-)
2283
2284 commit 78f1f508af88ccd9652d38811a4ebc6662c566dd
2285 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2286 Date:   Thu Feb 11 15:24:41 2010 +0000
2287
2288     analysis: x11: ClutterEvent
2289     
2290     Remove an unused variable.
2291
2292  clutter/x11/clutter-event-x11.c |    3 ---
2293  1 file changed, 3 deletions(-)
2294
2295 commit 081696fdb5d83c41ed201277db272572eb534db2
2296 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2297 Date:   Thu Feb 11 15:24:17 2010 +0000
2298
2299     analysis: CoglPangoRenderer
2300     
2301     Remove unused variables.
2302
2303  clutter/cogl/pango/cogl-pango-render.c |   17 +++++++----------
2304  1 file changed, 7 insertions(+), 10 deletions(-)
2305
2306 commit 2d8bdf9e5ebd101b40854e0066b06037dd261ea5
2307 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2308 Date:   Thu Feb 11 15:20:25 2010 +0000
2309
2310     analysis: ClutterTimeoutPool
2311     
2312     Do not pre-initialize the list iterator, the for loop will do it for us.
2313
2314  clutter/clutter-timeout-pool.c |    2 +-
2315  1 file changed, 1 insertion(+), 1 deletion(-)
2316
2317 commit 9c8f8818784ba7c709c70ead6d8e103ee28d0c8c
2318 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2319 Date:   Thu Feb 11 15:20:07 2010 +0000
2320
2321     analysis: ClutterTimeline
2322     
2323     Remove an unused variable.
2324
2325  clutter/clutter-timeline.c |    4 ----
2326  1 file changed, 4 deletions(-)
2327
2328 commit 65af411cb4675eab722fe16acc93fa6e7183e3c8
2329 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2330 Date:   Thu Feb 11 15:19:46 2010 +0000
2331
2332     analysis: ClutterTexture
2333     
2334     Remove unused variables.
2335
2336  clutter/clutter-texture.c |   25 +++++++++----------------
2337  1 file changed, 9 insertions(+), 16 deletions(-)
2338
2339 commit 09644e4bb6cff70d2c9a59bbe9b461b7e53676e2
2340 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2341 Date:   Thu Feb 11 15:19:32 2010 +0000
2342
2343     analysis: ClutterText
2344     
2345     Remove unused variables.
2346
2347  clutter/clutter-text.c |    2 --
2348  1 file changed, 2 deletions(-)
2349
2350 commit c2d434e3af3d3b862866273a7dd15541ecbebcd5
2351 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2352 Date:   Thu Feb 11 15:19:18 2010 +0000
2353
2354     analysis: ClutterStage
2355     
2356     Remove unused variables.
2357
2358  clutter/clutter-stage.c |    8 +-------
2359  1 file changed, 1 insertion(+), 7 deletions(-)
2360
2361 commit 136e8c1acb15c078c0898a834f55666c6f0ef384
2362 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2363 Date:   Thu Feb 11 15:17:53 2010 +0000
2364
2365     analysis: ClutterScriptParser
2366     
2367     We parse a JSON value depending on the initial state of an uninitialized
2368     variable. Ouch.
2369
2370  clutter/clutter-script-parser.c |    2 +-
2371  1 file changed, 1 insertion(+), 1 deletion(-)
2372
2373 commit 4d9010dd5e9c5a69ba5f7a0c3969ce5ac337c08d
2374 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2375 Date:   Thu Feb 11 15:17:32 2010 +0000
2376
2377     analysis: ClutterRectangle
2378     
2379     Remove unused variables.
2380
2381  clutter/clutter-rectangle.c |   10 +++-------
2382  1 file changed, 3 insertions(+), 7 deletions(-)
2383
2384 commit 8ba65cfd4aba677530b25d9ab1323d2b1b281282
2385 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2386 Date:   Thu Feb 11 15:17:07 2010 +0000
2387
2388     analysis: ClutterModel
2389     
2390     Remove unused variables.
2391
2392  clutter/clutter-model.c |   10 ----------
2393  1 file changed, 10 deletions(-)
2394
2395 commit bea1a0a6a22ecd0ed96720bcecb3919d3fbb2757
2396 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2397 Date:   Thu Feb 11 15:13:40 2010 +0000
2398
2399     analysis: ClutterMain
2400     
2401     • Remove unused variables.
2402     
2403     • Do not pre-initialize ClutterActor's GType; pre-emptive optimizations
2404       like these are more black magic than real optimization.
2405
2406  clutter/clutter-main.c |   21 ++++++---------------
2407  1 file changed, 6 insertions(+), 15 deletions(-)
2408
2409 commit 66920ea540834c0264434f64a0dcfae4150e625f
2410 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2411 Date:   Thu Feb 11 15:13:20 2010 +0000
2412
2413     analysis: ClutterInterval
2414     
2415     Remove unused variables.
2416
2417  clutter/clutter-interval.c |    8 --------
2418  1 file changed, 8 deletions(-)
2419
2420 commit 853f9941da5f40b936307ce45f67265f978d9c2b
2421 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2422 Date:   Thu Feb 11 15:11:51 2010 +0000
2423
2424     analysis: ClutterBoxLayout
2425     
2426     Remove an useless assignment. The n_expand_children is not used outside
2427     the extra_space check, and if n_expand_children is 0 then the extra
2428     space we allocate is 0.
2429
2430  clutter/clutter-box-layout.c |    5 +----
2431  1 file changed, 1 insertion(+), 4 deletions(-)
2432
2433 commit cd058562538633962089cd30787b7a98d9733144
2434 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2435 Date:   Thu Feb 11 15:11:25 2010 +0000
2436
2437     analysis: ClutterBehaviour
2438     
2439     Remove an unused variable.
2440
2441  clutter/clutter-behaviour.c |    5 +----
2442  1 file changed, 1 insertion(+), 4 deletions(-)
2443
2444 commit 6dc0e9632cc2597240d9e42c98cd567dbcc1dbec
2445 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2446 Date:   Thu Feb 11 15:09:51 2010 +0000
2447
2448     analysis: ClutterAnimation
2449     
2450     • Remove one unused variable.
2451     
2452     • We ignore the result of get_timeline_internal() so we need to tell
2453       the compiler that - though a better solution would be to split the
2454       timeline implicit creation into its own function.
2455
2456  clutter/clutter-animation.c |   10 ++++++----
2457  1 file changed, 6 insertions(+), 4 deletions(-)
2458
2459 commit a287ca7a2824efef2608877555711c408122a400
2460 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2461 Date:   Thu Feb 11 15:09:12 2010 +0000
2462
2463     analysis: ClutterAnimator/2
2464     
2465     Clean up an unused variable.
2466
2467  clutter/clutter-animator.c |    4 +---
2468  1 file changed, 1 insertion(+), 3 deletions(-)
2469
2470 commit 667222c301ca0f19c570938055208e564e4d02ef
2471 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2472 Date:   Thu Feb 11 15:08:19 2010 +0000
2473
2474     analysis: ClutterAnimator/1
2475     
2476     Do not de-reference a void*; use a temporary variable -- after
2477     checking the contents of the pointer. This actually simplifies
2478     the readability and avoids pulling a Lisp with the parentheses.
2479
2480  clutter/clutter-animator.c |   10 +++++++++-
2481  1 file changed, 9 insertions(+), 1 deletion(-)
2482
2483 commit fcd3cfc0bfc656d63088a443355b30e7b50d2850
2484 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2485 Date:   Thu Feb 11 15:07:38 2010 +0000
2486
2487     analysis: ClutterAlpha
2488     
2489     Clean up unused variables.
2490
2491  clutter/clutter-alpha.c |   12 ++----------
2492  1 file changed, 2 insertions(+), 10 deletions(-)
2493
2494 commit aa6d7a30291c199fc1d26a93574d88c027367bf0
2495 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2496 Date:   Thu Feb 11 15:05:18 2010 +0000
2497
2498     analysis: ClutterActor
2499     
2500     Clean up ClutterActor for unused variables.
2501
2502  clutter/clutter-actor.c |   12 +-----------
2503  1 file changed, 1 insertion(+), 11 deletions(-)
2504
2505 commit 7a372bc0011b6301cc8b46767493a23218a67cff
2506 Author: Neil Roberts <neil@linux.intel.com>
2507 Date:   Fri Feb 12 14:26:33 2010 +0000
2508
2509     cogl: Cache the value for GL_MAX_TEXTURE_UNITS
2510     
2511     The function _cogl_get_max_texture_units is called quite often while
2512     rendering and it returns a constant value so we might as well cache
2513     the result. Calling glGetInteger on Mesa can be expensive because it
2514     flushes a lot of state.
2515
2516  clutter/cogl/cogl/cogl-context.c |    2 ++
2517  clutter/cogl/cogl/cogl-context.h |    4 ++++
2518  clutter/cogl/cogl/cogl.c         |   12 +++++++++---
2519  3 files changed, 15 insertions(+), 3 deletions(-)
2520
2521 commit 22c33b2fea1fd60239280aa1f4fd112f533688aa
2522 Author: Robert Bragg <robert@linux.intel.com>
2523 Date:   Thu Feb 11 16:12:26 2010 +0000
2524
2525     cogl: resolves some low hanging issues flagged by clang
2526     
2527     An initial pass over the Cogl source code using the Clang static
2528     analysis tool flagged a few low hanging issues such as un-used variables
2529     or redundant initializing of variables which this patch fixes.
2530
2531  clutter/cogl/cogl/cogl-texture-2d-sliced.c |    9 ++-------
2532  clutter/cogl/cogl/cogl-texture.c           |    8 ++++----
2533  2 files changed, 6 insertions(+), 11 deletions(-)
2534
2535 commit 18305cbd98e02ab139beef769cbc90a2121bd1f5
2536 Author: Robert Bragg <robert@linux.intel.com>
2537 Date:   Thu Feb 11 15:33:01 2010 +0000
2538
2539     cogl_rectangle: avoid redundant copy of geometry
2540     
2541     All the cogl_rectangle* APIs normalize their input into into an array of
2542     _CoglMutiTexturedRect rectangles and pass these on to our work horse;
2543     _cogl_rectangles_with_multitexture_coords. The definition of
2544     _CoglMutiTexturedRect had 4 separate float members, x_1, y_1, x_2 and
2545     y_2 which meant for some common cases we were having to copy out from an
2546     array into these members. We are now able to simply point into the users
2547     array avoiding a copy which seems desirable when submiting lots of
2548     rectangles.
2549
2550  clutter/cogl/cogl/cogl-journal-private.h |    5 +-
2551  clutter/cogl/cogl/cogl-journal.c         |   31 ++++---
2552  clutter/cogl/cogl/cogl-primitives.c      |  135 ++++++++++++++++--------------
2553  3 files changed, 91 insertions(+), 80 deletions(-)
2554
2555 commit 5f18fc928d85499d6ee2ac433dde247286e2de4e
2556 Author: Robert Bragg <robert@linux.intel.com>
2557 Date:   Wed Feb 10 22:47:49 2010 +0000
2558
2559     cogl: explicitly mark cogl_<object>_ref/unref APIs as deprecated
2560     
2561     This uses the G_GNUC_DEPRECATED macros to mark the
2562     cogl_{texture,vertex_buffer,shader}_ref and unref APIs as deprecated.
2563     Since this flagged that cogl-pango-display-list.c and
2564     clutter-glx-texture-pixmap.c were still using deprecated _ref/_unref
2565     APIs they have now been changed to use the cogl_handle_ref/unref API
2566     instead.
2567
2568  clutter/cogl/cogl/cogl-shader.h              |    8 ++++++--
2569  clutter/cogl/cogl/cogl-texture.h             |    4 ++--
2570  clutter/cogl/cogl/cogl-vertex-buffer.h       |    4 ++--
2571  clutter/cogl/pango/cogl-pango-display-list.c |    8 ++++----
2572  clutter/glx/clutter-glx-texture-pixmap.c     |    2 +-
2573  5 files changed, 15 insertions(+), 11 deletions(-)
2574
2575 commit 48660349dbcabdde05fc9e1334734bcc62bb790e
2576 Author: Robert Bragg <robert@linux.intel.com>
2577 Date:   Wed Feb 10 22:30:37 2010 +0000
2578
2579     cogl: cleanly separate primitives + paths code
2580     
2581     The function prototypes for the primitives API were spread between
2582     cogl-path.h and cogl-texture.h and should have been in a
2583     cogl-primitives.h.
2584     
2585     As well as shuffling the prototypes around into more sensible places
2586     this commit splits the cogl-path API out from cogl-primitives.c into
2587     a cogl-path.c
2588
2589  clutter/cogl/cogl/Makefile.am       |    3 +
2590  clutter/cogl/cogl/cogl-internal.h   |   28 +
2591  clutter/cogl/cogl/cogl-path.c       | 1121 +++++++++++++++++++++++++++++++++++
2592  clutter/cogl/cogl/cogl-path.h       |   33 +-
2593  clutter/cogl/cogl/cogl-primitives.c | 1078 ---------------------------------
2594  clutter/cogl/cogl/cogl-primitives.h |  188 +++++-
2595  clutter/cogl/cogl/cogl-texture.h    |  133 -----
2596  clutter/cogl/cogl/cogl.h            |    1 +
2597  8 files changed, 1316 insertions(+), 1269 deletions(-)
2598
2599 commit 9f5a3e14451ed77f47260bbd6a1b2271e8003361
2600 Author: Robert Bragg <robert@linux.intel.com>
2601 Date:   Wed Feb 10 18:18:30 2010 +0000
2602
2603     cogl: remove redundant _cogl_journal_flush prototype
2604     
2605     There was a redundant _cogl_journal_flush function prototype in
2606     cogl-primitives.h
2607
2608  clutter/cogl/cogl/cogl-clip-stack.c        |    1 +
2609  clutter/cogl/cogl/cogl-framebuffer.c       |    1 +
2610  clutter/cogl/cogl/cogl-journal-private.h   |    5 +++--
2611  clutter/cogl/cogl/cogl-material.c          |    1 +
2612  clutter/cogl/cogl/cogl-primitives.h        |    3 ---
2613  clutter/cogl/cogl/cogl-texture-2d-sliced.c |    1 +
2614  clutter/cogl/cogl/cogl-texture-2d.c        |    1 +
2615  clutter/cogl/cogl/cogl-vertex-buffer.c     |    1 +
2616  clutter/cogl/cogl/driver/gl/cogl-program.c |    1 +
2617  9 files changed, 10 insertions(+), 5 deletions(-)
2618
2619 commit 7edcbaa1f9444848fcaac052557f7c444e3905e0
2620 Author: Robert Bragg <robert@linux.intel.com>
2621 Date:   Wed Feb 10 01:57:32 2010 +0000
2622
2623     cogl: improves header and coding style consistency
2624     
2625     We've had complaints that our Cogl code/headers are a bit "special" so
2626     this is a first pass at tidying things up by giving them some
2627     consistency. These changes are all consistent with how new code in Cogl
2628     is being written, but the style isn't consistently applied across all
2629     code yet.
2630     
2631     There are two parts to this patch; but since each one required a large
2632     amount of effort to maintain tidy indenting it made sense to combine the
2633     changes to reduce the time spent re indenting the same lines.
2634     
2635     The first change is to use a consistent style for declaring function
2636     prototypes in headers. Cogl headers now consistently use this style for
2637     prototypes:
2638     
2639      return_type
2640      cogl_function_name (CoglType arg0,
2641                          CoglType arg1);
2642     
2643     Not everyone likes this style, but it seems that most of the currently
2644     active Cogl developers agree on it.
2645     
2646     The second change is to constrain the use of redundant glib data types
2647     in Cogl. Uses of gint, guint, gfloat, glong, gulong and gchar have all
2648     been replaced with int, unsigned int, float, long, unsigned long and char
2649     respectively. When talking about pixel data; use of guchar has been
2650     replaced with guint8, otherwise unsigned char can be used.
2651     
2652     The glib types that we continue to use for portability are gboolean,
2653     gint{8,16,32,64}, guint{8,16,32,64} and gsize.
2654     
2655     The general intention is that Cogl should look palatable to the widest
2656     range of C programmers including those outside the Gnome community so
2657     - especially for the public API - we want to minimize the number of
2658     foreign looking typedefs.
2659
2660  clutter/cogl/cogl/cogl-atlas-texture.c             |   52 ++--
2661  clutter/cogl/cogl/cogl-atlas.c                     |   22 +-
2662  clutter/cogl/cogl/cogl-atlas.h                     |   18 +-
2663  clutter/cogl/cogl/cogl-bitmap-fallback.c           |   82 +++---
2664  clutter/cogl/cogl/cogl-bitmap-pixbuf.c             |   60 ++--
2665  clutter/cogl/cogl/cogl-bitmap-private.h            |   30 +-
2666  clutter/cogl/cogl/cogl-bitmap.c                    |   34 +--
2667  clutter/cogl/cogl/cogl-bitmap.h                    |   15 +-
2668  clutter/cogl/cogl/cogl-blend-string.c              |   12 +-
2669  clutter/cogl/cogl/cogl-blend-string.h              |    4 +-
2670  clutter/cogl/cogl/cogl-buffer-private.h            |   14 +-
2671  clutter/cogl/cogl/cogl-buffer.c                    |    8 +-
2672  clutter/cogl/cogl/cogl-buffer.h                    |   26 +-
2673  clutter/cogl/cogl/cogl-clip-stack.c                |   16 +-
2674  clutter/cogl/cogl/cogl-clip-stack.h                |   14 +-
2675  clutter/cogl/cogl/cogl-color.h                     |   75 +++--
2676  clutter/cogl/cogl/cogl-context.c                   |    2 +-
2677  clutter/cogl/cogl/cogl-context.h                   |   10 +-
2678  clutter/cogl/cogl/cogl-debug.c                     |    8 +-
2679  clutter/cogl/cogl/cogl-debug.h                     |    4 +-
2680  clutter/cogl/cogl/cogl-feature-private.c           |   19 +-
2681  clutter/cogl/cogl/cogl-feature-private.h           |   14 +-
2682  clutter/cogl/cogl/cogl-fixed.c                     |   24 +-
2683  clutter/cogl/cogl/cogl-fixed.h                     |   72 +++--
2684  clutter/cogl/cogl/cogl-handle.h                    |    2 +-
2685  clutter/cogl/cogl/cogl-internal.h                  |   32 +-
2686  clutter/cogl/cogl/cogl-journal.c                   |   26 +-
2687  clutter/cogl/cogl/cogl-material-private.h          |   67 +++--
2688  clutter/cogl/cogl/cogl-material.c                  |   22 +-
2689  clutter/cogl/cogl/cogl-material.h                  |  175 ++++++-----
2690  clutter/cogl/cogl/cogl-matrix.h                    |  110 +++----
2691  clutter/cogl/cogl/cogl-path.h                      |  138 +++++----
2692  clutter/cogl/cogl/cogl-pixel-buffer-private.h      |    9 +-
2693  clutter/cogl/cogl/cogl-pixel-buffer.c              |   53 ++--
2694  clutter/cogl/cogl/cogl-pixel-buffer.h              |   46 +--
2695  clutter/cogl/cogl/cogl-primitives.c                |   48 +--
2696  clutter/cogl/cogl/cogl-primitives.h                |   13 +-
2697  clutter/cogl/cogl/cogl-shader.h                    |   96 +++---
2698  clutter/cogl/cogl/cogl-sub-texture-private.h       |   14 +-
2699  clutter/cogl/cogl/cogl-sub-texture.c               |   70 ++---
2700  clutter/cogl/cogl/cogl-texture-2d-private.h        |    4 +-
2701  clutter/cogl/cogl/cogl-texture-2d-sliced-private.h |    6 +-
2702  clutter/cogl/cogl/cogl-texture-2d-sliced.c         |  163 +++++-----
2703  clutter/cogl/cogl/cogl-texture-2d.c                |   34 ++-
2704  clutter/cogl/cogl/cogl-texture-private.h           |    6 +-
2705  clutter/cogl/cogl/cogl-texture.c                   |  106 +++----
2706  clutter/cogl/cogl/cogl-texture.h                   |  220 +++++++-------
2707  clutter/cogl/cogl/cogl-types.h                     |   15 +-
2708  clutter/cogl/cogl/cogl-util.c                      |   30 +-
2709  clutter/cogl/cogl/cogl-vertex-buffer-private.h     |    2 +-
2710  clutter/cogl/cogl/cogl-vertex-buffer.c             |   18 +-
2711  clutter/cogl/cogl/cogl-vertex-buffer.h             |    6 +-
2712  clutter/cogl/cogl/cogl.c                           |   52 ++--
2713  clutter/cogl/cogl/cogl.h                           |  310 ++++++++++++--------
2714  clutter/cogl/cogl/driver/gl/cogl-program.c         |   18 +-
2715  clutter/cogl/cogl/driver/gl/cogl-shader.c          |    2 +-
2716  clutter/cogl/cogl/driver/gl/cogl-texture-driver.c  |    2 +-
2717  clutter/cogl/cogl/driver/gl/cogl.c                 |    8 +-
2718  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c |    6 +-
2719  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.h |   12 +-
2720  clutter/cogl/cogl/driver/gles/cogl-program.c       |   42 +--
2721  clutter/cogl/cogl/driver/gles/cogl-shader.c        |    4 +-
2722  .../cogl/cogl/driver/gles/cogl-texture-driver.c    |    4 +-
2723  clutter/cogl/doc/CODING_STYLE                      |   49 ++++
2724  64 files changed, 1491 insertions(+), 1184 deletions(-)
2725
2726 commit 8c9472bc4c0350bc28f6ca152e82a0a507063d19
2727 Author: Robert Bragg <robert@linux.intel.com>
2728 Date:   Fri Feb 5 16:32:19 2010 +0000
2729
2730     cogl: deprecates cogl_check_extension
2731     
2732     OpenGL is an implementation detail for Cogl so it's not appropriate to
2733     expose OpenGL extensions through the Cogl API.
2734     
2735     Note: Clutter is currently still using this API, because it is still
2736     doing raw GL calls in ClutterGLXTexturePixmap, so this introduces a
2737     couple of (legitimate) build warnings while compiling Clutter.
2738
2739  clutter/cogl/cogl/cogl-feature-private.c |    4 ++--
2740  clutter/cogl/cogl/cogl-internal.h        |    1 +
2741  clutter/cogl/cogl/cogl.c                 |   32 ++++++++++++++++++++++++++++++
2742  clutter/cogl/cogl/cogl.h                 |   11 +++++++++-
2743  clutter/cogl/cogl/driver/gl/cogl.c       |   31 +++--------------------------
2744  clutter/cogl/cogl/driver/gles/cogl.c     |   25 -----------------------
2745  clutter/glx/clutter-backend-glx.c        |    6 +++---
2746  clutter/glx/clutter-glx-texture-pixmap.c |    5 +++--
2747  8 files changed, 54 insertions(+), 61 deletions(-)
2748
2749 commit b898f0e227aeabeb0513d1228a8f432c467d95b9
2750 Author: Robert Bragg <robert@linux.intel.com>
2751 Date:   Tue Feb 9 19:34:32 2010 +0000
2752
2753     never presume queuing redraws on invisible actors is redundant
2754     
2755     This replaces code like this:
2756       if (CLUTTER_ACTOR_IS_VISIBLE (self))
2757         clutter_actor_queue_redraw (self);
2758     with:
2759       clutter_actor_queue_redraw (self);
2760     
2761     clutter_actor_queue_redraw internally knows what can be optimized when
2762     the actor is not visible, but it also knows that the queue_redraw signal
2763     must always be sent in case a ClutterClone is cloning a hidden actor.
2764
2765  clutter/clutter-actor.c     |   11 ++++-------
2766  clutter/clutter-group.c     |   12 ++++--------
2767  clutter/clutter-rectangle.c |    9 +++------
2768  clutter/clutter-stage.c     |    8 +++-----
2769  clutter/clutter-text.c      |   30 ++++++++++--------------------
2770  clutter/clutter-texture.c   |    9 +++------
2771  6 files changed, 27 insertions(+), 52 deletions(-)
2772
2773 commit bfb271b40332240f40c79dabf8f78f7a68293286
2774 Author: Robert Bragg <robert@linux.intel.com>
2775 Date:   Tue Feb 9 19:19:44 2010 +0000
2776
2777     box: port a ClutterGroup::foreach fix to ClutterBox
2778     
2779     ClutterGroup::foreach was recently changed (ref: ce030a3fce) to use
2780     g_list_foreach() to iterate the children instead of manually iterating
2781     the list so it would safely handle calls like:
2782     
2783       clutter_container_foreach (container, clutter_actor_destroy);
2784     
2785       (In this example clutter_actor_destroy will result in the current
2786        list item being iterated being freed.)
2787
2788  clutter/clutter-box.c |    7 +++++--
2789  1 file changed, 5 insertions(+), 2 deletions(-)
2790
2791 commit 60a4664d6e4f67b5e527cc2ecd190a538ed994ec
2792 Author: Robert Bragg <robert@linux.intel.com>
2793 Date:   Tue Feb 9 19:06:59 2010 +0000
2794
2795     box: Adds missing copyright header
2796     
2797     Adds a Copyright (C) 2009,2010  Intel Corporation header
2798
2799  clutter/clutter-box.c |   21 +++++++++++++++++++++
2800  1 file changed, 21 insertions(+)
2801
2802 commit 4355621aebb075bc34b50a89f8ba99e8b8e12ff7
2803 Author: Robert Bragg <robert@linux.intel.com>
2804 Date:   Tue Feb 9 18:54:28 2010 +0000
2805
2806     group: make it comparable to ClutterBox
2807     
2808     There is a lot of duplication between ClutterGroup and ClutterBox so
2809     this makes the two files diff-able so that new fixes can easily be
2810     ported to both and bug fixes missing in one or the other can be spotted
2811     more easily. This doesn't change the behaviour of either actor; it's
2812     really just a shuffle around of code and normalizes the coding style to
2813     make the files comparable.
2814     
2815     This has already uncovered one bug in ClutterBox, and also highlights
2816     a bug in ClutterGroup + many other actors:
2817     
2818     1) ClutterGroup::real_foreach was recently changed to use
2819        g_list_foreach instead of manually iterating the child list so it can
2820        safely handle calls like:
2821          clutter_container_foreach (container, clutter_actor_destroy);
2822        ClutterBox is still manually iterating the list.
2823     
2824     2) In ClutterGroup we guard _queue_redraw() calls like this:
2825         if (CLUTTER_ACTOR_IS_VISIBLE (container))
2826         clutter_actor_queue_redraw (CLUTTER_ACTOR (container));
2827        In ClutterBox we don't:
2828          I think ClutterBox is correct here because
2829          clutter_actor_queue_redraw already optimizes the case where the
2830          actor's not visible, but it also considers that the actor may be
2831          cloned and so the guard in ClutterGroup could break clones. This
2832          actually highlights a wider clutter bug since the same kinds of
2833          guards can be found in all other clutter actors.
2834
2835  clutter/clutter-box.c   |    1 -
2836  clutter/clutter-group.c |  366 +++++++++++++++++++++--------------------------
2837  2 files changed, 167 insertions(+), 200 deletions(-)
2838
2839 commit 34c7611407154fcbb61c82c959c2a38972c2534f
2840 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2841 Date:   Fri Feb 12 11:38:47 2010 +0000
2842
2843     docs: Update the backend HACKING file
2844     
2845     Clarify the Backend::create_context() vfunc role, and the
2846     Stage::realize() vfunc with regards to creating the GL/GLES
2847     context.
2848
2849  doc/HACKING.backends |   12 ++++++------
2850  1 file changed, 6 insertions(+), 6 deletions(-)
2851
2852 commit 44818a48273baa7dabfbb9370ac218ae8b0cf38e
2853 Author: Neil Roberts <neil@linux.intel.com>
2854 Date:   Thu Feb 11 14:20:48 2010 +0000
2855
2856     cogl: Add a fallback for when the signbit macro is missing
2857     
2858     The signbit macro is defined in C99 so it should be available but some
2859     versions of GCC don't appear to define it by default. If it's not
2860     available we can use a hack to test the bit directly.
2861
2862  clutter/cogl/cogl/cogl-sub-texture.c |    2 +-
2863  clutter/cogl/cogl/cogl-texture-2d.c  |    2 +-
2864  clutter/cogl/cogl/cogl-util.h        |   27 ++++++++++++++++++++++++++-
2865  3 files changed, 28 insertions(+), 3 deletions(-)
2866
2867 commit 59463c2213b79a553d3d7999bb56106fb7c5a4ad
2868 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2869 Date:   Wed Feb 10 17:20:31 2010 +0000
2870
2871     Do a sanity check on _clutter_do_pick() arguments
2872     
2873     We should check that the passed ClutterStage pointer is indeed: a) still
2874     valid and b) a Stage.
2875
2876  clutter/clutter-main.c |    1 +
2877  1 file changed, 1 insertion(+)
2878
2879 commit d0734bc4741d77e7c239cf860b73b49e9564aa91
2880 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2881 Date:   Wed Feb 10 17:12:27 2010 +0000
2882
2883     input-device: Do not pick() on NULL stages
2884     
2885     If the stage associated to the InputDevice is not set we should
2886     short-circuit out and return NULL. This will result in a pick()
2887     done on the event's stage - if applicable.
2888     
2889     http://bugzilla.moblin.org/show_bug.cgi?id=9602
2890
2891  clutter/clutter-input-device.c |    6 ++++--
2892  1 file changed, 4 insertions(+), 2 deletions(-)
2893
2894 commit 4208169ab48795ca8f10287bd67031e161bf1f82
2895 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2896 Date:   Wed Feb 10 15:38:41 2010 +0000
2897
2898     text: Bump up the preferred height
2899     
2900     Instead of returning a sub-pixel height round up the preferred height to
2901     the nearest integral value that is not less than the size reported by
2902     Pango, once converted in pixels.
2903
2904  clutter/clutter-text.c |    2 +-
2905  1 file changed, 1 insertion(+), 1 deletion(-)
2906
2907 commit f54b29a0c0c182f1396abd9df7d46d99b81a133d
2908 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2909 Date:   Wed Feb 10 15:38:07 2010 +0000
2910
2911     test-text-field: Tone down the border
2912     
2913     Use a low opacity for the text field border.
2914
2915  tests/interactive/test-text-field.c |    2 +-
2916  1 file changed, 1 insertion(+), 1 deletion(-)
2917
2918 commit 2670fc58710b1d9d1ad5afae7b6ac397e1dc54dd
2919 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2920 Date:   Wed Feb 10 15:37:26 2010 +0000
2921
2922     test-text-field: Use ActorBox methods for the border
2923     
2924     Clamp to pixel and use get_size() when painting the border of the text
2925     field.
2926
2927  tests/interactive/test-text-field.c |    4 ++--
2928  1 file changed, 2 insertions(+), 2 deletions(-)
2929
2930 commit 3fdb0a59509aeaeb07c276ebd09df355626cfb92
2931 Author: Robert Bragg <robert@linux.intel.com>
2932 Date:   Wed Feb 10 11:57:58 2010 +0000
2933
2934     uprof: make the Redrawing timer a child of the Master Clock
2935     
2936     Previously it was a child of the Mainloop, but it's more closely
2937     a child of the Master Clock.
2938
2939  clutter/clutter-backend.c |    2 +-
2940  1 file changed, 1 insertion(+), 1 deletion(-)
2941
2942 commit 1899dbdc270e0bd494d174dd6bfbb9c5d18e174f
2943 Author: Robert Bragg <robert@linux.intel.com>
2944 Date:   Wed Feb 10 12:18:41 2010 +0000
2945
2946     backend-glx: Fix glXQueryVersion test
2947     
2948     This fixes some backwards logic for asserting that we have a GLX major
2949     version == 1 and a minor version >= 2. (NB: Although we technically
2950     depend on GLX 1.3 features, we still have to support drivers that report
2951     GLX 1.2 because there are a lot of mesa drivers out there incorrectly
2952     report GLX 1.2 even though they export extensions that depend on GLX
2953     1.3)
2954
2955  clutter/glx/clutter-backend-glx.c |    2 +-
2956  1 file changed, 1 insertion(+), 1 deletion(-)
2957
2958 commit ce1bb3d858fd02d6bcfb94b2b8999cfd7d0a4535
2959 Author: Neil Roberts <neil@linux.intel.com>
2960 Date:   Wed Feb 10 12:41:09 2010 +0000
2961
2962     cogl-material: Layers are not equal if the filters aren't equal
2963     
2964     A material layer can not be considered equal if it is using different
2965     texture filtering modes. This was causing problems where rectangles
2966     with different filters would end up batched together and then rendered
2967     with the wrong filter mode.
2968
2969  clutter/cogl/cogl/cogl-material.c |    5 +++++
2970  1 file changed, 5 insertions(+)
2971
2972 commit b61c2b510b5f5a72ae6181cdce646d7018fbd996
2973 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2974 Date:   Wed Feb 10 10:58:14 2010 +0000
2975
2976     build: Tweak internal defines for building Clutter
2977     
2978     When building Clutter we should:
2979     
2980       • disable Cogl deprecated API;
2981       • enable experimental API.
2982
2983  clutter/Makefile.am |    2 ++
2984  1 file changed, 2 insertions(+)
2985
2986 commit 4a9f08639f7127719f5b59ee9287641ba4912063
2987 Author: Robert Bragg <robert@linux.intel.com>
2988 Date:   Wed Jan 20 18:53:36 2010 +0000
2989
2990     debug: Adds CLUTTER_DEBUG=disable-swap-events option
2991     
2992     This allows us to forcibly disable the use of the GLX_INTEL_swap_events
2993     extension for testing or debugging purposes.
2994
2995  clutter/clutter-debug.h           |   37 +++++++++++++++++++------------------
2996  clutter/clutter-main.c            |    3 ++-
2997  clutter/glx/clutter-backend-glx.c |    3 ++-
2998  3 files changed, 23 insertions(+), 20 deletions(-)
2999
3000 commit 5d702853b814445590aafe448bfc8f7993b06638
3001 Author: Robert Bragg <robert@linux.intel.com>
3002 Date:   Thu Nov 12 20:37:01 2009 +0000
3003
3004     glx backend: Adds support for GLX_INTEL_swap_event
3005     
3006     If your OpenGL driver supports GLX_INTEL_swap_event that means when
3007     glXSwapBuffers is called it returns immediatly and an XEvent is sent when
3008     the actual swap has finished.
3009     
3010     Clutter can use the events that notify swap completion as a means to
3011     throttle rendering in the master clock without blocking the CPU and so it
3012     should help improve the performance of CPU bound applications.
3013
3014  clutter/clutter-feature.h         |    3 +-
3015  clutter/clutter-master-clock.c    |   72 ++++++++++++++++++++++++----
3016  clutter/clutter-private.h         |    2 +
3017  clutter/clutter-stage-window.c    |   13 +++++
3018  clutter/clutter-stage-window.h    |    3 ++
3019  clutter/clutter-stage.c           |    8 ++++
3020  clutter/glx/Makefile.am           |    2 +
3021  clutter/glx/clutter-backend-glx.c |   56 +++++++++++++++++-----
3022  clutter/glx/clutter-backend-glx.h |    3 ++
3023  clutter/glx/clutter-event-glx.c   |   96 +++++++++++++++++++++++++++++++++++++
3024  clutter/glx/clutter-event-glx.h   |   38 +++++++++++++++
3025  clutter/glx/clutter-stage-glx.c   |   21 ++++++++
3026  clutter/glx/clutter-stage-glx.h   |    2 +
3027  clutter/x11/clutter-backend-x11.c |   10 ++++
3028  clutter/x11/clutter-backend-x11.h |    7 +++
3029  clutter/x11/clutter-event-x11.c   |    5 ++
3030  doc/HACKING.backends              |    8 ++++
3031  17 files changed, 327 insertions(+), 22 deletions(-)
3032
3033 commit 848db1ee4cc910542435bbcd3a57933bdf70269e
3034 Author: Robert Bragg <robert@linux.intel.com>
3035 Date:   Thu Jan 14 14:03:23 2010 +0000
3036
3037     glx backend: when running with GLX 1.3 then create GLXWindows for stages
3038     
3039     Some extensions only support GLX versions > 1.3 and may not support
3040     old style X Windows as GLXDrawables, so we now create GLXWindows for
3041     stages when possible.
3042
3043  clutter/glx/clutter-backend-glx.c |   72 ++++++++++++++++++++++++++++---------
3044  clutter/glx/clutter-backend-glx.h |    1 +
3045  clutter/glx/clutter-stage-glx.c   |   28 +++++++++++++++
3046  clutter/glx/clutter-stage-glx.h   |    1 +
3047  4 files changed, 86 insertions(+), 16 deletions(-)
3048
3049 commit ca3ab41a1b12f661fe6eecddfaf5e03b0d94d682
3050 Author: Neil Roberts <neil@linux.intel.com>
3051 Date:   Tue Feb 9 18:33:09 2010 +0000
3052
3053     clutter-backend: Fix the error check in _clutter_backend_create_stage
3054     
3055     Commit d2bdd3cb62 fixed some compiler warnings but also broke the
3056     ability to create a stage. Although not having warnings from the
3057     compiler is nice, it is also nice to be able to create a stage so lets
3058     not invert the meaning of the error check.
3059
3060  clutter/clutter-backend.c |    2 +-
3061  1 file changed, 1 insertion(+), 1 deletion(-)
3062
3063 commit 7b1925df82fa92fd68623c9a999ece6bf4ddfde3
3064 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3065 Date:   Tue Feb 9 17:07:08 2010 +0000
3066
3067     cogl: Move material_copy() out of the deprecated section
3068     
3069     We strongly suggest people should be using cogl_material_copy(), but it
3070     was hidden behind the deprecation guards.
3071
3072  clutter/cogl/cogl/cogl-material.h |    4 ++--
3073  1 file changed, 2 insertions(+), 2 deletions(-)
3074
3075 commit d2bdd3cb62c1cba24619ae843cf087709a02643d
3076 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3077 Date:   Tue Feb 9 16:57:14 2010 +0000
3078
3079     Fix some compiler warnings
3080     
3081     GCC complains that some variable might be used uninitialized.
3082
3083  clutter/clutter-backend.c             |    6 ++++--
3084  clutter/clutter-bin-layout.c          |    1 +
3085  clutter/clutter-flow-layout.c         |    6 ++++++
3086  clutter/clutter-text.c                |    6 ++----
3087  clutter/cogl/cogl/cogl-matrix-stack.c |    6 +++++-
3088  5 files changed, 18 insertions(+), 7 deletions(-)
3089
3090 commit 193c477495488446d2f3d8ab0184f882f3255f48
3091 Author: Neil Roberts <neil@linux.intel.com>
3092 Date:   Tue Feb 9 16:30:28 2010 +0000
3093
3094     cogl-bitmap: Remove const from premult_alpha_last_four_pixels_sse2
3095     
3096     The function modifies the pixels pointed by p in-place so the pointer
3097     can not be constant. The compiler was accepting this because the
3098     modification is done from inline assembler.
3099
3100  clutter/cogl/cogl/cogl-bitmap-fallback.c |    2 +-
3101  1 file changed, 1 insertion(+), 1 deletion(-)
3102
3103 commit f5d2f58b03bf03b69f6cb92b3bdddb92b8a8ecc2
3104 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3105 Date:   Tue Feb 9 15:29:29 2010 +0000
3106
3107     docs: Clean up the unused symbols for Cogl
3108     
3109     Gtk-doc is reporting a lot of false positives in the unused text file,
3110     mostly because of new private files that have been added to Cogl but not
3111     to the gtk-doc ignore list for the Cogl API reference.
3112     
3113     Once the false positives have been removed we have a couple of really
3114     missing symbols that should be added to the cogl-sections.txt file.
3115
3116  doc/reference/cogl/Makefile.am       |   54 +++++++++++++++++++---------------
3117  doc/reference/cogl/cogl-sections.txt |    7 +++++
3118  2 files changed, 37 insertions(+), 24 deletions(-)
3119
3120 commit ecc5ffe91ace38c9d288251807e721a4cd71b052
3121 Author: Bastian Winkler <buz@netbuz.org>
3122 Date:   Tue Feb 9 15:19:03 2010 +0100
3123
3124     cogl-buffer: Use correct argument types in cogl_buffer_set_data_EXP
3125     
3126     offset and size arguments are gsize in cogl-buffer.h
3127     
3128     http://bugzilla.openedhand.com/show_bug.cgi?id=1980
3129     
3130     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
3131
3132  clutter/cogl/cogl/cogl-buffer.c |    4 ++--
3133  1 file changed, 2 insertions(+), 2 deletions(-)
3134
3135 commit 9aac36b47e43e95d12c8d28bd3671e6f5e000d32
3136 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3137 Date:   Tue Feb 9 14:48:11 2010 +0000
3138
3139     docs: Move some Cogl defines in the private section
3140     
3141     The PixelFormat bit and mask #defines should not be used and are there
3142     mostly for convenience, so we can push them to the "private" sub-section
3143     of the API reference.
3144     
3145     This pushed Cogl's API reference coverage to 100%.
3146
3147  doc/reference/cogl/cogl-sections.txt |   16 ++++++++--------
3148  1 file changed, 8 insertions(+), 8 deletions(-)
3149
3150 commit 7ebb1e7157ab5d3efbeb37d7879d851adc7da40e
3151 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3152 Date:   Tue Feb 9 14:41:37 2010 +0000
3153
3154     docs: Fixes for Cogl API reference
3155     
3156       98% symbol docs coverage.
3157       335 symbols documented.
3158       0 symbols incomplete.
3159       8 not documented.
3160     
3161     Not bad, if I may say so.
3162
3163  clutter/cogl/cogl/cogl-buffer.h           |   12 ++++++---
3164  clutter/cogl/cogl/cogl-color.h            |   41 +++++++++++++++++++++++++++++
3165  clutter/cogl/cogl/cogl-fixed.h            |    2 +-
3166  clutter/cogl/cogl/cogl-material-private.h |    2 +-
3167  clutter/cogl/cogl/cogl-matrix.h           |    3 ++-
3168  clutter/cogl/cogl/cogl-types.h            |   23 +++++++++++++++-
3169  doc/reference/cogl/cogl-sections.txt      |   16 +++--------
3170  7 files changed, 80 insertions(+), 19 deletions(-)
3171
3172 commit 1d28ed035f360b14cfbf5b01db4ffe2979172cf0
3173 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3174 Date:   Tue Feb 9 13:39:08 2010 +0000
3175
3176     Post-release bump to 1.1.11
3177
3178  configure.ac |    4 ++--
3179  1 file changed, 2 insertions(+), 2 deletions(-)
3180
3181 commit a24d4d21a0eeca771476705ef407d55fdb32e68f
3182 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3183 Date:   Tue Feb 9 12:31:42 2010 +0000
3184
3185     Release 1.1.10
3186     
3187     Brown paper bag release.
3188
3189  configure.ac |    4 ++--
3190  1 file changed, 2 insertions(+), 2 deletions(-)
3191
3192 commit 738e73873dd0c05a44f7cb0ad40c8a854e0c75a6
3193 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3194 Date:   Tue Feb 9 12:59:18 2010 +0000
3195
3196     Update NEWS file
3197
3198  NEWS |   19 +++++++++++++++++++
3199  1 file changed, 19 insertions(+)
3200
3201 commit cccf23caa481a239b747d1fdd5e0ca5ae7f6682c
3202 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3203 Date:   Tue Feb 9 11:29:39 2010 +0000
3204
3205     build: Always build conformance tests with debug symbols
3206     
3207     Having the conformance test suite build without debug symbols doesn't
3208     make any sense.
3209
3210  tests/conform/Makefile.am |    2 +-
3211  1 file changed, 1 insertion(+), 1 deletion(-)
3212
3213 commit e46db37c03b6adae1594729c2c5c86e65701d95b
3214 Author: Robert Bragg <robert@linux.intel.com>
3215 Date:   Tue Feb 9 13:00:39 2010 +0000
3216
3217     conform: fix stack corruption in test-behaviours.c
3218     
3219     The test was calling g_object_get to fetch the "opacity-start" property
3220     (unsigned int) into a guint8 local variable. It's a bit of a mean trap
3221     given that the getter function returns guint8 values so this also adds a
3222     comment explaining what's going on.
3223
3224  tests/conform/test-behaviours.c |   11 +++++++----
3225  1 file changed, 7 insertions(+), 4 deletions(-)
3226
3227 commit a02253f19a722dcfbf0a32543dd563127dd7b80e
3228 Author: Neil Roberts <neil@linux.intel.com>
3229 Date:   Tue Feb 9 12:21:10 2010 +0000
3230
3231     cogl-texture-2d: Use _cogl_texture_driver_gen to generate the GL tex
3232     
3233     _cogl_texture_driver_gen is needed to set the texture minification
3234     mode to Cogl's default of GL_LINEAR. There was also a line to set this
3235     in _cogl_texture_2d_new_with_size but it wasn't working because it was
3236     called *before* the texture was bound. If the texture was later
3237     rendered with the default material it then it would end up with GL's
3238     default mipmap filtering mode but without mipmaps so it would render
3239     white squares instead.
3240
3241  clutter/cogl/cogl/cogl-texture-2d.c |    3 +--
3242  1 file changed, 1 insertion(+), 2 deletions(-)
3243
3244 commit 1b2ff7eff7e97d8542e35514bfa010be706973ee
3245 Author: Neil Roberts <neil@linux.intel.com>
3246 Date:   Fri Dec 18 21:17:21 2009 +0000
3247
3248     cogl: Use SSE2 when possible for premultiplying
3249     
3250     This adds a fast path for premultiplying an RGBA image using SSE2
3251     instructions. SSE registers are 128-bit and we need at least 16-bits
3252     per component for the intermediate result of the multiplication so we
3253     can do two pixels in parallel with one register. The function
3254     interleaves 2 SSE registers to multiply 4 pixels in one function call
3255     with the hope that this will pipeline better.
3256     
3257     http://bugzilla.openedhand.com/show_bug.cgi?id=1939
3258     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
3259
3260  clutter/cogl/cogl/cogl-bitmap-fallback.c |  104 +++++++++++++++++++++++++++++-
3261  1 file changed, 103 insertions(+), 1 deletion(-)
3262
3263 commit bbb058df40a5e1acf7b8e42049c3cd5d966f762d
3264 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3265 Date:   Tue Feb 9 10:34:41 2010 +0000
3266
3267     actor: Improve readability of raise/lower warnings
3268     
3269     • Add the function name in the warning, since the text is the same in
3270       both clutter_actor_raise() and clutter_actor_lower().
3271     
3272     • If an actor has a name then prefer it to the type name.
3273
3274  clutter/clutter-actor.c |   46 +++++++++++++++++++++++++++++-----------------
3275  1 file changed, 29 insertions(+), 17 deletions(-)
3276
3277 commit 7664568fff63501339d2cb1682ae1a9f1c27e068
3278 Author: Halton Huo <halton.huo@gmail.com>
3279 Date:   Tue Feb 9 10:21:37 2010 +0000
3280
3281     Remove return from void functions
3282     
3283     This patch fixes compilation on suncc.
3284     
3285     http://bugzilla.openedhand.com/show_bug.cgi?id=1978
3286     
3287     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
3288
3289  clutter/cogl/cogl/cogl-buffer.c      |    2 +-
3290  clutter/cogl/cogl/cogl-sub-texture.c |    2 +-
3291  clutter/cogl/cogl/cogl-texture.c     |    2 +-
3292  3 files changed, 3 insertions(+), 3 deletions(-)
3293
3294 commit a23ce8606860075e35fca28eb82e57e340f2b9b9
3295 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3296 Date:   Mon Feb 8 18:09:14 2010 +0000
3297
3298     Post-release bump to 1.1.9
3299
3300  configure.ac |    2 +-
3301  1 file changed, 1 insertion(+), 1 deletion(-)
3302
3303 commit a2889ed0772503dce504ab260fbbf662a0ad25d8
3304 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3305 Date:   Mon Feb 8 17:57:48 2010 +0000
3306
3307     Release Clutter 1.1.8
3308
3309  configure.ac |    2 +-
3310  1 file changed, 1 insertion(+), 1 deletion(-)
3311
3312 commit a139bf9c40f88b46055e4cd9754ba51acca97c87
3313 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3314 Date:   Mon Feb 8 17:56:35 2010 +0000
3315
3316     test-animator: Do not use mid-function blocks
3317     
3318     The test_animator_properties unit is so small that declaring a
3319     mid-function block for two variables is not that clever.
3320
3321  tests/conform/test-animator.c |   57 ++++++++++++++++++++---------------------
3322  1 file changed, 28 insertions(+), 29 deletions(-)
3323
3324 commit 4d9327bbe14c2771896999844df3eac28da75347
3325 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3326 Date:   Mon Feb 8 17:55:29 2010 +0000
3327
3328     animator: Zero the AnimatorKey:value member
3329     
3330     The test suite is showing random segfaults because the GValue member of
3331     AnimatorKey is not zero-ed on creation.
3332
3333  clutter/clutter-animator.c |    6 +++---
3334  1 file changed, 3 insertions(+), 3 deletions(-)
3335
3336 commit d62ddc374f88448fbde6db11ed4b10a594ecc5c4
3337 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3338 Date:   Mon Feb 8 17:37:00 2010 +0000
3339
3340     docs: Fixes for ClutterAnimator
3341
3342  clutter/clutter-animator.c                 |    2 +-
3343  clutter/clutter-animator.h                 |   16 ++++++++--------
3344  doc/reference/clutter/clutter-sections.txt |    1 +
3345  3 files changed, 10 insertions(+), 9 deletions(-)
3346
3347 commit 9806f78905eea6e7c3b5b1f35b35650a823cb295
3348 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3349 Date:   Mon Feb 8 17:34:11 2010 +0000
3350
3351     Merge me
3352
3353  NEWS |    4 ++++
3354  1 file changed, 4 insertions(+)
3355
3356 commit 814d3acd0730f2e418ccc44d550e1fa369c142fe
3357 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3358 Date:   Mon Feb 8 17:27:20 2010 +0000
3359
3360     docs: Update NEWS
3361
3362  NEWS |   53 +++++++++++++++++++++++++++++++++++++++++++++++++++++
3363  1 file changed, 53 insertions(+)
3364
3365 commit 419afc01e8f2c96f7cf5c0962e5c421f8f3a476f
3366 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3367 Date:   Mon Feb 8 17:27:13 2010 +0000
3368
3369     docs: Update the release notes
3370
3371  README |    6 ++++++
3372  1 file changed, 6 insertions(+)
3373
3374 commit c02dded0f6793ad377b566360371c23dbe61b4bc
3375 Author: Damien Lespiau <damien.lespiau@intel.com>
3376 Date:   Mon Feb 8 17:11:43 2010 +0000
3377
3378     cogl-buffer: Use TEXTURE as the only value for CoglBufferUsageHint
3379     
3380     We should try to use more explicit defines than GL for our hints. For
3381     now we only support using a CoglBuffer to generate textures.
3382
3383  clutter/cogl/cogl/cogl-buffer.c        |   38 ++++++++------------------------
3384  clutter/cogl/cogl/cogl-buffer.h        |   12 +++-------
3385  clutter/cogl/cogl/cogl-pixel-buffer.c  |    2 +-
3386  tests/conform/test-cogl-pixel-buffer.c |   12 +++++-----
3387  4 files changed, 19 insertions(+), 45 deletions(-)
3388
3389 commit 54a6df22b038b047931dc108df35bc9e097d4e5e
3390 Author: Damien Lespiau <damien.lespiau@intel.com>
3391 Date:   Tue Feb 2 16:44:16 2010 +0000
3392
3393     cogl-buffer: make sure the code compiles on GL ES
3394     
3395     OpenGL ES has no PBO extension, so we fallback to using a malloc'ed
3396     buffer. Make sure the OpenGL-only defines don't leak into the OpenGL ES
3397     compilation.
3398
3399  clutter/cogl/cogl/cogl-buffer.c       |   28 ++++++++++++++++++++++++++++
3400  clutter/cogl/cogl/cogl-pixel-buffer.c |    7 +++++++
3401  clutter/cogl/cogl/cogl-texture.c      |    5 ++++-
3402  3 files changed, 39 insertions(+), 1 deletion(-)
3403
3404 commit d0fe4795368ddc55411fb081832bfcdfdfeb4314
3405 Author: Damien Lespiau <damien.lespiau@intel.com>
3406 Date:   Tue Feb 2 12:59:51 2010 +0000
3407
3408     cogl-pixel-buffer: Add a fallback path
3409     
3410     First, let's add a new public feature called, surprisingly,
3411     COGL_FEATURE_PBOS to check the availability of PBOs and provide a
3412     fallback path when running on older GL implementations or on OpenGL ES
3413     
3414     In case the underlying OpenGL implementation does not provide PBOs, we
3415     need a fallback path (a malloc'ed buffer). The CoglPixelBufer
3416     constructors will instanciate a subclass of CoglBuffer that handles
3417     map/unmap and set_data() with a malloc'ed buffer.
3418     
3419     The public feature is useful to check before using set_data() on a
3420     buffer as it will mean doing a memcpy() when not supporting PBOs (in
3421     that case, it's better to create the texture directly instead of using a
3422     CoglBuffer).
3423
3424  clutter/cogl/cogl/cogl-pixel-buffer.c              |   56 ++++++++++++++++++--
3425  clutter/cogl/cogl/cogl-texture.c                   |   38 +++++++++----
3426  clutter/cogl/cogl/cogl-types.h                     |    4 +-
3427  .../cogl/cogl/driver/gl/cogl-feature-functions.h   |    5 ++
3428  4 files changed, 88 insertions(+), 15 deletions(-)
3429
3430 commit b5d5821304e8ca15ee4411bf7ff8f26a6a23c855
3431 Author: Damien Lespiau <damien.lespiau@intel.com>
3432 Date:   Fri Jan 22 15:38:31 2010 +0000
3433
3434     tests: Add a test for CoglPixelBuffers
3435     
3436     Exercise the whole public CoglBuffer / CoglPixelBuffer and
3437     cogl_texture_new_from_buffer API.
3438
3439  .gitignore                             |    1 +
3440  tests/conform/Makefile.am              |    1 +
3441  tests/conform/test-cogl-pixel-buffer.c |  337 ++++++++++++++++++++++++++++++++
3442  tests/conform/test-conform-main.c      |    3 +
3443  4 files changed, 342 insertions(+)
3444
3445 commit b7f049495b527547d093ca337588ceb289c9cb2b
3446 Author: Damien Lespiau <damien.lespiau@intel.com>
3447 Date:   Fri Jan 22 15:07:27 2010 +0000
3448
3449     cogl-texture: Add a new constructor to turn CoglBuffers into textures
3450     
3451     The only goal of using COGL buffers is to use them to create
3452     textures. cogl_texture_new_from_buffer() is the new symbol to create
3453     textures out of buffers.
3454
3455  clutter/cogl/cogl/cogl-texture.c     |   55 +++++++++++++++++++++++++++++++
3456  clutter/cogl/cogl/cogl-texture.h     |   60 ++++++++++++++++++++++++++++++++++
3457  doc/reference/cogl/cogl-sections.txt |    3 ++
3458  3 files changed, 118 insertions(+)
3459
3460 commit abbb668163537598790cb3eca564ea19b1e010ad
3461 Author: Damien Lespiau <damien.lespiau@intel.com>
3462 Date:   Sun Jan 10 18:04:29 2010 +0000
3463
3464     cogl-pixel-buffer: add a pixel buffer object class
3465     
3466     This subclass of CoglBuffer aims at wrapping PBOs or other system
3467     surfaces like DRM buffer objects. Two constructors are available:
3468     
3469     cogl_pixel_buffer_new() with a size when you only care about the size of
3470     the buffer (such a buffer can be used to store several texture data such
3471     as the three planes of a I420 frame).
3472     
3473     cogl_pixel_buffer_new_full() is more a 1:1 mapping between the data and
3474     an underlying surface, with the possibility of having access to a low
3475     level memory buffer that may have a stride.
3476
3477  clutter/cogl/cogl/Makefile.am                 |    3 +
3478  clutter/cogl/cogl/cogl-pixel-buffer-private.h |   72 ++++++
3479  clutter/cogl/cogl/cogl-pixel-buffer.c         |  317 +++++++++++++++++++++++++
3480  clutter/cogl/cogl/cogl-pixel-buffer.h         |  165 +++++++++++++
3481  clutter/cogl/cogl/cogl.h                      |    1 +
3482  doc/reference/cogl/cogl-sections.txt          |    6 +
3483  6 files changed, 564 insertions(+)
3484
3485 commit b5e9710cdf5795f532fe46b9dfcc704a07d99ac9
3486 Author: Damien Lespiau <damien.lespiau@intel.com>
3487 Date:   Sun Jan 10 17:28:24 2010 +0000
3488
3489     cogl-buffer: add an abstract class around openGL's buffer objects
3490     
3491     Buffer objects are cool! This abstracts the buffer API first introduced
3492     by GL_ARB_vertex_buffer_object and then extended to other objects.
3493     
3494     The coglBuffer abstract class is intended to be the base class of all
3495     the buffer objects, letting the user map() buffers. If the underlying
3496     implementation does not support buffer objects (or only support VBO but
3497     not FBO for instance), fallback paths should be provided.
3498
3499  clutter/cogl/cogl/Makefile.am           |    3 +
3500  clutter/cogl/cogl/cogl-buffer-private.h |  102 +++++++++++
3501  clutter/cogl/cogl/cogl-buffer.c         |  282 ++++++++++++++++++++++++++++++
3502  clutter/cogl/cogl/cogl-buffer.h         |  287 +++++++++++++++++++++++++++++++
3503  clutter/cogl/cogl/cogl-context.c        |    2 +
3504  clutter/cogl/cogl/cogl-context.h        |    5 +
3505  clutter/cogl/cogl/cogl.h                |    4 +
3506  doc/reference/cogl/cogl-docs.xml.in     |   21 +++
3507  doc/reference/cogl/cogl-sections.txt    |   17 ++
3508  9 files changed, 723 insertions(+)
3509
3510 commit de8a6314f12854e748de515afb487af56eaac845
3511 Author: Damien Lespiau <damien.lespiau@intel.com>
3512 Date:   Mon Jan 25 11:21:05 2010 +0000
3513
3514     cogl: new textures sould have GL_TEXTURE_MIN_FILTER set to GL_LINEAR
3515     
3516     The only way the user has to set the mipmap filters is through the
3517     material/layer API. This API defaults to GL_LINEAR/GL_LINEAR for the max
3518     and min filters. With the main use case of cogl being 2D interfaces, it
3519     makes sense do default to GL_LINEAR for the min filter.
3520     
3521     When creating new textures, we did not set any filter on them, using
3522     OpenGL defaults': GL_NEAREST_MIPMAP_LINEAR for the min filter and
3523     GL_LINEAR for the max filter. This will make the driver allocate memory
3524     for the mipmap tree, memory that will not be used in the nominal case
3525     (as the material API defaults to GL_LINEAR).
3526     
3527     This patch tries to ensure that the min filter is set to GL_LINEAR
3528     before any glTexImage*() call is done on the texture by setting the
3529     filter when generating new OpenGL handles.
3530
3531  clutter/cogl/cogl/cogl-texture-2d-sliced.c         |    9 +++----
3532  clutter/cogl/cogl/cogl-texture-2d.c                |    9 ++++---
3533  clutter/cogl/cogl/cogl-texture-driver.h            |    9 +++++++
3534  clutter/cogl/cogl/driver/gl/cogl-texture-driver.c  |   27 ++++++++++++++++++++
3535  .../cogl/cogl/driver/gles/cogl-texture-driver.c    |   27 ++++++++++++++++++++
3536  5 files changed, 72 insertions(+), 9 deletions(-)
3537
3538 commit c0f65212baee25dd4e66f4366a54bd847c782eb3
3539 Author: Damien Lespiau <damien.lespiau@intel.com>
3540 Date:   Mon Jan 11 00:15:25 2010 +0000
3541
3542     cogl: Introduce the GE_RET() debug macro
3543     
3544     Some GL functions have a return value that the GE() macro is not able to
3545     handle. Let's define a new Ge_RET() macro which will be able to handle
3546     functions such as glMapBuffer().
3547     
3548     While at it, removed the unused variadic dots to the GE() macro.
3549
3550  clutter/cogl/cogl/cogl-internal.h |   14 +++++++++++++-
3551  1 file changed, 13 insertions(+), 1 deletion(-)
3552
3553 commit 069ba6daf9d39b471eb5c1de6e621f1343d5f00c
3554 Merge: cc6aefa 6ab9089
3555 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3556 Date:   Mon Feb 8 16:53:11 2010 +0000
3557
3558     Merge branch 'animator-parser'
3559     
3560     * animator-parser:
3561       docs: Describe the Animation definition syntax
3562       animator: Provide a ClutterScript parser
3563       animator: Allow retrieving type property type from a key
3564       script: Use a node when resolving an animation mode
3565
3566 commit 6ab90899badf7820ffc4f40f23bf18c979762577
3567 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3568 Date:   Mon Feb 8 16:50:29 2010 +0000
3569
3570     docs: Describe the Animation definition syntax
3571     
3572     The ClutterAnimator documentation needs a section on the syntax of its
3573     ClutterScript definition, possibly with an example.
3574
3575  clutter/clutter-animator.c |   59 ++++++++++++++++++++++++++++++++++++++++++++
3576  1 file changed, 59 insertions(+)
3577
3578 commit 4dd11d6915f75ba62b8292c3138d4cc11a28fb21
3579 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3580 Date:   Mon Feb 8 15:52:18 2010 +0000
3581
3582     animator: Provide a ClutterScript parser
3583     
3584     The whole point of having the Animator class is that the developer can
3585     describe a complex animation using ClutterScript. Hence, ClutterAnimator
3586     should hook into the Script machinery and parse a specific description
3587     format for its keys.
3588
3589  .gitignore                        |    2 +
3590  clutter/clutter-animator.c        |  303 ++++++++++++++++++++++++++++++++++---
3591  tests/conform/Makefile.am         |    1 +
3592  tests/conform/test-animator.c     |   88 +++++++++++
3593  tests/conform/test-conform-main.c |    2 +
3594  tests/data/Makefile.am            |    2 +
3595  tests/data/test-animator-1.json   |    5 +
3596  tests/data/test-animator-2.json   |   29 ++++
3597  8 files changed, 409 insertions(+), 23 deletions(-)
3598
3599 commit 790a13c0d9d2249747cfb81dcb13f83c6cc2cec1
3600 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3601 Date:   Mon Feb 8 15:47:46 2010 +0000
3602
3603     animator: Allow retrieving type property type from a key
3604     
3605     When asking a key for its target value we also ask the developer to pass
3606     in an initialized GValue - but we don't make it easy to know the type of
3607     the GValue. A developer has to ask the GObject class for the GParamSpec
3608     and then initialize the GValue, instead.
3609     
3610     Since we know the type of the GValue we should provide a getter for it.
3611     
3612     We should also allow developers to throw at us GValue with compatible and
3613     transformable types.
3614     
3615     Finally, all the accessors should be constified.
3616
3617  clutter/clutter-animator.c |   93 ++++++++++++++++++++++++++++++++------------
3618  clutter/clutter-animator.h |   13 ++++---
3619  2 files changed, 75 insertions(+), 31 deletions(-)
3620
3621 commit 09f91ff6eab3d617be88e11bd17c226fa4d23aed
3622 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3623 Date:   Mon Feb 8 15:45:43 2010 +0000
3624
3625     script: Use a node when resolving an animation mode
3626     
3627     Instead of taking a string and duplicating the "is it a string or an
3628     integer" check in both Alpha and Animation, the function in
3629     ClutterScript that resolves the animation mode values should take a
3630     JsonNode and do all the checks it needs.
3631
3632  clutter/clutter-alpha.c          |   21 ++++-------------
3633  clutter/clutter-animation.c      |   25 ++++----------------
3634  clutter/clutter-script-parser.c  |   47 ++++++++++++++++++++++++--------------
3635  clutter/clutter-script-private.h |    2 +-
3636  4 files changed, 41 insertions(+), 54 deletions(-)
3637
3638 commit cc6aefad345f4490f59f33eaef6f7589de1f3f9b
3639 Author: Robert Bragg <robert@linux.intel.com>
3640 Date:   Thu Jan 14 18:11:57 2010 +0000
3641
3642     cogl path: make sure marking the clip state dirty takes affect
3643     
3644     When we trashed the contents of the stencil buffer during
3645     _cogl_path_fill_nodes we marked the clip stack state as dirty and expected
3646     the clip stack code would clean up our glStencilFunc state.
3647     
3648     The problem is that we only try and update the clip state during
3649     _cogl_journal_init (when we flush the framebuffer state) which is only
3650     called when the journal first gets something logged in it.
3651     
3652     To make sure the stencil state is cleaned up we now also flush the journal
3653     so _cogl_journal_init will be called for the next logged rectangle.
3654
3655  clutter/cogl/cogl/cogl-primitives.c |    9 ++++++++-
3656  1 file changed, 8 insertions(+), 1 deletion(-)
3657
3658 commit 24338a7511cd09298695f0a0b51ea6a97fa6786a
3659 Author: Neil Roberts <neil@linux.intel.com>
3660 Date:   Fri Feb 5 21:56:31 2010 +0000
3661
3662     clutter-master-clock: Don't wait for a frame if time goes backwards
3663     
3664     If we aren't syncing to vblank or if the last dispatch didn't cause a
3665     redraw then the master clock will try to wait at least a small amount
3666     of time before dispatching again. However if time goes backwards then
3667     it would not do a dispatch until time catches up again. To fix this it
3668     know just runs a dispatch immediately if time goes backwards.
3669     
3670     This is related to Moblin bug #3839. There was a similar fix for this
3671     in 9dc012c07, however that only fixed the case where timelines
3672     wouldn't update. If there are no animations running then the master
3673     clock won't even try updating timelines until time catches up.
3674     
3675     http://bugzilla.o-hand.com/show_bug.cgi?id=1974
3676
3677  clutter/clutter-master-clock.c |   11 +++++++++++
3678  1 file changed, 11 insertions(+)
3679
3680 commit 8ac27e60707b2dfd13ba978b81421423e37ebf98
3681 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3682 Date:   Mon Feb 8 10:40:39 2010 +0000
3683
3684     test-flow-layout: Remove unneeded Stage sizing
3685     
3686     The bug with resizable stages getting a 1, 1 window on X11 has been
3687     fixed by Chris.
3688
3689  tests/interactive/test-flow-layout.c |    1 -
3690  1 file changed, 1 deletion(-)
3691
3692 commit 6106010b6f20980fc51d1431b623567eed10853d
3693 Merge: 4cc269a c82c94e
3694 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3695 Date:   Mon Feb 8 10:34:22 2010 +0000
3696
3697     Merge remote branch 'origin/cwiiis-stage-resize'
3698     
3699     * origin/cwiiis-stage-resize:
3700       [stage-x11] Set the default size differently
3701       [stage] Set default size correctly
3702       Revert "[x11] Don't set actor size on ConfigureNotify"
3703       [x11] Don't set actor size on ConfigureNotify
3704       [stage] Now that get_geometry works, use it
3705       [stage-x11] make get_geometry always get geometry
3706       [stage] Get the current size correctly
3707       [stage] Set minimum width/height to 1x1
3708       [stage] Add set/get_minumum_size
3709
3710 commit 4cc269a4687f6ca4fcd88ada134cfa00e2b13a1a
3711 Author: Øyvind Kolås <pippin@linux.intel.com>
3712 Date:   Fri Feb 5 12:32:00 2010 +0000
3713
3714     Add ClutterAnimator
3715     
3716     ClutterAnimator is a class for managing the animation of multiple
3717     properties of multiple actors over time with keyframing of values.
3718     
3719     The Animator class is meant to be used to effectively describe
3720     animations using the ClutterScript definition format, and to construct
3721     complex implicit animations from the ground up.
3722     
3723     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
3724
3725  .gitignore                                 |    1 +
3726  clutter/Makefile.am                        |    2 +
3727  clutter/clutter-animator.c                 | 1435 ++++++++++++++++++++++++++++
3728  clutter/clutter-animator.h                 |  166 ++++
3729  clutter/clutter-types.h                    |    1 +
3730  clutter/clutter.h                          |    1 +
3731  doc/reference/clutter/clutter-docs.xml.in  |    4 +-
3732  doc/reference/clutter/clutter-sections.txt |   48 +
3733  doc/reference/clutter/clutter.types        |    1 +
3734  tests/interactive/Makefile.am              |    1 +
3735  tests/interactive/test-animator.c          |  134 +++
3736  11 files changed, 1793 insertions(+), 1 deletion(-)
3737
3738 commit c82c94e6205eda962faf5a51e663680c313be062
3739 Author: Chris Lord <chris@linux.intel.com>
3740 Date:   Sun Feb 7 19:17:43 2010 +0100
3741
3742     [stage-x11] Set the default size differently
3743     
3744     We want to set the default size without triggering the layout machinary,
3745     so change the window creation process slightly so we start with a
3746     640x480 window.
3747
3748  clutter/clutter-stage.c         |    3 ---
3749  clutter/glx/clutter-stage-glx.c |    4 +++-
3750  clutter/x11/clutter-stage-x11.c |    4 ++--
3751  3 files changed, 5 insertions(+), 6 deletions(-)
3752
3753 commit b968defae92f3fbd5a4a762b4c817ab58989ee82
3754 Author: Chris Lord <chris@linux.intel.com>
3755 Date:   Sun Feb 7 14:18:14 2010 +0100
3756
3757     [stage] Set default size correctly
3758     
3759     Due to the way the new sizing works, clutter stage must set its size in
3760     init (to maintain old behaviour) and the properties on the X11 stage
3761     must be initialised to 1x1 so that it actually goes ahead with the
3762     resize.
3763     
3764     Fixes stages that aren't user resizable and have no size set from
3765     appearing at 1x1.
3766
3767  clutter/clutter-stage.c         |    3 +++
3768  clutter/x11/clutter-stage-x11.c |    4 ++--
3769  2 files changed, 5 insertions(+), 2 deletions(-)
3770
3771 commit 8083dc418b3c2b069a9b0db9323650050a3f63b1
3772 Author: Chris Lord <chris@linux.intel.com>
3773 Date:   Sat Feb 6 16:57:37 2010 +0100
3774
3775     Revert "[x11] Don't set actor size on ConfigureNotify"
3776     
3777     This reverts commit 29cc027f069c9ad900b9044cd40075c2d17be736.
3778     
3779     I misunderstood the problem, this commit breaks resizes coming from
3780     outside of Clutter.
3781
3782  clutter/x11/clutter-event-x11.c |    4 ++++
3783  clutter/x11/clutter-stage-x11.c |    5 +----
3784  clutter/x11/clutter-stage-x11.h |    1 -
3785  3 files changed, 5 insertions(+), 5 deletions(-)
3786
3787 commit 29cc027f069c9ad900b9044cd40075c2d17be736
3788 Author: Chris Lord <chris@linux.intel.com>
3789 Date:   Sat Feb 6 16:47:22 2010 +0100
3790
3791     [x11] Don't set actor size on ConfigureNotify
3792     
3793     Calling clutter_actor_set_size in response to ConfigureNotify makes
3794     setting the size of the stage racy - the most common result of which
3795     seems to be that you can't set the stage dimensions to anything less
3796     than 640x480.
3797     
3798     Instead, add a first_allocation bit to the private structure of the X11
3799     stage and force the first resize (necessary or the default stage will be
3800     a 1x1 window).
3801
3802  clutter/x11/clutter-event-x11.c |    4 ----
3803  clutter/x11/clutter-stage-x11.c |    5 ++++-
3804  clutter/x11/clutter-stage-x11.h |    1 +
3805  3 files changed, 5 insertions(+), 5 deletions(-)
3806
3807 commit cea9de7f047cb8c2b1d54f41ca1d77c3aff882e0
3808 Author: Chris Lord <chris@linux.intel.com>
3809 Date:   Sat Feb 6 15:41:01 2010 +0100
3810
3811     [stage] Now that get_geometry works, use it
3812     
3813     We want the actual window geometry in clutter_stage_set_minimum_size,
3814     not the set size. Now that the geometry function has been changed to do
3815     what it says, use it.
3816
3817  clutter/clutter-stage.c |   14 ++++++--------
3818  1 file changed, 6 insertions(+), 8 deletions(-)
3819
3820 commit 4887707bb34faca0d7ad92f6628d18345163f5e0
3821 Author: Chris Lord <chris@linux.intel.com>
3822 Date:   Sat Feb 6 15:34:55 2010 +0100
3823
3824     [stage-x11] make get_geometry always get geometry
3825     
3826     Now that we have a minimum size getter on the stage object, change
3827     get_geometry to actually always return the geometry. This fixes stages
3828     that are set as user-resizable appearing at 1x1 size.
3829     
3830     This will need changing in other back-ends too.
3831
3832  clutter/x11/clutter-stage-x11.c |   57 ++++++++++++++++-----------------------
3833  1 file changed, 23 insertions(+), 34 deletions(-)
3834
3835 commit 27e33aa14ff5d14f6066da74922c960a037b5089
3836 Author: Chris Lord <chris@linux.intel.com>
3837 Date:   Sat Feb 6 14:59:51 2010 +0100
3838
3839     [stage] Get the current size correctly
3840     
3841     Get the current size of the stage correctly in
3842     clutter_stage_set_minimum_size. The get_geometry StageWindow function is
3843     not equivalent of the current size, use clutter_actor_get_size().
3844
3845  clutter/clutter-stage.c |   14 ++++++++------
3846  1 file changed, 8 insertions(+), 6 deletions(-)
3847
3848 commit be11564b556a1b1c08b7b9e7a0a94bc00c4e6550
3849 Author: Chris Lord <chris@linux.intel.com>
3850 Date:   Sat Feb 6 14:04:47 2010 +0100
3851
3852     [stage] Set minimum width/height to 1x1
3853     
3854     Whoops, to maintain the old behaviour, make sure the default minimum
3855     width/height are 1x1.
3856
3857  clutter/clutter-stage.c |    4 ++--
3858  1 file changed, 2 insertions(+), 2 deletions(-)
3859
3860 commit fd11d3098f0182f24666ed77973269111cb0a8f5
3861 Author: Chris Lord <chris@linux.intel.com>
3862 Date:   Sat Feb 6 11:23:37 2010 +0000
3863
3864     [stage] Add set/get_minumum_size
3865     
3866     Add two functions to set/get the minimum stage size. This takes effect
3867     when a stage is set to user resizable.
3868
3869  clutter/clutter-stage.c                    |   75 ++++++++++++++++++++++++++++
3870  clutter/clutter-stage.h                    |    7 +++
3871  clutter/x11/clutter-stage-x11.c            |    6 +--
3872  doc/reference/clutter/clutter-sections.txt |    2 +
3873  4 files changed, 87 insertions(+), 3 deletions(-)
3874
3875 commit f973b73208bad266a2362e22e5aed1a0780d096d
3876 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3877 Date:   Sat Feb 6 11:00:50 2010 +0000
3878
3879     Add cogl-subtexture test to the Git ignore file
3880
3881  .gitignore |    3 ++-
3882  1 file changed, 2 insertions(+), 1 deletion(-)
3883
3884 commit e55966d675e57d516ea5aff36b03fde63d4839d3
3885 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3886 Date:   Fri Feb 5 16:22:09 2010 +0000
3887
3888     Deprecate clutter_util_next_p2()
3889     
3890     The next_p2() function should have never been publicly exposed by
3891     Clutter.
3892
3893  clutter/clutter-util.c          |   15 ++++++++-------
3894  clutter/clutter-util.h          |    9 ++++++---
3895  tests/interactive/test-shader.c |   19 +++++++++++++++++--
3896  3 files changed, 31 insertions(+), 12 deletions(-)
3897
3898 commit bbaf6b233d0120e3199d779eeb2829e56ecc279b
3899 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3900 Date:   Fri Feb 5 15:31:18 2010 +0000
3901
3902     docs: Fix whitespace in the App manual stub
3903
3904  doc/manual/clutter-manual.xml.in |  185 +++++++++++++++++---------------------
3905  1 file changed, 81 insertions(+), 104 deletions(-)
3906
3907 commit dcdb97006b563407d43f19779ac47f0330052541
3908 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3909 Date:   Fri Feb 5 14:47:39 2010 +0000
3910
3911     build: Add suppressions file to EXTRA_DIST
3912
3913  tests/data/Makefile.am |    2 +-
3914  1 file changed, 1 insertion(+), 1 deletion(-)
3915
3916 commit 830f2402d4f49b7173eb7fa0bda5762a4c430c9a
3917 Merge: 1bdc3db 6b1b27d
3918 Author: Neil Roberts <neil@linux.intel.com>
3919 Date:   Sat Feb 6 00:20:07 2010 +0000
3920
3921     Merge branch 'more-texture-backends'
3922     
3923     This adds three new texture backends.
3924     
3925     - CoglTexture2D: This is a trimmed down version of CoglTexture2DSliced
3926       which only supports a single texture and only works with the
3927       GL_TEXTURE_2D target. The code is a lot simpler so it has a less
3928       overheads than dealing with slices. Cogl will use this wherever
3929       possible.
3930     
3931     - CoglSubTexture: This is used to get a CoglHandle to represent a
3932       subregion of another texture. The texture can be used as if it was a
3933       standalone texture but it does not need to copy the resources.
3934     
3935     - CoglAtlasTexture: This collects RGB and RGBA textures into a single
3936       GL texture with the aim of reducing texture state changes and
3937       increasing batching. The backend will try to manage the atlas and
3938       may move the textures around to close gaps in the texture. By
3939       default all textures will be placed in the atlas.
3940
3941 commit 6b1b27d4f894cbefc90601eaf6214b55a71834b7
3942 Author: Neil Roberts <neil@linux.intel.com>
3943 Date:   Sat Feb 6 00:12:10 2010 +0000
3944
3945     cogl-bitmap: Update the format after (un)premultiplying
3946     
3947     The pixel format of the bitmap needs to have its premult flag cleared
3948     or set after the premult conversion otherwise it may get converted
3949     again.
3950
3951  clutter/cogl/cogl/cogl-bitmap-fallback.c |    4 ++++
3952  clutter/cogl/cogl/cogl-texture.c         |    3 +--
3953  2 files changed, 5 insertions(+), 2 deletions(-)
3954
3955 commit 191d20eb56f31786660cd04aacc710344eb8df7a
3956 Author: Neil Roberts <neil@linux.intel.com>
3957 Date:   Fri Feb 5 17:03:04 2010 +0000
3958
3959     cogl-atlas-texture: Fix a cut and paste error when getting the height
3960     
3961     There was a typo in getting the height of the full texture to check
3962     whether the sub region fits so that it was using the width
3963     instead. This was causing crashes when debugging is enabled for some
3964     apps.
3965
3966  clutter/cogl/cogl/cogl-sub-texture.c |    2 +-
3967  1 file changed, 1 insertion(+), 1 deletion(-)
3968
3969 commit 1bdc3db9ab54316f5f313dc3e991f3a621e83586
3970 Author: Damien Lespiau <damien.lespiau@intel.com>
3971 Date:   Thu Feb 4 21:10:02 2010 +0000
3972
3973     docs: Use % for defines not #
3974     
3975     Some links to defines in the gtk-doc annotations were using '#' instead
3976     of '%'.
3977
3978  clutter/clutter-actor.c        |    4 ++--
3979  clutter/clutter-path.c         |   10 +++++-----
3980  clutter/cogl/cogl/cogl-fixed.c |    4 ++--
3981  3 files changed, 9 insertions(+), 9 deletions(-)
3982
3983 commit 1b94cc9268e57cc49e3bac914c4b979aec955f77
3984 Author: Damien Lespiau <damien.lespiau@intel.com>
3985 Date:   Wed Jan 27 16:03:28 2010 +0000
3986
3987     docs: fix new line in the cogl xml top level document
3988     
3989     A comma in the FSF address is wrong. Supreme Offence.
3990
3991  doc/reference/cogl/cogl-docs.xml.in |    3 +--
3992  1 file changed, 1 insertion(+), 2 deletions(-)
3993
3994 commit 0ea25d661b887c27beaf0bd848dfda994d88782f
3995 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3996 Date:   Thu Feb 4 18:29:47 2010 +0000
3997
3998     event: Do not generate click count for SCROLL events
3999     
4000     The ClutterScrollEvent structure does not have a click count field,
4001     so Clutter should not generate the click count for events of type
4002     CLUTTER_SCROLL.
4003
4004  clutter/clutter-main.c |    7 +++++--
4005  1 file changed, 5 insertions(+), 2 deletions(-)
4006
4007 commit 15c6fef7e3e426764bafc316794a195a086e0d03
4008 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4009 Date:   Thu Feb 4 16:49:06 2010 +0000
4010
4011     tests: Add a Valgrind suppression file
4012     
4013     When running tests under Valgrind it would be useful to pass a
4014     suppression file for the known one-off allocations done by Clutter
4015     and by its dependencies. This trims the output of Valgrind and
4016     improves the ability to actually spot leaks.
4017
4018  tests/README                        |   35 ++++++-
4019  tests/data/clutter-1.0.suppressions |  173 +++++++++++++++++++++++++++++++++++
4020  2 files changed, 203 insertions(+), 5 deletions(-)
4021
4022 commit 1f70da62a73e3a10fe1ceb33d11f79fc29586fcf
4023 Author: Neil Roberts <neil@linux.intel.com>
4024 Date:   Thu Feb 4 16:28:29 2010 +0000
4025
4026     glx: Create a colormap for the dummy window
4027     
4028     Otherwise X will fail to create the window and throw a BadMatch error
4029     at least on NVidia.
4030
4031  clutter/glx/clutter-backend-glx.c |    7 ++++++-
4032  1 file changed, 6 insertions(+), 1 deletion(-)
4033
4034 commit 466b00a8064ad09f0574f8f46c6df0390d7c7d00
4035 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4036 Date:   Thu Feb 4 13:59:39 2010 +0000
4037
4038     glx: Clarify *why* we need the dummy window
4039     
4040     The reason why we have a dummy, offscreen Window when we create the
4041     GLX context is that GLX does not like it when you ask the context for
4042     features if it's not made current to a Drawable. Maybe in the future
4043     it will allow us to do so, but right now we have to make do with what
4044     GLX offers us.
4045
4046  clutter/glx/clutter-backend-glx.c |    6 ++++++
4047  1 file changed, 6 insertions(+)
4048
4049 commit ea5e33cf3a38edddef88ec30131c35bb8ab4bfaf
4050 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4051 Date:   Thu Feb 4 13:56:33 2010 +0000
4052
4053     glx: Do not leak a XVisualInfo
4054     
4055     The XVisualInfo we retrieve for the dummy window should be freed after
4056     we used it.
4057
4058  clutter/glx/clutter-backend-glx.c |    2 ++
4059  1 file changed, 2 insertions(+)
4060
4061 commit e6a3b6ebe75a2c0c3709fbe12cf04c4357b54fdd
4062 Author: Neil Roberts <neil@linux.intel.com>
4063 Date:   Wed Feb 3 23:08:30 2010 +0000
4064
4065     cogl-texture: Avoid copying the bitmap when premultiplying from a file
4066     
4067     In cogl_texture_new_from_file we create and own a temporary
4068     bitmap. There's no need to copy this data if we need to do a premult
4069     conversion so instead it just does conversion before passing it on to
4070     cogl_texture_new_from_bitmap.
4071
4072  clutter/cogl/cogl/cogl-texture.c |   23 ++++++++++++++++++-----
4073  1 file changed, 18 insertions(+), 5 deletions(-)
4074
4075 commit 59198b8ab8a6a7c1c3dbfa5c72abf36f8d66c543
4076 Author: Neil Roberts <neil@linux.intel.com>
4077 Date:   Wed Feb 3 22:54:44 2010 +0000
4078
4079     cogl-texture: Split out _cogl_texture_prepare_for_upload
4080     
4081     The Cogl atlas code was using _cogl_texture_prepare_for_upload with a
4082     NULL pointer for the dst_bmp to determine the internal format of the
4083     texture without converting the bitmap. It needs to do this to decide
4084     whether the texture will go in the atlas before wasting time on the
4085     conversion. This use of the function is a little confusing so that
4086     part of it has been split out into a new function called
4087     _cogl_texture_determine_internal_format. The code to decide whether a
4088     premult conversion is needed has also been split out.
4089
4090  clutter/cogl/cogl/cogl-atlas-texture.c   |   11 +---
4091  clutter/cogl/cogl/cogl-texture-private.h |    7 +++
4092  clutter/cogl/cogl/cogl-texture.c         |   81 ++++++++++++++++++------------
4093  3 files changed, 57 insertions(+), 42 deletions(-)
4094
4095 commit 5063f4669c2c94d7288405005f4df14e73a4f578
4096 Author: Neil Roberts <neil@linux.intel.com>
4097 Date:   Wed Feb 3 19:54:12 2010 +0000
4098
4099     cogl-atlas: Make the cogl_atlas_* API internal
4100     
4101     This just adds an underscore to every entry point for the CoglAtlas
4102     API so that it's not exported.
4103
4104  clutter/cogl/cogl/cogl-atlas-texture.c |   89 ++++++++++----------
4105  clutter/cogl/cogl/cogl-atlas.c         |  140 ++++++++++++++++----------------
4106  clutter/cogl/cogl/cogl-atlas.h         |   32 ++++----
4107  clutter/cogl/cogl/cogl-context.c       |    2 +-
4108  4 files changed, 132 insertions(+), 131 deletions(-)
4109
4110 commit cd3c5155d879782a6e6e1d7fa56043e03712b727
4111 Author: Jussi Kukkonen <jku@linux.intel.com>
4112 Date:   Wed Feb 3 17:04:38 2010 +0000
4113
4114     text: implement del_word_next/del_word_prev()
4115     
4116     Bind ctrl-backspace and ctrl-del to functions that delete a word before
4117     or after the cursor, respectively.
4118     
4119     Selection does not affect the deletion, but current selection is
4120     preserved. This mimicks GTK+ functionality in GtkTextView and GtkEntry.
4121     
4122     http://bugzilla.openedhand.com/show_bug.cgi?id=1767
4123     
4124     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
4125
4126  clutter/clutter-text.c |   95 ++++++++++++++++++++++++++++++++++++++++++++++++
4127  1 file changed, 95 insertions(+)
4128
4129 commit d8d728a8d7ac4bc56f058379d76f4539d01189de
4130 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4131 Date:   Wed Dec 9 00:50:33 2009 +0000
4132
4133     Remove the SDL backend
4134     
4135     The SDL API is far too limited for the windowing system needs of
4136     Clutter; the status of the SDL backend was always experimental, and
4137     since the Windows platform is supported by a native backend there is
4138     no point in having the SDL backend around any more.
4139
4140  README                            |    8 +-
4141  clutter/Makefile.am               |    2 +-
4142  clutter/sdl/Makefile.am           |   26 ---
4143  clutter/sdl/clutter-backend-sdl.c |  207 --------------------
4144  clutter/sdl/clutter-backend-sdl.h |   70 -------
4145  clutter/sdl/clutter-event-sdl.c   |  377 -------------------------------------
4146  clutter/sdl/clutter-sdl.h         |   39 ----
4147  clutter/sdl/clutter-stage-sdl.c   |  197 -------------------
4148  clutter/sdl/clutter-stage-sdl.h   |   34 ----
4149  configure.ac                      |   41 +---
4150  10 files changed, 5 insertions(+), 996 deletions(-)
4151
4152 commit ae188d203c63d680dc58ba1e19f333719a6916d4
4153 Author: Neil Roberts <neil@linux.intel.com>
4154 Date:   Wed Jan 20 16:41:25 2010 +0000
4155
4156     win32: Use a dummy window to support delayed stage creation
4157     
4158     The Win32 backend now implements the create_context method which
4159     creates a context and binds it to a 1x1 invisible window. That way
4160     there will always be a context bound and the features can be retrieved
4161     without creating the default stage. This reflects the changes in
4162     1c6ffc8..b245d55 to the GLX backend.
4163
4164  clutter/win32/clutter-backend-win32.c |  194 +++++++++++++++++++++++++++++++--
4165  clutter/win32/clutter-backend-win32.h |    2 +
4166  clutter/win32/clutter-stage-win32.c   |   84 ++------------
4167  3 files changed, 198 insertions(+), 82 deletions(-)
4168
4169 commit 479fdffc7d4f37f9ff104403dd7de685df97e0d5
4170 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4171 Date:   Sun Dec 6 18:56:14 2009 +0000
4172
4173     glx: Fix error messages and debug notes
4174     
4175     Instead of using g_critical() inside the create_context() implementation
4176     of the ClutterBackendGLX we should use the passed GError, so that the
4177     error message can bubble up to the caller.
4178
4179  clutter/glx/clutter-backend-glx.c |   31 +++++++++++++++++++------------
4180  1 file changed, 19 insertions(+), 12 deletions(-)
4181
4182 commit ede2cbfab05035247b2a6a2ca837cb8f71871c5d
4183 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4184 Date:   Thu Dec 3 21:07:45 2009 +0000
4185
4186     stage: Create the default stage on demand
4187     
4188     Instead of creating the default stage during initialization we can
4189     now safely create it whenever clutter_stage_get_default() is called.
4190     
4191     To maintain the invariant, the default stage is immediately realized
4192     by Clutter itself.
4193
4194  clutter/clutter-main.c  |   28 ----------------------------
4195  clutter/clutter-stage.c |   15 ++++++++++-----
4196  2 files changed, 10 insertions(+), 33 deletions(-)
4197
4198 commit d2c091e62d4b9e897e8f8ef5de99f20417cc6682
4199 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4200 Date:   Thu Dec 3 20:49:54 2009 +0000
4201
4202     glx: Create the dummy Window with the GLX context
4203     
4204     Since we must guarantee that Cogl has a GL context to query, it is too
4205     late to use the "dummy Window" trick from within the get_features()
4206     virtual function implementation.
4207     
4208     Instead, we can create a dummy Window from create_context() itself and
4209     leave it around - basically trading a default stage with a dummy X
4210     window.
4211     
4212     We need to have the dummy X window around all the time so that the
4213     GLX context can be selected and made current.
4214
4215  clutter/clutter-main.c            |   16 ++--
4216  clutter/glx/clutter-backend-glx.c |  169 ++++++++++++++++++-------------------
4217  clutter/glx/clutter-backend-glx.h |    1 +
4218  3 files changed, 95 insertions(+), 91 deletions(-)
4219
4220 commit 5eb6fb74b660d22e7f31867b16997ee9f63bef4b
4221 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4222 Date:   Thu Dec 3 20:48:55 2009 +0000
4223
4224     feature: Make sure we have a GL context
4225     
4226     Before asking Cogl and ClutterBackend for the list of features we must
4227     have a GL backend ready.
4228
4229  clutter/clutter-feature.c |    3 +++
4230  1 file changed, 3 insertions(+)
4231
4232 commit a8daaa8222c9b4aaf7e46b1bb13a2ce8097153f1
4233 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4234 Date:   Thu Dec 3 20:47:48 2009 +0000
4235
4236     stage: Move default title in Stage.init
4237     
4238     The default title should be set from within clutter_stage_init(); at
4239     that point clutter_init() must have been called.
4240
4241  clutter/clutter-main.c  |    2 --
4242  clutter/clutter-stage.c |    1 +
4243  2 files changed, 1 insertion(+), 2 deletions(-)
4244
4245 commit 38f26634eec3c81d61bb3b88b24563d7e4719f67
4246 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4247 Date:   Thu Dec 3 17:36:03 2009 +0000
4248
4249     Lazily create the Pango fontmap
4250     
4251     The Pango fontmap needed by Clutter should be initialized the first
4252     time we need a PangoContext, not on initialization.
4253
4254  clutter/clutter-main.c |   35 ++++++++++++++++-------------------
4255  1 file changed, 16 insertions(+), 19 deletions(-)
4256
4257 commit 6fbed66add4b8c03a0ba0f4edc1c2f0044608998
4258 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4259 Date:   Thu Dec 3 17:13:44 2009 +0000
4260
4261     Delay default stage creation
4262     
4263     The default stage creation should be delayed as much as possible,
4264     ideally at the end of the init() process.
4265
4266  clutter/clutter-backend.c         |    8 +++
4267  clutter/clutter-main.c            |   67 +++++++++++++------------
4268  clutter/clutter-stage.c           |    6 +--
4269  clutter/cogl/cogl/cogl-journal.c  |    3 ++
4270  clutter/glx/clutter-backend-glx.c |   98 ++++++++++++++++++++++++++++---------
4271  clutter/glx/clutter-stage-glx.c   |    5 ++
4272  6 files changed, 126 insertions(+), 61 deletions(-)
4273
4274 commit 3191ea1195d5e1d55facc147760b273efca76867
4275 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4276 Date:   Thu Dec 3 17:35:19 2009 +0000
4277
4278     cogl-debug: Remove redundant newlines
4279     
4280     The debugging notes wrapping g_debug() already have an implicit newline
4281     at the end of the passed message.
4282
4283  clutter/cogl/cogl/cogl-handle.h |    8 ++++----
4284  1 file changed, 4 insertions(+), 4 deletions(-)
4285
4286 commit 16a5911cff90a2bba1b283ccd9a9ce6d0f435924
4287 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4288 Date:   Wed Feb 3 15:05:37 2010 +0000
4289
4290     tests: Clean up the cairo-flowers interactive test
4291
4292  tests/interactive/test-clutter-cairo-flowers.c |   14 ++++++--------
4293  1 file changed, 6 insertions(+), 8 deletions(-)
4294
4295 commit cb52581a24c157e2bedb74c32d522dc56d9a91a2
4296 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4297 Date:   Wed Feb 3 14:35:45 2010 +0000
4298
4299     text: Add :font-description
4300     
4301     High level toolkits might wish to construct a PangoFontDescription and
4302     then set it directly on a ClutterText actor proxy or sub-class.
4303     ClutterText should have a :font-description property to set (and get)
4304     the PangoFontDescription.
4305     
4306     http://bugzilla.openedhand.com/show_bug.cgi?id=1960
4307
4308  clutter/clutter-text.c                     |  131 ++++++++++++++--
4309  clutter/clutter-text.h                     |  225 ++++++++++++++--------------
4310  doc/reference/clutter/clutter-sections.txt |    2 +
4311  3 files changed, 234 insertions(+), 124 deletions(-)
4312
4313 commit 74c0170ccc80504018f2aab849a6a311c64052a6
4314 Author: Neil Roberts <neil@linux.intel.com>
4315 Date:   Wed Feb 3 14:31:12 2010 +0000
4316
4317     cogl-vertex-buffer: Refix disabling texture coord arrays
4318     
4319     Commit 92a375ab4 changed the initial value of max_texcoord_attrib_unit
4320     to -1 so that it could disable the texture coord array for the first
4321     texture unit when there are no texture coords used in the vbo. However
4322     max_texcoord_attrib_unit was an unsigned value so this actually became
4323     G_MAXUINT. The disabling loop at the bottom still worked because
4324     G_MAXUINT+1==0 but the check for whether any texture unit is greater
4325     than max_texcoord_attrib_unit was failing so it would always end up
4326     disabling all texture units. This is now fixed by changing
4327     max_texcoord_attrib_unit to be signed.
4328
4329  clutter/cogl/cogl/cogl-vertex-buffer.c |    2 +-
4330  1 file changed, 1 insertion(+), 1 deletion(-)
4331
4332 commit 301863d43bc79e792f8fe3ea5e9185d87cb74069
4333 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4334 Date:   Tue Feb 2 17:07:22 2010 +0000
4335
4336     text: Fixes for selection bound
4337     
4338     The commit ecbb7ce41a1a759e246fce07f146b8bed5e3d730 exposed some issues
4339     when positioning the cursor with the mouse pointer: the selection is
4340     not moved along with the cursor when inserting a single character or a
4341     string.
4342     
4343     Also, some freeze_notify() are called too early, leading to decoupling
4344     from their respective thaw_notify().
4345     
4346     http://bugzilla.openedhand.com/show_bug.cgi?id=1955
4347
4348  clutter/clutter-text.c |   44 +++++++++++++++++++-------------------------
4349  1 file changed, 19 insertions(+), 25 deletions(-)
4350
4351 commit 5bec49aea931e6835b97e549e23458a6214548ce
4352 Author: Kristian Høgsberg <krh@bitplanet.net>
4353 Date:   Wed Jan 27 12:55:18 2010 -0500
4354
4355     Use ClutterTimeline in test-clutter-cairo-flowers.c
4356     
4357     http://bugzilla.openedhand.com/show_bug.cgi?id=1969
4358     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
4359
4360  tests/interactive/test-clutter-cairo-flowers.c |   24 +++++++++++++++++-------
4361  1 file changed, 17 insertions(+), 7 deletions(-)
4362
4363 commit c9a6e63fa4d1d710d9efeb850f3fc336933ee2a8
4364 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4365 Date:   Tue Feb 2 14:50:03 2010 +0000
4366
4367     docs: Clarify Group's sizing semantics
4368     
4369     The documentation for ClutterGroup behaviour when setting an explicit
4370     size is not accurate - or, actually, it was accurate by the time
4371     ClutterGroup was first written but has been neglected in the following
4372     release cycles.
4373     
4374     To avoid confusion for new users of Clutter the documentation should be
4375     slightly expanded, mentioning the exact semantics of ClutterGroup with
4376     regards to: preferred size, explicitly set size and how to constrain the
4377     visible area of a ClutterGroup to an explicitly set size.
4378     
4379     Based on a patch by: Neil Roberts <neil@linux.intel.com>
4380
4381  clutter/clutter-group.c |   16 ++++++++++++----
4382  1 file changed, 12 insertions(+), 4 deletions(-)
4383
4384 commit 12b004b0e7e13ca64d7d35cd3fe083f582b7aa09
4385 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4386 Date:   Tue Feb 2 12:56:04 2010 +0000
4387
4388     tests: Add an initial Behaviour conformance suite
4389     
4390     The coverage of the Behaviour sub-classes is currently abysmal. An
4391     initial test suite for Behaviours should at least verify that the
4392     accessors and the constructors are doing the right thing.
4393     
4394     This initial test suite just verifies the BehaviourOpacity sub-class,
4395     but it already bumps up the overall coverage by 2%.
4396
4397  .gitignore                        |    1 +
4398  tests/conform/Makefile.am         |    1 +
4399  tests/conform/test-behaviours.c   |   87 +++++++++++++++++++++++++++++++++++++
4400  tests/conform/test-conform-main.c |    2 +
4401  4 files changed, 91 insertions(+)
4402
4403 commit f94e6911510b5376dd490c1f8724e616aaf2e5dc
4404 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4405 Date:   Tue Feb 2 12:54:51 2010 +0000
4406
4407     behaviour: Clean up BehaviourOpacity
4408     
4409     • Use a consistent coding style
4410     
4411     • Call set_bounds() from set_property(), because we need proper
4412       notification on the modified property
4413
4414  clutter/clutter-behaviour-opacity.c |   56 ++++++++++++++++++++---------------
4415  1 file changed, 32 insertions(+), 24 deletions(-)
4416
4417 commit 521d71d4bc4ca4b06343365c71c9520b1ebfdc7f
4418 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4419 Date:   Mon Feb 1 15:47:50 2010 +0000
4420
4421     event: Unify the off-stage motion events delivery behaviour
4422     
4423     When we disable the per-actor events delivery Clutter replicates the X11
4424     implicit soft grab for motion events with off-stage. The implicit grab
4425     is done whenever the pointer of a device leaves a window with a button
4426     still pressed; with the implicit grab in place the window still receives
4427     motion events even after the LeaveNotify - until the button is released.
4428     
4429     The implicit grab is not honoured in the per-actor event deliver case,
4430     though, so we have a mismatch between two in theory equivalent cases.
4431     
4432     Luckily, the fix is pretty trivial: when we check for a motion event
4433     with a stage set but without an actor set, and that has off-stage
4434     coordinates, we arbitrarily set the source to be the stage of the event
4435     and emit the pointer event.
4436
4437  clutter/clutter-main.c |   40 ++++++++++++++++++++++++++++++++++------
4438  1 file changed, 34 insertions(+), 6 deletions(-)
4439
4440 commit 46d6697b9170ba110439cbf61d152890b35a3837
4441 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4442 Date:   Mon Feb 1 14:53:13 2010 +0000
4443
4444     build: -Wformat is required for -Wformat-security
4445     
4446     GCC will ignore -Wformat-security without -Wformat on the same compiler
4447     flags.
4448
4449  configure.ac |    4 ++--
4450  1 file changed, 2 insertions(+), 2 deletions(-)
4451
4452 commit 157a0cf9364a9e60b29e5e88ca1783d9e174a635
4453 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4454 Date:   Mon Feb 1 14:48:50 2010 +0000
4455
4456     build: Retrieve X11 cflags and libraries
4457     
4458     When using pkg-config to check for the x11 package compiler flags and
4459     libraries we actually need to retrieve those values from the pc file.
4460     
4461     This should also fix the issue with non-canonical installations of the
4462     X11 headers and shared objects.
4463     
4464     http://bugzilla.openedhand.com/show_bug.cgi?id=1966
4465
4466  configure.ac |    5 +++++
4467  1 file changed, 5 insertions(+)
4468
4469 commit 145cc9d3dfd1dc51f254eefde35042fc20a6375e
4470 Merge: aa6731e 5f1c8a1
4471 Author: Neil Roberts <neil@linux.intel.com>
4472 Date:   Mon Feb 1 13:37:19 2010 +0000
4473
4474     Merge remote branch 'master' into texture-debugging
4475     
4476     Conflicts:
4477         clutter/cogl/cogl/cogl-context.h
4478
4479 commit aa6731e338a88d03e718980604ac8f2393391a9f
4480 Author: Neil Roberts <neil@linux.intel.com>
4481 Date:   Mon Feb 1 13:25:19 2010 +0000
4482
4483     cogl-material: Compare GL texture numbers for material layer textures
4484     
4485     When deciding if a material layer is equal it now compares the GL
4486     target and texture number if the textures are not sliced. This is
4487     needed to get batching across atlased textures.
4488
4489  clutter/cogl/cogl/cogl-material.c |   25 ++++++++++++++++++++++++-
4490  1 file changed, 24 insertions(+), 1 deletion(-)
4491
4492 commit abe91784c4ba98417eabe0649bf73381afbd6fc7
4493 Author: Neil Roberts <neil@linux.intel.com>
4494 Date:   Mon Feb 1 12:11:58 2010 +0000
4495
4496     cogl: Let GL do the format conversion when uploading texture data
4497     
4498     Cogl accepts a pixel format for both the data in memory and the
4499     internal format to be used for the texture. If they do not match then
4500     it would convert them using the CoglBitmap functions before uploading
4501     the data. However, GL also lets you specify both formats so it makes
4502     more sense to let GL do the conversion. The driver may need the
4503     texture in a specific format so it may end up being converted anyway.
4504     
4505     The cogl_texture_upload_data functions have been removed and replaced
4506     with a single function to prepare the bitmap. This will only do the
4507     premultiplication conversion because that is the only part that GL
4508     can't do directly.
4509
4510  clutter/cogl/cogl/cogl-atlas-texture.c     |  111 +++++++-------
4511  clutter/cogl/cogl/cogl-texture-2d-sliced.c |  220 +++++++++++++++-------------
4512  clutter/cogl/cogl/cogl-texture-2d.c        |   92 ++++++------
4513  clutter/cogl/cogl/cogl-texture-private.h   |   44 ++----
4514  clutter/cogl/cogl/cogl-texture.c           |  136 ++++++++---------
4515  5 files changed, 290 insertions(+), 313 deletions(-)
4516
4517 commit e83ffb1fa3436bf1506c32856b2a3ba23254e068
4518 Author: Neil Roberts <neil@linux.intel.com>
4519 Date:   Fri Jan 29 15:15:08 2010 +0000
4520
4521     cogl: Do the premult conversion in-place rather than copying to a new buffer
4522     
4523     The premult part of _cogl_convert_premult has now been split out as
4524     _cogl_convert_premult_status. _cogl_convert_premult has been renamed
4525     to _cogl_convert_format to make it less confusing. The premult
4526     conversion is now done in-place instead of copying the
4527     buffer. Previously it was copying the buffer once for the format
4528     conversion and then copying it again for the premult conversion. The
4529     premult conversion never changes the size of the buffer so it's quite
4530     easy to do in place. We can also use the separated out function
4531     independently.
4532
4533  clutter/cogl/cogl/cogl-atlas-texture.c     |    6 +-
4534  clutter/cogl/cogl/cogl-bitmap-fallback.c   |  142 +++++++++++-----------------
4535  clutter/cogl/cogl/cogl-bitmap-pixbuf.c     |    6 +-
4536  clutter/cogl/cogl/cogl-bitmap-private.h    |   22 ++---
4537  clutter/cogl/cogl/cogl-bitmap.c            |  102 ++++++++------------
4538  clutter/cogl/cogl/cogl-texture-2d-sliced.c |   12 +--
4539  clutter/cogl/cogl/cogl-texture-2d.c        |   12 +--
4540  clutter/cogl/cogl/cogl-texture.c           |    6 +-
4541  8 files changed, 123 insertions(+), 185 deletions(-)
4542
4543 commit 72fba19eac68ffa30c3f60aeecfdbfa6a2da7bd4
4544 Author: Neil Roberts <neil@linux.intel.com>
4545 Date:   Fri Jan 29 12:19:42 2010 +0000
4546
4547     cogl-atlas-texture: Use a single atlas for both RGB and RGBA textures
4548     
4549     The internal format of the atlas texture is still set to the
4550     appropriate format so Cogl will disable blending for textures that are
4551     intended to be RGB. This should end up ignoring the alpha channel from
4552     the texture in the atlas. This makes the code slightly easier to
4553     maintain and should also improve the chances of batching.
4554
4555  clutter/cogl/cogl/cogl-atlas-texture.c |  134 ++++++++++++--------------------
4556  clutter/cogl/cogl/cogl-context.c       |   18 ++---
4557  clutter/cogl/cogl/cogl-context.h       |    8 +-
4558  3 files changed, 57 insertions(+), 103 deletions(-)
4559
4560 commit ad6bd2ee88770c2ce86f81f7a64b6b121c3418d6
4561 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4562 Date:   Mon Feb 1 12:18:10 2010 +0000
4563
4564     actor: Reword the allocation cycle warning
4565     
4566     Since we're allowing allocation cycles saying that calling
4567     queue_relayout() inside an allocation cycle "is not allowed" is kind of
4568     confusing. We should say that "it is not recommended".
4569
4570  clutter/clutter-actor.c |    2 +-
4571  1 file changed, 1 insertion(+), 1 deletion(-)
4572
4573 commit 5f1c8a17e4f81ead1747b47939d593c80246bf06
4574 Merge: ecbb7ce 8a4b647
4575 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4576 Date:   Mon Feb 1 11:26:56 2010 +0000
4577
4578     Merge branch 'device-manager'
4579     
4580     * device-manager: (37 commits)
4581       x11: Re-enable XI1 extension keyboards
4582       x11: Always handle core device events before XI events
4583       docs: Documentation fixes for DeviceManager
4584       device-manager: Fix the signals definition
4585       docs: Add sections for InputDevice and DeviceManager
4586       docs: Add clutter_input_device_get_device_name()
4587       tests: Print out the device details on motion
4588       Always register core devices
4589       device: Remove unused is_default member
4590       win32: Experimental implementation of device support
4591       tests: Print the device name, as well as its Id
4592       x11: Fill out the :name property of the InputDevices
4593       device: Add the :name property to InputDevice
4594       x11: Store core devices on the X11 Backend singleton
4595       device: Unset the cursor actor when leaving the stage
4596       device: Add pointer actor getter
4597       x11: Discard the LeaveNotify for off-stage ButtonRelease
4598       device: Do not overwrite the stage for an InputDevice
4599       event: Off-stage button releases have a click count of 1
4600       event: Scroll events do not have click count
4601       ...
4602
4603 commit ecbb7ce41a1a759e246fce07f146b8bed5e3d730
4604 Author: Alejandro Piñeiro <apinheiro@igalia.com>
4605 Date:   Mon Jan 25 16:13:58 2010 +0100
4606
4607     Fix problems with "position" and "selection-bound" change notification
4608     
4609     Added a "selection-bound" notify on clutter_text_clear_selection as it
4610     changes the value.
4611     
4612     Added utility function clutter_text_set_positions, in order to
4613     change both cursor position and selection bound inside a
4614     g_object_[freeze/thaw]_notify block
4615     
4616     Added g_object_[freeze/thaw]_notify in other functions that changes
4617     both cursor position and selection bound
4618     
4619     Solves http://bugzilla.openedhand.com/show_bug.cgi?id=1955
4620
4621  clutter/clutter-text.c |   77 +++++++++++++++++++++++++++++++++---------------
4622  1 file changed, 53 insertions(+), 24 deletions(-)
4623
4624 commit 579a9a2665b402405820585dacba137984700110
4625 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4626 Date:   Mon Feb 1 11:04:59 2010 +0000
4627
4628     stage: Add :key-focus property
4629     
4630     ClutterStage has both set_key_focus() and get_key_focus() methods, but
4631     there is no :key-focus property. This means that it is not possible to
4632     get notifications when the key-focus has changes except by connecting to
4633     both the ::key-focus-in and ::key-focus-out signals and do additional
4634     bookkeeping.
4635     
4636     http://bugzilla.openedhand.com/show_bug.cgi?id=1956
4637     
4638     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
4639
4640  clutter/clutter-stage.c |   30 +++++++++++++++++++++++++++++-
4641  1 file changed, 29 insertions(+), 1 deletion(-)
4642
4643 commit 95712f9897db7f06a6ca34661f20b388dd5a5f77
4644 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4645 Date:   Fri Jan 29 10:13:57 2010 +0000
4646
4647     docs: Update the README
4648     
4649     Clean up the grammar and some wrinkles in the text.
4650
4651  README |   91 +++++++++++++++++++++++++++++++++++++++++-----------------------
4652  1 file changed, 58 insertions(+), 33 deletions(-)
4653
4654 commit 5b9259ba807f4151d08bf2ea868c2cdeed97e975
4655 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4656 Date:   Fri Jan 29 09:31:13 2010 +0000
4657
4658     docs: Update the configure switches in the README
4659
4660  README |   13 ++++++++++++-
4661  1 file changed, 12 insertions(+), 1 deletion(-)
4662
4663 commit 763fcabd8b287445d32eadb6086b0438e3962294
4664 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4665 Date:   Fri Jan 29 09:29:53 2010 +0000
4666
4667     build: Warn with --disable-conformance and --enable-gcov
4668     
4669     When building Clutter without conformance test suite we ought to warn
4670     the user that the coverage report is not going to be accurate.
4671
4672  configure.ac |    9 +++++++--
4673  1 file changed, 7 insertions(+), 2 deletions(-)
4674
4675 commit 21d21adbc45a6e0023e4a21b357fbf392b469fb2
4676 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4677 Date:   Fri Jan 29 09:29:37 2010 +0000
4678
4679     Remove tabs from configure.ac
4680
4681  configure.ac |   51 ++++++++++++++++++++++++++++-----------------------
4682  1 file changed, 28 insertions(+), 23 deletions(-)
4683
4684 commit 5f5f6d825f6460f532f0c0448fc403cdb95e4697
4685 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4686 Date:   Fri Jan 29 09:26:47 2010 +0000
4687
4688     build: Allow disabling the conformance test suite
4689     
4690     When building Clutter for packaging on headless boxes it's pointless to
4691     allow building the conformance test to be built (and run on 'make
4692     check').
4693
4694  configure.ac      |   14 +++++++++++++-
4695  tests/Makefile.am |   25 ++++++++++++++++++++-----
4696  2 files changed, 33 insertions(+), 6 deletions(-)
4697
4698 commit 7a1ebcbced45c21937c4407e28274fdb4a92af52
4699 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4700 Date:   Wed Jan 27 21:26:26 2010 +0000
4701
4702     Whitespace fixes in cogl-util
4703
4704  clutter/cogl/cogl/cogl-util.c |    6 +++---
4705  1 file changed, 3 insertions(+), 3 deletions(-)
4706
4707 commit 578e83e463d4d681de27f1b4e5d64dea8161f0f7
4708 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4709 Date:   Wed Jan 27 21:16:28 2010 +0000
4710
4711     Whitespace fixes
4712
4713  clutter/clutter-frame-source.c     |    3 ++-
4714  clutter/clutter-timeout-interval.c |   38 ++++++++++++++++++++++--------------
4715  clutter/clutter-timeout-pool.c     |    5 +++--
4716  3 files changed, 28 insertions(+), 18 deletions(-)
4717
4718 commit 2d5eeba5d89c129f991f367f0e80c3a152f19e52
4719 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4720 Date:   Wed Jan 27 21:14:43 2010 +0000
4721
4722     docs: Fixes for TimeoutPool and Frame sources
4723     
4724     The TimeoutPool is not used by ClutterTimeline any more, so we need to
4725     remove a sentence from its description. We also need to fix the gtk-doc
4726     syntax errors.
4727
4728  clutter/clutter-frame-source.c |   25 +++++++++++++------------
4729  clutter/clutter-timeout-pool.c |    8 +-------
4730  2 files changed, 14 insertions(+), 19 deletions(-)
4731
4732 commit 046a4b80476794bebdfd9005c826a64b7c8c9f81
4733 Author: Neil Roberts <neil@linux.intel.com>
4734 Date:   Fri Jan 22 18:14:57 2010 +0000
4735
4736     cogl: Use the colours of COGL_DEBUG=rectangles to debug batching
4737     
4738     Instead of assigning a new colour to each quad of a batch, the
4739     rectangle debugging code now assigns a new colour to each batch so
4740     that it can be used to visually see what is being batched. The colour
4741     is stored in a global variable that is reset during cogl_clear. This
4742     improves the chances that the same colour will be used for a batch in
4743     the next frames to avoid flickering.
4744
4745  clutter/cogl/cogl/cogl-context.h |    6 +++++
4746  clutter/cogl/cogl/cogl-journal.c |   54 ++++++++++++++++++++++++++------------
4747  clutter/cogl/cogl/cogl.c         |   11 ++++++++
4748  3 files changed, 54 insertions(+), 17 deletions(-)
4749
4750 commit 92a375ab47296a81d739ca29b0972c7abe6eda16
4751 Author: Neil Roberts <neil@linux.intel.com>
4752 Date:   Tue Jan 26 13:46:27 2010 +0000
4753
4754     cogl-vertex-buffer: Fix disabling the texture arrays from previous prim
4755     
4756     When setting up the state for the vertex buffer,
4757     enable_state_for_drawing_buffer tries to keep track of the highest
4758     numbered texture unit in use. It then disables any texture arrays for
4759     units that were previously enabled if they are greater than that
4760     number. However if there is no texturing in the VBO then the max used
4761     unit would be left at 0 which it would later think meant unit 0 is
4762     still in use so it wouldn't disable it. To fix this it now initialises
4763     the max used unit to -1 which it should interpret as ‘no units are in
4764     use’ so it will later disable the arrays for all units.
4765     
4766     Thanks to Jon Mayo for reporting the bug.
4767     
4768     http://bugzilla.openedhand.com/show_bug.cgi?id=1957
4769
4770  clutter/cogl/cogl/cogl-vertex-buffer.c |    2 +-
4771  1 file changed, 1 insertion(+), 1 deletion(-)
4772
4773 commit f288eae0fc454876c2beb87b1205681a338d7f65
4774 Author: Neil Roberts <neil@linux.intel.com>
4775 Date:   Wed Jan 27 12:06:22 2010 +0000
4776
4777     docs: Add some notes about the CoglPixelFormat enums
4778     
4779     The pixel format enums didn't explain what order in memory the
4780     components should be so it was difficult to use them.
4781
4782  clutter/cogl/cogl/cogl-types.h |   22 +++++++++++++++++++---
4783  1 file changed, 19 insertions(+), 3 deletions(-)
4784
4785 commit da392e24a55ad34bdc8fe9ac0841eca574f76194
4786 Author: Neil Roberts <neil@linux.intel.com>
4787 Date:   Wed Jan 27 11:02:34 2010 +0000
4788
4789     docs: Fix some of the examples for the animation docs
4790     
4791     In the example for clutter_actor_animate the "x" and "y" properties
4792     are floats so they need to be passed float values in the var args
4793     otherwise it will crash. There was also a missing comma.
4794     
4795     There were some other minor problems with the behaviours example which
4796     would cause it not to compile.
4797
4798  doc/reference/clutter/clutter-animation-tutorial.xml |   11 +++++------
4799  1 file changed, 5 insertions(+), 6 deletions(-)
4800
4801 commit 52cb54f5fa665fdf06270fc58121617b44877639
4802 Author: Damien Lespiau <damien.lespiau@intel.com>
4803 Date:   Tue Jan 26 18:47:25 2010 +0000
4804
4805     cogl: Fix checks of the number of available texture units
4806     
4807     We were checking the number of texture units against the GL enum that is
4808     used in glGetInteger() to query that number. Let's abstract this in a
4809     little function.
4810     
4811     Took the opportunity to dig a bit on the usage of GL limits for the
4812     number of texture (image) units and document our use of them. We'll need
4813     something finer grained if we want to fully exploit texture image units
4814     with a programmable pipeline.
4815
4816  clutter/cogl/cogl/cogl-internal.h |    2 ++
4817  clutter/cogl/cogl/cogl-material.c |   10 ++--------
4818  clutter/cogl/cogl/cogl.c          |   30 ++++++++++++++++++++++++++++++
4819  3 files changed, 34 insertions(+), 8 deletions(-)
4820
4821 commit 87d19b8d182c2524a5d3c30921fe2c3d4d120606
4822 Author: Damien Lespiau <damien.lespiau@intel.com>
4823 Date:   Sun Nov 15 20:17:47 2009 +0000
4824
4825     cogl: Fix gl equivalent of blend string
4826     
4827     An example of what could be the equivalent of
4828         "RBG = REPLACE(TEXTURE)
4829          A   = MODULATE(PREVIOUS,TEXTURE)"
4830     using the ARB_texture_env_combine extension was given, but it seems that
4831     a few typo were left:
4832         * remove a spurius GL_COMBINE_ALPHA
4833         * use the _ALPHA variant of SRCN and OPERANDN when setting up the
4834           alpha combiner
4835
4836  doc/reference/cogl/blend-strings.xml |    9 ++++-----
4837  1 file changed, 4 insertions(+), 5 deletions(-)
4838
4839 commit afb30f4013fdcb58ee35af919fdb739ab587683c
4840 Author: Damien Lespiau <damien.lespiau@intel.com>
4841 Date:   Wed Nov 18 01:13:11 2009 +0000
4842
4843     tests: blend-string: use g_assert_cmpint
4844     
4845     It's very useful to see the actual number the reference value is
4846     compared too when the test fails. GTest has g_assert_cmp$type()
4847     functions for that, so make good use of them.
4848
4849  tests/conform/test-cogl-blend-strings.c |    6 +++---
4850  1 file changed, 3 insertions(+), 3 deletions(-)
4851
4852 commit de31cbf4f7932f8d48583a476c5af9f6eed6adbd
4853 Author: Damien Lespiau <damien.lespiau@intel.com>
4854 Date:   Tue Jan 26 16:59:50 2010 +0000
4855
4856     test-cogl-multitexture: use several materials with texture matrices
4857     
4858     A small doubt has risen about the use of CoglTextureUnit in materials:
4859     will texture matrices still work if we have several materials, each of
4860     them having at texture on the same texture unit? The answer is yes!
4861     
4862     test-cogl-multitexture has been extended to use 2 materials with about
4863     the same setup except a little difference: the texture matrices for the
4864     lightmaps rotate in opposite directions.
4865     
4866     While at it, changed the rotation behaviour by an implicit animation
4867     with a small additional bonus bling.
4868
4869  tests/interactive/test-cogl-multitexture.c |  143 ++++++++++++++++++++--------
4870  1 file changed, 102 insertions(+), 41 deletions(-)
4871
4872 commit 06d8ebb0ba2d468d492eeb94dede095a14eec909
4873 Author: Damien Lespiau <damien.lespiau@intel.com>
4874 Date:   Sun Nov 15 19:54:17 2009 +0000
4875
4876     cogl: Create CoglTextureUnit with its associated unit number
4877     
4878     The index field of CoglTextureUnit was never set, leading to the
4879     creation of units with index set to 0. When trying to retrieve a texture
4880     unit by its index (!= 0) with _cogl_get_texture_unit(), a new one was
4881     created as it could not find it back in the list of textures units:
4882     ctx->texture_units.
4883     
4884     http://bugzilla.openedhand.com/show_bug.cgi?id=1958
4885
4886  clutter/cogl/cogl/cogl.c |    5 +++--
4887  1 file changed, 3 insertions(+), 2 deletions(-)
4888
4889 commit 8fc07c51a9c71aec77e4b76416ffedc72da309e2
4890 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4891 Date:   Thu Jan 21 17:41:10 2010 +0000
4892
4893     actor: Use GParamSpecUint for :opacity
4894     
4895     The :opacity property is defined using a GParamSpecUchar. This usually
4896     leads to issues with language bindings that don't have an 'unsigned
4897     char' type and that need to explicitly handle the conversion between
4898     G_TYPE_UCHAR and G_TYPE_INT or G_TYPE_UINT.
4899     
4900     The property definition already specifies an interval size of [0, 255]
4901     on the values; more importantly, GObject already implicitly transforms
4902     between G_TYPE_UCHAR and G_TYPE_UINT (the GValue transformation
4903     functions are registered at type system initialization time) so
4904     switching between a GParamSpecUchar and a GParamSpecUint should not be
4905     an ABI break.
4906     
4907     I have tested a simple program using the opacity property before and
4908     after the change and I cannot see any run-time warnings related to this
4909     issue.
4910
4911  clutter/clutter-actor.c |   18 +++++++++---------
4912  1 file changed, 9 insertions(+), 9 deletions(-)
4913
4914 commit d0f7debfba4879c3df20c0067789b063e18d93ce
4915 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4916 Date:   Fri Jan 22 21:44:28 2010 +0000
4917
4918     test-easing: Do not reconnect signals multiple times
4919     
4920     The test should keep track of the last animation and avoid reconnecting
4921     signals to the same instance in case the -r argument has been passed.
4922
4923  tests/interactive/test-easing.c |    6 +++++-
4924  1 file changed, 5 insertions(+), 1 deletion(-)
4925
4926 commit 7073e69b4e504ddbaffad4a6139e93ddbd40b9f8
4927 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4928 Date:   Fri Jan 22 21:42:55 2010 +0000
4929
4930     animation: Verify internal state
4931     
4932     Be more drastic if the internal state is broken, and assert() if the
4933     expected Alpha and Timeline instances we need are not valid. This
4934     usually implies a library bug or a massive heap corruption.
4935
4936  clutter/clutter-animation.c |    4 ++++
4937  1 file changed, 4 insertions(+)
4938
4939 commit 8daa3035e563870fc614813fd6329c63542b129e
4940 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4941 Date:   Fri Jan 22 21:42:10 2010 +0000
4942
4943     docs: Fix the Animation:object property
4944     
4945     There is a typo in the Animation:object property gtk-doc declaration.
4946
4947  clutter/clutter-animation.c |    2 +-
4948  1 file changed, 1 insertion(+), 1 deletion(-)
4949
4950 commit 0788aa43b29454efed3f60160b87881a1c84f603
4951 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4952 Date:   Fri Jan 22 21:41:33 2010 +0000
4953
4954     animation: Add more debug annotations
4955     
4956     We need some better tracking of the Animation's lifetime.
4957
4958  clutter/clutter-animation.c |   16 ++++++++++++++--
4959  1 file changed, 14 insertions(+), 2 deletions(-)
4960
4961 commit 7fa7c4a1b621eff0533ff70b1b6c9be001f62e2a
4962 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4963 Date:   Fri Jan 22 21:36:41 2010 +0000
4964
4965     animation: Transform if necessary
4966     
4967     The Animation code does transformation of values between type A and A'
4968     after checking for compatibility using g_value_type_compatible(). This
4969     is incorrect: compatibility means that the two types can be copied. The
4970     correct conversion should follow:
4971     
4972             if (compatible (type (A), type (A')))
4973               copy (A, A');
4974             else
4975               if (transformable (type (A), type (A')))
4976                 transform (A, A');
4977               else
4978                 error("Unable to trasform type A in A'");
4979     
4980     The transformation might still fail, so we need to check for errors
4981     there as well as a fall-through case.
4982
4983  clutter/clutter-animation.c |   42 ++++++++++++++++++++++--------------------
4984  1 file changed, 22 insertions(+), 20 deletions(-)
4985
4986 commit 94249efff7ec46bbeaac04800d5a9a30c05dcde3
4987 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4988 Date:   Fri Jan 22 21:33:28 2010 +0000
4989
4990     animation: Check for value transformability
4991     
4992     We should not just check for compatibility, but also for the ability to
4993     transform a GValue of type A into another of type A'.
4994     
4995     Usually compatibility is enough, especially if types can be
4996     introspected beforehand; some times, though, we also need to check for
4997     transformability as a type can provide the transformation functions
4998     necessary for the operation.
4999
5000  clutter/clutter-animation.c |   29 ++++++++++++++++++++---------
5001  1 file changed, 20 insertions(+), 9 deletions(-)
5002
5003 commit 996614cfaf582bbfbf86874a95b4a7eef3c50630
5004 Author: Neil Roberts <neil@linux.intel.com>
5005 Date:   Thu Jan 21 15:34:19 2010 +0000
5006
5007     cogl-atlas-texture: Add a debug option to disable the atlas
5008     
5009     If the user specifies the 'disable-atlas' debug option then no texture
5010     will be put in the atlas.
5011
5012  clutter/cogl/cogl/cogl-atlas-texture.c |    5 +++++
5013  clutter/cogl/cogl/cogl-debug.c         |    3 ++-
5014  clutter/cogl/cogl/cogl-debug.h         |    3 ++-
5015  3 files changed, 9 insertions(+), 2 deletions(-)
5016
5017 commit 4695383281d4b74baa10d78253a27b2eb541eef3
5018 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5019 Date:   Fri Jan 22 00:06:17 2010 +0000
5020
5021     build: Use no-define
5022     
5023     We don't need the PACKAGE and VERSION defines in the config.h.
5024
5025  configure.ac |    2 +-
5026  1 file changed, 1 insertion(+), 1 deletion(-)
5027
5028 commit f7e7985344420caf4897777ced6f04cddb7052ee
5029 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5030 Date:   Thu Jan 21 23:57:38 2010 +0000
5031
5032     build: Add no-portability option to automake
5033     
5034     We require the GNU version of make for some of our rules, and it's been
5035     so for a while now.
5036
5037  configure.ac |    2 +-
5038  1 file changed, 1 insertion(+), 1 deletion(-)
5039
5040 commit a545f66a5c34b66d1a31387105d114ca3edd3a46
5041 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5042 Date:   Thu Jan 21 23:41:18 2010 +0000
5043
5044     master clock: Improve the timeline advancement protection
5045     
5046     The commit 1c69c61745ed510f0b6ab16cb963ca01994cb9fc which improved the
5047     protection against timeline removals during the master clock advancement
5048     was only doing half the job - and actually broke the chaining of
5049     animations inside the ::completed signal.
5050     
5051     We cannot simply take a reference on the timelines and still use the list
5052     held by the master clock because the do_tick() might result in the
5053     creation of a new timeline, which gets added at the end of the list with
5054     no reference increase and thus gets disposed at the end of the iteration.
5055     
5056     We also cannot steal the master clock timelines list because a timeline
5057     might be removed as the direct result of do_tick() and remove_timeline()
5058     would not find the timeline, failing and leaving a dangling pointer
5059     behind.
5060     
5061     For this reason we copy the list of timelines out of the one that the
5062     Master Clock holds, take a reference on each timeline, advance them all,
5063     release the reference and free the list.
5064
5065  clutter/clutter-master-clock.c |   39 +++++++++++++++++++++++++++------------
5066  1 file changed, 27 insertions(+), 12 deletions(-)
5067
5068 commit 8a4b64715486699dd8d0ea2146d0adea37d2a6c7
5069 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5070 Date:   Wed Jan 20 19:40:58 2010 +0000
5071
5072     x11: Re-enable XI1 extension keyboards
5073     
5074     The extension keyboard support in XInput 1.x is hopelessly broken.
5075     
5076     Nevertheless, it's possible to use some bits of it, as we prefer the
5077     core keyboard events to the XInput events, thus at least having proper
5078     handling for X11 key events on the Stage window.
5079
5080  clutter/x11/clutter-backend-x11.c      |    2 --
5081  clutter/x11/clutter-event-x11.c        |   28 ++++++++++++++++++++++++++--
5082  clutter/x11/clutter-input-device-x11.c |   21 ++++++++++++++-------
5083  tests/interactive/test-devices.c       |   12 +++++++-----
5084  4 files changed, 47 insertions(+), 16 deletions(-)
5085
5086 commit 94f9f3bd9345d8eb1551c429615473134e3f4e8f
5087 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5088 Date:   Fri Jan 15 16:28:00 2010 +0000
5089
5090     x11: Always handle core device events before XI events
5091     
5092     The XI 1.0 layer is complementary to the X11 core devices handling; this
5093     means that core events will still be emitted for the core pointer and
5094     keyboard devices, and that secondary (floating) devices should be
5095     handled on top of that.
5096     
5097     Thus, the XI event handling code should be executed (if explicitly
5098     compiled in and enabled) if the core device events have not been parsed.
5099     
5100     Note: this is going away with XI2, which completely replaces both core and
5101     XI1 events.
5102
5103  clutter/x11/clutter-event-x11.c |  499 ++++++++++++++++++---------------------
5104  1 file changed, 224 insertions(+), 275 deletions(-)
5105
5106 commit dc39e9eff9de0797086ea1a505855724296981f7
5107 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5108 Date:   Fri Jan 15 15:29:52 2010 +0000
5109
5110     docs: Documentation fixes for DeviceManager
5111
5112  clutter/clutter-device-manager.c           |    7 ++++++-
5113  doc/reference/clutter/clutter-sections.txt |    2 --
5114  doc/reference/clutter/clutter.types        |    2 ++
5115  3 files changed, 8 insertions(+), 3 deletions(-)
5116
5117 commit 65c7ff7d05389a10eed1d881ca572082f03932fe
5118 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5119 Date:   Fri Jan 15 15:29:14 2010 +0000
5120
5121     device-manager: Fix the signals definition
5122     
5123     Add documentation for the signals, as well as using the correct type for
5124     the marshallers.
5125
5126  clutter/clutter-device-manager.c |   26 +++++++++++++++++++++++---
5127  1 file changed, 23 insertions(+), 3 deletions(-)
5128
5129 commit 0b47acf60b46b64ae838471765d86e1c65c01cc0
5130 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5131 Date:   Fri Jan 15 14:56:43 2010 +0000
5132
5133     docs: Add sections for InputDevice and DeviceManager
5134
5135  doc/reference/clutter/clutter-docs.xml.in |    2 ++
5136  1 file changed, 2 insertions(+)
5137
5138 commit 8ead5abba0ebe9c5b5c1b749bb28f7879d63aa49
5139 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5140 Date:   Fri Jan 15 14:42:19 2010 +0000
5141
5142     docs: Add clutter_input_device_get_device_name()
5143
5144  doc/reference/clutter/clutter-sections.txt |    1 +
5145  1 file changed, 1 insertion(+)
5146
5147 commit 1f5a7b61b761bf8426b1229c481574c273a5964f
5148 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5149 Date:   Fri Jan 15 12:24:21 2010 +0000
5150
5151     tests: Print out the device details on motion
5152     
5153     The test-device interactive test should print out the device name and id
5154     when it detects a motion event.
5155
5156  tests/interactive/test-devices.c |   31 ++++++++++++++++++++++++++++++-
5157  1 file changed, 30 insertions(+), 1 deletion(-)
5158
5159 commit d8e167f1519499a27ee04a9a0d167b5ffed3ce8e
5160 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5161 Date:   Fri Jan 15 12:22:29 2010 +0000
5162
5163     Always register core devices
5164     
5165     Even with XInput support we should always register core devices. This
5166     allows us to handle enter and leave events correctly on the Stage and
5167     to have a working XInput 1.x support in Clutter.
5168
5169  clutter/x11/clutter-backend-x11.c      |   87 ++++++++++----------------------
5170  clutter/x11/clutter-backend-x11.h      |    1 +
5171  clutter/x11/clutter-event-x11.c        |   47 ++++++++++++++++-
5172  clutter/x11/clutter-input-device-x11.c |   14 ++---
5173  4 files changed, 82 insertions(+), 67 deletions(-)
5174
5175 commit e0b8d631593c0539c47de0158d5425391d7cdbc0
5176 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5177 Date:   Fri Jan 15 11:52:27 2010 +0000
5178
5179     device: Remove unused is_default member
5180     
5181     The is_default member of the InputDevice structure was not used
5182     anywhere.
5183
5184  clutter/clutter-private.h         |    2 --
5185  clutter/x11/clutter-backend-x11.c |   11 ++---------
5186  2 files changed, 2 insertions(+), 11 deletions(-)
5187
5188 commit 74dbcede25c9dee5b40cb057a26263d580800e7e
5189 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5190 Date:   Fri Jan 15 11:47:05 2010 +0000
5191
5192     win32: Experimental implementation of device support
5193     
5194     Mostly lifted from the core pointer and keyboard X11 backend support.
5195     
5196     The win32 backend registers two devices (a core pointer and a core
5197     keyboard) and assigns them to the event structure when doing the
5198     translation from native events to Clutter events.
5199     
5200     Thanks to: Samuel Degrande <Samuel.Degrande@lifl.fr> for testing this
5201     patch.
5202
5203  clutter/win32/clutter-backend-win32.c |   23 ++++++++++++++
5204  clutter/win32/clutter-backend-win32.h |    3 ++
5205  clutter/win32/clutter-event-win32.c   |   55 +++++++++++++++++++++------------
5206  3 files changed, 61 insertions(+), 20 deletions(-)
5207
5208 commit 850dd5a38fe17e82b16e19144db4ac516e349dbb
5209 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5210 Date:   Fri Jan 15 11:40:01 2010 +0000
5211
5212     tests: Print the device name, as well as its Id
5213     
5214     The test-devices interactive test should display the device name along
5215     with the id.
5216
5217  tests/interactive/test-devices.c |    3 ++-
5218  1 file changed, 2 insertions(+), 1 deletion(-)
5219
5220 commit 66740e8000ea92b04da663a0d2ce890271d2af2f
5221 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5222 Date:   Fri Jan 15 11:38:58 2010 +0000
5223
5224     x11: Fill out the :name property of the InputDevices
5225     
5226     For the core pointer and keyboard we assign the names ourselves; for
5227     devices coming from XI we can use the XDeviceInfo.name member.
5228
5229  clutter/x11/clutter-backend-x11.c |    5 ++++-
5230  clutter/x11/clutter-event-x11.c   |    9 ++++++---
5231  2 files changed, 10 insertions(+), 4 deletions(-)
5232
5233 commit cf4e05930a1243f9b58617a4a50833d5bab705b1
5234 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5235 Date:   Fri Jan 15 11:37:43 2010 +0000
5236
5237     device: Add the :name property to InputDevice
5238     
5239     The InputDevice should have a name, possibly user readable, coming from
5240     the backend.
5241
5242  clutter/clutter-input-device.c |   46 +++++++++++++++++++++++++++++++++++++++-
5243  clutter/clutter-input-device.h |    6 +++---
5244  clutter/clutter-private.h      |    9 ++++++++
5245  3 files changed, 57 insertions(+), 4 deletions(-)
5246
5247 commit 79ad2b6a72bd91273e139e72af36d9b6db264001
5248 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5249 Date:   Fri Jan 15 11:21:52 2010 +0000
5250
5251     x11: Store core devices on the X11 Backend singleton
5252     
5253     Instead of overloading the device id of 0 and 1 we should treat the core
5254     devices as special, and have a pointer inside the X11 backend singleton
5255     structure, for fast access.
5256
5257  clutter/x11/clutter-backend-x11.c      |    8 +++-
5258  clutter/x11/clutter-backend-x11.h      |    3 ++
5259  clutter/x11/clutter-event-x11.c        |   13 +++----
5260  clutter/x11/clutter-input-device-x11.c |   63 ++++++++++++++++++++++++++++++++
5261  4 files changed, 77 insertions(+), 10 deletions(-)
5262
5263 commit 8a579838d54d2b6f552fd32d9772f6e04f178179
5264 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5265 Date:   Thu Jan 14 17:14:33 2010 +0000
5266
5267     device: Unset the cursor actor when leaving the stage
5268     
5269     When an InputDevice leaves a stage we set the stage member of
5270     InputDevice to NULL. We should also unset the cursor_actor (as the
5271     device is obviously not on an actor any more).
5272     
5273     When the device re-enters the Stage the ENTER/LEAVE event generation
5274     machinery will then be able to emit the ENTER event on the Stage.
5275
5276  clutter/clutter-input-device.c |   43 ++++++++++++++++++++++++++--------------
5277  1 file changed, 28 insertions(+), 15 deletions(-)
5278
5279 commit 55e4315aa5889185a055f3ab2d5b5d4c9cae4dc4
5280 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5281 Date:   Tue Jan 12 11:53:12 2010 +0000
5282
5283     device: Add pointer actor getter
5284     
5285     ClutterInputDevice should have a getter method for retrieving the
5286     reactive actor underneath the pointer.
5287
5288  clutter/clutter-input-device.c             |   37 ++++++++++++++++++++++++++++
5289  clutter/clutter-input-device.h             |    3 ++-
5290  doc/reference/clutter/clutter-sections.txt |    1 +
5291  3 files changed, 40 insertions(+), 1 deletion(-)
5292
5293 commit 25c6ebbb2c70af7f268036b10dcd8d4a965c34c3
5294 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5295 Date:   Wed Dec 9 00:03:13 2009 +0000
5296
5297     x11: Discard the LeaveNotify for off-stage ButtonRelease
5298     
5299     If the user presses a button on a pointer device and then moves out the
5300     Stage X11 will emit the following events:
5301     
5302       LeaveNotify ➔ MotionNotify ... ➔ ButtonRelease ➔ LeaveNotify
5303     
5304     The second LeaveNotify differs from the first by the state field.
5305     
5306     Unfortunately, ClutterCrossingEvent doesn't have a modifier_state field
5307     like other events, so we cannot provide a way for programmatically
5308     distinguishing them from a Clutter perspective. This is also an X11-ism
5309     we might not even want to replicate on every backend with sane
5310     enter/leave semantics.
5311     
5312     For this reason we should check inside the X11 event processing if the
5313     pointer device has already left the Stage and ignore the second
5314     LeaveNotify.
5315
5316  clutter/x11/clutter-event-x11.c |   58 +++++++++++++++++++++++----------------
5317  1 file changed, 34 insertions(+), 24 deletions(-)
5318
5319 commit 8736b53d7cc6fd2b53649c076ef09cb69f9b37d6
5320 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5321 Date:   Wed Dec 9 00:01:50 2009 +0000
5322
5323     device: Do not overwrite the stage for an InputDevice
5324     
5325     The Stage field of an InputDevice is set by the backend, whenever the
5326     pointer enters or leaves the Stage. The Stage should not overwrite the
5327     stage field for every event it processes.
5328
5329  clutter/clutter-stage.c |    1 -
5330  1 file changed, 1 deletion(-)
5331
5332 commit cf287db2048eae5eaa58a9cbffd42c703f345ff5
5333 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5334 Date:   Wed Dec 9 00:00:49 2009 +0000
5335
5336     event: Off-stage button releases have a click count of 1
5337     
5338     The ButtonRelease off-stage should not have a click count of 0 but a
5339     click count initialized to 1.
5340
5341  clutter/clutter-main.c |    1 +
5342  1 file changed, 1 insertion(+)
5343
5344 commit bddabf6d2ca100f4d91461129d4bb097c59ac666
5345 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5346 Date:   Tue Dec 8 23:59:56 2009 +0000
5347
5348     event: Scroll events do not have click count
5349     
5350     Remove the unneeded CLUTTER_SCROLL case from the click count checks.
5351
5352  clutter/clutter-main.c |    1 -
5353  1 file changed, 1 deletion(-)
5354
5355 commit e30856a54d5d1e012cd2de30e519a487fd0b4f46
5356 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5357 Date:   Tue Dec 8 18:33:01 2009 +0000
5358
5359     Whitespace and indentation fixes
5360
5361  clutter/x11/clutter-event-x11.c |   24 ++++++++++++------------
5362  1 file changed, 12 insertions(+), 12 deletions(-)
5363
5364 commit 0f9cfd9911c21933b34c07a9616f79022bcc01e3
5365 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5366 Date:   Mon Dec 7 23:13:52 2009 +0000
5367
5368     event: Clean up click-count detection
5369     
5370     Avoid a few indirections and direct access to the Event and InputDevice
5371     structures.
5372
5373  clutter/clutter-main.c |   65 +++++++++++++++++++++++++++++++++---------------
5374  1 file changed, 45 insertions(+), 20 deletions(-)
5375
5376 commit cf8a06f0186e44b3437b06c56c088e8dc465402b
5377 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5378 Date:   Mon Dec 7 23:05:20 2009 +0000
5379
5380     device: Store the current state, not the previous
5381     
5382     The previous state for the device is used by the click count machinery
5383     and we should not be overwriting it at every event; instead, we should
5384     use a parallel storage for the current state coming from the windowing
5385     system.
5386
5387  clutter/clutter-input-device.c |   34 +++++++++++++++++-----------------
5388  clutter/clutter-private.h      |    7 +++++++
5389  2 files changed, 24 insertions(+), 17 deletions(-)
5390
5391 commit 68b47e3ed479242a94f7a8d302a2900f7e28c840
5392 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5393 Date:   Mon Dec 7 23:02:48 2009 +0000
5394
5395     tests: Fix test-events output
5396     
5397     • The enter/leave event line should take into account the case where
5398       the related field is set to NULL (meaning entering from off-stage
5399       and leaving the stage).
5400     
5401     • The ButtonRelease line shows the click count but uses the button; the
5402       button *and* the click count should be displayed for both ButtonPress
5403       and ButtonRelease, to verify they match.
5404
5405  tests/interactive/test-events.c |   16 +++++++++++-----
5406  1 file changed, 11 insertions(+), 5 deletions(-)
5407
5408 commit b3a42c3b09e256732395f7c63c4a39956d32d3da
5409 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5410 Date:   Mon Dec 7 18:38:18 2009 +0000
5411
5412     docs: Update the API reference
5413     
5414     Add the new symbols for InputDevice and DeviceManager
5415
5416  clutter/clutter-device-manager.c           |    2 +-
5417  clutter/clutter-device-manager.h           |    2 +-
5418  clutter/clutter-main.c                     |    4 +--
5419  doc/reference/clutter/clutter-sections.txt |   49 +++++++++++++++++++++++++---
5420  4 files changed, 49 insertions(+), 8 deletions(-)
5421
5422 commit 130286979d04128b51fa8662aa13b6bbd1867ca2
5423 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5424 Date:   Tue Nov 24 17:54:02 2009 +0000
5425
5426     Do not pick when motion event delivery is disabled
5427     
5428     The device manager does not need to update the state of the devices
5429     when the user has disabled the delivery of motion events to actors:
5430     the events will always be delivered as they are to the stage.
5431
5432  clutter/clutter-device-manager.c |    7 +++++++
5433  1 file changed, 7 insertions(+)
5434
5435 commit 687c70dffa70a3256e9f734b090cb4a088e97bb1
5436 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5437 Date:   Tue Nov 24 16:33:03 2009 +0000
5438
5439     Rework the emission of LEAVE/ENTER event pairs
5440     
5441     The LEAVE/ENTER event pairs should be queued during the InputDevice
5442     update process, when we change the actor under the device pointer.
5443     
5444     This commit cleans up the event emission code inside clutter-main.c
5445     and the logic of the event processing.
5446
5447  clutter/clutter-device-manager.c |    4 +-
5448  clutter/clutter-input-device.c   |   81 ++++++++++++++--
5449  clutter/clutter-main.c           |  190 ++++++--------------------------------
5450  clutter/clutter-private.h        |    2 -
5451  4 files changed, 104 insertions(+), 173 deletions(-)
5452
5453 commit 75f05646fa117b8096e033f9fad0ba9de1ee01ac
5454 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5455 Date:   Tue Nov 24 16:31:14 2009 +0000
5456
5457     tests: Clean up test-events
5458     
5459     The output of test-events is a bit of a mess; this patch should clean
5460     it up a little bit - at least enough for it to be useful again during
5461     visual inspection.
5462
5463  tests/interactive/test-events.c |  101 +++++++++++++++++++++++----------------
5464  1 file changed, 60 insertions(+), 41 deletions(-)
5465
5466 commit a056ae716442e07e50ebd07cbca030776a5b3c28
5467 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5468 Date:   Tue Nov 24 16:22:44 2009 +0000
5469
5470     Add docs and licensing notices
5471
5472  clutter/clutter-device-manager.c |  125 +++++++++++++++++++++++++++++++++++++-
5473  clutter/clutter-device-manager.h |   29 +++++++++
5474  clutter/clutter-input-device.c   |  109 ++++++++++++++++++++++++++++++++-
5475  clutter/clutter-input-device.h   |   31 ++++++++++
5476  4 files changed, 288 insertions(+), 6 deletions(-)
5477
5478 commit 9506510d1cf794ef530f6c4db45103efb60cca63
5479 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5480 Date:   Fri Jan 8 17:51:00 2010 +0000
5481
5482     Move all picking-related operations inside InputDevice
5483     
5484     The InputDevice objects stores pointer coordinates, state, stage and
5485     the actor under the cursor, so if the current backend provides us with
5486     one attached to the Event structure then we want the InputDevice itself
5487     to update its state and give us the ClutterActor underneath the
5488     pointer's cursor.
5489
5490  clutter/clutter-device-manager.c |   24 ++++++++++
5491  clutter/clutter-event.c          |   36 ---------------
5492  clutter/clutter-input-device.c   |   91 ++++++++++++++++++++++++++++++++++++--
5493  clutter/clutter-input-device.h   |    7 ++-
5494  clutter/clutter-main.c           |   60 ++++++++++++++-----------
5495  clutter/clutter-master-clock.c   |    7 ++-
5496  clutter/clutter-private.h        |   36 +++++++++------
5497  clutter/clutter-stage.c          |   28 ++++++++++--
5498  clutter/x11/clutter-event-x11.c  |   36 ++++++++++-----
5499  9 files changed, 225 insertions(+), 100 deletions(-)
5500
5501 commit 1f87cac0695dc95be4ed0219752d454d9a285e50
5502 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5503 Date:   Tue Nov 24 12:53:57 2009 +0000
5504
5505     actor: Add :has-pointer property
5506     
5507     ClutterActor should be able to tell whether a pointer is within
5508     its area or not.
5509
5510  clutter/clutter-actor.c   |   60 ++++++++++++++++++++++++++++++++++++++++++++-
5511  clutter/clutter-actor.h   |    1 +
5512  clutter/clutter-private.h |    3 +++
5513  3 files changed, 63 insertions(+), 1 deletion(-)
5514
5515 commit d23dd9af6bf48c3c02f685505a5a34b477d4d2b3
5516 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5517 Date:   Mon Nov 23 16:07:16 2009 +0000
5518
5519     device: Make InputDevice an object and subclass it for X11
5520     
5521     ClutterInputDevice should be a type that we can subclass per-backend
5522     to add functionality.
5523
5524  clutter/Makefile.am                    |    2 +
5525  clutter/clutter-event.h                |   35 +------
5526  clutter/clutter-input-device.c         |  175 ++++++++++++++++++++++++++++++++
5527  clutter/clutter-input-device.h         |   64 ++++++++++++
5528  clutter/clutter-main.c                 |   34 +++----
5529  clutter/clutter-private.h              |   19 +++-
5530  clutter/clutter.h                      |    1 +
5531  clutter/x11/Makefile.am                |    2 +
5532  clutter/x11/clutter-backend-x11.c      |  141 ++++++-------------------
5533  clutter/x11/clutter-input-device-x11.c |  151 +++++++++++++++++++++++++++
5534  clutter/x11/clutter-input-device-x11.h |   25 +++++
5535  11 files changed, 484 insertions(+), 165 deletions(-)
5536
5537 commit d5331bfb5786b496cfcab925319711853db2f1d3
5538 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5539 Date:   Fri Nov 20 16:37:58 2009 +0000
5540
5541     tests: Update the devices test
5542     
5543     Use the DeviceManager API instead of the X11 specific API.
5544
5545  tests/interactive/test-devices.c |    8 +++++---
5546  1 file changed, 5 insertions(+), 3 deletions(-)
5547
5548 commit 157da20e86f88bf906f0b59bafbea171a2e5e678
5549 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5550 Date:   Fri Nov 20 16:24:16 2009 +0000
5551
5552     x11: Always assign a device to pointer and key events
5553     
5554     Even when we are not using XInput we now have fallback devices; the
5555     X11 backend should always assign the default devices when translating
5556     the X events to Clutter events.
5557
5558  clutter/x11/clutter-event-x11.c |   37 ++++++++++++++++++++++++++++---------
5559  1 file changed, 28 insertions(+), 9 deletions(-)
5560
5561 commit ca16446319b6281cf63edf3b1b6d7d4f8d41e499
5562 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5563 Date:   Fri Nov 20 15:43:50 2009 +0000
5564
5565     Add :is-default flag to InputDevice
5566
5567  clutter/clutter-private.h         |    2 ++
5568  clutter/x11/clutter-backend-x11.c |    9 ++++++++-
5569  2 files changed, 10 insertions(+), 1 deletion(-)
5570
5571 commit 3027d4327ae0c5d9bb7cc831f24d5ee5e8fb107f
5572 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5573 Date:   Fri Nov 20 15:36:43 2009 +0000
5574
5575     Port the X11 backend to the Device Manager
5576     
5577     Use the device manager to store the input devices. Also, provide
5578     two fallback devices when initializing the X11 backend: device 0
5579     for the pointer and device 1 for the keyboard.
5580
5581  clutter/clutter-private.h         |    3 -
5582  clutter/x11/clutter-backend-x11.c |  514 ++++++++++++++++++-------------------
5583  clutter/x11/clutter-backend-x11.h |    6 -
5584  clutter/x11/clutter-event-x11.c   |    5 +-
5585  clutter/x11/clutter-x11.h         |    2 +
5586  5 files changed, 256 insertions(+), 274 deletions(-)
5587
5588 commit d34f1aa775e8a66bd0e599b32c761869b319c639
5589 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5590 Date:   Fri Nov 20 15:35:40 2009 +0000
5591
5592     Add ClutterDeviceManager
5593     
5594     The ClutterDeviceManager is a singleton object that behaves like the
5595     StageManager: it holds all input devices and notifies on addition and
5596     removal.
5597
5598  clutter/Makefile.am              |    6 +-
5599  clutter/clutter-device-manager.c |  146 ++++++++++++++++++++++++++++++++++++++
5600  clutter/clutter-device-manager.h |   30 ++++++++
5601  clutter/clutter-main.c           |   30 ++++----
5602  clutter/clutter-marshal.list     |    1 +
5603  clutter/clutter-private.h        |   43 +++++++----
5604  clutter/clutter.h                |    1 +
5605  7 files changed, 224 insertions(+), 33 deletions(-)
5606
5607 commit 1ef40b882349820d5edb2f1ed8885c3386d2cdf7
5608 Author: Neil Roberts <neil@linux.intel.com>
5609 Date:   Tue Jan 19 17:14:58 2010 +0000
5610
5611     test-cogl-npot-texture: Use the COGL_TEXTURE_NO_ATLAS flag
5612     
5613     If the texture is put in the atlas it won't be sliced whatever size it
5614     is so it negates the test. We can avoid this with the NO_ATLAS flag.
5615
5616  tests/conform/test-cogl-npot-texture.c |    2 +-
5617  1 file changed, 1 insertion(+), 1 deletion(-)
5618
5619 commit 08b8b2791f91770d1a6e7aff163167d003b0fad3
5620 Author: Neil Roberts <neil@linux.intel.com>
5621 Date:   Tue Jan 19 17:06:28 2010 +0000
5622
5623     cogl-atlas-texture: Don't create atlas textures with the premult bit
5624     
5625     Previously the atlas textures were being created with whatever format
5626     the first sub texture is in. Only three formats are supported so this
5627     only matters if the first texture is a premultiplied alpha
5628     texture. Instead it now masks out the premultiplied bit so that the
5629     textures are always either RGB_888 or RGBA_8888.
5630
5631  clutter/cogl/cogl/cogl-atlas-texture.c |    3 ++-
5632  1 file changed, 2 insertions(+), 1 deletion(-)
5633
5634 commit 14a28620ae13ef041696e2e3747ec00738cfd2bd
5635 Author: Neil Roberts <neil@linux.intel.com>
5636 Date:   Fri Jan 15 22:56:37 2010 +0000
5637
5638     win32: Use an invisible cursor when cursor-visible is FALSE
5639     
5640     The win32 backend now handles the WM_SETCURSOR message and sets a
5641     fully transparent cursor if the cursor-visible property has been
5642     cleared on the stage. The icon is stored in the library via a resource
5643     file. The instance handle for the DLL is needed to load the resource
5644     so there is now a DllMain function to grab the handle.
5645
5646  clutter/Makefile.am                   |   21 +++++++++++++++-
5647  clutter/win32/Makefile.am             |    2 +-
5648  clutter/win32/clutter-backend-win32.c |   25 +++++++++++++++++++
5649  clutter/win32/clutter-backend-win32.h |    4 +++
5650  clutter/win32/clutter-event-win32.c   |   14 +++++++++++
5651  clutter/win32/clutter-stage-win32.c   |   44 +++++++++++++++++++++++++++++----
5652  clutter/win32/clutter-stage-win32.h   |    2 ++
5653  clutter/win32/invisible-cursor.cur    |  Bin 0 -> 86 bytes
5654  clutter/win32/resources.rc            |    1 +
5655  configure.ac                          |    7 ++++++
5656  10 files changed, 113 insertions(+), 7 deletions(-)
5657
5658 commit 4db89759a0aa91b353ac0bb41562addfff6d76c9
5659 Author: Neil Roberts <neil@linux.intel.com>
5660 Date:   Mon Jan 18 17:33:08 2010 +0000
5661
5662     Post-release version bump to 1.1.7
5663
5664  configure.ac |    2 +-
5665  1 file changed, 1 insertion(+), 1 deletion(-)
5666
5667 commit 07ff8d26f8097a00757e6e3cfcd587bce188ae0d
5668 Author: Neil Roberts <neil@linux.intel.com>
5669 Date:   Mon Jan 18 15:44:58 2010 +0000
5670
5671     Release Clutter 1.1.6
5672
5673  NEWS         |   49 +++++++++++++++++++++++++++++++++++++++++++++++++
5674  configure.ac |    2 +-
5675  2 files changed, 50 insertions(+), 1 deletion(-)
5676
5677 commit 8daff42b3bcc9d59d7c87801b3926d8ed7c105a4
5678 Author: Neil Roberts <neil@linux.intel.com>
5679 Date:   Mon Jan 18 15:43:25 2010 +0000
5680
5681     README: Clarify the required OpenGL version
5682     
5683     Cogl will not allow OpenGL 1.2 if it doesn't have the multitexturing
5684     extension so we should make this clear in the README.
5685
5686  README |    7 ++++++-
5687  1 file changed, 6 insertions(+), 1 deletion(-)
5688
5689 commit fa51ff25d3555ce938922d7bbd64acb12140a774
5690 Author: Neil Roberts <neil@linux.intel.com>
5691 Date:   Mon Jan 18 13:56:56 2010 +0000
5692
5693     Add build/mingw/{README,mingw-cross-compile.sh} to the dist tarball
5694     
5695     It's quite difficult to get git working on Windows so it makes sense
5696     to put the build instructions somewhere accessible.
5697
5698  build/Makefile.am       |    2 +-
5699  build/mingw/Makefile.am |    1 +
5700  configure.ac            |    1 +
5701  3 files changed, 3 insertions(+), 1 deletion(-)
5702
5703 commit ff1d9cf090aef74efa1ec04b8cd490a45b148ae4
5704 Author: Neil Roberts <neil@linux.intel.com>
5705 Date:   Mon Jan 18 12:42:20 2010 +0000
5706
5707     test-texture-fbo: Disconnect the paint handler for the stage
5708     
5709     Otherwise the paint handler will still be run for the subsequent
5710     tests. This ends up writing to the ‘state’ variable which used to be
5711     on the stack so it will end up corrupting some stack variable. This
5712     was causing test-cogl-premult to fail.
5713
5714  tests/conform/test-texture-fbo.c |    6 +++++-
5715  1 file changed, 5 insertions(+), 1 deletion(-)
5716
5717 commit ce030a3fce362cf4238d361743aaf9027ceed95a
5718 Author: Neil Roberts <neil@linux.intel.com>
5719 Date:   Mon Jan 18 12:35:05 2010 +0000
5720
5721     clutter-group: Use g_list_foreach in clutter_group_real_foreach
5722     
5723     g_list_foreach has better protection against the current node being
5724     removed. This will happen for example if someone calls
5725     clutter_container_foreach(container, clutter_actor_destroy). This was
5726     causing valgrind errors for the conformance tests which do just that.
5727
5728  clutter/clutter-group.c |    8 +++++---
5729  1 file changed, 5 insertions(+), 3 deletions(-)
5730
5731 commit c4adefffd34d91fdf72365a6d11641f3c9f751cc
5732 Author: Neil Roberts <neil@linux.intel.com>
5733 Date:   Mon Jan 18 10:53:00 2010 +0000
5734
5735     cogl-atlas-texture: Fix premultiplied texture formats
5736     
5737     When uploading texture data it was just calling cogl_texture_set_data
5738     on the large texture. This would attempt to convert the data to the
5739     format of the large texture. All of the textures with alpha channels
5740     are stored together regardless of whether they are premultiplied so
5741     this was causing premultiplied textures to be unpremultiplied
5742     again. It now just uploads the data ignoring the premult bit of the
5743     format so that it only gets converted once.
5744
5745  clutter/cogl/cogl/cogl-atlas-texture.c |  232 ++++++++++++++++++++++----------
5746  1 file changed, 158 insertions(+), 74 deletions(-)
5747
5748 commit b78024bd2dbf39cb86a1c1458e477af9c9353d9e
5749 Author: Neil Roberts <neil@linux.intel.com>
5750 Date:   Thu Jan 14 17:57:43 2010 +0000
5751
5752     cogl-primitives: Ensure the mipmaps for a layer before logging quads
5753     
5754     With the atlas texture backend ensuring the mipmaps can make it become
5755     a completely different texture which will have different texture
5756     coordinates or may even be sliced. Therefore we need to ensure the
5757     mipmaps before deciding which quads to log in the journal. This adds a
5758     new private function to cogl-material which ensures the mipmaps if
5759     needed.
5760
5761  clutter/cogl/cogl/cogl-material-private.h |    6 ++++++
5762  clutter/cogl/cogl/cogl-material.c         |   19 +++++++++++++++----
5763  clutter/cogl/cogl/cogl-primitives.c       |    6 ++++++
5764  3 files changed, 27 insertions(+), 4 deletions(-)
5765
5766 commit 36f18e5ac57e068c3987d5b705f68fcc6f18d472
5767 Author: Neil Roberts <neil@linux.intel.com>
5768 Date:   Mon Jan 18 09:22:04 2010 +0000
5769
5770     cogl: Make CoglSubTexture only work for quad rendering
5771     
5772     The sub texture backend doesn't work well as a completely general
5773     texture backend because for example when rendering with cogl_polygon
5774     it needs to be able to tranform arbitrary texture coordinates without
5775     reference to the other coordintes. This can't be done when the texture
5776     coordinates are a multiple of one because sometimes the coordinate
5777     should represent the left or top edge and sometimes it should
5778     represent the bottom or top edge. For example if the s coordinates are
5779     0 and 1 then 1 represents the right edge but if they are 1 and 2 then
5780     1 represents the left edge.
5781     
5782     Instead the sub-textures are now documented not to support coordinates
5783     outside the range [0,1]. The coordinates for the sub-region are now
5784     represented as integers as this helps avoid rounding issues. The
5785     region can no longer be a super-region of the texture as this
5786     simplifies the code quite a lot.
5787     
5788     There are two new texture virtual functions:
5789     
5790     transform_quad_coords_to_gl - This transforms two pairs of coordinates
5791          representing a quad. It will return FALSE if the coordinates can
5792          not be transformed. The sub texture backend uses this to detect
5793          coordinates that require repeating which causes cogl-primitives
5794          to use manual repeating.
5795     
5796     ensure_non_quad_rendering - This is used in cogl_polygon and
5797          cogl_vertex_buffer to inform the texture backend that
5798          transform_quad_to_gl is going to be used. The atlas backend
5799          migrates the texture out of the atlas when it hits this.
5800
5801  clutter/cogl/cogl/cogl-atlas-texture.c       |   57 ++-
5802  clutter/cogl/cogl/cogl-primitives.c          |   21 +-
5803  clutter/cogl/cogl/cogl-sub-texture-private.h |   15 +-
5804  clutter/cogl/cogl/cogl-sub-texture.c         |  498 +++++++++-----------------
5805  clutter/cogl/cogl/cogl-texture-2d-sliced.c   |   21 ++
5806  clutter/cogl/cogl/cogl-texture-2d.c          |   17 +
5807  clutter/cogl/cogl/cogl-texture-private.h     |   10 +
5808  clutter/cogl/cogl/cogl-texture.c             |   33 +-
5809  clutter/cogl/cogl/cogl-texture.h             |   22 +-
5810  clutter/cogl/cogl/cogl-vertex-buffer.c       |    5 +
5811  tests/conform/test-cogl-sub-texture.c        |   81 ++---
5812  tests/conform/test-conform-main.c            |    2 +-
5813  12 files changed, 348 insertions(+), 434 deletions(-)
5814
5815 commit 3d373c7278c47b18576edc8c8a0074654ce4a60e
5816 Author: Samuel Degrande <Samuel.Degrande@lifl.fr>
5817 Date:   Fri Nov 27 16:53:50 2009 +0100
5818
5819     win32: Fix computation of the fullscreen size during stage realization
5820     
5821     http://bugzilla.openedhand.com/show_bug.cgi?id=1905
5822     
5823     Signed-off-by: Neil Roberts <neil@linux.intel.com>
5824
5825  clutter/win32/clutter-stage-win32.c |    2 +-
5826  1 file changed, 1 insertion(+), 1 deletion(-)
5827
5828 commit 12a9150f5b455e5700c745de4ad1ac5f2e43631f
5829 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5830 Date:   Fri Jan 15 17:32:46 2010 +0000
5831
5832     docs: Clarify usage of UTF-8 or ASCII art in commit messages
5833
5834  doc/HACKING |    2 +-
5835  1 file changed, 1 insertion(+), 1 deletion(-)
5836
5837 commit ea662b9ecaf1dd956f0cdc79ce04880270bf99de
5838 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5839 Date:   Fri Jan 15 17:06:56 2010 +0000
5840
5841     docs: Display the features section
5842     
5843     The features section of the API reference is built but not used, and it
5844     has some copy-and-paste errors.
5845
5846  clutter/clutter-feature.c                  |   11 +++++++++--
5847  clutter/clutter-feature.h                  |    8 --------
5848  doc/reference/clutter/clutter-docs.xml.in  |    1 +
5849  doc/reference/clutter/clutter-sections.txt |    2 +-
5850  4 files changed, 11 insertions(+), 11 deletions(-)
5851
5852 commit cdfd9eb212829df0408431673bedfbe6b566fefe
5853 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5854 Date:   Fri Jan 15 14:50:06 2010 +0000
5855
5856     Add test-cogl-texture-mipmaps to the Git ignore file
5857
5858  .gitignore |    1 +
5859  1 file changed, 1 insertion(+)
5860
5861 commit e019547e8c7d110332a9ba071737736a059f5b4b
5862 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5863 Date:   Fri Jan 15 14:48:42 2010 +0000
5864
5865     x11: Fix typo in clutter_x11_set_use_argb_visual() declaration
5866     
5867     The function should have a lowercase x11, not an uppercase X11 in its
5868     name.
5869
5870  clutter/x11/clutter-x11.h |    2 +-
5871  1 file changed, 1 insertion(+), 1 deletion(-)
5872
5873 commit 148145ea1ad24fb1ceca3229c4cae9c7c5755f75
5874 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5875 Date:   Fri Jan 15 14:47:20 2010 +0000
5876
5877     docs: Ignore clutter-profile.h
5878
5879  doc/reference/clutter/Makefile.am |   57 +++++++++++++++++++------------------
5880  1 file changed, 29 insertions(+), 28 deletions(-)
5881
5882 commit b844653c649277eed63b6a85d29b84aab8abe641
5883 Author: Neil Roberts <neil@linux.intel.com>
5884 Date:   Mon Jan 11 16:23:38 2010 +0000
5885
5886     cogl-texture: Fix manual repeating for negative coordinates
5887     
5888     When calculating the next integer position for negative coordinates it
5889     would not increment if the position is already a multiple of one so we
5890     need to manually add one.
5891
5892  clutter/cogl/cogl/cogl-texture.c |    5 +++--
5893  1 file changed, 3 insertions(+), 2 deletions(-)
5894
5895 commit a01b4eefceb1d490d918eba1729c87354695d1ca
5896 Author: Neil Roberts <neil@linux.intel.com>
5897 Date:   Mon Jan 11 16:21:56 2010 +0000
5898
5899     cogl-texture-2d: Fix the coordinate wrapping for negative coordinates
5900     
5901     The formula to wrap the coordinates to the [0,1] range was broken when
5902     the coordinates were negative.
5903
5904  clutter/cogl/cogl/cogl-texture-2d.c |    4 ++--
5905  1 file changed, 2 insertions(+), 2 deletions(-)
5906
5907 commit ead43995364bb8865ca5bab15d1bfd295578fff4
5908 Merge: 34b5093 a70ebe4
5909 Author: Neil Roberts <neil@linux.intel.com>
5910 Date:   Fri Jan 15 12:15:46 2010 +0000
5911
5912     Merge branch 'master' into more-texture-backends
5913
5914 commit a70ebe4f52e192c11f8db6a4fa1f419a5b175ab3
5915 Author: Neil Roberts <neil@linux.intel.com>
5916 Date:   Fri Jan 15 12:02:09 2010 +0000
5917
5918     tests: Add a simple conformance test for texture mipmaps
5919     
5920     This adds a test which renders a texture into a 1x1 pixel quad with
5921     and without filters that use mipmaps. The pixel without mipmaps will
5922     be one of the colors from the texture and the one with will be the
5923     average of all the pixels in the texture.
5924
5925  tests/conform/Makefile.am                 |    1 +
5926  tests/conform/test-cogl-texture-mipmaps.c |  147 +++++++++++++++++++++++++++++
5927  tests/conform/test-conform-main.c         |    1 +
5928  3 files changed, 149 insertions(+)
5929
5930 commit ba4622ff8bd1abde577fa26637fd1afec1b3abd6
5931 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5932 Date:   Thu Jan 14 15:23:41 2010 +0000
5933
5934     Add a notice of deprecation in the pre-Git ChangeLog
5935
5936  ChangeLog.pre-git-import |    6 ++++++
5937  1 file changed, 6 insertions(+)
5938
5939 commit 8247bdf4f9b940fe69165ae6556511fcc9ca3a5d
5940 Author: Neil Roberts <neil@linux.intel.com>
5941 Date:   Tue Jan 12 21:44:40 2010 +0000
5942
5943     cogl-framebuffer: Return gboolean from try_creating_fbo
5944     
5945     When try_creating_fbo fails it returns 0 to report the error and if it
5946     succeeds it returns ‘flags’. However cogl_offscreen_new_to_texture
5947     also passes in 0 for the flags as the last fallback to create the fbo
5948     with nothing but the color buffer. In that case it will return 0
5949     regardless of whether it succeeded so the last fallback will always be
5950     considered a failure.
5951     
5952     To fix this it now just returns a gboolean to indicate whether it
5953     succeeded and the flags used for each attempt is assigned when passing
5954     the argument rather than from the return value of the function.
5955     
5956     Also if the only configuration that succeeded was with flags==0 then
5957     it would always try all combinations because last_working_flags would
5958     also be zero. To avoid this it now uses a separate gboolean to mark
5959     whether we found a successful set of flags.
5960     
5961     http://bugzilla.openedhand.com/show_bug.cgi?id=1873
5962
5963  clutter/cogl/cogl/cogl-framebuffer.c |   56 +++++++++++++++++-----------------
5964  1 file changed, 28 insertions(+), 28 deletions(-)
5965
5966 commit c6ce9c338966188248c3c1ae7b10480205fe20bf
5967 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5968 Date:   Thu Jan 14 14:07:04 2010 +0000
5969
5970     conform: Add operators tests for ClutterColor
5971     
5972     The clutter_color_add() and clutter_color_subtract() functions are
5973     lacking unit testing to catch eventual regressions.
5974
5975  .gitignore                        |    1 +
5976  tests/conform/test-color.c        |   57 +++++++++++++++++++++++++++++++++++++
5977  tests/conform/test-conform-main.c |    1 +
5978  3 files changed, 59 insertions(+)
5979
5980 commit 4388509a1589dbac7aae0ebe5995ca0e06f7c70c
5981 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5982 Date:   Thu Jan 14 12:28:07 2010 +0000
5983
5984     master-clock: Add profiling timers
5985     
5986     Use the newly-added profiling timers inside the master clock dispatch
5987     function to see how much time we spend:
5988     
5989       • in the whole function
5990         • in the event processing for each stage
5991         • in the timeline advancement
5992
5993  clutter/clutter-master-clock.c |   31 +++++++++++++++++++++++++++++++
5994  1 file changed, 31 insertions(+)
5995
5996 commit 6e82d11daf8b1d7259c26e6a0816392a71c726f3
5997 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5998 Date:   Wed Jan 13 17:31:13 2010 +0000
5999
6000     units: Improve coverage of clutter_units_from_string()
6001     
6002     Add a unit for an empty string as well as units for the missing unit
6003     types like cm, mm and px.
6004
6005  tests/conform/test-clutter-units.c |   11 +++++++++++
6006  1 file changed, 11 insertions(+)
6007
6008 commit ed735ae730ea2140ef4d1be9d1947dbdce8b1f28
6009 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6010 Date:   Wed Jan 13 16:57:55 2010 +0000
6011
6012     Add test-cogl-multitexture to the Git ignore file
6013
6014  .gitignore |    1 +
6015  1 file changed, 1 insertion(+)
6016
6017 commit a076e0e11d222ca17dbdbadb3aa2c762d32a5730
6018 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6019 Date:   Wed Jan 13 16:35:53 2010 +0000
6020
6021     build: Add a script to format gcov report lines
6022     
6023     Instead of using echo let's try Perl and the format() built-in.
6024
6025  build/Makefile.am                |    2 ++
6026  build/autotools/Makefile.am.gcov |    2 +-
6027  build/gen-gcov.pl                |   44 ++++++++++++++++++++++++++++++++++++++
6028  3 files changed, 47 insertions(+), 1 deletion(-)
6029
6030 commit 948db40c875f8eb7032582a32515737be6587067
6031 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6032 Date:   Mon Jan 4 14:53:03 2010 +0000
6033
6034     Add gcov support to the build
6035     
6036     Using gcov it's possible to get a coverage report, that is a break down
6037     of how much the exposed API is exercised by the conformance test suite.
6038
6039  .gitignore                       |    2 ++
6040  Makefile.am                      |    3 +++
6041  build/autotools/Makefile.am      |    1 +
6042  build/autotools/Makefile.am.gcov |   33 +++++++++++++++++++++++++++++++++
6043  clutter/Makefile.am              |   20 +++++++++++---------
6044  configure.ac                     |   26 ++++++++++++++++++++++++++
6045  6 files changed, 76 insertions(+), 9 deletions(-)
6046
6047 commit 5322546a4e2100bcec8aba651f8de7d849d67711
6048 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6049 Date:   Wed Jan 13 15:40:36 2010 +0000
6050
6051     build: Clean up COGL build flags
6052
6053  clutter/cogl/cogl/Makefile.am |   53 ++++++++++++++++++++---------------------
6054  1 file changed, 26 insertions(+), 27 deletions(-)
6055
6056 commit 18d96005ec4d1395d70d71f2bef6cc378f4afb43
6057 Author: Damien Lespiau <damien.lespiau@intel.com>
6058 Date:   Mon Nov 2 17:08:55 2009 +0000
6059
6060     texture: Remove reading the texture data back in ::unrealize()
6061     
6062     Reading back the texture data in unrealize does not seem like a
6063     desirable feature any more, clutter has evolved a lot since it was
6064     implemented.
6065     
6066     What's wrong with it now:
6067     
6068       * It takes *a lot* of time to read the data back with glReadPixel(),
6069       * When several textures share the same CoglTexture, the same data can
6070         be read back multiple times,
6071       * If the underlying material uses multiple texture units, only the
6072         first one was copied back,
6073       * In ClutterCairoTexture, we end up having two separate copies of the
6074         data,
6075       * GL actually manages texture memory accross system/video memory
6076         for us!
6077     
6078     For all the reasons above, let's get rid of the glReadPixel() in
6079     Texture::unrealize()
6080     
6081     Fixes: OHB#1842
6082
6083  clutter/clutter-texture.c |  163 +++------------------------------------------
6084  1 file changed, 8 insertions(+), 155 deletions(-)
6085
6086 commit 778e08e4e24822b0875e6aeaf168cb5cecfc8a7f
6087 Author: Neil Roberts <neil@linux.intel.com>
6088 Date:   Tue Jan 12 14:49:55 2010 +0000
6089
6090     cogl-framebuffer: Add some missing GL defines
6091     
6092     Since 755cce33a7 the framebuffer code is using the GL enums
6093     GL_DEPTH_ATTACHMENT and GL_DEPTH_COMPONENT16. These aren't available
6094     directly under GLES except with the OES suffix so we need to define
6095     them manually as we do with the other framebuffer constants.
6096
6097  clutter/cogl/cogl/cogl-framebuffer.c |    6 ++++++
6098  1 file changed, 6 insertions(+)
6099
6100 commit bb8352ca95f18ca5582abb97e20e78f69300adde
6101 Author: Neil Roberts <neil@linux.intel.com>
6102 Date:   Tue Jan 12 14:43:36 2010 +0000
6103
6104     cogl: Remove the CGL_* defines
6105     
6106     These macros used to define Cogl wrappers for the GLenum values. There are
6107     now Cogl enums everywhere in the API where these were required so we
6108     shouldn't need them anymore. They were in the public headers but as
6109     they are not neccessary and were not in the API docs for Clutter 1.0
6110     it should be safe to remove them.
6111
6112  clutter/cogl/cogl/cogl-material.c                  |   10 +-
6113  clutter/cogl/cogl/cogl-primitives.c                |    2 +-
6114  clutter/cogl/cogl/cogl-shader.h                    |    2 +-
6115  clutter/cogl/cogl/cogl-texture.h                   |    7 +-
6116  clutter/cogl/cogl/driver/gl/cogl-defines.h.in      |  655 --------------------
6117  clutter/cogl/cogl/driver/gl/cogl-texture-driver.c  |    2 +-
6118  clutter/cogl/cogl/driver/gles/cogl-defines.h.in    |  597 ------------------
6119  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c |    4 +-
6120  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.h |   65 +-
6121  clutter/glx/clutter-glx-texture-pixmap.c           |    8 +-
6122  10 files changed, 55 insertions(+), 1297 deletions(-)
6123
6124 commit 1c6ffc8a238e5e7de429f35f7653695d91d9d26d
6125 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6126 Date:   Tue Jan 12 15:44:28 2010 +0000
6127
6128     stage: Add the delete-event signal
6129     
6130     Using the ::event signal to match the CLUTTER_DELETE event type (and
6131     block the stage destruction) can be costly, since it means checking
6132     every single event.
6133     
6134     The ::delete-event signal is similar in spirit to any other specialized
6135     signal handler dealing with events, and retains the same semantics.
6136
6137  clutter/clutter-main.c  |    9 +--------
6138  clutter/clutter-stage.c |   49 ++++++++++++++++++++++++++++++++++++++++++++++-
6139  clutter/clutter-stage.h |    6 +++++-
6140  3 files changed, 54 insertions(+), 10 deletions(-)
6141
6142 commit 8b950bdc87fae2626af8a96916b7f51fdea40a17
6143 Author: Robert Bragg <robert@linux.intel.com>
6144 Date:   Tue Jan 12 11:02:09 2010 +0000
6145
6146     journal: Fixes logging of multiple sets of texture coordinates
6147     
6148     If a user supplied multiple groups of texture coordinates with
6149     cogl_rectangle_with_multitexture_coords() then we would repeatedly log only
6150     the first group in the journal.  This fixes that bug and adds a conformance
6151     test to verify the fix.
6152     
6153     Thanks to Gord Allott for reporting this bug.
6154
6155  clutter/cogl/cogl/cogl-journal.c       |    8 +-
6156  tests/conform/Makefile.am              |    1 +
6157  tests/conform/test-cogl-multitexture.c |  209 ++++++++++++++++++++++++++++++++
6158  tests/conform/test-conform-main.c      |    1 +
6159  4 files changed, 215 insertions(+), 4 deletions(-)
6160
6161 commit bc8a80fee53c9eed17fab6d821846c1a0fa3460f
6162 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6163 Date:   Mon Jan 11 17:08:42 2010 +0000
6164
6165     text: Zero out the cursor_pos member
6166     
6167     Do not trust the zero-ing done by GObject on the private data structure,
6168     and use memset() instead to zero the ClutterGeometry structure.
6169
6170  clutter/clutter-text.c |    1 +
6171  1 file changed, 1 insertion(+)
6172
6173 commit 5c14538c1406b1358a2747428c73fe0cf1198e94
6174 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6175 Date:   Mon Jan 11 17:06:52 2010 +0000
6176
6177     Remove obsolete code from test-text
6178     
6179     The test-text "fake scrolling" code stopped working somewhere between
6180     0.8 and 0.9, with the new layout code. Instead of the ::cursor-event
6181     signal it should use an approach similar to the Scrollable interface in
6182     the Moblin User Experience toolkit.
6183     
6184     Right now, it makes sense to ignore this code entirely.
6185
6186  tests/interactive/test-text.c |   26 ++------------------------
6187  1 file changed, 2 insertions(+), 24 deletions(-)
6188
6189 commit 755cce33a729817aebe4cf5c08d97c31a327c863
6190 Author: Robert Bragg <robert@linux.intel.com>
6191 Date:   Mon Nov 30 20:04:41 2009 +0000
6192
6193     cogl: Support multiple fallbacks in cogl_offscreen_new_to_texture()
6194     
6195     The Intel drivers in Mesa 7.6 (and possibly earlier versions) don't
6196     support creating FBOs with a stencil buffer but without a depth
6197     buffer. This reworks framebuffer allocation so that we try a number
6198     of fallback options before failing.
6199     
6200     The options we try in order are:
6201     - the same options that were sucessful last time if available
6202     - combined depth and stencil
6203     - separate depth and stencil
6204     - just stencil, no depth
6205     - just depth, no stencil
6206     - neither depth or stencil
6207
6208  clutter/cogl/cogl/cogl-framebuffer-private.h |    2 +-
6209  clutter/cogl/cogl/cogl-framebuffer.c         |  238 +++++++++++++++++---------
6210  2 files changed, 156 insertions(+), 84 deletions(-)
6211
6212 commit 4c1231c7fe545a7764d06754d7d6be0906686e0a
6213 Author: Damien Lespiau <damien.lespiau@intel.com>
6214 Date:   Wed Jan 6 11:48:46 2010 +0000
6215
6216     media: Add an API to specify which font should be used for subtitles
6217     
6218     Allow the user of the ClutterMedia interface to specify a Pango font
6219     description to display subtitles. Even if the underlying implementation
6220     of the interface does not natively use Pange, it must be capable of
6221     parsing the grammar that pango_font_description_from_string() accepts.
6222
6223  clutter/clutter-media.c                    |   64 ++++++++++++++++++++++++++++
6224  clutter/clutter-media.h                    |   45 ++++++++++---------
6225  doc/reference/clutter/clutter-sections.txt |    2 +
6226  3 files changed, 90 insertions(+), 21 deletions(-)
6227
6228 commit 8e9f56c41160452166be68202227b206a690472d
6229 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6230 Date:   Sun Jan 10 11:35:26 2010 +0000
6231
6232     build: Clean up private header/source files
6233     
6234     Some source files should not be passed through the introspection parser,
6235     as they are fully private and do not expose any valuable API.
6236     
6237     Also the clutter-profile.h header is private and should not be
6238     installed.
6239
6240  clutter/Makefile.am |   12 ++++++++----
6241  1 file changed, 8 insertions(+), 4 deletions(-)
6242
6243 commit d9b91d61f5730e9ce29627f467c89070b78fb6b6
6244 Author: Robert Bragg <robert@linux.intel.com>
6245 Date:   Wed Nov 25 14:26:32 2009 +0000
6246
6247     framebuffers: cogl_offscreen_new_to_texture should take a ref on the texture
6248     
6249     We weren't taking a reference on the texture to be used as the color buffer
6250     for offscreen rendering, so it was possible to free the texture leaving the
6251     framebuffer in an inconsistent state.
6252
6253  clutter/cogl/cogl/cogl-framebuffer-private.h |    1 +
6254  clutter/cogl/cogl/cogl-framebuffer.c         |    3 +++
6255  2 files changed, 4 insertions(+)
6256
6257 commit 30b557c4653d15eeb1311b516ab1f4c0035a5e83
6258 Author: Robert Bragg <robert@linux.intel.com>
6259 Date:   Fri Jul 3 16:22:35 2009 +0100
6260
6261     profiling: Adds initial UProf accounting to Cogl
6262     
6263     This adds gives Cogl a dedicated UProf context which will be linked together
6264     with Clutter's context during clutter_init_real().
6265     
6266     Initial timers cover _cogl_journal_flush and _cogl_journal_log_quad
6267     
6268     You can explicitly ask for a report of Cogl statistics by exporting
6269     COGL_PROFILE_OUTPUT_REPORT=1 but since the context is linked with Clutter's
6270     the statisitcs will also be shown in the automatic Clutter reports.
6271
6272  clutter/clutter-main.c           |    7 +++++
6273  clutter/cogl/cogl/Makefile.am    |    2 ++
6274  clutter/cogl/cogl/cogl-journal.c |   19 ++++++++++++++
6275  clutter/cogl/cogl/cogl-profile.c |   30 +++++++++++++++++++++
6276  clutter/cogl/cogl/cogl-profile.h |   54 ++++++++++++++++++++++++++++++++++++++
6277  configure.ac                     |    2 +-
6278  6 files changed, 113 insertions(+), 1 deletion(-)
6279
6280 commit 0b6515a1d53571fea13417d47e7bf0f4749321f8
6281 Author: Robert Bragg <robert@linux.intel.com>
6282 Date:   Fri Apr 17 12:15:56 2009 +0100
6283
6284     profiling: Allow limiting statisics just to picking
6285     
6286     This suspends and resumes all uprof timers and counters except while dealing
6287     with picking, so as to give more focused statistics.
6288     
6289     Be aware that there are still some issues with this profile option since
6290     there are a few special case counters and timers that shouldn't be
6291     suspended; noteably the frame counters are incorrect so the per frame stats
6292     can't be trusted.
6293
6294  clutter/clutter-main.c    |   22 ++++++++++++++++++++--
6295  clutter/clutter-profile.c |   29 +++++++++++++++++++++++++++++
6296  clutter/clutter-profile.h |    9 +++++++++
6297  3 files changed, 58 insertions(+), 2 deletions(-)
6298
6299 commit 9cb530d42e7860d1a44f441b97910fd3903480f1
6300 Author: Robert Bragg <robert@linux.intel.com>
6301 Date:   Wed Jan 6 18:15:13 2010 +0000
6302
6303     profiling: Parse --clutter-profile and CLUTTER_PROFILE= options
6304     
6305     As we have for debugging, this adds the ability to control profiling flags
6306     either via the command line or an environment variable.
6307     
6308     The first option added is CLUTTER_PROFILE=disable-report
6309     
6310     This also changes the reporting to be opt-out so you don't need to export
6311     CLUTTER_PROFILE_OUTPUT_REPORT=1 to see a report but you can use
6312     CLUTTER_PROFILE=disable-report to disable it if desired.
6313
6314  clutter/clutter-main.c    |   51 +++++++++++++++++++++++++++++++++++++++++++++
6315  clutter/clutter-profile.c |    2 +-
6316  clutter/clutter-profile.h |    8 +++++++
6317  3 files changed, 60 insertions(+), 1 deletion(-)
6318
6319 commit 00577558540db2c9f7bf24e870ff6231abb2b99d
6320 Author: Robert Bragg <robert@linux.intel.com>
6321 Date:   Mon Mar 30 16:41:02 2009 +0100
6322
6323     profiling: Adds initial UProf support across clutter
6324     
6325     UProf is a small library that aims to help applications/libraries provide
6326     domain specific reports about performance.  It currently provides high
6327     precision timer primitives (rdtsc on x86) and simple counters, the ability
6328     to link statistics between optional components at runtime and makes report
6329     generation easy.
6330     
6331     This adds initial accounting for:
6332     - Total mainloop time
6333     - Painting
6334     - Picking
6335     - Layouting
6336     - Idle time
6337     
6338     The timing done by uprof is of wall clock time. It's not based on stochastic
6339     samples we simply sample a counter at the start and end.  When dealing with
6340     the complexities of GPU drivers and with various kinds of IO this form of
6341     profiling can be quite enlightening as it will be able to represent where
6342     your application is blocking unlike tools such as sysprof.
6343     
6344     To enable uprof accounting you must configure Clutter with --enable-profile
6345     and have uprof-0.2 installed from git://git.moblin.org/uprof
6346     
6347     If you want to see a report of statistics when Clutter applications exit you
6348     should export CLUTTER_PROFILE_OUTPUT_REPORT=1 before running them.
6349     
6350     Just a final word of caution; this stuff is new and the manual nature of
6351     adding uprof instrumentation means it is prone to some errors when modifying
6352     code.  This just means that when you question strange results don't rule out
6353     a mistake in the instrumentation.  Obviously though we hope the benfits out
6354     weigh e.g.  by focusing on very key stats and by having automatic reporting.
6355
6356  clutter/Makefile.am               |    2 +
6357  clutter/clutter-actor.c           |   14 +++
6358  clutter/clutter-backend.c         |   15 ++++
6359  clutter/clutter-main.c            |   94 +++++++++++++++++++-
6360  clutter/clutter-profile.c         |  170 +++++++++++++++++++++++++++++++++++++
6361  clutter/clutter-profile.h         |   57 +++++++++++++
6362  clutter/clutter-stage.c           |    9 ++
6363  clutter/glx/clutter-backend-glx.c |   17 ++++
6364  8 files changed, 376 insertions(+), 2 deletions(-)
6365
6366 commit bd41db7c00fc54aa8077f53177ff33bd33a19c83
6367 Author: Robert Bragg <robert@linux.intel.com>
6368 Date:   Tue Mar 17 13:07:46 2009 +0000
6369
6370     Adds a --enable-profile option to configure.ac
6371     
6372     There is nothing else hooked up to this option so far
6373
6374  README       |    4 ++++
6375  configure.ac |   58 +++++++++++++++++++++++++++++++++++++++++++++-------------
6376  2 files changed, 49 insertions(+), 13 deletions(-)
6377
6378 commit 5157da9fc8340cebdd29989a4ea02ccf607d3c52
6379 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6380 Date:   Fri Jan 8 15:04:56 2010 +0000
6381
6382     x11: Switch back to RGB visuals by default
6383     
6384     Since asking for ARGB by default is still somewhat experimental on X11
6385     and not every toolkit or complex widgets (like WebKit) still do not like
6386     dealing with ARGB visuals, we should switch back to RGB by default - now
6387     that at least we know it works.
6388     
6389     For applications (and toolkit integration libraries) that want to enable
6390     the ClutterStage:use-alpha property there is a new function:
6391     
6392       void clutter_x11_set_use_argb_visual (gboolean use_argb);
6393     
6394     which needs to be called before clutter_init().
6395     
6396     The CLUTTER_DISABLE_ARGB_VISUAL environment variable can still be used
6397     to force this value off at run-time.
6398
6399  clutter/glx/clutter-backend-glx.c          |    2 +-
6400  clutter/x11/clutter-backend-x11.c          |   70 +++++++++++++++++++++++++++-
6401  clutter/x11/clutter-stage-x11.c            |    6 ++-
6402  clutter/x11/clutter-x11.h                  |    9 +++-
6403  doc/reference/clutter/clutter-sections.txt |    3 ++
6404  5 files changed, 83 insertions(+), 7 deletions(-)
6405
6406 commit 9599adbd820db7526d77790d8b611a6b61cb2dc7
6407 Author: Damien Lespiau <damien.lespiau@intel.com>
6408 Date:   Wed Jan 6 00:44:24 2010 +0000
6409
6410     doc: Fix media::{get,set}_subtitle_uri() symbol names
6411     
6412     At first, those symbols were called {get,set}_subtitles_uri() but were
6413     renamed to {get,set}_subtitle_uri() without updating the
6414     clutter-section.txt file.
6415     
6416     This fix makes gtk-doc document those symbols again.
6417
6418  doc/reference/clutter/clutter-sections.txt |    4 ++--
6419  1 file changed, 2 insertions(+), 2 deletions(-)
6420
6421 commit bf4818bd759f612a9cec62c2e072544d54cc104c
6422 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6423 Date:   Thu Jan 7 11:08:52 2010 +0000
6424
6425     actor: Just emit a relayout cycle warning
6426     
6427     Currently, ClutterActor detects a relayout cycle (an actor causing a
6428     relayout to be queued from within an allocate() function) and aborts
6429     after printing out a warning. This might be a little bit too anal
6430     retentive, and it currently breaks GTK+ embedding inside clutter-gtk
6431     so we should probably relax the behaviour a bit. Now we just emit the
6432     warning but we still go ahead with the relayout.
6433
6434  clutter/clutter-actor.c |    1 -
6435  1 file changed, 1 deletion(-)
6436
6437 commit 821e622de671ad4e18a55e9dbd33aee004e822df
6438 Author: Neil Roberts <neil@linux.intel.com>
6439 Date:   Thu Jan 7 15:58:53 2010 +0000
6440
6441     Don't set the GLX_TRANSPARENT_TYPE attribute to choose an FBConfig
6442     
6443     When Clutter tries to pick an ARGB visual it tried to set the
6444     GLX_TRANSPARENT_TYPE attribute of the FBConfig to
6445     GLX_TRANSPARENT_RGB. However the code to do this was broken so that it
6446     was actually trying to set the non-existant attribute number 0x8008
6447     instead. Mesa silently ignored this so it appeared as if it was
6448     working but the Nvidia drivers do not like it.
6449     
6450     It appears that the TRANSPARENT_TYPE attribute is not neccessary for
6451     getting an ARGB visual anyway and instead it is intended to support
6452     color-key transparency. Therefore we can just remove it and get all of
6453     the FBConfigs. Then if we need an ARGB visual we can just walk the
6454     list to look for one with depth == 32.
6455     
6456     The fbconfig is now stored in a single variable instead of having a
6457     separate variable for the rgb and rgba configs because the old code
6458     only ever retrieved one of them anyway.
6459
6460  clutter/glx/clutter-backend-glx.c |  145 ++++++++++++++-----------------------
6461  clutter/glx/clutter-backend-glx.h |    5 +-
6462  2 files changed, 57 insertions(+), 93 deletions(-)
6463
6464 commit 8b59573190907da97c2af5a5be2e563fc66f8d51
6465 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6466 Date:   Tue Jan 5 18:02:29 2010 +0000
6467
6468     Covert stb_image.c to Unix format
6469     
6470     The file is still in DOS format (CRLF instead of LF) and this confuses
6471     the hell out of some versions of Git.
6472
6473  clutter/cogl/cogl/stb_image.c | 7544 ++++++++++++++++++++---------------------
6474  1 file changed, 3772 insertions(+), 3772 deletions(-)
6475
6476 commit 58b5a46e0e6b263bd32808e4a9a46bbdd81eedfe
6477 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6478 Date:   Tue Jan 5 17:54:45 2010 +0000
6479
6480     Include cogl-defines.h before using GL types
6481     
6482     If we are using GL* types we should also be including cogl-defines.h, as
6483     that will include the right GL header.
6484
6485  clutter/cogl/cogl/cogl-shader.h  |    1 +
6486  clutter/cogl/cogl/cogl-texture.h |    1 +
6487  2 files changed, 2 insertions(+)
6488
6489 commit 793fec8138b478ba1f1ea419f9ef8bed4f453e77
6490 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6491 Date:   Tue Jan 5 16:11:45 2010 +0000
6492
6493     cogl: Fix array annotations
6494     
6495     The arrays in the cogl_program_set_uniform_* API should be marked as
6496     such, and have their length arguments specified.
6497
6498  clutter/cogl/cogl/cogl-shader.h |   16 ++++++++--------
6499  1 file changed, 8 insertions(+), 8 deletions(-)
6500
6501 commit 59105341bce12b2ec009ff953facbb7f7b10e85f
6502 Author: Neil Roberts <neil@linux.intel.com>
6503 Date:   Tue Jan 5 11:58:12 2010 +0000
6504
6505     text: Store the markup attributes separately
6506     
6507     Previously when the markup property is set it would generate an
6508     attribute list from the markup and then merge it with the attributes
6509     from the attribute property and store it as the effective
6510     attributes. The markup attributes and the marked up text would then be
6511     forgotten. This breaks if the application then later changes the
6512     attributes property because it would try to regenerate the effective
6513     attributes from the markup text but the stored text no longer contains
6514     any markup. If the original markup text happened to contain entities
6515     like '&lt;' they would end up causing parse errors because they would
6516     be converted to the actual symbols.
6517     
6518     To fix this the attributes from the markup are now stored
6519     independently from the effective attributes. The effective attributes
6520     are now regenerated if either set of attributes changes right before a
6521     layout is created.
6522     
6523     http://bugzilla.openedhand.com/show_bug.cgi?id=1940
6524
6525  clutter/clutter-text.c |  134 +++++++++++++++++++++++++++++-------------------
6526  1 file changed, 82 insertions(+), 52 deletions(-)
6527
6528 commit 32b456fc8c4e8743c1b2c32164f7e9f67188a60e
6529 Author: Neil Roberts <neil@linux.intel.com>
6530 Date:   Tue Jan 5 11:44:17 2010 +0000
6531
6532     text: Free the Pango attribute list resources
6533     
6534     The ClutterText owns three PangoAttrList resources which were not
6535     being unref'd. This adds the unref calls to the finalize method.
6536
6537  clutter/clutter-text.c |    7 +++++++
6538  1 file changed, 7 insertions(+)
6539
6540 commit 64c1294cc26e034fbf8a9a05b4413f63b9cd882d
6541 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6542 Date:   Tue Jan 5 14:10:19 2010 +0000
6543
6544     x11 tfp: Plug a leak
6545     
6546     Destroy the dummy XImage we create even on success.
6547     
6548     http://bugzilla.openedhand.com/show_bug.cgi?id=1918
6549     
6550     Based on a patch by: Carlos Martín Nieto <carlos@cmartin.tk>
6551     
6552     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
6553
6554  clutter/x11/clutter-x11-texture-pixmap.c |   22 +++++++++++++---------
6555  1 file changed, 13 insertions(+), 9 deletions(-)
6556
6557 commit fa298b45b530c6b6821e73b011c3c7d226950ce0
6558 Merge: 4207524 4adc2c2
6559 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6560 Date:   Tue Jan 5 11:04:50 2010 +0000
6561
6562     Merge branch 'matrix-mode'
6563     
6564     * matrix-mode:
6565       build: Move CoglMatrixMode to cogl-matrix-stack.h
6566
6567 commit 4207524e950efd3f1fa5334f6d0b9b374a0b3f93
6568 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6569 Date:   Tue Jan 5 11:02:39 2010 +0000
6570
6571     Remove trailing comma from test UI definition
6572     
6573     The animation definition test has a trailing comma at the end of an
6574     array item.
6575
6576  tests/data/test-script-animation.json |    2 +-
6577  1 file changed, 1 insertion(+), 1 deletion(-)
6578
6579 commit 2aa9d7bdc78703fc9a6354d2e54f880fde96db39
6580 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6581 Date:   Tue Jan 5 10:55:28 2010 +0000
6582
6583     script: Copy the JSON node in PropertyInfo
6584     
6585     PropertyInfo should store a copy of the JsonNodes it references, so
6586     that property_info_free() can safely dispose them, and we can reference
6587     values across different UI definition data.
6588     
6589     The implicit timeline parsing code is not copying the JsonNode; this
6590     leads to a double free in some cases, which is masked by the GSlice
6591     allocator and produces a heap corruption later on.
6592
6593  clutter/clutter-script-parser.c |    2 +-
6594  1 file changed, 1 insertion(+), 1 deletion(-)
6595
6596 commit 10963d1ae03920e202ccbd0107854f489117f89b
6597 Author: Damien Lespiau <damien.lespiau@intel.com>
6598 Date:   Mon Dec 28 17:52:43 2009 +0100
6599
6600     [media] Add an API to play a subtitle file along with the media
6601     
6602     Allow the user of the ClutterMedia interface to specify an external (as
6603     in not multiplexed with the audio/video streams) location of a subtitle
6604     stream.
6605
6606  clutter/clutter-media.c                    |   55 ++++++++++++++++++++++++++++
6607  clutter/clutter-media.h                    |    3 ++
6608  doc/reference/clutter/clutter-sections.txt |    2 +
6609  3 files changed, 60 insertions(+)
6610
6611 commit 5d5c7142f7fa2447e13bcb80a272b0d9dfc28f06
6612 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6613 Date:   Mon Jan 4 12:03:47 2010 +0000
6614
6615     text: Use G_SIGNAL_ACTION for ::insert-text and ::delete-text
6616     
6617     Both the ::insert-text and ::delete-text are "action" signals, that is
6618     signals that are safe to (and should) be emitted using g_signal_emit()
6619     directly.
6620
6621  clutter/clutter-text.c |    4 ++--
6622  1 file changed, 2 insertions(+), 2 deletions(-)
6623
6624 commit bf43cb6cdc84e646add7adc592487274331d4930
6625 Author: Alejandro Piñeiro <apinheiro@igalia.com>
6626 Date:   Fri Nov 20 15:17:41 2009 +0100
6627
6628     Added ClutterText::insert-text and ClutterText::delete-text signals
6629     
6630     * clutter/clutter-marshal.list: added new marshaller
6631     * clutter/clutter-text.c
6632     (clutter_text_class_init): added insert-text and delete-text signals
6633     (clutter_text_insert_unichar): emits insert-text signal
6634     (clutter_text_insert_text): emits insert-text signal
6635     (clutter_text_delete_text): emits delete-text signal
6636     (clutter_text_delete_chars): emits delete-text signal
6637     (clutter_text_set_markup_internal): emits delete-text and insert-text signals
6638     (clutter_text_set_text): emits delete-text and insert-text signals
6639     
6640     http://bugzilla.openedhand.com/show_bug.cgi?id=1894
6641
6642  clutter/clutter-marshal.list |    1 +
6643  clutter/clutter-text.c       |   87 ++++++++++++++++++++++++++++++++++++++++--
6644  2 files changed, 84 insertions(+), 4 deletions(-)
6645
6646 commit 4adc2c2d839c42eccc7187735ddcce061d25f14b
6647 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6648 Date:   Mon Jan 4 11:58:32 2010 +0000
6649
6650     build: Move CoglMatrixMode to cogl-matrix-stack.h
6651     
6652     This avoids a redeclaration of _cogl_matrix_stack_flush_to_gl() from
6653     using GLenum to CoglMatrixMode.
6654     
6655     http://bugzilla.openedhand.com/show_bug.cgi?id=1928
6656
6657  clutter/cogl/cogl/cogl-internal.h     |    7 -------
6658  clutter/cogl/cogl/cogl-matrix-stack.h |    9 +++++++--
6659  2 files changed, 7 insertions(+), 9 deletions(-)
6660
6661 commit eb9029504124daf4c032f027c2f068ec25548f3f
6662 Author: Halton Huo <halton.huo@sun.com>
6663 Date:   Mon Jan 4 11:49:50 2010 +0000
6664
6665     cogl-texture: Remove return in void functions
6666     
6667     http://bugzilla.o-hand.com/show_bug.cgi?id=1929
6668     
6669     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
6670
6671  clutter/cogl/cogl/cogl-texture.c |    8 +++-----
6672  1 file changed, 3 insertions(+), 5 deletions(-)
6673
6674 commit b98d486fc99fd46626877be728961190dbf831dc
6675 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6676 Date:   Mon Jan 4 11:49:13 2010 +0000
6677
6678     build: Maintainer cflags go in the _CFLAGS target
6679     
6680     The maintainer compiler flags are not pre-processor flags.
6681
6682  clutter/cogl/cogl/Makefile.am |    3 +--
6683  1 file changed, 1 insertion(+), 2 deletions(-)
6684
6685 commit 0fb51658fdba886fd5d9cb53cfca6df13aa1f7a0
6686 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6687 Date:   Mon Jan 4 11:43:00 2010 +0000
6688
6689     cogl: Const-ify vertices in cogl_polygon()
6690     
6691     The CoglTextureVertex array passed to cogl_polygon() is a pure
6692     in-argument and should be const-ified.
6693     
6694     http://bugzilla.openedhand.com/show_bug.cgi?id=1917
6695
6696  clutter/cogl/cogl/cogl-primitives.c |   27 ++++++++++++++-------------
6697  clutter/cogl/cogl/cogl-texture.h    |    6 +++---
6698  2 files changed, 17 insertions(+), 16 deletions(-)
6699
6700 commit 1c69c61745ed510f0b6ab16cb963ca01994cb9fc
6701 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6702 Date:   Wed Nov 11 11:00:29 2009 +0000
6703
6704     master-clock: Take a reference before advancing timelines
6705     
6706     A timeline advancement might cause another timeline to be
6707     destroyed, which will likely lead to a segmentation fault.
6708     
6709     Before advancing the timelines we should take a reference
6710     on them - just like we do for the stages before doing
6711     event processing. This will prevent dispose() from running
6712     until the end of the advancement.
6713     
6714     http://bugzilla.openedhand.com/show_bug.cgi?id=1854
6715
6716  clutter/clutter-master-clock.c |    7 +++++++
6717  1 file changed, 7 insertions(+)
6718
6719 commit 5ae88f5777c5ed0663937f990350f145b254692c
6720 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6721 Date:   Sun Jan 3 20:41:17 2010 +0000
6722
6723     Post-release version bump to 1.1.5
6724
6725  configure.ac |    2 +-
6726  1 file changed, 1 insertion(+), 1 deletion(-)
6727
6728 commit 6d7e1e5434d3da27cf23a9c16f9990523eedba4e
6729 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6730 Date:   Sun Jan 3 20:11:43 2010 +0000
6731
6732     Release Clutter 1.1.4
6733
6734  NEWS         |   56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
6735  configure.ac |    4 ++--
6736  2 files changed, 58 insertions(+), 2 deletions(-)
6737
6738 commit 3355c2ab2518711d7ab79f3ffe1f4a8ce105af84
6739 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6740 Date:   Sun Jan 3 20:24:39 2010 +0000
6741
6742     build: Remove dist rule for non-existing image files
6743
6744  doc/cookbook/Makefile.am |    2 +-
6745  1 file changed, 1 insertion(+), 1 deletion(-)
6746
6747 commit 8d40cb947031f90a7b8cf459720278c6a6fe295d
6748 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6749 Date:   Sun Jan 3 20:12:49 2010 +0000
6750
6751     Disable g_set_prgname()
6752     
6753     Apparently, calling g_set_prgname() multiple times is not allowed
6754     anymore, and hence clutter_init_* calls should not do that. Though this
6755     is really GLib's fault - and a massive nuisance for us - we should
6756     prolly comply to avoid the test suite dying on us.
6757
6758  clutter/clutter-main.c |    4 ++++
6759  1 file changed, 4 insertions(+)
6760
6761 commit 3d350078a8aa6f1bdf38c12de62e2708c5369247
6762 Merge: a09ac0b 934eee1
6763 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6764 Date:   Wed Dec 23 10:38:02 2009 +0000
6765
6766     Merge branch 'animate-layout-manager' into ebassi-next
6767     
6768     * animate-layout-manager:
6769       layout-manager: Document the animation support
6770       layout-manager: Rewind the timeline in begin_animation()
6771       box-layout: Remove the allocations hash table
6772       docs: Clean up the README file
6773       layout: Let begin_animation() return the Alpha
6774       box-layout: Add knobs for controlling animations
6775       box-layout: Animate layout properties
6776       layout: Add animation support to LayoutManager
6777       Add ActorBox animation methods
6778
6779 commit 934eee17ae34098773ff5876747061b5a1d1f1a5
6780 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6781 Date:   Wed Dec 23 10:35:16 2009 +0000
6782
6783     layout-manager: Document the animation support
6784     
6785     Add a section inside the LayoutManager class API reference documenting,
6786     with examples, how to implement animation support inside a layout
6787     manager sub-class.
6788
6789  clutter/clutter-layout-manager.c |  213 ++++++++++++++++++++++++++++++++++----
6790  1 file changed, 190 insertions(+), 23 deletions(-)
6791
6792 commit 713c2952410e99e681825dac51da3e0b575ef2cf
6793 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6794 Date:   Wed Dec 23 08:39:16 2009 +0000
6795
6796     layout-manager: Rewind the timeline in begin_animation()
6797     
6798     If the default implementation begin_animation() is called twice then we
6799     should rewind the timeline, as well as updating its duration and the
6800     easing mode of the alpha.
6801
6802  clutter/clutter-layout-manager.c |    8 ++++++--
6803  1 file changed, 6 insertions(+), 2 deletions(-)
6804
6805 commit b9c1de0ec7001ce6a6b62dbd8d1fd9ee15539093
6806 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6807 Date:   Wed Dec 23 08:34:08 2009 +0000
6808
6809     box-layout: Remove the allocations hash table
6810     
6811     The BoxLayout uses a HashTable to map the latest stable allocation of
6812     each child, in order to use that as the initial value during an
6813     animation; this in spite of already having a perfectly valid per-child
6814     storage as part of the layout manager: ClutterBoxChild.
6815     
6816     The last stable allocation should be stored inside the ClutterBoxChild
6817     instead of having it in the private data for ClutterBoxLayout. The
6818     access remains O(1), since there is a 1:1 mapping between child and
6819     BoxChild instances, but we save a little bit of memory and we avoid
6820     keeping aroud allocations for old children.
6821
6822  clutter/clutter-box-layout.c |   47 +++++++++++++++++++-----------------------
6823  1 file changed, 21 insertions(+), 26 deletions(-)
6824
6825 commit c8c5e0ee39626d434c2d3e5486c6520eff17f519
6826 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6827 Date:   Tue Dec 22 18:10:39 2009 +0000
6828
6829     docs: Clean up the README file
6830
6831  README |  137 +++++++++++++++++++++++++++++++++++++++-------------------------
6832  1 file changed, 83 insertions(+), 54 deletions(-)
6833
6834 commit a09ac0b27ccb4a9c08a4e42e00776bf627f0e163
6835 Merge: b6bd8be 3491337
6836 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6837 Date:   Sun Dec 20 17:39:12 2009 +0000
6838
6839     Merge branch 'stage-use-alpha' into ebassi-next
6840     
6841     * stage-use-alpha:
6842       tests: Use accessor methods for :use-alpha
6843       stage: Add accessors for :use-alpha
6844       tests: Allow setting the stage opacity in test-paint-wrapper
6845       stage: Premultiply the stage color
6846       stage: Composite the opacity with the alpha channel
6847       glx: Always request an ARGB visual
6848       stage: Add :use-alpha property
6849       materials: Get the right blend function for alpha
6850
6851 commit b6bd8be6cb0fabf2ddf3eedadce68c8d3a60c3d9
6852 Merge: 7b53aa7 c7e8ddb
6853 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6854 Date:   Sun Dec 20 17:33:51 2009 +0000
6855
6856     Merge branch 'internal-flag' into ebassi-next
6857     
6858     * internal-flag:
6859       conform: Add test unit for the destruction of Containers
6860       actor: Add internal child flag
6861       Clean up whitespace, indentation and comments
6862
6863 commit c7e8ddb7a60dd76d5f62027383693575f30e2473
6864 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6865 Date:   Fri Dec 18 23:29:11 2009 +0000
6866
6867     conform: Add test unit for the destruction of Containers
6868     
6869     Verify that internal children do not go through the remove()
6870     implementation, and that non-internal children do.
6871
6872  .gitignore                         |    1 +
6873  tests/conform/Makefile.am          |    1 +
6874  tests/conform/test-actor-destroy.c |  168 ++++++++++++++++++++++++++++++++++++
6875  tests/conform/test-conform-main.c  |    1 +
6876  4 files changed, 171 insertions(+)
6877
6878 commit 1520ba6190165dc8902b622833efbccf23716751
6879 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6880 Date:   Fri Dec 18 23:20:04 2009 +0000
6881
6882     actor: Add internal child flag
6883     
6884     ClutterActor checks, when destroying and reparenting, if the parent
6885     actor implements the Container interface, and automatically calls the
6886     remove() method to perform a clean removal.
6887     
6888     Actors implementing Container, though, might have internal children;
6889     that is, children that are not added through the Container API. It is
6890     already possible to iterate through them using the Container API to
6891     avoid breaking invariants - but calling clutter_actor_destroy() on
6892     these children (even from the Container implementation, and thus outside
6893     of Clutter's control) will either lead to leaks or to segmentation
6894     faults.
6895     
6896     Clutter needs a way to distinguish a clutter_actor_set_parent() done on
6897     an internal child from one done on a "public" child; for this reason, a
6898     push/pop pair of functions should be available to Actor implementations
6899     to mark the section where they wish to add internal children:
6900     
6901       ➔ clutter_actor_push_internal ();
6902         ...
6903         clutter_actor_set_parent (child1, parent);
6904         clutter_actor_set_parent (child2, parent);
6905         ...
6906       ➔ clutter_actor_pop_internal ();
6907     
6908     The set_parent() call will automatically set the newly added
6909     INTERNAL_CHILD private flag on each child, and both
6910     clutter_actor_destroy() and clutter_actor_unparent() will check for the
6911     flag before deciding whether to call the Container's remove method.
6912
6913  clutter/clutter-actor.c                    |  110 ++++++++++++++++++++++++++--
6914  clutter/clutter-actor.h                    |    3 +
6915  clutter/clutter-private.h                  |   29 ++++++--
6916  doc/reference/clutter/clutter-sections.txt |    2 +
6917  4 files changed, 132 insertions(+), 12 deletions(-)
6918
6919 commit 4a21425f4837798d01f4435b68582faf9029c61c
6920 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6921 Date:   Sun Dec 13 01:23:54 2009 +0000
6922
6923     layout: Let begin_animation() return the Alpha
6924     
6925     When beginning a new animation for a LayoutManager, the implementation
6926     should return the ClutterAlpha used. This allows controlling the
6927     timeline and/or modifying the animation parameters on the fly.
6928
6929  clutter/clutter-box-layout.c     |    5 +++--
6930  clutter/clutter-layout-manager.c |   30 ++++++++++++++++++++++--------
6931  clutter/clutter-layout-manager.h |    5 +++--
6932  3 files changed, 28 insertions(+), 12 deletions(-)
6933
6934 commit 2e6397c39132007e79f5f87743fe9378fd8d5387
6935 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6936 Date:   Sun Dec 13 01:07:44 2009 +0000
6937
6938     box-layout: Add knobs for controlling animations
6939     
6940     ClutterLayoutManager does not have any state associated with it, and
6941     defers all the state to its sub-classes.
6942     
6943     The BoxLayout is thus in charge of controlling:
6944     
6945       • whether or not animations should be used
6946       • the duration of the animation
6947       • the easing mode of the animation
6948     
6949     By adding three new properties:
6950     
6951       • ClutterBoxLayout:use-animations
6952       • ClutterBoxLayout:easing-duration
6953       • ClutterBoxLayout:easing-mode
6954     
6955     And their relative accessors pairs we can make BoxLayout decide whether
6956     or not, and with which parameters, call the begin_animation() method of
6957     ClutterLayoutManager.
6958     
6959     The test-box-layout has been modified to reflect this new functionality,
6960     by checking the key-press event for the 'a' key symbol to toggle the use
6961     of animations.
6962
6963  clutter/clutter-box-layout.c               |  320 ++++++++++++++++++++++++++--
6964  clutter/clutter-box-layout.h               |   90 ++++----
6965  doc/reference/clutter/clutter-sections.txt |    8 +
6966  tests/interactive/test-box-layout.c        |    6 +
6967  4 files changed, 370 insertions(+), 54 deletions(-)
6968
6969 commit 3c2e91aef586de5521aa9674b80d449cf96da0e1
6970 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6971 Date:   Sat Dec 12 00:13:05 2009 +0000
6972
6973     box-layout: Animate layout properties
6974     
6975     Use the newly added animation support inside LayoutManager to animate
6976     between state changes of the BoxLayout properties.
6977     
6978     The implementation is based on equivalent code from Mx, written by:
6979     
6980       Thomas Wood <thomas.wood@intel.com>
6981
6982  clutter/clutter-box-layout.c |  130 ++++++++++++++++++++++++++++++++++++------
6983  1 file changed, 113 insertions(+), 17 deletions(-)
6984
6985 commit f94a903d9ebdbc055010bb4a4c6fe7e76f418bd8
6986 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6987 Date:   Sat Dec 12 00:02:43 2009 +0000
6988
6989     layout: Add animation support to LayoutManager
6990     
6991     In order to animate a fluid layout we cannot use the common animation
6992     code paths as they will override the size request and allocation paths
6993     that are handled by the layout manager itself.
6994     
6995     One way to introduce animations in the allocation sequence is to use a
6996     Timeline and an Alpha to compute a progress value and then use that
6997     value to interpolate an ActorBox between the initial and final states of
6998     the animation - with the initial state being the last allocation of the
6999     child prior to the animation start, and the final state the allocation
7000     of the child at the end; for every frame of the Timeline we then queue a
7001     relayout on the layout manager's container, which will result in an
7002     animation.
7003     
7004     ClutterLayoutManager is the most likely place to add a generic API for
7005     beginning and ending an animation, as well as the place to provide a
7006     default code path to create the ancillary Timeline and Alpha instances
7007     needed to drive the animation.
7008     
7009     A LayoutManager sub-class will need to:
7010     
7011       • call clutter_layout_manager_begin_animation() whenever it should
7012         animate between two states, for instance: whenever a layout property
7013         changes value;
7014       • eventually override begin_animation() and end_animation() in case
7015         further state needs to be set up, and then chain up to the default
7016         implementation provided by LayoutManager;
7017       • if a completely different implementation is required, the layout
7018         manager sub-class should override begin_animation(), end_animation()
7019         and get_animation_progress().
7020     
7021     Inside the allocate() implementation the sub-class should also
7022     interpolate between the last known allocation of a child and the newly
7023     computed allocation.
7024
7025  clutter/clutter-layout-manager.c           |  159 +++++++++++++++++++++++++++-
7026  clutter/clutter-layout-manager.h           |   68 +++++++-----
7027  doc/reference/clutter/clutter-sections.txt |    5 +
7028  3 files changed, 207 insertions(+), 25 deletions(-)
7029
7030 commit 999359d64ccfbdbcc952662c14fa47441d6a5225
7031 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7032 Date:   Fri Dec 11 23:48:58 2009 +0000
7033
7034     Add ActorBox animation methods
7035     
7036     ClutterActorBox should have an interpolate() method that allows to
7037     compute the intermediate values between two states, given a progress
7038     value, e.g.:
7039     
7040             clutter_actor_box_interpolate (start, end, alpha, &result);
7041     
7042     Another utility method, useful for layout managers, is a modifier
7043     that clamps the members of the actor box to the nearest integer
7044     value.
7045
7046  clutter/clutter-actor.c                    |   47 ++++++++++++++++++++++++++++
7047  clutter/clutter-types.h                    |    5 +++
7048  doc/reference/clutter/clutter-sections.txt |    2 ++
7049  3 files changed, 54 insertions(+)
7050
7051 commit d2ea7cd6a8a1eb4ff04f11cb53aa387458a8e128
7052 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7053 Date:   Fri Dec 11 20:17:58 2009 +0000
7054
7055     Clean up whitespace, indentation and comments
7056
7057  clutter/clutter-main.c |   70 +++++++++++++++++++++++++-----------------------
7058  1 file changed, 36 insertions(+), 34 deletions(-)
7059
7060 commit 7b53aa7510adc60d3287740772ec97117ce78ab9
7061 Merge: 60a6bff 1374b5a
7062 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7063 Date:   Thu Dec 10 23:36:04 2009 +0000
7064
7065     Merge branch 'get-current-event' into ebassi-next
7066     
7067     * get-current-event:
7068       Add clutter_get_current_event
7069
7070 commit 1374b5aac9398852cf3f3482fdf925b52aa31338
7071 Author: Colin Walters <walters@verbum.org>
7072 Date:   Thu Nov 12 17:33:15 2009 -0500
7073
7074     Add clutter_get_current_event
7075     
7076     When getting signals from higher level toolkits, occasionally
7077     one wants access to the underlying event; say for a Button
7078     widget's "clicked" signal, to get the keyboard state.
7079     
7080     Rather than having all of the highlevel widgets emit
7081     ClutterEvent just for the more unusual use cases,
7082     add a global function to access the event state.
7083     
7084     http://bugzilla.openedhand.com/show_bug.cgi?id=1888
7085     
7086     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
7087
7088  clutter/clutter-event.c                    |   23 +++++++++++
7089  clutter/clutter-event.h                    |    1 +
7090  clutter/clutter-main.c                     |   62 ++++++++++++++++------------
7091  clutter/clutter-private.h                  |    1 +
7092  doc/reference/clutter/clutter-sections.txt |    1 +
7093  5 files changed, 61 insertions(+), 27 deletions(-)
7094
7095 commit 60a6bff3136c21c5ff6d4c5bb6614716853620f0
7096 Merge: dc47550 c4f27b1
7097 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7098 Date:   Wed Dec 9 23:32:41 2009 +0000
7099
7100     Merge branch 'no-layout-flag' into ebassi-next
7101     
7102     * no-layout-flag:
7103       actor: Add a NO_LAYOUT flag for actors
7104
7105 commit dc47550bc8eabc2c6e6e99364c1cb536a9adc973
7106 Merge: 86ce92e b33b628
7107 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7108 Date:   Wed Dec 9 23:32:18 2009 +0000
7109
7110     Merge branch 'size-cache' into ebassi-next
7111     
7112     * size-cache:
7113       tests: Clean up the BoxLayout interactive test
7114       actor: Add debugging notes for size cache
7115       Add a cache of size requests
7116
7117 commit 86ce92eec14aa1aaf7c9ab14a520b66690488213
7118 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7119 Date:   Wed Dec 9 18:46:25 2009 +0000
7120
7121     x11: Emulate XKB's detectable key auto-repeat
7122     
7123     Old-style X11 terminals require that even modern X11 send KeyPress
7124     and KeyRelease pairs when auto-repeating. For this reason modern(-ish)
7125     API like XKB has a way to detect auto-repeat and do a single KeyRelease
7126     at the end of a KeyPress sequence.
7127     
7128     The newly added check emulates XKB's detectable auto-repeat by peeking
7129     the next event after a KeyRelease and checking if it's a KeyPress for
7130     the same key and timestamp - and then ignoring the KeyRelease if it
7131     matches.
7132
7133  clutter/x11/clutter-event-x11.c |   26 ++++++++++++++++++++++++++
7134  1 file changed, 26 insertions(+)
7135
7136 commit 9242d6b934710ca4001e8dc2a0f1f4bc4a738a63
7137 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7138 Date:   Wed Dec 9 18:10:52 2009 +0000
7139
7140     docs: Move RELEASING under docs/
7141
7142  RELEASING     |   56 --------------------------------------------------------
7143  doc/RELEASING |   56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7144  2 files changed, 56 insertions(+), 56 deletions(-)
7145
7146 commit 1ffd2ccb87a570733647e655e5e608ee05661c74
7147 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7148 Date:   Wed Dec 9 01:52:09 2009 +0000
7149
7150     stage: Deprecate default stage size macros
7151     
7152     The macros for getting the size of the default stage are a relic of the
7153     past and they should be deprecated.
7154
7155  clutter/clutter-stage.h |   36 ++++++++++++++----------------------
7156  1 file changed, 14 insertions(+), 22 deletions(-)
7157
7158 commit 34913378fb7aa84874bfda63648e9e0e02e40d8c
7159 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7160 Date:   Wed Dec 9 17:17:33 2009 +0000
7161
7162     tests: Use accessor methods for :use-alpha
7163     
7164     Instead of using g_object_set().
7165
7166  tests/interactive/test-paint-wrapper.c |    6 ++----
7167  1 file changed, 2 insertions(+), 4 deletions(-)
7168
7169 commit 1208e47198ea981b644bca2ce9beab3b59f05d0b
7170 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7171 Date:   Wed Dec 9 02:04:56 2009 +0000
7172
7173     stage: Add accessors for :use-alpha
7174     
7175     Use real accessors for the :use-alpha property.
7176
7177  clutter/clutter-stage.c                    |   53 ++++++++++++++++++++++++++--
7178  clutter/clutter-stage.h                    |    4 +++
7179  doc/reference/clutter/clutter-sections.txt |    2 ++
7180  3 files changed, 57 insertions(+), 2 deletions(-)
7181
7182 commit 3b075b6dc4197ed78f6386ee7e9a6e307839590f
7183 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7184 Date:   Wed Dec 9 01:46:52 2009 +0000
7185
7186     tests: Allow setting the stage opacity in test-paint-wrapper
7187     
7188     This allows testing the Stage:use-alpha property and the blending done
7189     by a compositor.
7190
7191  tests/interactive/test-paint-wrapper.c |   15 +++++++++++++++
7192  1 file changed, 15 insertions(+)
7193
7194 commit 3a3c815286daa55761787a49d7a33c6eb8c3d74d
7195 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7196 Date:   Wed Dec 9 01:46:09 2009 +0000
7197
7198     stage: Premultiply the stage color
7199     
7200     In case we are using Stage:use-alpha then we need to premultiply the
7201     stage color to get the correct blending from the compositor.
7202
7203  clutter/clutter-stage.c |    1 +
7204  1 file changed, 1 insertion(+)
7205
7206 commit e957e277b8a4893ce8c99e94402036d42a8b3748
7207 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7208 Date:   Tue Dec 8 18:24:30 2009 +0000
7209
7210     x11: Do not manage a foreign window
7211     
7212     If a Stage has been set to use a foreign Window then Clutter should not
7213     be managing it; calling XWithdrawWindow and XMapWindow should be
7214     reserved to the windows we manage ourselves.
7215
7216  clutter/x11/clutter-stage-x11.c |   23 ++++++++++++++---------
7217  1 file changed, 14 insertions(+), 9 deletions(-)
7218
7219 commit 28cb2cdab588ac361544538d4bb70a3e9bf24c81
7220 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7221 Date:   Mon Dec 7 19:00:55 2009 +0000
7222
7223     Remove clutter_set_default_text_direction()
7224     
7225     Setting the default text direction programmatically is wrong: it is a
7226     value dependent on the locale or by the environment.
7227
7228  clutter/clutter-actor.c                    |    3 ++-
7229  clutter/clutter-main.c                     |   32 ++++++++++++----------------
7230  clutter/clutter-main.h                     |    1 -
7231  doc/reference/clutter/clutter-sections.txt |    1 -
7232  4 files changed, 16 insertions(+), 21 deletions(-)
7233
7234 commit 3b9575baf8d254b7ba8b5faf56b14fbc6c3fde74
7235 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7236 Date:   Mon Dec 7 18:41:15 2009 +0000
7237
7238     Queue a relayout when the default text direction changes
7239     
7240     We need a relayout cycle if the default direction for the text changes
7241     while the main loop is running.
7242
7243  clutter/clutter-main.c |    8 +++++++-
7244  1 file changed, 7 insertions(+), 1 deletion(-)
7245
7246 commit 6a3f6a460e730b0067adfa1eac455246c8d6e8d8
7247 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7248 Date:   Mon Dec 7 17:35:17 2009 +0000
7249
7250     stage: Composite the opacity with the alpha channel
7251     
7252     The Stage's opacity should be composited with the alpha component of the
7253     Stage's background color.
7254
7255  clutter/clutter-stage.c |   20 +++++++++++---------
7256  1 file changed, 11 insertions(+), 9 deletions(-)
7257
7258 commit c4f27b1556b65464fd1f53749d32db9adab97942
7259 Author: Emmanuele Bassi <ebassi@gnome.org>
7260 Date:   Wed Oct 7 16:41:25 2009 +0100
7261
7262     actor: Add a NO_LAYOUT flag for actors
7263     
7264     Some actor implementation might avoid imposing any layout on their
7265     children. The Actor base class usually assumes some sort of layout
7266     management is in place, so it will queue relayouts when, for instance,
7267     an actor is shown or is hidden. If the parent of the actor does not
7268     impose any layout, though, showing or hiding one of its children will
7269     not affect the layout of the others.
7270     
7271     An example of this kind of container is ClutterGroup.
7272     
7273     By adding a new Actor flag, CLUTTER_ACTOR_NO_LAYOUT, and by making
7274     the Group actor set it on itself, the Actor base class can now decide
7275     whether or not to queue a relayout. The flag is not meant to be used
7276     by application code, and should only be set when implementing a new
7277     container.
7278     
7279     http://bugzilla.openedhand.com/show_bug.cgi?id=1838
7280
7281  clutter/clutter-actor.c |   37 +++++++++++++++++++++++++++----------
7282  clutter/clutter-actor.h |   15 ++++++++++-----
7283  clutter/clutter-group.c |    6 ++++++
7284  3 files changed, 43 insertions(+), 15 deletions(-)
7285
7286 commit 34b50934be581cde0ef2eba75f45aa36b1add14d
7287 Author: Neil Roberts <neil@linux.intel.com>
7288 Date:   Sat Dec 5 14:20:00 2009 +0000
7289
7290     cogl-material: Ensure mipmaps before doing anything else on a texture
7291     
7292     When the texture is in the atlas, ensuring the mipmaps can effectively
7293     make it become a completely different texture so we should do this
7294     before getting the GL handle.
7295
7296  clutter/cogl/cogl/cogl-material.c |   19 +++++++++++--------
7297  1 file changed, 11 insertions(+), 8 deletions(-)
7298
7299 commit 231cfffa1871806713928f7b4c599d904a813fb9
7300 Author: Neil Roberts <neil@linux.intel.com>
7301 Date:   Sat Dec 5 13:48:03 2009 +0000
7302
7303     cogl-atlas-texture: Remove textures from the atlas when mipmapping is required
7304     
7305     Mipmaps don't work very well in the current atlas because there is not
7306     enough padding between the textures. If ensure_mipmaps is called it
7307     will now create a new texture and migrate the atlased texture to
7308     it. It will use the same blit mechanism as when migrating so it will
7309     try to use an FBO for a fast blit. However if this is not possible it
7310     will end up downloading the data for the entire atlas which is not
7311     ideal.
7312
7313  clutter/cogl/cogl/cogl-atlas-texture.c |   66 +++++++++++++++++++++++++++-----
7314  1 file changed, 57 insertions(+), 9 deletions(-)
7315
7316 commit 6cf5ee2cbdad4bb71a065bb7e49a534ca7ba78ac
7317 Author: Neil Roberts <neil@linux.intel.com>
7318 Date:   Sat Dec 5 13:24:01 2009 +0000
7319
7320     cogl-atlas-texture: Try to do texture blits using an FBO
7321     
7322     When reorganizing the textures, we can avoid downloading the entire
7323     texture data if we bind the source texture in a framebuffer object and
7324     copy the destination using glCopyTexSubImage2D. This is also
7325     implemented using a much faster path in Mesa.
7326     
7327     Currently it is calling the GL framebuffer API directly but ideally it
7328     would use the Cogl offscreen API. However there is no way to tell Cogl
7329     not to create a stencil renderbuffer which seems like a waste in this
7330     situation.
7331     
7332     If FBOs are not available it will fallback to reading back the entire
7333     texture data as before.
7334
7335  clutter/cogl/cogl/cogl-atlas-texture.c |  198 +++++++++++++++++++++++++++-----
7336  1 file changed, 168 insertions(+), 30 deletions(-)
7337
7338 commit c51a31a2fc3f0f087a44cbccf1726c40fa581746
7339 Author: Neil Roberts <neil@linux.intel.com>
7340 Date:   Fri Dec 4 19:43:39 2009 +0000
7341
7342     cogl-atlas: Add a debug option to visualize the atlas
7343     
7344     This adds a 'dump-atlas-image' debug category. When enabled, CoglAtlas
7345     will use Cairo to create a png which visualizes the leaf rectangles of
7346     the atlas.
7347
7348  clutter/cogl/cogl/cogl-atlas.c |   76 ++++++++++++++++++++++++++++++++++++++++
7349  clutter/cogl/cogl/cogl-debug.c |    3 +-
7350  clutter/cogl/cogl/cogl-debug.h |    3 +-
7351  3 files changed, 80 insertions(+), 2 deletions(-)
7352
7353 commit 032d6e8aa00cd04a8084303a4942760ef5651a0c
7354 Author: Neil Roberts <neil@linux.intel.com>
7355 Date:   Fri Dec 4 18:55:53 2009 +0000
7356
7357     cogl-texture-atlas: Add some debugging notes
7358     
7359     This adds an 'atlas' category to the COGL_DEBUG environment
7360     variable. When enabled Cogl will display messages when textures are
7361     added to the atlas and when the atlas is reorganized.
7362
7363  clutter/cogl/cogl/cogl-atlas-texture.c |   62 ++++++++++++++++++++++++++++----
7364  clutter/cogl/cogl/cogl-debug.c         |    3 +-
7365  clutter/cogl/cogl/cogl-debug.h         |    3 +-
7366  3 files changed, 60 insertions(+), 8 deletions(-)
7367
7368 commit bc845e26d9cab75ecba69d12a937cf7d42bcaf71
7369 Author: Neil Roberts <neil@linux.intel.com>
7370 Date:   Fri Dec 4 18:24:15 2009 +0000
7371
7372     cogl-atlas-texture: Support reorganizing the atlas when it is full
7373     
7374     When space can't be found in the atlas for a new texture it will now
7375     try to reorganize the atlas to make space. A new CoglAtlas is created
7376     and all of the textures are readded in decreasing size order. If the
7377     textures still don't fit then the size of the atlas is doubled until
7378     either we find a space or we reach the texture size limits. If we
7379     successfully find an organization that fits then all of the textures
7380     will be migrated to a new texture. This involves copying the texture
7381     data into CPU memory and then uploading it again. Potentially it could
7382     eventually use a PBO or an FBO to transfer the image without going
7383     through the CPU.
7384     
7385     The algorithm for laying out the textures works a lot better if the
7386     rectangles are added in order so we might eventually want some API for
7387     creating multiple textures in one go to avoid reorganizing the atlas
7388     as far as possible.
7389
7390  clutter/cogl/cogl/cogl-atlas-texture.c |  315 ++++++++++++++++++++++++++++----
7391  1 file changed, 280 insertions(+), 35 deletions(-)
7392
7393 commit 1fb32167ec37f7b3bc8193258faa5963fe49569e
7394 Author: Neil Roberts <neil@linux.intel.com>
7395 Date:   Fri Dec 4 13:06:32 2009 +0000
7396
7397     cogl: Add an atlased texture backend
7398     
7399     This adds a CoglAtlas type which is a data structure that keeps track
7400     of unused sub rectangles of a larger rectangle. There is a new atlased
7401     texture backend which uses this to put multiple textures into a single
7402     larger texture.
7403     
7404     Currently the atlas is always sized 256x256 and the textures are never
7405     moved once they are put in. Eventually it needs to be able to
7406     reorganise the atlas and grow it if necessary. It also needs to
7407     migrate the textures out of the atlas if mipmaps are required.
7408
7409  clutter/cogl/cogl/Makefile.am                  |    4 +
7410  clutter/cogl/cogl/cogl-atlas-texture-private.h |   64 +++
7411  clutter/cogl/cogl/cogl-atlas-texture.c         |  488 ++++++++++++++++++++++
7412  clutter/cogl/cogl/cogl-atlas.c                 |  520 ++++++++++++++++++++++++
7413  clutter/cogl/cogl/cogl-atlas.h                 |   76 ++++
7414  clutter/cogl/cogl/cogl-context.c               |   14 +
7415  clutter/cogl/cogl/cogl-context.h               |    8 +
7416  clutter/cogl/cogl/cogl-texture.c               |   30 +-
7417  clutter/cogl/cogl/cogl-types.h                 |    3 +-
7418  9 files changed, 1194 insertions(+), 13 deletions(-)
7419
7420 commit b33b6287a1d3d3b07bbb845e79dfc4e2162c5c77
7421 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7422 Date:   Fri Dec 4 17:39:04 2009 +0000
7423
7424     tests: Clean up the BoxLayout interactive test
7425
7426  tests/interactive/test-box-layout.c |   27 ++++++++++++++++-----------
7427  1 file changed, 16 insertions(+), 11 deletions(-)
7428
7429 commit cf62b8fe4ab0d7cca360077843a9e213540e2c4d
7430 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7431 Date:   Fri Dec 4 17:38:26 2009 +0000
7432
7433     actor: Add debugging notes for size cache
7434     
7435     Add a note for cache hits, and another one for cache misses.
7436
7437  clutter/clutter-actor.c |    3 +++
7438  1 file changed, 3 insertions(+)
7439
7440 commit 9ccdf2eb02a0d0155e27d5f9270bca6b72c08359
7441 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7442 Date:   Fri Dec 4 16:54:22 2009 +0000
7443
7444     box: Add relative packing methods
7445     
7446     ClutterBox should provide some convenience functions to pack a new child
7447     at a given position, either an absolute index or relative to a sibling.
7448
7449  clutter/clutter-box.c                      |  221 +++++++++++++++++++++++-----
7450  clutter/clutter-box.h                      |   16 ++
7451  doc/reference/clutter/clutter-sections.txt |    3 +
7452  tests/interactive/test-bin-layout.c        |    1 -
7453  4 files changed, 203 insertions(+), 38 deletions(-)
7454
7455 commit c9b7efec96636e9368a8dfb76440d1b89c618c99
7456 Author: Johan Bilien <jobi@via.ecp.fr>
7457 Date:   Wed Nov 11 20:40:57 2009 -0500
7458
7459     Add a cache of size requests
7460     
7461     clutter_actor_get_preferred_width/height currently caches only one size
7462     requests, for a given height / width.
7463     
7464     It's common for a layout manager to call get_preferred_width with 2
7465     different heights during the same allocation cycle. Typically once in
7466     the size request, once in the allocation. If
7467     clutter_actor_get_preferred_width is called
7468     alternatively with 2 different for_height, the cache is totally
7469     inefficient, and we end up always querying the actor size even
7470     when the actor does not need a re-allocation.
7471     
7472     http://bugzilla.openedhand.com/show_bug.cgi?id=1876
7473     
7474     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
7475
7476  clutter/clutter-actor.c |  137 ++++++++++++++++++++++++++++++++++++++++-------
7477  1 file changed, 117 insertions(+), 20 deletions(-)
7478
7479 commit 18860eb16f36eb62b94aee353b4e2ace76e2fffa
7480 Author: Bastian Winkler <buz@netbuz.org>
7481 Date:   Thu Dec 3 15:38:05 2009 +0000
7482
7483     flow-layout: Use the natural size
7484     
7485     Fix a copy-and-paste thinko where the cell size was computed using the
7486     minimum size instead of the natural size. For actors with a minimum size
7487     of zero, like Textures, this implied always a zero allocation.
7488     
7489     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
7490
7491  clutter/clutter-flow-layout.c |    4 ++--
7492  1 file changed, 2 insertions(+), 2 deletions(-)
7493
7494 commit 6c3e1989e47b17f826d25704b2433ffecc6e83b9
7495 Author: Neil Roberts <neil@linux.intel.com>
7496 Date:   Thu Dec 3 14:46:20 2009 +0000
7497
7498     cogl-sub-texture: Fix the height of sub textures
7499     
7500     The code which is used to get the texture height was accidentally
7501     using the width due to a cut-and-paste fail.
7502
7503  clutter/cogl/cogl/cogl-sub-texture.c |    6 +++---
7504  1 file changed, 3 insertions(+), 3 deletions(-)
7505
7506 commit 97f8eed11917fa0d545dcb08d20841f6b501c878
7507 Author: Neil Roberts <neil@linux.intel.com>
7508 Date:   Fri Nov 27 18:45:36 2009 +0000
7509
7510     cogl: Add a CoglTexture2D backend
7511     
7512     This is an optimised version of CoglTexture2DSliced that always deals
7513     with a single texture and always uses the GL_TEXTURE_2D
7514     target. cogl_texture_new_from_bitmap now tries to use this backend
7515     first. If it can't create a texture with that size then it falls back
7516     the sliced backend.
7517     
7518     cogl_texture_upload_data_prepare has been split into two functions
7519     because the sliced backend needs to know the real internal format
7520     before the conversion is performed. Otherwise the converted bitmap
7521     will be wasted if the backend can't support the size.
7522
7523  clutter/cogl/cogl/Makefile.am               |    2 +
7524  clutter/cogl/cogl/cogl-texture-2d-private.h |   69 +++
7525  clutter/cogl/cogl/cogl-texture-2d.c         |  623 +++++++++++++++++++++++++++
7526  clutter/cogl/cogl/cogl-texture-private.h    |    9 +
7527  clutter/cogl/cogl/cogl-texture.c            |   75 +++-
7528  5 files changed, 755 insertions(+), 23 deletions(-)
7529
7530 commit f3df76d5129ba0ed7014c6aa52be7bee67c3f7aa
7531 Author: Neil Roberts <neil@linux.intel.com>
7532 Date:   Mon Nov 30 12:15:05 2009 +0000
7533
7534     cogl: Add _cogl_texture_driver_upload_to_gl
7535     
7536     This provides a way to upload the entire data for a texture without
7537     having to first call glTexImage and then glTexSubImage. This should be
7538     faster especially with indirect rendering where it would needlessy
7539     send the data for the texture twice.
7540
7541  clutter/cogl/cogl/cogl-texture-driver.h            |   14 ++++++
7542  clutter/cogl/cogl/driver/gl/cogl-texture-driver.c  |   26 +++++++++++
7543  .../cogl/cogl/driver/gles/cogl-texture-driver.c    |   47 ++++++++++++++++++++
7544  3 files changed, 87 insertions(+)
7545
7546 commit 19a19579ba72ea9ca4f6d406c035c3ad074fd442
7547 Author: Neil Roberts <neil@linux.intel.com>
7548 Date:   Fri Nov 27 16:59:51 2009 +0000
7549
7550     cogl: Move some of the texture_2d_sliced_new_* functions into cogl-texture
7551     
7552     new_from_data and new_from_file can be implemented in terms of
7553     new_from_bitmap so it makes sense to move these to cogl-texture rather
7554     than having to implement them in every texture backend.
7555
7556  clutter/cogl/cogl/cogl-texture-2d-sliced-private.h |   16 ----
7557  clutter/cogl/cogl/cogl-texture-2d-sliced.c         |   84 --------------------
7558  clutter/cogl/cogl/cogl-texture.c                   |   44 +++++++---
7559  3 files changed, 33 insertions(+), 111 deletions(-)
7560
7561 commit 27c4eb483d0ce219d80000613357c20fc25724e3
7562 Author: Neil Roberts <neil@linux.intel.com>
7563 Date:   Fri Nov 27 16:40:31 2009 +0000
7564
7565     cogl: Add a conformance test for sub textures
7566     
7567     This tests creating a sub texture from a larger texture using various
7568     different texture coordinates. It also tries to read back the texture
7569     data using cogl_texture_get_data.
7570
7571  tests/conform/Makefile.am             |    1 +
7572  tests/conform/test-cogl-sub-texture.c |  388 +++++++++++++++++++++++++++++++++
7573  tests/conform/test-conform-main.c     |    1 +
7574  3 files changed, 390 insertions(+)
7575
7576 commit 9752493272b39e6a8aeb1b8d667667d53de439fb
7577 Author: Neil Roberts <neil@linux.intel.com>
7578 Date:   Fri Nov 27 16:39:16 2009 +0000
7579
7580     cogl: Add a sub texture backend
7581     
7582     This adds a new texture backend which represents a sub texture of a
7583     larger texture. The texture is created with a reference to the full
7584     texture and a set of coordinates describing the region. The backend
7585     simply defers to the full texture for all operations and maps the
7586     coordinates to the other range. You can also use coordinates outside
7587     the range [0,1] to create a repeated version of the full texture.
7588     
7589     A new public API function called cogl_texture_new_from_sub_texture is
7590     available to create the sub texture.
7591
7592  clutter/cogl/cogl/Makefile.am                |    2 +
7593  clutter/cogl/cogl/cogl-sub-texture-private.h |   56 +++
7594  clutter/cogl/cogl/cogl-sub-texture.c         |  699 ++++++++++++++++++++++++++
7595  clutter/cogl/cogl/cogl-texture.c             |   15 +-
7596  clutter/cogl/cogl/cogl-texture.h             |   27 +
7597  doc/reference/cogl/cogl-sections.txt         |    1 +
7598  6 files changed, 798 insertions(+), 2 deletions(-)
7599
7600 commit 070a91f31176eb304031fc6dc2c374ef25f92a92
7601 Author: Neil Roberts <neil@linux.intel.com>
7602 Date:   Wed Dec 2 17:17:24 2009 +0000
7603
7604     cogl: Make the callback for foreach_sub_texture_in_region use const
7605     
7606     The CoglTextureSliceCallback function pointer now takes const pointers
7607     for the texture coordinates. This makes it clearer that the callback
7608     should not modify the array and therefore the backend can use the same
7609     array for both sets of coords.
7610
7611  clutter/cogl/cogl/cogl-journal-private.h |    2 +-
7612  clutter/cogl/cogl/cogl-journal.c         |    2 +-
7613  clutter/cogl/cogl/cogl-primitives.c      |   14 +++++++-------
7614  clutter/cogl/cogl/cogl-texture-private.h |    4 ++--
7615  4 files changed, 11 insertions(+), 11 deletions(-)
7616
7617 commit 1a1de0e278de7c06b528ae74a31580dfd576d041
7618 Author: Neil Roberts <neil@linux.intel.com>
7619 Date:   Wed Dec 2 13:41:49 2009 +0000
7620
7621     cogl: Add a texture utility function for manually repeating
7622     
7623     Given a region of texture coordinates this utility invokes a callback
7624     enough times to cover the region with a subregion that spans the
7625     texture at most once. Eg, if called with tx1 and tx2 as 0.5 and 3.0 it
7626     it would invoke the callback with:
7627     
7628     0.5,1.0  1.0,2.0  2.0,3.0
7629     
7630     Manual repeating is needed by all texture backends regardless of
7631     whether they can support hardware repeating because when Cogl calls
7632     the foreach_sub_texture_in_region method then it sets the wrap mode to
7633     GL_CLAMP_TO_EDGE and no hardware repeating is possible.
7634
7635  clutter/cogl/cogl/cogl-texture-private.h |   14 ++++
7636  clutter/cogl/cogl/cogl-texture.c         |  102 ++++++++++++++++++++++++++++++
7637  2 files changed, 116 insertions(+)
7638
7639 commit 5fcb29c91695bdbb2aec418ba1d2956ff23612a0
7640 Author: Neil Roberts <neil@linux.intel.com>
7641 Date:   Fri Nov 27 15:47:22 2009 +0000
7642
7643     cogl-primitives: Check for repeating after the coordinate transform
7644     
7645     In _cogl_multitexture_quad_single_primitive we use a wrap mode of
7646     GL_CLAMP_TO_EDGE if the texture coordinates are all in the range [0,1]
7647     or GL_REPEAT otherwise. This is to avoid pulling in pixels from either
7648     side when using GL_LINEAR filter mode and rendering the entire
7649     texture. Previously it was checking using the unconverted texture
7650     coordinates. This is ok unless the texture backend is radically
7651     transforming the texture coordinates, such as in the sub texture
7652     backend where the coordinates may map to something completely
7653     different. We now check whether the coordinates are in range after
7654     converting them.
7655
7656  clutter/cogl/cogl/cogl-primitives.c |   87 +++++++++++++++--------------------
7657  1 file changed, 37 insertions(+), 50 deletions(-)
7658
7659 commit 812d4d25bb28d8512c101701cf7cd06dc2dd95eb
7660 Author: Neil Roberts <neil@linux.intel.com>
7661 Date:   Thu Nov 26 18:58:17 2009 +0000
7662
7663     cogl: Move all of the fields from CoglTexture to CoglTexture2DSliced
7664     
7665     Most of the fields that were previously in CoglTexture are specific to
7666     the implementation of CoglTexture2DSliced so they should be placed
7667     there instead. For example, the 'mipmaps_dirty' flag is an
7668     implementation detail of the ensure_mipmaps function so it doesn't
7669     make sense to force all texture backends to have this function.
7670     
7671     Other fields such as width, height, gl_format and format may make
7672     sense for all textures but I've added them as virtual functions
7673     instead. This may make more sense for a sub-texture backend for
7674     example where it can calculate these based on the full texture.
7675
7676  clutter/cogl/cogl/cogl-texture-2d-sliced-private.h |   25 ++-
7677  clutter/cogl/cogl/cogl-texture-2d-sliced.c         |  204 +++++++++++---------
7678  clutter/cogl/cogl/cogl-texture-private.h           |   21 +-
7679  clutter/cogl/cogl/cogl-texture.c                   |   19 +-
7680  4 files changed, 149 insertions(+), 120 deletions(-)
7681
7682 commit 071dea2fbc307eca949f5f44c4ccb6c4dd73f789
7683 Author: Neil Roberts <neil@linux.intel.com>
7684 Date:   Thu Nov 26 17:32:52 2009 +0000
7685
7686     cogl: Move data only used for upload out of CoglTexture
7687     
7688     The CoglTexture struct previously contained some fields which are only
7689     used to upload data such as the CoglBitmap and the source GL
7690     format. These are now moved to a separate CoglTextureUploadData struct
7691     which only exists for the duration of one of the cogl_texture_*_new
7692     functions. In cogl-texture there are utility functions which operate
7693     on this new struct rather than on CoglTexture directly.
7694     
7695     Some of the fields that were previously stored in the CoglBitmap
7696     struct are now copied to the CoglTexture such as the width, height,
7697     format and internal GL format.
7698     
7699     The rowstride was previously stored in CoglTexture and this was
7700     publicly accessible with the cogl_texture_get_rowstride
7701     function. However this doesn't seem to be a useful function because
7702     there is no need to use the same rowstride again when uploading or
7703     downloading new data. Instead cogl_texture_get_rowstride now just
7704     calculates a suitable rowstride from the format and width of the
7705     texture.
7706
7707  clutter/cogl/cogl/cogl-texture-2d-sliced.c         |  344 ++++++++++----------
7708  clutter/cogl/cogl/cogl-texture-driver.h            |    6 +-
7709  clutter/cogl/cogl/cogl-texture-private.h           |   51 +--
7710  clutter/cogl/cogl/cogl-texture.c                   |   93 +++---
7711  clutter/cogl/cogl/driver/gl/cogl-texture-driver.c  |   14 +-
7712  .../cogl/cogl/driver/gles/cogl-texture-driver.c    |   16 +-
7713  6 files changed, 262 insertions(+), 262 deletions(-)
7714
7715 commit 7f58c14dcdbb5a6a24f17aacb784702dbaa468fb
7716 Author: Neil Roberts <neil@linux.intel.com>
7717 Date:   Wed Dec 2 21:54:22 2009 +0000
7718
7719     cogl: Use #ifdef GL around GL_TEXTURE_RECTANGLE_ARB
7720     
7721     Commit 558b17ee1e added support for rectangle textures to the
7722     framebuffer code. Under GLES there is no GL_TEXTURE_RECTANGLE_ARB
7723     definition so this was breaking the build. The rest of Cogl uses
7724     ifdef's around that constant so we should do the same here.
7725
7726  clutter/cogl/cogl/cogl-framebuffer.c |    7 +++++--
7727  1 file changed, 5 insertions(+), 2 deletions(-)
7728
7729 commit 59d84f7806e16b3d1fea5eed44a5d06d9772be23
7730 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7731 Date:   Wed Dec 2 16:03:55 2009 +0000
7732
7733     build: Fix CPP and LD flags
7734     
7735     • The debug flags are pre-processor ones, so they should be listed
7736       inside AM_CPPFLAGS.
7737     
7738     • Clutter's publicly exported symbols match the following regular
7739       expression:
7740     
7741         ^(clutter|cogl|json)_*
7742     
7743       The old one also listed "pango" as a possible prefix, but the
7744       Pango API is now under the Cogl namespace.
7745
7746  clutter/Makefile.am |    5 +++--
7747  1 file changed, 3 insertions(+), 2 deletions(-)
7748
7749 commit 17e3b526d569b6c8f33cd050acce107d5f1b057b
7750 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7751 Date:   Wed Dec 2 14:15:43 2009 +0000
7752
7753     docs: Document Clutter's threading model
7754     
7755     Be explicit on how to deal with threads and Clutter.
7756
7757  clutter/clutter-main.c |   56 ++++++++++++++++++++++++++++++++++++++++++++++++
7758  1 file changed, 56 insertions(+)
7759
7760 commit fc7bbf1abf732ba37fee8f12b5ed36e0b9a5fb95
7761 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7762 Date:   Wed Dec 2 14:15:19 2009 +0000
7763
7764     docs: Fix docbook syntax
7765     
7766     The <variablename> tag is really called <varname> in DocBook.
7767
7768  clutter/clutter-layout-manager.c |    9 ++++-----
7769  1 file changed, 4 insertions(+), 5 deletions(-)
7770
7771 commit 3c08c411d2ccd1523439c4f35427d266d1ef67dd
7772 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7773 Date:   Wed Dec 2 11:38:04 2009 +0000
7774
7775     docs: Annotate StageManager
7776     
7777     The ClutterStageManager instance structure is private, so we need a
7778     "floating" annotation.
7779
7780  clutter/clutter-stage-manager.h |    8 ++++++++
7781  1 file changed, 8 insertions(+)
7782
7783 commit 7a33b706a40719e1d123ccfa71c3d5c5d864fdea
7784 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7785 Date:   Wed Dec 2 11:37:13 2009 +0000
7786
7787     Remove a gtk-doc annotation
7788     
7789     The Mesa matrix code still has a comment that looks like a gtk-doc
7790     annotation.
7791
7792  clutter/cogl/cogl/cogl-matrix-mesa.c |    2 +-
7793  1 file changed, 1 insertion(+), 1 deletion(-)
7794
7795 commit 0270313121e9a02cb1f59de134ed724e6f8c0ae6
7796 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7797 Date:   Wed Dec 2 11:36:25 2009 +0000
7798
7799     layout: Add padding to LayoutMeta
7800     
7801     Add some padding to the LayoutMeta and LayoutMetaClass structures.
7802
7803  clutter/clutter-layout-meta.h |   18 +++++++++++++++++-
7804  1 file changed, 17 insertions(+), 1 deletion(-)
7805
7806 commit 02398c0cf13f8326a8fadf0536ce1ac1994901ee
7807 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7808 Date:   Tue Dec 1 18:16:48 2009 +0000
7809
7810     Remove unused variable 'lang'
7811     
7812     Fix a compiler warning.
7813
7814  clutter/clutter-main.c |    1 -
7815  1 file changed, 1 deletion(-)
7816
7817 commit cdba8cc220a8ef026ade2dfaa542ff94c92cd5ef
7818 Author: Rob Bradford <rob@linux.intel.com>
7819 Date:   Tue Dec 1 17:44:42 2009 +0000
7820
7821     flow-layout: Include the first line when calculating number of lines
7822     
7823     This ensures that the preferred height / width height takes into consideration
7824     the correct amount of padding
7825
7826  clutter/clutter-flow-layout.c |    6 ++++++
7827  1 file changed, 6 insertions(+)
7828
7829 commit c564303601f6cabdc3314070d225f74a3c6df174
7830 Author: Rob Bradford <rob@linux.intel.com>
7831 Date:   Tue Dec 1 17:11:08 2009 +0000
7832
7833     flow-layout: Respect row-spacing/col-spacine in horizontal/vertical flows
7834     
7835     We need to add the row-spacing value when calculating the y position for lines
7836     of actors in horizontal flowing layouts.
7837     
7838     Similarly we need to add the col-spacing value when calculating the x posution
7839     for actors in vertical flowing layouts.
7840
7841  clutter/clutter-flow-layout.c |    6 ++++++
7842  1 file changed, 6 insertions(+)
7843
7844 commit e6ca2d891a2c48c91db45a0c2f5ce84d5e6621e1
7845 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7846 Date:   Tue Dec 1 16:18:39 2009 +0000
7847
7848     glx: Always request an ARGB visual
7849     
7850     When requesting the GLXFBConfig for creating the GLX context, we should
7851     always request one that links to an ARGB visual instead of a plain RGB
7852     one.
7853     
7854     By using an ARGB visual we allow the ClutterStage:use-alpha property to
7855     work as intended when running Clutter under a compositing manager.
7856     
7857     The default behaviour of requesting an ARGB visual can be disabled by
7858     using the:
7859     
7860       CLUTTER_DISABLE_ARGB_VISUAL
7861     
7862     Environment variable.
7863
7864  clutter/glx/clutter-backend-glx.c |  128 +++++++++++++++++++++++++++++--------
7865  clutter/glx/clutter-backend-glx.h |    5 +-
7866  clutter/glx/clutter-glx.h         |    5 --
7867  clutter/glx/clutter-stage-glx.c   |   13 +---
7868  clutter/x11/clutter-backend-x11.c |   15 ++++-
7869  clutter/x11/clutter-x11.h         |    2 +
7870  6 files changed, 125 insertions(+), 43 deletions(-)
7871
7872 commit 2f7ff4d3e363a0568e4051ab67c0df6f745d06d2
7873 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7874 Date:   Tue Dec 1 16:16:18 2009 +0000
7875
7876     stage: Add :use-alpha property
7877     
7878     The ClutterStage:use-alpha property is used to let a stage know that it
7879     should honour the alpha component of the ClutterStage:color property.
7880     
7881     If :use-alpha is set to FALSE the stage always uses the full opacity
7882     when clearing itself before a paint(); otherwise, the alpha value is
7883     used.
7884
7885  clutter/clutter-stage.c |   38 +++++++++++++++++++++++++++++++++++---
7886  1 file changed, 35 insertions(+), 3 deletions(-)
7887
7888 commit 1d87ecc6a1be73e7d72c8c5ecb2b8268d5a0cd5e
7889 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7890 Date:   Tue Dec 1 16:22:45 2009 +0000
7891
7892     materials: Get the right blend function for alpha
7893     
7894     The correct blend function for the alpha channel is:
7895     
7896       GL_ONE, GL_ONE_MINUS_SRC_ALPHA
7897     
7898     As per bug 1406. This fix was dropped when the switch to premultiplied
7899     alpha was merged.
7900
7901  clutter/cogl/cogl/cogl-material.c |    2 +-
7902  1 file changed, 1 insertion(+), 1 deletion(-)
7903
7904 commit b43e804c078578e54b0ef9680a5d7b4bf53cafe8
7905 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7906 Date:   Tue Dec 1 16:06:57 2009 +0000
7907
7908     actor: Fix a pre-condition check in set_text_direction()
7909     
7910     The check is failing because the condition should be:
7911     
7912       text_dir != CLUTTER_TEXT_DIRECTION_DEFAULT
7913
7914  clutter/clutter-actor.c |    2 +-
7915  1 file changed, 1 insertion(+), 1 deletion(-)
7916
7917 commit 3e034cda58776a0fbc6812cd8d859ad58b5cab54
7918 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7919 Date:   Tue Dec 1 15:17:49 2009 +0000
7920
7921     build: More cleanups for the configure summary
7922     
7923     Document each section, and add some more items to the summary like what
7924     JSON-GLib are we using, and which version of the GLES API is COGL
7925     wrapping.
7926
7927  configure.ac |   27 ++++++++++++++++++++++-----
7928  1 file changed, 22 insertions(+), 5 deletions(-)
7929
7930 commit e3b409529e9000cff6aabac8efdaccc0eaecf83f
7931 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7932 Date:   Tue Dec 1 15:17:16 2009 +0000
7933
7934     build: Require a stable JSON-GLib version
7935     
7936     The 0.7 version is the development cycle for JSON-GLib 0.8.
7937
7938  configure.ac |    8 ++++----
7939  1 file changed, 4 insertions(+), 4 deletions(-)
7940
7941 commit 1c47638db4ac741f4bae9ede860d16b4e1693a36
7942 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7943 Date:   Tue Dec 1 14:59:44 2009 +0000
7944
7945     docs: Add missing symbols to clutter-sections.txt
7946
7947  doc/reference/clutter/clutter-sections.txt |    8 ++++++++
7948  1 file changed, 8 insertions(+)
7949
7950 commit 586750751a60b76e2f398be28d596009b6587c52
7951 Merge: c2332a5 6e99c1a
7952 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7953 Date:   Tue Dec 1 14:55:19 2009 +0000
7954
7955     Merge branch 'text-direction'
7956     
7957     * text-direction:
7958       docs: Add text-direction accessors
7959       Set the default language on the Pango context
7960       actor: Set text direction on parenting
7961       tests: Display the index inside text-box-layout
7962       box-layout: Honour :text-direction
7963       text: Dirty layout cache on text direction changes
7964       actor: Add :text-direction property
7965       Use the newly added ClutterTextDirection enumeration
7966       Add ClutterTextDirection enumeration
7967
7968 commit 6e99c1aefe8f76cb3004a8cc89ae6f8b95d1f597
7969 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7970 Date:   Tue Dec 1 14:55:01 2009 +0000
7971
7972     docs: Add text-direction accessors
7973
7974  doc/reference/clutter/clutter-sections.txt |    4 ++++
7975  1 file changed, 4 insertions(+)
7976
7977 commit c2332a5d26d854dcb4223088904305988b35a906
7978 Author: Bastian Winkler <buz@netbuz.org>
7979 Date:   Tue Dec 1 12:31:07 2009 +0000
7980
7981     build: Fix the SUBDIRS ordering
7982     
7983     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
7984
7985  Makefile.am |    4 +---
7986  1 file changed, 1 insertion(+), 3 deletions(-)
7987
7988 commit 220a8fbfda5bda38e6c7689176fd876c57074ab5
7989 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7990 Date:   Tue Dec 1 10:16:25 2009 +0000
7991
7992     docs: Move documentation under doc/
7993     
7994     Clean up the root directory of the project and try to keep the
7995     documentation all together.
7996
7997  CODING_STYLE         |  379 --------------------------------------------------
7998  HACKING              |   89 ------------
7999  HACKING.backends     |  160 ---------------------
8000  Makefile.am          |    3 -
8001  doc/CODING_STYLE     |  379 ++++++++++++++++++++++++++++++++++++++++++++++++++
8002  doc/HACKING          |   89 ++++++++++++
8003  doc/HACKING.backends |  160 +++++++++++++++++++++
8004  doc/Makefile.am      |    5 +
8005  8 files changed, 633 insertions(+), 631 deletions(-)
8006
8007 commit 348f5bfec8b8c0c682384001ac39b4e656b9c526
8008 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8009 Date:   Tue Dec 1 10:11:33 2009 +0000
8010
8011     cookbook: Clean up the text
8012     
8013     • Remove the empty sections.
8014     
8015     • Add the description for the "overriding the paint sequence" recipe.
8016
8017  doc/cookbook/clutter-cookbook.xml.in |  124 +++++++++++++++++++++++-----------
8018  1 file changed, 86 insertions(+), 38 deletions(-)
8019
8020 commit 52db14b78d848f0f876d4721895ccc2c83e06aba
8021 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8022 Date:   Mon Nov 30 21:51:46 2009 +0000
8023
8024     docs: Fix recursion into doc/ directory
8025     
8026     We should always recurse into the doc/ directory; whether we should then
8027     recurse into reference/, cookbook/ and manual/ is a matter of specific
8028     configure-time flags.
8029
8030  Makefile.am     |    6 +-----
8031  doc/Makefile.am |    6 +++++-
8032  2 files changed, 6 insertions(+), 6 deletions(-)
8033
8034 commit 5e1ccaeb603fb9f9b2b11cad13bbcf8682b33504
8035 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8036 Date:   Thu Sep 3 13:04:59 2009 +0100
8037
8038     docs: Clean up the additional documentation build
8039     
8040     • Make the manual a DevHelp book
8041     
8042     • Make the generation of PDFs of the cookbook and the manual optional
8043     
8044     • Consequently, make the hard dependency on jw optional
8045     
8046     • Clean up the checks and build for the additional documentation
8047
8048  .gitignore                           |    9 +-
8049  configure.ac                         |   41 +--
8050  doc/Makefile.am                      |    8 +-
8051  doc/common/Makefile.am               |    9 +
8052  doc/common/common.xsl                |   19 ++
8053  doc/common/devhelp.xsl               |  154 ++++++++++++
8054  doc/common/html.xsl                  |  285 +++++++++++++++++++++
8055  doc/common/ref-html-style.xsl        |   54 ++++
8056  doc/common/style.css                 |   97 ++++++++
8057  doc/cookbook/Makefile.am             |   30 ++-
8058  doc/cookbook/clutter-cookbook.xml    |  456 ---------------------------------
8059  doc/cookbook/clutter-cookbook.xml.in |  457 ++++++++++++++++++++++++++++++++++
8060  doc/cookbook/common.xsl              |   19 --
8061  doc/cookbook/cookbook.xsl            |   14 --
8062  doc/cookbook/devhelp.xsl             |  154 ------------
8063  doc/cookbook/html.xsl                |  285 ---------------------
8064  doc/cookbook/ref-html-style.xsl      |   54 ----
8065  doc/cookbook/style.css               |   97 --------
8066  doc/manual/Makefile.am               |   84 ++++---
8067  doc/manual/clutter-manual.xml.in     |    9 +-
8068  20 files changed, 1174 insertions(+), 1161 deletions(-)
8069
8070 commit ee9d358c452c8da879e7f40e4a2e701472067c04
8071 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8072 Date:   Wed Sep 2 18:11:06 2009 +0100
8073
8074     [cookbook] Build the Cookbook as a devhelp document
8075     
8076     Instead of creating stand-alone HTML files, use XSLT to transform the
8077     DocBook into a DevHelp file, so that we can read the Cookbook inside
8078     DevHelp -- just like the API reference.
8079
8080  configure.ac                    |    9 +-
8081  doc/cookbook/Makefile.am        |   83 ++++++------
8082  doc/cookbook/common.xsl         |   19 +++
8083  doc/cookbook/devhelp.xsl        |  154 +++++++++++++++++++++
8084  doc/cookbook/html.xsl           |  285 +++++++++++++++++++++++++++++++++++++++
8085  doc/cookbook/ref-html-style.xsl |   54 ++++++++
8086  6 files changed, 564 insertions(+), 40 deletions(-)
8087
8088 commit 9485ef81a61d8950b7f04e01c749964c6a64922c
8089 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8090 Date:   Wed Sep 2 13:13:44 2009 +0100
8091
8092     [cookbook] Fix folds
8093
8094  doc/cookbook/clutter-cookbook.xml |    5 +++--
8095  1 file changed, 3 insertions(+), 2 deletions(-)
8096
8097 commit 2675b829990eb0b6fb9bae848bd64fc4461324d2
8098 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8099 Date:   Thu Dec 11 17:03:10 2008 +0000
8100
8101     Update the ignore file
8102     
8103     Add the temporary and output files of the cookbook.
8104
8105  .gitignore |    5 +++++
8106  1 file changed, 5 insertions(+)
8107
8108 commit a7f7bfbc876a256f40fc0c3a43691b07bffeae96
8109 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8110 Date:   Thu Dec 11 17:02:05 2008 +0000
8111
8112     Add the secon recipe to the Actors chapter
8113     
8114     The second recipe shows how to use the ::paint signal to override
8115     the paint sequence of a pre-existing actor.
8116
8117  doc/cookbook/clutter-cookbook.xml |  153 +++++++++++++++++++++++++++++--------
8118  1 file changed, 122 insertions(+), 31 deletions(-)
8119
8120 commit 26b35e657f3fcf3ae8b919c4c315337f2261003f
8121 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8122 Date:   Thu Dec 11 17:00:16 2008 +0000
8123
8124     Add the first recipe to the Actors chapter
8125     
8126     The first recipe shows how to be notified when the relative position
8127     and size of an actor changes using the notify:: signal on the actor's
8128     dimensional and positional properties.
8129
8130  doc/cookbook/clutter-cookbook.xml |  128 ++++++++++++++++++++++++++++++++++---
8131  1 file changed, 120 insertions(+), 8 deletions(-)
8132
8133 commit 135cb5c6e21200162939dc5a42f0a34c4daf8a39
8134 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8135 Date:   Thu Dec 11 16:58:07 2008 +0000
8136
8137     Add a preface instead of an introduction
8138     
8139     Make the Cookbook look more like a book than a tutorial.
8140
8141  doc/cookbook/clutter-cookbook.xml |   64 +++++++++++++++++++++++++++++++++----
8142  1 file changed, 58 insertions(+), 6 deletions(-)
8143
8144 commit 35627f240fa498656492e437c130ffe34674ca54
8145 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8146 Date:   Thu Dec 11 16:57:46 2008 +0000
8147
8148     Add the Clutter Cookbook to the build
8149     
8150     The "Clutter Cookbook" is a document designed to contain solutions
8151     to common problems applications developers might encounter when using
8152     Clutter. It is meant as a companion to the API reference but it
8153     requires knowledge of the Clutter API and framework.
8154
8155  .gitignore                        |    1 +
8156  configure.ac                      |    2 +
8157  doc/cookbook/Makefile.am          |   71 +++++++++++++
8158  doc/cookbook/clutter-cookbook.xml |  200 +++++++++++++++++++++++++++++++++++++
8159  doc/cookbook/cookbook.xsl         |   14 +++
8160  doc/cookbook/style.css            |   97 ++++++++++++++++++
8161  doc/cookbook/version.xml.in       |    1 +
8162  7 files changed, 386 insertions(+)
8163
8164 commit 15a04a1dd39fd19f28132cbd3c22b49c05c0773b
8165 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8166 Date:   Mon Nov 30 19:03:11 2009 +0000
8167
8168     layout-manager: Create LayoutMeta on demand
8169     
8170     The ClutterLayoutMeta instances should be created on demand, whenever
8171     the layout manager needs them - if the layout manager supports layout
8172     properties.
8173     
8174     This removes the requirement to call add_child_meta() and
8175     remove_child_meta() on add and remove respectively; it also simplifies
8176     the implementation of LayoutManager sub-classes since we can add
8177     fallback code in the base abstract class.
8178     
8179     Eventually, this will also lead to an easier to implement ClutterScript
8180     parser for layout properties.
8181     
8182     With the new scheme, the ClutterLayoutMeta instance is created whenever
8183     the layout manager tries to access it; if there isn't an instance
8184     already attached to the container's child, one is created -- assuming
8185     that the LayoutManager sub-class has overridden the
8186     get_child_meta_type() virtual function and it's returning a valid GType.
8187     
8188     We can also provide a default implementation for create_child_meta(),
8189     by getting the GType and instantiating a ClutterLayoutMeta with all the
8190     fields already set. If the layout manager requires more work then it can
8191     obviously override the default implementation (and even chain up to it).
8192     
8193     The ClutterBox actor has been updated, as well as the ClutterBoxLayout
8194     layout manager, to take advantage of the changes of LayoutManager.
8195
8196  clutter/clutter-box-layout.c               |   13 --
8197  clutter/clutter-box.c                      |   10 --
8198  clutter/clutter-layout-manager.c           |  221 +++++++++-------------------
8199  clutter/clutter-layout-manager.h           |    8 +-
8200  doc/reference/clutter/clutter-sections.txt |    2 -
8201  5 files changed, 70 insertions(+), 184 deletions(-)
8202
8203 commit 7d842079ca7521332b98e7cc06480a3f7e23110f
8204 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8205 Date:   Mon Nov 30 18:22:26 2009 +0000
8206
8207     conform: Add named object property unit for ClutterScript
8208     
8209     We should exercise the resolution of the object properties containing a
8210     string pointing to an object previously defined using ClutterScript.
8211
8212  .gitignore                               |    1 +
8213  tests/conform/test-conform-main.c        |    1 +
8214  tests/conform/test-script-parser.c       |   28 ++++++++++++++++++++++++++++
8215  tests/data/Makefile.am                   |   18 ++++++++++++++----
8216  tests/data/test-script-named-object.json |   22 ++++++++++++++++++++++
8217  5 files changed, 66 insertions(+), 4 deletions(-)
8218
8219 commit c3e640e6e36d3d3c72c1e340efa78817308a4283
8220 Author: Neil Roberts <neil@linux.intel.com>
8221 Date:   Mon Nov 30 19:06:05 2009 +0000
8222
8223     Use the correct colour when clearing the stage for picking
8224     
8225     The colour test for the stage in _clutter_do_pick checks for white to
8226     determine whether the stage was picked but since 47db7af4d we were
8227     setting the colur to black. This usually worked because the id of the
8228     default stage ends up being 0 which equates to black. However if a
8229     second stage is created then it will always end up picking the first
8230     stage.
8231
8232  clutter/clutter-main.c |    2 +-
8233  1 file changed, 1 insertion(+), 1 deletion(-)
8234
8235 commit 1bb034fbd75bb7153f35c88b05ed0fb9544d0c8b
8236 Author: Neil Roberts <neil@linux.intel.com>
8237 Date:   Sun Nov 29 20:06:36 2009 +0000
8238
8239     cogl: Enable blending if a lighting colour is semi-transparent
8240     
8241     We currently enable blending if the material colour has
8242     transparency. This patch makes it also enable blending if any of the
8243     lighting colours have transparency. Arguably this isn't neccessary
8244     because we don't expose any API to enable lighting so there is no
8245     bug. However it is currently possible to enable lighting with a direct
8246     call to glEnable and this otherwise works so it is a shame not to have
8247     it.
8248     
8249     http://bugzilla.openedhand.com/show_bug.cgi?id=1907
8250
8251  clutter/cogl/cogl/cogl-material.c |   14 +++++++++++++-
8252  1 file changed, 13 insertions(+), 1 deletion(-)
8253
8254 commit 3cb974ee8be182944848b5e64dd4724f118bc8fa
8255 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8256 Date:   Mon Nov 30 16:15:19 2009 +0000
8257
8258     Set the default language on the Pango context
8259     
8260     When creating the Pango context we should also set the language
8261     to be the default Pango language.
8262
8263  clutter/clutter-main.c |    2 ++
8264  1 file changed, 2 insertions(+)
8265
8266 commit daeb3b2fecb3d740b6d84215928fc4477396dc71
8267 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8268 Date:   Mon Nov 30 16:14:09 2009 +0000
8269
8270     actor: Set text direction on parenting
8271     
8272     When setting the parent on an actor we should set the text direction to
8273     be the same as the parent's.
8274
8275  clutter/clutter-actor.c |   12 ++++++++----
8276  1 file changed, 8 insertions(+), 4 deletions(-)
8277
8278 commit 0ce5c7d350c8b904ed8cc15c911e6433619c6a2d
8279 Author: Damien Lespiau <damien.lespiau@intel.com>
8280 Date:   Mon Nov 30 13:26:45 2009 +0100
8281
8282     gitignore: update gitignore files to match the latest cogl tests
8283     
8284     Some cogl tests were renamed in c1247066 to have 'cogl' in their names.
8285     It's a good excuse to merge .gitigore and tests/.gitignore.
8286
8287  .gitignore       |   21 +++++++++++++--------
8288  tests/.gitignore |   52 ----------------------------------------------------
8289  2 files changed, 13 insertions(+), 60 deletions(-)
8290
8291 commit 4f06d035a2895b2839ba0e97109e8a44c1ad07e2
8292 Author: Damien Lespiau <damien.lespiau@intel.com>
8293 Date:   Wed Nov 25 13:29:26 2009 +0100
8294
8295     tests: fix argument parsing of test-texture-quality
8296     
8297     This test did not open redhand.png as argc/argv should be handled
8298     normally (argv[0] being the name of the exectutable).
8299     
8300     Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
8301
8302  tests/interactive/test-texture-quality.c |    4 ++--
8303  1 file changed, 2 insertions(+), 2 deletions(-)
8304
8305 commit e4180b283836ccd665d23d1e19d35a8911c40436
8306 Author: Damien Lespiau <damien.lespiau@intel.com>
8307 Date:   Wed Nov 25 13:25:14 2009 +0100
8308
8309     tests: give all the arguments to the wrapper
8310     
8311     Some tests can be given extra arguments. The test-interactive dispatch
8312     mechanism handles that but the small shell scripts around the wrapper
8313     do not forward the arguments to the wrapper.
8314     
8315     Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
8316
8317  tests/interactive/Makefile.am |    5 +++--
8318  1 file changed, 3 insertions(+), 2 deletions(-)
8319
8320 commit 934eb5d251ad9d9987d0ff1f0f9878fffc2484f1
8321 Author: Robert Bragg <robert@linux.intel.com>
8322 Date:   Fri Nov 27 15:24:09 2009 +0000
8323
8324     primitives: Don't use dynamic arrays since VS2008 can't cope with them :-(
8325     
8326     This changes _cogl_path_fill_nodes_scanlines to use g_alloca instead of
8327     using a variable to declare an array length.
8328
8329  clutter/cogl/cogl/cogl-primitives.c |    2 +-
8330  1 file changed, 1 insertion(+), 1 deletion(-)
8331
8332 commit 47db7af4d3001387a3c7adc60f6c3166c149ab5d
8333 Author: Robert Bragg <robert@linux.intel.com>
8334 Date:   Wed Nov 25 20:37:01 2009 +0000
8335
8336     picking: avoid redundant picking geometry for the stage.
8337     
8338     The stage's pick id can be written to the framebuffer when we call
8339     cogl_clear so there's no need for the stage to also chain up in it's pick
8340     function resulting in clutter-actor.c also emitting a rectangle for the
8341     stage.
8342
8343  clutter/clutter-main.c  |    6 +++---
8344  clutter/clutter-stage.c |   12 +++++++-----
8345  2 files changed, 10 insertions(+), 8 deletions(-)
8346
8347 commit c12470666e6bd63024437a389cd2c1202df93c33
8348 Author: Robert Bragg <robert@linux.intel.com>
8349 Date:   Fri Nov 27 00:28:39 2009 +0000
8350
8351     tests: rename cogl conformance tests so they can be clearly identified
8352     
8353     All Cogl conformance tests are now prefixed 'test-cogl-'
8354
8355  tests/conform/Makefile.am                          |   24 +-
8356  tests/conform/test-backface-culling.c              |  339 ----------------
8357  tests/conform/test-blend-strings.c                 |  416 --------------------
8358  tests/conform/test-clutter-fixed.c                 |   18 -
8359  tests/conform/test-cogl-backface-culling.c         |  339 ++++++++++++++++
8360  tests/conform/test-cogl-blend-strings.c            |  416 ++++++++++++++++++++
8361  tests/conform/test-cogl-fixed.c                    |   18 +
8362  tests/conform/test-cogl-materials.c                |  195 +++++++++
8363  tests/conform/test-cogl-npot-texture.c             |  230 +++++++++++
8364  tests/conform/test-cogl-premult.c                  |  390 ++++++++++++++++++
8365  tests/conform/test-cogl-vertex-buffer-contiguous.c |  269 +++++++++++++
8366  tests/conform/test-cogl-vertex-buffer-interleved.c |  174 ++++++++
8367  tests/conform/test-cogl-vertex-buffer-mutability.c |  211 ++++++++++
8368  tests/conform/test-conform-main.c                  |   34 +-
8369  tests/conform/test-materials.c                     |  195 ---------
8370  tests/conform/test-npot-texture.c                  |  230 -----------
8371  tests/conform/test-premult.c                       |  390 ------------------
8372  tests/conform/test-vertex-buffer-contiguous.c      |  269 -------------
8373  tests/conform/test-vertex-buffer-interleved.c      |  174 --------
8374  tests/conform/test-vertex-buffer-mutability.c      |  211 ----------
8375  20 files changed, 2272 insertions(+), 2270 deletions(-)
8376
8377 commit 439f8c62b0e2651b9afeb08cb5166ed9e7f49521
8378 Author: Robert Bragg <robert@linux.intel.com>
8379 Date:   Thu Nov 26 19:06:35 2009 +0000
8380
8381     cogl: deprecate cogl_draw_buffer API and replace with a cogl_framebuffer API
8382     
8383     cogl_push_draw_buffer, cogl_set_draw_buffer and cogl_pop_draw_buffer are now
8384     deprecated and new code should use the new cogl_framebuffer_* API instead.
8385     
8386     Code that previously did:
8387         cogl_push_draw_buffer ();
8388         cogl_set_draw_buffer (COGL_OFFSCREEN_BUFFER, buffer);
8389         /* draw */
8390         cogl_pop_draw_buffer ();
8391     should now be re-written as:
8392         cogl_push_framebuffer (buffer);
8393         /* draw */
8394         cogl_pop_framebuffer ();
8395     
8396     As can be seen from the example above the rename has been used as an
8397     opportunity to remove the redundant target argument from
8398     cogl_set_draw_buffer; it now only takes one call to redirect to an offscreen
8399     buffer, and finally the term framebuffer may be a bit more familiar to
8400     anyone coming from an OpenGL background.
8401
8402  README                                       |   13 +
8403  clutter/clutter-texture.c                    |   15 +-
8404  clutter/cogl/cogl/Makefile.am                |    4 +-
8405  clutter/cogl/cogl/cogl-clip-stack.c          |   74 +--
8406  clutter/cogl/cogl/cogl-context.c             |   13 +-
8407  clutter/cogl/cogl/cogl-context.h             |    4 +-
8408  clutter/cogl/cogl/cogl-draw-buffer-private.h |  133 ------
8409  clutter/cogl/cogl/cogl-draw-buffer.c         |  603 -------------------------
8410  clutter/cogl/cogl/cogl-framebuffer-private.h |  124 ++++++
8411  clutter/cogl/cogl/cogl-framebuffer.c         |  618 ++++++++++++++++++++++++++
8412  clutter/cogl/cogl/cogl-journal.c             |   12 +-
8413  clutter/cogl/cogl/cogl-matrix-stack.c        |    6 +-
8414  clutter/cogl/cogl/cogl-primitives.c          |   30 +-
8415  clutter/cogl/cogl/cogl-texture.c             |   12 +-
8416  clutter/cogl/cogl/cogl-vertex-buffer.c       |    6 +-
8417  clutter/cogl/cogl/cogl.c                     |   80 ++--
8418  clutter/cogl/cogl/cogl.h                     |   73 ++-
8419  doc/reference/cogl/cogl-sections.txt         |    3 +
8420  tests/conform/test-backface-culling.c        |    7 +-
8421  tests/conform/test-cogl-offscreen.c          |   33 +-
8422  tests/conform/test-cogl-readpixels.c         |   45 +-
8423  tests/conform/test-cogl-viewport.c           |   90 ++--
8424  tests/interactive/test-cogl-offscreen.c      |    4 +-
8425  23 files changed, 1035 insertions(+), 967 deletions(-)
8426
8427 commit b598210e011f6711848e649217ac7a35770bfe8e
8428 Author: Robert Bragg <robert@linux.intel.com>
8429 Date:   Thu Nov 26 17:47:17 2009 +0000
8430
8431     cogl_offscreen: deprecate cogl_offscreen_ref/unref.
8432     
8433     New code should use cogl_handle_ref/unref
8434
8435  clutter/cogl/cogl/cogl-offscreen.h |   34 +++++++++++++++++++++-------------
8436  1 file changed, 21 insertions(+), 13 deletions(-)
8437
8438 commit e12a691187a7dbbcfe5b46b94fe2975fd0927966
8439 Author: Neil Roberts <neil@linux.intel.com>
8440 Date:   Wed Nov 25 13:39:45 2009 +0000
8441
8442     cogl: Use a vtable for the texture backends instead of a type and switch
8443     
8444     Instead of storing an enum with the backend type for each texture and
8445     then using a switch statement to decide which function to call, we
8446     should store pointers to all of the functions in a struct and have
8447     each texture point to that struct. This is potentially slightly faster
8448     when there are more backends and it makes implementing new backends
8449     easier because it's more obvious which functions have to be
8450     implemented.
8451
8452  clutter/cogl/cogl/cogl-texture-2d-sliced-private.h |   62 ----------
8453  clutter/cogl/cogl/cogl-texture-2d-sliced.c         |  122 +++++++++----------
8454  clutter/cogl/cogl/cogl-texture-private.h           |   97 +++++++++++----
8455  clutter/cogl/cogl/cogl-texture.c                   |  124 ++++----------------
8456  4 files changed, 154 insertions(+), 251 deletions(-)
8457
8458 commit 558b17ee1e71fb0fe7aea35e13cd5a73b18130dc
8459 Author: Robert Bragg <robert@linux.intel.com>
8460 Date:   Wed Nov 25 02:47:52 2009 +0000
8461
8462     offscreen: cogl_offscreen_new_to_texture now supports GL_TEXTURE_RECTANGLE_ARB
8463     
8464     cogl_offscreen_new_to_texture previously bailed out if the given texture's
8465     GL target was anything but GL_TEXTURE_2D, but it now also allows
8466     foreign GL_TEXTURE_RECTANGLE_ARB textures.
8467     
8468     Thanks to Owen for reporting this issue, ref:
8469     https://bugzilla.gnome.org/show_bug.cgi?id=601032
8470
8471  clutter/cogl/cogl/cogl-draw-buffer.c |    3 ++-
8472  1 file changed, 2 insertions(+), 1 deletion(-)
8473
8474 commit d3a01e0c96237ca060e3451d2b80e692dfb3b8f6
8475 Author: Robert Bragg <robert@linux.intel.com>
8476 Date:   Tue Nov 24 18:24:07 2009 +0000
8477
8478     debug: remove the COGL_DEBUG=client-side-matrices option
8479     
8480     Cogl only supports client side matrices so this debug option is no longer
8481     useful.
8482
8483  clutter/cogl/cogl/cogl-debug.c |    1 -
8484  clutter/cogl/cogl/cogl-debug.h |   13 ++++++-------
8485  2 files changed, 6 insertions(+), 8 deletions(-)
8486
8487 commit b38c6b420f0ae1f118189bd0a8994fce479aef7b
8488 Author: Robert Bragg <robert@linux.intel.com>
8489 Date:   Wed Nov 11 12:50:48 2009 +0000
8490
8491     [cogl-material] Adds cogl_material_copy() API
8492     
8493     cogl_material_copy can be used to create a new CoglHandle referencing a copy
8494     of some given material.
8495     
8496     From now on we will advise that developers always aim to use this function
8497     instead of cogl_material_new() when creating a material that is in any way
8498     derived from another.
8499     
8500     By using cogl_material_copy, Cogl can maintain an ancestry for each material
8501     and keep track of "similar" materials.  The plan is that Cogl will use this
8502     information to minimize the cost of GPU state transitions.
8503
8504  README                                    |    5 +++
8505  clutter/cogl/cogl/cogl-context.c          |   13 ++++--
8506  clutter/cogl/cogl/cogl-context.h          |    4 +-
8507  clutter/cogl/cogl/cogl-material-private.h |    9 +++++
8508  clutter/cogl/cogl/cogl-material.c         |   62 ++++++++++++++++++++++++-----
8509  clutter/cogl/cogl/cogl-material.h         |   18 +++++++++
8510  clutter/cogl/cogl/cogl.c                  |    6 +--
8511  7 files changed, 100 insertions(+), 17 deletions(-)
8512
8513 commit 70ca3bfe4173aabd352fd0aed484c0bab57a8d02
8514 Author: Robert Bragg <robert@linux.intel.com>
8515 Date:   Wed Nov 11 12:52:08 2009 +0000
8516
8517     [cogl] remove unused gles/cogl-utils.[c,h]
8518     
8519     The only function in gles/cogl-utils.c was cogl_util_next_p2() and it's
8520     redundant since we also have a cogl/cogl-utils.[c,h]
8521
8522  clutter/cogl/cogl/driver/gles/cogl-util.c |   49 -----------------------------
8523  clutter/cogl/cogl/driver/gles/cogl-util.h |   30 ------------------
8524  2 files changed, 79 deletions(-)
8525
8526 commit 4a63af0c631cd9391a6b3cef6fdb545e36a68730
8527 Author: Robert Bragg <robert@linux.intel.com>
8528 Date:   Mon Nov 23 11:30:32 2009 +0000
8529
8530     docs: Don't document cogl_flush_gl_state as public API
8531     
8532     This function was #if 0'd before we released Clutter 1.0 so there's no
8533     implementation of it.  At some point we thought it might assist with
8534     developers breaking out into raw OpenGL.  Breaking out to raw GL is a
8535     difficult problem though so we decided instead we will wait for a specific
8536     use case to arrise before trying to support it.
8537
8538  clutter/cogl/cogl/cogl.c             |    8 --------
8539  clutter/cogl/cogl/cogl.h             |   22 ----------------------
8540  doc/reference/cogl/cogl-sections.txt |    1 -
8541  3 files changed, 31 deletions(-)
8542
8543 commit 328ce370e7a7f155f63ee8206e8b6cd4e66a6c94
8544 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8545 Date:   Tue Nov 24 16:59:24 2009 +0000
8546
8547     animation: Keep a weak reference on actors
8548     
8549     Actors, unlike objects, can effectively go away whilst being
8550     animated - usually because of an explicit destoy().
8551     
8552     The Animation created by clutter_actor_animate() and friends
8553     should keep a weak reference on the actor and eventually
8554     get rid of the animation itself in case the actor goes away
8555     whilst being animated.
8556
8557  clutter/clutter-animation.c |   13 +++++++++++++
8558  1 file changed, 13 insertions(+)
8559
8560 commit 1107fa8797b0d2475097c20b50065dbc3ae014a1
8561 Author: Neil Roberts <neil@linux.intel.com>
8562 Date:   Thu Nov 19 16:07:38 2009 +0000
8563
8564     Minor fix to cogl material
8565     
8566     _cogl_material_get_layer expects a CoglMaterial* pointer but it was
8567     being called with a CoglHandle. This doesn't matter because the
8568     CoglHandle is actually just the CoglMaterial* pointer anyway but it
8569     breaks the ability to change the _cogl_material_pointer_from_handle
8570     macro.
8571
8572  clutter/cogl/cogl/cogl-material.c |    2 +-
8573  1 file changed, 1 insertion(+), 1 deletion(-)
8574
8575 commit 6fd80ffbd926318413296112871891706867cd78
8576 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8577 Date:   Thu Nov 19 14:30:01 2009 +0000
8578
8579     docs: Add indices to the Cogl API reference
8580     
8581     The Clutter API reference has an index of the symbols for each minor
8582     version, and a list of deprecated symbols. The Cogl API reference
8583     should have the same layout.
8584
8585  doc/reference/cogl/cogl-docs.xml.in |   23 ++++++++++++++++++++++-
8586  1 file changed, 22 insertions(+), 1 deletion(-)
8587
8588 commit 8d64c4641dbf9dfb09d2719872911263d2b758dc
8589 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8590 Date:   Thu Nov 19 13:55:10 2009 +0000
8591
8592     docs: Increase consistency in Cogl documentation
8593
8594  clutter/cogl/cogl/cogl-texture.h       |   66 +++++++++-------
8595  clutter/cogl/cogl/cogl-vertex-buffer.h |  134 +++++++++++++++++---------------
8596  clutter/cogl/cogl/cogl.h               |   90 +++++++++++----------
8597  3 files changed, 157 insertions(+), 133 deletions(-)
8598
8599 commit 550c14449e090f7921cdddc6acedb1bd72552663
8600 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8601 Date:   Thu Nov 19 13:33:26 2009 +0000
8602
8603     docs: Documentation fixes for CoglMatrix
8604     
8605     Clean up the references, the docbook tags, and the style to fit in
8606     with the rest of the API references for Cogl and Clutter.
8607
8608  clutter/cogl/cogl/cogl-matrix.h |  136 +++++++++++++++++++--------------------
8609  1 file changed, 68 insertions(+), 68 deletions(-)
8610
8611 commit 056cfcffc312f9508f07c82e41d96c606559db97
8612 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8613 Date:   Thu Nov 19 13:33:08 2009 +0000
8614
8615     Whitespace fix for cogl-color.h
8616
8617  clutter/cogl/cogl/cogl-color.h |    3 ++-
8618  1 file changed, 2 insertions(+), 1 deletion(-)
8619
8620 commit 851d628cf8fe89ab28d66f790ad98db766831e37
8621 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8622 Date:   Thu Nov 19 13:31:38 2009 +0000
8623
8624     docs: Documentation fixes for CoglMaterial
8625     
8626     Clean up the references, the docbook tags, and the style to fit in
8627     with the rest of the API references for Cogl and Clutter.
8628
8629  clutter/cogl/cogl/cogl-material.h |  404 +++++++++++++++++++------------------
8630  1 file changed, 205 insertions(+), 199 deletions(-)
8631
8632 commit fe804f1d023b50801d400971bf311545727921e9
8633 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8634 Date:   Thu Nov 19 13:29:02 2009 +0000
8635
8636     docs: Documentation fixes for CoglBitmap
8637     
8638     • Use the same style for the Cogl API reference as the one used for
8639       the Clutter API reference.
8640     
8641     • Fix the introspection annotations for cogl_bitmap_get_size_from_file()
8642
8643  clutter/cogl/cogl/cogl-bitmap.h |   25 +++++++++++++------------
8644  1 file changed, 13 insertions(+), 12 deletions(-)
8645
8646 commit 1bf8db9e75c6155bb852980cb40a9117c6190500
8647 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8648 Date:   Thu Nov 19 12:34:06 2009 +0000
8649
8650     docs: Fix Cogl API reference build
8651     
8652     • Ignore all the private header files
8653     
8654     • Add all missing/unused symbols
8655     
8656     • Remove deprecated symbols from 0.*
8657
8658  doc/reference/cogl/Makefile.am       |   30 ++++++++++++++++++++++--------
8659  doc/reference/cogl/cogl-sections.txt |   29 ++++++++++++++++++++++++-----
8660  2 files changed, 46 insertions(+), 13 deletions(-)
8661
8662 commit 05a5a7e759455a98233ea86016edf86d6d17be36
8663 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8664 Date:   Thu Nov 19 12:32:59 2009 +0000
8665
8666     docs: Remove non-gtk-doc annotations
8667     
8668     The imported Mesa matrix code has some documentation annotations
8669     that make gtk-doc very angry. Since it's all private anyway we
8670     can safely make gtk-doc ignore the offending stuff.
8671
8672  clutter/cogl/cogl/cogl-matrix-mesa.c |  136 +++++++++++++++++-----------------
8673  clutter/cogl/cogl/cogl-matrix-mesa.h |   12 +--
8674  2 files changed, 74 insertions(+), 74 deletions(-)
8675
8676 commit 7a011af97406c0075cc32eb2fbe4a07dc3d828c2
8677 Author: Neil Roberts <neil@linux.intel.com>
8678 Date:   Thu Nov 19 11:51:21 2009 +0000
8679
8680     docs: Fix the 'Since' annotation for some functions
8681     
8682     The 'Since' annotation needs to have a colon after it or gtk-doc won't
8683     pick it up.
8684
8685  clutter/clutter-behaviour-path.h         |    2 +-
8686  clutter/clutter-text.c                   |    2 +-
8687  clutter/cogl/cogl/cogl-material.h        |   40 +++++++++++++++---------------
8688  clutter/cogl/cogl/cogl-texture.h         |    6 ++---
8689  clutter/cogl/cogl/cogl.h                 |    4 +--
8690  clutter/x11/clutter-x11-texture-pixmap.c |    4 +--
8691  6 files changed, 29 insertions(+), 29 deletions(-)
8692
8693 commit 8ef57898ad66af345946a1f69172fc8be7038def
8694 Author: Neil Roberts <neil@linux.intel.com>
8695 Date:   Wed Nov 18 19:09:10 2009 +0000
8696
8697     cogl: Use APIENTRY for GL function pointer declarations
8698     
8699     This matters for platforms such as Windows that use a different
8700     calling covention from the default for GL functions.
8701
8702  clutter/cogl/cogl/driver/gl/cogl-context-driver.h   |    6 +++++-
8703  clutter/cogl/cogl/driver/gles/cogl-context-driver.h |    6 +++++-
8704  2 files changed, 10 insertions(+), 2 deletions(-)
8705
8706 commit be58e5261f3b0c6a760577f67f2859511d6e52f2
8707 Author: Neil Roberts <neil@linux.intel.com>
8708 Date:   Wed Nov 18 19:23:57 2009 +0000
8709
8710     build: Fix out-of-tree builds for cogl-defines.h
8711     
8712     $(COGL_DRIVER)/cogl-defines.h is generated in the configure script so
8713     it ends up in the build directory. Therefore the build rule for
8714     cogl/cogl-defines.h should depend on the file in $(builddir) not
8715     $(srcdir).
8716
8717  clutter/cogl/cogl/Makefile.am |    4 ++--
8718  1 file changed, 2 insertions(+), 2 deletions(-)
8719
8720 commit 19e485325faa59d44556dd6dac9543fb616e680b
8721 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8722 Date:   Wed Nov 18 18:04:13 2009 +0000
8723
8724     docs: Clean up deprecation notices
8725     
8726     The deprecation notices in gtk-doc should also refer to the
8727     release that added the deprecation, and if the deprecated
8728     symbol has been replaced by something else then the new symbol
8729     should be correctly referenced.
8730
8731  clutter/cogl/cogl/cogl.h |   46 +++++++++++++++++++++++-----------------------
8732  1 file changed, 23 insertions(+), 23 deletions(-)
8733
8734 commit 5f28c8b654094e27112426c206cf8294428515f9
8735 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8736 Date:   Wed Nov 18 17:35:07 2009 +0000
8737
8738     build: Make cogl.h not conditional on driver defines
8739     
8740     The main COGL header cogl.h is currently created at configure time
8741     because it conditionally includes the driver-dependent defines. This
8742     sometimes leads to a stale cogl.h with old definitions which can
8743     break the build until you clean out the whole tree and start from
8744     scratch.
8745     
8746     We can generate a stable cogl-defines.h at build time from the
8747     equivalent driver-dependent header and let cogl.h include that
8748     file instead.
8749
8750  .gitignore                    |    7 +-
8751  clutter/cogl/cogl/Makefile.am |   18 +-
8752  clutter/cogl/cogl/cogl.h      |  991 +++++++++++++++++++++++++++++++++++++++++
8753  clutter/cogl/cogl/cogl.h.in   |  991 -----------------------------------------
8754  configure.ac                  |    5 +-
8755  5 files changed, 1008 insertions(+), 1004 deletions(-)
8756
8757 commit b869e87c86b73a8c09c5f509955a120978da7604
8758 Author: Neil Roberts <neil@linux.intel.com>
8759 Date:   Wed Nov 18 17:16:38 2009 +0000
8760
8761     test-npot-texture: Add some verbose notes
8762     
8763     This just adds some verbose output stating whether Cogl thinks that
8764     NPOT textures are supported.
8765
8766  tests/conform/test-npot-texture.c |   16 ++++++++++++++++
8767  1 file changed, 16 insertions(+)
8768
8769 commit 8f1edcb6eda89405286b7b1cdab3b8d8b899a778
8770 Author: Neil Roberts <neil@linux.intel.com>
8771 Date:   Wed Nov 18 14:21:22 2009 +0000
8772
8773     disable-npots: Don't allow the GL version to be 2.0
8774     
8775     Cogl now assumes non-power-of-two textures are supported if the GL
8776     version is >= 2.0 so the disable-npots utility should also change the
8777     GL version.
8778
8779  tests/tools/disable-npots.c |   79 +++++++++++++++++++++++++++++++++++++++----
8780  1 file changed, 72 insertions(+), 7 deletions(-)
8781
8782 commit e80030755e37df28b30903bad63dc776b546abc3
8783 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8784 Date:   Wed Nov 18 15:21:09 2009 +0000
8785
8786     build: Fix EXTRA_DIST and MAINTAINERCLEANFILES rules
8787
8788  Makefile.am |   19 +++++++------------
8789  1 file changed, 7 insertions(+), 12 deletions(-)
8790
8791 commit ed4f0beac944a036839cd860f8aad223ffc101f2
8792 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8793 Date:   Wed Nov 18 15:11:56 2009 +0000
8794
8795     Update README file
8796
8797  README |   36 ++++++++++++++++++------------------
8798  1 file changed, 18 insertions(+), 18 deletions(-)
8799
8800 commit 44f926556d98737fd10b18fdb6951a41672c46db
8801 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8802 Date:   Wed Nov 18 15:06:37 2009 +0000
8803
8804     docs: Update the "writing a backend" documentation
8805     
8806     The documentation on how a ClutterBackend and stage are implemented
8807     is a wee bit out of date.
8808
8809  HACKING.backends |   39 +++++++++++++++++++++++----------------
8810  1 file changed, 23 insertions(+), 16 deletions(-)
8811
8812 commit f8e4e6727290aa63d2ec7dc30ca46913c98cb7ea
8813 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8814 Date:   Wed Nov 18 14:56:59 2009 +0000
8815
8816     Remove clutter.symbols
8817     
8818     The symbols file is unused since Clutter 0.6, and the win32 backend
8819     does not depend on it anymore.
8820
8821  clutter.symbols |  611 -------------------------------------------------------
8822  1 file changed, 611 deletions(-)
8823
8824 commit a4f1d1d6cc12b7007ac467673cf8d98dba132c87
8825 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8826 Date:   Wed Nov 18 14:56:25 2009 +0000
8827
8828     Rename ChangeLog.SVN
8829
8830  ChangeLog.SVN            |15737 ----------------------------------------------
8831  ChangeLog.pre-git-import |15737 ++++++++++++++++++++++++++++++++++++++++++++++
8832  2 files changed, 15737 insertions(+), 15737 deletions(-)
8833
8834 commit 60fae6a92eff5b61e4074f40161aa7b0b40bf2b9
8835 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8836 Date:   Wed Nov 18 14:37:43 2009 +0000
8837
8838     build: Add cogl-matrix-private.h to the dist
8839
8840  clutter/cogl/cogl/Makefile.am |    1 +
8841  1 file changed, 1 insertion(+)
8842
8843 commit 425f3b466041f46d1faed06da1cc46665bad60c6
8844 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8845 Date:   Wed Nov 18 14:34:33 2009 +0000
8846
8847     build: Add cogl-feature-functions.h to the dist
8848
8849  clutter/cogl/cogl/driver/gl/Makefile.am   |    1 +
8850  clutter/cogl/cogl/driver/gles/Makefile.am |    3 ++-
8851  2 files changed, 3 insertions(+), 1 deletion(-)
8852
8853 commit d11343532d813cf9b16e5c1ac92c0f0bc56e8850
8854 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8855 Date:   Wed Nov 18 14:21:08 2009 +0000
8856
8857     build: Generate per-cycle ChangeLog files
8858     
8859     We should generate a ChangeLog for each minor version cycle, starting
8860     from the Git import date (since before that we used ChangeLog-style
8861     commit messages that don't really look good with the Git ones).
8862     
8863     For this reason we can take Cairo's Makefile.am.changelog file and,
8864     after tweaking it to fit our use case, let it generate the correct
8865     ChangeLogs on dist.
8866
8867  ChangeLog                             |    5 --
8868  Makefile.am                           |    3 +-
8869  build/autotools/Makefile.am.changelog |   91 +++++++++++++++++++++++++++------
8870  configure.ac                          |    8 +--
8871  4 files changed, 82 insertions(+), 25 deletions(-)
8872
8873 commit 18e9d0db6fc9e120a63485d1ecbc8b5514d66c77
8874 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8875 Date:   Wed Nov 18 12:20:53 2009 +0000
8876
8877     build: Move ChangeLog rules in a separate file
8878     
8879     The ChangeLog creation rules should be moved to their own file, to
8880     make it easier to fix or change them in the future.
8881
8882  Makefile.am                           |   20 +-------------------
8883  build/autotools/Makefile.am           |    1 +
8884  build/autotools/Makefile.am.changelog |   19 +++++++++++++++++++
8885  3 files changed, 21 insertions(+), 19 deletions(-)
8886
8887 commit 142305b1d51e9a3c69e8e2e224480297e43f79ea
8888 Author: Neil Roberts <neil@linux.intel.com>
8889 Date:   Wed Nov 18 13:23:10 2009 +0000
8890
8891     cogl: Add the missing terminators for the arrays of feature functions
8892     
8893     _cogl_feature_check expects the array of function names to be
8894     terminated with a NULL pointer but I forgot to add this. This was
8895     causing crashes depending on what happened to be in memory after the
8896     array.
8897
8898  clutter/cogl/cogl/driver/gl/cogl.c   |    1 +
8899  clutter/cogl/cogl/driver/gles/cogl.c |    1 +
8900  2 files changed, 2 insertions(+)
8901
8902 commit 70aeb1c64216d75ba63f1cbae1c824b69305bd73
8903 Author: Christian Persch <chpe@gnome.org>
8904 Date:   Tue Nov 17 20:43:39 2009 +0100
8905
8906     Pass the interned string value to the binding callback
8907     
8908     http://bugzilla.openedhand.com/show_bug.cgi?id=1891
8909     
8910     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
8911
8912  clutter/clutter-binding-pool.c |    2 +-
8913  1 file changed, 1 insertion(+), 1 deletion(-)
8914
8915 commit 2832940603733873a76cb4c890f4a3d656d07112
8916 Author: Neil Roberts <neil@linux.intel.com>
8917 Date:   Tue Nov 17 18:06:31 2009 +0000
8918
8919     cogl: Use the GL_EXT_blend_{func,equation}_separate extensions
8920     
8921     We should use these extensions to check for glBlendFuncSeparate and
8922     glBlendEquationSeparate as well as checking the GL version number.
8923
8924  clutter/cogl/cogl/driver/gl/cogl-feature-functions.h |   12 ++++++------
8925  1 file changed, 6 insertions(+), 6 deletions(-)
8926
8927 commit 6e0877507e00016cac1136c4e0dbab67e6a3e9ba
8928 Author: Neil Roberts <neil@linux.intel.com>
8929 Date:   Tue Nov 17 17:22:22 2009 +0000
8930
8931     cogl: Don't bother checking for NPOTs or VBOs on later GLs
8932     
8933     For VBOs, we don't need to check for the extension if the GL version
8934     is greater than 1.5. Non-power-of-two textures are given in 2.0.
8935     
8936     We could also assume shader support in GL 2.0 except that the function
8937     names are different from those in the extension so it wouldn't work
8938     well with the current mechanism.
8939
8940  clutter/cogl/cogl/driver/gl/cogl-feature-functions.h |    4 +++-
8941  clutter/cogl/cogl/driver/gl/cogl.c                   |    3 ++-
8942  2 files changed, 5 insertions(+), 2 deletions(-)
8943
8944 commit 4a8c1ff8fa6244cad0b0e770ab6f68e319271675
8945 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8946 Date:   Tue Nov 17 15:32:00 2009 +0000
8947
8948     build: Clean up the configure summary
8949     
8950     Split out into section the configuration report, and clean
8951     up the reported settings - including when experimental features
8952     have been enabled.
8953
8954  configure.ac |   97 ++++++++++++++++++++++++++++++++++++++--------------------
8955  1 file changed, 64 insertions(+), 33 deletions(-)
8956
8957 commit 91cde78a7023d728ebb33c73684fc3702ad87963
8958 Author: Neil Roberts <neil@linux.intel.com>
8959 Date:   Tue Nov 17 13:52:40 2009 +0000
8960
8961     cogl: Make it easier to add checks for GL extensions
8962     
8963     Previously if you need to depend on a new GL feature you had to:
8964     
8965     - Add typedefs for all of the functions in cogl-defines.h.in
8966     
8967     - Add function pointers for each of the functions in
8968       cogl-context-driver.h
8969     
8970     - Add an initializer for the function pointers in
8971       cogl-context-driver.c
8972     
8973     - Add a check for the extension and all of the functions in
8974       cogl_features_init. If the extension is available under multiple
8975       names then you have to duplicate the checks.
8976     
8977     This is quite tedious and error prone. This patch moves all of the
8978     features and their functions into a list of macro invocations in
8979     cogl-feature-functions.h. The macros can be redefined to implement all
8980     of the above tasks from the same header.
8981     
8982     The features are described in a struct with a pointer to a table of
8983     functions. A new function takes the feature description from this
8984     struct and checks for its availability. The feature can take a list of
8985     extension names with a list of alternate namespaces (such as "EXT" or
8986     "ARB"). It can also detect the feature from a particular version of
8987     GL.
8988     
8989     The typedefs are now gone and instead the function pointer in the Cogl
8990     context just directly contains the type.
8991     
8992     Some of the functions in the context were previously declared with the
8993     'ARB' extension. This has been removed so that now all the functions
8994     have no suffix. This makes more sense when the extension could
8995     potentially be merged into GL core as well.
8996
8997  clutter/cogl/cogl/Makefile.am                      |    2 +
8998  clutter/cogl/cogl/cogl-feature-private.c           |  141 ++++++++
8999  clutter/cogl/cogl/cogl-feature-private.h           |   71 ++++
9000  clutter/cogl/cogl/cogl-journal.c                   |   10 +-
9001  clutter/cogl/cogl/cogl-vertex-buffer.c             |   21 +-
9002  clutter/cogl/cogl/driver/gl/cogl-context-driver.c  |   58 +--
9003  clutter/cogl/cogl/driver/gl/cogl-context-driver.h  |   81 +----
9004  clutter/cogl/cogl/driver/gl/cogl-defines.h.in      |  361 -------------------
9005  .../cogl/cogl/driver/gl/cogl-feature-functions.h   |  326 +++++++++++++++++
9006  clutter/cogl/cogl/driver/gl/cogl-program.c         |   89 +++--
9007  clutter/cogl/cogl/driver/gl/cogl-shader.c          |   27 +-
9008  clutter/cogl/cogl/driver/gl/cogl.c                 |  369 ++------------------
9009  .../cogl/cogl/driver/gles/cogl-context-driver.c    |   19 +-
9010  .../cogl/cogl/driver/gles/cogl-context-driver.h    |   25 +-
9011  clutter/cogl/cogl/driver/gles/cogl-defines.h.in    |   70 ----
9012  .../cogl/cogl/driver/gles/cogl-feature-functions.h |   72 ++++
9013  clutter/cogl/cogl/driver/gles/cogl.c               |   82 ++---
9014  17 files changed, 794 insertions(+), 1030 deletions(-)
9015
9016 commit 4734b7be418274cf00390c805b472b9493100157
9017 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9018 Date:   Sat Nov 14 13:03:59 2009 +0000
9019
9020     docs: Detail the Clutter debugging flags
9021
9022  doc/reference/clutter/running-clutter.xml |   56 +++++++++++++++++++++++++++++
9023  1 file changed, 56 insertions(+)
9024
9025 commit 037192552ed126c35e430c11f030f16e984ac0b4
9026 Author: Neil Roberts <neil@linux.intel.com>
9027 Date:   Fri Nov 13 17:23:13 2009 +0000
9028
9029     win32: Remove the check for GL 1.2
9030     
9031     Since 568c29ba4 the GL version is now validated further up in
9032     ClutterStage via Cogl so there is no need for the Win32 backend to do
9033     it.
9034
9035  clutter/win32/clutter-stage-win32.c |   42 -----------------------------------
9036  1 file changed, 42 deletions(-)
9037
9038 commit 62a37d8e538abc6d0c67bd69b4eb2a724668cce0
9039 Author: Neil Roberts <neil@linux.intel.com>
9040 Date:   Wed Nov 11 16:42:53 2009 +0000
9041
9042     Use the GL_ARB_multitexture extension on GL 1.2
9043     
9044     Cogl requires multi-texturing support. This is only available as an
9045     extension in GL 1.2 so we should check for it before accepting the
9046     driver.
9047     
9048     http://bugzilla.openedhand.com/show_bug.cgi?id=1875
9049
9050  clutter/cogl/cogl/driver/gl/cogl.c |   46 ++++++++++++++++++++++++++++++------
9051  1 file changed, 39 insertions(+), 7 deletions(-)
9052
9053 commit 2e99b276a4d312d6123426e2c88adf621a427c86
9054 Author: Neil Roberts <neil@linux.intel.com>
9055 Date:   Wed Nov 11 13:38:52 2009 +0000
9056
9057     cogl-material: Fallback to BlendFunc if BlendFuncSeparate is unavailable
9058     
9059     glBlendFuncSeparate is only available in OpenGL 1.4. If we
9060     conditionally check for this then Clutter will work with OpenGL 1.2.
9061     
9062     http://bugzilla.openedhand.com/show_bug.cgi?id=1875
9063
9064  clutter/cogl/cogl/cogl-material.c |   11 ++++++++---
9065  1 file changed, 8 insertions(+), 3 deletions(-)
9066
9067 commit 568c29ba491e4a6b3bef426be528d7246110011c
9068 Author: Neil Roberts <neil@linux.intel.com>
9069 Date:   Wed Nov 11 13:26:54 2009 +0000
9070
9071     Validate that the GL version is >= 1.2
9072     
9073     There is a new internal Cogl function called _cogl_check_driver_valid
9074     which looks at the value of the GL_VERSION string to determine whether
9075     the driver is supported. Clutter now calls this after the stage is
9076     realized. If it fails then the stage is marked as unrealized and a
9077     warning is shown.
9078     
9079     _cogl_features_init now also checks the version number before getting
9080     the function pointers for glBlendFuncSeparate and
9081     glBlendEquationSeparate. It is not safe to just check for the presence
9082     of the functions because some drivers may define the function without
9083     fully implementing the spec.
9084     
9085     The GLES version of _cogl_check_driver_valid just always returns TRUE
9086     because there are no version requirements yet.
9087     
9088     Eventually the function could also check for mandatory extensions if
9089     there were any.
9090     
9091     http://bugzilla.openedhand.com/show_bug.cgi?id=1875
9092
9093  clutter/clutter-backend.c            |   14 ++++--
9094  clutter/clutter-private.h            |    3 ++
9095  clutter/clutter-stage.c              |   22 ++++++++-
9096  clutter/cogl/cogl/cogl.c             |    5 ++
9097  clutter/cogl/cogl/cogl.h.in          |    9 ++++
9098  clutter/cogl/cogl/driver/gl/cogl.c   |   87 +++++++++++++++++++++++++++++++---
9099  clutter/cogl/cogl/driver/gles/cogl.c |    6 +++
9100  7 files changed, 133 insertions(+), 13 deletions(-)
9101
9102 commit 677ff9fb30a99b850eb1b41c34f80e5e01f8e43e
9103 Author: Samuel Degrande <Samuel.Degrande@lifl.fr>
9104 Date:   Tue Oct 27 11:18:49 2009 +0100
9105
9106     Can no more include clutter-stage.h inside clutter-win32.h
9107     
9108     http://bugzilla.openedhand.com/show_bug.cgi?id=1847
9109     
9110     Signed-off-by: Neil Roberts <neil@linux.intel.com>
9111
9112  clutter/win32/clutter-win32.h |    2 +-
9113  1 file changed, 1 insertion(+), 1 deletion(-)
9114
9115 commit 26ce94eda071cc133ab2b469cae0b19aae727279
9116 Author: Samuel Degrande <Samuel.Degrande@lifl.fr>
9117 Date:   Mon Oct 26 16:28:36 2009 +0100
9118
9119     Adapt win32 backend to the semantic change of StageWindow
9120     
9121     http://bugzilla.openedhand.com/show_bug.cgi?id=1847
9122     
9123     Signed-off-by: Neil Roberts <neil@linux.intel.com>
9124
9125  clutter/win32/clutter-backend-win32.c |   34 ++--
9126  clutter/win32/clutter-stage-win32.c   |  345 +++++++++++++++++----------------
9127  clutter/win32/clutter-stage-win32.h   |    2 +
9128  3 files changed, 194 insertions(+), 187 deletions(-)
9129
9130 commit b69ee0989b3ec4b588a1e80ea933b3b8997f6898
9131 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9132 Date:   Fri Nov 13 15:27:18 2009 +0000
9133
9134     tests: Add instructions to test-box-layout
9135
9136  tests/interactive/test-box-layout.c |   17 ++++++++++++++++-
9137  1 file changed, 16 insertions(+), 1 deletion(-)
9138
9139 commit 568ad044eba38198ecdb32f671047bffa27353a9
9140 Author: Neil Roberts <neil@linux.intel.com>
9141 Date:   Fri Nov 13 13:39:24 2009 +0000
9142
9143     Clear pending events for a stage when it is destroyed
9144     
9145     We can not process events for a stage that has been destroyed so we
9146     should make sure that the events for the stage are removed from the
9147     global event queue during dispose.
9148     
9149     http://bugzilla.openedhand.com/show_bug.cgi?id=1882
9150
9151  clutter/clutter-stage.c |   18 ++++++++++++++++++
9152  1 file changed, 18 insertions(+)
9153
9154 commit 49cd887aabf7ff8cbfb147ceacfc82e3c75c0c9b
9155 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9156 Date:   Fri Nov 13 14:43:57 2009 +0000
9157
9158     docs: Document the AnimationMode definition
9159     
9160     Both ClutterAlpha:mode and ClutterAnimation:mode can be defined using:
9161     
9162       • an integer id
9163       • the "nick" field of the AnimationMode GEnumValue
9164       • a custom, tweener-like string
9165     
9166     All these methods should be documented.
9167
9168  clutter/clutter-alpha.c     |    8 ++++--
9169  clutter/clutter-animation.c |   61 +++++++++++++++++++++++++++++++++++++++++++
9170  2 files changed, 67 insertions(+), 2 deletions(-)
9171
9172 commit c8d57037882729a7ea0117726f2e8e48b10416ac
9173 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9174 Date:   Fri Nov 13 14:10:29 2009 +0000
9175
9176     tests: Add unit for Animation definitions
9177     
9178     Verify that an Animation can be defined using ClutterScript.
9179     
9180     No initial/final state of the animation, yet.
9181
9182  .gitignore                            |    1 +
9183  tests/conform/test-conform-main.c     |    1 +
9184  tests/conform/test-script-parser.c    |   22 ++++++++++++++++++++++
9185  tests/data/test-script-animation.json |   14 ++++++++++++++
9186  4 files changed, 38 insertions(+)
9187
9188 commit d54f4e944c8725c84a5534d519fb3f9de7b95430
9189 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9190 Date:   Fri Nov 13 14:08:49 2009 +0000
9191
9192     Whitespace fixes
9193
9194  clutter/clutter-animation.c     |    7 +++----
9195  clutter/clutter-script-parser.c |    3 +--
9196  2 files changed, 4 insertions(+), 6 deletions(-)
9197
9198 commit 95b55588ad6c57cbeb7cda50886e709aa1ae1c00
9199 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9200 Date:   Fri Nov 13 14:07:25 2009 +0000
9201
9202     tests: Print out parser errors if present
9203     
9204     If the conformance test for the Script parser throws an error
9205     and we've enabled verbosity then we should print out the error
9206     message before aborting.
9207
9208  tests/conform/test-script-parser.c |   10 ++++++++--
9209  1 file changed, 8 insertions(+), 2 deletions(-)
9210
9211 commit 9bae5535646b64e7c43f3a628942531d14e5a0f1
9212 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9213 Date:   Fri Nov 13 13:21:47 2009 +0000
9214
9215     animation: Override parsing :mode
9216     
9217     Like in ClutterAlpha, ClutterAnimation:mode must be overridden when
9218     parsing a Script definition, as we accept both a numeric id and the
9219     string id for easing modes.
9220
9221  clutter/clutter-animation.c |   51 ++++++++++++++++++++++++++++++++++++++++++-
9222  1 file changed, 50 insertions(+), 1 deletion(-)
9223
9224 commit dab1da20ae144afe56f48c0a3be5865d84245658
9225 Author: Neil Roberts <neil@linux.intel.com>
9226 Date:   Mon Oct 5 13:37:11 2009 +0100
9227
9228     [cogl-primitives] Don't clear the whole stencil buffer
9229     
9230     When _cogl_add_path_to_stencil_buffer is used to draw a path we don't
9231     need to clear the entire stencil buffer. Instead it can clear just the
9232     bounding box of the path. This adds an extra parameter called
9233     'need_clear' which is only set if the stencil buffer is being used for
9234     clipping.
9235     
9236     http://bugzilla.openedhand.com/show_bug.cgi?id=1829
9237
9238  clutter/cogl/cogl/cogl-clip-stack.c |    6 ++++--
9239  clutter/cogl/cogl/cogl-primitives.c |   37 ++++++++++++++++++++++++++++-------
9240  2 files changed, 34 insertions(+), 9 deletions(-)
9241
9242 commit bc8faf52f4a817d7d023f554dcd7ace0efac9942
9243 Author: Neil Roberts <neil@linux.intel.com>
9244 Date:   Thu Nov 12 17:00:15 2009 +0000
9245
9246     Remove _cogl_flush_matrix_stacks from cogl-internal.h
9247     
9248     The definition for this function was removed in f7d64e5abvoid so it
9249     should be removed from the header too.
9250
9251  clutter/cogl/cogl/cogl-internal.h |    2 --
9252  1 file changed, 2 deletions(-)
9253
9254 commit 9fa562ad216d516d1cd66f72aa39eaad0a5c40b9
9255 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9256 Date:   Wed Nov 11 10:32:39 2009 +0000
9257
9258     cogl: Declare cogl_is_bitmap()
9259     
9260     The function is automatically defined by the CoglHandle type
9261     definition macro, but it still requires to be declared in the
9262     header file to be used.
9263
9264  clutter/cogl/cogl/cogl-bitmap.h |   13 +++++++++++++
9265  1 file changed, 13 insertions(+)
9266
9267 commit 482e4e8d111fa76194a20ccd120eac41afa277d8
9268 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9269 Date:   Tue Nov 10 12:21:26 2009 +0000
9270
9271     tests: Display the index inside text-box-layout
9272     
9273     Since the rectangles packed inside the BoxLayout interactive test
9274     have random colors it's not easy to verify the ordering. By using
9275     the CoglPango API to print out the index in the middle of each
9276     rectangle.
9277
9278  tests/interactive/test-box-layout.c |   41 ++++++++++++++++++++++++++++++++---
9279  1 file changed, 38 insertions(+), 3 deletions(-)
9280
9281 commit 4bc3d02ebd928b4bc7c59811b9e90aae36750cfb
9282 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9283 Date:   Tue Nov 10 12:20:14 2009 +0000
9284
9285     box-layout: Honour :text-direction
9286     
9287     During size request and allocation a ClutterBoxLayout should honour
9288     the ClutterActor:text-direction property, and change the order of
9289     the children.
9290
9291  clutter/clutter-box-layout.c |  206 +++++++++++++++++++++++++++++-------------
9292  1 file changed, 142 insertions(+), 64 deletions(-)
9293
9294 commit adab87b520699892e012d601821a5aee11410125
9295 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9296 Date:   Tue Nov 10 12:18:32 2009 +0000
9297
9298     text: Dirty layout cache on text direction changes
9299     
9300     When the text direction changes we should evict the cached layouts
9301     to avoid stale entries in case the direction change produces a layout
9302     with the same size.
9303
9304  clutter/clutter-text.c |   23 +++++++++++++++++++++++
9305  1 file changed, 23 insertions(+)
9306
9307 commit f94f7692a6836ed4a5f039e4c2a44966b47c77fc
9308 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9309 Date:   Fri Nov 6 16:55:46 2009 +0000
9310
9311     actor: Add :text-direction property
9312     
9313     Every actor should have a property for retrieving (and setting) the
9314     text direction.
9315     
9316     The text direction is used to provide a consisten behaviour in both
9317     left-to-right and right-to-left languages. For instance, ClutterText
9318     should perform key navigation following text direction. Layout
9319     managers should also take into account text direction to derive the
9320     right packing order for their children.
9321
9322  clutter/clutter-actor.c |  116 ++++++++++++++++++++++++++++++++++++++++++++++-
9323  clutter/clutter-actor.h |    4 ++
9324  2 files changed, 119 insertions(+), 1 deletion(-)
9325
9326 commit 53a9d0c637ee1ef07e9251b77f86f0cd42ab611e
9327 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9328 Date:   Fri Nov 6 16:50:53 2009 +0000
9329
9330     Use the newly added ClutterTextDirection enumeration
9331     
9332     Instead of using PangoDirection directly we should use the
9333     ClutterTextDirection enumeration.
9334     
9335     We also need a pair of accessor functions for setting and
9336     getting the default text direction.
9337
9338  clutter/clutter-main.c |   43 +++++++++++++++++++++++++++++++++----------
9339  clutter/clutter-main.h |    3 +++
9340  2 files changed, 36 insertions(+), 10 deletions(-)
9341
9342 commit 3958df4ff9b3aa800df2e0f1695fd143439d870a
9343 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9344 Date:   Fri Nov 6 16:49:55 2009 +0000
9345
9346     Add ClutterTextDirection enumeration
9347     
9348     The ClutterTextDirection is composed of three values:
9349     
9350       DEFAULT: a flag for returning the default text direction
9351       LTR: left to right
9352       RTL: right to left
9353
9354  clutter/clutter-types.h |   17 +++++++++++++++++
9355  1 file changed, 17 insertions(+)
9356
9357 commit 2671c425894c89a4afd415b70e8ebbc4f057e02b
9358 Author: Neil Roberts <neil@linux.intel.com>
9359 Date:   Mon Nov 9 12:12:27 2009 +0000
9360
9361     Revert changes to test-cogl-primitives.c from 272e227109
9362     
9363     These changes caused the test to try to load redhand.png but this no
9364     longer works since the TESTS_DATADIR changes in 0b4899ef23. The only
9365     use of the hand is commented out anyway so it looks like the changes
9366     were intended for temporary debugging.
9367
9368  tests/interactive/test-cogl-primitives.c |   14 --------------
9369  1 file changed, 14 deletions(-)
9370
9371 commit ac9f65cb92196e2eafd4b1e25dabd9cb6a428db3
9372 Author: Damien Lespiau <damien.lespiau@intel.com>
9373 Date:   Mon Nov 9 13:05:40 2009 +0000
9374
9375     build: Make the glib-mkenums generated files depend on their templates
9376     
9377     With this, if one changes the underlying template files, we run
9378     glib-mkenums again to generate updated glib_enum_[ch] files.
9379     
9380     Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
9381
9382  build/autotools/Makefile.am.enums |    4 ++--
9383  1 file changed, 2 insertions(+), 2 deletions(-)
9384
9385 commit 1be23c0cc9741cbe68a54cd84de772bd120254b6
9386 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9387 Date:   Mon Nov 9 16:44:34 2009 +0000
9388
9389     build: Fix --with-imagebackend configure switch
9390     
9391     An overeager search and replace broke the image backend command
9392     line switch for the configure script.
9393
9394  configure.ac |    2 +-
9395  1 file changed, 1 insertion(+), 1 deletion(-)
9396
9397 commit 1ce25ffbb2561ab5eb3f6b07b74ec49587f44d32
9398 Author: Neil Roberts <neil@linux.intel.com>
9399 Date:   Mon Nov 9 11:50:16 2009 +0000
9400
9401     cogl: Add an initialiser for enable_flags in cogl_begin_gl
9402     
9403     This fixes a warning about an uninitialised value. It could also
9404     potentially fix some crashes for example if the enable_flags value
9405     happened to include a bit for enabling a vertex array if no vertex
9406     buffer pointer was set.
9407
9408  clutter/cogl/cogl/cogl.c |    2 +-
9409  1 file changed, 1 insertion(+), 1 deletion(-)
9410
9411 commit 09c04d4c67ea8d3ebeb3ee5adfc3752562cae3cc
9412 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9413 Date:   Mon Nov 9 11:07:27 2009 +0000
9414
9415     text: Add a NULL preedit string check
9416     
9417     This commit avoids a critical warning introduced by commit
9418     bc51b8ca47ac90e52ab6a27ff791ea97d53f4648
9419
9420  clutter/clutter-text.c |    4 +++-
9421  1 file changed, 3 insertions(+), 1 deletion(-)
9422
9423 commit bc51b8ca47ac90e52ab6a27ff791ea97d53f4648
9424 Author: Raymond Liu <raymond.liu@intel.com>
9425 Date:   Mon Nov 9 16:42:15 2009 +0800
9426
9427     Fix cursor position in preedit status
9428     
9429     http://bugzilla.openedhand.com/show_bug.cgi?id=1871
9430     
9431     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
9432
9433  clutter/clutter-text.c |   14 ++++++++++++--
9434  1 file changed, 12 insertions(+), 2 deletions(-)
9435
9436 commit 7e17822cfd860fd694735fbf550013f7f8b7a915
9437 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9438 Date:   Fri Nov 6 15:06:39 2009 +0000
9439
9440     Clean up cogl.h template
9441     
9442     The inclusion order is mostly random, and it should really be
9443     in alphabetic order, just like clutter.h.
9444     
9445     Also, cogl-vertex-buffer.h is included twice.
9446
9447  clutter/cogl/cogl/cogl.h.in |   17 +++++++++--------
9448  1 file changed, 9 insertions(+), 8 deletions(-)
9449
9450 commit fcd8237ac5f5dc7bc485b8b5726824129215beea
9451 Author: Tim Horton <hortont424@gmail.com>
9452 Date:   Fri Nov 6 11:57:43 2009 +0000
9453
9454     osx: CGBitmapContextCreate can't make 24bpp, alphaless offscreen pixmaps
9455     
9456     While loading a JPEG from disk (with clutter_texture_new_from_file),
9457     I got the following:
9458     
9459     <Error>: CGBitmapContextCreate: unsupported parameter combination: 8
9460     integer bits/component; 24 bits/pixel; 3-component colorspace;
9461     kCGImageAlphaNone; 3072 bytes/row.
9462     <Error>: CGContextDrawImage: invalid context
9463     
9464     Looking around, I found that CGBitmapContextCreate can't make 24bpp
9465     offscreen pixmaps without an alpha channel...
9466     
9467     This fixes the bug, and seems to not break other things...
9468     
9469     http://bugzilla.openedhand.com/show_bug.cgi?id=1159
9470     
9471     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
9472
9473  clutter/cogl/cogl/cogl-bitmap-pixbuf.c |   18 +++---------------
9474  1 file changed, 3 insertions(+), 15 deletions(-)
9475
9476 commit 5c67e8e0c09c83c470f999c86091181cc373d5b6
9477 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9478 Date:   Fri Nov 6 14:07:46 2009 +0000
9479
9480     script: Coding style clean-ups
9481
9482  clutter/clutter-script.c |   38 +++++++++++++++++++-------------------
9483  1 file changed, 19 insertions(+), 19 deletions(-)
9484
9485 commit 179a66c922f85fdfc8968f7f60a5b76154696ad4
9486 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9487 Date:   Fri Nov 6 14:07:26 2009 +0000
9488
9489     script: Document private functions
9490
9491  clutter/clutter-script.c |   71 +++++++++++++++++++++++++++++++++++++++++++---
9492  1 file changed, 67 insertions(+), 4 deletions(-)
9493
9494 commit 30bc36082e2922b11b98907fde12f64fd4f7399d
9495 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9496 Date:   Fri Nov 6 14:04:36 2009 +0000
9497
9498     Do not pass flags to g_module_open(NULL)
9499     
9500     The flags are ignored when opening the main module, so we
9501     should pass 0 to avoid confusion when reading the source.
9502
9503  clutter/clutter-alpha.c         |    2 +-
9504  clutter/clutter-script-parser.c |    6 +++---
9505  clutter/clutter-script.c        |    2 +-
9506  clutter/cogl/cogl/cogl.c        |    4 ++--
9507  4 files changed, 7 insertions(+), 7 deletions(-)
9508
9509 commit 4262f79f34c35a8eb620fb82eb0e36d5ac191600
9510 Merge: b9e519c 031d4d6
9511 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9512 Date:   Fri Nov 6 11:50:22 2009 +0000
9513
9514     Merge branch 'josh-osx-fixes'
9515     
9516     * josh-osx-fixes:
9517       osx: Fix a warning on Snow Leopard
9518       docs: Fix OS X docs to install Ports in correct order
9519       osx: Implement the updated ClutterStageWindow interface
9520
9521 commit b9e519c3b2bc5fc01743568a2a37029c61fdf6ef
9522 Author: Joshua Lock <josh@linux.intel.com>
9523 Date:   Thu Nov 5 15:50:21 2009 +0000
9524
9525     tests: Remove a spurious #include
9526     
9527     The test-backface-culling has what looks like a stray #include in which
9528     stops the test compiling for backends without GdkPixbuf. Remove it.
9529     
9530     http://bugzilla.openedhand.com/show_bug.cgi?id=1867
9531
9532  tests/conform/test-backface-culling.c |    2 --
9533  1 file changed, 2 deletions(-)
9534
9535 commit 031d4d6203f007fea2b95ca883c7113d0160372d
9536 Author: Joshua Lock <josh@linux.intel.com>
9537 Date:   Thu Nov 5 15:48:25 2009 +0000
9538
9539     osx: Fix a warning on Snow Leopard
9540     
9541     Apple where nice and changed API between releases. This patch checks the
9542     version of the compilation environment and tries to use the right parameter
9543     type.
9544     
9545     http://bugzilla.openedhand.com/show_bug.cgi?id=1866
9546
9547  clutter/osx/clutter-backend-osx.c |    8 ++++++--
9548  1 file changed, 6 insertions(+), 2 deletions(-)
9549
9550 commit 58f1dfcf35626b8b1ea896dfbd27623b15779fce
9551 Author: Joshua Lock <josh@linux.intel.com>
9552 Date:   Thu Nov 5 15:31:56 2009 +0000
9553
9554     docs: Fix OS X docs to install Ports in correct order
9555     
9556     The order in which the MacPorts are installed is important otherwise we open
9557     the user up to a world of pain.
9558     This patch also tweaks the OS X docs to follow the formatting of the rest of
9559     the docs and to discuss the option of GtkDoc.
9560     
9561     http://bugzilla.openedhand.com/show_bug.cgi?id=1865
9562
9563  doc/reference/clutter/building-clutter.xml |   67 +++++++++++++++-------------
9564  1 file changed, 37 insertions(+), 30 deletions(-)
9565
9566 commit 4533e37744f8751e254741104d27b7b37e2fdfd7
9567 Author: Joshua Lock <josh@linux.intel.com>
9568 Date:   Thu Nov 5 15:44:32 2009 +0000
9569
9570     osx: Implement the updated ClutterStageWindow interface
9571     
9572     In the new Clutter world backend stage implementations should be lightweight
9573     objects implementing the ClutterStageWindow interface and not ClutterActor
9574     subclasses.
9575     
9576     This patch performs various cut-n-pastes to acheive that for the OSX backend
9577     
9578     http://bugzilla.openedhand.com/show_bug.cgi?id=1864
9579
9580  clutter/osx/clutter-backend-osx.c |    4 +-
9581  clutter/osx/clutter-stage-osx.c   |  196 ++++++++++++++++---------------------
9582  clutter/osx/clutter-stage-osx.h   |    8 +-
9583  3 files changed, 89 insertions(+), 119 deletions(-)
9584
9585 commit cb60c038acb0de9178d0aee22e3a9847653c9627
9586 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9587 Date:   Fri Nov 6 11:33:32 2009 +0000
9588
9589     behaviour: Implement the implicit alpha parsing
9590     
9591     ClutterBehaviour should implement the Scriptable interface
9592     and parse ClutterAlpha when implicitly defined, instead of
9593     having this ad hoc code inside ClutterScriptParser itself.
9594     
9595     After all, only ClutterBehaviour supports Alpha defined
9596     implicitly.
9597
9598  clutter/clutter-behaviour.c      |   46 +++++++++++++++++++++++++++++++++-----
9599  clutter/clutter-script-parser.c  |   19 ++--------------
9600  clutter/clutter-script-private.h |    4 ++--
9601  3 files changed, 45 insertions(+), 24 deletions(-)
9602
9603 commit f1ed8be066a7c5f16e2e876cc76ef1f5348bc14e
9604 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9605 Date:   Fri Nov 6 11:32:28 2009 +0000
9606
9607     conform: Add unit for properties holding objects
9608     
9609     Exercise the definition of GObjects for properties defined using
9610     GParamSpecObject.
9611
9612  .gitignore                                  |    1 +
9613  tests/conform/test-conform-main.c           |    1 +
9614  tests/conform/test-script-parser.c          |   25 +++++++++++++++++++++++++
9615  tests/data/test-script-object-property.json |   13 +++++++++++++
9616  4 files changed, 40 insertions(+)
9617
9618 commit 7279afd28c1bc47e1b47f0c2f8d53e5ea75df832
9619 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9620 Date:   Fri Nov 6 11:17:42 2009 +0000
9621
9622     script: Generic assignment of properties requiring objects
9623     
9624     The ClutterScriptParser should do most of the heavy-lifting for
9625     parsing a JSON object member defining another JSON object into
9626     a GObject property defined using a GParamSpecObject.
9627
9628  clutter/clutter-script-parser.c |   62 ++++++++++++++++++++++++++++++++-------
9629  1 file changed, 52 insertions(+), 10 deletions(-)
9630
9631 commit 185107c6cfe174ed829ce26241bf0e2f532a4394
9632 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9633 Date:   Fri Nov 6 10:53:43 2009 +0000
9634
9635     conformance: Add unit on the implicit alpha definition
9636     
9637     Exercise the implicit alpha and timeline definition to catch
9638     regressions in the ClutterScript parser code.
9639
9640  .gitignore                                 |    1 +
9641  tests/conform/test-conform-main.c          |    1 +
9642  tests/conform/test-script-parser.c         |   32 ++++++++++++++++++++++++++++
9643  tests/data/test-script-implicit-alpha.json |    8 +++++++
9644  4 files changed, 42 insertions(+)
9645
9646 commit f9581ca5ce87437df40e27bc0228fdb6c6897619
9647 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9648 Date:   Fri Nov 6 10:17:30 2009 +0000
9649
9650     script: Apply properties when constructing implicit timelines
9651     
9652     The object construction is done in two passes, now, so we must do both
9653     passes when parsing implicit timelines from a fake ObjectInfo.
9654
9655  clutter/clutter-script-parser.c |    1 +
9656  1 file changed, 1 insertion(+)
9657
9658 commit abae6013e10e08cc67be53d5d067ca5ed4ad7ee3
9659 Author: Robert Bragg <robert@linux.intel.com>
9660 Date:   Thu Nov 5 16:50:24 2009 +0000
9661
9662     Remove all internal use of deprecated cogl_clip_* API
9663     
9664     cogl_clip_push, and cogl_clip_push_window_rect which are now deprecated were
9665     used in various places internally so this just switches to using the
9666     replacement functions.
9667
9668  clutter/clutter-actor.c            |   10 +++++-----
9669  clutter/clutter-main.c             |    2 +-
9670  clutter/clutter-text.c             |    6 +++---
9671  tests/conform/test-cogl-viewport.c |   10 ++++++----
9672  tests/interactive/test-clip.c      |    8 ++++----
9673  5 files changed, 19 insertions(+), 17 deletions(-)
9674
9675 commit c1d9e09d38bcf61eb7e6f88f5a052870d8abdc5e
9676 Author: Robert Bragg <robert@linux.intel.com>
9677 Date:   Thu Nov 5 10:56:24 2009 +0000
9678
9679     [clip-stack] stop using deprecated cogl_clip_push_window_rect API
9680     
9681     try_pushing_rect_as_window_rect now uses the new
9682     cogl_clip_push_window_rectangle API.
9683
9684  clutter/cogl/cogl/cogl-clip-stack.c |    2 +-
9685  1 file changed, 1 insertion(+), 1 deletion(-)
9686
9687 commit 272e227109387c9287081e9dad467290e4e93faf
9688 Author: Robert Bragg <robert@linux.intel.com>
9689 Date:   Wed Nov 4 19:31:43 2009 +0000
9690
9691     [cogl-clip] deprecate parts and cleanup the API
9692     
9693     cogl_clip_push() which accepts a rectangle in model space shouldn't have
9694     been defined to take x,y,width,height arguments because this isn't consistant
9695     with other Cogl API dealing with model space rectangles.  If you are using a
9696     coordinate system with the origin at the center and the y+ extending up,
9697     then x,y,width,height isn't as natural as (x0,y0)(x1,y1). This API has
9698     now been replace with cogl_clip_push_rectangle()
9699     
9700     (As a general note: the Cogl API should only use the x,y,width,height style
9701     when the appropriate coordinate space is defined by Cogl to have a top left
9702     origin.  E.g.  window coordinates, or potentially texture coordinates)
9703     
9704     cogl_clip_push_window_rect() shouldn't have been defined to take float
9705     arguments since we only clip with integral pixel precision. We also
9706     shouldn't have abbreviated "rectangle". This API has been replaced with
9707     cogl_clip_push_window_rectangle()
9708     
9709     cogl_clip_ensure() wasn't documented at all in Clutter 1.0 and probably
9710     no one even knew it existed. This API isn't useful, and so it's now
9711     deprecated. If no one complains we may remove the API altogether for
9712     Clutter 1.2.
9713     
9714     cogl_clip_stack_save() and cogl_clip_stack_restore() were originally added
9715     to allow us to save/restore the clip when switching to/from offscreen
9716     rendering.  Now that offscreen draw buffers are defined to own their clip
9717     state and the state will be automatically saved and restored this API is now
9718     redundant and so deprecated.
9719
9720  README                                   |   13 +++++
9721  clutter/cogl/cogl/cogl-clip-stack.c      |   44 +++++++-------
9722  clutter/cogl/cogl/cogl.h.in              |   92 ++++++++++++++++++++++++++++--
9723  doc/reference/cogl/cogl-sections.txt     |    9 ++-
9724  tests/interactive/test-cogl-primitives.c |   14 +++++
9725  5 files changed, 144 insertions(+), 28 deletions(-)
9726
9727 commit 6cd49fdd40bd20716365e399c3dfa039e3b6f377
9728 Author: Robert Bragg <robert@linux.intel.com>
9729 Date:   Wed Nov 4 20:17:56 2009 +0000
9730
9731     [clip-stack] Internally track model space clip rects as (x0,y0)(x1,y1) pairs
9732     
9733     Don't track the rectangles as x0,y0,width,height. This is in preparation
9734     for some API tidy up.
9735
9736  clutter/cogl/cogl/cogl-clip-stack.c |  113 ++++++++++++++++++-----------------
9737  1 file changed, 59 insertions(+), 54 deletions(-)
9738
9739 commit 7752ed98f1eafa9bd65fbdd2e018b0026430b579
9740 Author: Robert Bragg <robert@linux.intel.com>
9741 Date:   Wed Nov 4 19:42:17 2009 +0000
9742
9743     [clip-stack] move lots of supporting code from cogl.c to cogl-clip-stack.c
9744     
9745     There was quite a bit of code in cogl.c that was only used to support
9746     cogl-clip-stack.c, so this has now been moved to cogl-clip-stack.c
9747
9748  clutter/cogl/cogl/cogl-clip-stack.c |  277 +++++++++++++++++++++++++++++++----
9749  clutter/cogl/cogl/cogl.c            |  237 ------------------------------
9750  2 files changed, 250 insertions(+), 264 deletions(-)
9751
9752 commit 864e12df056ccbd116eb0a0992a82e5194c26787
9753 Author: Robert Bragg <robert@linux.intel.com>
9754 Date:   Wed Nov 4 16:55:18 2009 +0000
9755
9756     [debug] Adds a COGL_DEBUG=force-scanline-paths
9757     
9758     For a long time now the GLES driver for Cogl has supported a fallback
9759     scanline rasterizer for filling paths when no stencil buffer is available,
9760     but now that we build the same cogl-primitives code for GL and GLES I
9761     thought it may sometimes be useful for debugging to force Cogl to use the
9762     scanline rasterizer instead of the current stencil buffer approach.
9763
9764  clutter/cogl/cogl/cogl-debug.c      |    3 ++-
9765  clutter/cogl/cogl/cogl-debug.h      |    3 ++-
9766  clutter/cogl/cogl/cogl-primitives.c |    3 ++-
9767  3 files changed, 6 insertions(+), 3 deletions(-)
9768
9769 commit 0b4899ef23e4979326439613dfba814bd49aeb2e
9770 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9771 Date:   Thu Nov 5 17:30:33 2009 +0000
9772
9773     tests: Clean up interactive test build
9774     
9775     The build for interactive tests creates symbolic links for the data
9776     under tests/data; it also uses symbolic links for creating "binaries"
9777     for each interactive test. This is less than ideal, though.
9778     
9779     Instead, the tests should build a path to the data files by using
9780     a pre-processor define like TESTS_DATADIR; both g_build_filename() and
9781     pre-processor string concatenation can be used to generate a valid
9782     file name with the full path to the files.
9783     
9784     The build system should also create wrapper scripts, just like we
9785     do inside the conformance test suite, to be able to launch single
9786     tests.
9787
9788  .gitignore                                 |    1 +
9789  tests/interactive/Makefile.am              |   59 ++++++++++---------
9790  tests/interactive/test-actor-clone.c       |   27 ++++-----
9791  tests/interactive/test-actors.c            |   11 ++--
9792  tests/interactive/test-behave.c            |   14 +++--
9793  tests/interactive/test-bin-layout.c        |    6 +-
9794  tests/interactive/test-clip.c              |    5 +-
9795  tests/interactive/test-cogl-multitexture.c |   15 ++++-
9796  tests/interactive/test-cogl-offscreen.c    |    6 +-
9797  tests/interactive/test-cogl-tex-convert.c  |   28 +++++++---
9798  tests/interactive/test-cogl-tex-getset.c   |   12 ++--
9799  tests/interactive/test-cogl-tex-polygon.c  |    9 ++-
9800  tests/interactive/test-cogl-tex-tile.c     |    6 +-
9801  tests/interactive/test-depth.c             |    5 +-
9802  tests/interactive/test-devices.c           |    5 +-
9803  tests/interactive/test-fbo.c               |   11 +++-
9804  tests/interactive/test-layout.c            |    5 +-
9805  tests/interactive/test-multistage.c        |    5 +-
9806  tests/interactive/test-paint-wrapper.c     |    5 +-
9807  tests/interactive/test-pixmap.c            |    2 +-
9808  tests/interactive/test-rotate.c            |    8 ++-
9809  tests/interactive/test-script.c            |    9 ++-
9810  tests/interactive/test-shader.c            |   84 +++++++++++++++-------------
9811  tests/interactive/test-texture-async.c     |   57 +++++++++----------
9812  tests/interactive/test-texture-quality.c   |   15 +++--
9813  tests/interactive/test-viewport.c          |    8 ++-
9814  tests/interactive/wrapper.sh               |    4 +-
9815  27 files changed, 260 insertions(+), 162 deletions(-)
9816
9817 commit c3368c0d157c5fa28a4e29e6caaed4323e82990d
9818 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9819 Date:   Thu Nov 5 12:24:37 2009 +0000
9820
9821     layout: Add layout properties introspection
9822     
9823     In order to know if a layout property exists and retrieve its
9824     description in form of a GParamSpec, we need a wrapper API inside
9825     ClutterLayoutManager. This allows introspecting a LayoutManager
9826     sub-class and eventually serialize and deserialize it.
9827
9828  clutter/clutter-layout-manager.c |   76 ++++++++++++++++++++++++++++
9829  clutter/clutter-layout-manager.h |  103 ++++++++++++++++++++------------------
9830  2 files changed, 130 insertions(+), 49 deletions(-)
9831
9832 commit b0c9de273096d8949c8eafa3d5da017bb551e3f0
9833 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9834 Date:   Thu Nov 5 12:23:49 2009 +0000
9835
9836     box-layout: Add get_child_meta_type() override
9837     
9838     Return the GType of ClutterBoxChild.
9839
9840  clutter/clutter-box-layout.c |    8 ++++++++
9841  1 file changed, 8 insertions(+)
9842
9843 commit eea00d280549641403dbaae27e370e16fe9f975b
9844 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9845 Date:   Thu Nov 5 12:23:22 2009 +0000
9846
9847     bin-layout: Add get_child_meta_type() override
9848     
9849     Return the GType of ClutterBinLayer.
9850
9851  clutter/clutter-bin-layout.c |    8 ++++++++
9852  1 file changed, 8 insertions(+)
9853
9854 commit e6dff59b27d7eb6d9fca51f6ddf74fcb7d8253e3
9855 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9856 Date:   Thu Nov 5 11:57:06 2009 +0000
9857
9858     layout: Add LayoutManager::get_child_meta_type()
9859     
9860     In order to inspect a LayoutManager using LayoutMeta we need a
9861     virtual function that returns the GType of the LayoutMeta used.
9862
9863  clutter/clutter-layout-manager.c |    7 +++++++
9864  clutter/clutter-layout-manager.h |    3 +++
9865  2 files changed, 10 insertions(+)
9866
9867 commit 95d78acb4ca72951fc9552c9fcffa645b1be739a
9868 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9869 Date:   Wed Nov 4 16:45:44 2009 +0000
9870
9871     script: Allow parsing child properties
9872     
9873     The ClutterScript parser needs to be extended to parse child properties
9874     and apply them after an actor has been added to a container. In order to
9875     distinguish child properties from regular GObject properties we can use
9876     the "child::" prefix, e.g.:
9877     
9878       {
9879         "type" : "ClutterRectangle",
9880         "id" : "child-01",
9881         "child::has-focus" : true,
9882         ...
9883       }
9884     
9885     Parsing child properties can be deferred to the ClutterScriptable
9886     interface, just like regular properties.
9887
9888  .gitignore                         |    1 +
9889  clutter/clutter-script-parser.c    |  115 +++++++++++++++++++++++++-
9890  clutter/clutter-script-private.h   |    2 +
9891  tests/conform/Makefile.am          |    2 +
9892  tests/conform/test-conform-main.c  |    1 +
9893  tests/conform/test-script-parser.c |  156 ++++++++++++++++++++++++++++++++++++
9894  tests/data/test-script-child.json  |   21 +++++
9895  7 files changed, 297 insertions(+), 1 deletion(-)
9896
9897 commit c52d8780325a0077f7fc6e898d902462ffbe3c8c
9898 Author: Robert Bragg <robert@linux.intel.com>
9899 Date:   Sat Oct 17 04:06:56 2009 +0100
9900
9901     [cogl-primitives] Get rid of driver specific cogl-primitives code
9902     
9903     These files were practically identical, except the gles code had additional
9904     support for filling paths without a stencil buffer.  All the driver code has
9905     now been moved into cogl/cogl-primitives.c
9906
9907  clutter/cogl/cogl/cogl-primitives.c             |  488 ++++++++++++++++++++-
9908  clutter/cogl/cogl/driver/gl/Makefile.am         |    1 -
9909  clutter/cogl/cogl/driver/gl/cogl-primitives.c   |  313 --------------
9910  clutter/cogl/cogl/driver/gles/Makefile.am       |    1 -
9911  clutter/cogl/cogl/driver/gles/cogl-primitives.c |  516 -----------------------
9912  5 files changed, 482 insertions(+), 837 deletions(-)
9913
9914 commit 8ba13d6495d00885380db3a23f552633c5c43c0a
9915 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9916 Date:   Wed Nov 4 15:21:03 2009 +0000
9917
9918     script: Clean up Color parsing rules
9919     
9920     All the ClutterColor parsing rules should be coalesced inside
9921     clutter_script_parse_color(): object, array and string notations
9922     are the canonical ways of defining a ClutterColor inside a
9923     ClutterScript definition. Having a single function in charge of
9924     the parsing cleans up the code.
9925
9926  clutter/clutter-script-parser.c    |   17 +++++++----------
9927  tests/conform/test-script-parser.c |    6 ++++++
9928  2 files changed, 13 insertions(+), 10 deletions(-)
9929
9930 commit 3e815de32b2aa525365b80fb7d2f5d5dc9d2fb72
9931 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9932 Date:   Wed Nov 4 15:20:12 2009 +0000
9933
9934     script: Simplify boxed types parsing
9935     
9936     We should use the typed accessors for complex JSON types, and
9937     be more liberal in what we accept.
9938
9939  clutter/clutter-script-parser.c |  147 +++++++++++++++------------------------
9940  1 file changed, 57 insertions(+), 90 deletions(-)
9941
9942 commit 4df59d330ca4ba7ffcff830001ddbc4fe64167ee
9943 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9944 Date:   Wed Nov 4 14:05:13 2009 +0000
9945
9946     script: Separate construction from properties application
9947     
9948     Currently, ClutterScriptParser will construct the object (using the
9949     construct-only and construct parameters), apply the properties from
9950     the ClutterScript definition, and eventuall will add children and
9951     behaviours.
9952     
9953     The construction phase should be more compartimentalized: the objects
9954     should be constructed first and eventual children and behaviours
9955     added. Then, once an object is requested or when the parsing process
9956     has terminated, all the properties should be applied.
9957     
9958     This change allows us to set up the actors before setting their
9959     non-construct properties.
9960
9961  clutter/clutter-script-parser.c  |  137 ++++++++++++++++++--------------------
9962  clutter/clutter-script-private.h |    8 ++-
9963  clutter/clutter-script.c         |   22 ++++--
9964  3 files changed, 88 insertions(+), 79 deletions(-)
9965
9966 commit 31e5dadb68cf285d57935573e16713201f24503e
9967 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9968 Date:   Wed Nov 4 13:32:26 2009 +0000
9969
9970     script: Move all parser code inside ClutterScriptParser
9971     
9972     ClutterScript is currently a mix of parser-related code and
9973     the ClutterScript object. All the parser-related code should
9974     be moved inside a private class, ClutterScriptParser, inheriting
9975     from JsonParser.
9976
9977  clutter/clutter-script-parser.c  | 1288 ++++++++++++++++++++++++++++++++-
9978  clutter/clutter-script-private.h |   38 +-
9979  clutter/clutter-script.c         | 1485 +++-----------------------------------
9980  3 files changed, 1438 insertions(+), 1373 deletions(-)
9981
9982 commit d7cfa158513263a5f75934a8f9ddceea9a6b8800
9983 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9984 Date:   Wed Nov 4 11:50:45 2009 +0000
9985
9986     conform: Add the beginnings of a ClutterScript test suite
9987     
9988     ClutterScript is a very complicated piece of machinery, with a
9989     parser that has custom variations on top of the basic JSON
9990     format; it could also be extended in the future, so if we don't
9991     want to introduce regressions or break existing ClutterScript
9992     definitions, we'd better have a conformance test suite.
9993
9994  .gitignore                         |    1 +
9995  tests/conform/Makefile.am          |    1 +
9996  tests/conform/test-conform-main.c  |    2 ++
9997  tests/conform/test-script-parser.c |   33 +++++++++++++++++++++++++++++++++
9998  tests/data/Makefile.am             |   13 ++++++++-----
9999  tests/data/test-script-single.json |   10 ++++++++++
10000  6 files changed, 55 insertions(+), 5 deletions(-)
10001
10002 commit 7d891d9dd4acbaedc5b2a2f95445a1e93fd1529f
10003 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10004 Date:   Wed Nov 4 11:47:09 2009 +0000
10005
10006     tests: Allow getting data files from the tests/data directory
10007     
10008     The units under the conformance test suite should be able to use
10009     external files. Linking the files in tests/conform like the
10010     interactive tests do seems like a hack piled on top of a hack, so
10011     instead we should provide a programmatic way for a conformance
10012     test unit to get the full path of a file, regardless of where the
10013     tests/data directory is.
10014     
10015     We can use a define to get the full path of tests/data and then
10016     a function using g_build_filename() to construct the path to the
10017     file we want.
10018
10019  tests/conform/Makefile.am           |   14 +++++++++-----
10020  tests/conform/test-conform-common.h |    1 +
10021  tests/conform/test-conform-main.c   |    6 ++++++
10022  3 files changed, 16 insertions(+), 5 deletions(-)
10023
10024 commit 3e20468c6bd982eb8be0e3cbf9c9b72df38eaeeb
10025 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10026 Date:   Wed Nov 4 11:05:25 2009 +0000
10027
10028     Add new conformance tests to the ignore list
10029
10030  .gitignore |    3 +++
10031  1 file changed, 3 insertions(+)
10032
10033 commit 6e571928a49641f353f31e1f69328e1466b6ac66
10034 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10035 Date:   Tue Nov 3 18:30:28 2009 +0000
10036
10037     script: Take a copy of property nodes
10038     
10039     Instead of counting on a JsonNode pointer to survive we should take
10040     a copy. This allows keeping unresolved properties across different
10041     ClutterScript passes.
10042
10043  clutter/clutter-script.c |    5 ++++-
10044  1 file changed, 4 insertions(+), 1 deletion(-)
10045
10046 commit 4ad57aa3e4caedd89e9c60c60aadbc239290cfe3
10047 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10048 Date:   Tue Nov 3 18:29:52 2009 +0000
10049
10050     script: Use JsonObject direct accessors
10051     
10052     Instead of getting the JsonNode for a member of which we mandate
10053     the type we can use the typed accessors of JsonObject.
10054
10055  clutter/clutter-script.c |   16 ++++++++++------
10056  1 file changed, 10 insertions(+), 6 deletions(-)
10057
10058 commit 0ff420fab59221fccf711893c363145607b40898
10059 Merge: f6e0e48 4258214
10060 Author: Robert Bragg <robert@linux.intel.com>
10061 Date:   Wed Nov 4 03:46:45 2009 +0000
10062
10063     Merge commit 'cogl-reorg-draw-buffers'
10064     
10065     * cogl-reorg-draw-buffers: (38 commits)
10066       [test-fbo] greatly simplify the test
10067       [tests] test-backface-culling: test culling with offscreen rendering
10068       [tests] Adds test-cogl-readpixels.c for very basic cogl_read_pixels testing
10069       [tests] Adds test-cogl-offscreen to validate offscreen draw buffer
10070       [tests] test-cogl-viewport tests semantics of over/under size viewports
10071       [test-texture-fbo] comment the colors defined in corner_colors
10072       Add a conformance test for clutter_texture_new_from_actor
10073       [cogl-texture-2d-sliced] allow COGL_FORMAT_ANY with _new_with_size()
10074       [texture] fix rounding when calculating update_fbo viewport offset
10075       [texture] switch to a new design for handling offscreen rendering
10076       [texture] split out fbo update code from cluter_texture_paint
10077       [texture] push/pop draw buffer when painting actors to a texture
10078       [texture] Avoid redundant use of cogl_clip_stack_save when drawing offscreen
10079       [cogl-draw-buffer] fix Cogl -> GL viewport coord conversion
10080       [cogl_clip_push_window_rect] fix Cogl -> GL coordinate conversion
10081       [matrix] Adds cogl_matrix_get_inverse API
10082       [debug] Adds a COGL_DEBUG=matrices debug option
10083       [cogl-matrix] Import Mesa's matrix manipulation code
10084       [cogl] avoid any state changes when cogl_set_backface_culling_enable is a nop
10085       [cogl] Use clockwise face winding for offscreen buffers with culling enabled
10086       ...
10087
10088 commit 4258214e509edbc4ff82de418ffc9662088fa835
10089 Author: Robert Bragg <robert@linux.intel.com>
10090 Date:   Wed Oct 7 10:40:15 2009 +0100
10091
10092     [test-fbo] greatly simplify the test
10093     
10094     This test tried to do too much, and I can't remember the last time I saw this
10095     test work.
10096     
10097     It no longer tries to create a texture from an offscreen actor and it no
10098     longer tries to use shaders.
10099     
10100     It does though show that chaining of clutter_texture_new_from_actor now
10101     works, and that animating the source actor is reflected in textures created
10102     from it.
10103     
10104     When run you should see three actors:
10105     - on the left is the pristine source actor rotating around the y-axis
10106     - in the middle is the first texture created from the source actor
10107     - and on the right a texture created from the middle actor
10108     
10109     Note: the somewhat strange bobbing of the middle and right textures is
10110     actually correct given how it was decided long ago to map the transformed
10111     (to screen space) allocation of the source actor to the texture.  When the
10112     hand spins around the perspective projection of the top of the hand results
10113     in the origin of the texture bobbing up to a higher stage position, but the
10114     position of the textures is fixed.  This design also means we end up
10115     reallocating our offscreen draw buffer every frame that the actors
10116     transformed size changes, which isn't ideal.
10117
10118  tests/interactive/test-fbo.c |  192 ++++++++----------------------------------
10119  1 file changed, 34 insertions(+), 158 deletions(-)
10120
10121 commit ffb592de5908d844b527cb4fe75b7195eb0dc55d
10122 Author: Robert Bragg <robert@linux.intel.com>
10123 Date:   Thu Oct 22 19:01:27 2009 +0100
10124
10125     [tests] test-backface-culling: test culling with offscreen rendering
10126     
10127     Since offscreen rendering is internally forced to be upside down Cogl
10128     needs to reverse the glFrontFace winding order so as not to interfere
10129     with the use of cogl_set_backface_culling_enabled()
10130     
10131     This ensures we test that mechanism.
10132
10133  tests/conform/test-backface-culling.c |  172 +++++++++++++++++++++------------
10134  1 file changed, 111 insertions(+), 61 deletions(-)
10135
10136 commit 60b642f5d6aada0d237cfb7d81f6b78299c29e73
10137 Author: Robert Bragg <robert@linux.intel.com>
10138 Date:   Thu Oct 22 16:56:01 2009 +0100
10139
10140     [tests] Adds test-cogl-readpixels.c for very basic cogl_read_pixels testing
10141     
10142     Mostly this was written to verify that we don't flip the data read back from
10143     an offscreen draw buffer.  (since all offscreen rendering is done upside
10144     down)
10145
10146  tests/conform/Makefile.am            |    1 +
10147  tests/conform/test-cogl-readpixels.c |  153 ++++++++++++++++++++++++++++++++++
10148  tests/conform/test-conform-main.c    |    1 +
10149  3 files changed, 155 insertions(+)
10150
10151 commit 2ff7f2d287f8dc80f0e6e02bdc388d4fee99d878
10152 Author: Robert Bragg <robert@linux.intel.com>
10153 Date:   Thu Oct 22 12:36:17 2009 +0100
10154
10155     [tests] Adds test-cogl-offscreen to validate offscreen draw buffer
10156     
10157     This adds a basic test to check that rendering a few colored rectangles
10158     offscreen works and that the modelview gets restored when switching back to
10159     the previous buffer.
10160
10161  tests/conform/Makefile.am           |    1 +
10162  tests/conform/test-cogl-offscreen.c |  169 +++++++++++++++++++++++++++++++++++
10163  tests/conform/test-conform-main.c   |    1 +
10164  3 files changed, 171 insertions(+)
10165
10166 commit 369e68630daf7f833da986a19ad17043b43d61e3
10167 Author: Robert Bragg <robert@linux.intel.com>
10168 Date:   Wed Oct 21 16:06:43 2009 +0100
10169
10170     [tests] test-cogl-viewport tests semantics of over/under size viewports
10171     
10172     Unlike OpenGL Cogl puts the origin of windows/viewports at the top left
10173     instead of bottom left.  This test verifies that we correctly translate Cogl
10174     viewports to OpenGL viewports for the awkward cases where the given viewport
10175     has an offset and/or the viewport has a different size to the current draw
10176     buffer.
10177
10178  tests/conform/Makefile.am          |    1 +
10179  tests/conform/test-cogl-viewport.c |  417 ++++++++++++++++++++++++++++++++++++
10180  tests/conform/test-conform-main.c  |    2 +
10181  3 files changed, 420 insertions(+)
10182
10183 commit bc24190b9ac32405d4be24d84968357921c7f7e2
10184 Author: Robert Bragg <robert@linux.intel.com>
10185 Date:   Mon Nov 2 01:23:25 2009 +0000
10186
10187     [test-texture-fbo] comment the colors defined in corner_colors
10188     
10189     It helps to be able to quickly glance at the definition to see which
10190     quadrant of the test actor should be which color, so when debugging a
10191     problem and looking at the visual output you can easily verify if it's being
10192     flipped upside down/left to right.
10193
10194  tests/conform/test-texture-fbo.c |    8 ++++----
10195  1 file changed, 4 insertions(+), 4 deletions(-)
10196
10197 commit b41a81fb0868e51bf03d25446f8cc9748fcd6bc7
10198 Author: Neil Roberts <neil@linux.intel.com>
10199 Date:   Thu Sep 17 14:25:29 2009 +0100
10200
10201     Add a conformance test for clutter_texture_new_from_actor
10202     
10203     This contains four tests :-
10204     
10205      - A regular onscreen source with a clone next to it
10206     
10207      - An offscreen source with a clone. This is currently commented out
10208        because it no longer works.
10209     
10210      - An onscreen source with a rectangular clip and a clone.
10211     
10212      - An onscreen source with a clip from a path and a clone.
10213     
10214     The sources are all a 2x2 grid of colors. Each clone is tested that it
10215     either contains the color that should be at that grid position or that
10216     the stage color is showing through if the source is clipped.
10217
10218  tests/conform/Makefile.am         |    1 +
10219  tests/conform/test-conform-main.c |    1 +
10220  tests/conform/test-texture-fbo.c  |  255 +++++++++++++++++++++++++++++++++++++
10221  3 files changed, 257 insertions(+)
10222
10223 commit fec13f6202067f0700514db6676d3984b78a26df
10224 Author: Robert Bragg <robert@linux.intel.com>
10225 Date:   Sat Oct 31 00:01:44 2009 +0000
10226
10227     [cogl-texture-2d-sliced] allow COGL_FORMAT_ANY with _new_with_size()
10228     
10229     It's useful when initialzing offscreen draw buffers to be able to ask
10230     Cogl to create a texture of a given size and with the default internal
10231     pixel format.
10232
10233  clutter/cogl/cogl/cogl-texture-2d-sliced.c |    2 +-
10234  1 file changed, 1 insertion(+), 1 deletion(-)
10235
10236 commit ae57c30e937d90eb1e541edd36ae9f81aedc2854
10237 Author: Robert Bragg <robert@linux.intel.com>
10238 Date:   Sun Nov 1 23:56:03 2009 +0000
10239
10240     [texture] fix rounding when calculating update_fbo viewport offset
10241     
10242     When rendering to an fbo for supporting clutter_texture_new_from_actor we
10243     render to an fbo with the same size as the source actor, but with a viewport
10244     the same size as the stage.  We offset the viewport so when we render the
10245     source actor in its normal transformed stage position it lands on the fbo.
10246     Previously we were rounding the transformed position given as a float by
10247     truncating the fraction (just using a C cast) but that resulted in an
10248     incorrect pixel offset when rendering offscreen depending on the source
10249     position.
10250     
10251     We now simply + 0.5 before casting (or -0.5 for negative numbers)
10252
10253  clutter/clutter-texture.c |   14 +++++++++++++-
10254  1 file changed, 13 insertions(+), 1 deletion(-)
10255
10256 commit 309f852efbde6a3e025225d01293509c28989d0c
10257 Author: Robert Bragg <robert@linux.intel.com>
10258 Date:   Mon Nov 2 01:14:50 2009 +0000
10259
10260     [texture] switch to a new design for handling offscreen rendering
10261     
10262     For supporting clutter_texture_new_from_actor(): when updating a
10263     ClutterTexture's fbo we previously set up an offset frustum in the
10264     perspective matrix before rendering source actors to an offscreen draw
10265     buffer so as to give a perspective as if it were being drawn at its
10266     original stage location.
10267     
10268     Now that Cogl supports offset viewports there is a simpler way...
10269     
10270     When we come to render the source actor to our offscreen draw buffer we
10271     now copy the projection matrix from the stage; we create a viewport
10272     that's also the same size as the stage (though larger than the offscreen
10273     draw buffer) and as before we apply the modelview transformations of
10274     the source actors ancestry before painting it.
10275     
10276     The only trick we need now is to offset the viewport according to the
10277     transformed (to screen space) allocation of the source actor (something we
10278     required previously too).  We negatively offset the stage sized viewport
10279     such that the smaller offscreen draw buffer is positioned to sit underneath
10280     the source actor in stage coordinates.
10281
10282  clutter/clutter-texture.c |  100 ++++++++++++++++-----------------------------
10283  1 file changed, 35 insertions(+), 65 deletions(-)
10284
10285 commit 94a6028358caed32dba7ba37db9784c95d4690f2
10286 Author: Robert Bragg <robert@linux.intel.com>
10287 Date:   Thu Sep 24 14:34:09 2009 +0100
10288
10289     [texture] split out fbo update code from cluter_texture_paint
10290     
10291     To help keep clutter_texture_paint maintainable this splits out a big
10292     chunk of standalone code that's responsible for updating the fbo when
10293     clutter_texture_new_from_actor has been used.
10294
10295  clutter/clutter-texture.c |  156 +++++++++++++++++++++++----------------------
10296  1 file changed, 81 insertions(+), 75 deletions(-)
10297
10298 commit 2762e6d9b90731fd05b46aac407cebd3ba372027
10299 Author: Robert Bragg <robert@linux.intel.com>
10300 Date:   Tue Oct 13 22:22:39 2009 +0100
10301
10302     [texture] push/pop draw buffer when painting actors to a texture
10303     
10304     When updating the FBO for a source actor (to support
10305     clutter_texture_new_from_actor()) we used to simply set an offscreen draw
10306     buffer to be current, paint the source actor and then explicitly set the
10307     window to be current again.  This precluded chaining texture_new_from_actor
10308     though because updating another FBO associated with a source actor would end
10309     up restoring the window as the current buffer instead of the previous
10310     offscreen buffer.  Now that we use Cogl's draw buffer stack; chaining
10311     clutter_texture_new_from_actor() should be possible.
10312
10313  clutter/clutter-texture.c |    5 +++--
10314  1 file changed, 3 insertions(+), 2 deletions(-)
10315
10316 commit c7d229585f2e8dec30162cbad955230c25e16718
10317 Author: Robert Bragg <robert@linux.intel.com>
10318 Date:   Fri Oct 23 00:16:30 2009 +0100
10319
10320     [texture] Avoid redundant use of cogl_clip_stack_save when drawing offscreen
10321     
10322     Since cogl draw buffers now own their clip state the stage's clip state will
10323     automatically be saved and restored via the cogl_set_draw_buffer API.
10324
10325  clutter/clutter-texture.c |    6 ------
10326  1 file changed, 6 deletions(-)
10327
10328 commit 90dbae5aa9a31688f2dd73b75df67607795fa60e
10329 Author: Robert Bragg <robert@linux.intel.com>
10330 Date:   Sat Oct 31 00:00:33 2009 +0000
10331
10332     [cogl-draw-buffer] fix Cogl -> GL viewport coord conversion
10333     
10334     Before we call glViewport we need to convert Cogl viewport coordinates
10335     (where the origin is defined to be top left) to OpenGL coordinates
10336     (where the origin is defined to be bottom left)
10337     
10338     We weren't considering that offscreen rendering is always upside down
10339     and in this case Cogl coordinates == OpenGL coordinates.
10340
10341  clutter/cogl/cogl/cogl-draw-buffer.c |   15 +++++++++++----
10342  1 file changed, 11 insertions(+), 4 deletions(-)
10343
10344 commit 149e3e168a14049bb496a6438b711caa1fbe8129
10345 Author: Robert Bragg <robert@linux.intel.com>
10346 Date:   Fri Oct 30 23:57:56 2009 +0000
10347
10348     [cogl_clip_push_window_rect] fix Cogl -> GL coordinate conversion
10349     
10350     Firstly this now uses the draw buffer height not the viewport height
10351     when we need to perform a y = height - y conversion, since (as the
10352     name suggests) we are dealing with window coordinates not viewport
10353     coordinates.
10354     
10355     Secondly this skips any conversion when the current draw buffer is an
10356     offscreen draw buffer since offscreen rendering is always forced to be
10357     upside down and in this case Cogl window coordinates == GL window
10358     coordinates.
10359
10360  clutter/cogl/cogl/cogl-clip-stack.c |   32 ++++++++++++++++++++++++++------
10361  1 file changed, 26 insertions(+), 6 deletions(-)
10362
10363 commit 0369a1b84d725c6dbd90f9a9dd1753bea1f9c3e1
10364 Author: Robert Bragg <robert@linux.intel.com>
10365 Date:   Mon Oct 26 17:51:34 2009 +0000
10366
10367     [matrix] Adds cogl_matrix_get_inverse API
10368     
10369     This new API takes advantage of the recently imported Mesa code to support
10370     inverse matrix calculation.  The matrix code keeps track (via internal
10371     flags) of the transformations a matrix represents so that it can select an
10372     optimized inversion function.
10373     
10374     Note: although other aspects of the Cogl matrix API have followed a similar
10375     style to Cairo's matrix API we haven't added a cogl_matrix_invert API
10376     because the inverse of a CoglMatrix is actually cached as part of the
10377     CoglMatrix structure meaning a destructive API like cogl_matrix_invert
10378     doesn't let users take advantage of this caching design.
10379
10380  clutter/cogl/cogl/cogl-context.h      |    3 ---
10381  clutter/cogl/cogl/cogl-matrix-stack.c |   11 ++++++++
10382  clutter/cogl/cogl/cogl-matrix-stack.h |    3 +++
10383  clutter/cogl/cogl/cogl-matrix.c       |   33 ++++++++++++++---------
10384  clutter/cogl/cogl/cogl-matrix.h       |   21 +++++++++++++++
10385  clutter/cogl/cogl/cogl.c              |   47 +++++++--------------------------
10386  6 files changed, 65 insertions(+), 53 deletions(-)
10387
10388 commit 8051596e96a296cf30887f6e522a288895b628f8
10389 Author: Robert Bragg <robert@linux.intel.com>
10390 Date:   Mon Oct 26 11:01:33 2009 +0000
10391
10392     [debug] Adds a COGL_DEBUG=matrices debug option
10393     
10394     This adds a COGL_DEBUG=matrices debug option that can be used to trace all
10395     matrix manipulation done using the Cogl API.  This can be handy when you
10396     break something in such a way that a trace is still comparable with a
10397     previous working version since you can simply diff a log of the broken
10398     version vs the working version to home in on the bug.
10399
10400  clutter/cogl/cogl/cogl-debug.c          |    3 +-
10401  clutter/cogl/cogl/cogl-debug.h          |    3 +-
10402  clutter/cogl/cogl/cogl-matrix-private.h |   47 +++++++++++++++++++++++++++++++
10403  clutter/cogl/cogl/cogl-matrix.c         |   20 +++++++++++++
10404  clutter/cogl/cogl/cogl.c                |    5 ++++
10405  5 files changed, 76 insertions(+), 2 deletions(-)
10406
10407 commit eb438dd499c002a7d770d5e3d0c1fb1c84da933e
10408 Author: Robert Bragg <robert@linux.intel.com>
10409 Date:   Mon Oct 26 08:23:21 2009 +0000
10410
10411     [cogl-matrix] Import Mesa's matrix manipulation code
10412     
10413     This pulls in code from Mesa to improve our matrix manipulation support. It
10414     includes support for calculating the inverse of matrices based on top of a
10415     matrix categorizing system that allows optimizing certain matrix types.
10416     (the main thing we were after) but also adds some optimisations for
10417     rotations.
10418     
10419     Changes compared to the original code from Mesa:
10420     
10421     - Coding style is consistent with the rest of Cogl
10422     - Instead of allocating matrix->m and matrix->inv using malloc, our public
10423       CoglMatrix typedef is large enough to directly contain the matrix, its
10424       inverse, a type and a set of flags.
10425     - Instead of having a _math_matrix_analyse which updates the type, flags and
10426       inverse, we have _math_matrix_update_inverse which essentially does the
10427       same thing (internally making use of _math_matrix_update_type_and_flags())
10428       but with additional guards in place to bail out when the inverse matrix is
10429       still valid.
10430     - When initializing a matrix with the identity matrix we don't immediately
10431       initialize the inverse matrix; rather we just set the dirty flag for the
10432       inverse (since it's likely the user won't request the inverse of the
10433       identity matrix)
10434
10435  clutter/cogl/cogl/Makefile.am        |    2 +
10436  clutter/cogl/cogl/cogl-matrix-mesa.c | 1698 ++++++++++++++++++++++++++++++++++
10437  clutter/cogl/cogl/cogl-matrix-mesa.h |  226 +++++
10438  clutter/cogl/cogl/cogl-matrix.c      |   39 +-
10439  clutter/cogl/cogl/cogl-matrix.h      |    6 +-
10440  5 files changed, 1967 insertions(+), 4 deletions(-)
10441
10442 commit d38d888f786f3be03778bcc10f20389e6c7ff1ff
10443 Author: Robert Bragg <robert@linux.intel.com>
10444 Date:   Thu Oct 22 19:09:20 2009 +0100
10445
10446     [cogl] avoid any state changes when cogl_set_backface_culling_enable is a nop
10447     
10448     This is a simple optimization to bail out of cogl_set_backface_culling_enable
10449     if it's not resulting in a change of state.
10450
10451  clutter/cogl/cogl/cogl.c |    3 +++
10452  1 file changed, 3 insertions(+)
10453
10454 commit 764cca75b4ee6bb269097445cb5220f0e044a57c
10455 Author: Robert Bragg <robert@linux.intel.com>
10456 Date:   Thu Oct 22 19:01:52 2009 +0100
10457
10458     [cogl] Use clockwise face winding for offscreen buffers with culling enabled
10459     
10460     Because Cogl defines the origin for texture as top left and offscreen draw
10461     buffers can be used to render to textures, we (internally) force all
10462     offscreen rendering to be upside down. (because OpenGL defines the origin
10463     to be bottom left)
10464     
10465     By forcing the users scene to be rendered upside down though we also reverse
10466     the winding order of all the drawn triangles which may interfere with the
10467     users use of backface culling.  This patch ensures that we reverse the
10468     winding order for a front face (if culling is in use) while rendering
10469     offscreen so we don't conflict with the users back face culling.
10470
10471  clutter/cogl/cogl/cogl-context.c       |    2 ++
10472  clutter/cogl/cogl/cogl-context.h       |    1 +
10473  clutter/cogl/cogl/cogl-internal.h      |    9 +++++++++
10474  clutter/cogl/cogl/cogl-journal.c       |    1 +
10475  clutter/cogl/cogl/cogl-primitives.c    |    1 +
10476  clutter/cogl/cogl/cogl-vertex-buffer.c |    1 +
10477  clutter/cogl/cogl/cogl.c               |   33 ++++++++++++++++++++++++++++++++
10478  7 files changed, 48 insertions(+)
10479
10480 commit b2ebb7db485d0a58bcb642fe9e4584c85ac9a503
10481 Author: Robert Bragg <robert@linux.intel.com>
10482 Date:   Fri Oct 30 23:54:13 2009 +0000
10483
10484     [main] Use cogl_read_pixels not glReadPixels in clutter-main.c
10485     
10486     The debugging function read_pixels_to_file() and _clutter_do_pick were both
10487     directly calling glReadPixels, but we don't wan't Clutter making direct
10488     OpenGL calls and Cogl provides a suitable alternative.  It also means
10489     read_pixels_to_file() doesn't need to manually flip the data read due to
10490     differences in Clutter/Cogl coordinate systems.
10491
10492  clutter/clutter-main.c |   31 +++++++++++++++----------------
10493  1 file changed, 15 insertions(+), 16 deletions(-)
10494
10495 commit 40b8399d49f6b0383b9eebcdf1ca501b5edb4f39
10496 Author: Robert Bragg <robert@linux.intel.com>
10497 Date:   Tue Nov 3 12:54:45 2009 +0000
10498
10499     [cogl_read_pixels] don't force a 4 byte pack alignment
10500     
10501     Technically this change shouldn't make a difference since we are
10502     calling glReadPixels with GL_RGBA GL_UNSIGNED_BYTE which is a 4
10503     byte format and it should always result in the same value according
10504     to how OpenGL calculates the location of sequential rows.
10505     
10506     i.e. k  = a/s * ceil(snl/a) where:
10507      a = alignment
10508      s = component size (1)
10509      n = number of components per pixel (4)
10510      l = number of pixels in a row
10511     gives:
10512     k = 4/1 * ceil(4l/4) and k = 1/1 * ceil(4l/1) which are equivalent
10513     
10514     I'm changing it because I've seen i915 driver code that bails out of
10515     hardware accelerated paths if the alignment isn't 1, and because
10516     conceptually we have no alignment constraints here so even if the current
10517     value has no effect, when we start reading back other formats it may upset
10518     things.
10519
10520  clutter/cogl/cogl/cogl.c |   10 +++++-----
10521  1 file changed, 5 insertions(+), 5 deletions(-)
10522
10523 commit a222ee22f9dd35c5e0671914206759699e63750d
10524 Author: Robert Bragg <robert@linux.intel.com>
10525 Date:   Mon Nov 2 01:11:21 2009 +0000
10526
10527     [cogl_read_pixels] call cogl_flush() before changing glPixelStore state
10528     
10529     We were previously calling cogl_flush() after setting up the glPixelStore
10530     state for calling glReadPixels, but flushing the journal could itself
10531     change the glPixelStore state.
10532
10533  clutter/cogl/cogl/cogl.c |    8 ++++----
10534  1 file changed, 4 insertions(+), 4 deletions(-)
10535
10536 commit ed431a3c65507b3e3da4760eae6e2b22be1f27f5
10537 Author: Robert Bragg <robert@linux.intel.com>
10538 Date:   Mon Nov 2 01:10:02 2009 +0000
10539
10540     [cogl_read_pixels] ensure we flush the current draw buffer state before reading
10541     
10542     Make sure we call _cogl_draw_buffer_flush_state() before glReadPixels() to
10543     be sure we have bound the correct framebuffer.
10544
10545  clutter/cogl/cogl/cogl.c |    3 +++
10546  1 file changed, 3 insertions(+)
10547
10548 commit b47404c91d6fac264840a0dafb5dd2dd5567c6a9
10549 Author: Robert Bragg <robert@linux.intel.com>
10550 Date:   Mon Nov 2 01:12:10 2009 +0000
10551
10552     [cogl_read_pixels] fixes for calculating the y offset when rendering offscreen
10553     
10554     Since offscreen rendering is forced to be upside down we don't need to do
10555     any conversion of the users coordinates to go from Cogl window coordinates
10556     to OpenGL window coordinates.
10557
10558  clutter/cogl/cogl/cogl.c |    9 +++++++--
10559  1 file changed, 7 insertions(+), 2 deletions(-)
10560
10561 commit 426197f51da9c4351b36812276f0caee06965cb1
10562 Author: Robert Bragg <robert@linux.intel.com>
10563 Date:   Thu Oct 22 16:55:07 2009 +0100
10564
10565     [read-pixels] don't flip data when reading from offscreen draw buffers
10566     
10567     Since we do all offscreen rendering upside down (so that we can have the
10568     origin for texture coordinates be the top left of textures for the cases
10569     where offscreen draw buffers are bound to textures) we don't need to flip
10570     data read back from an offscreen framebuffer before we we return it to the
10571     user.
10572
10573  clutter/cogl/cogl/cogl.c |    9 ++++++++-
10574  1 file changed, 8 insertions(+), 1 deletion(-)
10575
10576 commit 21322848e0094a025dc0b5461eff30e0d66542da
10577 Author: Robert Bragg <robert@linux.intel.com>
10578 Date:   Wed Oct 21 23:22:45 2009 +0100
10579
10580     [clip-stack] tidy up transform_point() code
10581     
10582     I was originally expecting the code not to handle offset viewports or
10583     viewports with a different size to the framebuffer, but it turns out the
10584     code worked fine.  In the process though I think I made the code slightly
10585     more readable.
10586
10587  clutter/cogl/cogl/cogl-clip-stack.c |   32 +++++++++++++++++++++-----------
10588  1 file changed, 21 insertions(+), 11 deletions(-)
10589
10590 commit 8c3a132ecb3ce805c45dad70c05417713ed9d05d
10591 Author: Robert Bragg <robert@linux.intel.com>
10592 Date:   Tue Nov 3 13:26:58 2009 +0000
10593
10594     [cogl] deprecate cogl_viewport() in favour of cogl_set_viewport()
10595     
10596     cogl_viewport only accepted a viewport width and height, but there are times
10597     when it's also desireable to have a viewport offset so that a scene can be
10598     translated after projection but before hitting the framebuffer.
10599
10600  README                      |    6 ++++++
10601  clutter/clutter-texture.c   |    2 +-
10602  clutter/cogl/cogl/cogl.c    |   12 ++++++------
10603  clutter/cogl/cogl/cogl.h.in |   22 +++++++++++++++++++++-
10604  4 files changed, 34 insertions(+), 8 deletions(-)
10605
10606 commit 1e2d88e7891a02b26d0143e28788072e8731be6b
10607 Author: Robert Bragg <robert@linux.intel.com>
10608 Date:   Wed Oct 21 23:24:28 2009 +0100
10609
10610     [cogl_read_pixels] use buffer not viewport height to calculate y offset
10611     
10612     glReadPixel takes window coordinates not viewport coordinates so we
10613     shouldn't have been assuming that the viewport height == window height.
10614
10615  clutter/cogl/cogl/cogl.c |    8 +++-----
10616  1 file changed, 3 insertions(+), 5 deletions(-)
10617
10618 commit e1630be35a912125b1f493c7d1007b65eaecd048
10619 Author: Robert Bragg <robert@linux.intel.com>
10620 Date:   Wed Oct 21 23:20:44 2009 +0100
10621
10622     [draw-buffer] Adds cogl_draw_buffer_get_{width,height} API
10623     
10624     Simply adds missing API to query the width and height of any Cogl draw buffer.
10625
10626  clutter/cogl/cogl/cogl-draw-buffer-private.h |    4 ++++
10627  clutter/cogl/cogl/cogl-draw-buffer.c         |   14 ++++++++++++++
10628  2 files changed, 18 insertions(+)
10629
10630 commit 12af2751392ea53959fa41dd7cb19e07358655f2
10631 Author: Robert Bragg <robert@linux.intel.com>
10632 Date:   Wed Oct 21 23:24:49 2009 +0100
10633
10634     [cogl] Make sure Cogl always knows the current window geometry
10635     
10636     Because Cogl defines the origin of viewport and window coordinates to be
10637     top-left it always needs to know the size of the current window so that Cogl
10638     window/viewport coordinates can be transformed into OpenGL coordinates.
10639     
10640     This also fixes cogl_read_pixels to use the current draw buffer height
10641     instead of the viewport height to determine the OpenGL y coordinate to use
10642     for glReadPixels.
10643
10644  clutter/clutter-backend.c            |   19 +++++++++++++++++-
10645  clutter/clutter-stage.c              |    8 ++++++++
10646  clutter/cogl/cogl/cogl-context.c     |    2 +-
10647  clutter/cogl/cogl/cogl-context.h     |    2 +-
10648  clutter/cogl/cogl/cogl-draw-buffer.c |   36 +++++++++++++++++++++++++++++-----
10649  clutter/cogl/cogl/cogl.h.in          |    3 +++
10650  6 files changed, 62 insertions(+), 8 deletions(-)
10651
10652 commit e3391b0173479b9ba3b01321ab606d83999bee1a
10653 Author: Robert Bragg <robert@linux.intel.com>
10654 Date:   Thu Oct 22 16:13:01 2009 +0100
10655
10656     [cogl] Make sure we draw upside down to offscreen draw buffers
10657     
10658     First a few notes about Cogl coordinate systems:
10659     - Cogl defines the window origin, viewport origin and texture coordinates
10660     origin to be top left unlike OpenGL which defines them as bottom left.
10661     - Cogl defines the modelview and projection identity matrices in exactly the
10662     same way as OpenGL.
10663     - I.e. we believe that for 2D centric constructs: windows/framebuffers,
10664     viewports and textures developers are more used to dealing with a top left
10665     origin, but when modeling objects in 3D; an origin at the center with y
10666     going up is quite natural.
10667     
10668     The way Cogl handles textures is by uploading data upside down in OpenGL
10669     terms so that bottom left becomes top left.  (Note: This also has the
10670     benefit that we don't need to flip the data we get from image decoding
10671     libraries since they typically also consider top left to be the image
10672     origin.)
10673     
10674     The viewport and window coords are mostly handled with various y =
10675     height - y tweaks before we pass y coordinates to OpenGL.
10676     
10677     Generally speaking though the handling of coordinate spaces in Cogl is a bit
10678     fragile.  I guess partly because none of it was design to be, it just
10679     evolved from how Clutter defines its coordinates without much consideration
10680     or testing.  I hope to improve this over a number of commits; starting here.
10681     
10682     This commit deals with the fact that offscreen draw buffers may be bound to
10683     textures but we don't "upload" the texture data upside down, and so if you
10684     texture from an offscreen draw buffer you need to manually flip the texture
10685     coordinates to get it the right way around.  We now force offscreen
10686     rendering to be flipped upside down by tweaking the projection matrix right
10687     before we submit it to OpenGL to scale y by -1.  The tweak is entirely
10688     hidden from the user such that if you call cogl_get_projection you will not
10689     see this scale.
10690
10691  clutter/cogl/cogl/cogl-context.c             |    4 +++
10692  clutter/cogl/cogl/cogl-context.h             |    4 +++
10693  clutter/cogl/cogl/cogl-draw-buffer-private.h |    3 +++
10694  clutter/cogl/cogl/cogl-matrix-stack.c        |   36 +++++++++++++++++++-------
10695  4 files changed, 37 insertions(+), 10 deletions(-)
10696
10697 commit 8b4c496f2a0291eb202d775e210b5901b6b73940
10698 Author: Robert Bragg <robert@linux.intel.com>
10699 Date:   Thu Oct 22 12:35:33 2009 +0100
10700
10701     [cogl] Ensure features are initialized first in cogl_create_context
10702     
10703     Previously some context initializing was being done without valid feature
10704     flags.
10705
10706  clutter/cogl/cogl/cogl-context.c |   10 +++++-----
10707  1 file changed, 5 insertions(+), 5 deletions(-)
10708
10709 commit 419db4dcfbef74475e155f8dd060bc1c526d5643
10710 Author: Robert Bragg <robert@linux.intel.com>
10711 Date:   Sat Oct 17 00:31:26 2009 +0100
10712
10713     [clip-stack] Handle flipped rectangles in try_pushing_rect_as_window_rect()
10714     
10715     We were ignoring the possibility that the current modelview matrix may flip
10716     the incoming rectangle in which case we didn't calculate a valid scissor
10717     rectangle for clipping.
10718     
10719     This fixes: http://bugzilla.o-hand.com/show_bug.cgi?id=1809
10720     (Clipping doesn't work within an FBO)
10721
10722  clutter/cogl/cogl/cogl-clip-stack.c |   18 ++++++++++++++++++
10723  1 file changed, 18 insertions(+)
10724
10725 commit f7d64e5abd5717bb522d28b7565ecccae63271fc
10726 Author: Robert Bragg <robert@linux.intel.com>
10727 Date:   Fri Sep 25 14:34:34 2009 +0100
10728
10729     [draw-buffers] First pass at overhauling Cogl's framebuffer management
10730     
10731     Cogl's support for offscreen rendering was originally written just to support
10732     the clutter_texture_new_from_actor API and due to lack of documentation and
10733     several confusing - non orthogonal - side effects of using the API it wasn't
10734     really possible to use directly.
10735     
10736     This commit does a number of things:
10737     - It removes {gl,gles}/cogl-fbo.{c,h} and adds shared cogl-draw-buffer.{c,h}
10738       files instead which should be easier to maintain.
10739     - internally CoglFbo objects are now called CoglDrawBuffers. A
10740       CoglDrawBuffer is an abstract base class that is inherited from to
10741       implement CoglOnscreen and CoglOffscreen draw buffers.  CoglOffscreen draw
10742       buffers will initially be used to support the
10743       cogl_offscreen_new_to_texture API, and CoglOnscreen draw buffers will
10744       start to be used internally to represent windows as we aim to migrate some
10745       of Clutter's backend code to Cogl.
10746     - It makes draw buffer objects the owners of the following state:
10747       - viewport
10748       - projection matrix stack
10749       - modelview matrix stack
10750       - clip state
10751     (This means when you switch between draw buffers you will automatically be
10752      switching to their associated viewport, matrix and clip state)
10753     
10754     Aside from hopefully making cogl_offscreen_new_to_texture be more useful
10755     short term by having simpler and well defined semantics for
10756     cogl_set_draw_buffer, as mentioned above this is the first step for a couple
10757     of other things:
10758     - Its a step toward moving ownership for windows down from Clutter backends
10759       into Cogl, by (internally at least) introducing the CoglOnscreen draw
10760       buffer.  Note: the plan is that cogl_set_draw_buffer will accept on or
10761       offscreen draw buffer handles, and the "target" argument will become
10762       redundant since we will instead query the type of the given draw buffer
10763       handle.
10764     - Because we have a common type for on and offscreen framebuffers we can
10765       provide a unified API for framebuffer management. Things like:
10766       - blitting between buffers
10767       - managing ancillary buffers (e.g. attaching depth and stencil buffers)
10768       - size requisition
10769       - clearing
10770
10771  clutter/clutter-main.c                             |    5 +-
10772  clutter/cogl/cogl/Makefile.am                      |    2 +
10773  clutter/cogl/cogl/cogl-clip-stack.c                |  199 +++++--
10774  clutter/cogl/cogl/cogl-clip-stack.h                |    9 +-
10775  clutter/cogl/cogl/cogl-context.c                   |   34 +-
10776  clutter/cogl/cogl/cogl-context.h                   |   20 +-
10777  clutter/cogl/cogl/cogl-draw-buffer-private.h       |  126 +++++
10778  clutter/cogl/cogl/cogl-draw-buffer.c               |  555 ++++++++++++++++++++
10779  clutter/cogl/cogl/cogl-journal.c                   |   33 +-
10780  clutter/cogl/cogl/cogl-primitives.c                |   19 +-
10781  clutter/cogl/cogl/cogl-texture.c                   |   19 +-
10782  clutter/cogl/cogl/cogl-vertex-buffer.c             |   14 +-
10783  clutter/cogl/cogl/cogl.c                           |  220 +++++---
10784  clutter/cogl/cogl/cogl.h.in                        |    1 +
10785  clutter/cogl/cogl/driver/gl/Makefile.am            |    2 -
10786  clutter/cogl/cogl/driver/gl/cogl-context-driver.c  |   19 +-
10787  clutter/cogl/cogl/driver/gl/cogl-context-driver.h  |   23 +-
10788  clutter/cogl/cogl/driver/gl/cogl-defines.h.in      |   28 +-
10789  clutter/cogl/cogl/driver/gl/cogl-fbo.c             |  315 -----------
10790  clutter/cogl/cogl/driver/gl/cogl-fbo.h             |   39 --
10791  clutter/cogl/cogl/driver/gl/cogl-primitives.c      |   99 +++-
10792  clutter/cogl/cogl/driver/gl/cogl-texture-driver.c  |    2 +-
10793  clutter/cogl/cogl/driver/gl/cogl.c                 |  114 ++--
10794  clutter/cogl/cogl/driver/gles/Makefile.am          |    2 -
10795  .../cogl/cogl/driver/gles/cogl-context-driver.c    |   10 +
10796  .../cogl/cogl/driver/gles/cogl-context-driver.h    |   17 +-
10797  clutter/cogl/cogl/driver/gles/cogl-defines.h.in    |   70 +++
10798  clutter/cogl/cogl/driver/gles/cogl-fbo.c           |  328 ------------
10799  clutter/cogl/cogl/driver/gles/cogl-fbo.h           |   39 --
10800  clutter/cogl/cogl/driver/gles/cogl-primitives.c    |  121 ++++-
10801  clutter/cogl/cogl/driver/gles/cogl.c               |   75 +++
10802  31 files changed, 1471 insertions(+), 1088 deletions(-)
10803
10804 commit f8f8873714043efbcbf92718493a94ac9ddf303f
10805 Author: Robert Bragg <robert@linux.intel.com>
10806 Date:   Tue Oct 20 16:55:10 2009 +0100
10807
10808     [stage-x11] Ensure viewport is initialized before first stage paint
10809     
10810     This ensures that glViewport is called before the first stage paint.
10811     Previously _clutter_stage_maybe_setup_viewport (which is done before we
10812     start painting) was bailing out without calling cogl_setup_viewport because
10813     the CLUTTER_STAGE_IN_RESIZE flag may be set if the stage was resized before
10814     the first paint.  (NB: The CLUTTER_STAGE_IN_RESIZE flag isn't removed until
10815     we get an explicit event back from the X server since the window manager may
10816     choose to deny/alter the resize.)
10817     
10818     We now special case the first resize - where the viewport hasn't previously
10819     been initialized and use the requested geometry to initialize the
10820     glViewport without waiting for a reply from the server.
10821
10822  clutter/x11/clutter-stage-x11.c |   18 ++++++++++++++++++
10823  clutter/x11/clutter-stage-x11.h |    7 ++++---
10824  2 files changed, 22 insertions(+), 3 deletions(-)
10825
10826 commit ad98e96d977e43a882b8a2f680e59ed281c90baf
10827 Author: Robert Bragg <robert@linux.intel.com>
10828 Date:   Tue Sep 15 22:19:01 2009 +0100
10829
10830     [cogl-fbo] Bring the gles code more in line with gl code
10831     
10832     Over time the two cogl-fbo.c files have needlessly diverged as bug fixes or
10833     cleanups went into one version but not the other.  This tries to bring them
10834     back in line with each other.  It should actually be simple enough to move
10835     cogl-fbo.c to be a common file, and simply not build it for GLES 1.1, so
10836     maybe I'll follow up with such a patch soon.
10837
10838  clutter/cogl/cogl/driver/gles/cogl-fbo.c |    8 ++++++++
10839  1 file changed, 8 insertions(+)
10840
10841 commit 613977f7108efb8897bffb2e47bfcf29bce29ddc
10842 Author: Robert Bragg <robert@linux.intel.com>
10843 Date:   Tue Sep 15 22:15:03 2009 +0100
10844
10845     [cogl-fbo] Remove poorly documented workaround for unknown driver/hardware
10846     
10847     The comment just said: "Some implementation require a clear before drawing
10848     to an fbo.  Luckily it is affected by scissor test." and did a scissored
10849     clear, which is clearly a driver bug workaround, but for what driver?  The
10850     fact that it was copied into the gles backend (or vica versa is also
10851     suspicious since it seems unlikely that the workaround is necessary for both
10852     backends.)
10853     
10854     We can easily restore the workaround with a better comment if this problem
10855     really still exists on current drivers, but for now I'd rather minimize
10856     hand-wavey workaround code that can't be tested.
10857
10858  clutter/cogl/cogl/driver/gl/cogl-fbo.c   |   10 ----------
10859  clutter/cogl/cogl/driver/gles/cogl-fbo.c |   19 -------------------
10860  2 files changed, 29 deletions(-)
10861
10862 commit 0599d12ec94344174c947310bddb5658f1b9db58
10863 Author: Damien Lespiau <damien.lespiau@gmail.com>
10864 Date:   Sun Nov 1 14:36:05 2009 +0000
10865
10866     texture: Don't compare fbo_source with COGL_INVALID_HANDLE
10867     
10868     fbo_source is a ClutterActor, it should be compared to NULL instead of
10869     COGL_INVALID_HANDLE.
10870
10871  clutter/clutter-texture.c |    2 +-
10872  1 file changed, 1 insertion(+), 1 deletion(-)
10873
10874 commit f6e0e48ac613d10d02d27182ebd48be1aeb8b474
10875 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10876 Date:   Fri Oct 30 12:11:19 2009 +0000
10877
10878     build: Add missing gles/cogl-context-driver.h to dist
10879     
10880     The gles/cogl-context-driver.h header file is missing from the
10881     dist target, which means it's not in the tarballs.
10882
10883  clutter/cogl/cogl/driver/gles/Makefile.am |    1 +
10884  1 file changed, 1 insertion(+)
10885
10886 commit f551cbfb61adb1c454fa36477ad5847b6238e17b
10887 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10888 Date:   Fri Oct 30 11:02:35 2009 +0000
10889
10890     Add run-time version checks
10891     
10892     Just like CLUTTER_CHECK_VERSION does version checking at compile
10893     time, we need a way to verify the version of the library that we
10894     are linking against. This is mostly needed for language bindings
10895     and for run-time loadable modules -- when we'll get those.
10896
10897  clutter/clutter-main.c                     |   34 ++++++++++++++++++++++++++++
10898  clutter/clutter-version.h.in               |   15 +++++++++++-
10899  doc/reference/clutter/clutter-sections.txt |    7 ++++++
10900  3 files changed, 55 insertions(+), 1 deletion(-)
10901
10902 commit f8e6727e74c80b80bba3ccb9201e1afd23349c35
10903 Author: Neil Roberts <neil@linux.intel.com>
10904 Date:   Tue Oct 27 13:18:51 2009 +0000
10905
10906     [cogl_polygon] Enable COGL_ENABLE_BLEND when use_color is set
10907     
10908     Otherwise you can't use the alpha channel of the vertex colors unless
10909     the material has a texture with alpha or the material's color has
10910     alpha less than 255.
10911
10912  clutter/cogl/cogl/cogl-primitives.c |    2 +-
10913  1 file changed, 1 insertion(+), 1 deletion(-)
10914
10915 commit 0c32573ffa980fffc966cf35768233a3ff1ed076
10916 Author: Neil Roberts <neil@linux.intel.com>
10917 Date:   Tue Oct 27 12:38:10 2009 +0000
10918
10919     build: Add $(top_buiddir)/clutter/cogl to the include path in clutter/cogl/cogl
10920     
10921     Some files try to include "cogl/cogl-defines-gl.h" so
10922     $(top_builddir)/clutter/cogl needs to be in the include path for out of
10923     tree builds to work.
10924
10925  clutter/cogl/cogl/Makefile.am |    1 +
10926  1 file changed, 1 insertion(+)
10927
10928 commit c387513a5fd5293cb8cf60e9c1334ceeff905852
10929 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10930 Date:   Mon Oct 26 16:29:31 2009 +0000
10931
10932     color: Fix HLS-to-RGB conversion
10933     
10934     Apparently, on 64bit systems the floating point noise is enough
10935     to screw up the float-to-int truncation.
10936     
10937     The solution is to round up by 0.5 and then use floorf(). This
10938     gives predictable and correct results on both 32bit and 64bit
10939     systems.
10940
10941  clutter/clutter-color.c |    8 +++++---
10942  1 file changed, 5 insertions(+), 3 deletions(-)
10943
10944 commit 5a14db50891196a9d17a0df49bf0858551e5a0af
10945 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10946 Date:   Mon Oct 26 16:02:06 2009 +0000
10947
10948     layout: Do not create a LayoutMeta on remove
10949     
10950     When calling remove_child_meta() we check if there is a LayoutMeta
10951     already attached to the Actor, and if that LayoutMeta matches the
10952     (manager, container, actor) tuple. If the LayoutMeta does not match,
10953     though, we create a new LayoutMeta instance -- in order to remove it
10954     right afterwards.
10955     
10956     Instead of doing this, we can simply check for a matching LayoutMeta
10957     and if present, remove it.
10958     
10959     In case of an existing, non-matching LayoutMeta, we're left with a
10960     dangling instance, but it does not matter: the removal happens in the
10961     unparenting phase of a ClutterContainer, so either the Actor will be
10962     destroyed and thus the LayoutMeta will be disposed along with it; or
10963     it will be parented to another container, and thus the LayoutMeta
10964     will be replaced.
10965
10966  clutter/clutter-layout-manager.c |   23 ++++++++++++++++++++++-
10967  1 file changed, 22 insertions(+), 1 deletion(-)
10968
10969 commit 5a63e8af8f715c3fe6ded8a9432c999aab73311a
10970 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10971 Date:   Mon Oct 26 15:10:20 2009 +0000
10972
10973     tests: Use the right key symbol for adding children
10974     
10975     The test-box-layout should be using CLUTTER_plus instead of a
10976     literal '+'.
10977
10978  tests/interactive/test-box-layout.c |    2 +-
10979  1 file changed, 1 insertion(+), 1 deletion(-)
10980
10981 commit a5a0171cb02dcbd67efbf87480aa5cea215c128d
10982 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10983 Date:   Mon Oct 26 15:09:07 2009 +0000
10984
10985     box: Depth level changes should queue a relayout
10986     
10987     ClutterBox is not ClutterGroup: a change in the level of an actor
10988     through raise, lower or depth sorting must trigger a relayout.
10989
10990  clutter/clutter-box.c |    6 +++---
10991  1 file changed, 3 insertions(+), 3 deletions(-)
10992
10993 commit 2cad7e24f00e2f8fccfdc75086dd9e1071d71c18
10994 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10995 Date:   Mon Oct 26 15:08:03 2009 +0000
10996
10997     box: Check before using the LayoutManager instance
10998     
10999     A ClutterBox might not have a ClutterLayoutManager instance
11000     associated -- for instance, during destruction. We should check
11001     for one before calling methods on it.
11002
11003  clutter/clutter-box.c |   23 +++++++++++++----------
11004  1 file changed, 13 insertions(+), 10 deletions(-)
11005
11006 commit 81c8cf3e6d839b13e106ab346feaccf1f2f9d3fd
11007 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11008 Date:   Mon Oct 26 11:51:30 2009 +0000
11009
11010     texture: Error handling fix
11011     
11012     When cogl_texture_new_from_data() fails in clutter_texture_set_from_data()
11013     and no GError is provided, the clutter app will segfault when dereferencing
11014     the GError ** and emitting LOAD_FINISHED signal.
11015     
11016     Based on a patch by: Haakon Sporsheim <haakon.sporsheim@gmail.com>
11017     
11018     http://bugzilla.openedhand.com/show_bug.cgi?id=1806
11019
11020  clutter/clutter-texture.c |   12 +++++++++---
11021  1 file changed, 9 insertions(+), 3 deletions(-)
11022
11023 commit 00748f66560f3105ff9c636cd01428d8b5e30e9e
11024 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11025 Date:   Mon Oct 26 11:42:16 2009 +0000
11026
11027     tests: Print out the captured event type
11028     
11029     The ::captured-event signal on the Stage is not printing out the
11030     event type.
11031
11032  tests/interactive/test-events.c |   31 ++++++++++++++++++++++++++++++-
11033  1 file changed, 30 insertions(+), 1 deletion(-)
11034
11035 commit f0b434918bcdb0d77467d66d28448672940f6a90
11036 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11037 Date:   Fri Oct 23 17:32:18 2009 +0100
11038
11039     docs: Add images for layout managers
11040     
11041     It's easier to show the layout manager policy with a simple
11042     screen shot coming from our interactive tests.
11043
11044  clutter/clutter-bin-layout.c                     |   10 ++++++++++
11045  clutter/clutter-box-layout.c                     |    7 +++++++
11046  clutter/clutter-flow-layout.c                    |   16 ++++++++++++++++
11047  doc/reference/clutter/Makefile.am                |    8 ++++++++
11048  doc/reference/clutter/bin-layout.png             |  Bin 0 -> 12890 bytes
11049  doc/reference/clutter/box-layout.png             |  Bin 0 -> 5119 bytes
11050  doc/reference/clutter/flow-layout-horizontal.png |  Bin 0 -> 5888 bytes
11051  doc/reference/clutter/flow-layout-vertical.png   |  Bin 0 -> 5333 bytes
11052  8 files changed, 41 insertions(+)
11053
11054 commit 924780ce3511ba9bc9e2a6b955836eaaa4d0a216
11055 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11056 Date:   Fri Oct 23 16:44:28 2009 +0100
11057
11058     cogl: Avoid C99-isms
11059     
11060     Do not declare variables after statements.
11061
11062  clutter/cogl/cogl/cogl.c |    4 ++--
11063  1 file changed, 2 insertions(+), 2 deletions(-)
11064
11065 commit b56b26cc62a851ee4a851a27ce0d6b76936afc6a
11066 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11067 Date:   Fri Oct 23 15:46:25 2009 +0100
11068
11069     cogl: Remove cogl-current-matrix.c
11070     
11071     The cogl-current-matrix.c file is unused since commit
11072     5e5d94dfbed18bf2b4c8c7a7ff9847952b2c4ae2 and it's not compiled
11073     or distributed anymore.
11074
11075  clutter/cogl/cogl/cogl-current-matrix.c |  409 -------------------------------
11076  1 file changed, 409 deletions(-)
11077
11078 commit 1c43c195098b4705b59891b6b98bc24407cb3264
11079 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11080 Date:   Fri Oct 23 14:30:15 2009 +0100
11081
11082     Update Git ignore rules
11083
11084  .gitignore |    4 ++--
11085  1 file changed, 2 insertions(+), 2 deletions(-)
11086
11087 commit 0d5af4c24932b5e468fa21e8ddd1c85d9c807320
11088 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11089 Date:   Fri Oct 23 13:55:50 2009 +0100
11090
11091     Post-release bump to 1.1.3
11092
11093  configure.ac |    4 ++--
11094  1 file changed, 2 insertions(+), 2 deletions(-)
11095
11096 commit dec06979b911ca410cc289f12e053a2d49c49abb
11097 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11098 Date:   Fri Oct 23 13:38:28 2009 +0100
11099
11100     Release 1.1.2 developers snapshot
11101
11102  .gitignore   |    2 +-
11103  NEWS         |   95 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
11104  README       |    8 +++++
11105  configure.ac |    2 +-
11106  4 files changed, 105 insertions(+), 2 deletions(-)
11107
11108 commit 24594bcde40cc282efa94f9076a1b687c9e9827e
11109 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11110 Date:   Fri Oct 23 12:15:25 2009 +0100
11111
11112     build: Make COGL pass distcheck
11113     
11114     Some changes to make COGL pass distcheck with Automake 1.11 and
11115     anal-retentiveness turned up to 11.
11116     
11117     The "major" change is the flattening of the winsys/ part of COGL,
11118     which is built directly inside libclutter-cogl.la instead of an
11119     intermediate libclutter-cogl-winsys.la object.
11120     
11121     Ideally, the whole COGL should be flattened out using a
11122     quasi-non-recursive Automake layout; unfortunately, the driver/
11123     sub-section ships with identical targets and Automake cannot
11124     distinguish GL and GLES objects.
11125
11126  clutter/cogl/cogl/Makefile.am        |  196 +++++++++++++++++-----------------
11127  clutter/cogl/cogl/winsys/Makefile.am |   43 --------
11128  configure.ac                         |    1 -
11129  3 files changed, 98 insertions(+), 142 deletions(-)
11130
11131 commit c882893e91b1b3ec42be8d790a8210c17de58666
11132 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11133 Date:   Fri Oct 23 10:17:40 2009 +0100
11134
11135     actor: Identify allocation cycles
11136     
11137     If an actor calls directly or indirectly clutter_actor_queue_relayout()
11138     on itself from within the allocate() implementation it will cause a
11139     relayout cycle. This is usually a condition that should be checked by
11140     ClutterActor and we should emit a warning if it is verified.
11141
11142  clutter/clutter-actor.c |   15 +++++++++++++++
11143  1 file changed, 15 insertions(+)
11144
11145 commit ca15143d1fbb09d5dbe0daeb09d7765b7cf0dfe3
11146 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11147 Date:   Fri Oct 23 10:08:02 2009 +0100
11148
11149     actor: Add checks for IN_DESTRUCTION flag
11150     
11151     ClutterActor should check whether the current instance is being
11152     destroyed and avoid performing operations like:
11153     
11154      • queueing redraws
11155      • queueing relayouts
11156     
11157     It should also warn if the actor is being parented to an actor
11158     currently being destroyed.
11159
11160  clutter/clutter-actor.c |   28 ++++++++++++++++++++++++----
11161  1 file changed, 24 insertions(+), 4 deletions(-)
11162
11163 commit 7de47e74bda68c5d4dde82f2cbba6782fcf69d27
11164 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11165 Date:   Fri Oct 23 09:48:35 2009 +0100
11166
11167     actor: Show actor name or type in the state checks warnings
11168     
11169     When showing a warning in the state checks we perform to verify that
11170     the invariants are maintained when showing, mapping and realizing, we
11171     should also print out the name of the actor failing the checks. If the
11172     actor has no name, the GType name should be used as a fallback.
11173
11174  clutter/clutter-actor.c |   69 ++++++++++++++++++++++++++++++++---------------
11175  1 file changed, 47 insertions(+), 22 deletions(-)
11176
11177 commit f02874470682f819766055f3976a2d6c74988dc7
11178 Author: Neil Roberts <neil@linux.intel.com>
11179 Date:   Thu Oct 22 16:55:29 2009 +0100
11180
11181     Fix some compilation errors in cogl-gles2-wrapper.c
11182     
11183     The changes in 74f2122b6 introduced some syntax errors which were
11184     preventing the GLES2 backend from compiling.
11185
11186  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c |   27 +++++++++-----------
11187  1 file changed, 12 insertions(+), 15 deletions(-)
11188
11189 commit 8727c3127cc049bf22e3b7cb89041b104ae4fea7
11190 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11191 Date:   Thu Oct 22 13:48:49 2009 +0100
11192
11193     clone: Set :source as CONSTRUCT
11194     
11195     The :source property for ClutterClone is a constructor property, but
11196     it most definitely is not a constructor-only one.
11197
11198  clutter/clutter-clone.c |    2 +-
11199  1 file changed, 1 insertion(+), 1 deletion(-)
11200
11201 commit b82f874b464b252c5f3bbb5e903197a048034430
11202 Author: Neil Roberts <neil@linux.intel.com>
11203 Date:   Thu Oct 22 15:39:30 2009 +0100
11204
11205     Remove cogl/{gl,gles}/Makefile.am
11206     
11207     These are no longer used anywhere.
11208
11209  clutter/cogl/gl/Makefile.am   |   62 -----------------------------
11210  clutter/cogl/gles/Makefile.am |   88 -----------------------------------------
11211  2 files changed, 150 deletions(-)
11212
11213 commit bd809f690a447c813bba02d83ba3c8b22a825b38
11214 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11215 Date:   Wed Oct 21 17:44:44 2009 +0100
11216
11217     docs: Close the right tag to avoid XML errors
11218
11219  clutter/clutter-alpha.c |    2 +-
11220  1 file changed, 1 insertion(+), 1 deletion(-)
11221
11222 commit 4996b2224a54efeddce776cade725ec1cd7fca69
11223 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11224 Date:   Wed Oct 21 17:43:34 2009 +0100
11225
11226     docs: Rename the Shader and StageManager sections
11227
11228  doc/reference/clutter/clutter-sections.txt |    4 ++--
11229  1 file changed, 2 insertions(+), 2 deletions(-)
11230
11231 commit 673199b6e0399e8f1fcd52662429287f92cb95e9
11232 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11233 Date:   Wed Oct 21 16:15:18 2009 +0100
11234
11235     tests: Update test-script
11236     
11237     Use explicit alpha definition and custom alpha functions.
11238
11239  tests/interactive/test-script.c |   41 +++++++++++++++++++++++++++++++++------
11240  1 file changed, 35 insertions(+), 6 deletions(-)
11241
11242 commit 7a52fddcd673c4aa14faf2396a0a74db644ba64d
11243 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11244 Date:   Wed Oct 21 16:04:12 2009 +0100
11245
11246     alpha: Manually parse the :mode property in ClutterScript
11247     
11248     The :mode property for a ClutterAlpha can either be an integer, for
11249     an easing mode logical id, or a string for the easing mode "nickname".
11250
11251  clutter/clutter-alpha.c          |   33 ++++++++++++++++++++++++++++++++-
11252  clutter/clutter-script-private.h |    2 ++
11253  clutter/clutter-script.c         |   12 +++++++++---
11254  3 files changed, 43 insertions(+), 4 deletions(-)
11255
11256 commit 01bc3fa2c80e9c965222b88ad20b470ae00028ec
11257 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11258 Date:   Wed Oct 21 15:43:01 2009 +0100
11259
11260     script, docs: Update documentation for alphas
11261     
11262     It is now possible to have Alpha instances defined explicitly for
11263     behaviours, so we need to fix the documentation.
11264
11265  clutter/clutter-script.c |   40 +++++++++++++++++++++++++++++++---------
11266  1 file changed, 31 insertions(+), 9 deletions(-)
11267
11268 commit f0ed71c77dd94e6bf644aba84f2e1cdc2d874fc1
11269 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11270 Date:   Wed Oct 21 15:29:25 2009 +0100
11271
11272     alpha: Allow setting the function in ClutterScript
11273     
11274     When defining an Alpha in ClutterScript we should allow setting
11275     the alpha function by using a custom property. This makes it
11276     possible to have both:
11277     
11278       {
11279         "id" : "behaviour-1",
11280         "type" : "ClutterBehaviourDepth",
11281         "alpha" : { "timeline" : "timeline-1", "function" : "alpha_func" },
11282         ...
11283       }
11284     
11285     And:
11286     
11287       {
11288         "id" : "alpha-1",
11289         "type" : "ClutterAlpha",
11290         "timeline" : "timeline-1",
11291         "function" : "alpha_func"
11292       },
11293       {
11294         "id" : "behaviour-1",
11295         "type" : "ClutterBehaviourDepth",
11296         "alpha" : "alpha-1",
11297         ...
11298       }
11299     
11300     The latter allows defining a single alpha function for multiple
11301     behaviours.
11302
11303  clutter/clutter-alpha.c |  102 ++++++++++++++++++++++++++++++++++++++++++++++-
11304  1 file changed, 101 insertions(+), 1 deletion(-)
11305
11306 commit 50aec3c540d6609d9980fab6a26ba14869982c8b
11307 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11308 Date:   Wed Oct 21 15:17:50 2009 +0100
11309
11310     script: Always allow setting object properties by id reference
11311     
11312     The block that allows setting a GObject property holding an object
11313     instance is conditionally depending on the USE_PIXBUF define. This
11314     makes it impossible to reference an object inside ClutterScript on
11315     platforms not using GdkPixbuf.
11316
11317  clutter/clutter-script.c |   25 +++++++++++++++----------
11318  1 file changed, 15 insertions(+), 10 deletions(-)
11319
11320 commit ef8ae7d72f752e10552e254c1ff9e76d19430aac
11321 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11322 Date:   Wed Oct 21 15:16:43 2009 +0100
11323
11324     behaviour: Notify changes of the :alpha property
11325     
11326     The set_alpha() setter of ClutterBehaviour is not emitting notifications
11327     for the alpha property.
11328
11329  clutter/clutter-behaviour.c |   12 +++++++-----
11330  1 file changed, 7 insertions(+), 5 deletions(-)
11331
11332 commit c13701052497b4cdb009f95ad8ccce9f4a7d825e
11333 Author: Owen W. Taylor <otaylor@fishsoup.net>
11334 Date:   Mon Oct 5 23:20:07 2009 -0400
11335
11336     Force a relayout when showing an actor
11337     
11338     When an actor is hidden, the parent actor is not required to
11339     size request or allocate it. (ClutterGroup does, but, for example,
11340     NbtkBoxLayout doesn't.) This means that the
11341     needs_width_request/needs_height_request/needs_allocate can be
11342     stale when we go to show it again - they are set for the actor
11343     but not the parent. Explicitly setting them to FALSE avoids
11344     clutter_actor_relayout() improperly short-circuiting.
11345     
11346     http://bugzilla.openedhand.com/show_bug.cgi?id=1831
11347     
11348     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
11349
11350  clutter/clutter-actor.c |    9 +++++++++
11351  1 file changed, 9 insertions(+)
11352
11353 commit 571df43b6d2348fd4db4b0275c8ed55e760ab353
11354 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11355 Date:   Tue Oct 20 22:05:04 2009 +0100
11356
11357     text: Invalidate caches and sizes in set_text_internal()
11358     
11359     The change in commit 3bbc96e17e5a03ba931c86a5cd2a0ecaa2a3b77b moved the
11360     :text property setter to use set_text_internal(); this function does not
11361     invalidate the Layout cache and does not queue a relayout, thus breaking
11362     the behaviour of ClutterText when setting the contents of the actor using
11363     the property.
11364     
11365     http://bugzilla.openedhand.com/show_bug.cgi?id=1851
11366
11367  clutter/clutter-text.c |   12 ++++--------
11368  1 file changed, 4 insertions(+), 8 deletions(-)
11369
11370 commit 91c38f877fe0a6224c648ec9f6ecbab8190b536e
11371 Author: Robert Bragg <robert@linux.intel.com>
11372 Date:   Tue Oct 20 14:57:40 2009 +0100
11373
11374     [group] Fix copy & paste error from 857b0239e (Use FixedLayout inside Group)
11375     
11376     clutter_group_get_preferred_height was calling
11377     clutter_layout_manager_get_preferred_width which e.g.  broke
11378     test-actor-clone.
11379
11380  clutter/clutter-group.c |    8 ++++----
11381  1 file changed, 4 insertions(+), 4 deletions(-)
11382
11383 commit 74f2122b68547ac6228c1a8d49765aa71638fa1b
11384 Author: Robert Bragg <robert@linux.intel.com>
11385 Date:   Tue Sep 29 02:56:23 2009 +0100
11386
11387     [gles2] remove lots of redundant matrix stack code
11388     
11389     Since we no longer depend on the GL matrix API in Cogl we can remove a lot
11390     of wrapper code from the GLES 2 backend.  This is particularly nice given
11391     that there was no code shared between the cogl-matrix-stack API and gles2
11392     wrappers so we had a lot of duplicated logic.
11393
11394  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c |  287 +++-----------------
11395  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.h |    9 +-
11396  2 files changed, 34 insertions(+), 262 deletions(-)
11397
11398 commit 5e5d94dfbed18bf2b4c8c7a7ff9847952b2c4ae2
11399 Author: Robert Bragg <robert@linux.intel.com>
11400 Date:   Tue Oct 13 23:09:42 2009 +0100
11401
11402     [cogl] Removes the cogl-current-matrix abstraction
11403     
11404     The indirection through this API isn't necessary since we no longer
11405     arbitrate between the OpenGL matrix API and Cogl's client side API.  Also it
11406     doesn't help to maintain an OpenGL style matrix mode API for internal use
11407     since it's awkward to keep restoring the MODELVIEW mode and easy enough to
11408     directly work with the matrix stacks of interest.
11409     
11410     This replaces use of the _cogl_current_matrix API with direct use of the
11411     _cogl_matrix_stack API.  All the unused cogl_current_matrix API is removed
11412     and the matrix utility code left in cogl-current-matrix.c was moved to
11413     cogl.c.
11414
11415  clutter/cogl/cogl/Makefile.am                   |    2 -
11416  clutter/cogl/cogl/cogl-clip-stack.c             |   15 +-
11417  clutter/cogl/cogl/cogl-context.c                |    8 +-
11418  clutter/cogl/cogl/cogl-context.h                |    4 +-
11419  clutter/cogl/cogl/cogl-current-matrix.h         |   95 ----------
11420  clutter/cogl/cogl/cogl-internal.h               |   14 +-
11421  clutter/cogl/cogl/cogl-material.c               |    2 +
11422  clutter/cogl/cogl/cogl-texture.c                |   28 ++-
11423  clutter/cogl/cogl/cogl-util.c                   |    1 -
11424  clutter/cogl/cogl/cogl.c                        |  228 +++++++++++++++++++----
11425  clutter/cogl/cogl/driver/gl/cogl-fbo.c          |   26 +--
11426  clutter/cogl/cogl/driver/gl/cogl-primitives.c   |   24 +--
11427  clutter/cogl/cogl/driver/gles/cogl-fbo.c        |   27 ++-
11428  clutter/cogl/cogl/driver/gles/cogl-primitives.c |   24 +--
11429  doc/reference/cogl/Makefile.am                  |    1 -
11430  15 files changed, 271 insertions(+), 228 deletions(-)
11431
11432 commit 9f7bf9fb4d234a25aba03266a286bc8c2d41f3fd
11433 Author: Robert Bragg <robert@linux.intel.com>
11434 Date:   Wed Oct 14 10:53:48 2009 +0100
11435
11436     [matrix-stack] Adds ctx->flushed_matrix_mode to cache the gl matrix mode
11437     
11438     This cache of the gl matrix mode lets us avoid repeat calls to glMatrixMode
11439     in _cogl_matrix_stack_flush_to_gl when we have lots of sequential modelview
11440     matrix modifications.
11441
11442  clutter/cogl/cogl/cogl-context.c      |    1 +
11443  clutter/cogl/cogl/cogl-context.h      |    1 +
11444  clutter/cogl/cogl/cogl-matrix-stack.c |   30 ++++++++++++++++++------------
11445  3 files changed, 20 insertions(+), 12 deletions(-)
11446
11447 commit b1f9f0a97d1abd4465ed7c7bed1da4ed366491ad
11448 Author: Robert Bragg <robert@linux.intel.com>
11449 Date:   Tue Oct 6 12:36:32 2009 +0100
11450
11451     matrix-stack: more optimization for load_identity case
11452     
11453     This goes a bit further than the previous patch, and as a special case
11454     we now simply represent identity matrices using a boolean, and only
11455     lazily initialize them when they need to be modified.
11456
11457  clutter/cogl/cogl/cogl-matrix-stack.c |   82 ++++++++++++++++++++++++++++-----
11458  1 file changed, 71 insertions(+), 11 deletions(-)
11459
11460 commit 460025d60348e3346cfd864b81d9867ea8474eee
11461 Author: Robert Bragg <robert@linux.intel.com>
11462 Date:   Tue Oct 6 10:52:07 2009 +0100
11463
11464     [matrix-stack] avoid redundant clearing of matrix when using load_identity
11465     
11466     The journal always uses an identity matrix since it uses software
11467     transformation.  Currently it manually uses glLoadMatrix since previous
11468     experimentation showed that the cogl-matrix-stack gave bad performance, but
11469     it would be nice to fix performance so we only have to care about one path
11470     for loading matrices.
11471     
11472     For the common case where we do:
11473     cogl_matrix_stack_push()
11474     cogl_matrix_stack_load_identity()
11475     we were effectively initializing the matrix 3 times. Once due to use of
11476     g_slice_new0, then we had a cogl_matrix_init_identity in
11477     _cogl_matrix_state_new for good measure, and then finally in
11478     cogl_matrix_stack_load_identity we did another cogl_matrix_init_identity.
11479     
11480     We don't use g_slice_new0 anymore, _cogl_matrix_state_new is documented as
11481     not initializing the matrix (instead _cogl_matrix_stack_top_mutable now
11482     takes a boolean to choose if new stack entries should be initialised) and so
11483     we now only initialize once in cogl_matrix_stack_load_identity.
11484
11485  clutter/cogl/cogl/cogl-matrix-stack.c |   54 ++++++++++++++++-----------------
11486  1 file changed, 26 insertions(+), 28 deletions(-)
11487
11488 commit 2656b569b9911b8aa427a5a02c8b1f4095de6ed7
11489 Author: Robert Bragg <robert@linux.intel.com>
11490 Date:   Tue Sep 29 02:58:27 2009 +0100
11491
11492     [current-matrix] Adds texture matrix stacks + removes GL matrix API usage
11493     
11494     This relates back to an earlier commitment to stop using the OpenGL matrix
11495     API which is considered deprecated. (ref 54159f5a1d029db)
11496     
11497     The new texture matrix stacks are hung from a list of (internal only)
11498     CoglTextureUnit structures which the CoglMaterial code internally references
11499     via _cogl_get_texure_unit ().
11500     
11501     So we would be left with only the cogl-matrix-stack code being responsible
11502     for glMatrixMode, glLoadMatrix and glLoadIdentity this commit updates the
11503     journal code so it now uses the matrix-stack API instead of GL directly.
11504
11505  clutter/cogl/cogl/cogl-context.c        |    4 +
11506  clutter/cogl/cogl/cogl-context.h        |    5 +-
11507  clutter/cogl/cogl/cogl-current-matrix.c |  236 +++++++------------------------
11508  clutter/cogl/cogl/cogl-internal.h       |   12 ++
11509  clutter/cogl/cogl/cogl-journal.c        |   33 +++--
11510  clutter/cogl/cogl/cogl-material.c       |   22 +--
11511  clutter/cogl/cogl/cogl-matrix-stack.c   |   15 +-
11512  clutter/cogl/cogl/cogl.c                |   59 ++++++++
11513  8 files changed, 174 insertions(+), 212 deletions(-)
11514
11515 commit 473f7ee31ebd6d52126978ba4e155a3bebc4cac1
11516 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11517 Date:   Mon Oct 19 15:31:29 2009 +0100
11518
11519     text: Take pre-edit cursor position into account
11520     
11521     When determining the cursor position we also need to take into account
11522     the pre-edit cursor position as set by the set_preedit_string()
11523     function.
11524
11525  clutter/clutter-text.c |   16 ++++++++++++++--
11526  1 file changed, 14 insertions(+), 2 deletions(-)
11527
11528 commit 23cd0b79254acd2b97467a62010244328e210a87
11529 Author: Emmanuele Bassi <ebassi@gnome.org>
11530 Date:   Mon Oct 19 12:01:38 2009 +0100
11531
11532     docs: Documentation fixes
11533     
11534      • Fix list_stages() and peek_stages() documentation
11535     
11536      • Fix clutter_text_set_preedit_string() arguments in the header
11537        to match source and documentation
11538     
11539      • Add clutter_units_cm() to the private section for Units
11540     
11541      • Rename the LayoutManager section
11542     
11543      • Add FlowLayout:homogeneous accessors
11544
11545  clutter/clutter-stage-manager.c            |    4 ++--
11546  clutter/clutter-text.h                     |    4 ++--
11547  doc/reference/clutter/clutter-sections.txt |    9 ++++++---
11548  3 files changed, 10 insertions(+), 7 deletions(-)
11549
11550 commit ba25571c8e34593f99ba302edf381a0151c98bbb
11551 Merge: 936779f 8ce8b91
11552 Author: Emmanuele Bassi <ebassi@gnome.org>
11553 Date:   Mon Oct 19 11:45:15 2009 +0100
11554
11555     Merge branch 'layout-manager'
11556     
11557     * layout-manager: (50 commits)
11558       docs: Reword a link
11559       layout, docs: Add more documentation to LayoutManager
11560       layout, docs: Fix description of Bin properties
11561       layout, bin: Use ceilf() instead of casting to int
11562       layout, docs: Add long description for FlowLayout
11563       layout, box: Clean up
11564       layout, box: Write long description for Box
11565       layout, docs: Remove unused functions
11566       layout: Document BoxLayout
11567       layout: Add BoxLayout, a single line layout manager
11568       layout: Report the correct size of FlowLayout
11569       layout: Resizing the stage resizes the FlowLayout box
11570       layout: Use the get_request_mode() getter in BinLayout
11571       layout: Change the request-mode along with the orientation
11572       actor: Add set_request_mode() method
11573       [layout] Remove FlowLayout:wrap
11574       [layout] Rename BinLayout and FlowLayout interactive tests
11575       [layout] Skip invisible children in FlowLayout
11576       [layout] Clean up and document FlowLayout
11577       [layout] Snap children of FlowLayout to column/row
11578       ...
11579
11580 commit 8ce8b91383390482efe56d982d945a384766ca8c
11581 Author: Emmanuele Bassi <ebassi@gnome.org>
11582 Date:   Mon Oct 19 11:44:29 2009 +0100
11583
11584     docs: Reword a link
11585
11586  clutter/clutter-layout-manager.c |    3 ++-
11587  1 file changed, 2 insertions(+), 1 deletion(-)
11588
11589 commit cd3c85f7ba9094a250ec03f0380428fadafef0df
11590 Author: Emmanuele Bassi <ebassi@gnome.org>
11591 Date:   Mon Oct 19 11:00:23 2009 +0100
11592
11593     layout, docs: Add more documentation to LayoutManager
11594     
11595     The layout manager reference should have some documentation on how
11596     to use a LayoutManager object inside a container and how to implement
11597     a LayoutManager sub-class correctly.
11598
11599  clutter/clutter-layout-manager.c |   41 ++++++++++++++++++++++++++++++++++++++
11600  1 file changed, 41 insertions(+)
11601
11602 commit 936779fd96cc0d8d6713c5cb4c5dc9240cc04d97
11603 Author: Emmanuele Bassi <ebassi@gnome.org>
11604 Date:   Sun Oct 18 17:49:00 2009 +0100
11605
11606     build: Add back QUIET_GEN to the GIR generation
11607
11608  clutter/Makefile.am |    2 +-
11609  1 file changed, 1 insertion(+), 1 deletion(-)
11610
11611 commit bc8a7bd5b4c70247e4bc8cccc194c12e5b6a9a2f
11612 Author: Emmanuele Bassi <ebassi@gnome.org>
11613 Date:   Sun Oct 18 17:15:04 2009 +0100
11614
11615     Update ignore file
11616
11617  .gitignore |   13 ++++++-------
11618  1 file changed, 6 insertions(+), 7 deletions(-)
11619
11620 commit ab376d961fee066f809169f32946a32700ea0e53
11621 Author: Emmanuele Bassi <ebassi@gnome.org>
11622 Date:   Sun Oct 18 17:12:12 2009 +0100
11623
11624     build: De-nest the JSON from the introspection rules
11625     
11626     The JSON conditional rules can be moved outside the introspection
11627     conditional ones to avoid a nested check, as all the JSON rules do
11628     is setting up variables that may or may not be used.
11629
11630  clutter/Makefile.am |   26 ++++++++++++--------------
11631  1 file changed, 12 insertions(+), 14 deletions(-)
11632
11633 commit 5c162d904bbbbd5ae0f66885497dd0658d27e87f
11634 Author: Emmanuele Bassi <ebassi@gnome.org>
11635 Date:   Sun Oct 18 17:11:42 2009 +0100
11636
11637     build: Use QUIET_GEN when building ClutterJson GIR
11638
11639  clutter/json/Makefile.am |    5 ++++-
11640  1 file changed, 4 insertions(+), 1 deletion(-)
11641
11642 commit 8f11b3ca48fde34f5bc214f1ff122e5ed6298eac
11643 Author: Emmanuele Bassi <ebassi@gnome.org>
11644 Date:   Sun Oct 18 17:00:24 2009 +0100
11645
11646     build: Fix up the GIR generation rules
11647     
11648     The rules for generating Clutter's introspection data are
11649     still referencing the old COGL layout.
11650
11651  clutter/Makefile.am |    9 ++++++---
11652  1 file changed, 6 insertions(+), 3 deletions(-)
11653
11654 commit ad5c0af6399353ad49663954c6abd7305ecc9ad6
11655 Author: Emmanuele Bassi <ebassi@gnome.org>
11656 Date:   Sat Oct 17 00:30:37 2009 +0100
11657
11658     build: Add CPPFLAGS for the g-ir-scanner command line
11659     
11660     When I moved all CPP flags to AM_CPPFLAGS from the INCLUDES directive
11661     I forgot that g-ir-scanner needs those defines as well.
11662
11663  clutter/Makefile.am |    1 +
11664  1 file changed, 1 insertion(+)
11665
11666 commit ef9ea9e2377f63e8bbf22f4829b8a51953a434ef
11667 Author: Robert Bragg <robert@linux.intel.com>
11668 Date:   Wed Sep 16 14:01:57 2009 +0100
11669
11670     [cogl-primitives] Split the journal out from cogl-primitives.c
11671     
11672     The Journal can be considered a standalone component, so even though
11673     it's currently only used to log quads, it seems better to split it
11674     out into its own file.
11675
11676  clutter/cogl/cogl/Makefile.am            |    2 +
11677  clutter/cogl/cogl/cogl-context.c         |    1 +
11678  clutter/cogl/cogl/cogl-journal-private.h |   57 +++
11679  clutter/cogl/cogl/cogl-journal.c         |  744 ++++++++++++++++++++++++++++++
11680  clutter/cogl/cogl/cogl-primitives.c      |  705 +---------------------------
11681  clutter/cogl/cogl/cogl-texture-private.h |   14 -
11682  6 files changed, 805 insertions(+), 718 deletions(-)
11683
11684 commit 8790306629f8186bba7998b5567c2a45aafb87d9
11685 Author: Robert Bragg <robert@linux.intel.com>
11686 Date:   Sun Sep 6 21:47:46 2009 +0100
11687
11688     [test-backface-culling] Check that inverted tex coords don't affect culling
11689     
11690     The additional check draws another front facing rectangle but this time with
11691     the texture coords flipped on the x axis.  The code that handles sliced
11692     textures in cogl-primitives.c makes some suspicious changes to the geometry
11693     when the texture coords are inverted.
11694
11695  tests/conform/test-backface-culling.c |   28 ++++++++++++++++++++--------
11696  1 file changed, 20 insertions(+), 8 deletions(-)
11697
11698 commit 2f628b1a8a405d2e4c08f2b2d125002ded0d8981
11699 Author: Robert Bragg <robert@linux.intel.com>
11700 Date:   Wed Sep 23 15:11:55 2009 +0100
11701
11702     [cogl-spans] split out cogl-spans code from cogl-texture-2d-sliced
11703     
11704     When we implement atlas textures we will probably want to use the spans API
11705     to handle texture repeating so it doesn't make sense to leave the code in
11706     cogl-texture-2d-sliced.c.  Since it's a standalone set of data structures
11707     and algorithms it also seems reasonable to split out from cogl-texture.
11708
11709  clutter/cogl/cogl/Makefile.am                      |    2 +
11710  clutter/cogl/cogl/cogl-spans.c                     |  132 +++++++++++++
11711  clutter/cogl/cogl/cogl-spans.h                     |   70 +++++++
11712  clutter/cogl/cogl/cogl-texture-2d-sliced-private.h |   27 ---
11713  clutter/cogl/cogl/cogl-texture-2d-sliced.c         |  195 +++++---------------
11714  5 files changed, 248 insertions(+), 178 deletions(-)
11715
11716 commit 568d6841871bdfea5d49d2a8143a49a0a7664a7b
11717 Author: Vladimir Nadvornik <nadvornik@suse.cz>
11718 Date:   Sun Aug 30 12:36:11 2009 +0200
11719
11720     [cogl-texture] Split CoglTexture into an abstract class + CoglTexture2dSliced
11721     
11722     cogl-texture-2d-sliced provides an implementation of CoglTexture and this
11723     seperation lays the foundation for potentially supporting atlas textures,
11724     pixmap textures (as in GLX_EXT_texture_from_pixmap) and fast-path
11725     GL_TEXTURE_{1D,2D,3D,RECTANGLE} textures in a maintainable fashion.
11726
11727  clutter/cogl/cogl/Makefile.am                      |    2 +
11728  clutter/cogl/cogl/cogl-context.c                   |    2 +
11729  clutter/cogl/cogl/cogl-context.h                   |    2 +
11730  clutter/cogl/cogl/cogl-handle.h                    |    4 +-
11731  clutter/cogl/cogl/cogl-texture-2d-sliced-private.h |  191 ++
11732  clutter/cogl/cogl/cogl-texture-2d-sliced.c         | 1871 +++++++++++++++++++
11733  clutter/cogl/cogl/cogl-texture-driver.h            |   12 +
11734  clutter/cogl/cogl/cogl-texture-private.h           |   80 +-
11735  clutter/cogl/cogl/cogl-texture.c                   | 1926 +++++---------------
11736  clutter/cogl/cogl/driver/gl/cogl-texture-driver.c  |   97 +-
11737  .../cogl/cogl/driver/gles/cogl-context-driver.c    |    2 -
11738  .../cogl/cogl/driver/gles/cogl-context-driver.h    |    2 -
11739  .../cogl/cogl/driver/gles/cogl-texture-driver.c    |  217 +--
11740  13 files changed, 2551 insertions(+), 1857 deletions(-)
11741
11742 commit 9da26fc1ca820d12d325df400e6e02d7cd25423a
11743 Author: Robert Bragg <robert@linux.intel.com>
11744 Date:   Wed Sep 16 11:56:17 2009 +0100
11745
11746     [cogl-texture] Seal CoglTexture internals from cogl-primitives.c
11747     
11748     cogl-primitives.c was previously digging right into CoglTextures so it could
11749     manually iterate the texture slices for texturing quads and polygons and
11750     because we were missing some state getters we were lazily just poking into
11751     the structures directly.
11752     
11753     This adds some extra state getter functions, and adds a higher level
11754     _cogl_texture_foreach_slice () API that hopefully simplifies the way in
11755     which sliced textures may be used to render primitives.  This lets you
11756     specify a rectangle in "virtual" texture coords and it will call a given
11757     callback for each slice that intersects that rectangle giving the virtual
11758     coords of the current slice and corresponding "real" texture coordinates for
11759     the underlying gl texture.
11760     
11761     At the same time a noteable bug in how we previously iterated sliced
11762     textures was fixed, whereby we weren't correctly handling inverted texture
11763     coordinates.  E.g.  with the previous code if you supplied texture coords of
11764     tx1=100,ty1=0,tx2=0,ty2=100 (inverted along y axis) that would result in a
11765     back-facing quad, which could be discarded if using back-face culling.
11766
11767  clutter/cogl/cogl/cogl-material.c        |    9 +-
11768  clutter/cogl/cogl/cogl-primitives.c      |  736 ++++++++++++++----------------
11769  clutter/cogl/cogl/cogl-texture-private.h |   47 +-
11770  clutter/cogl/cogl/cogl-texture.c         |  239 +++++++++-
11771  clutter/cogl/cogl/cogl-vertex-buffer.c   |    6 +-
11772  clutter/cogl/cogl/driver/gl/cogl-fbo.c   |   29 +-
11773  clutter/cogl/cogl/driver/gles/cogl-fbo.c |   29 +-
11774  7 files changed, 640 insertions(+), 455 deletions(-)
11775
11776 commit 52cecd50ec87b617cc20dbc3ba4f843340fb5d63
11777 Author: Robert Bragg <robert@linux.intel.com>
11778 Date:   Thu Jul 30 12:06:02 2009 +0100
11779
11780     [docs] switch gl_handle+gl_target docs for cogl_texture_new_from_foreign
11781     
11782     The descriptions for gl_handle and gl_target were inverted.
11783     
11784     Thanks to Young-Ho Cha for spotting that.
11785     
11786     Signed-off-by: Robert Bragg <robert@linux.intel.com>
11787
11788  clutter/cogl/cogl/cogl-texture.h |    4 ++--
11789  1 file changed, 2 insertions(+), 2 deletions(-)
11790
11791 commit 95a869dab1b893f74c5b880e7be43e134eeb706f
11792 Author: Robert Bragg <robert@linux.intel.com>
11793 Date:   Wed Jul 29 17:21:07 2009 +0100
11794
11795     [cogl] move clutter/pango to clutter/cogl/pango
11796     
11797     As part of the re-organisation of Cogl; move clutter/pango to be part of the
11798     cogl sub-project.
11799
11800  clutter/Makefile.am                          |   22 +-
11801  clutter/cogl/Makefile.am                     |    2 +-
11802  clutter/cogl/pango/Makefile.am               |   33 ++
11803  clutter/cogl/pango/cogl-pango-display-list.c |  417 +++++++++++++++
11804  clutter/cogl/pango/cogl-pango-display-list.h |   70 +++
11805  clutter/cogl/pango/cogl-pango-fontmap.c      |  209 ++++++++
11806  clutter/cogl/pango/cogl-pango-glyph-cache.c  |  352 +++++++++++++
11807  clutter/cogl/pango/cogl-pango-glyph-cache.h  |   78 +++
11808  clutter/cogl/pango/cogl-pango-private.h      |   38 ++
11809  clutter/cogl/pango/cogl-pango-render.c       |  697 ++++++++++++++++++++++++++
11810  clutter/cogl/pango/cogl-pango.h              |   85 ++++
11811  clutter/pango/Makefile.am                    |   33 --
11812  clutter/pango/cogl-pango-display-list.c      |  417 ---------------
11813  clutter/pango/cogl-pango-display-list.h      |   70 ---
11814  clutter/pango/cogl-pango-fontmap.c           |  209 --------
11815  clutter/pango/cogl-pango-glyph-cache.c       |  352 -------------
11816  clutter/pango/cogl-pango-glyph-cache.h       |   78 ---
11817  clutter/pango/cogl-pango-private.h           |   38 --
11818  clutter/pango/cogl-pango-render.c            |  697 --------------------------
11819  clutter/pango/cogl-pango.h                   |   85 ----
11820  configure.ac                                 |    2 +-
11821  21 files changed, 1992 insertions(+), 1992 deletions(-)
11822
11823 commit 43efab46bcf88c14cc429c6c7b659bdbc84f1f71
11824 Author: Robert Bragg <robert@linux.intel.com>
11825 Date:   Tue Jul 28 02:02:02 2009 +0100
11826
11827     Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys
11828     
11829     As part of an incremental process to have Cogl be a standalone project we
11830     want to re-consider how we organise the Cogl source code.
11831     
11832     Currently this is the structure I'm aiming for:
11833     cogl/
11834         cogl/
11835         <put common source here>
11836         winsys/
11837            cogl-glx.c
11838            cogl-wgl.c
11839         driver/
11840             gl/
11841             gles/
11842         os/ ?
11843         utils/
11844         cogl-fixed
11845         cogl-matrix-stack?
11846             cogl-journal?
11847             cogl-primitives?
11848         pango/
11849     
11850     The new winsys component is a starting point for migrating window system
11851     code (i.e.  x11,glx,wgl,osx,egl etc) from Clutter to Cogl.
11852     
11853     The utils/ and pango/ directories aren't added by this commit, but they are
11854     noted because I plan to add them soon.
11855     
11856     Overview of the planned structure:
11857     
11858     * The winsys/ API is the API that binds OpenGL to a specific window system,
11859       be that X11 or win32 etc.  Example are glx, wgl and egl. Much of the logic
11860       under clutter/{glx,osx,win32 etc} should migrate here.
11861     
11862     * Note there is also the idea of a winsys-base that may represent a window
11863       system for which there are multiple winsys APIs.  An example of this is
11864       x11, since glx and egl may both be used with x11.  (currently only Clutter
11865       has the idea of a winsys-base)
11866     
11867     * The driver/ represents a specific varient of OpenGL. Currently we have "gl"
11868       representing OpenGL 1.4-2.1 (mostly fixed function) and "gles" representing
11869       GLES 1.1 (fixed funciton) and 2.0 (fully shader based)
11870     
11871     * Everything under cogl/ should fundamentally be supporting access to the
11872       GPU.  Essentially Cogl's most basic requirement is to provide a nice GPU
11873       Graphics API and drawing a line between this and the utility functionality
11874       we add to support Clutter should help keep this lean and maintainable.
11875     
11876     * Code under utils/ as suggested builds on cogl/ adding more convenient
11877       APIs or mechanism to optimize special cases. Broadly speaking you can
11878       compare cogl/ to OpenGL and utils/ to GLU.
11879     
11880     * clutter/pango will be moved to clutter/cogl/pango
11881     
11882     How some of the internal configure.ac/pkg-config terminology has changed:
11883     backendextra -> CLUTTER_WINSYS_BASE # e.g. "x11"
11884     backendextralib -> CLUTTER_WINSYS_BASE_LIB # e.g. "x11/libclutter-x11.la"
11885     clutterbackend -> {CLUTTER,COGL}_WINSYS # e.g. "glx"
11886     CLUTTER_FLAVOUR -> {CLUTTER,COGL}_WINSYS
11887     clutterbackendlib -> CLUTTER_WINSYS_LIB
11888     CLUTTER_COGL -> COGL_DRIVER # e.g. "gl"
11889     
11890     Note: The CLUTTER_FLAVOUR and CLUTTER_COGL defines are kept for apps
11891     
11892     As the first thing to take advantage of the new winsys component in Cogl;
11893     cogl_get_proc_address() has been moved from cogl/{gl,gles}/cogl.c into
11894     cogl/common/cogl.c and this common implementation first trys
11895     _cogl_winsys_get_proc_address() but if that fails then it falls back to
11896     gmodule.
11897
11898  Makefile.am                                        |    8 +-
11899  clutter.pc.in                                      |   10 +-
11900  clutter/Makefile.am                                |   38 +-
11901  clutter/cogl/Makefile.am                           |   89 +-
11902  clutter/cogl/TODO                                  |   25 -
11903  clutter/cogl/cogl-bitmap.h                         |   80 -
11904  clutter/cogl/cogl-color.h                          |  261 --
11905  clutter/cogl/cogl-debug.h                          |   79 -
11906  clutter/cogl/cogl-deprecated.h                     |   36 -
11907  clutter/cogl/cogl-fixed.h                          |  782 ----
11908  clutter/cogl/cogl-material.h                       |  781 ----
11909  clutter/cogl/cogl-matrix.h                         |  290 --
11910  clutter/cogl/cogl-offscreen.h                      |   96 -
11911  clutter/cogl/cogl-path.h                           |  347 --
11912  clutter/cogl/cogl-shader.h                         |  313 --
11913  clutter/cogl/cogl-texture.h                        |  465 ---
11914  clutter/cogl/cogl-types.h                          |  328 --
11915  clutter/cogl/cogl-vertex-buffer.h                  |  452 ---
11916  clutter/cogl/cogl.h.in                             |  875 -----
11917  clutter/cogl/cogl.pc.in                            |   15 -
11918  clutter/cogl/cogl/Makefile.am                      |  161 +
11919  clutter/cogl/cogl/cogl-bitmap-fallback.c           |  460 +++
11920  clutter/cogl/cogl/cogl-bitmap-pixbuf.c             |  368 ++
11921  clutter/cogl/cogl/cogl-bitmap-private.h            |  115 +
11922  clutter/cogl/cogl/cogl-bitmap.c                    |  208 ++
11923  clutter/cogl/cogl/cogl-bitmap.h                    |   80 +
11924  clutter/cogl/cogl/cogl-blend-string.c              | 1005 ++++++
11925  clutter/cogl/cogl/cogl-blend-string.h              |  138 +
11926  clutter/cogl/cogl/cogl-clip-stack.c                |  503 +++
11927  clutter/cogl/cogl/cogl-clip-stack.h                |   43 +
11928  clutter/cogl/cogl/cogl-color.c                     |  201 ++
11929  clutter/cogl/cogl/cogl-color.h                     |  261 ++
11930  clutter/cogl/cogl/cogl-context.c                   |  215 ++
11931  clutter/cogl/cogl/cogl-context.h                   |  131 +
11932  clutter/cogl/cogl/cogl-current-matrix.c            |  549 +++
11933  clutter/cogl/cogl/cogl-current-matrix.h            |   95 +
11934  clutter/cogl/cogl/cogl-debug.c                     |  131 +
11935  clutter/cogl/cogl/cogl-debug.h                     |   79 +
11936  clutter/cogl/cogl/cogl-deprecated.h                |   36 +
11937  clutter/cogl/cogl/cogl-enum-types.c.in             |   41 +
11938  clutter/cogl/cogl/cogl-enum-types.h.in             |   25 +
11939  clutter/cogl/cogl/cogl-fixed.c                     |  950 +++++
11940  clutter/cogl/cogl/cogl-fixed.h                     |  782 ++++
11941  clutter/cogl/cogl/cogl-handle.h                    |  157 +
11942  clutter/cogl/cogl/cogl-internal.h                  |   88 +
11943  clutter/cogl/cogl/cogl-material-private.h          |  255 ++
11944  clutter/cogl/cogl/cogl-material.c                  | 1972 ++++++++++
11945  clutter/cogl/cogl/cogl-material.h                  |  781 ++++
11946  clutter/cogl/cogl/cogl-matrix-stack.c              |  363 ++
11947  clutter/cogl/cogl/cogl-matrix-stack.h              |   82 +
11948  clutter/cogl/cogl/cogl-matrix.c                    |  282 ++
11949  clutter/cogl/cogl/cogl-matrix.h                    |  290 ++
11950  clutter/cogl/cogl/cogl-offscreen.h                 |   96 +
11951  clutter/cogl/cogl/cogl-path.h                      |  347 ++
11952  clutter/cogl/cogl/cogl-primitives.c                | 2329 ++++++++++++
11953  clutter/cogl/cogl/cogl-primitives.h                |   62 +
11954  clutter/cogl/cogl/cogl-shader.h                    |  313 ++
11955  clutter/cogl/cogl/cogl-texture-driver.h            |  157 +
11956  clutter/cogl/cogl/cogl-texture-private.h           |  151 +
11957  clutter/cogl/cogl/cogl-texture.c                   | 1682 +++++++++
11958  clutter/cogl/cogl/cogl-texture.h                   |  465 +++
11959  clutter/cogl/cogl/cogl-types.h                     |  328 ++
11960  clutter/cogl/cogl/cogl-util.c                      |  252 ++
11961  clutter/cogl/cogl/cogl-util.h                      |   30 +
11962  clutter/cogl/cogl/cogl-vertex-buffer-private.h     |  169 +
11963  clutter/cogl/cogl/cogl-vertex-buffer.c             | 2016 +++++++++++
11964  clutter/cogl/cogl/cogl-vertex-buffer.h             |  452 +++
11965  clutter/cogl/cogl/cogl.c                           |  879 +++++
11966  clutter/cogl/cogl/cogl.h.in                        |  875 +++++
11967  clutter/cogl/cogl/cogl.pc.in                       |   17 +
11968  clutter/cogl/cogl/driver/Makefile.am               |    7 +
11969  clutter/cogl/cogl/driver/gl/Makefile.am            |   39 +
11970  clutter/cogl/cogl/driver/gl/cogl-context-driver.c  |   84 +
11971  clutter/cogl/cogl/driver/gl/cogl-context-driver.h  |  103 +
11972  clutter/cogl/cogl/driver/gl/cogl-defines.h.in      | 1053 ++++++
11973  clutter/cogl/cogl/driver/gl/cogl-fbo.c             |  330 ++
11974  clutter/cogl/cogl/driver/gl/cogl-fbo.h             |   39 +
11975  clutter/cogl/cogl/driver/gl/cogl-primitives.c      |  282 ++
11976  clutter/cogl/cogl/driver/gl/cogl-program.c         |  255 ++
11977  clutter/cogl/cogl/driver/gl/cogl-program.h         |   39 +
11978  clutter/cogl/cogl/driver/gl/cogl-shader-private.h  |   39 +
11979  clutter/cogl/cogl/driver/gl/cogl-shader.c          |  177 +
11980  clutter/cogl/cogl/driver/gl/cogl-texture-driver.c  |  454 +++
11981  clutter/cogl/cogl/driver/gl/cogl.c                 |  443 +++
11982  clutter/cogl/cogl/driver/gles/Makefile.am          |   62 +
11983  .../cogl/cogl/driver/gles/cogl-context-driver.c    |   41 +
11984  .../cogl/cogl/driver/gles/cogl-context-driver.h    |   44 +
11985  clutter/cogl/cogl/driver/gles/cogl-defines.h.in    |  638 ++++
11986  clutter/cogl/cogl/driver/gles/cogl-fbo.c           |  343 ++
11987  clutter/cogl/cogl/driver/gles/cogl-fbo.h           |   39 +
11988  .../driver/gles/cogl-fixed-fragment-shader.glsl    |   62 +
11989  .../cogl/driver/gles/cogl-fixed-vertex-shader.glsl |   65 +
11990  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c | 1635 +++++++++
11991  clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.h |  433 +++
11992  clutter/cogl/cogl/driver/gles/cogl-primitives.c    |  453 +++
11993  clutter/cogl/cogl/driver/gles/cogl-program.c       |  338 ++
11994  clutter/cogl/cogl/driver/gles/cogl-program.h       |   43 +
11995  .../cogl/cogl/driver/gles/cogl-shader-private.h    |   40 +
11996  clutter/cogl/cogl/driver/gles/cogl-shader.c        |  221 ++
11997  .../cogl/cogl/driver/gles/cogl-texture-driver.c    |  481 +++
11998  clutter/cogl/cogl/driver/gles/cogl-util.c          |   49 +
11999  clutter/cogl/cogl/driver/gles/cogl-util.h          |   30 +
12000  clutter/cogl/cogl/driver/gles/cogl.c               |   64 +
12001  clutter/cogl/cogl/driver/gles/stringify.sh         |   94 +
12002  clutter/cogl/cogl/stb_image.c                      | 3772 ++++++++++++++++++++
12003  clutter/cogl/cogl/winsys/Makefile.am               |   43 +
12004  clutter/cogl/cogl/winsys/cogl-eglnative.c          |   35 +
12005  clutter/cogl/cogl/winsys/cogl-eglx.c               |   35 +
12006  clutter/cogl/cogl/winsys/cogl-fruity.c             |   35 +
12007  clutter/cogl/cogl/winsys/cogl-glx.c                |   78 +
12008  clutter/cogl/cogl/winsys/cogl-osx.c                |   35 +
12009  clutter/cogl/cogl/winsys/cogl-sdl.c                |   35 +
12010  clutter/cogl/cogl/winsys/cogl-win32.c              |   35 +
12011  clutter/cogl/cogl/winsys/cogl-winsys.h             |   30 +
12012  clutter/cogl/common/Makefile.am                    |   96 -
12013  clutter/cogl/common/cogl-bitmap-fallback.c         |  460 ---
12014  clutter/cogl/common/cogl-bitmap-pixbuf.c           |  368 --
12015  clutter/cogl/common/cogl-bitmap-private.h          |  115 -
12016  clutter/cogl/common/cogl-bitmap.c                  |  208 --
12017  clutter/cogl/common/cogl-blend-string.c            | 1005 ------
12018  clutter/cogl/common/cogl-blend-string.h            |  138 -
12019  clutter/cogl/common/cogl-clip-stack.c              |  503 ---
12020  clutter/cogl/common/cogl-clip-stack.h              |   43 -
12021  clutter/cogl/common/cogl-color.c                   |  201 --
12022  clutter/cogl/common/cogl-context.c                 |  215 --
12023  clutter/cogl/common/cogl-context.h                 |  131 -
12024  clutter/cogl/common/cogl-current-matrix.c          |  549 ---
12025  clutter/cogl/common/cogl-current-matrix.h          |   95 -
12026  clutter/cogl/common/cogl-debug.c                   |  131 -
12027  clutter/cogl/common/cogl-enum-types.c.in           |   41 -
12028  clutter/cogl/common/cogl-enum-types.h.in           |   25 -
12029  clutter/cogl/common/cogl-fixed.c                   |  950 -----
12030  clutter/cogl/common/cogl-handle.h                  |  157 -
12031  clutter/cogl/common/cogl-internal.h                |   88 -
12032  clutter/cogl/common/cogl-material-private.h        |  255 --
12033  clutter/cogl/common/cogl-material.c                | 1972 ----------
12034  clutter/cogl/common/cogl-matrix-stack.c            |  363 --
12035  clutter/cogl/common/cogl-matrix-stack.h            |   81 -
12036  clutter/cogl/common/cogl-matrix.c                  |  282 --
12037  clutter/cogl/common/cogl-primitives.c              | 2329 ------------
12038  clutter/cogl/common/cogl-primitives.h              |   62 -
12039  clutter/cogl/common/cogl-texture-driver.h          |  157 -
12040  clutter/cogl/common/cogl-texture-private.h         |  151 -
12041  clutter/cogl/common/cogl-texture.c                 | 1682 ---------
12042  clutter/cogl/common/cogl-util.c                    |  252 --
12043  clutter/cogl/common/cogl-util.h                    |   30 -
12044  clutter/cogl/common/cogl-vertex-buffer-private.h   |  169 -
12045  clutter/cogl/common/cogl-vertex-buffer.c           | 2016 -----------
12046  clutter/cogl/common/cogl.c                         |  858 -----
12047  clutter/cogl/common/stb_image.c                    | 3772 --------------------
12048  clutter/cogl/gl/cogl-context-driver.c              |   84 -
12049  clutter/cogl/gl/cogl-context-driver.h              |  103 -
12050  clutter/cogl/gl/cogl-defines.h.in                  | 1053 ------
12051  clutter/cogl/gl/cogl-fbo.c                         |  330 --
12052  clutter/cogl/gl/cogl-fbo.h                         |   39 -
12053  clutter/cogl/gl/cogl-primitives.c                  |  282 --
12054  clutter/cogl/gl/cogl-program.c                     |  255 --
12055  clutter/cogl/gl/cogl-program.h                     |   39 -
12056  clutter/cogl/gl/cogl-shader-private.h              |   39 -
12057  clutter/cogl/gl/cogl-shader.c                      |  177 -
12058  clutter/cogl/gl/cogl-texture-driver.c              |  454 ---
12059  clutter/cogl/gl/cogl.c                             |  515 ---
12060  clutter/cogl/gles/cogl-context-driver.c            |   41 -
12061  clutter/cogl/gles/cogl-context-driver.h            |   44 -
12062  clutter/cogl/gles/cogl-defines.h.in                |  638 ----
12063  clutter/cogl/gles/cogl-fbo.c                       |  343 --
12064  clutter/cogl/gles/cogl-fbo.h                       |   39 -
12065  clutter/cogl/gles/cogl-fixed-fragment-shader.glsl  |   62 -
12066  clutter/cogl/gles/cogl-fixed-vertex-shader.glsl    |   65 -
12067  clutter/cogl/gles/cogl-gles2-wrapper.c             | 1635 ---------
12068  clutter/cogl/gles/cogl-gles2-wrapper.h             |  433 ---
12069  clutter/cogl/gles/cogl-primitives.c                |  453 ---
12070  clutter/cogl/gles/cogl-program.c                   |  338 --
12071  clutter/cogl/gles/cogl-program.h                   |   43 -
12072  clutter/cogl/gles/cogl-shader-private.h            |   40 -
12073  clutter/cogl/gles/cogl-shader.c                    |  221 --
12074  clutter/cogl/gles/cogl-texture-driver.c            |  481 ---
12075  clutter/cogl/gles/cogl-util.c                      |   49 -
12076  clutter/cogl/gles/cogl-util.h                      |   30 -
12077  clutter/cogl/gles/cogl.c                           |   74 -
12078  clutter/cogl/gles/stringify.sh                     |   94 -
12079  clutter/eglnative/Makefile.am                      |   12 +-
12080  clutter/eglx/Makefile.am                           |    2 +
12081  clutter/fruity/Makefile.am                         |    8 +-
12082  clutter/glx/Makefile.am                            |    2 +
12083  clutter/osx/Makefile.am                            |    6 +-
12084  clutter/sdl/Makefile.am                            |    2 +
12085  clutter/win32/Makefile.am                          |    2 +
12086  clutter/win32/clutter-win32.pc.in                  |    8 +-
12087  clutter/x11/Makefile.am                            |    2 +
12088  clutter/x11/clutter-x11.pc.in                      |   10 +-
12089  configure.ac                                       |  119 +-
12090  doc/reference/clutter/Makefile.am                  |    6 +-
12091  doc/reference/cogl/Makefile.am                     |   11 +-
12092  tests/conform/Makefile.am                          |    4 +-
12093  tests/interactive/Makefile.am                      |    4 +-
12094  tests/micro-bench/Makefile.am                      |    9 +-
12095  tests/tools/Makefile.am                            |    2 +
12096  198 files changed, 34272 insertions(+), 33869 deletions(-)
12097
12098 commit 2eea83de75cec3dbc334feecd004a180a7f5b1e5
12099 Author: Robert Bragg <robert@linux.intel.com>
12100 Date:   Tue Jul 28 01:34:33 2009 +0100
12101
12102     Make the CoglContext structure a bit more maintainable
12103     
12104     This moves most of cogl-context.{c.h} to cogl/common with some driver
12105     specific members now living in a CoglContextDriver struct.  Driver specific
12106     context initialization and typedefs now live in
12107     cogl/{gl,gles}/cogl-context-driver.{c,h}
12108     
12109     Driver specific members can be found under ctx->drv.stuff
12110
12111  clutter/cogl/common/Makefile.am          |    2 +
12112  clutter/cogl/common/cogl-blend-string.c  |    2 +-
12113  clutter/cogl/common/cogl-context.c       |  215 +++++++++++++++++++++++++
12114  clutter/cogl/common/cogl-context.h       |  131 +++++++++++++++
12115  clutter/cogl/common/cogl-material.c      |   14 +-
12116  clutter/cogl/common/cogl-primitives.c    |   12 +-
12117  clutter/cogl/common/cogl-vertex-buffer.c |   26 +--
12118  clutter/cogl/common/cogl.c               |    2 +-
12119  clutter/cogl/gl/Makefile.am              |    2 +-
12120  clutter/cogl/gl/cogl-context-driver.c    |   84 ++++++++++
12121  clutter/cogl/gl/cogl-context-driver.h    |  103 ++++++++++++
12122  clutter/cogl/gl/cogl-context.c           |  259 ------------------------------
12123  clutter/cogl/gl/cogl-context.h           |  197 -----------------------
12124  clutter/cogl/gl/cogl-fbo.c               |   24 +--
12125  clutter/cogl/gl/cogl-primitives.c        |    2 +-
12126  clutter/cogl/gl/cogl-program.c           |   50 +++---
12127  clutter/cogl/gl/cogl-shader.c            |   12 +-
12128  clutter/cogl/gl/cogl-texture-driver.c    |    2 +-
12129  clutter/cogl/gl/cogl.c                   |  224 +++++++++++++-------------
12130  clutter/cogl/gles/Makefile.am            |    2 +-
12131  clutter/cogl/gles/cogl-context-driver.c  |   41 +++++
12132  clutter/cogl/gles/cogl-context-driver.h  |   44 +++++
12133  clutter/cogl/gles/cogl-context.c         |  214 ------------------------
12134  clutter/cogl/gles/cogl-context.h         |  136 ----------------
12135  clutter/cogl/gles/cogl-fbo.c             |    8 +-
12136  clutter/cogl/gles/cogl-gles2-wrapper.c   |    2 +-
12137  clutter/cogl/gles/cogl-program.c         |   16 +-
12138  clutter/cogl/gles/cogl-texture-driver.c  |   14 +-
12139  28 files changed, 828 insertions(+), 1012 deletions(-)
12140
12141 commit 157eb437bac38d7a61991f47bd943cb9f6d84ad7
12142 Author: Robert Bragg <robert@linux.intel.com>
12143 Date:   Tue Jul 28 00:37:11 2009 +0100
12144
12145     Improve cogl-texture maintainability by moving 90% into cogl/common
12146     
12147     This splits the limited components that differed between
12148     cogl/{gl,gles}/cogl-texture.c into new {gl,gles}/cogl-texture-driver.c files
12149     and the rest that can now be shared into cogl/common/cogl-texture.c
12150
12151  clutter/cogl/common/Makefile.am            |    3 +
12152  clutter/cogl/common/cogl-internal.h        |    1 +
12153  clutter/cogl/common/cogl-texture-driver.h  |  157 +++
12154  clutter/cogl/common/cogl-texture-private.h |  151 ++
12155  clutter/cogl/common/cogl-texture.c         | 1682 ++++++++++++++++++++++
12156  clutter/cogl/gl/Makefile.am                |    3 +-
12157  clutter/cogl/gl/cogl-texture-driver.c      |  454 ++++++
12158  clutter/cogl/gl/cogl-texture-private.h     |  145 --
12159  clutter/cogl/gl/cogl-texture.c             | 1996 ---------------------------
12160  clutter/cogl/gles/Makefile.am              |    3 +-
12161  clutter/cogl/gles/cogl-gles2-wrapper.h     |    1 +
12162  clutter/cogl/gles/cogl-texture-driver.c    |  481 +++++++
12163  clutter/cogl/gles/cogl-texture-private.h   |  144 --
12164  clutter/cogl/gles/cogl-texture.c           | 2066 ----------------------------
12165  14 files changed, 2932 insertions(+), 4355 deletions(-)
12166
12167 commit fe01ec6323967614c6404bc193503adb5bda1624
12168 Author: Robert Bragg <robert@linux.intel.com>
12169 Date:   Thu Aug 20 11:54:41 2009 +0100
12170
12171     [stage-egl] support fallbacks in clutter_stage_egl_realize
12172     
12173     Most of clutter_stage_egl_realize was renamed to
12174     _clutter_stage_egl_try_realize which now takes a cookie indicating which
12175     fallback number should tried next.  clutter_stage_egl_realize now keeps
12176     trying to realize with successive fallback numbers until it succeeds or runs
12177     out of fallbacks.
12178     
12179     The only fallback supported for now is for hardware with no stencil buffer
12180     support.
12181
12182  clutter/eglx/clutter-stage-egl.c |  112 ++++++++++++++++++++++++++++----------
12183  1 file changed, 82 insertions(+), 30 deletions(-)
12184
12185 commit 3187e1964279b3fb93703fe6c67df5b6025729c9
12186 Author: Robert Bragg <robert@linux.intel.com>
12187 Date:   Mon Aug 3 14:50:10 2009 +0100
12188
12189     [x11 backend] remove data duplicated between backends and stages
12190     
12191     Make backends the canonical point of reference for the xdisplay, the xscreen
12192     number, the x root window and the xvisinfo for creating foreign stages.
12193
12194  clutter/eglx/clutter-backend-egl.c |   10 +-
12195  clutter/eglx/clutter-stage-egl.c   |   18 ++--
12196  clutter/glx/clutter-backend-glx.c  |   59 +++++++-----
12197  clutter/glx/clutter-backend-glx.h  |    6 ++
12198  clutter/glx/clutter-stage-glx.c    |   58 ++++++------
12199  clutter/x11/clutter-backend-x11.c  |    1 +
12200  clutter/x11/clutter-backend-x11.h  |    5 +
12201  clutter/x11/clutter-stage-x11.c    |  177 ++++++++++++++++++++++--------------
12202  clutter/x11/clutter-stage-x11.h    |    8 +-
12203  9 files changed, 200 insertions(+), 142 deletions(-)
12204
12205 commit 63414ab233522b0da8462b32c4e36e74be891475
12206 Author: Robert Bragg <robert@linux.intel.com>
12207 Date:   Fri Jul 31 20:39:28 2009 +0100
12208
12209     [glx backend] white space fixes
12210     
12211     Simply removes lots of trailing white spaces
12212
12213  clutter/glx/clutter-backend-glx.c |   40 ++++++++++++++++++-------------------
12214  1 file changed, 20 insertions(+), 20 deletions(-)
12215
12216 commit 45a668bef855b8564236a3153bf07e1ea0148d16
12217 Author: Robert Bragg <robert@linux.intel.com>
12218 Date:   Fri Jul 31 17:07:10 2009 +0100
12219
12220     [glx backend] use FBConfigs instead of Visuals for GL context creation
12221     
12222     This replaces calls to the old (glx 1.2) functions glXChooseVisual,
12223     glXCreateContext, glXMakeCurrent with the 1.3+ fbconfig varients
12224     glXChooseFBConfig, glXCreateNewContext, glXMakeContextCurrent.
12225
12226  clutter/glx/clutter-backend-glx.c |  122 +++++++++++++++++++++++--------------
12227  1 file changed, 75 insertions(+), 47 deletions(-)
12228
12229 commit 15d7a86621f3fc80d3d50e7f5a3a141412163e7f
12230 Author: Robert Bragg <robert@linux.intel.com>
12231 Date:   Fri Jul 31 18:34:51 2009 +0100
12232
12233     [backends] Remove the idea of offscreen stages from all backends
12234     
12235     The only backend that tried to implement offscreen stages was the GLX backend
12236     and even this has apparently be broken for some time without anyone noticing.
12237     
12238     The property still remains and since the property already clearly states that
12239     it may not work I don't expect anyone to notice.
12240     
12241     This simplifies quite a bit of the GLX code which is very desireable from the
12242     POV that we want to start migrating window system code down to Cogl and the
12243     simpler the code is the more straight forward this work will be.
12244     
12245     In the future when Cogl has a nicely designed API for framebuffer objects then
12246     re-implementing offscreen stages cleanly for *all* backends should be quite
12247     straightforward.
12248
12249  clutter/clutter-backend.c             |    3 +-
12250  clutter/clutter-backend.h             |    1 -
12251  clutter/clutter-private.h             |    1 -
12252  clutter/clutter-stage.c               |   33 +---
12253  clutter/eglnative/clutter-stage-egl.c |  217 +++++++++++------------
12254  clutter/eglx/clutter-backend-egl.c    |    3 +-
12255  clutter/eglx/clutter-stage-egl.c      |  307 +++++++++++++++------------------
12256  clutter/fruity/clutter-stage-fruity.c |  175 +++++++++----------
12257  clutter/glx/clutter-backend-glx.c     |   59 ++-----
12258  clutter/glx/clutter-stage-glx.c       |  224 ++++++++----------------
12259  clutter/osx/clutter-stage-osx.c       |   10 --
12260  clutter/sdl/clutter-stage-sdl.c       |   39 ++---
12261  clutter/x11/clutter-backend-x11.c     |    5 +-
12262  clutter/x11/clutter-backend-x11.h     |    8 +-
12263  clutter/x11/clutter-stage-x11.c       |    5 +-
12264  15 files changed, 435 insertions(+), 655 deletions(-)
12265
12266 commit 35f11d863c4ac66136df9846c898ed88ff8ffb34
12267 Author: Robert Bragg <robert@linux.intel.com>
12268 Date:   Fri Oct 16 17:15:47 2009 +0100
12269
12270     [build] more Makefile.am.{enums,marshal} fixes for out of tree builds
12271     
12272     for the marshal files $(srcdir) was getting prefixed twice since my last
12273     commit (2cc88f1140) since it was already being prefixed including
12274     Makefile.am.  The problem with prefixing it in the includer file though is
12275     that the Make variable substitutions like :.list=.h mean we end up
12276     generating into the $(srcdir).  This removes the prefix added in
12277     clutter/Makefile.am
12278     
12279     We were also missing a $(srcdir) prefix when setting EXTRA_DIST
12280
12281  build/autotools/Makefile.am.enums   |    2 +-
12282  build/autotools/Makefile.am.marshal |    3 ++-
12283  clutter/Makefile.am                 |    2 +-
12284  3 files changed, 4 insertions(+), 3 deletions(-)
12285
12286 commit f1acc91f3704bfff45652aea4f14355485f34df0
12287 Author: Emmanuele Bassi <ebassi@gnome.org>
12288 Date:   Fri Oct 16 15:57:21 2009 +0100
12289
12290     Simple coding style fix for commit c5551184
12291
12292  clutter/clutter-interval.c |    2 ++
12293  1 file changed, 2 insertions(+)
12294
12295 commit a9d2c0f6903fff5a5b445265040f8bb689c10750
12296 Merge: b5adbf8 70c8128
12297 Author: Emmanuele Bassi <ebassi@gnome.org>
12298 Date:   Fri Oct 16 15:55:05 2009 +0100
12299
12300     Merge branch 'bug-1846'
12301     
12302     * bug-1846:
12303       Fix warning message in the ParamSpec validation
12304
12305 commit b5adbf89b851baa9fb833b00ad6137cc5e6547cb
12306 Merge: ee9f8c3 c555118
12307 Author: Emmanuele Bassi <ebassi@gnome.org>
12308 Date:   Fri Oct 16 15:55:04 2009 +0100
12309
12310     Merge branch 'bug-1845'
12311     
12312     * bug-1845:
12313       Add a warning when ClutterInterval can't compute progress
12314
12315 commit 70c8128457d49bf9dde0838470f1b4b363f9aafb
12316 Author: Damien Lespiau <damien.lespiau@intel.com>
12317 Date:   Mon Oct 12 17:05:05 2009 +0100
12318
12319     Fix warning message in the ParamSpec validation
12320     
12321     When validating a new GValue against the ClutterParamSpecUnits, we issue
12322     a warning when the units do not match with both the new value and the
12323     unit we expect to have. Unfortunately we were printing the unit of the
12324     new value twice and not the unit of the ParamSpec.
12325     
12326     http://bugzilla.openedhand.com/show_bug.cgi?id=1846
12327
12328  clutter/clutter-units.c |    2 +-
12329  1 file changed, 1 insertion(+), 1 deletion(-)
12330
12331 commit c5551184b0337ea8a990b14e52eb15e855a27ca9
12332 Author: Damien Lespiau <damien.lespiau@intel.com>
12333 Date:   Mon Oct 12 16:45:39 2009 +0100
12334
12335     Add a warning when ClutterInterval can't compute progress
12336     
12337     This is really useful when trying to animate GTypes that haven't
12338     registered any progress function. Instead of silently not working it
12339     will warn the developer.
12340     
12341     http://bugzilla.openedhand.com/show_bug.cgi?id=1845
12342
12343  clutter/clutter-interval.c |    9 +++++++++
12344  1 file changed, 9 insertions(+)
12345
12346 commit ee9f8c3bdf9672e0d79598eed8f73569190888dc
12347 Author: Damien Lespiau <damien.lespiau@intel.com>
12348 Date:   Mon Oct 12 16:28:10 2009 +0100
12349
12350     Add ClutterInterval integration
12351     
12352     To be able to animate CLUTTER_TYPE_UNITS properties we need to register
12353     the GType and its progress function against the ClutterInterval code.
12354     
12355     The two ClutterUnits defining the interval can use different units, the
12356     resulting unit will always be in pixels, so calculating a progress
12357     between 10px and 4cm is valid.
12358     
12359     http://bugzilla.openedhand.com/show_bug.cgi?id=1844
12360
12361  clutter/clutter-units.c |   29 +++++++++++++++++++++++++++++
12362  1 file changed, 29 insertions(+)
12363
12364 commit 83b4ec7a12ea279b59a80f6008e1bece25de3a8c
12365 Author: Emmanuele Bassi <ebassi@gnome.org>
12366 Date:   Fri Oct 16 15:25:37 2009 +0100
12367
12368     units: Cache the pixels value inside Units
12369     
12370     When computing the pixels value of a ClutterUnits value we should
12371     be caching the value to avoid recomputing for every call of
12372     clutter_units_to_pixels(). We already have a flag telling us to
12373     return the cached value, but we miss the mechanism to evict the
12374     cache whenever the Backend settings affecting the conversion, that
12375     is default font and resolution, change.
12376     
12377     In order to implement the eviction we can use a "serial"; the
12378     Backend will have an internal serial field which we retrieve and
12379     put inside the ClutterUnits structure (we split one of the two
12380     64 bit padding fields into two 32 bit fields to maintain ABI); every
12381     time we call clutter_units_to_pixels() we compare the units serial
12382     with that of the Backend; if they match and pixels_set is set to
12383     TRUE then we just return the stored pixels value. If the serials
12384     do not match then we unset the pixels_set flag and recompute the
12385     pixels value.
12386     
12387     We can verify this by adding a simple test unit checking that
12388     by changing the resolution of ClutterBackend we get different
12389     pixel values for 1 em.
12390     
12391     http://bugzilla.openedhand.com/show_bug.cgi?id=1843
12392
12393  .gitignore                         |    1 +
12394  clutter/clutter-backend.c          |   21 +++++++++++++++--
12395  clutter/clutter-private.h          |    2 ++
12396  clutter/clutter-units.c            |   45 ++++++++++++++++++++++++++++++++++++
12397  clutter/clutter-units.h            |    9 +++++++-
12398  tests/conform/test-clutter-units.c |   23 ++++++++++++++++++
12399  tests/conform/test-conform-main.c  |    1 +
12400  7 files changed, 99 insertions(+), 3 deletions(-)
12401
12402 commit 2ff31dfbaaad3056265b05efe57eac63f8e3ce61
12403 Author: Emmanuele Bassi <ebassi@gnome.org>
12404 Date:   Fri Oct 16 14:22:15 2009 +0100
12405
12406     text: Notify :position when it changes
12407     
12408     The :position property is not notified when changed.
12409     
12410     http://bugzilla.openedhand.com/show_bug.cgi?id=1830
12411
12412  clutter/clutter-text.c |   15 +++++++++++++++
12413  1 file changed, 15 insertions(+)
12414
12415 commit bc424fb56c3a75a822b22c0e5b284b5775f76abe
12416 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12417 Date:   Sat Sep 19 09:19:06 2009 +0100
12418
12419     [text] NULL-ify strings to avoid double-frees
12420
12421  clutter/clutter-text.c |    1 +
12422  1 file changed, 1 insertion(+)
12423
12424 commit 6f43f4b805387e0cac054d7b002634da3b00b106
12425 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12426 Date:   Sat Sep 19 09:18:06 2009 +0100
12427
12428     [text] Do not apply unset preedit attributes
12429     
12430     The pre-edit attributes are optional and thus should only be applied
12431     if they have been set to avoid assertion failures.
12432
12433  clutter/clutter-text.c |   11 +++++++----
12434  1 file changed, 7 insertions(+), 4 deletions(-)
12435
12436 commit 28837283877c11f26565d79e6bcd4b171203a9b0
12437 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12438 Date:   Wed Sep 9 12:15:23 2009 +0100
12439
12440     [text] Add pre-edit string to ClutterText
12441     
12442     Input Methods require to be able to set a "pre-edit string", that is
12443     a string that it's just displayed into the Text actor without being
12444     committed to the actor's buffer. The string might require custom Pango
12445     attributes, and an update of the cursor position.
12446
12447  clutter/clutter-text.c                     |  193 +++++++++++++++++++++++-----
12448  clutter/clutter-text.h                     |    5 +
12449  doc/reference/clutter/clutter-sections.txt |    1 +
12450  tests/interactive/test-text-field.c        |  179 ++++++++++++++++++++++++++
12451  4 files changed, 346 insertions(+), 32 deletions(-)
12452
12453 commit 2cc88f1140ffa774371b877d723dfaf9e33a6ce5
12454 Author: Robert Bragg <robert@linux.intel.com>
12455 Date:   Thu Oct 15 19:12:34 2009 +0100
12456
12457     [build] fix Makefile.am.{enums,marshal} to support out of tree builds
12458     
12459     Out of tree builds were broken in commit 46b736f42e1165 since we didn't
12460     explicitly use $(srcdir) to find the input files for glib-mkenums and
12461     glib-genmarshal.
12462
12463  build/autotools/Makefile.am.enums   |    4 ++--
12464  build/autotools/Makefile.am.marshal |    4 ++--
12465  2 files changed, 4 insertions(+), 4 deletions(-)
12466
12467 commit 87f0b94df7524400b233cd1acca871fa6f8f0a02
12468 Author: Emmanuele Bassi <ebassi@gnome.org>
12469 Date:   Thu Oct 15 14:20:44 2009 +0100
12470
12471     layout, docs: Fix description of Bin properties
12472     
12473     The BinLayer and BinLayout properties name and blurb for introspection
12474     should be slightly more descriptive.
12475
12476  clutter/clutter-bin-layout.c |   12 ++++++------
12477  1 file changed, 6 insertions(+), 6 deletions(-)
12478
12479 commit 852abbb138898467fb6497508e99fb1a92203c78
12480 Author: Emmanuele Bassi <ebassi@gnome.org>
12481 Date:   Thu Oct 15 14:12:37 2009 +0100
12482
12483     layout, bin: Use ceilf() instead of casting to int
12484     
12485     Casting a float to int to truncate it before assigning the value
12486     to a float again is wrong. We should use ceilf() instead which
12487     does what we want to achieve (rounding up the size to avoid
12488     sub-pixel positioning of children).
12489
12490  clutter/clutter-bin-layout.c |   26 ++++++++++++++------------
12491  1 file changed, 14 insertions(+), 12 deletions(-)
12492
12493 commit 308c930f37c7c00eb6791d53fced7d1c2ac9600e
12494 Author: Emmanuele Bassi <ebassi@gnome.org>
12495 Date:   Thu Oct 15 14:11:36 2009 +0100
12496
12497     layout, docs: Add long description for FlowLayout
12498     
12499     Add the full description of the layout policy
12500
12501  clutter/clutter-flow-layout.c |   16 ++++++++++++++++
12502  1 file changed, 16 insertions(+)
12503
12504 commit 4d153e4507fdd8fc135998f771e1826a9b02e658
12505 Author: Emmanuele Bassi <ebassi@gnome.org>
12506 Date:   Thu Oct 15 12:15:49 2009 +0100
12507
12508     layout, box: Clean up
12509     
12510     * Use g_list_foreach() instead of iterating over the list inside
12511       the destruction sequence, since we are causing the widgets to be
12512       implicitly removed from the list via the destroy() call.
12513     
12514     * Use g_signal_connect_swapped() and spare us from a callback.
12515
12516  clutter/clutter-box.c |   20 ++++++--------------
12517  1 file changed, 6 insertions(+), 14 deletions(-)
12518
12519 commit adca939101e3a25309c29e6a263c1c7ac7b0d877
12520 Author: Emmanuele Bassi <ebassi@gnome.org>
12521 Date:   Thu Oct 15 12:04:50 2009 +0100
12522
12523     layout, box: Write long description for Box
12524     
12525     Also have an example of how to create a Box with a layout manager
12526     and how to use the pack() method.
12527
12528  clutter/clutter-box.c |   45 ++++++++++++++++++++++++++++++++++++++++++++-
12529  1 file changed, 44 insertions(+), 1 deletion(-)
12530
12531 commit 9f06f726d409d0ac948179b9771350147c5e699b
12532 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12533 Date:   Tue Oct 13 16:52:57 2009 +0100
12534
12535     layout, docs: Remove unused functions
12536     
12537     The :wrap property and its accessor functions were removed from
12538     ClutterFlowLayout.
12539
12540  doc/reference/clutter/clutter-sections.txt |    2 --
12541  1 file changed, 2 deletions(-)
12542
12543 commit cd3dce1d5d957046934062780d21558e182ceb1a
12544 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12545 Date:   Tue Oct 13 12:15:25 2009 +0100
12546
12547     layout: Document BoxLayout
12548     
12549     Add BoxLayout to the API reference.
12550
12551  doc/reference/clutter/clutter-docs.xml.in  |    1 +
12552  doc/reference/clutter/clutter-sections.txt |   38 ++++++++++++++++++++++++++++
12553  doc/reference/clutter/clutter.types        |    1 +
12554  3 files changed, 40 insertions(+)
12555
12556 commit b526b765931bcf4e44feac4ab1b72763eb68f264
12557 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12558 Date:   Tue Oct 13 12:14:05 2009 +0100
12559
12560     layout: Add BoxLayout, a single line layout manager
12561     
12562     The BoxLayout layout manager implements a layout policy for arranging
12563     children on a single line, either alongside the X axis or alongside the
12564     Y axis.
12565
12566  .gitignore                          |    1 +
12567  clutter/Makefile.am                 |    2 +
12568  clutter/clutter-box-layout.c        | 1496 +++++++++++++++++++++++++++++++++++
12569  clutter/clutter-box-layout.h        |  143 ++++
12570  clutter/clutter.h                   |    1 +
12571  tests/interactive/Makefile.am       |    3 +-
12572  tests/interactive/test-box-layout.c |  207 +++++
12573  7 files changed, 1852 insertions(+), 1 deletion(-)
12574
12575 commit c4b2d4ce797b5ac4c61865d4249badcfb85657f0
12576 Author: Emmanuele Bassi <ebassi@gnome.org>
12577 Date:   Thu Oct 8 15:45:29 2009 +0100
12578
12579     layout: Report the correct size of FlowLayout
12580     
12581     FlowLayout should compute the correct height for the assigned width when
12582     in horizontal flow, and the correct width for the assigned height when
12583     in vertical flow. This means pre-computing the number of lines inside
12584     the get_preferred_width() and get_preferred_height(). We can then cache
12585     the computed column width and row height, cache them inside the layout
12586     and then use them when allocating the children.
12587
12588  clutter/clutter-flow-layout.c        |  457 +++++++++++++++++++++++++++-------
12589  tests/interactive/test-flow-layout.c |    4 +-
12590  2 files changed, 369 insertions(+), 92 deletions(-)
12591
12592 commit 6f19666b13ac9bde44996620df714484dbe4bd67
12593 Author: Emmanuele Bassi <ebassi@gnome.org>
12594 Date:   Wed Oct 7 15:30:29 2009 +0100
12595
12596     layout: Resizing the stage resizes the FlowLayout box
12597     
12598     Add some user interaction to verify the dynamic reflowing.
12599
12600  tests/interactive/test-flow-layout.c |   21 +++++++++++++++++++++
12601  1 file changed, 21 insertions(+)
12602
12603 commit 0876575a9549acd54fbc3c70b4e7178e9e4e1e65
12604 Author: Emmanuele Bassi <ebassi@gnome.org>
12605 Date:   Wed Oct 7 15:29:47 2009 +0100
12606
12607     layout: Use the get_request_mode() getter in BinLayout
12608     
12609     Instead of using g_object_get(child, "request-mode", ...).
12610
12611  clutter/clutter-bin-layout.c |    3 +--
12612  1 file changed, 1 insertion(+), 2 deletions(-)
12613
12614 commit eb40e856e1a687c27d047ee6069b6ec84e1e1237
12615 Author: Emmanuele Bassi <ebassi@gnome.org>
12616 Date:   Wed Oct 7 15:28:01 2009 +0100
12617
12618     layout: Change the request-mode along with the orientation
12619     
12620     When changing the orientation of a FlowLayout, the associated
12621     container should also change its request mode. A horizontally
12622     flowing layout has a height depending on the width, since it
12623     will reflow vertically; similarly, a vertically reflowing layout
12624     will have a width depending on the height.
12625
12626  clutter/clutter-flow-layout.c |   30 ++++++++++++++++++++++++++++--
12627  1 file changed, 28 insertions(+), 2 deletions(-)
12628
12629 commit b5895335ab2d6975665426693fb1b96d7ca86f74
12630 Author: Emmanuele Bassi <ebassi@gnome.org>
12631 Date:   Wed Oct 7 15:15:02 2009 +0100
12632
12633     actor: Add set_request_mode() method
12634     
12635     We should not require the use g_object_set()/_get() for accessing
12636     the :request-mode property. A proper accessors pair should be
12637     preferred.
12638
12639  clutter/clutter-actor.c                    |   48 ++++++++++++++++++++++++----
12640  clutter/clutter-actor.h                    |    3 ++
12641  doc/reference/clutter/clutter-sections.txt |    2 ++
12642  3 files changed, 46 insertions(+), 7 deletions(-)
12643
12644 commit 19317520b57461b505751411cf9d9f39bbf12ad5
12645 Author: Emmanuele Bassi <ebassi@gnome.org>
12646 Date:   Wed Oct 7 12:35:39 2009 +0100
12647
12648     [layout] Remove FlowLayout:wrap
12649     
12650     The :wrap property is not implemented, and mostly useless: the
12651     FlowLayout is a reflowing grid. This means that if it receives
12652     less than the preferred width or height in the flow direction
12653     then it should always reflow.
12654
12655  clutter/clutter-flow-layout.c |  107 +++--------------------------------------
12656  clutter/clutter-flow-layout.h |    3 --
12657  2 files changed, 8 insertions(+), 102 deletions(-)
12658
12659 commit 6d954ec0742bad823c8c474873a21ab990a56c7f
12660 Author: Emmanuele Bassi <ebassi@gnome.org>
12661 Date:   Wed Oct 7 11:42:09 2009 +0100
12662
12663     [layout] Rename BinLayout and FlowLayout interactive tests
12664     
12665     The BinLayout and FlowLayout interactive tests should be named more
12666     explicitly.
12667
12668  .gitignore                           |    4 +-
12669  tests/interactive/Makefile.am        |    4 +-
12670  tests/interactive/test-bin-layout.c  |  185 ++++++++++++++++++++++++++++++++++
12671  tests/interactive/test-box.c         |  185 ----------------------------------
12672  tests/interactive/test-flow-layout.c |  148 +++++++++++++++++++++++++++
12673  tests/interactive/test-flow.c        |  148 ---------------------------
12674  6 files changed, 337 insertions(+), 337 deletions(-)
12675
12676 commit 4ea57bc685abeea9273b2b8427a9199980cc2f40
12677 Author: Emmanuele Bassi <ebassi@gnome.org>
12678 Date:   Wed Oct 7 11:39:18 2009 +0100
12679
12680     [layout] Skip invisible children in FlowLayout
12681     
12682     Skip hidden actors when computing the preferred size and when
12683     allocating.
12684
12685  clutter/clutter-flow-layout.c |    9 +++++++++
12686  1 file changed, 9 insertions(+)
12687
12688 commit b1bae4d66afc8420209f72dabcbf2fe81b461ff3
12689 Author: Emmanuele Bassi <ebassi@gnome.org>
12690 Date:   Wed Oct 7 11:08:51 2009 +0100
12691
12692     [layout] Clean up and document FlowLayout
12693
12694  clutter/clutter-flow-layout.c |  177 ++++++++++++++++++++++++++++++++++++++---
12695  1 file changed, 168 insertions(+), 9 deletions(-)
12696
12697 commit db3ef971705485b1000def688635daaac99f79cd
12698 Author: Emmanuele Bassi <ebassi@gnome.org>
12699 Date:   Tue Oct 6 17:30:49 2009 +0100
12700
12701     [layout] Snap children of FlowLayout to column/row
12702     
12703     Use the column and row size to align each child; with :homogeneous
12704     set to TRUE, or with children with the same size, the FlowLayout
12705     will behave like a reflowing grid.
12706
12707  clutter/clutter-flow-layout.c |   14 ++++++++++----
12708  1 file changed, 10 insertions(+), 4 deletions(-)
12709
12710 commit e5a074fd9e487444db9114c2970a4d83c1661c7f
12711 Author: Emmanuele Bassi <ebassi@gnome.org>
12712 Date:   Tue Oct 6 16:17:16 2009 +0100
12713
12714     [layout] Add :homogeneous to FlowLayout
12715
12716  clutter/clutter-flow-layout.c |   90 +++++++++++++++++++++++++++++++++++------
12717  clutter/clutter-flow-layout.h |    3 ++
12718  tests/interactive/test-flow.c |   37 +++++++++++++++--
12719  3 files changed, 115 insertions(+), 15 deletions(-)
12720
12721 commit 5737cf869f162f5539ae00f86db7923502c38dab
12722 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12723 Date:   Fri Sep 18 17:28:02 2009 +0100
12724
12725     [layout] Initial implementation of FlowLayout
12726     
12727     FlowLayout is a layout manager that arranges its children in a
12728     reflowing line; the orientation controls the major axis for the
12729     layout: horizontal, for reflow on the Y axis, and vertical, for
12730     reflow on the X axis.
12731
12732  .gitignore                                 |    1 +
12733  clutter/Makefile.am                        |    2 +
12734  clutter/clutter-flow-layout.c              |  855 ++++++++++++++++++++++++++++
12735  clutter/clutter-flow-layout.h              |  127 +++++
12736  clutter/clutter.h                          |    1 +
12737  doc/reference/clutter/clutter-docs.xml.in  |    1 +
12738  doc/reference/clutter/clutter-sections.txt |   34 ++
12739  doc/reference/clutter/clutter.types        |    1 +
12740  tests/interactive/Makefile.am              |    3 +-
12741  tests/interactive/test-flow.c              |  117 ++++
12742  10 files changed, 1141 insertions(+), 1 deletion(-)
12743
12744 commit 857b0239e906b0e5eb1a2fec8703eb675a70675f
12745 Author: Emmanuele Bassi <ebassi@gnome.org>
12746 Date:   Mon Oct 5 17:21:41 2009 +0100
12747
12748     [layout] Use FixedLayout inside Group
12749     
12750     The Group actor should use the FixedLayout layout manager object
12751     to avoid duplicating code.
12752
12753  clutter/clutter-group.c |  138 ++++++++++-------------------------------------
12754  1 file changed, 29 insertions(+), 109 deletions(-)
12755
12756 commit 62db72cf4106f498a041d02d67de72460130acdd
12757 Author: Emmanuele Bassi <ebassi@gnome.org>
12758 Date:   Mon Oct 5 17:09:04 2009 +0100
12759
12760     [layout] Update FixedLayout
12761     
12762     The behaviour of ClutterGroup has been fixed with regards to the
12763     preferred size request; the fixed layout manager should use the
12764     same behaviour.
12765
12766  clutter/clutter-fixed-layout.c |  116 +++++++---------------------------------
12767  1 file changed, 20 insertions(+), 96 deletions(-)
12768
12769 commit 4663552a0017f85c818a664b3528fab617e6e15c
12770 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12771 Date:   Fri Sep 18 15:29:09 2009 +0100
12772
12773     [layout] Typo and whitespace fixes
12774
12775  clutter/clutter-box.c |    2 +-
12776  clutter/clutter-box.h |    2 +-
12777  2 files changed, 2 insertions(+), 2 deletions(-)
12778
12779 commit c98388bb0166fedd4e72bca42b99782a9b2fb52c
12780 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12781 Date:   Thu Sep 17 18:21:51 2009 +0100
12782
12783     [layout, box] Add Box:color
12784     
12785     Allow setting the background color of a ClutterBox
12786
12787  clutter/clutter-box.c                      |  136 +++++++++++++++++++++++++++-
12788  clutter/clutter-box.h                      |    5 +
12789  doc/reference/clutter/clutter-sections.txt |    4 +
12790  3 files changed, 144 insertions(+), 1 deletion(-)
12791
12792 commit df6ca3d171a6a8d1a18cbf0fe70f4e4572e54479
12793 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12794 Date:   Thu Sep 17 11:38:43 2009 +0100
12795
12796     [layout, docs] Clean up BinLayout documentation
12797     
12798     Documentation and code style fixes for BinLayout.
12799
12800  clutter/clutter-bin-layout.c |  120 +++++++++++++++++++++++++++++++-----------
12801  clutter/clutter-bin-layout.h |   24 +++++++++
12802  2 files changed, 112 insertions(+), 32 deletions(-)
12803
12804 commit 8b2088a91787562c01d5b8184f1f2b2f1d225371
12805 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12806 Date:   Wed Sep 16 15:55:30 2009 +0100
12807
12808     [layout, tests] Use variants for child packing in Box
12809     
12810     There are three potential variants to add a child inside a Box
12811     with a BinLayout:
12812     
12813       - clutter_box_pack(), a variadic argument function which
12814         allows passing arbitrary LayoutMeta properties and values;
12815     
12816       - clutter_bin_layout_add(), which uses the backpointer to
12817         the container from the LayoutManager and sets the layout
12818         properties directly without GValue (de)marshalling
12819     
12820       - clutter_container_add_actor() and
12821         clutter_bin_layout_set_alignment(), similar to the
12822         clutter_bin_layout_add() function above, but split in two
12823     
12824     The test-box interactive test should exercise all three variants.
12825
12826  tests/interactive/test-box.c |   24 ++++++++++++++++--------
12827  1 file changed, 16 insertions(+), 8 deletions(-)
12828
12829 commit 431a63d04adc40dfd719563c4f9978324f618b4e
12830 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12831 Date:   Wed Sep 16 15:51:13 2009 +0100
12832
12833     [layout] Store and use the container inside BinLayout
12834     
12835     The BinLayout should store a pointer to the Container that it is
12836     using it as the layout manager.
12837     
12838     This allows us to fix the API and drop the additional Container
12839     arguments from set_alignment() and get_alignment().
12840     
12841     This also allows us to add a ClutterBinLayout::add() method which
12842     adds an actor and sets the alignment policies without dealing with
12843     variadic arguments functions and GValue (de)marshalling.
12844
12845  clutter/clutter-bin-layout.c               |  120 +++++++++++++++++++++++++---
12846  clutter/clutter-bin-layout.h               |    7 +-
12847  doc/reference/clutter/clutter-sections.txt |    1 +
12848  3 files changed, 114 insertions(+), 14 deletions(-)
12849
12850 commit 755896664f7efc4bbfce0bfb6ea3249b6c526a59
12851 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12852 Date:   Wed Sep 16 15:48:28 2009 +0100
12853
12854     [layout] Set a back pointer to Box inside the layout
12855     
12856     Use the LayoutManager API to set a back pointer to the Box actor
12857     inside the LayoutManager used by the box.
12858     
12859     This also allows us to replace the LayoutManager on a Box, since
12860     the LayoutManager will be able to replace all the metadata if
12861     needed.
12862
12863  clutter/clutter-box.c                      |   37 ++++++++++++++++++++++++++--
12864  clutter/clutter-box.h                      |    2 ++
12865  doc/reference/clutter/clutter-sections.txt |    1 +
12866  3 files changed, 38 insertions(+), 2 deletions(-)
12867
12868 commit 22bb243ec24821cd18e7dba791e793884ffe2a63
12869 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12870 Date:   Wed Sep 16 15:47:26 2009 +0100
12871
12872     [layout] Replace stale LayoutMeta
12873     
12874     If a LayoutMeta references a different container and/or layout manager
12875     then we should simply replace it and discard the previous one.
12876
12877  clutter/clutter-layout-manager.c |   17 ++++++++++++++++-
12878  1 file changed, 16 insertions(+), 1 deletion(-)
12879
12880 commit 9117ee205691a5bb1a3bb65e1963ed5b8826b79f
12881 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12882 Date:   Wed Sep 16 14:58:30 2009 +0100
12883
12884     [layout] Allow taking a back pointer to the Container
12885     
12886     The LayoutManager implementation might opt to take a back pointer
12887     to the Container that is using the layout instance; this allows
12888     direct access to the container itself from within the implementation.
12889
12890  clutter/clutter-layout-manager.c           |   28 ++++++++++++++++++++++++++++
12891  clutter/clutter-layout-manager.h           |   12 ++++++++++++
12892  doc/reference/clutter/clutter-sections.txt |    1 +
12893  3 files changed, 41 insertions(+)
12894
12895 commit f58bdbad15206f4369589f50789b9db9585f6e03
12896 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12897 Date:   Wed Sep 16 11:10:45 2009 +0100
12898
12899     [layout] Rename Box::add to Box::pack
12900     
12901     Since ClutterBox is a ClutterContainer we should avoid naming
12902     collisions between methods.
12903
12904  clutter/clutter-box.c                      |   24 ++++++++++++------------
12905  clutter/clutter-box.h                      |    4 ++--
12906  doc/reference/clutter/clutter-sections.txt |    4 ++--
12907  tests/interactive/test-box.c               |   24 ++++++++++++------------
12908  4 files changed, 28 insertions(+), 28 deletions(-)
12909
12910 commit c6f67bf872ec2b51951a554e0351e6d7615d28ce
12911 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12912 Date:   Wed Sep 16 11:10:38 2009 +0100
12913
12914     [layout, docs] Document FixedLayout
12915
12916  clutter/clutter-fixed-layout.c |   45 ++++++++++++++++++++++++++++++++++++++++
12917  clutter/clutter-fixed-layout.h |   42 +++++++++++++++++++++++++++++++++++++
12918  2 files changed, 87 insertions(+)
12919
12920 commit aaae60e17837d6f0b330c04345f1e2c2be9f24b9
12921 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12922 Date:   Tue Sep 15 23:20:51 2009 +0100
12923
12924     [layout] Implement ClutterBox::add
12925     
12926     The ClutterBox::add method is a simple wrapper around the Container
12927     add_actor() method and the LayoutManager layout properties API. It
12928     allows adding an actor to a Box and setting the layout properties in
12929     one call.
12930     
12931     If the LayoutManager used by the Box does not support layout properties
12932     then the add() method short-circuits out.
12933     
12934     Along with the varargs version of the method there's also a vector-based
12935     variant, for language bindings to use.
12936
12937  clutter/clutter-box.c                      |  186 ++++++++++++++++++++++++++++
12938  clutter/clutter-box.h                      |   10 ++
12939  doc/reference/clutter/clutter-sections.txt |    2 +
12940  tests/interactive/test-box.c               |   31 ++---
12941  4 files changed, 210 insertions(+), 19 deletions(-)
12942
12943 commit a2086f1178fa3aed7fdc6f94d09efbc0e1bc2c11
12944 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12945 Date:   Tue Sep 15 17:37:11 2009 +0100
12946
12947     [layout] Add LayoutMeta
12948     
12949     Instead of overloading ClutterChildMeta with both container and layout
12950     metadata and delegate to every LayoutManager implementation to keep a
12951     backpointer to the layout manager instance, we can simply subclass
12952     ChildMeta into LayoutMeta and presto! everything works out pretty well
12953     for everyone.
12954
12955  clutter/Makefile.am                        |    2 +
12956  clutter/clutter-bin-layout.c               |   35 ++++---
12957  clutter/clutter-layout-manager.c           |   58 +++++++-----
12958  clutter/clutter-layout-manager.h           |  133 +++++++++++++-------------
12959  clutter/clutter-layout-meta.c              |  142 ++++++++++++++++++++++++++++
12960  clutter/clutter-layout-meta.h              |   85 +++++++++++++++++
12961  clutter/clutter-types.h                    |    1 +
12962  clutter/clutter.h                          |    1 +
12963  doc/reference/clutter/clutter-docs.xml.in  |    5 +-
12964  doc/reference/clutter/clutter-sections.txt |   19 ++++
12965  doc/reference/clutter/clutter.types        |    1 +
12966  11 files changed, 369 insertions(+), 113 deletions(-)
12967
12968 commit 899db6f226864614350d6aa07d8313dccf7d652f
12969 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12970 Date:   Tue Sep 15 16:24:47 2009 +0100
12971
12972     [layout, docs] Add layout managers sections
12973     
12974     Add LayoutManager and its subclasses, and the Box actor to the
12975     gtk-doc machinery needed to generate the API reference.
12976
12977  clutter/clutter-bin-layout.c               |    6 +-
12978  clutter/clutter-bin-layout.h               |    4 +-
12979  clutter/clutter-layout-manager.c           |  145 +++++++++++++++++++++++++++-
12980  clutter/clutter-layout-manager.h           |   16 ++-
12981  doc/reference/clutter/clutter-docs.xml.in  |    9 ++
12982  doc/reference/clutter/clutter-sections.txt |   94 ++++++++++++++++++
12983  doc/reference/clutter/clutter.types        |    4 +
12984  7 files changed, 269 insertions(+), 9 deletions(-)
12985
12986 commit 9cccff504a40706e70b11878572d7e7db7430792
12987 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12988 Date:   Mon Sep 14 21:51:49 2009 +0100
12989
12990     [layout] Add layers to BinLayout
12991     
12992     Each actor managed by a BinLayout policy should reside inside its
12993     own "layer", with horizontal and vertical alignment. The :x-align
12994     and :y-align properties of the BinLayout are the default alignment
12995     policies, which are copied to each new "layer" when it is created.
12996     
12997     The set_alignment() and get_alignment() methods of BinLayout can
12998     be changed to operate on a specific "layer".
12999     
13000     The whole machinery uses the new ChildMeta support inside the
13001     LayoutManager base abstract class.
13002
13003  clutter/clutter-bin-layout.c |  265 +++++++++++++++++++++++++++++++++++++-----
13004  clutter/clutter-bin-layout.h |    4 +
13005  tests/interactive/test-box.c |  147 ++++++++++++++++++++++-
13006  3 files changed, 385 insertions(+), 31 deletions(-)
13007
13008 commit 98474076a1310494fec252fb6bfce8001bca78da
13009 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13010 Date:   Mon Sep 14 21:50:20 2009 +0100
13011
13012     [layout] Bind the layout ChildMeta inside Box
13013     
13014     The ClutterBox container actor should add and remove ChildMeta to
13015     each actor that has been added and removed to the list of children,
13016     respectively.
13017
13018  clutter/clutter-box.c |    9 +++++++++
13019  1 file changed, 9 insertions(+)
13020
13021 commit 7051fe275d9d052ce42e8237080844aa18ee927c
13022 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13023 Date:   Mon Sep 14 21:48:06 2009 +0100
13024
13025     [layout] Bind ChildMeta to LayoutManager
13026     
13027     The ChildMeta object is a storage for child-container properties,
13028     that is properties that exist only when an actor is inside a specific
13029     container. The LayoutManager delegate class should also have
13030     layout-specific properties -- so, for this job, we can "recycle"
13031     ChildMeta as the storage.
13032
13033  clutter/clutter-layout-manager.c |  372 ++++++++++++++++++++++++++++++++++++++
13034  clutter/clutter-layout-manager.h |   92 ++++++----
13035  2 files changed, 432 insertions(+), 32 deletions(-)
13036
13037 commit 83a4e9626772453804c61d7aa022eacf540bf0ce
13038 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13039 Date:   Mon Sep 14 12:04:42 2009 +0100
13040
13041     [layout] Document BinLayout
13042
13043  clutter/clutter-bin-layout.c |   93 ++++++++++++++++++++++++++++++++++++++++++
13044  clutter/clutter-bin-layout.h |   46 ++++++++++++++++++++-
13045  2 files changed, 137 insertions(+), 2 deletions(-)
13046
13047 commit b06a3293fe3d065369d9f97ad8bfa77051414fec
13048 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13049 Date:   Mon Sep 14 12:03:38 2009 +0100
13050
13051     [layout] Notify of alignment changes in BinLayout
13052     
13053     Emit the ::layout-changed when the BinLayout alignment policies change.
13054     
13055     This will result in a queue_relayout() on the containers using the
13056     BinLayout layout manager.
13057
13058  clutter/clutter-bin-layout.c |   10 ++++++++++
13059  1 file changed, 10 insertions(+)
13060
13061 commit 4e8d8bbc15f26e95adfd59469306b7098f9fd491
13062 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13063 Date:   Mon Sep 14 11:28:34 2009 +0100
13064
13065     [layout] Update Box
13066     
13067     * Use ::layout-changed to queue a relayout when the layout changes
13068     
13069     * Destroy the Box children when destroying the Box
13070     
13071     * Allow getting the layout manager from the Box
13072
13073  clutter/clutter-box.c |   72 +++++++++++++++++++++++++++++++++++++++++++++----
13074  clutter/clutter-box.h |    4 ++-
13075  2 files changed, 70 insertions(+), 6 deletions(-)
13076
13077 commit d096a3c791ab5b105d55a19ab316cd8b2fff878b
13078 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13079 Date:   Mon Sep 14 11:04:11 2009 +0100
13080
13081     [layout] Add LayoutManager::layout-changed signal
13082     
13083     If a sub-class of LayoutManager wishes to implement a parametrized
13084     layout policy it also needs a way to notify the container using the
13085     layout manager that the layout has changed. We cannot do it directly
13086     and automatically from the LayoutManager because a) it has no back
13087     link to the actor that it is using it and b) it can be attached to
13088     multiple actors.
13089     
13090     This is a job for <cue raising dramatic music> signals!
13091     
13092     By adding ClutterLayoutManager::layout-changed (and its relative
13093     emitted function) we can notify actors using the layout manager that
13094     the layout parameters have been changed, and thus they should queue
13095     a relayout.
13096
13097  clutter/clutter-layout-manager.c |  103 +++++++++++++++++++++++++++++++++++++-
13098  clutter/clutter-layout-manager.h |   44 ++++++++++++++++
13099  2 files changed, 146 insertions(+), 1 deletion(-)
13100
13101 commit a1853892bae7c54d28a86e253e04c3753d65e159
13102 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13103 Date:   Fri Sep 11 15:34:13 2009 +0100
13104
13105     [tests] Add a Box interactive test
13106
13107  .gitignore                    |    1 +
13108  tests/interactive/Makefile.am |    3 ++-
13109  tests/interactive/test-box.c  |   47 +++++++++++++++++++++++++++++++++++++++++
13110  3 files changed, 50 insertions(+), 1 deletion(-)
13111
13112 commit 1061ebeac90a5b03a172aa649aa5a8b8cfb5b293
13113 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13114 Date:   Fri Sep 11 13:51:23 2009 +0100
13115
13116     [layout] Add BinLayout
13117     
13118     A BinLayout is a simple layout manager that allocates a single cell,
13119     providing alignment on both the horizontal and vertical axis.
13120     
13121     If the container associated to the BinLayout has more than one child,
13122     the preferred size returned by the layout manager will be as big as
13123     the maximum of the children preferred sizes; the allocation will be
13124     applied to all children - but it will still depend on each child
13125     preferred size and the BinLayout horizontal and vertical alignment
13126     properties.
13127     
13128     The supported alignment properties are:
13129     
13130       * center: align the child by centering it
13131       * start: align the child at the top or left border of the layout
13132       * end: align the child at the bottom or right border of the layout
13133       * fill: expand the child to fill the size of the layout
13134       * fixed: let the child position itself
13135
13136  clutter/Makefile.am          |    2 +
13137  clutter/clutter-bin-layout.c |  397 ++++++++++++++++++++++++++++++++++++++++++
13138  clutter/clutter-bin-layout.h |   50 ++++++
13139  clutter/clutter.h            |    1 +
13140  4 files changed, 450 insertions(+)
13141
13142 commit 6d4cc13f7c7047a609dd8055ce63048da294af39
13143 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13144 Date:   Wed Sep 2 12:37:16 2009 +0100
13145
13146     [layout] Add Fixed layout manager
13147     
13148     The FixedLayout layout manager object implements the same layout
13149     policy of ClutterGroup.
13150
13151  clutter/Makefile.am            |    2 +
13152  clutter/clutter-fixed-layout.c |  217 ++++++++++++++++++++++++++++++++++++++++
13153  clutter/clutter-fixed-layout.h |   38 +++++++
13154  clutter/clutter.h              |    1 +
13155  4 files changed, 258 insertions(+)
13156
13157 commit 141a1556908749236c90e69fc2388f4fc40c6d8f
13158 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13159 Date:   Wed Sep 2 11:55:22 2009 +0100
13160
13161     [layout] Make LayoutManager a floating object
13162     
13163     A layout manager instance makes only sense if it's owned by a
13164     container. For this reason, it should have a floating reference
13165     instead of a full reference on construction; this allows constructing
13166     Boxes like:
13167     
13168       box = clutter_box_new (clutter_fixed_layout_new ());
13169     
13170     without leaking the layout manager instance.
13171
13172  clutter/clutter-box.c            |    3 ++-
13173  clutter/clutter-layout-manager.c |    4 +++-
13174  clutter/clutter-layout-manager.h |    4 ++--
13175  3 files changed, 7 insertions(+), 4 deletions(-)
13176
13177 commit 0340f656346d80696305218897720e28c88f367a
13178 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13179 Date:   Tue Sep 1 17:42:50 2009 +0100
13180
13181     [box] Add ClutterBox
13182     
13183     ClutterBox is an actor with no layout management. It relies on
13184     a ClutterLayoutManager to perform size requisition and allocation
13185     of its children.
13186
13187  clutter/Makefile.am   |    2 +
13188  clutter/clutter-box.c |  368 +++++++++++++++++++++++++++++++++++++++++++++++++
13189  clutter/clutter-box.h |   43 ++++++
13190  clutter/clutter.h     |    1 +
13191  4 files changed, 414 insertions(+)
13192
13193 commit d6183e95e51d1e3807ed5150768de2426b6b8e65
13194 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13195 Date:   Tue Sep 1 16:34:28 2009 +0100
13196
13197     [layout] Add initial implementation of LayoutManager
13198     
13199     The LayoutManager class is an abstract proxy for the size requesition
13200     and size allocation process in ClutterActor.
13201     
13202     A ClutterLayoutManager sub-class must implement get_preferred_width(),
13203     get_preferred_height() and allocate(); a ClutterContainer using the
13204     LayoutManager API will then proxy the corresponding Actor virtual
13205     functions to the LayoutManager instance. This allows having a generic
13206     "blank" ClutterActor sub-class, implementing the ClutterContainer
13207     interface, which leaves only the layout management implementation to
13208     the application developers.
13209
13210  clutter/Makefile.am              |    2 +
13211  clutter/clutter-layout-manager.c |  180 ++++++++++++++++++++++++++++++++++++++
13212  clutter/clutter-layout-manager.h |   92 +++++++++++++++++++
13213  clutter/clutter.h                |    1 +
13214  4 files changed, 275 insertions(+)
13215
13216 commit 4f2bfc003ad0f5b0b9d69693eed1bdbc9655f947
13217 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13218 Date:   Tue Oct 13 19:27:03 2009 +0100
13219
13220     build: Clean up main Makefile.am
13221
13222  clutter/Makefile.am |   55 +++++++++++++++++++++++++++------------------------
13223  1 file changed, 29 insertions(+), 26 deletions(-)
13224
13225 commit 46b736f42e1165420796ed2afe4fc791d82381da
13226 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13227 Date:   Tue Oct 13 17:27:19 2009 +0100
13228
13229     build: Move marshallers and enum types rules out
13230     
13231     The rules to create signal marshallers and enumeration GTypes are
13232     usually copied and pasted all over different projects, though they
13233     are pretty generic and, given a little bit of parametrization, can
13234     be put in separate Makefile.am files and included whenever needed.
13235
13236  build/autotools/Makefile.am         |    2 +
13237  build/autotools/Makefile.am.enums   |   43 ++++++++++++++++++++
13238  build/autotools/Makefile.am.marshal |   44 ++++++++++++++++++++
13239  clutter/Makefile.am                 |   75 +++++++++--------------------------
13240  4 files changed, 107 insertions(+), 57 deletions(-)
13241
13242 commit 0e33c10048dd3cba33644fd51ae3e1ea18dcc357
13243 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13244 Date:   Tue Oct 13 17:00:15 2009 +0100
13245
13246     docs: Allow XInclude fallback for the annotation glossary
13247
13248  doc/reference/clutter/clutter-docs.xml.in |    2 +-
13249  1 file changed, 1 insertion(+), 1 deletion(-)
13250
13251 commit a99f693c85cee6e389892b271f8aa25532bd7a6f
13252 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13253 Date:   Sat Oct 10 13:52:46 2009 +0100
13254
13255     docs: Make StageManager a public class
13256     
13257     The StageManager API is useful to track the stages of an application.
13258     It will also be useful when we land the modules API.
13259
13260  doc/reference/clutter/Makefile.am          |    1 -
13261  doc/reference/clutter/clutter-docs.xml.in  |    1 +
13262  doc/reference/clutter/clutter-sections.txt |   23 +++++++++++++++++++++++
13263  doc/reference/clutter/clutter.types        |    2 ++
13264  4 files changed, 26 insertions(+), 1 deletion(-)
13265
13266 commit c3d056533c8733160227b790388723a4c8a16123
13267 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13268 Date:   Sat Oct 10 13:51:47 2009 +0100
13269
13270     stage/manager: Set :default-stage as read-only
13271     
13272     The StageManager:default-stage property should be read-only, since
13273     the default stage is owned by Clutter itself.
13274
13275  clutter/clutter-stage-manager.c |   23 ++---------------------
13276  1 file changed, 2 insertions(+), 21 deletions(-)
13277
13278 commit 74eaa2941327d3ee7762a93136b647979b6e094a
13279 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13280 Date:   Sat Oct 10 13:50:25 2009 +0100
13281
13282     stage/manager: Deprecate set_default_stage()
13283     
13284     The set_default_stage() method of StageManager should not be used
13285     by application code; technically, nothing in Clutter uses it, and
13286     StageManager's API is not considered public anyway.
13287
13288  clutter/clutter-stage-manager.c |   52 ++++++++++++++++++++++++++++++---------
13289  clutter/clutter-stage-manager.h |   23 ++++++++++++++---
13290  2 files changed, 60 insertions(+), 15 deletions(-)
13291
13292 commit a7ff5385a5071824e996eae6b92486ef07bd143e
13293 Author: Damien Lespiau <damien.lespiau@intel.com>
13294 Date:   Fri Oct 9 17:18:34 2009 +0100
13295
13296     [actor] Unset the IN_DESTRUCTION flag when leaving ::destroy()
13297     
13298     The IN_DESTRUCTION flag is set around the unrealization and disposal of
13299     the actor in clutter_actor_destroy() but is never unset (it's set twice
13300     instead).
13301     
13302     Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13303
13304  clutter/clutter-actor.c |    2 +-
13305  1 file changed, 1 insertion(+), 1 deletion(-)
13306
13307 commit 3bbc96e17e5a03ba931c86a5cd2a0ecaa2a3b77b
13308 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13309 Date:   Wed Oct 7 21:44:17 2009 +0100
13310
13311     text: Make the :text property not set the :use-markup one
13312     
13313     Currently, setting the :text property has the side-effect of
13314     setting the :use-markup property to FALSE. This prevents
13315     constructing a Text actor, or setting its properties, like:
13316     
13317       g_object_set (text,
13318                     "use-markup", TRUE,
13319                     "text", some_string,
13320                     NULL);
13321     
13322     as the ordering becomes important. Unfortunately, the ordering
13323     of the properties cannot be enforced with ClutterScript or
13324     with language bindings.
13325     
13326     The documentation of the clutter_text_set_text() method should
13327     be expanded to properly specify that the set_text() method will
13328     change the :use-markup property to FALSE as a side effect.
13329
13330  clutter/clutter-text.c |  283 ++++++++++++++++++++++++------------------------
13331  1 file changed, 144 insertions(+), 139 deletions(-)
13332
13333 commit 1f207c00d96e08141f6b998269732d9e65d4cf14
13334 Author: Emmanuele Bassi <ebassi@gnome.org>
13335 Date:   Wed Oct 7 17:35:11 2009 +0100
13336
13337     docs: Add the "clipping" section to the COGL API reference
13338     
13339     All the clip-related API in COGL is missing from the API reference
13340     because the cogl-clipping section is not included inside the main
13341     index file.
13342
13343  doc/reference/cogl/cogl-docs.xml.in  |    1 +
13344  doc/reference/cogl/cogl-sections.txt |    3 ++-
13345  2 files changed, 3 insertions(+), 1 deletion(-)
13346
13347 commit 80b3a8d3283fcc8af89bc83b2266ccd894cc50a6
13348 Author: Damien Lespiau <damien.lespiau@intel.com>
13349 Date:   Wed Oct 7 17:09:41 2009 +0100
13350
13351     [units] Ensure we don't have ponies
13352     
13353     The documentation states we should not parse ponies. Even with those
13354     with exclamation marks.
13355     
13356     Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13357
13358  tests/conform/test-clutter-units.c |    2 +-
13359  1 file changed, 1 insertion(+), 1 deletion(-)
13360
13361 commit 19c68799608910635b70c9befb92c1a6a21c15f3
13362 Author: Damien Lespiau <damien.lespiau@intel.com>
13363 Date:   Tue Oct 6 00:49:40 2009 +0100
13364
13365     [path] Add GValue transform functions from and to G_TYPE_STRING
13366     
13367     Transform functions allow the use of g_value_transform() to cast
13368     GValues. It's very handy to have casts to and from G_TYPE_STRING as it
13369     allows generic serialization and parsing of GTypes.
13370     
13371     Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13372
13373  clutter/clutter-path.c |   36 +++++++++++++++++++++++++++++++++++-
13374  1 file changed, 35 insertions(+), 1 deletion(-)
13375
13376 commit 8605073edb7a1e830696632a6de5ad694f1af98d
13377 Author: Damien Lespiau <damien.lespiau@intel.com>
13378 Date:   Tue Oct 6 17:47:34 2009 +0100
13379
13380     [units] Add support for centimeters
13381     
13382     The only tricky part of the patch is to remember that 1cm is 10mm.
13383     
13384     Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13385
13386  clutter/clutter-units.c                    |   48 ++++++++++++++++++++++++++--
13387  clutter/clutter-units.h                    |    7 +++-
13388  doc/reference/clutter/clutter-sections.txt |    1 +
13389  tests/conform/test-clutter-units.c         |   17 ++++++++--
13390  4 files changed, 67 insertions(+), 6 deletions(-)
13391
13392 commit 96859959bd24d99f51d5dea3b5ec7bc4bf7071f3
13393 Author: Damien Lespiau <damien.lespiau@intel.com>
13394 Date:   Tue Oct 6 12:02:15 2009 +0100
13395
13396     [units] Be more strict in the grammar we are parsing
13397     
13398     Current parsing of units has a number of shortcomings:
13399       * a number followed by trailing space (without any unit specified) was
13400         not recognized,
13401       * "5 emeralds" was parsed as 5em,
13402       * the way we parse the digits after the separator makes us lose
13403         precision for no good reason (5.0 is parsed as 5.00010014...f which
13404         makes g_assert_cmpfloat() fail)
13405     
13406     Let's define a stricter grammar we can recognize and try to do so. The
13407     description is in EBNF form, removing the optional <> which is a pain
13408     when having to write DocBook, and using '' for the terminal symbols.
13409     
13410     Last step, add more ClutterUnits unit test to get a better coverage of
13411     the grammar we want to parse.
13412     
13413     Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13414
13415  clutter/clutter-units.c            |   76 +++++++++++++++++++++++-------------
13416  tests/conform/test-clutter-units.c |   22 +++++++++++
13417  2 files changed, 70 insertions(+), 28 deletions(-)
13418
13419 commit 4d481e03f3534cb703a276cd430056d3ec27fcb0
13420 Author: Emmanuele Bassi <ebassi@gnome.org>
13421 Date:   Wed Oct 7 13:00:57 2009 +0100
13422
13423     color: Measure the string just once when parsing
13424     
13425     Instead of measuring the color hexadecimal string for each case, just
13426     measure it once and then use a switch() to go to the right case.
13427
13428  clutter/clutter-color.c |   40 ++++++++++++++++++++++------------------
13429  1 file changed, 22 insertions(+), 18 deletions(-)
13430
13431 commit c7d50083ec1d1209dd8653bc30ba4f3bec09e976
13432 Author: Thomas Wood <thomas.wood@intel.com>
13433 Date:   Wed Oct 7 12:27:38 2009 +0100
13434
13435     [color] allow alpha to be omitted when converting to color from string
13436     
13437     Parse #rgb and #rrggbb in addition to forms with the alpha channel
13438     specified. This allows conversion of colour strings from documents such as
13439     CSS where the alpha channel is not specified when using '#' notation.
13440     
13441     This patch also adds the relevant conformance test.
13442
13443  clutter/clutter-color.c    |   22 ++++++++++++++++++++++
13444  tests/conform/test-color.c |   28 ++++++++++++++++++++++++++++
13445  2 files changed, 50 insertions(+)
13446
13447 commit 13ac1fe75bec418f4e37e04540e6d16af55413f5
13448 Author: Neil Roberts <neil@linux.intel.com>
13449 Date:   Wed Oct 7 11:31:44 2009 +0100
13450
13451     [clutter-id-pool] Also warn if the ID refers to a deleted actor
13452     
13453     We should also warn if the glReadPixels happens to generate an ID that
13454     is within the range of the ID array but no longer points to an
13455     existing actor.
13456
13457  clutter/clutter-id-pool.c |   10 +++++-----
13458  1 file changed, 5 insertions(+), 5 deletions(-)
13459
13460 commit a4ff4d37a40b60ce7f7029c6fe12181c0e1e89e5
13461 Author: Neil Roberts <neil@linux.intel.com>
13462 Date:   Wed Oct 7 12:46:43 2009 +0100
13463
13464     [clutter-id-pool] Fix the check for out-of-range IDs
13465     
13466     If id == the length of the array then it is also invalid and could
13467     cause a crash.
13468
13469  clutter/clutter-id-pool.c |    2 +-
13470  1 file changed, 1 insertion(+), 1 deletion(-)
13471
13472 commit 142f8865181e92fb405ae0d2b2bc65468a9d2262
13473 Author: Thomas Wood <thomas.wood@intel.com>
13474 Date:   Wed Oct 7 12:15:26 2009 +0100
13475
13476     Revert "[color] allow alpha to omitted when converting from strings"
13477     
13478     This reverts commit eb8daac4b0726c1d9925bbbaeed7a8f39007da21.
13479     
13480     The original commit was incorrect and pushed accidentally.
13481
13482  clutter/clutter-color.c |   22 ----------------------
13483  1 file changed, 22 deletions(-)
13484
13485 commit bdf7499207d3fdba440228832445b71b9f64d300
13486 Author: Thomas Wood <thomas.wood@intel.com>
13487 Date:   Wed Oct 7 11:40:41 2009 +0100
13488
13489     [color] add a note to the documentation to specify the values of the alpha
13490     
13491     The alpha channel is fully opaque at 255 and fully transparent at 0.
13492
13493  clutter/clutter-color.c |    2 ++
13494  1 file changed, 2 insertions(+)
13495
13496 commit eb8daac4b0726c1d9925bbbaeed7a8f39007da21
13497 Author: Thomas Wood <thomas.wood@intel.com>
13498 Date:   Wed Oct 7 11:38:08 2009 +0100
13499
13500     [color] allow alpha to omitted when converting from strings
13501     
13502     Parse #rgb and #rrggbb in addition to forms with the alpha channel
13503     specified. This allows conversion of colour strings from documents such as
13504     CSS where the alpha channel is not specified when using '#' notation.
13505
13506  clutter/clutter-color.c |   22 ++++++++++++++++++++++
13507  1 file changed, 22 insertions(+)
13508
13509 commit 9e03d9231696160ef7d4d98cf6c1d2f2214c7172
13510 Author: Damien Lespiau <damien.lespiau@intel.com>
13511 Date:   Tue Oct 6 01:04:50 2009 +0100
13512
13513     [path] MOVE_TO and LINE_TO only use a pair of coordinates
13514     
13515     The documentation of ClutterPathNode had a small typo and stated that
13516     they use 2 pairs of coordinates.
13517
13518  clutter/clutter-path.h |    4 ++--
13519  1 file changed, 2 insertions(+), 2 deletions(-)
13520
13521 commit dd8e4dcd62979bf8b7c8ad0e8898888a065ba445
13522 Author: Robert Bragg <robert@linux.intel.com>
13523 Date:   Mon Oct 5 16:46:24 2009 +0100
13524
13525     [debug] Guard the use of gdk_pixbuf for pick debugging by #ifdef USE_GDKPIXBUF
13526     
13527     gdk is an optional clutter dependency, so the pick buffer debugging option
13528     needs some guards so we don't break, for example, the OSX builds.  This also
13529     adds a comment for the bit fiddling done on the pick colors used to ensure
13530     the pick colors are more distinguished while debugging.  (we swap the
13531     nibbles of each color component so that pick buffers don't just look black.)
13532
13533  clutter/clutter-main.c |   25 +++++++++++++++++++++++++
13534  1 file changed, 25 insertions(+)
13535
13536 commit f7c02642453420cf5866f9759d5f266d8ada40a5
13537 Author: Emmanuele Bassi <ebassi@gnome.org>
13538 Date:   Mon Oct 5 15:51:28 2009 +0100
13539
13540     [sdl] Update the SDL backend to the new StageWindow API
13541     
13542     The SDL backend remains experimental and not meant for public
13543     consumption, but at least it compiles and runs successfully.
13544
13545  clutter/sdl/clutter-backend-sdl.c |    8 +--
13546  clutter/sdl/clutter-stage-sdl.c   |  130 +++++++++++++++----------------------
13547  2 files changed, 57 insertions(+), 81 deletions(-)
13548
13549 commit 3fee43560d8108f9508cbb24ee98228e50b79e5d
13550 Author: Emmanuele Bassi <ebassi@gnome.org>
13551 Date:   Mon Oct 5 15:53:06 2009 +0100
13552
13553     [eglx] Create a StageWindow, not an Actor
13554     
13555     The Backend should create a StageWindow instance, not an Actor.
13556
13557  clutter/eglx/clutter-backend-egl.c |    4 ++--
13558  1 file changed, 2 insertions(+), 2 deletions(-)
13559
13560 commit 40222e891bec62e4e7187a3e66bdf7866a60bd38
13561 Author: Neil Roberts <neil@linux.intel.com>
13562 Date:   Tue Sep 29 12:11:55 2009 +0100
13563
13564     [ClutterGroup] Don't take into account the left edges when calculating the size
13565     
13566     ClutterGroup previously calculated the size as the distance from the
13567     left edge of the leftmost child to the right edge of the rightmost
13568     child except if there were any chidren left of the origin then the
13569     left edge would be zero.
13570     
13571     However the group is always allocated its size relative to its
13572     origin so if all of the children are to the right of the origin then
13573     the preferred size would not be large enough to reach the rightmost
13574     child.
13575     
13576         origin
13577         ┼──────────┐
13578         │Group     │
13579         │ ┌────────┼─┐
13580         │ │Child   │ │
13581         │ │        │ │
13582         └─┼────────┘ │
13583           │          │
13584           └──────────┘
13585            group size
13586           ╟──────────╢
13587     
13588     This patch makes it so the size is always just the rightmost edge.
13589     
13590         origin
13591         ┼────────────┐
13592         │Group       │
13593         │ ┌──────────┤
13594         │ │Child     │
13595         │ │          │
13596         │ │          │
13597         │ │          │
13598         └─┴──────────┘
13599           group size
13600         ╟────────────╢
13601     
13602     Fixes bug:
13603     
13604       http://bugzilla.openedhand.com/show_bug.cgi?id=1825
13605
13606  clutter/clutter-group.c |  122 ++++++++++-------------------------------------
13607  1 file changed, 26 insertions(+), 96 deletions(-)
13608
13609 commit 14e12ae4fd9320eeb970ff8aa7dfcd43dcfd5975
13610 Author: Emmanuele Bassi <ebassi@gnome.org>
13611 Date:   Mon Oct 5 14:58:08 2009 +0100
13612
13613     [eglx] Update the EGLX Stage to the new StageWindow API
13614     
13615     Move the ::realize and ::unrealize implementations over to the
13616     StageWindow instead of using Actor.
13617
13618  clutter/eglx/clutter-stage-egl.c |  120 +++++++++++++++++++-------------------
13619  1 file changed, 60 insertions(+), 60 deletions(-)
13620
13621 commit a799f6ccec0ea755c7677c5fe20c1bd52b321c05
13622 Author: Damien Lespiau <damien.lespiau@intel.com>
13623 Date:   Sat Oct 3 14:08:33 2009 +0100
13624
13625     Fix string parsing when no unit is given
13626     
13627     The check should really be on the character pointed by str. Added the
13628     corresponding test case.
13629
13630  clutter/clutter-units.c            |    2 +-
13631  tests/conform/test-clutter-units.c |    4 ++++
13632  2 files changed, 5 insertions(+), 1 deletion(-)
13633
13634 commit 4d7b8c9d4290c91ea69d992bad396d067e84b15b
13635 Author: Damien Lespiau <damien.lespiau@intel.com>
13636 Date:   Sat Oct 3 12:15:13 2009 +0100
13637
13638     clutter_value_get_unit() has not be renamed
13639     
13640     Since the Great Rework of ClutterUnits, functions have been using
13641     'units' not 'unit' in their name. clutter_value_get_unit() is a left
13642     over from a dark age, its declaration and documentation have been
13643     updated but not the symbol itself.
13644
13645  clutter/clutter-units.c |    2 +-
13646  1 file changed, 1 insertion(+), 1 deletion(-)
13647
13648 commit 72243081b5b0bf0518951f9f5f3ae91a7d4c640f
13649 Merge: ad83caa 111512a
13650 Author: Emmanuele Bassi <ebassi@gnome.org>
13651 Date:   Mon Oct 5 12:37:08 2009 +0100
13652
13653     Merge branch 'stage-window-object'
13654     
13655     * stage-window-object:
13656       [x11] Fix Stage user-initiated resize
13657       [x11] Remove a useless forced paint
13658       [stage] Rework the Stage implementation class
13659
13660 commit ad83caaed16a36aea0fafd4ed87cc283c30c413b
13661 Author: Emmanuele Bassi <ebassi@gnome.org>
13662 Date:   Mon Oct 5 12:34:48 2009 +0100
13663
13664     Clarify the IdPool warning
13665     
13666     Instead of having an assertion failure with a message of dubious
13667     usefulness, we should probably use a more verbose warning explaining
13668     what is the problem and what might be the cause.
13669
13670  clutter/clutter-id-pool.c |    9 ++++++++-
13671  1 file changed, 8 insertions(+), 1 deletion(-)
13672
13673 commit 111512a2a05243a7fc6f999f18805eae9bd6bfce
13674 Author: Emmanuele Bassi <ebassi@gnome.org>
13675 Date:   Mon Oct 5 12:24:19 2009 +0100
13676
13677     [x11] Fix Stage user-initiated resize
13678     
13679     The user-initiated resize is conflicting with the allocated size. This
13680     happens because we change the size of the stage's X Window behind the
13681     back of the size allocation machinery.
13682     
13683     Instead, we should change the size of the actor whenever we receive a
13684     ConfigureNotify event to reflect the new size of the actor.
13685
13686  clutter/x11/clutter-event-x11.c |    7 +++----
13687  clutter/x11/clutter-stage-x11.c |    6 +++++-
13688  tests/interactive/test-actors.c |    1 +
13689  3 files changed, 9 insertions(+), 5 deletions(-)
13690
13691 commit e3c2ed0009e2ce85e65d5a1724a807faae865494
13692 Author: Emmanuele Bassi <ebassi@gnome.org>
13693 Date:   Mon Oct 5 12:21:02 2009 +0100
13694
13695     [x11] Remove a useless forced paint
13696     
13697     We force the redraw before mapping, in the hope that when a composited
13698     window manager maps the window it will have its contents ready; that is
13699     not going to work: the solution for this problem requires the implementation
13700     of a protocol for compositors, and not a hack.
13701     
13702     Moreover, painting before mapping will cause a paint with the wrong
13703     GL viewport size, which is the wrong thing to do on GLX.
13704
13705  clutter/x11/clutter-stage-x11.c |    5 -----
13706  1 file changed, 5 deletions(-)
13707
13708 commit 6ddffac93561b5d3aa6226ee54bd8a5e1fcedeb5
13709 Author: Emmanuele Bassi <ebassi@gnome.org>
13710 Date:   Sun Sep 27 11:38:01 2009 +0100
13711
13712     [docs] Update the "Subclassing Actor" chapter
13713     
13714     The chapter on how to subclass ClutterActor inside the API reference for
13715     Clutter is still using ClutterUnit and referencing to concepts that have
13716     been changed since the document was written.
13717
13718  doc/reference/clutter/subclassing-ClutterActor.xml |  169 +++++++++++++-------
13719  1 file changed, 107 insertions(+), 62 deletions(-)
13720
13721 commit ab76d64df02bc03f935e9cdf5a0a29c6ffeace72
13722 Author: Robert Bragg <robert@linux.intel.com>
13723 Date:   Tue Jul 28 00:40:29 2009 +0100
13724
13725     [cogl-debug] avoid warnings when using COGL_NOTE with unbraced else clauses
13726     
13727     When not building a debug build the compiler was warning about empty
13728     else clauses with no braces due to code like:
13729       if (blah)
13730         do_foo();
13731       else
13732         COGL_NOTE (DRAW, "a-wibble");
13733     
13734     This simply ensures that even for non debug builds COGL_NOTE will expand to
13735     a single statement.
13736
13737  clutter/cogl/cogl-debug.h |    2 +-
13738  1 file changed, 1 insertion(+), 1 deletion(-)
13739
13740 commit 904c495c6d3c59b34148c9a4834e4803b488997b
13741 Author: Robert Bragg <robert@linux.intel.com>
13742 Date:   Thu Sep 24 17:34:26 2009 +0100
13743
13744     [cogl-vertex-buffer] fix n_components validation for GL's builtin attributes
13745     
13746     glVertexPointer expects positions with 2, 3 or 4 components, glColorPointer
13747     expects colors with 3 or 4 components and glNormalPointer expects normals
13748     with three components so when adding vertex buffer atributes with the names
13749     "gl_Vertex", "gl_Color" or "gl_Normal" we assert these constraints and print
13750     an explanation to the developer if not met.
13751     
13752     This also fixes the previosly incorrect constraint that gl_Normal attributes
13753     must have n_components == 1; thanks to Cat Sidhe for reporting this:
13754     
13755     Bug: http://bugzilla.openedhand.com/show_bug.cgi?id=1819
13756
13757  clutter/cogl/common/cogl-vertex-buffer.c |   19 +++++++++++++++----
13758  1 file changed, 15 insertions(+), 4 deletions(-)
13759
13760 commit dae569b468c286ea23aa0e74e910232e025932db
13761 Author: Robert Bragg <robert@linux.intel.com>
13762 Date:   Thu Sep 24 12:49:17 2009 +0100
13763
13764     [debug] Adds a dump-pick-buffers CLUTTER_DEBUG option
13765     
13766     Now if you export CLUTTER_DEBUG=dump-pick-buffers clutter will write out a
13767     png, e.g.  pick-buffer-00000.png, each time _clutter_to_pick() is called.
13768     It's a rather crude way to debug the picking (realtime visualization in a
13769     second stage would probably be nicer) but it we've used this approach
13770     successfully numerous times when debugging Clutter picking issues so it
13771     makes sense to have a debug option for it.
13772
13773  clutter/clutter-debug.h |   35 +++++++++---------
13774  clutter/clutter-main.c  |   94 ++++++++++++++++++++++++++++++++++++++++++++---
13775  2 files changed, 106 insertions(+), 23 deletions(-)
13776
13777 commit 27ae9722dedb5bc25415c32326ffc7ba4ef1557d
13778 Author: Neil Roberts <neil@linux.intel.com>
13779 Date:   Tue Sep 22 17:55:04 2009 +0100
13780
13781     [container] Remove the unused 'object' variable in destroy_child_meta
13782     
13783     Since commit b2f958a61 this variable is no longer used so it was
13784     causing compiler warnings.
13785
13786  clutter/clutter-container.c |    1 -
13787  1 file changed, 1 deletion(-)
13788
13789 commit 4293920a11d5216095577cdfc46b9e21bb427a12
13790 Author: Robert Bragg <robert@linux.intel.com>
13791 Date:   Tue Sep 22 11:27:47 2009 +0100
13792
13793     [tests] Remove test-entry.c since we don't have a ClutterEntry any more
13794     
13795     Removes an unused interactive unit test for the old ClutterEntry actor we
13796     used to have.
13797
13798  .gitignore                     |    1 -
13799  tests/interactive/test-entry.c |   47 ----------------------------------------
13800  2 files changed, 48 deletions(-)
13801
13802 commit b710ed0eeace5561ccec1b1558ad26abb4af0da3
13803 Author: Robert Bragg <robert@linux.intel.com>
13804 Date:   Thu Aug 20 11:53:37 2009 +0100
13805
13806     [backend-egl] fix clutter_backend_egl_get_visual_info to not use Xalloc
13807     
13808     It looks like the intention was to duplicate an XVisualInfo in such a way
13809     that the pointer could be returned and then later freed using XFree.  But
13810     Xalloc isn't an Xlib counterpart to XFree; Xlib doesn't provide a general
13811     purpose malloc wrapper afik.  By shuffling things about a bit, it was
13812     possible to avoid the need for this hack.
13813
13814  clutter/eglx/clutter-backend-egl.c |   46 ++++++++++++------------------------
13815  1 file changed, 15 insertions(+), 31 deletions(-)
13816
13817 commit 6e50e26c86af20597b118f5a71d04f70b173f733
13818 Author: Damien Lespiau <damien.lespiau@intel.com>
13819 Date:   Mon Sep 21 15:21:21 2009 +0100
13820
13821     Add a few annotations on Cogl primitives functions
13822     
13823     By default, float * is considered as an out argument by gobject
13824     introspection which is wrong for quite a few Cogl symbols. Start adding
13825     annotations to fix that for the ones in the "Primitives" gtk-doc
13826     section.
13827
13828  clutter/cogl/cogl-path.h    |    8 ++++----
13829  clutter/cogl/cogl-texture.h |   15 ++++++++-------
13830  2 files changed, 12 insertions(+), 11 deletions(-)
13831
13832 commit 1b37cb6cb79dc36279d40ef108576aafeb905412
13833 Author: Robert Bragg <robert@linux.intel.com>
13834 Date:   Mon Sep 21 18:12:02 2009 +0100
13835
13836     [container] cast actor to gobject before calling g_object_set_qdata
13837     
13838     A minor compiler warning fix: in destroy_child_meta we weren't casting the
13839     first argument to g_object_set_qdata to a gobject.
13840
13841  clutter/clutter-container.c |    2 +-
13842  1 file changed, 1 insertion(+), 1 deletion(-)
13843
13844 commit b2f958a61807ca36ccc1e7b3edf112b317885528
13845 Author: Øyvind Kolås <pippin@linux.intel.com>
13846 Date:   Mon Sep 21 15:55:58 2009 +0100
13847
13848     [container] unset the child meta qdata on the child, not the container
13849     
13850     In the default implementation of container::destroy_child_meta Set child
13851     meta qdata to NULL on the child and not the container, since the child
13852     is the object that owns the data.
13853
13854  clutter/clutter-container.c |    2 +-
13855  1 file changed, 1 insertion(+), 1 deletion(-)
13856
13857 commit d4e46bb893d41f7e9d80d3d272765e7b2779d32b
13858 Author: Thomas Wood <thomas.wood@intel.com>
13859 Date:   Mon Sep 21 15:40:53 2009 +0100
13860
13861     [container] set the child meta qdata on the child, not the container
13862     
13863     Set child meta qdata on the child and not the container, since the child is
13864     the object that owns the data.
13865
13866  clutter/clutter-container.c |    2 +-
13867  1 file changed, 1 insertion(+), 1 deletion(-)
13868
13869 commit 1c3d5a0e870d6a8f221577783f4c9d79dbc062c5
13870 Author: Neil Roberts <neil@linux.intel.com>
13871 Date:   Thu Sep 17 18:29:03 2009 +0100
13872
13873     [cogl] Remove CoglContext->journal_vbo{,_len}
13874     
13875     The lifetime of the journal VBO is entirely within the scope of the
13876     cogl_journal_flush function so there is no need to store it globally
13877     in the Cogl context. Instead, upload_vertices_to_vbo just returns the
13878     new VBO. cogl_journal_flush stores this in a local variable and
13879     destroys it before returning.
13880     
13881     This also fixes an assertion when using the GLES backend which was
13882     caused by nothing initialising the journal_vbo variable.
13883
13884  clutter/cogl/common/cogl-primitives.c |   20 ++++++++++----------
13885  clutter/cogl/gl/cogl-context.c        |    2 --
13886  clutter/cogl/gl/cogl-context.h        |    2 --
13887  clutter/cogl/gles/cogl-context.h      |    1 -
13888  4 files changed, 10 insertions(+), 15 deletions(-)
13889
13890 commit ecfa0c4f92e3a78bdc4257c62a61b47aa41e0d05
13891 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13892 Date:   Wed Sep 16 17:43:58 2009 +0100
13893
13894     [build] Split out the custom silent rules
13895     
13896     The silent rules we use for custom targets should be moved into a
13897     separate Makefile.am that gets included from all the others.
13898
13899  Makefile.am                        |    2 ++
13900  build/autotools/Makefile.am        |    1 +
13901  build/autotools/Makefile.am.silent |   17 +++++++++++++++++
13902  clutter/Makefile.am                |   12 +++++-------
13903  clutter/cogl/Makefile.am           |    8 ++------
13904  clutter/cogl/common/Makefile.am    |    8 ++------
13905  clutter/cogl/gl/Makefile.am        |    2 ++
13906  clutter/cogl/gles/Makefile.am      |    2 ++
13907  clutter/glx/Makefile.am            |    2 ++
13908  clutter/pango/Makefile.am          |    2 ++
13909  clutter/x11/Makefile.am            |    2 ++
13910  tests/conform/Makefile.am          |    8 +++++---
13911  tests/data/Makefile.am             |    1 -
13912  tests/interactive/Makefile.am      |   11 ++++++-----
13913  tests/micro-bench/Makefile.am      |    2 ++
13914  tests/tools/Makefile.am            |    9 ++++++---
13915  16 files changed, 58 insertions(+), 31 deletions(-)
13916
13917 commit 94e60c393b6be8b69140da01835a377409f6a77b
13918 Author: Robert Bragg <robert@linux.intel.com>
13919 Date:   Wed Sep 16 17:12:30 2009 +0100
13920
13921     [test-cogl-multitexture] Print an error if textures can't be loaded
13922     
13923     I just wasted a silly amount time trying to bisect an apparently broken
13924     cogl-test-multitexture until I realized it was just silently failing to load
13925     any textures.
13926
13927  tests/interactive/test-cogl-multitexture.c |   15 ++++++++++++---
13928  1 file changed, 12 insertions(+), 3 deletions(-)
13929
13930 commit 3b4f46a18a1c631410b324d5f926c64f0e22ae93
13931 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13932 Date:   Wed Sep 16 12:47:46 2009 +0100
13933
13934     [docs] Fix the comment on version bumps
13935
13936  configure.ac |    5 +++--
13937  1 file changed, 3 insertions(+), 2 deletions(-)
13938
13939 commit 35c0da2b3a2558964ba74b9a213262f377aa2650
13940 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13941 Date:   Wed Sep 16 11:57:45 2009 +0100
13942
13943     [gitignore] Add test-preferred-size
13944
13945  .gitignore |    1 +
13946  1 file changed, 1 insertion(+)
13947
13948 commit 9dc012c07d1f6760d8d4cca07f5279e7b316dbd0
13949 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13950 Date:   Wed Sep 16 11:55:04 2009 +0100
13951
13952     [timeline] Account for clock roll backs between frames
13953     
13954     If the system clock rolls back between two frames then we need
13955     to account for the change, to avoid stopping the timeline.
13956     
13957     The best option, since a roll back can be any arbitrary amount
13958     of milliseconds, is to skip a frame.
13959     
13960     Fixes bug:
13961     
13962       http://bugzilla.moblin.org/show_bug.cgi?id=3839
13963
13964  clutter/clutter-timeline.c |   33 +++++++++++++++++++++++----------
13965  1 file changed, 23 insertions(+), 10 deletions(-)
13966
13967 commit 0d08f6e0707c1b3274227abc8054529422206e22
13968 Author: Robert Bragg <robert@linux.intel.com>
13969 Date:   Tue Sep 15 16:27:45 2009 +0100
13970
13971     [cogl-fbo] Disable mipmap filters before calling glCheckFramebufferStatusEXT
13972     
13973     The framebuffer_object spec isn't clear in defining whether attaching a
13974     texture as a renderbuffer with mipmap filtering enabled while the mipmaps
13975     have not been uploaded should result in an incomplete framebuffer object.
13976     (different drivers make different decisions)
13977     
13978     To avoid an error with drivers that do consider this a problem we explicitly
13979     set non mipmapped filters before calling glCheckFramebufferStatusEXT.  The
13980     filters will later be reset when the texture is actually used for rendering
13981     according to the filters set on the corresponding CoglMaterial.
13982
13983  clutter/cogl/gl/cogl-fbo.c |   12 ++++++++++++
13984  1 file changed, 12 insertions(+)
13985
13986 commit 561f5868e876ec17e9a6fa66282b8dcdf3ead6b6
13987 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13988 Date:   Tue Sep 15 11:09:49 2009 +0100
13989
13990     [tests] Add preferred size conformance test unit
13991     
13992     This unit verifies that an Actor class will invoke the get_preferred_*
13993     virtual functions unless the caching is in effect; it also verifies
13994     that the cached values are correctly evicted.
13995
13996  tests/conform/test-actor-size.c   |  136 ++++++++++++++++++++++++++++++++++++-
13997  tests/conform/test-conform-main.c |    1 +
13998  2 files changed, 136 insertions(+), 1 deletion(-)
13999
14000 commit 092401c01b249cd3ae9e4788ecbcce91ebb80f38
14001 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14002 Date:   Mon Sep 14 21:45:51 2009 +0100
14003
14004     [tests] Add initial sizing conformance test suite
14005     
14006     The size requisition and allocation mechanisms should be thoroughly
14007     tested to avoid unwanted regressions.
14008     
14009     For starters, we can test the explicit size setting and the side
14010     effects of calling clutter_actor_set_size().
14011
14012  .gitignore                        |    1 +
14013  tests/conform/Makefile.am         |    1 +
14014  tests/conform/test-actor-size.c   |   77 +++++++++++++++++++++++++++++++++++++
14015  tests/conform/test-conform-main.c |    2 +
14016  4 files changed, 81 insertions(+)
14017
14018 commit abbe2ebf8baa61edeaa2071fa850d000d565a6ce
14019 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14020 Date:   Mon Sep 14 15:57:31 2009 +0100
14021
14022     [container] Use a 1:1 mapping between child and ChildMeta
14023     
14024     Since an actor can only be parented to one container we don't need
14025     the extra complications of maintaining a list of ChildMeta objects
14026     attached to an actor in the default implementation of the Container
14027     interface.
14028
14029  clutter/clutter-container.c |   50 ++++++++-----------------------------------
14030  1 file changed, 9 insertions(+), 41 deletions(-)
14031
14032 commit 6e3afa4ebed9ea4f9347e8dfd6f3cc20d1042dcd
14033 Author: Damien Lespiau <damien.lespiau@intel.com>
14034 Date:   Thu Sep 10 13:27:02 2009 +0100
14035
14036     [docs] Clutter's model implementation is called ClutterListModel
14037     
14038     It was renamed from ClutterModelDefault to ClutterListModel a while
14039     back. Update the reference to this class in ClutterModel documentation.
14040
14041  clutter/clutter-model.c |    4 ++--
14042  1 file changed, 2 insertions(+), 2 deletions(-)
14043
14044 commit c5195dda1533e2f42514a880bb5b7d105d4fe541
14045 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14046 Date:   Wed Sep 9 16:15:54 2009 +0100
14047
14048     [docs] Add fixxref for Cairo symbols
14049     
14050     Let gtk-doc resolve the Cairo types and symbols to the installed
14051     Cairo documentation.
14052
14053  configure.ac                      |    2 ++
14054  doc/reference/clutter/Makefile.am |    6 +++---
14055  2 files changed, 5 insertions(+), 3 deletions(-)
14056
14057 commit f4e272ee9b6224cddc7eca54172025c5232e37bf
14058 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14059 Date:   Wed Sep 9 16:01:07 2009 +0100
14060
14061     [docs] Add a Path migration guide
14062     
14063     ClutterBehaviourPath has been changed and ClutterBehaviourBspline has
14064     been removed; now we use ClutterPath everywhere we need to describe a
14065     path. This warrants a chapter in the migration guide.
14066
14067  doc/reference/clutter/Makefile.am               |    6 +-
14068  doc/reference/clutter/clutter-docs.xml.in       |    1 +
14069  doc/reference/clutter/migrating-ClutterPath.xml |  167 +++++++++++++++++++++++
14070  3 files changed, 172 insertions(+), 2 deletions(-)
14071
14072 commit 3cc56b2b138ff6451ba73e088d1023705455aef7
14073 Author: Øyvind Kolås <pippin@linux.intel.com>
14074 Date:   Tue Sep 8 13:06:51 2009 +0100
14075
14076     [text] implement get_property for "use-markup"
14077
14078  clutter/clutter-text.c |    4 ++++
14079  1 file changed, 4 insertions(+)
14080
14081 commit 6988744db750dc3430a6c8cdd6274bc7e855aaf5
14082 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14083 Date:   Thu Aug 13 12:34:07 2009 +0100
14084
14085     [stage] Rework the Stage implementation class
14086     
14087     Instead of using ClutterActor for the base class of the Stage
14088     implementation we should extend the StageWindow interface with
14089     the required bits (geometry, realization) and use a simple object
14090     class.
14091     
14092     This require a wee bit of changes across Backend, Stage and
14093     StageWindow, even though it's mostly re-shuffling.
14094     
14095     First of all, StageWindow should get new virtual functions:
14096     
14097       * geometry:
14098         - resize()
14099         - get_geometry()
14100     
14101       * realization
14102         - realize()
14103         - unrealize()
14104     
14105     This covers all the bits that we use from ClutterActor currently
14106     inside the stage implementations.
14107     
14108     The ClutterBackend::create_stage() virtual function should create
14109     a StageWindow, and not an Actor (it should always have been; the
14110     fact that it returned an Actor was a leak of the black magic going
14111     on underneath). Since we never guaranteed ABI compatibility for
14112     the Backend class, this is not a problem.
14113     
14114     Internally to ClutterStage we can finally drop the shenanigans of
14115     setting/unsetting actor flags on the implementation: if the realization
14116     succeeds, for instance, we set the REALIZED flag on the Stage and
14117     we're done.
14118     
14119     As an initial proof of concept, the X11 and GLX stage implementations
14120     have been ported to the New World Order(tm) and show no regressions.
14121
14122  clutter/Makefile.am               |    2 +-
14123  clutter/clutter-backend.c         |   14 ++--
14124  clutter/clutter-backend.h         |    5 +-
14125  clutter/clutter-private.h         |    2 +-
14126  clutter/clutter-stage-window.c    |   79 +++++++++++++++++-
14127  clutter/clutter-stage-window.h    |   33 ++++++++
14128  clutter/clutter-stage.c           |  105 ++++++++++++------------
14129  clutter/clutter.h                 |    1 +
14130  clutter/glx/clutter-backend-glx.c |   14 ++--
14131  clutter/glx/clutter-stage-glx.c   |   50 +++++-------
14132  clutter/x11/clutter-stage-x11.c   |  161 +++++++++++--------------------------
14133  11 files changed, 253 insertions(+), 213 deletions(-)
14134
14135 commit 742cc4d95b602440c004d5af09a7fab662f03596
14136 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14137 Date:   Mon Sep 7 11:44:44 2009 +0100
14138
14139     [docs] Small annotation fixes
14140
14141  clutter/clutter-behaviour.c  |    5 +++--
14142  clutter/cogl/cogl-material.h |   29 ++++++++++++++++++-----------
14143  clutter/cogl/cogl-texture.h  |    7 ++++---
14144  3 files changed, 25 insertions(+), 16 deletions(-)
14145
14146 commit c69209a253c7ccbfe5d2c91e6972fa3dc1deb50c
14147 Author: Neil Roberts <neil@linux.intel.com>
14148 Date:   Mon Sep 7 11:36:05 2009 +0100
14149
14150     [animation] Move the check for the 'signal::' prefix into a separate function
14151     
14152     The old code checked whether the property began with 'signal-' and
14153     then checked for 'signal-swapped' and 'signal-after'. This prevented
14154     you from animating a property called for example 'signal-strength'.
14155     
14156     The check for the prefix is now in a separate function which also adds
14157     a 'signal-swapped-after' prefix for completeness.
14158     
14159     Fixes bug:
14160     
14161       http://bugzilla.openedhand.com/show_bug.cgi?id=1798
14162
14163  clutter/clutter-animation.c |   75 +++++++++++++++++++++++--------------------
14164  1 file changed, 41 insertions(+), 34 deletions(-)
14165
14166 commit 7783635af3c78cf65fcb62ccb03478f1a9556b05
14167 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14168 Date:   Thu Sep 3 16:51:14 2009 +0100
14169
14170     [docs] Add more collateral documentation
14171     
14172     * Add the main Glossary for Clutter terms
14173     
14174     * Add the annotation glossary, as generated by gtk-doc
14175     
14176     * Add the objects index and tree
14177
14178  doc/reference/clutter/Makefile.am         |    2 +
14179  doc/reference/clutter/clutter-docs.xml.in |   45 ++++++++-
14180  doc/reference/clutter/glossary.xml        |  142 +++++++++++++++++++++++++++++
14181  3 files changed, 184 insertions(+), 5 deletions(-)
14182
14183 commit 763f5a9d014656c09c4684bc69a0e45862882f43
14184 Author: Samuel Degrande <samuel.degrande@lifl.fr>
14185 Date:   Wed Sep 2 16:27:22 2009 +0100
14186
14187     DOT3_RGB[A] cannot be used in a Blend String
14188     
14189     The blend string compiler checks that the syntax of a function name is
14190     [A-Za-z_]*, preventing the use of DOT3_RGB[A].
14191     
14192     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14193
14194  clutter/cogl/common/cogl-blend-string.c |    8 +++++++-
14195  1 file changed, 7 insertions(+), 1 deletion(-)
14196
14197 commit a5e081dc9c8f39ce66270b77f5beaa6ac53e7a91
14198 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14199 Date:   Wed Sep 2 15:26:33 2009 +0100
14200
14201     [model] Do not attempt to free empty column names
14202     
14203     The column names are optional - ClutterModel will use the GType name
14204     if there is no user-specified column name. Hence, the ::finalize vfunc
14205     should not try to free an empty column names vector.
14206     
14207     Fixes bug:
14208     
14209       http://bugzilla.openedhand.com/show_bug.cgi?id=1790
14210
14211  clutter/clutter-model.c |   15 +++++++++------
14212  1 file changed, 9 insertions(+), 6 deletions(-)
14213
14214 commit 3686107460847d6b9333ff2149b850401590bae8
14215 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14216 Date:   Mon Aug 31 15:49:39 2009 +0100
14217
14218     [docs] Make sure to document the point-release process
14219     
14220     Put the documentation right inside configure.ac, lest I forget.
14221
14222  configure.ac |   25 ++++++++++++++++++-------
14223  1 file changed, 18 insertions(+), 7 deletions(-)
14224
14225 commit db6b0a91e0c2aebb245ad5d382769889abbf88dd
14226 Author: Neil Roberts <neil@linux.intel.com>
14227 Date:   Wed Aug 26 18:28:35 2009 +0100
14228
14229     Take a reference to the material in clutter_texture_set_cogl_material
14230     
14231     The material is unref'd in clutter_texture_finalize and the
14232     documentation explicitly states that the function will take a ref so
14233     it really should.
14234
14235  clutter/clutter-texture.c |    2 ++
14236  1 file changed, 2 insertions(+)
14237
14238 commit bad7782ab4bc0b5a96d8a97b9b32d5726343b1c2
14239 Author: Neil Roberts <neil@linux.intel.com>
14240 Date:   Wed Aug 26 18:24:48 2009 +0100
14241
14242     Fix the documentation for clutter_texture_set_cogl_material
14243     
14244     The documentation was a copy of the docs for set_cogl_texture so it
14245     was somewhat broken.
14246
14247  clutter/clutter-texture.c |   11 ++++++++---
14248  1 file changed, 8 insertions(+), 3 deletions(-)
14249
14250 commit b766a1cc100778c7f74acd9dcc280400eae4c55b
14251 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14252 Date:   Wed Aug 26 16:50:37 2009 +0100
14253
14254     [tests] Update the script test JSON
14255     
14256     The test-script.json UI definition still used old types, like
14257     ClutterLabel and ClutterCloneTexture. It should move to the classes
14258     that have replaced them.
14259
14260  tests/data/test-script.json |   18 +++++++++---------
14261  1 file changed, 9 insertions(+), 9 deletions(-)
14262
14263 commit bb17dc1ce5d91f68da53944b5d7565be00b179eb
14264 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14265 Date:   Wed Aug 26 16:49:45 2009 +0100
14266
14267     [script] Clean up the ad hoc parsing code in Actor
14268     
14269     The old parsing code still assumed we had integers for pixels
14270     and floating point values for percentages; this is not the case
14271     anymore.
14272
14273  clutter/clutter-actor.c |   38 ++------------------------------------
14274  1 file changed, 2 insertions(+), 36 deletions(-)
14275
14276 commit 2ffebad3d9b29931c29b8cb927580f9166ab39df
14277 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14278 Date:   Wed Aug 26 16:48:32 2009 +0100
14279
14280     [script] Convert double to float when parsing
14281     
14282     The default floating point type for JSON is double precision; this means
14283     that we need to conver to single precision when setting a property with
14284     type G_TYPE_FLOAT.
14285
14286  clutter/clutter-script.c |   13 +++++++++++++
14287  1 file changed, 13 insertions(+)
14288
14289 commit 87831b3427be959bea6a649e2718a5bda5927463
14290 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14291 Date:   Tue Aug 25 17:55:51 2009 +0100
14292
14293     [tests] Add a Group actor unit
14294     
14295     We need to test that the depth sorting of ClutterGroup works correctly
14296     in case we wish to change the data structure that stores the children,
14297     and do so without changing the default behaviour.
14298
14299  .gitignore                        |    1 +
14300  tests/conform/Makefile.am         |    1 +
14301  tests/conform/test-conform-main.c |    2 ++
14302  tests/conform/test-group.c        |   57 +++++++++++++++++++++++++++++++++++++
14303  4 files changed, 61 insertions(+)
14304
14305 commit f1d58812078e04c7db17c80b51d48bb716b868d1
14306 Author: Øyvind Kolås <pippin@linux.intel.com>
14307 Date:   Tue Aug 25 17:32:42 2009 +0100
14308
14309     [group] Use floating point in sort_z_order
14310
14311  clutter/clutter-group.c |    8 ++++++--
14312  1 file changed, 6 insertions(+), 2 deletions(-)
14313
14314 commit d8d344f52930872a8eabdcc801872246b7ae61d1
14315 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14316 Date:   Tue Aug 25 12:39:40 2009 +0100
14317
14318     [docs] Add Interval get_type function
14319     
14320     The get_type() function for ClutterInterval is missing from the
14321     known GObject types, so gtk-doc doesn't know that it has to
14322     introspect it for hierarchy, properties and signals.
14323
14324  doc/reference/clutter/clutter.types |    1 +
14325  1 file changed, 1 insertion(+)
14326
14327 commit 95a6e1c925c7dd24ba97a4625d1da09ff861e5c3
14328 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14329 Date:   Tue Aug 25 12:18:32 2009 +0100
14330
14331     Fix the warnings for Animation::update_interval()
14332     
14333     The bindings for update_interval() were copied from bind().
14334
14335  clutter/clutter-animation.c |    7 ++++---
14336  1 file changed, 4 insertions(+), 3 deletions(-)
14337
14338 commit 899f051cd92fb0b5d41948897c7130b86a98dae9
14339 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14340 Date:   Tue Aug 25 12:16:41 2009 +0100
14341
14342     [animation] Add Animation::update()
14343     
14344     Currently, to update a property inside an animation you have to
14345     get the interval for that property and then call the set_final_value()
14346     method.
14347     
14348     We can provide a simpler, bind()-like method for the convenience of
14349     the developers that just validates everything and then calls the
14350     Interval.set_final_value().
14351
14352  clutter/clutter-animation.c                |   53 ++++++++++++++++++++++++++++
14353  clutter/clutter-animation.h                |    3 ++
14354  doc/reference/clutter/clutter-sections.txt |    1 +
14355  3 files changed, 57 insertions(+)
14356
14357 commit 4ca375e8fe395e375826ea795566b8af8029e09f
14358 Author: Neil Roberts <neil@linux.intel.com>
14359 Date:   Mon Aug 24 12:50:57 2009 +0100
14360
14361     [cogl-texture] Set GL_PACK_ROW_LENGTH when downloading texture data
14362     
14363     Otherwise the rowstride passed in from an application is not used
14364     correctly so you can not download to an area with a much larger
14365     rowstride.
14366
14367  clutter/cogl/gl/cogl-texture.c |   14 +++++++++++---
14368  1 file changed, 11 insertions(+), 3 deletions(-)
14369
14370 commit 172074fd29cd42bf2790f78aa736f854218906f0
14371 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14372 Date:   Fri Aug 21 12:05:52 2009 +0100
14373
14374     [glx] Perform more checks before calling glXMakeCurrent
14375     
14376     Right now we just check for a NULL stage before calling glXMakeCurrent().
14377     
14378     We can, though, get a valid stage without an implementation attached to
14379     it while we are disposing a stage after a CLUTTER_DELETE event, since the
14380     events processing is performed on a vblank-locked basis.
14381
14382  clutter/glx/clutter-backend-glx.c |   17 +++++++++++------
14383  1 file changed, 11 insertions(+), 6 deletions(-)
14384
14385 commit 93e1d8e7a35afd0f1c08022bdf0f04154ad08ef1
14386 Author: Owen W. Taylor <otaylor@fishsoup.net>
14387 Date:   Fri Aug 7 21:16:04 2009 -0400
14388
14389     Add ::queue-relayout signal to ClutterActor for ClutterClone
14390     
14391     ClutterClone bases its preferred size on the preferred size of
14392     the source actor, so it needs to invalid its cached preferred
14393     size when the preferred size of the source actor changes.
14394     
14395     In order for this to work, we need to have notification when
14396     the size of the source actor changes, so add a ::queue-relayout
14397     signal to ClutterActor.
14398     
14399     Then connect to this from ClutterClone and queue a relayout
14400     on the clone when a relayout is queued on the source.
14401     
14402     http://bugzilla.openedhand.com/show_bug.cgi?id=1755
14403     
14404     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14405
14406  clutter/clutter-actor.c |   56 ++++++++++++++++++++++++++++++++++++++---------
14407  clutter/clutter-actor.h |    5 ++++-
14408  clutter/clutter-clone.c |   12 ++++++++++
14409  3 files changed, 62 insertions(+), 11 deletions(-)
14410
14411 commit 56daae9d7bc49a29a4e1c4e093928efb747ed675
14412 Author: Robert Bragg <robert@linux.intel.com>
14413 Date:   Thu Aug 20 12:53:32 2009 +0100
14414
14415     Revert "[cogl] Allow Cogl to create NPOT textures for GLES2"
14416     
14417     This reverts commit 3c47a3beb51462ef8af1070b75123660059e97d0.
14418     
14419     Of course I remembered just after pushing the patch why we hadn't done
14420     this before :-) If you look in the glsl spec:
14421     http://www.khronos.org/registry/gles/specs/2.0/es_full_spec_2.0.24.pdf
14422     Section 3.7.10 Texture Completeness and Non-Power-Of-Two Textures
14423     you can see GLES 2.0 doesn't support mipmaps for npot textures.
14424     
14425     There is possibly some way we could support this in Cogl but at least
14426     it's not as simple as or-ing in the feature flag, sadly.
14427
14428  clutter/cogl/gles/cogl.c |    3 +--
14429  1 file changed, 1 insertion(+), 2 deletions(-)
14430
14431 commit 3c47a3beb51462ef8af1070b75123660059e97d0
14432 Author: Robert Bragg <robert@linux.intel.com>
14433 Date:   Thu Aug 20 12:15:21 2009 +0100
14434
14435     [cogl] Allow Cogl to create NPOT textures for GLES2
14436     
14437     The core GLES2 API supports NPOT textures, i.e. there is no extension as for
14438     OpenGL, so we now add COGL_FEATURE_TEXTURE_NPOT to the feature flags in
14439     _cogl_features_init.
14440     
14441     Thanks to Gordon Williams for spotting this.
14442
14443  clutter/cogl/gles/cogl.c |    3 ++-
14444  1 file changed, 2 insertions(+), 1 deletion(-)
14445
14446 commit a5fe4ae4ec5c5c43aa0898095284447095462e37
14447 Author: Robert Bragg <robert@linux.intel.com>
14448 Date:   Wed Aug 19 15:38:25 2009 +0100
14449
14450     [cogl] %.c: %.glsl codegen: use BUILT_SOURCES var + fix stringify.sh
14451     
14452     Don't let stringify.sh write to the $srcdir + use the BUILT_SOURCES var in
14453     Makefile.am so as to ensure all .c.  and .h files get generated from their
14454     corresponding .glsl files before building other targets.
14455
14456  clutter/cogl/gles/Makefile.am  |   14 +++++++++-----
14457  clutter/cogl/gles/stringify.sh |   40 +++++++++++++++++++---------------------
14458  2 files changed, 28 insertions(+), 26 deletions(-)
14459
14460 commit 3761e9cd47950bfade7d3b829b20b245806632a2
14461 Author: Jonas Bonn <jonas@southpole.se>
14462 Date:   Wed Aug 19 13:14:10 2009 +0000
14463
14464     Check timeline direction when forcing final state
14465     
14466     If the timeline is running backwards, the completed signal handler should
14467     set the final state from the interval's initial value.
14468     
14469     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14470
14471  clutter/clutter-animation.c |   11 ++++++++++-
14472  1 file changed, 10 insertions(+), 1 deletion(-)
14473
14474 commit 373b165b3f1adc556e7ee70f01cff66d4a38cd60
14475 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14476 Date:   Mon Aug 10 12:45:44 2009 +0200
14477
14478     Use AM_SILENT_RULES if automake >= 1.11 is installed
14479     
14480     Fixes bug:
14481     
14482       http://bugzilla.openedhand.com/show_bug.cgi?id=1756
14483     
14484     Based on a patch by: Javier Jardón <javierjc1982@gmail.com>
14485
14486  clutter/Makefile.am             |    7 +++++--
14487  clutter/cogl/Makefile.am        |    6 ++++--
14488  clutter/cogl/common/Makefile.am |    7 ++++---
14489  configure.ac                    |   18 +++++++++++++++---
14490  4 files changed, 28 insertions(+), 10 deletions(-)
14491
14492 commit 6a9130f10fe5ed3c78b541cf0d021857efb57cb4
14493 Author: Neil Roberts <neil@linux.intel.com>
14494 Date:   Tue Aug 18 18:07:37 2009 +0100
14495
14496     [pango-display-list] Don't premultiply the colour twice
14497     
14498     When rendering a glyph run from a texture we were premultiplying the
14499     colour once in display_list_render() and then again in
14500     display_list_render_texture(). This was causing the color to come out
14501     wrong. This fixes bug #1775.
14502     
14503     Thanks to Pierre-Luc Beaudoin for reporting.
14504
14505  clutter/pango/cogl-pango-display-list.c |    1 -
14506  1 file changed, 1 deletion(-)
14507
14508 commit 9befb055d0dd993d1171bf5652eefdc35567e7f5
14509 Author: Robert Bragg <robert@linux.intel.com>
14510 Date:   Tue Aug 18 16:13:13 2009 +0100
14511
14512     [cogl-material] Fix some brackets in _layer_flush_gl_sampler_state
14513     
14514     The wrong part of an expression was bracketed in the test to determine
14515     when a new texture matrix needed to be loaded which resulted in the
14516     first pass through _cogl_material_layer_flush_gl_sampler_state
14517     not uploading any user matrix.
14518
14519  clutter/cogl/common/cogl-material.c |    8 ++++----
14520  1 file changed, 4 insertions(+), 4 deletions(-)
14521
14522 commit 366e0725ce1bb804219b28a29539add1e05f73e8
14523 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14524 Date:   Tue Aug 18 11:11:29 2009 +0100
14525
14526     [docs] texture_polygon() is called polygon()
14527     
14528     Remove the mentions to the old name of cogl_polygon().
14529
14530  clutter/cogl/cogl-types.h |    5 +++--
14531  1 file changed, 3 insertions(+), 2 deletions(-)
14532
14533 commit f655b28e669b7aec5b3ace0d8873adeefa11b4de
14534 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14535 Date:   Mon Aug 17 23:27:22 2009 +0100
14536
14537     [build] Nothing can be prepended to QUIET_* rules
14538     
14539     Move the LD_LIBRARY_PATH override after the QUIET_GEN rule and
14540     unbreak the typelib compilation.
14541
14542  clutter/Makefile.am |    3 ++-
14543  1 file changed, 2 insertions(+), 1 deletion(-)
14544
14545 commit 8c00d705c0ec009c08950f314ab896b6ff40aa37
14546 Author: Jussi Kukkonen <jku@linux.intel.com>
14547 Date:   Mon Aug 17 00:00:35 2009 +0300
14548
14549     [text] move_word_backward/forward fixes
14550     
14551     clutter_text_move_word_backward/forward() calls did not use the
14552     start argument consistently. Also, clutter_text_move_word_forward()
14553     bound check checked the wrong end.
14554     
14555     Fixes #1765
14556     
14557     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14558
14559  clutter/clutter-text.c |   12 ++++++------
14560  1 file changed, 6 insertions(+), 6 deletions(-)
14561
14562 commit 99437c476136ec6a735270efd8670efcd1f2c77e
14563 Author: Neil Roberts <neil@linux.intel.com>
14564 Date:   Mon Aug 17 17:43:42 2009 +0100
14565
14566     [text] Don't interpret the unicode value when the control modifier is on
14567     
14568     When a letter key is pressed with the control key held down one of
14569     three things will happen :-
14570     
14571     a) If the stage is embedded within a GtkClutterEmbed the unicode value
14572        will be filled from gdk_keyval_to_unicode. This will be the same
14573        value as if control was not pressed (so Ctrl+V will be 'v').
14574     
14575     b) If the stage is not in a GtkClutterEmbed and Clutter is running on
14576        the X11 backend then it will try to fill in the unicode value from
14577        XLookupString. This *will* take into account the control so the
14578        unicode value will represent a control character (Ctrl+V will be
14579        '\x16').
14580     
14581     c) Most other backends will not bother to fill in the unicode
14582        value. Therefore clutter_keysym_to_unicode will be used which also
14583        does not take into account the control key (so Ctrl+V will be 'v').
14584     
14585     For cut and paste to work in Nbtk, the control keys need to bubble up
14586     to the parent NbtkEntry container. This works fine for 'b' but not 'a'
14587     and 'c'.
14588     
14589     This patch makes ClutterText always allow the event to bubble if the
14590     key is not handled by the binding pool and the control modifier is
14591     down.
14592     
14593     Ideally ClutterText would always get a unicode value that takes into
14594     account the modifiers but this is probably best left up to the input
14595     methods.
14596     
14597     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14598
14599  clutter/clutter-text.c |    3 ++-
14600  1 file changed, 2 insertions(+), 1 deletion(-)
14601
14602 commit 5d7c2e7c4495b3d6f35ed3f4e50857f17b946872
14603 Author: Owen W. Taylor <otaylor@fishsoup.net>
14604 Date:   Mon Aug 17 13:57:18 2009 -0400
14605
14606     Set LD_LIBRARY_PATH when running g-ir-compiler
14607     
14608     g-ir-compiler currently opens the library for the .gir it is compiling;
14609     to make that work we need to set LD_LIBRARY_PATH before running
14610     g-ir-compiler to include .libs.
14611     
14612     (I think this may have been working earlier because there was a
14613     hack that substituted .so with .la and tried opening that; that
14614     works for the incorrect libclutter-glx-1.0.so but not for the
14615     correct libclutter-glx-1.0.so.0)
14616     
14617     http://bugzilla.openedhand.com/show_bug.cgi?id=1771
14618
14619  clutter/Makefile.am |    1 +
14620  1 file changed, 1 insertion(+)
14621
14622 commit 4c1248c5e9b934b23bdabbfc3d2dabdb8bab0656
14623 Author: Owen W. Taylor <otaylor@fishsoup.net>
14624 Date:   Mon Aug 17 15:41:27 2009 +0100
14625
14626     Full fix for the G-I support in Clutter
14627     
14628     Update the sed hack for the shared library to be more robust.
14629     
14630     Remove the --shared-library command line argument from g-ir-scanner,
14631     as no distribution will ever ship the .la files. This effectively
14632     reverts commit 68f8a98cfbf70e2b7bfcda7831907633eb08ca50.
14633     
14634     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14635
14636  clutter/Makefile.am |    5 ++---
14637  1 file changed, 2 insertions(+), 3 deletions(-)
14638
14639 commit 68f8a98cfbf70e2b7bfcda7831907633eb08ca50
14640 Author: Götz Waschk <waschk@mandriva.org>
14641 Date:   Mon Aug 17 14:21:42 2009 +0100
14642
14643     Specify the shared library for g-ir-compile
14644     
14645     Use the --shared-library option to specify the shared object to link
14646     against when compiling the typelib from the GIR data.
14647     
14648     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14649
14650  clutter/Makefile.am |    6 +++++-
14651  1 file changed, 5 insertions(+), 1 deletion(-)
14652
14653 commit 366e0f9cd7773433ba14cc531119bca3b9879a1e
14654 Author: Götz Waschk <waschk@mandriva.org>
14655 Date:   Mon Aug 17 14:12:21 2009 +0100
14656
14657     Update Clutter to use G-I 0.6.4
14658     
14659     Following bug #1762, the syntax of g-ir-scanner was changed in
14660     gobject-introspection, so Clutter does not build anymore with 0.6.4.
14661     
14662     See the bugzilla bug:
14663     
14664       http://bugzilla.gnome.org/show_bug.cgi?id=591669
14665     
14666     GObject-Introspection now uses a different mechanism to extract the
14667     SONAME when building the gir file and it needs the libtool archive as
14668     option.
14669     
14670     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14671
14672  README                   |    2 +-
14673  clutter/Makefile.am      |    2 +-
14674  clutter/cogl/Makefile.am |    2 +-
14675  clutter/json/Makefile.am |    2 +-
14676  configure.ac             |    2 +-
14677  5 files changed, 5 insertions(+), 5 deletions(-)
14678
14679 commit 53cb86d94ba258cb917221856501c60738a143f3
14680 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14681 Date:   Mon Aug 17 10:27:13 2009 +0100
14682
14683     [docs] Update the requirements section
14684
14685  README |    9 +++++++--
14686  1 file changed, 7 insertions(+), 2 deletions(-)
14687
14688 commit 90d8f3183193176b796ac533158e3b0c2a4c2e85
14689 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14690 Date:   Fri Aug 14 15:59:29 2009 +0100
14691
14692     [units] Do not be locale-dependant on string conversion
14693     
14694     When dumping a ClutterUnits structure to a string we are using a bare
14695     g_strdup_printf(), which unfortunately is locale dependant. So, for
14696     instance, a type of CLUTTER_UNIT_EM and a value of 42 are stringified
14697     as:
14698     
14699             C:      42.00 em
14700             en_GB   42.00 em
14701             it_IT   42,00 em
14702             fr_FR   42,00 em
14703     
14704     This would not be a problem -- clutter_units_from_string() allows both
14705     '.' and ',' as fractionary part delimiters. The test suite, on the
14706     other hand, does not know that, and it checks for exact matches with
14707     the C locale.
14708     
14709     Calling setlocale(LC_ALL,"C") at the beginning of the conformance test
14710     suite is not a good idea, because it would prevent external testing; and
14711     it's a lame cop out from doing exactly what we have to do -- pick a format
14712     and stick with it.
14713     
14714     Like other platforms, languages and frameworks before us, we opt to
14715     be less liberal in what we create; so, we choose to always stringify
14716     ClutterUnits with fractionary parts using '.' as the delimiter.
14717     
14718     Fixes bug:
14719     
14720       http://bugzilla.openedhand.com/show_bug.cgi?id=1763
14721
14722  clutter/clutter-units.c |   24 ++++++++++++++----------
14723  1 file changed, 14 insertions(+), 10 deletions(-)
14724
14725 commit f08b583a312cd87f3263078eecdb19a9328ac79f
14726 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14727 Date:   Fri Aug 14 15:58:00 2009 +0100
14728
14729     [tests] Abstract GTest and Clutter initialization
14730     
14731     The set up process of the conformance test suite is complex enough to
14732     warrant a split up into its own function.
14733
14734  tests/conform/test-conform-main.c |   27 ++++++++++++++++++---------
14735  1 file changed, 18 insertions(+), 9 deletions(-)
14736
14737 commit b31e2d59bdfcc3be46f3ec87de4bcabc32747133
14738 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14739 Date:   Fri Aug 14 13:08:59 2009 +0100
14740
14741     [build] Remove last user of CLUTTER_MAJORMINOR
14742     
14743     We should always use CLUTTER_API_VERSION instead.
14744
14745  doc/manual/Makefile.am |   10 +++++-----
14746  1 file changed, 5 insertions(+), 5 deletions(-)
14747
14748 commit 5274b4e4c48dbd81c7553ef9889b5897afe932c5
14749 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14750 Date:   Fri Aug 14 13:08:17 2009 +0100
14751
14752     [build] Clean up the eglnative and fruity Makefile.am
14753     
14754     * Do not use CLUTTER_MAJORMINOR
14755     
14756     * Use per-target compiler flags and libraries
14757
14758  clutter/eglnative/Makefile.am |   11 +++++------
14759  clutter/fruity/Makefile.am    |   21 ++++++++++-----------
14760  2 files changed, 15 insertions(+), 17 deletions(-)
14761
14762 commit f7edc97d8df2f035fa81343126884b0cbfc9bc3a
14763 Author: Xu Li <xu.li@intel.com>
14764 Date:   Tue Aug 4 22:06:27 2009 +0800
14765
14766     Add new Atom atom_NET_WM_PID to set pid info
14767     
14768     Clutter advertises itself on X11 as implementing the _NET_WM_PING protocol,
14769     which is needed to be able to detect frozen applications; this allows us to
14770     stop the destruction of the stage by blocking the CLUTTER_DELETE event and
14771     wait for user feedback without the Window Manager thinking that the app has
14772     gone unresponsive.
14773     
14774     In order to implement the _NET_WM_PING protocol properly, though, we need
14775     to add the _NET_WM_PID property on the Stage window, since the EWMH states:
14776     
14777       [_NET_WM_PID] MAY be used by the Window Manager to kill windows which
14778       do not respond to the _NET_WM_PING protocol.
14779     
14780     Meaning that an unresponsive Clutter application might not be killable by
14781     the window manager.
14782     
14783     Fixes bug:
14784     
14785       http://bugzilla.openedhand.com/show_bug.cgi?id=1748
14786     
14787     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14788
14789  clutter/x11/clutter-backend-x11.c |   22 ++++++++++++----------
14790  clutter/x11/clutter-backend-x11.h |    1 +
14791  clutter/x11/clutter-stage-x11.c   |   25 +++++++++++++++++++++++++
14792  3 files changed, 38 insertions(+), 10 deletions(-)
14793
14794 commit 3abf393b87d83211d82b161c0417d80312b8783f
14795 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14796 Date:   Fri Aug 14 11:29:03 2009 +0100
14797
14798     [build] Clean up cogl-pango Makefile
14799     
14800     * Do _not_ use CLUTTER_MAJORMINOR to define the installation path
14801       for the headers; we must use CLUTTER_API_VERSION for that.
14802     
14803     * Do not put the C compiler flags in the INCLUDES directive.
14804     
14805     Bases on a patch by: Gary Ching-Pang Lin <glin@novell.com>
14806
14807  clutter/pango/Makefile.am |    9 +++------
14808  1 file changed, 3 insertions(+), 6 deletions(-)
14809
14810 commit 5c8ae6d2dcdb592a56f33927dcec2369a9147396
14811 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14812 Date:   Thu Aug 13 18:05:38 2009 +0100
14813
14814     [json] Fix compilation of the internal JSON-GLib
14815     
14816     Define the symbols needed to pass the single include policy when
14817     compiling the static object.
14818
14819  clutter/json/Makefile.am |    4 +++-
14820  clutter/json/json-glib.h |    4 ++++
14821  2 files changed, 7 insertions(+), 1 deletion(-)
14822
14823 commit 6e1f9ad9b65fedaa18950de712d7f6ab39b809f0
14824 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14825 Date:   Thu Aug 13 16:15:04 2009 +0100
14826
14827     [docs] Remove the version number from the title
14828     
14829     The version number in the title made sense when we were breaking
14830     API with every minor release. Now that we're API stable we can
14831     drop that and make the output in Devhelp and on the website slightly
14832     more good looking.
14833
14834  doc/reference/clutter/clutter-docs.xml.in |    4 ++--
14835  doc/reference/cogl/cogl-docs.xml.in       |    9 +++++++--
14836  2 files changed, 9 insertions(+), 4 deletions(-)
14837
14838 commit 8a794a85337c01a21f88a02c84bd519ed511b6c6
14839 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14840 Date:   Thu Aug 13 16:13:55 2009 +0100
14841
14842     [docs] Fix the examples for animate()
14843     
14844     Update the examples to reference to existing easing modes and to
14845     make sure to use floating point values for floating point properties.
14846
14847  clutter/clutter-animation.c |   36 ++++++++++++++++++------------------
14848  1 file changed, 18 insertions(+), 18 deletions(-)
14849
14850 commit f25cdf066c023222330119a1fe8ef5204773faa7
14851 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14852 Date:   Thu Aug 13 12:26:09 2009 +0100
14853
14854     [actor] Allow unsetting width and height separately
14855     
14856     It is possible to unset the size of an actor specified with set_width()
14857     and set_height() by using:
14858     
14859       clutter_actor_set_size (actor, -1, -1);
14860     
14861     Which works by unsetting the :min-*-set and the :natural-*-set properties.
14862     
14863     Calling set_width(-1) and set_height(-1) separately, though, doesn't work
14864     thus implicitly breaking the assumption that set_size() is nothing more
14865     than set_width()+set_height(). This was obviously due to the face that
14866     pre-1.0 set_width() and set_height() took an unsigned integer as an
14867     argument.
14868
14869  clutter/clutter-actor.c |   81 ++++++++++++++++++++++++++++++-----------------
14870  1 file changed, 52 insertions(+), 29 deletions(-)
14871
14872 commit d3e06bc1e5654248d86aaa568179c5732839412e
14873 Author: Colin Walters <walters@verbum.org>
14874 Date:   Thu Aug 13 10:49:39 2009 +0100
14875
14876     Add (allow-none) for clutter_stage_set_key_focus()
14877     
14878     The @actor argument can be NULL to unset the key focus.
14879     
14880     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14881
14882  clutter/clutter-stage.c |    2 +-
14883  1 file changed, 1 insertion(+), 1 deletion(-)
14884
14885 commit 9766fb13005b04669e60befd9e0e3cddf822ac1c
14886 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14887 Date:   Wed Aug 12 16:02:23 2009 +0100
14888
14889     [script] Fix Actor's ad-hoc parser
14890     
14891     ClutterActor parses positional and dimensional properties with a
14892     custom deserializer. We need to:
14893     
14894       - handle G_TYPE_INT64, the default integer type for JSON-GLib
14895       - use G_TYPE_FLOAT for properties, since Actor switched to it
14896         for the pixel-based ones
14897     
14898     This makes ClutterScript work again.
14899
14900  clutter/clutter-actor.c |    8 ++++----
14901  1 file changed, 4 insertions(+), 4 deletions(-)
14902
14903 commit cfbbacb8079e2ad92d5e538195d49cfdf8818144
14904 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14905 Date:   Wed Aug 12 16:01:25 2009 +0100
14906
14907     [script] Fix the default deserialization
14908     
14909     Properties parsed from ClutterScript should now use G_TYPE_INT64
14910     and automatically convert between G_TYPE_INT and G_TYPE_INT64.
14911
14912  clutter/clutter-script.c |   21 +++++++++++++--------
14913  1 file changed, 13 insertions(+), 8 deletions(-)
14914
14915 commit 4d522456372c2394046968ce0a4b22f603023d32
14916 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14917 Date:   Wed Aug 12 16:00:13 2009 +0100
14918
14919     [json] Update the internal copy of JSON-GLib
14920     
14921     JSON-GLib switch to 64 bit integers upstream, to avoid the undefined
14922     integer size of the JSON RFC. All integers are automatically promoted
14923     to gint64.
14924
14925  clutter/json/json-array.c  |    4 +--
14926  clutter/json/json-node.c   |   61 +++++++++++++++++++++++++++++++++++---------
14927  clutter/json/json-object.c |   41 ++++++++---------------------
14928  clutter/json/json-parser.c |   13 +++++-----
14929  clutter/json/json-types.h  |   16 +++++++-----
14930  5 files changed, 78 insertions(+), 57 deletions(-)
14931
14932 commit 2b70b0d4ed791e8bc25b59eb3b2e9dbeb8201b11
14933 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14934 Date:   Wed Aug 12 15:57:25 2009 +0100
14935
14936     Include clutter-json.h, not json-types.h
14937     
14938     The json-types.h header is found by the mere fact of it being
14939     in the project; if we are compiling against the system JSON-GLib
14940     this could be horribly out of date.
14941     
14942     We need to use clutter-json.h, which will include the right
14943     header for us.
14944
14945  clutter/clutter-script-private.h |    2 +-
14946  1 file changed, 1 insertion(+), 1 deletion(-)
14947
14948 commit cc6aa6e4d537c5eec3fda85475f78bdf0da2ea10
14949 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14950 Date:   Wed Aug 12 15:32:18 2009 +0100
14951
14952     Clutter GIR depends on ClutterJson GIR conditionally
14953     
14954     If we're building Clutter with a system JSON-GLib we need to skip
14955     the typelib compilation of ClutterJson since we depend on Json-1.0.gir
14956     directly.
14957
14958  clutter/Makefile.am |    3 ++-
14959  1 file changed, 2 insertions(+), 1 deletion(-)
14960
14961 commit 6fcf5c1820b29610a05e0f5022d1d6d907716df5
14962 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14963 Date:   Wed Aug 12 15:31:16 2009 +0100
14964
14965     [json] Include only json-glib.h
14966     
14967     JSON-GLib moved to a single include scheme, so we should only include
14968     json-glib.h. If we use the internal copy it doesn't matter, since the
14969     header does the right thing.
14970
14971  clutter/clutter-json.h.in |    4 +---
14972  1 file changed, 1 insertion(+), 3 deletions(-)
14973
14974 commit 8c49e227536fabddd2cbf81aa94e1624d30ca312
14975 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14976 Date:   Wed Aug 12 10:30:11 2009 +0100
14977
14978     Add copyright and license notice
14979     
14980     The clutter-script-parser.c does not have a copyright and license
14981     notices; even though the LGPL is a per-project license and not a
14982     per-file license, having those notices in every source file is a
14983     good idea.
14984
14985  clutter/clutter-script-parser.c |   32 ++++++++++++++++++++++++++++++++
14986  1 file changed, 32 insertions(+)
14987
14988 commit 13e055a351f83c56b895b131566a6e842d24ed2a
14989 Author: zhou jiangwei <dyllan.zhou@samsung.com>
14990 Date:   Tue Aug 11 14:18:37 2009 +0100
14991
14992     [eglx] Update the EGLX backend
14993     
14994     The EGLX backend needs to be updated to the new ClutterBackendX11
14995     code.
14996     
14997     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14998
14999  clutter/eglx/clutter-backend-egl.c |   43 ++++++++++++++++++++++++++++++++++++
15000  clutter/eglx/clutter-backend-egl.h |    1 +
15001  clutter/eglx/clutter-stage-egl.c   |    4 ++--
15002  3 files changed, 46 insertions(+), 2 deletions(-)
15003
15004 commit 2ab9bef5873ca9d226ddf31fc65b96fe20fa72d5
15005 Author: zhou jiangwei <dyllan.zhou@samsung.com>
15006 Date:   Tue Aug 11 14:17:28 2009 +0100
15007
15008     [cogl] Fix the GLES 2.0 backend
15009     
15010     Update the GLES 2.0 backend to the new COGL API after the breakage
15011     introduced by the journal.
15012     
15013     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
15014
15015  clutter/cogl/common/cogl-primitives.c    |    5 +++--
15016  clutter/cogl/gles/cogl-context.h         |    5 ++++-
15017  clutter/cogl/gles/cogl-gles2-wrapper.h   |    5 +++++
15018  clutter/cogl/gles/cogl-primitives.c      |   10 +++++-----
15019  clutter/cogl/gles/cogl-texture-private.h |    3 +++
15020  5 files changed, 20 insertions(+), 8 deletions(-)
15021
15022 commit dbfd3f0f444680d85556edc0b96dff68ea22722d
15023 Author: Robert Bragg <robert@linux.intel.com>
15024 Date:   Tue Aug 11 13:49:12 2009 +0100
15025
15026     [cogl_clear] Also pass the alpha component of the CoglColor to glClearColor
15027     
15028     Previously we were passing a constant of 0.0 for the alpha component which
15029     wasn't as flexible.
15030
15031  clutter/cogl/common/cogl.c |    2 +-
15032  1 file changed, 1 insertion(+), 1 deletion(-)
15033
15034 commit f0cb337d920c46cb7ca45d80ade69057d0408ff5
15035 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15036 Date:   Tue Aug 11 13:27:25 2009 +0100
15037
15038     [build] Fix LDADD -> LIBADD usage
15039
15040  clutter/osx/Makefile.am |    2 +-
15041  1 file changed, 1 insertion(+), 1 deletion(-)
15042
15043 commit dfc32b60c4b1b0b83fbf70d7e02b58cbc919326a
15044 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15045 Date:   Tue Aug 11 13:11:34 2009 +0100
15046
15047     [osx] Clean up Makefile.am
15048     
15049     The OS X backend Makefile.am was missing a line concatenation, and
15050     so the -xobjective-c directive was always ignored.
15051     
15052     Instead of dumping everything into INCLUDES and LDADD we should follow
15053     what the rest of the backends do, and use per-target CFLAGS and LDADD,
15054     and reserve the INCLUDES to -D and -I directives.
15055     
15056     Thanks to: Christian Hergert <chris@dronelabs.com>
15057
15058  clutter/osx/Makefile.am |   30 ++++++++++++++----------------
15059  1 file changed, 14 insertions(+), 16 deletions(-)
15060
15061 commit d0748b3b9b34bf77ed3b813e3872cac64d6a6c35
15062 Merge: d263e7a df572d0
15063 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15064 Date:   Mon Aug 10 17:21:20 2009 +0100
15065
15066     Merge branch 'system-json-glib'
15067     
15068     * system-json-glib:
15069       [script] Simplify the parser code
15070       Update JSON-GLib dependency
15071
15072 commit d263e7a78b7e98b2b87a51a194b93473344b6b27
15073 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15074 Date:   Mon Aug 10 17:19:04 2009 +0100
15075
15076     [build] Install JSON headers inside the right directory
15077     
15078     Don't install inside the clutter-MAJOR_MINOR/ directory, but use
15079     the API_VERSION (1.0).
15080     
15081     Otherwise we'd have the Clutter headers for 1.x inside:
15082     
15083             $includedir/clutter-1.0/clutter
15084     
15085     And the JSON-related headers inside:
15086     
15087             $includedir/clutter-1.<minor>/clutter
15088
15089  clutter/json/Makefile.am |    2 +-
15090  1 file changed, 1 insertion(+), 1 deletion(-)
15091
15092 commit 19a53054fde3ccfac365452618e4524e3f3c7efc
15093 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15094 Date:   Fri Aug 7 15:27:25 2009 +0100
15095
15096     Bump to 1.1.1 after branching 1.0
15097
15098  configure.ac |    2 +-
15099  1 file changed, 1 insertion(+), 1 deletion(-)
15100
15101 commit 420ed353b53bd624331bd249d7df98d14714b504
15102 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15103 Date:   Fri Aug 7 08:18:17 2009 +0100
15104
15105     [x11] Do not ask to destroy an empty Window
15106     
15107     The fix for bug 1750 inside commit b190448e made Clutter-GTK spew
15108     BadWindow errors. The reason for that is that we call XDestroyWindow()
15109     without checking if the old Window is None; this happens if we call
15110     clutter_x11_set_stage_foreign() on a new ClutterStage before it has
15111     been realized.
15112     
15113     Since Clutter-GTK does not need to realize the Stage it is going to
15114     embed anymore (the only reason for that was to obtain a proper Visual
15115     but now there's ClutterBackendX11 API for that), the set_stage_foreign()
15116     call is effectively setting the StageX11 Window for the first time.
15117
15118  clutter/x11/clutter-stage-x11.c |   20 +++++++++++++++-----
15119  1 file changed, 15 insertions(+), 5 deletions(-)
15120
15121 commit 335fb07ab02bc719c04bf2de115a88216f1321f7
15122 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15123 Date:   Wed Aug 5 17:46:18 2009 +0100
15124
15125     [actor] Add missing return_if_fail()
15126     
15127     The queue_relayout() method was missing the argument check.
15128     
15129     Thanks to: Neil Patel <njpatel@gmail.com>
15130
15131  clutter/clutter-actor.c |    2 ++
15132  1 file changed, 2 insertions(+)
15133
15134 commit 1434d7213487ad42626fcc4b1da180fe98192ef1
15135 Author: Neil Roberts <neil@linux.intel.com>
15136 Date:   Wed Aug 5 15:51:49 2009 +0100
15137
15138     Small doc fix to clutter_text_get_color
15139     
15140     Bug reported by Rob Bradford.
15141
15142  clutter/clutter-text.c |    2 +-
15143  1 file changed, 1 insertion(+), 1 deletion(-)
15144
15145 commit b190448ed460ae466cd6d1c7c34e47d4386fe4c4
15146 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15147 Date:   Tue Aug 4 16:59:15 2009 +0100
15148
15149     [x11] Destroy the Window we own when setting a foreign one
15150     
15151     When we replace the stage Window using a foreign one we also need to
15152     destroy the Window we created, if needed, to avoid leaking resources
15153     all around.
15154     
15155     Fixes bug:
15156     
15157       http://bugzilla.openedhand.com/show_bug.cgi?id=1750
15158
15159  clutter/x11/clutter-stage-x11.c |    6 ++++++
15160  1 file changed, 6 insertions(+)
15161
15162 commit 7963254c23f42a43b64ca3f2401499b456d677ce
15163 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15164 Date:   Tue Aug 4 11:39:09 2009 +0100
15165
15166     [docs] Close a tag
15167
15168  doc/reference/clutter/building-clutter.xml |    6 ++++--
15169  1 file changed, 4 insertions(+), 2 deletions(-)
15170
15171 commit 79288b46ed60efe4cf3f970ef7f1cce17685cd84
15172 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15173 Date:   Tue Aug 4 11:38:48 2009 +0100
15174
15175     [docs] Fix a missing parameter
15176
15177  clutter/cogl/cogl-vertex-buffer.h |    2 +-
15178  1 file changed, 1 insertion(+), 1 deletion(-)
15179
15180 commit 9cda8d130f7097d8ca43ffb0e50206ab72d1892d
15181 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15182 Date:   Tue Aug 4 11:11:59 2009 +0100
15183
15184     [actor] Be more explicit when warning about invariants
15185     
15186     The "catch all" warning for a the mapped invariant violation is too
15187     generic: it doesn't tell you why the invariant was broken in case
15188     we are trying to map an unparented actor - e.g. through a Clone.
15189
15190  clutter/clutter-actor.c |   10 ++++++++--
15191  1 file changed, 8 insertions(+), 2 deletions(-)
15192
15193 commit f8a964b422c195219c59a3b21d9bb3125ce215dd
15194 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15195 Date:   Tue Aug 4 11:10:55 2009 +0100
15196
15197     [cogl] Expose cogl_is_vertex_buffer()
15198     
15199     The function is public and available in the shared object, but
15200     it's not present in the header, so this is not an API/ABI change.
15201
15202  clutter/cogl/cogl-vertex-buffer.h    |   14 ++++++++++++++
15203  doc/reference/cogl/cogl-sections.txt |    1 +
15204  2 files changed, 15 insertions(+)
15205
15206 commit c9f57452e60c89c0b046def2f1787773545244df
15207 Author: Robert Bragg <robert@linux.intel.com>
15208 Date:   Mon Aug 3 15:03:19 2009 +0100
15209
15210     [build] remove reference to light1.png in tests/interactive/Makefile.am
15211     
15212     This file doesn't exist in the repo and isn't referenced by any unit tests.
15213
15214  tests/interactive/Makefile.am |    4 +---
15215  1 file changed, 1 insertion(+), 3 deletions(-)
15216
15217 commit 71c4fa0f73ec9a101a4dcb07a0d782e075185d4b
15218 Author: Robert Bragg <robert@linux.intel.com>
15219 Date:   Mon Aug 3 14:53:46 2009 +0100
15220
15221     [build] dist tests/interactive/wrapper.sh
15222     
15223     in tests/interactive/Makefile.am add wrapper.sh to EXTRA_DIST otherwise
15224     interactive unit tests wont be runnable when building from distributed
15225     tarballs.
15226
15227  tests/interactive/Makefile.am |    3 +++
15228  1 file changed, 3 insertions(+)
15229
15230 commit c9c87543e8f827ee4c3510cd0025e8653d3309b1
15231 Author: Damien Lespiau <damien.lespiau@intel.com>
15232 Date:   Mon Aug 3 14:11:33 2009 +0100
15233
15234     [debug] CLUTTER_{NOTE,MARK,DBG,GLERR,TIMESTAMP} should always be statements
15235     
15236     In case someone tries to do:
15237         if (foo)
15238                 CLUTTER_NOTE(DOMAIN, "%s", blah);
15239     
15240     CLUTTER_NOTE () should always be a statement
15241
15242  clutter/clutter-debug.h |   10 +++++-----
15243  1 file changed, 5 insertions(+), 5 deletions(-)
15244
15245 commit cd35f3b384b645d171de49eee555363d4b2acc94
15246 Author: Damien Lespiau <damien.lespiau@intel.com>
15247 Date:   Mon Aug 3 13:58:52 2009 +0100
15248
15249     [debug] Fix __GNUC__ typo
15250     
15251     The right gcc define is __GNUC__ not __GNUC_. This typo had the side
15252     effect that we were using the non gcc specific debug macros leading to
15253     a less optmised CLUTTER_NOTE () than one could have dreamed of.
15254
15255  clutter/clutter-debug.h |    2 +-
15256  1 file changed, 1 insertion(+), 1 deletion(-)
15257
15258 commit 94b35a4a5ee4fa86d837b2deb06fe849a2a68977
15259 Author: Damien Lespiau <damien.lespiau@intel.com>
15260 Date:   Mon Aug 3 13:56:32 2009 +0100
15261
15262     [build] GCC_FLAGS is no more, MAINTAINER_CFLAGS is the One.
15263     
15264     CC_FLAGS was a left over from the 0.8.x age. Killed it and use the
15265     newer MAINTAINER_CFLAGS variable instead.
15266
15267  clutter/Makefile.am           |    2 +-
15268  clutter/eglnative/Makefile.am |    2 +-
15269  clutter/eglx/Makefile.am      |    2 +-
15270  clutter/fruity/Makefile.am    |    2 +-
15271  clutter/glx/Makefile.am       |    3 +--
15272  clutter/json/Makefile.am      |    2 ++
15273  clutter/osx/Makefile.am       |    2 +-
15274  clutter/sdl/Makefile.am       |    2 +-
15275  clutter/win32/Makefile.am     |    2 +-
15276  clutter/x11/Makefile.am       |    3 +--
15277  10 files changed, 11 insertions(+), 11 deletions(-)
15278
15279 commit 4ee49eded0561ad987b50e1b04e15a685c1c06e2
15280 Author: Damien Lespiau <damien.lespiau@intel.com>
15281 Date:   Mon Aug 3 13:58:21 2009 +0100
15282
15283     [gitignore] Ignore new test-color-hls-roundtrip test
15284
15285  tests/.gitignore |    1 +
15286  1 file changed, 1 insertion(+)
15287
15288 commit b2ab2b953548bb9af41789e2465dfa9a588c9b2d
15289 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15290 Date:   Sun Aug 2 18:34:17 2009 +0100
15291
15292     [actor] Use the right vertex
15293     
15294     The vertex that should be used by the apply_relative_transform
15295     is the one passed in as const, and the result should be placed
15296     inside the non-const ClutterVertext. Currently, we are using
15297     the latter, and thus the function is completely useless.
15298
15299  clutter/clutter-actor.c |    6 +++---
15300  1 file changed, 3 insertions(+), 3 deletions(-)
15301
15302 commit ae2a861a0b042e36393e5eb76ecb17759a933892
15303 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15304 Date:   Fri Jul 31 10:29:33 2009 +0100
15305
15306     [x11] Force a redraw before mapping the stage
15307     
15308     Does as it says on the tin: run a paint cycle before calling
15309     XMapWindow().
15310
15311  clutter/x11/clutter-stage-x11.c |    9 ++++++---
15312  1 file changed, 6 insertions(+), 3 deletions(-)
15313
15314 commit abdcf4debbedd9f924da4db9403ecbc9a030cb20
15315 Author: Joshua Lock <josh@linux.intel.com>
15316 Date:   Fri Jul 31 10:16:56 2009 +0100
15317
15318     [docs] Update building instructions for OS X
15319     
15320     Recommend OS X users install the dependencies using MacPorts and build
15321     Clutter themselves.
15322     
15323     Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
15324
15325  doc/reference/clutter/building-clutter.xml |   41 ++++++++++++++++------------
15326  1 file changed, 23 insertions(+), 18 deletions(-)
15327
15328 commit b3842a6b62979d264b7d7057e4125602e644ccad
15329 Author: Neil Roberts <neil@linux.intel.com>
15330 Date:   Wed Jul 29 19:06:36 2009 +0100
15331
15332     [mingw] Update the README
15333     
15334     The README has been updated to say that you can use the script under
15335     MSYS and also to contain a pointer to OAH. It also contains the
15336     updated contents of a blog post¹ about building with MSYS.
15337     
15338     1. http://www.busydoingnothing.co.uk/blog/2008/07/13#ClutterWin32
15339
15340  build/mingw/README |  133 +++++++++++++++++++++++++++++++++++++++++++++++++---
15341  1 file changed, 127 insertions(+), 6 deletions(-)
15342
15343 commit 8ad446f3e9903d2339536db4febef1cbc77db643
15344 Author: Neil Roberts <neil@linux.intel.com>
15345 Date:   Wed Jul 29 18:13:19 2009 +0100
15346
15347     [mingw-cross-compile.sh] Fix to use git rather than svn
15348     
15349     The script includes a part to automatically checkout the Clutter
15350     source and build it but it was using the old svn repo instead of git.
15351
15352  build/mingw/mingw-cross-compile.sh |    6 +++---
15353  1 file changed, 3 insertions(+), 3 deletions(-)
15354
15355 commit d796d3c88c3d3044d1c1bf54c320504f4e5886eb
15356 Author: Neil Roberts <neil@linux.intel.com>
15357 Date:   Wed Jul 29 17:59:54 2009 +0100
15358
15359     [mingw-cross-compile.sh] Add a note about MSYS in the comment
15360     
15361     The comment previously implied that you could only use the script to
15362     cross compile but it works just as well under MSYS.
15363
15364  build/mingw/mingw-cross-compile.sh |    5 +++--
15365  1 file changed, 3 insertions(+), 2 deletions(-)
15366
15367 commit 1e14d3041dc2f68d18dcd3e03d34e8d0fa7a05f4
15368 Author: Neil Roberts <neil@linux.intel.com>
15369 Date:   Wed Jul 29 17:58:02 2009 +0100
15370
15371     [mingw-cross-compile.sh] Update version numbers of all the dependencies
15372     
15373     This updates the URLs for the binary dependencies to use the latest
15374     versions.
15375
15376  build/mingw/mingw-cross-compile.sh |   23 +++++++++++++----------
15377  1 file changed, 13 insertions(+), 10 deletions(-)
15378
15379 commit a3c323c52c42785f93641e3603a5426bbb371876
15380 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15381 Date:   Wed Jul 29 17:22:18 2009 +0100
15382
15383     [docs] Remove mentions of Clutter-Cairo
15384     
15385     The mingw README file still mentions Clutter-Cairo as a known issue.
15386
15387  build/mingw/README |    8 ++------
15388  1 file changed, 2 insertions(+), 6 deletions(-)
15389
15390 commit 0ec6793738085308206e028d1136cb4cd4274f11
15391 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15392 Date:   Wed Jul 29 17:21:13 2009 +0100
15393
15394     [mingw/win32] Remove clutter-cairo
15395     
15396     The Clutter-Cairo library has been removed, so there's no point
15397     in checking it out -- from Subversion, even.
15398
15399  build/mingw/mingw-cross-compile.sh |   23 -----------------------
15400  1 file changed, 23 deletions(-)
15401
15402 commit fba1045bcb46da4ed04bd789b7650e985915243b
15403 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15404 Date:   Tue Jul 28 18:39:24 2009 +0100
15405
15406     Post-release bump to 1.0.1
15407
15408  configure.ac |    2 +-
15409  1 file changed, 1 insertion(+), 1 deletion(-)
15410
15411 commit df572d089c0811ecbc5e41d1c68d39fae47040e9
15412 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15413 Date:   Mon Jun 29 16:33:36 2009 +0100
15414
15415     [script] Simplify the parser code
15416     
15417     JSON-GLib provides simple accessors for basic types so that we
15418     can avoid getting the JsonNode out of a complex type. This makes
15419     the code simpler to understand.
15420
15421  clutter/clutter-script.c |   39 ++++++++++-----------------------------
15422  1 file changed, 10 insertions(+), 29 deletions(-)
15423
15424 commit 354fa437cdc4b67ca6c2452756a261222109b289
15425 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15426 Date:   Thu Jun 25 18:56:52 2009 +0100
15427
15428     Update JSON-GLib dependency
15429     
15430     Currently, Clutter depends on the internal copy of JSON-GLib for
15431     the ClutterScript parser. This is done to allow building Clutter
15432     on platforms that do not have the library installed on the system.
15433     
15434     Just like we use the internal PNG/JPEG loader as a fallback in
15435     case we don't have GdkPixbuf or CoreGraphics available, we should
15436     use the internal copy of JSON-GLib only in case the system copy
15437     is not present.
15438     
15439     The change is simply to move the default for the --with-json
15440     configure switch from "internal" to "check".
15441     
15442     In order to allow stricter compliance, a third setting should
15443     be present: "system", which fails if the system copy is not
15444     available.
15445     
15446     We should also change the introspection generation to avoid
15447     breaking in case we require the installed Json-1.0.gir instead
15448     of the generated ClutterJson.gir
15449
15450  clutter/Makefile.am |    5 ++++-
15451  configure.ac        |   44 +++++++++++++++++++++++++++++++++++---------
15452  2 files changed, 39 insertions(+), 10 deletions(-)