1commit ab6184298083541d37356f1f5656380d0cda047c
2Author: Emmanuele Bassi <ebassi@linux.intel.com>
3Date:   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
10commit 3c9a24f4a78cd676e635ad32df639b57e65e3be7
11Author: Emmanuele Bassi <ebassi@linux.intel.com>
12Date:   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
19commit 9e4c008117da6b36237608bd896fb164577ef314
20Author: Emmanuele Bassi <ebassi@linux.intel.com>
21Date:   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
31commit 2d51432e52745d9484cf2d54567c2f95670ea5ae
32Author: Emmanuele Bassi <ebassi@linux.intel.com>
33Date:   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
40commit 2f68949962d964e38a640581e232c4b673ce3023
41Author: Emmanuele Bassi <ebassi@linux.intel.com>
42Date:   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
54commit 048fcea988446af1ce18356eb1718f85088e73c8
55Author: Neil Roberts <neil@linux.intel.com>
56Date:   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
71commit e550755f3dc13f11a9d956bb9b52294ea33c8da6
72Author: Emmanuele Bassi <ebassi@linux.intel.com>
73Date:   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
85commit 38a24144980bd0c6d717f39eb5d215d3abc30ef5
86Author: Robert Bragg <robert@linux.intel.com>
87Date:   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
101commit c0d5af5de5bcc504abeb81a7f7a1ec0f696b574d
102Author: Robert Bragg <robert@linux.intel.com>
103Date:   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
194commit 09d8460a5c3f905573378172ed553fd57d49913e
195Author: Øyvind Kolås <pippin@linux.intel.com>
196Date:   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
209commit 9d1ea81dc51464e86d7a4eee27874136e9e34cad
210Author: Robert Bragg <robert@linux.intel.com>
211Date:   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
222commit aba6c5acc7f1cb15f92666d1681a95b5a805efaf
223Author: Emmanuele Bassi <ebassi@linux.intel.com>
224Date:   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
238commit e3fba5f2e80a4c72cc4ef0c193a0b6569e1d8cbf
239Author: Emmanuele Bassi <ebassi@linux.intel.com>
240Date:   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
251commit 9a55ddc7c36185b31120b5c5275dac60f5926d8d
252Author: Øyvind Kolås <pippin@linux.intel.com>
253Date:   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
263commit 3a84af0106522e46d930fc81013c86465357dc89
264Merge: 0baeabc2a a2573ad2a
265Author: Emmanuele Bassi <ebassi@linux.intel.com>
266Date:   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
274commit a2573ad2ad39931d2a817d4585d87b70c3f86526
275Author: Emmanuele Bassi <ebassi@linux.intel.com>
276Date:   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
292commit b4e9f40394fb2e4d63bccc9f9d932a5da87cc2a2
293Author: Emmanuele Bassi <ebassi@linux.intel.com>
294Date:   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
316commit 0baeabc2aa1a4b2a1908b7acd15f947cb8b1eb4d
317Author: Owen W. Taylor <otaylor@fishsoup.net>
318Date:   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
334commit 74a27bbb1c0ae12ba937d215323d5a716781cb1b
335Author: Emmanuele Bassi <ebassi@linux.intel.com>
336Date:   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
362commit c0a553163b5e82cb70e956e802d7f9b61bb13948
363Author: Neil Roberts <neil@linux.intel.com>
364Date:   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
409commit 505e5966e4ee649b7528cdf0410a4e52d59a25ec
410Author: Øyvind Kolås <pippin@linux.intel.com>
411Date:   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
421commit 7d0ad7ac1b8f6b8a92d0c97180d2885a3a18bcdd
422Author: Bastian Winkler <buz@netbuz.org>
423Date:   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
435commit 53eecb8469855d17e863c2113a58f0b6e9c26729
436Author: Emmanuele Bassi <ebassi@linux.intel.com>
437Date:   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
447commit 1d9ddad9a3ee79d32091b12197bd18e0b283da22
448Author: Emmanuele Bassi <ebassi@linux.intel.com>
449Date:   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
458commit 1777a69f2f036e2ead5986a5c91f18480a14e4fd
459Merge: 8146d8d08 7ffb62eab
460Author: Emmanuele Bassi <ebassi@linux.intel.com>
461Date:   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
470commit 8146d8d08deafd6cf86238a4a8c2fa6149e5c691
471Author: Robert Bragg <robert@linux.intel.com>
472Date:   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
487commit b9a91594f4b37388222b587eaea7618ea8c78381
488Author: Robert Bragg <robert@linux.intel.com>
489Date:   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
499commit 79acb088e7f6916fb77a6341c22f9022c0f50208
500Author: Emmanuele Bassi <ebassi@linux.intel.com>
501Date:   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
706commit 23867875a14ab6d7288d6a67c67b20a1f136be94
707Author: Emmanuele Bassi <ebassi@linux.intel.com>
708Date:   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
722commit ce6a24eb2b5eaba4b60f82855af7a24d0f5afdad
723Author: Emmanuele Bassi <ebassi@linux.intel.com>
724Date:   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
738commit 7ffb62eab939de46b8234243cab6f6c4b40d60ec
739Author: Emmanuele Bassi <ebassi@linux.intel.com>
740Date:   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
750commit 52ba9a1800302f887ebe6d2e7aa7ab4503ea6e5e
751Author: Emmanuele Bassi <ebassi@linux.intel.com>
752Date:   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
762commit cd62dfbd1419870fb6792bcab87ea8e7d0e760f5
763Author: Chris Lord <chris@linux.intel.com>
764Date:   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
778commit 9f67e4826c9880732e4f2a74ac42f729e7e80042
779Author: Emmanuele Bassi <ebassi@linux.intel.com>
780Date:   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
790commit 62f2961f8a9b2974e0a7a11ea534f0b14f8fef1a
791Author: Emmanuele Bassi <ebassi@linux.intel.com>
792Date:   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
799commit c8c62af0cf5d33f3fe3e4aab44ed49363263252c
800Author: Emmanuele Bassi <ebassi@linux.intel.com>
801Date:   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
814commit e0f04efa411c0987db32c056958ad2c7cf5b6736
815Author: Emmanuele Bassi <ebassi@linux.intel.com>
816Date:   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
827commit 5d8346829585bb4b6d4617a232f87e3dab4eee5f
828Author: Neil Roberts <neil@linux.intel.com>
829Date:   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 clutter/cogl/cogl/driver/gles/cogl-feature-functions.h |  6 ++++++
848 5 files changed, 37 insertions(+), 3 deletions(-)
849
850commit 67d9d928147aa59905960480a5d0b4c19c9d1920
851Author: Emmanuele Bassi <ebassi@linux.intel.com>
852Date:   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
862commit 70d7bad98ba50a657204ee356fd5ac5ccf4e8bea
863Author: Emmanuele Bassi <ebassi@linux.intel.com>
864Date:   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
874commit 96c31bbf0ea14c7cb6eaa824a6d5cf66d58b8d5b
875Author: Bastian Winkler <buz@netbuz.org>
876Date:   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
905commit 63279f827e9d4e517c3dc88633a8b5ed47fbd74e
906Author: Emmanuele Bassi <ebassi@linux.intel.com>
907Date:   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
922commit 9db135c4eff97a3d3520cc05c9c3e85c153e8cc4
923Author: Emmanuele Bassi <ebassi@linux.intel.com>
924Date:   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
938commit 655cb966c08b0ec3a0b73ed1b18fc9ebbe9a93b8
939Author: Emmanuele Bassi <ebassi@linux.intel.com>
940Date:   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
956commit d3d05261e6a394736757cebb5aad9b9267e7cf53
957Author: Emmanuele Bassi <ebassi@linux.intel.com>
958Date:   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
969commit c0be19eff65c4c72aa5c934cee3b582903db40f6
970Author: Emmanuele Bassi <ebassi@linux.intel.com>
971Date:   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
981commit c291d5a660f4ebac3dc57acad79b8153686a47f0
982Author: Emmanuele Bassi <ebassi@linux.intel.com>
983Date:   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
994commit 641582533952c91576fb53724b70cbe6afb119db
995Author: Emmanuele Bassi <ebassi@linux.intel.com>
996Date:   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
1007commit 4bc4c604e926b07af9ef4c02fd5f000fc939259b
1008Author: Emmanuele Bassi <ebassi@linux.intel.com>
1009Date:   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
1020commit 543e2d3f0609864cebb1f1eaf258108abab50770
1021Author: Emmanuele Bassi <ebassi@linux.intel.com>
1022Date:   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
1038commit 31b5856d69e8d53de17270da7ab59dd290e2868a
1039Author: Neil Roberts <neil@linux.intel.com>
1040Date:   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
1052commit 14999bec5e6b3d0aab057ef544f233d968e5cf67
1053Author: Neil Roberts <neil@linux.intel.com>
1054Date:   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 clutter/cogl/cogl/driver/gles/cogl-texture-driver.c | 13 -------------
1078 7 files changed, 2 insertions(+), 79 deletions(-)
1079
1080commit eba07020c549ff0ede9982c6d911d67e353ca5a3
1081Author: Neil Roberts <neil@linux.intel.com>
1082Date:   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
1099commit 02b952394ae9efe9e80b803e671bca1b1f711a9a
1100Author: Neil Roberts <neil@linux.intel.com>
1101Date:   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
1114commit 3bc0672feff7c58326c4d50612bedf15aa9c02cb
1115Author: Øyvind Kolås <pippin@linux.intel.com>
1116Date:   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
1125commit d2db512788aac496a3741cb424caea41cf4357a1
1126Author: Øyvind Kolås <pippin@linux.intel.com>
1127Date:   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
1138commit e8d32fd153268c653c1adc5c66f30f0ee624b432
1139Author: Øyvind Kolås <pippin@linux.intel.com>
1140Date:   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
1152commit be8f53f229397e72fcf5a1bed245d555ea4747e9
1153Author: Emmanuele Bassi <ebassi@linux.intel.com>
1154Date:   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
1165commit 26e22b2ede0eb0fdfbe3d96189cb2aa196da83f8
1166Author: Emmanuele Bassi <ebassi@linux.intel.com>
1167Date:   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
1187commit bd303d6efb7dfddbdf671f7c66ff5b73bb216f3f
1188Author: Emmanuele Bassi <ebassi@linux.intel.com>
1189Date:   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
1204commit 59fd7e4a810f51bad31c2eafb609d545557ef264
1205Author: Bastian Winkler <buz@netbuz.org>
1206Date:   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
1219commit fd6f6707433a8ab57c8232afee65038213d4120c
1220Author: Emmanuele Bassi <ebassi@linux.intel.com>
1221Date:   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
1228commit 18659b008c800b2dde6e5a2453fba04f5990f2b7
1229Author: Emmanuele Bassi <ebassi@linux.intel.com>
1230Date:   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
1237commit ec0c7fcd9bb734c3fd488b4b3ec3d469ba5e967f
1238Author: Emmanuele Bassi <ebassi@linux.intel.com>
1239Date:   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
1252commit 1370d72a7a1490c1ed60f02634f146995482116d
1253Author: Emmanuele Bassi <ebassi@linux.intel.com>
1254Date:   Wed Feb 24 14:20:14 2010 +0000
1255
1256    Update NEWS file
1257
1258 NEWS | 44 ++++++++++++++++++++++++++++++++++++++++++++
1259 1 file changed, 44 insertions(+)
1260
1261commit d1ca0e1b8f3dc6f5b5fec0ce3fba4702b9e75386
1262Author: Emmanuele Bassi <ebassi@linux.intel.com>
1263Date:   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
1276commit 3a9d842164708baa8fe877d829f9e9cdcbde3831
1277Author: Emmanuele Bassi <ebassi@linux.intel.com>
1278Date:   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
1289commit aa8c8127059326c2d13d9f8dd6a294e787e3760e
1290Author: Emmanuele Bassi <ebassi@linux.intel.com>
1291Date:   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
1301commit 523bab0868255e3f2b2910a60a868bffeb5bf64a
1302Author: Robert Bragg <robert@linux.intel.com>
1303Date:   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
1318commit f21e649c80a3e0db5db7dc1128f7828535dbebc2
1319Author: Emmanuele Bassi <ebassi@linux.intel.com>
1320Date:   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
1330commit 829d3f4bc5d083320f7f1b70d25e0115e1b6512f
1331Author: Emmanuele Bassi <ebassi@linux.intel.com>
1332Date:   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
1346commit d54af2363d390bf598aaa931821a46604d4f192a
1347Author: Emmanuele Bassi <ebassi@linux.intel.com>
1348Date:   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
1359commit eb35c446b119274658ba45937e02b5cfd1ec27fe
1360Author: Neil Roberts <neil@linux.intel.com>
1361Date:   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
1377commit da0315e4d666cc7cbfcfe7dab63d731df2a02338
1378Author: Neil Roberts <neil@linux.intel.com>
1379Date:   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
1395commit 1c65f2ee1e4595d3044d05cadb4f33fc2d03a6f3
1396Author: Robert Bragg <robert@linux.intel.com>
1397Date:   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
1410commit fa3830ff20962dc72b676a5411a7fa1829a870cd
1411Author: Robert Bragg <robert@linux.intel.com>
1412Date:   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
1427commit a58d6e8ee5e26185ff090845df68b61076275c21
1428Author: Robert Bragg <robert@linux.intel.com>
1429Date:   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
1440commit 511e5ceb516dcbf2c406a7c2e8e0e56d2135fb0d
1441Author: Robert Bragg <robert@linux.intel.com>
1442Date:   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
1463commit 939e56e2b12e5c96fa1173be33c2786ddfe57c25
1464Author: Emmanuele Bassi <ebassi@linux.intel.com>
1465Date:   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
1477commit 95960ab902852e9c4830815b89d0a315fb9e4c50
1478Author: Emmanuele Bassi <ebassi@linux.intel.com>
1479Date:   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
1489commit a9941e94995d2701783f055e69fba52a64f609e0
1490Author: Emmanuele Bassi <ebassi@linux.intel.com>
1491Date:   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
1540commit a9c307ff5d94489b30d7398ac80072fe7222a434
1541Author: Neil Roberts <neil@linux.intel.com>
1542Date:   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
1555commit 14669657737cc1547fb0db261232e63bdd2755d9
1556Author: Emmanuele Bassi <ebassi@linux.intel.com>
1557Date:   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
1568commit 5ed4732737202c3051044455a91dc70c213fb800
1569Author: Emmanuele Bassi <ebassi@linux.intel.com>
1570Date:   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
1597commit ee33357fd5d08be824a5ecb3161a79568afa4e5c
1598Author: Emmanuele Bassi <ebassi@linux.intel.com>
1599Date:   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
1624commit 9a6de8757f27ff8a8cf9f89209f9366e03b7aadf
1625Author: Emmanuele Bassi <ebassi@linux.intel.com>
1626Date:   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
1637commit a2afc9d7ba0a80733044b97498a7df26de5a4ab2
1638Author: Neil Roberts <neil@linux.intel.com>
1639Date:   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
1652commit 5de743de705ba9bb9a2061a66045b32091165ad5
1653Author: Robert Bragg <robert@linux.intel.com>
1654Date:   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
1664commit 9c06c94374c61c019ca49fa6fd80679e6ad2f29a
1665Author: Robert Bragg <robert@linux.intel.com>
1666Date:   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
1684commit 8b040cac4dfaaa9d91635d31d93a79d00f637772
1685Author: Emmanuele Bassi <ebassi@linux.intel.com>
1686Date:   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
1694commit 51a3e49c8228a22c1fbcd42971ad27d26d83991b
1695Author: Emmanuele Bassi <ebassi@linux.intel.com>
1696Date:   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
1725commit b398292089b0f70b9457985426d6b962d9179fa7
1726Author: Emmanuele Bassi <ebassi@linux.intel.com>
1727Date:   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
1764commit 0bf6d57ab128f301588695d011a9ab5d1b1dce1a
1765Author: Chris Lord <chris@linux.intel.com>
1766Date:   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
1781commit 05054bed87866d10c927642fe6273c5bd8f89a95
1782Author: Neil Roberts <neil@linux.intel.com>
1783Date:   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
1800commit a726ef32aa4721070b57df2e08c304096cb24736
1801Author: Neil Roberts <neil@linux.intel.com>
1802Date:   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
1814commit fbcaf1e0b34f68934e0c84b01adfa5ea920c6c6a
1815Author: Emmanuele Bassi <ebassi@linux.intel.com>
1816Date:   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
1831commit 719e314b8e364955b046c990ddc1c9f07b0cc55f
1832Author: Chris Lord <chris@linux.intel.com>
1833Date:   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
1843commit f9f03894a691cfb8f791f34c684d82f8a6d5b5b8
1844Author: Chris Lord <chris@linux.intel.com>
1845Date:   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
1858commit df6e7aee73a3c3818acab8218732659eb77a3cdc
1859Author: Chris Lord <chris@linux.intel.com>
1860Date:   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
1871commit c2d016471258c529d7829ed807e76a4e029b614b
1872Author: Emmanuele Bassi <ebassi@linux.intel.com>
1873Date:   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
1880commit d42f928c43994331017bca7145b7b06fd5848909
1881Author: Chris Lord <chris@linux.intel.com>
1882Date:   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
1893commit 1117b6a9ac974dd5855c5e76965c15329c608ff4
1894Author: Chris Lord <chris@linux.intel.com>
1895Date:   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
1919commit dd36c3ad5c4f3d25d0286cf1c2a9a25abf7d2ea4
1920Author: Emmanuele Bassi <ebassi@linux.intel.com>
1921Date:   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
1928commit 21354b2b7518c9518fa8405f07ed1f929736d4a2
1929Author: Emmanuele Bassi <ebassi@linux.intel.com>
1930Date:   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
1937commit 7a3eb452b802e5b38542d224da179c4267706e7b
1938Author: Emmanuele Bassi <ebassi@linux.intel.com>
1939Date:   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
1955commit 4cadc7300504828fa0db8cb21e1b9d8e23be6319
1956Author: Emmanuele Bassi <ebassi@linux.intel.com>
1957Date:   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
1967commit 958545aa70e526a12720bf2dd0d9b9a24d273b8d
1968Author: Neil Roberts <neil@linux.intel.com>
1969Date:   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
1980commit a5021ba30f553d641399545d9777eb5b4b385ac1
1981Author: Neil Roberts <neil@linux.intel.com>
1982Date:   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
1996commit e65bb38720c8990684ce24bda08b78d8da49cc1b
1997Author: Emmanuele Bassi <ebassi@linux.intel.com>
1998Date:   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
2009commit 56f164f8a1c634e2d0ba6ffb5879672d456e1488
2010Author: Emmanuele Bassi <ebassi@linux.intel.com>
2011Date:   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
2018commit 2fcb644e4fb02375bdf8b1f54677bcde7abdceba
2019Author: Chris Lord <chris@linux.intel.com>
2020Date:   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
2042commit 0d428655e23c18064176aa823db0d7165581ba02
2043Author: Emmanuele Bassi <ebassi@linux.intel.com>
2044Date:   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
2071commit 2229cafc3833a017b3a107b4f6b207f0a95908f5
2072Author: Emmanuele Bassi <ebassi@linux.intel.com>
2073Date:   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
2089commit fef82fae5c716f15cd345fcfbc37f01578a82580
2090Author: Emmanuele Bassi <ebassi@linux.intel.com>
2091Date:   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
2101commit 032121ce17fb825592ba435cf260107b52f8196c
2102Author: Emmanuele Bassi <ebassi@linux.intel.com>
2103Date:   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
2112commit c3354cb2c0acc7d80b2cea3f970a1d83a47d585c
2113Author: Emmanuele Bassi <ebassi@linux.intel.com>
2114Date:   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
2126commit d607400f01be1c1e26f54b3d83794e0d246e8db0
2127Author: Emmanuele Bassi <ebassi@linux.intel.com>
2128Date:   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
2140commit 89191e8bbc591f33dd0f45e2317f31eeaa7d4023
2141Author: Emmanuele Bassi <ebassi@linux.intel.com>
2142Date:   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
2153commit 262782feae4e8130321be414f7aac9141ae22eab
2154Author: Damien Lespiau <damien.lespiau@intel.com>
2155Date:   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
2166commit 01bf50905689b363877f85942403cdc947f8c82c
2167Author: Damien Lespiau <damien.lespiau@intel.com>
2168Date:   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
2179commit e668a2f228acb1f38853eea4245f87e10e82fe23
2180Author: Neil Roberts <neil@linux.intel.com>
2181Date:   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
2195commit 4be4f56bdf463ccac89c7068b47ba1450bee95ee
2196Author: Neil Roberts <neil@linux.intel.com>
2197Date:   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
2213commit 2018b5b16750b090c5592ebd5262fc66d809183e
2214Author: Emmanuele Bassi <ebassi@linux.intel.com>
2215Date:   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
2227commit 37d51cb78e41ea36f01c049eda6163bddc84ce33
2228Author: Emmanuele Bassi <ebassi@linux.intel.com>
2229Date:   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
2239commit 124f30cccef75feabb0933c074753b392f373e82
2240Author: Emmanuele Bassi <ebassi@linux.intel.com>
2241Date:   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
2251commit 27e6c3b1e0db6fcb36a8f7e44e457b672ee34565
2252Author: Emmanuele Bassi <ebassi@linux.intel.com>
2253Date:   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
2262commit 00c4bfc3c69ba1c1c37852392b46c0fe601a98a1
2263Author: Emmanuele Bassi <ebassi@linux.intel.com>
2264Date:   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
2273commit 46182233c031c480b5d4d1f6109ab28a6199d369
2274Author: Emmanuele Bassi <ebassi@linux.intel.com>
2275Date:   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
2284commit 78f1f508af88ccd9652d38811a4ebc6662c566dd
2285Author: Emmanuele Bassi <ebassi@linux.intel.com>
2286Date:   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
2295commit 081696fdb5d83c41ed201277db272572eb534db2
2296Author: Emmanuele Bassi <ebassi@linux.intel.com>
2297Date:   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
2306commit 2d8bdf9e5ebd101b40854e0066b06037dd261ea5
2307Author: Emmanuele Bassi <ebassi@linux.intel.com>
2308Date:   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
2317commit 9c8f8818784ba7c709c70ead6d8e103ee28d0c8c
2318Author: Emmanuele Bassi <ebassi@linux.intel.com>
2319Date:   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
2328commit 65af411cb4675eab722fe16acc93fa6e7183e3c8
2329Author: Emmanuele Bassi <ebassi@linux.intel.com>
2330Date:   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
2339commit 09644e4bb6cff70d2c9a59bbe9b461b7e53676e2
2340Author: Emmanuele Bassi <ebassi@linux.intel.com>
2341Date:   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
2350commit c2d434e3af3d3b862866273a7dd15541ecbebcd5
2351Author: Emmanuele Bassi <ebassi@linux.intel.com>
2352Date:   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
2361commit 136e8c1acb15c078c0898a834f55666c6f0ef384
2362Author: Emmanuele Bassi <ebassi@linux.intel.com>
2363Date:   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
2373commit 4d9010dd5e9c5a69ba5f7a0c3969ce5ac337c08d
2374Author: Emmanuele Bassi <ebassi@linux.intel.com>
2375Date:   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
2384commit 8ba65cfd4aba677530b25d9ab1323d2b1b281282
2385Author: Emmanuele Bassi <ebassi@linux.intel.com>
2386Date:   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
2395commit bea1a0a6a22ecd0ed96720bcecb3919d3fbb2757
2396Author: Emmanuele Bassi <ebassi@linux.intel.com>
2397Date:   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
2409commit 66920ea540834c0264434f64a0dcfae4150e625f
2410Author: Emmanuele Bassi <ebassi@linux.intel.com>
2411Date:   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
2420commit 853f9941da5f40b936307ce45f67265f978d9c2b
2421Author: Emmanuele Bassi <ebassi@linux.intel.com>
2422Date:   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
2433commit cd058562538633962089cd30787b7a98d9733144
2434Author: Emmanuele Bassi <ebassi@linux.intel.com>
2435Date:   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
2444commit 6dc0e9632cc2597240d9e42c98cd567dbcc1dbec
2445Author: Emmanuele Bassi <ebassi@linux.intel.com>
2446Date:   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
2459commit a287ca7a2824efef2608877555711c408122a400
2460Author: Emmanuele Bassi <ebassi@linux.intel.com>
2461Date:   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
2470commit 667222c301ca0f19c570938055208e564e4d02ef
2471Author: Emmanuele Bassi <ebassi@linux.intel.com>
2472Date:   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
2483commit fcd3cfc0bfc656d63088a443355b30e7b50d2850
2484Author: Emmanuele Bassi <ebassi@linux.intel.com>
2485Date:   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
2494commit aa6d7a30291c199fc1d26a93574d88c027367bf0
2495Author: Emmanuele Bassi <ebassi@linux.intel.com>
2496Date:   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
2505commit 7a372bc0011b6301cc8b46767493a23218a67cff
2506Author: Neil Roberts <neil@linux.intel.com>
2507Date:   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
2521commit 22c33b2fea1fd60239280aa1f4fd112f533688aa
2522Author: Robert Bragg <robert@linux.intel.com>
2523Date:   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
2535commit 18305cbd98e02ab139beef769cbc90a2121bd1f5
2536Author: Robert Bragg <robert@linux.intel.com>
2537Date:   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
2555commit 5f18fc928d85499d6ee2ac433dde247286e2de4e
2556Author: Robert Bragg <robert@linux.intel.com>
2557Date:   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
2575commit 48660349dbcabdde05fc9e1334734bcc62bb790e
2576Author: Robert Bragg <robert@linux.intel.com>
2577Date:   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
2599commit 9f5a3e14451ed77f47260bbd6a1b2271e8003361
2600Author: Robert Bragg <robert@linux.intel.com>
2601Date:   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
2619commit 7edcbaa1f9444848fcaac052557f7c444e3905e0
2620Author: Robert Bragg <robert@linux.intel.com>
2621Date:   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 clutter/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
2726commit 8c9472bc4c0350bc28f6ca152e82a0a507063d19
2727Author: Robert Bragg <robert@linux.intel.com>
2728Date:   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
2749commit b898f0e227aeabeb0513d1228a8f432c467d95b9
2750Author: Robert Bragg <robert@linux.intel.com>
2751Date:   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
2773commit bfb271b40332240f40c79dabf8f78f7a68293286
2774Author: Robert Bragg <robert@linux.intel.com>
2775Date:   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
2791commit 60a4664d6e4f67b5e527cc2ecd190a538ed994ec
2792Author: Robert Bragg <robert@linux.intel.com>
2793Date:   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
2802commit 4355621aebb075bc34b50a89f8ba99e8b8e12ff7
2803Author: Robert Bragg <robert@linux.intel.com>
2804Date:   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
2839commit 34c7611407154fcbb61c82c959c2a38972c2534f
2840Author: Emmanuele Bassi <ebassi@linux.intel.com>
2841Date:   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
2852commit 44818a48273baa7dabfbb9370ac218ae8b0cf38e
2853Author: Neil Roberts <neil@linux.intel.com>
2854Date:   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
2867commit 59463c2213b79a553d3d7999bb56106fb7c5a4ad
2868Author: Emmanuele Bassi <ebassi@linux.intel.com>
2869Date:   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
2879commit d0734bc4741d77e7c239cf860b73b49e9564aa91
2880Author: Emmanuele Bassi <ebassi@linux.intel.com>
2881Date:   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
2894commit 4208169ab48795ca8f10287bd67031e161bf1f82
2895Author: Emmanuele Bassi <ebassi@linux.intel.com>
2896Date:   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
2907commit f54b29a0c0c182f1396abd9df7d46d99b81a133d
2908Author: Emmanuele Bassi <ebassi@linux.intel.com>
2909Date:   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
2918commit 2670fc58710b1d9d1ad5afae7b6ac397e1dc54dd
2919Author: Emmanuele Bassi <ebassi@linux.intel.com>
2920Date:   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
2930commit 3fdb0a59509aeaeb07c276ebd09df355626cfb92
2931Author: Robert Bragg <robert@linux.intel.com>
2932Date:   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
2942commit 1899dbdc270e0bd494d174dd6bfbb9c5d18e174f
2943Author: Robert Bragg <robert@linux.intel.com>
2944Date:   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
2958commit ce1bb3d858fd02d6bcfb94b2b8999cfd7d0a4535
2959Author: Neil Roberts <neil@linux.intel.com>
2960Date:   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
2972commit b61c2b510b5f5a72ae6181cdce646d7018fbd996
2973Author: Emmanuele Bassi <ebassi@linux.intel.com>
2974Date:   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
2986commit 4a9f08639f7127719f5b59ee9287641ba4912063
2987Author: Robert Bragg <robert@linux.intel.com>
2988Date:   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
3000commit 5d702853b814445590aafe448bfc8f7993b06638
3001Author: Robert Bragg <robert@linux.intel.com>
3002Date:   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
3033commit 848db1ee4cc910542435bbcd3a57933bdf70269e
3034Author: Robert Bragg <robert@linux.intel.com>
3035Date:   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
3049commit ca3ab41a1b12f661fe6eecddfaf5e03b0d94d682
3050Author: Neil Roberts <neil@linux.intel.com>
3051Date:   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
3063commit 7b1925df82fa92fd68623c9a999ece6bf4ddfde3
3064Author: Emmanuele Bassi <ebassi@linux.intel.com>
3065Date:   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
3075commit d2bdd3cb62c1cba24619ae843cf087709a02643d
3076Author: Emmanuele Bassi <ebassi@linux.intel.com>
3077Date:   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
3090commit 193c477495488446d2f3d8ab0184f882f3255f48
3091Author: Neil Roberts <neil@linux.intel.com>
3092Date:   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
3103commit f5d2f58b03bf03b69f6cb92b3bdddb92b8a8ecc2
3104Author: Emmanuele Bassi <ebassi@linux.intel.com>
3105Date:   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
3120commit ecc5ffe91ace38c9d288251807e721a4cd71b052
3121Author: Bastian Winkler <buz@netbuz.org>
3122Date:   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
3135commit 9aac36b47e43e95d12c8d28bd3671e6f5e000d32
3136Author: Emmanuele Bassi <ebassi@linux.intel.com>
3137Date:   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
3150commit 7ebb1e7157ab5d3efbeb37d7879d851adc7da40e
3151Author: Emmanuele Bassi <ebassi@linux.intel.com>
3152Date:   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
3172commit 1d28ed035f360b14cfbf5b01db4ffe2979172cf0
3173Author: Emmanuele Bassi <ebassi@linux.intel.com>
3174Date:   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
3181commit a24d4d21a0eeca771476705ef407d55fdb32e68f
3182Author: Emmanuele Bassi <ebassi@linux.intel.com>
3183Date:   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
3192commit 738e73873dd0c05a44f7cb0ad40c8a854e0c75a6
3193Author: Emmanuele Bassi <ebassi@linux.intel.com>
3194Date:   Tue Feb 9 12:59:18 2010 +0000
3195
3196    Update NEWS file
3197
3198 NEWS | 19 +++++++++++++++++++
3199 1 file changed, 19 insertions(+)
3200
3201commit cccf23caa481a239b747d1fdd5e0ca5ae7f6682c
3202Author: Emmanuele Bassi <ebassi@linux.intel.com>
3203Date:   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
3213commit e46db37c03b6adae1594729c2c5c86e65701d95b
3214Author: Robert Bragg <robert@linux.intel.com>
3215Date:   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
3227commit a02253f19a722dcfbf0a32543dd563127dd7b80e
3228Author: Neil Roberts <neil@linux.intel.com>
3229Date:   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
3244commit 1b2ff7eff7e97d8542e35514bfa010be706973ee
3245Author: Neil Roberts <neil@linux.intel.com>
3246Date:   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
3263commit bbb058df40a5e1acf7b8e42049c3cd5d966f762d
3264Author: Emmanuele Bassi <ebassi@linux.intel.com>
3265Date:   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
3277commit 7664568fff63501339d2cb1682ae1a9f1c27e068
3278Author: Halton Huo <halton.huo@gmail.com>
3279Date:   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
3294commit a23ce8606860075e35fca28eb82e57e340f2b9b9
3295Author: Emmanuele Bassi <ebassi@linux.intel.com>
3296Date:   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
3303commit a2889ed0772503dce504ab260fbbf662a0ad25d8
3304Author: Emmanuele Bassi <ebassi@linux.intel.com>
3305Date:   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
3312commit a139bf9c40f88b46055e4cd9754ba51acca97c87
3313Author: Emmanuele Bassi <ebassi@linux.intel.com>
3314Date:   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
3324commit 4d9327bbe14c2771896999844df3eac28da75347
3325Author: Emmanuele Bassi <ebassi@linux.intel.com>
3326Date:   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
3336commit d62ddc374f88448fbde6db11ed4b10a594ecc5c4
3337Author: Emmanuele Bassi <ebassi@linux.intel.com>
3338Date:   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
3347commit 9806f78905eea6e7c3b5b1f35b35650a823cb295
3348Author: Emmanuele Bassi <ebassi@linux.intel.com>
3349Date:   Mon Feb 8 17:34:11 2010 +0000
3350
3351    Merge me
3352
3353 NEWS | 4 ++++
3354 1 file changed, 4 insertions(+)
3355
3356commit 814d3acd0730f2e418ccc44d550e1fa369c142fe
3357Author: Emmanuele Bassi <ebassi@linux.intel.com>
3358Date:   Mon Feb 8 17:27:20 2010 +0000
3359
3360    docs: Update NEWS
3361
3362 NEWS | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++
3363 1 file changed, 53 insertions(+)
3364
3365commit 419afc01e8f2c96f7cf5c0962e5c421f8f3a476f
3366Author: Emmanuele Bassi <ebassi@linux.intel.com>
3367Date:   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
3374commit c02dded0f6793ad377b566360371c23dbe61b4bc
3375Author: Damien Lespiau <damien.lespiau@intel.com>
3376Date:   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
3389commit 54a6df22b038b047931dc108df35bc9e097d4e5e
3390Author: Damien Lespiau <damien.lespiau@intel.com>
3391Date:   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
3404commit d0fe4795368ddc55411fb081832bfcdfdfeb4314
3405Author: Damien Lespiau <damien.lespiau@intel.com>
3406Date:   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 clutter/cogl/cogl/driver/gl/cogl-feature-functions.h |  5 +++++
3428 4 files changed, 88 insertions(+), 15 deletions(-)
3429
3430commit b5d5821304e8ca15ee4411bf7ff8f26a6a23c855
3431Author: Damien Lespiau <damien.lespiau@intel.com>
3432Date:   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
3445commit b7f049495b527547d093ca337588ceb289c9cb2b
3446Author: Damien Lespiau <damien.lespiau@intel.com>
3447Date:   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
3460commit abbb668163537598790cb3eca564ea19b1e010ad
3461Author: Damien Lespiau <damien.lespiau@intel.com>
3462Date:   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
3485commit b5e9710cdf5795f532fe46b9dfcc704a07d99ac9
3486Author: Damien Lespiau <damien.lespiau@intel.com>
3487Date:   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
3510commit de8a6314f12854e748de515afb487af56eaac845
3511Author: Damien Lespiau <damien.lespiau@intel.com>
3512Date:   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 clutter/cogl/cogl/driver/gles/cogl-texture-driver.c | 27 +++++++++++++++++++++++++++
3536 5 files changed, 72 insertions(+), 9 deletions(-)
3537
3538commit c0f65212baee25dd4e66f4366a54bd847c782eb3
3539Author: Damien Lespiau <damien.lespiau@intel.com>
3540Date:   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
3553commit 069ba6daf9d39b471eb5c1de6e621f1343d5f00c
3554Merge: cc6aefad3 6ab90899b
3555Author: Emmanuele Bassi <ebassi@linux.intel.com>
3556Date:   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
3566commit 6ab90899badf7820ffc4f40f23bf18c979762577
3567Author: Emmanuele Bassi <ebassi@linux.intel.com>
3568Date:   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
3578commit 4dd11d6915f75ba62b8292c3138d4cc11a28fb21
3579Author: Emmanuele Bassi <ebassi@linux.intel.com>
3580Date:   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
3599commit 790a13c0d9d2249747cfb81dcb13f83c6cc2cec1
3600Author: Emmanuele Bassi <ebassi@linux.intel.com>
3601Date:   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
3621commit 09f91ff6eab3d617be88e11bd17c226fa4d23aed
3622Author: Emmanuele Bassi <ebassi@linux.intel.com>
3623Date:   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
3638commit cc6aefad345f4490f59f33eaef6f7589de1f3f9b
3639Author: Robert Bragg <robert@linux.intel.com>
3640Date:   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
3658commit 24338a7511cd09298695f0a0b51ea6a97fa6786a
3659Author: Neil Roberts <neil@linux.intel.com>
3660Date:   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
3680commit 8ac27e60707b2dfd13ba978b81421423e37ebf98
3681Author: Emmanuele Bassi <ebassi@linux.intel.com>
3682Date:   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
3692commit 6106010b6f20980fc51d1431b623567eed10853d
3693Merge: 4cc269a46 c82c94e62
3694Author: Emmanuele Bassi <ebassi@linux.intel.com>
3695Date:   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
3710commit 4cc269a4687f6ca4fcd88ada134cfa00e2b13a1a
3711Author: Øyvind Kolås <pippin@linux.intel.com>
3712Date:   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
3738commit c82c94e6205eda962faf5a51e663680c313be062
3739Author: Chris Lord <chris@linux.intel.com>
3740Date:   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
3753commit b968defae92f3fbd5a4a762b4c817ab58989ee82
3754Author: Chris Lord <chris@linux.intel.com>
3755Date:   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
3771commit 8083dc418b3c2b069a9b0db9323650050a3f63b1
3772Author: Chris Lord <chris@linux.intel.com>
3773Date:   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
3787commit 29cc027f069c9ad900b9044cd40075c2d17be736
3788Author: Chris Lord <chris@linux.intel.com>
3789Date:   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
3807commit cea9de7f047cb8c2b1d54f41ca1d77c3aff882e0
3808Author: Chris Lord <chris@linux.intel.com>
3809Date:   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
3820commit 4887707bb34faca0d7ad92f6628d18345163f5e0
3821Author: Chris Lord <chris@linux.intel.com>
3822Date:   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
3835commit 27e33aa14ff5d14f6066da74922c960a037b5089
3836Author: Chris Lord <chris@linux.intel.com>
3837Date:   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
3848commit be11564b556a1b1c08b7b9e7a0a94bc00c4e6550
3849Author: Chris Lord <chris@linux.intel.com>
3850Date:   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
3860commit fd11d3098f0182f24666ed77973269111cb0a8f5
3861Author: Chris Lord <chris@linux.intel.com>
3862Date:   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
3875commit f973b73208bad266a2362e22e5aed1a0780d096d
3876Author: Emmanuele Bassi <ebassi@linux.intel.com>
3877Date:   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
3884commit e55966d675e57d516ea5aff36b03fde63d4839d3
3885Author: Emmanuele Bassi <ebassi@linux.intel.com>
3886Date:   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
3898commit bbaf6b233d0120e3199d779eeb2829e56ecc279b
3899Author: Emmanuele Bassi <ebassi@linux.intel.com>
3900Date:   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
3907commit dcdb97006b563407d43f19779ac47f0330052541
3908Author: Emmanuele Bassi <ebassi@linux.intel.com>
3909Date:   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
3916commit 830f2402d4f49b7173eb7fa0bda5762a4c430c9a
3917Merge: 1bdc3db9a 6b1b27d4f
3918Author: Neil Roberts <neil@linux.intel.com>
3919Date:   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
3941commit 6b1b27d4f894cbefc90601eaf6214b55a71834b7
3942Author: Neil Roberts <neil@linux.intel.com>
3943Date:   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
3955commit 191d20eb56f31786660cd04aacc710344eb8df7a
3956Author: Neil Roberts <neil@linux.intel.com>
3957Date:   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
3969commit 1bdc3db9ab54316f5f313dc3e991f3a621e83586
3970Author: Damien Lespiau <damien.lespiau@intel.com>
3971Date:   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
3983commit 1b94cc9268e57cc49e3bac914c4b979aec955f77
3984Author: Damien Lespiau <damien.lespiau@intel.com>
3985Date:   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
3994commit 0ea25d661b887c27beaf0bd848dfda994d88782f
3995Author: Emmanuele Bassi <ebassi@linux.intel.com>
3996Date:   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
4007commit 15c6fef7e3e426764bafc316794a195a086e0d03
4008Author: Emmanuele Bassi <ebassi@linux.intel.com>
4009Date:   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
4022commit 1f70da62a73e3a10fe1ceb33d11f79fc29586fcf
4023Author: Neil Roberts <neil@linux.intel.com>
4024Date:   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
4034commit 466b00a8064ad09f0574f8f46c6df0390d7c7d00
4035Author: Emmanuele Bassi <ebassi@linux.intel.com>
4036Date:   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
4049commit ea5e33cf3a38edddef88ec30131c35bb8ab4bfaf
4050Author: Emmanuele Bassi <ebassi@linux.intel.com>
4051Date:   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
4061commit e6a3b6ebe75a2c0c3709fbe12cf04c4357b54fdd
4062Author: Neil Roberts <neil@linux.intel.com>
4063Date:   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
4075commit 59198b8ab8a6a7c1c3dbfa5c72abf36f8d66c543
4076Author: Neil Roberts <neil@linux.intel.com>
4077Date:   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
4095commit 5063f4669c2c94d7288405005f4df14e73a4f578
4096Author: Neil Roberts <neil@linux.intel.com>
4097Date:   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
4110commit cd3c5155d879782a6e6e1d7fa56043e03712b727
4111Author: Jussi Kukkonen <jku@linux.intel.com>
4112Date:   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
4129commit d8d728a8d7ac4bc56f058379d76f4539d01189de
4130Author: Emmanuele Bassi <ebassi@linux.intel.com>
4131Date:   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
4152commit ae188d203c63d680dc58ba1e19f333719a6916d4
4153Author: Neil Roberts <neil@linux.intel.com>
4154Date:   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
4169commit 479fdffc7d4f37f9ff104403dd7de685df97e0d5
4170Author: Emmanuele Bassi <ebassi@linux.intel.com>
4171Date:   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
4182commit ede2cbfab05035247b2a6a2ca837cb8f71871c5d
4183Author: Emmanuele Bassi <ebassi@linux.intel.com>
4184Date:   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
4198commit d2c091e62d4b9e897e8f8ef5de99f20417cc6682
4199Author: Emmanuele Bassi <ebassi@linux.intel.com>
4200Date:   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
4220commit 5eb6fb74b660d22e7f31867b16997ee9f63bef4b
4221Author: Emmanuele Bassi <ebassi@linux.intel.com>
4222Date:   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
4232commit a8daaa8222c9b4aaf7e46b1bb13a2ce8097153f1
4233Author: Emmanuele Bassi <ebassi@linux.intel.com>
4234Date:   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
4245commit 38f26634eec3c81d61bb3b88b24563d7e4719f67
4246Author: Emmanuele Bassi <ebassi@linux.intel.com>
4247Date:   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
4257commit 6fbed66add4b8c03a0ba0f4edc1c2f0044608998
4258Author: Emmanuele Bassi <ebassi@linux.intel.com>
4259Date:   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
4274commit 3191ea1195d5e1d55facc147760b273efca76867
4275Author: Emmanuele Bassi <ebassi@linux.intel.com>
4276Date:   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
4286commit 16a5911cff90a2bba1b283ccd9a9ce6d0f435924
4287Author: Emmanuele Bassi <ebassi@linux.intel.com>
4288Date:   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
4295commit cb52581a24c157e2bedb74c32d522dc56d9a91a2
4296Author: Emmanuele Bassi <ebassi@linux.intel.com>
4297Date:   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
4313commit 74c0170ccc80504018f2aab849a6a311c64052a6
4314Author: Neil Roberts <neil@linux.intel.com>
4315Date:   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
4332commit 301863d43bc79e792f8fe3ea5e9185d87cb74069
4333Author: Emmanuele Bassi <ebassi@linux.intel.com>
4334Date:   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
4351commit 5bec49aea931e6835b97e549e23458a6214548ce
4352Author: Kristian Høgsberg <krh@bitplanet.net>
4353Date:   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
4363commit c9a6e63fa4d1d710d9efeb850f3fc336933ee2a8
4364Author: Emmanuele Bassi <ebassi@linux.intel.com>
4365Date:   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
4384commit 12b004b0e7e13ca64d7d35cd3fe083f582b7aa09
4385Author: Emmanuele Bassi <ebassi@linux.intel.com>
4386Date:   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
4403commit f94e6911510b5376dd490c1f8724e616aaf2e5dc
4404Author: Emmanuele Bassi <ebassi@linux.intel.com>
4405Date:   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
4417commit 521d71d4bc4ca4b06343365c71c9520b1ebfdc7f
4418Author: Emmanuele Bassi <ebassi@linux.intel.com>
4419Date:   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
4440commit 46d6697b9170ba110439cbf61d152890b35a3837
4441Author: Emmanuele Bassi <ebassi@linux.intel.com>
4442Date:   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
4452commit 157a0cf9364a9e60b29e5e88ca1783d9e174a635
4453Author: Emmanuele Bassi <ebassi@linux.intel.com>
4454Date:   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
4469commit 145cc9d3dfd1dc51f254eefde35042fc20a6375e
4470Merge: aa6731e33 5f1c8a17e
4471Author: Neil Roberts <neil@linux.intel.com>
4472Date:   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
4479commit aa6731e338a88d03e718980604ac8f2393391a9f
4480Author: Neil Roberts <neil@linux.intel.com>
4481Date:   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
4492commit abe91784c4ba98417eabe0649bf73381afbd6fc7
4493Author: Neil Roberts <neil@linux.intel.com>
4494Date:   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
4517commit e83ffb1fa3436bf1506c32856b2a3ba23254e068
4518Author: Neil Roberts <neil@linux.intel.com>
4519Date:   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
4543commit 72fba19eac68ffa30c3f60aeecfdbfa6a2da7bd4
4544Author: Neil Roberts <neil@linux.intel.com>
4545Date:   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
4560commit ad6bd2ee88770c2ce86f81f7a64b6b121c3418d6
4561Author: Emmanuele Bassi <ebassi@linux.intel.com>
4562Date:   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
4573commit 5f1c8a17e4f81ead1747b47939d593c80246bf06
4574Merge: ecbb7ce41 8a4b64715
4575Author: Emmanuele Bassi <ebassi@linux.intel.com>
4576Date:   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
4603commit ecbb7ce41a1a759e246fce07f146b8bed5e3d730
4604Author: Alejandro Piñeiro <apinheiro@igalia.com>
4605Date:   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
4624commit 579a9a2665b402405820585dacba137984700110
4625Author: Emmanuele Bassi <ebassi@linux.intel.com>
4626Date:   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
4643commit 95712f9897db7f06a6ca34661f20b388dd5a5f77
4644Author: Emmanuele Bassi <ebassi@linux.intel.com>
4645Date:   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
4654commit 5b9259ba807f4151d08bf2ea868c2cdeed97e975
4655Author: Emmanuele Bassi <ebassi@linux.intel.com>
4656Date:   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
4663commit 763fcabd8b287445d32eadb6086b0438e3962294
4664Author: Emmanuele Bassi <ebassi@linux.intel.com>
4665Date:   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
4675commit 21d21adbc45a6e0023e4a21b357fbf392b469fb2
4676Author: Emmanuele Bassi <ebassi@linux.intel.com>
4677Date:   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
4684commit 5f5f6d825f6460f532f0c0448fc403cdb95e4697
4685Author: Emmanuele Bassi <ebassi@linux.intel.com>
4686Date:   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
4698commit 7a1ebcbced45c21937c4407e28274fdb4a92af52
4699Author: Emmanuele Bassi <ebassi@linux.intel.com>
4700Date:   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
4707commit 578e83e463d4d681de27f1b4e5d64dea8161f0f7
4708Author: Emmanuele Bassi <ebassi@linux.intel.com>
4709Date:   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
4718commit 2d5eeba5d89c129f991f367f0e80c3a152f19e52
4719Author: Emmanuele Bassi <ebassi@linux.intel.com>
4720Date:   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
4732commit 046a4b80476794bebdfd9005c826a64b7c8c9f81
4733Author: Neil Roberts <neil@linux.intel.com>
4734Date:   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
4750commit 92a375ab47296a81d739ca29b0972c7abe6eda16
4751Author: Neil Roberts <neil@linux.intel.com>
4752Date:   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
4773commit f288eae0fc454876c2beb87b1205681a338d7f65
4774Author: Neil Roberts <neil@linux.intel.com>
4775Date:   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
4785commit da392e24a55ad34bdc8fe9ac0841eca574f76194
4786Author: Neil Roberts <neil@linux.intel.com>
4787Date:   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
4801commit 52cb54f5fa665fdf06270fc58121617b44877639
4802Author: Damien Lespiau <damien.lespiau@intel.com>
4803Date:   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
4821commit 87d19b8d182c2524a5d3c30921fe2c3d4d120606
4822Author: Damien Lespiau <damien.lespiau@intel.com>
4823Date:   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
4839commit afb30f4013fdcb58ee35af919fdb739ab587683c
4840Author: Damien Lespiau <damien.lespiau@intel.com>
4841Date:   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
4852commit de31cbf4f7932f8d48583a476c5af9f6eed6adbd
4853Author: Damien Lespiau <damien.lespiau@intel.com>
4854Date:   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
4872commit 06d8ebb0ba2d468d492eeb94dede095a14eec909
4873Author: Damien Lespiau <damien.lespiau@intel.com>
4874Date:   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
4889commit 8fc07c51a9c71aec77e4b76416ffedc72da309e2
4890Author: Emmanuele Bassi <ebassi@linux.intel.com>
4891Date:   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
4914commit d0f7debfba4879c3df20c0067789b063e18d93ce
4915Author: Emmanuele Bassi <ebassi@linux.intel.com>
4916Date:   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
4926commit 7073e69b4e504ddbaffad4a6139e93ddbd40b9f8
4927Author: Emmanuele Bassi <ebassi@linux.intel.com>
4928Date:   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
4939commit 8daa3035e563870fc614813fd6329c63542b129e
4940Author: Emmanuele Bassi <ebassi@linux.intel.com>
4941Date:   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
4950commit 0788aa43b29454efed3f60160b87881a1c84f603
4951Author: Emmanuele Bassi <ebassi@linux.intel.com>
4952Date:   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
4961commit 7fa7c4a1b621eff0533ff70b1b6c9be001f62e2a
4962Author: Emmanuele Bassi <ebassi@linux.intel.com>
4963Date:   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
4986commit 94249efff7ec46bbeaac04800d5a9a30c05dcde3
4987Author: Emmanuele Bassi <ebassi@linux.intel.com>
4988Date:   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
5003commit 996614cfaf582bbfbf86874a95b4a7eef3c50630
5004Author: Neil Roberts <neil@linux.intel.com>
5005Date:   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
5017commit 4695383281d4b74baa10d78253a27b2eb541eef3
5018Author: Emmanuele Bassi <ebassi@linux.intel.com>
5019Date:   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
5028commit f7e7985344420caf4897777ced6f04cddb7052ee
5029Author: Emmanuele Bassi <ebassi@linux.intel.com>
5030Date:   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
5040commit a545f66a5c34b66d1a31387105d114ca3edd3a46
5041Author: Emmanuele Bassi <ebassi@linux.intel.com>
5042Date:   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
5068commit 8a4b64715486699dd8d0ea2146d0adea37d2a6c7
5069Author: Emmanuele Bassi <ebassi@linux.intel.com>
5070Date:   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
5086commit 94f9f3bd9345d8eb1551c429615473134e3f4e8f
5087Author: Emmanuele Bassi <ebassi@linux.intel.com>
5088Date:   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
5106commit dc39e9eff9de0797086ea1a505855724296981f7
5107Author: Emmanuele Bassi <ebassi@linux.intel.com>
5108Date:   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
5117commit 65c7ff7d05389a10eed1d881ca572082f03932fe
5118Author: Emmanuele Bassi <ebassi@linux.intel.com>
5119Date:   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
5129commit 0b47acf60b46b64ae838471765d86e1c65c01cc0
5130Author: Emmanuele Bassi <ebassi@linux.intel.com>
5131Date:   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
5138commit 8ead5abba0ebe9c5b5c1b749bb28f7879d63aa49
5139Author: Emmanuele Bassi <ebassi@linux.intel.com>
5140Date:   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
5147commit 1f5a7b61b761bf8426b1229c481574c273a5964f
5148Author: Emmanuele Bassi <ebassi@linux.intel.com>
5149Date:   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
5159commit d8e167f1519499a27ee04a9a0d167b5ffed3ce8e
5160Author: Emmanuele Bassi <ebassi@linux.intel.com>
5161Date:   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
5175commit e0b8d631593c0539c47de0158d5425391d7cdbc0
5176Author: Emmanuele Bassi <ebassi@linux.intel.com>
5177Date:   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
5188commit 74dbcede25c9dee5b40cb057a26263d580800e7e
5189Author: Emmanuele Bassi <ebassi@linux.intel.com>
5190Date:   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
5208commit 850dd5a38fe17e82b16e19144db4ac516e349dbb
5209Author: Emmanuele Bassi <ebassi@linux.intel.com>
5210Date:   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
5220commit 66740e8000ea92b04da663a0d2ce890271d2af2f
5221Author: Emmanuele Bassi <ebassi@linux.intel.com>
5222Date:   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
5233commit cf4e05930a1243f9b58617a4a50833d5bab705b1
5234Author: Emmanuele Bassi <ebassi@linux.intel.com>
5235Date:   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
5247commit 79ad2b6a72bd91273e139e72af36d9b6db264001
5248Author: Emmanuele Bassi <ebassi@linux.intel.com>
5249Date:   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
5263commit 8a579838d54d2b6f552fd32d9772f6e04f178179
5264Author: Emmanuele Bassi <ebassi@linux.intel.com>
5265Date:   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
5279commit 55e4315aa5889185a055f3ab2d5b5d4c9cae4dc4
5280Author: Emmanuele Bassi <ebassi@linux.intel.com>
5281Date:   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
5293commit 25c6ebbb2c70af7f268036b10dcd8d4a965c34c3
5294Author: Emmanuele Bassi <ebassi@linux.intel.com>
5295Date:   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
5319commit 8736b53d7cc6fd2b53649c076ef09cb69f9b37d6
5320Author: Emmanuele Bassi <ebassi@linux.intel.com>
5321Date:   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
5332commit cf287db2048eae5eaa58a9cbffd42c703f345ff5
5333Author: Emmanuele Bassi <ebassi@linux.intel.com>
5334Date:   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
5344commit bddabf6d2ca100f4d91461129d4bb097c59ac666
5345Author: Emmanuele Bassi <ebassi@linux.intel.com>
5346Date:   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
5355commit e30856a54d5d1e012cd2de30e519a487fd0b4f46
5356Author: Emmanuele Bassi <ebassi@linux.intel.com>
5357Date:   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
5364commit 0f9cfd9911c21933b34c07a9616f79022bcc01e3
5365Author: Emmanuele Bassi <ebassi@linux.intel.com>
5366Date:   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
5376commit cf8a06f0186e44b3437b06c56c088e8dc465402b
5377Author: Emmanuele Bassi <ebassi@linux.intel.com>
5378Date:   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
5391commit 68b47e3ed479242a94f7a8d302a2900f7e28c840
5392Author: Emmanuele Bassi <ebassi@linux.intel.com>
5393Date:   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
5408commit b3a42c3b09e256732395f7c63c4a39956d32d3da
5409Author: Emmanuele Bassi <ebassi@linux.intel.com>
5410Date:   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
5422commit 130286979d04128b51fa8662aa13b6bbd1867ca2
5423Author: Emmanuele Bassi <ebassi@linux.intel.com>
5424Date:   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
5435commit 687c70dffa70a3256e9f734b090cb4a088e97bb1
5436Author: Emmanuele Bassi <ebassi@linux.intel.com>
5437Date:   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
5453commit 75f05646fa117b8096e033f9fad0ba9de1ee01ac
5454Author: Emmanuele Bassi <ebassi@linux.intel.com>
5455Date:   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
5466commit a056ae716442e07e50ebd07cbca030776a5b3c28
5467Author: Emmanuele Bassi <ebassi@linux.intel.com>
5468Date:   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
5478commit 9506510d1cf794ef530f6c4db45103efb60cca63
5479Author: Emmanuele Bassi <ebassi@linux.intel.com>
5480Date:   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
5501commit 1f87cac0695dc95be4ed0219752d454d9a285e50
5502Author: Emmanuele Bassi <ebassi@linux.intel.com>
5503Date:   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
5515commit d23dd9af6bf48c3c02f685505a5a34b477d4d2b3
5516Author: Emmanuele Bassi <ebassi@linux.intel.com>
5517Date:   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
5537commit d5331bfb5786b496cfcab925319711853db2f1d3
5538Author: Emmanuele Bassi <ebassi@linux.intel.com>
5539Date:   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
5548commit 157da20e86f88bf906f0b59bafbea171a2e5e678
5549Author: Emmanuele Bassi <ebassi@linux.intel.com>
5550Date:   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
5561commit ca16446319b6281cf63edf3b1b6d7d4f8d41e499
5562Author: Emmanuele Bassi <ebassi@linux.intel.com>
5563Date:   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
5571commit 3027d4327ae0c5d9bb7cc831f24d5ee5e8fb107f
5572Author: Emmanuele Bassi <ebassi@linux.intel.com>
5573Date:   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
5588commit d34f1aa775e8a66bd0e599b32c761869b319c639
5589Author: Emmanuele Bassi <ebassi@linux.intel.com>
5590Date:   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
5607commit 1ef40b882349820d5edb2f1ed8885c3386d2cdf7
5608Author: Neil Roberts <neil@linux.intel.com>
5609Date:   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
5619commit 08b8b2791f91770d1a6e7aff163167d003b0fad3
5620Author: Neil Roberts <neil@linux.intel.com>
5621Date:   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
5634commit 14a28620ae13ef041696e2e3747ec00738cfd2bd
5635Author: Neil Roberts <neil@linux.intel.com>
5636Date:   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
5658commit 4db89759a0aa91b353ac0bb41562addfff6d76c9
5659Author: Neil Roberts <neil@linux.intel.com>
5660Date:   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
5667commit 07ff8d26f8097a00757e6e3cfcd587bce188ae0d
5668Author: Neil Roberts <neil@linux.intel.com>
5669Date:   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
5677commit 8daff42b3bcc9d59d7c87801b3926d8ed7c105a4
5678Author: Neil Roberts <neil@linux.intel.com>
5679Date:   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
5689commit fa51ff25d3555ce938922d7bbd64acb12140a774
5690Author: Neil Roberts <neil@linux.intel.com>
5691Date:   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
5703commit ff1d9cf090aef74efa1ec04b8cd490a45b148ae4
5704Author: Neil Roberts <neil@linux.intel.com>
5705Date:   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
5717commit ce030a3fce362cf4238d361743aaf9027ceed95a
5718Author: Neil Roberts <neil@linux.intel.com>
5719Date:   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
5731commit c4adefffd34d91fdf72365a6d11641f3c9f751cc
5732Author: Neil Roberts <neil@linux.intel.com>
5733Date:   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
5748commit b78024bd2dbf39cb86a1c1458e477af9c9353d9e
5749Author: Neil Roberts <neil@linux.intel.com>
5750Date:   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
5766commit 36f18e5ac57e068c3987d5b705f68fcc6f18d472
5767Author: Neil Roberts <neil@linux.intel.com>
5768Date:   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
5815commit 3d373c7278c47b18576edc8c8a0074654ce4a60e
5816Author: Samuel Degrande <Samuel.Degrande@lifl.fr>
5817Date:   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
5828commit 12a9150f5b455e5700c745de4ad1ac5f2e43631f
5829Author: Emmanuele Bassi <ebassi@linux.intel.com>
5830Date:   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
5837commit ea662b9ecaf1dd956f0cdc79ce04880270bf99de
5838Author: Emmanuele Bassi <ebassi@linux.intel.com>
5839Date:   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
5852commit cdfd9eb212829df0408431673bedfbe6b566fefe
5853Author: Emmanuele Bassi <ebassi@linux.intel.com>
5854Date:   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
5861commit e019547e8c7d110332a9ba071737736a059f5b4b
5862Author: Emmanuele Bassi <ebassi@linux.intel.com>
5863Date:   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
5873commit 148145ea1ad24fb1ceca3229c4cae9c7c5755f75
5874Author: Emmanuele Bassi <ebassi@linux.intel.com>
5875Date:   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
5882commit b844653c649277eed63b6a85d29b84aab8abe641
5883Author: Neil Roberts <neil@linux.intel.com>
5884Date:   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
5895commit a01b4eefceb1d490d918eba1729c87354695d1ca
5896Author: Neil Roberts <neil@linux.intel.com>
5897Date:   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
5907commit ead43995364bb8865ca5bab15d1bfd295578fff4
5908Merge: 34b50934b a70ebe4f5
5909Author: Neil Roberts <neil@linux.intel.com>
5910Date:   Fri Jan 15 12:15:46 2010 +0000
5911
5912    Merge branch 'master' into more-texture-backends
5913
5914commit a70ebe4f52e192c11f8db6a4fa1f419a5b175ab3
5915Author: Neil Roberts <neil@linux.intel.com>
5916Date:   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
5930commit ba4622ff8bd1abde577fa26637fd1afec1b3abd6
5931Author: Emmanuele Bassi <ebassi@linux.intel.com>
5932Date:   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
5939commit 8247bdf4f9b940fe69165ae6556511fcc9ca3a5d
5940Author: Neil Roberts <neil@linux.intel.com>
5941Date:   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
5966commit c6ce9c338966188248c3c1ae7b10480205fe20bf
5967Author: Emmanuele Bassi <ebassi@linux.intel.com>
5968Date:   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
5980commit 4388509a1589dbac7aae0ebe5995ca0e06f7c70c
5981Author: Emmanuele Bassi <ebassi@linux.intel.com>
5982Date:   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
5996commit 6e82d11daf8b1d7259c26e6a0816392a71c726f3
5997Author: Emmanuele Bassi <ebassi@linux.intel.com>
5998Date:   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
6008commit ed735ae730ea2140ef4d1be9d1947dbdce8b1f28
6009Author: Emmanuele Bassi <ebassi@linux.intel.com>
6010Date:   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
6017commit a076e0e11d222ca17dbdbadb3aa2c762d32a5730
6018Author: Emmanuele Bassi <ebassi@linux.intel.com>
6019Date:   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
6030commit 948db40c875f8eb7032582a32515737be6587067
6031Author: Emmanuele Bassi <ebassi@linux.intel.com>
6032Date:   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
6047commit 5322546a4e2100bcec8aba651f8de7d849d67711
6048Author: Emmanuele Bassi <ebassi@linux.intel.com>
6049Date:   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
6056commit 18d96005ec4d1395d70d71f2bef6cc378f4afb43
6057Author: Damien Lespiau <damien.lespiau@intel.com>
6058Date:   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
6086commit 778e08e4e24822b0875e6aeaf168cb5cecfc8a7f
6087Author: Neil Roberts <neil@linux.intel.com>
6088Date:   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
6100commit bb8352ca95f18ca5582abb97e20e78f69300adde
6101Author: Neil Roberts <neil@linux.intel.com>
6102Date:   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
6124commit 1c6ffc8a238e5e7de429f35f7653695d91d9d26d
6125Author: Emmanuele Bassi <ebassi@linux.intel.com>
6126Date:   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
6142commit 8b950bdc87fae2626af8a96916b7f51fdea40a17
6143Author: Robert Bragg <robert@linux.intel.com>
6144Date:   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
6161commit bc8a80fee53c9eed17fab6d821846c1a0fa3460f
6162Author: Emmanuele Bassi <ebassi@linux.intel.com>
6163Date:   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
6173commit 5c14538c1406b1358a2747428c73fe0cf1198e94
6174Author: Emmanuele Bassi <ebassi@linux.intel.com>
6175Date:   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
6189commit 755cce33a729817aebe4cf5c08d97c31a327c863
6190Author: Robert Bragg <robert@linux.intel.com>
6191Date:   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
6212commit 4c1231c7fe545a7764d06754d7d6be0906686e0a
6213Author: Damien Lespiau <damien.lespiau@intel.com>
6214Date:   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
6228commit 8e9f56c41160452166be68202227b206a690472d
6229Author: Emmanuele Bassi <ebassi@linux.intel.com>
6230Date:   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
6243commit d9b91d61f5730e9ce29627f467c89070b78fb6b6
6244Author: Robert Bragg <robert@linux.intel.com>
6245Date:   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
6257commit 30b557c4653d15eeb1311b516ab1f4c0035a5e83
6258Author: Robert Bragg <robert@linux.intel.com>
6259Date:   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
6280commit 0b6515a1d53571fea13417d47e7bf0f4749321f8
6281Author: Robert Bragg <robert@linux.intel.com>
6282Date:   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
6299commit 9cb530d42e7860d1a44f441b97910fd3903480f1
6300Author: Robert Bragg <robert@linux.intel.com>
6301Date:   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
6319commit 00577558540db2c9f7bf24e870ff6231abb2b99d
6320Author: Robert Bragg <robert@linux.intel.com>
6321Date:   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
6366commit bd41db7c00fc54aa8077f53177ff33bd33a19c83
6367Author: Robert Bragg <robert@linux.intel.com>
6368Date:   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
6378commit 5157da9fc8340cebdd29989a4ea02ccf607d3c52
6379Author: Emmanuele Bassi <ebassi@linux.intel.com>
6380Date:   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
6406commit 9599adbd820db7526d77790d8b611a6b61cb2dc7
6407Author: Damien Lespiau <damien.lespiau@intel.com>
6408Date:   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
6421commit bf4818bd759f612a9cec62c2e072544d54cc104c
6422Author: Emmanuele Bassi <ebassi@linux.intel.com>
6423Date:   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
6437commit 821e622de671ad4e18a55e9dbd33aee004e822df
6438Author: Neil Roberts <neil@linux.intel.com>
6439Date:   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
6464commit 8b59573190907da97c2af5a5be2e563fc66f8d51
6465Author: Emmanuele Bassi <ebassi@linux.intel.com>
6466Date:   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
6476commit 58b5a46e0e6b263bd32808e4a9a46bbdd81eedfe
6477Author: Emmanuele Bassi <ebassi@linux.intel.com>
6478Date:   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
6489commit 793fec8138b478ba1f1ea419f9ef8bed4f453e77
6490Author: Emmanuele Bassi <ebassi@linux.intel.com>
6491Date:   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
6501commit 59105341bce12b2ec009ff953facbb7f7b10e85f
6502Author: Neil Roberts <neil@linux.intel.com>
6503Date:   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
6528commit 32b456fc8c4e8743c1b2c32164f7e9f67188a60e
6529Author: Neil Roberts <neil@linux.intel.com>
6530Date:   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
6540commit 64c1294cc26e034fbf8a9a05b4413f63b9cd882d
6541Author: Emmanuele Bassi <ebassi@linux.intel.com>
6542Date:   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
6557commit fa298b45b530c6b6821e73b011c3c7d226950ce0
6558Merge: 4207524e9 4adc2c2d8
6559Author: Emmanuele Bassi <ebassi@linux.intel.com>
6560Date:   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
6567commit 4207524e950efd3f1fa5334f6d0b9b374a0b3f93
6568Author: Emmanuele Bassi <ebassi@linux.intel.com>
6569Date:   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
6579commit 2aa9d7bdc78703fc9a6354d2e54f880fde96db39
6580Author: Emmanuele Bassi <ebassi@linux.intel.com>
6581Date:   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
6596commit 10963d1ae03920e202ccbd0107854f489117f89b
6597Author: Damien Lespiau <damien.lespiau@intel.com>
6598Date:   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
6611commit 5d5c7142f7fa2447e13bcb80a272b0d9dfc28f06
6612Author: Emmanuele Bassi <ebassi@linux.intel.com>
6613Date:   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
6624commit bf43cb6cdc84e646add7adc592487274331d4930
6625Author: Alejandro Piñeiro <apinheiro@igalia.com>
6626Date:   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
6646commit 4adc2c2d839c42eccc7187735ddcce061d25f14b
6647Author: Emmanuele Bassi <ebassi@linux.intel.com>
6648Date:   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
6661commit eb9029504124daf4c032f027c2f068ec25548f3f
6662Author: Halton Huo <halton.huo@sun.com>
6663Date:   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
6674commit b98d486fc99fd46626877be728961190dbf831dc
6675Author: Emmanuele Bassi <ebassi@linux.intel.com>
6676Date:   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
6685commit 0fb51658fdba886fd5d9cb53cfca6df13aa1f7a0
6686Author: Emmanuele Bassi <ebassi@linux.intel.com>
6687Date:   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
6700commit 1c69c61745ed510f0b6ab16cb963ca01994cb9fc
6701Author: Emmanuele Bassi <ebassi@linux.intel.com>
6702Date:   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
6719commit 5ae88f5777c5ed0663937f990350f145b254692c
6720Author: Emmanuele Bassi <ebassi@linux.intel.com>
6721Date:   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
6728commit 6d7e1e5434d3da27cf23a9c16f9990523eedba4e
6729Author: Emmanuele Bassi <ebassi@linux.intel.com>
6730Date:   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
6738commit 3355c2ab2518711d7ab79f3ffe1f4a8ce105af84
6739Author: Emmanuele Bassi <ebassi@linux.intel.com>
6740Date:   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
6747commit 8d40cb947031f90a7b8cf459720278c6a6fe295d
6748Author: Emmanuele Bassi <ebassi@linux.intel.com>
6749Date:   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
6761commit 3d350078a8aa6f1bdf38c12de62e2708c5369247
6762Merge: a09ac0b27 934eee17a
6763Author: Emmanuele Bassi <ebassi@linux.intel.com>
6764Date:   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
6779commit 934eee17ae34098773ff5876747061b5a1d1f1a5
6780Author: Emmanuele Bassi <ebassi@linux.intel.com>
6781Date:   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
6792commit 713c2952410e99e681825dac51da3e0b575ef2cf
6793Author: Emmanuele Bassi <ebassi@linux.intel.com>
6794Date:   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
6805commit b9c1de0ec7001ce6a6b62dbd8d1fd9ee15539093
6806Author: Emmanuele Bassi <ebassi@linux.intel.com>
6807Date:   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
6825commit c8c5e0ee39626d434c2d3e5486c6520eff17f519
6826Author: Emmanuele Bassi <ebassi@linux.intel.com>
6827Date:   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
6834commit a09ac0b27ccb4a9c08a4e42e00776bf627f0e163
6835Merge: b6bd8be6c 34913378f
6836Author: Emmanuele Bassi <ebassi@linux.intel.com>
6837Date:   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
6851commit b6bd8be6cb0fabf2ddf3eedadce68c8d3a60c3d9
6852Merge: 7b53aa751 c7e8ddb7a
6853Author: Emmanuele Bassi <ebassi@linux.intel.com>
6854Date:   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
6863commit c7e8ddb7a60dd76d5f62027383693575f30e2473
6864Author: Emmanuele Bassi <ebassi@linux.intel.com>
6865Date:   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
6878commit 1520ba6190165dc8902b622833efbccf23716751
6879Author: Emmanuele Bassi <ebassi@linux.intel.com>
6880Date:   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
6919commit 4a21425f4837798d01f4435b68582faf9029c61c
6920Author: Emmanuele Bassi <ebassi@linux.intel.com>
6921Date:   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
6934commit 2e6397c39132007e79f5f87743fe9378fd8d5387
6935Author: Emmanuele Bassi <ebassi@linux.intel.com>
6936Date:   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
6969commit 3c2e91aef586de5521aa9674b80d449cf96da0e1
6970Author: Emmanuele Bassi <ebassi@linux.intel.com>
6971Date:   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
6985commit f94a903d9ebdbc055010bb4a4c6fe7e76f418bd8
6986Author: Emmanuele Bassi <ebassi@linux.intel.com>
6987Date:   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
7030commit 999359d64ccfbdbcc952662c14fa47441d6a5225
7031Author: Emmanuele Bassi <ebassi@linux.intel.com>
7032Date:   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
7051commit d2ea7cd6a8a1eb4ff04f11cb53aa387458a8e128
7052Author: Emmanuele Bassi <ebassi@linux.intel.com>
7053Date:   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
7060commit 7b53aa7510adc60d3287740772ec97117ce78ab9
7061Merge: 60a6bff31 1374b5aac
7062Author: Emmanuele Bassi <ebassi@linux.intel.com>
7063Date:   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
7070commit 1374b5aac9398852cf3f3482fdf925b52aa31338
7071Author: Colin Walters <walters@verbum.org>
7072Date:   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
7095commit 60a6bff3136c21c5ff6d4c5bb6614716853620f0
7096Merge: dc47550bc c4f27b155
7097Author: Emmanuele Bassi <ebassi@linux.intel.com>
7098Date:   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
7105commit dc47550bc8eabc2c6e6e99364c1cb536a9adc973
7106Merge: 86ce92eec b33b6287a
7107Author: Emmanuele Bassi <ebassi@linux.intel.com>
7108Date:   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
7117commit 86ce92eec14aa1aaf7c9ab14a520b66690488213
7118Author: Emmanuele Bassi <ebassi@linux.intel.com>
7119Date:   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
7136commit 9242d6b934710ca4001e8dc2a0f1f4bc4a738a63
7137Author: Emmanuele Bassi <ebassi@linux.intel.com>
7138Date:   Wed Dec 9 18:10:52 2009 +0000
7139
7140    docs: Move RELEASING under docs/
7141
7142 RELEASING => doc/RELEASING | 0
7143 1 file changed, 0 insertions(+), 0 deletions(-)
7144
7145commit 1ffd2ccb87a570733647e655e5e608ee05661c74
7146Author: Emmanuele Bassi <ebassi@linux.intel.com>
7147Date:   Wed Dec 9 01:52:09 2009 +0000
7148
7149    stage: Deprecate default stage size macros
7150
7151    The macros for getting the size of the default stage are a relic of the
7152    past and they should be deprecated.
7153
7154 clutter/clutter-stage.h | 36 ++++++++++++++----------------------
7155 1 file changed, 14 insertions(+), 22 deletions(-)
7156
7157commit 34913378fb7aa84874bfda63648e9e0e02e40d8c
7158Author: Emmanuele Bassi <ebassi@linux.intel.com>
7159Date:   Wed Dec 9 17:17:33 2009 +0000
7160
7161    tests: Use accessor methods for :use-alpha
7162
7163    Instead of using g_object_set().
7164
7165 tests/interactive/test-paint-wrapper.c | 6 ++----
7166 1 file changed, 2 insertions(+), 4 deletions(-)
7167
7168commit 1208e47198ea981b644bca2ce9beab3b59f05d0b
7169Author: Emmanuele Bassi <ebassi@linux.intel.com>
7170Date:   Wed Dec 9 02:04:56 2009 +0000
7171
7172    stage: Add accessors for :use-alpha
7173
7174    Use real accessors for the :use-alpha property.
7175
7176 clutter/clutter-stage.c                    | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++--
7177 clutter/clutter-stage.h                    |  4 ++++
7178 doc/reference/clutter/clutter-sections.txt |  2 ++
7179 3 files changed, 57 insertions(+), 2 deletions(-)
7180
7181commit 3b075b6dc4197ed78f6386ee7e9a6e307839590f
7182Author: Emmanuele Bassi <ebassi@linux.intel.com>
7183Date:   Wed Dec 9 01:46:52 2009 +0000
7184
7185    tests: Allow setting the stage opacity in test-paint-wrapper
7186
7187    This allows testing the Stage:use-alpha property and the blending done
7188    by a compositor.
7189
7190 tests/interactive/test-paint-wrapper.c | 15 +++++++++++++++
7191 1 file changed, 15 insertions(+)
7192
7193commit 3a3c815286daa55761787a49d7a33c6eb8c3d74d
7194Author: Emmanuele Bassi <ebassi@linux.intel.com>
7195Date:   Wed Dec 9 01:46:09 2009 +0000
7196
7197    stage: Premultiply the stage color
7198
7199    In case we are using Stage:use-alpha then we need to premultiply the
7200    stage color to get the correct blending from the compositor.
7201
7202 clutter/clutter-stage.c | 1 +
7203 1 file changed, 1 insertion(+)
7204
7205commit e957e277b8a4893ce8c99e94402036d42a8b3748
7206Author: Emmanuele Bassi <ebassi@linux.intel.com>
7207Date:   Tue Dec 8 18:24:30 2009 +0000
7208
7209    x11: Do not manage a foreign window
7210
7211    If a Stage has been set to use a foreign Window then Clutter should not
7212    be managing it; calling XWithdrawWindow and XMapWindow should be
7213    reserved to the windows we manage ourselves.
7214
7215 clutter/x11/clutter-stage-x11.c | 23 ++++++++++++++---------
7216 1 file changed, 14 insertions(+), 9 deletions(-)
7217
7218commit 28cb2cdab588ac361544538d4bb70a3e9bf24c81
7219Author: Emmanuele Bassi <ebassi@linux.intel.com>
7220Date:   Mon Dec 7 19:00:55 2009 +0000
7221
7222    Remove clutter_set_default_text_direction()
7223
7224    Setting the default text direction programmatically is wrong: it is a
7225    value dependent on the locale or by the environment.
7226
7227 clutter/clutter-actor.c                    |  3 ++-
7228 clutter/clutter-main.c                     | 32 ++++++++++++++------------------
7229 clutter/clutter-main.h                     |  1 -
7230 doc/reference/clutter/clutter-sections.txt |  1 -
7231 4 files changed, 16 insertions(+), 21 deletions(-)
7232
7233commit 3b9575baf8d254b7ba8b5faf56b14fbc6c3fde74
7234Author: Emmanuele Bassi <ebassi@linux.intel.com>
7235Date:   Mon Dec 7 18:41:15 2009 +0000
7236
7237    Queue a relayout when the default text direction changes
7238
7239    We need a relayout cycle if the default direction for the text changes
7240    while the main loop is running.
7241
7242 clutter/clutter-main.c | 8 +++++++-
7243 1 file changed, 7 insertions(+), 1 deletion(-)
7244
7245commit 6a3f6a460e730b0067adfa1eac455246c8d6e8d8
7246Author: Emmanuele Bassi <ebassi@linux.intel.com>
7247Date:   Mon Dec 7 17:35:17 2009 +0000
7248
7249    stage: Composite the opacity with the alpha channel
7250
7251    The Stage's opacity should be composited with the alpha component of the
7252    Stage's background color.
7253
7254 clutter/clutter-stage.c | 20 +++++++++++---------
7255 1 file changed, 11 insertions(+), 9 deletions(-)
7256
7257commit c4f27b1556b65464fd1f53749d32db9adab97942
7258Author: Emmanuele Bassi <ebassi@gnome.org>
7259Date:   Wed Oct 7 16:41:25 2009 +0100
7260
7261    actor: Add a NO_LAYOUT flag for actors
7262
7263    Some actor implementation might avoid imposing any layout on their
7264    children. The Actor base class usually assumes some sort of layout
7265    management is in place, so it will queue relayouts when, for instance,
7266    an actor is shown or is hidden. If the parent of the actor does not
7267    impose any layout, though, showing or hiding one of its children will
7268    not affect the layout of the others.
7269
7270    An example of this kind of container is ClutterGroup.
7271
7272    By adding a new Actor flag, CLUTTER_ACTOR_NO_LAYOUT, and by making
7273    the Group actor set it on itself, the Actor base class can now decide
7274    whether or not to queue a relayout. The flag is not meant to be used
7275    by application code, and should only be set when implementing a new
7276    container.
7277
7278    http://bugzilla.openedhand.com/show_bug.cgi?id=1838
7279
7280 clutter/clutter-actor.c | 37 +++++++++++++++++++++++++++----------
7281 clutter/clutter-actor.h | 15 ++++++++++-----
7282 clutter/clutter-group.c |  6 ++++++
7283 3 files changed, 43 insertions(+), 15 deletions(-)
7284
7285commit 34b50934be581cde0ef2eba75f45aa36b1add14d
7286Author: Neil Roberts <neil@linux.intel.com>
7287Date:   Sat Dec 5 14:20:00 2009 +0000
7288
7289    cogl-material: Ensure mipmaps before doing anything else on a texture
7290
7291    When the texture is in the atlas, ensuring the mipmaps can effectively
7292    make it become a completely different texture so we should do this
7293    before getting the GL handle.
7294
7295 clutter/cogl/cogl/cogl-material.c | 19 +++++++++++--------
7296 1 file changed, 11 insertions(+), 8 deletions(-)
7297
7298commit 231cfffa1871806713928f7b4c599d904a813fb9
7299Author: Neil Roberts <neil@linux.intel.com>
7300Date:   Sat Dec 5 13:48:03 2009 +0000
7301
7302    cogl-atlas-texture: Remove textures from the atlas when mipmapping is required
7303
7304    Mipmaps don't work very well in the current atlas because there is not
7305    enough padding between the textures. If ensure_mipmaps is called it
7306    will now create a new texture and migrate the atlased texture to
7307    it. It will use the same blit mechanism as when migrating so it will
7308    try to use an FBO for a fast blit. However if this is not possible it
7309    will end up downloading the data for the entire atlas which is not
7310    ideal.
7311
7312 clutter/cogl/cogl/cogl-atlas-texture.c | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------
7313 1 file changed, 57 insertions(+), 9 deletions(-)
7314
7315commit 6cf5ee2cbdad4bb71a065bb7e49a534ca7ba78ac
7316Author: Neil Roberts <neil@linux.intel.com>
7317Date:   Sat Dec 5 13:24:01 2009 +0000
7318
7319    cogl-atlas-texture: Try to do texture blits using an FBO
7320
7321    When reorganizing the textures, we can avoid downloading the entire
7322    texture data if we bind the source texture in a framebuffer object and
7323    copy the destination using glCopyTexSubImage2D. This is also
7324    implemented using a much faster path in Mesa.
7325
7326    Currently it is calling the GL framebuffer API directly but ideally it
7327    would use the Cogl offscreen API. However there is no way to tell Cogl
7328    not to create a stencil renderbuffer which seems like a waste in this
7329    situation.
7330
7331    If FBOs are not available it will fallback to reading back the entire
7332    texture data as before.
7333
7334 clutter/cogl/cogl/cogl-atlas-texture.c | 198 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----------------------------
7335 1 file changed, 168 insertions(+), 30 deletions(-)
7336
7337commit c51a31a2fc3f0f087a44cbccf1726c40fa581746
7338Author: Neil Roberts <neil@linux.intel.com>
7339Date:   Fri Dec 4 19:43:39 2009 +0000
7340
7341    cogl-atlas: Add a debug option to visualize the atlas
7342
7343    This adds a 'dump-atlas-image' debug category. When enabled, CoglAtlas
7344    will use Cairo to create a png which visualizes the leaf rectangles of
7345    the atlas.
7346
7347 clutter/cogl/cogl/cogl-atlas.c | 76 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7348 clutter/cogl/cogl/cogl-debug.c |  3 ++-
7349 clutter/cogl/cogl/cogl-debug.h |  3 ++-
7350 3 files changed, 80 insertions(+), 2 deletions(-)
7351
7352commit 032d6e8aa00cd04a8084303a4942760ef5651a0c
7353Author: Neil Roberts <neil@linux.intel.com>
7354Date:   Fri Dec 4 18:55:53 2009 +0000
7355
7356    cogl-texture-atlas: Add some debugging notes
7357
7358    This adds an 'atlas' category to the COGL_DEBUG environment
7359    variable. When enabled Cogl will display messages when textures are
7360    added to the atlas and when the atlas is reorganized.
7361
7362 clutter/cogl/cogl/cogl-atlas-texture.c | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++------
7363 clutter/cogl/cogl/cogl-debug.c         |  3 ++-
7364 clutter/cogl/cogl/cogl-debug.h         |  3 ++-
7365 3 files changed, 60 insertions(+), 8 deletions(-)
7366
7367commit bc845e26d9cab75ecba69d12a937cf7d42bcaf71
7368Author: Neil Roberts <neil@linux.intel.com>
7369Date:   Fri Dec 4 18:24:15 2009 +0000
7370
7371    cogl-atlas-texture: Support reorganizing the atlas when it is full
7372
7373    When space can't be found in the atlas for a new texture it will now
7374    try to reorganize the atlas to make space. A new CoglAtlas is created
7375    and all of the textures are readded in decreasing size order. If the
7376    textures still don't fit then the size of the atlas is doubled until
7377    either we find a space or we reach the texture size limits. If we
7378    successfully find an organization that fits then all of the textures
7379    will be migrated to a new texture. This involves copying the texture
7380    data into CPU memory and then uploading it again. Potentially it could
7381    eventually use a PBO or an FBO to transfer the image without going
7382    through the CPU.
7383
7384    The algorithm for laying out the textures works a lot better if the
7385    rectangles are added in order so we might eventually want some API for
7386    creating multiple textures in one go to avoid reorganizing the atlas
7387    as far as possible.
7388
7389 clutter/cogl/cogl/cogl-atlas-texture.c | 315 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------
7390 1 file changed, 280 insertions(+), 35 deletions(-)
7391
7392commit 1fb32167ec37f7b3bc8193258faa5963fe49569e
7393Author: Neil Roberts <neil@linux.intel.com>
7394Date:   Fri Dec 4 13:06:32 2009 +0000
7395
7396    cogl: Add an atlased texture backend
7397
7398    This adds a CoglAtlas type which is a data structure that keeps track
7399    of unused sub rectangles of a larger rectangle. There is a new atlased
7400    texture backend which uses this to put multiple textures into a single
7401    larger texture.
7402
7403    Currently the atlas is always sized 256x256 and the textures are never
7404    moved once they are put in. Eventually it needs to be able to
7405    reorganise the atlas and grow it if necessary. It also needs to
7406    migrate the textures out of the atlas if mipmaps are required.
7407
7408 clutter/cogl/cogl/Makefile.am                  |   4 ++
7409 clutter/cogl/cogl/cogl-atlas-texture-private.h |  64 +++++++++++++++++++++++
7410 clutter/cogl/cogl/cogl-atlas-texture.c         | 488 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7411 clutter/cogl/cogl/cogl-atlas.c                 | 520 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7412 clutter/cogl/cogl/cogl-atlas.h                 |  76 +++++++++++++++++++++++++++
7413 clutter/cogl/cogl/cogl-context.c               |  14 +++++
7414 clutter/cogl/cogl/cogl-context.h               |   8 +++
7415 clutter/cogl/cogl/cogl-texture.c               |  30 ++++++-----
7416 clutter/cogl/cogl/cogl-types.h                 |   3 +-
7417 9 files changed, 1194 insertions(+), 13 deletions(-)
7418
7419commit b33b6287a1d3d3b07bbb845e79dfc4e2162c5c77
7420Author: Emmanuele Bassi <ebassi@linux.intel.com>
7421Date:   Fri Dec 4 17:39:04 2009 +0000
7422
7423    tests: Clean up the BoxLayout interactive test
7424
7425 tests/interactive/test-box-layout.c | 27 ++++++++++++++++-----------
7426 1 file changed, 16 insertions(+), 11 deletions(-)
7427
7428commit cf62b8fe4ab0d7cca360077843a9e213540e2c4d
7429Author: Emmanuele Bassi <ebassi@linux.intel.com>
7430Date:   Fri Dec 4 17:38:26 2009 +0000
7431
7432    actor: Add debugging notes for size cache
7433
7434    Add a note for cache hits, and another one for cache misses.
7435
7436 clutter/clutter-actor.c | 3 +++
7437 1 file changed, 3 insertions(+)
7438
7439commit 9ccdf2eb02a0d0155e27d5f9270bca6b72c08359
7440Author: Emmanuele Bassi <ebassi@linux.intel.com>
7441Date:   Fri Dec 4 16:54:22 2009 +0000
7442
7443    box: Add relative packing methods
7444
7445    ClutterBox should provide some convenience functions to pack a new child
7446    at a given position, either an absolute index or relative to a sibling.
7447
7448 clutter/clutter-box.c                      | 221 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------
7449 clutter/clutter-box.h                      |  16 ++++++++++++++
7450 doc/reference/clutter/clutter-sections.txt |   3 +++
7451 tests/interactive/test-bin-layout.c        |   1 -
7452 4 files changed, 203 insertions(+), 38 deletions(-)
7453
7454commit c9b7efec96636e9368a8dfb76440d1b89c618c99
7455Author: Johan Bilien <jobi@via.ecp.fr>
7456Date:   Wed Nov 11 20:40:57 2009 -0500
7457
7458    Add a cache of size requests
7459
7460    clutter_actor_get_preferred_width/height currently caches only one size
7461    requests, for a given height / width.
7462
7463    It's common for a layout manager to call get_preferred_width with 2
7464    different heights during the same allocation cycle. Typically once in
7465    the size request, once in the allocation. If
7466    clutter_actor_get_preferred_width is called
7467    alternatively with 2 different for_height, the cache is totally
7468    inefficient, and we end up always querying the actor size even
7469    when the actor does not need a re-allocation.
7470
7471    http://bugzilla.openedhand.com/show_bug.cgi?id=1876
7472
7473    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
7474
7475 clutter/clutter-actor.c | 137 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------
7476 1 file changed, 117 insertions(+), 20 deletions(-)
7477
7478commit 18860eb16f36eb62b94aee353b4e2ace76e2fffa
7479Author: Bastian Winkler <buz@netbuz.org>
7480Date:   Thu Dec 3 15:38:05 2009 +0000
7481
7482    flow-layout: Use the natural size
7483
7484    Fix a copy-and-paste thinko where the cell size was computed using the
7485    minimum size instead of the natural size. For actors with a minimum size
7486    of zero, like Textures, this implied always a zero allocation.
7487
7488    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
7489
7490 clutter/clutter-flow-layout.c | 4 ++--
7491 1 file changed, 2 insertions(+), 2 deletions(-)
7492
7493commit 6c3e1989e47b17f826d25704b2433ffecc6e83b9
7494Author: Neil Roberts <neil@linux.intel.com>
7495Date:   Thu Dec 3 14:46:20 2009 +0000
7496
7497    cogl-sub-texture: Fix the height of sub textures
7498
7499    The code which is used to get the texture height was accidentally
7500    using the width due to a cut-and-paste fail.
7501
7502 clutter/cogl/cogl/cogl-sub-texture.c | 6 +++---
7503 1 file changed, 3 insertions(+), 3 deletions(-)
7504
7505commit 97f8eed11917fa0d545dcb08d20841f6b501c878
7506Author: Neil Roberts <neil@linux.intel.com>
7507Date:   Fri Nov 27 18:45:36 2009 +0000
7508
7509    cogl: Add a CoglTexture2D backend
7510
7511    This is an optimised version of CoglTexture2DSliced that always deals
7512    with a single texture and always uses the GL_TEXTURE_2D
7513    target. cogl_texture_new_from_bitmap now tries to use this backend
7514    first. If it can't create a texture with that size then it falls back
7515    the sliced backend.
7516
7517    cogl_texture_upload_data_prepare has been split into two functions
7518    because the sliced backend needs to know the real internal format
7519    before the conversion is performed. Otherwise the converted bitmap
7520    will be wasted if the backend can't support the size.
7521
7522 clutter/cogl/cogl/Makefile.am               |   2 +
7523 clutter/cogl/cogl/cogl-texture-2d-private.h |  69 +++++++++++++++++++++
7524 clutter/cogl/cogl/cogl-texture-2d.c         | 623 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7525 clutter/cogl/cogl/cogl-texture-private.h    |   9 +++
7526 clutter/cogl/cogl/cogl-texture.c            |  75 ++++++++++++++++-------
7527 5 files changed, 755 insertions(+), 23 deletions(-)
7528
7529commit f3df76d5129ba0ed7014c6aa52be7bee67c3f7aa
7530Author: Neil Roberts <neil@linux.intel.com>
7531Date:   Mon Nov 30 12:15:05 2009 +0000
7532
7533    cogl: Add _cogl_texture_driver_upload_to_gl
7534
7535    This provides a way to upload the entire data for a texture without
7536    having to first call glTexImage and then glTexSubImage. This should be
7537    faster especially with indirect rendering where it would needlessy
7538    send the data for the texture twice.
7539
7540 clutter/cogl/cogl/cogl-texture-driver.h             | 14 ++++++++++++++
7541 clutter/cogl/cogl/driver/gl/cogl-texture-driver.c   | 26 ++++++++++++++++++++++++++
7542 clutter/cogl/cogl/driver/gles/cogl-texture-driver.c | 47 +++++++++++++++++++++++++++++++++++++++++++++++
7543 3 files changed, 87 insertions(+)
7544
7545commit 19a19579ba72ea9ca4f6d406c035c3ad074fd442
7546Author: Neil Roberts <neil@linux.intel.com>
7547Date:   Fri Nov 27 16:59:51 2009 +0000
7548
7549    cogl: Move some of the texture_2d_sliced_new_* functions into cogl-texture
7550
7551    new_from_data and new_from_file can be implemented in terms of
7552    new_from_bitmap so it makes sense to move these to cogl-texture rather
7553    than having to implement them in every texture backend.
7554
7555 clutter/cogl/cogl/cogl-texture-2d-sliced-private.h | 16 ----------------
7556 clutter/cogl/cogl/cogl-texture-2d-sliced.c         | 84 ------------------------------------------------------------------------------------
7557 clutter/cogl/cogl/cogl-texture.c                   | 44 +++++++++++++++++++++++++++++++++-----------
7558 3 files changed, 33 insertions(+), 111 deletions(-)
7559
7560commit 27c4eb483d0ce219d80000613357c20fc25724e3
7561Author: Neil Roberts <neil@linux.intel.com>
7562Date:   Fri Nov 27 16:40:31 2009 +0000
7563
7564    cogl: Add a conformance test for sub textures
7565
7566    This tests creating a sub texture from a larger texture using various
7567    different texture coordinates. It also tries to read back the texture
7568    data using cogl_texture_get_data.
7569
7570 tests/conform/Makefile.am             |   1 +
7571 tests/conform/test-cogl-sub-texture.c | 388 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7572 tests/conform/test-conform-main.c     |   1 +
7573 3 files changed, 390 insertions(+)
7574
7575commit 9752493272b39e6a8aeb1b8d667667d53de439fb
7576Author: Neil Roberts <neil@linux.intel.com>
7577Date:   Fri Nov 27 16:39:16 2009 +0000
7578
7579    cogl: Add a sub texture backend
7580
7581    This adds a new texture backend which represents a sub texture of a
7582    larger texture. The texture is created with a reference to the full
7583    texture and a set of coordinates describing the region. The backend
7584    simply defers to the full texture for all operations and maps the
7585    coordinates to the other range. You can also use coordinates outside
7586    the range [0,1] to create a repeated version of the full texture.
7587
7588    A new public API function called cogl_texture_new_from_sub_texture is
7589    available to create the sub texture.
7590
7591 clutter/cogl/cogl/Makefile.am                |   2 +
7592 clutter/cogl/cogl/cogl-sub-texture-private.h |  56 +++++++++++++++
7593 clutter/cogl/cogl/cogl-sub-texture.c         | 699 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7594 clutter/cogl/cogl/cogl-texture.c             |  15 +++-
7595 clutter/cogl/cogl/cogl-texture.h             |  27 ++++++++
7596 doc/reference/cogl/cogl-sections.txt         |   1 +
7597 6 files changed, 798 insertions(+), 2 deletions(-)
7598
7599commit 070a91f31176eb304031fc6dc2c374ef25f92a92
7600Author: Neil Roberts <neil@linux.intel.com>
7601Date:   Wed Dec 2 17:17:24 2009 +0000
7602
7603    cogl: Make the callback for foreach_sub_texture_in_region use const
7604
7605    The CoglTextureSliceCallback function pointer now takes const pointers
7606    for the texture coordinates. This makes it clearer that the callback
7607    should not modify the array and therefore the backend can use the same
7608    array for both sets of coords.
7609
7610 clutter/cogl/cogl/cogl-journal-private.h |  2 +-
7611 clutter/cogl/cogl/cogl-journal.c         |  2 +-
7612 clutter/cogl/cogl/cogl-primitives.c      | 14 +++++++-------
7613 clutter/cogl/cogl/cogl-texture-private.h |  4 ++--
7614 4 files changed, 11 insertions(+), 11 deletions(-)
7615
7616commit 1a1de0e278de7c06b528ae74a31580dfd576d041
7617Author: Neil Roberts <neil@linux.intel.com>
7618Date:   Wed Dec 2 13:41:49 2009 +0000
7619
7620    cogl: Add a texture utility function for manually repeating
7621
7622    Given a region of texture coordinates this utility invokes a callback
7623    enough times to cover the region with a subregion that spans the
7624    texture at most once. Eg, if called with tx1 and tx2 as 0.5 and 3.0 it
7625    it would invoke the callback with:
7626
7627    0.5,1.0  1.0,2.0  2.0,3.0
7628
7629    Manual repeating is needed by all texture backends regardless of
7630    whether they can support hardware repeating because when Cogl calls
7631    the foreach_sub_texture_in_region method then it sets the wrap mode to
7632    GL_CLAMP_TO_EDGE and no hardware repeating is possible.
7633
7634 clutter/cogl/cogl/cogl-texture-private.h |  14 ++++++++++++++
7635 clutter/cogl/cogl/cogl-texture.c         | 102 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7636 2 files changed, 116 insertions(+)
7637
7638commit 5fcb29c91695bdbb2aec418ba1d2956ff23612a0
7639Author: Neil Roberts <neil@linux.intel.com>
7640Date:   Fri Nov 27 15:47:22 2009 +0000
7641
7642    cogl-primitives: Check for repeating after the coordinate transform
7643
7644    In _cogl_multitexture_quad_single_primitive we use a wrap mode of
7645    GL_CLAMP_TO_EDGE if the texture coordinates are all in the range [0,1]
7646    or GL_REPEAT otherwise. This is to avoid pulling in pixels from either
7647    side when using GL_LINEAR filter mode and rendering the entire
7648    texture. Previously it was checking using the unconverted texture
7649    coordinates. This is ok unless the texture backend is radically
7650    transforming the texture coordinates, such as in the sub texture
7651    backend where the coordinates may map to something completely
7652    different. We now check whether the coordinates are in range after
7653    converting them.
7654
7655 clutter/cogl/cogl/cogl-primitives.c | 87 +++++++++++++++++++++++++++++++++++++--------------------------------------------------
7656 1 file changed, 37 insertions(+), 50 deletions(-)
7657
7658commit 812d4d25bb28d8512c101701cf7cd06dc2dd95eb
7659Author: Neil Roberts <neil@linux.intel.com>
7660Date:   Thu Nov 26 18:58:17 2009 +0000
7661
7662    cogl: Move all of the fields from CoglTexture to CoglTexture2DSliced
7663
7664    Most of the fields that were previously in CoglTexture are specific to
7665    the implementation of CoglTexture2DSliced so they should be placed
7666    there instead. For example, the 'mipmaps_dirty' flag is an
7667    implementation detail of the ensure_mipmaps function so it doesn't
7668    make sense to force all texture backends to have this function.
7669
7670    Other fields such as width, height, gl_format and format may make
7671    sense for all textures but I've added them as virtual functions
7672    instead. This may make more sense for a sub-texture backend for
7673    example where it can calculate these based on the full texture.
7674
7675 clutter/cogl/cogl/cogl-texture-2d-sliced-private.h |  25 +++++++++++++++++-----
7676 clutter/cogl/cogl/cogl-texture-2d-sliced.c         | 204 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------------
7677 clutter/cogl/cogl/cogl-texture-private.h           |  21 ++++++-------------
7678 clutter/cogl/cogl/cogl-texture.c                   |  19 +++++++----------
7679 4 files changed, 149 insertions(+), 120 deletions(-)
7680
7681commit 071dea2fbc307eca949f5f44c4ccb6c4dd73f789
7682Author: Neil Roberts <neil@linux.intel.com>
7683Date:   Thu Nov 26 17:32:52 2009 +0000
7684
7685    cogl: Move data only used for upload out of CoglTexture
7686
7687    The CoglTexture struct previously contained some fields which are only
7688    used to upload data such as the CoglBitmap and the source GL
7689    format. These are now moved to a separate CoglTextureUploadData struct
7690    which only exists for the duration of one of the cogl_texture_*_new
7691    functions. In cogl-texture there are utility functions which operate
7692    on this new struct rather than on CoglTexture directly.
7693
7694    Some of the fields that were previously stored in the CoglBitmap
7695    struct are now copied to the CoglTexture such as the width, height,
7696    format and internal GL format.
7697
7698    The rowstride was previously stored in CoglTexture and this was
7699    publicly accessible with the cogl_texture_get_rowstride
7700    function. However this doesn't seem to be a useful function because
7701    there is no need to use the same rowstride again when uploading or
7702    downloading new data. Instead cogl_texture_get_rowstride now just
7703    calculates a suitable rowstride from the format and width of the
7704    texture.
7705
7706 clutter/cogl/cogl/cogl-texture-2d-sliced.c          | 344 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------------------------------------
7707 clutter/cogl/cogl/cogl-texture-driver.h             |   6 ++--
7708 clutter/cogl/cogl/cogl-texture-private.h            |  51 +++++++++++++++++----------
7709 clutter/cogl/cogl/cogl-texture.c                    |  93 +++++++++++++++++++++++++------------------------
7710 clutter/cogl/cogl/driver/gl/cogl-texture-driver.c   |  14 ++++----
7711 clutter/cogl/cogl/driver/gles/cogl-texture-driver.c |  16 ++++-----
7712 6 files changed, 262 insertions(+), 262 deletions(-)
7713
7714commit 7f58c14dcdbb5a6a24f17aacb784702dbaa468fb
7715Author: Neil Roberts <neil@linux.intel.com>
7716Date:   Wed Dec 2 21:54:22 2009 +0000
7717
7718    cogl: Use #ifdef GL around GL_TEXTURE_RECTANGLE_ARB
7719
7720    Commit 558b17ee1e added support for rectangle textures to the
7721    framebuffer code. Under GLES there is no GL_TEXTURE_RECTANGLE_ARB
7722    definition so this was breaking the build. The rest of Cogl uses
7723    ifdef's around that constant so we should do the same here.
7724
7725 clutter/cogl/cogl/cogl-framebuffer.c | 7 +++++--
7726 1 file changed, 5 insertions(+), 2 deletions(-)
7727
7728commit 59d84f7806e16b3d1fea5eed44a5d06d9772be23
7729Author: Emmanuele Bassi <ebassi@linux.intel.com>
7730Date:   Wed Dec 2 16:03:55 2009 +0000
7731
7732    build: Fix CPP and LD flags
7733
7734    • The debug flags are pre-processor ones, so they should be listed
7735      inside AM_CPPFLAGS.
7736
7737    • Clutter's publicly exported symbols match the following regular
7738      expression:
7739
7740        ^(clutter|cogl|json)_*
7741
7742      The old one also listed "pango" as a possible prefix, but the
7743      Pango API is now under the Cogl namespace.
7744
7745 clutter/Makefile.am | 5 +++--
7746 1 file changed, 3 insertions(+), 2 deletions(-)
7747
7748commit 17e3b526d569b6c8f33cd050acce107d5f1b057b
7749Author: Emmanuele Bassi <ebassi@linux.intel.com>
7750Date:   Wed Dec 2 14:15:43 2009 +0000
7751
7752    docs: Document Clutter's threading model
7753
7754    Be explicit on how to deal with threads and Clutter.
7755
7756 clutter/clutter-main.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7757 1 file changed, 56 insertions(+)
7758
7759commit fc7bbf1abf732ba37fee8f12b5ed36e0b9a5fb95
7760Author: Emmanuele Bassi <ebassi@linux.intel.com>
7761Date:   Wed Dec 2 14:15:19 2009 +0000
7762
7763    docs: Fix docbook syntax
7764
7765    The <variablename> tag is really called <varname> in DocBook.
7766
7767 clutter/clutter-layout-manager.c | 9 ++++-----
7768 1 file changed, 4 insertions(+), 5 deletions(-)
7769
7770commit 3c08c411d2ccd1523439c4f35427d266d1ef67dd
7771Author: Emmanuele Bassi <ebassi@linux.intel.com>
7772Date:   Wed Dec 2 11:38:04 2009 +0000
7773
7774    docs: Annotate StageManager
7775
7776    The ClutterStageManager instance structure is private, so we need a
7777    "floating" annotation.
7778
7779 clutter/clutter-stage-manager.h | 8 ++++++++
7780 1 file changed, 8 insertions(+)
7781
7782commit 7a33b706a40719e1d123ccfa71c3d5c5d864fdea
7783Author: Emmanuele Bassi <ebassi@linux.intel.com>
7784Date:   Wed Dec 2 11:37:13 2009 +0000
7785
7786    Remove a gtk-doc annotation
7787
7788    The Mesa matrix code still has a comment that looks like a gtk-doc
7789    annotation.
7790
7791 clutter/cogl/cogl/cogl-matrix-mesa.c | 2 +-
7792 1 file changed, 1 insertion(+), 1 deletion(-)
7793
7794commit 0270313121e9a02cb1f59de134ed724e6f8c0ae6
7795Author: Emmanuele Bassi <ebassi@linux.intel.com>
7796Date:   Wed Dec 2 11:36:25 2009 +0000
7797
7798    layout: Add padding to LayoutMeta
7799
7800    Add some padding to the LayoutMeta and LayoutMetaClass structures.
7801
7802 clutter/clutter-layout-meta.h | 18 +++++++++++++++++-
7803 1 file changed, 17 insertions(+), 1 deletion(-)
7804
7805commit 02398c0cf13f8326a8fadf0536ce1ac1994901ee
7806Author: Emmanuele Bassi <ebassi@linux.intel.com>
7807Date:   Tue Dec 1 18:16:48 2009 +0000
7808
7809    Remove unused variable 'lang'
7810
7811    Fix a compiler warning.
7812
7813 clutter/clutter-main.c | 1 -
7814 1 file changed, 1 deletion(-)
7815
7816commit cdba8cc220a8ef026ade2dfaa542ff94c92cd5ef
7817Author: Rob Bradford <rob@linux.intel.com>
7818Date:   Tue Dec 1 17:44:42 2009 +0000
7819
7820    flow-layout: Include the first line when calculating number of lines
7821
7822    This ensures that the preferred height / width height takes into consideration
7823    the correct amount of padding
7824
7825 clutter/clutter-flow-layout.c | 6 ++++++
7826 1 file changed, 6 insertions(+)
7827
7828commit c564303601f6cabdc3314070d225f74a3c6df174
7829Author: Rob Bradford <rob@linux.intel.com>
7830Date:   Tue Dec 1 17:11:08 2009 +0000
7831
7832    flow-layout: Respect row-spacing/col-spacine in horizontal/vertical flows
7833
7834    We need to add the row-spacing value when calculating the y position for lines
7835    of actors in horizontal flowing layouts.
7836
7837    Similarly we need to add the col-spacing value when calculating the x posution
7838    for actors in vertical flowing layouts.
7839
7840 clutter/clutter-flow-layout.c | 6 ++++++
7841 1 file changed, 6 insertions(+)
7842
7843commit e6ca2d891a2c48c91db45a0c2f5ce84d5e6621e1
7844Author: Emmanuele Bassi <ebassi@linux.intel.com>
7845Date:   Tue Dec 1 16:18:39 2009 +0000
7846
7847    glx: Always request an ARGB visual
7848
7849    When requesting the GLXFBConfig for creating the GLX context, we should
7850    always request one that links to an ARGB visual instead of a plain RGB
7851    one.
7852
7853    By using an ARGB visual we allow the ClutterStage:use-alpha property to
7854    work as intended when running Clutter under a compositing manager.
7855
7856    The default behaviour of requesting an ARGB visual can be disabled by
7857    using the:
7858
7859      CLUTTER_DISABLE_ARGB_VISUAL
7860
7861    Environment variable.
7862
7863 clutter/glx/clutter-backend-glx.c | 128 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------
7864 clutter/glx/clutter-backend-glx.h |   5 +++--
7865 clutter/glx/clutter-glx.h         |   5 -----
7866 clutter/glx/clutter-stage-glx.c   |  13 +++----------
7867 clutter/x11/clutter-backend-x11.c |  15 ++++++++++++++-
7868 clutter/x11/clutter-x11.h         |   2 ++
7869 6 files changed, 125 insertions(+), 43 deletions(-)
7870
7871commit 2f7ff4d3e363a0568e4051ab67c0df6f745d06d2
7872Author: Emmanuele Bassi <ebassi@linux.intel.com>
7873Date:   Tue Dec 1 16:16:18 2009 +0000
7874
7875    stage: Add :use-alpha property
7876
7877    The ClutterStage:use-alpha property is used to let a stage know that it
7878    should honour the alpha component of the ClutterStage:color property.
7879
7880    If :use-alpha is set to FALSE the stage always uses the full opacity
7881    when clearing itself before a paint(); otherwise, the alpha value is
7882    used.
7883
7884 clutter/clutter-stage.c | 38 +++++++++++++++++++++++++++++++++++---
7885 1 file changed, 35 insertions(+), 3 deletions(-)
7886
7887commit 1d87ecc6a1be73e7d72c8c5ecb2b8268d5a0cd5e
7888Author: Emmanuele Bassi <ebassi@linux.intel.com>
7889Date:   Tue Dec 1 16:22:45 2009 +0000
7890
7891    materials: Get the right blend function for alpha
7892
7893    The correct blend function for the alpha channel is:
7894
7895      GL_ONE, GL_ONE_MINUS_SRC_ALPHA
7896
7897    As per bug 1406. This fix was dropped when the switch to premultiplied
7898    alpha was merged.
7899
7900 clutter/cogl/cogl/cogl-material.c | 2 +-
7901 1 file changed, 1 insertion(+), 1 deletion(-)
7902
7903commit b43e804c078578e54b0ef9680a5d7b4bf53cafe8
7904Author: Emmanuele Bassi <ebassi@linux.intel.com>
7905Date:   Tue Dec 1 16:06:57 2009 +0000
7906
7907    actor: Fix a pre-condition check in set_text_direction()
7908
7909    The check is failing because the condition should be:
7910
7911      text_dir != CLUTTER_TEXT_DIRECTION_DEFAULT
7912
7913 clutter/clutter-actor.c | 2 +-
7914 1 file changed, 1 insertion(+), 1 deletion(-)
7915
7916commit 3e034cda58776a0fbc6812cd8d859ad58b5cab54
7917Author: Emmanuele Bassi <ebassi@linux.intel.com>
7918Date:   Tue Dec 1 15:17:49 2009 +0000
7919
7920    build: More cleanups for the configure summary
7921
7922    Document each section, and add some more items to the summary like what
7923    JSON-GLib are we using, and which version of the GLES API is COGL
7924    wrapping.
7925
7926 configure.ac | 27 ++++++++++++++++++++++-----
7927 1 file changed, 22 insertions(+), 5 deletions(-)
7928
7929commit e3b409529e9000cff6aabac8efdaccc0eaecf83f
7930Author: Emmanuele Bassi <ebassi@linux.intel.com>
7931Date:   Tue Dec 1 15:17:16 2009 +0000
7932
7933    build: Require a stable JSON-GLib version
7934
7935    The 0.7 version is the development cycle for JSON-GLib 0.8.
7936
7937 configure.ac | 8 ++++----
7938 1 file changed, 4 insertions(+), 4 deletions(-)
7939
7940commit 1c47638db4ac741f4bae9ede860d16b4e1693a36
7941Author: Emmanuele Bassi <ebassi@linux.intel.com>
7942Date:   Tue Dec 1 14:59:44 2009 +0000
7943
7944    docs: Add missing symbols to clutter-sections.txt
7945
7946 doc/reference/clutter/clutter-sections.txt | 8 ++++++++
7947 1 file changed, 8 insertions(+)
7948
7949commit 586750751a60b76e2f398be28d596009b6587c52
7950Merge: c2332a5d2 6e99c1aef
7951Author: Emmanuele Bassi <ebassi@linux.intel.com>
7952Date:   Tue Dec 1 14:55:19 2009 +0000
7953
7954    Merge branch 'text-direction'
7955
7956    * text-direction:
7957      docs: Add text-direction accessors
7958      Set the default language on the Pango context
7959      actor: Set text direction on parenting
7960      tests: Display the index inside text-box-layout
7961      box-layout: Honour :text-direction
7962      text: Dirty layout cache on text direction changes
7963      actor: Add :text-direction property
7964      Use the newly added ClutterTextDirection enumeration
7965      Add ClutterTextDirection enumeration
7966
7967commit 6e99c1aefe8f76cb3004a8cc89ae6f8b95d1f597
7968Author: Emmanuele Bassi <ebassi@linux.intel.com>
7969Date:   Tue Dec 1 14:55:01 2009 +0000
7970
7971    docs: Add text-direction accessors
7972
7973 doc/reference/clutter/clutter-sections.txt | 4 ++++
7974 1 file changed, 4 insertions(+)
7975
7976commit c2332a5d26d854dcb4223088904305988b35a906
7977Author: Bastian Winkler <buz@netbuz.org>
7978Date:   Tue Dec 1 12:31:07 2009 +0000
7979
7980    build: Fix the SUBDIRS ordering
7981
7982    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
7983
7984 Makefile.am | 4 +---
7985 1 file changed, 1 insertion(+), 3 deletions(-)
7986
7987commit 220a8fbfda5bda38e6c7689176fd876c57074ab5
7988Author: Emmanuele Bassi <ebassi@linux.intel.com>
7989Date:   Tue Dec 1 10:16:25 2009 +0000
7990
7991    docs: Move documentation under doc/
7992
7993    Clean up the root directory of the project and try to keep the
7994    documentation all together.
7995
7996 Makefile.am                              | 3 ---
7997 CODING_STYLE => doc/CODING_STYLE         | 0
7998 HACKING => doc/HACKING                   | 0
7999 HACKING.backends => doc/HACKING.backends | 0
8000 doc/Makefile.am                          | 5 +++++
8001 5 files changed, 5 insertions(+), 3 deletions(-)
8002
8003commit 348f5bfec8b8c0c682384001ac39b4e656b9c526
8004Author: Emmanuele Bassi <ebassi@linux.intel.com>
8005Date:   Tue Dec 1 10:11:33 2009 +0000
8006
8007    cookbook: Clean up the text
8008
8009    • Remove the empty sections.
8010
8011    • Add the description for the "overriding the paint sequence" recipe.
8012
8013 doc/cookbook/clutter-cookbook.xml.in | 124 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------------
8014 1 file changed, 86 insertions(+), 38 deletions(-)
8015
8016commit 52db14b78d848f0f876d4721895ccc2c83e06aba
8017Author: Emmanuele Bassi <ebassi@linux.intel.com>
8018Date:   Mon Nov 30 21:51:46 2009 +0000
8019
8020    docs: Fix recursion into doc/ directory
8021
8022    We should always recurse into the doc/ directory; whether we should then
8023    recurse into reference/, cookbook/ and manual/ is a matter of specific
8024    configure-time flags.
8025
8026 Makefile.am     | 6 +-----
8027 doc/Makefile.am | 6 +++++-
8028 2 files changed, 6 insertions(+), 6 deletions(-)
8029
8030commit 5e1ccaeb603fb9f9b2b11cad13bbcf8682b33504
8031Author: Emmanuele Bassi <ebassi@linux.intel.com>
8032Date:   Thu Sep 3 13:04:59 2009 +0100
8033
8034    docs: Clean up the additional documentation build
8035
8036    • Make the manual a DevHelp book
8037
8038    • Make the generation of PDFs of the cookbook and the manual optional
8039
8040    • Consequently, make the hard dependency on jw optional
8041
8042    • Clean up the checks and build for the additional documentation
8043
8044 .gitignore                                                     |  9 +++++----
8045 configure.ac                                                   | 41 +++++++++++++++++++++--------------------
8046 doc/Makefile.am                                                |  8 +++++++-
8047 doc/common/Makefile.am                                         |  9 +++++++++
8048 doc/{cookbook => common}/common.xsl                            |  0
8049 doc/{cookbook => common}/devhelp.xsl                           |  0
8050 doc/{cookbook => common}/html.xsl                              |  0
8051 doc/{cookbook => common}/ref-html-style.xsl                    |  0
8052 doc/{cookbook => common}/style.css                             |  0
8053 doc/cookbook/Makefile.am                                       | 30 ++++++++++++++----------------
8054 doc/cookbook/{clutter-cookbook.xml => clutter-cookbook.xml.in} |  7 ++++---
8055 doc/cookbook/cookbook.xsl                                      | 14 --------------
8056 doc/manual/Makefile.am                                         | 84 ++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------
8057 doc/manual/clutter-manual.xml.in                               |  9 ++++-----
8058 14 files changed, 112 insertions(+), 99 deletions(-)
8059
8060commit ee9d358c452c8da879e7f40e4a2e701472067c04
8061Author: Emmanuele Bassi <ebassi@linux.intel.com>
8062Date:   Wed Sep 2 18:11:06 2009 +0100
8063
8064    [cookbook] Build the Cookbook as a devhelp document
8065
8066    Instead of creating stand-alone HTML files, use XSLT to transform the
8067    DocBook into a DevHelp file, so that we can read the Cookbook inside
8068    DevHelp -- just like the API reference.
8069
8070 configure.ac                    |   9 +++++--
8071 doc/cookbook/Makefile.am        |  83 +++++++++++++++++++++++++++++++---------------------------
8072 doc/cookbook/common.xsl         |  19 ++++++++++++++
8073 doc/cookbook/devhelp.xsl        | 154 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8074 doc/cookbook/html.xsl           | 285 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8075 doc/cookbook/ref-html-style.xsl |  54 ++++++++++++++++++++++++++++++++++++++
8076 6 files changed, 564 insertions(+), 40 deletions(-)
8077
8078commit 9485ef81a61d8950b7f04e01c749964c6a64922c
8079Author: Emmanuele Bassi <ebassi@linux.intel.com>
8080Date:   Wed Sep 2 13:13:44 2009 +0100
8081
8082    [cookbook] Fix folds
8083
8084 doc/cookbook/clutter-cookbook.xml | 5 +++--
8085 1 file changed, 3 insertions(+), 2 deletions(-)
8086
8087commit 2675b829990eb0b6fb9bae848bd64fc4461324d2
8088Author: Emmanuele Bassi <ebassi@linux.intel.com>
8089Date:   Thu Dec 11 17:03:10 2008 +0000
8090
8091    Update the ignore file
8092
8093    Add the temporary and output files of the cookbook.
8094
8095 .gitignore | 5 +++++
8096 1 file changed, 5 insertions(+)
8097
8098commit a7f7bfbc876a256f40fc0c3a43691b07bffeae96
8099Author: Emmanuele Bassi <ebassi@linux.intel.com>
8100Date:   Thu Dec 11 17:02:05 2008 +0000
8101
8102    Add the secon recipe to the Actors chapter
8103
8104    The second recipe shows how to use the ::paint signal to override
8105    the paint sequence of a pre-existing actor.
8106
8107 doc/cookbook/clutter-cookbook.xml | 153 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------
8108 1 file changed, 122 insertions(+), 31 deletions(-)
8109
8110commit 26b35e657f3fcf3ae8b919c4c315337f2261003f
8111Author: Emmanuele Bassi <ebassi@linux.intel.com>
8112Date:   Thu Dec 11 17:00:16 2008 +0000
8113
8114    Add the first recipe to the Actors chapter
8115
8116    The first recipe shows how to be notified when the relative position
8117    and size of an actor changes using the notify:: signal on the actor's
8118    dimensional and positional properties.
8119
8120 doc/cookbook/clutter-cookbook.xml | 128 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------
8121 1 file changed, 120 insertions(+), 8 deletions(-)
8122
8123commit 135cb5c6e21200162939dc5a42f0a34c4daf8a39
8124Author: Emmanuele Bassi <ebassi@linux.intel.com>
8125Date:   Thu Dec 11 16:58:07 2008 +0000
8126
8127    Add a preface instead of an introduction
8128
8129    Make the Cookbook look more like a book than a tutorial.
8130
8131 doc/cookbook/clutter-cookbook.xml | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------
8132 1 file changed, 58 insertions(+), 6 deletions(-)
8133
8134commit 35627f240fa498656492e437c130ffe34674ca54
8135Author: Emmanuele Bassi <ebassi@linux.intel.com>
8136Date:   Thu Dec 11 16:57:46 2008 +0000
8137
8138    Add the Clutter Cookbook to the build
8139
8140    The "Clutter Cookbook" is a document designed to contain solutions
8141    to common problems applications developers might encounter when using
8142    Clutter. It is meant as a companion to the API reference but it
8143    requires knowledge of the Clutter API and framework.
8144
8145 .gitignore                        |   1 +
8146 configure.ac                      |   2 ++
8147 doc/cookbook/Makefile.am          |  71 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8148 doc/cookbook/clutter-cookbook.xml | 200 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8149 doc/cookbook/cookbook.xsl         |  14 ++++++++++++++
8150 doc/cookbook/style.css            |  97 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8151 doc/cookbook/version.xml.in       |   1 +
8152 7 files changed, 386 insertions(+)
8153
8154commit 15a04a1dd39fd19f28132cbd3c22b49c05c0773b
8155Author: Emmanuele Bassi <ebassi@linux.intel.com>
8156Date:   Mon Nov 30 19:03:11 2009 +0000
8157
8158    layout-manager: Create LayoutMeta on demand
8159
8160    The ClutterLayoutMeta instances should be created on demand, whenever
8161    the layout manager needs them - if the layout manager supports layout
8162    properties.
8163
8164    This removes the requirement to call add_child_meta() and
8165    remove_child_meta() on add and remove respectively; it also simplifies
8166    the implementation of LayoutManager sub-classes since we can add
8167    fallback code in the base abstract class.
8168
8169    Eventually, this will also lead to an easier to implement ClutterScript
8170    parser for layout properties.
8171
8172    With the new scheme, the ClutterLayoutMeta instance is created whenever
8173    the layout manager tries to access it; if there isn't an instance
8174    already attached to the container's child, one is created -- assuming
8175    that the LayoutManager sub-class has overridden the
8176    get_child_meta_type() virtual function and it's returning a valid GType.
8177
8178    We can also provide a default implementation for create_child_meta(),
8179    by getting the GType and instantiating a ClutterLayoutMeta with all the
8180    fields already set. If the layout manager requires more work then it can
8181    obviously override the default implementation (and even chain up to it).
8182
8183    The ClutterBox actor has been updated, as well as the ClutterBoxLayout
8184    layout manager, to take advantage of the changes of LayoutManager.
8185
8186 clutter/clutter-box-layout.c               |  13 ------------
8187 clutter/clutter-box.c                      |  10 ---------
8188 clutter/clutter-layout-manager.c           | 221 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------------------------------------------------------------------------
8189 clutter/clutter-layout-manager.h           |   8 +------
8190 doc/reference/clutter/clutter-sections.txt |   2 --
8191 5 files changed, 70 insertions(+), 184 deletions(-)
8192
8193commit 7d842079ca7521332b98e7cc06480a3f7e23110f
8194Author: Emmanuele Bassi <ebassi@linux.intel.com>
8195Date:   Mon Nov 30 18:22:26 2009 +0000
8196
8197    conform: Add named object property unit for ClutterScript
8198
8199    We should exercise the resolution of the object properties containing a
8200    string pointing to an object previously defined using ClutterScript.
8201
8202 .gitignore                               |  1 +
8203 tests/conform/test-conform-main.c        |  1 +
8204 tests/conform/test-script-parser.c       | 28 ++++++++++++++++++++++++++++
8205 tests/data/Makefile.am                   | 18 ++++++++++++++----
8206 tests/data/test-script-named-object.json | 22 ++++++++++++++++++++++
8207 5 files changed, 66 insertions(+), 4 deletions(-)
8208
8209commit c3e640e6e36d3d3c72c1e340efa78817308a4283
8210Author: Neil Roberts <neil@linux.intel.com>
8211Date:   Mon Nov 30 19:06:05 2009 +0000
8212
8213    Use the correct colour when clearing the stage for picking
8214
8215    The colour test for the stage in _clutter_do_pick checks for white to
8216    determine whether the stage was picked but since 47db7af4d we were
8217    setting the colur to black. This usually worked because the id of the
8218    default stage ends up being 0 which equates to black. However if a
8219    second stage is created then it will always end up picking the first
8220    stage.
8221
8222 clutter/clutter-main.c | 2 +-
8223 1 file changed, 1 insertion(+), 1 deletion(-)
8224
8225commit 1bb034fbd75bb7153f35c88b05ed0fb9544d0c8b
8226Author: Neil Roberts <neil@linux.intel.com>
8227Date:   Sun Nov 29 20:06:36 2009 +0000
8228
8229    cogl: Enable blending if a lighting colour is semi-transparent
8230
8231    We currently enable blending if the material colour has
8232    transparency. This patch makes it also enable blending if any of the
8233    lighting colours have transparency. Arguably this isn't neccessary
8234    because we don't expose any API to enable lighting so there is no
8235    bug. However it is currently possible to enable lighting with a direct
8236    call to glEnable and this otherwise works so it is a shame not to have
8237    it.
8238
8239    http://bugzilla.openedhand.com/show_bug.cgi?id=1907
8240
8241 clutter/cogl/cogl/cogl-material.c | 14 +++++++++++++-
8242 1 file changed, 13 insertions(+), 1 deletion(-)
8243
8244commit 3cb974ee8be182944848b5e64dd4724f118bc8fa
8245Author: Emmanuele Bassi <ebassi@linux.intel.com>
8246Date:   Mon Nov 30 16:15:19 2009 +0000
8247
8248    Set the default language on the Pango context
8249
8250    When creating the Pango context we should also set the language
8251    to be the default Pango language.
8252
8253 clutter/clutter-main.c | 2 ++
8254 1 file changed, 2 insertions(+)
8255
8256commit daeb3b2fecb3d740b6d84215928fc4477396dc71
8257Author: Emmanuele Bassi <ebassi@linux.intel.com>
8258Date:   Mon Nov 30 16:14:09 2009 +0000
8259
8260    actor: Set text direction on parenting
8261
8262    When setting the parent on an actor we should set the text direction to
8263    be the same as the parent's.
8264
8265 clutter/clutter-actor.c | 12 ++++++++----
8266 1 file changed, 8 insertions(+), 4 deletions(-)
8267
8268commit 0ce5c7d350c8b904ed8cc15c911e6433619c6a2d
8269Author: Damien Lespiau <damien.lespiau@intel.com>
8270Date:   Mon Nov 30 13:26:45 2009 +0100
8271
8272    gitignore: update gitignore files to match the latest cogl tests
8273
8274    Some cogl tests were renamed in c1247066 to have 'cogl' in their names.
8275    It's a good excuse to merge .gitigore and tests/.gitignore.
8276
8277 .gitignore       | 21 +++++++++++++--------
8278 tests/.gitignore | 52 ----------------------------------------------------
8279 2 files changed, 13 insertions(+), 60 deletions(-)
8280
8281commit 4f06d035a2895b2839ba0e97109e8a44c1ad07e2
8282Author: Damien Lespiau <damien.lespiau@intel.com>
8283Date:   Wed Nov 25 13:29:26 2009 +0100
8284
8285    tests: fix argument parsing of test-texture-quality
8286
8287    This test did not open redhand.png as argc/argv should be handled
8288    normally (argv[0] being the name of the exectutable).
8289
8290    Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
8291
8292 tests/interactive/test-texture-quality.c | 4 ++--
8293 1 file changed, 2 insertions(+), 2 deletions(-)
8294
8295commit e4180b283836ccd665d23d1e19d35a8911c40436
8296Author: Damien Lespiau <damien.lespiau@intel.com>
8297Date:   Wed Nov 25 13:25:14 2009 +0100
8298
8299    tests: give all the arguments to the wrapper
8300
8301    Some tests can be given extra arguments. The test-interactive dispatch
8302    mechanism handles that but the small shell scripts around the wrapper
8303    do not forward the arguments to the wrapper.
8304
8305    Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
8306
8307 tests/interactive/Makefile.am | 5 +++--
8308 1 file changed, 3 insertions(+), 2 deletions(-)
8309
8310commit 934eb5d251ad9d9987d0ff1f0f9878fffc2484f1
8311Author: Robert Bragg <robert@linux.intel.com>
8312Date:   Fri Nov 27 15:24:09 2009 +0000
8313
8314    primitives: Don't use dynamic arrays since VS2008 can't cope with them :-(
8315
8316    This changes _cogl_path_fill_nodes_scanlines to use g_alloca instead of
8317    using a variable to declare an array length.
8318
8319 clutter/cogl/cogl/cogl-primitives.c | 2 +-
8320 1 file changed, 1 insertion(+), 1 deletion(-)
8321
8322commit 47db7af4d3001387a3c7adc60f6c3166c149ab5d
8323Author: Robert Bragg <robert@linux.intel.com>
8324Date:   Wed Nov 25 20:37:01 2009 +0000
8325
8326    picking: avoid redundant picking geometry for the stage.
8327
8328    The stage's pick id can be written to the framebuffer when we call
8329    cogl_clear so there's no need for the stage to also chain up in it's pick
8330    function resulting in clutter-actor.c also emitting a rectangle for the
8331    stage.
8332
8333 clutter/clutter-main.c  |  6 +++---
8334 clutter/clutter-stage.c | 12 +++++++-----
8335 2 files changed, 10 insertions(+), 8 deletions(-)
8336
8337commit c12470666e6bd63024437a389cd2c1202df93c33
8338Author: Robert Bragg <robert@linux.intel.com>
8339Date:   Fri Nov 27 00:28:39 2009 +0000
8340
8341    tests: rename cogl conformance tests so they can be clearly identified
8342
8343    All Cogl conformance tests are now prefixed 'test-cogl-'
8344
8345 tests/conform/Makefile.am                                                               | 24 ++++++++++++------------
8346 tests/conform/{test-backface-culling.c => test-cogl-backface-culling.c}                 |  4 ++--
8347 tests/conform/{test-blend-strings.c => test-cogl-blend-strings.c}                       |  4 ++--
8348 tests/conform/{test-clutter-fixed.c => test-cogl-fixed.c}                               |  4 ++--
8349 tests/conform/{test-materials.c => test-cogl-materials.c}                               |  4 ++--
8350 tests/conform/{test-npot-texture.c => test-cogl-npot-texture.c}                         |  4 ++--
8351 tests/conform/{test-premult.c => test-cogl-premult.c}                                   |  4 ++--
8352 tests/conform/{test-vertex-buffer-contiguous.c => test-cogl-vertex-buffer-contiguous.c} |  4 ++--
8353 tests/conform/{test-vertex-buffer-interleved.c => test-cogl-vertex-buffer-interleved.c} |  4 ++--
8354 tests/conform/{test-vertex-buffer-mutability.c => test-cogl-vertex-buffer-mutability.c} |  4 ++--
8355 tests/conform/test-conform-main.c                                                       | 34 ++++++++++++++++++----------------
8356 11 files changed, 48 insertions(+), 46 deletions(-)
8357
8358commit 439f8c62b0e2651b9afeb08cb5166ed9e7f49521
8359Author: Robert Bragg <robert@linux.intel.com>
8360Date:   Thu Nov 26 19:06:35 2009 +0000
8361
8362    cogl: deprecate cogl_draw_buffer API and replace with a cogl_framebuffer API
8363
8364    cogl_push_draw_buffer, cogl_set_draw_buffer and cogl_pop_draw_buffer are now
8365    deprecated and new code should use the new cogl_framebuffer_* API instead.
8366
8367    Code that previously did:
8368        cogl_push_draw_buffer ();
8369        cogl_set_draw_buffer (COGL_OFFSCREEN_BUFFER, buffer);
8370        /* draw */
8371        cogl_pop_draw_buffer ();
8372    should now be re-written as:
8373        cogl_push_framebuffer (buffer);
8374        /* draw */
8375        cogl_pop_framebuffer ();
8376
8377    As can be seen from the example above the rename has been used as an
8378    opportunity to remove the redundant target argument from
8379    cogl_set_draw_buffer; it now only takes one call to redirect to an offscreen
8380    buffer, and finally the term framebuffer may be a bit more familiar to
8381    anyone coming from an OpenGL background.
8382
8383 README                                                                       |  13 ++++++
8384 clutter/clutter-texture.c                                                    |  15 +++----
8385 clutter/cogl/cogl/Makefile.am                                                |   4 +-
8386 clutter/cogl/cogl/cogl-clip-stack.c                                          |  74 +++++++++++++++----------------
8387 clutter/cogl/cogl/cogl-context.c                                             |  13 +++---
8388 clutter/cogl/cogl/cogl-context.h                                             |   4 +-
8389 clutter/cogl/cogl/{cogl-draw-buffer-private.h => cogl-framebuffer-private.h} |  75 ++++++++++++++------------------
8390 clutter/cogl/cogl/{cogl-draw-buffer.c => cogl-framebuffer.c}                 | 367 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------------------------------------------------
8391 clutter/cogl/cogl/cogl-journal.c                                             |  12 +++---
8392 clutter/cogl/cogl/cogl-matrix-stack.c                                        |   6 +--
8393 clutter/cogl/cogl/cogl-primitives.c                                          |  30 ++++++-------
8394 clutter/cogl/cogl/cogl-texture.c                                             |  12 +++---
8395 clutter/cogl/cogl/cogl-vertex-buffer.c                                       |   6 +--
8396 clutter/cogl/cogl/cogl.c                                                     |  80 +++++++++++++++++-----------------
8397 clutter/cogl/cogl/cogl.h                                                     |  73 ++++++++++++++++++++++++++-----
8398 doc/reference/cogl/cogl-sections.txt                                         |   3 ++
8399 tests/conform/test-backface-culling.c                                        |   7 ++-
8400 tests/conform/test-cogl-offscreen.c                                          |  33 +++++++-------
8401 tests/conform/test-cogl-readpixels.c                                         |  45 ++++++++++---------
8402 tests/conform/test-cogl-viewport.c                                           |  90 +++++++++++++++++++-------------------
8403 tests/interactive/test-cogl-offscreen.c                                      |   4 +-
8404 21 files changed, 517 insertions(+), 449 deletions(-)
8405
8406commit b598210e011f6711848e649217ac7a35770bfe8e
8407Author: Robert Bragg <robert@linux.intel.com>
8408Date:   Thu Nov 26 17:47:17 2009 +0000
8409
8410    cogl_offscreen: deprecate cogl_offscreen_ref/unref.
8411
8412    New code should use cogl_handle_ref/unref
8413
8414 clutter/cogl/cogl/cogl-offscreen.h | 34 +++++++++++++++++++++-------------
8415 1 file changed, 21 insertions(+), 13 deletions(-)
8416
8417commit e12a691187a7dbbcfe5b46b94fe2975fd0927966
8418Author: Neil Roberts <neil@linux.intel.com>
8419Date:   Wed Nov 25 13:39:45 2009 +0000
8420
8421    cogl: Use a vtable for the texture backends instead of a type and switch
8422
8423    Instead of storing an enum with the backend type for each texture and
8424    then using a switch statement to decide which function to call, we
8425    should store pointers to all of the functions in a struct and have
8426    each texture point to that struct. This is potentially slightly faster
8427    when there are more backends and it makes implementing new backends
8428    easier because it's more obvious which functions have to be
8429    implemented.
8430
8431 clutter/cogl/cogl/cogl-texture-2d-sliced-private.h |  62 --------------------------------------------------------------
8432 clutter/cogl/cogl/cogl-texture-2d-sliced.c         | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------
8433 clutter/cogl/cogl/cogl-texture-private.h           |  97 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----------------------
8434 clutter/cogl/cogl/cogl-texture.c                   | 124 ++++++++++++++++++++++++----------------------------------------------------------------------------------------------------
8435 4 files changed, 154 insertions(+), 251 deletions(-)
8436
8437commit 558b17ee1e71fb0fe7aea35e13cd5a73b18130dc
8438Author: Robert Bragg <robert@linux.intel.com>
8439Date:   Wed Nov 25 02:47:52 2009 +0000
8440
8441    offscreen: cogl_offscreen_new_to_texture now supports GL_TEXTURE_RECTANGLE_ARB
8442
8443    cogl_offscreen_new_to_texture previously bailed out if the given texture's
8444    GL target was anything but GL_TEXTURE_2D, but it now also allows
8445    foreign GL_TEXTURE_RECTANGLE_ARB textures.
8446
8447    Thanks to Owen for reporting this issue, ref:
8448    https://bugzilla.gnome.org/show_bug.cgi?id=601032
8449
8450 clutter/cogl/cogl/cogl-draw-buffer.c | 3 ++-
8451 1 file changed, 2 insertions(+), 1 deletion(-)
8452
8453commit d3a01e0c96237ca060e3451d2b80e692dfb3b8f6
8454Author: Robert Bragg <robert@linux.intel.com>
8455Date:   Tue Nov 24 18:24:07 2009 +0000
8456
8457    debug: remove the COGL_DEBUG=client-side-matrices option
8458
8459    Cogl only supports client side matrices so this debug option is no longer
8460    useful.
8461
8462 clutter/cogl/cogl/cogl-debug.c |  1 -
8463 clutter/cogl/cogl/cogl-debug.h | 13 ++++++-------
8464 2 files changed, 6 insertions(+), 8 deletions(-)
8465
8466commit b38c6b420f0ae1f118189bd0a8994fce479aef7b
8467Author: Robert Bragg <robert@linux.intel.com>
8468Date:   Wed Nov 11 12:50:48 2009 +0000
8469
8470    [cogl-material] Adds cogl_material_copy() API
8471
8472    cogl_material_copy can be used to create a new CoglHandle referencing a copy
8473    of some given material.
8474
8475    From now on we will advise that developers always aim to use this function
8476    instead of cogl_material_new() when creating a material that is in any way
8477    derived from another.
8478
8479    By using cogl_material_copy, Cogl can maintain an ancestry for each material
8480    and keep track of "similar" materials.  The plan is that Cogl will use this
8481    information to minimize the cost of GPU state transitions.
8482
8483 README                                    |  5 +++++
8484 clutter/cogl/cogl/cogl-context.c          | 13 +++++++++----
8485 clutter/cogl/cogl/cogl-context.h          |  4 +++-
8486 clutter/cogl/cogl/cogl-material-private.h |  9 +++++++++
8487 clutter/cogl/cogl/cogl-material.c         | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++++---------
8488 clutter/cogl/cogl/cogl-material.h         | 18 ++++++++++++++++++
8489 clutter/cogl/cogl/cogl.c                  |  6 +++---
8490 7 files changed, 100 insertions(+), 17 deletions(-)
8491
8492commit 70ca3bfe4173aabd352fd0aed484c0bab57a8d02
8493Author: Robert Bragg <robert@linux.intel.com>
8494Date:   Wed Nov 11 12:52:08 2009 +0000
8495
8496    [cogl] remove unused gles/cogl-utils.[c,h]
8497
8498    The only function in gles/cogl-utils.c was cogl_util_next_p2() and it's
8499    redundant since we also have a cogl/cogl-utils.[c,h]
8500
8501 clutter/cogl/cogl/driver/gles/cogl-util.c | 49 -------------------------------------------------
8502 clutter/cogl/cogl/driver/gles/cogl-util.h | 30 ------------------------------
8503 2 files changed, 79 deletions(-)
8504
8505commit 4a63af0c631cd9391a6b3cef6fdb545e36a68730
8506Author: Robert Bragg <robert@linux.intel.com>
8507Date:   Mon Nov 23 11:30:32 2009 +0000
8508
8509    docs: Don't document cogl_flush_gl_state as public API
8510
8511    This function was #if 0'd before we released Clutter 1.0 so there's no
8512    implementation of it.  At some point we thought it might assist with
8513    developers breaking out into raw OpenGL.  Breaking out to raw GL is a
8514    difficult problem though so we decided instead we will wait for a specific
8515    use case to arrise before trying to support it.
8516
8517 clutter/cogl/cogl/cogl.c             |  8 --------
8518 clutter/cogl/cogl/cogl.h             | 22 ----------------------
8519 doc/reference/cogl/cogl-sections.txt |  1 -
8520 3 files changed, 31 deletions(-)
8521
8522commit 328ce370e7a7f155f63ee8206e8b6cd4e66a6c94
8523Author: Emmanuele Bassi <ebassi@linux.intel.com>
8524Date:   Tue Nov 24 16:59:24 2009 +0000
8525
8526    animation: Keep a weak reference on actors
8527
8528    Actors, unlike objects, can effectively go away whilst being
8529    animated - usually because of an explicit destoy().
8530
8531    The Animation created by clutter_actor_animate() and friends
8532    should keep a weak reference on the actor and eventually
8533    get rid of the animation itself in case the actor goes away
8534    whilst being animated.
8535
8536 clutter/clutter-animation.c | 13 +++++++++++++
8537 1 file changed, 13 insertions(+)
8538
8539commit 1107fa8797b0d2475097c20b50065dbc3ae014a1
8540Author: Neil Roberts <neil@linux.intel.com>
8541Date:   Thu Nov 19 16:07:38 2009 +0000
8542
8543    Minor fix to cogl material
8544
8545    _cogl_material_get_layer expects a CoglMaterial* pointer but it was
8546    being called with a CoglHandle. This doesn't matter because the
8547    CoglHandle is actually just the CoglMaterial* pointer anyway but it
8548    breaks the ability to change the _cogl_material_pointer_from_handle
8549    macro.
8550
8551 clutter/cogl/cogl/cogl-material.c | 2 +-
8552 1 file changed, 1 insertion(+), 1 deletion(-)
8553
8554commit 6fd80ffbd926318413296112871891706867cd78
8555Author: Emmanuele Bassi <ebassi@linux.intel.com>
8556Date:   Thu Nov 19 14:30:01 2009 +0000
8557
8558    docs: Add indices to the Cogl API reference
8559
8560    The Clutter API reference has an index of the symbols for each minor
8561    version, and a list of deprecated symbols. The Cogl API reference
8562    should have the same layout.
8563
8564 doc/reference/cogl/cogl-docs.xml.in | 23 ++++++++++++++++++++++-
8565 1 file changed, 22 insertions(+), 1 deletion(-)
8566
8567commit 8d64c4641dbf9dfb09d2719872911263d2b758dc
8568Author: Emmanuele Bassi <ebassi@linux.intel.com>
8569Date:   Thu Nov 19 13:55:10 2009 +0000
8570
8571    docs: Increase consistency in Cogl documentation
8572
8573 clutter/cogl/cogl/cogl-texture.h       |  66 ++++++++++++++++++++++++++++++++++++++----------------------------
8574 clutter/cogl/cogl/cogl-vertex-buffer.h | 134 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------
8575 clutter/cogl/cogl/cogl.h               |  90 ++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------
8576 3 files changed, 157 insertions(+), 133 deletions(-)
8577
8578commit 550c14449e090f7921cdddc6acedb1bd72552663
8579Author: Emmanuele Bassi <ebassi@linux.intel.com>
8580Date:   Thu Nov 19 13:33:26 2009 +0000
8581
8582    docs: Documentation fixes for CoglMatrix
8583
8584    Clean up the references, the docbook tags, and the style to fit in
8585    with the rest of the API references for Cogl and Clutter.
8586
8587 clutter/cogl/cogl/cogl-matrix.h | 136 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------------------------------------------
8588 1 file changed, 68 insertions(+), 68 deletions(-)
8589
8590commit 056cfcffc312f9508f07c82e41d96c606559db97
8591Author: Emmanuele Bassi <ebassi@linux.intel.com>
8592Date:   Thu Nov 19 13:33:08 2009 +0000
8593
8594    Whitespace fix for cogl-color.h
8595
8596 clutter/cogl/cogl/cogl-color.h | 3 ++-
8597 1 file changed, 2 insertions(+), 1 deletion(-)
8598
8599commit 851d628cf8fe89ab28d66f790ad98db766831e37
8600Author: Emmanuele Bassi <ebassi@linux.intel.com>
8601Date:   Thu Nov 19 13:31:38 2009 +0000
8602
8603    docs: Documentation fixes for CoglMaterial
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-material.h | 404 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------------------------------------------------------
8609 1 file changed, 205 insertions(+), 199 deletions(-)
8610
8611commit fe804f1d023b50801d400971bf311545727921e9
8612Author: Emmanuele Bassi <ebassi@linux.intel.com>
8613Date:   Thu Nov 19 13:29:02 2009 +0000
8614
8615    docs: Documentation fixes for CoglBitmap
8616
8617    • Use the same style for the Cogl API reference as the one used for
8618      the Clutter API reference.
8619
8620    • Fix the introspection annotations for cogl_bitmap_get_size_from_file()
8621
8622 clutter/cogl/cogl/cogl-bitmap.h | 25 +++++++++++++------------
8623 1 file changed, 13 insertions(+), 12 deletions(-)
8624
8625commit 1bf8db9e75c6155bb852980cb40a9117c6190500
8626Author: Emmanuele Bassi <ebassi@linux.intel.com>
8627Date:   Thu Nov 19 12:34:06 2009 +0000
8628
8629    docs: Fix Cogl API reference build
8630
8631    • Ignore all the private header files
8632
8633    • Add all missing/unused symbols
8634
8635    • Remove deprecated symbols from 0.*
8636
8637 doc/reference/cogl/Makefile.am       | 30 ++++++++++++++++++++++--------
8638 doc/reference/cogl/cogl-sections.txt | 29 ++++++++++++++++++++++++-----
8639 2 files changed, 46 insertions(+), 13 deletions(-)
8640
8641commit 05a5a7e759455a98233ea86016edf86d6d17be36
8642Author: Emmanuele Bassi <ebassi@linux.intel.com>
8643Date:   Thu Nov 19 12:32:59 2009 +0000
8644
8645    docs: Remove non-gtk-doc annotations
8646
8647    The imported Mesa matrix code has some documentation annotations
8648    that make gtk-doc very angry. Since it's all private anyway we
8649    can safely make gtk-doc ignore the offending stuff.
8650
8651 clutter/cogl/cogl/cogl-matrix-mesa.c | 136 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------------------------------------------
8652 clutter/cogl/cogl/cogl-matrix-mesa.h |  12 ++++++------
8653 2 files changed, 74 insertions(+), 74 deletions(-)
8654
8655commit 7a011af97406c0075cc32eb2fbe4a07dc3d828c2
8656Author: Neil Roberts <neil@linux.intel.com>
8657Date:   Thu Nov 19 11:51:21 2009 +0000
8658
8659    docs: Fix the 'Since' annotation for some functions
8660
8661    The 'Since' annotation needs to have a colon after it or gtk-doc won't
8662    pick it up.
8663
8664 clutter/clutter-behaviour-path.h         |  2 +-
8665 clutter/clutter-text.c                   |  2 +-
8666 clutter/cogl/cogl/cogl-material.h        | 40 ++++++++++++++++++++--------------------
8667 clutter/cogl/cogl/cogl-texture.h         |  6 +++---
8668 clutter/cogl/cogl/cogl.h                 |  4 ++--
8669 clutter/x11/clutter-x11-texture-pixmap.c |  4 ++--
8670 6 files changed, 29 insertions(+), 29 deletions(-)
8671
8672commit 8ef57898ad66af345946a1f69172fc8be7038def
8673Author: Neil Roberts <neil@linux.intel.com>
8674Date:   Wed Nov 18 19:09:10 2009 +0000
8675
8676    cogl: Use APIENTRY for GL function pointer declarations
8677
8678    This matters for platforms such as Windows that use a different
8679    calling covention from the default for GL functions.
8680
8681 clutter/cogl/cogl/driver/gl/cogl-context-driver.h   | 6 +++++-
8682 clutter/cogl/cogl/driver/gles/cogl-context-driver.h | 6 +++++-
8683 2 files changed, 10 insertions(+), 2 deletions(-)
8684
8685commit be58e5261f3b0c6a760577f67f2859511d6e52f2
8686Author: Neil Roberts <neil@linux.intel.com>
8687Date:   Wed Nov 18 19:23:57 2009 +0000
8688
8689    build: Fix out-of-tree builds for cogl-defines.h
8690
8691    $(COGL_DRIVER)/cogl-defines.h is generated in the configure script so
8692    it ends up in the build directory. Therefore the build rule for
8693    cogl/cogl-defines.h should depend on the file in $(builddir) not
8694    $(srcdir).
8695
8696 clutter/cogl/cogl/Makefile.am | 4 ++--
8697 1 file changed, 2 insertions(+), 2 deletions(-)
8698
8699commit 19e485325faa59d44556dd6dac9543fb616e680b
8700Author: Emmanuele Bassi <ebassi@linux.intel.com>
8701Date:   Wed Nov 18 18:04:13 2009 +0000
8702
8703    docs: Clean up deprecation notices
8704
8705    The deprecation notices in gtk-doc should also refer to the
8706    release that added the deprecation, and if the deprecated
8707    symbol has been replaced by something else then the new symbol
8708    should be correctly referenced.
8709
8710 clutter/cogl/cogl/cogl.h | 46 +++++++++++++++++++++++-----------------------
8711 1 file changed, 23 insertions(+), 23 deletions(-)
8712
8713commit 5f28c8b654094e27112426c206cf8294428515f9
8714Author: Emmanuele Bassi <ebassi@linux.intel.com>
8715Date:   Wed Nov 18 17:35:07 2009 +0000
8716
8717    build: Make cogl.h not conditional on driver defines
8718
8719    The main COGL header cogl.h is currently created at configure time
8720    because it conditionally includes the driver-dependent defines. This
8721    sometimes leads to a stale cogl.h with old definitions which can
8722    break the build until you clean out the whole tree and start from
8723    scratch.
8724
8725    We can generate a stable cogl-defines.h at build time from the
8726    equivalent driver-dependent header and let cogl.h include that
8727    file instead.
8728
8729 .gitignore                              |  7 +++----
8730 clutter/cogl/cogl/Makefile.am           | 18 ++++++++++++------
8731 clutter/cogl/cogl/{cogl.h.in => cogl.h} |  2 +-
8732 configure.ac                            |  5 ++---
8733 4 files changed, 18 insertions(+), 14 deletions(-)
8734
8735commit b869e87c86b73a8c09c5f509955a120978da7604
8736Author: Neil Roberts <neil@linux.intel.com>
8737Date:   Wed Nov 18 17:16:38 2009 +0000
8738
8739    test-npot-texture: Add some verbose notes
8740
8741    This just adds some verbose output stating whether Cogl thinks that
8742    NPOT textures are supported.
8743
8744 tests/conform/test-npot-texture.c | 16 ++++++++++++++++
8745 1 file changed, 16 insertions(+)
8746
8747commit 8f1edcb6eda89405286b7b1cdab3b8d8b899a778
8748Author: Neil Roberts <neil@linux.intel.com>
8749Date:   Wed Nov 18 14:21:22 2009 +0000
8750
8751    disable-npots: Don't allow the GL version to be 2.0
8752
8753    Cogl now assumes non-power-of-two textures are supported if the GL
8754    version is >= 2.0 so the disable-npots utility should also change the
8755    GL version.
8756
8757 tests/tools/disable-npots.c | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------
8758 1 file changed, 72 insertions(+), 7 deletions(-)
8759
8760commit e80030755e37df28b30903bad63dc776b546abc3
8761Author: Emmanuele Bassi <ebassi@linux.intel.com>
8762Date:   Wed Nov 18 15:21:09 2009 +0000
8763
8764    build: Fix EXTRA_DIST and MAINTAINERCLEANFILES rules
8765
8766 Makefile.am | 19 +++++++------------
8767 1 file changed, 7 insertions(+), 12 deletions(-)
8768
8769commit ed4f0beac944a036839cd860f8aad223ffc101f2
8770Author: Emmanuele Bassi <ebassi@linux.intel.com>
8771Date:   Wed Nov 18 15:11:56 2009 +0000
8772
8773    Update README file
8774
8775 README | 36 ++++++++++++++++++------------------
8776 1 file changed, 18 insertions(+), 18 deletions(-)
8777
8778commit 44f926556d98737fd10b18fdb6951a41672c46db
8779Author: Emmanuele Bassi <ebassi@linux.intel.com>
8780Date:   Wed Nov 18 15:06:37 2009 +0000
8781
8782    docs: Update the "writing a backend" documentation
8783
8784    The documentation on how a ClutterBackend and stage are implemented
8785    is a wee bit out of date.
8786
8787 HACKING.backends | 39 +++++++++++++++++++++++----------------
8788 1 file changed, 23 insertions(+), 16 deletions(-)
8789
8790commit f8e4e6727290aa63d2ec7dc30ca46913c98cb7ea
8791Author: Emmanuele Bassi <ebassi@linux.intel.com>
8792Date:   Wed Nov 18 14:56:59 2009 +0000
8793
8794    Remove clutter.symbols
8795
8796    The symbols file is unused since Clutter 0.6, and the win32 backend
8797    does not depend on it anymore.
8798
8799 clutter.symbols | 611 -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
8800 1 file changed, 611 deletions(-)
8801
8802commit a4f1d1d6cc12b7007ac467673cf8d98dba132c87
8803Author: Emmanuele Bassi <ebassi@linux.intel.com>
8804Date:   Wed Nov 18 14:56:25 2009 +0000
8805
8806    Rename ChangeLog.SVN
8807
8808 ChangeLog.SVN => ChangeLog.pre-git-import | 0
8809 1 file changed, 0 insertions(+), 0 deletions(-)
8810
8811commit 60fae6a92eff5b61e4074f40161aa7b0b40bf2b9
8812Author: Emmanuele Bassi <ebassi@linux.intel.com>
8813Date:   Wed Nov 18 14:37:43 2009 +0000
8814
8815    build: Add cogl-matrix-private.h to the dist
8816
8817 clutter/cogl/cogl/Makefile.am | 1 +
8818 1 file changed, 1 insertion(+)
8819
8820commit 425f3b466041f46d1faed06da1cc46665bad60c6
8821Author: Emmanuele Bassi <ebassi@linux.intel.com>
8822Date:   Wed Nov 18 14:34:33 2009 +0000
8823
8824    build: Add cogl-feature-functions.h to the dist
8825
8826 clutter/cogl/cogl/driver/gl/Makefile.am   | 1 +
8827 clutter/cogl/cogl/driver/gles/Makefile.am | 3 ++-
8828 2 files changed, 3 insertions(+), 1 deletion(-)
8829
8830commit d11343532d813cf9b16e5c1ac92c0f0bc56e8850
8831Author: Emmanuele Bassi <ebassi@linux.intel.com>
8832Date:   Wed Nov 18 14:21:08 2009 +0000
8833
8834    build: Generate per-cycle ChangeLog files
8835
8836    We should generate a ChangeLog for each minor version cycle, starting
8837    from the Git import date (since before that we used ChangeLog-style
8838    commit messages that don't really look good with the Git ones).
8839
8840    For this reason we can take Cairo's Makefile.am.changelog file and,
8841    after tweaking it to fit our use case, let it generate the correct
8842    ChangeLogs on dist.
8843
8844 ChangeLog                             |  5 -----
8845 Makefile.am                           |  3 ++-
8846 build/autotools/Makefile.am.changelog | 91 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------
8847 configure.ac                          |  8 +++++---
8848 4 files changed, 82 insertions(+), 25 deletions(-)
8849
8850commit 18e9d0db6fc9e120a63485d1ecbc8b5514d66c77
8851Author: Emmanuele Bassi <ebassi@linux.intel.com>
8852Date:   Wed Nov 18 12:20:53 2009 +0000
8853
8854    build: Move ChangeLog rules in a separate file
8855
8856    The ChangeLog creation rules should be moved to their own file, to
8857    make it easier to fix or change them in the future.
8858
8859 Makefile.am                           | 20 +-------------------
8860 build/autotools/Makefile.am           |  1 +
8861 build/autotools/Makefile.am.changelog | 19 +++++++++++++++++++
8862 3 files changed, 21 insertions(+), 19 deletions(-)
8863
8864commit 142305b1d51e9a3c69e8e2e224480297e43f79ea
8865Author: Neil Roberts <neil@linux.intel.com>
8866Date:   Wed Nov 18 13:23:10 2009 +0000
8867
8868    cogl: Add the missing terminators for the arrays of feature functions
8869
8870    _cogl_feature_check expects the array of function names to be
8871    terminated with a NULL pointer but I forgot to add this. This was
8872    causing crashes depending on what happened to be in memory after the
8873    array.
8874
8875 clutter/cogl/cogl/driver/gl/cogl.c   | 1 +
8876 clutter/cogl/cogl/driver/gles/cogl.c | 1 +
8877 2 files changed, 2 insertions(+)
8878
8879commit 70aeb1c64216d75ba63f1cbae1c824b69305bd73
8880Author: Christian Persch <chpe@gnome.org>
8881Date:   Tue Nov 17 20:43:39 2009 +0100
8882
8883    Pass the interned string value to the binding callback
8884
8885    http://bugzilla.openedhand.com/show_bug.cgi?id=1891
8886
8887    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
8888
8889 clutter/clutter-binding-pool.c | 2 +-
8890 1 file changed, 1 insertion(+), 1 deletion(-)
8891
8892commit 2832940603733873a76cb4c890f4a3d656d07112
8893Author: Neil Roberts <neil@linux.intel.com>
8894Date:   Tue Nov 17 18:06:31 2009 +0000
8895
8896    cogl: Use the GL_EXT_blend_{func,equation}_separate extensions
8897
8898    We should use these extensions to check for glBlendFuncSeparate and
8899    glBlendEquationSeparate as well as checking the GL version number.
8900
8901 clutter/cogl/cogl/driver/gl/cogl-feature-functions.h | 12 ++++++------
8902 1 file changed, 6 insertions(+), 6 deletions(-)
8903
8904commit 6e0877507e00016cac1136c4e0dbab67e6a3e9ba
8905Author: Neil Roberts <neil@linux.intel.com>
8906Date:   Tue Nov 17 17:22:22 2009 +0000
8907
8908    cogl: Don't bother checking for NPOTs or VBOs on later GLs
8909
8910    For VBOs, we don't need to check for the extension if the GL version
8911    is greater than 1.5. Non-power-of-two textures are given in 2.0.
8912
8913    We could also assume shader support in GL 2.0 except that the function
8914    names are different from those in the extension so it wouldn't work
8915    well with the current mechanism.
8916
8917 clutter/cogl/cogl/driver/gl/cogl-feature-functions.h | 4 +++-
8918 clutter/cogl/cogl/driver/gl/cogl.c                   | 3 ++-
8919 2 files changed, 5 insertions(+), 2 deletions(-)
8920
8921commit 4a8c1ff8fa6244cad0b0e770ab6f68e319271675
8922Author: Emmanuele Bassi <ebassi@linux.intel.com>
8923Date:   Tue Nov 17 15:32:00 2009 +0000
8924
8925    build: Clean up the configure summary
8926
8927    Split out into section the configuration report, and clean
8928    up the reported settings - including when experimental features
8929    have been enabled.
8930
8931 configure.ac | 97 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------
8932 1 file changed, 64 insertions(+), 33 deletions(-)
8933
8934commit 91cde78a7023d728ebb33c73684fc3702ad87963
8935Author: Neil Roberts <neil@linux.intel.com>
8936Date:   Tue Nov 17 13:52:40 2009 +0000
8937
8938    cogl: Make it easier to add checks for GL extensions
8939
8940    Previously if you need to depend on a new GL feature you had to:
8941
8942    - Add typedefs for all of the functions in cogl-defines.h.in
8943
8944    - Add function pointers for each of the functions in
8945      cogl-context-driver.h
8946
8947    - Add an initializer for the function pointers in
8948      cogl-context-driver.c
8949
8950    - Add a check for the extension and all of the functions in
8951      cogl_features_init. If the extension is available under multiple
8952      names then you have to duplicate the checks.
8953
8954    This is quite tedious and error prone. This patch moves all of the
8955    features and their functions into a list of macro invocations in
8956    cogl-feature-functions.h. The macros can be redefined to implement all
8957    of the above tasks from the same header.
8958
8959    The features are described in a struct with a pointer to a table of
8960    functions. A new function takes the feature description from this
8961    struct and checks for its availability. The feature can take a list of
8962    extension names with a list of alternate namespaces (such as "EXT" or
8963    "ARB"). It can also detect the feature from a particular version of
8964    GL.
8965
8966    The typedefs are now gone and instead the function pointer in the Cogl
8967    context just directly contains the type.
8968
8969    Some of the functions in the context were previously declared with the
8970    'ARB' extension. This has been removed so that now all the functions
8971    have no suffix. This makes more sense when the extension could
8972    potentially be merged into GL core as well.
8973
8974 clutter/cogl/cogl/Makefile.am                          |   2 +
8975 clutter/cogl/cogl/cogl-feature-private.c               | 141 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8976 clutter/cogl/cogl/cogl-feature-private.h               |  71 ++++++++++++++++++++++++++++++++++
8977 clutter/cogl/cogl/cogl-journal.c                       |  10 ++---
8978 clutter/cogl/cogl/cogl-vertex-buffer.c                 |  21 +++++-----
8979 clutter/cogl/cogl/driver/gl/cogl-context-driver.c      |  58 +++-------------------------
8980 clutter/cogl/cogl/driver/gl/cogl-context-driver.h      |  81 ++++++---------------------------------
8981 clutter/cogl/cogl/driver/gl/cogl-defines.h.in          | 361 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
8982 clutter/cogl/cogl/driver/gl/cogl-feature-functions.h   | 326 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8983 clutter/cogl/cogl/driver/gl/cogl-program.c             |  89 +++++++++++++++++++++----------------------
8984 clutter/cogl/cogl/driver/gl/cogl-shader.c              |  27 +++++++------
8985 clutter/cogl/cogl/driver/gl/cogl.c                     | 369 +++++++++++++++++---------------------------------------------------------------------------------------------------------------------------------------------------------------
8986 clutter/cogl/cogl/driver/gles/cogl-context-driver.c    |  19 ++++------
8987 clutter/cogl/cogl/driver/gles/cogl-context-driver.h    |  25 ++++++------
8988 clutter/cogl/cogl/driver/gles/cogl-defines.h.in        |  70 ----------------------------------
8989 clutter/cogl/cogl/driver/gles/cogl-feature-functions.h |  72 +++++++++++++++++++++++++++++++++++
8990 clutter/cogl/cogl/driver/gles/cogl.c                   |  82 +++++++++++++++++----------------------
8991 17 files changed, 794 insertions(+), 1030 deletions(-)
8992
8993commit 4734b7be418274cf00390c805b472b9493100157
8994Author: Emmanuele Bassi <ebassi@linux.intel.com>
8995Date:   Sat Nov 14 13:03:59 2009 +0000
8996
8997    docs: Detail the Clutter debugging flags
8998
8999 doc/reference/clutter/running-clutter.xml | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
9000 1 file changed, 56 insertions(+)
9001
9002commit 037192552ed126c35e430c11f030f16e984ac0b4
9003Author: Neil Roberts <neil@linux.intel.com>
9004Date:   Fri Nov 13 17:23:13 2009 +0000
9005
9006    win32: Remove the check for GL 1.2
9007
9008    Since 568c29ba4 the GL version is now validated further up in
9009    ClutterStage via Cogl so there is no need for the Win32 backend to do
9010    it.
9011
9012 clutter/win32/clutter-stage-win32.c | 42 ------------------------------------------
9013 1 file changed, 42 deletions(-)
9014
9015commit 62a37d8e538abc6d0c67bd69b4eb2a724668cce0
9016Author: Neil Roberts <neil@linux.intel.com>
9017Date:   Wed Nov 11 16:42:53 2009 +0000
9018
9019    Use the GL_ARB_multitexture extension on GL 1.2
9020
9021    Cogl requires multi-texturing support. This is only available as an
9022    extension in GL 1.2 so we should check for it before accepting the
9023    driver.
9024
9025    http://bugzilla.openedhand.com/show_bug.cgi?id=1875
9026
9027 clutter/cogl/cogl/driver/gl/cogl.c | 46 +++++++++++++++++++++++++++++++++++++++-------
9028 1 file changed, 39 insertions(+), 7 deletions(-)
9029
9030commit 2e99b276a4d312d6123426e2c88adf621a427c86
9031Author: Neil Roberts <neil@linux.intel.com>
9032Date:   Wed Nov 11 13:38:52 2009 +0000
9033
9034    cogl-material: Fallback to BlendFunc if BlendFuncSeparate is unavailable
9035
9036    glBlendFuncSeparate is only available in OpenGL 1.4. If we
9037    conditionally check for this then Clutter will work with OpenGL 1.2.
9038
9039    http://bugzilla.openedhand.com/show_bug.cgi?id=1875
9040
9041 clutter/cogl/cogl/cogl-material.c | 11 ++++++++---
9042 1 file changed, 8 insertions(+), 3 deletions(-)
9043
9044commit 568c29ba491e4a6b3bef426be528d7246110011c
9045Author: Neil Roberts <neil@linux.intel.com>
9046Date:   Wed Nov 11 13:26:54 2009 +0000
9047
9048    Validate that the GL version is >= 1.2
9049
9050    There is a new internal Cogl function called _cogl_check_driver_valid
9051    which looks at the value of the GL_VERSION string to determine whether
9052    the driver is supported. Clutter now calls this after the stage is
9053    realized. If it fails then the stage is marked as unrealized and a
9054    warning is shown.
9055
9056    _cogl_features_init now also checks the version number before getting
9057    the function pointers for glBlendFuncSeparate and
9058    glBlendEquationSeparate. It is not safe to just check for the presence
9059    of the functions because some drivers may define the function without
9060    fully implementing the spec.
9061
9062    The GLES version of _cogl_check_driver_valid just always returns TRUE
9063    because there are no version requirements yet.
9064
9065    Eventually the function could also check for mandatory extensions if
9066    there were any.
9067
9068    http://bugzilla.openedhand.com/show_bug.cgi?id=1875
9069
9070 clutter/clutter-backend.c            | 14 ++++++++++----
9071 clutter/clutter-private.h            |  3 +++
9072 clutter/clutter-stage.c              | 22 ++++++++++++++++++++--
9073 clutter/cogl/cogl/cogl.c             |  5 +++++
9074 clutter/cogl/cogl/cogl.h.in          |  9 +++++++++
9075 clutter/cogl/cogl/driver/gl/cogl.c   | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------
9076 clutter/cogl/cogl/driver/gles/cogl.c |  6 ++++++
9077 7 files changed, 133 insertions(+), 13 deletions(-)
9078
9079commit 677ff9fb30a99b850eb1b41c34f80e5e01f8e43e
9080Author: Samuel Degrande <Samuel.Degrande@lifl.fr>
9081Date:   Tue Oct 27 11:18:49 2009 +0100
9082
9083    Can no more include clutter-stage.h inside clutter-win32.h
9084
9085    http://bugzilla.openedhand.com/show_bug.cgi?id=1847
9086
9087    Signed-off-by: Neil Roberts <neil@linux.intel.com>
9088
9089 clutter/win32/clutter-win32.h | 2 +-
9090 1 file changed, 1 insertion(+), 1 deletion(-)
9091
9092commit 26ce94eda071cc133ab2b469cae0b19aae727279
9093Author: Samuel Degrande <Samuel.Degrande@lifl.fr>
9094Date:   Mon Oct 26 16:28:36 2009 +0100
9095
9096    Adapt win32 backend to the semantic change of StageWindow
9097
9098    http://bugzilla.openedhand.com/show_bug.cgi?id=1847
9099
9100    Signed-off-by: Neil Roberts <neil@linux.intel.com>
9101
9102 clutter/win32/clutter-backend-win32.c |  34 ++++++++++---------
9103 clutter/win32/clutter-stage-win32.c   | 345 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------------------------------
9104 clutter/win32/clutter-stage-win32.h   |   2 ++
9105 3 files changed, 194 insertions(+), 187 deletions(-)
9106
9107commit b69ee0989b3ec4b588a1e80ea933b3b8997f6898
9108Author: Emmanuele Bassi <ebassi@linux.intel.com>
9109Date:   Fri Nov 13 15:27:18 2009 +0000
9110
9111    tests: Add instructions to test-box-layout
9112
9113 tests/interactive/test-box-layout.c | 17 ++++++++++++++++-
9114 1 file changed, 16 insertions(+), 1 deletion(-)
9115
9116commit 568ad044eba38198ecdb32f671047bffa27353a9
9117Author: Neil Roberts <neil@linux.intel.com>
9118Date:   Fri Nov 13 13:39:24 2009 +0000
9119
9120    Clear pending events for a stage when it is destroyed
9121
9122    We can not process events for a stage that has been destroyed so we
9123    should make sure that the events for the stage are removed from the
9124    global event queue during dispose.
9125
9126    http://bugzilla.openedhand.com/show_bug.cgi?id=1882
9127
9128 clutter/clutter-stage.c | 18 ++++++++++++++++++
9129 1 file changed, 18 insertions(+)
9130
9131commit 49cd887aabf7ff8cbfb147ceacfc82e3c75c0c9b
9132Author: Emmanuele Bassi <ebassi@linux.intel.com>
9133Date:   Fri Nov 13 14:43:57 2009 +0000
9134
9135    docs: Document the AnimationMode definition
9136
9137    Both ClutterAlpha:mode and ClutterAnimation:mode can be defined using:
9138
9139      • an integer id
9140      • the "nick" field of the AnimationMode GEnumValue
9141      • a custom, tweener-like string
9142
9143    All these methods should be documented.
9144
9145 clutter/clutter-alpha.c     |  8 ++++++--
9146 clutter/clutter-animation.c | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
9147 2 files changed, 67 insertions(+), 2 deletions(-)
9148
9149commit c8d57037882729a7ea0117726f2e8e48b10416ac
9150Author: Emmanuele Bassi <ebassi@linux.intel.com>
9151Date:   Fri Nov 13 14:10:29 2009 +0000
9152
9153    tests: Add unit for Animation definitions
9154
9155    Verify that an Animation can be defined using ClutterScript.
9156
9157    No initial/final state of the animation, yet.
9158
9159 .gitignore                            |  1 +
9160 tests/conform/test-conform-main.c     |  1 +
9161 tests/conform/test-script-parser.c    | 22 ++++++++++++++++++++++
9162 tests/data/test-script-animation.json | 14 ++++++++++++++
9163 4 files changed, 38 insertions(+)
9164
9165commit d54f4e944c8725c84a5534d519fb3f9de7b95430
9166Author: Emmanuele Bassi <ebassi@linux.intel.com>
9167Date:   Fri Nov 13 14:08:49 2009 +0000
9168
9169    Whitespace fixes
9170
9171 clutter/clutter-animation.c     | 7 +++----
9172 clutter/clutter-script-parser.c | 3 +--
9173 2 files changed, 4 insertions(+), 6 deletions(-)
9174
9175commit 95b55588ad6c57cbeb7cda50886e709aa1ae1c00
9176Author: Emmanuele Bassi <ebassi@linux.intel.com>
9177Date:   Fri Nov 13 14:07:25 2009 +0000
9178
9179    tests: Print out parser errors if present
9180
9181    If the conformance test for the Script parser throws an error
9182    and we've enabled verbosity then we should print out the error
9183    message before aborting.
9184
9185 tests/conform/test-script-parser.c | 10 ++++++++--
9186 1 file changed, 8 insertions(+), 2 deletions(-)
9187
9188commit 9bae5535646b64e7c43f3a628942531d14e5a0f1
9189Author: Emmanuele Bassi <ebassi@linux.intel.com>
9190Date:   Fri Nov 13 13:21:47 2009 +0000
9191
9192    animation: Override parsing :mode
9193
9194    Like in ClutterAlpha, ClutterAnimation:mode must be overridden when
9195    parsing a Script definition, as we accept both a numeric id and the
9196    string id for easing modes.
9197
9198 clutter/clutter-animation.c | 51 ++++++++++++++++++++++++++++++++++++++++++++++++++-
9199 1 file changed, 50 insertions(+), 1 deletion(-)
9200
9201commit dab1da20ae144afe56f48c0a3be5865d84245658
9202Author: Neil Roberts <neil@linux.intel.com>
9203Date:   Mon Oct 5 13:37:11 2009 +0100
9204
9205    [cogl-primitives] Don't clear the whole stencil buffer
9206
9207    When _cogl_add_path_to_stencil_buffer is used to draw a path we don't
9208    need to clear the entire stencil buffer. Instead it can clear just the
9209    bounding box of the path. This adds an extra parameter called
9210    'need_clear' which is only set if the stencil buffer is being used for
9211    clipping.
9212
9213    http://bugzilla.openedhand.com/show_bug.cgi?id=1829
9214
9215 clutter/cogl/cogl/cogl-clip-stack.c |  6 ++++--
9216 clutter/cogl/cogl/cogl-primitives.c | 37 ++++++++++++++++++++++++++++++-------
9217 2 files changed, 34 insertions(+), 9 deletions(-)
9218
9219commit bc8faf52f4a817d7d023f554dcd7ace0efac9942
9220Author: Neil Roberts <neil@linux.intel.com>
9221Date:   Thu Nov 12 17:00:15 2009 +0000
9222
9223    Remove _cogl_flush_matrix_stacks from cogl-internal.h
9224
9225    The definition for this function was removed in f7d64e5abvoid so it
9226    should be removed from the header too.
9227
9228 clutter/cogl/cogl/cogl-internal.h | 2 --
9229 1 file changed, 2 deletions(-)
9230
9231commit 9fa562ad216d516d1cd66f72aa39eaad0a5c40b9
9232Author: Emmanuele Bassi <ebassi@linux.intel.com>
9233Date:   Wed Nov 11 10:32:39 2009 +0000
9234
9235    cogl: Declare cogl_is_bitmap()
9236
9237    The function is automatically defined by the CoglHandle type
9238    definition macro, but it still requires to be declared in the
9239    header file to be used.
9240
9241 clutter/cogl/cogl/cogl-bitmap.h | 13 +++++++++++++
9242 1 file changed, 13 insertions(+)
9243
9244commit 482e4e8d111fa76194a20ccd120eac41afa277d8
9245Author: Emmanuele Bassi <ebassi@linux.intel.com>
9246Date:   Tue Nov 10 12:21:26 2009 +0000
9247
9248    tests: Display the index inside text-box-layout
9249
9250    Since the rectangles packed inside the BoxLayout interactive test
9251    have random colors it's not easy to verify the ordering. By using
9252    the CoglPango API to print out the index in the middle of each
9253    rectangle.
9254
9255 tests/interactive/test-box-layout.c | 41 ++++++++++++++++++++++++++++++++++++++---
9256 1 file changed, 38 insertions(+), 3 deletions(-)
9257
9258commit 4bc3d02ebd928b4bc7c59811b9e90aae36750cfb
9259Author: Emmanuele Bassi <ebassi@linux.intel.com>
9260Date:   Tue Nov 10 12:20:14 2009 +0000
9261
9262    box-layout: Honour :text-direction
9263
9264    During size request and allocation a ClutterBoxLayout should honour
9265    the ClutterActor:text-direction property, and change the order of
9266    the children.
9267
9268 clutter/clutter-box-layout.c | 206 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------
9269 1 file changed, 142 insertions(+), 64 deletions(-)
9270
9271commit adab87b520699892e012d601821a5aee11410125
9272Author: Emmanuele Bassi <ebassi@linux.intel.com>
9273Date:   Tue Nov 10 12:18:32 2009 +0000
9274
9275    text: Dirty layout cache on text direction changes
9276
9277    When the text direction changes we should evict the cached layouts
9278    to avoid stale entries in case the direction change produces a layout
9279    with the same size.
9280
9281 clutter/clutter-text.c | 23 +++++++++++++++++++++++
9282 1 file changed, 23 insertions(+)
9283
9284commit f94f7692a6836ed4a5f039e4c2a44966b47c77fc
9285Author: Emmanuele Bassi <ebassi@linux.intel.com>
9286Date:   Fri Nov 6 16:55:46 2009 +0000
9287
9288    actor: Add :text-direction property
9289
9290    Every actor should have a property for retrieving (and setting) the
9291    text direction.
9292
9293    The text direction is used to provide a consisten behaviour in both
9294    left-to-right and right-to-left languages. For instance, ClutterText
9295    should perform key navigation following text direction. Layout
9296    managers should also take into account text direction to derive the
9297    right packing order for their children.
9298
9299 clutter/clutter-actor.c | 116 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
9300 clutter/clutter-actor.h |   4 ++++
9301 2 files changed, 119 insertions(+), 1 deletion(-)
9302
9303commit 53a9d0c637ee1ef07e9251b77f86f0cd42ab611e
9304Author: Emmanuele Bassi <ebassi@linux.intel.com>
9305Date:   Fri Nov 6 16:50:53 2009 +0000
9306
9307    Use the newly added ClutterTextDirection enumeration
9308
9309    Instead of using PangoDirection directly we should use the
9310    ClutterTextDirection enumeration.
9311
9312    We also need a pair of accessor functions for setting and
9313    getting the default text direction.
9314
9315 clutter/clutter-main.c | 43 +++++++++++++++++++++++++++++++++----------
9316 clutter/clutter-main.h |  3 +++
9317 2 files changed, 36 insertions(+), 10 deletions(-)
9318
9319commit 3958df4ff9b3aa800df2e0f1695fd143439d870a
9320Author: Emmanuele Bassi <ebassi@linux.intel.com>
9321Date:   Fri Nov 6 16:49:55 2009 +0000
9322
9323    Add ClutterTextDirection enumeration
9324
9325    The ClutterTextDirection is composed of three values:
9326
9327      DEFAULT: a flag for returning the default text direction
9328      LTR: left to right
9329      RTL: right to left
9330
9331 clutter/clutter-types.h | 17 +++++++++++++++++
9332 1 file changed, 17 insertions(+)
9333
9334commit 2671c425894c89a4afd415b70e8ebbc4f057e02b
9335Author: Neil Roberts <neil@linux.intel.com>
9336Date:   Mon Nov 9 12:12:27 2009 +0000
9337
9338    Revert changes to test-cogl-primitives.c from 272e227109
9339
9340    These changes caused the test to try to load redhand.png but this no
9341    longer works since the TESTS_DATADIR changes in 0b4899ef23. The only
9342    use of the hand is commented out anyway so it looks like the changes
9343    were intended for temporary debugging.
9344
9345 tests/interactive/test-cogl-primitives.c | 14 --------------
9346 1 file changed, 14 deletions(-)
9347
9348commit ac9f65cb92196e2eafd4b1e25dabd9cb6a428db3
9349Author: Damien Lespiau <damien.lespiau@intel.com>
9350Date:   Mon Nov 9 13:05:40 2009 +0000
9351
9352    build: Make the glib-mkenums generated files depend on their templates
9353
9354    With this, if one changes the underlying template files, we run
9355    glib-mkenums again to generate updated glib_enum_[ch] files.
9356
9357    Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
9358
9359 build/autotools/Makefile.am.enums | 4 ++--
9360 1 file changed, 2 insertions(+), 2 deletions(-)
9361
9362commit 1be23c0cc9741cbe68a54cd84de772bd120254b6
9363Author: Emmanuele Bassi <ebassi@linux.intel.com>
9364Date:   Mon Nov 9 16:44:34 2009 +0000
9365
9366    build: Fix --with-imagebackend configure switch
9367
9368    An overeager search and replace broke the image backend command
9369    line switch for the configure script.
9370
9371 configure.ac | 2 +-
9372 1 file changed, 1 insertion(+), 1 deletion(-)
9373
9374commit 1ce25ffbb2561ab5eb3f6b07b74ec49587f44d32
9375Author: Neil Roberts <neil@linux.intel.com>
9376Date:   Mon Nov 9 11:50:16 2009 +0000
9377
9378    cogl: Add an initialiser for enable_flags in cogl_begin_gl
9379
9380    This fixes a warning about an uninitialised value. It could also
9381    potentially fix some crashes for example if the enable_flags value
9382    happened to include a bit for enabling a vertex array if no vertex
9383    buffer pointer was set.
9384
9385 clutter/cogl/cogl/cogl.c | 2 +-
9386 1 file changed, 1 insertion(+), 1 deletion(-)
9387
9388commit 09c04d4c67ea8d3ebeb3ee5adfc3752562cae3cc
9389Author: Emmanuele Bassi <ebassi@linux.intel.com>
9390Date:   Mon Nov 9 11:07:27 2009 +0000
9391
9392    text: Add a NULL preedit string check
9393
9394    This commit avoids a critical warning introduced by commit
9395    bc51b8ca47ac90e52ab6a27ff791ea97d53f4648
9396
9397 clutter/clutter-text.c | 4 +++-
9398 1 file changed, 3 insertions(+), 1 deletion(-)
9399
9400commit bc51b8ca47ac90e52ab6a27ff791ea97d53f4648
9401Author: Raymond Liu <raymond.liu@intel.com>
9402Date:   Mon Nov 9 16:42:15 2009 +0800
9403
9404    Fix cursor position in preedit status
9405
9406    http://bugzilla.openedhand.com/show_bug.cgi?id=1871
9407
9408    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
9409
9410 clutter/clutter-text.c | 14 ++++++++++++--
9411 1 file changed, 12 insertions(+), 2 deletions(-)
9412
9413commit 7e17822cfd860fd694735fbf550013f7f8b7a915
9414Author: Emmanuele Bassi <ebassi@linux.intel.com>
9415Date:   Fri Nov 6 15:06:39 2009 +0000
9416
9417    Clean up cogl.h template
9418
9419    The inclusion order is mostly random, and it should really be
9420    in alphabetic order, just like clutter.h.
9421
9422    Also, cogl-vertex-buffer.h is included twice.
9423
9424 clutter/cogl/cogl/cogl.h.in | 17 +++++++++--------
9425 1 file changed, 9 insertions(+), 8 deletions(-)
9426
9427commit fcd8237ac5f5dc7bc485b8b5726824129215beea
9428Author: Tim Horton <hortont424@gmail.com>
9429Date:   Fri Nov 6 11:57:43 2009 +0000
9430
9431    osx: CGBitmapContextCreate can't make 24bpp, alphaless offscreen pixmaps
9432
9433    While loading a JPEG from disk (with clutter_texture_new_from_file),
9434    I got the following:
9435
9436    <Error>: CGBitmapContextCreate: unsupported parameter combination: 8
9437    integer bits/component; 24 bits/pixel; 3-component colorspace;
9438    kCGImageAlphaNone; 3072 bytes/row.
9439    <Error>: CGContextDrawImage: invalid context
9440
9441    Looking around, I found that CGBitmapContextCreate can't make 24bpp
9442    offscreen pixmaps without an alpha channel...
9443
9444    This fixes the bug, and seems to not break other things...
9445
9446    http://bugzilla.openedhand.com/show_bug.cgi?id=1159
9447
9448    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
9449
9450 clutter/cogl/cogl/cogl-bitmap-pixbuf.c | 18 +++---------------
9451 1 file changed, 3 insertions(+), 15 deletions(-)
9452
9453commit 5c67e8e0c09c83c470f999c86091181cc373d5b6
9454Author: Emmanuele Bassi <ebassi@linux.intel.com>
9455Date:   Fri Nov 6 14:07:46 2009 +0000
9456
9457    script: Coding style clean-ups
9458
9459 clutter/clutter-script.c | 38 +++++++++++++++++++-------------------
9460 1 file changed, 19 insertions(+), 19 deletions(-)
9461
9462commit 179a66c922f85fdfc8968f7f60a5b76154696ad4
9463Author: Emmanuele Bassi <ebassi@linux.intel.com>
9464Date:   Fri Nov 6 14:07:26 2009 +0000
9465
9466    script: Document private functions
9467
9468 clutter/clutter-script.c | 71 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----
9469 1 file changed, 67 insertions(+), 4 deletions(-)
9470
9471commit 30bc36082e2922b11b98907fde12f64fd4f7399d
9472Author: Emmanuele Bassi <ebassi@linux.intel.com>
9473Date:   Fri Nov 6 14:04:36 2009 +0000
9474
9475    Do not pass flags to g_module_open(NULL)
9476
9477    The flags are ignored when opening the main module, so we
9478    should pass 0 to avoid confusion when reading the source.
9479
9480 clutter/clutter-alpha.c         | 2 +-
9481 clutter/clutter-script-parser.c | 6 +++---
9482 clutter/clutter-script.c        | 2 +-
9483 clutter/cogl/cogl/cogl.c        | 4 ++--
9484 4 files changed, 7 insertions(+), 7 deletions(-)
9485
9486commit 4262f79f34c35a8eb620fb82eb0e36d5ac191600
9487Merge: b9e519c3b 031d4d620
9488Author: Emmanuele Bassi <ebassi@linux.intel.com>
9489Date:   Fri Nov 6 11:50:22 2009 +0000
9490
9491    Merge branch 'josh-osx-fixes'
9492
9493    * josh-osx-fixes:
9494      osx: Fix a warning on Snow Leopard
9495      docs: Fix OS X docs to install Ports in correct order
9496      osx: Implement the updated ClutterStageWindow interface
9497
9498commit b9e519c3b2bc5fc01743568a2a37029c61fdf6ef
9499Author: Joshua Lock <josh@linux.intel.com>
9500Date:   Thu Nov 5 15:50:21 2009 +0000
9501
9502    tests: Remove a spurious #include
9503
9504    The test-backface-culling has what looks like a stray #include in which
9505    stops the test compiling for backends without GdkPixbuf. Remove it.
9506
9507    http://bugzilla.openedhand.com/show_bug.cgi?id=1867
9508
9509 tests/conform/test-backface-culling.c | 2 --
9510 1 file changed, 2 deletions(-)
9511
9512commit 031d4d6203f007fea2b95ca883c7113d0160372d
9513Author: Joshua Lock <josh@linux.intel.com>
9514Date:   Thu Nov 5 15:48:25 2009 +0000
9515
9516    osx: Fix a warning on Snow Leopard
9517
9518    Apple where nice and changed API between releases. This patch checks the
9519    version of the compilation environment and tries to use the right parameter
9520    type.
9521
9522    http://bugzilla.openedhand.com/show_bug.cgi?id=1866
9523
9524 clutter/osx/clutter-backend-osx.c | 8 ++++++--
9525 1 file changed, 6 insertions(+), 2 deletions(-)
9526
9527commit 58f1dfcf35626b8b1ea896dfbd27623b15779fce
9528Author: Joshua Lock <josh@linux.intel.com>
9529Date:   Thu Nov 5 15:31:56 2009 +0000
9530
9531    docs: Fix OS X docs to install Ports in correct order
9532
9533    The order in which the MacPorts are installed is important otherwise we open
9534    the user up to a world of pain.
9535    This patch also tweaks the OS X docs to follow the formatting of the rest of
9536    the docs and to discuss the option of GtkDoc.
9537
9538    http://bugzilla.openedhand.com/show_bug.cgi?id=1865
9539
9540 doc/reference/clutter/building-clutter.xml | 67 +++++++++++++++++++++++++++++++++++++------------------------------
9541 1 file changed, 37 insertions(+), 30 deletions(-)
9542
9543commit 4533e37744f8751e254741104d27b7b37e2fdfd7
9544Author: Joshua Lock <josh@linux.intel.com>
9545Date:   Thu Nov 5 15:44:32 2009 +0000
9546
9547    osx: Implement the updated ClutterStageWindow interface
9548
9549    In the new Clutter world backend stage implementations should be lightweight
9550    objects implementing the ClutterStageWindow interface and not ClutterActor
9551    subclasses.
9552
9553    This patch performs various cut-n-pastes to acheive that for the OSX backend
9554
9555    http://bugzilla.openedhand.com/show_bug.cgi?id=1864
9556
9557 clutter/osx/clutter-backend-osx.c |   4 ++--
9558 clutter/osx/clutter-stage-osx.c   | 196 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----------------------------------------------------------------------------------------------------------------
9559 clutter/osx/clutter-stage-osx.h   |   8 ++++----
9560 3 files changed, 89 insertions(+), 119 deletions(-)
9561
9562commit cb60c038acb0de9178d0aee22e3a9847653c9627
9563Author: Emmanuele Bassi <ebassi@linux.intel.com>
9564Date:   Fri Nov 6 11:33:32 2009 +0000
9565
9566    behaviour: Implement the implicit alpha parsing
9567
9568    ClutterBehaviour should implement the Scriptable interface
9569    and parse ClutterAlpha when implicitly defined, instead of
9570    having this ad hoc code inside ClutterScriptParser itself.
9571
9572    After all, only ClutterBehaviour supports Alpha defined
9573    implicitly.
9574
9575 clutter/clutter-behaviour.c      | 46 +++++++++++++++++++++++++++++++++++++++++-----
9576 clutter/clutter-script-parser.c  | 19 ++-----------------
9577 clutter/clutter-script-private.h |  4 ++--
9578 3 files changed, 45 insertions(+), 24 deletions(-)
9579
9580commit f1ed8be066a7c5f16e2e876cc76ef1f5348bc14e
9581Author: Emmanuele Bassi <ebassi@linux.intel.com>
9582Date:   Fri Nov 6 11:32:28 2009 +0000
9583
9584    conform: Add unit for properties holding objects
9585
9586    Exercise the definition of GObjects for properties defined using
9587    GParamSpecObject.
9588
9589 .gitignore                                  |  1 +
9590 tests/conform/test-conform-main.c           |  1 +
9591 tests/conform/test-script-parser.c          | 25 +++++++++++++++++++++++++
9592 tests/data/test-script-object-property.json | 13 +++++++++++++
9593 4 files changed, 40 insertions(+)
9594
9595commit 7279afd28c1bc47e1b47f0c2f8d53e5ea75df832
9596Author: Emmanuele Bassi <ebassi@linux.intel.com>
9597Date:   Fri Nov 6 11:17:42 2009 +0000
9598
9599    script: Generic assignment of properties requiring objects
9600
9601    The ClutterScriptParser should do most of the heavy-lifting for
9602    parsing a JSON object member defining another JSON object into
9603    a GObject property defined using a GParamSpecObject.
9604
9605 clutter/clutter-script-parser.c | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++----------
9606 1 file changed, 52 insertions(+), 10 deletions(-)
9607
9608commit 185107c6cfe174ed829ce26241bf0e2f532a4394
9609Author: Emmanuele Bassi <ebassi@linux.intel.com>
9610Date:   Fri Nov 6 10:53:43 2009 +0000
9611
9612    conformance: Add unit on the implicit alpha definition
9613
9614    Exercise the implicit alpha and timeline definition to catch
9615    regressions in the ClutterScript parser code.
9616
9617 .gitignore                                 |  1 +
9618 tests/conform/test-conform-main.c          |  1 +
9619 tests/conform/test-script-parser.c         | 32 ++++++++++++++++++++++++++++++++
9620 tests/data/test-script-implicit-alpha.json |  8 ++++++++
9621 4 files changed, 42 insertions(+)
9622
9623commit f9581ca5ce87437df40e27bc0228fdb6c6897619
9624Author: Emmanuele Bassi <ebassi@linux.intel.com>
9625Date:   Fri Nov 6 10:17:30 2009 +0000
9626
9627    script: Apply properties when constructing implicit timelines
9628
9629    The object construction is done in two passes, now, so we must do both
9630    passes when parsing implicit timelines from a fake ObjectInfo.
9631
9632 clutter/clutter-script-parser.c | 1 +
9633 1 file changed, 1 insertion(+)
9634
9635commit abae6013e10e08cc67be53d5d067ca5ed4ad7ee3
9636Author: Robert Bragg <robert@linux.intel.com>
9637Date:   Thu Nov 5 16:50:24 2009 +0000
9638
9639    Remove all internal use of deprecated cogl_clip_* API
9640
9641    cogl_clip_push, and cogl_clip_push_window_rect which are now deprecated were
9642    used in various places internally so this just switches to using the
9643    replacement functions.
9644
9645 clutter/clutter-actor.c            | 10 +++++-----
9646 clutter/clutter-main.c             |  2 +-
9647 clutter/clutter-text.c             |  6 +++---
9648 tests/conform/test-cogl-viewport.c | 10 ++++++----
9649 tests/interactive/test-clip.c      |  8 ++++----
9650 5 files changed, 19 insertions(+), 17 deletions(-)
9651
9652commit c1d9e09d38bcf61eb7e6f88f5a052870d8abdc5e
9653Author: Robert Bragg <robert@linux.intel.com>
9654Date:   Thu Nov 5 10:56:24 2009 +0000
9655
9656    [clip-stack] stop using deprecated cogl_clip_push_window_rect API
9657
9658    try_pushing_rect_as_window_rect now uses the new
9659    cogl_clip_push_window_rectangle API.
9660
9661 clutter/cogl/cogl/cogl-clip-stack.c | 2 +-
9662 1 file changed, 1 insertion(+), 1 deletion(-)
9663
9664commit 272e227109387c9287081e9dad467290e4e93faf
9665Author: Robert Bragg <robert@linux.intel.com>
9666Date:   Wed Nov 4 19:31:43 2009 +0000
9667
9668    [cogl-clip] deprecate parts and cleanup the API
9669
9670    cogl_clip_push() which accepts a rectangle in model space shouldn't have
9671    been defined to take x,y,width,height arguments because this isn't consistant
9672    with other Cogl API dealing with model space rectangles.  If you are using a
9673    coordinate system with the origin at the center and the y+ extending up,
9674    then x,y,width,height isn't as natural as (x0,y0)(x1,y1). This API has
9675    now been replace with cogl_clip_push_rectangle()
9676
9677    (As a general note: the Cogl API should only use the x,y,width,height style
9678    when the appropriate coordinate space is defined by Cogl to have a top left
9679    origin.  E.g.  window coordinates, or potentially texture coordinates)
9680
9681    cogl_clip_push_window_rect() shouldn't have been defined to take float
9682    arguments since we only clip with integral pixel precision. We also
9683    shouldn't have abbreviated "rectangle". This API has been replaced with
9684    cogl_clip_push_window_rectangle()
9685
9686    cogl_clip_ensure() wasn't documented at all in Clutter 1.0 and probably
9687    no one even knew it existed. This API isn't useful, and so it's now
9688    deprecated. If no one complains we may remove the API altogether for
9689    Clutter 1.2.
9690
9691    cogl_clip_stack_save() and cogl_clip_stack_restore() were originally added
9692    to allow us to save/restore the clip when switching to/from offscreen
9693    rendering.  Now that offscreen draw buffers are defined to own their clip
9694    state and the state will be automatically saved and restored this API is now
9695    redundant and so deprecated.
9696
9697 README                                   | 13 +++++++++++++
9698 clutter/cogl/cogl/cogl-clip-stack.c      | 44 ++++++++++++++++++++++++--------------------
9699 clutter/cogl/cogl/cogl.h.in              | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
9700 doc/reference/cogl/cogl-sections.txt     |  9 ++++++---
9701 tests/interactive/test-cogl-primitives.c | 14 ++++++++++++++
9702 5 files changed, 144 insertions(+), 28 deletions(-)
9703
9704commit 6cd49fdd40bd20716365e399c3dfa039e3b6f377
9705Author: Robert Bragg <robert@linux.intel.com>
9706Date:   Wed Nov 4 20:17:56 2009 +0000
9707
9708    [clip-stack] Internally track model space clip rects as (x0,y0)(x1,y1) pairs
9709
9710    Don't track the rectangles as x0,y0,width,height. This is in preparation
9711    for some API tidy up.
9712
9713 clutter/cogl/cogl/cogl-clip-stack.c | 113 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------
9714 1 file changed, 59 insertions(+), 54 deletions(-)
9715
9716commit 7752ed98f1eafa9bd65fbdd2e018b0026430b579
9717Author: Robert Bragg <robert@linux.intel.com>
9718Date:   Wed Nov 4 19:42:17 2009 +0000
9719
9720    [clip-stack] move lots of supporting code from cogl.c to cogl-clip-stack.c
9721
9722    There was quite a bit of code in cogl.c that was only used to support
9723    cogl-clip-stack.c, so this has now been moved to cogl-clip-stack.c
9724
9725 clutter/cogl/cogl/cogl-clip-stack.c | 277 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------
9726 clutter/cogl/cogl/cogl.c            | 237 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------
9727 2 files changed, 250 insertions(+), 264 deletions(-)
9728
9729commit 864e12df056ccbd116eb0a0992a82e5194c26787
9730Author: Robert Bragg <robert@linux.intel.com>
9731Date:   Wed Nov 4 16:55:18 2009 +0000
9732
9733    [debug] Adds a COGL_DEBUG=force-scanline-paths
9734
9735    For a long time now the GLES driver for Cogl has supported a fallback
9736    scanline rasterizer for filling paths when no stencil buffer is available,
9737    but now that we build the same cogl-primitives code for GL and GLES I
9738    thought it may sometimes be useful for debugging to force Cogl to use the
9739    scanline rasterizer instead of the current stencil buffer approach.
9740
9741 clutter/cogl/cogl/cogl-debug.c      | 3 ++-
9742 clutter/cogl/cogl/cogl-debug.h      | 3 ++-
9743 clutter/cogl/cogl/cogl-primitives.c | 3 ++-
9744 3 files changed, 6 insertions(+), 3 deletions(-)
9745
9746commit 0b4899ef23e4979326439613dfba814bd49aeb2e
9747Author: Emmanuele Bassi <ebassi@linux.intel.com>
9748Date:   Thu Nov 5 17:30:33 2009 +0000
9749
9750    tests: Clean up interactive test build
9751
9752    The build for interactive tests creates symbolic links for the data
9753    under tests/data; it also uses symbolic links for creating "binaries"
9754    for each interactive test. This is less than ideal, though.
9755
9756    Instead, the tests should build a path to the data files by using
9757    a pre-processor define like TESTS_DATADIR; both g_build_filename() and
9758    pre-processor string concatenation can be used to generate a valid
9759    file name with the full path to the files.
9760
9761    The build system should also create wrapper scripts, just like we
9762    do inside the conformance test suite, to be able to launch single
9763    tests.
9764
9765 .gitignore                                 |  1 +
9766 tests/interactive/Makefile.am              | 59 ++++++++++++++++++++++++++++++++++-------------------------
9767 tests/interactive/test-actor-clone.c       | 27 ++++++++++++++-------------
9768 tests/interactive/test-actors.c            | 11 ++++++-----
9769 tests/interactive/test-behave.c            | 14 ++++++++------
9770 tests/interactive/test-bin-layout.c        |  6 +++++-
9771 tests/interactive/test-clip.c              |  5 ++++-
9772 tests/interactive/test-cogl-multitexture.c | 15 ++++++++++++---
9773 tests/interactive/test-cogl-offscreen.c    |  6 +++++-
9774 tests/interactive/test-cogl-tex-convert.c  | 28 +++++++++++++++++++---------
9775 tests/interactive/test-cogl-tex-getset.c   | 12 ++++++++----
9776 tests/interactive/test-cogl-tex-polygon.c  |  9 +++++++--
9777 tests/interactive/test-cogl-tex-tile.c     |  6 +++++-
9778 tests/interactive/test-depth.c             |  5 ++++-
9779 tests/interactive/test-devices.c           |  5 ++++-
9780 tests/interactive/test-fbo.c               | 11 ++++++++---
9781 tests/interactive/test-layout.c            |  5 ++++-
9782 tests/interactive/test-multistage.c        |  5 ++++-
9783 tests/interactive/test-paint-wrapper.c     |  5 ++++-
9784 tests/interactive/test-pixmap.c            |  2 +-
9785 tests/interactive/test-rotate.c            |  8 ++++++--
9786 tests/interactive/test-script.c            |  9 +++++++--
9787 tests/interactive/test-shader.c            | 84 +++++++++++++++++++++++++++++++++++++++++++++---------------------------------------
9788 tests/interactive/test-texture-async.c     | 57 +++++++++++++++++++++++++--------------------------------
9789 tests/interactive/test-texture-quality.c   | 15 +++++++++++----
9790 tests/interactive/test-viewport.c          |  8 ++++++--
9791 tests/interactive/wrapper.sh               |  4 +++-
9792 27 files changed, 260 insertions(+), 162 deletions(-)
9793
9794commit c3368c0d157c5fa28a4e29e6caaed4323e82990d
9795Author: Emmanuele Bassi <ebassi@linux.intel.com>
9796Date:   Thu Nov 5 12:24:37 2009 +0000
9797
9798    layout: Add layout properties introspection
9799
9800    In order to know if a layout property exists and retrieve its
9801    description in form of a GParamSpec, we need a wrapper API inside
9802    ClutterLayoutManager. This allows introspecting a LayoutManager
9803    sub-class and eventually serialize and deserialize it.
9804
9805 clutter/clutter-layout-manager.c |  76 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
9806 clutter/clutter-layout-manager.h | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------
9807 2 files changed, 130 insertions(+), 49 deletions(-)
9808
9809commit b0c9de273096d8949c8eafa3d5da017bb551e3f0
9810Author: Emmanuele Bassi <ebassi@linux.intel.com>
9811Date:   Thu Nov 5 12:23:49 2009 +0000
9812
9813    box-layout: Add get_child_meta_type() override
9814
9815    Return the GType of ClutterBoxChild.
9816
9817 clutter/clutter-box-layout.c | 8 ++++++++
9818 1 file changed, 8 insertions(+)
9819
9820commit eea00d280549641403dbaae27e370e16fe9f975b
9821Author: Emmanuele Bassi <ebassi@linux.intel.com>
9822Date:   Thu Nov 5 12:23:22 2009 +0000
9823
9824    bin-layout: Add get_child_meta_type() override
9825
9826    Return the GType of ClutterBinLayer.
9827
9828 clutter/clutter-bin-layout.c | 8 ++++++++
9829 1 file changed, 8 insertions(+)
9830
9831commit e6dff59b27d7eb6d9fca51f6ddf74fcb7d8253e3
9832Author: Emmanuele Bassi <ebassi@linux.intel.com>
9833Date:   Thu Nov 5 11:57:06 2009 +0000
9834
9835    layout: Add LayoutManager::get_child_meta_type()
9836
9837    In order to inspect a LayoutManager using LayoutMeta we need a
9838    virtual function that returns the GType of the LayoutMeta used.
9839
9840 clutter/clutter-layout-manager.c | 7 +++++++
9841 clutter/clutter-layout-manager.h | 3 +++
9842 2 files changed, 10 insertions(+)
9843
9844commit 95d78acb4ca72951fc9552c9fcffa645b1be739a
9845Author: Emmanuele Bassi <ebassi@linux.intel.com>
9846Date:   Wed Nov 4 16:45:44 2009 +0000
9847
9848    script: Allow parsing child properties
9849
9850    The ClutterScript parser needs to be extended to parse child properties
9851    and apply them after an actor has been added to a container. In order to
9852    distinguish child properties from regular GObject properties we can use
9853    the "child::" prefix, e.g.:
9854
9855      {
9856        "type" : "ClutterRectangle",
9857        "id" : "child-01",
9858        "child::has-focus" : true,
9859        ...
9860      }
9861
9862    Parsing child properties can be deferred to the ClutterScriptable
9863    interface, just like regular properties.
9864
9865 .gitignore                         |   1 +
9866 clutter/clutter-script-parser.c    | 115 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
9867 clutter/clutter-script-private.h   |   2 ++
9868 tests/conform/Makefile.am          |   2 ++
9869 tests/conform/test-conform-main.c  |   1 +
9870 tests/conform/test-script-parser.c | 156 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
9871 tests/data/test-script-child.json  |  21 +++++++++++++++++++++
9872 7 files changed, 297 insertions(+), 1 deletion(-)
9873
9874commit c52d8780325a0077f7fc6e898d902462ffbe3c8c
9875Author: Robert Bragg <robert@linux.intel.com>
9876Date:   Sat Oct 17 04:06:56 2009 +0100
9877
9878    [cogl-primitives] Get rid of driver specific cogl-primitives code
9879
9880    These files were practically identical, except the gles code had additional
9881    support for filling paths without a stencil buffer.  All the driver code has
9882    now been moved into cogl/cogl-primitives.c
9883
9884 clutter/cogl/cogl/cogl-primitives.c             | 488 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
9885 clutter/cogl/cogl/driver/gl/Makefile.am         |   1 -
9886 clutter/cogl/cogl/driver/gl/cogl-primitives.c   | 313 ---------------------------------------------------------------------------------------------------------------
9887 clutter/cogl/cogl/driver/gles/Makefile.am       |   1 -
9888 clutter/cogl/cogl/driver/gles/cogl-primitives.c | 516 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
9889 5 files changed, 482 insertions(+), 837 deletions(-)
9890
9891commit 8ba13d6495d00885380db3a23f552633c5c43c0a
9892Author: Emmanuele Bassi <ebassi@linux.intel.com>
9893Date:   Wed Nov 4 15:21:03 2009 +0000
9894
9895    script: Clean up Color parsing rules
9896
9897    All the ClutterColor parsing rules should be coalesced inside
9898    clutter_script_parse_color(): object, array and string notations
9899    are the canonical ways of defining a ClutterColor inside a
9900    ClutterScript definition. Having a single function in charge of
9901    the parsing cleans up the code.
9902
9903 clutter/clutter-script-parser.c    | 17 +++++++----------
9904 tests/conform/test-script-parser.c |  6 ++++++
9905 2 files changed, 13 insertions(+), 10 deletions(-)
9906
9907commit 3e815de32b2aa525365b80fb7d2f5d5dc9d2fb72
9908Author: Emmanuele Bassi <ebassi@linux.intel.com>
9909Date:   Wed Nov 4 15:20:12 2009 +0000
9910
9911    script: Simplify boxed types parsing
9912
9913    We should use the typed accessors for complex JSON types, and
9914    be more liberal in what we accept.
9915
9916 clutter/clutter-script-parser.c | 147 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------------------------
9917 1 file changed, 57 insertions(+), 90 deletions(-)
9918
9919commit 4df59d330ca4ba7ffcff830001ddbc4fe64167ee
9920Author: Emmanuele Bassi <ebassi@linux.intel.com>
9921Date:   Wed Nov 4 14:05:13 2009 +0000
9922
9923    script: Separate construction from properties application
9924
9925    Currently, ClutterScriptParser will construct the object (using the
9926    construct-only and construct parameters), apply the properties from
9927    the ClutterScript definition, and eventuall will add children and
9928    behaviours.
9929
9930    The construction phase should be more compartimentalized: the objects
9931    should be constructed first and eventual children and behaviours
9932    added. Then, once an object is requested or when the parsing process
9933    has terminated, all the properties should be applied.
9934
9935    This change allows us to set up the actors before setting their
9936    non-construct properties.
9937
9938 clutter/clutter-script-parser.c  | 137 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------
9939 clutter/clutter-script-private.h |   8 +++++---
9940 clutter/clutter-script.c         |  22 ++++++++++++++++++----
9941 3 files changed, 88 insertions(+), 79 deletions(-)
9942
9943commit 31e5dadb68cf285d57935573e16713201f24503e
9944Author: Emmanuele Bassi <ebassi@linux.intel.com>
9945Date:   Wed Nov 4 13:32:26 2009 +0000
9946
9947    script: Move all parser code inside ClutterScriptParser
9948
9949    ClutterScript is currently a mix of parser-related code and
9950    the ClutterScript object. All the parser-related code should
9951    be moved inside a private class, ClutterScriptParser, inheriting
9952    from JsonParser.
9953
9954 clutter/clutter-script-parser.c  | 1288 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
9955 clutter/clutter-script-private.h |   38 +++++-
9956 clutter/clutter-script.c         | 1485 ++++++++++++++++-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
9957 3 files changed, 1438 insertions(+), 1373 deletions(-)
9958
9959commit d7cfa158513263a5f75934a8f9ddceea9a6b8800
9960Author: Emmanuele Bassi <ebassi@linux.intel.com>
9961Date:   Wed Nov 4 11:50:45 2009 +0000
9962
9963    conform: Add the beginnings of a ClutterScript test suite
9964
9965    ClutterScript is a very complicated piece of machinery, with a
9966    parser that has custom variations on top of the basic JSON
9967    format; it could also be extended in the future, so if we don't
9968    want to introduce regressions or break existing ClutterScript
9969    definitions, we'd better have a conformance test suite.
9970
9971 .gitignore                         |  1 +
9972 tests/conform/Makefile.am          |  1 +
9973 tests/conform/test-conform-main.c  |  2 ++
9974 tests/conform/test-script-parser.c | 33 +++++++++++++++++++++++++++++++++
9975 tests/data/Makefile.am             | 13 ++++++++-----
9976 tests/data/test-script-single.json | 10 ++++++++++
9977 6 files changed, 55 insertions(+), 5 deletions(-)
9978
9979commit 7d891d9dd4acbaedc5b2a2f95445a1e93fd1529f
9980Author: Emmanuele Bassi <ebassi@linux.intel.com>
9981Date:   Wed Nov 4 11:47:09 2009 +0000
9982
9983    tests: Allow getting data files from the tests/data directory
9984
9985    The units under the conformance test suite should be able to use
9986    external files. Linking the files in tests/conform like the
9987    interactive tests do seems like a hack piled on top of a hack, so
9988    instead we should provide a programmatic way for a conformance
9989    test unit to get the full path of a file, regardless of where the
9990    tests/data directory is.
9991
9992    We can use a define to get the full path of tests/data and then
9993    a function using g_build_filename() to construct the path to the
9994    file we want.
9995
9996 tests/conform/Makefile.am           | 14 +++++++++-----
9997 tests/conform/test-conform-common.h |  1 +
9998 tests/conform/test-conform-main.c   |  6 ++++++
9999 3 files changed, 16 insertions(+), 5 deletions(-)
10000
10001commit 3e20468c6bd982eb8be0e3cbf9c9b72df38eaeeb
10002Author: Emmanuele Bassi <ebassi@linux.intel.com>
10003Date:   Wed Nov 4 11:05:25 2009 +0000
10004
10005    Add new conformance tests to the ignore list
10006
10007 .gitignore | 3 +++
10008 1 file changed, 3 insertions(+)
10009
10010commit 6e571928a49641f353f31e1f69328e1466b6ac66
10011Author: Emmanuele Bassi <ebassi@linux.intel.com>
10012Date:   Tue Nov 3 18:30:28 2009 +0000
10013
10014    script: Take a copy of property nodes
10015
10016    Instead of counting on a JsonNode pointer to survive we should take
10017    a copy. This allows keeping unresolved properties across different
10018    ClutterScript passes.
10019
10020 clutter/clutter-script.c | 5 ++++-
10021 1 file changed, 4 insertions(+), 1 deletion(-)
10022
10023commit 4ad57aa3e4caedd89e9c60c60aadbc239290cfe3
10024Author: Emmanuele Bassi <ebassi@linux.intel.com>
10025Date:   Tue Nov 3 18:29:52 2009 +0000
10026
10027    script: Use JsonObject direct accessors
10028
10029    Instead of getting the JsonNode for a member of which we mandate
10030    the type we can use the typed accessors of JsonObject.
10031
10032 clutter/clutter-script.c | 16 ++++++++++------
10033 1 file changed, 10 insertions(+), 6 deletions(-)
10034
10035commit 0ff420fab59221fccf711893c363145607b40898
10036Merge: f6e0e48ac 4258214e5
10037Author: Robert Bragg <robert@linux.intel.com>
10038Date:   Wed Nov 4 03:46:45 2009 +0000
10039
10040    Merge commit 'cogl-reorg-draw-buffers'
10041
10042    * cogl-reorg-draw-buffers: (38 commits)
10043      [test-fbo] greatly simplify the test
10044      [tests] test-backface-culling: test culling with offscreen rendering
10045      [tests] Adds test-cogl-readpixels.c for very basic cogl_read_pixels testing
10046      [tests] Adds test-cogl-offscreen to validate offscreen draw buffer
10047      [tests] test-cogl-viewport tests semantics of over/under size viewports
10048      [test-texture-fbo] comment the colors defined in corner_colors
10049      Add a conformance test for clutter_texture_new_from_actor
10050      [cogl-texture-2d-sliced] allow COGL_FORMAT_ANY with _new_with_size()
10051      [texture] fix rounding when calculating update_fbo viewport offset
10052      [texture] switch to a new design for handling offscreen rendering
10053      [texture] split out fbo update code from cluter_texture_paint
10054      [texture] push/pop draw buffer when painting actors to a texture
10055      [texture] Avoid redundant use of cogl_clip_stack_save when drawing offscreen
10056      [cogl-draw-buffer] fix Cogl -> GL viewport coord conversion
10057      [cogl_clip_push_window_rect] fix Cogl -> GL coordinate conversion
10058      [matrix] Adds cogl_matrix_get_inverse API
10059      [debug] Adds a COGL_DEBUG=matrices debug option
10060      [cogl-matrix] Import Mesa's matrix manipulation code
10061      [cogl] avoid any state changes when cogl_set_backface_culling_enable is a nop
10062      [cogl] Use clockwise face winding for offscreen buffers with culling enabled
10063      ...
10064
10065commit 4258214e509edbc4ff82de418ffc9662088fa835
10066Author: Robert Bragg <robert@linux.intel.com>
10067Date:   Wed Oct 7 10:40:15 2009 +0100
10068
10069    [test-fbo] greatly simplify the test
10070
10071    This test tried to do too much, and I can't remember the last time I saw this
10072    test work.
10073
10074    It no longer tries to create a texture from an offscreen actor and it no
10075    longer tries to use shaders.
10076
10077    It does though show that chaining of clutter_texture_new_from_actor now
10078    works, and that animating the source actor is reflected in textures created
10079    from it.
10080
10081    When run you should see three actors:
10082    - on the left is the pristine source actor rotating around the y-axis
10083    - in the middle is the first texture created from the source actor
10084    - and on the right a texture created from the middle actor
10085
10086    Note: the somewhat strange bobbing of the middle and right textures is
10087    actually correct given how it was decided long ago to map the transformed
10088    (to screen space) allocation of the source actor to the texture.  When the
10089    hand spins around the perspective projection of the top of the hand results
10090    in the origin of the texture bobbing up to a higher stage position, but the
10091    position of the textures is fixed.  This design also means we end up
10092    reallocating our offscreen draw buffer every frame that the actors
10093    transformed size changes, which isn't ideal.
10094
10095 tests/interactive/test-fbo.c | 192 ++++++++++++++++++++++++++++++++++--------------------------------------------------------------------------------------------------------------------------------------------------------------
10096 1 file changed, 34 insertions(+), 158 deletions(-)
10097
10098commit ffb592de5908d844b527cb4fe75b7195eb0dc55d
10099Author: Robert Bragg <robert@linux.intel.com>
10100Date:   Thu Oct 22 19:01:27 2009 +0100
10101
10102    [tests] test-backface-culling: test culling with offscreen rendering
10103
10104    Since offscreen rendering is internally forced to be upside down Cogl
10105    needs to reverse the glFrontFace winding order so as not to interfere
10106    with the use of cogl_set_backface_culling_enabled()
10107
10108    This ensures we test that mechanism.
10109
10110 tests/conform/test-backface-culling.c | 172 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------------------
10111 1 file changed, 111 insertions(+), 61 deletions(-)
10112
10113commit 60b642f5d6aada0d237cfb7d81f6b78299c29e73
10114Author: Robert Bragg <robert@linux.intel.com>
10115Date:   Thu Oct 22 16:56:01 2009 +0100
10116
10117    [tests] Adds test-cogl-readpixels.c for very basic cogl_read_pixels testing
10118
10119    Mostly this was written to verify that we don't flip the data read back from
10120    an offscreen draw buffer.  (since all offscreen rendering is done upside
10121    down)
10122
10123 tests/conform/Makefile.am            |   1 +
10124 tests/conform/test-cogl-readpixels.c | 153 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
10125 tests/conform/test-conform-main.c    |   1 +
10126 3 files changed, 155 insertions(+)
10127
10128commit 2ff7f2d287f8dc80f0e6e02bdc388d4fee99d878
10129Author: Robert Bragg <robert@linux.intel.com>
10130Date:   Thu Oct 22 12:36:17 2009 +0100
10131
10132    [tests] Adds test-cogl-offscreen to validate offscreen draw buffer
10133
10134    This adds a basic test to check that rendering a few colored rectangles
10135    offscreen works and that the modelview gets restored when switching back to
10136    the previous buffer.
10137
10138 tests/conform/Makefile.am           |   1 +
10139 tests/conform/test-cogl-offscreen.c | 169 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
10140 tests/conform/test-conform-main.c   |   1 +
10141 3 files changed, 171 insertions(+)
10142
10143commit 369e68630daf7f833da986a19ad17043b43d61e3
10144Author: Robert Bragg <robert@linux.intel.com>
10145Date:   Wed Oct 21 16:06:43 2009 +0100
10146
10147    [tests] test-cogl-viewport tests semantics of over/under size viewports
10148
10149    Unlike OpenGL Cogl puts the origin of windows/viewports at the top left
10150    instead of bottom left.  This test verifies that we correctly translate Cogl
10151    viewports to OpenGL viewports for the awkward cases where the given viewport
10152    has an offset and/or the viewport has a different size to the current draw
10153    buffer.
10154
10155 tests/conform/Makefile.am          |   1 +
10156 tests/conform/test-cogl-viewport.c | 417 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
10157 tests/conform/test-conform-main.c  |   2 +
10158 3 files changed, 420 insertions(+)
10159
10160commit bc24190b9ac32405d4be24d84968357921c7f7e2
10161Author: Robert Bragg <robert@linux.intel.com>
10162Date:   Mon Nov 2 01:23:25 2009 +0000
10163
10164    [test-texture-fbo] comment the colors defined in corner_colors
10165
10166    It helps to be able to quickly glance at the definition to see which
10167    quadrant of the test actor should be which color, so when debugging a
10168    problem and looking at the visual output you can easily verify if it's being
10169    flipped upside down/left to right.
10170
10171 tests/conform/test-texture-fbo.c | 8 ++++----
10172 1 file changed, 4 insertions(+), 4 deletions(-)
10173
10174commit b41a81fb0868e51bf03d25446f8cc9748fcd6bc7
10175Author: Neil Roberts <neil@linux.intel.com>
10176Date:   Thu Sep 17 14:25:29 2009 +0100
10177
10178    Add a conformance test for clutter_texture_new_from_actor
10179
10180    This contains four tests :-
10181
10182     - A regular onscreen source with a clone next to it
10183
10184     - An offscreen source with a clone. This is currently commented out
10185       because it no longer works.
10186
10187     - An onscreen source with a rectangular clip and a clone.
10188
10189     - An onscreen source with a clip from a path and a clone.
10190
10191    The sources are all a 2x2 grid of colors. Each clone is tested that it
10192    either contains the color that should be at that grid position or that
10193    the stage color is showing through if the source is clipped.
10194
10195 tests/conform/Makefile.am         |   1 +
10196 tests/conform/test-conform-main.c |   1 +
10197 tests/conform/test-texture-fbo.c  | 255 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
10198 3 files changed, 257 insertions(+)
10199
10200commit fec13f6202067f0700514db6676d3984b78a26df
10201Author: Robert Bragg <robert@linux.intel.com>
10202Date:   Sat Oct 31 00:01:44 2009 +0000
10203
10204    [cogl-texture-2d-sliced] allow COGL_FORMAT_ANY with _new_with_size()
10205
10206    It's useful when initialzing offscreen draw buffers to be able to ask
10207    Cogl to create a texture of a given size and with the default internal
10208    pixel format.
10209
10210 clutter/cogl/cogl/cogl-texture-2d-sliced.c | 2 +-
10211 1 file changed, 1 insertion(+), 1 deletion(-)
10212
10213commit ae57c30e937d90eb1e541edd36ae9f81aedc2854
10214Author: Robert Bragg <robert@linux.intel.com>
10215Date:   Sun Nov 1 23:56:03 2009 +0000
10216
10217    [texture] fix rounding when calculating update_fbo viewport offset
10218
10219    When rendering to an fbo for supporting clutter_texture_new_from_actor we
10220    render to an fbo with the same size as the source actor, but with a viewport
10221    the same size as the stage.  We offset the viewport so when we render the
10222    source actor in its normal transformed stage position it lands on the fbo.
10223    Previously we were rounding the transformed position given as a float by
10224    truncating the fraction (just using a C cast) but that resulted in an
10225    incorrect pixel offset when rendering offscreen depending on the source
10226    position.
10227
10228    We now simply + 0.5 before casting (or -0.5 for negative numbers)
10229
10230 clutter/clutter-texture.c | 14 +++++++++++++-
10231 1 file changed, 13 insertions(+), 1 deletion(-)
10232
10233commit 309f852efbde6a3e025225d01293509c28989d0c
10234Author: Robert Bragg <robert@linux.intel.com>
10235Date:   Mon Nov 2 01:14:50 2009 +0000
10236
10237    [texture] switch to a new design for handling offscreen rendering
10238
10239    For supporting clutter_texture_new_from_actor(): when updating a
10240    ClutterTexture's fbo we previously set up an offset frustum in the
10241    perspective matrix before rendering source actors to an offscreen draw
10242    buffer so as to give a perspective as if it were being drawn at its
10243    original stage location.
10244
10245    Now that Cogl supports offset viewports there is a simpler way...
10246
10247    When we come to render the source actor to our offscreen draw buffer we
10248    now copy the projection matrix from the stage; we create a viewport
10249    that's also the same size as the stage (though larger than the offscreen
10250    draw buffer) and as before we apply the modelview transformations of
10251    the source actors ancestry before painting it.
10252
10253    The only trick we need now is to offset the viewport according to the
10254    transformed (to screen space) allocation of the source actor (something we
10255    required previously too).  We negatively offset the stage sized viewport
10256    such that the smaller offscreen draw buffer is positioned to sit underneath
10257    the source actor in stage coordinates.
10258
10259 clutter/clutter-texture.c | 100 +++++++++++++++++++++++++++++++++++-----------------------------------------------------------------
10260 1 file changed, 35 insertions(+), 65 deletions(-)
10261
10262commit 94a6028358caed32dba7ba37db9784c95d4690f2
10263Author: Robert Bragg <robert@linux.intel.com>
10264Date:   Thu Sep 24 14:34:09 2009 +0100
10265
10266    [texture] split out fbo update code from cluter_texture_paint
10267
10268    To help keep clutter_texture_paint maintainable this splits out a big
10269    chunk of standalone code that's responsible for updating the fbo when
10270    clutter_texture_new_from_actor has been used.
10271
10272 clutter/clutter-texture.c | 156 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------------------
10273 1 file changed, 81 insertions(+), 75 deletions(-)
10274
10275commit 2762e6d9b90731fd05b46aac407cebd3ba372027
10276Author: Robert Bragg <robert@linux.intel.com>
10277Date:   Tue Oct 13 22:22:39 2009 +0100
10278
10279    [texture] push/pop draw buffer when painting actors to a texture
10280
10281    When updating the FBO for a source actor (to support
10282    clutter_texture_new_from_actor()) we used to simply set an offscreen draw
10283    buffer to be current, paint the source actor and then explicitly set the
10284    window to be current again.  This precluded chaining texture_new_from_actor
10285    though because updating another FBO associated with a source actor would end
10286    up restoring the window as the current buffer instead of the previous
10287    offscreen buffer.  Now that we use Cogl's draw buffer stack; chaining
10288    clutter_texture_new_from_actor() should be possible.
10289
10290 clutter/clutter-texture.c | 5 +++--
10291 1 file changed, 3 insertions(+), 2 deletions(-)
10292
10293commit c7d229585f2e8dec30162cbad955230c25e16718
10294Author: Robert Bragg <robert@linux.intel.com>
10295Date:   Fri Oct 23 00:16:30 2009 +0100
10296
10297    [texture] Avoid redundant use of cogl_clip_stack_save when drawing offscreen
10298
10299    Since cogl draw buffers now own their clip state the stage's clip state will
10300    automatically be saved and restored via the cogl_set_draw_buffer API.
10301
10302 clutter/clutter-texture.c | 6 ------
10303 1 file changed, 6 deletions(-)
10304
10305commit 90dbae5aa9a31688f2dd73b75df67607795fa60e
10306Author: Robert Bragg <robert@linux.intel.com>
10307Date:   Sat Oct 31 00:00:33 2009 +0000
10308
10309    [cogl-draw-buffer] fix Cogl -> GL viewport coord conversion
10310
10311    Before we call glViewport we need to convert Cogl viewport coordinates
10312    (where the origin is defined to be top left) to OpenGL coordinates
10313    (where the origin is defined to be bottom left)
10314
10315    We weren't considering that offscreen rendering is always upside down
10316    and in this case Cogl coordinates == OpenGL coordinates.
10317
10318 clutter/cogl/cogl/cogl-draw-buffer.c | 15 +++++++++++----
10319 1 file changed, 11 insertions(+), 4 deletions(-)
10320
10321commit 149e3e168a14049bb496a6438b711caa1fbe8129
10322Author: Robert Bragg <robert@linux.intel.com>
10323Date:   Fri Oct 30 23:57:56 2009 +0000
10324
10325    [cogl_clip_push_window_rect] fix Cogl -> GL coordinate conversion
10326
10327    Firstly this now uses the draw buffer height not the viewport height
10328    when we need to perform a y = height - y conversion, since (as the
10329    name suggests) we are dealing with window coordinates not viewport
10330    coordinates.
10331
10332    Secondly this skips any conversion when the current draw buffer is an
10333    offscreen draw buffer since offscreen rendering is always forced to be
10334    upside down and in this case Cogl window coordinates == GL window
10335    coordinates.
10336
10337 clutter/cogl/cogl/cogl-clip-stack.c | 32 ++++++++++++++++++++++++++------
10338 1 file changed, 26 insertions(+), 6 deletions(-)
10339
10340commit 0369a1b84d725c6dbd90f9a9dd1753bea1f9c3e1
10341Author: Robert Bragg <robert@linux.intel.com>
10342Date:   Mon Oct 26 17:51:34 2009 +0000
10343
10344    [matrix] Adds cogl_matrix_get_inverse API
10345
10346    This new API takes advantage of the recently imported Mesa code to support
10347    inverse matrix calculation.  The matrix code keeps track (via internal
10348    flags) of the transformations a matrix represents so that it can select an
10349    optimized inversion function.
10350
10351    Note: although other aspects of the Cogl matrix API have followed a similar
10352    style to Cairo's matrix API we haven't added a cogl_matrix_invert API
10353    because the inverse of a CoglMatrix is actually cached as part of the
10354    CoglMatrix structure meaning a destructive API like cogl_matrix_invert
10355    doesn't let users take advantage of this caching design.
10356
10357 clutter/cogl/cogl/cogl-context.h      |  3 ---
10358 clutter/cogl/cogl/cogl-matrix-stack.c | 11 +++++++++++
10359 clutter/cogl/cogl/cogl-matrix-stack.h |  3 +++
10360 clutter/cogl/cogl/cogl-matrix.c       | 33 +++++++++++++++++++++------------
10361 clutter/cogl/cogl/cogl-matrix.h       | 21 +++++++++++++++++++++
10362 clutter/cogl/cogl/cogl.c              | 47 +++++++++--------------------------------------
10363 6 files changed, 65 insertions(+), 53 deletions(-)
10364
10365commit 8051596e96a296cf30887f6e522a288895b628f8
10366Author: Robert Bragg <robert@linux.intel.com>
10367Date:   Mon Oct 26 11:01:33 2009 +0000
10368
10369    [debug] Adds a COGL_DEBUG=matrices debug option
10370
10371    This adds a COGL_DEBUG=matrices debug option that can be used to trace all
10372    matrix manipulation done using the Cogl API.  This can be handy when you
10373    break something in such a way that a trace is still comparable with a
10374    previous working version since you can simply diff a log of the broken
10375    version vs the working version to home in on the bug.
10376
10377 clutter/cogl/cogl/cogl-debug.c          |  3 ++-
10378 clutter/cogl/cogl/cogl-debug.h          |  3 ++-
10379 clutter/cogl/cogl/cogl-matrix-private.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++
10380 clutter/cogl/cogl/cogl-matrix.c         | 20 ++++++++++++++++++++
10381 clutter/cogl/cogl/cogl.c                |  5 +++++
10382 5 files changed, 76 insertions(+), 2 deletions(-)
10383
10384commit eb438dd499c002a7d770d5e3d0c1fb1c84da933e
10385Author: Robert Bragg <robert@linux.intel.com>
10386Date:   Mon Oct 26 08:23:21 2009 +0000
10387
10388    [cogl-matrix] Import Mesa's matrix manipulation code
10389
10390    This pulls in code from Mesa to improve our matrix manipulation support. It
10391    includes support for calculating the inverse of matrices based on top of a
10392    matrix categorizing system that allows optimizing certain matrix types.
10393    (the main thing we were after) but also adds some optimisations for
10394    rotations.
10395
10396    Changes compared to the original code from Mesa:
10397
10398    - Coding style is consistent with the rest of Cogl
10399    - Instead of allocating matrix->m and matrix->inv using malloc, our public
10400      CoglMatrix typedef is large enough to directly contain the matrix, its
10401      inverse, a type and a set of flags.
10402    - Instead of having a _math_matrix_analyse which updates the type, flags and
10403      inverse, we have _math_matrix_update_inverse which essentially does the
10404      same thing (internally making use of _math_matrix_update_type_and_flags())
10405      but with additional guards in place to bail out when the inverse matrix is
10406      still valid.
10407    - When initializing a matrix with the identity matrix we don't immediately
10408      initialize the inverse matrix; rather we just set the dirty flag for the
10409      inverse (since it's likely the user won't request the inverse of the
10410      identity matrix)
10411
10412 clutter/cogl/cogl/Makefile.am        |    2 +
10413 clutter/cogl/cogl/cogl-matrix-mesa.c | 1698 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
10414 clutter/cogl/cogl/cogl-matrix-mesa.h |  226 ++++++++++++++++++++++++++
10415 clutter/cogl/cogl/cogl-matrix.c      |   39 ++++-
10416 clutter/cogl/cogl/cogl-matrix.h      |    6 +-
10417 5 files changed, 1967 insertions(+), 4 deletions(-)
10418
10419commit d38d888f786f3be03778bcc10f20389e6c7ff1ff
10420Author: Robert Bragg <robert@linux.intel.com>
10421Date:   Thu Oct 22 19:09:20 2009 +0100
10422
10423    [cogl] avoid any state changes when cogl_set_backface_culling_enable is a nop
10424
10425    This is a simple optimization to bail out of cogl_set_backface_culling_enable
10426    if it's not resulting in a change of state.
10427
10428 clutter/cogl/cogl/cogl.c | 3 +++
10429 1 file changed, 3 insertions(+)
10430
10431commit 764cca75b4ee6bb269097445cb5220f0e044a57c
10432Author: Robert Bragg <robert@linux.intel.com>
10433Date:   Thu Oct 22 19:01:52 2009 +0100
10434
10435    [cogl] Use clockwise face winding for offscreen buffers with culling enabled
10436
10437    Because Cogl defines the origin for texture as top left and offscreen draw
10438    buffers can be used to render to textures, we (internally) force all
10439    offscreen rendering to be upside down. (because OpenGL defines the origin
10440    to be bottom left)
10441
10442    By forcing the users scene to be rendered upside down though we also reverse
10443    the winding order of all the drawn triangles which may interfere with the
10444    users use of backface culling.  This patch ensures that we reverse the
10445    winding order for a front face (if culling is in use) while rendering
10446    offscreen so we don't conflict with the users back face culling.
10447
10448 clutter/cogl/cogl/cogl-context.c       |  2 ++
10449 clutter/cogl/cogl/cogl-context.h       |  1 +
10450 clutter/cogl/cogl/cogl-internal.h      |  9 +++++++++
10451 clutter/cogl/cogl/cogl-journal.c       |  1 +
10452 clutter/cogl/cogl/cogl-primitives.c    |  1 +
10453 clutter/cogl/cogl/cogl-vertex-buffer.c |  1 +
10454 clutter/cogl/cogl/cogl.c               | 33 +++++++++++++++++++++++++++++++++
10455 7 files changed, 48 insertions(+)
10456
10457commit b2ebb7db485d0a58bcb642fe9e4584c85ac9a503
10458Author: Robert Bragg <robert@linux.intel.com>
10459Date:   Fri Oct 30 23:54:13 2009 +0000
10460
10461    [main] Use cogl_read_pixels not glReadPixels in clutter-main.c
10462
10463    The debugging function read_pixels_to_file() and _clutter_do_pick were both
10464    directly calling glReadPixels, but we don't wan't Clutter making direct
10465    OpenGL calls and Cogl provides a suitable alternative.  It also means
10466    read_pixels_to_file() doesn't need to manually flip the data read due to
10467    differences in Clutter/Cogl coordinate systems.
10468
10469 clutter/clutter-main.c | 31 +++++++++++++++----------------
10470 1 file changed, 15 insertions(+), 16 deletions(-)
10471
10472commit 40b8399d49f6b0383b9eebcdf1ca501b5edb4f39
10473Author: Robert Bragg <robert@linux.intel.com>
10474Date:   Tue Nov 3 12:54:45 2009 +0000
10475
10476    [cogl_read_pixels] don't force a 4 byte pack alignment
10477
10478    Technically this change shouldn't make a difference since we are
10479    calling glReadPixels with GL_RGBA GL_UNSIGNED_BYTE which is a 4
10480    byte format and it should always result in the same value according
10481    to how OpenGL calculates the location of sequential rows.
10482
10483    i.e. k  = a/s * ceil(snl/a) where:
10484     a = alignment
10485     s = component size (1)
10486     n = number of components per pixel (4)
10487     l = number of pixels in a row
10488    gives:
10489    k = 4/1 * ceil(4l/4) and k = 1/1 * ceil(4l/1) which are equivalent
10490
10491    I'm changing it because I've seen i915 driver code that bails out of
10492    hardware accelerated paths if the alignment isn't 1, and because
10493    conceptually we have no alignment constraints here so even if the current
10494    value has no effect, when we start reading back other formats it may upset
10495    things.
10496
10497 clutter/cogl/cogl/cogl.c | 10 +++++-----
10498 1 file changed, 5 insertions(+), 5 deletions(-)
10499
10500commit a222ee22f9dd35c5e0671914206759699e63750d
10501Author: Robert Bragg <robert@linux.intel.com>
10502Date:   Mon Nov 2 01:11:21 2009 +0000
10503
10504    [cogl_read_pixels] call cogl_flush() before changing glPixelStore state
10505
10506    We were previously calling cogl_flush() after setting up the glPixelStore
10507    state for calling glReadPixels, but flushing the journal could itself
10508    change the glPixelStore state.
10509
10510 clutter/cogl/cogl/cogl.c | 8 ++++----
10511 1 file changed, 4 insertions(+), 4 deletions(-)
10512
10513commit ed431a3c65507b3e3da4760eae6e2b22be1f27f5
10514Author: Robert Bragg <robert@linux.intel.com>
10515Date:   Mon Nov 2 01:10:02 2009 +0000
10516
10517    [cogl_read_pixels] ensure we flush the current draw buffer state before reading
10518
10519    Make sure we call _cogl_draw_buffer_flush_state() before glReadPixels() to
10520    be sure we have bound the correct framebuffer.
10521
10522 clutter/cogl/cogl/cogl.c | 3 +++
10523 1 file changed, 3 insertions(+)
10524
10525commit b47404c91d6fac264840a0dafb5dd2dd5567c6a9
10526Author: Robert Bragg <robert@linux.intel.com>
10527Date:   Mon Nov 2 01:12:10 2009 +0000
10528
10529    [cogl_read_pixels] fixes for calculating the y offset when rendering offscreen
10530
10531    Since offscreen rendering is forced to be upside down we don't need to do
10532    any conversion of the users coordinates to go from Cogl window coordinates
10533    to OpenGL window coordinates.
10534
10535 clutter/cogl/cogl/cogl.c | 9 +++++++--
10536 1 file changed, 7 insertions(+), 2 deletions(-)
10537
10538commit 426197f51da9c4351b36812276f0caee06965cb1
10539Author: Robert Bragg <robert@linux.intel.com>
10540Date:   Thu Oct 22 16:55:07 2009 +0100
10541
10542    [read-pixels] don't flip data when reading from offscreen draw buffers
10543
10544    Since we do all offscreen rendering upside down (so that we can have the
10545    origin for texture coordinates be the top left of textures for the cases
10546    where offscreen draw buffers are bound to textures) we don't need to flip
10547    data read back from an offscreen framebuffer before we we return it to the
10548    user.
10549
10550 clutter/cogl/cogl/cogl.c | 9 ++++++++-
10551 1 file changed, 8 insertions(+), 1 deletion(-)
10552
10553commit 21322848e0094a025dc0b5461eff30e0d66542da
10554Author: Robert Bragg <robert@linux.intel.com>
10555Date:   Wed Oct 21 23:22:45 2009 +0100
10556
10557    [clip-stack] tidy up transform_point() code
10558
10559    I was originally expecting the code not to handle offset viewports or
10560    viewports with a different size to the framebuffer, but it turns out the
10561    code worked fine.  In the process though I think I made the code slightly
10562    more readable.
10563
10564 clutter/cogl/cogl/cogl-clip-stack.c | 32 +++++++++++++++++++++-----------
10565 1 file changed, 21 insertions(+), 11 deletions(-)
10566
10567commit 8c3a132ecb3ce805c45dad70c05417713ed9d05d
10568Author: Robert Bragg <robert@linux.intel.com>
10569Date:   Tue Nov 3 13:26:58 2009 +0000
10570
10571    [cogl] deprecate cogl_viewport() in favour of cogl_set_viewport()
10572
10573    cogl_viewport only accepted a viewport width and height, but there are times
10574    when it's also desireable to have a viewport offset so that a scene can be
10575    translated after projection but before hitting the framebuffer.
10576
10577 README                      |  6 ++++++
10578 clutter/clutter-texture.c   |  2 +-
10579 clutter/cogl/cogl/cogl.c    | 12 ++++++------
10580 clutter/cogl/cogl/cogl.h.in | 22 +++++++++++++++++++++-
10581 4 files changed, 34 insertions(+), 8 deletions(-)
10582
10583commit 1e2d88e7891a02b26d0143e28788072e8731be6b
10584Author: Robert Bragg <robert@linux.intel.com>
10585Date:   Wed Oct 21 23:24:28 2009 +0100
10586
10587    [cogl_read_pixels] use buffer not viewport height to calculate y offset
10588
10589    glReadPixel takes window coordinates not viewport coordinates so we
10590    shouldn't have been assuming that the viewport height == window height.
10591
10592 clutter/cogl/cogl/cogl.c | 8 +++-----
10593 1 file changed, 3 insertions(+), 5 deletions(-)
10594
10595commit e1630be35a912125b1f493c7d1007b65eaecd048
10596Author: Robert Bragg <robert@linux.intel.com>
10597Date:   Wed Oct 21 23:20:44 2009 +0100
10598
10599    [draw-buffer] Adds cogl_draw_buffer_get_{width,height} API
10600
10601    Simply adds missing API to query the width and height of any Cogl draw buffer.
10602
10603 clutter/cogl/cogl/cogl-draw-buffer-private.h |  4 ++++
10604 clutter/cogl/cogl/cogl-draw-buffer.c         | 14 ++++++++++++++
10605 2 files changed, 18 insertions(+)
10606
10607commit 12af2751392ea53959fa41dd7cb19e07358655f2
10608Author: Robert Bragg <robert@linux.intel.com>
10609Date:   Wed Oct 21 23:24:49 2009 +0100
10610
10611    [cogl] Make sure Cogl always knows the current window geometry
10612
10613    Because Cogl defines the origin of viewport and window coordinates to be
10614    top-left it always needs to know the size of the current window so that Cogl
10615    window/viewport coordinates can be transformed into OpenGL coordinates.
10616
10617    This also fixes cogl_read_pixels to use the current draw buffer height
10618    instead of the viewport height to determine the OpenGL y coordinate to use
10619    for glReadPixels.
10620
10621 clutter/clutter-backend.c            | 19 ++++++++++++++++++-
10622 clutter/clutter-stage.c              |  8 ++++++++
10623 clutter/cogl/cogl/cogl-context.c     |  2 +-
10624 clutter/cogl/cogl/cogl-context.h     |  2 +-
10625 clutter/cogl/cogl/cogl-draw-buffer.c | 36 +++++++++++++++++++++++++++++++-----
10626 clutter/cogl/cogl/cogl.h.in          |  3 +++
10627 6 files changed, 62 insertions(+), 8 deletions(-)
10628
10629commit e3391b0173479b9ba3b01321ab606d83999bee1a
10630Author: Robert Bragg <robert@linux.intel.com>
10631Date:   Thu Oct 22 16:13:01 2009 +0100
10632
10633    [cogl] Make sure we draw upside down to offscreen draw buffers
10634
10635    First a few notes about Cogl coordinate systems:
10636    - Cogl defines the window origin, viewport origin and texture coordinates
10637    origin to be top left unlike OpenGL which defines them as bottom left.
10638    - Cogl defines the modelview and projection identity matrices in exactly the
10639    same way as OpenGL.
10640    - I.e. we believe that for 2D centric constructs: windows/framebuffers,
10641    viewports and textures developers are more used to dealing with a top left
10642    origin, but when modeling objects in 3D; an origin at the center with y
10643    going up is quite natural.
10644
10645    The way Cogl handles textures is by uploading data upside down in OpenGL
10646    terms so that bottom left becomes top left.  (Note: This also has the
10647    benefit that we don't need to flip the data we get from image decoding
10648    libraries since they typically also consider top left to be the image
10649    origin.)
10650
10651    The viewport and window coords are mostly handled with various y =
10652    height - y tweaks before we pass y coordinates to OpenGL.
10653
10654    Generally speaking though the handling of coordinate spaces in Cogl is a bit
10655    fragile.  I guess partly because none of it was design to be, it just
10656    evolved from how Clutter defines its coordinates without much consideration
10657    or testing.  I hope to improve this over a number of commits; starting here.
10658
10659    This commit deals with the fact that offscreen draw buffers may be bound to
10660    textures but we don't "upload" the texture data upside down, and so if you
10661    texture from an offscreen draw buffer you need to manually flip the texture
10662    coordinates to get it the right way around.  We now force offscreen
10663    rendering to be flipped upside down by tweaking the projection matrix right
10664    before we submit it to OpenGL to scale y by -1.  The tweak is entirely
10665    hidden from the user such that if you call cogl_get_projection you will not
10666    see this scale.
10667
10668 clutter/cogl/cogl/cogl-context.c             |  4 ++++
10669 clutter/cogl/cogl/cogl-context.h             |  4 ++++
10670 clutter/cogl/cogl/cogl-draw-buffer-private.h |  3 +++
10671 clutter/cogl/cogl/cogl-matrix-stack.c        | 36 ++++++++++++++++++++++++++----------
10672 4 files changed, 37 insertions(+), 10 deletions(-)
10673
10674commit 8b4c496f2a0291eb202d775e210b5901b6b73940
10675Author: Robert Bragg <robert@linux.intel.com>
10676Date:   Thu Oct 22 12:35:33 2009 +0100
10677
10678    [cogl] Ensure features are initialized first in cogl_create_context
10679
10680    Previously some context initializing was being done without valid feature
10681    flags.
10682
10683 clutter/cogl/cogl/cogl-context.c | 10 +++++-----
10684 1 file changed, 5 insertions(+), 5 deletions(-)
10685
10686commit 419db4dcfbef74475e155f8dd060bc1c526d5643
10687Author: Robert Bragg <robert@linux.intel.com>
10688Date:   Sat Oct 17 00:31:26 2009 +0100
10689
10690    [clip-stack] Handle flipped rectangles in try_pushing_rect_as_window_rect()
10691
10692    We were ignoring the possibility that the current modelview matrix may flip
10693    the incoming rectangle in which case we didn't calculate a valid scissor
10694    rectangle for clipping.
10695
10696    This fixes: http://bugzilla.o-hand.com/show_bug.cgi?id=1809
10697    (Clipping doesn't work within an FBO)
10698
10699 clutter/cogl/cogl/cogl-clip-stack.c | 18 ++++++++++++++++++
10700 1 file changed, 18 insertions(+)
10701
10702commit f7d64e5abd5717bb522d28b7565ecccae63271fc
10703Author: Robert Bragg <robert@linux.intel.com>
10704Date:   Fri Sep 25 14:34:34 2009 +0100
10705
10706    [draw-buffers] First pass at overhauling Cogl's framebuffer management
10707
10708    Cogl's support for offscreen rendering was originally written just to support
10709    the clutter_texture_new_from_actor API and due to lack of documentation and
10710    several confusing - non orthogonal - side effects of using the API it wasn't
10711    really possible to use directly.
10712
10713    This commit does a number of things:
10714    - It removes {gl,gles}/cogl-fbo.{c,h} and adds shared cogl-draw-buffer.{c,h}
10715      files instead which should be easier to maintain.
10716    - internally CoglFbo objects are now called CoglDrawBuffers. A
10717      CoglDrawBuffer is an abstract base class that is inherited from to
10718      implement CoglOnscreen and CoglOffscreen draw buffers.  CoglOffscreen draw
10719      buffers will initially be used to support the
10720      cogl_offscreen_new_to_texture API, and CoglOnscreen draw buffers will
10721      start to be used internally to represent windows as we aim to migrate some
10722      of Clutter's backend code to Cogl.
10723    - It makes draw buffer objects the owners of the following state:
10724      - viewport
10725      - projection matrix stack
10726      - modelview matrix stack
10727      - clip state
10728    (This means when you switch between draw buffers you will automatically be
10729     switching to their associated viewport, matrix and clip state)
10730
10731    Aside from hopefully making cogl_offscreen_new_to_texture be more useful
10732    short term by having simpler and well defined semantics for
10733    cogl_set_draw_buffer, as mentioned above this is the first step for a couple
10734    of other things:
10735    - Its a step toward moving ownership for windows down from Clutter backends
10736      into Cogl, by (internally at least) introducing the CoglOnscreen draw
10737      buffer.  Note: the plan is that cogl_set_draw_buffer will accept on or
10738      offscreen draw buffer handles, and the "target" argument will become
10739      redundant since we will instead query the type of the given draw buffer
10740      handle.
10741    - Because we have a common type for on and offscreen framebuffers we can
10742      provide a unified API for framebuffer management. Things like:
10743      - blitting between buffers
10744      - managing ancillary buffers (e.g. attaching depth and stencil buffers)
10745      - size requisition
10746      - clearing
10747
10748 clutter/clutter-main.c                              |   5 +-
10749 clutter/cogl/cogl/Makefile.am                       |   2 +
10750 clutter/cogl/cogl/cogl-clip-stack.c                 | 199 ++++++++++++++++++++++++++++++++++++++++++++++------------------
10751 clutter/cogl/cogl/cogl-clip-stack.h                 |   9 +--
10752 clutter/cogl/cogl/cogl-context.c                    |  34 +++++------
10753 clutter/cogl/cogl/cogl-context.h                    |  20 ++-----
10754 clutter/cogl/cogl/cogl-draw-buffer-private.h        | 126 +++++++++++++++++++++++++++++++++++++++++
10755 clutter/cogl/cogl/cogl-draw-buffer.c                | 555 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
10756 clutter/cogl/cogl/cogl-journal.c                    |  33 ++++++++---
10757 clutter/cogl/cogl/cogl-primitives.c                 |  19 +++----
10758 clutter/cogl/cogl/cogl-texture.c                    |  19 ++++---
10759 clutter/cogl/cogl/cogl-vertex-buffer.c              |  14 ++---
10760 clutter/cogl/cogl/cogl.c                            | 220 ++++++++++++++++++++++++++++++++++++++++++++---------------------------
10761 clutter/cogl/cogl/cogl.h.in                         |   1 +
10762 clutter/cogl/cogl/driver/gl/Makefile.am             |   2 -
10763 clutter/cogl/cogl/driver/gl/cogl-context-driver.c   |  19 ++++---
10764 clutter/cogl/cogl/driver/gl/cogl-context-driver.h   |  23 ++++----
10765 clutter/cogl/cogl/driver/gl/cogl-defines.h.in       |  28 ++++-----
10766 clutter/cogl/cogl/driver/gl/cogl-fbo.c              | 315 ------------------------------------------------------------------------------------------------------
10767 clutter/cogl/cogl/driver/gl/cogl-fbo.h              |  39 -------------
10768 clutter/cogl/cogl/driver/gl/cogl-primitives.c       |  99 ++++++++++++++++++++++----------
10769 clutter/cogl/cogl/driver/gl/cogl-texture-driver.c   |   2 +-
10770 clutter/cogl/cogl/driver/gl/cogl.c                  | 114 ++++++++++++++++++-------------------
10771 clutter/cogl/cogl/driver/gles/Makefile.am           |   2 -
10772 clutter/cogl/cogl/driver/gles/cogl-context-driver.c |  10 ++++
10773 clutter/cogl/cogl/driver/gles/cogl-context-driver.h |  17 ++++--
10774 clutter/cogl/cogl/driver/gles/cogl-defines.h.in     |  70 +++++++++++++++++++++++
10775 clutter/cogl/cogl/driver/gles/cogl-fbo.c            | 328 ----------------------------------------------------------------------------------------------------------
10776 clutter/cogl/cogl/driver/gles/cogl-fbo.h            |  39 -------------
10777 clutter/cogl/cogl/driver/gles/cogl-primitives.c     | 121 +++++++++++++++++++++++++++++++--------
10778 clutter/cogl/cogl/driver/gles/cogl.c                |  75 +++++++++++++++++++++++++
10779 31 files changed, 1471 insertions(+), 1088 deletions(-)
10780
10781commit f8f8873714043efbcbf92718493a94ac9ddf303f
10782Author: Robert Bragg <robert@linux.intel.com>
10783Date:   Tue Oct 20 16:55:10 2009 +0100
10784
10785    [stage-x11] Ensure viewport is initialized before first stage paint
10786
10787    This ensures that glViewport is called before the first stage paint.
10788    Previously _clutter_stage_maybe_setup_viewport (which is done before we
10789    start painting) was bailing out without calling cogl_setup_viewport because
10790    the CLUTTER_STAGE_IN_RESIZE flag may be set if the stage was resized before
10791    the first paint.  (NB: The CLUTTER_STAGE_IN_RESIZE flag isn't removed until
10792    we get an explicit event back from the X server since the window manager may
10793    choose to deny/alter the resize.)
10794
10795    We now special case the first resize - where the viewport hasn't previously
10796    been initialized and use the requested geometry to initialize the
10797    glViewport without waiting for a reply from the server.
10798
10799 clutter/x11/clutter-stage-x11.c | 18 ++++++++++++++++++
10800 clutter/x11/clutter-stage-x11.h |  7 ++++---
10801 2 files changed, 22 insertions(+), 3 deletions(-)
10802
10803commit ad98e96d977e43a882b8a2f680e59ed281c90baf
10804Author: Robert Bragg <robert@linux.intel.com>
10805Date:   Tue Sep 15 22:19:01 2009 +0100
10806
10807    [cogl-fbo] Bring the gles code more in line with gl code
10808
10809    Over time the two cogl-fbo.c files have needlessly diverged as bug fixes or
10810    cleanups went into one version but not the other.  This tries to bring them
10811    back in line with each other.  It should actually be simple enough to move
10812    cogl-fbo.c to be a common file, and simply not build it for GLES 1.1, so
10813    maybe I'll follow up with such a patch soon.
10814
10815 clutter/cogl/cogl/driver/gles/cogl-fbo.c | 8 ++++++++
10816 1 file changed, 8 insertions(+)
10817
10818commit 613977f7108efb8897bffb2e47bfcf29bce29ddc
10819Author: Robert Bragg <robert@linux.intel.com>
10820Date:   Tue Sep 15 22:15:03 2009 +0100
10821
10822    [cogl-fbo] Remove poorly documented workaround for unknown driver/hardware
10823
10824    The comment just said: "Some implementation require a clear before drawing
10825    to an fbo.  Luckily it is affected by scissor test." and did a scissored
10826    clear, which is clearly a driver bug workaround, but for what driver?  The
10827    fact that it was copied into the gles backend (or vica versa is also
10828    suspicious since it seems unlikely that the workaround is necessary for both
10829    backends.)
10830
10831    We can easily restore the workaround with a better comment if this problem
10832    really still exists on current drivers, but for now I'd rather minimize
10833    hand-wavey workaround code that can't be tested.
10834
10835 clutter/cogl/cogl/driver/gl/cogl-fbo.c   | 10 ----------
10836 clutter/cogl/cogl/driver/gles/cogl-fbo.c | 19 -------------------
10837 2 files changed, 29 deletions(-)
10838
10839commit 0599d12ec94344174c947310bddb5658f1b9db58
10840Author: Damien Lespiau <damien.lespiau@gmail.com>
10841Date:   Sun Nov 1 14:36:05 2009 +0000
10842
10843    texture: Don't compare fbo_source with COGL_INVALID_HANDLE
10844
10845    fbo_source is a ClutterActor, it should be compared to NULL instead of
10846    COGL_INVALID_HANDLE.
10847
10848 clutter/clutter-texture.c | 2 +-
10849 1 file changed, 1 insertion(+), 1 deletion(-)
10850
10851commit f6e0e48ac613d10d02d27182ebd48be1aeb8b474
10852Author: Emmanuele Bassi <ebassi@linux.intel.com>
10853Date:   Fri Oct 30 12:11:19 2009 +0000
10854
10855    build: Add missing gles/cogl-context-driver.h to dist
10856
10857    The gles/cogl-context-driver.h header file is missing from the
10858    dist target, which means it's not in the tarballs.
10859
10860 clutter/cogl/cogl/driver/gles/Makefile.am | 1 +
10861 1 file changed, 1 insertion(+)
10862
10863commit f551cbfb61adb1c454fa36477ad5847b6238e17b
10864Author: Emmanuele Bassi <ebassi@linux.intel.com>
10865Date:   Fri Oct 30 11:02:35 2009 +0000
10866
10867    Add run-time version checks
10868
10869    Just like CLUTTER_CHECK_VERSION does version checking at compile
10870    time, we need a way to verify the version of the library that we
10871    are linking against. This is mostly needed for language bindings
10872    and for run-time loadable modules -- when we'll get those.
10873
10874 clutter/clutter-main.c                     | 34 ++++++++++++++++++++++++++++++++++
10875 clutter/clutter-version.h.in               | 15 ++++++++++++++-
10876 doc/reference/clutter/clutter-sections.txt |  7 +++++++
10877 3 files changed, 55 insertions(+), 1 deletion(-)
10878
10879commit f8e6727e74c80b80bba3ccb9201e1afd23349c35
10880Author: Neil Roberts <neil@linux.intel.com>
10881Date:   Tue Oct 27 13:18:51 2009 +0000
10882
10883    [cogl_polygon] Enable COGL_ENABLE_BLEND when use_color is set
10884
10885    Otherwise you can't use the alpha channel of the vertex colors unless
10886    the material has a texture with alpha or the material's color has
10887    alpha less than 255.
10888
10889 clutter/cogl/cogl/cogl-primitives.c | 2 +-
10890 1 file changed, 1 insertion(+), 1 deletion(-)
10891
10892commit 0c32573ffa980fffc966cf35768233a3ff1ed076
10893Author: Neil Roberts <neil@linux.intel.com>
10894Date:   Tue Oct 27 12:38:10 2009 +0000
10895
10896    build: Add $(top_buiddir)/clutter/cogl to the include path in clutter/cogl/cogl
10897
10898    Some files try to include "cogl/cogl-defines-gl.h" so
10899    $(top_builddir)/clutter/cogl needs to be in the include path for out of
10900    tree builds to work.
10901
10902 clutter/cogl/cogl/Makefile.am | 1 +
10903 1 file changed, 1 insertion(+)
10904
10905commit c387513a5fd5293cb8cf60e9c1334ceeff905852
10906Author: Emmanuele Bassi <ebassi@linux.intel.com>
10907Date:   Mon Oct 26 16:29:31 2009 +0000
10908
10909    color: Fix HLS-to-RGB conversion
10910
10911    Apparently, on 64bit systems the floating point noise is enough
10912    to screw up the float-to-int truncation.
10913
10914    The solution is to round up by 0.5 and then use floorf(). This
10915    gives predictable and correct results on both 32bit and 64bit
10916    systems.
10917
10918 clutter/clutter-color.c | 8 +++++---
10919 1 file changed, 5 insertions(+), 3 deletions(-)
10920
10921commit 5a14db50891196a9d17a0df49bf0858551e5a0af
10922Author: Emmanuele Bassi <ebassi@linux.intel.com>
10923Date:   Mon Oct 26 16:02:06 2009 +0000
10924
10925    layout: Do not create a LayoutMeta on remove
10926
10927    When calling remove_child_meta() we check if there is a LayoutMeta
10928    already attached to the Actor, and if that LayoutMeta matches the
10929    (manager, container, actor) tuple. If the LayoutMeta does not match,
10930    though, we create a new LayoutMeta instance -- in order to remove it
10931    right afterwards.
10932
10933    Instead of doing this, we can simply check for a matching LayoutMeta
10934    and if present, remove it.
10935
10936    In case of an existing, non-matching LayoutMeta, we're left with a
10937    dangling instance, but it does not matter: the removal happens in the
10938    unparenting phase of a ClutterContainer, so either the Actor will be
10939    destroyed and thus the LayoutMeta will be disposed along with it; or
10940    it will be parented to another container, and thus the LayoutMeta
10941    will be replaced.
10942
10943 clutter/clutter-layout-manager.c | 23 ++++++++++++++++++++++-
10944 1 file changed, 22 insertions(+), 1 deletion(-)
10945
10946commit 5a63e8af8f715c3fe6ded8a9432c999aab73311a
10947Author: Emmanuele Bassi <ebassi@linux.intel.com>
10948Date:   Mon Oct 26 15:10:20 2009 +0000
10949
10950    tests: Use the right key symbol for adding children
10951
10952    The test-box-layout should be using CLUTTER_plus instead of a
10953    literal '+'.
10954
10955 tests/interactive/test-box-layout.c | 2 +-
10956 1 file changed, 1 insertion(+), 1 deletion(-)
10957
10958commit a5a0171cb02dcbd67efbf87480aa5cea215c128d
10959Author: Emmanuele Bassi <ebassi@linux.intel.com>
10960Date:   Mon Oct 26 15:09:07 2009 +0000
10961
10962    box: Depth level changes should queue a relayout
10963
10964    ClutterBox is not ClutterGroup: a change in the level of an actor
10965    through raise, lower or depth sorting must trigger a relayout.
10966
10967 clutter/clutter-box.c | 6 +++---
10968 1 file changed, 3 insertions(+), 3 deletions(-)
10969
10970commit 2cad7e24f00e2f8fccfdc75086dd9e1071d71c18
10971Author: Emmanuele Bassi <ebassi@linux.intel.com>
10972Date:   Mon Oct 26 15:08:03 2009 +0000
10973
10974    box: Check before using the LayoutManager instance
10975
10976    A ClutterBox might not have a ClutterLayoutManager instance
10977    associated -- for instance, during destruction. We should check
10978    for one before calling methods on it.
10979
10980 clutter/clutter-box.c | 23 +++++++++++++----------
10981 1 file changed, 13 insertions(+), 10 deletions(-)
10982
10983commit 81c8cf3e6d839b13e106ab346feaccf1f2f9d3fd
10984Author: Emmanuele Bassi <ebassi@linux.intel.com>
10985Date:   Mon Oct 26 11:51:30 2009 +0000
10986
10987    texture: Error handling fix
10988
10989    When cogl_texture_new_from_data() fails in clutter_texture_set_from_data()
10990    and no GError is provided, the clutter app will segfault when dereferencing
10991    the GError ** and emitting LOAD_FINISHED signal.
10992
10993    Based on a patch by: Haakon Sporsheim <haakon.sporsheim@gmail.com>
10994
10995    http://bugzilla.openedhand.com/show_bug.cgi?id=1806
10996
10997 clutter/clutter-texture.c | 12 +++++++++---
10998 1 file changed, 9 insertions(+), 3 deletions(-)
10999
11000commit 00748f66560f3105ff9c636cd01428d8b5e30e9e
11001Author: Emmanuele Bassi <ebassi@linux.intel.com>
11002Date:   Mon Oct 26 11:42:16 2009 +0000
11003
11004    tests: Print out the captured event type
11005
11006    The ::captured-event signal on the Stage is not printing out the
11007    event type.
11008
11009 tests/interactive/test-events.c | 31 ++++++++++++++++++++++++++++++-
11010 1 file changed, 30 insertions(+), 1 deletion(-)
11011
11012commit f0b434918bcdb0d77467d66d28448672940f6a90
11013Author: Emmanuele Bassi <ebassi@linux.intel.com>
11014Date:   Fri Oct 23 17:32:18 2009 +0100
11015
11016    docs: Add images for layout managers
11017
11018    It's easier to show the layout manager policy with a simple
11019    screen shot coming from our interactive tests.
11020
11021 clutter/clutter-bin-layout.c                     |  10 ++++++++++
11022 clutter/clutter-box-layout.c                     |   7 +++++++
11023 clutter/clutter-flow-layout.c                    |  16 ++++++++++++++++
11024 doc/reference/clutter/Makefile.am                |   8 ++++++++
11025 doc/reference/clutter/bin-layout.png             | Bin 0 -> 12890 bytes
11026 doc/reference/clutter/box-layout.png             | Bin 0 -> 5119 bytes
11027 doc/reference/clutter/flow-layout-horizontal.png | Bin 0 -> 5888 bytes
11028 doc/reference/clutter/flow-layout-vertical.png   | Bin 0 -> 5333 bytes
11029 8 files changed, 41 insertions(+)
11030
11031commit 924780ce3511ba9bc9e2a6b955836eaaa4d0a216
11032Author: Emmanuele Bassi <ebassi@linux.intel.com>
11033Date:   Fri Oct 23 16:44:28 2009 +0100
11034
11035    cogl: Avoid C99-isms
11036
11037    Do not declare variables after statements.
11038
11039 clutter/cogl/cogl/cogl.c | 4 ++--
11040 1 file changed, 2 insertions(+), 2 deletions(-)
11041
11042commit b56b26cc62a851ee4a851a27ce0d6b76936afc6a
11043Author: Emmanuele Bassi <ebassi@linux.intel.com>
11044Date:   Fri Oct 23 15:46:25 2009 +0100
11045
11046    cogl: Remove cogl-current-matrix.c
11047
11048    The cogl-current-matrix.c file is unused since commit
11049    5e5d94dfbed18bf2b4c8c7a7ff9847952b2c4ae2 and it's not compiled
11050    or distributed anymore.
11051
11052 clutter/cogl/cogl/cogl-current-matrix.c | 409 -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
11053 1 file changed, 409 deletions(-)
11054
11055commit 1c43c195098b4705b59891b6b98bc24407cb3264
11056Author: Emmanuele Bassi <ebassi@linux.intel.com>
11057Date:   Fri Oct 23 14:30:15 2009 +0100
11058
11059    Update Git ignore rules
11060
11061 .gitignore | 4 ++--
11062 1 file changed, 2 insertions(+), 2 deletions(-)
11063
11064commit 0d5af4c24932b5e468fa21e8ddd1c85d9c807320
11065Author: Emmanuele Bassi <ebassi@linux.intel.com>
11066Date:   Fri Oct 23 13:55:50 2009 +0100
11067
11068    Post-release bump to 1.1.3
11069
11070 configure.ac | 4 ++--
11071 1 file changed, 2 insertions(+), 2 deletions(-)
11072
11073commit dec06979b911ca410cc289f12e053a2d49c49abb
11074Author: Emmanuele Bassi <ebassi@linux.intel.com>
11075Date:   Fri Oct 23 13:38:28 2009 +0100
11076
11077    Release 1.1.2 developers snapshot
11078
11079 .gitignore   |  2 +-
11080 NEWS         | 95 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
11081 README       |  8 ++++++++
11082 configure.ac |  2 +-
11083 4 files changed, 105 insertions(+), 2 deletions(-)
11084
11085commit 24594bcde40cc282efa94f9076a1b687c9e9827e
11086Author: Emmanuele Bassi <ebassi@linux.intel.com>
11087Date:   Fri Oct 23 12:15:25 2009 +0100
11088
11089    build: Make COGL pass distcheck
11090
11091    Some changes to make COGL pass distcheck with Automake 1.11 and
11092    anal-retentiveness turned up to 11.
11093
11094    The "major" change is the flattening of the winsys/ part of COGL,
11095    which is built directly inside libclutter-cogl.la instead of an
11096    intermediate libclutter-cogl-winsys.la object.
11097
11098    Ideally, the whole COGL should be flattened out using a
11099    quasi-non-recursive Automake layout; unfortunately, the driver/
11100    sub-section ships with identical targets and Automake cannot
11101    distinguish GL and GLES objects.
11102
11103 clutter/cogl/cogl/Makefile.am        | 196 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------------------------------------------------------
11104 clutter/cogl/cogl/winsys/Makefile.am |  43 -------------------------------------------
11105 configure.ac                         |   1 -
11106 3 files changed, 98 insertions(+), 142 deletions(-)
11107
11108commit c882893e91b1b3ec42be8d790a8210c17de58666
11109Author: Emmanuele Bassi <ebassi@linux.intel.com>
11110Date:   Fri Oct 23 10:17:40 2009 +0100
11111
11112    actor: Identify allocation cycles
11113
11114    If an actor calls directly or indirectly clutter_actor_queue_relayout()
11115    on itself from within the allocate() implementation it will cause a
11116    relayout cycle. This is usually a condition that should be checked by
11117    ClutterActor and we should emit a warning if it is verified.
11118
11119 clutter/clutter-actor.c | 15 +++++++++++++++
11120 1 file changed, 15 insertions(+)
11121
11122commit ca15143d1fbb09d5dbe0daeb09d7765b7cf0dfe3
11123Author: Emmanuele Bassi <ebassi@linux.intel.com>
11124Date:   Fri Oct 23 10:08:02 2009 +0100
11125
11126    actor: Add checks for IN_DESTRUCTION flag
11127
11128    ClutterActor should check whether the current instance is being
11129    destroyed and avoid performing operations like:
11130
11131     • queueing redraws
11132     • queueing relayouts
11133
11134    It should also warn if the actor is being parented to an actor
11135    currently being destroyed.
11136
11137 clutter/clutter-actor.c | 28 ++++++++++++++++++++++++----
11138 1 file changed, 24 insertions(+), 4 deletions(-)
11139
11140commit 7de47e74bda68c5d4dde82f2cbba6782fcf69d27
11141Author: Emmanuele Bassi <ebassi@linux.intel.com>
11142Date:   Fri Oct 23 09:48:35 2009 +0100
11143
11144    actor: Show actor name or type in the state checks warnings
11145
11146    When showing a warning in the state checks we perform to verify that
11147    the invariants are maintained when showing, mapping and realizing, we
11148    should also print out the name of the actor failing the checks. If the
11149    actor has no name, the GType name should be used as a fallback.
11150
11151 clutter/clutter-actor.c | 69 +++++++++++++++++++++++++++++++++++++++++++++++----------------------
11152 1 file changed, 47 insertions(+), 22 deletions(-)
11153
11154commit f02874470682f819766055f3976a2d6c74988dc7
11155Author: Neil Roberts <neil@linux.intel.com>
11156Date:   Thu Oct 22 16:55:29 2009 +0100
11157
11158    Fix some compilation errors in cogl-gles2-wrapper.c
11159
11160    The changes in 74f2122b6 introduced some syntax errors which were
11161    preventing the GLES2 backend from compiling.
11162
11163 clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c | 27 ++++++++++++---------------
11164 1 file changed, 12 insertions(+), 15 deletions(-)
11165
11166commit 8727c3127cc049bf22e3b7cb89041b104ae4fea7
11167Author: Emmanuele Bassi <ebassi@linux.intel.com>
11168Date:   Thu Oct 22 13:48:49 2009 +0100
11169
11170    clone: Set :source as CONSTRUCT
11171
11172    The :source property for ClutterClone is a constructor property, but
11173    it most definitely is not a constructor-only one.
11174
11175 clutter/clutter-clone.c | 2 +-
11176 1 file changed, 1 insertion(+), 1 deletion(-)
11177
11178commit b82f874b464b252c5f3bbb5e903197a048034430
11179Author: Neil Roberts <neil@linux.intel.com>
11180Date:   Thu Oct 22 15:39:30 2009 +0100
11181
11182    Remove cogl/{gl,gles}/Makefile.am
11183
11184    These are no longer used anywhere.
11185
11186 clutter/cogl/gl/Makefile.am   | 62 --------------------------------------------------------------
11187 clutter/cogl/gles/Makefile.am | 88 ----------------------------------------------------------------------------------------
11188 2 files changed, 150 deletions(-)
11189
11190commit bd809f690a447c813bba02d83ba3c8b22a825b38
11191Author: Emmanuele Bassi <ebassi@linux.intel.com>
11192Date:   Wed Oct 21 17:44:44 2009 +0100
11193
11194    docs: Close the right tag to avoid XML errors
11195
11196 clutter/clutter-alpha.c | 2 +-
11197 1 file changed, 1 insertion(+), 1 deletion(-)
11198
11199commit 4996b2224a54efeddce776cade725ec1cd7fca69
11200Author: Emmanuele Bassi <ebassi@linux.intel.com>
11201Date:   Wed Oct 21 17:43:34 2009 +0100
11202
11203    docs: Rename the Shader and StageManager sections
11204
11205 doc/reference/clutter/clutter-sections.txt | 4 ++--
11206 1 file changed, 2 insertions(+), 2 deletions(-)
11207
11208commit 673199b6e0399e8f1fcd52662429287f92cb95e9
11209Author: Emmanuele Bassi <ebassi@linux.intel.com>
11210Date:   Wed Oct 21 16:15:18 2009 +0100
11211
11212    tests: Update test-script
11213
11214    Use explicit alpha definition and custom alpha functions.
11215
11216 tests/interactive/test-script.c | 41 +++++++++++++++++++++++++++++++++++------
11217 1 file changed, 35 insertions(+), 6 deletions(-)
11218
11219commit 7a52fddcd673c4aa14faf2396a0a74db644ba64d
11220Author: Emmanuele Bassi <ebassi@linux.intel.com>
11221Date:   Wed Oct 21 16:04:12 2009 +0100
11222
11223    alpha: Manually parse the :mode property in ClutterScript
11224
11225    The :mode property for a ClutterAlpha can either be an integer, for
11226    an easing mode logical id, or a string for the easing mode "nickname".
11227
11228 clutter/clutter-alpha.c          | 33 ++++++++++++++++++++++++++++++++-
11229 clutter/clutter-script-private.h |  2 ++
11230 clutter/clutter-script.c         | 12 +++++++++---
11231 3 files changed, 43 insertions(+), 4 deletions(-)
11232
11233commit 01bc3fa2c80e9c965222b88ad20b470ae00028ec
11234Author: Emmanuele Bassi <ebassi@linux.intel.com>
11235Date:   Wed Oct 21 15:43:01 2009 +0100
11236
11237    script, docs: Update documentation for alphas
11238
11239    It is now possible to have Alpha instances defined explicitly for
11240    behaviours, so we need to fix the documentation.
11241
11242 clutter/clutter-script.c | 40 +++++++++++++++++++++++++++++++---------
11243 1 file changed, 31 insertions(+), 9 deletions(-)
11244
11245commit f0ed71c77dd94e6bf644aba84f2e1cdc2d874fc1
11246Author: Emmanuele Bassi <ebassi@linux.intel.com>
11247Date:   Wed Oct 21 15:29:25 2009 +0100
11248
11249    alpha: Allow setting the function in ClutterScript
11250
11251    When defining an Alpha in ClutterScript we should allow setting
11252    the alpha function by using a custom property. This makes it
11253    possible to have both:
11254
11255      {
11256        "id" : "behaviour-1",
11257        "type" : "ClutterBehaviourDepth",
11258        "alpha" : { "timeline" : "timeline-1", "function" : "alpha_func" },
11259        ...
11260      }
11261
11262    And:
11263
11264      {
11265        "id" : "alpha-1",
11266        "type" : "ClutterAlpha",
11267        "timeline" : "timeline-1",
11268        "function" : "alpha_func"
11269      },
11270      {
11271        "id" : "behaviour-1",
11272        "type" : "ClutterBehaviourDepth",
11273        "alpha" : "alpha-1",
11274        ...
11275      }
11276
11277    The latter allows defining a single alpha function for multiple
11278    behaviours.
11279
11280 clutter/clutter-alpha.c | 102 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
11281 1 file changed, 101 insertions(+), 1 deletion(-)
11282
11283commit 50aec3c540d6609d9980fab6a26ba14869982c8b
11284Author: Emmanuele Bassi <ebassi@linux.intel.com>
11285Date:   Wed Oct 21 15:17:50 2009 +0100
11286
11287    script: Always allow setting object properties by id reference
11288
11289    The block that allows setting a GObject property holding an object
11290    instance is conditionally depending on the USE_PIXBUF define. This
11291    makes it impossible to reference an object inside ClutterScript on
11292    platforms not using GdkPixbuf.
11293
11294 clutter/clutter-script.c | 25 +++++++++++++++----------
11295 1 file changed, 15 insertions(+), 10 deletions(-)
11296
11297commit ef8ae7d72f752e10552e254c1ff9e76d19430aac
11298Author: Emmanuele Bassi <ebassi@linux.intel.com>
11299Date:   Wed Oct 21 15:16:43 2009 +0100
11300
11301    behaviour: Notify changes of the :alpha property
11302
11303    The set_alpha() setter of ClutterBehaviour is not emitting notifications
11304    for the alpha property.
11305
11306 clutter/clutter-behaviour.c | 12 +++++++-----
11307 1 file changed, 7 insertions(+), 5 deletions(-)
11308
11309commit c13701052497b4cdb009f95ad8ccce9f4a7d825e
11310Author: Owen W. Taylor <otaylor@fishsoup.net>
11311Date:   Mon Oct 5 23:20:07 2009 -0400
11312
11313    Force a relayout when showing an actor
11314
11315    When an actor is hidden, the parent actor is not required to
11316    size request or allocate it. (ClutterGroup does, but, for example,
11317    NbtkBoxLayout doesn't.) This means that the
11318    needs_width_request/needs_height_request/needs_allocate can be
11319    stale when we go to show it again - they are set for the actor
11320    but not the parent. Explicitly setting them to FALSE avoids
11321    clutter_actor_relayout() improperly short-circuiting.
11322
11323    http://bugzilla.openedhand.com/show_bug.cgi?id=1831
11324
11325    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
11326
11327 clutter/clutter-actor.c | 9 +++++++++
11328 1 file changed, 9 insertions(+)
11329
11330commit 571df43b6d2348fd4db4b0275c8ed55e760ab353
11331Author: Emmanuele Bassi <ebassi@linux.intel.com>
11332Date:   Tue Oct 20 22:05:04 2009 +0100
11333
11334    text: Invalidate caches and sizes in set_text_internal()
11335
11336    The change in commit 3bbc96e17e5a03ba931c86a5cd2a0ecaa2a3b77b moved the
11337    :text property setter to use set_text_internal(); this function does not
11338    invalidate the Layout cache and does not queue a relayout, thus breaking
11339    the behaviour of ClutterText when setting the contents of the actor using
11340    the property.
11341
11342    http://bugzilla.openedhand.com/show_bug.cgi?id=1851
11343
11344 clutter/clutter-text.c | 12 ++++--------
11345 1 file changed, 4 insertions(+), 8 deletions(-)
11346
11347commit 91c38f877fe0a6224c648ec9f6ecbab8190b536e
11348Author: Robert Bragg <robert@linux.intel.com>
11349Date:   Tue Oct 20 14:57:40 2009 +0100
11350
11351    [group] Fix copy & paste error from 857b0239e (Use FixedLayout inside Group)
11352
11353    clutter_group_get_preferred_height was calling
11354    clutter_layout_manager_get_preferred_width which e.g.  broke
11355    test-actor-clone.
11356
11357 clutter/clutter-group.c | 8 ++++----
11358 1 file changed, 4 insertions(+), 4 deletions(-)
11359
11360commit 74f2122b68547ac6228c1a8d49765aa71638fa1b
11361Author: Robert Bragg <robert@linux.intel.com>
11362Date:   Tue Sep 29 02:56:23 2009 +0100
11363
11364    [gles2] remove lots of redundant matrix stack code
11365
11366    Since we no longer depend on the GL matrix API in Cogl we can remove a lot
11367    of wrapper code from the GLES 2 backend.  This is particularly nice given
11368    that there was no code shared between the cogl-matrix-stack API and gles2
11369    wrappers so we had a lot of duplicated logic.
11370
11371 clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c | 287 ++++++++++++++++++++----------------------------------------------------------------------------------------------------------------------------------------------------------------
11372 clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.h |   9 ++----
11373 2 files changed, 34 insertions(+), 262 deletions(-)
11374
11375commit 5e5d94dfbed18bf2b4c8c7a7ff9847952b2c4ae2
11376Author: Robert Bragg <robert@linux.intel.com>
11377Date:   Tue Oct 13 23:09:42 2009 +0100
11378
11379    [cogl] Removes the cogl-current-matrix abstraction
11380
11381    The indirection through this API isn't necessary since we no longer
11382    arbitrate between the OpenGL matrix API and Cogl's client side API.  Also it
11383    doesn't help to maintain an OpenGL style matrix mode API for internal use
11384    since it's awkward to keep restoring the MODELVIEW mode and easy enough to
11385    directly work with the matrix stacks of interest.
11386
11387    This replaces use of the _cogl_current_matrix API with direct use of the
11388    _cogl_matrix_stack API.  All the unused cogl_current_matrix API is removed
11389    and the matrix utility code left in cogl-current-matrix.c was moved to
11390    cogl.c.
11391
11392 clutter/cogl/cogl/Makefile.am                   |   2 --
11393 clutter/cogl/cogl/cogl-clip-stack.c             |  15 +++++++-----
11394 clutter/cogl/cogl/cogl-context.c                |   8 +++----
11395 clutter/cogl/cogl/cogl-context.h                |   4 ++--
11396 clutter/cogl/cogl/cogl-current-matrix.h         |  95 ----------------------------------------------------------------------------
11397 clutter/cogl/cogl/cogl-internal.h               |  14 +++++++++---
11398 clutter/cogl/cogl/cogl-material.c               |   2 ++
11399 clutter/cogl/cogl/cogl-texture.c                |  28 +++++++++++------------
11400 clutter/cogl/cogl/cogl-util.c                   |   1 -
11401 clutter/cogl/cogl/cogl.c                        | 228 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------
11402 clutter/cogl/cogl/driver/gl/cogl-fbo.c          |  26 ++++++++-------------
11403 clutter/cogl/cogl/driver/gl/cogl-primitives.c   |  24 ++++++--------------
11404 clutter/cogl/cogl/driver/gles/cogl-fbo.c        |  27 +++++++++-------------
11405 clutter/cogl/cogl/driver/gles/cogl-primitives.c |  24 ++++++--------------
11406 doc/reference/cogl/Makefile.am                  |   1 -
11407 15 files changed, 271 insertions(+), 228 deletions(-)
11408
11409commit 9f7bf9fb4d234a25aba03266a286bc8c2d41f3fd
11410Author: Robert Bragg <robert@linux.intel.com>
11411Date:   Wed Oct 14 10:53:48 2009 +0100
11412
11413    [matrix-stack] Adds ctx->flushed_matrix_mode to cache the gl matrix mode
11414
11415    This cache of the gl matrix mode lets us avoid repeat calls to glMatrixMode
11416    in _cogl_matrix_stack_flush_to_gl when we have lots of sequential modelview
11417    matrix modifications.
11418
11419 clutter/cogl/cogl/cogl-context.c      |  1 +
11420 clutter/cogl/cogl/cogl-context.h      |  1 +
11421 clutter/cogl/cogl/cogl-matrix-stack.c | 30 ++++++++++++++++++------------
11422 3 files changed, 20 insertions(+), 12 deletions(-)
11423
11424commit b1f9f0a97d1abd4465ed7c7bed1da4ed366491ad
11425Author: Robert Bragg <robert@linux.intel.com>
11426Date:   Tue Oct 6 12:36:32 2009 +0100
11427
11428    matrix-stack: more optimization for load_identity case
11429
11430    This goes a bit further than the previous patch, and as a special case
11431    we now simply represent identity matrices using a boolean, and only
11432    lazily initialize them when they need to be modified.
11433
11434 clutter/cogl/cogl/cogl-matrix-stack.c | 82 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----------
11435 1 file changed, 71 insertions(+), 11 deletions(-)
11436
11437commit 460025d60348e3346cfd864b81d9867ea8474eee
11438Author: Robert Bragg <robert@linux.intel.com>
11439Date:   Tue Oct 6 10:52:07 2009 +0100
11440
11441    [matrix-stack] avoid redundant clearing of matrix when using load_identity
11442
11443    The journal always uses an identity matrix since it uses software
11444    transformation.  Currently it manually uses glLoadMatrix since previous
11445    experimentation showed that the cogl-matrix-stack gave bad performance, but
11446    it would be nice to fix performance so we only have to care about one path
11447    for loading matrices.
11448
11449    For the common case where we do:
11450    cogl_matrix_stack_push()
11451    cogl_matrix_stack_load_identity()
11452    we were effectively initializing the matrix 3 times. Once due to use of
11453    g_slice_new0, then we had a cogl_matrix_init_identity in
11454    _cogl_matrix_state_new for good measure, and then finally in
11455    cogl_matrix_stack_load_identity we did another cogl_matrix_init_identity.
11456
11457    We don't use g_slice_new0 anymore, _cogl_matrix_state_new is documented as
11458    not initializing the matrix (instead _cogl_matrix_stack_top_mutable now
11459    takes a boolean to choose if new stack entries should be initialised) and so
11460    we now only initialize once in cogl_matrix_stack_load_identity.
11461
11462 clutter/cogl/cogl/cogl-matrix-stack.c | 54 ++++++++++++++++++++++++++----------------------------
11463 1 file changed, 26 insertions(+), 28 deletions(-)
11464
11465commit 2656b569b9911b8aa427a5a02c8b1f4095de6ed7
11466Author: Robert Bragg <robert@linux.intel.com>
11467Date:   Tue Sep 29 02:58:27 2009 +0100
11468
11469    [current-matrix] Adds texture matrix stacks + removes GL matrix API usage
11470
11471    This relates back to an earlier commitment to stop using the OpenGL matrix
11472    API which is considered deprecated. (ref 54159f5a1d029db)
11473
11474    The new texture matrix stacks are hung from a list of (internal only)
11475    CoglTextureUnit structures which the CoglMaterial code internally references
11476    via _cogl_get_texure_unit ().
11477
11478    So we would be left with only the cogl-matrix-stack code being responsible
11479    for glMatrixMode, glLoadMatrix and glLoadIdentity this commit updates the
11480    journal code so it now uses the matrix-stack API instead of GL directly.
11481
11482 clutter/cogl/cogl/cogl-context.c        |   4 ++++
11483 clutter/cogl/cogl/cogl-context.h        |   5 +++--
11484 clutter/cogl/cogl/cogl-current-matrix.c | 236 +++++++++++++++++++++++++++++++++++++++--------------------------------------------------------------------------------------------------------------------------------------------------------
11485 clutter/cogl/cogl/cogl-internal.h       |  12 ++++++++++
11486 clutter/cogl/cogl/cogl-journal.c        |  33 ++++++++++++++++-----------
11487 clutter/cogl/cogl/cogl-material.c       |  22 +++++++++++-------
11488 clutter/cogl/cogl/cogl-matrix-stack.c   |  15 ++++++++++++-
11489 clutter/cogl/cogl/cogl.c                |  59 ++++++++++++++++++++++++++++++++++++++++++++++++
11490 8 files changed, 174 insertions(+), 212 deletions(-)
11491
11492commit 473f7ee31ebd6d52126978ba4e155a3bebc4cac1
11493Author: Emmanuele Bassi <ebassi@linux.intel.com>
11494Date:   Mon Oct 19 15:31:29 2009 +0100
11495
11496    text: Take pre-edit cursor position into account
11497
11498    When determining the cursor position we also need to take into account
11499    the pre-edit cursor position as set by the set_preedit_string()
11500    function.
11501
11502 clutter/clutter-text.c | 16 ++++++++++++++--
11503 1 file changed, 14 insertions(+), 2 deletions(-)
11504
11505commit 23cd0b79254acd2b97467a62010244328e210a87
11506Author: Emmanuele Bassi <ebassi@gnome.org>
11507Date:   Mon Oct 19 12:01:38 2009 +0100
11508
11509    docs: Documentation fixes
11510
11511     • Fix list_stages() and peek_stages() documentation
11512
11513     • Fix clutter_text_set_preedit_string() arguments in the header
11514       to match source and documentation
11515
11516     • Add clutter_units_cm() to the private section for Units
11517
11518     • Rename the LayoutManager section
11519
11520     • Add FlowLayout:homogeneous accessors
11521
11522 clutter/clutter-stage-manager.c            | 4 ++--
11523 clutter/clutter-text.h                     | 4 ++--
11524 doc/reference/clutter/clutter-sections.txt | 9 ++++++---
11525 3 files changed, 10 insertions(+), 7 deletions(-)
11526
11527commit ba25571c8e34593f99ba302edf381a0151c98bbb
11528Merge: 936779fd9 8ce8b9138
11529Author: Emmanuele Bassi <ebassi@gnome.org>
11530Date:   Mon Oct 19 11:45:15 2009 +0100
11531
11532    Merge branch 'layout-manager'
11533
11534    * layout-manager: (50 commits)
11535      docs: Reword a link
11536      layout, docs: Add more documentation to LayoutManager
11537      layout, docs: Fix description of Bin properties
11538      layout, bin: Use ceilf() instead of casting to int
11539      layout, docs: Add long description for FlowLayout
11540      layout, box: Clean up
11541      layout, box: Write long description for Box
11542      layout, docs: Remove unused functions
11543      layout: Document BoxLayout
11544      layout: Add BoxLayout, a single line layout manager
11545      layout: Report the correct size of FlowLayout
11546      layout: Resizing the stage resizes the FlowLayout box
11547      layout: Use the get_request_mode() getter in BinLayout
11548      layout: Change the request-mode along with the orientation
11549      actor: Add set_request_mode() method
11550      [layout] Remove FlowLayout:wrap
11551      [layout] Rename BinLayout and FlowLayout interactive tests
11552      [layout] Skip invisible children in FlowLayout
11553      [layout] Clean up and document FlowLayout
11554      [layout] Snap children of FlowLayout to column/row
11555      ...
11556
11557commit 8ce8b91383390482efe56d982d945a384766ca8c
11558Author: Emmanuele Bassi <ebassi@gnome.org>
11559Date:   Mon Oct 19 11:44:29 2009 +0100
11560
11561    docs: Reword a link
11562
11563 clutter/clutter-layout-manager.c | 3 ++-
11564 1 file changed, 2 insertions(+), 1 deletion(-)
11565
11566commit cd3c85f7ba9094a250ec03f0380428fadafef0df
11567Author: Emmanuele Bassi <ebassi@gnome.org>
11568Date:   Mon Oct 19 11:00:23 2009 +0100
11569
11570    layout, docs: Add more documentation to LayoutManager
11571
11572    The layout manager reference should have some documentation on how
11573    to use a LayoutManager object inside a container and how to implement
11574    a LayoutManager sub-class correctly.
11575
11576 clutter/clutter-layout-manager.c | 41 +++++++++++++++++++++++++++++++++++++++++
11577 1 file changed, 41 insertions(+)
11578
11579commit 936779fd96cc0d8d6713c5cb4c5dc9240cc04d97
11580Author: Emmanuele Bassi <ebassi@gnome.org>
11581Date:   Sun Oct 18 17:49:00 2009 +0100
11582
11583    build: Add back QUIET_GEN to the GIR generation
11584
11585 clutter/Makefile.am | 2 +-
11586 1 file changed, 1 insertion(+), 1 deletion(-)
11587
11588commit bc8a7bd5b4c70247e4bc8cccc194c12e5b6a9a2f
11589Author: Emmanuele Bassi <ebassi@gnome.org>
11590Date:   Sun Oct 18 17:15:04 2009 +0100
11591
11592    Update ignore file
11593
11594 .gitignore | 13 ++++++-------
11595 1 file changed, 6 insertions(+), 7 deletions(-)
11596
11597commit ab376d961fee066f809169f32946a32700ea0e53
11598Author: Emmanuele Bassi <ebassi@gnome.org>
11599Date:   Sun Oct 18 17:12:12 2009 +0100
11600
11601    build: De-nest the JSON from the introspection rules
11602
11603    The JSON conditional rules can be moved outside the introspection
11604    conditional ones to avoid a nested check, as all the JSON rules do
11605    is setting up variables that may or may not be used.
11606
11607 clutter/Makefile.am | 26 ++++++++++++--------------
11608 1 file changed, 12 insertions(+), 14 deletions(-)
11609
11610commit 5c162d904bbbbd5ae0f66885497dd0658d27e87f
11611Author: Emmanuele Bassi <ebassi@gnome.org>
11612Date:   Sun Oct 18 17:11:42 2009 +0100
11613
11614    build: Use QUIET_GEN when building ClutterJson GIR
11615
11616 clutter/json/Makefile.am | 5 ++++-
11617 1 file changed, 4 insertions(+), 1 deletion(-)
11618
11619commit 8f11b3ca48fde34f5bc214f1ff122e5ed6298eac
11620Author: Emmanuele Bassi <ebassi@gnome.org>
11621Date:   Sun Oct 18 17:00:24 2009 +0100
11622
11623    build: Fix up the GIR generation rules
11624
11625    The rules for generating Clutter's introspection data are
11626    still referencing the old COGL layout.
11627
11628 clutter/Makefile.am | 9 ++++++---
11629 1 file changed, 6 insertions(+), 3 deletions(-)
11630
11631commit ad5c0af6399353ad49663954c6abd7305ecc9ad6
11632Author: Emmanuele Bassi <ebassi@gnome.org>
11633Date:   Sat Oct 17 00:30:37 2009 +0100
11634
11635    build: Add CPPFLAGS for the g-ir-scanner command line
11636
11637    When I moved all CPP flags to AM_CPPFLAGS from the INCLUDES directive
11638    I forgot that g-ir-scanner needs those defines as well.
11639
11640 clutter/Makefile.am | 1 +
11641 1 file changed, 1 insertion(+)
11642
11643commit ef9ea9e2377f63e8bbf22f4829b8a51953a434ef
11644Author: Robert Bragg <robert@linux.intel.com>
11645Date:   Wed Sep 16 14:01:57 2009 +0100
11646
11647    [cogl-primitives] Split the journal out from cogl-primitives.c
11648
11649    The Journal can be considered a standalone component, so even though
11650    it's currently only used to log quads, it seems better to split it
11651    out into its own file.
11652
11653 clutter/cogl/cogl/Makefile.am            |   2 +
11654 clutter/cogl/cogl/cogl-context.c         |   1 +
11655 clutter/cogl/cogl/cogl-journal-private.h |  57 +++++++++++++++
11656 clutter/cogl/cogl/cogl-journal.c         | 744 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
11657 clutter/cogl/cogl/cogl-primitives.c      | 705 +-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
11658 clutter/cogl/cogl/cogl-texture-private.h |  14 ----
11659 6 files changed, 805 insertions(+), 718 deletions(-)
11660
11661commit 8790306629f8186bba7998b5567c2a45aafb87d9
11662Author: Robert Bragg <robert@linux.intel.com>
11663Date:   Sun Sep 6 21:47:46 2009 +0100
11664
11665    [test-backface-culling] Check that inverted tex coords don't affect culling
11666
11667    The additional check draws another front facing rectangle but this time with
11668    the texture coords flipped on the x axis.  The code that handles sliced
11669    textures in cogl-primitives.c makes some suspicious changes to the geometry
11670    when the texture coords are inverted.
11671
11672 tests/conform/test-backface-culling.c | 28 ++++++++++++++++++++--------
11673 1 file changed, 20 insertions(+), 8 deletions(-)
11674
11675commit 2f628b1a8a405d2e4c08f2b2d125002ded0d8981
11676Author: Robert Bragg <robert@linux.intel.com>
11677Date:   Wed Sep 23 15:11:55 2009 +0100
11678
11679    [cogl-spans] split out cogl-spans code from cogl-texture-2d-sliced
11680
11681    When we implement atlas textures we will probably want to use the spans API
11682    to handle texture repeating so it doesn't make sense to leave the code in
11683    cogl-texture-2d-sliced.c.  Since it's a standalone set of data structures
11684    and algorithms it also seems reasonable to split out from cogl-texture.
11685
11686 clutter/cogl/cogl/Makefile.am                      |   2 ++
11687 clutter/cogl/cogl/cogl-spans.c                     | 132 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
11688 clutter/cogl/cogl/cogl-spans.h                     |  70 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
11689 clutter/cogl/cogl/cogl-texture-2d-sliced-private.h |  27 -------------------------
11690 clutter/cogl/cogl/cogl-texture-2d-sliced.c         | 195 +++++++++++++++++++++++++++++++++++++++++-------------------------------------------------------------------------------------------------------------------------------------------
11691 5 files changed, 248 insertions(+), 178 deletions(-)
11692
11693commit 568d6841871bdfea5d49d2a8143a49a0a7664a7b
11694Author: Vladimir Nadvornik <nadvornik@suse.cz>
11695Date:   Sun Aug 30 12:36:11 2009 +0200
11696
11697    [cogl-texture] Split CoglTexture into an abstract class + CoglTexture2dSliced
11698
11699    cogl-texture-2d-sliced provides an implementation of CoglTexture and this
11700    seperation lays the foundation for potentially supporting atlas textures,
11701    pixmap textures (as in GLX_EXT_texture_from_pixmap) and fast-path
11702    GL_TEXTURE_{1D,2D,3D,RECTANGLE} textures in a maintainable fashion.
11703
11704 clutter/cogl/cogl/Makefile.am                       |    2 +
11705 clutter/cogl/cogl/cogl-context.c                    |    2 +
11706 clutter/cogl/cogl/cogl-context.h                    |    2 +
11707 clutter/cogl/cogl/cogl-handle.h                     |    4 +-
11708 clutter/cogl/cogl/cogl-texture-2d-sliced-private.h  |  191 ++++++++++++++++++
11709 clutter/cogl/cogl/cogl-texture-2d-sliced.c          | 1871 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
11710 clutter/cogl/cogl/cogl-texture-driver.h             |   12 ++
11711 clutter/cogl/cogl/cogl-texture-private.h            |   80 +++-----
11712 clutter/cogl/cogl/cogl-texture.c                    | 1926 +++++++++++++++++++++++++++++++++++++++-------------------------------------------------------------------------------------------------------------------------------------------
11713 clutter/cogl/cogl/driver/gl/cogl-texture-driver.c   |   97 +--------
11714 clutter/cogl/cogl/driver/gles/cogl-context-driver.c |    2 -
11715 clutter/cogl/cogl/driver/gles/cogl-context-driver.h |    2 -
11716 clutter/cogl/cogl/driver/gles/cogl-texture-driver.c |  217 +-------------------
11717 13 files changed, 2551 insertions(+), 1857 deletions(-)
11718
11719commit 9da26fc1ca820d12d325df400e6e02d7cd25423a
11720Author: Robert Bragg <robert@linux.intel.com>
11721Date:   Wed Sep 16 11:56:17 2009 +0100
11722
11723    [cogl-texture] Seal CoglTexture internals from cogl-primitives.c
11724
11725    cogl-primitives.c was previously digging right into CoglTextures so it could
11726    manually iterate the texture slices for texturing quads and polygons and
11727    because we were missing some state getters we were lazily just poking into
11728    the structures directly.
11729
11730    This adds some extra state getter functions, and adds a higher level
11731    _cogl_texture_foreach_slice () API that hopefully simplifies the way in
11732    which sliced textures may be used to render primitives.  This lets you
11733    specify a rectangle in "virtual" texture coords and it will call a given
11734    callback for each slice that intersects that rectangle giving the virtual
11735    coords of the current slice and corresponding "real" texture coordinates for
11736    the underlying gl texture.
11737
11738    At the same time a noteable bug in how we previously iterated sliced
11739    textures was fixed, whereby we weren't correctly handling inverted texture
11740    coordinates.  E.g.  with the previous code if you supplied texture coords of
11741    tx1=100,ty1=0,tx2=0,ty2=100 (inverted along y axis) that would result in a
11742    back-facing quad, which could be discarded if using back-face culling.
11743
11744 clutter/cogl/cogl/cogl-material.c        |   9 +--
11745 clutter/cogl/cogl/cogl-primitives.c      | 736 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------------------------------------------
11746 clutter/cogl/cogl/cogl-texture-private.h |  47 ++++++++-----
11747 clutter/cogl/cogl/cogl-texture.c         | 239 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
11748 clutter/cogl/cogl/cogl-vertex-buffer.c   |   6 +-
11749 clutter/cogl/cogl/driver/gl/cogl-fbo.c   |  29 ++++----
11750 clutter/cogl/cogl/driver/gles/cogl-fbo.c |  29 ++++----
11751 7 files changed, 640 insertions(+), 455 deletions(-)
11752
11753commit 52cecd50ec87b617cc20dbc3ba4f843340fb5d63
11754Author: Robert Bragg <robert@linux.intel.com>
11755Date:   Thu Jul 30 12:06:02 2009 +0100
11756
11757    [docs] switch gl_handle+gl_target docs for cogl_texture_new_from_foreign
11758
11759    The descriptions for gl_handle and gl_target were inverted.
11760
11761    Thanks to Young-Ho Cha for spotting that.
11762
11763    Signed-off-by: Robert Bragg <robert@linux.intel.com>
11764
11765 clutter/cogl/cogl/cogl-texture.h | 4 ++--
11766 1 file changed, 2 insertions(+), 2 deletions(-)
11767
11768commit 95a869dab1b893f74c5b880e7be43e134eeb706f
11769Author: Robert Bragg <robert@linux.intel.com>
11770Date:   Wed Jul 29 17:21:07 2009 +0100
11771
11772    [cogl] move clutter/pango to clutter/cogl/pango
11773
11774    As part of the re-organisation of Cogl; move clutter/pango to be part of the
11775    cogl sub-project.
11776
11777 clutter/Makefile.am                                | 22 +++++++++++-----------
11778 clutter/cogl/Makefile.am                           |  2 +-
11779 clutter/{ => cogl}/pango/Makefile.am               |  0
11780 clutter/{ => cogl}/pango/cogl-pango-display-list.c |  0
11781 clutter/{ => cogl}/pango/cogl-pango-display-list.h |  0
11782 clutter/{ => cogl}/pango/cogl-pango-fontmap.c      |  0
11783 clutter/{ => cogl}/pango/cogl-pango-glyph-cache.c  |  0
11784 clutter/{ => cogl}/pango/cogl-pango-glyph-cache.h  |  0
11785 clutter/{ => cogl}/pango/cogl-pango-private.h      |  0
11786 clutter/{ => cogl}/pango/cogl-pango-render.c       |  0
11787 clutter/{ => cogl}/pango/cogl-pango.h              |  0
11788 configure.ac                                       |  2 +-
11789 12 files changed, 13 insertions(+), 13 deletions(-)
11790
11791commit 43efab46bcf88c14cc429c6c7b659bdbc84f1f71
11792Author: Robert Bragg <robert@linux.intel.com>
11793Date:   Tue Jul 28 02:02:02 2009 +0100
11794
11795    Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys
11796
11797    As part of an incremental process to have Cogl be a standalone project we
11798    want to re-consider how we organise the Cogl source code.
11799
11800    Currently this is the structure I'm aiming for:
11801    cogl/
11802        cogl/
11803            <put common source here>
11804            winsys/
11805               cogl-glx.c
11806               cogl-wgl.c
11807            driver/
11808                gl/
11809                gles/
11810            os/ ?
11811        utils/
11812            cogl-fixed
11813            cogl-matrix-stack?
11814            cogl-journal?
11815            cogl-primitives?
11816        pango/
11817
11818    The new winsys component is a starting point for migrating window system
11819    code (i.e.  x11,glx,wgl,osx,egl etc) from Clutter to Cogl.
11820
11821    The utils/ and pango/ directories aren't added by this commit, but they are
11822    noted because I plan to add them soon.
11823
11824    Overview of the planned structure:
11825
11826    * The winsys/ API is the API that binds OpenGL to a specific window system,
11827      be that X11 or win32 etc.  Example are glx, wgl and egl. Much of the logic
11828      under clutter/{glx,osx,win32 etc} should migrate here.
11829
11830    * Note there is also the idea of a winsys-base that may represent a window
11831      system for which there are multiple winsys APIs.  An example of this is
11832      x11, since glx and egl may both be used with x11.  (currently only Clutter
11833      has the idea of a winsys-base)
11834
11835    * The driver/ represents a specific varient of OpenGL. Currently we have "gl"
11836      representing OpenGL 1.4-2.1 (mostly fixed function) and "gles" representing
11837      GLES 1.1 (fixed funciton) and 2.0 (fully shader based)
11838
11839    * Everything under cogl/ should fundamentally be supporting access to the
11840      GPU.  Essentially Cogl's most basic requirement is to provide a nice GPU
11841      Graphics API and drawing a line between this and the utility functionality
11842      we add to support Clutter should help keep this lean and maintainable.
11843
11844    * Code under utils/ as suggested builds on cogl/ adding more convenient
11845      APIs or mechanism to optimize special cases. Broadly speaking you can
11846      compare cogl/ to OpenGL and utils/ to GLU.
11847
11848    * clutter/pango will be moved to clutter/cogl/pango
11849
11850    How some of the internal configure.ac/pkg-config terminology has changed:
11851    backendextra -> CLUTTER_WINSYS_BASE # e.g. "x11"
11852    backendextralib -> CLUTTER_WINSYS_BASE_LIB # e.g. "x11/libclutter-x11.la"
11853    clutterbackend -> {CLUTTER,COGL}_WINSYS # e.g. "glx"
11854    CLUTTER_FLAVOUR -> {CLUTTER,COGL}_WINSYS
11855    clutterbackendlib -> CLUTTER_WINSYS_LIB
11856    CLUTTER_COGL -> COGL_DRIVER # e.g. "gl"
11857
11858    Note: The CLUTTER_FLAVOUR and CLUTTER_COGL defines are kept for apps
11859
11860    As the first thing to take advantage of the new winsys component in Cogl;
11861    cogl_get_proc_address() has been moved from cogl/{gl,gles}/cogl.c into
11862    cogl/common/cogl.c and this common implementation first trys
11863    _cogl_winsys_get_proc_address() but if that fails then it falls back to
11864    gmodule.
11865
11866 Makefile.am                                                         |   8 +++-----
11867 clutter.pc.in                                                       |  10 ++++++----
11868 clutter/Makefile.am                                                 |  38 +++++++++++++++++++-------------------
11869 clutter/cogl/Makefile.am                                            |  89 +----------------------------------------------------------------------------------------
11870 clutter/cogl/TODO                                                   |  25 -------------------------
11871 clutter/cogl/cogl.pc.in                                             |  15 ---------------
11872 clutter/cogl/cogl/Makefile.am                                       | 161 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
11873 clutter/cogl/{common => cogl}/cogl-bitmap-fallback.c                |   0
11874 clutter/cogl/{common => cogl}/cogl-bitmap-pixbuf.c                  |   0
11875 clutter/cogl/{common => cogl}/cogl-bitmap-private.h                 |   0
11876 clutter/cogl/{common => cogl}/cogl-bitmap.c                         |   0
11877 clutter/cogl/{ => cogl}/cogl-bitmap.h                               |   0
11878 clutter/cogl/{common => cogl}/cogl-blend-string.c                   |   0
11879 clutter/cogl/{common => cogl}/cogl-blend-string.h                   |   0
11880 clutter/cogl/{common => cogl}/cogl-clip-stack.c                     |   0
11881 clutter/cogl/{common => cogl}/cogl-clip-stack.h                     |   0
11882 clutter/cogl/{common => cogl}/cogl-color.c                          |   0
11883 clutter/cogl/{ => cogl}/cogl-color.h                                |   0
11884 clutter/cogl/{common => cogl}/cogl-context.c                        |   0
11885 clutter/cogl/{common => cogl}/cogl-context.h                        |   0
11886 clutter/cogl/{common => cogl}/cogl-current-matrix.c                 |   0
11887 clutter/cogl/{common => cogl}/cogl-current-matrix.h                 |   0
11888 clutter/cogl/{common => cogl}/cogl-debug.c                          |   0
11889 clutter/cogl/{ => cogl}/cogl-debug.h                                |   0
11890 clutter/cogl/{ => cogl}/cogl-deprecated.h                           |   0
11891 clutter/cogl/{common => cogl}/cogl-enum-types.c.in                  |   0
11892 clutter/cogl/{common => cogl}/cogl-enum-types.h.in                  |   0
11893 clutter/cogl/{common => cogl}/cogl-fixed.c                          |   0
11894 clutter/cogl/{ => cogl}/cogl-fixed.h                                |   0
11895 clutter/cogl/{common => cogl}/cogl-handle.h                         |   0
11896 clutter/cogl/{common => cogl}/cogl-internal.h                       |   0
11897 clutter/cogl/{common => cogl}/cogl-material-private.h               |   0
11898 clutter/cogl/{common => cogl}/cogl-material.c                       |   0
11899 clutter/cogl/{ => cogl}/cogl-material.h                             |   0
11900 clutter/cogl/{common => cogl}/cogl-matrix-stack.c                   |   0
11901 clutter/cogl/{common => cogl}/cogl-matrix-stack.h                   |   3 ++-
11902 clutter/cogl/{common => cogl}/cogl-matrix.c                         |   0
11903 clutter/cogl/{ => cogl}/cogl-matrix.h                               |   0
11904 clutter/cogl/{ => cogl}/cogl-offscreen.h                            |   0
11905 clutter/cogl/{ => cogl}/cogl-path.h                                 |   0
11906 clutter/cogl/{common => cogl}/cogl-primitives.c                     |   0
11907 clutter/cogl/{common => cogl}/cogl-primitives.h                     |   6 +++---
11908 clutter/cogl/{ => cogl}/cogl-shader.h                               |   0
11909 clutter/cogl/{common => cogl}/cogl-texture-driver.h                 |   0
11910 clutter/cogl/{common => cogl}/cogl-texture-private.h                |   0
11911 clutter/cogl/{common => cogl}/cogl-texture.c                        |   0
11912 clutter/cogl/{ => cogl}/cogl-texture.h                              |   0
11913 clutter/cogl/{ => cogl}/cogl-types.h                                |   0
11914 clutter/cogl/{common => cogl}/cogl-util.c                           |   0
11915 clutter/cogl/{common => cogl}/cogl-util.h                           |   0
11916 clutter/cogl/{common => cogl}/cogl-vertex-buffer-private.h          |   0
11917 clutter/cogl/{common => cogl}/cogl-vertex-buffer.c                  |   0
11918 clutter/cogl/{ => cogl}/cogl-vertex-buffer.h                        |   0
11919 clutter/cogl/{common => cogl}/cogl.c                                |  35 ++++++++++++++++++++++++++++-------
11920 clutter/cogl/{ => cogl}/cogl.h.in                                   |   2 +-
11921 clutter/cogl/cogl/cogl.pc.in                                        |  17 +++++++++++++++++
11922 clutter/cogl/cogl/driver/Makefile.am                                |   7 +++++++
11923 clutter/cogl/cogl/driver/gl/Makefile.am                             |  39 +++++++++++++++++++++++++++++++++++++++
11924 clutter/cogl/{ => cogl/driver}/gl/cogl-context-driver.c             |   0
11925 clutter/cogl/{ => cogl/driver}/gl/cogl-context-driver.h             |   0
11926 clutter/cogl/{ => cogl/driver}/gl/cogl-defines.h.in                 |   0
11927 clutter/cogl/{ => cogl/driver}/gl/cogl-fbo.c                        |   0
11928 clutter/cogl/{ => cogl/driver}/gl/cogl-fbo.h                        |   0
11929 clutter/cogl/{ => cogl/driver}/gl/cogl-primitives.c                 |   0
11930 clutter/cogl/{ => cogl/driver}/gl/cogl-program.c                    |   0
11931 clutter/cogl/{ => cogl/driver}/gl/cogl-program.h                    |   0
11932 clutter/cogl/{ => cogl/driver}/gl/cogl-shader-private.h             |   0
11933 clutter/cogl/{ => cogl/driver}/gl/cogl-shader.c                     |   0
11934 clutter/cogl/{ => cogl/driver}/gl/cogl-texture-driver.c             |   0
11935 clutter/cogl/{ => cogl/driver}/gl/cogl.c                            |  72 ------------------------------------------------------------------------
11936 clutter/cogl/cogl/driver/gles/Makefile.am                           |  62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
11937 clutter/cogl/{ => cogl/driver}/gles/cogl-context-driver.c           |   0
11938 clutter/cogl/{ => cogl/driver}/gles/cogl-context-driver.h           |   0
11939 clutter/cogl/{ => cogl/driver}/gles/cogl-defines.h.in               |   0
11940 clutter/cogl/{ => cogl/driver}/gles/cogl-fbo.c                      |   0
11941 clutter/cogl/{ => cogl/driver}/gles/cogl-fbo.h                      |   0
11942 clutter/cogl/{ => cogl/driver}/gles/cogl-fixed-fragment-shader.glsl |   0
11943 clutter/cogl/{ => cogl/driver}/gles/cogl-fixed-vertex-shader.glsl   |   0
11944 clutter/cogl/{ => cogl/driver}/gles/cogl-gles2-wrapper.c            |   0
11945 clutter/cogl/{ => cogl/driver}/gles/cogl-gles2-wrapper.h            |   0
11946 clutter/cogl/{ => cogl/driver}/gles/cogl-primitives.c               |   0
11947 clutter/cogl/{ => cogl/driver}/gles/cogl-program.c                  |   0
11948 clutter/cogl/{ => cogl/driver}/gles/cogl-program.h                  |   0
11949 clutter/cogl/{ => cogl/driver}/gles/cogl-shader-private.h           |   0
11950 clutter/cogl/{ => cogl/driver}/gles/cogl-shader.c                   |   0
11951 clutter/cogl/{ => cogl/driver}/gles/cogl-texture-driver.c           |   0
11952 clutter/cogl/{ => cogl/driver}/gles/cogl-util.c                     |   0
11953 clutter/cogl/{ => cogl/driver}/gles/cogl-util.h                     |   0
11954 clutter/cogl/{ => cogl/driver}/gles/cogl.c                          |  10 ----------
11955 clutter/cogl/{ => cogl/driver}/gles/stringify.sh                    |   0
11956 clutter/cogl/{common => cogl}/stb_image.c                           |   0
11957 clutter/cogl/cogl/winsys/Makefile.am                                |  43 +++++++++++++++++++++++++++++++++++++++++++
11958 clutter/cogl/cogl/winsys/cogl-eglnative.c                           |  35 +++++++++++++++++++++++++++++++++++
11959 clutter/cogl/cogl/winsys/cogl-eglx.c                                |  35 +++++++++++++++++++++++++++++++++++
11960 clutter/cogl/cogl/winsys/cogl-fruity.c                              |  35 +++++++++++++++++++++++++++++++++++
11961 clutter/cogl/cogl/winsys/cogl-glx.c                                 |  78 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
11962 clutter/cogl/cogl/winsys/cogl-osx.c                                 |  35 +++++++++++++++++++++++++++++++++++
11963 clutter/cogl/cogl/winsys/cogl-sdl.c                                 |  35 +++++++++++++++++++++++++++++++++++
11964 clutter/cogl/cogl/winsys/cogl-win32.c                               |  35 +++++++++++++++++++++++++++++++++++
11965 clutter/cogl/cogl/winsys/cogl-winsys.h                              |  30 ++++++++++++++++++++++++++++++
11966 clutter/cogl/common/Makefile.am                                     |  96 ------------------------------------------------------------------------------------------------
11967 clutter/eglnative/Makefile.am                                       |  12 +++++++-----
11968 clutter/eglx/Makefile.am                                            |   2 ++
11969 clutter/fruity/Makefile.am                                          |   8 +++++---
11970 clutter/glx/Makefile.am                                             |   2 ++
11971 clutter/osx/Makefile.am                                             |   6 ++++--
11972 clutter/sdl/Makefile.am                                             |   2 ++
11973 clutter/win32/Makefile.am                                           |   2 ++
11974 clutter/win32/clutter-win32.pc.in                                   |   8 +++++---
11975 clutter/x11/Makefile.am                                             |   2 ++
11976 clutter/x11/clutter-x11.pc.in                                       |  10 ++++++----
11977 configure.ac                                                        | 119 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------------
11978 doc/reference/clutter/Makefile.am                                   |   6 +++---
11979 doc/reference/cogl/Makefile.am                                      |  11 +++++------
11980 tests/conform/Makefile.am                                           |   4 +++-
11981 tests/interactive/Makefile.am                                       |   4 +++-
11982 tests/micro-bench/Makefile.am                                       |   9 +++++++--
11983 tests/tools/Makefile.am                                             |   2 ++
11984 118 files changed, 834 insertions(+), 431 deletions(-)
11985
11986commit 2eea83de75cec3dbc334feecd004a180a7f5b1e5
11987Author: Robert Bragg <robert@linux.intel.com>
11988Date:   Tue Jul 28 01:34:33 2009 +0100
11989
11990    Make the CoglContext structure a bit more maintainable
11991
11992    This moves most of cogl-context.{c.h} to cogl/common with some driver
11993    specific members now living in a CoglContextDriver struct.  Driver specific
11994    context initialization and typedefs now live in
11995    cogl/{gl,gles}/cogl-context-driver.{c,h}
11996
11997    Driver specific members can be found under ctx->drv.stuff
11998
11999 clutter/cogl/common/Makefile.am                           |   2 ++
12000 clutter/cogl/common/cogl-blend-string.c                   |   2 +-
12001 clutter/cogl/{gles => common}/cogl-context.c              |  45 +++++++++++++++---------------
12002 clutter/cogl/{gles => common}/cogl-context.h              |  23 ++++++----------
12003 clutter/cogl/common/cogl-material.c                       |  14 +++++-----
12004 clutter/cogl/common/cogl-primitives.c                     |  12 ++++----
12005 clutter/cogl/common/cogl-vertex-buffer.c                  |  26 +++++++++---------
12006 clutter/cogl/common/cogl.c                                |   2 +-
12007 clutter/cogl/gl/Makefile.am                               |   2 +-
12008 clutter/cogl/gl/cogl-context-driver.c                     |  84 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
12009 clutter/cogl/gl/{cogl-context.h => cogl-context-driver.h} | 106 ++++-------------------------------------------------------------------
12010 clutter/cogl/gl/cogl-context.c                            | 259 -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
12011 clutter/cogl/gl/cogl-fbo.c                                |  24 ++++++++--------
12012 clutter/cogl/gl/cogl-primitives.c                         |   2 +-
12013 clutter/cogl/gl/cogl-program.c                            |  50 +++++++++++++++++-----------------
12014 clutter/cogl/gl/cogl-shader.c                             |  12 ++++----
12015 clutter/cogl/gl/cogl-texture-driver.c                     |   2 +-
12016 clutter/cogl/gl/cogl.c                                    | 224 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------------------
12017 clutter/cogl/gles/Makefile.am                             |   2 +-
12018 clutter/cogl/gles/cogl-context-driver.c                   |  41 ++++++++++++++++++++++++++++
12019 clutter/cogl/gles/cogl-context-driver.h                   |  44 ++++++++++++++++++++++++++++++
12020 clutter/cogl/gles/cogl-fbo.c                              |   8 ++++--
12021 clutter/cogl/gles/cogl-gles2-wrapper.c                    |   2 +-
12022 clutter/cogl/gles/cogl-program.c                          |  16 +++++------
12023 clutter/cogl/gles/cogl-texture-driver.c                   |  14 +++++-----
12024 25 files changed, 417 insertions(+), 601 deletions(-)
12025
12026commit 157eb437bac38d7a61991f47bd943cb9f6d84ad7
12027Author: Robert Bragg <robert@linux.intel.com>
12028Date:   Tue Jul 28 00:37:11 2009 +0100
12029
12030    Improve cogl-texture maintainability by moving 90% into cogl/common
12031
12032    This splits the limited components that differed between
12033    cogl/{gl,gles}/cogl-texture.c into new {gl,gles}/cogl-texture-driver.c files
12034    and the rest that can now be shared into cogl/common/cogl-texture.c
12035
12036 clutter/cogl/common/Makefile.am                    |    3 +
12037 clutter/cogl/common/cogl-internal.h                |    1 +
12038 clutter/cogl/common/cogl-texture-driver.h          |  157 ++++++++++++++
12039 clutter/cogl/{gl => common}/cogl-texture-private.h |   12 +-
12040 clutter/cogl/{gl => common}/cogl-texture.c         |  474 +++++++----------------------------------
12041 clutter/cogl/gl/Makefile.am                        |    3 +-
12042 clutter/cogl/gl/cogl-texture-driver.c              |  454 ++++++++++++++++++++++++++++++++++++++++
12043 clutter/cogl/gles/Makefile.am                      |    3 +-
12044 clutter/cogl/gles/cogl-gles2-wrapper.h             |    1 +
12045 clutter/cogl/gles/cogl-texture-driver.c            |  481 ++++++++++++++++++++++++++++++++++++++++++
12046 clutter/cogl/gles/cogl-texture-private.h           |  144 -------------
12047 clutter/cogl/gles/cogl-texture.c                   | 2066 -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
12048 12 files changed, 1188 insertions(+), 2611 deletions(-)
12049
12050commit fe01ec6323967614c6404bc193503adb5bda1624
12051Author: Robert Bragg <robert@linux.intel.com>
12052Date:   Thu Aug 20 11:54:41 2009 +0100
12053
12054    [stage-egl] support fallbacks in clutter_stage_egl_realize
12055
12056    Most of clutter_stage_egl_realize was renamed to
12057    _clutter_stage_egl_try_realize which now takes a cookie indicating which
12058    fallback number should tried next.  clutter_stage_egl_realize now keeps
12059    trying to realize with successive fallback numbers until it succeeds or runs
12060    out of fallbacks.
12061
12062    The only fallback supported for now is for hardware with no stencil buffer
12063    support.
12064
12065 clutter/eglx/clutter-stage-egl.c | 112 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------
12066 1 file changed, 82 insertions(+), 30 deletions(-)
12067
12068commit 3187e1964279b3fb93703fe6c67df5b6025729c9
12069Author: Robert Bragg <robert@linux.intel.com>
12070Date:   Mon Aug 3 14:50:10 2009 +0100
12071
12072    [x11 backend] remove data duplicated between backends and stages
12073
12074    Make backends the canonical point of reference for the xdisplay, the xscreen
12075    number, the x root window and the xvisinfo for creating foreign stages.
12076
12077 clutter/eglx/clutter-backend-egl.c |  10 +++-------
12078 clutter/eglx/clutter-stage-egl.c   |  18 ++++++++++--------
12079 clutter/glx/clutter-backend-glx.c  |  59 ++++++++++++++++++++++++++++++++++-------------------------
12080 clutter/glx/clutter-backend-glx.h  |   6 ++++++
12081 clutter/glx/clutter-stage-glx.c    |  58 +++++++++++++++++++++++++++++++---------------------------
12082 clutter/x11/clutter-backend-x11.c  |   1 +
12083 clutter/x11/clutter-backend-x11.h  |   5 +++++
12084 clutter/x11/clutter-stage-x11.c    | 177 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------------------------------------------
12085 clutter/x11/clutter-stage-x11.h    |   8 +-------
12086 9 files changed, 200 insertions(+), 142 deletions(-)
12087
12088commit 63414ab233522b0da8462b32c4e36e74be891475
12089Author: Robert Bragg <robert@linux.intel.com>
12090Date:   Fri Jul 31 20:39:28 2009 +0100
12091
12092    [glx backend] white space fixes
12093
12094    Simply removes lots of trailing white spaces
12095
12096 clutter/glx/clutter-backend-glx.c | 40 ++++++++++++++++++++--------------------
12097 1 file changed, 20 insertions(+), 20 deletions(-)
12098
12099commit 45a668bef855b8564236a3153bf07e1ea0148d16
12100Author: Robert Bragg <robert@linux.intel.com>
12101Date:   Fri Jul 31 17:07:10 2009 +0100
12102
12103    [glx backend] use FBConfigs instead of Visuals for GL context creation
12104
12105    This replaces calls to the old (glx 1.2) functions glXChooseVisual,
12106    glXCreateContext, glXMakeCurrent with the 1.3+ fbconfig varients
12107    glXChooseFBConfig, glXCreateNewContext, glXMakeContextCurrent.
12108
12109 clutter/glx/clutter-backend-glx.c | 122 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----------------------------------------------
12110 1 file changed, 75 insertions(+), 47 deletions(-)
12111
12112commit 15d7a86621f3fc80d3d50e7f5a3a141412163e7f
12113Author: Robert Bragg <robert@linux.intel.com>
12114Date:   Fri Jul 31 18:34:51 2009 +0100
12115
12116    [backends] Remove the idea of offscreen stages from all backends
12117
12118    The only backend that tried to implement offscreen stages was the GLX backend
12119    and even this has apparently be broken for some time without anyone noticing.
12120
12121    The property still remains and since the property already clearly states that
12122    it may not work I don't expect anyone to notice.
12123
12124    This simplifies quite a bit of the GLX code which is very desireable from the
12125    POV that we want to start migrating window system code down to Cogl and the
12126    simpler the code is the more straight forward this work will be.
12127
12128    In the future when Cogl has a nicely designed API for framebuffer objects then
12129    re-implementing offscreen stages cleanly for *all* backends should be quite
12130    straightforward.
12131
12132 clutter/clutter-backend.c             |   3 +-
12133 clutter/clutter-backend.h             |   1 -
12134 clutter/clutter-private.h             |   1 -
12135 clutter/clutter-stage.c               |  33 ++-------------------
12136 clutter/eglnative/clutter-stage-egl.c | 217 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------
12137 clutter/eglx/clutter-backend-egl.c    |   3 +-
12138 clutter/eglx/clutter-stage-egl.c      | 307 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------------------------------------------------
12139 clutter/fruity/clutter-stage-fruity.c | 175 ++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------
12140 clutter/glx/clutter-backend-glx.c     |  59 ++++++++++---------------------------
12141 clutter/glx/clutter-stage-glx.c       | 224 ++++++++++++++++++++++++++++++++++++++++++++++-----------------------------------------------------------------------------------------------
12142 clutter/osx/clutter-stage-osx.c       |  10 -------
12143 clutter/sdl/clutter-stage-sdl.c       |  39 +++++++++----------------
12144 clutter/x11/clutter-backend-x11.c     |   5 ++--
12145 clutter/x11/clutter-backend-x11.h     |   8 ++----
12146 clutter/x11/clutter-stage-x11.c       |   5 +---
12147 15 files changed, 435 insertions(+), 655 deletions(-)
12148
12149commit 35f11d863c4ac66136df9846c898ed88ff8ffb34
12150Author: Robert Bragg <robert@linux.intel.com>
12151Date:   Fri Oct 16 17:15:47 2009 +0100
12152
12153    [build] more Makefile.am.{enums,marshal} fixes for out of tree builds
12154
12155    for the marshal files $(srcdir) was getting prefixed twice since my last
12156    commit (2cc88f1140) since it was already being prefixed including
12157    Makefile.am.  The problem with prefixing it in the includer file though is
12158    that the Make variable substitutions like :.list=.h mean we end up
12159    generating into the $(srcdir).  This removes the prefix added in
12160    clutter/Makefile.am
12161
12162    We were also missing a $(srcdir) prefix when setting EXTRA_DIST
12163
12164 build/autotools/Makefile.am.enums   | 2 +-
12165 build/autotools/Makefile.am.marshal | 3 ++-
12166 clutter/Makefile.am                 | 2 +-
12167 3 files changed, 4 insertions(+), 3 deletions(-)
12168
12169commit f1acc91f3704bfff45652aea4f14355485f34df0
12170Author: Emmanuele Bassi <ebassi@gnome.org>
12171Date:   Fri Oct 16 15:57:21 2009 +0100
12172
12173    Simple coding style fix for commit c5551184
12174
12175 clutter/clutter-interval.c | 2 ++
12176 1 file changed, 2 insertions(+)
12177
12178commit a9d2c0f6903fff5a5b445265040f8bb689c10750
12179Merge: b5adbf89b 70c812845
12180Author: Emmanuele Bassi <ebassi@gnome.org>
12181Date:   Fri Oct 16 15:55:05 2009 +0100
12182
12183    Merge branch 'bug-1846'
12184
12185    * bug-1846:
12186      Fix warning message in the ParamSpec validation
12187
12188commit b5adbf89b851baa9fb833b00ad6137cc5e6547cb
12189Merge: ee9f8c3bd c5551184b
12190Author: Emmanuele Bassi <ebassi@gnome.org>
12191Date:   Fri Oct 16 15:55:04 2009 +0100
12192
12193    Merge branch 'bug-1845'
12194
12195    * bug-1845:
12196      Add a warning when ClutterInterval can't compute progress
12197
12198commit 70c8128457d49bf9dde0838470f1b4b363f9aafb
12199Author: Damien Lespiau <damien.lespiau@intel.com>
12200Date:   Mon Oct 12 17:05:05 2009 +0100
12201
12202    Fix warning message in the ParamSpec validation
12203
12204    When validating a new GValue against the ClutterParamSpecUnits, we issue
12205    a warning when the units do not match with both the new value and the
12206    unit we expect to have. Unfortunately we were printing the unit of the
12207    new value twice and not the unit of the ParamSpec.
12208
12209    http://bugzilla.openedhand.com/show_bug.cgi?id=1846
12210
12211 clutter/clutter-units.c | 2 +-
12212 1 file changed, 1 insertion(+), 1 deletion(-)
12213
12214commit c5551184b0337ea8a990b14e52eb15e855a27ca9
12215Author: Damien Lespiau <damien.lespiau@intel.com>
12216Date:   Mon Oct 12 16:45:39 2009 +0100
12217
12218    Add a warning when ClutterInterval can't compute progress
12219
12220    This is really useful when trying to animate GTypes that haven't
12221    registered any progress function. Instead of silently not working it
12222    will warn the developer.
12223
12224    http://bugzilla.openedhand.com/show_bug.cgi?id=1845
12225
12226 clutter/clutter-interval.c | 9 +++++++++
12227 1 file changed, 9 insertions(+)
12228
12229commit ee9f8c3bdf9672e0d79598eed8f73569190888dc
12230Author: Damien Lespiau <damien.lespiau@intel.com>
12231Date:   Mon Oct 12 16:28:10 2009 +0100
12232
12233    Add ClutterInterval integration
12234
12235    To be able to animate CLUTTER_TYPE_UNITS properties we need to register
12236    the GType and its progress function against the ClutterInterval code.
12237
12238    The two ClutterUnits defining the interval can use different units, the
12239    resulting unit will always be in pixels, so calculating a progress
12240    between 10px and 4cm is valid.
12241
12242    http://bugzilla.openedhand.com/show_bug.cgi?id=1844
12243
12244 clutter/clutter-units.c | 29 +++++++++++++++++++++++++++++
12245 1 file changed, 29 insertions(+)
12246
12247commit 83b4ec7a12ea279b59a80f6008e1bece25de3a8c
12248Author: Emmanuele Bassi <ebassi@gnome.org>
12249Date:   Fri Oct 16 15:25:37 2009 +0100
12250
12251    units: Cache the pixels value inside Units
12252
12253    When computing the pixels value of a ClutterUnits value we should
12254    be caching the value to avoid recomputing for every call of
12255    clutter_units_to_pixels(). We already have a flag telling us to
12256    return the cached value, but we miss the mechanism to evict the
12257    cache whenever the Backend settings affecting the conversion, that
12258    is default font and resolution, change.
12259
12260    In order to implement the eviction we can use a "serial"; the
12261    Backend will have an internal serial field which we retrieve and
12262    put inside the ClutterUnits structure (we split one of the two
12263    64 bit padding fields into two 32 bit fields to maintain ABI); every
12264    time we call clutter_units_to_pixels() we compare the units serial
12265    with that of the Backend; if they match and pixels_set is set to
12266    TRUE then we just return the stored pixels value. If the serials
12267    do not match then we unset the pixels_set flag and recompute the
12268    pixels value.
12269
12270    We can verify this by adding a simple test unit checking that
12271    by changing the resolution of ClutterBackend we get different
12272    pixel values for 1 em.
12273
12274    http://bugzilla.openedhand.com/show_bug.cgi?id=1843
12275
12276 .gitignore                         |  1 +
12277 clutter/clutter-backend.c          | 21 +++++++++++++++++++--
12278 clutter/clutter-private.h          |  2 ++
12279 clutter/clutter-units.c            | 45 +++++++++++++++++++++++++++++++++++++++++++++
12280 clutter/clutter-units.h            |  9 ++++++++-
12281 tests/conform/test-clutter-units.c | 23 +++++++++++++++++++++++
12282 tests/conform/test-conform-main.c  |  1 +
12283 7 files changed, 99 insertions(+), 3 deletions(-)
12284
12285commit 2ff31dfbaaad3056265b05efe57eac63f8e3ce61
12286Author: Emmanuele Bassi <ebassi@gnome.org>
12287Date:   Fri Oct 16 14:22:15 2009 +0100
12288
12289    text: Notify :position when it changes
12290
12291    The :position property is not notified when changed.
12292
12293    http://bugzilla.openedhand.com/show_bug.cgi?id=1830
12294
12295 clutter/clutter-text.c | 15 +++++++++++++++
12296 1 file changed, 15 insertions(+)
12297
12298commit bc424fb56c3a75a822b22c0e5b284b5775f76abe
12299Author: Emmanuele Bassi <ebassi@linux.intel.com>
12300Date:   Sat Sep 19 09:19:06 2009 +0100
12301
12302    [text] NULL-ify strings to avoid double-frees
12303
12304 clutter/clutter-text.c | 1 +
12305 1 file changed, 1 insertion(+)
12306
12307commit 6f43f4b805387e0cac054d7b002634da3b00b106
12308Author: Emmanuele Bassi <ebassi@linux.intel.com>
12309Date:   Sat Sep 19 09:18:06 2009 +0100
12310
12311    [text] Do not apply unset preedit attributes
12312
12313    The pre-edit attributes are optional and thus should only be applied
12314    if they have been set to avoid assertion failures.
12315
12316 clutter/clutter-text.c | 11 +++++++----
12317 1 file changed, 7 insertions(+), 4 deletions(-)
12318
12319commit 28837283877c11f26565d79e6bcd4b171203a9b0
12320Author: Emmanuele Bassi <ebassi@linux.intel.com>
12321Date:   Wed Sep 9 12:15:23 2009 +0100
12322
12323    [text] Add pre-edit string to ClutterText
12324
12325    Input Methods require to be able to set a "pre-edit string", that is
12326    a string that it's just displayed into the Text actor without being
12327    committed to the actor's buffer. The string might require custom Pango
12328    attributes, and an update of the cursor position.
12329
12330 clutter/clutter-text.c                     | 193 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------
12331 clutter/clutter-text.h                     |   5 +++++
12332 doc/reference/clutter/clutter-sections.txt |   1 +
12333 tests/interactive/test-text-field.c        | 179 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
12334 4 files changed, 346 insertions(+), 32 deletions(-)
12335
12336commit 2cc88f1140ffa774371b877d723dfaf9e33a6ce5
12337Author: Robert Bragg <robert@linux.intel.com>
12338Date:   Thu Oct 15 19:12:34 2009 +0100
12339
12340    [build] fix Makefile.am.{enums,marshal} to support out of tree builds
12341
12342    Out of tree builds were broken in commit 46b736f42e1165 since we didn't
12343    explicitly use $(srcdir) to find the input files for glib-mkenums and
12344    glib-genmarshal.
12345
12346 build/autotools/Makefile.am.enums   | 4 ++--
12347 build/autotools/Makefile.am.marshal | 4 ++--
12348 2 files changed, 4 insertions(+), 4 deletions(-)
12349
12350commit 87f0b94df7524400b233cd1acca871fa6f8f0a02
12351Author: Emmanuele Bassi <ebassi@gnome.org>
12352Date:   Thu Oct 15 14:20:44 2009 +0100
12353
12354    layout, docs: Fix description of Bin properties
12355
12356    The BinLayer and BinLayout properties name and blurb for introspection
12357    should be slightly more descriptive.
12358
12359 clutter/clutter-bin-layout.c | 12 ++++++------
12360 1 file changed, 6 insertions(+), 6 deletions(-)
12361
12362commit 852abbb138898467fb6497508e99fb1a92203c78
12363Author: Emmanuele Bassi <ebassi@gnome.org>
12364Date:   Thu Oct 15 14:12:37 2009 +0100
12365
12366    layout, bin: Use ceilf() instead of casting to int
12367
12368    Casting a float to int to truncate it before assigning the value
12369    to a float again is wrong. We should use ceilf() instead which
12370    does what we want to achieve (rounding up the size to avoid
12371    sub-pixel positioning of children).
12372
12373 clutter/clutter-bin-layout.c | 26 ++++++++++++++------------
12374 1 file changed, 14 insertions(+), 12 deletions(-)
12375
12376commit 308c930f37c7c00eb6791d53fced7d1c2ac9600e
12377Author: Emmanuele Bassi <ebassi@gnome.org>
12378Date:   Thu Oct 15 14:11:36 2009 +0100
12379
12380    layout, docs: Add long description for FlowLayout
12381
12382    Add the full description of the layout policy
12383
12384 clutter/clutter-flow-layout.c | 16 ++++++++++++++++
12385 1 file changed, 16 insertions(+)
12386
12387commit 4d153e4507fdd8fc135998f771e1826a9b02e658
12388Author: Emmanuele Bassi <ebassi@gnome.org>
12389Date:   Thu Oct 15 12:15:49 2009 +0100
12390
12391    layout, box: Clean up
12392
12393    * Use g_list_foreach() instead of iterating over the list inside
12394      the destruction sequence, since we are causing the widgets to be
12395      implicitly removed from the list via the destroy() call.
12396
12397    * Use g_signal_connect_swapped() and spare us from a callback.
12398
12399 clutter/clutter-box.c | 20 ++++++--------------
12400 1 file changed, 6 insertions(+), 14 deletions(-)
12401
12402commit adca939101e3a25309c29e6a263c1c7ac7b0d877
12403Author: Emmanuele Bassi <ebassi@gnome.org>
12404Date:   Thu Oct 15 12:04:50 2009 +0100
12405
12406    layout, box: Write long description for Box
12407
12408    Also have an example of how to create a Box with a layout manager
12409    and how to use the pack() method.
12410
12411 clutter/clutter-box.c | 45 ++++++++++++++++++++++++++++++++++++++++++++-
12412 1 file changed, 44 insertions(+), 1 deletion(-)
12413
12414commit 9f06f726d409d0ac948179b9771350147c5e699b
12415Author: Emmanuele Bassi <ebassi@linux.intel.com>
12416Date:   Tue Oct 13 16:52:57 2009 +0100
12417
12418    layout, docs: Remove unused functions
12419
12420    The :wrap property and its accessor functions were removed from
12421    ClutterFlowLayout.
12422
12423 doc/reference/clutter/clutter-sections.txt | 2 --
12424 1 file changed, 2 deletions(-)
12425
12426commit cd3dce1d5d957046934062780d21558e182ceb1a
12427Author: Emmanuele Bassi <ebassi@linux.intel.com>
12428Date:   Tue Oct 13 12:15:25 2009 +0100
12429
12430    layout: Document BoxLayout
12431
12432    Add BoxLayout to the API reference.
12433
12434 doc/reference/clutter/clutter-docs.xml.in  |  1 +
12435 doc/reference/clutter/clutter-sections.txt | 38 ++++++++++++++++++++++++++++++++++++++
12436 doc/reference/clutter/clutter.types        |  1 +
12437 3 files changed, 40 insertions(+)
12438
12439commit b526b765931bcf4e44feac4ab1b72763eb68f264
12440Author: Emmanuele Bassi <ebassi@linux.intel.com>
12441Date:   Tue Oct 13 12:14:05 2009 +0100
12442
12443    layout: Add BoxLayout, a single line layout manager
12444
12445    The BoxLayout layout manager implements a layout policy for arranging
12446    children on a single line, either alongside the X axis or alongside the
12447    Y axis.
12448
12449 .gitignore                          |    1 +
12450 clutter/Makefile.am                 |    2 +
12451 clutter/clutter-box-layout.c        | 1496 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
12452 clutter/clutter-box-layout.h        |  143 +++++++++++++++++++
12453 clutter/clutter.h                   |    1 +
12454 tests/interactive/Makefile.am       |    3 +-
12455 tests/interactive/test-box-layout.c |  207 +++++++++++++++++++++++++++
12456 7 files changed, 1852 insertions(+), 1 deletion(-)
12457
12458commit c4b2d4ce797b5ac4c61865d4249badcfb85657f0
12459Author: Emmanuele Bassi <ebassi@gnome.org>
12460Date:   Thu Oct 8 15:45:29 2009 +0100
12461
12462    layout: Report the correct size of FlowLayout
12463
12464    FlowLayout should compute the correct height for the assigned width when
12465    in horizontal flow, and the correct width for the assigned height when
12466    in vertical flow. This means pre-computing the number of lines inside
12467    the get_preferred_width() and get_preferred_height(). We can then cache
12468    the computed column width and row height, cache them inside the layout
12469    and then use them when allocating the children.
12470
12471 clutter/clutter-flow-layout.c        | 457 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------
12472 tests/interactive/test-flow-layout.c |   4 +-
12473 2 files changed, 369 insertions(+), 92 deletions(-)
12474
12475commit 6f19666b13ac9bde44996620df714484dbe4bd67
12476Author: Emmanuele Bassi <ebassi@gnome.org>
12477Date:   Wed Oct 7 15:30:29 2009 +0100
12478
12479    layout: Resizing the stage resizes the FlowLayout box
12480
12481    Add some user interaction to verify the dynamic reflowing.
12482
12483 tests/interactive/test-flow-layout.c | 21 +++++++++++++++++++++
12484 1 file changed, 21 insertions(+)
12485
12486commit 0876575a9549acd54fbc3c70b4e7178e9e4e1e65
12487Author: Emmanuele Bassi <ebassi@gnome.org>
12488Date:   Wed Oct 7 15:29:47 2009 +0100
12489
12490    layout: Use the get_request_mode() getter in BinLayout
12491
12492    Instead of using g_object_get(child, "request-mode", ...).
12493
12494 clutter/clutter-bin-layout.c | 3 +--
12495 1 file changed, 1 insertion(+), 2 deletions(-)
12496
12497commit eb40e856e1a687c27d047ee6069b6ec84e1e1237
12498Author: Emmanuele Bassi <ebassi@gnome.org>
12499Date:   Wed Oct 7 15:28:01 2009 +0100
12500
12501    layout: Change the request-mode along with the orientation
12502
12503    When changing the orientation of a FlowLayout, the associated
12504    container should also change its request mode. A horizontally
12505    flowing layout has a height depending on the width, since it
12506    will reflow vertically; similarly, a vertically reflowing layout
12507    will have a width depending on the height.
12508
12509 clutter/clutter-flow-layout.c | 30 ++++++++++++++++++++++++++++--
12510 1 file changed, 28 insertions(+), 2 deletions(-)
12511
12512commit b5895335ab2d6975665426693fb1b96d7ca86f74
12513Author: Emmanuele Bassi <ebassi@gnome.org>
12514Date:   Wed Oct 7 15:15:02 2009 +0100
12515
12516    actor: Add set_request_mode() method
12517
12518    We should not require the use g_object_set()/_get() for accessing
12519    the :request-mode property. A proper accessors pair should be
12520    preferred.
12521
12522 clutter/clutter-actor.c                    | 48 +++++++++++++++++++++++++++++++++++++++++-------
12523 clutter/clutter-actor.h                    |  3 +++
12524 doc/reference/clutter/clutter-sections.txt |  2 ++
12525 3 files changed, 46 insertions(+), 7 deletions(-)
12526
12527commit 19317520b57461b505751411cf9d9f39bbf12ad5
12528Author: Emmanuele Bassi <ebassi@gnome.org>
12529Date:   Wed Oct 7 12:35:39 2009 +0100
12530
12531    [layout] Remove FlowLayout:wrap
12532
12533    The :wrap property is not implemented, and mostly useless: the
12534    FlowLayout is a reflowing grid. This means that if it receives
12535    less than the preferred width or height in the flow direction
12536    then it should always reflow.
12537
12538 clutter/clutter-flow-layout.c | 107 ++++++++---------------------------------------------------------------------------------------------------
12539 clutter/clutter-flow-layout.h |   3 ---
12540 2 files changed, 8 insertions(+), 102 deletions(-)
12541
12542commit 6d954ec0742bad823c8c474873a21ab990a56c7f
12543Author: Emmanuele Bassi <ebassi@gnome.org>
12544Date:   Wed Oct 7 11:42:09 2009 +0100
12545
12546    [layout] Rename BinLayout and FlowLayout interactive tests
12547
12548    The BinLayout and FlowLayout interactive tests should be named more
12549    explicitly.
12550
12551 .gitignore                                            | 4 ++--
12552 tests/interactive/Makefile.am                         | 4 ++--
12553 tests/interactive/{test-box.c => test-bin-layout.c}   | 2 +-
12554 tests/interactive/{test-flow.c => test-flow-layout.c} | 2 +-
12555 4 files changed, 6 insertions(+), 6 deletions(-)
12556
12557commit 4ea57bc685abeea9273b2b8427a9199980cc2f40
12558Author: Emmanuele Bassi <ebassi@gnome.org>
12559Date:   Wed Oct 7 11:39:18 2009 +0100
12560
12561    [layout] Skip invisible children in FlowLayout
12562
12563    Skip hidden actors when computing the preferred size and when
12564    allocating.
12565
12566 clutter/clutter-flow-layout.c | 9 +++++++++
12567 1 file changed, 9 insertions(+)
12568
12569commit b1bae4d66afc8420209f72dabcbf2fe81b461ff3
12570Author: Emmanuele Bassi <ebassi@gnome.org>
12571Date:   Wed Oct 7 11:08:51 2009 +0100
12572
12573    [layout] Clean up and document FlowLayout
12574
12575 clutter/clutter-flow-layout.c | 177 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------
12576 1 file changed, 168 insertions(+), 9 deletions(-)
12577
12578commit db3ef971705485b1000def688635daaac99f79cd
12579Author: Emmanuele Bassi <ebassi@gnome.org>
12580Date:   Tue Oct 6 17:30:49 2009 +0100
12581
12582    [layout] Snap children of FlowLayout to column/row
12583
12584    Use the column and row size to align each child; with :homogeneous
12585    set to TRUE, or with children with the same size, the FlowLayout
12586    will behave like a reflowing grid.
12587
12588 clutter/clutter-flow-layout.c | 14 ++++++++++----
12589 1 file changed, 10 insertions(+), 4 deletions(-)
12590
12591commit e5a074fd9e487444db9114c2970a4d83c1661c7f
12592Author: Emmanuele Bassi <ebassi@gnome.org>
12593Date:   Tue Oct 6 16:17:16 2009 +0100
12594
12595    [layout] Add :homogeneous to FlowLayout
12596
12597 clutter/clutter-flow-layout.c | 90 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------
12598 clutter/clutter-flow-layout.h |  3 +++
12599 tests/interactive/test-flow.c | 37 ++++++++++++++++++++++++++++++++++---
12600 3 files changed, 115 insertions(+), 15 deletions(-)
12601
12602commit 5737cf869f162f5539ae00f86db7923502c38dab
12603Author: Emmanuele Bassi <ebassi@linux.intel.com>
12604Date:   Fri Sep 18 17:28:02 2009 +0100
12605
12606    [layout] Initial implementation of FlowLayout
12607
12608    FlowLayout is a layout manager that arranges its children in a
12609    reflowing line; the orientation controls the major axis for the
12610    layout: horizontal, for reflow on the Y axis, and vertical, for
12611    reflow on the X axis.
12612
12613 .gitignore                                 |   1 +
12614 clutter/Makefile.am                        |   2 +
12615 clutter/clutter-flow-layout.c              | 855 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
12616 clutter/clutter-flow-layout.h              | 127 ++++++++++++++++++++++++++++
12617 clutter/clutter.h                          |   1 +
12618 doc/reference/clutter/clutter-docs.xml.in  |   1 +
12619 doc/reference/clutter/clutter-sections.txt |  34 ++++++++
12620 doc/reference/clutter/clutter.types        |   1 +
12621 tests/interactive/Makefile.am              |   3 +-
12622 tests/interactive/test-flow.c              | 117 ++++++++++++++++++++++++++
12623 10 files changed, 1141 insertions(+), 1 deletion(-)
12624
12625commit 857b0239e906b0e5eb1a2fec8703eb675a70675f
12626Author: Emmanuele Bassi <ebassi@gnome.org>
12627Date:   Mon Oct 5 17:21:41 2009 +0100
12628
12629    [layout] Use FixedLayout inside Group
12630
12631    The Group actor should use the FixedLayout layout manager object
12632    to avoid duplicating code.
12633
12634 clutter/clutter-group.c | 138 +++++++++++++++++++++++++++++-------------------------------------------------------------------------------------------------------------
12635 1 file changed, 29 insertions(+), 109 deletions(-)
12636
12637commit 62db72cf4106f498a041d02d67de72460130acdd
12638Author: Emmanuele Bassi <ebassi@gnome.org>
12639Date:   Mon Oct 5 17:09:04 2009 +0100
12640
12641    [layout] Update FixedLayout
12642
12643    The behaviour of ClutterGroup has been fixed with regards to the
12644    preferred size request; the fixed layout manager should use the
12645    same behaviour.
12646
12647 clutter/clutter-fixed-layout.c | 116 ++++++++++++++++++++------------------------------------------------------------------------------------------------
12648 1 file changed, 20 insertions(+), 96 deletions(-)
12649
12650commit 4663552a0017f85c818a664b3528fab617e6e15c
12651Author: Emmanuele Bassi <ebassi@linux.intel.com>
12652Date:   Fri Sep 18 15:29:09 2009 +0100
12653
12654    [layout] Typo and whitespace fixes
12655
12656 clutter/clutter-box.c | 2 +-
12657 clutter/clutter-box.h | 2 +-
12658 2 files changed, 2 insertions(+), 2 deletions(-)
12659
12660commit c98388bb0166fedd4e72bca42b99782a9b2fb52c
12661Author: Emmanuele Bassi <ebassi@linux.intel.com>
12662Date:   Thu Sep 17 18:21:51 2009 +0100
12663
12664    [layout, box] Add Box:color
12665
12666    Allow setting the background color of a ClutterBox
12667
12668 clutter/clutter-box.c                      | 136 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
12669 clutter/clutter-box.h                      |   5 +++++
12670 doc/reference/clutter/clutter-sections.txt |   4 ++++
12671 3 files changed, 144 insertions(+), 1 deletion(-)
12672
12673commit df6ca3d171a6a8d1a18cbf0fe70f4e4572e54479
12674Author: Emmanuele Bassi <ebassi@linux.intel.com>
12675Date:   Thu Sep 17 11:38:43 2009 +0100
12676
12677    [layout, docs] Clean up BinLayout documentation
12678
12679    Documentation and code style fixes for BinLayout.
12680
12681 clutter/clutter-bin-layout.c | 120 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------
12682 clutter/clutter-bin-layout.h |  24 ++++++++++++++++++++++++
12683 2 files changed, 112 insertions(+), 32 deletions(-)
12684
12685commit 8b2088a91787562c01d5b8184f1f2b2f1d225371
12686Author: Emmanuele Bassi <ebassi@linux.intel.com>
12687Date:   Wed Sep 16 15:55:30 2009 +0100
12688
12689    [layout, tests] Use variants for child packing in Box
12690
12691    There are three potential variants to add a child inside a Box
12692    with a BinLayout:
12693
12694      - clutter_box_pack(), a variadic argument function which
12695        allows passing arbitrary LayoutMeta properties and values;
12696
12697      - clutter_bin_layout_add(), which uses the backpointer to
12698        the container from the LayoutManager and sets the layout
12699        properties directly without GValue (de)marshalling
12700
12701      - clutter_container_add_actor() and
12702        clutter_bin_layout_set_alignment(), similar to the
12703        clutter_bin_layout_add() function above, but split in two
12704
12705    The test-box interactive test should exercise all three variants.
12706
12707 tests/interactive/test-box.c | 24 ++++++++++++++++--------
12708 1 file changed, 16 insertions(+), 8 deletions(-)
12709
12710commit 431a63d04adc40dfd719563c4f9978324f618b4e
12711Author: Emmanuele Bassi <ebassi@linux.intel.com>
12712Date:   Wed Sep 16 15:51:13 2009 +0100
12713
12714    [layout] Store and use the container inside BinLayout
12715
12716    The BinLayout should store a pointer to the Container that it is
12717    using it as the layout manager.
12718
12719    This allows us to fix the API and drop the additional Container
12720    arguments from set_alignment() and get_alignment().
12721
12722    This also allows us to add a ClutterBinLayout::add() method which
12723    adds an actor and sets the alignment policies without dealing with
12724    variadic arguments functions and GValue (de)marshalling.
12725
12726 clutter/clutter-bin-layout.c               | 120 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------
12727 clutter/clutter-bin-layout.h               |   7 +++++--
12728 doc/reference/clutter/clutter-sections.txt |   1 +
12729 3 files changed, 114 insertions(+), 14 deletions(-)
12730
12731commit 755896664f7efc4bbfce0bfb6ea3249b6c526a59
12732Author: Emmanuele Bassi <ebassi@linux.intel.com>
12733Date:   Wed Sep 16 15:48:28 2009 +0100
12734
12735    [layout] Set a back pointer to Box inside the layout
12736
12737    Use the LayoutManager API to set a back pointer to the Box actor
12738    inside the LayoutManager used by the box.
12739
12740    This also allows us to replace the LayoutManager on a Box, since
12741    the LayoutManager will be able to replace all the metadata if
12742    needed.
12743
12744 clutter/clutter-box.c                      | 37 +++++++++++++++++++++++++++++++++++--
12745 clutter/clutter-box.h                      |  2 ++
12746 doc/reference/clutter/clutter-sections.txt |  1 +
12747 3 files changed, 38 insertions(+), 2 deletions(-)
12748
12749commit 22bb243ec24821cd18e7dba791e793884ffe2a63
12750Author: Emmanuele Bassi <ebassi@linux.intel.com>
12751Date:   Wed Sep 16 15:47:26 2009 +0100
12752
12753    [layout] Replace stale LayoutMeta
12754
12755    If a LayoutMeta references a different container and/or layout manager
12756    then we should simply replace it and discard the previous one.
12757
12758 clutter/clutter-layout-manager.c | 17 ++++++++++++++++-
12759 1 file changed, 16 insertions(+), 1 deletion(-)
12760
12761commit 9117ee205691a5bb1a3bb65e1963ed5b8826b79f
12762Author: Emmanuele Bassi <ebassi@linux.intel.com>
12763Date:   Wed Sep 16 14:58:30 2009 +0100
12764
12765    [layout] Allow taking a back pointer to the Container
12766
12767    The LayoutManager implementation might opt to take a back pointer
12768    to the Container that is using the layout instance; this allows
12769    direct access to the container itself from within the implementation.
12770
12771 clutter/clutter-layout-manager.c           | 28 ++++++++++++++++++++++++++++
12772 clutter/clutter-layout-manager.h           | 12 ++++++++++++
12773 doc/reference/clutter/clutter-sections.txt |  1 +
12774 3 files changed, 41 insertions(+)
12775
12776commit f58bdbad15206f4369589f50789b9db9585f6e03
12777Author: Emmanuele Bassi <ebassi@linux.intel.com>
12778Date:   Wed Sep 16 11:10:45 2009 +0100
12779
12780    [layout] Rename Box::add to Box::pack
12781
12782    Since ClutterBox is a ClutterContainer we should avoid naming
12783    collisions between methods.
12784
12785 clutter/clutter-box.c                      | 24 ++++++++++++------------
12786 clutter/clutter-box.h                      |  4 ++--
12787 doc/reference/clutter/clutter-sections.txt |  4 ++--
12788 tests/interactive/test-box.c               | 24 ++++++++++++------------
12789 4 files changed, 28 insertions(+), 28 deletions(-)
12790
12791commit c6f67bf872ec2b51951a554e0351e6d7615d28ce
12792Author: Emmanuele Bassi <ebassi@linux.intel.com>
12793Date:   Wed Sep 16 11:10:38 2009 +0100
12794
12795    [layout, docs] Document FixedLayout
12796
12797 clutter/clutter-fixed-layout.c | 45 +++++++++++++++++++++++++++++++++++++++++++++
12798 clutter/clutter-fixed-layout.h | 42 ++++++++++++++++++++++++++++++++++++++++++
12799 2 files changed, 87 insertions(+)
12800
12801commit aaae60e17837d6f0b330c04345f1e2c2be9f24b9
12802Author: Emmanuele Bassi <ebassi@linux.intel.com>
12803Date:   Tue Sep 15 23:20:51 2009 +0100
12804
12805    [layout] Implement ClutterBox::add
12806
12807    The ClutterBox::add method is a simple wrapper around the Container
12808    add_actor() method and the LayoutManager layout properties API. It
12809    allows adding an actor to a Box and setting the layout properties in
12810    one call.
12811
12812    If the LayoutManager used by the Box does not support layout properties
12813    then the add() method short-circuits out.
12814
12815    Along with the varargs version of the method there's also a vector-based
12816    variant, for language bindings to use.
12817
12818 clutter/clutter-box.c                      | 186 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
12819 clutter/clutter-box.h                      |  10 ++++++++++
12820 doc/reference/clutter/clutter-sections.txt |   2 ++
12821 tests/interactive/test-box.c               |  31 ++++++++++++-------------------
12822 4 files changed, 210 insertions(+), 19 deletions(-)
12823
12824commit a2086f1178fa3aed7fdc6f94d09efbc0e1bc2c11
12825Author: Emmanuele Bassi <ebassi@linux.intel.com>
12826Date:   Tue Sep 15 17:37:11 2009 +0100
12827
12828    [layout] Add LayoutMeta
12829
12830    Instead of overloading ClutterChildMeta with both container and layout
12831    metadata and delegate to every LayoutManager implementation to keep a
12832    backpointer to the layout manager instance, we can simply subclass
12833    ChildMeta into LayoutMeta and presto! everything works out pretty well
12834    for everyone.
12835
12836 clutter/Makefile.am                        |   2 ++
12837 clutter/clutter-bin-layout.c               |  35 ++++++++++++++++-------------------
12838 clutter/clutter-layout-manager.c           |  58 ++++++++++++++++++++++++++++++++--------------------------
12839 clutter/clutter-layout-manager.h           | 133 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------
12840 clutter/clutter-layout-meta.c              | 142 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
12841 clutter/clutter-layout-meta.h              |  85 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
12842 clutter/clutter-types.h                    |   1 +
12843 clutter/clutter.h                          |   1 +
12844 doc/reference/clutter/clutter-docs.xml.in  |   5 +++--
12845 doc/reference/clutter/clutter-sections.txt |  19 +++++++++++++++++++
12846 doc/reference/clutter/clutter.types        |   1 +
12847 11 files changed, 369 insertions(+), 113 deletions(-)
12848
12849commit 899db6f226864614350d6aa07d8313dccf7d652f
12850Author: Emmanuele Bassi <ebassi@linux.intel.com>
12851Date:   Tue Sep 15 16:24:47 2009 +0100
12852
12853    [layout, docs] Add layout managers sections
12854
12855    Add LayoutManager and its subclasses, and the Box actor to the
12856    gtk-doc machinery needed to generate the API reference.
12857
12858 clutter/clutter-bin-layout.c               |   6 ++++--
12859 clutter/clutter-bin-layout.h               |   4 ++--
12860 clutter/clutter-layout-manager.c           | 145 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
12861 clutter/clutter-layout-manager.h           |  16 +++++++++++++---
12862 doc/reference/clutter/clutter-docs.xml.in  |   9 +++++++++
12863 doc/reference/clutter/clutter-sections.txt |  94 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
12864 doc/reference/clutter/clutter.types        |   4 ++++
12865 7 files changed, 269 insertions(+), 9 deletions(-)
12866
12867commit 9cccff504a40706e70b11878572d7e7db7430792
12868Author: Emmanuele Bassi <ebassi@linux.intel.com>
12869Date:   Mon Sep 14 21:51:49 2009 +0100
12870
12871    [layout] Add layers to BinLayout
12872
12873    Each actor managed by a BinLayout policy should reside inside its
12874    own "layer", with horizontal and vertical alignment. The :x-align
12875    and :y-align properties of the BinLayout are the default alignment
12876    policies, which are copied to each new "layer" when it is created.
12877
12878    The set_alignment() and get_alignment() methods of BinLayout can
12879    be changed to operate on a specific "layer".
12880
12881    The whole machinery uses the new ChildMeta support inside the
12882    LayoutManager base abstract class.
12883
12884 clutter/clutter-bin-layout.c | 265 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------
12885 clutter/clutter-bin-layout.h |   4 ++++
12886 tests/interactive/test-box.c | 147 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----
12887 3 files changed, 385 insertions(+), 31 deletions(-)
12888
12889commit 98474076a1310494fec252fb6bfce8001bca78da
12890Author: Emmanuele Bassi <ebassi@linux.intel.com>
12891Date:   Mon Sep 14 21:50:20 2009 +0100
12892
12893    [layout] Bind the layout ChildMeta inside Box
12894
12895    The ClutterBox container actor should add and remove ChildMeta to
12896    each actor that has been added and removed to the list of children,
12897    respectively.
12898
12899 clutter/clutter-box.c | 9 +++++++++
12900 1 file changed, 9 insertions(+)
12901
12902commit 7051fe275d9d052ce42e8237080844aa18ee927c
12903Author: Emmanuele Bassi <ebassi@linux.intel.com>
12904Date:   Mon Sep 14 21:48:06 2009 +0100
12905
12906    [layout] Bind ChildMeta to LayoutManager
12907
12908    The ChildMeta object is a storage for child-container properties,
12909    that is properties that exist only when an actor is inside a specific
12910    container. The LayoutManager delegate class should also have
12911    layout-specific properties -- so, for this job, we can "recycle"
12912    ChildMeta as the storage.
12913
12914 clutter/clutter-layout-manager.c | 372 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
12915 clutter/clutter-layout-manager.h |  92 ++++++++++++++++++++++++++++++++-----------------
12916 2 files changed, 432 insertions(+), 32 deletions(-)
12917
12918commit 83a4e9626772453804c61d7aa022eacf540bf0ce
12919Author: Emmanuele Bassi <ebassi@linux.intel.com>
12920Date:   Mon Sep 14 12:04:42 2009 +0100
12921
12922    [layout] Document BinLayout
12923
12924 clutter/clutter-bin-layout.c | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
12925 clutter/clutter-bin-layout.h | 46 ++++++++++++++++++++++++++++++++++++++++++++--
12926 2 files changed, 137 insertions(+), 2 deletions(-)
12927
12928commit b06a3293fe3d065369d9f97ad8bfa77051414fec
12929Author: Emmanuele Bassi <ebassi@linux.intel.com>
12930Date:   Mon Sep 14 12:03:38 2009 +0100
12931
12932    [layout] Notify of alignment changes in BinLayout
12933
12934    Emit the ::layout-changed when the BinLayout alignment policies change.
12935
12936    This will result in a queue_relayout() on the containers using the
12937    BinLayout layout manager.
12938
12939 clutter/clutter-bin-layout.c | 10 ++++++++++
12940 1 file changed, 10 insertions(+)
12941
12942commit 4e8d8bbc15f26e95adfd59469306b7098f9fd491
12943Author: Emmanuele Bassi <ebassi@linux.intel.com>
12944Date:   Mon Sep 14 11:28:34 2009 +0100
12945
12946    [layout] Update Box
12947
12948    * Use ::layout-changed to queue a relayout when the layout changes
12949
12950    * Destroy the Box children when destroying the Box
12951
12952    * Allow getting the layout manager from the Box
12953
12954 clutter/clutter-box.c | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
12955 clutter/clutter-box.h |  4 +++-
12956 2 files changed, 70 insertions(+), 6 deletions(-)
12957
12958commit d096a3c791ab5b105d55a19ab316cd8b2fff878b
12959Author: Emmanuele Bassi <ebassi@linux.intel.com>
12960Date:   Mon Sep 14 11:04:11 2009 +0100
12961
12962    [layout] Add LayoutManager::layout-changed signal
12963
12964    If a sub-class of LayoutManager wishes to implement a parametrized
12965    layout policy it also needs a way to notify the container using the
12966    layout manager that the layout has changed. We cannot do it directly
12967    and automatically from the LayoutManager because a) it has no back
12968    link to the actor that it is using it and b) it can be attached to
12969    multiple actors.
12970
12971    This is a job for <cue raising dramatic music> signals!
12972
12973    By adding ClutterLayoutManager::layout-changed (and its relative
12974    emitted function) we can notify actors using the layout manager that
12975    the layout parameters have been changed, and thus they should queue
12976    a relayout.
12977
12978 clutter/clutter-layout-manager.c | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
12979 clutter/clutter-layout-manager.h |  44 ++++++++++++++++++++++++++++++++++++++++++++
12980 2 files changed, 146 insertions(+), 1 deletion(-)
12981
12982commit a1853892bae7c54d28a86e253e04c3753d65e159
12983Author: Emmanuele Bassi <ebassi@linux.intel.com>
12984Date:   Fri Sep 11 15:34:13 2009 +0100
12985
12986    [tests] Add a Box interactive test
12987
12988 .gitignore                    |  1 +
12989 tests/interactive/Makefile.am |  3 ++-
12990 tests/interactive/test-box.c  | 47 +++++++++++++++++++++++++++++++++++++++++++++++
12991 3 files changed, 50 insertions(+), 1 deletion(-)
12992
12993commit 1061ebeac90a5b03a172aa649aa5a8b8cfb5b293
12994Author: Emmanuele Bassi <ebassi@linux.intel.com>
12995Date:   Fri Sep 11 13:51:23 2009 +0100
12996
12997    [layout] Add BinLayout
12998
12999    A BinLayout is a simple layout manager that allocates a single cell,
13000    providing alignment on both the horizontal and vertical axis.
13001
13002    If the container associated to the BinLayout has more than one child,
13003    the preferred size returned by the layout manager will be as big as
13004    the maximum of the children preferred sizes; the allocation will be
13005    applied to all children - but it will still depend on each child
13006    preferred size and the BinLayout horizontal and vertical alignment
13007    properties.
13008
13009    The supported alignment properties are:
13010
13011      * center: align the child by centering it
13012      * start: align the child at the top or left border of the layout
13013      * end: align the child at the bottom or right border of the layout
13014      * fill: expand the child to fill the size of the layout
13015      * fixed: let the child position itself
13016
13017 clutter/Makefile.am          |   2 ++
13018 clutter/clutter-bin-layout.c | 397 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
13019 clutter/clutter-bin-layout.h |  50 ++++++++++++++++++++++++++
13020 clutter/clutter.h            |   1 +
13021 4 files changed, 450 insertions(+)
13022
13023commit 6d4cc13f7c7047a609dd8055ce63048da294af39
13024Author: Emmanuele Bassi <ebassi@linux.intel.com>
13025Date:   Wed Sep 2 12:37:16 2009 +0100
13026
13027    [layout] Add Fixed layout manager
13028
13029    The FixedLayout layout manager object implements the same layout
13030    policy of ClutterGroup.
13031
13032 clutter/Makefile.am            |   2 ++
13033 clutter/clutter-fixed-layout.c | 217 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
13034 clutter/clutter-fixed-layout.h |  38 +++++++++++++++++++++++++++++++++++
13035 clutter/clutter.h              |   1 +
13036 4 files changed, 258 insertions(+)
13037
13038commit 141a1556908749236c90e69fc2388f4fc40c6d8f
13039Author: Emmanuele Bassi <ebassi@linux.intel.com>
13040Date:   Wed Sep 2 11:55:22 2009 +0100
13041
13042    [layout] Make LayoutManager a floating object
13043
13044    A layout manager instance makes only sense if it's owned by a
13045    container. For this reason, it should have a floating reference
13046    instead of a full reference on construction; this allows constructing
13047    Boxes like:
13048
13049      box = clutter_box_new (clutter_fixed_layout_new ());
13050
13051    without leaking the layout manager instance.
13052
13053 clutter/clutter-box.c            | 3 ++-
13054 clutter/clutter-layout-manager.c | 4 +++-
13055 clutter/clutter-layout-manager.h | 4 ++--
13056 3 files changed, 7 insertions(+), 4 deletions(-)
13057
13058commit 0340f656346d80696305218897720e28c88f367a
13059Author: Emmanuele Bassi <ebassi@linux.intel.com>
13060Date:   Tue Sep 1 17:42:50 2009 +0100
13061
13062    [box] Add ClutterBox
13063
13064    ClutterBox is an actor with no layout management. It relies on
13065    a ClutterLayoutManager to perform size requisition and allocation
13066    of its children.
13067
13068 clutter/Makefile.am   |   2 ++
13069 clutter/clutter-box.c | 368 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
13070 clutter/clutter-box.h |  43 +++++++++++++++++++++++++
13071 clutter/clutter.h     |   1 +
13072 4 files changed, 414 insertions(+)
13073
13074commit d6183e95e51d1e3807ed5150768de2426b6b8e65
13075Author: Emmanuele Bassi <ebassi@linux.intel.com>
13076Date:   Tue Sep 1 16:34:28 2009 +0100
13077
13078    [layout] Add initial implementation of LayoutManager
13079
13080    The LayoutManager class is an abstract proxy for the size requesition
13081    and size allocation process in ClutterActor.
13082
13083    A ClutterLayoutManager sub-class must implement get_preferred_width(),
13084    get_preferred_height() and allocate(); a ClutterContainer using the
13085    LayoutManager API will then proxy the corresponding Actor virtual
13086    functions to the LayoutManager instance. This allows having a generic
13087    "blank" ClutterActor sub-class, implementing the ClutterContainer
13088    interface, which leaves only the layout management implementation to
13089    the application developers.
13090
13091 clutter/Makefile.am              |   2 ++
13092 clutter/clutter-layout-manager.c | 180 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
13093 clutter/clutter-layout-manager.h |  92 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
13094 clutter/clutter.h                |   1 +
13095 4 files changed, 275 insertions(+)
13096
13097commit 4f2bfc003ad0f5b0b9d69693eed1bdbc9655f947
13098Author: Emmanuele Bassi <ebassi@linux.intel.com>
13099Date:   Tue Oct 13 19:27:03 2009 +0100
13100
13101    build: Clean up main Makefile.am
13102
13103 clutter/Makefile.am | 55 +++++++++++++++++++++++++++++--------------------------
13104 1 file changed, 29 insertions(+), 26 deletions(-)
13105
13106commit 46b736f42e1165420796ed2afe4fc791d82381da
13107Author: Emmanuele Bassi <ebassi@linux.intel.com>
13108Date:   Tue Oct 13 17:27:19 2009 +0100
13109
13110    build: Move marshallers and enum types rules out
13111
13112    The rules to create signal marshallers and enumeration GTypes are
13113    usually copied and pasted all over different projects, though they
13114    are pretty generic and, given a little bit of parametrization, can
13115    be put in separate Makefile.am files and included whenever needed.
13116
13117 build/autotools/Makefile.am         |  2 ++
13118 build/autotools/Makefile.am.enums   | 43 +++++++++++++++++++++++++++++++++++++++++++
13119 build/autotools/Makefile.am.marshal | 44 ++++++++++++++++++++++++++++++++++++++++++++
13120 clutter/Makefile.am                 | 75 ++++++++++++++++++---------------------------------------------------------
13121 4 files changed, 107 insertions(+), 57 deletions(-)
13122
13123commit 0e33c10048dd3cba33644fd51ae3e1ea18dcc357
13124Author: Emmanuele Bassi <ebassi@linux.intel.com>
13125Date:   Tue Oct 13 17:00:15 2009 +0100
13126
13127    docs: Allow XInclude fallback for the annotation glossary
13128
13129 doc/reference/clutter/clutter-docs.xml.in | 2 +-
13130 1 file changed, 1 insertion(+), 1 deletion(-)
13131
13132commit a99f693c85cee6e389892b271f8aa25532bd7a6f
13133Author: Emmanuele Bassi <ebassi@linux.intel.com>
13134Date:   Sat Oct 10 13:52:46 2009 +0100
13135
13136    docs: Make StageManager a public class
13137
13138    The StageManager API is useful to track the stages of an application.
13139    It will also be useful when we land the modules API.
13140
13141 doc/reference/clutter/Makefile.am          |  1 -
13142 doc/reference/clutter/clutter-docs.xml.in  |  1 +
13143 doc/reference/clutter/clutter-sections.txt | 23 +++++++++++++++++++++++
13144 doc/reference/clutter/clutter.types        |  2 ++
13145 4 files changed, 26 insertions(+), 1 deletion(-)
13146
13147commit c3d056533c8733160227b790388723a4c8a16123
13148Author: Emmanuele Bassi <ebassi@linux.intel.com>
13149Date:   Sat Oct 10 13:51:47 2009 +0100
13150
13151    stage/manager: Set :default-stage as read-only
13152
13153    The StageManager:default-stage property should be read-only, since
13154    the default stage is owned by Clutter itself.
13155
13156 clutter/clutter-stage-manager.c | 23 ++---------------------
13157 1 file changed, 2 insertions(+), 21 deletions(-)
13158
13159commit 74eaa2941327d3ee7762a93136b647979b6e094a
13160Author: Emmanuele Bassi <ebassi@linux.intel.com>
13161Date:   Sat Oct 10 13:50:25 2009 +0100
13162
13163    stage/manager: Deprecate set_default_stage()
13164
13165    The set_default_stage() method of StageManager should not be used
13166    by application code; technically, nothing in Clutter uses it, and
13167    StageManager's API is not considered public anyway.
13168
13169 clutter/clutter-stage-manager.c | 52 +++++++++++++++++++++++++++++++++++++++++-----------
13170 clutter/clutter-stage-manager.h | 23 +++++++++++++++++++----
13171 2 files changed, 60 insertions(+), 15 deletions(-)
13172
13173commit a7ff5385a5071824e996eae6b92486ef07bd143e
13174Author: Damien Lespiau <damien.lespiau@intel.com>
13175Date:   Fri Oct 9 17:18:34 2009 +0100
13176
13177    [actor] Unset the IN_DESTRUCTION flag when leaving ::destroy()
13178
13179    The IN_DESTRUCTION flag is set around the unrealization and disposal of
13180    the actor in clutter_actor_destroy() but is never unset (it's set twice
13181    instead).
13182
13183    Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13184
13185 clutter/clutter-actor.c | 2 +-
13186 1 file changed, 1 insertion(+), 1 deletion(-)
13187
13188commit 3bbc96e17e5a03ba931c86a5cd2a0ecaa2a3b77b
13189Author: Emmanuele Bassi <ebassi@linux.intel.com>
13190Date:   Wed Oct 7 21:44:17 2009 +0100
13191
13192    text: Make the :text property not set the :use-markup one
13193
13194    Currently, setting the :text property has the side-effect of
13195    setting the :use-markup property to FALSE. This prevents
13196    constructing a Text actor, or setting its properties, like:
13197
13198      g_object_set (text,
13199                    "use-markup", TRUE,
13200                    "text", some_string,
13201                    NULL);
13202
13203    as the ordering becomes important. Unfortunately, the ordering
13204    of the properties cannot be enforced with ClutterScript or
13205    with language bindings.
13206
13207    The documentation of the clutter_text_set_text() method should
13208    be expanded to properly specify that the set_text() method will
13209    change the :use-markup property to FALSE as a side effect.
13210
13211 clutter/clutter-text.c | 283 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------------------------------------
13212 1 file changed, 144 insertions(+), 139 deletions(-)
13213
13214commit 1f207c00d96e08141f6b998269732d9e65d4cf14
13215Author: Emmanuele Bassi <ebassi@gnome.org>
13216Date:   Wed Oct 7 17:35:11 2009 +0100
13217
13218    docs: Add the "clipping" section to the COGL API reference
13219
13220    All the clip-related API in COGL is missing from the API reference
13221    because the cogl-clipping section is not included inside the main
13222    index file.
13223
13224 doc/reference/cogl/cogl-docs.xml.in  | 1 +
13225 doc/reference/cogl/cogl-sections.txt | 3 ++-
13226 2 files changed, 3 insertions(+), 1 deletion(-)
13227
13228commit 80b3a8d3283fcc8af89bc83b2266ccd894cc50a6
13229Author: Damien Lespiau <damien.lespiau@intel.com>
13230Date:   Wed Oct 7 17:09:41 2009 +0100
13231
13232    [units] Ensure we don't have ponies
13233
13234    The documentation states we should not parse ponies. Even with those
13235    with exclamation marks.
13236
13237    Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13238
13239 tests/conform/test-clutter-units.c | 2 +-
13240 1 file changed, 1 insertion(+), 1 deletion(-)
13241
13242commit 19c68799608910635b70c9befb92c1a6a21c15f3
13243Author: Damien Lespiau <damien.lespiau@intel.com>
13244Date:   Tue Oct 6 00:49:40 2009 +0100
13245
13246    [path] Add GValue transform functions from and to G_TYPE_STRING
13247
13248    Transform functions allow the use of g_value_transform() to cast
13249    GValues. It's very handy to have casts to and from G_TYPE_STRING as it
13250    allows generic serialization and parsing of GTypes.
13251
13252    Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13253
13254 clutter/clutter-path.c | 36 +++++++++++++++++++++++++++++++++++-
13255 1 file changed, 35 insertions(+), 1 deletion(-)
13256
13257commit 8605073edb7a1e830696632a6de5ad694f1af98d
13258Author: Damien Lespiau <damien.lespiau@intel.com>
13259Date:   Tue Oct 6 17:47:34 2009 +0100
13260
13261    [units] Add support for centimeters
13262
13263    The only tricky part of the patch is to remember that 1cm is 10mm.
13264
13265    Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13266
13267 clutter/clutter-units.c                    | 48 ++++++++++++++++++++++++++++++++++++++++++++++--
13268 clutter/clutter-units.h                    |  7 ++++++-
13269 doc/reference/clutter/clutter-sections.txt |  1 +
13270 tests/conform/test-clutter-units.c         | 17 ++++++++++++++---
13271 4 files changed, 67 insertions(+), 6 deletions(-)
13272
13273commit 96859959bd24d99f51d5dea3b5ec7bc4bf7071f3
13274Author: Damien Lespiau <damien.lespiau@intel.com>
13275Date:   Tue Oct 6 12:02:15 2009 +0100
13276
13277    [units] Be more strict in the grammar we are parsing
13278
13279    Current parsing of units has a number of shortcomings:
13280      * a number followed by trailing space (without any unit specified) was
13281        not recognized,
13282      * "5 emeralds" was parsed as 5em,
13283      * the way we parse the digits after the separator makes us lose
13284        precision for no good reason (5.0 is parsed as 5.00010014...f which
13285        makes g_assert_cmpfloat() fail)
13286
13287    Let's define a stricter grammar we can recognize and try to do so. The
13288    description is in EBNF form, removing the optional <> which is a pain
13289    when having to write DocBook, and using '' for the terminal symbols.
13290
13291    Last step, add more ClutterUnits unit test to get a better coverage of
13292    the grammar we want to parse.
13293
13294    Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13295
13296 clutter/clutter-units.c            | 76 ++++++++++++++++++++++++++++++++++++++++++++++++----------------------------
13297 tests/conform/test-clutter-units.c | 22 ++++++++++++++++++++++
13298 2 files changed, 70 insertions(+), 28 deletions(-)
13299
13300commit 4d481e03f3534cb703a276cd430056d3ec27fcb0
13301Author: Emmanuele Bassi <ebassi@gnome.org>
13302Date:   Wed Oct 7 13:00:57 2009 +0100
13303
13304    color: Measure the string just once when parsing
13305
13306    Instead of measuring the color hexadecimal string for each case, just
13307    measure it once and then use a switch() to go to the right case.
13308
13309 clutter/clutter-color.c | 40 ++++++++++++++++++++++------------------
13310 1 file changed, 22 insertions(+), 18 deletions(-)
13311
13312commit c7d50083ec1d1209dd8653bc30ba4f3bec09e976
13313Author: Thomas Wood <thomas.wood@intel.com>
13314Date:   Wed Oct 7 12:27:38 2009 +0100
13315
13316    [color] allow alpha to be omitted when converting to color from string
13317
13318    Parse #rgb and #rrggbb in addition to forms with the alpha channel
13319    specified. This allows conversion of colour strings from documents such as
13320    CSS where the alpha channel is not specified when using '#' notation.
13321
13322    This patch also adds the relevant conformance test.
13323
13324 clutter/clutter-color.c    | 22 ++++++++++++++++++++++
13325 tests/conform/test-color.c | 28 ++++++++++++++++++++++++++++
13326 2 files changed, 50 insertions(+)
13327
13328commit 13ac1fe75bec418f4e37e04540e6d16af55413f5
13329Author: Neil Roberts <neil@linux.intel.com>
13330Date:   Wed Oct 7 11:31:44 2009 +0100
13331
13332    [clutter-id-pool] Also warn if the ID refers to a deleted actor
13333
13334    We should also warn if the glReadPixels happens to generate an ID that
13335    is within the range of the ID array but no longer points to an
13336    existing actor.
13337
13338 clutter/clutter-id-pool.c | 10 +++++-----
13339 1 file changed, 5 insertions(+), 5 deletions(-)
13340
13341commit a4ff4d37a40b60ce7f7029c6fe12181c0e1e89e5
13342Author: Neil Roberts <neil@linux.intel.com>
13343Date:   Wed Oct 7 12:46:43 2009 +0100
13344
13345    [clutter-id-pool] Fix the check for out-of-range IDs
13346
13347    If id == the length of the array then it is also invalid and could
13348    cause a crash.
13349
13350 clutter/clutter-id-pool.c | 2 +-
13351 1 file changed, 1 insertion(+), 1 deletion(-)
13352
13353commit 142f8865181e92fb405ae0d2b2bc65468a9d2262
13354Author: Thomas Wood <thomas.wood@intel.com>
13355Date:   Wed Oct 7 12:15:26 2009 +0100
13356
13357    Revert "[color] allow alpha to omitted when converting from strings"
13358
13359    This reverts commit eb8daac4b0726c1d9925bbbaeed7a8f39007da21.
13360
13361    The original commit was incorrect and pushed accidentally.
13362
13363 clutter/clutter-color.c | 22 ----------------------
13364 1 file changed, 22 deletions(-)
13365
13366commit bdf7499207d3fdba440228832445b71b9f64d300
13367Author: Thomas Wood <thomas.wood@intel.com>
13368Date:   Wed Oct 7 11:40:41 2009 +0100
13369
13370    [color] add a note to the documentation to specify the values of the alpha
13371
13372    The alpha channel is fully opaque at 255 and fully transparent at 0.
13373
13374 clutter/clutter-color.c | 2 ++
13375 1 file changed, 2 insertions(+)
13376
13377commit eb8daac4b0726c1d9925bbbaeed7a8f39007da21
13378Author: Thomas Wood <thomas.wood@intel.com>
13379Date:   Wed Oct 7 11:38:08 2009 +0100
13380
13381    [color] allow alpha to omitted when converting from strings
13382
13383    Parse #rgb and #rrggbb in addition to forms with the alpha channel
13384    specified. This allows conversion of colour strings from documents such as
13385    CSS where the alpha channel is not specified when using '#' notation.
13386
13387 clutter/clutter-color.c | 22 ++++++++++++++++++++++
13388 1 file changed, 22 insertions(+)
13389
13390commit 9e03d9231696160ef7d4d98cf6c1d2f2214c7172
13391Author: Damien Lespiau <damien.lespiau@intel.com>
13392Date:   Tue Oct 6 01:04:50 2009 +0100
13393
13394    [path] MOVE_TO and LINE_TO only use a pair of coordinates
13395
13396    The documentation of ClutterPathNode had a small typo and stated that
13397    they use 2 pairs of coordinates.
13398
13399 clutter/clutter-path.h | 4 ++--
13400 1 file changed, 2 insertions(+), 2 deletions(-)
13401
13402commit dd8e4dcd62979bf8b7c8ad0e8898888a065ba445
13403Author: Robert Bragg <robert@linux.intel.com>
13404Date:   Mon Oct 5 16:46:24 2009 +0100
13405
13406    [debug] Guard the use of gdk_pixbuf for pick debugging by #ifdef USE_GDKPIXBUF
13407
13408    gdk is an optional clutter dependency, so the pick buffer debugging option
13409    needs some guards so we don't break, for example, the OSX builds.  This also
13410    adds a comment for the bit fiddling done on the pick colors used to ensure
13411    the pick colors are more distinguished while debugging.  (we swap the
13412    nibbles of each color component so that pick buffers don't just look black.)
13413
13414 clutter/clutter-main.c | 25 +++++++++++++++++++++++++
13415 1 file changed, 25 insertions(+)
13416
13417commit f7c02642453420cf5866f9759d5f266d8ada40a5
13418Author: Emmanuele Bassi <ebassi@gnome.org>
13419Date:   Mon Oct 5 15:51:28 2009 +0100
13420
13421    [sdl] Update the SDL backend to the new StageWindow API
13422
13423    The SDL backend remains experimental and not meant for public
13424    consumption, but at least it compiles and runs successfully.
13425
13426 clutter/sdl/clutter-backend-sdl.c |   8 ++++----
13427 clutter/sdl/clutter-stage-sdl.c   | 130 +++++++++++++++++++++++++++++++++++++++++++++++++++++-----------------------------------------------------------------------------
13428 2 files changed, 57 insertions(+), 81 deletions(-)
13429
13430commit 3fee43560d8108f9508cbb24ee98228e50b79e5d
13431Author: Emmanuele Bassi <ebassi@gnome.org>
13432Date:   Mon Oct 5 15:53:06 2009 +0100
13433
13434    [eglx] Create a StageWindow, not an Actor
13435
13436    The Backend should create a StageWindow instance, not an Actor.
13437
13438 clutter/eglx/clutter-backend-egl.c | 4 ++--
13439 1 file changed, 2 insertions(+), 2 deletions(-)
13440
13441commit 40222e891bec62e4e7187a3e66bdf7866a60bd38
13442Author: Neil Roberts <neil@linux.intel.com>
13443Date:   Tue Sep 29 12:11:55 2009 +0100
13444
13445    [ClutterGroup] Don't take into account the left edges when calculating the size
13446
13447    ClutterGroup previously calculated the size as the distance from the
13448    left edge of the leftmost child to the right edge of the rightmost
13449    child except if there were any chidren left of the origin then the
13450    left edge would be zero.
13451
13452    However the group is always allocated its size relative to its
13453    origin so if all of the children are to the right of the origin then
13454    the preferred size would not be large enough to reach the rightmost
13455    child.
13456
13457        origin
13458        ┼──────────┐
13459        │Group     │
13460        │ ┌────────┼─┐
13461        │ │Child   │ │
13462        │ │        │ │
13463        └─┼────────┘ │
13464          │          │
13465          └──────────┘
13466           group size
13467          ╟──────────╢
13468
13469    This patch makes it so the size is always just the rightmost edge.
13470
13471        origin
13472        ┼────────────┐
13473        │Group       │
13474        │ ┌──────────┤
13475        │ │Child     │
13476        │ │          │
13477        │ │          │
13478        │ │          │
13479        └─┴──────────┘
13480          group size
13481        ╟────────────╢
13482
13483    Fixes bug:
13484
13485      http://bugzilla.openedhand.com/show_bug.cgi?id=1825
13486
13487 clutter/clutter-group.c | 122 ++++++++++++++++++++++++++------------------------------------------------------------------------------------------------
13488 1 file changed, 26 insertions(+), 96 deletions(-)
13489
13490commit 14e12ae4fd9320eeb970ff8aa7dfcd43dcfd5975
13491Author: Emmanuele Bassi <ebassi@gnome.org>
13492Date:   Mon Oct 5 14:58:08 2009 +0100
13493
13494    [eglx] Update the EGLX Stage to the new StageWindow API
13495
13496    Move the ::realize and ::unrealize implementations over to the
13497    StageWindow instead of using Actor.
13498
13499 clutter/eglx/clutter-stage-egl.c | 120 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------
13500 1 file changed, 60 insertions(+), 60 deletions(-)
13501
13502commit a799f6ccec0ea755c7677c5fe20c1bd52b321c05
13503Author: Damien Lespiau <damien.lespiau@intel.com>
13504Date:   Sat Oct 3 14:08:33 2009 +0100
13505
13506    Fix string parsing when no unit is given
13507
13508    The check should really be on the character pointed by str. Added the
13509    corresponding test case.
13510
13511 clutter/clutter-units.c            | 2 +-
13512 tests/conform/test-clutter-units.c | 4 ++++
13513 2 files changed, 5 insertions(+), 1 deletion(-)
13514
13515commit 4d7b8c9d4290c91ea69d992bad396d067e84b15b
13516Author: Damien Lespiau <damien.lespiau@intel.com>
13517Date:   Sat Oct 3 12:15:13 2009 +0100
13518
13519    clutter_value_get_unit() has not be renamed
13520
13521    Since the Great Rework of ClutterUnits, functions have been using
13522    'units' not 'unit' in their name. clutter_value_get_unit() is a left
13523    over from a dark age, its declaration and documentation have been
13524    updated but not the symbol itself.
13525
13526 clutter/clutter-units.c | 2 +-
13527 1 file changed, 1 insertion(+), 1 deletion(-)
13528
13529commit 72243081b5b0bf0518951f9f5f3ae91a7d4c640f
13530Merge: ad83caaed 111512a2a
13531Author: Emmanuele Bassi <ebassi@gnome.org>
13532Date:   Mon Oct 5 12:37:08 2009 +0100
13533
13534    Merge branch 'stage-window-object'
13535
13536    * stage-window-object:
13537      [x11] Fix Stage user-initiated resize
13538      [x11] Remove a useless forced paint
13539      [stage] Rework the Stage implementation class
13540
13541commit ad83caaed16a36aea0fafd4ed87cc283c30c413b
13542Author: Emmanuele Bassi <ebassi@gnome.org>
13543Date:   Mon Oct 5 12:34:48 2009 +0100
13544
13545    Clarify the IdPool warning
13546
13547    Instead of having an assertion failure with a message of dubious
13548    usefulness, we should probably use a more verbose warning explaining
13549    what is the problem and what might be the cause.
13550
13551 clutter/clutter-id-pool.c | 9 ++++++++-
13552 1 file changed, 8 insertions(+), 1 deletion(-)
13553
13554commit 111512a2a05243a7fc6f999f18805eae9bd6bfce
13555Author: Emmanuele Bassi <ebassi@gnome.org>
13556Date:   Mon Oct 5 12:24:19 2009 +0100
13557
13558    [x11] Fix Stage user-initiated resize
13559
13560    The user-initiated resize is conflicting with the allocated size. This
13561    happens because we change the size of the stage's X Window behind the
13562    back of the size allocation machinery.
13563
13564    Instead, we should change the size of the actor whenever we receive a
13565    ConfigureNotify event to reflect the new size of the actor.
13566
13567 clutter/x11/clutter-event-x11.c | 7 +++----
13568 clutter/x11/clutter-stage-x11.c | 6 +++++-
13569 tests/interactive/test-actors.c | 1 +
13570 3 files changed, 9 insertions(+), 5 deletions(-)
13571
13572commit e3c2ed0009e2ce85e65d5a1724a807faae865494
13573Author: Emmanuele Bassi <ebassi@gnome.org>
13574Date:   Mon Oct 5 12:21:02 2009 +0100
13575
13576    [x11] Remove a useless forced paint
13577
13578    We force the redraw before mapping, in the hope that when a composited
13579    window manager maps the window it will have its contents ready; that is
13580    not going to work: the solution for this problem requires the implementation
13581    of a protocol for compositors, and not a hack.
13582
13583    Moreover, painting before mapping will cause a paint with the wrong
13584    GL viewport size, which is the wrong thing to do on GLX.
13585
13586 clutter/x11/clutter-stage-x11.c | 5 -----
13587 1 file changed, 5 deletions(-)
13588
13589commit 6ddffac93561b5d3aa6226ee54bd8a5e1fcedeb5
13590Author: Emmanuele Bassi <ebassi@gnome.org>
13591Date:   Sun Sep 27 11:38:01 2009 +0100
13592
13593    [docs] Update the "Subclassing Actor" chapter
13594
13595    The chapter on how to subclass ClutterActor inside the API reference for
13596    Clutter is still using ClutterUnit and referencing to concepts that have
13597    been changed since the document was written.
13598
13599 doc/reference/clutter/subclassing-ClutterActor.xml | 169 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------------------------------------
13600 1 file changed, 107 insertions(+), 62 deletions(-)
13601
13602commit ab76d64df02bc03f935e9cdf5a0a29c6ffeace72
13603Author: Robert Bragg <robert@linux.intel.com>
13604Date:   Tue Jul 28 00:40:29 2009 +0100
13605
13606    [cogl-debug] avoid warnings when using COGL_NOTE with unbraced else clauses
13607
13608    When not building a debug build the compiler was warning about empty
13609    else clauses with no braces due to code like:
13610      if (blah)
13611            do_foo();
13612      else
13613            COGL_NOTE (DRAW, "a-wibble");
13614
13615    This simply ensures that even for non debug builds COGL_NOTE will expand to
13616    a single statement.
13617
13618 clutter/cogl/cogl-debug.h | 2 +-
13619 1 file changed, 1 insertion(+), 1 deletion(-)
13620
13621commit 904c495c6d3c59b34148c9a4834e4803b488997b
13622Author: Robert Bragg <robert@linux.intel.com>
13623Date:   Thu Sep 24 17:34:26 2009 +0100
13624
13625    [cogl-vertex-buffer] fix n_components validation for GL's builtin attributes
13626
13627    glVertexPointer expects positions with 2, 3 or 4 components, glColorPointer
13628    expects colors with 3 or 4 components and glNormalPointer expects normals
13629    with three components so when adding vertex buffer atributes with the names
13630    "gl_Vertex", "gl_Color" or "gl_Normal" we assert these constraints and print
13631    an explanation to the developer if not met.
13632
13633    This also fixes the previosly incorrect constraint that gl_Normal attributes
13634    must have n_components == 1; thanks to Cat Sidhe for reporting this:
13635
13636    Bug: http://bugzilla.openedhand.com/show_bug.cgi?id=1819
13637
13638 clutter/cogl/common/cogl-vertex-buffer.c | 19 +++++++++++++++----
13639 1 file changed, 15 insertions(+), 4 deletions(-)
13640
13641commit dae569b468c286ea23aa0e74e910232e025932db
13642Author: Robert Bragg <robert@linux.intel.com>
13643Date:   Thu Sep 24 12:49:17 2009 +0100
13644
13645    [debug] Adds a dump-pick-buffers CLUTTER_DEBUG option
13646
13647    Now if you export CLUTTER_DEBUG=dump-pick-buffers clutter will write out a
13648    png, e.g.  pick-buffer-00000.png, each time _clutter_to_pick() is called.
13649    It's a rather crude way to debug the picking (realtime visualization in a
13650    second stage would probably be nicer) but it we've used this approach
13651    successfully numerous times when debugging Clutter picking issues so it
13652    makes sense to have a debug option for it.
13653
13654 clutter/clutter-debug.h | 35 ++++++++++++++++++-----------------
13655 clutter/clutter-main.c  | 94 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------
13656 2 files changed, 106 insertions(+), 23 deletions(-)
13657
13658commit 27ae9722dedb5bc25415c32326ffc7ba4ef1557d
13659Author: Neil Roberts <neil@linux.intel.com>
13660Date:   Tue Sep 22 17:55:04 2009 +0100
13661
13662    [container] Remove the unused 'object' variable in destroy_child_meta
13663
13664    Since commit b2f958a61 this variable is no longer used so it was
13665    causing compiler warnings.
13666
13667 clutter/clutter-container.c | 1 -
13668 1 file changed, 1 deletion(-)
13669
13670commit 4293920a11d5216095577cdfc46b9e21bb427a12
13671Author: Robert Bragg <robert@linux.intel.com>
13672Date:   Tue Sep 22 11:27:47 2009 +0100
13673
13674    [tests] Remove test-entry.c since we don't have a ClutterEntry any more
13675
13676    Removes an unused interactive unit test for the old ClutterEntry actor we
13677    used to have.
13678
13679 .gitignore                     |  1 -
13680 tests/interactive/test-entry.c | 47 -----------------------------------------------
13681 2 files changed, 48 deletions(-)
13682
13683commit b710ed0eeace5561ccec1b1558ad26abb4af0da3
13684Author: Robert Bragg <robert@linux.intel.com>
13685Date:   Thu Aug 20 11:53:37 2009 +0100
13686
13687    [backend-egl] fix clutter_backend_egl_get_visual_info to not use Xalloc
13688
13689    It looks like the intention was to duplicate an XVisualInfo in such a way
13690    that the pointer could be returned and then later freed using XFree.  But
13691    Xalloc isn't an Xlib counterpart to XFree; Xlib doesn't provide a general
13692    purpose malloc wrapper afik.  By shuffling things about a bit, it was
13693    possible to avoid the need for this hack.
13694
13695 clutter/eglx/clutter-backend-egl.c | 46 +++++++++++++++-------------------------------
13696 1 file changed, 15 insertions(+), 31 deletions(-)
13697
13698commit 6e50e26c86af20597b118f5a71d04f70b173f733
13699Author: Damien Lespiau <damien.lespiau@intel.com>
13700Date:   Mon Sep 21 15:21:21 2009 +0100
13701
13702    Add a few annotations on Cogl primitives functions
13703
13704    By default, float * is considered as an out argument by gobject
13705    introspection which is wrong for quite a few Cogl symbols. Start adding
13706    annotations to fix that for the ones in the "Primitives" gtk-doc
13707    section.
13708
13709 clutter/cogl/cogl-path.h    |  8 ++++----
13710 clutter/cogl/cogl-texture.h | 15 ++++++++-------
13711 2 files changed, 12 insertions(+), 11 deletions(-)
13712
13713commit 1b37cb6cb79dc36279d40ef108576aafeb905412
13714Author: Robert Bragg <robert@linux.intel.com>
13715Date:   Mon Sep 21 18:12:02 2009 +0100
13716
13717    [container] cast actor to gobject before calling g_object_set_qdata
13718
13719    A minor compiler warning fix: in destroy_child_meta we weren't casting the
13720    first argument to g_object_set_qdata to a gobject.
13721
13722 clutter/clutter-container.c | 2 +-
13723 1 file changed, 1 insertion(+), 1 deletion(-)
13724
13725commit b2f958a61807ca36ccc1e7b3edf112b317885528
13726Author: Øyvind Kolås <pippin@linux.intel.com>
13727Date:   Mon Sep 21 15:55:58 2009 +0100
13728
13729    [container] unset the child meta qdata on the child, not the container
13730
13731    In the default implementation of container::destroy_child_meta Set child
13732    meta qdata to NULL on the child and not the container, since the child
13733    is the object that owns the data.
13734
13735 clutter/clutter-container.c | 2 +-
13736 1 file changed, 1 insertion(+), 1 deletion(-)
13737
13738commit d4e46bb893d41f7e9d80d3d272765e7b2779d32b
13739Author: Thomas Wood <thomas.wood@intel.com>
13740Date:   Mon Sep 21 15:40:53 2009 +0100
13741
13742    [container] set the child meta qdata on the child, not the container
13743
13744    Set child meta qdata on the child and not the container, since the child is
13745    the object that owns the data.
13746
13747 clutter/clutter-container.c | 2 +-
13748 1 file changed, 1 insertion(+), 1 deletion(-)
13749
13750commit 1c3d5a0e870d6a8f221577783f4c9d79dbc062c5
13751Author: Neil Roberts <neil@linux.intel.com>
13752Date:   Thu Sep 17 18:29:03 2009 +0100
13753
13754    [cogl] Remove CoglContext->journal_vbo{,_len}
13755
13756    The lifetime of the journal VBO is entirely within the scope of the
13757    cogl_journal_flush function so there is no need to store it globally
13758    in the Cogl context. Instead, upload_vertices_to_vbo just returns the
13759    new VBO. cogl_journal_flush stores this in a local variable and
13760    destroys it before returning.
13761
13762    This also fixes an assertion when using the GLES backend which was
13763    caused by nothing initialising the journal_vbo variable.
13764
13765 clutter/cogl/common/cogl-primitives.c | 20 ++++++++++----------
13766 clutter/cogl/gl/cogl-context.c        |  2 --
13767 clutter/cogl/gl/cogl-context.h        |  2 --
13768 clutter/cogl/gles/cogl-context.h      |  1 -
13769 4 files changed, 10 insertions(+), 15 deletions(-)
13770
13771commit ecfa0c4f92e3a78bdc4257c62a61b47aa41e0d05
13772Author: Emmanuele Bassi <ebassi@linux.intel.com>
13773Date:   Wed Sep 16 17:43:58 2009 +0100
13774
13775    [build] Split out the custom silent rules
13776
13777    The silent rules we use for custom targets should be moved into a
13778    separate Makefile.am that gets included from all the others.
13779
13780 Makefile.am                        |  2 ++
13781 build/autotools/Makefile.am        |  1 +
13782 build/autotools/Makefile.am.silent | 17 +++++++++++++++++
13783 clutter/Makefile.am                | 12 +++++-------
13784 clutter/cogl/Makefile.am           |  8 ++------
13785 clutter/cogl/common/Makefile.am    |  8 ++------
13786 clutter/cogl/gl/Makefile.am        |  2 ++
13787 clutter/cogl/gles/Makefile.am      |  2 ++
13788 clutter/glx/Makefile.am            |  2 ++
13789 clutter/pango/Makefile.am          |  2 ++
13790 clutter/x11/Makefile.am            |  2 ++
13791 tests/conform/Makefile.am          |  8 +++++---
13792 tests/data/Makefile.am             |  1 -
13793 tests/interactive/Makefile.am      | 11 ++++++-----
13794 tests/micro-bench/Makefile.am      |  2 ++
13795 tests/tools/Makefile.am            |  9 ++++++---
13796 16 files changed, 58 insertions(+), 31 deletions(-)
13797
13798commit 94e60c393b6be8b69140da01835a377409f6a77b
13799Author: Robert Bragg <robert@linux.intel.com>
13800Date:   Wed Sep 16 17:12:30 2009 +0100
13801
13802    [test-cogl-multitexture] Print an error if textures can't be loaded
13803
13804    I just wasted a silly amount time trying to bisect an apparently broken
13805    cogl-test-multitexture until I realized it was just silently failing to load
13806    any textures.
13807
13808 tests/interactive/test-cogl-multitexture.c | 15 ++++++++++++---
13809 1 file changed, 12 insertions(+), 3 deletions(-)
13810
13811commit 3b4f46a18a1c631410b324d5f926c64f0e22ae93
13812Author: Emmanuele Bassi <ebassi@linux.intel.com>
13813Date:   Wed Sep 16 12:47:46 2009 +0100
13814
13815    [docs] Fix the comment on version bumps
13816
13817 configure.ac | 5 +++--
13818 1 file changed, 3 insertions(+), 2 deletions(-)
13819
13820commit 35c0da2b3a2558964ba74b9a213262f377aa2650
13821Author: Emmanuele Bassi <ebassi@linux.intel.com>
13822Date:   Wed Sep 16 11:57:45 2009 +0100
13823
13824    [gitignore] Add test-preferred-size
13825
13826 .gitignore | 1 +
13827 1 file changed, 1 insertion(+)
13828
13829commit 9dc012c07d1f6760d8d4cca07f5279e7b316dbd0
13830Author: Emmanuele Bassi <ebassi@linux.intel.com>
13831Date:   Wed Sep 16 11:55:04 2009 +0100
13832
13833    [timeline] Account for clock roll backs between frames
13834
13835    If the system clock rolls back between two frames then we need
13836    to account for the change, to avoid stopping the timeline.
13837
13838    The best option, since a roll back can be any arbitrary amount
13839    of milliseconds, is to skip a frame.
13840
13841    Fixes bug:
13842
13843      http://bugzilla.moblin.org/show_bug.cgi?id=3839
13844
13845 clutter/clutter-timeline.c | 33 +++++++++++++++++++++++----------
13846 1 file changed, 23 insertions(+), 10 deletions(-)
13847
13848commit 0d08f6e0707c1b3274227abc8054529422206e22
13849Author: Robert Bragg <robert@linux.intel.com>
13850Date:   Tue Sep 15 16:27:45 2009 +0100
13851
13852    [cogl-fbo] Disable mipmap filters before calling glCheckFramebufferStatusEXT
13853
13854    The framebuffer_object spec isn't clear in defining whether attaching a
13855    texture as a renderbuffer with mipmap filtering enabled while the mipmaps
13856    have not been uploaded should result in an incomplete framebuffer object.
13857    (different drivers make different decisions)
13858
13859    To avoid an error with drivers that do consider this a problem we explicitly
13860    set non mipmapped filters before calling glCheckFramebufferStatusEXT.  The
13861    filters will later be reset when the texture is actually used for rendering
13862    according to the filters set on the corresponding CoglMaterial.
13863
13864 clutter/cogl/gl/cogl-fbo.c | 12 ++++++++++++
13865 1 file changed, 12 insertions(+)
13866
13867commit 561f5868e876ec17e9a6fa66282b8dcdf3ead6b6
13868Author: Emmanuele Bassi <ebassi@linux.intel.com>
13869Date:   Tue Sep 15 11:09:49 2009 +0100
13870
13871    [tests] Add preferred size conformance test unit
13872
13873    This unit verifies that an Actor class will invoke the get_preferred_*
13874    virtual functions unless the caching is in effect; it also verifies
13875    that the cached values are correctly evicted.
13876
13877 tests/conform/test-actor-size.c   | 136 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
13878 tests/conform/test-conform-main.c |   1 +
13879 2 files changed, 136 insertions(+), 1 deletion(-)
13880
13881commit 092401c01b249cd3ae9e4788ecbcce91ebb80f38
13882Author: Emmanuele Bassi <ebassi@linux.intel.com>
13883Date:   Mon Sep 14 21:45:51 2009 +0100
13884
13885    [tests] Add initial sizing conformance test suite
13886
13887    The size requisition and allocation mechanisms should be thoroughly
13888    tested to avoid unwanted regressions.
13889
13890    For starters, we can test the explicit size setting and the side
13891    effects of calling clutter_actor_set_size().
13892
13893 .gitignore                        |  1 +
13894 tests/conform/Makefile.am         |  1 +
13895 tests/conform/test-actor-size.c   | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
13896 tests/conform/test-conform-main.c |  2 ++
13897 4 files changed, 81 insertions(+)
13898
13899commit abbe2ebf8baa61edeaa2071fa850d000d565a6ce
13900Author: Emmanuele Bassi <ebassi@linux.intel.com>
13901Date:   Mon Sep 14 15:57:31 2009 +0100
13902
13903    [container] Use a 1:1 mapping between child and ChildMeta
13904
13905    Since an actor can only be parented to one container we don't need
13906    the extra complications of maintaining a list of ChildMeta objects
13907    attached to an actor in the default implementation of the Container
13908    interface.
13909
13910 clutter/clutter-container.c | 50 +++++++++-----------------------------------------
13911 1 file changed, 9 insertions(+), 41 deletions(-)
13912
13913commit 6e3afa4ebed9ea4f9347e8dfd6f3cc20d1042dcd
13914Author: Damien Lespiau <damien.lespiau@intel.com>
13915Date:   Thu Sep 10 13:27:02 2009 +0100
13916
13917    [docs] Clutter's model implementation is called ClutterListModel
13918
13919    It was renamed from ClutterModelDefault to ClutterListModel a while
13920    back. Update the reference to this class in ClutterModel documentation.
13921
13922 clutter/clutter-model.c | 4 ++--
13923 1 file changed, 2 insertions(+), 2 deletions(-)
13924
13925commit c5195dda1533e2f42514a880bb5b7d105d4fe541
13926Author: Emmanuele Bassi <ebassi@linux.intel.com>
13927Date:   Wed Sep 9 16:15:54 2009 +0100
13928
13929    [docs] Add fixxref for Cairo symbols
13930
13931    Let gtk-doc resolve the Cairo types and symbols to the installed
13932    Cairo documentation.
13933
13934 configure.ac                      | 2 ++
13935 doc/reference/clutter/Makefile.am | 6 +++---
13936 2 files changed, 5 insertions(+), 3 deletions(-)
13937
13938commit f4e272ee9b6224cddc7eca54172025c5232e37bf
13939Author: Emmanuele Bassi <ebassi@linux.intel.com>
13940Date:   Wed Sep 9 16:01:07 2009 +0100
13941
13942    [docs] Add a Path migration guide
13943
13944    ClutterBehaviourPath has been changed and ClutterBehaviourBspline has
13945    been removed; now we use ClutterPath everywhere we need to describe a
13946    path. This warrants a chapter in the migration guide.
13947
13948 doc/reference/clutter/Makefile.am               |   6 ++++--
13949 doc/reference/clutter/clutter-docs.xml.in       |   1 +
13950 doc/reference/clutter/migrating-ClutterPath.xml | 167 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
13951 3 files changed, 172 insertions(+), 2 deletions(-)
13952
13953commit 3cc56b2b138ff6451ba73e088d1023705455aef7
13954Author: Øyvind Kolås <pippin@linux.intel.com>
13955Date:   Tue Sep 8 13:06:51 2009 +0100
13956
13957    [text] implement get_property for "use-markup"
13958
13959 clutter/clutter-text.c | 4 ++++
13960 1 file changed, 4 insertions(+)
13961
13962commit 6988744db750dc3430a6c8cdd6274bc7e855aaf5
13963Author: Emmanuele Bassi <ebassi@linux.intel.com>
13964Date:   Thu Aug 13 12:34:07 2009 +0100
13965
13966    [stage] Rework the Stage implementation class
13967
13968    Instead of using ClutterActor for the base class of the Stage
13969    implementation we should extend the StageWindow interface with
13970    the required bits (geometry, realization) and use a simple object
13971    class.
13972
13973    This require a wee bit of changes across Backend, Stage and
13974    StageWindow, even though it's mostly re-shuffling.
13975
13976    First of all, StageWindow should get new virtual functions:
13977
13978      * geometry:
13979        - resize()
13980        - get_geometry()
13981
13982      * realization
13983        - realize()
13984        - unrealize()
13985
13986    This covers all the bits that we use from ClutterActor currently
13987    inside the stage implementations.
13988
13989    The ClutterBackend::create_stage() virtual function should create
13990    a StageWindow, and not an Actor (it should always have been; the
13991    fact that it returned an Actor was a leak of the black magic going
13992    on underneath). Since we never guaranteed ABI compatibility for
13993    the Backend class, this is not a problem.
13994
13995    Internally to ClutterStage we can finally drop the shenanigans of
13996    setting/unsetting actor flags on the implementation: if the realization
13997    succeeds, for instance, we set the REALIZED flag on the Stage and
13998    we're done.
13999
14000    As an initial proof of concept, the X11 and GLX stage implementations
14001    have been ported to the New World Order(tm) and show no regressions.
14002
14003 clutter/Makefile.am               |   2 +-
14004 clutter/clutter-backend.c         |  14 +++++++-------
14005 clutter/clutter-backend.h         |   5 +++--
14006 clutter/clutter-private.h         |   2 +-
14007 clutter/clutter-stage-window.c    |  79 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
14008 clutter/clutter-stage-window.h    |  33 +++++++++++++++++++++++++++++++++
14009 clutter/clutter-stage.c           | 105 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----------------------------------------------------
14010 clutter/clutter.h                 |   1 +
14011 clutter/glx/clutter-backend-glx.c |  14 +++++++-------
14012 clutter/glx/clutter-stage-glx.c   |  50 ++++++++++++++++++++++----------------------------
14013 clutter/x11/clutter-stage-x11.c   | 161 ++++++++++++++++++++++++++++++++++++++++++++++++-----------------------------------------------------------------------------------------------------------------
14014 11 files changed, 253 insertions(+), 213 deletions(-)
14015
14016commit 742cc4d95b602440c004d5af09a7fab662f03596
14017Author: Emmanuele Bassi <ebassi@linux.intel.com>
14018Date:   Mon Sep 7 11:44:44 2009 +0100
14019
14020    [docs] Small annotation fixes
14021
14022 clutter/clutter-behaviour.c  |  5 +++--
14023 clutter/cogl/cogl-material.h | 29 ++++++++++++++++++-----------
14024 clutter/cogl/cogl-texture.h  |  7 ++++---
14025 3 files changed, 25 insertions(+), 16 deletions(-)
14026
14027commit c69209a253c7ccbfe5d2c91e6972fa3dc1deb50c
14028Author: Neil Roberts <neil@linux.intel.com>
14029Date:   Mon Sep 7 11:36:05 2009 +0100
14030
14031    [animation] Move the check for the 'signal::' prefix into a separate function
14032
14033    The old code checked whether the property began with 'signal-' and
14034    then checked for 'signal-swapped' and 'signal-after'. This prevented
14035    you from animating a property called for example 'signal-strength'.
14036
14037    The check for the prefix is now in a separate function which also adds
14038    a 'signal-swapped-after' prefix for completeness.
14039
14040    Fixes bug:
14041
14042      http://bugzilla.openedhand.com/show_bug.cgi?id=1798
14043
14044 clutter/clutter-animation.c | 75 +++++++++++++++++++++++++++++++++++++++++----------------------------------
14045 1 file changed, 41 insertions(+), 34 deletions(-)
14046
14047commit 7783635af3c78cf65fcb62ccb03478f1a9556b05
14048Author: Emmanuele Bassi <ebassi@linux.intel.com>
14049Date:   Thu Sep 3 16:51:14 2009 +0100
14050
14051    [docs] Add more collateral documentation
14052
14053    * Add the main Glossary for Clutter terms
14054
14055    * Add the annotation glossary, as generated by gtk-doc
14056
14057    * Add the objects index and tree
14058
14059 doc/reference/clutter/Makefile.am         |   2 ++
14060 doc/reference/clutter/clutter-docs.xml.in |  45 ++++++++++++++++++++++++++++++++++++++++-----
14061 doc/reference/clutter/glossary.xml        | 142 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
14062 3 files changed, 184 insertions(+), 5 deletions(-)
14063
14064commit 763f5a9d014656c09c4684bc69a0e45862882f43
14065Author: Samuel Degrande <samuel.degrande@lifl.fr>
14066Date:   Wed Sep 2 16:27:22 2009 +0100
14067
14068    DOT3_RGB[A] cannot be used in a Blend String
14069
14070    The blend string compiler checks that the syntax of a function name is
14071    [A-Za-z_]*, preventing the use of DOT3_RGB[A].
14072
14073    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14074
14075 clutter/cogl/common/cogl-blend-string.c | 8 +++++++-
14076 1 file changed, 7 insertions(+), 1 deletion(-)
14077
14078commit a5e081dc9c8f39ce66270b77f5beaa6ac53e7a91
14079Author: Emmanuele Bassi <ebassi@linux.intel.com>
14080Date:   Wed Sep 2 15:26:33 2009 +0100
14081
14082    [model] Do not attempt to free empty column names
14083
14084    The column names are optional - ClutterModel will use the GType name
14085    if there is no user-specified column name. Hence, the ::finalize vfunc
14086    should not try to free an empty column names vector.
14087
14088    Fixes bug:
14089
14090      http://bugzilla.openedhand.com/show_bug.cgi?id=1790
14091
14092 clutter/clutter-model.c | 15 +++++++++------
14093 1 file changed, 9 insertions(+), 6 deletions(-)
14094
14095commit 3686107460847d6b9333ff2149b850401590bae8
14096Author: Emmanuele Bassi <ebassi@linux.intel.com>
14097Date:   Mon Aug 31 15:49:39 2009 +0100
14098
14099    [docs] Make sure to document the point-release process
14100
14101    Put the documentation right inside configure.ac, lest I forget.
14102
14103 configure.ac | 25 ++++++++++++++++++-------
14104 1 file changed, 18 insertions(+), 7 deletions(-)
14105
14106commit db6b0a91e0c2aebb245ad5d382769889abbf88dd
14107Author: Neil Roberts <neil@linux.intel.com>
14108Date:   Wed Aug 26 18:28:35 2009 +0100
14109
14110    Take a reference to the material in clutter_texture_set_cogl_material
14111
14112    The material is unref'd in clutter_texture_finalize and the
14113    documentation explicitly states that the function will take a ref so
14114    it really should.
14115
14116 clutter/clutter-texture.c | 2 ++
14117 1 file changed, 2 insertions(+)
14118
14119commit bad7782ab4bc0b5a96d8a97b9b32d5726343b1c2
14120Author: Neil Roberts <neil@linux.intel.com>
14121Date:   Wed Aug 26 18:24:48 2009 +0100
14122
14123    Fix the documentation for clutter_texture_set_cogl_material
14124
14125    The documentation was a copy of the docs for set_cogl_texture so it
14126    was somewhat broken.
14127
14128 clutter/clutter-texture.c | 11 ++++++++---
14129 1 file changed, 8 insertions(+), 3 deletions(-)
14130
14131commit b766a1cc100778c7f74acd9dcc280400eae4c55b
14132Author: Emmanuele Bassi <ebassi@linux.intel.com>
14133Date:   Wed Aug 26 16:50:37 2009 +0100
14134
14135    [tests] Update the script test JSON
14136
14137    The test-script.json UI definition still used old types, like
14138    ClutterLabel and ClutterCloneTexture. It should move to the classes
14139    that have replaced them.
14140
14141 tests/data/test-script.json | 18 +++++++++---------
14142 1 file changed, 9 insertions(+), 9 deletions(-)
14143
14144commit bb17dc1ce5d91f68da53944b5d7565be00b179eb
14145Author: Emmanuele Bassi <ebassi@linux.intel.com>
14146Date:   Wed Aug 26 16:49:45 2009 +0100
14147
14148    [script] Clean up the ad hoc parsing code in Actor
14149
14150    The old parsing code still assumed we had integers for pixels
14151    and floating point values for percentages; this is not the case
14152    anymore.
14153
14154 clutter/clutter-actor.c | 38 ++------------------------------------
14155 1 file changed, 2 insertions(+), 36 deletions(-)
14156
14157commit 2ffebad3d9b29931c29b8cb927580f9166ab39df
14158Author: Emmanuele Bassi <ebassi@linux.intel.com>
14159Date:   Wed Aug 26 16:48:32 2009 +0100
14160
14161    [script] Convert double to float when parsing
14162
14163    The default floating point type for JSON is double precision; this means
14164    that we need to conver to single precision when setting a property with
14165    type G_TYPE_FLOAT.
14166
14167 clutter/clutter-script.c | 13 +++++++++++++
14168 1 file changed, 13 insertions(+)
14169
14170commit 87831b3427be959bea6a649e2718a5bda5927463
14171Author: Emmanuele Bassi <ebassi@linux.intel.com>
14172Date:   Tue Aug 25 17:55:51 2009 +0100
14173
14174    [tests] Add a Group actor unit
14175
14176    We need to test that the depth sorting of ClutterGroup works correctly
14177    in case we wish to change the data structure that stores the children,
14178    and do so without changing the default behaviour.
14179
14180 .gitignore                        |  1 +
14181 tests/conform/Makefile.am         |  1 +
14182 tests/conform/test-conform-main.c |  2 ++
14183 tests/conform/test-group.c        | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
14184 4 files changed, 61 insertions(+)
14185
14186commit f1d58812078e04c7db17c80b51d48bb716b868d1
14187Author: Øyvind Kolås <pippin@linux.intel.com>
14188Date:   Tue Aug 25 17:32:42 2009 +0100
14189
14190    [group] Use floating point in sort_z_order
14191
14192 clutter/clutter-group.c | 8 ++++++--
14193 1 file changed, 6 insertions(+), 2 deletions(-)
14194
14195commit d8d344f52930872a8eabdcc801872246b7ae61d1
14196Author: Emmanuele Bassi <ebassi@linux.intel.com>
14197Date:   Tue Aug 25 12:39:40 2009 +0100
14198
14199    [docs] Add Interval get_type function
14200
14201    The get_type() function for ClutterInterval is missing from the
14202    known GObject types, so gtk-doc doesn't know that it has to
14203    introspect it for hierarchy, properties and signals.
14204
14205 doc/reference/clutter/clutter.types | 1 +
14206 1 file changed, 1 insertion(+)
14207
14208commit 95a6e1c925c7dd24ba97a4625d1da09ff861e5c3
14209Author: Emmanuele Bassi <ebassi@linux.intel.com>
14210Date:   Tue Aug 25 12:18:32 2009 +0100
14211
14212    Fix the warnings for Animation::update_interval()
14213
14214    The bindings for update_interval() were copied from bind().
14215
14216 clutter/clutter-animation.c | 7 ++++---
14217 1 file changed, 4 insertions(+), 3 deletions(-)
14218
14219commit 899f051cd92fb0b5d41948897c7130b86a98dae9
14220Author: Emmanuele Bassi <ebassi@linux.intel.com>
14221Date:   Tue Aug 25 12:16:41 2009 +0100
14222
14223    [animation] Add Animation::update()
14224
14225    Currently, to update a property inside an animation you have to
14226    get the interval for that property and then call the set_final_value()
14227    method.
14228
14229    We can provide a simpler, bind()-like method for the convenience of
14230    the developers that just validates everything and then calls the
14231    Interval.set_final_value().
14232
14233 clutter/clutter-animation.c                | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++
14234 clutter/clutter-animation.h                |  3 +++
14235 doc/reference/clutter/clutter-sections.txt |  1 +
14236 3 files changed, 57 insertions(+)
14237
14238commit 4ca375e8fe395e375826ea795566b8af8029e09f
14239Author: Neil Roberts <neil@linux.intel.com>
14240Date:   Mon Aug 24 12:50:57 2009 +0100
14241
14242    [cogl-texture] Set GL_PACK_ROW_LENGTH when downloading texture data
14243
14244    Otherwise the rowstride passed in from an application is not used
14245    correctly so you can not download to an area with a much larger
14246    rowstride.
14247
14248 clutter/cogl/gl/cogl-texture.c | 14 +++++++++++---
14249 1 file changed, 11 insertions(+), 3 deletions(-)
14250
14251commit 172074fd29cd42bf2790f78aa736f854218906f0
14252Author: Emmanuele Bassi <ebassi@linux.intel.com>
14253Date:   Fri Aug 21 12:05:52 2009 +0100
14254
14255    [glx] Perform more checks before calling glXMakeCurrent
14256
14257    Right now we just check for a NULL stage before calling glXMakeCurrent().
14258
14259    We can, though, get a valid stage without an implementation attached to
14260    it while we are disposing a stage after a CLUTTER_DELETE event, since the
14261    events processing is performed on a vblank-locked basis.
14262
14263 clutter/glx/clutter-backend-glx.c | 17 +++++++++++------
14264 1 file changed, 11 insertions(+), 6 deletions(-)
14265
14266commit 93e1d8e7a35afd0f1c08022bdf0f04154ad08ef1
14267Author: Owen W. Taylor <otaylor@fishsoup.net>
14268Date:   Fri Aug 7 21:16:04 2009 -0400
14269
14270    Add ::queue-relayout signal to ClutterActor for ClutterClone
14271
14272    ClutterClone bases its preferred size on the preferred size of
14273    the source actor, so it needs to invalid its cached preferred
14274    size when the preferred size of the source actor changes.
14275
14276    In order for this to work, we need to have notification when
14277    the size of the source actor changes, so add a ::queue-relayout
14278    signal to ClutterActor.
14279
14280    Then connect to this from ClutterClone and queue a relayout
14281    on the clone when a relayout is queued on the source.
14282
14283    http://bugzilla.openedhand.com/show_bug.cgi?id=1755
14284
14285    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14286
14287 clutter/clutter-actor.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++----------
14288 clutter/clutter-actor.h |  5 ++++-
14289 clutter/clutter-clone.c | 12 ++++++++++++
14290 3 files changed, 62 insertions(+), 11 deletions(-)
14291
14292commit 56daae9d7bc49a29a4e1c4e093928efb747ed675
14293Author: Robert Bragg <robert@linux.intel.com>
14294Date:   Thu Aug 20 12:53:32 2009 +0100
14295
14296    Revert "[cogl] Allow Cogl to create NPOT textures for GLES2"
14297
14298    This reverts commit 3c47a3beb51462ef8af1070b75123660059e97d0.
14299
14300    Of course I remembered just after pushing the patch why we hadn't done
14301    this before :-) If you look in the glsl spec:
14302    http://www.khronos.org/registry/gles/specs/2.0/es_full_spec_2.0.24.pdf
14303    Section 3.7.10 Texture Completeness and Non-Power-Of-Two Textures
14304    you can see GLES 2.0 doesn't support mipmaps for npot textures.
14305
14306    There is possibly some way we could support this in Cogl but at least
14307    it's not as simple as or-ing in the feature flag, sadly.
14308
14309 clutter/cogl/gles/cogl.c | 3 +--
14310 1 file changed, 1 insertion(+), 2 deletions(-)
14311
14312commit 3c47a3beb51462ef8af1070b75123660059e97d0
14313Author: Robert Bragg <robert@linux.intel.com>
14314Date:   Thu Aug 20 12:15:21 2009 +0100
14315
14316    [cogl] Allow Cogl to create NPOT textures for GLES2
14317
14318    The core GLES2 API supports NPOT textures, i.e. there is no extension as for
14319    OpenGL, so we now add COGL_FEATURE_TEXTURE_NPOT to the feature flags in
14320    _cogl_features_init.
14321
14322    Thanks to Gordon Williams for spotting this.
14323
14324 clutter/cogl/gles/cogl.c | 3 ++-
14325 1 file changed, 2 insertions(+), 1 deletion(-)
14326
14327commit a5fe4ae4ec5c5c43aa0898095284447095462e37
14328Author: Robert Bragg <robert@linux.intel.com>
14329Date:   Wed Aug 19 15:38:25 2009 +0100
14330
14331    [cogl] %.c: %.glsl codegen: use BUILT_SOURCES var + fix stringify.sh
14332
14333    Don't let stringify.sh write to the $srcdir + use the BUILT_SOURCES var in
14334    Makefile.am so as to ensure all .c.  and .h files get generated from their
14335    corresponding .glsl files before building other targets.
14336
14337 clutter/cogl/gles/Makefile.am  | 14 +++++++++-----
14338 clutter/cogl/gles/stringify.sh | 40 +++++++++++++++++++---------------------
14339 2 files changed, 28 insertions(+), 26 deletions(-)
14340
14341commit 3761e9cd47950bfade7d3b829b20b245806632a2
14342Author: Jonas Bonn <jonas@southpole.se>
14343Date:   Wed Aug 19 13:14:10 2009 +0000
14344
14345    Check timeline direction when forcing final state
14346
14347    If the timeline is running backwards, the completed signal handler should
14348    set the final state from the interval's initial value.
14349
14350    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14351
14352 clutter/clutter-animation.c | 11 ++++++++++-
14353 1 file changed, 10 insertions(+), 1 deletion(-)
14354
14355commit 373b165b3f1adc556e7ee70f01cff66d4a38cd60
14356Author: Emmanuele Bassi <ebassi@linux.intel.com>
14357Date:   Mon Aug 10 12:45:44 2009 +0200
14358
14359    Use AM_SILENT_RULES if automake >= 1.11 is installed
14360
14361    Fixes bug:
14362
14363      http://bugzilla.openedhand.com/show_bug.cgi?id=1756
14364
14365    Based on a patch by: Javier Jardón <javierjc1982@gmail.com>
14366
14367 clutter/Makefile.am             |  7 +++++--
14368 clutter/cogl/Makefile.am        |  6 ++++--
14369 clutter/cogl/common/Makefile.am |  7 ++++---
14370 configure.ac                    | 18 +++++++++++++++---
14371 4 files changed, 28 insertions(+), 10 deletions(-)
14372
14373commit 6a9130f10fe5ed3c78b541cf0d021857efb57cb4
14374Author: Neil Roberts <neil@linux.intel.com>
14375Date:   Tue Aug 18 18:07:37 2009 +0100
14376
14377    [pango-display-list] Don't premultiply the colour twice
14378
14379    When rendering a glyph run from a texture we were premultiplying the
14380    colour once in display_list_render() and then again in
14381    display_list_render_texture(). This was causing the color to come out
14382    wrong. This fixes bug #1775.
14383
14384    Thanks to Pierre-Luc Beaudoin for reporting.
14385
14386 clutter/pango/cogl-pango-display-list.c | 1 -
14387 1 file changed, 1 deletion(-)
14388
14389commit 9befb055d0dd993d1171bf5652eefdc35567e7f5
14390Author: Robert Bragg <robert@linux.intel.com>
14391Date:   Tue Aug 18 16:13:13 2009 +0100
14392
14393    [cogl-material] Fix some brackets in _layer_flush_gl_sampler_state
14394
14395    The wrong part of an expression was bracketed in the test to determine
14396    when a new texture matrix needed to be loaded which resulted in the
14397    first pass through _cogl_material_layer_flush_gl_sampler_state
14398    not uploading any user matrix.
14399
14400 clutter/cogl/common/cogl-material.c | 8 ++++----
14401 1 file changed, 4 insertions(+), 4 deletions(-)
14402
14403commit 366e0725ce1bb804219b28a29539add1e05f73e8
14404Author: Emmanuele Bassi <ebassi@linux.intel.com>
14405Date:   Tue Aug 18 11:11:29 2009 +0100
14406
14407    [docs] texture_polygon() is called polygon()
14408
14409    Remove the mentions to the old name of cogl_polygon().
14410
14411 clutter/cogl/cogl-types.h | 5 +++--
14412 1 file changed, 3 insertions(+), 2 deletions(-)
14413
14414commit f655b28e669b7aec5b3ace0d8873adeefa11b4de
14415Author: Emmanuele Bassi <ebassi@linux.intel.com>
14416Date:   Mon Aug 17 23:27:22 2009 +0100
14417
14418    [build] Nothing can be prepended to QUIET_* rules
14419
14420    Move the LD_LIBRARY_PATH override after the QUIET_GEN rule and
14421    unbreak the typelib compilation.
14422
14423 clutter/Makefile.am | 3 ++-
14424 1 file changed, 2 insertions(+), 1 deletion(-)
14425
14426commit 8c00d705c0ec009c08950f314ab896b6ff40aa37
14427Author: Jussi Kukkonen <jku@linux.intel.com>
14428Date:   Mon Aug 17 00:00:35 2009 +0300
14429
14430    [text] move_word_backward/forward fixes
14431
14432    clutter_text_move_word_backward/forward() calls did not use the
14433    start argument consistently. Also, clutter_text_move_word_forward()
14434    bound check checked the wrong end.
14435
14436    Fixes #1765
14437
14438    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14439
14440 clutter/clutter-text.c | 12 ++++++------
14441 1 file changed, 6 insertions(+), 6 deletions(-)
14442
14443commit 99437c476136ec6a735270efd8670efcd1f2c77e
14444Author: Neil Roberts <neil@linux.intel.com>
14445Date:   Mon Aug 17 17:43:42 2009 +0100
14446
14447    [text] Don't interpret the unicode value when the control modifier is on
14448
14449    When a letter key is pressed with the control key held down one of
14450    three things will happen :-
14451
14452    a) If the stage is embedded within a GtkClutterEmbed the unicode value
14453       will be filled from gdk_keyval_to_unicode. This will be the same
14454       value as if control was not pressed (so Ctrl+V will be 'v').
14455
14456    b) If the stage is not in a GtkClutterEmbed and Clutter is running on
14457       the X11 backend then it will try to fill in the unicode value from
14458       XLookupString. This *will* take into account the control so the
14459       unicode value will represent a control character (Ctrl+V will be
14460       '\x16').
14461
14462    c) Most other backends will not bother to fill in the unicode
14463       value. Therefore clutter_keysym_to_unicode will be used which also
14464       does not take into account the control key (so Ctrl+V will be 'v').
14465
14466    For cut and paste to work in Nbtk, the control keys need to bubble up
14467    to the parent NbtkEntry container. This works fine for 'b' but not 'a'
14468    and 'c'.
14469
14470    This patch makes ClutterText always allow the event to bubble if the
14471    key is not handled by the binding pool and the control modifier is
14472    down.
14473
14474    Ideally ClutterText would always get a unicode value that takes into
14475    account the modifiers but this is probably best left up to the input
14476    methods.
14477
14478    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14479
14480 clutter/clutter-text.c | 3 ++-
14481 1 file changed, 2 insertions(+), 1 deletion(-)
14482
14483commit 5d7c2e7c4495b3d6f35ed3f4e50857f17b946872
14484Author: Owen W. Taylor <otaylor@fishsoup.net>
14485Date:   Mon Aug 17 13:57:18 2009 -0400
14486
14487    Set LD_LIBRARY_PATH when running g-ir-compiler
14488
14489    g-ir-compiler currently opens the library for the .gir it is compiling;
14490    to make that work we need to set LD_LIBRARY_PATH before running
14491    g-ir-compiler to include .libs.
14492
14493    (I think this may have been working earlier because there was a
14494    hack that substituted .so with .la and tried opening that; that
14495    works for the incorrect libclutter-glx-1.0.so but not for the
14496    correct libclutter-glx-1.0.so.0)
14497
14498    http://bugzilla.openedhand.com/show_bug.cgi?id=1771
14499
14500 clutter/Makefile.am | 1 +
14501 1 file changed, 1 insertion(+)
14502
14503commit 4c1248c5e9b934b23bdabbfc3d2dabdb8bab0656
14504Author: Owen W. Taylor <otaylor@fishsoup.net>
14505Date:   Mon Aug 17 15:41:27 2009 +0100
14506
14507    Full fix for the G-I support in Clutter
14508
14509    Update the sed hack for the shared library to be more robust.
14510
14511    Remove the --shared-library command line argument from g-ir-scanner,
14512    as no distribution will ever ship the .la files. This effectively
14513    reverts commit 68f8a98cfbf70e2b7bfcda7831907633eb08ca50.
14514
14515    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14516
14517 clutter/Makefile.am | 5 ++---
14518 1 file changed, 2 insertions(+), 3 deletions(-)
14519
14520commit 68f8a98cfbf70e2b7bfcda7831907633eb08ca50
14521Author: Götz Waschk <waschk@mandriva.org>
14522Date:   Mon Aug 17 14:21:42 2009 +0100
14523
14524    Specify the shared library for g-ir-compile
14525
14526    Use the --shared-library option to specify the shared object to link
14527    against when compiling the typelib from the GIR data.
14528
14529    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14530
14531 clutter/Makefile.am | 6 +++++-
14532 1 file changed, 5 insertions(+), 1 deletion(-)
14533
14534commit 366e0f9cd7773433ba14cc531119bca3b9879a1e
14535Author: Götz Waschk <waschk@mandriva.org>
14536Date:   Mon Aug 17 14:12:21 2009 +0100
14537
14538    Update Clutter to use G-I 0.6.4
14539
14540    Following bug #1762, the syntax of g-ir-scanner was changed in
14541    gobject-introspection, so Clutter does not build anymore with 0.6.4.
14542
14543    See the bugzilla bug:
14544
14545      http://bugzilla.gnome.org/show_bug.cgi?id=591669
14546
14547    GObject-Introspection now uses a different mechanism to extract the
14548    SONAME when building the gir file and it needs the libtool archive as
14549    option.
14550
14551    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14552
14553 README                   | 2 +-
14554 clutter/Makefile.am      | 2 +-
14555 clutter/cogl/Makefile.am | 2 +-
14556 clutter/json/Makefile.am | 2 +-
14557 configure.ac             | 2 +-
14558 5 files changed, 5 insertions(+), 5 deletions(-)
14559
14560commit 53cb86d94ba258cb917221856501c60738a143f3
14561Author: Emmanuele Bassi <ebassi@linux.intel.com>
14562Date:   Mon Aug 17 10:27:13 2009 +0100
14563
14564    [docs] Update the requirements section
14565
14566 README | 9 +++++++--
14567 1 file changed, 7 insertions(+), 2 deletions(-)
14568
14569commit 90d8f3183193176b796ac533158e3b0c2a4c2e85
14570Author: Emmanuele Bassi <ebassi@linux.intel.com>
14571Date:   Fri Aug 14 15:59:29 2009 +0100
14572
14573    [units] Do not be locale-dependant on string conversion
14574
14575    When dumping a ClutterUnits structure to a string we are using a bare
14576    g_strdup_printf(), which unfortunately is locale dependant. So, for
14577    instance, a type of CLUTTER_UNIT_EM and a value of 42 are stringified
14578    as:
14579
14580            C:      42.00 em
14581            en_GB   42.00 em
14582            it_IT   42,00 em
14583            fr_FR   42,00 em
14584
14585    This would not be a problem -- clutter_units_from_string() allows both
14586    '.' and ',' as fractionary part delimiters. The test suite, on the
14587    other hand, does not know that, and it checks for exact matches with
14588    the C locale.
14589
14590    Calling setlocale(LC_ALL,"C") at the beginning of the conformance test
14591    suite is not a good idea, because it would prevent external testing; and
14592    it's a lame cop out from doing exactly what we have to do -- pick a format
14593    and stick with it.
14594
14595    Like other platforms, languages and frameworks before us, we opt to
14596    be less liberal in what we create; so, we choose to always stringify
14597    ClutterUnits with fractionary parts using '.' as the delimiter.
14598
14599    Fixes bug:
14600
14601      http://bugzilla.openedhand.com/show_bug.cgi?id=1763
14602
14603 clutter/clutter-units.c | 24 ++++++++++++++----------
14604 1 file changed, 14 insertions(+), 10 deletions(-)
14605
14606commit f08b583a312cd87f3263078eecdb19a9328ac79f
14607Author: Emmanuele Bassi <ebassi@linux.intel.com>
14608Date:   Fri Aug 14 15:58:00 2009 +0100
14609
14610    [tests] Abstract GTest and Clutter initialization
14611
14612    The set up process of the conformance test suite is complex enough to
14613    warrant a split up into its own function.
14614
14615 tests/conform/test-conform-main.c | 27 ++++++++++++++++++---------
14616 1 file changed, 18 insertions(+), 9 deletions(-)
14617
14618commit b31e2d59bdfcc3be46f3ec87de4bcabc32747133
14619Author: Emmanuele Bassi <ebassi@linux.intel.com>
14620Date:   Fri Aug 14 13:08:59 2009 +0100
14621
14622    [build] Remove last user of CLUTTER_MAJORMINOR
14623
14624    We should always use CLUTTER_API_VERSION instead.
14625
14626 doc/manual/Makefile.am | 10 +++++-----
14627 1 file changed, 5 insertions(+), 5 deletions(-)
14628
14629commit 5274b4e4c48dbd81c7553ef9889b5897afe932c5
14630Author: Emmanuele Bassi <ebassi@linux.intel.com>
14631Date:   Fri Aug 14 13:08:17 2009 +0100
14632
14633    [build] Clean up the eglnative and fruity Makefile.am
14634
14635    * Do not use CLUTTER_MAJORMINOR
14636
14637    * Use per-target compiler flags and libraries
14638
14639 clutter/eglnative/Makefile.am | 11 +++++------
14640 clutter/fruity/Makefile.am    | 21 ++++++++++-----------
14641 2 files changed, 15 insertions(+), 17 deletions(-)
14642
14643commit f7edc97d8df2f035fa81343126884b0cbfc9bc3a
14644Author: Xu Li <xu.li@intel.com>
14645Date:   Tue Aug 4 22:06:27 2009 +0800
14646
14647    Add new Atom atom_NET_WM_PID to set pid info
14648
14649    Clutter advertises itself on X11 as implementing the _NET_WM_PING protocol,
14650    which is needed to be able to detect frozen applications; this allows us to
14651    stop the destruction of the stage by blocking the CLUTTER_DELETE event and
14652    wait for user feedback without the Window Manager thinking that the app has
14653    gone unresponsive.
14654
14655    In order to implement the _NET_WM_PING protocol properly, though, we need
14656    to add the _NET_WM_PID property on the Stage window, since the EWMH states:
14657
14658      [_NET_WM_PID] MAY be used by the Window Manager to kill windows which
14659      do not respond to the _NET_WM_PING protocol.
14660
14661    Meaning that an unresponsive Clutter application might not be killable by
14662    the window manager.
14663
14664    Fixes bug:
14665
14666      http://bugzilla.openedhand.com/show_bug.cgi?id=1748
14667
14668    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14669
14670 clutter/x11/clutter-backend-x11.c | 22 ++++++++++++----------
14671 clutter/x11/clutter-backend-x11.h |  1 +
14672 clutter/x11/clutter-stage-x11.c   | 25 +++++++++++++++++++++++++
14673 3 files changed, 38 insertions(+), 10 deletions(-)
14674
14675commit 3abf393b87d83211d82b161c0417d80312b8783f
14676Author: Emmanuele Bassi <ebassi@linux.intel.com>
14677Date:   Fri Aug 14 11:29:03 2009 +0100
14678
14679    [build] Clean up cogl-pango Makefile
14680
14681    * Do _not_ use CLUTTER_MAJORMINOR to define the installation path
14682      for the headers; we must use CLUTTER_API_VERSION for that.
14683
14684    * Do not put the C compiler flags in the INCLUDES directive.
14685
14686    Bases on a patch by: Gary Ching-Pang Lin <glin@novell.com>
14687
14688 clutter/pango/Makefile.am | 9 +++------
14689 1 file changed, 3 insertions(+), 6 deletions(-)
14690
14691commit 5c8ae6d2dcdb592a56f33927dcec2369a9147396
14692Author: Emmanuele Bassi <ebassi@linux.intel.com>
14693Date:   Thu Aug 13 18:05:38 2009 +0100
14694
14695    [json] Fix compilation of the internal JSON-GLib
14696
14697    Define the symbols needed to pass the single include policy when
14698    compiling the static object.
14699
14700 clutter/json/Makefile.am | 4 +++-
14701 clutter/json/json-glib.h | 4 ++++
14702 2 files changed, 7 insertions(+), 1 deletion(-)
14703
14704commit 6e1f9ad9b65fedaa18950de712d7f6ab39b809f0
14705Author: Emmanuele Bassi <ebassi@linux.intel.com>
14706Date:   Thu Aug 13 16:15:04 2009 +0100
14707
14708    [docs] Remove the version number from the title
14709
14710    The version number in the title made sense when we were breaking
14711    API with every minor release. Now that we're API stable we can
14712    drop that and make the output in Devhelp and on the website slightly
14713    more good looking.
14714
14715 doc/reference/clutter/clutter-docs.xml.in | 4 ++--
14716 doc/reference/cogl/cogl-docs.xml.in       | 9 +++++++--
14717 2 files changed, 9 insertions(+), 4 deletions(-)
14718
14719commit 8a794a85337c01a21f88a02c84bd519ed511b6c6
14720Author: Emmanuele Bassi <ebassi@linux.intel.com>
14721Date:   Thu Aug 13 16:13:55 2009 +0100
14722
14723    [docs] Fix the examples for animate()
14724
14725    Update the examples to reference to existing easing modes and to
14726    make sure to use floating point values for floating point properties.
14727
14728 clutter/clutter-animation.c | 36 ++++++++++++++++++------------------
14729 1 file changed, 18 insertions(+), 18 deletions(-)
14730
14731commit f25cdf066c023222330119a1fe8ef5204773faa7
14732Author: Emmanuele Bassi <ebassi@linux.intel.com>
14733Date:   Thu Aug 13 12:26:09 2009 +0100
14734
14735    [actor] Allow unsetting width and height separately
14736
14737    It is possible to unset the size of an actor specified with set_width()
14738    and set_height() by using:
14739
14740      clutter_actor_set_size (actor, -1, -1);
14741
14742    Which works by unsetting the :min-*-set and the :natural-*-set properties.
14743
14744    Calling set_width(-1) and set_height(-1) separately, though, doesn't work
14745    thus implicitly breaking the assumption that set_size() is nothing more
14746    than set_width()+set_height(). This was obviously due to the face that
14747    pre-1.0 set_width() and set_height() took an unsigned integer as an
14748    argument.
14749
14750 clutter/clutter-actor.c | 81 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----------------------------
14751 1 file changed, 52 insertions(+), 29 deletions(-)
14752
14753commit d3e06bc1e5654248d86aaa568179c5732839412e
14754Author: Colin Walters <walters@verbum.org>
14755Date:   Thu Aug 13 10:49:39 2009 +0100
14756
14757    Add (allow-none) for clutter_stage_set_key_focus()
14758
14759    The @actor argument can be NULL to unset the key focus.
14760
14761    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14762
14763 clutter/clutter-stage.c | 2 +-
14764 1 file changed, 1 insertion(+), 1 deletion(-)
14765
14766commit 9766fb13005b04669e60befd9e0e3cddf822ac1c
14767Author: Emmanuele Bassi <ebassi@linux.intel.com>
14768Date:   Wed Aug 12 16:02:23 2009 +0100
14769
14770    [script] Fix Actor's ad-hoc parser
14771
14772    ClutterActor parses positional and dimensional properties with a
14773    custom deserializer. We need to:
14774
14775      - handle G_TYPE_INT64, the default integer type for JSON-GLib
14776      - use G_TYPE_FLOAT for properties, since Actor switched to it
14777        for the pixel-based ones
14778
14779    This makes ClutterScript work again.
14780
14781 clutter/clutter-actor.c | 8 ++++----
14782 1 file changed, 4 insertions(+), 4 deletions(-)
14783
14784commit cfbbacb8079e2ad92d5e538195d49cfdf8818144
14785Author: Emmanuele Bassi <ebassi@linux.intel.com>
14786Date:   Wed Aug 12 16:01:25 2009 +0100
14787
14788    [script] Fix the default deserialization
14789
14790    Properties parsed from ClutterScript should now use G_TYPE_INT64
14791    and automatically convert between G_TYPE_INT and G_TYPE_INT64.
14792
14793 clutter/clutter-script.c | 21 +++++++++++++--------
14794 1 file changed, 13 insertions(+), 8 deletions(-)
14795
14796commit 4d522456372c2394046968ce0a4b22f603023d32
14797Author: Emmanuele Bassi <ebassi@linux.intel.com>
14798Date:   Wed Aug 12 16:00:13 2009 +0100
14799
14800    [json] Update the internal copy of JSON-GLib
14801
14802    JSON-GLib switch to 64 bit integers upstream, to avoid the undefined
14803    integer size of the JSON RFC. All integers are automatically promoted
14804    to gint64.
14805
14806 clutter/json/json-array.c  |  4 ++--
14807 clutter/json/json-node.c   | 61 +++++++++++++++++++++++++++++++++++++++++++++++++------------
14808 clutter/json/json-object.c | 41 ++++++++++-------------------------------
14809 clutter/json/json-parser.c | 13 +++++++------
14810 clutter/json/json-types.h  | 16 ++++++++++------
14811 5 files changed, 78 insertions(+), 57 deletions(-)
14812
14813commit 2b70b0d4ed791e8bc25b59eb3b2e9dbeb8201b11
14814Author: Emmanuele Bassi <ebassi@linux.intel.com>
14815Date:   Wed Aug 12 15:57:25 2009 +0100
14816
14817    Include clutter-json.h, not json-types.h
14818
14819    The json-types.h header is found by the mere fact of it being
14820    in the project; if we are compiling against the system JSON-GLib
14821    this could be horribly out of date.
14822
14823    We need to use clutter-json.h, which will include the right
14824    header for us.
14825
14826 clutter/clutter-script-private.h | 2 +-
14827 1 file changed, 1 insertion(+), 1 deletion(-)
14828
14829commit cc6aa6e4d537c5eec3fda85475f78bdf0da2ea10
14830Author: Emmanuele Bassi <ebassi@linux.intel.com>
14831Date:   Wed Aug 12 15:32:18 2009 +0100
14832
14833    Clutter GIR depends on ClutterJson GIR conditionally
14834
14835    If we're building Clutter with a system JSON-GLib we need to skip
14836    the typelib compilation of ClutterJson since we depend on Json-1.0.gir
14837    directly.
14838
14839 clutter/Makefile.am | 3 ++-
14840 1 file changed, 2 insertions(+), 1 deletion(-)
14841
14842commit 6fcf5c1820b29610a05e0f5022d1d6d907716df5
14843Author: Emmanuele Bassi <ebassi@linux.intel.com>
14844Date:   Wed Aug 12 15:31:16 2009 +0100
14845
14846    [json] Include only json-glib.h
14847
14848    JSON-GLib moved to a single include scheme, so we should only include
14849    json-glib.h. If we use the internal copy it doesn't matter, since the
14850    header does the right thing.
14851
14852 clutter/clutter-json.h.in | 4 +---
14853 1 file changed, 1 insertion(+), 3 deletions(-)
14854
14855commit 8c49e227536fabddd2cbf81aa94e1624d30ca312
14856Author: Emmanuele Bassi <ebassi@linux.intel.com>
14857Date:   Wed Aug 12 10:30:11 2009 +0100
14858
14859    Add copyright and license notice
14860
14861    The clutter-script-parser.c does not have a copyright and license
14862    notices; even though the LGPL is a per-project license and not a
14863    per-file license, having those notices in every source file is a
14864    good idea.
14865
14866 clutter/clutter-script-parser.c | 32 ++++++++++++++++++++++++++++++++
14867 1 file changed, 32 insertions(+)
14868
14869commit 13e055a351f83c56b895b131566a6e842d24ed2a
14870Author: zhou jiangwei <dyllan.zhou@samsung.com>
14871Date:   Tue Aug 11 14:18:37 2009 +0100
14872
14873    [eglx] Update the EGLX backend
14874
14875    The EGLX backend needs to be updated to the new ClutterBackendX11
14876    code.
14877
14878    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14879
14880 clutter/eglx/clutter-backend-egl.c | 43 +++++++++++++++++++++++++++++++++++++++++++
14881 clutter/eglx/clutter-backend-egl.h |  1 +
14882 clutter/eglx/clutter-stage-egl.c   |  4 ++--
14883 3 files changed, 46 insertions(+), 2 deletions(-)
14884
14885commit 2ab9bef5873ca9d226ddf31fc65b96fe20fa72d5
14886Author: zhou jiangwei <dyllan.zhou@samsung.com>
14887Date:   Tue Aug 11 14:17:28 2009 +0100
14888
14889    [cogl] Fix the GLES 2.0 backend
14890
14891    Update the GLES 2.0 backend to the new COGL API after the breakage
14892    introduced by the journal.
14893
14894    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14895
14896 clutter/cogl/common/cogl-primitives.c    |  5 +++--
14897 clutter/cogl/gles/cogl-context.h         |  5 ++++-
14898 clutter/cogl/gles/cogl-gles2-wrapper.h   |  5 +++++
14899 clutter/cogl/gles/cogl-primitives.c      | 10 +++++-----
14900 clutter/cogl/gles/cogl-texture-private.h |  3 +++
14901 5 files changed, 20 insertions(+), 8 deletions(-)
14902
14903commit dbfd3f0f444680d85556edc0b96dff68ea22722d
14904Author: Robert Bragg <robert@linux.intel.com>
14905Date:   Tue Aug 11 13:49:12 2009 +0100
14906
14907    [cogl_clear] Also pass the alpha component of the CoglColor to glClearColor
14908
14909    Previously we were passing a constant of 0.0 for the alpha component which
14910    wasn't as flexible.
14911
14912 clutter/cogl/common/cogl.c | 2 +-
14913 1 file changed, 1 insertion(+), 1 deletion(-)
14914
14915commit f0cb337d920c46cb7ca45d80ade69057d0408ff5
14916Author: Emmanuele Bassi <ebassi@linux.intel.com>
14917Date:   Tue Aug 11 13:27:25 2009 +0100
14918
14919    [build] Fix LDADD -> LIBADD usage
14920
14921 clutter/osx/Makefile.am | 2 +-
14922 1 file changed, 1 insertion(+), 1 deletion(-)
14923
14924commit dfc32b60c4b1b0b83fbf70d7e02b58cbc919326a
14925Author: Emmanuele Bassi <ebassi@linux.intel.com>
14926Date:   Tue Aug 11 13:11:34 2009 +0100
14927
14928    [osx] Clean up Makefile.am
14929
14930    The OS X backend Makefile.am was missing a line concatenation, and
14931    so the -xobjective-c directive was always ignored.
14932
14933    Instead of dumping everything into INCLUDES and LDADD we should follow
14934    what the rest of the backends do, and use per-target CFLAGS and LDADD,
14935    and reserve the INCLUDES to -D and -I directives.
14936
14937    Thanks to: Christian Hergert <chris@dronelabs.com>
14938
14939 clutter/osx/Makefile.am | 30 ++++++++++++++----------------
14940 1 file changed, 14 insertions(+), 16 deletions(-)
14941
14942commit d0748b3b9b34bf77ed3b813e3872cac64d6a6c35
14943Merge: d263e7a78 df572d089
14944Author: Emmanuele Bassi <ebassi@linux.intel.com>
14945Date:   Mon Aug 10 17:21:20 2009 +0100
14946
14947    Merge branch 'system-json-glib'
14948
14949    * system-json-glib:
14950      [script] Simplify the parser code
14951      Update JSON-GLib dependency
14952
14953commit d263e7a78b7e98b2b87a51a194b93473344b6b27
14954Author: Emmanuele Bassi <ebassi@linux.intel.com>
14955Date:   Mon Aug 10 17:19:04 2009 +0100
14956
14957    [build] Install JSON headers inside the right directory
14958
14959    Don't install inside the clutter-MAJOR_MINOR/ directory, but use
14960    the API_VERSION (1.0).
14961
14962    Otherwise we'd have the Clutter headers for 1.x inside:
14963
14964            $includedir/clutter-1.0/clutter
14965
14966    And the JSON-related headers inside:
14967
14968            $includedir/clutter-1.<minor>/clutter
14969
14970 clutter/json/Makefile.am | 2 +-
14971 1 file changed, 1 insertion(+), 1 deletion(-)
14972
14973commit 19a53054fde3ccfac365452618e4524e3f3c7efc
14974Author: Emmanuele Bassi <ebassi@linux.intel.com>
14975Date:   Fri Aug 7 15:27:25 2009 +0100
14976
14977    Bump to 1.1.1 after branching 1.0
14978
14979 configure.ac | 2 +-
14980 1 file changed, 1 insertion(+), 1 deletion(-)
14981
14982commit 420ed353b53bd624331bd249d7df98d14714b504
14983Author: Emmanuele Bassi <ebassi@linux.intel.com>
14984Date:   Fri Aug 7 08:18:17 2009 +0100
14985
14986    [x11] Do not ask to destroy an empty Window
14987
14988    The fix for bug 1750 inside commit b190448e made Clutter-GTK spew
14989    BadWindow errors. The reason for that is that we call XDestroyWindow()
14990    without checking if the old Window is None; this happens if we call
14991    clutter_x11_set_stage_foreign() on a new ClutterStage before it has
14992    been realized.
14993
14994    Since Clutter-GTK does not need to realize the Stage it is going to
14995    embed anymore (the only reason for that was to obtain a proper Visual
14996    but now there's ClutterBackendX11 API for that), the set_stage_foreign()
14997    call is effectively setting the StageX11 Window for the first time.
14998
14999 clutter/x11/clutter-stage-x11.c | 20 +++++++++++++++-----
15000 1 file changed, 15 insertions(+), 5 deletions(-)
15001
15002commit 335fb07ab02bc719c04bf2de115a88216f1321f7
15003Author: Emmanuele Bassi <ebassi@linux.intel.com>
15004Date:   Wed Aug 5 17:46:18 2009 +0100
15005
15006    [actor] Add missing return_if_fail()
15007
15008    The queue_relayout() method was missing the argument check.
15009
15010    Thanks to: Neil Patel <njpatel@gmail.com>
15011
15012 clutter/clutter-actor.c | 2 ++
15013 1 file changed, 2 insertions(+)
15014
15015commit 1434d7213487ad42626fcc4b1da180fe98192ef1
15016Author: Neil Roberts <neil@linux.intel.com>
15017Date:   Wed Aug 5 15:51:49 2009 +0100
15018
15019    Small doc fix to clutter_text_get_color
15020
15021    Bug reported by Rob Bradford.
15022
15023 clutter/clutter-text.c | 2 +-
15024 1 file changed, 1 insertion(+), 1 deletion(-)
15025
15026commit b190448ed460ae466cd6d1c7c34e47d4386fe4c4
15027Author: Emmanuele Bassi <ebassi@linux.intel.com>
15028Date:   Tue Aug 4 16:59:15 2009 +0100
15029
15030    [x11] Destroy the Window we own when setting a foreign one
15031
15032    When we replace the stage Window using a foreign one we also need to
15033    destroy the Window we created, if needed, to avoid leaking resources
15034    all around.
15035
15036    Fixes bug:
15037
15038      http://bugzilla.openedhand.com/show_bug.cgi?id=1750
15039
15040 clutter/x11/clutter-stage-x11.c | 6 ++++++
15041 1 file changed, 6 insertions(+)
15042
15043commit 7963254c23f42a43b64ca3f2401499b456d677ce
15044Author: Emmanuele Bassi <ebassi@linux.intel.com>
15045Date:   Tue Aug 4 11:39:09 2009 +0100
15046
15047    [docs] Close a tag
15048
15049 doc/reference/clutter/building-clutter.xml | 6 ++++--
15050 1 file changed, 4 insertions(+), 2 deletions(-)
15051
15052commit 79288b46ed60efe4cf3f970ef7f1cce17685cd84
15053Author: Emmanuele Bassi <ebassi@linux.intel.com>
15054Date:   Tue Aug 4 11:38:48 2009 +0100
15055
15056    [docs] Fix a missing parameter
15057
15058 clutter/cogl/cogl-vertex-buffer.h | 2 +-
15059 1 file changed, 1 insertion(+), 1 deletion(-)
15060
15061commit 9cda8d130f7097d8ca43ffb0e50206ab72d1892d
15062Author: Emmanuele Bassi <ebassi@linux.intel.com>
15063Date:   Tue Aug 4 11:11:59 2009 +0100
15064
15065    [actor] Be more explicit when warning about invariants
15066
15067    The "catch all" warning for a the mapped invariant violation is too
15068    generic: it doesn't tell you why the invariant was broken in case
15069    we are trying to map an unparented actor - e.g. through a Clone.
15070
15071 clutter/clutter-actor.c | 10 ++++++++--
15072 1 file changed, 8 insertions(+), 2 deletions(-)
15073
15074commit f8a964b422c195219c59a3b21d9bb3125ce215dd
15075Author: Emmanuele Bassi <ebassi@linux.intel.com>
15076Date:   Tue Aug 4 11:10:55 2009 +0100
15077
15078    [cogl] Expose cogl_is_vertex_buffer()
15079
15080    The function is public and available in the shared object, but
15081    it's not present in the header, so this is not an API/ABI change.
15082
15083 clutter/cogl/cogl-vertex-buffer.h    | 14 ++++++++++++++
15084 doc/reference/cogl/cogl-sections.txt |  1 +
15085 2 files changed, 15 insertions(+)
15086
15087commit c9f57452e60c89c0b046def2f1787773545244df
15088Author: Robert Bragg <robert@linux.intel.com>
15089Date:   Mon Aug 3 15:03:19 2009 +0100
15090
15091    [build] remove reference to light1.png in tests/interactive/Makefile.am
15092
15093    This file doesn't exist in the repo and isn't referenced by any unit tests.
15094
15095 tests/interactive/Makefile.am | 4 +---
15096 1 file changed, 1 insertion(+), 3 deletions(-)
15097
15098commit 71c4fa0f73ec9a101a4dcb07a0d782e075185d4b
15099Author: Robert Bragg <robert@linux.intel.com>
15100Date:   Mon Aug 3 14:53:46 2009 +0100
15101
15102    [build] dist tests/interactive/wrapper.sh
15103
15104    in tests/interactive/Makefile.am add wrapper.sh to EXTRA_DIST otherwise
15105    interactive unit tests wont be runnable when building from distributed
15106    tarballs.
15107
15108 tests/interactive/Makefile.am | 3 +++
15109 1 file changed, 3 insertions(+)
15110
15111commit c9c87543e8f827ee4c3510cd0025e8653d3309b1
15112Author: Damien Lespiau <damien.lespiau@intel.com>
15113Date:   Mon Aug 3 14:11:33 2009 +0100
15114
15115    [debug] CLUTTER_{NOTE,MARK,DBG,GLERR,TIMESTAMP} should always be statements
15116
15117    In case someone tries to do:
15118            if (foo)
15119                    CLUTTER_NOTE(DOMAIN, "%s", blah);
15120
15121    CLUTTER_NOTE () should always be a statement
15122
15123 clutter/clutter-debug.h | 10 +++++-----
15124 1 file changed, 5 insertions(+), 5 deletions(-)
15125
15126commit cd35f3b384b645d171de49eee555363d4b2acc94
15127Author: Damien Lespiau <damien.lespiau@intel.com>
15128Date:   Mon Aug 3 13:58:52 2009 +0100
15129
15130    [debug] Fix __GNUC__ typo
15131
15132    The right gcc define is __GNUC__ not __GNUC_. This typo had the side
15133    effect that we were using the non gcc specific debug macros leading to
15134    a less optmised CLUTTER_NOTE () than one could have dreamed of.
15135
15136 clutter/clutter-debug.h | 2 +-
15137 1 file changed, 1 insertion(+), 1 deletion(-)
15138
15139commit 94b35a4a5ee4fa86d837b2deb06fe849a2a68977
15140Author: Damien Lespiau <damien.lespiau@intel.com>
15141Date:   Mon Aug 3 13:56:32 2009 +0100
15142
15143    [build] GCC_FLAGS is no more, MAINTAINER_CFLAGS is the One.
15144
15145    CC_FLAGS was a left over from the 0.8.x age. Killed it and use the
15146    newer MAINTAINER_CFLAGS variable instead.
15147
15148 clutter/Makefile.am           | 2 +-
15149 clutter/eglnative/Makefile.am | 2 +-
15150 clutter/eglx/Makefile.am      | 2 +-
15151 clutter/fruity/Makefile.am    | 2 +-
15152 clutter/glx/Makefile.am       | 3 +--
15153 clutter/json/Makefile.am      | 2 ++
15154 clutter/osx/Makefile.am       | 2 +-
15155 clutter/sdl/Makefile.am       | 2 +-
15156 clutter/win32/Makefile.am     | 2 +-
15157 clutter/x11/Makefile.am       | 3 +--
15158 10 files changed, 11 insertions(+), 11 deletions(-)
15159
15160commit 4ee49eded0561ad987b50e1b04e15a685c1c06e2
15161Author: Damien Lespiau <damien.lespiau@intel.com>
15162Date:   Mon Aug 3 13:58:21 2009 +0100
15163
15164    [gitignore] Ignore new test-color-hls-roundtrip test
15165
15166 tests/.gitignore | 1 +
15167 1 file changed, 1 insertion(+)
15168
15169commit b2ab2b953548bb9af41789e2465dfa9a588c9b2d
15170Author: Emmanuele Bassi <ebassi@linux.intel.com>
15171Date:   Sun Aug 2 18:34:17 2009 +0100
15172
15173    [actor] Use the right vertex
15174
15175    The vertex that should be used by the apply_relative_transform
15176    is the one passed in as const, and the result should be placed
15177    inside the non-const ClutterVertext. Currently, we are using
15178    the latter, and thus the function is completely useless.
15179
15180 clutter/clutter-actor.c | 6 +++---
15181 1 file changed, 3 insertions(+), 3 deletions(-)
15182
15183commit ae2a861a0b042e36393e5eb76ecb17759a933892
15184Author: Emmanuele Bassi <ebassi@linux.intel.com>
15185Date:   Fri Jul 31 10:29:33 2009 +0100
15186
15187    [x11] Force a redraw before mapping the stage
15188
15189    Does as it says on the tin: run a paint cycle before calling
15190    XMapWindow().
15191
15192 clutter/x11/clutter-stage-x11.c | 9 ++++++---
15193 1 file changed, 6 insertions(+), 3 deletions(-)
15194
15195commit abdcf4debbedd9f924da4db9403ecbc9a030cb20
15196Author: Joshua Lock <josh@linux.intel.com>
15197Date:   Fri Jul 31 10:16:56 2009 +0100
15198
15199    [docs] Update building instructions for OS X
15200
15201    Recommend OS X users install the dependencies using MacPorts and build
15202    Clutter themselves.
15203
15204    Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
15205
15206 doc/reference/clutter/building-clutter.xml | 41 +++++++++++++++++++++++------------------
15207 1 file changed, 23 insertions(+), 18 deletions(-)
15208
15209commit b3842a6b62979d264b7d7057e4125602e644ccad
15210Author: Neil Roberts <neil@linux.intel.com>
15211Date:   Wed Jul 29 19:06:36 2009 +0100
15212
15213    [mingw] Update the README
15214
15215    The README has been updated to say that you can use the script under
15216    MSYS and also to contain a pointer to OAH. It also contains the
15217    updated contents of a blog post¹ about building with MSYS.
15218
15219    1. http://www.busydoingnothing.co.uk/blog/2008/07/13#ClutterWin32
15220
15221 build/mingw/README | 133 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------
15222 1 file changed, 127 insertions(+), 6 deletions(-)
15223
15224commit 8ad446f3e9903d2339536db4febef1cbc77db643
15225Author: Neil Roberts <neil@linux.intel.com>
15226Date:   Wed Jul 29 18:13:19 2009 +0100
15227
15228    [mingw-cross-compile.sh] Fix to use git rather than svn
15229
15230    The script includes a part to automatically checkout the Clutter
15231    source and build it but it was using the old svn repo instead of git.
15232
15233 build/mingw/mingw-cross-compile.sh | 6 +++---
15234 1 file changed, 3 insertions(+), 3 deletions(-)
15235
15236commit d796d3c88c3d3044d1c1bf54c320504f4e5886eb
15237Author: Neil Roberts <neil@linux.intel.com>
15238Date:   Wed Jul 29 17:59:54 2009 +0100
15239
15240    [mingw-cross-compile.sh] Add a note about MSYS in the comment
15241
15242    The comment previously implied that you could only use the script to
15243    cross compile but it works just as well under MSYS.
15244
15245 build/mingw/mingw-cross-compile.sh | 5 +++--
15246 1 file changed, 3 insertions(+), 2 deletions(-)
15247
15248commit 1e14d3041dc2f68d18dcd3e03d34e8d0fa7a05f4
15249Author: Neil Roberts <neil@linux.intel.com>
15250Date:   Wed Jul 29 17:58:02 2009 +0100
15251
15252    [mingw-cross-compile.sh] Update version numbers of all the dependencies
15253
15254    This updates the URLs for the binary dependencies to use the latest
15255    versions.
15256
15257 build/mingw/mingw-cross-compile.sh | 23 +++++++++++++----------
15258 1 file changed, 13 insertions(+), 10 deletions(-)
15259
15260commit a3c323c52c42785f93641e3603a5426bbb371876
15261Author: Emmanuele Bassi <ebassi@linux.intel.com>
15262Date:   Wed Jul 29 17:22:18 2009 +0100
15263
15264    [docs] Remove mentions of Clutter-Cairo
15265
15266    The mingw README file still mentions Clutter-Cairo as a known issue.
15267
15268 build/mingw/README | 8 ++------
15269 1 file changed, 2 insertions(+), 6 deletions(-)
15270
15271commit 0ec6793738085308206e028d1136cb4cd4274f11
15272Author: Emmanuele Bassi <ebassi@linux.intel.com>
15273Date:   Wed Jul 29 17:21:13 2009 +0100
15274
15275    [mingw/win32] Remove clutter-cairo
15276
15277    The Clutter-Cairo library has been removed, so there's no point
15278    in checking it out -- from Subversion, even.
15279
15280 build/mingw/mingw-cross-compile.sh | 23 -----------------------
15281 1 file changed, 23 deletions(-)
15282
15283commit fba1045bcb46da4ed04bd789b7650e985915243b
15284Author: Emmanuele Bassi <ebassi@linux.intel.com>
15285Date:   Tue Jul 28 18:39:24 2009 +0100
15286
15287    Post-release bump to 1.0.1
15288
15289 configure.ac | 2 +-
15290 1 file changed, 1 insertion(+), 1 deletion(-)
15291
15292commit df572d089c0811ecbc5e41d1c68d39fae47040e9
15293Author: Emmanuele Bassi <ebassi@linux.intel.com>
15294Date:   Mon Jun 29 16:33:36 2009 +0100
15295
15296    [script] Simplify the parser code
15297
15298    JSON-GLib provides simple accessors for basic types so that we
15299    can avoid getting the JsonNode out of a complex type. This makes
15300    the code simpler to understand.
15301
15302 clutter/clutter-script.c | 39 ++++++++++-----------------------------
15303 1 file changed, 10 insertions(+), 29 deletions(-)
15304
15305commit 354fa437cdc4b67ca6c2452756a261222109b289
15306Author: Emmanuele Bassi <ebassi@linux.intel.com>
15307Date:   Thu Jun 25 18:56:52 2009 +0100
15308
15309    Update JSON-GLib dependency
15310
15311    Currently, Clutter depends on the internal copy of JSON-GLib for
15312    the ClutterScript parser. This is done to allow building Clutter
15313    on platforms that do not have the library installed on the system.
15314
15315    Just like we use the internal PNG/JPEG loader as a fallback in
15316    case we don't have GdkPixbuf or CoreGraphics available, we should
15317    use the internal copy of JSON-GLib only in case the system copy
15318    is not present.
15319
15320    The change is simply to move the default for the --with-json
15321    configure switch from "internal" to "check".
15322
15323    In order to allow stricter compliance, a third setting should
15324    be present: "system", which fails if the system copy is not
15325    available.
15326
15327    We should also change the introspection generation to avoid
15328    breaking in case we require the installed Json-1.0.gir instead
15329    of the generated ClutterJson.gir
15330
15331 clutter/Makefile.am |  5 ++++-
15332 configure.ac        | 44 +++++++++++++++++++++++++++++++++++---------
15333 2 files changed, 39 insertions(+), 10 deletions(-)
15334