1 commit ab6184298083541d37356f1f5656380d0cda047c
2 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3 Date: Tue Mar 2 18:03:23 2010 +0000
7 configure.ac | 6 +++---
8 1 file changed, 3 insertions(+), 3 deletions(-)
10 commit 3c9a24f4a78cd676e635ad32df639b57e65e3be7
11 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12 Date: Tue Mar 2 18:03:13 2010 +0000
16 NEWS | 42 ++++++++++++++++++++++++++++++++++++++++++
17 1 file changed, 42 insertions(+)
19 commit 9e4c008117da6b36237608bd896fb164577ef314
20 Author: Emmanuele Bassi <ebassi@linux.intel.com>
21 Date: Tue Mar 2 19:17:28 2010 +0000
23 build: Include test-script-model.json
25 The Model conformance test for ClutterScript parsing requires the file
26 to be inside the dist.
28 tests/data/Makefile.am | 1 +
29 1 file changed, 1 insertion(+)
31 commit 2d51432e52745d9484cf2d54567c2f95670ea5ae
32 Author: Emmanuele Bassi <ebassi@linux.intel.com>
33 Date: Tue Mar 2 19:29:22 2010 +0000
35 build: Add test-animator-3.json to EXTRA_DIST
37 tests/data/Makefile.am | 1 +
38 1 file changed, 1 insertion(+)
40 commit 2f68949962d964e38a640581e232c4b673ce3023
41 Author: Emmanuele Bassi <ebassi@linux.intel.com>
42 Date: Tue Mar 2 19:09:20 2010 +0000
44 conformance: Use g_assert_no_error() if available
46 GLib 2.20 has a nice g_assert() wrapper which will print out the GError
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(+)
54 commit 048fcea988446af1ce18356eb1718f85088e73c8
55 Author: Neil Roberts <neil@linux.intel.com>
56 Date: Tue Mar 2 18:30:31 2010 +0000
58 clutter-actor: Initialize with the identity matrix in get_transform
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.
68 clutter/clutter-actor.c | 2 ++
69 1 file changed, 2 insertions(+)
71 commit e550755f3dc13f11a9d956bb9b52294ea33c8da6
72 Author: Emmanuele Bassi <ebassi@linux.intel.com>
73 Date: Tue Mar 2 17:47:13 2010 +0000
75 text-field: Cast GString->len to integer before printing
77 The compiler will warn on 64bit architectures when using %d for
78 printing a gsize field.
80 http://bugzilla.openedhand.com/show_bug.cgi?id=2019
82 tests/interactive/test-text-field.c | 5 ++++-
83 1 file changed, 4 insertions(+), 1 deletion(-)
85 commit 38a24144980bd0c6d717f39eb5d215d3abc30ef5
86 Author: Robert Bragg <robert@linux.intel.com>
87 Date: Tue Mar 2 14:04:54 2010 +0000
89 glx tfp: make clutter_glx_texture_pixmap_update_area cheap
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.
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.
98 clutter/glx/clutter-glx-texture-pixmap.c | 186 ++++++++++++++----------------
99 1 file changed, 89 insertions(+), 97 deletions(-)
101 commit c0d5af5de5bcc504abeb81a7f7a1ec0f696b574d
102 Author: Robert Bragg <robert@linux.intel.com>
103 Date: Mon Nov 30 17:47:55 2009 +0000
105 Adds initial clipped redraw support to Clutter
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
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.
120 » If GLX_MESA_copy_sub_buffer isn't available then the GLX backend
121 ignores any clip rectangles.
123 » queuing multiple clipped redraws will result in the bounding box of
124 each clip rectangle being used.
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.
130 » Note: no empirical data was used to come up with this threshold so
131 we may need to tune this.
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.
141 Technically this is a semantic break, but it's assumed that no one
142 is currently doing this.
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:
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
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)
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
170 » Our heuristics for promoting clipped redraws into full redraws to
171 avoid blocking the GPU while we wait for the vsync need improving:
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.
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(-)
194 commit 09d8460a5c3f905573378172ed553fd57d49913e
195 Author: Øyvind Kolås <pippin@linux.intel.com>
196 Date: Tue Mar 2 17:03:03 2010 +0000
198 animator: s/clutter_animator_run/clutter_animator_start/
200 This is consistent with choice of words in clutter_timeline_start and
201 makes the API less surprising.
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(-)
209 commit 9d1ea81dc51464e86d7a4eee27874136e9e34cad
210 Author: Robert Bragg <robert@linux.intel.com>
211 Date: Tue Mar 2 02:07:40 2010 +0000
213 cogl debug: Adds missing guards around debug cogl_args[]
215 commit 511e5ceb516dc accidentally removed the #ifdef COGL_ENABLE_DEBUG
216 guards around the "cogl-debug" and "cogl-no-debug" cogl_args[] which
219 clutter/cogl/cogl/cogl-debug.c | 2 ++
220 1 file changed, 2 insertions(+)
222 commit aba6c5acc7f1cb15f92666d1681a95b5a805efaf
223 Author: Emmanuele Bassi <ebassi@linux.intel.com>
224 Date: Tue Mar 2 15:08:01 2010 +0000
226 flow-layout: Provide a preferred size
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.
232 http://bugzilla.openedhand.com/show_bug.cgi?id=2013
234 clutter/clutter-flow-layout.c | 92 ++++++++++++++++++++++++++--------
235 tests/interactive/test-flow-layout.c | 20 +++++---
236 2 files changed, 82 insertions(+), 30 deletions(-)
238 commit e3fba5f2e80a4c72cc4ef0c193a0b6569e1d8cbf
239 Author: Emmanuele Bassi <ebassi@linux.intel.com>
240 Date: Tue Mar 2 13:32:46 2010 +0000
242 build: Require libtool >= 2.2.6
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.
248 configure.ac | 6 ++++--
249 1 file changed, 4 insertions(+), 2 deletions(-)
251 commit 9a55ddc7c36185b31120b5c5275dac60f5926d8d
252 Author: Øyvind Kolås <pippin@linux.intel.com>
253 Date: Tue Mar 2 12:38:51 2010 +0000
255 animator: restore accidentally removed break
257 In 505e5966 a break statement was removed by accident, causing the
258 animator to enter infinite loops if no initial key is present.
260 clutter/clutter-animator.c | 2 ++
261 1 file changed, 2 insertions(+)
263 commit 3a84af0106522e46d930fc81013c86465357dc89
264 Merge: 0baeabc a2573ad
265 Author: Emmanuele Bassi <ebassi@linux.intel.com>
266 Date: Tue Mar 2 12:25:45 2010 +0000
268 Merge branch 'eglnative-update'
271 eglnative: Add CLUTTER_FB_DEVICE
272 eglnative: Update implementation
274 commit a2573ad2ad39931d2a817d4585d87b70c3f86526
275 Author: Emmanuele Bassi <ebassi@linux.intel.com>
276 Date: Mon Mar 1 11:38:41 2010 +0000
278 eglnative: Add CLUTTER_FB_DEVICE
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
286 http://bugzilla.openedhand.com/show_bug.cgi?id=1997
288 clutter/eglnative/clutter-backend-egl.c | 59 ++++++++++++++++++++++++++++---
289 clutter/eglnative/clutter-backend-egl.h | 3 ++
290 2 files changed, 57 insertions(+), 5 deletions(-)
292 commit b4e9f40394fb2e4d63bccc9f9d932a5da87cc2a2
293 Author: Emmanuele Bassi <ebassi@linux.intel.com>
294 Date: Sat Feb 27 09:42:42 2010 +0000
296 eglnative: Update implementation
298 Update the EGL native framebuffer backend to be 1.2-ready:
300 » create the EGL context and the surface inside the create_context()
301 implementation so that a context is always available
303 » simplify the StageWindow implementation
307 http://bugzilla.openedhand.com/show_bug.cgi?id=1997
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(-)
316 commit 0baeabc2aa1a4b2a1908b7acd15f947cb8b1eb4d
317 Author: Owen W. Taylor <otaylor@fishsoup.net>
318 Date: Mon Mar 1 13:54:03 2010 -0500
320 Fall back in _cogl_texture_2d_new_from_bitmap()
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.
327 http://bugzilla.openedhand.com/show_bug.cgi?id=2014
329 Signed-off-by: Neil Roberts <neil@linux.intel.com>
331 clutter/cogl/cogl/cogl-texture-2d.c | 3 +++
332 1 file changed, 3 insertions(+)
334 commit 74a27bbb1c0ae12ba937d215323d5a716781cb1b
335 Author: Emmanuele Bassi <ebassi@linux.intel.com>
336 Date: Tue Mar 2 09:53:55 2010 +0000
338 docs: Documentation fixes
340 Let's see if we can get a 100% coverage for Clutter too.
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(-)
362 commit c0a553163b5e82cb70e956e802d7f9b61bb13948
363 Author: Neil Roberts <neil@linux.intel.com>
364 Date: Mon Mar 1 18:08:41 2010 +0000
366 cogl: Support any format in cogl_read_pixels
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.
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.
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.
390 http://bugzilla.openedhand.com/show_bug.cgi?id=1959
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(-)
409 commit 505e5966e4ee649b7528cdf0410a4e52d59a25ec
410 Author: Øyvind Kolås <pippin@linux.intel.com>
411 Date: Mon Mar 1 18:35:01 2010 +0000
413 Do not overwrite the initial key, making ease-in work as expected.
415 Fixes bug #2008, where a property with ease-in would jump instead of
416 start at the properties initial value.
418 clutter/clutter-animator.c | 9 ---------
419 1 file changed, 9 deletions(-)
421 commit 7d0ad7ac1b8f6b8a92d0c97180d2885a3a18bcdd
422 Author: Bastian Winkler <buz@netbuz.org>
423 Date: Mon Mar 1 17:00:41 2010 +0100
425 animator: Remove redundant declaration in header file
427 clutter_animator_property_set_interpolation was declared twice in
430 http://bugzilla.openedhand.com/show_bug.cgi?id=2012
432 clutter/clutter-animator.h | 5 -----
433 1 file changed, 5 deletions(-)
435 commit 53eecb8469855d17e863c2113a58f0b6e9c26729
436 Author: Emmanuele Bassi <ebassi@linux.intel.com>
437 Date: Mon Mar 1 17:47:52 2010 +0000
439 docs: Add Animator.compute_value()
441 The clutter_animator_compute_value() has been added to the API, but it
442 is missing from the API reference.
444 doc/reference/clutter/clutter-sections.txt | 1 +
445 1 file changed, 1 insertion(+)
447 commit 1d9ddad9a3ee79d32091b12197bd18e0b283da22
448 Author: Emmanuele Bassi <ebassi@linux.intel.com>
449 Date: Mon Mar 1 17:45:00 2010 +0000
451 docs: Fix syntax error in Model's documentation
453 A missing opening quote sign is breaking gtk-doc for ClutterModel.
455 clutter/clutter-model.c | 2 +-
456 1 file changed, 1 insertion(+), 1 deletion(-)
458 commit 1777a69f2f036e2ead5986a5c91f18480a14e4fd
459 Merge: 8146d8d 7ffb62e
460 Author: Emmanuele Bassi <ebassi@linux.intel.com>
461 Date: Mon Mar 1 15:37:12 2010 +0000
463 Merge branch 'stage-min-size-rework'
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
470 commit 8146d8d08deafd6cf86238a4a8c2fa6149e5c691
471 Author: Robert Bragg <robert@linux.intel.com>
472 Date: Fri Feb 26 09:44:29 2010 +0000
474 profile: avoid segfault generating reports with no stats
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.
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.
484 clutter/clutter-profile.c | 18 +++++++++---------
485 1 file changed, 9 insertions(+), 9 deletions(-)
487 commit b9a91594f4b37388222b587eaea7618ea8c78381
488 Author: Robert Bragg <robert@linux.intel.com>
489 Date: Fri Feb 26 09:48:43 2010 +0000
491 build: Fixes out of tree builds
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.
496 clutter/Makefile.am | 3 ++-
497 1 file changed, 2 insertions(+), 1 deletion(-)
499 commit 79acb088e7f6916fb77a6341c22f9022c0f50208
500 Author: Emmanuele Bassi <ebassi@linux.intel.com>
501 Date: Mon Mar 1 12:56:10 2010 +0000
503 Remove mentions of the FSF address
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.
510 Not that URIs cannot possibly change, but at least it's easier to
511 set up a redirection at the same place.
513 As a side note: this commit closes the oldes bug in Clutter's bug
516 http://bugzilla.openedhand.com/show_bug.cgi?id=521
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(-)
706 commit 23867875a14ab6d7288d6a67c67b20a1f136be94
707 Author: Emmanuele Bassi <ebassi@linux.intel.com>
708 Date: Mon Mar 1 11:12:16 2010 +0000
710 build: Remove unused checks on platform functions
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.
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(-)
722 commit ce6a24eb2b5eaba4b60f82855af7a24d0f5afdad
723 Author: Emmanuele Bassi <ebassi@linux.intel.com>
724 Date: Sun Feb 28 10:59:29 2010 +0000
726 actor: Call unparent() in destroy
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
733 http://bugzilla.openedhand.com/show_bug.cgi?id=2009
735 clutter/clutter-actor.c | 4 ++--
736 1 file changed, 2 insertions(+), 2 deletions(-)
738 commit 7ffb62eab939de46b8234243cab6f6c4b40d60ec
739 Author: Emmanuele Bassi <ebassi@linux.intel.com>
740 Date: Sat Feb 27 18:56:34 2010 +0000
742 docs: Update minimum size accessors
744 Expand the documentation for set_minimum_size() and get_minimum_size(),
745 and add introspection annotations for get_minimum_size().
747 clutter/clutter-stage.c | 41 +++++++++++++++++++++++++++++------------
748 1 file changed, 29 insertions(+), 12 deletions(-)
750 commit 52ba9a1800302f887ebe6d2e7aa7ab4503ea6e5e
751 Author: Emmanuele Bassi <ebassi@linux.intel.com>
752 Date: Sat Feb 27 18:24:17 2010 +0000
754 actor: Use the TOPLEVEL flag instead of a type check
756 We can use the internal private CLUTTER_ACTOR_IS_TOPLEVEL flag, which is
759 clutter/clutter-actor.c | 19 +++++++++++++++----
760 1 file changed, 15 insertions(+), 4 deletions(-)
762 commit cd62dfbd1419870fb6792bcab87ea8e7d0e760f5
763 Author: Chris Lord <chris@linux.intel.com>
764 Date: Fri Feb 26 18:36:38 2010 +0000
766 [stage] Use min-width/height props for min size
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
774 clutter/clutter-actor.c | 13 ++++--
775 clutter/clutter-stage.c | 102 +++++++++++++++++++++++++++++++----------------
776 2 files changed, 77 insertions(+), 38 deletions(-)
778 commit 9f67e4826c9880732e4f2a74ac42f729e7e80042
779 Author: Emmanuele Bassi <ebassi@linux.intel.com>
780 Date: Fri Feb 26 16:43:02 2010 +0000
782 docs: Update --enable-cogl-debug description
784 The 'no' value is not the default any more. The 'minimum' value is
785 always the default, regardless of the release status.
788 1 file changed, 1 insertion(+), 2 deletions(-)
790 commit 62f2961f8a9b2974e0a7a11ea534f0b14f8fef1a
791 Author: Emmanuele Bassi <ebassi@linux.intel.com>
792 Date: Fri Feb 26 15:12:27 2010 +0000
794 docs: Unicode-ify NEWS
796 NEWS | 1302 +++++++++++++++++++++++++++++++++---------------------------------
797 1 file changed, 651 insertions(+), 651 deletions(-)
799 commit c8c62af0cf5d33f3fe3e4aab44ed49363263252c
800 Author: Emmanuele Bassi <ebassi@linux.intel.com>
801 Date: Fri Feb 26 15:00:47 2010 +0000
803 build: More options for Automake
805 Require automake >= 1.10, and add the following options:
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
812 1 file changed, 1 insertion(+), 1 deletion(-)
814 commit e0f04efa411c0987db32c056958ad2c7cf5b6736
815 Author: Emmanuele Bassi <ebassi@linux.intel.com>
816 Date: Fri Feb 26 10:36:17 2010 +0000
818 device: When changing the stage, unset the pointer actor
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.
824 clutter/clutter-input-device.c | 14 ++++++++++++--
825 1 file changed, 12 insertions(+), 2 deletions(-)
827 commit 5d8346829585bb4b6d4617a232f87e3dab4eee5f
828 Author: Neil Roberts <neil@linux.intel.com>
829 Date: Tue Feb 23 14:45:44 2010 +0000
831 cogl-vertex-buffer: Add support for unsigned int indices
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
841 http://bugzilla.openedhand.com/show_bug.cgi?id=1998
843 clutter/cogl/cogl/cogl-types.h | 6 +++++-
844 clutter/cogl/cogl/cogl-vertex-buffer.c | 17 ++++++++++++++++-
845 clutter/cogl/cogl/cogl-vertex-buffer.h | 8 ++++++++
846 clutter/cogl/cogl/driver/gl/cogl.c | 3 ++-
847 .../cogl/cogl/driver/gles/cogl-feature-functions.h | 6 ++++++
848 5 files changed, 37 insertions(+), 3 deletions(-)
850 commit 67d9d928147aa59905960480a5d0b4c19c9d1920
851 Author: Emmanuele Bassi <ebassi@linux.intel.com>
852 Date: Thu Feb 25 23:23:53 2010 +0000
854 docs: Document the "columns" syntax for ClutterModel
856 Like we do for other classes implementing custom properties, we should
857 document the syntax of the "columns" scriptable property of ClutterModel.
859 clutter/clutter-model.c | 24 ++++++++++++++++++++++++
860 1 file changed, 24 insertions(+)
862 commit 70d7bad98ba50a657204ee356fd5ac5ccf4e8bea
863 Author: Emmanuele Bassi <ebassi@linux.intel.com>
864 Date: Thu Feb 25 23:15:59 2010 +0000
866 conformance: Use g_test_verbose() for logging
868 Protect g_print() calls behind the g_test_verbose() check, to avoid
869 unwanted output during the conformance test run.
871 tests/conform/test-model.c | 9 ++++++++-
872 1 file changed, 8 insertions(+), 1 deletion(-)
874 commit 96c31bbf0ea14c7cb6eaa824a6d5cf66d58b8d5b
875 Author: Bastian Winkler <buz@netbuz.org>
876 Date: Thu Feb 25 23:47:49 2010 +0100
878 model: Implement ClutterScriptable interface
880 Allow a ClutterModel to be constructed through the ClutterScript API.
881 Currently this allows a model to be generated like like this:
885 "type" : "ClutterListModel",
887 [ "text-column", "gchararray" ],
888 [ "int-column", "gint" ],
889 [ "actor-column", "ClutterRectangle" ]
893 where 'columns' is an array containing arrays of column-name,
896 http://bugzilla.openedhand.com/show_bug.cgi?id=2007
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(-)
905 commit 63279f827e9d4e517c3dc88633a8b5ed47fbd74e
906 Author: Emmanuele Bassi <ebassi@linux.intel.com>
907 Date: Thu Feb 25 22:50:38 2010 +0000
909 docs: gtk-doc fixes for Animator
917 Also, fix the introspection annotations.
919 clutter/clutter-animator.c | 40 +++++++++++++++++++++++++++-------------
920 1 file changed, 27 insertions(+), 13 deletions(-)
922 commit 9db135c4eff97a3d3520cc05c9c3e85c153e8cc4
923 Author: Emmanuele Bassi <ebassi@linux.intel.com>
924 Date: Thu Feb 25 18:28:37 2010 +0000
926 glx: Clean up sync-to-vblank mechanism discovery
928 The code has gotten really complicated to follow.
930 As soon as we have a sync-to-vblank mechanism we should just bail out.
932 Also, __GL_SYNC_TO_VBLANK (which is used by nVidia) should be assumed
933 equivalent to a CLUTTER_VBLANK_GLX_SWAP.
935 clutter/glx/clutter-backend-glx.c | 169 ++++++++++++++++++++-----------------
936 1 file changed, 92 insertions(+), 77 deletions(-)
938 commit 655cb966c08b0ec3a0b73ed1b18fc9ebbe9a93b8
939 Author: Emmanuele Bassi <ebassi@linux.intel.com>
940 Date: Thu Feb 25 17:09:55 2010 +0000
942 docs: Add visual cue for Animator's key frames
944 We should explain what a "key frame" is for ClutterAnimator, possibly
945 with some sort of visual cue.
947 This allows me to demonstrate my poor skills at using Inkscape, as well
948 as my overall bad taste for graphics design.
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(+)
956 commit d3d05261e6a394736757cebb5aad9b9267e7cf53
957 Author: Emmanuele Bassi <ebassi@linux.intel.com>
958 Date: Thu Feb 25 14:22:08 2010 +0000
960 script-parser: Remove top-level types list
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.
966 clutter/clutter-script-parser.c | 36 ++++--------------------------------
967 1 file changed, 4 insertions(+), 32 deletions(-)
969 commit c0be19eff65c4c72aa5c934cee3b582903db40f6
970 Author: Emmanuele Bassi <ebassi@linux.intel.com>
971 Date: Thu Feb 25 14:20:05 2010 +0000
973 script-parser: Be more strict with "children" members
975 The "children" member for Container definitions should only reference
976 actors, and warn about any other type.
978 clutter/clutter-script-parser.c | 12 ++++++++++++
979 1 file changed, 12 insertions(+)
981 commit c291d5a660f4ebac3dc57acad79b8153686a47f0
982 Author: Emmanuele Bassi <ebassi@linux.intel.com>
983 Date: Thu Feb 25 14:08:57 2010 +0000
985 animator: Add a :timeline property
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.
991 clutter/clutter-animator.c | 26 +++++++++++++++++++++++++-
992 1 file changed, 25 insertions(+), 1 deletion(-)
994 commit 641582533952c91576fb53724b70cbe6afb119db
995 Author: Emmanuele Bassi <ebassi@linux.intel.com>
996 Date: Thu Feb 25 14:02:29 2010 +0000
998 animator: Remove NULL check in remove_key()
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.
1004 clutter/clutter-animator.c | 11 ++++++-----
1005 1 file changed, 6 insertions(+), 5 deletions(-)
1007 commit 4bc4c604e926b07af9ef4c02fd5f000fc939259b
1008 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1009 Date: Thu Feb 25 12:45:02 2010 +0000
1011 box: Let pack_at() create the ChildMeta, if any
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.
1017 clutter/clutter-box.c | 5 +++++
1018 1 file changed, 5 insertions(+)
1020 commit 543e2d3f0609864cebb1f1eaf258108abab50770
1021 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1022 Date: Thu Feb 25 12:39:24 2010 +0000
1024 container: Expose create and destroy ChildMeta methods
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.
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(-)
1038 commit 31b5856d69e8d53de17270da7ab59dd290e2868a
1039 Author: Neil Roberts <neil@linux.intel.com>
1040 Date: Wed Feb 24 23:04:39 2010 +0000
1042 test-cogl-blend-strings: Add some more tests
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
1049 tests/conform/test-cogl-blend-strings.c | 46 +++++++++++++++++++++++++++++++
1050 1 file changed, 46 insertions(+)
1052 commit 14999bec5e6b3d0aab057ef544f233d968e5cf67
1053 Author: Neil Roberts <neil@linux.intel.com>
1054 Date: Wed Feb 24 11:13:55 2010 +0000
1056 gles2: Remove the special wrapper for glBindTexture
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.
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.
1071 clutter/cogl/cogl/cogl-material.c | 10 ---------
1072 clutter/cogl/cogl/cogl-texture-2d-sliced.c | 5 ++---
1073 clutter/cogl/cogl/cogl-texture-driver.h | 7 -------
1074 clutter/cogl/cogl/driver/gl/cogl-texture-driver.c | 12 -----------
1075 clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c | 22 --------------------
1076 clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.h | 12 -----------
1077 .../cogl/cogl/driver/gles/cogl-texture-driver.c | 13 ------------
1078 7 files changed, 2 insertions(+), 79 deletions(-)
1080 commit eba07020c549ff0ede9982c6d911d67e353ca5a3
1081 Author: Neil Roberts <neil@linux.intel.com>
1082 Date: Wed Feb 24 16:50:32 2010 +0000
1084 cogl-gles2-wrapper: Add support for the layer combine operations
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.
1091 Currently it will try to generate code for the constant color but it
1092 will use a uniform which does not exist.
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(-)
1099 commit 02b952394ae9efe9e80b803e671bca1b1f711a9a
1100 Author: Neil Roberts <neil@linux.intel.com>
1101 Date: Wed Feb 24 10:42:59 2010 +0000
1103 gles2: Implement a wrapper for glGetIntegerv(GL_MAX_TEXTURE_UNITS)
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.
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(+)
1114 commit 3bc0672feff7c58326c4d50612bedf15aa9c02cb
1115 Author: Øyvind Kolås <pippin@linux.intel.com>
1116 Date: Thu Feb 25 12:30:07 2010 +0000
1118 animator: handle no initial key
1120 Fixing the crasher reported in bug #1995.
1122 clutter/clutter-animator.c | 108 ++++++++++++++++++++++++++------------------
1123 1 file changed, 65 insertions(+), 43 deletions(-)
1125 commit d2db512788aac496a3741cb424caea41cf4357a1
1126 Author: Øyvind Kolås <pippin@linux.intel.com>
1127 Date: Thu Feb 25 11:48:44 2010 +0000
1129 animator: added clutter_animator_compute_value
1131 Allow querying the computed values of properties managed by a
1134 clutter/clutter-animator.c | 212 +++++++++++++++++++++++++++++++++++++++++---
1135 clutter/clutter-animator.h | 12 +++
1136 2 files changed, 211 insertions(+), 13 deletions(-)
1138 commit e8d32fd153268c653c1adc5c66f30f0ee624b432
1139 Author: Øyvind Kolås <pippin@linux.intel.com>
1140 Date: Thu Feb 25 11:28:32 2010 +0000
1142 animator: removed bogus arg in keys interpolation accessor
1144 A bogus ClutterInterpolation argument had been carried from
1145 clutter_animator_set_interpolation to clutter_animator_get_interpolation
1148 clutter/clutter-animator.c | 16 +++++++---------
1149 clutter/clutter-animator.h | 3 +--
1150 2 files changed, 8 insertions(+), 11 deletions(-)
1152 commit be8f53f229397e72fcf5a1bed245d555ea4747e9
1153 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1154 Date: Thu Feb 25 12:01:03 2010 +0000
1156 animation: Fix a typo
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
1162 clutter/clutter-animation.c | 2 +-
1163 1 file changed, 1 insertion(+), 1 deletion(-)
1165 commit 26e22b2ede0eb0fdfbe3d96189cb2aa196da83f8
1166 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1167 Date: Thu Feb 25 10:22:36 2010 +0000
1169 Conditionally use G_VALUE_COLLECT_INIT() macro
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.
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.
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(-)
1187 commit bd303d6efb7dfddbdf671f7c66ff5b73bb216f3f
1188 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1189 Date: Wed Feb 24 16:43:17 2010 +0000
1191 conform: Verify parsing of multiple properties
1193 The ClutterAnimator support for parsing multiple properties should be
1194 verified in the conformance test suite.
1196 http://bugzilla.openedhand.com/show_bug.cgi?id=2003
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(+)
1204 commit 59fd7e4a810f51bad31c2eafb609d545557ef264
1205 Author: Bastian Winkler <buz@netbuz.org>
1206 Date: Wed Feb 24 16:32:19 2010 +0100
1208 animator: Append parsed animator keys to previously parsed ones
1210 Reuse the GSList of the previously parsed property when building a
1211 ClutterAnimator from script, otherwise only the last used property will
1214 http://bugzilla.openedhand.com/show_bug.cgi?id=2003
1216 clutter/clutter-animator.c | 7 +++++--
1217 1 file changed, 5 insertions(+), 2 deletions(-)
1219 commit fd6f6707433a8ab57c8232afee65038213d4120c
1220 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1221 Date: Wed Feb 24 14:40:22 2010 +0000
1223 Post-release version bump to 1.1.15
1225 configure.ac | 4 ++--
1226 1 file changed, 2 insertions(+), 2 deletions(-)
1228 commit 18659b008c800b2dde6e5a2453fba04f5990f2b7
1229 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1230 Date: Wed Feb 24 14:26:46 2010 +0000
1234 configure.ac | 4 ++--
1235 1 file changed, 2 insertions(+), 2 deletions(-)
1237 commit ec0c7fcd9bb734c3fd488b4b3ec3d469ba5e967f
1238 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1239 Date: Wed Feb 24 14:23:58 2010 +0000
1241 build: Use the right headers when enumerating them
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.
1247 http://bugzilla.openedhand.com/show_bug.cgi?id=2002
1249 clutter/x11/Makefile.am | 2 +-
1250 1 file changed, 1 insertion(+), 1 deletion(-)
1252 commit 1370d72a7a1490c1ed60f02634f146995482116d
1253 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1254 Date: Wed Feb 24 14:20:14 2010 +0000
1258 NEWS | 44 ++++++++++++++++++++++++++++++++++++++++++++
1259 1 file changed, 44 insertions(+)
1261 commit d1ca0e1b8f3dc6f5b5fec0ce3fba4702b9e75386
1262 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1263 Date: Wed Feb 24 12:23:46 2010 +0000
1265 fixed layout: Store a back pointer to the Container
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.
1273 clutter/clutter-fixed-layout.c | 14 ++++++++++++--
1274 1 file changed, 12 insertions(+), 2 deletions(-)
1276 commit 3a9d842164708baa8fe877d829f9e9cdcbde3831
1277 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1278 Date: Wed Feb 24 12:09:13 2010 +0000
1280 conformance: Show the Stage to test invariants
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.
1286 tests/conform/test-actor-invariants.c | 9 +++++++++
1287 1 file changed, 9 insertions(+)
1289 commit aa8c8127059326c2d13d9f8dd6a294e787e3760e
1290 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1291 Date: Wed Feb 24 12:08:07 2010 +0000
1293 box: Do not short-circuit size negotiation for empty Boxes
1295 The LayoutManager used might decide to have a default allocation or a
1296 default preferred size when empty.
1298 clutter/clutter-box.c | 31 -------------------------------
1299 1 file changed, 31 deletions(-)
1301 commit 523bab0868255e3f2b2910a60a868bffeb5bf64a
1302 Author: Robert Bragg <robert@linux.intel.com>
1303 Date: Thu Feb 11 11:45:36 2010 +0000
1305 layout: allow wider use of the CLUTTER_ACTOR_NO_LAYOUT flag
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.
1314 clutter/clutter-fixed-layout.c | 17 +++++++++++++++++
1315 clutter/clutter-group.c | 8 +++-----
1316 2 files changed, 20 insertions(+), 5 deletions(-)
1318 commit f21e649c80a3e0db5db7dc1128f7828535dbebc2
1319 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1320 Date: Wed Feb 24 11:28:44 2010 +0000
1322 docs: Detail replacement for cogl_check_extension()
1324 The cogl_check_extension() function has been deprecated, but it's easily
1325 replaceable with a simple strstr() call.
1327 clutter/cogl/cogl/cogl.h | 11 +++++++----
1328 1 file changed, 7 insertions(+), 4 deletions(-)
1330 commit 829d3f4bc5d083320f7f1b70d25e0115e1b6512f
1331 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1332 Date: Wed Feb 24 11:27:51 2010 +0000
1334 docs: Update NEWS and README
1336 The NEWS file was not updated for the 1.1.12 release, so we need to
1339 The Release Notes section for Clutter and Cogl also needs some more
1340 entries that escaped previous releases.
1342 NEWS | 33 +++++++++++++++++++++++++++++++++
1343 README | 21 +++++++++++++++++++++
1344 2 files changed, 54 insertions(+)
1346 commit d54af2363d390bf598aaa931821a46604d4f192a
1347 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1348 Date: Wed Feb 24 10:20:10 2010 +0000
1350 build: Use template for ClutterX11 enumerationt types
1352 Clutter and Cogl use the template Makefile.am.enums for building the
1353 enumeration GTypes from public headers, but ClutterX11 is not.
1355 .gitignore | 13 ++++----
1356 clutter/x11/Makefile.am | 77 +++++++++++++++++++----------------------------
1357 2 files changed, 37 insertions(+), 53 deletions(-)
1359 commit eb35c446b119274658ba45937e02b5cfd1ec27fe
1360 Author: Neil Roberts <neil@linux.intel.com>
1361 Date: Tue Feb 23 22:06:59 2010 +0000
1363 clutter-box: Layer new actors on top of all others at the same depth
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.
1372 http://bugzilla.openedhand.com/show_bug.cgi?id=1988
1374 clutter/clutter-box.c | 25 ++++++++++++++++++++++---
1375 1 file changed, 22 insertions(+), 3 deletions(-)
1377 commit da0315e4d666cc7cbfcfe7dab63d731df2a02338
1378 Author: Neil Roberts <neil@linux.intel.com>
1379 Date: Tue Feb 23 22:10:30 2010 +0000
1381 box: Revert "Tweak the depth sorting function"
1383 This reverts commit 939e56e2b12e5c96fa1173be33c2786ddfe57c25.
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.
1390 http://bugzilla.openedhand.com/show_bug.cgi?id=1988
1392 clutter/clutter-box.c | 2 +-
1393 1 file changed, 1 insertion(+), 1 deletion(-)
1395 commit 1c65f2ee1e4595d3044d05cadb4f33fc2d03a6f3
1396 Author: Robert Bragg <robert@linux.intel.com>
1397 Date: Wed Feb 17 18:45:08 2010 +0000
1399 cogl debug: Adds glViewport call tracing
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)
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(-)
1410 commit fa3830ff20962dc72b676a5411a7fa1829a870cd
1411 Author: Robert Bragg <robert@linux.intel.com>
1412 Date: Wed Feb 17 17:53:28 2010 +0000
1414 cogl debug: hint that all debugging paths are G_UNLIKELY
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.
1421 This patch simply fixes a few cases where we weren't using G_UNLIKELY.
1423 clutter/cogl/cogl/cogl-journal.c | 9 +++++----
1424 clutter/cogl/cogl/cogl.c | 2 +-
1425 2 files changed, 6 insertions(+), 5 deletions(-)
1427 commit a58d6e8ee5e26185ff090845df68b61076275c21
1428 Author: Robert Bragg <robert@linux.intel.com>
1429 Date: Wed Feb 17 17:40:57 2010 +0000
1431 cogl debug: Support "minimum" level debugging by default
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.
1437 configure.ac | 4 ++--
1438 1 file changed, 2 insertions(+), 2 deletions(-)
1440 commit 511e5ceb516dcbf2c406a7c2e8e0e56d2135fb0d
1441 Author: Robert Bragg <robert@linux.intel.com>
1442 Date: Wed Feb 17 14:38:11 2010 +0000
1444 cogl debug: Makes COGL_DEBUG=all|verbose|help more useful
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
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.
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.
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(-)
1463 commit 939e56e2b12e5c96fa1173be33c2786ddfe57c25
1464 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1465 Date: Tue Feb 23 17:59:09 2010 +0000
1467 box: Tweak the depth sorting function
1469 By changing the depth sorting function we can achieve the same effect as
1470 ClutterGroup but without the costly append+sort.
1472 http://bugzilla.openedhand.com/show_bug.cgi?id=1988
1474 clutter/clutter-box.c | 2 +-
1475 1 file changed, 1 insertion(+), 1 deletion(-)
1477 commit 95960ab902852e9c4830815b89d0a315fb9e4c50
1478 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1479 Date: Tue Feb 23 16:51:26 2010 +0000
1481 cogl: Add deprecation annotation to CoglMaterial ref/unref
1483 The G_GNUC_DEPRECATED annotation was missing from the material ref and
1486 clutter/cogl/cogl/cogl-material.h | 4 ++--
1487 1 file changed, 2 insertions(+), 2 deletions(-)
1489 commit a9941e94995d2701783f055e69fba52a64f609e0
1490 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1491 Date: Tue Feb 16 20:08:35 2010 +0000
1493 debug: Split debugging notes from behavioural modifiers
1495 Some of the ClutterDebugFlags are not meant as a logging facility: they
1496 actually change Clutter's behaviour at run-time.
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.
1502 This split is warranted because:
1504 • it should be possible to do "CLUTTER_DEBUG=all" and only have
1505 log messages on the output
1507 • it should be possible to use behavioural modifiers even on a
1508 Clutter that has been compiled without debugging messages
1511 The commit adds two new debugging flags:
1513 ClutterPickDebugFlags - controlled by the CLUTTER_PICK environment
1516 ClutterPaintDebugFlags - controlled by the CLUTTER_PAINT environment
1519 The PickDebugFlags are:
1524 While the PaintDebugFlags is:
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.
1533 http://bugzilla.openedhand.com/show_bug.cgi?id=1991
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(-)
1540 commit a9c307ff5d94489b30d7398ac80072fe7222a434
1541 Author: Neil Roberts <neil@linux.intel.com>
1542 Date: Wed Feb 17 22:16:17 2010 +0000
1544 cogl-vertex-buffer: Fix the malloc fallback for indices
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
1550 http://bugzilla.o-hand.com/show_bug.cgi?id=1996
1552 clutter/cogl/cogl/cogl-vertex-buffer.c | 2 +-
1553 1 file changed, 1 insertion(+), 1 deletion(-)
1555 commit 14669657737cc1547fb0db261232e63bdd2755d9
1556 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1557 Date: Mon Feb 22 11:34:04 2010 +0000
1559 device: Motion events compression should honour the device
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
1565 clutter/clutter-stage.c | 29 ++++++++++++++++++++++-------
1566 1 file changed, 22 insertions(+), 7 deletions(-)
1568 commit 5ed4732737202c3051044455a91dc70c213fb800
1569 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1570 Date: Mon Feb 22 11:30:14 2010 +0000
1572 device: Force ENTER on Stage with overlapping Actors
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:
1577 ➔ ENTER (source: actor, related: NULL)
1580 Thus the Stage never gets an ENTER event. This is a regression from
1583 The correct sequence is:
1585 ➔ ENTER (source: stage, related: NULL)
1586 ➔ ENTER (source: actor, related: stage)
1589 This also maps to the sequence of events sythesized by Clutter when
1590 leaving the Stage through an actor overlapping the Stage boundary.
1592 http://bugzilla.moblin.org/show_bug.cgi?id=9781
1594 clutter/clutter-input-device.c | 27 +++++++++++++++++++++++----
1595 1 file changed, 23 insertions(+), 4 deletions(-)
1597 commit ee33357fd5d08be824a5ecb3161a79568afa4e5c
1598 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1599 Date: Thu Feb 18 16:58:29 2010 +0000
1601 stage: Only clutter_stage_get_default() creates the default stage
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.
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.
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.
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(-)
1624 commit 9a6de8757f27ff8a8cf9f89209f9366e03b7aadf
1625 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1626 Date: Thu Feb 18 11:34:06 2010 +0000
1628 docs: Document the InputDevice update method
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.
1634 clutter/clutter-input-device.c | 49 ++++++++++++++++++++++++++++++++++++++++
1635 1 file changed, 49 insertions(+)
1637 commit a2afc9d7ba0a80733044b97498a7df26de5a4ab2
1638 Author: Neil Roberts <neil@linux.intel.com>
1639 Date: Wed Feb 17 18:18:38 2010 +0000
1641 win32: Fixup compilation errors from b398292089b0f7
1643 That commit added some Win32 code which breaks compilation.
1645 Thanks to Samuel Degrande for help with this.
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(-)
1652 commit 5de743de705ba9bb9a2061a66045b32091165ad5
1653 Author: Robert Bragg <robert@linux.intel.com>
1654 Date: Tue Feb 16 14:53:10 2010 +0000
1656 cogl_texture_new_from_foreign: improve docs
1658 Improve the explanation of what the x_pot_waste and y_pot_waste
1659 arguments can be used for.
1661 clutter/cogl/cogl/cogl-texture.h | 15 +++++++++++----
1662 1 file changed, 11 insertions(+), 4 deletions(-)
1664 commit 9c06c94374c61c019ca49fa6fd80679e6ad2f29a
1665 Author: Robert Bragg <robert@linux.intel.com>
1666 Date: Tue Feb 16 14:23:11 2010 +0000
1668 cogl-texture: for foreign textures; always trust user geom
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.
1676 This should address:
1677 http://bugzilla.openedhand.com/show_bug.cgi?id=1502
1679 Thanks to Johan Bilien for reporting
1681 clutter/cogl/cogl/cogl-texture-2d-sliced.c | 24 +++++++++---------------
1682 1 file changed, 9 insertions(+), 15 deletions(-)
1684 commit 8b040cac4dfaaa9d91635d31d93a79d00f637772
1685 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1686 Date: Wed Feb 17 19:02:43 2010 +0000
1688 docs: Fixes for DeviceManager
1690 clutter/clutter-device-manager.h | 12 ++++++------
1691 doc/reference/clutter/clutter-sections.txt | 6 ++++++
1692 2 files changed, 12 insertions(+), 6 deletions(-)
1694 commit 51a3e49c8228a22c1fbcd42971ad27d26d83991b
1695 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1696 Date: Wed Feb 17 18:21:50 2010 +0000
1698 device: Allow updating devices from embedding toolkits
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.
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:
1710 • the embedding toolkit is creating a ClutterEvent by translating
1711 a toolkit-native event anyway
1713 • this is exactly what ClutterStage does when processing events
1715 We are, essentially, deferring input device handling to the embedding
1716 toolkits, just like we're deferring event handling to them.
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(-)
1725 commit b398292089b0f70b9457985426d6b962d9179fa7
1726 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1727 Date: Wed Feb 17 17:06:25 2010 +0000
1729 device: Impose per-backend DeviceManager
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.
1736 This commit makes DeviceManager an abstract class and delegates the
1737 device initialization and enumeration to per-backend sub-classes.
1739 The responsible for creating the device manager is, obviously, the
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
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(-)
1764 commit 0bf6d57ab128f301588695d011a9ab5d1b1dce1a
1765 Author: Chris Lord <chris@linux.intel.com>
1766 Date: Wed Feb 17 16:56:30 2010 +0000
1768 [event-x11] Don't relayout on window move
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.
1775 This fixes laggy window movement when moving a window in response to
1776 Clutter mouse motion events.
1778 clutter/x11/clutter-event-x11.c | 26 ++++++++++++++++----------
1779 1 file changed, 16 insertions(+), 10 deletions(-)
1781 commit 05054bed87866d10c927642fe6273c5bd8f89a95
1782 Author: Neil Roberts <neil@linux.intel.com>
1783 Date: Wed Feb 17 15:58:32 2010 +0000
1785 cogl-clip-stack: Round the coords when clipping to a window rect
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.
1793 This uses a new macro called COGL_UTIL_NEARBYINT which is a
1794 replacement for the C99 nearbyint function.
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(-)
1800 commit a726ef32aa4721070b57df2e08c304096cb24736
1801 Author: Neil Roberts <neil@linux.intel.com>
1802 Date: Wed Feb 17 14:38:45 2010 +0000
1804 test-cogl-vertex-buffer: Fix the maximum index number
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.
1811 tests/interactive/test-cogl-vertex-buffer.c | 2 +-
1812 1 file changed, 1 insertion(+), 1 deletion(-)
1814 commit fbcaf1e0b34f68934e0c84b01adfa5ea920c6c6a
1815 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1816 Date: Wed Feb 17 10:46:16 2010 +0000
1818 Improve LEAVE events for border actors
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.
1825 http://bugzilla.moblin.org/show_bug.cgi?id=9677
1827 clutter/clutter-input-device.c | 23 ++++++++++++++++++++++-
1828 tests/interactive/test-events.c | 22 +++++++++++++++++-----
1829 2 files changed, 39 insertions(+), 6 deletions(-)
1831 commit 719e314b8e364955b046c990ddc1c9f07b0cc55f
1832 Author: Chris Lord <chris@linux.intel.com>
1833 Date: Tue Feb 16 18:25:46 2010 +0000
1835 [stage-x11] Fix a warning due to a missing cast
1837 I stupidly forgot to cast a ClutterStage to a ClutterActor and somehow
1838 missed or didn't get the compiler warning. Fix.
1840 clutter/x11/clutter-stage-x11.c | 2 +-
1841 1 file changed, 1 insertion(+), 1 deletion(-)
1843 commit f9f03894a691cfb8f791f34c684d82f8a6d5b5b8
1844 Author: Chris Lord <chris@linux.intel.com>
1845 Date: Tue Feb 16 18:17:55 2010 +0000
1847 [stage-x11] Fix resizing for foreign windows
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).
1853 This should fix resizing in things like gtk-clutter.
1855 clutter/x11/clutter-stage-x11.c | 5 +++++
1856 1 file changed, 5 insertions(+)
1858 commit df6e7aee73a3c3818acab8218732659eb77a3cdc
1859 Author: Chris Lord <chris@linux.intel.com>
1860 Date: Tue Feb 16 17:46:52 2010 +0000
1862 [stage-x11] Set the geometry size for foreign wins
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
1868 clutter/x11/clutter-stage-x11.c | 9 ++++++++-
1869 1 file changed, 8 insertions(+), 1 deletion(-)
1871 commit c2d016471258c529d7829ed807e76a4e029b614b
1872 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1873 Date: Tue Feb 16 16:31:20 2010 +0000
1875 Add test-stage-sizing to the ignore file
1878 1 file changed, 1 insertion(+)
1880 commit d42f928c43994331017bca7145b7b06fd5848909
1881 Author: Chris Lord <chris@linux.intel.com>
1882 Date: Tue Feb 16 15:39:08 2010 +0000
1884 [test-interactive] Add a stage sizing test
1886 Add an interactive stage sizing test to test the interaction of
1887 fullscreening/resizing/expanding/shrinking a visible stage.
1889 tests/interactive/Makefile.am | 3 +-
1890 tests/interactive/test-stage-sizing.c | 113 +++++++++++++++++++++++++++++++++
1891 2 files changed, 115 insertions(+), 1 deletion(-)
1893 commit 1117b6a9ac974dd5855c5e76965c15329c608ff4
1894 Author: Chris Lord <chris@linux.intel.com>
1895 Date: Tue Feb 16 14:50:14 2010 +0000
1897 [stage-x11] Fix switching fullscreen mode
1899 Setting/unsetting fullscreen on a mapped or unmapped window now works
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.
1906 If the window was previously un-fullscreened, Clutter will restore the
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).
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(-)
1919 commit dd36c3ad5c4f3d25d0286cf1c2a9a25abf7d2ea4
1920 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1921 Date: Tue Feb 16 12:32:37 2010 +0000
1923 Post-release version bump to 1.1.13
1925 configure.ac | 4 ++--
1926 1 file changed, 2 insertions(+), 2 deletions(-)
1928 commit 21354b2b7518c9518fa8405f07ed1f929736d4a2
1929 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1930 Date: Tue Feb 16 12:21:15 2010 +0000
1932 Release 1.1.12 (developers snapshot)
1934 configure.ac | 4 ++--
1935 1 file changed, 2 insertions(+), 2 deletions(-)
1937 commit 7a3eb452b802e5b38542d224da179c4267706e7b
1938 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1939 Date: Tue Feb 16 12:16:02 2010 +0000
1941 conform: Do not resize the stage
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.
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(-)
1955 commit 4cadc7300504828fa0db8cb21e1b9d8e23be6319
1956 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1957 Date: Tue Feb 16 12:15:23 2010 +0000
1959 conform: Use a 640x480 stage in test-pick
1961 Do not resize the stage to a smaller size: the default size is perfectly
1964 tests/conform/test-pick.c | 4 ++--
1965 1 file changed, 2 insertions(+), 2 deletions(-)
1967 commit 958545aa70e526a12720bf2dd0d9b9a24d273b8d
1968 Author: Neil Roberts <neil@linux.intel.com>
1969 Date: Tue Feb 16 12:01:18 2010 +0000
1971 cogl-atlas-texture: Don't use the atlas if FBOs aren't supported
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.
1977 clutter/cogl/cogl/cogl-atlas-texture.c | 8 +++++---
1978 1 file changed, 5 insertions(+), 3 deletions(-)
1980 commit a5021ba30f553d641399545d9777eb5b4b385ac1
1981 Author: Neil Roberts <neil@linux.intel.com>
1982 Date: Tue Feb 16 11:58:47 2010 +0000
1984 cogl-atlas-texture: Check for errors when creating the atlas texture
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
1991 Thanks to Vladimir Ivakin for reporting this problem.
1993 clutter/cogl/cogl/cogl-atlas-texture.c | 19 ++++++++++++-------
1994 1 file changed, 12 insertions(+), 7 deletions(-)
1996 commit e65bb38720c8990684ce24bda08b78d8da49cc1b
1997 Author: Emmanuele Bassi <ebassi@linux.intel.com>
1998 Date: Tue Feb 16 11:38:51 2010 +0000
2000 conform: Use g_assert_cmpint() in cogl-readpixels test
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.
2006 tests/conform/test-cogl-readpixels.c | 18 ++++++++----------
2007 1 file changed, 8 insertions(+), 10 deletions(-)
2009 commit 56f164f8a1c634e2d0ba6ffb5879672d456e1488
2010 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2011 Date: Mon Feb 15 19:03:37 2010 +0000
2013 docs: Document SWAP_EVENTS feature flag
2015 clutter/clutter-feature.h | 1 +
2016 1 file changed, 1 insertion(+)
2018 commit 2fcb644e4fb02375bdf8b1f54677bcde7abdceba
2019 Author: Chris Lord <chris@linux.intel.com>
2020 Date: Mon Feb 15 18:53:58 2010 +0000
2022 [stage] Fix some races to do with window resizing
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).
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.
2033 Also change window creation slightly so that setting the size of a
2034 window before it's realized works correctly.
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(-)
2042 commit 0d428655e23c18064176aa823db0d7165581ba02
2043 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2044 Date: Mon Feb 15 16:09:26 2010 +0000
2046 actor: Turn push/pop_internal into Actor methods
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.
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.
2063 http://bugzilla.openedhand.com/show_bug.cgi?id=1990
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(-)
2071 commit 2229cafc3833a017b3a107b4f6b207f0a95908f5
2072 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2073 Date: Mon Feb 15 12:04:50 2010 +0000
2075 stage: Add sanity checks for get_pending_swaps()
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...
2083 http://bugzilla.openedhand.com/show_bug.cgi?id=1987
2085 clutter/clutter-master-clock.c | 21 +++++++++++++--------
2086 clutter/clutter-stage.c | 10 +++++++++-
2087 2 files changed, 22 insertions(+), 9 deletions(-)
2089 commit fef82fae5c716f15cd345fcfbc37f01578a82580
2090 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2091 Date: Mon Feb 15 11:58:55 2010 +0000
2093 build: Enable experimental COGL API in tests/conform
2095 Enable the experimental API when building the conformance test suite.
2097 tests/conform/Makefile.am | 1 +
2098 tests/conform/test-cogl-pixel-buffer.c | 3 ---
2099 2 files changed, 1 insertion(+), 3 deletions(-)
2101 commit 032121ce17fb825592ba435cf260107b52f8196c
2102 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2103 Date: Mon Feb 15 11:57:48 2010 +0000
2105 build: Disable deprecated API in tests/conform
2107 We should not be using deprecated API in the conformance test suite.
2109 tests/conform/Makefile.am | 1 +
2110 1 file changed, 1 insertion(+)
2112 commit c3354cb2c0acc7d80b2cea3f970a1d83a47d585c
2113 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2114 Date: Mon Feb 15 11:56:34 2010 +0000
2116 conform: Do not use deprecated API
2118 There is no more type-specific ref/unref pairs: it is all under
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(-)
2126 commit d607400f01be1c1e26f54b3d83794e0d246e8db0
2127 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2128 Date: Mon Feb 15 11:45:35 2010 +0000
2130 x11: Do not set pid or title on foreign windows
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.
2135 http://bugzilla.openedhand.com/show_bug.cgi?id=1989
2137 clutter/x11/clutter-stage-x11.c | 6 +++---
2138 1 file changed, 3 insertions(+), 3 deletions(-)
2140 commit 89191e8bbc591f33dd0f45e2317f31eeaa7d4023
2141 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2142 Date: Mon Feb 15 11:44:02 2010 +0000
2144 docs: Mention signal-swapped-after modifier
2146 The signal-swapped-after:: modifier for signal connection inside the
2147 clutter_actor_animate* variadic arguments functions is not mentioned in
2150 clutter/clutter-animation.c | 34 ++++++++++++++++++++++++----------
2151 1 file changed, 24 insertions(+), 10 deletions(-)
2153 commit 262782feae4e8130321be414f7aac9141ae22eab
2154 Author: Damien Lespiau <damien.lespiau@intel.com>
2155 Date: Mon Feb 8 19:18:36 2010 +0000
2157 docs: Add 2010 in COGL's Copyright notice
2159 While at it, fix the usage of <year> in <copyright> to let the
2160 stylesheet do the collation when having several years.
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(-)
2166 commit 01bf50905689b363877f85942403cdc947f8c82c
2167 Author: Damien Lespiau <damien.lespiau@intel.com>
2168 Date: Fri Feb 12 17:24:15 2010 +0000
2170 cogl-buffer: fix compilation for GL ES
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
2176 clutter/cogl/cogl/cogl-buffer.c | 15 +++++----------
2177 1 file changed, 5 insertions(+), 10 deletions(-)
2179 commit e668a2f228acb1f38853eea4245f87e10e82fe23
2180 Author: Neil Roberts <neil@linux.intel.com>
2181 Date: Fri Feb 12 15:33:56 2010 +0000
2183 cogl-atlas-texture: Flush the journal before adding a new texture
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.
2192 clutter/cogl/cogl/cogl-atlas-texture.c | 26 +++++++++++++++++++++++++-
2193 1 file changed, 25 insertions(+), 1 deletion(-)
2195 commit 4be4f56bdf463ccac89c7068b47ba1450bee95ee
2196 Author: Neil Roberts <neil@linux.intel.com>
2197 Date: Fri Feb 12 10:08:51 2010 +0000
2199 cogl-sub-texture: Optimise taking a sub texture of a sub texture
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
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(-)
2213 commit 2018b5b16750b090c5592ebd5262fc66d809183e
2214 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2215 Date: Fri Feb 12 16:24:27 2010 +0000
2217 actor: Split get_paint_opacity() from the type check
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.
2224 clutter/clutter-actor.c | 55 ++++++++++++++++++++++++++++++-----------------
2225 1 file changed, 35 insertions(+), 20 deletions(-)
2227 commit 37d51cb78e41ea36f01c049eda6163bddc84ce33
2228 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2229 Date: Fri Feb 12 16:18:12 2010 +0000
2231 actor: Do not call get_opacity() from get_paint_opacity()
2233 We already have access to the opacity private field, there's no need to
2234 go through the public API.
2236 clutter/clutter-actor.c | 6 +++---
2237 1 file changed, 3 insertions(+), 3 deletions(-)
2239 commit 124f30cccef75feabb0933c074753b392f373e82
2240 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2241 Date: Fri Feb 12 15:52:07 2010 +0000
2243 docs: Fixes for Cogl
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(-)
2251 commit 27e6c3b1e0db6fcb36a8f7e44e457b672ee34565
2252 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2253 Date: Fri Feb 12 14:46:43 2010 +0000
2255 build: Use -Wuninitialized instead of -Wno-uninitialized
2257 We want to be warned about uninitialized variables.
2260 1 file changed, 1 insertion(+), 1 deletion(-)
2262 commit 00c4bfc3c69ba1c1c37852392b46c0fe601a98a1
2263 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2264 Date: Fri Feb 12 14:45:49 2010 +0000
2266 analysis: Interactive tests
2268 Abort if test-behave was passed the wrong type of behaviour to test.
2270 tests/interactive/test-behave.c | 4 ++++
2271 1 file changed, 4 insertions(+)
2273 commit 46182233c031c480b5d4d1f6109ab28a6199d369
2274 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2275 Date: Fri Feb 12 14:45:04 2010 +0000
2277 analysis: Conformance tests
2279 Initialize ClutterPathNote members to 0 using "{ 0, }".
2281 tests/conform/test-path.c | 14 +++++++-------
2282 1 file changed, 7 insertions(+), 7 deletions(-)
2284 commit 78f1f508af88ccd9652d38811a4ebc6662c566dd
2285 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2286 Date: Thu Feb 11 15:24:41 2010 +0000
2288 analysis: x11: ClutterEvent
2290 Remove an unused variable.
2292 clutter/x11/clutter-event-x11.c | 3 ---
2293 1 file changed, 3 deletions(-)
2295 commit 081696fdb5d83c41ed201277db272572eb534db2
2296 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2297 Date: Thu Feb 11 15:24:17 2010 +0000
2299 analysis: CoglPangoRenderer
2301 Remove unused variables.
2303 clutter/cogl/pango/cogl-pango-render.c | 17 +++++++----------
2304 1 file changed, 7 insertions(+), 10 deletions(-)
2306 commit 2d8bdf9e5ebd101b40854e0066b06037dd261ea5
2307 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2308 Date: Thu Feb 11 15:20:25 2010 +0000
2310 analysis: ClutterTimeoutPool
2312 Do not pre-initialize the list iterator, the for loop will do it for us.
2314 clutter/clutter-timeout-pool.c | 2 +-
2315 1 file changed, 1 insertion(+), 1 deletion(-)
2317 commit 9c8f8818784ba7c709c70ead6d8e103ee28d0c8c
2318 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2319 Date: Thu Feb 11 15:20:07 2010 +0000
2321 analysis: ClutterTimeline
2323 Remove an unused variable.
2325 clutter/clutter-timeline.c | 4 ----
2326 1 file changed, 4 deletions(-)
2328 commit 65af411cb4675eab722fe16acc93fa6e7183e3c8
2329 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2330 Date: Thu Feb 11 15:19:46 2010 +0000
2332 analysis: ClutterTexture
2334 Remove unused variables.
2336 clutter/clutter-texture.c | 25 +++++++++----------------
2337 1 file changed, 9 insertions(+), 16 deletions(-)
2339 commit 09644e4bb6cff70d2c9a59bbe9b461b7e53676e2
2340 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2341 Date: Thu Feb 11 15:19:32 2010 +0000
2343 analysis: ClutterText
2345 Remove unused variables.
2347 clutter/clutter-text.c | 2 --
2348 1 file changed, 2 deletions(-)
2350 commit c2d434e3af3d3b862866273a7dd15541ecbebcd5
2351 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2352 Date: Thu Feb 11 15:19:18 2010 +0000
2354 analysis: ClutterStage
2356 Remove unused variables.
2358 clutter/clutter-stage.c | 8 +-------
2359 1 file changed, 1 insertion(+), 7 deletions(-)
2361 commit 136e8c1acb15c078c0898a834f55666c6f0ef384
2362 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2363 Date: Thu Feb 11 15:17:53 2010 +0000
2365 analysis: ClutterScriptParser
2367 We parse a JSON value depending on the initial state of an uninitialized
2370 clutter/clutter-script-parser.c | 2 +-
2371 1 file changed, 1 insertion(+), 1 deletion(-)
2373 commit 4d9010dd5e9c5a69ba5f7a0c3969ce5ac337c08d
2374 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2375 Date: Thu Feb 11 15:17:32 2010 +0000
2377 analysis: ClutterRectangle
2379 Remove unused variables.
2381 clutter/clutter-rectangle.c | 10 +++-------
2382 1 file changed, 3 insertions(+), 7 deletions(-)
2384 commit 8ba65cfd4aba677530b25d9ab1323d2b1b281282
2385 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2386 Date: Thu Feb 11 15:17:07 2010 +0000
2388 analysis: ClutterModel
2390 Remove unused variables.
2392 clutter/clutter-model.c | 10 ----------
2393 1 file changed, 10 deletions(-)
2395 commit bea1a0a6a22ecd0ed96720bcecb3919d3fbb2757
2396 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2397 Date: Thu Feb 11 15:13:40 2010 +0000
2399 analysis: ClutterMain
2401 • Remove unused variables.
2403 • Do not pre-initialize ClutterActor's GType; pre-emptive optimizations
2404 like these are more black magic than real optimization.
2406 clutter/clutter-main.c | 21 ++++++---------------
2407 1 file changed, 6 insertions(+), 15 deletions(-)
2409 commit 66920ea540834c0264434f64a0dcfae4150e625f
2410 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2411 Date: Thu Feb 11 15:13:20 2010 +0000
2413 analysis: ClutterInterval
2415 Remove unused variables.
2417 clutter/clutter-interval.c | 8 --------
2418 1 file changed, 8 deletions(-)
2420 commit 853f9941da5f40b936307ce45f67265f978d9c2b
2421 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2422 Date: Thu Feb 11 15:11:51 2010 +0000
2424 analysis: ClutterBoxLayout
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.
2430 clutter/clutter-box-layout.c | 5 +----
2431 1 file changed, 1 insertion(+), 4 deletions(-)
2433 commit cd058562538633962089cd30787b7a98d9733144
2434 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2435 Date: Thu Feb 11 15:11:25 2010 +0000
2437 analysis: ClutterBehaviour
2439 Remove an unused variable.
2441 clutter/clutter-behaviour.c | 5 +----
2442 1 file changed, 1 insertion(+), 4 deletions(-)
2444 commit 6dc0e9632cc2597240d9e42c98cd567dbcc1dbec
2445 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2446 Date: Thu Feb 11 15:09:51 2010 +0000
2448 analysis: ClutterAnimation
2450 • Remove one unused variable.
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.
2456 clutter/clutter-animation.c | 10 ++++++----
2457 1 file changed, 6 insertions(+), 4 deletions(-)
2459 commit a287ca7a2824efef2608877555711c408122a400
2460 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2461 Date: Thu Feb 11 15:09:12 2010 +0000
2463 analysis: ClutterAnimator/2
2465 Clean up an unused variable.
2467 clutter/clutter-animator.c | 4 +---
2468 1 file changed, 1 insertion(+), 3 deletions(-)
2470 commit 667222c301ca0f19c570938055208e564e4d02ef
2471 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2472 Date: Thu Feb 11 15:08:19 2010 +0000
2474 analysis: ClutterAnimator/1
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.
2480 clutter/clutter-animator.c | 10 +++++++++-
2481 1 file changed, 9 insertions(+), 1 deletion(-)
2483 commit fcd3cfc0bfc656d63088a443355b30e7b50d2850
2484 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2485 Date: Thu Feb 11 15:07:38 2010 +0000
2487 analysis: ClutterAlpha
2489 Clean up unused variables.
2491 clutter/clutter-alpha.c | 12 ++----------
2492 1 file changed, 2 insertions(+), 10 deletions(-)
2494 commit aa6d7a30291c199fc1d26a93574d88c027367bf0
2495 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2496 Date: Thu Feb 11 15:05:18 2010 +0000
2498 analysis: ClutterActor
2500 Clean up ClutterActor for unused variables.
2502 clutter/clutter-actor.c | 12 +-----------
2503 1 file changed, 1 insertion(+), 11 deletions(-)
2505 commit 7a372bc0011b6301cc8b46767493a23218a67cff
2506 Author: Neil Roberts <neil@linux.intel.com>
2507 Date: Fri Feb 12 14:26:33 2010 +0000
2509 cogl: Cache the value for GL_MAX_TEXTURE_UNITS
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.
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(-)
2521 commit 22c33b2fea1fd60239280aa1f4fd112f533688aa
2522 Author: Robert Bragg <robert@linux.intel.com>
2523 Date: Thu Feb 11 16:12:26 2010 +0000
2525 cogl: resolves some low hanging issues flagged by clang
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.
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(-)
2535 commit 18305cbd98e02ab139beef769cbc90a2121bd1f5
2536 Author: Robert Bragg <robert@linux.intel.com>
2537 Date: Thu Feb 11 15:33:01 2010 +0000
2539 cogl_rectangle: avoid redundant copy of geometry
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
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(-)
2555 commit 5f18fc928d85499d6ee2ac433dde247286e2de4e
2556 Author: Robert Bragg <robert@linux.intel.com>
2557 Date: Wed Feb 10 22:47:49 2010 +0000
2559 cogl: explicitly mark cogl_<object>_ref/unref APIs as deprecated
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
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(-)
2575 commit 48660349dbcabdde05fc9e1334734bcc62bb790e
2576 Author: Robert Bragg <robert@linux.intel.com>
2577 Date: Wed Feb 10 22:30:37 2010 +0000
2579 cogl: cleanly separate primitives + paths code
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
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
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(-)
2599 commit 9f5a3e14451ed77f47260bbd6a1b2271e8003361
2600 Author: Robert Bragg <robert@linux.intel.com>
2601 Date: Wed Feb 10 18:18:30 2010 +0000
2603 cogl: remove redundant _cogl_journal_flush prototype
2605 There was a redundant _cogl_journal_flush function prototype in
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(-)
2619 commit 7edcbaa1f9444848fcaac052557f7c444e3905e0
2620 Author: Robert Bragg <robert@linux.intel.com>
2621 Date: Wed Feb 10 01:57:32 2010 +0000
2623 cogl: improves header and coding style consistency
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
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.
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
2640 cogl_function_name (CoglType arg0,
2643 Not everyone likes this style, but it seems that most of the currently
2644 active Cogl developers agree on it.
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.
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.
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.
2660 clutter/cogl/cogl/cogl-atlas-texture.c | 52 ++--
2661 clutter/cogl/cogl/cogl-atlas.c | 22 +-
2662 clutter/cogl/cogl/cogl-atlas.h | 18 +-
2663 clutter/cogl/cogl/cogl-bitmap-fallback.c | 82 +++---
2664 clutter/cogl/cogl/cogl-bitmap-pixbuf.c | 60 ++--
2665 clutter/cogl/cogl/cogl-bitmap-private.h | 30 +-
2666 clutter/cogl/cogl/cogl-bitmap.c | 34 +--
2667 clutter/cogl/cogl/cogl-bitmap.h | 15 +-
2668 clutter/cogl/cogl/cogl-blend-string.c | 12 +-
2669 clutter/cogl/cogl/cogl-blend-string.h | 4 +-
2670 clutter/cogl/cogl/cogl-buffer-private.h | 14 +-
2671 clutter/cogl/cogl/cogl-buffer.c | 8 +-
2672 clutter/cogl/cogl/cogl-buffer.h | 26 +-
2673 clutter/cogl/cogl/cogl-clip-stack.c | 16 +-
2674 clutter/cogl/cogl/cogl-clip-stack.h | 14 +-
2675 clutter/cogl/cogl/cogl-color.h | 75 +++--
2676 clutter/cogl/cogl/cogl-context.c | 2 +-
2677 clutter/cogl/cogl/cogl-context.h | 10 +-
2678 clutter/cogl/cogl/cogl-debug.c | 8 +-
2679 clutter/cogl/cogl/cogl-debug.h | 4 +-
2680 clutter/cogl/cogl/cogl-feature-private.c | 19 +-
2681 clutter/cogl/cogl/cogl-feature-private.h | 14 +-
2682 clutter/cogl/cogl/cogl-fixed.c | 24 +-
2683 clutter/cogl/cogl/cogl-fixed.h | 72 +++--
2684 clutter/cogl/cogl/cogl-handle.h | 2 +-
2685 clutter/cogl/cogl/cogl-internal.h | 32 +-
2686 clutter/cogl/cogl/cogl-journal.c | 26 +-
2687 clutter/cogl/cogl/cogl-material-private.h | 67 +++--
2688 clutter/cogl/cogl/cogl-material.c | 22 +-
2689 clutter/cogl/cogl/cogl-material.h | 175 ++++++-----
2690 clutter/cogl/cogl/cogl-matrix.h | 110 +++----
2691 clutter/cogl/cogl/cogl-path.h | 138 +++++----
2692 clutter/cogl/cogl/cogl-pixel-buffer-private.h | 9 +-
2693 clutter/cogl/cogl/cogl-pixel-buffer.c | 53 ++--
2694 clutter/cogl/cogl/cogl-pixel-buffer.h | 46 +--
2695 clutter/cogl/cogl/cogl-primitives.c | 48 +--
2696 clutter/cogl/cogl/cogl-primitives.h | 13 +-
2697 clutter/cogl/cogl/cogl-shader.h | 96 +++---
2698 clutter/cogl/cogl/cogl-sub-texture-private.h | 14 +-
2699 clutter/cogl/cogl/cogl-sub-texture.c | 70 ++---
2700 clutter/cogl/cogl/cogl-texture-2d-private.h | 4 +-
2701 clutter/cogl/cogl/cogl-texture-2d-sliced-private.h | 6 +-
2702 clutter/cogl/cogl/cogl-texture-2d-sliced.c | 163 +++++-----
2703 clutter/cogl/cogl/cogl-texture-2d.c | 34 ++-
2704 clutter/cogl/cogl/cogl-texture-private.h | 6 +-
2705 clutter/cogl/cogl/cogl-texture.c | 106 +++----
2706 clutter/cogl/cogl/cogl-texture.h | 220 +++++++-------
2707 clutter/cogl/cogl/cogl-types.h | 15 +-
2708 clutter/cogl/cogl/cogl-util.c | 30 +-
2709 clutter/cogl/cogl/cogl-vertex-buffer-private.h | 2 +-
2710 clutter/cogl/cogl/cogl-vertex-buffer.c | 18 +-
2711 clutter/cogl/cogl/cogl-vertex-buffer.h | 6 +-
2712 clutter/cogl/cogl/cogl.c | 52 ++--
2713 clutter/cogl/cogl/cogl.h | 310 ++++++++++++--------
2714 clutter/cogl/cogl/driver/gl/cogl-program.c | 18 +-
2715 clutter/cogl/cogl/driver/gl/cogl-shader.c | 2 +-
2716 clutter/cogl/cogl/driver/gl/cogl-texture-driver.c | 2 +-
2717 clutter/cogl/cogl/driver/gl/cogl.c | 8 +-
2718 clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c | 6 +-
2719 clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.h | 12 +-
2720 clutter/cogl/cogl/driver/gles/cogl-program.c | 42 +--
2721 clutter/cogl/cogl/driver/gles/cogl-shader.c | 4 +-
2722 .../cogl/cogl/driver/gles/cogl-texture-driver.c | 4 +-
2723 clutter/cogl/doc/CODING_STYLE | 49 ++++
2724 64 files changed, 1491 insertions(+), 1184 deletions(-)
2726 commit 8c9472bc4c0350bc28f6ca152e82a0a507063d19
2727 Author: Robert Bragg <robert@linux.intel.com>
2728 Date: Fri Feb 5 16:32:19 2010 +0000
2730 cogl: deprecates cogl_check_extension
2732 OpenGL is an implementation detail for Cogl so it's not appropriate to
2733 expose OpenGL extensions through the Cogl API.
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.
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(-)
2749 commit b898f0e227aeabeb0513d1228a8f432c467d95b9
2750 Author: Robert Bragg <robert@linux.intel.com>
2751 Date: Tue Feb 9 19:34:32 2010 +0000
2753 never presume queuing redraws on invisible actors is redundant
2755 This replaces code like this:
2756 if (CLUTTER_ACTOR_IS_VISIBLE (self))
2757 clutter_actor_queue_redraw (self);
2759 clutter_actor_queue_redraw (self);
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.
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(-)
2773 commit bfb271b40332240f40c79dabf8f78f7a68293286
2774 Author: Robert Bragg <robert@linux.intel.com>
2775 Date: Tue Feb 9 19:19:44 2010 +0000
2777 box: port a ClutterGroup::foreach fix to ClutterBox
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:
2783 clutter_container_foreach (container, clutter_actor_destroy);
2785 (In this example clutter_actor_destroy will result in the current
2786 list item being iterated being freed.)
2788 clutter/clutter-box.c | 7 +++++--
2789 1 file changed, 5 insertions(+), 2 deletions(-)
2791 commit 60a4664d6e4f67b5e527cc2ecd190a538ed994ec
2792 Author: Robert Bragg <robert@linux.intel.com>
2793 Date: Tue Feb 9 19:06:59 2010 +0000
2795 box: Adds missing copyright header
2797 Adds a Copyright (C) 2009,2010 Intel Corporation header
2799 clutter/clutter-box.c | 21 +++++++++++++++++++++
2800 1 file changed, 21 insertions(+)
2802 commit 4355621aebb075bc34b50a89f8ba99e8b8e12ff7
2803 Author: Robert Bragg <robert@linux.intel.com>
2804 Date: Tue Feb 9 18:54:28 2010 +0000
2806 group: make it comparable to ClutterBox
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.
2815 This has already uncovered one bug in ClutterBox, and also highlights
2816 a bug in ClutterGroup + many other actors:
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.
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.
2835 clutter/clutter-box.c | 1 -
2836 clutter/clutter-group.c | 366 +++++++++++++++++++++--------------------------
2837 2 files changed, 167 insertions(+), 200 deletions(-)
2839 commit 34c7611407154fcbb61c82c959c2a38972c2534f
2840 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2841 Date: Fri Feb 12 11:38:47 2010 +0000
2843 docs: Update the backend HACKING file
2845 Clarify the Backend::create_context() vfunc role, and the
2846 Stage::realize() vfunc with regards to creating the GL/GLES
2849 doc/HACKING.backends | 12 ++++++------
2850 1 file changed, 6 insertions(+), 6 deletions(-)
2852 commit 44818a48273baa7dabfbb9370ac218ae8b0cf38e
2853 Author: Neil Roberts <neil@linux.intel.com>
2854 Date: Thu Feb 11 14:20:48 2010 +0000
2856 cogl: Add a fallback for when the signbit macro is missing
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.
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(-)
2867 commit 59463c2213b79a553d3d7999bb56106fb7c5a4ad
2868 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2869 Date: Wed Feb 10 17:20:31 2010 +0000
2871 Do a sanity check on _clutter_do_pick() arguments
2873 We should check that the passed ClutterStage pointer is indeed: a) still
2874 valid and b) a Stage.
2876 clutter/clutter-main.c | 1 +
2877 1 file changed, 1 insertion(+)
2879 commit d0734bc4741d77e7c239cf860b73b49e9564aa91
2880 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2881 Date: Wed Feb 10 17:12:27 2010 +0000
2883 input-device: Do not pick() on NULL stages
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.
2889 http://bugzilla.moblin.org/show_bug.cgi?id=9602
2891 clutter/clutter-input-device.c | 6 ++++--
2892 1 file changed, 4 insertions(+), 2 deletions(-)
2894 commit 4208169ab48795ca8f10287bd67031e161bf1f82
2895 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2896 Date: Wed Feb 10 15:38:41 2010 +0000
2898 text: Bump up the preferred height
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.
2904 clutter/clutter-text.c | 2 +-
2905 1 file changed, 1 insertion(+), 1 deletion(-)
2907 commit f54b29a0c0c182f1396abd9df7d46d99b81a133d
2908 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2909 Date: Wed Feb 10 15:38:07 2010 +0000
2911 test-text-field: Tone down the border
2913 Use a low opacity for the text field border.
2915 tests/interactive/test-text-field.c | 2 +-
2916 1 file changed, 1 insertion(+), 1 deletion(-)
2918 commit 2670fc58710b1d9d1ad5afae7b6ac397e1dc54dd
2919 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2920 Date: Wed Feb 10 15:37:26 2010 +0000
2922 test-text-field: Use ActorBox methods for the border
2924 Clamp to pixel and use get_size() when painting the border of the text
2927 tests/interactive/test-text-field.c | 4 ++--
2928 1 file changed, 2 insertions(+), 2 deletions(-)
2930 commit 3fdb0a59509aeaeb07c276ebd09df355626cfb92
2931 Author: Robert Bragg <robert@linux.intel.com>
2932 Date: Wed Feb 10 11:57:58 2010 +0000
2934 uprof: make the Redrawing timer a child of the Master Clock
2936 Previously it was a child of the Mainloop, but it's more closely
2937 a child of the Master Clock.
2939 clutter/clutter-backend.c | 2 +-
2940 1 file changed, 1 insertion(+), 1 deletion(-)
2942 commit 1899dbdc270e0bd494d174dd6bfbb9c5d18e174f
2943 Author: Robert Bragg <robert@linux.intel.com>
2944 Date: Wed Feb 10 12:18:41 2010 +0000
2946 backend-glx: Fix glXQueryVersion test
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
2955 clutter/glx/clutter-backend-glx.c | 2 +-
2956 1 file changed, 1 insertion(+), 1 deletion(-)
2958 commit ce1bb3d858fd02d6bcfb94b2b8999cfd7d0a4535
2959 Author: Neil Roberts <neil@linux.intel.com>
2960 Date: Wed Feb 10 12:41:09 2010 +0000
2962 cogl-material: Layers are not equal if the filters aren't equal
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.
2969 clutter/cogl/cogl/cogl-material.c | 5 +++++
2970 1 file changed, 5 insertions(+)
2972 commit b61c2b510b5f5a72ae6181cdce646d7018fbd996
2973 Author: Emmanuele Bassi <ebassi@linux.intel.com>
2974 Date: Wed Feb 10 10:58:14 2010 +0000
2976 build: Tweak internal defines for building Clutter
2978 When building Clutter we should:
2980 • disable Cogl deprecated API;
2981 • enable experimental API.
2983 clutter/Makefile.am | 2 ++
2984 1 file changed, 2 insertions(+)
2986 commit 4a9f08639f7127719f5b59ee9287641ba4912063
2987 Author: Robert Bragg <robert@linux.intel.com>
2988 Date: Wed Jan 20 18:53:36 2010 +0000
2990 debug: Adds CLUTTER_DEBUG=disable-swap-events option
2992 This allows us to forcibly disable the use of the GLX_INTEL_swap_events
2993 extension for testing or debugging purposes.
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(-)
3000 commit 5d702853b814445590aafe448bfc8f7993b06638
3001 Author: Robert Bragg <robert@linux.intel.com>
3002 Date: Thu Nov 12 20:37:01 2009 +0000
3004 glx backend: Adds support for GLX_INTEL_swap_event
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.
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.
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(-)
3033 commit 848db1ee4cc910542435bbcd3a57933bdf70269e
3034 Author: Robert Bragg <robert@linux.intel.com>
3035 Date: Thu Jan 14 14:03:23 2010 +0000
3037 glx backend: when running with GLX 1.3 then create GLXWindows for stages
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.
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(-)
3049 commit ca3ab41a1b12f661fe6eecddfaf5e03b0d94d682
3050 Author: Neil Roberts <neil@linux.intel.com>
3051 Date: Tue Feb 9 18:33:09 2010 +0000
3053 clutter-backend: Fix the error check in _clutter_backend_create_stage
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.
3060 clutter/clutter-backend.c | 2 +-
3061 1 file changed, 1 insertion(+), 1 deletion(-)
3063 commit 7b1925df82fa92fd68623c9a999ece6bf4ddfde3
3064 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3065 Date: Tue Feb 9 17:07:08 2010 +0000
3067 cogl: Move material_copy() out of the deprecated section
3069 We strongly suggest people should be using cogl_material_copy(), but it
3070 was hidden behind the deprecation guards.
3072 clutter/cogl/cogl/cogl-material.h | 4 ++--
3073 1 file changed, 2 insertions(+), 2 deletions(-)
3075 commit d2bdd3cb62c1cba24619ae843cf087709a02643d
3076 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3077 Date: Tue Feb 9 16:57:14 2010 +0000
3079 Fix some compiler warnings
3081 GCC complains that some variable might be used uninitialized.
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(-)
3090 commit 193c477495488446d2f3d8ab0184f882f3255f48
3091 Author: Neil Roberts <neil@linux.intel.com>
3092 Date: Tue Feb 9 16:30:28 2010 +0000
3094 cogl-bitmap: Remove const from premult_alpha_last_four_pixels_sse2
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.
3100 clutter/cogl/cogl/cogl-bitmap-fallback.c | 2 +-
3101 1 file changed, 1 insertion(+), 1 deletion(-)
3103 commit f5d2f58b03bf03b69f6cb92b3bdddb92b8a8ecc2
3104 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3105 Date: Tue Feb 9 15:29:29 2010 +0000
3107 docs: Clean up the unused symbols for Cogl
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.
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.
3116 doc/reference/cogl/Makefile.am | 54 +++++++++++++++++++---------------
3117 doc/reference/cogl/cogl-sections.txt | 7 +++++
3118 2 files changed, 37 insertions(+), 24 deletions(-)
3120 commit ecc5ffe91ace38c9d288251807e721a4cd71b052
3121 Author: Bastian Winkler <buz@netbuz.org>
3122 Date: Tue Feb 9 15:19:03 2010 +0100
3124 cogl-buffer: Use correct argument types in cogl_buffer_set_data_EXP
3126 offset and size arguments are gsize in cogl-buffer.h
3128 http://bugzilla.openedhand.com/show_bug.cgi?id=1980
3130 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
3132 clutter/cogl/cogl/cogl-buffer.c | 4 ++--
3133 1 file changed, 2 insertions(+), 2 deletions(-)
3135 commit 9aac36b47e43e95d12c8d28bd3671e6f5e000d32
3136 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3137 Date: Tue Feb 9 14:48:11 2010 +0000
3139 docs: Move some Cogl defines in the private section
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.
3145 This pushed Cogl's API reference coverage to 100%.
3147 doc/reference/cogl/cogl-sections.txt | 16 ++++++++--------
3148 1 file changed, 8 insertions(+), 8 deletions(-)
3150 commit 7ebb1e7157ab5d3efbeb37d7879d851adc7da40e
3151 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3152 Date: Tue Feb 9 14:41:37 2010 +0000
3154 docs: Fixes for Cogl API reference
3156 98% symbol docs coverage.
3157 335 symbols documented.
3158 0 symbols incomplete.
3161 Not bad, if I may say so.
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(-)
3172 commit 1d28ed035f360b14cfbf5b01db4ffe2979172cf0
3173 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3174 Date: Tue Feb 9 13:39:08 2010 +0000
3176 Post-release bump to 1.1.11
3178 configure.ac | 4 ++--
3179 1 file changed, 2 insertions(+), 2 deletions(-)
3181 commit a24d4d21a0eeca771476705ef407d55fdb32e68f
3182 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3183 Date: Tue Feb 9 12:31:42 2010 +0000
3187 Brown paper bag release.
3189 configure.ac | 4 ++--
3190 1 file changed, 2 insertions(+), 2 deletions(-)
3192 commit 738e73873dd0c05a44f7cb0ad40c8a854e0c75a6
3193 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3194 Date: Tue Feb 9 12:59:18 2010 +0000
3198 NEWS | 19 +++++++++++++++++++
3199 1 file changed, 19 insertions(+)
3201 commit cccf23caa481a239b747d1fdd5e0ca5ae7f6682c
3202 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3203 Date: Tue Feb 9 11:29:39 2010 +0000
3205 build: Always build conformance tests with debug symbols
3207 Having the conformance test suite build without debug symbols doesn't
3210 tests/conform/Makefile.am | 2 +-
3211 1 file changed, 1 insertion(+), 1 deletion(-)
3213 commit e46db37c03b6adae1594729c2c5c86e65701d95b
3214 Author: Robert Bragg <robert@linux.intel.com>
3215 Date: Tue Feb 9 13:00:39 2010 +0000
3217 conform: fix stack corruption in test-behaviours.c
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.
3224 tests/conform/test-behaviours.c | 11 +++++++----
3225 1 file changed, 7 insertions(+), 4 deletions(-)
3227 commit a02253f19a722dcfbf0a32543dd563127dd7b80e
3228 Author: Neil Roberts <neil@linux.intel.com>
3229 Date: Tue Feb 9 12:21:10 2010 +0000
3231 cogl-texture-2d: Use _cogl_texture_driver_gen to generate the GL tex
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.
3241 clutter/cogl/cogl/cogl-texture-2d.c | 3 +--
3242 1 file changed, 1 insertion(+), 2 deletions(-)
3244 commit 1b2ff7eff7e97d8542e35514bfa010be706973ee
3245 Author: Neil Roberts <neil@linux.intel.com>
3246 Date: Fri Dec 18 21:17:21 2009 +0000
3248 cogl: Use SSE2 when possible for premultiplying
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.
3257 http://bugzilla.openedhand.com/show_bug.cgi?id=1939
3258 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
3260 clutter/cogl/cogl/cogl-bitmap-fallback.c | 104 +++++++++++++++++++++++++++++-
3261 1 file changed, 103 insertions(+), 1 deletion(-)
3263 commit bbb058df40a5e1acf7b8e42049c3cd5d966f762d
3264 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3265 Date: Tue Feb 9 10:34:41 2010 +0000
3267 actor: Improve readability of raise/lower warnings
3269 • Add the function name in the warning, since the text is the same in
3270 both clutter_actor_raise() and clutter_actor_lower().
3272 • If an actor has a name then prefer it to the type name.
3274 clutter/clutter-actor.c | 46 +++++++++++++++++++++++++++++-----------------
3275 1 file changed, 29 insertions(+), 17 deletions(-)
3277 commit 7664568fff63501339d2cb1682ae1a9f1c27e068
3278 Author: Halton Huo <halton.huo@gmail.com>
3279 Date: Tue Feb 9 10:21:37 2010 +0000
3281 Remove return from void functions
3283 This patch fixes compilation on suncc.
3285 http://bugzilla.openedhand.com/show_bug.cgi?id=1978
3287 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
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(-)
3294 commit a23ce8606860075e35fca28eb82e57e340f2b9b9
3295 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3296 Date: Mon Feb 8 18:09:14 2010 +0000
3298 Post-release bump to 1.1.9
3301 1 file changed, 1 insertion(+), 1 deletion(-)
3303 commit a2889ed0772503dce504ab260fbbf662a0ad25d8
3304 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3305 Date: Mon Feb 8 17:57:48 2010 +0000
3307 Release Clutter 1.1.8
3310 1 file changed, 1 insertion(+), 1 deletion(-)
3312 commit a139bf9c40f88b46055e4cd9754ba51acca97c87
3313 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3314 Date: Mon Feb 8 17:56:35 2010 +0000
3316 test-animator: Do not use mid-function blocks
3318 The test_animator_properties unit is so small that declaring a
3319 mid-function block for two variables is not that clever.
3321 tests/conform/test-animator.c | 57 ++++++++++++++++++++---------------------
3322 1 file changed, 28 insertions(+), 29 deletions(-)
3324 commit 4d9327bbe14c2771896999844df3eac28da75347
3325 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3326 Date: Mon Feb 8 17:55:29 2010 +0000
3328 animator: Zero the AnimatorKey:value member
3330 The test suite is showing random segfaults because the GValue member of
3331 AnimatorKey is not zero-ed on creation.
3333 clutter/clutter-animator.c | 6 +++---
3334 1 file changed, 3 insertions(+), 3 deletions(-)
3336 commit d62ddc374f88448fbde6db11ed4b10a594ecc5c4
3337 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3338 Date: Mon Feb 8 17:37:00 2010 +0000
3340 docs: Fixes for ClutterAnimator
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(-)
3347 commit 9806f78905eea6e7c3b5b1f35b35650a823cb295
3348 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3349 Date: Mon Feb 8 17:34:11 2010 +0000
3354 1 file changed, 4 insertions(+)
3356 commit 814d3acd0730f2e418ccc44d550e1fa369c142fe
3357 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3358 Date: Mon Feb 8 17:27:20 2010 +0000
3362 NEWS | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++
3363 1 file changed, 53 insertions(+)
3365 commit 419afc01e8f2c96f7cf5c0962e5c421f8f3a476f
3366 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3367 Date: Mon Feb 8 17:27:13 2010 +0000
3369 docs: Update the release notes
3372 1 file changed, 6 insertions(+)
3374 commit c02dded0f6793ad377b566360371c23dbe61b4bc
3375 Author: Damien Lespiau <damien.lespiau@intel.com>
3376 Date: Mon Feb 8 17:11:43 2010 +0000
3378 cogl-buffer: Use TEXTURE as the only value for CoglBufferUsageHint
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.
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(-)
3389 commit 54a6df22b038b047931dc108df35bc9e097d4e5e
3390 Author: Damien Lespiau <damien.lespiau@intel.com>
3391 Date: Tue Feb 2 16:44:16 2010 +0000
3393 cogl-buffer: make sure the code compiles on GL ES
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
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(-)
3404 commit d0fe4795368ddc55411fb081832bfcdfdfeb4314
3405 Author: Damien Lespiau <damien.lespiau@intel.com>
3406 Date: Tue Feb 2 12:59:51 2010 +0000
3408 cogl-pixel-buffer: Add a fallback path
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
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.
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
3424 clutter/cogl/cogl/cogl-pixel-buffer.c | 56 ++++++++++++++++++--
3425 clutter/cogl/cogl/cogl-texture.c | 38 +++++++++----
3426 clutter/cogl/cogl/cogl-types.h | 4 +-
3427 .../cogl/cogl/driver/gl/cogl-feature-functions.h | 5 ++
3428 4 files changed, 88 insertions(+), 15 deletions(-)
3430 commit b5d5821304e8ca15ee4411bf7ff8f26a6a23c855
3431 Author: Damien Lespiau <damien.lespiau@intel.com>
3432 Date: Fri Jan 22 15:38:31 2010 +0000
3434 tests: Add a test for CoglPixelBuffers
3436 Exercise the whole public CoglBuffer / CoglPixelBuffer and
3437 cogl_texture_new_from_buffer API.
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(+)
3445 commit b7f049495b527547d093ca337588ceb289c9cb2b
3446 Author: Damien Lespiau <damien.lespiau@intel.com>
3447 Date: Fri Jan 22 15:07:27 2010 +0000
3449 cogl-texture: Add a new constructor to turn CoglBuffers into textures
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.
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(+)
3460 commit abbb668163537598790cb3eca564ea19b1e010ad
3461 Author: Damien Lespiau <damien.lespiau@intel.com>
3462 Date: Sun Jan 10 18:04:29 2010 +0000
3464 cogl-pixel-buffer: add a pixel buffer object class
3466 This subclass of CoglBuffer aims at wrapping PBOs or other system
3467 surfaces like DRM buffer objects. Two constructors are available:
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).
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.
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(+)
3485 commit b5e9710cdf5795f532fe46b9dfcc704a07d99ac9
3486 Author: Damien Lespiau <damien.lespiau@intel.com>
3487 Date: Sun Jan 10 17:28:24 2010 +0000
3489 cogl-buffer: add an abstract class around openGL's buffer objects
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.
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.
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(+)
3510 commit de8a6314f12854e748de515afb487af56eaac845
3511 Author: Damien Lespiau <damien.lespiau@intel.com>
3512 Date: Mon Jan 25 11:21:05 2010 +0000
3514 cogl: new textures sould have GL_TEXTURE_MIN_FILTER set to GL_LINEAR
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.
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).
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.
3531 clutter/cogl/cogl/cogl-texture-2d-sliced.c | 9 +++----
3532 clutter/cogl/cogl/cogl-texture-2d.c | 9 ++++---
3533 clutter/cogl/cogl/cogl-texture-driver.h | 9 +++++++
3534 clutter/cogl/cogl/driver/gl/cogl-texture-driver.c | 27 ++++++++++++++++++++
3535 .../cogl/cogl/driver/gles/cogl-texture-driver.c | 27 ++++++++++++++++++++
3536 5 files changed, 72 insertions(+), 9 deletions(-)
3538 commit c0f65212baee25dd4e66f4366a54bd847c782eb3
3539 Author: Damien Lespiau <damien.lespiau@intel.com>
3540 Date: Mon Jan 11 00:15:25 2010 +0000
3542 cogl: Introduce the GE_RET() debug macro
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().
3548 While at it, removed the unused variadic dots to the GE() macro.
3550 clutter/cogl/cogl/cogl-internal.h | 14 +++++++++++++-
3551 1 file changed, 13 insertions(+), 1 deletion(-)
3553 commit 069ba6daf9d39b471eb5c1de6e621f1343d5f00c
3554 Merge: cc6aefa 6ab9089
3555 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3556 Date: Mon Feb 8 16:53:11 2010 +0000
3558 Merge branch '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
3566 commit 6ab90899badf7820ffc4f40f23bf18c979762577
3567 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3568 Date: Mon Feb 8 16:50:29 2010 +0000
3570 docs: Describe the Animation definition syntax
3572 The ClutterAnimator documentation needs a section on the syntax of its
3573 ClutterScript definition, possibly with an example.
3575 clutter/clutter-animator.c | 59 ++++++++++++++++++++++++++++++++++++++++++++
3576 1 file changed, 59 insertions(+)
3578 commit 4dd11d6915f75ba62b8292c3138d4cc11a28fb21
3579 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3580 Date: Mon Feb 8 15:52:18 2010 +0000
3582 animator: Provide a ClutterScript parser
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.
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(-)
3599 commit 790a13c0d9d2249747cfb81dcb13f83c6cc2cec1
3600 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3601 Date: Mon Feb 8 15:47:46 2010 +0000
3603 animator: Allow retrieving type property type from a key
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.
3610 Since we know the type of the GValue we should provide a getter for it.
3612 We should also allow developers to throw at us GValue with compatible and
3613 transformable types.
3615 Finally, all the accessors should be constified.
3617 clutter/clutter-animator.c | 93 ++++++++++++++++++++++++++++++++------------
3618 clutter/clutter-animator.h | 13 ++++---
3619 2 files changed, 75 insertions(+), 31 deletions(-)
3621 commit 09f91ff6eab3d617be88e11bd17c226fa4d23aed
3622 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3623 Date: Mon Feb 8 15:45:43 2010 +0000
3625 script: Use a node when resolving an animation mode
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.
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(-)
3638 commit cc6aefad345f4490f59f33eaef6f7589de1f3f9b
3639 Author: Robert Bragg <robert@linux.intel.com>
3640 Date: Thu Jan 14 18:11:57 2010 +0000
3642 cogl path: make sure marking the clip state dirty takes affect
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.
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.
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.
3655 clutter/cogl/cogl/cogl-primitives.c | 9 ++++++++-
3656 1 file changed, 8 insertions(+), 1 deletion(-)
3658 commit 24338a7511cd09298695f0a0b51ea6a97fa6786a
3659 Author: Neil Roberts <neil@linux.intel.com>
3660 Date: Fri Feb 5 21:56:31 2010 +0000
3662 clutter-master-clock: Don't wait for a frame if time goes backwards
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.
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.
3675 http://bugzilla.o-hand.com/show_bug.cgi?id=1974
3677 clutter/clutter-master-clock.c | 11 +++++++++++
3678 1 file changed, 11 insertions(+)
3680 commit 8ac27e60707b2dfd13ba978b81421423e37ebf98
3681 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3682 Date: Mon Feb 8 10:40:39 2010 +0000
3684 test-flow-layout: Remove unneeded Stage sizing
3686 The bug with resizable stages getting a 1, 1 window on X11 has been
3689 tests/interactive/test-flow-layout.c | 1 -
3690 1 file changed, 1 deletion(-)
3692 commit 6106010b6f20980fc51d1431b623567eed10853d
3693 Merge: 4cc269a c82c94e
3694 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3695 Date: Mon Feb 8 10:34:22 2010 +0000
3697 Merge remote branch 'origin/cwiiis-stage-resize'
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
3710 commit 4cc269a4687f6ca4fcd88ada134cfa00e2b13a1a
3711 Author: Øyvind Kolås <pippin@linux.intel.com>
3712 Date: Fri Feb 5 12:32:00 2010 +0000
3716 ClutterAnimator is a class for managing the animation of multiple
3717 properties of multiple actors over time with keyframing of values.
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.
3723 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
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(-)
3738 commit c82c94e6205eda962faf5a51e663680c313be062
3739 Author: Chris Lord <chris@linux.intel.com>
3740 Date: Sun Feb 7 19:17:43 2010 +0100
3742 [stage-x11] Set the default size differently
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
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(-)
3753 commit b968defae92f3fbd5a4a762b4c817ab58989ee82
3754 Author: Chris Lord <chris@linux.intel.com>
3755 Date: Sun Feb 7 14:18:14 2010 +0100
3757 [stage] Set default size correctly
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
3764 Fixes stages that aren't user resizable and have no size set from
3767 clutter/clutter-stage.c | 3 +++
3768 clutter/x11/clutter-stage-x11.c | 4 ++--
3769 2 files changed, 5 insertions(+), 2 deletions(-)
3771 commit 8083dc418b3c2b069a9b0db9323650050a3f63b1
3772 Author: Chris Lord <chris@linux.intel.com>
3773 Date: Sat Feb 6 16:57:37 2010 +0100
3775 Revert "[x11] Don't set actor size on ConfigureNotify"
3777 This reverts commit 29cc027f069c9ad900b9044cd40075c2d17be736.
3779 I misunderstood the problem, this commit breaks resizes coming from
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(-)
3787 commit 29cc027f069c9ad900b9044cd40075c2d17be736
3788 Author: Chris Lord <chris@linux.intel.com>
3789 Date: Sat Feb 6 16:47:22 2010 +0100
3791 [x11] Don't set actor size on ConfigureNotify
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
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
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(-)
3807 commit cea9de7f047cb8c2b1d54f41ca1d77c3aff882e0
3808 Author: Chris Lord <chris@linux.intel.com>
3809 Date: Sat Feb 6 15:41:01 2010 +0100
3811 [stage] Now that get_geometry works, use it
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.
3817 clutter/clutter-stage.c | 14 ++++++--------
3818 1 file changed, 6 insertions(+), 8 deletions(-)
3820 commit 4887707bb34faca0d7ad92f6628d18345163f5e0
3821 Author: Chris Lord <chris@linux.intel.com>
3822 Date: Sat Feb 6 15:34:55 2010 +0100
3824 [stage-x11] make get_geometry always get geometry
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.
3830 This will need changing in other back-ends too.
3832 clutter/x11/clutter-stage-x11.c | 57 ++++++++++++++++-----------------------
3833 1 file changed, 23 insertions(+), 34 deletions(-)
3835 commit 27e33aa14ff5d14f6066da74922c960a037b5089
3836 Author: Chris Lord <chris@linux.intel.com>
3837 Date: Sat Feb 6 14:59:51 2010 +0100
3839 [stage] Get the current size correctly
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().
3845 clutter/clutter-stage.c | 14 ++++++++------
3846 1 file changed, 8 insertions(+), 6 deletions(-)
3848 commit be11564b556a1b1c08b7b9e7a0a94bc00c4e6550
3849 Author: Chris Lord <chris@linux.intel.com>
3850 Date: Sat Feb 6 14:04:47 2010 +0100
3852 [stage] Set minimum width/height to 1x1
3854 Whoops, to maintain the old behaviour, make sure the default minimum
3855 width/height are 1x1.
3857 clutter/clutter-stage.c | 4 ++--
3858 1 file changed, 2 insertions(+), 2 deletions(-)
3860 commit fd11d3098f0182f24666ed77973269111cb0a8f5
3861 Author: Chris Lord <chris@linux.intel.com>
3862 Date: Sat Feb 6 11:23:37 2010 +0000
3864 [stage] Add set/get_minumum_size
3866 Add two functions to set/get the minimum stage size. This takes effect
3867 when a stage is set to user resizable.
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(-)
3875 commit f973b73208bad266a2362e22e5aed1a0780d096d
3876 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3877 Date: Sat Feb 6 11:00:50 2010 +0000
3879 Add cogl-subtexture test to the Git ignore file
3882 1 file changed, 2 insertions(+), 1 deletion(-)
3884 commit e55966d675e57d516ea5aff36b03fde63d4839d3
3885 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3886 Date: Fri Feb 5 16:22:09 2010 +0000
3888 Deprecate clutter_util_next_p2()
3890 The next_p2() function should have never been publicly exposed by
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(-)
3898 commit bbaf6b233d0120e3199d779eeb2829e56ecc279b
3899 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3900 Date: Fri Feb 5 15:31:18 2010 +0000
3902 docs: Fix whitespace in the App manual stub
3904 doc/manual/clutter-manual.xml.in | 185 +++++++++++++++++---------------------
3905 1 file changed, 81 insertions(+), 104 deletions(-)
3907 commit dcdb97006b563407d43f19779ac47f0330052541
3908 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3909 Date: Fri Feb 5 14:47:39 2010 +0000
3911 build: Add suppressions file to EXTRA_DIST
3913 tests/data/Makefile.am | 2 +-
3914 1 file changed, 1 insertion(+), 1 deletion(-)
3916 commit 830f2402d4f49b7173eb7fa0bda5762a4c430c9a
3917 Merge: 1bdc3db 6b1b27d
3918 Author: Neil Roberts <neil@linux.intel.com>
3919 Date: Sat Feb 6 00:20:07 2010 +0000
3921 Merge branch 'more-texture-backends'
3923 This adds three new texture backends.
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
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.
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.
3941 commit 6b1b27d4f894cbefc90601eaf6214b55a71834b7
3942 Author: Neil Roberts <neil@linux.intel.com>
3943 Date: Sat Feb 6 00:12:10 2010 +0000
3945 cogl-bitmap: Update the format after (un)premultiplying
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
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(-)
3955 commit 191d20eb56f31786660cd04aacc710344eb8df7a
3956 Author: Neil Roberts <neil@linux.intel.com>
3957 Date: Fri Feb 5 17:03:04 2010 +0000
3959 cogl-atlas-texture: Fix a cut and paste error when getting the height
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
3966 clutter/cogl/cogl/cogl-sub-texture.c | 2 +-
3967 1 file changed, 1 insertion(+), 1 deletion(-)
3969 commit 1bdc3db9ab54316f5f313dc3e991f3a621e83586
3970 Author: Damien Lespiau <damien.lespiau@intel.com>
3971 Date: Thu Feb 4 21:10:02 2010 +0000
3973 docs: Use % for defines not #
3975 Some links to defines in the gtk-doc annotations were using '#' instead
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(-)
3983 commit 1b94cc9268e57cc49e3bac914c4b979aec955f77
3984 Author: Damien Lespiau <damien.lespiau@intel.com>
3985 Date: Wed Jan 27 16:03:28 2010 +0000
3987 docs: fix new line in the cogl xml top level document
3989 A comma in the FSF address is wrong. Supreme Offence.
3991 doc/reference/cogl/cogl-docs.xml.in | 3 +--
3992 1 file changed, 1 insertion(+), 2 deletions(-)
3994 commit 0ea25d661b887c27beaf0bd848dfda994d88782f
3995 Author: Emmanuele Bassi <ebassi@linux.intel.com>
3996 Date: Thu Feb 4 18:29:47 2010 +0000
3998 event: Do not generate click count for SCROLL events
4000 The ClutterScrollEvent structure does not have a click count field,
4001 so Clutter should not generate the click count for events of type
4004 clutter/clutter-main.c | 7 +++++--
4005 1 file changed, 5 insertions(+), 2 deletions(-)
4007 commit 15c6fef7e3e426764bafc316794a195a086e0d03
4008 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4009 Date: Thu Feb 4 16:49:06 2010 +0000
4011 tests: Add a Valgrind suppression file
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.
4018 tests/README | 35 ++++++-
4019 tests/data/clutter-1.0.suppressions | 173 +++++++++++++++++++++++++++++++++++
4020 2 files changed, 203 insertions(+), 5 deletions(-)
4022 commit 1f70da62a73e3a10fe1ceb33d11f79fc29586fcf
4023 Author: Neil Roberts <neil@linux.intel.com>
4024 Date: Thu Feb 4 16:28:29 2010 +0000
4026 glx: Create a colormap for the dummy window
4028 Otherwise X will fail to create the window and throw a BadMatch error
4031 clutter/glx/clutter-backend-glx.c | 7 ++++++-
4032 1 file changed, 6 insertions(+), 1 deletion(-)
4034 commit 466b00a8064ad09f0574f8f46c6df0390d7c7d00
4035 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4036 Date: Thu Feb 4 13:59:39 2010 +0000
4038 glx: Clarify *why* we need the dummy window
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
4046 clutter/glx/clutter-backend-glx.c | 6 ++++++
4047 1 file changed, 6 insertions(+)
4049 commit ea5e33cf3a38edddef88ec30131c35bb8ab4bfaf
4050 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4051 Date: Thu Feb 4 13:56:33 2010 +0000
4053 glx: Do not leak a XVisualInfo
4055 The XVisualInfo we retrieve for the dummy window should be freed after
4058 clutter/glx/clutter-backend-glx.c | 2 ++
4059 1 file changed, 2 insertions(+)
4061 commit e6a3b6ebe75a2c0c3709fbe12cf04c4357b54fdd
4062 Author: Neil Roberts <neil@linux.intel.com>
4063 Date: Wed Feb 3 23:08:30 2010 +0000
4065 cogl-texture: Avoid copying the bitmap when premultiplying from a file
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.
4072 clutter/cogl/cogl/cogl-texture.c | 23 ++++++++++++++++++-----
4073 1 file changed, 18 insertions(+), 5 deletions(-)
4075 commit 59198b8ab8a6a7c1c3dbfa5c72abf36f8d66c543
4076 Author: Neil Roberts <neil@linux.intel.com>
4077 Date: Wed Feb 3 22:54:44 2010 +0000
4079 cogl-texture: Split out _cogl_texture_prepare_for_upload
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.
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(-)
4095 commit 5063f4669c2c94d7288405005f4df14e73a4f578
4096 Author: Neil Roberts <neil@linux.intel.com>
4097 Date: Wed Feb 3 19:54:12 2010 +0000
4099 cogl-atlas: Make the cogl_atlas_* API internal
4101 This just adds an underscore to every entry point for the CoglAtlas
4102 API so that it's not exported.
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(-)
4110 commit cd3c5155d879782a6e6e1d7fa56043e03712b727
4111 Author: Jussi Kukkonen <jku@linux.intel.com>
4112 Date: Wed Feb 3 17:04:38 2010 +0000
4114 text: implement del_word_next/del_word_prev()
4116 Bind ctrl-backspace and ctrl-del to functions that delete a word before
4117 or after the cursor, respectively.
4119 Selection does not affect the deletion, but current selection is
4120 preserved. This mimicks GTK+ functionality in GtkTextView and GtkEntry.
4122 http://bugzilla.openedhand.com/show_bug.cgi?id=1767
4124 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
4126 clutter/clutter-text.c | 95 ++++++++++++++++++++++++++++++++++++++++++++++++
4127 1 file changed, 95 insertions(+)
4129 commit d8d728a8d7ac4bc56f058379d76f4539d01189de
4130 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4131 Date: Wed Dec 9 00:50:33 2009 +0000
4133 Remove the SDL backend
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.
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(-)
4152 commit ae188d203c63d680dc58ba1e19f333719a6916d4
4153 Author: Neil Roberts <neil@linux.intel.com>
4154 Date: Wed Jan 20 16:41:25 2010 +0000
4156 win32: Use a dummy window to support delayed stage creation
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.
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(-)
4169 commit 479fdffc7d4f37f9ff104403dd7de685df97e0d5
4170 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4171 Date: Sun Dec 6 18:56:14 2009 +0000
4173 glx: Fix error messages and debug notes
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.
4179 clutter/glx/clutter-backend-glx.c | 31 +++++++++++++++++++------------
4180 1 file changed, 19 insertions(+), 12 deletions(-)
4182 commit ede2cbfab05035247b2a6a2ca837cb8f71871c5d
4183 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4184 Date: Thu Dec 3 21:07:45 2009 +0000
4186 stage: Create the default stage on demand
4188 Instead of creating the default stage during initialization we can
4189 now safely create it whenever clutter_stage_get_default() is called.
4191 To maintain the invariant, the default stage is immediately realized
4194 clutter/clutter-main.c | 28 ----------------------------
4195 clutter/clutter-stage.c | 15 ++++++++++-----
4196 2 files changed, 10 insertions(+), 33 deletions(-)
4198 commit d2c091e62d4b9e897e8f8ef5de99f20417cc6682
4199 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4200 Date: Thu Dec 3 20:49:54 2009 +0000
4202 glx: Create the dummy Window with the GLX context
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.
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
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.
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(-)
4220 commit 5eb6fb74b660d22e7f31867b16997ee9f63bef4b
4221 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4222 Date: Thu Dec 3 20:48:55 2009 +0000
4224 feature: Make sure we have a GL context
4226 Before asking Cogl and ClutterBackend for the list of features we must
4227 have a GL backend ready.
4229 clutter/clutter-feature.c | 3 +++
4230 1 file changed, 3 insertions(+)
4232 commit a8daaa8222c9b4aaf7e46b1bb13a2ce8097153f1
4233 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4234 Date: Thu Dec 3 20:47:48 2009 +0000
4236 stage: Move default title in Stage.init
4238 The default title should be set from within clutter_stage_init(); at
4239 that point clutter_init() must have been called.
4241 clutter/clutter-main.c | 2 --
4242 clutter/clutter-stage.c | 1 +
4243 2 files changed, 1 insertion(+), 2 deletions(-)
4245 commit 38f26634eec3c81d61bb3b88b24563d7e4719f67
4246 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4247 Date: Thu Dec 3 17:36:03 2009 +0000
4249 Lazily create the Pango fontmap
4251 The Pango fontmap needed by Clutter should be initialized the first
4252 time we need a PangoContext, not on initialization.
4254 clutter/clutter-main.c | 35 ++++++++++++++++-------------------
4255 1 file changed, 16 insertions(+), 19 deletions(-)
4257 commit 6fbed66add4b8c03a0ba0f4edc1c2f0044608998
4258 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4259 Date: Thu Dec 3 17:13:44 2009 +0000
4261 Delay default stage creation
4263 The default stage creation should be delayed as much as possible,
4264 ideally at the end of the init() process.
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(-)
4274 commit 3191ea1195d5e1d55facc147760b273efca76867
4275 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4276 Date: Thu Dec 3 17:35:19 2009 +0000
4278 cogl-debug: Remove redundant newlines
4280 The debugging notes wrapping g_debug() already have an implicit newline
4281 at the end of the passed message.
4283 clutter/cogl/cogl/cogl-handle.h | 8 ++++----
4284 1 file changed, 4 insertions(+), 4 deletions(-)
4286 commit 16a5911cff90a2bba1b283ccd9a9ce6d0f435924
4287 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4288 Date: Wed Feb 3 15:05:37 2010 +0000
4290 tests: Clean up the cairo-flowers interactive test
4292 tests/interactive/test-clutter-cairo-flowers.c | 14 ++++++--------
4293 1 file changed, 6 insertions(+), 8 deletions(-)
4295 commit cb52581a24c157e2bedb74c32d522dc56d9a91a2
4296 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4297 Date: Wed Feb 3 14:35:45 2010 +0000
4299 text: Add :font-description
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.
4306 http://bugzilla.openedhand.com/show_bug.cgi?id=1960
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(-)
4313 commit 74c0170ccc80504018f2aab849a6a311c64052a6
4314 Author: Neil Roberts <neil@linux.intel.com>
4315 Date: Wed Feb 3 14:31:12 2010 +0000
4317 cogl-vertex-buffer: Refix disabling texture coord arrays
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.
4329 clutter/cogl/cogl/cogl-vertex-buffer.c | 2 +-
4330 1 file changed, 1 insertion(+), 1 deletion(-)
4332 commit 301863d43bc79e792f8fe3ea5e9185d87cb74069
4333 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4334 Date: Tue Feb 2 17:07:22 2010 +0000
4336 text: Fixes for selection bound
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
4343 Also, some freeze_notify() are called too early, leading to decoupling
4344 from their respective thaw_notify().
4346 http://bugzilla.openedhand.com/show_bug.cgi?id=1955
4348 clutter/clutter-text.c | 44 +++++++++++++++++++-------------------------
4349 1 file changed, 19 insertions(+), 25 deletions(-)
4351 commit 5bec49aea931e6835b97e549e23458a6214548ce
4352 Author: Kristian Høgsberg <krh@bitplanet.net>
4353 Date: Wed Jan 27 12:55:18 2010 -0500
4355 Use ClutterTimeline in test-clutter-cairo-flowers.c
4357 http://bugzilla.openedhand.com/show_bug.cgi?id=1969
4358 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
4360 tests/interactive/test-clutter-cairo-flowers.c | 24 +++++++++++++++++-------
4361 1 file changed, 17 insertions(+), 7 deletions(-)
4363 commit c9a6e63fa4d1d710d9efeb850f3fc336933ee2a8
4364 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4365 Date: Tue Feb 2 14:50:03 2010 +0000
4367 docs: Clarify Group's sizing semantics
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
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.
4379 Based on a patch by: Neil Roberts <neil@linux.intel.com>
4381 clutter/clutter-group.c | 16 ++++++++++++----
4382 1 file changed, 12 insertions(+), 4 deletions(-)
4384 commit 12b004b0e7e13ca64d7d35cd3fe083f582b7aa09
4385 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4386 Date: Tue Feb 2 12:56:04 2010 +0000
4388 tests: Add an initial Behaviour conformance suite
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.
4394 This initial test suite just verifies the BehaviourOpacity sub-class,
4395 but it already bumps up the overall coverage by 2%.
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(+)
4403 commit f94e6911510b5376dd490c1f8724e616aaf2e5dc
4404 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4405 Date: Tue Feb 2 12:54:51 2010 +0000
4407 behaviour: Clean up BehaviourOpacity
4409 • Use a consistent coding style
4411 • Call set_bounds() from set_property(), because we need proper
4412 notification on the modified property
4414 clutter/clutter-behaviour-opacity.c | 56 ++++++++++++++++++++---------------
4415 1 file changed, 32 insertions(+), 24 deletions(-)
4417 commit 521d71d4bc4ca4b06343365c71c9520b1ebfdc7f
4418 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4419 Date: Mon Feb 1 15:47:50 2010 +0000
4421 event: Unify the off-stage motion events delivery behaviour
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.
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.
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.
4437 clutter/clutter-main.c | 40 ++++++++++++++++++++++++++++++++++------
4438 1 file changed, 34 insertions(+), 6 deletions(-)
4440 commit 46d6697b9170ba110439cbf61d152890b35a3837
4441 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4442 Date: Mon Feb 1 14:53:13 2010 +0000
4444 build: -Wformat is required for -Wformat-security
4446 GCC will ignore -Wformat-security without -Wformat on the same compiler
4449 configure.ac | 4 ++--
4450 1 file changed, 2 insertions(+), 2 deletions(-)
4452 commit 157a0cf9364a9e60b29e5e88ca1783d9e174a635
4453 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4454 Date: Mon Feb 1 14:48:50 2010 +0000
4456 build: Retrieve X11 cflags and libraries
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.
4461 This should also fix the issue with non-canonical installations of the
4462 X11 headers and shared objects.
4464 http://bugzilla.openedhand.com/show_bug.cgi?id=1966
4466 configure.ac | 5 +++++
4467 1 file changed, 5 insertions(+)
4469 commit 145cc9d3dfd1dc51f254eefde35042fc20a6375e
4470 Merge: aa6731e 5f1c8a1
4471 Author: Neil Roberts <neil@linux.intel.com>
4472 Date: Mon Feb 1 13:37:19 2010 +0000
4474 Merge remote branch 'master' into texture-debugging
4477 clutter/cogl/cogl/cogl-context.h
4479 commit aa6731e338a88d03e718980604ac8f2393391a9f
4480 Author: Neil Roberts <neil@linux.intel.com>
4481 Date: Mon Feb 1 13:25:19 2010 +0000
4483 cogl-material: Compare GL texture numbers for material layer textures
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.
4489 clutter/cogl/cogl/cogl-material.c | 25 ++++++++++++++++++++++++-
4490 1 file changed, 24 insertions(+), 1 deletion(-)
4492 commit abe91784c4ba98417eabe0649bf73381afbd6fc7
4493 Author: Neil Roberts <neil@linux.intel.com>
4494 Date: Mon Feb 1 12:11:58 2010 +0000
4496 cogl: Let GL do the format conversion when uploading texture data
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.
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
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(-)
4517 commit e83ffb1fa3436bf1506c32856b2a3ba23254e068
4518 Author: Neil Roberts <neil@linux.intel.com>
4519 Date: Fri Jan 29 15:15:08 2010 +0000
4521 cogl: Do the premult conversion in-place rather than copying to a new buffer
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
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(-)
4543 commit 72fba19eac68ffa30c3f60aeecfdbfa6a2da7bd4
4544 Author: Neil Roberts <neil@linux.intel.com>
4545 Date: Fri Jan 29 12:19:42 2010 +0000
4547 cogl-atlas-texture: Use a single atlas for both RGB and RGBA textures
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.
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(-)
4560 commit ad6bd2ee88770c2ce86f81f7a64b6b121c3418d6
4561 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4562 Date: Mon Feb 1 12:18:10 2010 +0000
4564 actor: Reword the allocation cycle warning
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".
4570 clutter/clutter-actor.c | 2 +-
4571 1 file changed, 1 insertion(+), 1 deletion(-)
4573 commit 5f1c8a17e4f81ead1747b47939d593c80246bf06
4574 Merge: ecbb7ce 8a4b647
4575 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4576 Date: Mon Feb 1 11:26:56 2010 +0000
4578 Merge branch 'device-manager'
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
4603 commit ecbb7ce41a1a759e246fce07f146b8bed5e3d730
4604 Author: Alejandro Piñeiro <apinheiro@igalia.com>
4605 Date: Mon Jan 25 16:13:58 2010 +0100
4607 Fix problems with "position" and "selection-bound" change notification
4609 Added a "selection-bound" notify on clutter_text_clear_selection as it
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
4616 Added g_object_[freeze/thaw]_notify in other functions that changes
4617 both cursor position and selection bound
4619 Solves http://bugzilla.openedhand.com/show_bug.cgi?id=1955
4621 clutter/clutter-text.c | 77 +++++++++++++++++++++++++++++++++---------------
4622 1 file changed, 53 insertions(+), 24 deletions(-)
4624 commit 579a9a2665b402405820585dacba137984700110
4625 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4626 Date: Mon Feb 1 11:04:59 2010 +0000
4628 stage: Add :key-focus property
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
4636 http://bugzilla.openedhand.com/show_bug.cgi?id=1956
4638 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
4640 clutter/clutter-stage.c | 30 +++++++++++++++++++++++++++++-
4641 1 file changed, 29 insertions(+), 1 deletion(-)
4643 commit 95712f9897db7f06a6ca34661f20b388dd5a5f77
4644 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4645 Date: Fri Jan 29 10:13:57 2010 +0000
4647 docs: Update the README
4649 Clean up the grammar and some wrinkles in the text.
4651 README | 91 +++++++++++++++++++++++++++++++++++++++++-----------------------
4652 1 file changed, 58 insertions(+), 33 deletions(-)
4654 commit 5b9259ba807f4151d08bf2ea868c2cdeed97e975
4655 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4656 Date: Fri Jan 29 09:31:13 2010 +0000
4658 docs: Update the configure switches in the README
4660 README | 13 ++++++++++++-
4661 1 file changed, 12 insertions(+), 1 deletion(-)
4663 commit 763fcabd8b287445d32eadb6086b0438e3962294
4664 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4665 Date: Fri Jan 29 09:29:53 2010 +0000
4667 build: Warn with --disable-conformance and --enable-gcov
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.
4672 configure.ac | 9 +++++++--
4673 1 file changed, 7 insertions(+), 2 deletions(-)
4675 commit 21d21adbc45a6e0023e4a21b357fbf392b469fb2
4676 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4677 Date: Fri Jan 29 09:29:37 2010 +0000
4679 Remove tabs from configure.ac
4681 configure.ac | 51 ++++++++++++++++++++++++++++-----------------------
4682 1 file changed, 28 insertions(+), 23 deletions(-)
4684 commit 5f5f6d825f6460f532f0c0448fc403cdb95e4697
4685 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4686 Date: Fri Jan 29 09:26:47 2010 +0000
4688 build: Allow disabling the conformance test suite
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
4694 configure.ac | 14 +++++++++++++-
4695 tests/Makefile.am | 25 ++++++++++++++++++++-----
4696 2 files changed, 33 insertions(+), 6 deletions(-)
4698 commit 7a1ebcbced45c21937c4407e28274fdb4a92af52
4699 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4700 Date: Wed Jan 27 21:26:26 2010 +0000
4702 Whitespace fixes in cogl-util
4704 clutter/cogl/cogl/cogl-util.c | 6 +++---
4705 1 file changed, 3 insertions(+), 3 deletions(-)
4707 commit 578e83e463d4d681de27f1b4e5d64dea8161f0f7
4708 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4709 Date: Wed Jan 27 21:16:28 2010 +0000
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(-)
4718 commit 2d5eeba5d89c129f991f367f0e80c3a152f19e52
4719 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4720 Date: Wed Jan 27 21:14:43 2010 +0000
4722 docs: Fixes for TimeoutPool and Frame sources
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
4728 clutter/clutter-frame-source.c | 25 +++++++++++++------------
4729 clutter/clutter-timeout-pool.c | 8 +-------
4730 2 files changed, 14 insertions(+), 19 deletions(-)
4732 commit 046a4b80476794bebdfd9005c826a64b7c8c9f81
4733 Author: Neil Roberts <neil@linux.intel.com>
4734 Date: Fri Jan 22 18:14:57 2010 +0000
4736 cogl: Use the colours of COGL_DEBUG=rectangles to debug batching
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.
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(-)
4750 commit 92a375ab47296a81d739ca29b0972c7abe6eda16
4751 Author: Neil Roberts <neil@linux.intel.com>
4752 Date: Tue Jan 26 13:46:27 2010 +0000
4754 cogl-vertex-buffer: Fix disabling the texture arrays from previous prim
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.
4766 Thanks to Jon Mayo for reporting the bug.
4768 http://bugzilla.openedhand.com/show_bug.cgi?id=1957
4770 clutter/cogl/cogl/cogl-vertex-buffer.c | 2 +-
4771 1 file changed, 1 insertion(+), 1 deletion(-)
4773 commit f288eae0fc454876c2beb87b1205681a338d7f65
4774 Author: Neil Roberts <neil@linux.intel.com>
4775 Date: Wed Jan 27 12:06:22 2010 +0000
4777 docs: Add some notes about the CoglPixelFormat enums
4779 The pixel format enums didn't explain what order in memory the
4780 components should be so it was difficult to use them.
4782 clutter/cogl/cogl/cogl-types.h | 22 +++++++++++++++++++---
4783 1 file changed, 19 insertions(+), 3 deletions(-)
4785 commit da392e24a55ad34bdc8fe9ac0841eca574f76194
4786 Author: Neil Roberts <neil@linux.intel.com>
4787 Date: Wed Jan 27 11:02:34 2010 +0000
4789 docs: Fix some of the examples for the animation docs
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.
4795 There were some other minor problems with the behaviours example which
4796 would cause it not to compile.
4798 doc/reference/clutter/clutter-animation-tutorial.xml | 11 +++++------
4799 1 file changed, 5 insertions(+), 6 deletions(-)
4801 commit 52cb54f5fa665fdf06270fc58121617b44877639
4802 Author: Damien Lespiau <damien.lespiau@intel.com>
4803 Date: Tue Jan 26 18:47:25 2010 +0000
4805 cogl: Fix checks of the number of available texture units
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
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.
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(-)
4821 commit 87d19b8d182c2524a5d3c30921fe2c3d4d120606
4822 Author: Damien Lespiau <damien.lespiau@intel.com>
4823 Date: Sun Nov 15 20:17:47 2009 +0000
4825 cogl: Fix gl equivalent of blend string
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
4836 doc/reference/cogl/blend-strings.xml | 9 ++++-----
4837 1 file changed, 4 insertions(+), 5 deletions(-)
4839 commit afb30f4013fdcb58ee35af919fdb739ab587683c
4840 Author: Damien Lespiau <damien.lespiau@intel.com>
4841 Date: Wed Nov 18 01:13:11 2009 +0000
4843 tests: blend-string: use g_assert_cmpint
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.
4849 tests/conform/test-cogl-blend-strings.c | 6 +++---
4850 1 file changed, 3 insertions(+), 3 deletions(-)
4852 commit de31cbf4f7932f8d48583a476c5af9f6eed6adbd
4853 Author: Damien Lespiau <damien.lespiau@intel.com>
4854 Date: Tue Jan 26 16:59:50 2010 +0000
4856 test-cogl-multitexture: use several materials with texture matrices
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!
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.
4866 While at it, changed the rotation behaviour by an implicit animation
4867 with a small additional bonus bling.
4869 tests/interactive/test-cogl-multitexture.c | 143 ++++++++++++++++++++--------
4870 1 file changed, 102 insertions(+), 41 deletions(-)
4872 commit 06d8ebb0ba2d468d492eeb94dede095a14eec909
4873 Author: Damien Lespiau <damien.lespiau@intel.com>
4874 Date: Sun Nov 15 19:54:17 2009 +0000
4876 cogl: Create CoglTextureUnit with its associated unit number
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:
4884 http://bugzilla.openedhand.com/show_bug.cgi?id=1958
4886 clutter/cogl/cogl/cogl.c | 5 +++--
4887 1 file changed, 3 insertions(+), 2 deletions(-)
4889 commit 8fc07c51a9c71aec77e4b76416ffedc72da309e2
4890 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4891 Date: Thu Jan 21 17:41:10 2010 +0000
4893 actor: Use GParamSpecUint for :opacity
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.
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
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
4911 clutter/clutter-actor.c | 18 +++++++++---------
4912 1 file changed, 9 insertions(+), 9 deletions(-)
4914 commit d0f7debfba4879c3df20c0067789b063e18d93ce
4915 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4916 Date: Fri Jan 22 21:44:28 2010 +0000
4918 test-easing: Do not reconnect signals multiple times
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.
4923 tests/interactive/test-easing.c | 6 +++++-
4924 1 file changed, 5 insertions(+), 1 deletion(-)
4926 commit 7073e69b4e504ddbaffad4a6139e93ddbd40b9f8
4927 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4928 Date: Fri Jan 22 21:42:55 2010 +0000
4930 animation: Verify internal state
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.
4936 clutter/clutter-animation.c | 4 ++++
4937 1 file changed, 4 insertions(+)
4939 commit 8daa3035e563870fc614813fd6329c63542b129e
4940 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4941 Date: Fri Jan 22 21:42:10 2010 +0000
4943 docs: Fix the Animation:object property
4945 There is a typo in the Animation:object property gtk-doc declaration.
4947 clutter/clutter-animation.c | 2 +-
4948 1 file changed, 1 insertion(+), 1 deletion(-)
4950 commit 0788aa43b29454efed3f60160b87881a1c84f603
4951 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4952 Date: Fri Jan 22 21:41:33 2010 +0000
4954 animation: Add more debug annotations
4956 We need some better tracking of the Animation's lifetime.
4958 clutter/clutter-animation.c | 16 ++++++++++++++--
4959 1 file changed, 14 insertions(+), 2 deletions(-)
4961 commit 7fa7c4a1b621eff0533ff70b1b6c9be001f62e2a
4962 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4963 Date: Fri Jan 22 21:36:41 2010 +0000
4965 animation: Transform if necessary
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:
4972 if (compatible (type (A), type (A')))
4975 if (transformable (type (A), type (A')))
4978 error("Unable to trasform type A in A'");
4980 The transformation might still fail, so we need to check for errors
4981 there as well as a fall-through case.
4983 clutter/clutter-animation.c | 42 ++++++++++++++++++++++--------------------
4984 1 file changed, 22 insertions(+), 20 deletions(-)
4986 commit 94249efff7ec46bbeaac04800d5a9a30c05dcde3
4987 Author: Emmanuele Bassi <ebassi@linux.intel.com>
4988 Date: Fri Jan 22 21:33:28 2010 +0000
4990 animation: Check for value transformability
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'.
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.
5000 clutter/clutter-animation.c | 29 ++++++++++++++++++++---------
5001 1 file changed, 20 insertions(+), 9 deletions(-)
5003 commit 996614cfaf582bbfbf86874a95b4a7eef3c50630
5004 Author: Neil Roberts <neil@linux.intel.com>
5005 Date: Thu Jan 21 15:34:19 2010 +0000
5007 cogl-atlas-texture: Add a debug option to disable the atlas
5009 If the user specifies the 'disable-atlas' debug option then no texture
5010 will be put in the atlas.
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(-)
5017 commit 4695383281d4b74baa10d78253a27b2eb541eef3
5018 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5019 Date: Fri Jan 22 00:06:17 2010 +0000
5021 build: Use no-define
5023 We don't need the PACKAGE and VERSION defines in the config.h.
5026 1 file changed, 1 insertion(+), 1 deletion(-)
5028 commit f7e7985344420caf4897777ced6f04cddb7052ee
5029 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5030 Date: Thu Jan 21 23:57:38 2010 +0000
5032 build: Add no-portability option to automake
5034 We require the GNU version of make for some of our rules, and it's been
5038 1 file changed, 1 insertion(+), 1 deletion(-)
5040 commit a545f66a5c34b66d1a31387105d114ca3edd3a46
5041 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5042 Date: Thu Jan 21 23:41:18 2010 +0000
5044 master clock: Improve the timeline advancement protection
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.
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.
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
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.
5065 clutter/clutter-master-clock.c | 39 +++++++++++++++++++++++++++------------
5066 1 file changed, 27 insertions(+), 12 deletions(-)
5068 commit 8a4b64715486699dd8d0ea2146d0adea37d2a6c7
5069 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5070 Date: Wed Jan 20 19:40:58 2010 +0000
5072 x11: Re-enable XI1 extension keyboards
5074 The extension keyboard support in XInput 1.x is hopelessly broken.
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.
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(-)
5086 commit 94f9f3bd9345d8eb1551c429615473134e3f4e8f
5087 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5088 Date: Fri Jan 15 16:28:00 2010 +0000
5090 x11: Always handle core device events before XI events
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.
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.
5100 Note: this is going away with XI2, which completely replaces both core and
5103 clutter/x11/clutter-event-x11.c | 499 ++++++++++++++++++---------------------
5104 1 file changed, 224 insertions(+), 275 deletions(-)
5106 commit dc39e9eff9de0797086ea1a505855724296981f7
5107 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5108 Date: Fri Jan 15 15:29:52 2010 +0000
5110 docs: Documentation fixes for DeviceManager
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(-)
5117 commit 65c7ff7d05389a10eed1d881ca572082f03932fe
5118 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5119 Date: Fri Jan 15 15:29:14 2010 +0000
5121 device-manager: Fix the signals definition
5123 Add documentation for the signals, as well as using the correct type for
5126 clutter/clutter-device-manager.c | 26 +++++++++++++++++++++++---
5127 1 file changed, 23 insertions(+), 3 deletions(-)
5129 commit 0b47acf60b46b64ae838471765d86e1c65c01cc0
5130 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5131 Date: Fri Jan 15 14:56:43 2010 +0000
5133 docs: Add sections for InputDevice and DeviceManager
5135 doc/reference/clutter/clutter-docs.xml.in | 2 ++
5136 1 file changed, 2 insertions(+)
5138 commit 8ead5abba0ebe9c5b5c1b749bb28f7879d63aa49
5139 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5140 Date: Fri Jan 15 14:42:19 2010 +0000
5142 docs: Add clutter_input_device_get_device_name()
5144 doc/reference/clutter/clutter-sections.txt | 1 +
5145 1 file changed, 1 insertion(+)
5147 commit 1f5a7b61b761bf8426b1229c481574c273a5964f
5148 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5149 Date: Fri Jan 15 12:24:21 2010 +0000
5151 tests: Print out the device details on motion
5153 The test-device interactive test should print out the device name and id
5154 when it detects a motion event.
5156 tests/interactive/test-devices.c | 31 ++++++++++++++++++++++++++++++-
5157 1 file changed, 30 insertions(+), 1 deletion(-)
5159 commit d8e167f1519499a27ee04a9a0d167b5ffed3ce8e
5160 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5161 Date: Fri Jan 15 12:22:29 2010 +0000
5163 Always register core devices
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.
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(-)
5175 commit e0b8d631593c0539c47de0158d5425391d7cdbc0
5176 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5177 Date: Fri Jan 15 11:52:27 2010 +0000
5179 device: Remove unused is_default member
5181 The is_default member of the InputDevice structure was not used
5184 clutter/clutter-private.h | 2 --
5185 clutter/x11/clutter-backend-x11.c | 11 ++---------
5186 2 files changed, 2 insertions(+), 11 deletions(-)
5188 commit 74dbcede25c9dee5b40cb057a26263d580800e7e
5189 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5190 Date: Fri Jan 15 11:47:05 2010 +0000
5192 win32: Experimental implementation of device support
5194 Mostly lifted from the core pointer and keyboard X11 backend support.
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.
5200 Thanks to: Samuel Degrande <Samuel.Degrande@lifl.fr> for testing this
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(-)
5208 commit 850dd5a38fe17e82b16e19144db4ac516e349dbb
5209 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5210 Date: Fri Jan 15 11:40:01 2010 +0000
5212 tests: Print the device name, as well as its Id
5214 The test-devices interactive test should display the device name along
5217 tests/interactive/test-devices.c | 3 ++-
5218 1 file changed, 2 insertions(+), 1 deletion(-)
5220 commit 66740e8000ea92b04da663a0d2ce890271d2af2f
5221 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5222 Date: Fri Jan 15 11:38:58 2010 +0000
5224 x11: Fill out the :name property of the InputDevices
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.
5229 clutter/x11/clutter-backend-x11.c | 5 ++++-
5230 clutter/x11/clutter-event-x11.c | 9 ++++++---
5231 2 files changed, 10 insertions(+), 4 deletions(-)
5233 commit cf4e05930a1243f9b58617a4a50833d5bab705b1
5234 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5235 Date: Fri Jan 15 11:37:43 2010 +0000
5237 device: Add the :name property to InputDevice
5239 The InputDevice should have a name, possibly user readable, coming from
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(-)
5247 commit 79ad2b6a72bd91273e139e72af36d9b6db264001
5248 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5249 Date: Fri Jan 15 11:21:52 2010 +0000
5251 x11: Store core devices on the X11 Backend singleton
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.
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(-)
5263 commit 8a579838d54d2b6f552fd32d9772f6e04f178179
5264 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5265 Date: Thu Jan 14 17:14:33 2010 +0000
5267 device: Unset the cursor actor when leaving the stage
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).
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.
5276 clutter/clutter-input-device.c | 43 ++++++++++++++++++++++++++--------------
5277 1 file changed, 28 insertions(+), 15 deletions(-)
5279 commit 55e4315aa5889185a055f3ab2d5b5d4c9cae4dc4
5280 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5281 Date: Tue Jan 12 11:53:12 2010 +0000
5283 device: Add pointer actor getter
5285 ClutterInputDevice should have a getter method for retrieving the
5286 reactive actor underneath the pointer.
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(-)
5293 commit 25c6ebbb2c70af7f268036b10dcd8d4a965c34c3
5294 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5295 Date: Wed Dec 9 00:03:13 2009 +0000
5297 x11: Discard the LeaveNotify for off-stage ButtonRelease
5299 If the user presses a button on a pointer device and then moves out the
5300 Stage X11 will emit the following events:
5302 LeaveNotify ➔ MotionNotify ... ➔ ButtonRelease ➔ LeaveNotify
5304 The second LeaveNotify differs from the first by the state field.
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.
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
5316 clutter/x11/clutter-event-x11.c | 58 +++++++++++++++++++++++----------------
5317 1 file changed, 34 insertions(+), 24 deletions(-)
5319 commit 8736b53d7cc6fd2b53649c076ef09cb69f9b37d6
5320 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5321 Date: Wed Dec 9 00:01:50 2009 +0000
5323 device: Do not overwrite the stage for an InputDevice
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.
5329 clutter/clutter-stage.c | 1 -
5330 1 file changed, 1 deletion(-)
5332 commit cf287db2048eae5eaa58a9cbffd42c703f345ff5
5333 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5334 Date: Wed Dec 9 00:00:49 2009 +0000
5336 event: Off-stage button releases have a click count of 1
5338 The ButtonRelease off-stage should not have a click count of 0 but a
5339 click count initialized to 1.
5341 clutter/clutter-main.c | 1 +
5342 1 file changed, 1 insertion(+)
5344 commit bddabf6d2ca100f4d91461129d4bb097c59ac666
5345 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5346 Date: Tue Dec 8 23:59:56 2009 +0000
5348 event: Scroll events do not have click count
5350 Remove the unneeded CLUTTER_SCROLL case from the click count checks.
5352 clutter/clutter-main.c | 1 -
5353 1 file changed, 1 deletion(-)
5355 commit e30856a54d5d1e012cd2de30e519a487fd0b4f46
5356 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5357 Date: Tue Dec 8 18:33:01 2009 +0000
5359 Whitespace and indentation fixes
5361 clutter/x11/clutter-event-x11.c | 24 ++++++++++++------------
5362 1 file changed, 12 insertions(+), 12 deletions(-)
5364 commit 0f9cfd9911c21933b34c07a9616f79022bcc01e3
5365 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5366 Date: Mon Dec 7 23:13:52 2009 +0000
5368 event: Clean up click-count detection
5370 Avoid a few indirections and direct access to the Event and InputDevice
5373 clutter/clutter-main.c | 65 +++++++++++++++++++++++++++++++++---------------
5374 1 file changed, 45 insertions(+), 20 deletions(-)
5376 commit cf8a06f0186e44b3437b06c56c088e8dc465402b
5377 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5378 Date: Mon Dec 7 23:05:20 2009 +0000
5380 device: Store the current state, not the previous
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
5387 clutter/clutter-input-device.c | 34 +++++++++++++++++-----------------
5388 clutter/clutter-private.h | 7 +++++++
5389 2 files changed, 24 insertions(+), 17 deletions(-)
5391 commit 68b47e3ed479242a94f7a8d302a2900f7e28c840
5392 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5393 Date: Mon Dec 7 23:02:48 2009 +0000
5395 tests: Fix test-events output
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).
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.
5405 tests/interactive/test-events.c | 16 +++++++++++-----
5406 1 file changed, 11 insertions(+), 5 deletions(-)
5408 commit b3a42c3b09e256732395f7c63c4a39956d32d3da
5409 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5410 Date: Mon Dec 7 18:38:18 2009 +0000
5412 docs: Update the API reference
5414 Add the new symbols for InputDevice and DeviceManager
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(-)
5422 commit 130286979d04128b51fa8662aa13b6bbd1867ca2
5423 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5424 Date: Tue Nov 24 17:54:02 2009 +0000
5426 Do not pick when motion event delivery is disabled
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.
5432 clutter/clutter-device-manager.c | 7 +++++++
5433 1 file changed, 7 insertions(+)
5435 commit 687c70dffa70a3256e9f734b090cb4a088e97bb1
5436 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5437 Date: Tue Nov 24 16:33:03 2009 +0000
5439 Rework the emission of LEAVE/ENTER event pairs
5441 The LEAVE/ENTER event pairs should be queued during the InputDevice
5442 update process, when we change the actor under the device pointer.
5444 This commit cleans up the event emission code inside clutter-main.c
5445 and the logic of the event processing.
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(-)
5453 commit 75f05646fa117b8096e033f9fad0ba9de1ee01ac
5454 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5455 Date: Tue Nov 24 16:31:14 2009 +0000
5457 tests: Clean up test-events
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
5463 tests/interactive/test-events.c | 101 +++++++++++++++++++++++----------------
5464 1 file changed, 60 insertions(+), 41 deletions(-)
5466 commit a056ae716442e07e50ebd07cbca030776a5b3c28
5467 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5468 Date: Tue Nov 24 16:22:44 2009 +0000
5470 Add docs and licensing notices
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(-)
5478 commit 9506510d1cf794ef530f6c4db45103efb60cca63
5479 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5480 Date: Fri Jan 8 17:51:00 2010 +0000
5482 Move all picking-related operations inside InputDevice
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
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(-)
5501 commit 1f87cac0695dc95be4ed0219752d454d9a285e50
5502 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5503 Date: Tue Nov 24 12:53:57 2009 +0000
5505 actor: Add :has-pointer property
5507 ClutterActor should be able to tell whether a pointer is within
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(-)
5515 commit d23dd9af6bf48c3c02f685505a5a34b477d4d2b3
5516 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5517 Date: Mon Nov 23 16:07:16 2009 +0000
5519 device: Make InputDevice an object and subclass it for X11
5521 ClutterInputDevice should be a type that we can subclass per-backend
5522 to add functionality.
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(-)
5537 commit d5331bfb5786b496cfcab925319711853db2f1d3
5538 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5539 Date: Fri Nov 20 16:37:58 2009 +0000
5541 tests: Update the devices test
5543 Use the DeviceManager API instead of the X11 specific API.
5545 tests/interactive/test-devices.c | 8 +++++---
5546 1 file changed, 5 insertions(+), 3 deletions(-)
5548 commit 157da20e86f88bf906f0b59bafbea171a2e5e678
5549 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5550 Date: Fri Nov 20 16:24:16 2009 +0000
5552 x11: Always assign a device to pointer and key events
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.
5558 clutter/x11/clutter-event-x11.c | 37 ++++++++++++++++++++++++++++---------
5559 1 file changed, 28 insertions(+), 9 deletions(-)
5561 commit ca16446319b6281cf63edf3b1b6d7d4f8d41e499
5562 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5563 Date: Fri Nov 20 15:43:50 2009 +0000
5565 Add :is-default flag to InputDevice
5567 clutter/clutter-private.h | 2 ++
5568 clutter/x11/clutter-backend-x11.c | 9 ++++++++-
5569 2 files changed, 10 insertions(+), 1 deletion(-)
5571 commit 3027d4327ae0c5d9bb7cc831f24d5ee5e8fb107f
5572 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5573 Date: Fri Nov 20 15:36:43 2009 +0000
5575 Port the X11 backend to the Device Manager
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.
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(-)
5588 commit d34f1aa775e8a66bd0e599b32c761869b319c639
5589 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5590 Date: Fri Nov 20 15:35:40 2009 +0000
5592 Add ClutterDeviceManager
5594 The ClutterDeviceManager is a singleton object that behaves like the
5595 StageManager: it holds all input devices and notifies on addition and
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(-)
5607 commit 1ef40b882349820d5edb2f1ed8885c3386d2cdf7
5608 Author: Neil Roberts <neil@linux.intel.com>
5609 Date: Tue Jan 19 17:14:58 2010 +0000
5611 test-cogl-npot-texture: Use the COGL_TEXTURE_NO_ATLAS flag
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.
5616 tests/conform/test-cogl-npot-texture.c | 2 +-
5617 1 file changed, 1 insertion(+), 1 deletion(-)
5619 commit 08b8b2791f91770d1a6e7aff163167d003b0fad3
5620 Author: Neil Roberts <neil@linux.intel.com>
5621 Date: Tue Jan 19 17:06:28 2010 +0000
5623 cogl-atlas-texture: Don't create atlas textures with the premult bit
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.
5631 clutter/cogl/cogl/cogl-atlas-texture.c | 3 ++-
5632 1 file changed, 2 insertions(+), 1 deletion(-)
5634 commit 14a28620ae13ef041696e2e3747ec00738cfd2bd
5635 Author: Neil Roberts <neil@linux.intel.com>
5636 Date: Fri Jan 15 22:56:37 2010 +0000
5638 win32: Use an invisible cursor when cursor-visible is FALSE
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.
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(-)
5658 commit 4db89759a0aa91b353ac0bb41562addfff6d76c9
5659 Author: Neil Roberts <neil@linux.intel.com>
5660 Date: Mon Jan 18 17:33:08 2010 +0000
5662 Post-release version bump to 1.1.7
5665 1 file changed, 1 insertion(+), 1 deletion(-)
5667 commit 07ff8d26f8097a00757e6e3cfcd587bce188ae0d
5668 Author: Neil Roberts <neil@linux.intel.com>
5669 Date: Mon Jan 18 15:44:58 2010 +0000
5671 Release Clutter 1.1.6
5673 NEWS | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
5675 2 files changed, 50 insertions(+), 1 deletion(-)
5677 commit 8daff42b3bcc9d59d7c87801b3926d8ed7c105a4
5678 Author: Neil Roberts <neil@linux.intel.com>
5679 Date: Mon Jan 18 15:43:25 2010 +0000
5681 README: Clarify the required OpenGL version
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.
5687 1 file changed, 6 insertions(+), 1 deletion(-)
5689 commit fa51ff25d3555ce938922d7bbd64acb12140a774
5690 Author: Neil Roberts <neil@linux.intel.com>
5691 Date: Mon Jan 18 13:56:56 2010 +0000
5693 Add build/mingw/{README,mingw-cross-compile.sh} to the dist tarball
5695 It's quite difficult to get git working on Windows so it makes sense
5696 to put the build instructions somewhere accessible.
5698 build/Makefile.am | 2 +-
5699 build/mingw/Makefile.am | 1 +
5701 3 files changed, 3 insertions(+), 1 deletion(-)
5703 commit ff1d9cf090aef74efa1ec04b8cd490a45b148ae4
5704 Author: Neil Roberts <neil@linux.intel.com>
5705 Date: Mon Jan 18 12:42:20 2010 +0000
5707 test-texture-fbo: Disconnect the paint handler for the stage
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.
5714 tests/conform/test-texture-fbo.c | 6 +++++-
5715 1 file changed, 5 insertions(+), 1 deletion(-)
5717 commit ce030a3fce362cf4238d361743aaf9027ceed95a
5718 Author: Neil Roberts <neil@linux.intel.com>
5719 Date: Mon Jan 18 12:35:05 2010 +0000
5721 clutter-group: Use g_list_foreach in clutter_group_real_foreach
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.
5728 clutter/clutter-group.c | 8 +++++---
5729 1 file changed, 5 insertions(+), 3 deletions(-)
5731 commit c4adefffd34d91fdf72365a6d11641f3c9f751cc
5732 Author: Neil Roberts <neil@linux.intel.com>
5733 Date: Mon Jan 18 10:53:00 2010 +0000
5735 cogl-atlas-texture: Fix premultiplied texture formats
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.
5745 clutter/cogl/cogl/cogl-atlas-texture.c | 232 ++++++++++++++++++++++----------
5746 1 file changed, 158 insertions(+), 74 deletions(-)
5748 commit b78024bd2dbf39cb86a1c1458e477af9c9353d9e
5749 Author: Neil Roberts <neil@linux.intel.com>
5750 Date: Thu Jan 14 17:57:43 2010 +0000
5752 cogl-primitives: Ensure the mipmaps for a layer before logging quads
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
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(-)
5766 commit 36f18e5ac57e068c3987d5b705f68fcc6f18d472
5767 Author: Neil Roberts <neil@linux.intel.com>
5768 Date: Mon Jan 18 09:22:04 2010 +0000
5770 cogl: Make CoglSubTexture only work for quad rendering
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.
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.
5788 There are two new texture virtual functions:
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.
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.
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(-)
5815 commit 3d373c7278c47b18576edc8c8a0074654ce4a60e
5816 Author: Samuel Degrande <Samuel.Degrande@lifl.fr>
5817 Date: Fri Nov 27 16:53:50 2009 +0100
5819 win32: Fix computation of the fullscreen size during stage realization
5821 http://bugzilla.openedhand.com/show_bug.cgi?id=1905
5823 Signed-off-by: Neil Roberts <neil@linux.intel.com>
5825 clutter/win32/clutter-stage-win32.c | 2 +-
5826 1 file changed, 1 insertion(+), 1 deletion(-)
5828 commit 12a9150f5b455e5700c745de4ad1ac5f2e43631f
5829 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5830 Date: Fri Jan 15 17:32:46 2010 +0000
5832 docs: Clarify usage of UTF-8 or ASCII art in commit messages
5835 1 file changed, 1 insertion(+), 1 deletion(-)
5837 commit ea662b9ecaf1dd956f0cdc79ce04880270bf99de
5838 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5839 Date: Fri Jan 15 17:06:56 2010 +0000
5841 docs: Display the features section
5843 The features section of the API reference is built but not used, and it
5844 has some copy-and-paste errors.
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(-)
5852 commit cdfd9eb212829df0408431673bedfbe6b566fefe
5853 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5854 Date: Fri Jan 15 14:50:06 2010 +0000
5856 Add test-cogl-texture-mipmaps to the Git ignore file
5859 1 file changed, 1 insertion(+)
5861 commit e019547e8c7d110332a9ba071737736a059f5b4b
5862 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5863 Date: Fri Jan 15 14:48:42 2010 +0000
5865 x11: Fix typo in clutter_x11_set_use_argb_visual() declaration
5867 The function should have a lowercase x11, not an uppercase X11 in its
5870 clutter/x11/clutter-x11.h | 2 +-
5871 1 file changed, 1 insertion(+), 1 deletion(-)
5873 commit 148145ea1ad24fb1ceca3229c4cae9c7c5755f75
5874 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5875 Date: Fri Jan 15 14:47:20 2010 +0000
5877 docs: Ignore clutter-profile.h
5879 doc/reference/clutter/Makefile.am | 57 +++++++++++++++++++------------------
5880 1 file changed, 29 insertions(+), 28 deletions(-)
5882 commit b844653c649277eed63b6a85d29b84aab8abe641
5883 Author: Neil Roberts <neil@linux.intel.com>
5884 Date: Mon Jan 11 16:23:38 2010 +0000
5886 cogl-texture: Fix manual repeating for negative coordinates
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.
5892 clutter/cogl/cogl/cogl-texture.c | 5 +++--
5893 1 file changed, 3 insertions(+), 2 deletions(-)
5895 commit a01b4eefceb1d490d918eba1729c87354695d1ca
5896 Author: Neil Roberts <neil@linux.intel.com>
5897 Date: Mon Jan 11 16:21:56 2010 +0000
5899 cogl-texture-2d: Fix the coordinate wrapping for negative coordinates
5901 The formula to wrap the coordinates to the [0,1] range was broken when
5902 the coordinates were negative.
5904 clutter/cogl/cogl/cogl-texture-2d.c | 4 ++--
5905 1 file changed, 2 insertions(+), 2 deletions(-)
5907 commit ead43995364bb8865ca5bab15d1bfd295578fff4
5908 Merge: 34b5093 a70ebe4
5909 Author: Neil Roberts <neil@linux.intel.com>
5910 Date: Fri Jan 15 12:15:46 2010 +0000
5912 Merge branch 'master' into more-texture-backends
5914 commit a70ebe4f52e192c11f8db6a4fa1f419a5b175ab3
5915 Author: Neil Roberts <neil@linux.intel.com>
5916 Date: Fri Jan 15 12:02:09 2010 +0000
5918 tests: Add a simple conformance test for texture mipmaps
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.
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(+)
5930 commit ba4622ff8bd1abde577fa26637fd1afec1b3abd6
5931 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5932 Date: Thu Jan 14 15:23:41 2010 +0000
5934 Add a notice of deprecation in the pre-Git ChangeLog
5936 ChangeLog.pre-git-import | 6 ++++++
5937 1 file changed, 6 insertions(+)
5939 commit 8247bdf4f9b940fe69165ae6556511fcc9ca3a5d
5940 Author: Neil Roberts <neil@linux.intel.com>
5941 Date: Tue Jan 12 21:44:40 2010 +0000
5943 cogl-framebuffer: Return gboolean from try_creating_fbo
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.
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.
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.
5961 http://bugzilla.openedhand.com/show_bug.cgi?id=1873
5963 clutter/cogl/cogl/cogl-framebuffer.c | 56 +++++++++++++++++-----------------
5964 1 file changed, 28 insertions(+), 28 deletions(-)
5966 commit c6ce9c338966188248c3c1ae7b10480205fe20bf
5967 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5968 Date: Thu Jan 14 14:07:04 2010 +0000
5970 conform: Add operators tests for ClutterColor
5972 The clutter_color_add() and clutter_color_subtract() functions are
5973 lacking unit testing to catch eventual regressions.
5976 tests/conform/test-color.c | 57 +++++++++++++++++++++++++++++++++++++
5977 tests/conform/test-conform-main.c | 1 +
5978 3 files changed, 59 insertions(+)
5980 commit 4388509a1589dbac7aae0ebe5995ca0e06f7c70c
5981 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5982 Date: Thu Jan 14 12:28:07 2010 +0000
5984 master-clock: Add profiling timers
5986 Use the newly-added profiling timers inside the master clock dispatch
5987 function to see how much time we spend:
5989 • in the whole function
5990 • in the event processing for each stage
5991 • in the timeline advancement
5993 clutter/clutter-master-clock.c | 31 +++++++++++++++++++++++++++++++
5994 1 file changed, 31 insertions(+)
5996 commit 6e82d11daf8b1d7259c26e6a0816392a71c726f3
5997 Author: Emmanuele Bassi <ebassi@linux.intel.com>
5998 Date: Wed Jan 13 17:31:13 2010 +0000
6000 units: Improve coverage of clutter_units_from_string()
6002 Add a unit for an empty string as well as units for the missing unit
6003 types like cm, mm and px.
6005 tests/conform/test-clutter-units.c | 11 +++++++++++
6006 1 file changed, 11 insertions(+)
6008 commit ed735ae730ea2140ef4d1be9d1947dbdce8b1f28
6009 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6010 Date: Wed Jan 13 16:57:55 2010 +0000
6012 Add test-cogl-multitexture to the Git ignore file
6015 1 file changed, 1 insertion(+)
6017 commit a076e0e11d222ca17dbdbadb3aa2c762d32a5730
6018 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6019 Date: Wed Jan 13 16:35:53 2010 +0000
6021 build: Add a script to format gcov report lines
6023 Instead of using echo let's try Perl and the format() built-in.
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(-)
6030 commit 948db40c875f8eb7032582a32515737be6587067
6031 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6032 Date: Mon Jan 4 14:53:03 2010 +0000
6034 Add gcov support to the build
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.
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(-)
6047 commit 5322546a4e2100bcec8aba651f8de7d849d67711
6048 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6049 Date: Wed Jan 13 15:40:36 2010 +0000
6051 build: Clean up COGL build flags
6053 clutter/cogl/cogl/Makefile.am | 53 ++++++++++++++++++++---------------------
6054 1 file changed, 26 insertions(+), 27 deletions(-)
6056 commit 18d96005ec4d1395d70d71f2bef6cc378f4afb43
6057 Author: Damien Lespiau <damien.lespiau@intel.com>
6058 Date: Mon Nov 2 17:08:55 2009 +0000
6060 texture: Remove reading the texture data back in ::unrealize()
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
6066 What's wrong with it now:
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
6075 * GL actually manages texture memory accross system/video memory
6078 For all the reasons above, let's get rid of the glReadPixel() in
6079 Texture::unrealize()
6083 clutter/clutter-texture.c | 163 +++------------------------------------------
6084 1 file changed, 8 insertions(+), 155 deletions(-)
6086 commit 778e08e4e24822b0875e6aeaf168cb5cecfc8a7f
6087 Author: Neil Roberts <neil@linux.intel.com>
6088 Date: Tue Jan 12 14:49:55 2010 +0000
6090 cogl-framebuffer: Add some missing GL defines
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.
6097 clutter/cogl/cogl/cogl-framebuffer.c | 6 ++++++
6098 1 file changed, 6 insertions(+)
6100 commit bb8352ca95f18ca5582abb97e20e78f69300adde
6101 Author: Neil Roberts <neil@linux.intel.com>
6102 Date: Tue Jan 12 14:43:36 2010 +0000
6104 cogl: Remove the CGL_* defines
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.
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(-)
6124 commit 1c6ffc8a238e5e7de429f35f7653695d91d9d26d
6125 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6126 Date: Tue Jan 12 15:44:28 2010 +0000
6128 stage: Add the delete-event signal
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
6134 The ::delete-event signal is similar in spirit to any other specialized
6135 signal handler dealing with events, and retains the same semantics.
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(-)
6142 commit 8b950bdc87fae2626af8a96916b7f51fdea40a17
6143 Author: Robert Bragg <robert@linux.intel.com>
6144 Date: Tue Jan 12 11:02:09 2010 +0000
6146 journal: Fixes logging of multiple sets of texture coordinates
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.
6153 Thanks to Gord Allott for reporting this bug.
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(-)
6161 commit bc8a80fee53c9eed17fab6d821846c1a0fa3460f
6162 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6163 Date: Mon Jan 11 17:08:42 2010 +0000
6165 text: Zero out the cursor_pos member
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.
6170 clutter/clutter-text.c | 1 +
6171 1 file changed, 1 insertion(+)
6173 commit 5c14538c1406b1358a2747428c73fe0cf1198e94
6174 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6175 Date: Mon Jan 11 17:06:52 2010 +0000
6177 Remove obsolete code from test-text
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.
6184 Right now, it makes sense to ignore this code entirely.
6186 tests/interactive/test-text.c | 26 ++------------------------
6187 1 file changed, 2 insertions(+), 24 deletions(-)
6189 commit 755cce33a729817aebe4cf5c08d97c31a327c863
6190 Author: Robert Bragg <robert@linux.intel.com>
6191 Date: Mon Nov 30 20:04:41 2009 +0000
6193 cogl: Support multiple fallbacks in cogl_offscreen_new_to_texture()
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.
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
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(-)
6212 commit 4c1231c7fe545a7764d06754d7d6be0906686e0a
6213 Author: Damien Lespiau <damien.lespiau@intel.com>
6214 Date: Wed Jan 6 11:48:46 2010 +0000
6216 media: Add an API to specify which font should be used for subtitles
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.
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(-)
6228 commit 8e9f56c41160452166be68202227b206a690472d
6229 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6230 Date: Sun Jan 10 11:35:26 2010 +0000
6232 build: Clean up private header/source files
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.
6237 Also the clutter-profile.h header is private and should not be
6240 clutter/Makefile.am | 12 ++++++++----
6241 1 file changed, 8 insertions(+), 4 deletions(-)
6243 commit d9b91d61f5730e9ce29627f467c89070b78fb6b6
6244 Author: Robert Bragg <robert@linux.intel.com>
6245 Date: Wed Nov 25 14:26:32 2009 +0000
6247 framebuffers: cogl_offscreen_new_to_texture should take a ref on the texture
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.
6253 clutter/cogl/cogl/cogl-framebuffer-private.h | 1 +
6254 clutter/cogl/cogl/cogl-framebuffer.c | 3 +++
6255 2 files changed, 4 insertions(+)
6257 commit 30b557c4653d15eeb1311b516ab1f4c0035a5e83
6258 Author: Robert Bragg <robert@linux.intel.com>
6259 Date: Fri Jul 3 16:22:35 2009 +0100
6261 profiling: Adds initial UProf accounting to Cogl
6263 This adds gives Cogl a dedicated UProf context which will be linked together
6264 with Clutter's context during clutter_init_real().
6266 Initial timers cover _cogl_journal_flush and _cogl_journal_log_quad
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.
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 ++++++++++++++++++++++++++++++++++++++
6278 6 files changed, 113 insertions(+), 1 deletion(-)
6280 commit 0b6515a1d53571fea13417d47e7bf0f4749321f8
6281 Author: Robert Bragg <robert@linux.intel.com>
6282 Date: Fri Apr 17 12:15:56 2009 +0100
6284 profiling: Allow limiting statisics just to picking
6286 This suspends and resumes all uprof timers and counters except while dealing
6287 with picking, so as to give more focused statistics.
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
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(-)
6299 commit 9cb530d42e7860d1a44f441b97910fd3903480f1
6300 Author: Robert Bragg <robert@linux.intel.com>
6301 Date: Wed Jan 6 18:15:13 2010 +0000
6303 profiling: Parse --clutter-profile and CLUTTER_PROFILE= options
6305 As we have for debugging, this adds the ability to control profiling flags
6306 either via the command line or an environment variable.
6308 The first option added is CLUTTER_PROFILE=disable-report
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.
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(-)
6319 commit 00577558540db2c9f7bf24e870ff6231abb2b99d
6320 Author: Robert Bragg <robert@linux.intel.com>
6321 Date: Mon Mar 30 16:41:02 2009 +0100
6323 profiling: Adds initial UProf support across clutter
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
6331 This adds initial accounting for:
6332 - Total mainloop time
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.
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
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.
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.
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(-)
6366 commit bd41db7c00fc54aa8077f53177ff33bd33a19c83
6367 Author: Robert Bragg <robert@linux.intel.com>
6368 Date: Tue Mar 17 13:07:46 2009 +0000
6370 Adds a --enable-profile option to configure.ac
6372 There is nothing else hooked up to this option so far
6375 configure.ac | 58 +++++++++++++++++++++++++++++++++++++++++++++-------------
6376 2 files changed, 49 insertions(+), 13 deletions(-)
6378 commit 5157da9fc8340cebdd29989a4ea02ccf607d3c52
6379 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6380 Date: Fri Jan 8 15:04:56 2010 +0000
6382 x11: Switch back to RGB visuals by default
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.
6389 For applications (and toolkit integration libraries) that want to enable
6390 the ClutterStage:use-alpha property there is a new function:
6392 void clutter_x11_set_use_argb_visual (gboolean use_argb);
6394 which needs to be called before clutter_init().
6396 The CLUTTER_DISABLE_ARGB_VISUAL environment variable can still be used
6397 to force this value off at run-time.
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(-)
6406 commit 9599adbd820db7526d77790d8b611a6b61cb2dc7
6407 Author: Damien Lespiau <damien.lespiau@intel.com>
6408 Date: Wed Jan 6 00:44:24 2010 +0000
6410 doc: Fix media::{get,set}_subtitle_uri() symbol names
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.
6416 This fix makes gtk-doc document those symbols again.
6418 doc/reference/clutter/clutter-sections.txt | 4 ++--
6419 1 file changed, 2 insertions(+), 2 deletions(-)
6421 commit bf4818bd759f612a9cec62c2e072544d54cc104c
6422 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6423 Date: Thu Jan 7 11:08:52 2010 +0000
6425 actor: Just emit a relayout cycle warning
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.
6434 clutter/clutter-actor.c | 1 -
6435 1 file changed, 1 deletion(-)
6437 commit 821e622de671ad4e18a55e9dbd33aee004e822df
6438 Author: Neil Roberts <neil@linux.intel.com>
6439 Date: Thu Jan 7 15:58:53 2010 +0000
6441 Don't set the GLX_TRANSPARENT_TYPE attribute to choose an FBConfig
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.
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.
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.
6460 clutter/glx/clutter-backend-glx.c | 145 ++++++++++++++-----------------------
6461 clutter/glx/clutter-backend-glx.h | 5 +-
6462 2 files changed, 57 insertions(+), 93 deletions(-)
6464 commit 8b59573190907da97c2af5a5be2e563fc66f8d51
6465 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6466 Date: Tue Jan 5 18:02:29 2010 +0000
6468 Covert stb_image.c to Unix format
6470 The file is still in DOS format (CRLF instead of LF) and this confuses
6471 the hell out of some versions of Git.
6473 clutter/cogl/cogl/stb_image.c | 7544 ++++++++++++++++++++---------------------
6474 1 file changed, 3772 insertions(+), 3772 deletions(-)
6476 commit 58b5a46e0e6b263bd32808e4a9a46bbdd81eedfe
6477 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6478 Date: Tue Jan 5 17:54:45 2010 +0000
6480 Include cogl-defines.h before using GL types
6482 If we are using GL* types we should also be including cogl-defines.h, as
6483 that will include the right GL header.
6485 clutter/cogl/cogl/cogl-shader.h | 1 +
6486 clutter/cogl/cogl/cogl-texture.h | 1 +
6487 2 files changed, 2 insertions(+)
6489 commit 793fec8138b478ba1f1ea419f9ef8bed4f453e77
6490 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6491 Date: Tue Jan 5 16:11:45 2010 +0000
6493 cogl: Fix array annotations
6495 The arrays in the cogl_program_set_uniform_* API should be marked as
6496 such, and have their length arguments specified.
6498 clutter/cogl/cogl/cogl-shader.h | 16 ++++++++--------
6499 1 file changed, 8 insertions(+), 8 deletions(-)
6501 commit 59105341bce12b2ec009ff953facbb7f7b10e85f
6502 Author: Neil Roberts <neil@linux.intel.com>
6503 Date: Tue Jan 5 11:58:12 2010 +0000
6505 text: Store the markup attributes separately
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 '<' they would end up causing parse errors because they would
6516 be converted to the actual symbols.
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
6523 http://bugzilla.openedhand.com/show_bug.cgi?id=1940
6525 clutter/clutter-text.c | 134 +++++++++++++++++++++++++++++-------------------
6526 1 file changed, 82 insertions(+), 52 deletions(-)
6528 commit 32b456fc8c4e8743c1b2c32164f7e9f67188a60e
6529 Author: Neil Roberts <neil@linux.intel.com>
6530 Date: Tue Jan 5 11:44:17 2010 +0000
6532 text: Free the Pango attribute list resources
6534 The ClutterText owns three PangoAttrList resources which were not
6535 being unref'd. This adds the unref calls to the finalize method.
6537 clutter/clutter-text.c | 7 +++++++
6538 1 file changed, 7 insertions(+)
6540 commit 64c1294cc26e034fbf8a9a05b4413f63b9cd882d
6541 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6542 Date: Tue Jan 5 14:10:19 2010 +0000
6544 x11 tfp: Plug a leak
6546 Destroy the dummy XImage we create even on success.
6548 http://bugzilla.openedhand.com/show_bug.cgi?id=1918
6550 Based on a patch by: Carlos Martín Nieto <carlos@cmartin.tk>
6552 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
6554 clutter/x11/clutter-x11-texture-pixmap.c | 22 +++++++++++++---------
6555 1 file changed, 13 insertions(+), 9 deletions(-)
6557 commit fa298b45b530c6b6821e73b011c3c7d226950ce0
6558 Merge: 4207524 4adc2c2
6559 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6560 Date: Tue Jan 5 11:04:50 2010 +0000
6562 Merge branch 'matrix-mode'
6565 build: Move CoglMatrixMode to cogl-matrix-stack.h
6567 commit 4207524e950efd3f1fa5334f6d0b9b374a0b3f93
6568 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6569 Date: Tue Jan 5 11:02:39 2010 +0000
6571 Remove trailing comma from test UI definition
6573 The animation definition test has a trailing comma at the end of an
6576 tests/data/test-script-animation.json | 2 +-
6577 1 file changed, 1 insertion(+), 1 deletion(-)
6579 commit 2aa9d7bdc78703fc9a6354d2e54f880fde96db39
6580 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6581 Date: Tue Jan 5 10:55:28 2010 +0000
6583 script: Copy the JSON node in PropertyInfo
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.
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.
6593 clutter/clutter-script-parser.c | 2 +-
6594 1 file changed, 1 insertion(+), 1 deletion(-)
6596 commit 10963d1ae03920e202ccbd0107854f489117f89b
6597 Author: Damien Lespiau <damien.lespiau@intel.com>
6598 Date: Mon Dec 28 17:52:43 2009 +0100
6600 [media] Add an API to play a subtitle file along with the media
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
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(+)
6611 commit 5d5c7142f7fa2447e13bcb80a272b0d9dfc28f06
6612 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6613 Date: Mon Jan 4 12:03:47 2010 +0000
6615 text: Use G_SIGNAL_ACTION for ::insert-text and ::delete-text
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()
6621 clutter/clutter-text.c | 4 ++--
6622 1 file changed, 2 insertions(+), 2 deletions(-)
6624 commit bf43cb6cdc84e646add7adc592487274331d4930
6625 Author: Alejandro Piñeiro <apinheiro@igalia.com>
6626 Date: Fri Nov 20 15:17:41 2009 +0100
6628 Added ClutterText::insert-text and ClutterText::delete-text signals
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
6640 http://bugzilla.openedhand.com/show_bug.cgi?id=1894
6642 clutter/clutter-marshal.list | 1 +
6643 clutter/clutter-text.c | 87 ++++++++++++++++++++++++++++++++++++++++--
6644 2 files changed, 84 insertions(+), 4 deletions(-)
6646 commit 4adc2c2d839c42eccc7187735ddcce061d25f14b
6647 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6648 Date: Mon Jan 4 11:58:32 2010 +0000
6650 build: Move CoglMatrixMode to cogl-matrix-stack.h
6652 This avoids a redeclaration of _cogl_matrix_stack_flush_to_gl() from
6653 using GLenum to CoglMatrixMode.
6655 http://bugzilla.openedhand.com/show_bug.cgi?id=1928
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(-)
6661 commit eb9029504124daf4c032f027c2f068ec25548f3f
6662 Author: Halton Huo <halton.huo@sun.com>
6663 Date: Mon Jan 4 11:49:50 2010 +0000
6665 cogl-texture: Remove return in void functions
6667 http://bugzilla.o-hand.com/show_bug.cgi?id=1929
6669 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
6671 clutter/cogl/cogl/cogl-texture.c | 8 +++-----
6672 1 file changed, 3 insertions(+), 5 deletions(-)
6674 commit b98d486fc99fd46626877be728961190dbf831dc
6675 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6676 Date: Mon Jan 4 11:49:13 2010 +0000
6678 build: Maintainer cflags go in the _CFLAGS target
6680 The maintainer compiler flags are not pre-processor flags.
6682 clutter/cogl/cogl/Makefile.am | 3 +--
6683 1 file changed, 1 insertion(+), 2 deletions(-)
6685 commit 0fb51658fdba886fd5d9cb53cfca6df13aa1f7a0
6686 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6687 Date: Mon Jan 4 11:43:00 2010 +0000
6689 cogl: Const-ify vertices in cogl_polygon()
6691 The CoglTextureVertex array passed to cogl_polygon() is a pure
6692 in-argument and should be const-ified.
6694 http://bugzilla.openedhand.com/show_bug.cgi?id=1917
6696 clutter/cogl/cogl/cogl-primitives.c | 27 ++++++++++++++-------------
6697 clutter/cogl/cogl/cogl-texture.h | 6 +++---
6698 2 files changed, 17 insertions(+), 16 deletions(-)
6700 commit 1c69c61745ed510f0b6ab16cb963ca01994cb9fc
6701 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6702 Date: Wed Nov 11 11:00:29 2009 +0000
6704 master-clock: Take a reference before advancing timelines
6706 A timeline advancement might cause another timeline to be
6707 destroyed, which will likely lead to a segmentation fault.
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.
6714 http://bugzilla.openedhand.com/show_bug.cgi?id=1854
6716 clutter/clutter-master-clock.c | 7 +++++++
6717 1 file changed, 7 insertions(+)
6719 commit 5ae88f5777c5ed0663937f990350f145b254692c
6720 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6721 Date: Sun Jan 3 20:41:17 2010 +0000
6723 Post-release version bump to 1.1.5
6726 1 file changed, 1 insertion(+), 1 deletion(-)
6728 commit 6d7e1e5434d3da27cf23a9c16f9990523eedba4e
6729 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6730 Date: Sun Jan 3 20:11:43 2010 +0000
6732 Release Clutter 1.1.4
6734 NEWS | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
6735 configure.ac | 4 ++--
6736 2 files changed, 58 insertions(+), 2 deletions(-)
6738 commit 3355c2ab2518711d7ab79f3ffe1f4a8ce105af84
6739 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6740 Date: Sun Jan 3 20:24:39 2010 +0000
6742 build: Remove dist rule for non-existing image files
6744 doc/cookbook/Makefile.am | 2 +-
6745 1 file changed, 1 insertion(+), 1 deletion(-)
6747 commit 8d40cb947031f90a7b8cf459720278c6a6fe295d
6748 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6749 Date: Sun Jan 3 20:12:49 2010 +0000
6751 Disable g_set_prgname()
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.
6758 clutter/clutter-main.c | 4 ++++
6759 1 file changed, 4 insertions(+)
6761 commit 3d350078a8aa6f1bdf38c12de62e2708c5369247
6762 Merge: a09ac0b 934eee1
6763 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6764 Date: Wed Dec 23 10:38:02 2009 +0000
6766 Merge branch 'animate-layout-manager' into ebassi-next
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
6779 commit 934eee17ae34098773ff5876747061b5a1d1f1a5
6780 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6781 Date: Wed Dec 23 10:35:16 2009 +0000
6783 layout-manager: Document the animation support
6785 Add a section inside the LayoutManager class API reference documenting,
6786 with examples, how to implement animation support inside a layout
6789 clutter/clutter-layout-manager.c | 213 ++++++++++++++++++++++++++++++++++----
6790 1 file changed, 190 insertions(+), 23 deletions(-)
6792 commit 713c2952410e99e681825dac51da3e0b575ef2cf
6793 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6794 Date: Wed Dec 23 08:39:16 2009 +0000
6796 layout-manager: Rewind the timeline in begin_animation()
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.
6802 clutter/clutter-layout-manager.c | 8 ++++++--
6803 1 file changed, 6 insertions(+), 2 deletions(-)
6805 commit b9c1de0ec7001ce6a6b62dbd8d1fd9ee15539093
6806 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6807 Date: Wed Dec 23 08:34:08 2009 +0000
6809 box-layout: Remove the allocations hash table
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.
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.
6822 clutter/clutter-box-layout.c | 47 +++++++++++++++++++-----------------------
6823 1 file changed, 21 insertions(+), 26 deletions(-)
6825 commit c8c5e0ee39626d434c2d3e5486c6520eff17f519
6826 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6827 Date: Tue Dec 22 18:10:39 2009 +0000
6829 docs: Clean up the README file
6831 README | 137 +++++++++++++++++++++++++++++++++++++++-------------------------
6832 1 file changed, 83 insertions(+), 54 deletions(-)
6834 commit a09ac0b27ccb4a9c08a4e42e00776bf627f0e163
6835 Merge: b6bd8be 3491337
6836 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6837 Date: Sun Dec 20 17:39:12 2009 +0000
6839 Merge branch 'stage-use-alpha' into ebassi-next
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
6851 commit b6bd8be6cb0fabf2ddf3eedadce68c8d3a60c3d9
6852 Merge: 7b53aa7 c7e8ddb
6853 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6854 Date: Sun Dec 20 17:33:51 2009 +0000
6856 Merge branch 'internal-flag' into ebassi-next
6859 conform: Add test unit for the destruction of Containers
6860 actor: Add internal child flag
6861 Clean up whitespace, indentation and comments
6863 commit c7e8ddb7a60dd76d5f62027383693575f30e2473
6864 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6865 Date: Fri Dec 18 23:29:11 2009 +0000
6867 conform: Add test unit for the destruction of Containers
6869 Verify that internal children do not go through the remove()
6870 implementation, and that non-internal children do.
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(+)
6878 commit 1520ba6190165dc8902b622833efbccf23716751
6879 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6880 Date: Fri Dec 18 23:20:04 2009 +0000
6882 actor: Add internal child flag
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.
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
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:
6901 ➔ clutter_actor_push_internal ();
6903 clutter_actor_set_parent (child1, parent);
6904 clutter_actor_set_parent (child2, parent);
6906 ➔ clutter_actor_pop_internal ();
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.
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(-)
6919 commit 4a21425f4837798d01f4435b68582faf9029c61c
6920 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6921 Date: Sun Dec 13 01:23:54 2009 +0000
6923 layout: Let begin_animation() return the Alpha
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.
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(-)
6934 commit 2e6397c39132007e79f5f87743fe9378fd8d5387
6935 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6936 Date: Sun Dec 13 01:07:44 2009 +0000
6938 box-layout: Add knobs for controlling animations
6940 ClutterLayoutManager does not have any state associated with it, and
6941 defers all the state to its sub-classes.
6943 The BoxLayout is thus in charge of controlling:
6945 • whether or not animations should be used
6946 • the duration of the animation
6947 • the easing mode of the animation
6949 By adding three new properties:
6951 • ClutterBoxLayout:use-animations
6952 • ClutterBoxLayout:easing-duration
6953 • ClutterBoxLayout:easing-mode
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.
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
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(-)
6969 commit 3c2e91aef586de5521aa9674b80d449cf96da0e1
6970 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6971 Date: Sat Dec 12 00:13:05 2009 +0000
6973 box-layout: Animate layout properties
6975 Use the newly added animation support inside LayoutManager to animate
6976 between state changes of the BoxLayout properties.
6978 The implementation is based on equivalent code from Mx, written by:
6980 Thomas Wood <thomas.wood@intel.com>
6982 clutter/clutter-box-layout.c | 130 ++++++++++++++++++++++++++++++++++++------
6983 1 file changed, 113 insertions(+), 17 deletions(-)
6985 commit f94a903d9ebdbc055010bb4a4c6fe7e76f418bd8
6986 Author: Emmanuele Bassi <ebassi@linux.intel.com>
6987 Date: Sat Dec 12 00:02:43 2009 +0000
6989 layout: Add animation support to LayoutManager
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.
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
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.
7009 A LayoutManager sub-class will need to:
7011 • call clutter_layout_manager_begin_animation() whenever it should
7012 animate between two states, for instance: whenever a layout property
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().
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.
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(-)
7030 commit 999359d64ccfbdbcc952662c14fa47441d6a5225
7031 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7032 Date: Fri Dec 11 23:48:58 2009 +0000
7034 Add ActorBox animation methods
7036 ClutterActorBox should have an interpolate() method that allows to
7037 compute the intermediate values between two states, given a progress
7040 clutter_actor_box_interpolate (start, end, alpha, &result);
7042 Another utility method, useful for layout managers, is a modifier
7043 that clamps the members of the actor box to the nearest integer
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(+)
7051 commit d2ea7cd6a8a1eb4ff04f11cb53aa387458a8e128
7052 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7053 Date: Fri Dec 11 20:17:58 2009 +0000
7055 Clean up whitespace, indentation and comments
7057 clutter/clutter-main.c | 70 +++++++++++++++++++++++++-----------------------
7058 1 file changed, 36 insertions(+), 34 deletions(-)
7060 commit 7b53aa7510adc60d3287740772ec97117ce78ab9
7061 Merge: 60a6bff 1374b5a
7062 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7063 Date: Thu Dec 10 23:36:04 2009 +0000
7065 Merge branch 'get-current-event' into ebassi-next
7067 * get-current-event:
7068 Add clutter_get_current_event
7070 commit 1374b5aac9398852cf3f3482fdf925b52aa31338
7071 Author: Colin Walters <walters@verbum.org>
7072 Date: Thu Nov 12 17:33:15 2009 -0500
7074 Add clutter_get_current_event
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.
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.
7084 http://bugzilla.openedhand.com/show_bug.cgi?id=1888
7086 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
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(-)
7095 commit 60a6bff3136c21c5ff6d4c5bb6614716853620f0
7096 Merge: dc47550 c4f27b1
7097 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7098 Date: Wed Dec 9 23:32:41 2009 +0000
7100 Merge branch 'no-layout-flag' into ebassi-next
7103 actor: Add a NO_LAYOUT flag for actors
7105 commit dc47550bc8eabc2c6e6e99364c1cb536a9adc973
7106 Merge: 86ce92e b33b628
7107 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7108 Date: Wed Dec 9 23:32:18 2009 +0000
7110 Merge branch 'size-cache' into ebassi-next
7113 tests: Clean up the BoxLayout interactive test
7114 actor: Add debugging notes for size cache
7115 Add a cache of size requests
7117 commit 86ce92eec14aa1aaf7c9ab14a520b66690488213
7118 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7119 Date: Wed Dec 9 18:46:25 2009 +0000
7121 x11: Emulate XKB's detectable key auto-repeat
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.
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
7133 clutter/x11/clutter-event-x11.c | 26 ++++++++++++++++++++++++++
7134 1 file changed, 26 insertions(+)
7136 commit 9242d6b934710ca4001e8dc2a0f1f4bc4a738a63
7137 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7138 Date: Wed Dec 9 18:10:52 2009 +0000
7140 docs: Move RELEASING under docs/
7142 RELEASING | 56 --------------------------------------------------------
7143 doc/RELEASING | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7144 2 files changed, 56 insertions(+), 56 deletions(-)
7146 commit 1ffd2ccb87a570733647e655e5e608ee05661c74
7147 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7148 Date: Wed Dec 9 01:52:09 2009 +0000
7150 stage: Deprecate default stage size macros
7152 The macros for getting the size of the default stage are a relic of the
7153 past and they should be deprecated.
7155 clutter/clutter-stage.h | 36 ++++++++++++++----------------------
7156 1 file changed, 14 insertions(+), 22 deletions(-)
7158 commit 34913378fb7aa84874bfda63648e9e0e02e40d8c
7159 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7160 Date: Wed Dec 9 17:17:33 2009 +0000
7162 tests: Use accessor methods for :use-alpha
7164 Instead of using g_object_set().
7166 tests/interactive/test-paint-wrapper.c | 6 ++----
7167 1 file changed, 2 insertions(+), 4 deletions(-)
7169 commit 1208e47198ea981b644bca2ce9beab3b59f05d0b
7170 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7171 Date: Wed Dec 9 02:04:56 2009 +0000
7173 stage: Add accessors for :use-alpha
7175 Use real accessors for the :use-alpha property.
7177 clutter/clutter-stage.c | 53 ++++++++++++++++++++++++++--
7178 clutter/clutter-stage.h | 4 +++
7179 doc/reference/clutter/clutter-sections.txt | 2 ++
7180 3 files changed, 57 insertions(+), 2 deletions(-)
7182 commit 3b075b6dc4197ed78f6386ee7e9a6e307839590f
7183 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7184 Date: Wed Dec 9 01:46:52 2009 +0000
7186 tests: Allow setting the stage opacity in test-paint-wrapper
7188 This allows testing the Stage:use-alpha property and the blending done
7191 tests/interactive/test-paint-wrapper.c | 15 +++++++++++++++
7192 1 file changed, 15 insertions(+)
7194 commit 3a3c815286daa55761787a49d7a33c6eb8c3d74d
7195 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7196 Date: Wed Dec 9 01:46:09 2009 +0000
7198 stage: Premultiply the stage color
7200 In case we are using Stage:use-alpha then we need to premultiply the
7201 stage color to get the correct blending from the compositor.
7203 clutter/clutter-stage.c | 1 +
7204 1 file changed, 1 insertion(+)
7206 commit e957e277b8a4893ce8c99e94402036d42a8b3748
7207 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7208 Date: Tue Dec 8 18:24:30 2009 +0000
7210 x11: Do not manage a foreign window
7212 If a Stage has been set to use a foreign Window then Clutter should not
7213 be managing it; calling XWithdrawWindow and XMapWindow should be
7214 reserved to the windows we manage ourselves.
7216 clutter/x11/clutter-stage-x11.c | 23 ++++++++++++++---------
7217 1 file changed, 14 insertions(+), 9 deletions(-)
7219 commit 28cb2cdab588ac361544538d4bb70a3e9bf24c81
7220 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7221 Date: Mon Dec 7 19:00:55 2009 +0000
7223 Remove clutter_set_default_text_direction()
7225 Setting the default text direction programmatically is wrong: it is a
7226 value dependent on the locale or by the environment.
7228 clutter/clutter-actor.c | 3 ++-
7229 clutter/clutter-main.c | 32 ++++++++++++----------------
7230 clutter/clutter-main.h | 1 -
7231 doc/reference/clutter/clutter-sections.txt | 1 -
7232 4 files changed, 16 insertions(+), 21 deletions(-)
7234 commit 3b9575baf8d254b7ba8b5faf56b14fbc6c3fde74
7235 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7236 Date: Mon Dec 7 18:41:15 2009 +0000
7238 Queue a relayout when the default text direction changes
7240 We need a relayout cycle if the default direction for the text changes
7241 while the main loop is running.
7243 clutter/clutter-main.c | 8 +++++++-
7244 1 file changed, 7 insertions(+), 1 deletion(-)
7246 commit 6a3f6a460e730b0067adfa1eac455246c8d6e8d8
7247 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7248 Date: Mon Dec 7 17:35:17 2009 +0000
7250 stage: Composite the opacity with the alpha channel
7252 The Stage's opacity should be composited with the alpha component of the
7253 Stage's background color.
7255 clutter/clutter-stage.c | 20 +++++++++++---------
7256 1 file changed, 11 insertions(+), 9 deletions(-)
7258 commit c4f27b1556b65464fd1f53749d32db9adab97942
7259 Author: Emmanuele Bassi <ebassi@gnome.org>
7260 Date: Wed Oct 7 16:41:25 2009 +0100
7262 actor: Add a NO_LAYOUT flag for actors
7264 Some actor implementation might avoid imposing any layout on their
7265 children. The Actor base class usually assumes some sort of layout
7266 management is in place, so it will queue relayouts when, for instance,
7267 an actor is shown or is hidden. If the parent of the actor does not
7268 impose any layout, though, showing or hiding one of its children will
7269 not affect the layout of the others.
7271 An example of this kind of container is ClutterGroup.
7273 By adding a new Actor flag, CLUTTER_ACTOR_NO_LAYOUT, and by making
7274 the Group actor set it on itself, the Actor base class can now decide
7275 whether or not to queue a relayout. The flag is not meant to be used
7276 by application code, and should only be set when implementing a new
7279 http://bugzilla.openedhand.com/show_bug.cgi?id=1838
7281 clutter/clutter-actor.c | 37 +++++++++++++++++++++++++++----------
7282 clutter/clutter-actor.h | 15 ++++++++++-----
7283 clutter/clutter-group.c | 6 ++++++
7284 3 files changed, 43 insertions(+), 15 deletions(-)
7286 commit 34b50934be581cde0ef2eba75f45aa36b1add14d
7287 Author: Neil Roberts <neil@linux.intel.com>
7288 Date: Sat Dec 5 14:20:00 2009 +0000
7290 cogl-material: Ensure mipmaps before doing anything else on a texture
7292 When the texture is in the atlas, ensuring the mipmaps can effectively
7293 make it become a completely different texture so we should do this
7294 before getting the GL handle.
7296 clutter/cogl/cogl/cogl-material.c | 19 +++++++++++--------
7297 1 file changed, 11 insertions(+), 8 deletions(-)
7299 commit 231cfffa1871806713928f7b4c599d904a813fb9
7300 Author: Neil Roberts <neil@linux.intel.com>
7301 Date: Sat Dec 5 13:48:03 2009 +0000
7303 cogl-atlas-texture: Remove textures from the atlas when mipmapping is required
7305 Mipmaps don't work very well in the current atlas because there is not
7306 enough padding between the textures. If ensure_mipmaps is called it
7307 will now create a new texture and migrate the atlased texture to
7308 it. It will use the same blit mechanism as when migrating so it will
7309 try to use an FBO for a fast blit. However if this is not possible it
7310 will end up downloading the data for the entire atlas which is not
7313 clutter/cogl/cogl/cogl-atlas-texture.c | 66 +++++++++++++++++++++++++++-----
7314 1 file changed, 57 insertions(+), 9 deletions(-)
7316 commit 6cf5ee2cbdad4bb71a065bb7e49a534ca7ba78ac
7317 Author: Neil Roberts <neil@linux.intel.com>
7318 Date: Sat Dec 5 13:24:01 2009 +0000
7320 cogl-atlas-texture: Try to do texture blits using an FBO
7322 When reorganizing the textures, we can avoid downloading the entire
7323 texture data if we bind the source texture in a framebuffer object and
7324 copy the destination using glCopyTexSubImage2D. This is also
7325 implemented using a much faster path in Mesa.
7327 Currently it is calling the GL framebuffer API directly but ideally it
7328 would use the Cogl offscreen API. However there is no way to tell Cogl
7329 not to create a stencil renderbuffer which seems like a waste in this
7332 If FBOs are not available it will fallback to reading back the entire
7333 texture data as before.
7335 clutter/cogl/cogl/cogl-atlas-texture.c | 198 +++++++++++++++++++++++++++-----
7336 1 file changed, 168 insertions(+), 30 deletions(-)
7338 commit c51a31a2fc3f0f087a44cbccf1726c40fa581746
7339 Author: Neil Roberts <neil@linux.intel.com>
7340 Date: Fri Dec 4 19:43:39 2009 +0000
7342 cogl-atlas: Add a debug option to visualize the atlas
7344 This adds a 'dump-atlas-image' debug category. When enabled, CoglAtlas
7345 will use Cairo to create a png which visualizes the leaf rectangles of
7348 clutter/cogl/cogl/cogl-atlas.c | 76 ++++++++++++++++++++++++++++++++++++++++
7349 clutter/cogl/cogl/cogl-debug.c | 3 +-
7350 clutter/cogl/cogl/cogl-debug.h | 3 +-
7351 3 files changed, 80 insertions(+), 2 deletions(-)
7353 commit 032d6e8aa00cd04a8084303a4942760ef5651a0c
7354 Author: Neil Roberts <neil@linux.intel.com>
7355 Date: Fri Dec 4 18:55:53 2009 +0000
7357 cogl-texture-atlas: Add some debugging notes
7359 This adds an 'atlas' category to the COGL_DEBUG environment
7360 variable. When enabled Cogl will display messages when textures are
7361 added to the atlas and when the atlas is reorganized.
7363 clutter/cogl/cogl/cogl-atlas-texture.c | 62 ++++++++++++++++++++++++++++----
7364 clutter/cogl/cogl/cogl-debug.c | 3 +-
7365 clutter/cogl/cogl/cogl-debug.h | 3 +-
7366 3 files changed, 60 insertions(+), 8 deletions(-)
7368 commit bc845e26d9cab75ecba69d12a937cf7d42bcaf71
7369 Author: Neil Roberts <neil@linux.intel.com>
7370 Date: Fri Dec 4 18:24:15 2009 +0000
7372 cogl-atlas-texture: Support reorganizing the atlas when it is full
7374 When space can't be found in the atlas for a new texture it will now
7375 try to reorganize the atlas to make space. A new CoglAtlas is created
7376 and all of the textures are readded in decreasing size order. If the
7377 textures still don't fit then the size of the atlas is doubled until
7378 either we find a space or we reach the texture size limits. If we
7379 successfully find an organization that fits then all of the textures
7380 will be migrated to a new texture. This involves copying the texture
7381 data into CPU memory and then uploading it again. Potentially it could
7382 eventually use a PBO or an FBO to transfer the image without going
7385 The algorithm for laying out the textures works a lot better if the
7386 rectangles are added in order so we might eventually want some API for
7387 creating multiple textures in one go to avoid reorganizing the atlas
7390 clutter/cogl/cogl/cogl-atlas-texture.c | 315 ++++++++++++++++++++++++++++----
7391 1 file changed, 280 insertions(+), 35 deletions(-)
7393 commit 1fb32167ec37f7b3bc8193258faa5963fe49569e
7394 Author: Neil Roberts <neil@linux.intel.com>
7395 Date: Fri Dec 4 13:06:32 2009 +0000
7397 cogl: Add an atlased texture backend
7399 This adds a CoglAtlas type which is a data structure that keeps track
7400 of unused sub rectangles of a larger rectangle. There is a new atlased
7401 texture backend which uses this to put multiple textures into a single
7404 Currently the atlas is always sized 256x256 and the textures are never
7405 moved once they are put in. Eventually it needs to be able to
7406 reorganise the atlas and grow it if necessary. It also needs to
7407 migrate the textures out of the atlas if mipmaps are required.
7409 clutter/cogl/cogl/Makefile.am | 4 +
7410 clutter/cogl/cogl/cogl-atlas-texture-private.h | 64 +++
7411 clutter/cogl/cogl/cogl-atlas-texture.c | 488 ++++++++++++++++++++++
7412 clutter/cogl/cogl/cogl-atlas.c | 520 ++++++++++++++++++++++++
7413 clutter/cogl/cogl/cogl-atlas.h | 76 ++++
7414 clutter/cogl/cogl/cogl-context.c | 14 +
7415 clutter/cogl/cogl/cogl-context.h | 8 +
7416 clutter/cogl/cogl/cogl-texture.c | 30 +-
7417 clutter/cogl/cogl/cogl-types.h | 3 +-
7418 9 files changed, 1194 insertions(+), 13 deletions(-)
7420 commit b33b6287a1d3d3b07bbb845e79dfc4e2162c5c77
7421 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7422 Date: Fri Dec 4 17:39:04 2009 +0000
7424 tests: Clean up the BoxLayout interactive test
7426 tests/interactive/test-box-layout.c | 27 ++++++++++++++++-----------
7427 1 file changed, 16 insertions(+), 11 deletions(-)
7429 commit cf62b8fe4ab0d7cca360077843a9e213540e2c4d
7430 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7431 Date: Fri Dec 4 17:38:26 2009 +0000
7433 actor: Add debugging notes for size cache
7435 Add a note for cache hits, and another one for cache misses.
7437 clutter/clutter-actor.c | 3 +++
7438 1 file changed, 3 insertions(+)
7440 commit 9ccdf2eb02a0d0155e27d5f9270bca6b72c08359
7441 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7442 Date: Fri Dec 4 16:54:22 2009 +0000
7444 box: Add relative packing methods
7446 ClutterBox should provide some convenience functions to pack a new child
7447 at a given position, either an absolute index or relative to a sibling.
7449 clutter/clutter-box.c | 221 +++++++++++++++++++++++-----
7450 clutter/clutter-box.h | 16 ++
7451 doc/reference/clutter/clutter-sections.txt | 3 +
7452 tests/interactive/test-bin-layout.c | 1 -
7453 4 files changed, 203 insertions(+), 38 deletions(-)
7455 commit c9b7efec96636e9368a8dfb76440d1b89c618c99
7456 Author: Johan Bilien <jobi@via.ecp.fr>
7457 Date: Wed Nov 11 20:40:57 2009 -0500
7459 Add a cache of size requests
7461 clutter_actor_get_preferred_width/height currently caches only one size
7462 requests, for a given height / width.
7464 It's common for a layout manager to call get_preferred_width with 2
7465 different heights during the same allocation cycle. Typically once in
7466 the size request, once in the allocation. If
7467 clutter_actor_get_preferred_width is called
7468 alternatively with 2 different for_height, the cache is totally
7469 inefficient, and we end up always querying the actor size even
7470 when the actor does not need a re-allocation.
7472 http://bugzilla.openedhand.com/show_bug.cgi?id=1876
7474 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
7476 clutter/clutter-actor.c | 137 ++++++++++++++++++++++++++++++++++++++++-------
7477 1 file changed, 117 insertions(+), 20 deletions(-)
7479 commit 18860eb16f36eb62b94aee353b4e2ace76e2fffa
7480 Author: Bastian Winkler <buz@netbuz.org>
7481 Date: Thu Dec 3 15:38:05 2009 +0000
7483 flow-layout: Use the natural size
7485 Fix a copy-and-paste thinko where the cell size was computed using the
7486 minimum size instead of the natural size. For actors with a minimum size
7487 of zero, like Textures, this implied always a zero allocation.
7489 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
7491 clutter/clutter-flow-layout.c | 4 ++--
7492 1 file changed, 2 insertions(+), 2 deletions(-)
7494 commit 6c3e1989e47b17f826d25704b2433ffecc6e83b9
7495 Author: Neil Roberts <neil@linux.intel.com>
7496 Date: Thu Dec 3 14:46:20 2009 +0000
7498 cogl-sub-texture: Fix the height of sub textures
7500 The code which is used to get the texture height was accidentally
7501 using the width due to a cut-and-paste fail.
7503 clutter/cogl/cogl/cogl-sub-texture.c | 6 +++---
7504 1 file changed, 3 insertions(+), 3 deletions(-)
7506 commit 97f8eed11917fa0d545dcb08d20841f6b501c878
7507 Author: Neil Roberts <neil@linux.intel.com>
7508 Date: Fri Nov 27 18:45:36 2009 +0000
7510 cogl: Add a CoglTexture2D backend
7512 This is an optimised version of CoglTexture2DSliced that always deals
7513 with a single texture and always uses the GL_TEXTURE_2D
7514 target. cogl_texture_new_from_bitmap now tries to use this backend
7515 first. If it can't create a texture with that size then it falls back
7518 cogl_texture_upload_data_prepare has been split into two functions
7519 because the sliced backend needs to know the real internal format
7520 before the conversion is performed. Otherwise the converted bitmap
7521 will be wasted if the backend can't support the size.
7523 clutter/cogl/cogl/Makefile.am | 2 +
7524 clutter/cogl/cogl/cogl-texture-2d-private.h | 69 +++
7525 clutter/cogl/cogl/cogl-texture-2d.c | 623 +++++++++++++++++++++++++++
7526 clutter/cogl/cogl/cogl-texture-private.h | 9 +
7527 clutter/cogl/cogl/cogl-texture.c | 75 +++-
7528 5 files changed, 755 insertions(+), 23 deletions(-)
7530 commit f3df76d5129ba0ed7014c6aa52be7bee67c3f7aa
7531 Author: Neil Roberts <neil@linux.intel.com>
7532 Date: Mon Nov 30 12:15:05 2009 +0000
7534 cogl: Add _cogl_texture_driver_upload_to_gl
7536 This provides a way to upload the entire data for a texture without
7537 having to first call glTexImage and then glTexSubImage. This should be
7538 faster especially with indirect rendering where it would needlessy
7539 send the data for the texture twice.
7541 clutter/cogl/cogl/cogl-texture-driver.h | 14 ++++++
7542 clutter/cogl/cogl/driver/gl/cogl-texture-driver.c | 26 +++++++++++
7543 .../cogl/cogl/driver/gles/cogl-texture-driver.c | 47 ++++++++++++++++++++
7544 3 files changed, 87 insertions(+)
7546 commit 19a19579ba72ea9ca4f6d406c035c3ad074fd442
7547 Author: Neil Roberts <neil@linux.intel.com>
7548 Date: Fri Nov 27 16:59:51 2009 +0000
7550 cogl: Move some of the texture_2d_sliced_new_* functions into cogl-texture
7552 new_from_data and new_from_file can be implemented in terms of
7553 new_from_bitmap so it makes sense to move these to cogl-texture rather
7554 than having to implement them in every texture backend.
7556 clutter/cogl/cogl/cogl-texture-2d-sliced-private.h | 16 ----
7557 clutter/cogl/cogl/cogl-texture-2d-sliced.c | 84 --------------------
7558 clutter/cogl/cogl/cogl-texture.c | 44 +++++++---
7559 3 files changed, 33 insertions(+), 111 deletions(-)
7561 commit 27c4eb483d0ce219d80000613357c20fc25724e3
7562 Author: Neil Roberts <neil@linux.intel.com>
7563 Date: Fri Nov 27 16:40:31 2009 +0000
7565 cogl: Add a conformance test for sub textures
7567 This tests creating a sub texture from a larger texture using various
7568 different texture coordinates. It also tries to read back the texture
7569 data using cogl_texture_get_data.
7571 tests/conform/Makefile.am | 1 +
7572 tests/conform/test-cogl-sub-texture.c | 388 +++++++++++++++++++++++++++++++++
7573 tests/conform/test-conform-main.c | 1 +
7574 3 files changed, 390 insertions(+)
7576 commit 9752493272b39e6a8aeb1b8d667667d53de439fb
7577 Author: Neil Roberts <neil@linux.intel.com>
7578 Date: Fri Nov 27 16:39:16 2009 +0000
7580 cogl: Add a sub texture backend
7582 This adds a new texture backend which represents a sub texture of a
7583 larger texture. The texture is created with a reference to the full
7584 texture and a set of coordinates describing the region. The backend
7585 simply defers to the full texture for all operations and maps the
7586 coordinates to the other range. You can also use coordinates outside
7587 the range [0,1] to create a repeated version of the full texture.
7589 A new public API function called cogl_texture_new_from_sub_texture is
7590 available to create the sub texture.
7592 clutter/cogl/cogl/Makefile.am | 2 +
7593 clutter/cogl/cogl/cogl-sub-texture-private.h | 56 +++
7594 clutter/cogl/cogl/cogl-sub-texture.c | 699 ++++++++++++++++++++++++++
7595 clutter/cogl/cogl/cogl-texture.c | 15 +-
7596 clutter/cogl/cogl/cogl-texture.h | 27 +
7597 doc/reference/cogl/cogl-sections.txt | 1 +
7598 6 files changed, 798 insertions(+), 2 deletions(-)
7600 commit 070a91f31176eb304031fc6dc2c374ef25f92a92
7601 Author: Neil Roberts <neil@linux.intel.com>
7602 Date: Wed Dec 2 17:17:24 2009 +0000
7604 cogl: Make the callback for foreach_sub_texture_in_region use const
7606 The CoglTextureSliceCallback function pointer now takes const pointers
7607 for the texture coordinates. This makes it clearer that the callback
7608 should not modify the array and therefore the backend can use the same
7609 array for both sets of coords.
7611 clutter/cogl/cogl/cogl-journal-private.h | 2 +-
7612 clutter/cogl/cogl/cogl-journal.c | 2 +-
7613 clutter/cogl/cogl/cogl-primitives.c | 14 +++++++-------
7614 clutter/cogl/cogl/cogl-texture-private.h | 4 ++--
7615 4 files changed, 11 insertions(+), 11 deletions(-)
7617 commit 1a1de0e278de7c06b528ae74a31580dfd576d041
7618 Author: Neil Roberts <neil@linux.intel.com>
7619 Date: Wed Dec 2 13:41:49 2009 +0000
7621 cogl: Add a texture utility function for manually repeating
7623 Given a region of texture coordinates this utility invokes a callback
7624 enough times to cover the region with a subregion that spans the
7625 texture at most once. Eg, if called with tx1 and tx2 as 0.5 and 3.0 it
7626 it would invoke the callback with:
7628 0.5,1.0 1.0,2.0 2.0,3.0
7630 Manual repeating is needed by all texture backends regardless of
7631 whether they can support hardware repeating because when Cogl calls
7632 the foreach_sub_texture_in_region method then it sets the wrap mode to
7633 GL_CLAMP_TO_EDGE and no hardware repeating is possible.
7635 clutter/cogl/cogl/cogl-texture-private.h | 14 ++++
7636 clutter/cogl/cogl/cogl-texture.c | 102 ++++++++++++++++++++++++++++++
7637 2 files changed, 116 insertions(+)
7639 commit 5fcb29c91695bdbb2aec418ba1d2956ff23612a0
7640 Author: Neil Roberts <neil@linux.intel.com>
7641 Date: Fri Nov 27 15:47:22 2009 +0000
7643 cogl-primitives: Check for repeating after the coordinate transform
7645 In _cogl_multitexture_quad_single_primitive we use a wrap mode of
7646 GL_CLAMP_TO_EDGE if the texture coordinates are all in the range [0,1]
7647 or GL_REPEAT otherwise. This is to avoid pulling in pixels from either
7648 side when using GL_LINEAR filter mode and rendering the entire
7649 texture. Previously it was checking using the unconverted texture
7650 coordinates. This is ok unless the texture backend is radically
7651 transforming the texture coordinates, such as in the sub texture
7652 backend where the coordinates may map to something completely
7653 different. We now check whether the coordinates are in range after
7656 clutter/cogl/cogl/cogl-primitives.c | 87 +++++++++++++++--------------------
7657 1 file changed, 37 insertions(+), 50 deletions(-)
7659 commit 812d4d25bb28d8512c101701cf7cd06dc2dd95eb
7660 Author: Neil Roberts <neil@linux.intel.com>
7661 Date: Thu Nov 26 18:58:17 2009 +0000
7663 cogl: Move all of the fields from CoglTexture to CoglTexture2DSliced
7665 Most of the fields that were previously in CoglTexture are specific to
7666 the implementation of CoglTexture2DSliced so they should be placed
7667 there instead. For example, the 'mipmaps_dirty' flag is an
7668 implementation detail of the ensure_mipmaps function so it doesn't
7669 make sense to force all texture backends to have this function.
7671 Other fields such as width, height, gl_format and format may make
7672 sense for all textures but I've added them as virtual functions
7673 instead. This may make more sense for a sub-texture backend for
7674 example where it can calculate these based on the full texture.
7676 clutter/cogl/cogl/cogl-texture-2d-sliced-private.h | 25 ++-
7677 clutter/cogl/cogl/cogl-texture-2d-sliced.c | 204 +++++++++++---------
7678 clutter/cogl/cogl/cogl-texture-private.h | 21 +-
7679 clutter/cogl/cogl/cogl-texture.c | 19 +-
7680 4 files changed, 149 insertions(+), 120 deletions(-)
7682 commit 071dea2fbc307eca949f5f44c4ccb6c4dd73f789
7683 Author: Neil Roberts <neil@linux.intel.com>
7684 Date: Thu Nov 26 17:32:52 2009 +0000
7686 cogl: Move data only used for upload out of CoglTexture
7688 The CoglTexture struct previously contained some fields which are only
7689 used to upload data such as the CoglBitmap and the source GL
7690 format. These are now moved to a separate CoglTextureUploadData struct
7691 which only exists for the duration of one of the cogl_texture_*_new
7692 functions. In cogl-texture there are utility functions which operate
7693 on this new struct rather than on CoglTexture directly.
7695 Some of the fields that were previously stored in the CoglBitmap
7696 struct are now copied to the CoglTexture such as the width, height,
7697 format and internal GL format.
7699 The rowstride was previously stored in CoglTexture and this was
7700 publicly accessible with the cogl_texture_get_rowstride
7701 function. However this doesn't seem to be a useful function because
7702 there is no need to use the same rowstride again when uploading or
7703 downloading new data. Instead cogl_texture_get_rowstride now just
7704 calculates a suitable rowstride from the format and width of the
7707 clutter/cogl/cogl/cogl-texture-2d-sliced.c | 344 ++++++++++----------
7708 clutter/cogl/cogl/cogl-texture-driver.h | 6 +-
7709 clutter/cogl/cogl/cogl-texture-private.h | 51 +--
7710 clutter/cogl/cogl/cogl-texture.c | 93 +++---
7711 clutter/cogl/cogl/driver/gl/cogl-texture-driver.c | 14 +-
7712 .../cogl/cogl/driver/gles/cogl-texture-driver.c | 16 +-
7713 6 files changed, 262 insertions(+), 262 deletions(-)
7715 commit 7f58c14dcdbb5a6a24f17aacb784702dbaa468fb
7716 Author: Neil Roberts <neil@linux.intel.com>
7717 Date: Wed Dec 2 21:54:22 2009 +0000
7719 cogl: Use #ifdef GL around GL_TEXTURE_RECTANGLE_ARB
7721 Commit 558b17ee1e added support for rectangle textures to the
7722 framebuffer code. Under GLES there is no GL_TEXTURE_RECTANGLE_ARB
7723 definition so this was breaking the build. The rest of Cogl uses
7724 ifdef's around that constant so we should do the same here.
7726 clutter/cogl/cogl/cogl-framebuffer.c | 7 +++++--
7727 1 file changed, 5 insertions(+), 2 deletions(-)
7729 commit 59d84f7806e16b3d1fea5eed44a5d06d9772be23
7730 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7731 Date: Wed Dec 2 16:03:55 2009 +0000
7733 build: Fix CPP and LD flags
7735 • The debug flags are pre-processor ones, so they should be listed
7738 • Clutter's publicly exported symbols match the following regular
7741 ^(clutter|cogl|json)_*
7743 The old one also listed "pango" as a possible prefix, but the
7744 Pango API is now under the Cogl namespace.
7746 clutter/Makefile.am | 5 +++--
7747 1 file changed, 3 insertions(+), 2 deletions(-)
7749 commit 17e3b526d569b6c8f33cd050acce107d5f1b057b
7750 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7751 Date: Wed Dec 2 14:15:43 2009 +0000
7753 docs: Document Clutter's threading model
7755 Be explicit on how to deal with threads and Clutter.
7757 clutter/clutter-main.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++++
7758 1 file changed, 56 insertions(+)
7760 commit fc7bbf1abf732ba37fee8f12b5ed36e0b9a5fb95
7761 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7762 Date: Wed Dec 2 14:15:19 2009 +0000
7764 docs: Fix docbook syntax
7766 The <variablename> tag is really called <varname> in DocBook.
7768 clutter/clutter-layout-manager.c | 9 ++++-----
7769 1 file changed, 4 insertions(+), 5 deletions(-)
7771 commit 3c08c411d2ccd1523439c4f35427d266d1ef67dd
7772 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7773 Date: Wed Dec 2 11:38:04 2009 +0000
7775 docs: Annotate StageManager
7777 The ClutterStageManager instance structure is private, so we need a
7778 "floating" annotation.
7780 clutter/clutter-stage-manager.h | 8 ++++++++
7781 1 file changed, 8 insertions(+)
7783 commit 7a33b706a40719e1d123ccfa71c3d5c5d864fdea
7784 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7785 Date: Wed Dec 2 11:37:13 2009 +0000
7787 Remove a gtk-doc annotation
7789 The Mesa matrix code still has a comment that looks like a gtk-doc
7792 clutter/cogl/cogl/cogl-matrix-mesa.c | 2 +-
7793 1 file changed, 1 insertion(+), 1 deletion(-)
7795 commit 0270313121e9a02cb1f59de134ed724e6f8c0ae6
7796 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7797 Date: Wed Dec 2 11:36:25 2009 +0000
7799 layout: Add padding to LayoutMeta
7801 Add some padding to the LayoutMeta and LayoutMetaClass structures.
7803 clutter/clutter-layout-meta.h | 18 +++++++++++++++++-
7804 1 file changed, 17 insertions(+), 1 deletion(-)
7806 commit 02398c0cf13f8326a8fadf0536ce1ac1994901ee
7807 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7808 Date: Tue Dec 1 18:16:48 2009 +0000
7810 Remove unused variable 'lang'
7812 Fix a compiler warning.
7814 clutter/clutter-main.c | 1 -
7815 1 file changed, 1 deletion(-)
7817 commit cdba8cc220a8ef026ade2dfaa542ff94c92cd5ef
7818 Author: Rob Bradford <rob@linux.intel.com>
7819 Date: Tue Dec 1 17:44:42 2009 +0000
7821 flow-layout: Include the first line when calculating number of lines
7823 This ensures that the preferred height / width height takes into consideration
7824 the correct amount of padding
7826 clutter/clutter-flow-layout.c | 6 ++++++
7827 1 file changed, 6 insertions(+)
7829 commit c564303601f6cabdc3314070d225f74a3c6df174
7830 Author: Rob Bradford <rob@linux.intel.com>
7831 Date: Tue Dec 1 17:11:08 2009 +0000
7833 flow-layout: Respect row-spacing/col-spacine in horizontal/vertical flows
7835 We need to add the row-spacing value when calculating the y position for lines
7836 of actors in horizontal flowing layouts.
7838 Similarly we need to add the col-spacing value when calculating the x posution
7839 for actors in vertical flowing layouts.
7841 clutter/clutter-flow-layout.c | 6 ++++++
7842 1 file changed, 6 insertions(+)
7844 commit e6ca2d891a2c48c91db45a0c2f5ce84d5e6621e1
7845 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7846 Date: Tue Dec 1 16:18:39 2009 +0000
7848 glx: Always request an ARGB visual
7850 When requesting the GLXFBConfig for creating the GLX context, we should
7851 always request one that links to an ARGB visual instead of a plain RGB
7854 By using an ARGB visual we allow the ClutterStage:use-alpha property to
7855 work as intended when running Clutter under a compositing manager.
7857 The default behaviour of requesting an ARGB visual can be disabled by
7860 CLUTTER_DISABLE_ARGB_VISUAL
7862 Environment variable.
7864 clutter/glx/clutter-backend-glx.c | 128 +++++++++++++++++++++++++++++--------
7865 clutter/glx/clutter-backend-glx.h | 5 +-
7866 clutter/glx/clutter-glx.h | 5 --
7867 clutter/glx/clutter-stage-glx.c | 13 +---
7868 clutter/x11/clutter-backend-x11.c | 15 ++++-
7869 clutter/x11/clutter-x11.h | 2 +
7870 6 files changed, 125 insertions(+), 43 deletions(-)
7872 commit 2f7ff4d3e363a0568e4051ab67c0df6f745d06d2
7873 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7874 Date: Tue Dec 1 16:16:18 2009 +0000
7876 stage: Add :use-alpha property
7878 The ClutterStage:use-alpha property is used to let a stage know that it
7879 should honour the alpha component of the ClutterStage:color property.
7881 If :use-alpha is set to FALSE the stage always uses the full opacity
7882 when clearing itself before a paint(); otherwise, the alpha value is
7885 clutter/clutter-stage.c | 38 +++++++++++++++++++++++++++++++++++---
7886 1 file changed, 35 insertions(+), 3 deletions(-)
7888 commit 1d87ecc6a1be73e7d72c8c5ecb2b8268d5a0cd5e
7889 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7890 Date: Tue Dec 1 16:22:45 2009 +0000
7892 materials: Get the right blend function for alpha
7894 The correct blend function for the alpha channel is:
7896 GL_ONE, GL_ONE_MINUS_SRC_ALPHA
7898 As per bug 1406. This fix was dropped when the switch to premultiplied
7901 clutter/cogl/cogl/cogl-material.c | 2 +-
7902 1 file changed, 1 insertion(+), 1 deletion(-)
7904 commit b43e804c078578e54b0ef9680a5d7b4bf53cafe8
7905 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7906 Date: Tue Dec 1 16:06:57 2009 +0000
7908 actor: Fix a pre-condition check in set_text_direction()
7910 The check is failing because the condition should be:
7912 text_dir != CLUTTER_TEXT_DIRECTION_DEFAULT
7914 clutter/clutter-actor.c | 2 +-
7915 1 file changed, 1 insertion(+), 1 deletion(-)
7917 commit 3e034cda58776a0fbc6812cd8d859ad58b5cab54
7918 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7919 Date: Tue Dec 1 15:17:49 2009 +0000
7921 build: More cleanups for the configure summary
7923 Document each section, and add some more items to the summary like what
7924 JSON-GLib are we using, and which version of the GLES API is COGL
7927 configure.ac | 27 ++++++++++++++++++++++-----
7928 1 file changed, 22 insertions(+), 5 deletions(-)
7930 commit e3b409529e9000cff6aabac8efdaccc0eaecf83f
7931 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7932 Date: Tue Dec 1 15:17:16 2009 +0000
7934 build: Require a stable JSON-GLib version
7936 The 0.7 version is the development cycle for JSON-GLib 0.8.
7938 configure.ac | 8 ++++----
7939 1 file changed, 4 insertions(+), 4 deletions(-)
7941 commit 1c47638db4ac741f4bae9ede860d16b4e1693a36
7942 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7943 Date: Tue Dec 1 14:59:44 2009 +0000
7945 docs: Add missing symbols to clutter-sections.txt
7947 doc/reference/clutter/clutter-sections.txt | 8 ++++++++
7948 1 file changed, 8 insertions(+)
7950 commit 586750751a60b76e2f398be28d596009b6587c52
7951 Merge: c2332a5 6e99c1a
7952 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7953 Date: Tue Dec 1 14:55:19 2009 +0000
7955 Merge branch 'text-direction'
7958 docs: Add text-direction accessors
7959 Set the default language on the Pango context
7960 actor: Set text direction on parenting
7961 tests: Display the index inside text-box-layout
7962 box-layout: Honour :text-direction
7963 text: Dirty layout cache on text direction changes
7964 actor: Add :text-direction property
7965 Use the newly added ClutterTextDirection enumeration
7966 Add ClutterTextDirection enumeration
7968 commit 6e99c1aefe8f76cb3004a8cc89ae6f8b95d1f597
7969 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7970 Date: Tue Dec 1 14:55:01 2009 +0000
7972 docs: Add text-direction accessors
7974 doc/reference/clutter/clutter-sections.txt | 4 ++++
7975 1 file changed, 4 insertions(+)
7977 commit c2332a5d26d854dcb4223088904305988b35a906
7978 Author: Bastian Winkler <buz@netbuz.org>
7979 Date: Tue Dec 1 12:31:07 2009 +0000
7981 build: Fix the SUBDIRS ordering
7983 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
7985 Makefile.am | 4 +---
7986 1 file changed, 1 insertion(+), 3 deletions(-)
7988 commit 220a8fbfda5bda38e6c7689176fd876c57074ab5
7989 Author: Emmanuele Bassi <ebassi@linux.intel.com>
7990 Date: Tue Dec 1 10:16:25 2009 +0000
7992 docs: Move documentation under doc/
7994 Clean up the root directory of the project and try to keep the
7995 documentation all together.
7997 CODING_STYLE | 379 --------------------------------------------------
7998 HACKING | 89 ------------
7999 HACKING.backends | 160 ---------------------
8001 doc/CODING_STYLE | 379 ++++++++++++++++++++++++++++++++++++++++++++++++++
8002 doc/HACKING | 89 ++++++++++++
8003 doc/HACKING.backends | 160 +++++++++++++++++++++
8004 doc/Makefile.am | 5 +
8005 8 files changed, 633 insertions(+), 631 deletions(-)
8007 commit 348f5bfec8b8c0c682384001ac39b4e656b9c526
8008 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8009 Date: Tue Dec 1 10:11:33 2009 +0000
8011 cookbook: Clean up the text
8013 • Remove the empty sections.
8015 • Add the description for the "overriding the paint sequence" recipe.
8017 doc/cookbook/clutter-cookbook.xml.in | 124 +++++++++++++++++++++++-----------
8018 1 file changed, 86 insertions(+), 38 deletions(-)
8020 commit 52db14b78d848f0f876d4721895ccc2c83e06aba
8021 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8022 Date: Mon Nov 30 21:51:46 2009 +0000
8024 docs: Fix recursion into doc/ directory
8026 We should always recurse into the doc/ directory; whether we should then
8027 recurse into reference/, cookbook/ and manual/ is a matter of specific
8028 configure-time flags.
8030 Makefile.am | 6 +-----
8031 doc/Makefile.am | 6 +++++-
8032 2 files changed, 6 insertions(+), 6 deletions(-)
8034 commit 5e1ccaeb603fb9f9b2b11cad13bbcf8682b33504
8035 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8036 Date: Thu Sep 3 13:04:59 2009 +0100
8038 docs: Clean up the additional documentation build
8040 • Make the manual a DevHelp book
8042 • Make the generation of PDFs of the cookbook and the manual optional
8044 • Consequently, make the hard dependency on jw optional
8046 • Clean up the checks and build for the additional documentation
8049 configure.ac | 41 +--
8050 doc/Makefile.am | 8 +-
8051 doc/common/Makefile.am | 9 +
8052 doc/common/common.xsl | 19 ++
8053 doc/common/devhelp.xsl | 154 ++++++++++++
8054 doc/common/html.xsl | 285 +++++++++++++++++++++
8055 doc/common/ref-html-style.xsl | 54 ++++
8056 doc/common/style.css | 97 ++++++++
8057 doc/cookbook/Makefile.am | 30 ++-
8058 doc/cookbook/clutter-cookbook.xml | 456 ---------------------------------
8059 doc/cookbook/clutter-cookbook.xml.in | 457 ++++++++++++++++++++++++++++++++++
8060 doc/cookbook/common.xsl | 19 --
8061 doc/cookbook/cookbook.xsl | 14 --
8062 doc/cookbook/devhelp.xsl | 154 ------------
8063 doc/cookbook/html.xsl | 285 ---------------------
8064 doc/cookbook/ref-html-style.xsl | 54 ----
8065 doc/cookbook/style.css | 97 --------
8066 doc/manual/Makefile.am | 84 ++++---
8067 doc/manual/clutter-manual.xml.in | 9 +-
8068 20 files changed, 1174 insertions(+), 1161 deletions(-)
8070 commit ee9d358c452c8da879e7f40e4a2e701472067c04
8071 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8072 Date: Wed Sep 2 18:11:06 2009 +0100
8074 [cookbook] Build the Cookbook as a devhelp document
8076 Instead of creating stand-alone HTML files, use XSLT to transform the
8077 DocBook into a DevHelp file, so that we can read the Cookbook inside
8078 DevHelp -- just like the API reference.
8081 doc/cookbook/Makefile.am | 83 ++++++------
8082 doc/cookbook/common.xsl | 19 +++
8083 doc/cookbook/devhelp.xsl | 154 +++++++++++++++++++++
8084 doc/cookbook/html.xsl | 285 +++++++++++++++++++++++++++++++++++++++
8085 doc/cookbook/ref-html-style.xsl | 54 ++++++++
8086 6 files changed, 564 insertions(+), 40 deletions(-)
8088 commit 9485ef81a61d8950b7f04e01c749964c6a64922c
8089 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8090 Date: Wed Sep 2 13:13:44 2009 +0100
8092 [cookbook] Fix folds
8094 doc/cookbook/clutter-cookbook.xml | 5 +++--
8095 1 file changed, 3 insertions(+), 2 deletions(-)
8097 commit 2675b829990eb0b6fb9bae848bd64fc4461324d2
8098 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8099 Date: Thu Dec 11 17:03:10 2008 +0000
8101 Update the ignore file
8103 Add the temporary and output files of the cookbook.
8105 .gitignore | 5 +++++
8106 1 file changed, 5 insertions(+)
8108 commit a7f7bfbc876a256f40fc0c3a43691b07bffeae96
8109 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8110 Date: Thu Dec 11 17:02:05 2008 +0000
8112 Add the secon recipe to the Actors chapter
8114 The second recipe shows how to use the ::paint signal to override
8115 the paint sequence of a pre-existing actor.
8117 doc/cookbook/clutter-cookbook.xml | 153 +++++++++++++++++++++++++++++--------
8118 1 file changed, 122 insertions(+), 31 deletions(-)
8120 commit 26b35e657f3fcf3ae8b919c4c315337f2261003f
8121 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8122 Date: Thu Dec 11 17:00:16 2008 +0000
8124 Add the first recipe to the Actors chapter
8126 The first recipe shows how to be notified when the relative position
8127 and size of an actor changes using the notify:: signal on the actor's
8128 dimensional and positional properties.
8130 doc/cookbook/clutter-cookbook.xml | 128 ++++++++++++++++++++++++++++++++++---
8131 1 file changed, 120 insertions(+), 8 deletions(-)
8133 commit 135cb5c6e21200162939dc5a42f0a34c4daf8a39
8134 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8135 Date: Thu Dec 11 16:58:07 2008 +0000
8137 Add a preface instead of an introduction
8139 Make the Cookbook look more like a book than a tutorial.
8141 doc/cookbook/clutter-cookbook.xml | 64 +++++++++++++++++++++++++++++++++----
8142 1 file changed, 58 insertions(+), 6 deletions(-)
8144 commit 35627f240fa498656492e437c130ffe34674ca54
8145 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8146 Date: Thu Dec 11 16:57:46 2008 +0000
8148 Add the Clutter Cookbook to the build
8150 The "Clutter Cookbook" is a document designed to contain solutions
8151 to common problems applications developers might encounter when using
8152 Clutter. It is meant as a companion to the API reference but it
8153 requires knowledge of the Clutter API and framework.
8157 doc/cookbook/Makefile.am | 71 +++++++++++++
8158 doc/cookbook/clutter-cookbook.xml | 200 +++++++++++++++++++++++++++++++++++++
8159 doc/cookbook/cookbook.xsl | 14 +++
8160 doc/cookbook/style.css | 97 ++++++++++++++++++
8161 doc/cookbook/version.xml.in | 1 +
8162 7 files changed, 386 insertions(+)
8164 commit 15a04a1dd39fd19f28132cbd3c22b49c05c0773b
8165 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8166 Date: Mon Nov 30 19:03:11 2009 +0000
8168 layout-manager: Create LayoutMeta on demand
8170 The ClutterLayoutMeta instances should be created on demand, whenever
8171 the layout manager needs them - if the layout manager supports layout
8174 This removes the requirement to call add_child_meta() and
8175 remove_child_meta() on add and remove respectively; it also simplifies
8176 the implementation of LayoutManager sub-classes since we can add
8177 fallback code in the base abstract class.
8179 Eventually, this will also lead to an easier to implement ClutterScript
8180 parser for layout properties.
8182 With the new scheme, the ClutterLayoutMeta instance is created whenever
8183 the layout manager tries to access it; if there isn't an instance
8184 already attached to the container's child, one is created -- assuming
8185 that the LayoutManager sub-class has overridden the
8186 get_child_meta_type() virtual function and it's returning a valid GType.
8188 We can also provide a default implementation for create_child_meta(),
8189 by getting the GType and instantiating a ClutterLayoutMeta with all the
8190 fields already set. If the layout manager requires more work then it can
8191 obviously override the default implementation (and even chain up to it).
8193 The ClutterBox actor has been updated, as well as the ClutterBoxLayout
8194 layout manager, to take advantage of the changes of LayoutManager.
8196 clutter/clutter-box-layout.c | 13 --
8197 clutter/clutter-box.c | 10 --
8198 clutter/clutter-layout-manager.c | 221 +++++++++-------------------
8199 clutter/clutter-layout-manager.h | 8 +-
8200 doc/reference/clutter/clutter-sections.txt | 2 -
8201 5 files changed, 70 insertions(+), 184 deletions(-)
8203 commit 7d842079ca7521332b98e7cc06480a3f7e23110f
8204 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8205 Date: Mon Nov 30 18:22:26 2009 +0000
8207 conform: Add named object property unit for ClutterScript
8209 We should exercise the resolution of the object properties containing a
8210 string pointing to an object previously defined using ClutterScript.
8213 tests/conform/test-conform-main.c | 1 +
8214 tests/conform/test-script-parser.c | 28 ++++++++++++++++++++++++++++
8215 tests/data/Makefile.am | 18 ++++++++++++++----
8216 tests/data/test-script-named-object.json | 22 ++++++++++++++++++++++
8217 5 files changed, 66 insertions(+), 4 deletions(-)
8219 commit c3e640e6e36d3d3c72c1e340efa78817308a4283
8220 Author: Neil Roberts <neil@linux.intel.com>
8221 Date: Mon Nov 30 19:06:05 2009 +0000
8223 Use the correct colour when clearing the stage for picking
8225 The colour test for the stage in _clutter_do_pick checks for white to
8226 determine whether the stage was picked but since 47db7af4d we were
8227 setting the colur to black. This usually worked because the id of the
8228 default stage ends up being 0 which equates to black. However if a
8229 second stage is created then it will always end up picking the first
8232 clutter/clutter-main.c | 2 +-
8233 1 file changed, 1 insertion(+), 1 deletion(-)
8235 commit 1bb034fbd75bb7153f35c88b05ed0fb9544d0c8b
8236 Author: Neil Roberts <neil@linux.intel.com>
8237 Date: Sun Nov 29 20:06:36 2009 +0000
8239 cogl: Enable blending if a lighting colour is semi-transparent
8241 We currently enable blending if the material colour has
8242 transparency. This patch makes it also enable blending if any of the
8243 lighting colours have transparency. Arguably this isn't neccessary
8244 because we don't expose any API to enable lighting so there is no
8245 bug. However it is currently possible to enable lighting with a direct
8246 call to glEnable and this otherwise works so it is a shame not to have
8249 http://bugzilla.openedhand.com/show_bug.cgi?id=1907
8251 clutter/cogl/cogl/cogl-material.c | 14 +++++++++++++-
8252 1 file changed, 13 insertions(+), 1 deletion(-)
8254 commit 3cb974ee8be182944848b5e64dd4724f118bc8fa
8255 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8256 Date: Mon Nov 30 16:15:19 2009 +0000
8258 Set the default language on the Pango context
8260 When creating the Pango context we should also set the language
8261 to be the default Pango language.
8263 clutter/clutter-main.c | 2 ++
8264 1 file changed, 2 insertions(+)
8266 commit daeb3b2fecb3d740b6d84215928fc4477396dc71
8267 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8268 Date: Mon Nov 30 16:14:09 2009 +0000
8270 actor: Set text direction on parenting
8272 When setting the parent on an actor we should set the text direction to
8273 be the same as the parent's.
8275 clutter/clutter-actor.c | 12 ++++++++----
8276 1 file changed, 8 insertions(+), 4 deletions(-)
8278 commit 0ce5c7d350c8b904ed8cc15c911e6433619c6a2d
8279 Author: Damien Lespiau <damien.lespiau@intel.com>
8280 Date: Mon Nov 30 13:26:45 2009 +0100
8282 gitignore: update gitignore files to match the latest cogl tests
8284 Some cogl tests were renamed in c1247066 to have 'cogl' in their names.
8285 It's a good excuse to merge .gitigore and tests/.gitignore.
8287 .gitignore | 21 +++++++++++++--------
8288 tests/.gitignore | 52 ----------------------------------------------------
8289 2 files changed, 13 insertions(+), 60 deletions(-)
8291 commit 4f06d035a2895b2839ba0e97109e8a44c1ad07e2
8292 Author: Damien Lespiau <damien.lespiau@intel.com>
8293 Date: Wed Nov 25 13:29:26 2009 +0100
8295 tests: fix argument parsing of test-texture-quality
8297 This test did not open redhand.png as argc/argv should be handled
8298 normally (argv[0] being the name of the exectutable).
8300 Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
8302 tests/interactive/test-texture-quality.c | 4 ++--
8303 1 file changed, 2 insertions(+), 2 deletions(-)
8305 commit e4180b283836ccd665d23d1e19d35a8911c40436
8306 Author: Damien Lespiau <damien.lespiau@intel.com>
8307 Date: Wed Nov 25 13:25:14 2009 +0100
8309 tests: give all the arguments to the wrapper
8311 Some tests can be given extra arguments. The test-interactive dispatch
8312 mechanism handles that but the small shell scripts around the wrapper
8313 do not forward the arguments to the wrapper.
8315 Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
8317 tests/interactive/Makefile.am | 5 +++--
8318 1 file changed, 3 insertions(+), 2 deletions(-)
8320 commit 934eb5d251ad9d9987d0ff1f0f9878fffc2484f1
8321 Author: Robert Bragg <robert@linux.intel.com>
8322 Date: Fri Nov 27 15:24:09 2009 +0000
8324 primitives: Don't use dynamic arrays since VS2008 can't cope with them :-(
8326 This changes _cogl_path_fill_nodes_scanlines to use g_alloca instead of
8327 using a variable to declare an array length.
8329 clutter/cogl/cogl/cogl-primitives.c | 2 +-
8330 1 file changed, 1 insertion(+), 1 deletion(-)
8332 commit 47db7af4d3001387a3c7adc60f6c3166c149ab5d
8333 Author: Robert Bragg <robert@linux.intel.com>
8334 Date: Wed Nov 25 20:37:01 2009 +0000
8336 picking: avoid redundant picking geometry for the stage.
8338 The stage's pick id can be written to the framebuffer when we call
8339 cogl_clear so there's no need for the stage to also chain up in it's pick
8340 function resulting in clutter-actor.c also emitting a rectangle for the
8343 clutter/clutter-main.c | 6 +++---
8344 clutter/clutter-stage.c | 12 +++++++-----
8345 2 files changed, 10 insertions(+), 8 deletions(-)
8347 commit c12470666e6bd63024437a389cd2c1202df93c33
8348 Author: Robert Bragg <robert@linux.intel.com>
8349 Date: Fri Nov 27 00:28:39 2009 +0000
8351 tests: rename cogl conformance tests so they can be clearly identified
8353 All Cogl conformance tests are now prefixed 'test-cogl-'
8355 tests/conform/Makefile.am | 24 +-
8356 tests/conform/test-backface-culling.c | 339 ----------------
8357 tests/conform/test-blend-strings.c | 416 --------------------
8358 tests/conform/test-clutter-fixed.c | 18 -
8359 tests/conform/test-cogl-backface-culling.c | 339 ++++++++++++++++
8360 tests/conform/test-cogl-blend-strings.c | 416 ++++++++++++++++++++
8361 tests/conform/test-cogl-fixed.c | 18 +
8362 tests/conform/test-cogl-materials.c | 195 +++++++++
8363 tests/conform/test-cogl-npot-texture.c | 230 +++++++++++
8364 tests/conform/test-cogl-premult.c | 390 ++++++++++++++++++
8365 tests/conform/test-cogl-vertex-buffer-contiguous.c | 269 +++++++++++++
8366 tests/conform/test-cogl-vertex-buffer-interleved.c | 174 ++++++++
8367 tests/conform/test-cogl-vertex-buffer-mutability.c | 211 ++++++++++
8368 tests/conform/test-conform-main.c | 34 +-
8369 tests/conform/test-materials.c | 195 ---------
8370 tests/conform/test-npot-texture.c | 230 -----------
8371 tests/conform/test-premult.c | 390 ------------------
8372 tests/conform/test-vertex-buffer-contiguous.c | 269 -------------
8373 tests/conform/test-vertex-buffer-interleved.c | 174 --------
8374 tests/conform/test-vertex-buffer-mutability.c | 211 ----------
8375 20 files changed, 2272 insertions(+), 2270 deletions(-)
8377 commit 439f8c62b0e2651b9afeb08cb5166ed9e7f49521
8378 Author: Robert Bragg <robert@linux.intel.com>
8379 Date: Thu Nov 26 19:06:35 2009 +0000
8381 cogl: deprecate cogl_draw_buffer API and replace with a cogl_framebuffer API
8383 cogl_push_draw_buffer, cogl_set_draw_buffer and cogl_pop_draw_buffer are now
8384 deprecated and new code should use the new cogl_framebuffer_* API instead.
8386 Code that previously did:
8387 cogl_push_draw_buffer ();
8388 cogl_set_draw_buffer (COGL_OFFSCREEN_BUFFER, buffer);
8390 cogl_pop_draw_buffer ();
8391 should now be re-written as:
8392 cogl_push_framebuffer (buffer);
8394 cogl_pop_framebuffer ();
8396 As can be seen from the example above the rename has been used as an
8397 opportunity to remove the redundant target argument from
8398 cogl_set_draw_buffer; it now only takes one call to redirect to an offscreen
8399 buffer, and finally the term framebuffer may be a bit more familiar to
8400 anyone coming from an OpenGL background.
8403 clutter/clutter-texture.c | 15 +-
8404 clutter/cogl/cogl/Makefile.am | 4 +-
8405 clutter/cogl/cogl/cogl-clip-stack.c | 74 +--
8406 clutter/cogl/cogl/cogl-context.c | 13 +-
8407 clutter/cogl/cogl/cogl-context.h | 4 +-
8408 clutter/cogl/cogl/cogl-draw-buffer-private.h | 133 ------
8409 clutter/cogl/cogl/cogl-draw-buffer.c | 603 -------------------------
8410 clutter/cogl/cogl/cogl-framebuffer-private.h | 124 ++++++
8411 clutter/cogl/cogl/cogl-framebuffer.c | 618 ++++++++++++++++++++++++++
8412 clutter/cogl/cogl/cogl-journal.c | 12 +-
8413 clutter/cogl/cogl/cogl-matrix-stack.c | 6 +-
8414 clutter/cogl/cogl/cogl-primitives.c | 30 +-
8415 clutter/cogl/cogl/cogl-texture.c | 12 +-
8416 clutter/cogl/cogl/cogl-vertex-buffer.c | 6 +-
8417 clutter/cogl/cogl/cogl.c | 80 ++--
8418 clutter/cogl/cogl/cogl.h | 73 ++-
8419 doc/reference/cogl/cogl-sections.txt | 3 +
8420 tests/conform/test-backface-culling.c | 7 +-
8421 tests/conform/test-cogl-offscreen.c | 33 +-
8422 tests/conform/test-cogl-readpixels.c | 45 +-
8423 tests/conform/test-cogl-viewport.c | 90 ++--
8424 tests/interactive/test-cogl-offscreen.c | 4 +-
8425 23 files changed, 1035 insertions(+), 967 deletions(-)
8427 commit b598210e011f6711848e649217ac7a35770bfe8e
8428 Author: Robert Bragg <robert@linux.intel.com>
8429 Date: Thu Nov 26 17:47:17 2009 +0000
8431 cogl_offscreen: deprecate cogl_offscreen_ref/unref.
8433 New code should use cogl_handle_ref/unref
8435 clutter/cogl/cogl/cogl-offscreen.h | 34 +++++++++++++++++++++-------------
8436 1 file changed, 21 insertions(+), 13 deletions(-)
8438 commit e12a691187a7dbbcfe5b46b94fe2975fd0927966
8439 Author: Neil Roberts <neil@linux.intel.com>
8440 Date: Wed Nov 25 13:39:45 2009 +0000
8442 cogl: Use a vtable for the texture backends instead of a type and switch
8444 Instead of storing an enum with the backend type for each texture and
8445 then using a switch statement to decide which function to call, we
8446 should store pointers to all of the functions in a struct and have
8447 each texture point to that struct. This is potentially slightly faster
8448 when there are more backends and it makes implementing new backends
8449 easier because it's more obvious which functions have to be
8452 clutter/cogl/cogl/cogl-texture-2d-sliced-private.h | 62 ----------
8453 clutter/cogl/cogl/cogl-texture-2d-sliced.c | 122 +++++++++----------
8454 clutter/cogl/cogl/cogl-texture-private.h | 97 +++++++++++----
8455 clutter/cogl/cogl/cogl-texture.c | 124 ++++----------------
8456 4 files changed, 154 insertions(+), 251 deletions(-)
8458 commit 558b17ee1e71fb0fe7aea35e13cd5a73b18130dc
8459 Author: Robert Bragg <robert@linux.intel.com>
8460 Date: Wed Nov 25 02:47:52 2009 +0000
8462 offscreen: cogl_offscreen_new_to_texture now supports GL_TEXTURE_RECTANGLE_ARB
8464 cogl_offscreen_new_to_texture previously bailed out if the given texture's
8465 GL target was anything but GL_TEXTURE_2D, but it now also allows
8466 foreign GL_TEXTURE_RECTANGLE_ARB textures.
8468 Thanks to Owen for reporting this issue, ref:
8469 https://bugzilla.gnome.org/show_bug.cgi?id=601032
8471 clutter/cogl/cogl/cogl-draw-buffer.c | 3 ++-
8472 1 file changed, 2 insertions(+), 1 deletion(-)
8474 commit d3a01e0c96237ca060e3451d2b80e692dfb3b8f6
8475 Author: Robert Bragg <robert@linux.intel.com>
8476 Date: Tue Nov 24 18:24:07 2009 +0000
8478 debug: remove the COGL_DEBUG=client-side-matrices option
8480 Cogl only supports client side matrices so this debug option is no longer
8483 clutter/cogl/cogl/cogl-debug.c | 1 -
8484 clutter/cogl/cogl/cogl-debug.h | 13 ++++++-------
8485 2 files changed, 6 insertions(+), 8 deletions(-)
8487 commit b38c6b420f0ae1f118189bd0a8994fce479aef7b
8488 Author: Robert Bragg <robert@linux.intel.com>
8489 Date: Wed Nov 11 12:50:48 2009 +0000
8491 [cogl-material] Adds cogl_material_copy() API
8493 cogl_material_copy can be used to create a new CoglHandle referencing a copy
8494 of some given material.
8496 From now on we will advise that developers always aim to use this function
8497 instead of cogl_material_new() when creating a material that is in any way
8498 derived from another.
8500 By using cogl_material_copy, Cogl can maintain an ancestry for each material
8501 and keep track of "similar" materials. The plan is that Cogl will use this
8502 information to minimize the cost of GPU state transitions.
8505 clutter/cogl/cogl/cogl-context.c | 13 ++++--
8506 clutter/cogl/cogl/cogl-context.h | 4 +-
8507 clutter/cogl/cogl/cogl-material-private.h | 9 +++++
8508 clutter/cogl/cogl/cogl-material.c | 62 ++++++++++++++++++++++++-----
8509 clutter/cogl/cogl/cogl-material.h | 18 +++++++++
8510 clutter/cogl/cogl/cogl.c | 6 +--
8511 7 files changed, 100 insertions(+), 17 deletions(-)
8513 commit 70ca3bfe4173aabd352fd0aed484c0bab57a8d02
8514 Author: Robert Bragg <robert@linux.intel.com>
8515 Date: Wed Nov 11 12:52:08 2009 +0000
8517 [cogl] remove unused gles/cogl-utils.[c,h]
8519 The only function in gles/cogl-utils.c was cogl_util_next_p2() and it's
8520 redundant since we also have a cogl/cogl-utils.[c,h]
8522 clutter/cogl/cogl/driver/gles/cogl-util.c | 49 -----------------------------
8523 clutter/cogl/cogl/driver/gles/cogl-util.h | 30 ------------------
8524 2 files changed, 79 deletions(-)
8526 commit 4a63af0c631cd9391a6b3cef6fdb545e36a68730
8527 Author: Robert Bragg <robert@linux.intel.com>
8528 Date: Mon Nov 23 11:30:32 2009 +0000
8530 docs: Don't document cogl_flush_gl_state as public API
8532 This function was #if 0'd before we released Clutter 1.0 so there's no
8533 implementation of it. At some point we thought it might assist with
8534 developers breaking out into raw OpenGL. Breaking out to raw GL is a
8535 difficult problem though so we decided instead we will wait for a specific
8536 use case to arrise before trying to support it.
8538 clutter/cogl/cogl/cogl.c | 8 --------
8539 clutter/cogl/cogl/cogl.h | 22 ----------------------
8540 doc/reference/cogl/cogl-sections.txt | 1 -
8541 3 files changed, 31 deletions(-)
8543 commit 328ce370e7a7f155f63ee8206e8b6cd4e66a6c94
8544 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8545 Date: Tue Nov 24 16:59:24 2009 +0000
8547 animation: Keep a weak reference on actors
8549 Actors, unlike objects, can effectively go away whilst being
8550 animated - usually because of an explicit destoy().
8552 The Animation created by clutter_actor_animate() and friends
8553 should keep a weak reference on the actor and eventually
8554 get rid of the animation itself in case the actor goes away
8555 whilst being animated.
8557 clutter/clutter-animation.c | 13 +++++++++++++
8558 1 file changed, 13 insertions(+)
8560 commit 1107fa8797b0d2475097c20b50065dbc3ae014a1
8561 Author: Neil Roberts <neil@linux.intel.com>
8562 Date: Thu Nov 19 16:07:38 2009 +0000
8564 Minor fix to cogl material
8566 _cogl_material_get_layer expects a CoglMaterial* pointer but it was
8567 being called with a CoglHandle. This doesn't matter because the
8568 CoglHandle is actually just the CoglMaterial* pointer anyway but it
8569 breaks the ability to change the _cogl_material_pointer_from_handle
8572 clutter/cogl/cogl/cogl-material.c | 2 +-
8573 1 file changed, 1 insertion(+), 1 deletion(-)
8575 commit 6fd80ffbd926318413296112871891706867cd78
8576 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8577 Date: Thu Nov 19 14:30:01 2009 +0000
8579 docs: Add indices to the Cogl API reference
8581 The Clutter API reference has an index of the symbols for each minor
8582 version, and a list of deprecated symbols. The Cogl API reference
8583 should have the same layout.
8585 doc/reference/cogl/cogl-docs.xml.in | 23 ++++++++++++++++++++++-
8586 1 file changed, 22 insertions(+), 1 deletion(-)
8588 commit 8d64c4641dbf9dfb09d2719872911263d2b758dc
8589 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8590 Date: Thu Nov 19 13:55:10 2009 +0000
8592 docs: Increase consistency in Cogl documentation
8594 clutter/cogl/cogl/cogl-texture.h | 66 +++++++++-------
8595 clutter/cogl/cogl/cogl-vertex-buffer.h | 134 +++++++++++++++++---------------
8596 clutter/cogl/cogl/cogl.h | 90 +++++++++++----------
8597 3 files changed, 157 insertions(+), 133 deletions(-)
8599 commit 550c14449e090f7921cdddc6acedb1bd72552663
8600 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8601 Date: Thu Nov 19 13:33:26 2009 +0000
8603 docs: Documentation fixes for CoglMatrix
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.
8608 clutter/cogl/cogl/cogl-matrix.h | 136 +++++++++++++++++++--------------------
8609 1 file changed, 68 insertions(+), 68 deletions(-)
8611 commit 056cfcffc312f9508f07c82e41d96c606559db97
8612 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8613 Date: Thu Nov 19 13:33:08 2009 +0000
8615 Whitespace fix for cogl-color.h
8617 clutter/cogl/cogl/cogl-color.h | 3 ++-
8618 1 file changed, 2 insertions(+), 1 deletion(-)
8620 commit 851d628cf8fe89ab28d66f790ad98db766831e37
8621 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8622 Date: Thu Nov 19 13:31:38 2009 +0000
8624 docs: Documentation fixes for CoglMaterial
8626 Clean up the references, the docbook tags, and the style to fit in
8627 with the rest of the API references for Cogl and Clutter.
8629 clutter/cogl/cogl/cogl-material.h | 404 +++++++++++++++++++------------------
8630 1 file changed, 205 insertions(+), 199 deletions(-)
8632 commit fe804f1d023b50801d400971bf311545727921e9
8633 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8634 Date: Thu Nov 19 13:29:02 2009 +0000
8636 docs: Documentation fixes for CoglBitmap
8638 • Use the same style for the Cogl API reference as the one used for
8639 the Clutter API reference.
8641 • Fix the introspection annotations for cogl_bitmap_get_size_from_file()
8643 clutter/cogl/cogl/cogl-bitmap.h | 25 +++++++++++++------------
8644 1 file changed, 13 insertions(+), 12 deletions(-)
8646 commit 1bf8db9e75c6155bb852980cb40a9117c6190500
8647 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8648 Date: Thu Nov 19 12:34:06 2009 +0000
8650 docs: Fix Cogl API reference build
8652 • Ignore all the private header files
8654 • Add all missing/unused symbols
8656 • Remove deprecated symbols from 0.*
8658 doc/reference/cogl/Makefile.am | 30 ++++++++++++++++++++++--------
8659 doc/reference/cogl/cogl-sections.txt | 29 ++++++++++++++++++++++++-----
8660 2 files changed, 46 insertions(+), 13 deletions(-)
8662 commit 05a5a7e759455a98233ea86016edf86d6d17be36
8663 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8664 Date: Thu Nov 19 12:32:59 2009 +0000
8666 docs: Remove non-gtk-doc annotations
8668 The imported Mesa matrix code has some documentation annotations
8669 that make gtk-doc very angry. Since it's all private anyway we
8670 can safely make gtk-doc ignore the offending stuff.
8672 clutter/cogl/cogl/cogl-matrix-mesa.c | 136 +++++++++++++++++-----------------
8673 clutter/cogl/cogl/cogl-matrix-mesa.h | 12 +--
8674 2 files changed, 74 insertions(+), 74 deletions(-)
8676 commit 7a011af97406c0075cc32eb2fbe4a07dc3d828c2
8677 Author: Neil Roberts <neil@linux.intel.com>
8678 Date: Thu Nov 19 11:51:21 2009 +0000
8680 docs: Fix the 'Since' annotation for some functions
8682 The 'Since' annotation needs to have a colon after it or gtk-doc won't
8685 clutter/clutter-behaviour-path.h | 2 +-
8686 clutter/clutter-text.c | 2 +-
8687 clutter/cogl/cogl/cogl-material.h | 40 +++++++++++++++---------------
8688 clutter/cogl/cogl/cogl-texture.h | 6 ++---
8689 clutter/cogl/cogl/cogl.h | 4 +--
8690 clutter/x11/clutter-x11-texture-pixmap.c | 4 +--
8691 6 files changed, 29 insertions(+), 29 deletions(-)
8693 commit 8ef57898ad66af345946a1f69172fc8be7038def
8694 Author: Neil Roberts <neil@linux.intel.com>
8695 Date: Wed Nov 18 19:09:10 2009 +0000
8697 cogl: Use APIENTRY for GL function pointer declarations
8699 This matters for platforms such as Windows that use a different
8700 calling covention from the default for GL functions.
8702 clutter/cogl/cogl/driver/gl/cogl-context-driver.h | 6 +++++-
8703 clutter/cogl/cogl/driver/gles/cogl-context-driver.h | 6 +++++-
8704 2 files changed, 10 insertions(+), 2 deletions(-)
8706 commit be58e5261f3b0c6a760577f67f2859511d6e52f2
8707 Author: Neil Roberts <neil@linux.intel.com>
8708 Date: Wed Nov 18 19:23:57 2009 +0000
8710 build: Fix out-of-tree builds for cogl-defines.h
8712 $(COGL_DRIVER)/cogl-defines.h is generated in the configure script so
8713 it ends up in the build directory. Therefore the build rule for
8714 cogl/cogl-defines.h should depend on the file in $(builddir) not
8717 clutter/cogl/cogl/Makefile.am | 4 ++--
8718 1 file changed, 2 insertions(+), 2 deletions(-)
8720 commit 19e485325faa59d44556dd6dac9543fb616e680b
8721 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8722 Date: Wed Nov 18 18:04:13 2009 +0000
8724 docs: Clean up deprecation notices
8726 The deprecation notices in gtk-doc should also refer to the
8727 release that added the deprecation, and if the deprecated
8728 symbol has been replaced by something else then the new symbol
8729 should be correctly referenced.
8731 clutter/cogl/cogl/cogl.h | 46 +++++++++++++++++++++++-----------------------
8732 1 file changed, 23 insertions(+), 23 deletions(-)
8734 commit 5f28c8b654094e27112426c206cf8294428515f9
8735 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8736 Date: Wed Nov 18 17:35:07 2009 +0000
8738 build: Make cogl.h not conditional on driver defines
8740 The main COGL header cogl.h is currently created at configure time
8741 because it conditionally includes the driver-dependent defines. This
8742 sometimes leads to a stale cogl.h with old definitions which can
8743 break the build until you clean out the whole tree and start from
8746 We can generate a stable cogl-defines.h at build time from the
8747 equivalent driver-dependent header and let cogl.h include that
8751 clutter/cogl/cogl/Makefile.am | 18 +-
8752 clutter/cogl/cogl/cogl.h | 991 +++++++++++++++++++++++++++++++++++++++++
8753 clutter/cogl/cogl/cogl.h.in | 991 -----------------------------------------
8755 5 files changed, 1008 insertions(+), 1004 deletions(-)
8757 commit b869e87c86b73a8c09c5f509955a120978da7604
8758 Author: Neil Roberts <neil@linux.intel.com>
8759 Date: Wed Nov 18 17:16:38 2009 +0000
8761 test-npot-texture: Add some verbose notes
8763 This just adds some verbose output stating whether Cogl thinks that
8764 NPOT textures are supported.
8766 tests/conform/test-npot-texture.c | 16 ++++++++++++++++
8767 1 file changed, 16 insertions(+)
8769 commit 8f1edcb6eda89405286b7b1cdab3b8d8b899a778
8770 Author: Neil Roberts <neil@linux.intel.com>
8771 Date: Wed Nov 18 14:21:22 2009 +0000
8773 disable-npots: Don't allow the GL version to be 2.0
8775 Cogl now assumes non-power-of-two textures are supported if the GL
8776 version is >= 2.0 so the disable-npots utility should also change the
8779 tests/tools/disable-npots.c | 79 +++++++++++++++++++++++++++++++++++++++----
8780 1 file changed, 72 insertions(+), 7 deletions(-)
8782 commit e80030755e37df28b30903bad63dc776b546abc3
8783 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8784 Date: Wed Nov 18 15:21:09 2009 +0000
8786 build: Fix EXTRA_DIST and MAINTAINERCLEANFILES rules
8788 Makefile.am | 19 +++++++------------
8789 1 file changed, 7 insertions(+), 12 deletions(-)
8791 commit ed4f0beac944a036839cd860f8aad223ffc101f2
8792 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8793 Date: Wed Nov 18 15:11:56 2009 +0000
8797 README | 36 ++++++++++++++++++------------------
8798 1 file changed, 18 insertions(+), 18 deletions(-)
8800 commit 44f926556d98737fd10b18fdb6951a41672c46db
8801 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8802 Date: Wed Nov 18 15:06:37 2009 +0000
8804 docs: Update the "writing a backend" documentation
8806 The documentation on how a ClutterBackend and stage are implemented
8807 is a wee bit out of date.
8809 HACKING.backends | 39 +++++++++++++++++++++++----------------
8810 1 file changed, 23 insertions(+), 16 deletions(-)
8812 commit f8e4e6727290aa63d2ec7dc30ca46913c98cb7ea
8813 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8814 Date: Wed Nov 18 14:56:59 2009 +0000
8816 Remove clutter.symbols
8818 The symbols file is unused since Clutter 0.6, and the win32 backend
8819 does not depend on it anymore.
8821 clutter.symbols | 611 -------------------------------------------------------
8822 1 file changed, 611 deletions(-)
8824 commit a4f1d1d6cc12b7007ac467673cf8d98dba132c87
8825 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8826 Date: Wed Nov 18 14:56:25 2009 +0000
8828 Rename ChangeLog.SVN
8830 ChangeLog.SVN |15737 ----------------------------------------------
8831 ChangeLog.pre-git-import |15737 ++++++++++++++++++++++++++++++++++++++++++++++
8832 2 files changed, 15737 insertions(+), 15737 deletions(-)
8834 commit 60fae6a92eff5b61e4074f40161aa7b0b40bf2b9
8835 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8836 Date: Wed Nov 18 14:37:43 2009 +0000
8838 build: Add cogl-matrix-private.h to the dist
8840 clutter/cogl/cogl/Makefile.am | 1 +
8841 1 file changed, 1 insertion(+)
8843 commit 425f3b466041f46d1faed06da1cc46665bad60c6
8844 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8845 Date: Wed Nov 18 14:34:33 2009 +0000
8847 build: Add cogl-feature-functions.h to the dist
8849 clutter/cogl/cogl/driver/gl/Makefile.am | 1 +
8850 clutter/cogl/cogl/driver/gles/Makefile.am | 3 ++-
8851 2 files changed, 3 insertions(+), 1 deletion(-)
8853 commit d11343532d813cf9b16e5c1ac92c0f0bc56e8850
8854 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8855 Date: Wed Nov 18 14:21:08 2009 +0000
8857 build: Generate per-cycle ChangeLog files
8859 We should generate a ChangeLog for each minor version cycle, starting
8860 from the Git import date (since before that we used ChangeLog-style
8861 commit messages that don't really look good with the Git ones).
8863 For this reason we can take Cairo's Makefile.am.changelog file and,
8864 after tweaking it to fit our use case, let it generate the correct
8869 build/autotools/Makefile.am.changelog | 91 +++++++++++++++++++++++++++------
8870 configure.ac | 8 +--
8871 4 files changed, 82 insertions(+), 25 deletions(-)
8873 commit 18e9d0db6fc9e120a63485d1ecbc8b5514d66c77
8874 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8875 Date: Wed Nov 18 12:20:53 2009 +0000
8877 build: Move ChangeLog rules in a separate file
8879 The ChangeLog creation rules should be moved to their own file, to
8880 make it easier to fix or change them in the future.
8882 Makefile.am | 20 +-------------------
8883 build/autotools/Makefile.am | 1 +
8884 build/autotools/Makefile.am.changelog | 19 +++++++++++++++++++
8885 3 files changed, 21 insertions(+), 19 deletions(-)
8887 commit 142305b1d51e9a3c69e8e2e224480297e43f79ea
8888 Author: Neil Roberts <neil@linux.intel.com>
8889 Date: Wed Nov 18 13:23:10 2009 +0000
8891 cogl: Add the missing terminators for the arrays of feature functions
8893 _cogl_feature_check expects the array of function names to be
8894 terminated with a NULL pointer but I forgot to add this. This was
8895 causing crashes depending on what happened to be in memory after the
8898 clutter/cogl/cogl/driver/gl/cogl.c | 1 +
8899 clutter/cogl/cogl/driver/gles/cogl.c | 1 +
8900 2 files changed, 2 insertions(+)
8902 commit 70aeb1c64216d75ba63f1cbae1c824b69305bd73
8903 Author: Christian Persch <chpe@gnome.org>
8904 Date: Tue Nov 17 20:43:39 2009 +0100
8906 Pass the interned string value to the binding callback
8908 http://bugzilla.openedhand.com/show_bug.cgi?id=1891
8910 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
8912 clutter/clutter-binding-pool.c | 2 +-
8913 1 file changed, 1 insertion(+), 1 deletion(-)
8915 commit 2832940603733873a76cb4c890f4a3d656d07112
8916 Author: Neil Roberts <neil@linux.intel.com>
8917 Date: Tue Nov 17 18:06:31 2009 +0000
8919 cogl: Use the GL_EXT_blend_{func,equation}_separate extensions
8921 We should use these extensions to check for glBlendFuncSeparate and
8922 glBlendEquationSeparate as well as checking the GL version number.
8924 clutter/cogl/cogl/driver/gl/cogl-feature-functions.h | 12 ++++++------
8925 1 file changed, 6 insertions(+), 6 deletions(-)
8927 commit 6e0877507e00016cac1136c4e0dbab67e6a3e9ba
8928 Author: Neil Roberts <neil@linux.intel.com>
8929 Date: Tue Nov 17 17:22:22 2009 +0000
8931 cogl: Don't bother checking for NPOTs or VBOs on later GLs
8933 For VBOs, we don't need to check for the extension if the GL version
8934 is greater than 1.5. Non-power-of-two textures are given in 2.0.
8936 We could also assume shader support in GL 2.0 except that the function
8937 names are different from those in the extension so it wouldn't work
8938 well with the current mechanism.
8940 clutter/cogl/cogl/driver/gl/cogl-feature-functions.h | 4 +++-
8941 clutter/cogl/cogl/driver/gl/cogl.c | 3 ++-
8942 2 files changed, 5 insertions(+), 2 deletions(-)
8944 commit 4a8c1ff8fa6244cad0b0e770ab6f68e319271675
8945 Author: Emmanuele Bassi <ebassi@linux.intel.com>
8946 Date: Tue Nov 17 15:32:00 2009 +0000
8948 build: Clean up the configure summary
8950 Split out into section the configuration report, and clean
8951 up the reported settings - including when experimental features
8954 configure.ac | 97 ++++++++++++++++++++++++++++++++++++++--------------------
8955 1 file changed, 64 insertions(+), 33 deletions(-)
8957 commit 91cde78a7023d728ebb33c73684fc3702ad87963
8958 Author: Neil Roberts <neil@linux.intel.com>
8959 Date: Tue Nov 17 13:52:40 2009 +0000
8961 cogl: Make it easier to add checks for GL extensions
8963 Previously if you need to depend on a new GL feature you had to:
8965 - Add typedefs for all of the functions in cogl-defines.h.in
8967 - Add function pointers for each of the functions in
8968 cogl-context-driver.h
8970 - Add an initializer for the function pointers in
8971 cogl-context-driver.c
8973 - Add a check for the extension and all of the functions in
8974 cogl_features_init. If the extension is available under multiple
8975 names then you have to duplicate the checks.
8977 This is quite tedious and error prone. This patch moves all of the
8978 features and their functions into a list of macro invocations in
8979 cogl-feature-functions.h. The macros can be redefined to implement all
8980 of the above tasks from the same header.
8982 The features are described in a struct with a pointer to a table of
8983 functions. A new function takes the feature description from this
8984 struct and checks for its availability. The feature can take a list of
8985 extension names with a list of alternate namespaces (such as "EXT" or
8986 "ARB"). It can also detect the feature from a particular version of
8989 The typedefs are now gone and instead the function pointer in the Cogl
8990 context just directly contains the type.
8992 Some of the functions in the context were previously declared with the
8993 'ARB' extension. This has been removed so that now all the functions
8994 have no suffix. This makes more sense when the extension could
8995 potentially be merged into GL core as well.
8997 clutter/cogl/cogl/Makefile.am | 2 +
8998 clutter/cogl/cogl/cogl-feature-private.c | 141 ++++++++
8999 clutter/cogl/cogl/cogl-feature-private.h | 71 ++++
9000 clutter/cogl/cogl/cogl-journal.c | 10 +-
9001 clutter/cogl/cogl/cogl-vertex-buffer.c | 21 +-
9002 clutter/cogl/cogl/driver/gl/cogl-context-driver.c | 58 +--
9003 clutter/cogl/cogl/driver/gl/cogl-context-driver.h | 81 +----
9004 clutter/cogl/cogl/driver/gl/cogl-defines.h.in | 361 -------------------
9005 .../cogl/cogl/driver/gl/cogl-feature-functions.h | 326 +++++++++++++++++
9006 clutter/cogl/cogl/driver/gl/cogl-program.c | 89 +++--
9007 clutter/cogl/cogl/driver/gl/cogl-shader.c | 27 +-
9008 clutter/cogl/cogl/driver/gl/cogl.c | 369 ++------------------
9009 .../cogl/cogl/driver/gles/cogl-context-driver.c | 19 +-
9010 .../cogl/cogl/driver/gles/cogl-context-driver.h | 25 +-
9011 clutter/cogl/cogl/driver/gles/cogl-defines.h.in | 70 ----
9012 .../cogl/cogl/driver/gles/cogl-feature-functions.h | 72 ++++
9013 clutter/cogl/cogl/driver/gles/cogl.c | 82 ++---
9014 17 files changed, 794 insertions(+), 1030 deletions(-)
9016 commit 4734b7be418274cf00390c805b472b9493100157
9017 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9018 Date: Sat Nov 14 13:03:59 2009 +0000
9020 docs: Detail the Clutter debugging flags
9022 doc/reference/clutter/running-clutter.xml | 56 +++++++++++++++++++++++++++++
9023 1 file changed, 56 insertions(+)
9025 commit 037192552ed126c35e430c11f030f16e984ac0b4
9026 Author: Neil Roberts <neil@linux.intel.com>
9027 Date: Fri Nov 13 17:23:13 2009 +0000
9029 win32: Remove the check for GL 1.2
9031 Since 568c29ba4 the GL version is now validated further up in
9032 ClutterStage via Cogl so there is no need for the Win32 backend to do
9035 clutter/win32/clutter-stage-win32.c | 42 -----------------------------------
9036 1 file changed, 42 deletions(-)
9038 commit 62a37d8e538abc6d0c67bd69b4eb2a724668cce0
9039 Author: Neil Roberts <neil@linux.intel.com>
9040 Date: Wed Nov 11 16:42:53 2009 +0000
9042 Use the GL_ARB_multitexture extension on GL 1.2
9044 Cogl requires multi-texturing support. This is only available as an
9045 extension in GL 1.2 so we should check for it before accepting the
9048 http://bugzilla.openedhand.com/show_bug.cgi?id=1875
9050 clutter/cogl/cogl/driver/gl/cogl.c | 46 ++++++++++++++++++++++++++++++------
9051 1 file changed, 39 insertions(+), 7 deletions(-)
9053 commit 2e99b276a4d312d6123426e2c88adf621a427c86
9054 Author: Neil Roberts <neil@linux.intel.com>
9055 Date: Wed Nov 11 13:38:52 2009 +0000
9057 cogl-material: Fallback to BlendFunc if BlendFuncSeparate is unavailable
9059 glBlendFuncSeparate is only available in OpenGL 1.4. If we
9060 conditionally check for this then Clutter will work with OpenGL 1.2.
9062 http://bugzilla.openedhand.com/show_bug.cgi?id=1875
9064 clutter/cogl/cogl/cogl-material.c | 11 ++++++++---
9065 1 file changed, 8 insertions(+), 3 deletions(-)
9067 commit 568c29ba491e4a6b3bef426be528d7246110011c
9068 Author: Neil Roberts <neil@linux.intel.com>
9069 Date: Wed Nov 11 13:26:54 2009 +0000
9071 Validate that the GL version is >= 1.2
9073 There is a new internal Cogl function called _cogl_check_driver_valid
9074 which looks at the value of the GL_VERSION string to determine whether
9075 the driver is supported. Clutter now calls this after the stage is
9076 realized. If it fails then the stage is marked as unrealized and a
9079 _cogl_features_init now also checks the version number before getting
9080 the function pointers for glBlendFuncSeparate and
9081 glBlendEquationSeparate. It is not safe to just check for the presence
9082 of the functions because some drivers may define the function without
9083 fully implementing the spec.
9085 The GLES version of _cogl_check_driver_valid just always returns TRUE
9086 because there are no version requirements yet.
9088 Eventually the function could also check for mandatory extensions if
9091 http://bugzilla.openedhand.com/show_bug.cgi?id=1875
9093 clutter/clutter-backend.c | 14 ++++--
9094 clutter/clutter-private.h | 3 ++
9095 clutter/clutter-stage.c | 22 ++++++++-
9096 clutter/cogl/cogl/cogl.c | 5 ++
9097 clutter/cogl/cogl/cogl.h.in | 9 ++++
9098 clutter/cogl/cogl/driver/gl/cogl.c | 87 +++++++++++++++++++++++++++++++---
9099 clutter/cogl/cogl/driver/gles/cogl.c | 6 +++
9100 7 files changed, 133 insertions(+), 13 deletions(-)
9102 commit 677ff9fb30a99b850eb1b41c34f80e5e01f8e43e
9103 Author: Samuel Degrande <Samuel.Degrande@lifl.fr>
9104 Date: Tue Oct 27 11:18:49 2009 +0100
9106 Can no more include clutter-stage.h inside clutter-win32.h
9108 http://bugzilla.openedhand.com/show_bug.cgi?id=1847
9110 Signed-off-by: Neil Roberts <neil@linux.intel.com>
9112 clutter/win32/clutter-win32.h | 2 +-
9113 1 file changed, 1 insertion(+), 1 deletion(-)
9115 commit 26ce94eda071cc133ab2b469cae0b19aae727279
9116 Author: Samuel Degrande <Samuel.Degrande@lifl.fr>
9117 Date: Mon Oct 26 16:28:36 2009 +0100
9119 Adapt win32 backend to the semantic change of StageWindow
9121 http://bugzilla.openedhand.com/show_bug.cgi?id=1847
9123 Signed-off-by: Neil Roberts <neil@linux.intel.com>
9125 clutter/win32/clutter-backend-win32.c | 34 ++--
9126 clutter/win32/clutter-stage-win32.c | 345 +++++++++++++++++----------------
9127 clutter/win32/clutter-stage-win32.h | 2 +
9128 3 files changed, 194 insertions(+), 187 deletions(-)
9130 commit b69ee0989b3ec4b588a1e80ea933b3b8997f6898
9131 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9132 Date: Fri Nov 13 15:27:18 2009 +0000
9134 tests: Add instructions to test-box-layout
9136 tests/interactive/test-box-layout.c | 17 ++++++++++++++++-
9137 1 file changed, 16 insertions(+), 1 deletion(-)
9139 commit 568ad044eba38198ecdb32f671047bffa27353a9
9140 Author: Neil Roberts <neil@linux.intel.com>
9141 Date: Fri Nov 13 13:39:24 2009 +0000
9143 Clear pending events for a stage when it is destroyed
9145 We can not process events for a stage that has been destroyed so we
9146 should make sure that the events for the stage are removed from the
9147 global event queue during dispose.
9149 http://bugzilla.openedhand.com/show_bug.cgi?id=1882
9151 clutter/clutter-stage.c | 18 ++++++++++++++++++
9152 1 file changed, 18 insertions(+)
9154 commit 49cd887aabf7ff8cbfb147ceacfc82e3c75c0c9b
9155 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9156 Date: Fri Nov 13 14:43:57 2009 +0000
9158 docs: Document the AnimationMode definition
9160 Both ClutterAlpha:mode and ClutterAnimation:mode can be defined using:
9163 • the "nick" field of the AnimationMode GEnumValue
9164 • a custom, tweener-like string
9166 All these methods should be documented.
9168 clutter/clutter-alpha.c | 8 ++++--
9169 clutter/clutter-animation.c | 61 +++++++++++++++++++++++++++++++++++++++++++
9170 2 files changed, 67 insertions(+), 2 deletions(-)
9172 commit c8d57037882729a7ea0117726f2e8e48b10416ac
9173 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9174 Date: Fri Nov 13 14:10:29 2009 +0000
9176 tests: Add unit for Animation definitions
9178 Verify that an Animation can be defined using ClutterScript.
9180 No initial/final state of the animation, yet.
9183 tests/conform/test-conform-main.c | 1 +
9184 tests/conform/test-script-parser.c | 22 ++++++++++++++++++++++
9185 tests/data/test-script-animation.json | 14 ++++++++++++++
9186 4 files changed, 38 insertions(+)
9188 commit d54f4e944c8725c84a5534d519fb3f9de7b95430
9189 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9190 Date: Fri Nov 13 14:08:49 2009 +0000
9194 clutter/clutter-animation.c | 7 +++----
9195 clutter/clutter-script-parser.c | 3 +--
9196 2 files changed, 4 insertions(+), 6 deletions(-)
9198 commit 95b55588ad6c57cbeb7cda50886e709aa1ae1c00
9199 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9200 Date: Fri Nov 13 14:07:25 2009 +0000
9202 tests: Print out parser errors if present
9204 If the conformance test for the Script parser throws an error
9205 and we've enabled verbosity then we should print out the error
9206 message before aborting.
9208 tests/conform/test-script-parser.c | 10 ++++++++--
9209 1 file changed, 8 insertions(+), 2 deletions(-)
9211 commit 9bae5535646b64e7c43f3a628942531d14e5a0f1
9212 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9213 Date: Fri Nov 13 13:21:47 2009 +0000
9215 animation: Override parsing :mode
9217 Like in ClutterAlpha, ClutterAnimation:mode must be overridden when
9218 parsing a Script definition, as we accept both a numeric id and the
9219 string id for easing modes.
9221 clutter/clutter-animation.c | 51 ++++++++++++++++++++++++++++++++++++++++++-
9222 1 file changed, 50 insertions(+), 1 deletion(-)
9224 commit dab1da20ae144afe56f48c0a3be5865d84245658
9225 Author: Neil Roberts <neil@linux.intel.com>
9226 Date: Mon Oct 5 13:37:11 2009 +0100
9228 [cogl-primitives] Don't clear the whole stencil buffer
9230 When _cogl_add_path_to_stencil_buffer is used to draw a path we don't
9231 need to clear the entire stencil buffer. Instead it can clear just the
9232 bounding box of the path. This adds an extra parameter called
9233 'need_clear' which is only set if the stencil buffer is being used for
9236 http://bugzilla.openedhand.com/show_bug.cgi?id=1829
9238 clutter/cogl/cogl/cogl-clip-stack.c | 6 ++++--
9239 clutter/cogl/cogl/cogl-primitives.c | 37 ++++++++++++++++++++++++++++-------
9240 2 files changed, 34 insertions(+), 9 deletions(-)
9242 commit bc8faf52f4a817d7d023f554dcd7ace0efac9942
9243 Author: Neil Roberts <neil@linux.intel.com>
9244 Date: Thu Nov 12 17:00:15 2009 +0000
9246 Remove _cogl_flush_matrix_stacks from cogl-internal.h
9248 The definition for this function was removed in f7d64e5abvoid so it
9249 should be removed from the header too.
9251 clutter/cogl/cogl/cogl-internal.h | 2 --
9252 1 file changed, 2 deletions(-)
9254 commit 9fa562ad216d516d1cd66f72aa39eaad0a5c40b9
9255 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9256 Date: Wed Nov 11 10:32:39 2009 +0000
9258 cogl: Declare cogl_is_bitmap()
9260 The function is automatically defined by the CoglHandle type
9261 definition macro, but it still requires to be declared in the
9262 header file to be used.
9264 clutter/cogl/cogl/cogl-bitmap.h | 13 +++++++++++++
9265 1 file changed, 13 insertions(+)
9267 commit 482e4e8d111fa76194a20ccd120eac41afa277d8
9268 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9269 Date: Tue Nov 10 12:21:26 2009 +0000
9271 tests: Display the index inside text-box-layout
9273 Since the rectangles packed inside the BoxLayout interactive test
9274 have random colors it's not easy to verify the ordering. By using
9275 the CoglPango API to print out the index in the middle of each
9278 tests/interactive/test-box-layout.c | 41 ++++++++++++++++++++++++++++++++---
9279 1 file changed, 38 insertions(+), 3 deletions(-)
9281 commit 4bc3d02ebd928b4bc7c59811b9e90aae36750cfb
9282 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9283 Date: Tue Nov 10 12:20:14 2009 +0000
9285 box-layout: Honour :text-direction
9287 During size request and allocation a ClutterBoxLayout should honour
9288 the ClutterActor:text-direction property, and change the order of
9291 clutter/clutter-box-layout.c | 206 +++++++++++++++++++++++++++++-------------
9292 1 file changed, 142 insertions(+), 64 deletions(-)
9294 commit adab87b520699892e012d601821a5aee11410125
9295 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9296 Date: Tue Nov 10 12:18:32 2009 +0000
9298 text: Dirty layout cache on text direction changes
9300 When the text direction changes we should evict the cached layouts
9301 to avoid stale entries in case the direction change produces a layout
9304 clutter/clutter-text.c | 23 +++++++++++++++++++++++
9305 1 file changed, 23 insertions(+)
9307 commit f94f7692a6836ed4a5f039e4c2a44966b47c77fc
9308 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9309 Date: Fri Nov 6 16:55:46 2009 +0000
9311 actor: Add :text-direction property
9313 Every actor should have a property for retrieving (and setting) the
9316 The text direction is used to provide a consisten behaviour in both
9317 left-to-right and right-to-left languages. For instance, ClutterText
9318 should perform key navigation following text direction. Layout
9319 managers should also take into account text direction to derive the
9320 right packing order for their children.
9322 clutter/clutter-actor.c | 116 ++++++++++++++++++++++++++++++++++++++++++++++-
9323 clutter/clutter-actor.h | 4 ++
9324 2 files changed, 119 insertions(+), 1 deletion(-)
9326 commit 53a9d0c637ee1ef07e9251b77f86f0cd42ab611e
9327 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9328 Date: Fri Nov 6 16:50:53 2009 +0000
9330 Use the newly added ClutterTextDirection enumeration
9332 Instead of using PangoDirection directly we should use the
9333 ClutterTextDirection enumeration.
9335 We also need a pair of accessor functions for setting and
9336 getting the default text direction.
9338 clutter/clutter-main.c | 43 +++++++++++++++++++++++++++++++++----------
9339 clutter/clutter-main.h | 3 +++
9340 2 files changed, 36 insertions(+), 10 deletions(-)
9342 commit 3958df4ff9b3aa800df2e0f1695fd143439d870a
9343 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9344 Date: Fri Nov 6 16:49:55 2009 +0000
9346 Add ClutterTextDirection enumeration
9348 The ClutterTextDirection is composed of three values:
9350 DEFAULT: a flag for returning the default text direction
9354 clutter/clutter-types.h | 17 +++++++++++++++++
9355 1 file changed, 17 insertions(+)
9357 commit 2671c425894c89a4afd415b70e8ebbc4f057e02b
9358 Author: Neil Roberts <neil@linux.intel.com>
9359 Date: Mon Nov 9 12:12:27 2009 +0000
9361 Revert changes to test-cogl-primitives.c from 272e227109
9363 These changes caused the test to try to load redhand.png but this no
9364 longer works since the TESTS_DATADIR changes in 0b4899ef23. The only
9365 use of the hand is commented out anyway so it looks like the changes
9366 were intended for temporary debugging.
9368 tests/interactive/test-cogl-primitives.c | 14 --------------
9369 1 file changed, 14 deletions(-)
9371 commit ac9f65cb92196e2eafd4b1e25dabd9cb6a428db3
9372 Author: Damien Lespiau <damien.lespiau@intel.com>
9373 Date: Mon Nov 9 13:05:40 2009 +0000
9375 build: Make the glib-mkenums generated files depend on their templates
9377 With this, if one changes the underlying template files, we run
9378 glib-mkenums again to generate updated glib_enum_[ch] files.
9380 Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
9382 build/autotools/Makefile.am.enums | 4 ++--
9383 1 file changed, 2 insertions(+), 2 deletions(-)
9385 commit 1be23c0cc9741cbe68a54cd84de772bd120254b6
9386 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9387 Date: Mon Nov 9 16:44:34 2009 +0000
9389 build: Fix --with-imagebackend configure switch
9391 An overeager search and replace broke the image backend command
9392 line switch for the configure script.
9395 1 file changed, 1 insertion(+), 1 deletion(-)
9397 commit 1ce25ffbb2561ab5eb3f6b07b74ec49587f44d32
9398 Author: Neil Roberts <neil@linux.intel.com>
9399 Date: Mon Nov 9 11:50:16 2009 +0000
9401 cogl: Add an initialiser for enable_flags in cogl_begin_gl
9403 This fixes a warning about an uninitialised value. It could also
9404 potentially fix some crashes for example if the enable_flags value
9405 happened to include a bit for enabling a vertex array if no vertex
9406 buffer pointer was set.
9408 clutter/cogl/cogl/cogl.c | 2 +-
9409 1 file changed, 1 insertion(+), 1 deletion(-)
9411 commit 09c04d4c67ea8d3ebeb3ee5adfc3752562cae3cc
9412 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9413 Date: Mon Nov 9 11:07:27 2009 +0000
9415 text: Add a NULL preedit string check
9417 This commit avoids a critical warning introduced by commit
9418 bc51b8ca47ac90e52ab6a27ff791ea97d53f4648
9420 clutter/clutter-text.c | 4 +++-
9421 1 file changed, 3 insertions(+), 1 deletion(-)
9423 commit bc51b8ca47ac90e52ab6a27ff791ea97d53f4648
9424 Author: Raymond Liu <raymond.liu@intel.com>
9425 Date: Mon Nov 9 16:42:15 2009 +0800
9427 Fix cursor position in preedit status
9429 http://bugzilla.openedhand.com/show_bug.cgi?id=1871
9431 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
9433 clutter/clutter-text.c | 14 ++++++++++++--
9434 1 file changed, 12 insertions(+), 2 deletions(-)
9436 commit 7e17822cfd860fd694735fbf550013f7f8b7a915
9437 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9438 Date: Fri Nov 6 15:06:39 2009 +0000
9440 Clean up cogl.h template
9442 The inclusion order is mostly random, and it should really be
9443 in alphabetic order, just like clutter.h.
9445 Also, cogl-vertex-buffer.h is included twice.
9447 clutter/cogl/cogl/cogl.h.in | 17 +++++++++--------
9448 1 file changed, 9 insertions(+), 8 deletions(-)
9450 commit fcd8237ac5f5dc7bc485b8b5726824129215beea
9451 Author: Tim Horton <hortont424@gmail.com>
9452 Date: Fri Nov 6 11:57:43 2009 +0000
9454 osx: CGBitmapContextCreate can't make 24bpp, alphaless offscreen pixmaps
9456 While loading a JPEG from disk (with clutter_texture_new_from_file),
9457 I got the following:
9459 <Error>: CGBitmapContextCreate: unsupported parameter combination: 8
9460 integer bits/component; 24 bits/pixel; 3-component colorspace;
9461 kCGImageAlphaNone; 3072 bytes/row.
9462 <Error>: CGContextDrawImage: invalid context
9464 Looking around, I found that CGBitmapContextCreate can't make 24bpp
9465 offscreen pixmaps without an alpha channel...
9467 This fixes the bug, and seems to not break other things...
9469 http://bugzilla.openedhand.com/show_bug.cgi?id=1159
9471 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
9473 clutter/cogl/cogl/cogl-bitmap-pixbuf.c | 18 +++---------------
9474 1 file changed, 3 insertions(+), 15 deletions(-)
9476 commit 5c67e8e0c09c83c470f999c86091181cc373d5b6
9477 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9478 Date: Fri Nov 6 14:07:46 2009 +0000
9480 script: Coding style clean-ups
9482 clutter/clutter-script.c | 38 +++++++++++++++++++-------------------
9483 1 file changed, 19 insertions(+), 19 deletions(-)
9485 commit 179a66c922f85fdfc8968f7f60a5b76154696ad4
9486 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9487 Date: Fri Nov 6 14:07:26 2009 +0000
9489 script: Document private functions
9491 clutter/clutter-script.c | 71 +++++++++++++++++++++++++++++++++++++++++++---
9492 1 file changed, 67 insertions(+), 4 deletions(-)
9494 commit 30bc36082e2922b11b98907fde12f64fd4f7399d
9495 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9496 Date: Fri Nov 6 14:04:36 2009 +0000
9498 Do not pass flags to g_module_open(NULL)
9500 The flags are ignored when opening the main module, so we
9501 should pass 0 to avoid confusion when reading the source.
9503 clutter/clutter-alpha.c | 2 +-
9504 clutter/clutter-script-parser.c | 6 +++---
9505 clutter/clutter-script.c | 2 +-
9506 clutter/cogl/cogl/cogl.c | 4 ++--
9507 4 files changed, 7 insertions(+), 7 deletions(-)
9509 commit 4262f79f34c35a8eb620fb82eb0e36d5ac191600
9510 Merge: b9e519c 031d4d6
9511 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9512 Date: Fri Nov 6 11:50:22 2009 +0000
9514 Merge branch 'josh-osx-fixes'
9517 osx: Fix a warning on Snow Leopard
9518 docs: Fix OS X docs to install Ports in correct order
9519 osx: Implement the updated ClutterStageWindow interface
9521 commit b9e519c3b2bc5fc01743568a2a37029c61fdf6ef
9522 Author: Joshua Lock <josh@linux.intel.com>
9523 Date: Thu Nov 5 15:50:21 2009 +0000
9525 tests: Remove a spurious #include
9527 The test-backface-culling has what looks like a stray #include in which
9528 stops the test compiling for backends without GdkPixbuf. Remove it.
9530 http://bugzilla.openedhand.com/show_bug.cgi?id=1867
9532 tests/conform/test-backface-culling.c | 2 --
9533 1 file changed, 2 deletions(-)
9535 commit 031d4d6203f007fea2b95ca883c7113d0160372d
9536 Author: Joshua Lock <josh@linux.intel.com>
9537 Date: Thu Nov 5 15:48:25 2009 +0000
9539 osx: Fix a warning on Snow Leopard
9541 Apple where nice and changed API between releases. This patch checks the
9542 version of the compilation environment and tries to use the right parameter
9545 http://bugzilla.openedhand.com/show_bug.cgi?id=1866
9547 clutter/osx/clutter-backend-osx.c | 8 ++++++--
9548 1 file changed, 6 insertions(+), 2 deletions(-)
9550 commit 58f1dfcf35626b8b1ea896dfbd27623b15779fce
9551 Author: Joshua Lock <josh@linux.intel.com>
9552 Date: Thu Nov 5 15:31:56 2009 +0000
9554 docs: Fix OS X docs to install Ports in correct order
9556 The order in which the MacPorts are installed is important otherwise we open
9557 the user up to a world of pain.
9558 This patch also tweaks the OS X docs to follow the formatting of the rest of
9559 the docs and to discuss the option of GtkDoc.
9561 http://bugzilla.openedhand.com/show_bug.cgi?id=1865
9563 doc/reference/clutter/building-clutter.xml | 67 +++++++++++++++-------------
9564 1 file changed, 37 insertions(+), 30 deletions(-)
9566 commit 4533e37744f8751e254741104d27b7b37e2fdfd7
9567 Author: Joshua Lock <josh@linux.intel.com>
9568 Date: Thu Nov 5 15:44:32 2009 +0000
9570 osx: Implement the updated ClutterStageWindow interface
9572 In the new Clutter world backend stage implementations should be lightweight
9573 objects implementing the ClutterStageWindow interface and not ClutterActor
9576 This patch performs various cut-n-pastes to acheive that for the OSX backend
9578 http://bugzilla.openedhand.com/show_bug.cgi?id=1864
9580 clutter/osx/clutter-backend-osx.c | 4 +-
9581 clutter/osx/clutter-stage-osx.c | 196 ++++++++++++++++---------------------
9582 clutter/osx/clutter-stage-osx.h | 8 +-
9583 3 files changed, 89 insertions(+), 119 deletions(-)
9585 commit cb60c038acb0de9178d0aee22e3a9847653c9627
9586 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9587 Date: Fri Nov 6 11:33:32 2009 +0000
9589 behaviour: Implement the implicit alpha parsing
9591 ClutterBehaviour should implement the Scriptable interface
9592 and parse ClutterAlpha when implicitly defined, instead of
9593 having this ad hoc code inside ClutterScriptParser itself.
9595 After all, only ClutterBehaviour supports Alpha defined
9598 clutter/clutter-behaviour.c | 46 +++++++++++++++++++++++++++++++++-----
9599 clutter/clutter-script-parser.c | 19 ++--------------
9600 clutter/clutter-script-private.h | 4 ++--
9601 3 files changed, 45 insertions(+), 24 deletions(-)
9603 commit f1ed8be066a7c5f16e2e876cc76ef1f5348bc14e
9604 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9605 Date: Fri Nov 6 11:32:28 2009 +0000
9607 conform: Add unit for properties holding objects
9609 Exercise the definition of GObjects for properties defined using
9613 tests/conform/test-conform-main.c | 1 +
9614 tests/conform/test-script-parser.c | 25 +++++++++++++++++++++++++
9615 tests/data/test-script-object-property.json | 13 +++++++++++++
9616 4 files changed, 40 insertions(+)
9618 commit 7279afd28c1bc47e1b47f0c2f8d53e5ea75df832
9619 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9620 Date: Fri Nov 6 11:17:42 2009 +0000
9622 script: Generic assignment of properties requiring objects
9624 The ClutterScriptParser should do most of the heavy-lifting for
9625 parsing a JSON object member defining another JSON object into
9626 a GObject property defined using a GParamSpecObject.
9628 clutter/clutter-script-parser.c | 62 ++++++++++++++++++++++++++++++++-------
9629 1 file changed, 52 insertions(+), 10 deletions(-)
9631 commit 185107c6cfe174ed829ce26241bf0e2f532a4394
9632 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9633 Date: Fri Nov 6 10:53:43 2009 +0000
9635 conformance: Add unit on the implicit alpha definition
9637 Exercise the implicit alpha and timeline definition to catch
9638 regressions in the ClutterScript parser code.
9641 tests/conform/test-conform-main.c | 1 +
9642 tests/conform/test-script-parser.c | 32 ++++++++++++++++++++++++++++
9643 tests/data/test-script-implicit-alpha.json | 8 +++++++
9644 4 files changed, 42 insertions(+)
9646 commit f9581ca5ce87437df40e27bc0228fdb6c6897619
9647 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9648 Date: Fri Nov 6 10:17:30 2009 +0000
9650 script: Apply properties when constructing implicit timelines
9652 The object construction is done in two passes, now, so we must do both
9653 passes when parsing implicit timelines from a fake ObjectInfo.
9655 clutter/clutter-script-parser.c | 1 +
9656 1 file changed, 1 insertion(+)
9658 commit abae6013e10e08cc67be53d5d067ca5ed4ad7ee3
9659 Author: Robert Bragg <robert@linux.intel.com>
9660 Date: Thu Nov 5 16:50:24 2009 +0000
9662 Remove all internal use of deprecated cogl_clip_* API
9664 cogl_clip_push, and cogl_clip_push_window_rect which are now deprecated were
9665 used in various places internally so this just switches to using the
9666 replacement functions.
9668 clutter/clutter-actor.c | 10 +++++-----
9669 clutter/clutter-main.c | 2 +-
9670 clutter/clutter-text.c | 6 +++---
9671 tests/conform/test-cogl-viewport.c | 10 ++++++----
9672 tests/interactive/test-clip.c | 8 ++++----
9673 5 files changed, 19 insertions(+), 17 deletions(-)
9675 commit c1d9e09d38bcf61eb7e6f88f5a052870d8abdc5e
9676 Author: Robert Bragg <robert@linux.intel.com>
9677 Date: Thu Nov 5 10:56:24 2009 +0000
9679 [clip-stack] stop using deprecated cogl_clip_push_window_rect API
9681 try_pushing_rect_as_window_rect now uses the new
9682 cogl_clip_push_window_rectangle API.
9684 clutter/cogl/cogl/cogl-clip-stack.c | 2 +-
9685 1 file changed, 1 insertion(+), 1 deletion(-)
9687 commit 272e227109387c9287081e9dad467290e4e93faf
9688 Author: Robert Bragg <robert@linux.intel.com>
9689 Date: Wed Nov 4 19:31:43 2009 +0000
9691 [cogl-clip] deprecate parts and cleanup the API
9693 cogl_clip_push() which accepts a rectangle in model space shouldn't have
9694 been defined to take x,y,width,height arguments because this isn't consistant
9695 with other Cogl API dealing with model space rectangles. If you are using a
9696 coordinate system with the origin at the center and the y+ extending up,
9697 then x,y,width,height isn't as natural as (x0,y0)(x1,y1). This API has
9698 now been replace with cogl_clip_push_rectangle()
9700 (As a general note: the Cogl API should only use the x,y,width,height style
9701 when the appropriate coordinate space is defined by Cogl to have a top left
9702 origin. E.g. window coordinates, or potentially texture coordinates)
9704 cogl_clip_push_window_rect() shouldn't have been defined to take float
9705 arguments since we only clip with integral pixel precision. We also
9706 shouldn't have abbreviated "rectangle". This API has been replaced with
9707 cogl_clip_push_window_rectangle()
9709 cogl_clip_ensure() wasn't documented at all in Clutter 1.0 and probably
9710 no one even knew it existed. This API isn't useful, and so it's now
9711 deprecated. If no one complains we may remove the API altogether for
9714 cogl_clip_stack_save() and cogl_clip_stack_restore() were originally added
9715 to allow us to save/restore the clip when switching to/from offscreen
9716 rendering. Now that offscreen draw buffers are defined to own their clip
9717 state and the state will be automatically saved and restored this API is now
9718 redundant and so deprecated.
9721 clutter/cogl/cogl/cogl-clip-stack.c | 44 +++++++-------
9722 clutter/cogl/cogl/cogl.h.in | 92 ++++++++++++++++++++++++++++--
9723 doc/reference/cogl/cogl-sections.txt | 9 ++-
9724 tests/interactive/test-cogl-primitives.c | 14 +++++
9725 5 files changed, 144 insertions(+), 28 deletions(-)
9727 commit 6cd49fdd40bd20716365e399c3dfa039e3b6f377
9728 Author: Robert Bragg <robert@linux.intel.com>
9729 Date: Wed Nov 4 20:17:56 2009 +0000
9731 [clip-stack] Internally track model space clip rects as (x0,y0)(x1,y1) pairs
9733 Don't track the rectangles as x0,y0,width,height. This is in preparation
9734 for some API tidy up.
9736 clutter/cogl/cogl/cogl-clip-stack.c | 113 ++++++++++++++++++-----------------
9737 1 file changed, 59 insertions(+), 54 deletions(-)
9739 commit 7752ed98f1eafa9bd65fbdd2e018b0026430b579
9740 Author: Robert Bragg <robert@linux.intel.com>
9741 Date: Wed Nov 4 19:42:17 2009 +0000
9743 [clip-stack] move lots of supporting code from cogl.c to cogl-clip-stack.c
9745 There was quite a bit of code in cogl.c that was only used to support
9746 cogl-clip-stack.c, so this has now been moved to cogl-clip-stack.c
9748 clutter/cogl/cogl/cogl-clip-stack.c | 277 +++++++++++++++++++++++++++++++----
9749 clutter/cogl/cogl/cogl.c | 237 ------------------------------
9750 2 files changed, 250 insertions(+), 264 deletions(-)
9752 commit 864e12df056ccbd116eb0a0992a82e5194c26787
9753 Author: Robert Bragg <robert@linux.intel.com>
9754 Date: Wed Nov 4 16:55:18 2009 +0000
9756 [debug] Adds a COGL_DEBUG=force-scanline-paths
9758 For a long time now the GLES driver for Cogl has supported a fallback
9759 scanline rasterizer for filling paths when no stencil buffer is available,
9760 but now that we build the same cogl-primitives code for GL and GLES I
9761 thought it may sometimes be useful for debugging to force Cogl to use the
9762 scanline rasterizer instead of the current stencil buffer approach.
9764 clutter/cogl/cogl/cogl-debug.c | 3 ++-
9765 clutter/cogl/cogl/cogl-debug.h | 3 ++-
9766 clutter/cogl/cogl/cogl-primitives.c | 3 ++-
9767 3 files changed, 6 insertions(+), 3 deletions(-)
9769 commit 0b4899ef23e4979326439613dfba814bd49aeb2e
9770 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9771 Date: Thu Nov 5 17:30:33 2009 +0000
9773 tests: Clean up interactive test build
9775 The build for interactive tests creates symbolic links for the data
9776 under tests/data; it also uses symbolic links for creating "binaries"
9777 for each interactive test. This is less than ideal, though.
9779 Instead, the tests should build a path to the data files by using
9780 a pre-processor define like TESTS_DATADIR; both g_build_filename() and
9781 pre-processor string concatenation can be used to generate a valid
9782 file name with the full path to the files.
9784 The build system should also create wrapper scripts, just like we
9785 do inside the conformance test suite, to be able to launch single
9789 tests/interactive/Makefile.am | 59 ++++++++++---------
9790 tests/interactive/test-actor-clone.c | 27 ++++-----
9791 tests/interactive/test-actors.c | 11 ++--
9792 tests/interactive/test-behave.c | 14 +++--
9793 tests/interactive/test-bin-layout.c | 6 +-
9794 tests/interactive/test-clip.c | 5 +-
9795 tests/interactive/test-cogl-multitexture.c | 15 ++++-
9796 tests/interactive/test-cogl-offscreen.c | 6 +-
9797 tests/interactive/test-cogl-tex-convert.c | 28 +++++++---
9798 tests/interactive/test-cogl-tex-getset.c | 12 ++--
9799 tests/interactive/test-cogl-tex-polygon.c | 9 ++-
9800 tests/interactive/test-cogl-tex-tile.c | 6 +-
9801 tests/interactive/test-depth.c | 5 +-
9802 tests/interactive/test-devices.c | 5 +-
9803 tests/interactive/test-fbo.c | 11 +++-
9804 tests/interactive/test-layout.c | 5 +-
9805 tests/interactive/test-multistage.c | 5 +-
9806 tests/interactive/test-paint-wrapper.c | 5 +-
9807 tests/interactive/test-pixmap.c | 2 +-
9808 tests/interactive/test-rotate.c | 8 ++-
9809 tests/interactive/test-script.c | 9 ++-
9810 tests/interactive/test-shader.c | 84 +++++++++++++++-------------
9811 tests/interactive/test-texture-async.c | 57 +++++++++----------
9812 tests/interactive/test-texture-quality.c | 15 +++--
9813 tests/interactive/test-viewport.c | 8 ++-
9814 tests/interactive/wrapper.sh | 4 +-
9815 27 files changed, 260 insertions(+), 162 deletions(-)
9817 commit c3368c0d157c5fa28a4e29e6caaed4323e82990d
9818 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9819 Date: Thu Nov 5 12:24:37 2009 +0000
9821 layout: Add layout properties introspection
9823 In order to know if a layout property exists and retrieve its
9824 description in form of a GParamSpec, we need a wrapper API inside
9825 ClutterLayoutManager. This allows introspecting a LayoutManager
9826 sub-class and eventually serialize and deserialize it.
9828 clutter/clutter-layout-manager.c | 76 ++++++++++++++++++++++++++++
9829 clutter/clutter-layout-manager.h | 103 ++++++++++++++++++++------------------
9830 2 files changed, 130 insertions(+), 49 deletions(-)
9832 commit b0c9de273096d8949c8eafa3d5da017bb551e3f0
9833 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9834 Date: Thu Nov 5 12:23:49 2009 +0000
9836 box-layout: Add get_child_meta_type() override
9838 Return the GType of ClutterBoxChild.
9840 clutter/clutter-box-layout.c | 8 ++++++++
9841 1 file changed, 8 insertions(+)
9843 commit eea00d280549641403dbaae27e370e16fe9f975b
9844 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9845 Date: Thu Nov 5 12:23:22 2009 +0000
9847 bin-layout: Add get_child_meta_type() override
9849 Return the GType of ClutterBinLayer.
9851 clutter/clutter-bin-layout.c | 8 ++++++++
9852 1 file changed, 8 insertions(+)
9854 commit e6dff59b27d7eb6d9fca51f6ddf74fcb7d8253e3
9855 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9856 Date: Thu Nov 5 11:57:06 2009 +0000
9858 layout: Add LayoutManager::get_child_meta_type()
9860 In order to inspect a LayoutManager using LayoutMeta we need a
9861 virtual function that returns the GType of the LayoutMeta used.
9863 clutter/clutter-layout-manager.c | 7 +++++++
9864 clutter/clutter-layout-manager.h | 3 +++
9865 2 files changed, 10 insertions(+)
9867 commit 95d78acb4ca72951fc9552c9fcffa645b1be739a
9868 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9869 Date: Wed Nov 4 16:45:44 2009 +0000
9871 script: Allow parsing child properties
9873 The ClutterScript parser needs to be extended to parse child properties
9874 and apply them after an actor has been added to a container. In order to
9875 distinguish child properties from regular GObject properties we can use
9876 the "child::" prefix, e.g.:
9879 "type" : "ClutterRectangle",
9881 "child::has-focus" : true,
9885 Parsing child properties can be deferred to the ClutterScriptable
9886 interface, just like regular properties.
9889 clutter/clutter-script-parser.c | 115 +++++++++++++++++++++++++-
9890 clutter/clutter-script-private.h | 2 +
9891 tests/conform/Makefile.am | 2 +
9892 tests/conform/test-conform-main.c | 1 +
9893 tests/conform/test-script-parser.c | 156 ++++++++++++++++++++++++++++++++++++
9894 tests/data/test-script-child.json | 21 +++++
9895 7 files changed, 297 insertions(+), 1 deletion(-)
9897 commit c52d8780325a0077f7fc6e898d902462ffbe3c8c
9898 Author: Robert Bragg <robert@linux.intel.com>
9899 Date: Sat Oct 17 04:06:56 2009 +0100
9901 [cogl-primitives] Get rid of driver specific cogl-primitives code
9903 These files were practically identical, except the gles code had additional
9904 support for filling paths without a stencil buffer. All the driver code has
9905 now been moved into cogl/cogl-primitives.c
9907 clutter/cogl/cogl/cogl-primitives.c | 488 ++++++++++++++++++++-
9908 clutter/cogl/cogl/driver/gl/Makefile.am | 1 -
9909 clutter/cogl/cogl/driver/gl/cogl-primitives.c | 313 --------------
9910 clutter/cogl/cogl/driver/gles/Makefile.am | 1 -
9911 clutter/cogl/cogl/driver/gles/cogl-primitives.c | 516 -----------------------
9912 5 files changed, 482 insertions(+), 837 deletions(-)
9914 commit 8ba13d6495d00885380db3a23f552633c5c43c0a
9915 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9916 Date: Wed Nov 4 15:21:03 2009 +0000
9918 script: Clean up Color parsing rules
9920 All the ClutterColor parsing rules should be coalesced inside
9921 clutter_script_parse_color(): object, array and string notations
9922 are the canonical ways of defining a ClutterColor inside a
9923 ClutterScript definition. Having a single function in charge of
9924 the parsing cleans up the code.
9926 clutter/clutter-script-parser.c | 17 +++++++----------
9927 tests/conform/test-script-parser.c | 6 ++++++
9928 2 files changed, 13 insertions(+), 10 deletions(-)
9930 commit 3e815de32b2aa525365b80fb7d2f5d5dc9d2fb72
9931 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9932 Date: Wed Nov 4 15:20:12 2009 +0000
9934 script: Simplify boxed types parsing
9936 We should use the typed accessors for complex JSON types, and
9937 be more liberal in what we accept.
9939 clutter/clutter-script-parser.c | 147 +++++++++++++++------------------------
9940 1 file changed, 57 insertions(+), 90 deletions(-)
9942 commit 4df59d330ca4ba7ffcff830001ddbc4fe64167ee
9943 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9944 Date: Wed Nov 4 14:05:13 2009 +0000
9946 script: Separate construction from properties application
9948 Currently, ClutterScriptParser will construct the object (using the
9949 construct-only and construct parameters), apply the properties from
9950 the ClutterScript definition, and eventuall will add children and
9953 The construction phase should be more compartimentalized: the objects
9954 should be constructed first and eventual children and behaviours
9955 added. Then, once an object is requested or when the parsing process
9956 has terminated, all the properties should be applied.
9958 This change allows us to set up the actors before setting their
9959 non-construct properties.
9961 clutter/clutter-script-parser.c | 137 ++++++++++++++++++--------------------
9962 clutter/clutter-script-private.h | 8 ++-
9963 clutter/clutter-script.c | 22 ++++--
9964 3 files changed, 88 insertions(+), 79 deletions(-)
9966 commit 31e5dadb68cf285d57935573e16713201f24503e
9967 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9968 Date: Wed Nov 4 13:32:26 2009 +0000
9970 script: Move all parser code inside ClutterScriptParser
9972 ClutterScript is currently a mix of parser-related code and
9973 the ClutterScript object. All the parser-related code should
9974 be moved inside a private class, ClutterScriptParser, inheriting
9977 clutter/clutter-script-parser.c | 1288 ++++++++++++++++++++++++++++++++-
9978 clutter/clutter-script-private.h | 38 +-
9979 clutter/clutter-script.c | 1485 +++-----------------------------------
9980 3 files changed, 1438 insertions(+), 1373 deletions(-)
9982 commit d7cfa158513263a5f75934a8f9ddceea9a6b8800
9983 Author: Emmanuele Bassi <ebassi@linux.intel.com>
9984 Date: Wed Nov 4 11:50:45 2009 +0000
9986 conform: Add the beginnings of a ClutterScript test suite
9988 ClutterScript is a very complicated piece of machinery, with a
9989 parser that has custom variations on top of the basic JSON
9990 format; it could also be extended in the future, so if we don't
9991 want to introduce regressions or break existing ClutterScript
9992 definitions, we'd better have a conformance test suite.
9995 tests/conform/Makefile.am | 1 +
9996 tests/conform/test-conform-main.c | 2 ++
9997 tests/conform/test-script-parser.c | 33 +++++++++++++++++++++++++++++++++
9998 tests/data/Makefile.am | 13 ++++++++-----
9999 tests/data/test-script-single.json | 10 ++++++++++
10000 6 files changed, 55 insertions(+), 5 deletions(-)
10002 commit 7d891d9dd4acbaedc5b2a2f95445a1e93fd1529f
10003 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10004 Date: Wed Nov 4 11:47:09 2009 +0000
10006 tests: Allow getting data files from the tests/data directory
10008 The units under the conformance test suite should be able to use
10009 external files. Linking the files in tests/conform like the
10010 interactive tests do seems like a hack piled on top of a hack, so
10011 instead we should provide a programmatic way for a conformance
10012 test unit to get the full path of a file, regardless of where the
10013 tests/data directory is.
10015 We can use a define to get the full path of tests/data and then
10016 a function using g_build_filename() to construct the path to the
10019 tests/conform/Makefile.am | 14 +++++++++-----
10020 tests/conform/test-conform-common.h | 1 +
10021 tests/conform/test-conform-main.c | 6 ++++++
10022 3 files changed, 16 insertions(+), 5 deletions(-)
10024 commit 3e20468c6bd982eb8be0e3cbf9c9b72df38eaeeb
10025 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10026 Date: Wed Nov 4 11:05:25 2009 +0000
10028 Add new conformance tests to the ignore list
10031 1 file changed, 3 insertions(+)
10033 commit 6e571928a49641f353f31e1f69328e1466b6ac66
10034 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10035 Date: Tue Nov 3 18:30:28 2009 +0000
10037 script: Take a copy of property nodes
10039 Instead of counting on a JsonNode pointer to survive we should take
10040 a copy. This allows keeping unresolved properties across different
10041 ClutterScript passes.
10043 clutter/clutter-script.c | 5 ++++-
10044 1 file changed, 4 insertions(+), 1 deletion(-)
10046 commit 4ad57aa3e4caedd89e9c60c60aadbc239290cfe3
10047 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10048 Date: Tue Nov 3 18:29:52 2009 +0000
10050 script: Use JsonObject direct accessors
10052 Instead of getting the JsonNode for a member of which we mandate
10053 the type we can use the typed accessors of JsonObject.
10055 clutter/clutter-script.c | 16 ++++++++++------
10056 1 file changed, 10 insertions(+), 6 deletions(-)
10058 commit 0ff420fab59221fccf711893c363145607b40898
10059 Merge: f6e0e48 4258214
10060 Author: Robert Bragg <robert@linux.intel.com>
10061 Date: Wed Nov 4 03:46:45 2009 +0000
10063 Merge commit 'cogl-reorg-draw-buffers'
10065 * cogl-reorg-draw-buffers: (38 commits)
10066 [test-fbo] greatly simplify the test
10067 [tests] test-backface-culling: test culling with offscreen rendering
10068 [tests] Adds test-cogl-readpixels.c for very basic cogl_read_pixels testing
10069 [tests] Adds test-cogl-offscreen to validate offscreen draw buffer
10070 [tests] test-cogl-viewport tests semantics of over/under size viewports
10071 [test-texture-fbo] comment the colors defined in corner_colors
10072 Add a conformance test for clutter_texture_new_from_actor
10073 [cogl-texture-2d-sliced] allow COGL_FORMAT_ANY with _new_with_size()
10074 [texture] fix rounding when calculating update_fbo viewport offset
10075 [texture] switch to a new design for handling offscreen rendering
10076 [texture] split out fbo update code from cluter_texture_paint
10077 [texture] push/pop draw buffer when painting actors to a texture
10078 [texture] Avoid redundant use of cogl_clip_stack_save when drawing offscreen
10079 [cogl-draw-buffer] fix Cogl -> GL viewport coord conversion
10080 [cogl_clip_push_window_rect] fix Cogl -> GL coordinate conversion
10081 [matrix] Adds cogl_matrix_get_inverse API
10082 [debug] Adds a COGL_DEBUG=matrices debug option
10083 [cogl-matrix] Import Mesa's matrix manipulation code
10084 [cogl] avoid any state changes when cogl_set_backface_culling_enable is a nop
10085 [cogl] Use clockwise face winding for offscreen buffers with culling enabled
10088 commit 4258214e509edbc4ff82de418ffc9662088fa835
10089 Author: Robert Bragg <robert@linux.intel.com>
10090 Date: Wed Oct 7 10:40:15 2009 +0100
10092 [test-fbo] greatly simplify the test
10094 This test tried to do too much, and I can't remember the last time I saw this
10097 It no longer tries to create a texture from an offscreen actor and it no
10098 longer tries to use shaders.
10100 It does though show that chaining of clutter_texture_new_from_actor now
10101 works, and that animating the source actor is reflected in textures created
10104 When run you should see three actors:
10105 - on the left is the pristine source actor rotating around the y-axis
10106 - in the middle is the first texture created from the source actor
10107 - and on the right a texture created from the middle actor
10109 Note: the somewhat strange bobbing of the middle and right textures is
10110 actually correct given how it was decided long ago to map the transformed
10111 (to screen space) allocation of the source actor to the texture. When the
10112 hand spins around the perspective projection of the top of the hand results
10113 in the origin of the texture bobbing up to a higher stage position, but the
10114 position of the textures is fixed. This design also means we end up
10115 reallocating our offscreen draw buffer every frame that the actors
10116 transformed size changes, which isn't ideal.
10118 tests/interactive/test-fbo.c | 192 ++++++++----------------------------------
10119 1 file changed, 34 insertions(+), 158 deletions(-)
10121 commit ffb592de5908d844b527cb4fe75b7195eb0dc55d
10122 Author: Robert Bragg <robert@linux.intel.com>
10123 Date: Thu Oct 22 19:01:27 2009 +0100
10125 [tests] test-backface-culling: test culling with offscreen rendering
10127 Since offscreen rendering is internally forced to be upside down Cogl
10128 needs to reverse the glFrontFace winding order so as not to interfere
10129 with the use of cogl_set_backface_culling_enabled()
10131 This ensures we test that mechanism.
10133 tests/conform/test-backface-culling.c | 172 +++++++++++++++++++++------------
10134 1 file changed, 111 insertions(+), 61 deletions(-)
10136 commit 60b642f5d6aada0d237cfb7d81f6b78299c29e73
10137 Author: Robert Bragg <robert@linux.intel.com>
10138 Date: Thu Oct 22 16:56:01 2009 +0100
10140 [tests] Adds test-cogl-readpixels.c for very basic cogl_read_pixels testing
10142 Mostly this was written to verify that we don't flip the data read back from
10143 an offscreen draw buffer. (since all offscreen rendering is done upside
10146 tests/conform/Makefile.am | 1 +
10147 tests/conform/test-cogl-readpixels.c | 153 ++++++++++++++++++++++++++++++++++
10148 tests/conform/test-conform-main.c | 1 +
10149 3 files changed, 155 insertions(+)
10151 commit 2ff7f2d287f8dc80f0e6e02bdc388d4fee99d878
10152 Author: Robert Bragg <robert@linux.intel.com>
10153 Date: Thu Oct 22 12:36:17 2009 +0100
10155 [tests] Adds test-cogl-offscreen to validate offscreen draw buffer
10157 This adds a basic test to check that rendering a few colored rectangles
10158 offscreen works and that the modelview gets restored when switching back to
10159 the previous buffer.
10161 tests/conform/Makefile.am | 1 +
10162 tests/conform/test-cogl-offscreen.c | 169 +++++++++++++++++++++++++++++++++++
10163 tests/conform/test-conform-main.c | 1 +
10164 3 files changed, 171 insertions(+)
10166 commit 369e68630daf7f833da986a19ad17043b43d61e3
10167 Author: Robert Bragg <robert@linux.intel.com>
10168 Date: Wed Oct 21 16:06:43 2009 +0100
10170 [tests] test-cogl-viewport tests semantics of over/under size viewports
10172 Unlike OpenGL Cogl puts the origin of windows/viewports at the top left
10173 instead of bottom left. This test verifies that we correctly translate Cogl
10174 viewports to OpenGL viewports for the awkward cases where the given viewport
10175 has an offset and/or the viewport has a different size to the current draw
10178 tests/conform/Makefile.am | 1 +
10179 tests/conform/test-cogl-viewport.c | 417 ++++++++++++++++++++++++++++++++++++
10180 tests/conform/test-conform-main.c | 2 +
10181 3 files changed, 420 insertions(+)
10183 commit bc24190b9ac32405d4be24d84968357921c7f7e2
10184 Author: Robert Bragg <robert@linux.intel.com>
10185 Date: Mon Nov 2 01:23:25 2009 +0000
10187 [test-texture-fbo] comment the colors defined in corner_colors
10189 It helps to be able to quickly glance at the definition to see which
10190 quadrant of the test actor should be which color, so when debugging a
10191 problem and looking at the visual output you can easily verify if it's being
10192 flipped upside down/left to right.
10194 tests/conform/test-texture-fbo.c | 8 ++++----
10195 1 file changed, 4 insertions(+), 4 deletions(-)
10197 commit b41a81fb0868e51bf03d25446f8cc9748fcd6bc7
10198 Author: Neil Roberts <neil@linux.intel.com>
10199 Date: Thu Sep 17 14:25:29 2009 +0100
10201 Add a conformance test for clutter_texture_new_from_actor
10203 This contains four tests :-
10205 - A regular onscreen source with a clone next to it
10207 - An offscreen source with a clone. This is currently commented out
10208 because it no longer works.
10210 - An onscreen source with a rectangular clip and a clone.
10212 - An onscreen source with a clip from a path and a clone.
10214 The sources are all a 2x2 grid of colors. Each clone is tested that it
10215 either contains the color that should be at that grid position or that
10216 the stage color is showing through if the source is clipped.
10218 tests/conform/Makefile.am | 1 +
10219 tests/conform/test-conform-main.c | 1 +
10220 tests/conform/test-texture-fbo.c | 255 +++++++++++++++++++++++++++++++++++++
10221 3 files changed, 257 insertions(+)
10223 commit fec13f6202067f0700514db6676d3984b78a26df
10224 Author: Robert Bragg <robert@linux.intel.com>
10225 Date: Sat Oct 31 00:01:44 2009 +0000
10227 [cogl-texture-2d-sliced] allow COGL_FORMAT_ANY with _new_with_size()
10229 It's useful when initialzing offscreen draw buffers to be able to ask
10230 Cogl to create a texture of a given size and with the default internal
10233 clutter/cogl/cogl/cogl-texture-2d-sliced.c | 2 +-
10234 1 file changed, 1 insertion(+), 1 deletion(-)
10236 commit ae57c30e937d90eb1e541edd36ae9f81aedc2854
10237 Author: Robert Bragg <robert@linux.intel.com>
10238 Date: Sun Nov 1 23:56:03 2009 +0000
10240 [texture] fix rounding when calculating update_fbo viewport offset
10242 When rendering to an fbo for supporting clutter_texture_new_from_actor we
10243 render to an fbo with the same size as the source actor, but with a viewport
10244 the same size as the stage. We offset the viewport so when we render the
10245 source actor in its normal transformed stage position it lands on the fbo.
10246 Previously we were rounding the transformed position given as a float by
10247 truncating the fraction (just using a C cast) but that resulted in an
10248 incorrect pixel offset when rendering offscreen depending on the source
10251 We now simply + 0.5 before casting (or -0.5 for negative numbers)
10253 clutter/clutter-texture.c | 14 +++++++++++++-
10254 1 file changed, 13 insertions(+), 1 deletion(-)
10256 commit 309f852efbde6a3e025225d01293509c28989d0c
10257 Author: Robert Bragg <robert@linux.intel.com>
10258 Date: Mon Nov 2 01:14:50 2009 +0000
10260 [texture] switch to a new design for handling offscreen rendering
10262 For supporting clutter_texture_new_from_actor(): when updating a
10263 ClutterTexture's fbo we previously set up an offset frustum in the
10264 perspective matrix before rendering source actors to an offscreen draw
10265 buffer so as to give a perspective as if it were being drawn at its
10266 original stage location.
10268 Now that Cogl supports offset viewports there is a simpler way...
10270 When we come to render the source actor to our offscreen draw buffer we
10271 now copy the projection matrix from the stage; we create a viewport
10272 that's also the same size as the stage (though larger than the offscreen
10273 draw buffer) and as before we apply the modelview transformations of
10274 the source actors ancestry before painting it.
10276 The only trick we need now is to offset the viewport according to the
10277 transformed (to screen space) allocation of the source actor (something we
10278 required previously too). We negatively offset the stage sized viewport
10279 such that the smaller offscreen draw buffer is positioned to sit underneath
10280 the source actor in stage coordinates.
10282 clutter/clutter-texture.c | 100 ++++++++++++++++-----------------------------
10283 1 file changed, 35 insertions(+), 65 deletions(-)
10285 commit 94a6028358caed32dba7ba37db9784c95d4690f2
10286 Author: Robert Bragg <robert@linux.intel.com>
10287 Date: Thu Sep 24 14:34:09 2009 +0100
10289 [texture] split out fbo update code from cluter_texture_paint
10291 To help keep clutter_texture_paint maintainable this splits out a big
10292 chunk of standalone code that's responsible for updating the fbo when
10293 clutter_texture_new_from_actor has been used.
10295 clutter/clutter-texture.c | 156 +++++++++++++++++++++++----------------------
10296 1 file changed, 81 insertions(+), 75 deletions(-)
10298 commit 2762e6d9b90731fd05b46aac407cebd3ba372027
10299 Author: Robert Bragg <robert@linux.intel.com>
10300 Date: Tue Oct 13 22:22:39 2009 +0100
10302 [texture] push/pop draw buffer when painting actors to a texture
10304 When updating the FBO for a source actor (to support
10305 clutter_texture_new_from_actor()) we used to simply set an offscreen draw
10306 buffer to be current, paint the source actor and then explicitly set the
10307 window to be current again. This precluded chaining texture_new_from_actor
10308 though because updating another FBO associated with a source actor would end
10309 up restoring the window as the current buffer instead of the previous
10310 offscreen buffer. Now that we use Cogl's draw buffer stack; chaining
10311 clutter_texture_new_from_actor() should be possible.
10313 clutter/clutter-texture.c | 5 +++--
10314 1 file changed, 3 insertions(+), 2 deletions(-)
10316 commit c7d229585f2e8dec30162cbad955230c25e16718
10317 Author: Robert Bragg <robert@linux.intel.com>
10318 Date: Fri Oct 23 00:16:30 2009 +0100
10320 [texture] Avoid redundant use of cogl_clip_stack_save when drawing offscreen
10322 Since cogl draw buffers now own their clip state the stage's clip state will
10323 automatically be saved and restored via the cogl_set_draw_buffer API.
10325 clutter/clutter-texture.c | 6 ------
10326 1 file changed, 6 deletions(-)
10328 commit 90dbae5aa9a31688f2dd73b75df67607795fa60e
10329 Author: Robert Bragg <robert@linux.intel.com>
10330 Date: Sat Oct 31 00:00:33 2009 +0000
10332 [cogl-draw-buffer] fix Cogl -> GL viewport coord conversion
10334 Before we call glViewport we need to convert Cogl viewport coordinates
10335 (where the origin is defined to be top left) to OpenGL coordinates
10336 (where the origin is defined to be bottom left)
10338 We weren't considering that offscreen rendering is always upside down
10339 and in this case Cogl coordinates == OpenGL coordinates.
10341 clutter/cogl/cogl/cogl-draw-buffer.c | 15 +++++++++++----
10342 1 file changed, 11 insertions(+), 4 deletions(-)
10344 commit 149e3e168a14049bb496a6438b711caa1fbe8129
10345 Author: Robert Bragg <robert@linux.intel.com>
10346 Date: Fri Oct 30 23:57:56 2009 +0000
10348 [cogl_clip_push_window_rect] fix Cogl -> GL coordinate conversion
10350 Firstly this now uses the draw buffer height not the viewport height
10351 when we need to perform a y = height - y conversion, since (as the
10352 name suggests) we are dealing with window coordinates not viewport
10355 Secondly this skips any conversion when the current draw buffer is an
10356 offscreen draw buffer since offscreen rendering is always forced to be
10357 upside down and in this case Cogl window coordinates == GL window
10360 clutter/cogl/cogl/cogl-clip-stack.c | 32 ++++++++++++++++++++++++++------
10361 1 file changed, 26 insertions(+), 6 deletions(-)
10363 commit 0369a1b84d725c6dbd90f9a9dd1753bea1f9c3e1
10364 Author: Robert Bragg <robert@linux.intel.com>
10365 Date: Mon Oct 26 17:51:34 2009 +0000
10367 [matrix] Adds cogl_matrix_get_inverse API
10369 This new API takes advantage of the recently imported Mesa code to support
10370 inverse matrix calculation. The matrix code keeps track (via internal
10371 flags) of the transformations a matrix represents so that it can select an
10372 optimized inversion function.
10374 Note: although other aspects of the Cogl matrix API have followed a similar
10375 style to Cairo's matrix API we haven't added a cogl_matrix_invert API
10376 because the inverse of a CoglMatrix is actually cached as part of the
10377 CoglMatrix structure meaning a destructive API like cogl_matrix_invert
10378 doesn't let users take advantage of this caching design.
10380 clutter/cogl/cogl/cogl-context.h | 3 ---
10381 clutter/cogl/cogl/cogl-matrix-stack.c | 11 ++++++++
10382 clutter/cogl/cogl/cogl-matrix-stack.h | 3 +++
10383 clutter/cogl/cogl/cogl-matrix.c | 33 ++++++++++++++---------
10384 clutter/cogl/cogl/cogl-matrix.h | 21 +++++++++++++++
10385 clutter/cogl/cogl/cogl.c | 47 +++++++--------------------------
10386 6 files changed, 65 insertions(+), 53 deletions(-)
10388 commit 8051596e96a296cf30887f6e522a288895b628f8
10389 Author: Robert Bragg <robert@linux.intel.com>
10390 Date: Mon Oct 26 11:01:33 2009 +0000
10392 [debug] Adds a COGL_DEBUG=matrices debug option
10394 This adds a COGL_DEBUG=matrices debug option that can be used to trace all
10395 matrix manipulation done using the Cogl API. This can be handy when you
10396 break something in such a way that a trace is still comparable with a
10397 previous working version since you can simply diff a log of the broken
10398 version vs the working version to home in on the bug.
10400 clutter/cogl/cogl/cogl-debug.c | 3 +-
10401 clutter/cogl/cogl/cogl-debug.h | 3 +-
10402 clutter/cogl/cogl/cogl-matrix-private.h | 47 +++++++++++++++++++++++++++++++
10403 clutter/cogl/cogl/cogl-matrix.c | 20 +++++++++++++
10404 clutter/cogl/cogl/cogl.c | 5 ++++
10405 5 files changed, 76 insertions(+), 2 deletions(-)
10407 commit eb438dd499c002a7d770d5e3d0c1fb1c84da933e
10408 Author: Robert Bragg <robert@linux.intel.com>
10409 Date: Mon Oct 26 08:23:21 2009 +0000
10411 [cogl-matrix] Import Mesa's matrix manipulation code
10413 This pulls in code from Mesa to improve our matrix manipulation support. It
10414 includes support for calculating the inverse of matrices based on top of a
10415 matrix categorizing system that allows optimizing certain matrix types.
10416 (the main thing we were after) but also adds some optimisations for
10419 Changes compared to the original code from Mesa:
10421 - Coding style is consistent with the rest of Cogl
10422 - Instead of allocating matrix->m and matrix->inv using malloc, our public
10423 CoglMatrix typedef is large enough to directly contain the matrix, its
10424 inverse, a type and a set of flags.
10425 - Instead of having a _math_matrix_analyse which updates the type, flags and
10426 inverse, we have _math_matrix_update_inverse which essentially does the
10427 same thing (internally making use of _math_matrix_update_type_and_flags())
10428 but with additional guards in place to bail out when the inverse matrix is
10430 - When initializing a matrix with the identity matrix we don't immediately
10431 initialize the inverse matrix; rather we just set the dirty flag for the
10432 inverse (since it's likely the user won't request the inverse of the
10435 clutter/cogl/cogl/Makefile.am | 2 +
10436 clutter/cogl/cogl/cogl-matrix-mesa.c | 1698 ++++++++++++++++++++++++++++++++++
10437 clutter/cogl/cogl/cogl-matrix-mesa.h | 226 +++++
10438 clutter/cogl/cogl/cogl-matrix.c | 39 +-
10439 clutter/cogl/cogl/cogl-matrix.h | 6 +-
10440 5 files changed, 1967 insertions(+), 4 deletions(-)
10442 commit d38d888f786f3be03778bcc10f20389e6c7ff1ff
10443 Author: Robert Bragg <robert@linux.intel.com>
10444 Date: Thu Oct 22 19:09:20 2009 +0100
10446 [cogl] avoid any state changes when cogl_set_backface_culling_enable is a nop
10448 This is a simple optimization to bail out of cogl_set_backface_culling_enable
10449 if it's not resulting in a change of state.
10451 clutter/cogl/cogl/cogl.c | 3 +++
10452 1 file changed, 3 insertions(+)
10454 commit 764cca75b4ee6bb269097445cb5220f0e044a57c
10455 Author: Robert Bragg <robert@linux.intel.com>
10456 Date: Thu Oct 22 19:01:52 2009 +0100
10458 [cogl] Use clockwise face winding for offscreen buffers with culling enabled
10460 Because Cogl defines the origin for texture as top left and offscreen draw
10461 buffers can be used to render to textures, we (internally) force all
10462 offscreen rendering to be upside down. (because OpenGL defines the origin
10465 By forcing the users scene to be rendered upside down though we also reverse
10466 the winding order of all the drawn triangles which may interfere with the
10467 users use of backface culling. This patch ensures that we reverse the
10468 winding order for a front face (if culling is in use) while rendering
10469 offscreen so we don't conflict with the users back face culling.
10471 clutter/cogl/cogl/cogl-context.c | 2 ++
10472 clutter/cogl/cogl/cogl-context.h | 1 +
10473 clutter/cogl/cogl/cogl-internal.h | 9 +++++++++
10474 clutter/cogl/cogl/cogl-journal.c | 1 +
10475 clutter/cogl/cogl/cogl-primitives.c | 1 +
10476 clutter/cogl/cogl/cogl-vertex-buffer.c | 1 +
10477 clutter/cogl/cogl/cogl.c | 33 ++++++++++++++++++++++++++++++++
10478 7 files changed, 48 insertions(+)
10480 commit b2ebb7db485d0a58bcb642fe9e4584c85ac9a503
10481 Author: Robert Bragg <robert@linux.intel.com>
10482 Date: Fri Oct 30 23:54:13 2009 +0000
10484 [main] Use cogl_read_pixels not glReadPixels in clutter-main.c
10486 The debugging function read_pixels_to_file() and _clutter_do_pick were both
10487 directly calling glReadPixels, but we don't wan't Clutter making direct
10488 OpenGL calls and Cogl provides a suitable alternative. It also means
10489 read_pixels_to_file() doesn't need to manually flip the data read due to
10490 differences in Clutter/Cogl coordinate systems.
10492 clutter/clutter-main.c | 31 +++++++++++++++----------------
10493 1 file changed, 15 insertions(+), 16 deletions(-)
10495 commit 40b8399d49f6b0383b9eebcdf1ca501b5edb4f39
10496 Author: Robert Bragg <robert@linux.intel.com>
10497 Date: Tue Nov 3 12:54:45 2009 +0000
10499 [cogl_read_pixels] don't force a 4 byte pack alignment
10501 Technically this change shouldn't make a difference since we are
10502 calling glReadPixels with GL_RGBA GL_UNSIGNED_BYTE which is a 4
10503 byte format and it should always result in the same value according
10504 to how OpenGL calculates the location of sequential rows.
10506 i.e. k = a/s * ceil(snl/a) where:
10508 s = component size (1)
10509 n = number of components per pixel (4)
10510 l = number of pixels in a row
10512 k = 4/1 * ceil(4l/4) and k = 1/1 * ceil(4l/1) which are equivalent
10514 I'm changing it because I've seen i915 driver code that bails out of
10515 hardware accelerated paths if the alignment isn't 1, and because
10516 conceptually we have no alignment constraints here so even if the current
10517 value has no effect, when we start reading back other formats it may upset
10520 clutter/cogl/cogl/cogl.c | 10 +++++-----
10521 1 file changed, 5 insertions(+), 5 deletions(-)
10523 commit a222ee22f9dd35c5e0671914206759699e63750d
10524 Author: Robert Bragg <robert@linux.intel.com>
10525 Date: Mon Nov 2 01:11:21 2009 +0000
10527 [cogl_read_pixels] call cogl_flush() before changing glPixelStore state
10529 We were previously calling cogl_flush() after setting up the glPixelStore
10530 state for calling glReadPixels, but flushing the journal could itself
10531 change the glPixelStore state.
10533 clutter/cogl/cogl/cogl.c | 8 ++++----
10534 1 file changed, 4 insertions(+), 4 deletions(-)
10536 commit ed431a3c65507b3e3da4760eae6e2b22be1f27f5
10537 Author: Robert Bragg <robert@linux.intel.com>
10538 Date: Mon Nov 2 01:10:02 2009 +0000
10540 [cogl_read_pixels] ensure we flush the current draw buffer state before reading
10542 Make sure we call _cogl_draw_buffer_flush_state() before glReadPixels() to
10543 be sure we have bound the correct framebuffer.
10545 clutter/cogl/cogl/cogl.c | 3 +++
10546 1 file changed, 3 insertions(+)
10548 commit b47404c91d6fac264840a0dafb5dd2dd5567c6a9
10549 Author: Robert Bragg <robert@linux.intel.com>
10550 Date: Mon Nov 2 01:12:10 2009 +0000
10552 [cogl_read_pixels] fixes for calculating the y offset when rendering offscreen
10554 Since offscreen rendering is forced to be upside down we don't need to do
10555 any conversion of the users coordinates to go from Cogl window coordinates
10556 to OpenGL window coordinates.
10558 clutter/cogl/cogl/cogl.c | 9 +++++++--
10559 1 file changed, 7 insertions(+), 2 deletions(-)
10561 commit 426197f51da9c4351b36812276f0caee06965cb1
10562 Author: Robert Bragg <robert@linux.intel.com>
10563 Date: Thu Oct 22 16:55:07 2009 +0100
10565 [read-pixels] don't flip data when reading from offscreen draw buffers
10567 Since we do all offscreen rendering upside down (so that we can have the
10568 origin for texture coordinates be the top left of textures for the cases
10569 where offscreen draw buffers are bound to textures) we don't need to flip
10570 data read back from an offscreen framebuffer before we we return it to the
10573 clutter/cogl/cogl/cogl.c | 9 ++++++++-
10574 1 file changed, 8 insertions(+), 1 deletion(-)
10576 commit 21322848e0094a025dc0b5461eff30e0d66542da
10577 Author: Robert Bragg <robert@linux.intel.com>
10578 Date: Wed Oct 21 23:22:45 2009 +0100
10580 [clip-stack] tidy up transform_point() code
10582 I was originally expecting the code not to handle offset viewports or
10583 viewports with a different size to the framebuffer, but it turns out the
10584 code worked fine. In the process though I think I made the code slightly
10587 clutter/cogl/cogl/cogl-clip-stack.c | 32 +++++++++++++++++++++-----------
10588 1 file changed, 21 insertions(+), 11 deletions(-)
10590 commit 8c3a132ecb3ce805c45dad70c05417713ed9d05d
10591 Author: Robert Bragg <robert@linux.intel.com>
10592 Date: Tue Nov 3 13:26:58 2009 +0000
10594 [cogl] deprecate cogl_viewport() in favour of cogl_set_viewport()
10596 cogl_viewport only accepted a viewport width and height, but there are times
10597 when it's also desireable to have a viewport offset so that a scene can be
10598 translated after projection but before hitting the framebuffer.
10601 clutter/clutter-texture.c | 2 +-
10602 clutter/cogl/cogl/cogl.c | 12 ++++++------
10603 clutter/cogl/cogl/cogl.h.in | 22 +++++++++++++++++++++-
10604 4 files changed, 34 insertions(+), 8 deletions(-)
10606 commit 1e2d88e7891a02b26d0143e28788072e8731be6b
10607 Author: Robert Bragg <robert@linux.intel.com>
10608 Date: Wed Oct 21 23:24:28 2009 +0100
10610 [cogl_read_pixels] use buffer not viewport height to calculate y offset
10612 glReadPixel takes window coordinates not viewport coordinates so we
10613 shouldn't have been assuming that the viewport height == window height.
10615 clutter/cogl/cogl/cogl.c | 8 +++-----
10616 1 file changed, 3 insertions(+), 5 deletions(-)
10618 commit e1630be35a912125b1f493c7d1007b65eaecd048
10619 Author: Robert Bragg <robert@linux.intel.com>
10620 Date: Wed Oct 21 23:20:44 2009 +0100
10622 [draw-buffer] Adds cogl_draw_buffer_get_{width,height} API
10624 Simply adds missing API to query the width and height of any Cogl draw buffer.
10626 clutter/cogl/cogl/cogl-draw-buffer-private.h | 4 ++++
10627 clutter/cogl/cogl/cogl-draw-buffer.c | 14 ++++++++++++++
10628 2 files changed, 18 insertions(+)
10630 commit 12af2751392ea53959fa41dd7cb19e07358655f2
10631 Author: Robert Bragg <robert@linux.intel.com>
10632 Date: Wed Oct 21 23:24:49 2009 +0100
10634 [cogl] Make sure Cogl always knows the current window geometry
10636 Because Cogl defines the origin of viewport and window coordinates to be
10637 top-left it always needs to know the size of the current window so that Cogl
10638 window/viewport coordinates can be transformed into OpenGL coordinates.
10640 This also fixes cogl_read_pixels to use the current draw buffer height
10641 instead of the viewport height to determine the OpenGL y coordinate to use
10644 clutter/clutter-backend.c | 19 +++++++++++++++++-
10645 clutter/clutter-stage.c | 8 ++++++++
10646 clutter/cogl/cogl/cogl-context.c | 2 +-
10647 clutter/cogl/cogl/cogl-context.h | 2 +-
10648 clutter/cogl/cogl/cogl-draw-buffer.c | 36 +++++++++++++++++++++++++++++-----
10649 clutter/cogl/cogl/cogl.h.in | 3 +++
10650 6 files changed, 62 insertions(+), 8 deletions(-)
10652 commit e3391b0173479b9ba3b01321ab606d83999bee1a
10653 Author: Robert Bragg <robert@linux.intel.com>
10654 Date: Thu Oct 22 16:13:01 2009 +0100
10656 [cogl] Make sure we draw upside down to offscreen draw buffers
10658 First a few notes about Cogl coordinate systems:
10659 - Cogl defines the window origin, viewport origin and texture coordinates
10660 origin to be top left unlike OpenGL which defines them as bottom left.
10661 - Cogl defines the modelview and projection identity matrices in exactly the
10662 same way as OpenGL.
10663 - I.e. we believe that for 2D centric constructs: windows/framebuffers,
10664 viewports and textures developers are more used to dealing with a top left
10665 origin, but when modeling objects in 3D; an origin at the center with y
10666 going up is quite natural.
10668 The way Cogl handles textures is by uploading data upside down in OpenGL
10669 terms so that bottom left becomes top left. (Note: This also has the
10670 benefit that we don't need to flip the data we get from image decoding
10671 libraries since they typically also consider top left to be the image
10674 The viewport and window coords are mostly handled with various y =
10675 height - y tweaks before we pass y coordinates to OpenGL.
10677 Generally speaking though the handling of coordinate spaces in Cogl is a bit
10678 fragile. I guess partly because none of it was design to be, it just
10679 evolved from how Clutter defines its coordinates without much consideration
10680 or testing. I hope to improve this over a number of commits; starting here.
10682 This commit deals with the fact that offscreen draw buffers may be bound to
10683 textures but we don't "upload" the texture data upside down, and so if you
10684 texture from an offscreen draw buffer you need to manually flip the texture
10685 coordinates to get it the right way around. We now force offscreen
10686 rendering to be flipped upside down by tweaking the projection matrix right
10687 before we submit it to OpenGL to scale y by -1. The tweak is entirely
10688 hidden from the user such that if you call cogl_get_projection you will not
10691 clutter/cogl/cogl/cogl-context.c | 4 +++
10692 clutter/cogl/cogl/cogl-context.h | 4 +++
10693 clutter/cogl/cogl/cogl-draw-buffer-private.h | 3 +++
10694 clutter/cogl/cogl/cogl-matrix-stack.c | 36 +++++++++++++++++++-------
10695 4 files changed, 37 insertions(+), 10 deletions(-)
10697 commit 8b4c496f2a0291eb202d775e210b5901b6b73940
10698 Author: Robert Bragg <robert@linux.intel.com>
10699 Date: Thu Oct 22 12:35:33 2009 +0100
10701 [cogl] Ensure features are initialized first in cogl_create_context
10703 Previously some context initializing was being done without valid feature
10706 clutter/cogl/cogl/cogl-context.c | 10 +++++-----
10707 1 file changed, 5 insertions(+), 5 deletions(-)
10709 commit 419db4dcfbef74475e155f8dd060bc1c526d5643
10710 Author: Robert Bragg <robert@linux.intel.com>
10711 Date: Sat Oct 17 00:31:26 2009 +0100
10713 [clip-stack] Handle flipped rectangles in try_pushing_rect_as_window_rect()
10715 We were ignoring the possibility that the current modelview matrix may flip
10716 the incoming rectangle in which case we didn't calculate a valid scissor
10717 rectangle for clipping.
10719 This fixes: http://bugzilla.o-hand.com/show_bug.cgi?id=1809
10720 (Clipping doesn't work within an FBO)
10722 clutter/cogl/cogl/cogl-clip-stack.c | 18 ++++++++++++++++++
10723 1 file changed, 18 insertions(+)
10725 commit f7d64e5abd5717bb522d28b7565ecccae63271fc
10726 Author: Robert Bragg <robert@linux.intel.com>
10727 Date: Fri Sep 25 14:34:34 2009 +0100
10729 [draw-buffers] First pass at overhauling Cogl's framebuffer management
10731 Cogl's support for offscreen rendering was originally written just to support
10732 the clutter_texture_new_from_actor API and due to lack of documentation and
10733 several confusing - non orthogonal - side effects of using the API it wasn't
10734 really possible to use directly.
10736 This commit does a number of things:
10737 - It removes {gl,gles}/cogl-fbo.{c,h} and adds shared cogl-draw-buffer.{c,h}
10738 files instead which should be easier to maintain.
10739 - internally CoglFbo objects are now called CoglDrawBuffers. A
10740 CoglDrawBuffer is an abstract base class that is inherited from to
10741 implement CoglOnscreen and CoglOffscreen draw buffers. CoglOffscreen draw
10742 buffers will initially be used to support the
10743 cogl_offscreen_new_to_texture API, and CoglOnscreen draw buffers will
10744 start to be used internally to represent windows as we aim to migrate some
10745 of Clutter's backend code to Cogl.
10746 - It makes draw buffer objects the owners of the following state:
10748 - projection matrix stack
10749 - modelview matrix stack
10751 (This means when you switch between draw buffers you will automatically be
10752 switching to their associated viewport, matrix and clip state)
10754 Aside from hopefully making cogl_offscreen_new_to_texture be more useful
10755 short term by having simpler and well defined semantics for
10756 cogl_set_draw_buffer, as mentioned above this is the first step for a couple
10758 - Its a step toward moving ownership for windows down from Clutter backends
10759 into Cogl, by (internally at least) introducing the CoglOnscreen draw
10760 buffer. Note: the plan is that cogl_set_draw_buffer will accept on or
10761 offscreen draw buffer handles, and the "target" argument will become
10762 redundant since we will instead query the type of the given draw buffer
10764 - Because we have a common type for on and offscreen framebuffers we can
10765 provide a unified API for framebuffer management. Things like:
10766 - blitting between buffers
10767 - managing ancillary buffers (e.g. attaching depth and stencil buffers)
10771 clutter/clutter-main.c | 5 +-
10772 clutter/cogl/cogl/Makefile.am | 2 +
10773 clutter/cogl/cogl/cogl-clip-stack.c | 199 +++++--
10774 clutter/cogl/cogl/cogl-clip-stack.h | 9 +-
10775 clutter/cogl/cogl/cogl-context.c | 34 +-
10776 clutter/cogl/cogl/cogl-context.h | 20 +-
10777 clutter/cogl/cogl/cogl-draw-buffer-private.h | 126 +++++
10778 clutter/cogl/cogl/cogl-draw-buffer.c | 555 ++++++++++++++++++++
10779 clutter/cogl/cogl/cogl-journal.c | 33 +-
10780 clutter/cogl/cogl/cogl-primitives.c | 19 +-
10781 clutter/cogl/cogl/cogl-texture.c | 19 +-
10782 clutter/cogl/cogl/cogl-vertex-buffer.c | 14 +-
10783 clutter/cogl/cogl/cogl.c | 220 +++++---
10784 clutter/cogl/cogl/cogl.h.in | 1 +
10785 clutter/cogl/cogl/driver/gl/Makefile.am | 2 -
10786 clutter/cogl/cogl/driver/gl/cogl-context-driver.c | 19 +-
10787 clutter/cogl/cogl/driver/gl/cogl-context-driver.h | 23 +-
10788 clutter/cogl/cogl/driver/gl/cogl-defines.h.in | 28 +-
10789 clutter/cogl/cogl/driver/gl/cogl-fbo.c | 315 -----------
10790 clutter/cogl/cogl/driver/gl/cogl-fbo.h | 39 --
10791 clutter/cogl/cogl/driver/gl/cogl-primitives.c | 99 +++-
10792 clutter/cogl/cogl/driver/gl/cogl-texture-driver.c | 2 +-
10793 clutter/cogl/cogl/driver/gl/cogl.c | 114 ++--
10794 clutter/cogl/cogl/driver/gles/Makefile.am | 2 -
10795 .../cogl/cogl/driver/gles/cogl-context-driver.c | 10 +
10796 .../cogl/cogl/driver/gles/cogl-context-driver.h | 17 +-
10797 clutter/cogl/cogl/driver/gles/cogl-defines.h.in | 70 +++
10798 clutter/cogl/cogl/driver/gles/cogl-fbo.c | 328 ------------
10799 clutter/cogl/cogl/driver/gles/cogl-fbo.h | 39 --
10800 clutter/cogl/cogl/driver/gles/cogl-primitives.c | 121 ++++-
10801 clutter/cogl/cogl/driver/gles/cogl.c | 75 +++
10802 31 files changed, 1471 insertions(+), 1088 deletions(-)
10804 commit f8f8873714043efbcbf92718493a94ac9ddf303f
10805 Author: Robert Bragg <robert@linux.intel.com>
10806 Date: Tue Oct 20 16:55:10 2009 +0100
10808 [stage-x11] Ensure viewport is initialized before first stage paint
10810 This ensures that glViewport is called before the first stage paint.
10811 Previously _clutter_stage_maybe_setup_viewport (which is done before we
10812 start painting) was bailing out without calling cogl_setup_viewport because
10813 the CLUTTER_STAGE_IN_RESIZE flag may be set if the stage was resized before
10814 the first paint. (NB: The CLUTTER_STAGE_IN_RESIZE flag isn't removed until
10815 we get an explicit event back from the X server since the window manager may
10816 choose to deny/alter the resize.)
10818 We now special case the first resize - where the viewport hasn't previously
10819 been initialized and use the requested geometry to initialize the
10820 glViewport without waiting for a reply from the server.
10822 clutter/x11/clutter-stage-x11.c | 18 ++++++++++++++++++
10823 clutter/x11/clutter-stage-x11.h | 7 ++++---
10824 2 files changed, 22 insertions(+), 3 deletions(-)
10826 commit ad98e96d977e43a882b8a2f680e59ed281c90baf
10827 Author: Robert Bragg <robert@linux.intel.com>
10828 Date: Tue Sep 15 22:19:01 2009 +0100
10830 [cogl-fbo] Bring the gles code more in line with gl code
10832 Over time the two cogl-fbo.c files have needlessly diverged as bug fixes or
10833 cleanups went into one version but not the other. This tries to bring them
10834 back in line with each other. It should actually be simple enough to move
10835 cogl-fbo.c to be a common file, and simply not build it for GLES 1.1, so
10836 maybe I'll follow up with such a patch soon.
10838 clutter/cogl/cogl/driver/gles/cogl-fbo.c | 8 ++++++++
10839 1 file changed, 8 insertions(+)
10841 commit 613977f7108efb8897bffb2e47bfcf29bce29ddc
10842 Author: Robert Bragg <robert@linux.intel.com>
10843 Date: Tue Sep 15 22:15:03 2009 +0100
10845 [cogl-fbo] Remove poorly documented workaround for unknown driver/hardware
10847 The comment just said: "Some implementation require a clear before drawing
10848 to an fbo. Luckily it is affected by scissor test." and did a scissored
10849 clear, which is clearly a driver bug workaround, but for what driver? The
10850 fact that it was copied into the gles backend (or vica versa is also
10851 suspicious since it seems unlikely that the workaround is necessary for both
10854 We can easily restore the workaround with a better comment if this problem
10855 really still exists on current drivers, but for now I'd rather minimize
10856 hand-wavey workaround code that can't be tested.
10858 clutter/cogl/cogl/driver/gl/cogl-fbo.c | 10 ----------
10859 clutter/cogl/cogl/driver/gles/cogl-fbo.c | 19 -------------------
10860 2 files changed, 29 deletions(-)
10862 commit 0599d12ec94344174c947310bddb5658f1b9db58
10863 Author: Damien Lespiau <damien.lespiau@gmail.com>
10864 Date: Sun Nov 1 14:36:05 2009 +0000
10866 texture: Don't compare fbo_source with COGL_INVALID_HANDLE
10868 fbo_source is a ClutterActor, it should be compared to NULL instead of
10869 COGL_INVALID_HANDLE.
10871 clutter/clutter-texture.c | 2 +-
10872 1 file changed, 1 insertion(+), 1 deletion(-)
10874 commit f6e0e48ac613d10d02d27182ebd48be1aeb8b474
10875 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10876 Date: Fri Oct 30 12:11:19 2009 +0000
10878 build: Add missing gles/cogl-context-driver.h to dist
10880 The gles/cogl-context-driver.h header file is missing from the
10881 dist target, which means it's not in the tarballs.
10883 clutter/cogl/cogl/driver/gles/Makefile.am | 1 +
10884 1 file changed, 1 insertion(+)
10886 commit f551cbfb61adb1c454fa36477ad5847b6238e17b
10887 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10888 Date: Fri Oct 30 11:02:35 2009 +0000
10890 Add run-time version checks
10892 Just like CLUTTER_CHECK_VERSION does version checking at compile
10893 time, we need a way to verify the version of the library that we
10894 are linking against. This is mostly needed for language bindings
10895 and for run-time loadable modules -- when we'll get those.
10897 clutter/clutter-main.c | 34 ++++++++++++++++++++++++++++
10898 clutter/clutter-version.h.in | 15 +++++++++++-
10899 doc/reference/clutter/clutter-sections.txt | 7 ++++++
10900 3 files changed, 55 insertions(+), 1 deletion(-)
10902 commit f8e6727e74c80b80bba3ccb9201e1afd23349c35
10903 Author: Neil Roberts <neil@linux.intel.com>
10904 Date: Tue Oct 27 13:18:51 2009 +0000
10906 [cogl_polygon] Enable COGL_ENABLE_BLEND when use_color is set
10908 Otherwise you can't use the alpha channel of the vertex colors unless
10909 the material has a texture with alpha or the material's color has
10910 alpha less than 255.
10912 clutter/cogl/cogl/cogl-primitives.c | 2 +-
10913 1 file changed, 1 insertion(+), 1 deletion(-)
10915 commit 0c32573ffa980fffc966cf35768233a3ff1ed076
10916 Author: Neil Roberts <neil@linux.intel.com>
10917 Date: Tue Oct 27 12:38:10 2009 +0000
10919 build: Add $(top_buiddir)/clutter/cogl to the include path in clutter/cogl/cogl
10921 Some files try to include "cogl/cogl-defines-gl.h" so
10922 $(top_builddir)/clutter/cogl needs to be in the include path for out of
10923 tree builds to work.
10925 clutter/cogl/cogl/Makefile.am | 1 +
10926 1 file changed, 1 insertion(+)
10928 commit c387513a5fd5293cb8cf60e9c1334ceeff905852
10929 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10930 Date: Mon Oct 26 16:29:31 2009 +0000
10932 color: Fix HLS-to-RGB conversion
10934 Apparently, on 64bit systems the floating point noise is enough
10935 to screw up the float-to-int truncation.
10937 The solution is to round up by 0.5 and then use floorf(). This
10938 gives predictable and correct results on both 32bit and 64bit
10941 clutter/clutter-color.c | 8 +++++---
10942 1 file changed, 5 insertions(+), 3 deletions(-)
10944 commit 5a14db50891196a9d17a0df49bf0858551e5a0af
10945 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10946 Date: Mon Oct 26 16:02:06 2009 +0000
10948 layout: Do not create a LayoutMeta on remove
10950 When calling remove_child_meta() we check if there is a LayoutMeta
10951 already attached to the Actor, and if that LayoutMeta matches the
10952 (manager, container, actor) tuple. If the LayoutMeta does not match,
10953 though, we create a new LayoutMeta instance -- in order to remove it
10956 Instead of doing this, we can simply check for a matching LayoutMeta
10957 and if present, remove it.
10959 In case of an existing, non-matching LayoutMeta, we're left with a
10960 dangling instance, but it does not matter: the removal happens in the
10961 unparenting phase of a ClutterContainer, so either the Actor will be
10962 destroyed and thus the LayoutMeta will be disposed along with it; or
10963 it will be parented to another container, and thus the LayoutMeta
10966 clutter/clutter-layout-manager.c | 23 ++++++++++++++++++++++-
10967 1 file changed, 22 insertions(+), 1 deletion(-)
10969 commit 5a63e8af8f715c3fe6ded8a9432c999aab73311a
10970 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10971 Date: Mon Oct 26 15:10:20 2009 +0000
10973 tests: Use the right key symbol for adding children
10975 The test-box-layout should be using CLUTTER_plus instead of a
10978 tests/interactive/test-box-layout.c | 2 +-
10979 1 file changed, 1 insertion(+), 1 deletion(-)
10981 commit a5a0171cb02dcbd67efbf87480aa5cea215c128d
10982 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10983 Date: Mon Oct 26 15:09:07 2009 +0000
10985 box: Depth level changes should queue a relayout
10987 ClutterBox is not ClutterGroup: a change in the level of an actor
10988 through raise, lower or depth sorting must trigger a relayout.
10990 clutter/clutter-box.c | 6 +++---
10991 1 file changed, 3 insertions(+), 3 deletions(-)
10993 commit 2cad7e24f00e2f8fccfdc75086dd9e1071d71c18
10994 Author: Emmanuele Bassi <ebassi@linux.intel.com>
10995 Date: Mon Oct 26 15:08:03 2009 +0000
10997 box: Check before using the LayoutManager instance
10999 A ClutterBox might not have a ClutterLayoutManager instance
11000 associated -- for instance, during destruction. We should check
11001 for one before calling methods on it.
11003 clutter/clutter-box.c | 23 +++++++++++++----------
11004 1 file changed, 13 insertions(+), 10 deletions(-)
11006 commit 81c8cf3e6d839b13e106ab346feaccf1f2f9d3fd
11007 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11008 Date: Mon Oct 26 11:51:30 2009 +0000
11010 texture: Error handling fix
11012 When cogl_texture_new_from_data() fails in clutter_texture_set_from_data()
11013 and no GError is provided, the clutter app will segfault when dereferencing
11014 the GError ** and emitting LOAD_FINISHED signal.
11016 Based on a patch by: Haakon Sporsheim <haakon.sporsheim@gmail.com>
11018 http://bugzilla.openedhand.com/show_bug.cgi?id=1806
11020 clutter/clutter-texture.c | 12 +++++++++---
11021 1 file changed, 9 insertions(+), 3 deletions(-)
11023 commit 00748f66560f3105ff9c636cd01428d8b5e30e9e
11024 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11025 Date: Mon Oct 26 11:42:16 2009 +0000
11027 tests: Print out the captured event type
11029 The ::captured-event signal on the Stage is not printing out the
11032 tests/interactive/test-events.c | 31 ++++++++++++++++++++++++++++++-
11033 1 file changed, 30 insertions(+), 1 deletion(-)
11035 commit f0b434918bcdb0d77467d66d28448672940f6a90
11036 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11037 Date: Fri Oct 23 17:32:18 2009 +0100
11039 docs: Add images for layout managers
11041 It's easier to show the layout manager policy with a simple
11042 screen shot coming from our interactive tests.
11044 clutter/clutter-bin-layout.c | 10 ++++++++++
11045 clutter/clutter-box-layout.c | 7 +++++++
11046 clutter/clutter-flow-layout.c | 16 ++++++++++++++++
11047 doc/reference/clutter/Makefile.am | 8 ++++++++
11048 doc/reference/clutter/bin-layout.png | Bin 0 -> 12890 bytes
11049 doc/reference/clutter/box-layout.png | Bin 0 -> 5119 bytes
11050 doc/reference/clutter/flow-layout-horizontal.png | Bin 0 -> 5888 bytes
11051 doc/reference/clutter/flow-layout-vertical.png | Bin 0 -> 5333 bytes
11052 8 files changed, 41 insertions(+)
11054 commit 924780ce3511ba9bc9e2a6b955836eaaa4d0a216
11055 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11056 Date: Fri Oct 23 16:44:28 2009 +0100
11058 cogl: Avoid C99-isms
11060 Do not declare variables after statements.
11062 clutter/cogl/cogl/cogl.c | 4 ++--
11063 1 file changed, 2 insertions(+), 2 deletions(-)
11065 commit b56b26cc62a851ee4a851a27ce0d6b76936afc6a
11066 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11067 Date: Fri Oct 23 15:46:25 2009 +0100
11069 cogl: Remove cogl-current-matrix.c
11071 The cogl-current-matrix.c file is unused since commit
11072 5e5d94dfbed18bf2b4c8c7a7ff9847952b2c4ae2 and it's not compiled
11073 or distributed anymore.
11075 clutter/cogl/cogl/cogl-current-matrix.c | 409 -------------------------------
11076 1 file changed, 409 deletions(-)
11078 commit 1c43c195098b4705b59891b6b98bc24407cb3264
11079 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11080 Date: Fri Oct 23 14:30:15 2009 +0100
11082 Update Git ignore rules
11084 .gitignore | 4 ++--
11085 1 file changed, 2 insertions(+), 2 deletions(-)
11087 commit 0d5af4c24932b5e468fa21e8ddd1c85d9c807320
11088 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11089 Date: Fri Oct 23 13:55:50 2009 +0100
11091 Post-release bump to 1.1.3
11093 configure.ac | 4 ++--
11094 1 file changed, 2 insertions(+), 2 deletions(-)
11096 commit dec06979b911ca410cc289f12e053a2d49c49abb
11097 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11098 Date: Fri Oct 23 13:38:28 2009 +0100
11100 Release 1.1.2 developers snapshot
11103 NEWS | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
11105 configure.ac | 2 +-
11106 4 files changed, 105 insertions(+), 2 deletions(-)
11108 commit 24594bcde40cc282efa94f9076a1b687c9e9827e
11109 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11110 Date: Fri Oct 23 12:15:25 2009 +0100
11112 build: Make COGL pass distcheck
11114 Some changes to make COGL pass distcheck with Automake 1.11 and
11115 anal-retentiveness turned up to 11.
11117 The "major" change is the flattening of the winsys/ part of COGL,
11118 which is built directly inside libclutter-cogl.la instead of an
11119 intermediate libclutter-cogl-winsys.la object.
11121 Ideally, the whole COGL should be flattened out using a
11122 quasi-non-recursive Automake layout; unfortunately, the driver/
11123 sub-section ships with identical targets and Automake cannot
11124 distinguish GL and GLES objects.
11126 clutter/cogl/cogl/Makefile.am | 196 +++++++++++++++++-----------------
11127 clutter/cogl/cogl/winsys/Makefile.am | 43 --------
11129 3 files changed, 98 insertions(+), 142 deletions(-)
11131 commit c882893e91b1b3ec42be8d790a8210c17de58666
11132 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11133 Date: Fri Oct 23 10:17:40 2009 +0100
11135 actor: Identify allocation cycles
11137 If an actor calls directly or indirectly clutter_actor_queue_relayout()
11138 on itself from within the allocate() implementation it will cause a
11139 relayout cycle. This is usually a condition that should be checked by
11140 ClutterActor and we should emit a warning if it is verified.
11142 clutter/clutter-actor.c | 15 +++++++++++++++
11143 1 file changed, 15 insertions(+)
11145 commit ca15143d1fbb09d5dbe0daeb09d7765b7cf0dfe3
11146 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11147 Date: Fri Oct 23 10:08:02 2009 +0100
11149 actor: Add checks for IN_DESTRUCTION flag
11151 ClutterActor should check whether the current instance is being
11152 destroyed and avoid performing operations like:
11155 • queueing relayouts
11157 It should also warn if the actor is being parented to an actor
11158 currently being destroyed.
11160 clutter/clutter-actor.c | 28 ++++++++++++++++++++++++----
11161 1 file changed, 24 insertions(+), 4 deletions(-)
11163 commit 7de47e74bda68c5d4dde82f2cbba6782fcf69d27
11164 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11165 Date: Fri Oct 23 09:48:35 2009 +0100
11167 actor: Show actor name or type in the state checks warnings
11169 When showing a warning in the state checks we perform to verify that
11170 the invariants are maintained when showing, mapping and realizing, we
11171 should also print out the name of the actor failing the checks. If the
11172 actor has no name, the GType name should be used as a fallback.
11174 clutter/clutter-actor.c | 69 ++++++++++++++++++++++++++++++++---------------
11175 1 file changed, 47 insertions(+), 22 deletions(-)
11177 commit f02874470682f819766055f3976a2d6c74988dc7
11178 Author: Neil Roberts <neil@linux.intel.com>
11179 Date: Thu Oct 22 16:55:29 2009 +0100
11181 Fix some compilation errors in cogl-gles2-wrapper.c
11183 The changes in 74f2122b6 introduced some syntax errors which were
11184 preventing the GLES2 backend from compiling.
11186 clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c | 27 +++++++++-----------
11187 1 file changed, 12 insertions(+), 15 deletions(-)
11189 commit 8727c3127cc049bf22e3b7cb89041b104ae4fea7
11190 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11191 Date: Thu Oct 22 13:48:49 2009 +0100
11193 clone: Set :source as CONSTRUCT
11195 The :source property for ClutterClone is a constructor property, but
11196 it most definitely is not a constructor-only one.
11198 clutter/clutter-clone.c | 2 +-
11199 1 file changed, 1 insertion(+), 1 deletion(-)
11201 commit b82f874b464b252c5f3bbb5e903197a048034430
11202 Author: Neil Roberts <neil@linux.intel.com>
11203 Date: Thu Oct 22 15:39:30 2009 +0100
11205 Remove cogl/{gl,gles}/Makefile.am
11207 These are no longer used anywhere.
11209 clutter/cogl/gl/Makefile.am | 62 -----------------------------
11210 clutter/cogl/gles/Makefile.am | 88 -----------------------------------------
11211 2 files changed, 150 deletions(-)
11213 commit bd809f690a447c813bba02d83ba3c8b22a825b38
11214 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11215 Date: Wed Oct 21 17:44:44 2009 +0100
11217 docs: Close the right tag to avoid XML errors
11219 clutter/clutter-alpha.c | 2 +-
11220 1 file changed, 1 insertion(+), 1 deletion(-)
11222 commit 4996b2224a54efeddce776cade725ec1cd7fca69
11223 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11224 Date: Wed Oct 21 17:43:34 2009 +0100
11226 docs: Rename the Shader and StageManager sections
11228 doc/reference/clutter/clutter-sections.txt | 4 ++--
11229 1 file changed, 2 insertions(+), 2 deletions(-)
11231 commit 673199b6e0399e8f1fcd52662429287f92cb95e9
11232 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11233 Date: Wed Oct 21 16:15:18 2009 +0100
11235 tests: Update test-script
11237 Use explicit alpha definition and custom alpha functions.
11239 tests/interactive/test-script.c | 41 +++++++++++++++++++++++++++++++++------
11240 1 file changed, 35 insertions(+), 6 deletions(-)
11242 commit 7a52fddcd673c4aa14faf2396a0a74db644ba64d
11243 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11244 Date: Wed Oct 21 16:04:12 2009 +0100
11246 alpha: Manually parse the :mode property in ClutterScript
11248 The :mode property for a ClutterAlpha can either be an integer, for
11249 an easing mode logical id, or a string for the easing mode "nickname".
11251 clutter/clutter-alpha.c | 33 ++++++++++++++++++++++++++++++++-
11252 clutter/clutter-script-private.h | 2 ++
11253 clutter/clutter-script.c | 12 +++++++++---
11254 3 files changed, 43 insertions(+), 4 deletions(-)
11256 commit 01bc3fa2c80e9c965222b88ad20b470ae00028ec
11257 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11258 Date: Wed Oct 21 15:43:01 2009 +0100
11260 script, docs: Update documentation for alphas
11262 It is now possible to have Alpha instances defined explicitly for
11263 behaviours, so we need to fix the documentation.
11265 clutter/clutter-script.c | 40 +++++++++++++++++++++++++++++++---------
11266 1 file changed, 31 insertions(+), 9 deletions(-)
11268 commit f0ed71c77dd94e6bf644aba84f2e1cdc2d874fc1
11269 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11270 Date: Wed Oct 21 15:29:25 2009 +0100
11272 alpha: Allow setting the function in ClutterScript
11274 When defining an Alpha in ClutterScript we should allow setting
11275 the alpha function by using a custom property. This makes it
11276 possible to have both:
11279 "id" : "behaviour-1",
11280 "type" : "ClutterBehaviourDepth",
11281 "alpha" : { "timeline" : "timeline-1", "function" : "alpha_func" },
11289 "type" : "ClutterAlpha",
11290 "timeline" : "timeline-1",
11291 "function" : "alpha_func"
11294 "id" : "behaviour-1",
11295 "type" : "ClutterBehaviourDepth",
11296 "alpha" : "alpha-1",
11300 The latter allows defining a single alpha function for multiple
11303 clutter/clutter-alpha.c | 102 ++++++++++++++++++++++++++++++++++++++++++++++-
11304 1 file changed, 101 insertions(+), 1 deletion(-)
11306 commit 50aec3c540d6609d9980fab6a26ba14869982c8b
11307 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11308 Date: Wed Oct 21 15:17:50 2009 +0100
11310 script: Always allow setting object properties by id reference
11312 The block that allows setting a GObject property holding an object
11313 instance is conditionally depending on the USE_PIXBUF define. This
11314 makes it impossible to reference an object inside ClutterScript on
11315 platforms not using GdkPixbuf.
11317 clutter/clutter-script.c | 25 +++++++++++++++----------
11318 1 file changed, 15 insertions(+), 10 deletions(-)
11320 commit ef8ae7d72f752e10552e254c1ff9e76d19430aac
11321 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11322 Date: Wed Oct 21 15:16:43 2009 +0100
11324 behaviour: Notify changes of the :alpha property
11326 The set_alpha() setter of ClutterBehaviour is not emitting notifications
11327 for the alpha property.
11329 clutter/clutter-behaviour.c | 12 +++++++-----
11330 1 file changed, 7 insertions(+), 5 deletions(-)
11332 commit c13701052497b4cdb009f95ad8ccce9f4a7d825e
11333 Author: Owen W. Taylor <otaylor@fishsoup.net>
11334 Date: Mon Oct 5 23:20:07 2009 -0400
11336 Force a relayout when showing an actor
11338 When an actor is hidden, the parent actor is not required to
11339 size request or allocate it. (ClutterGroup does, but, for example,
11340 NbtkBoxLayout doesn't.) This means that the
11341 needs_width_request/needs_height_request/needs_allocate can be
11342 stale when we go to show it again - they are set for the actor
11343 but not the parent. Explicitly setting them to FALSE avoids
11344 clutter_actor_relayout() improperly short-circuiting.
11346 http://bugzilla.openedhand.com/show_bug.cgi?id=1831
11348 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
11350 clutter/clutter-actor.c | 9 +++++++++
11351 1 file changed, 9 insertions(+)
11353 commit 571df43b6d2348fd4db4b0275c8ed55e760ab353
11354 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11355 Date: Tue Oct 20 22:05:04 2009 +0100
11357 text: Invalidate caches and sizes in set_text_internal()
11359 The change in commit 3bbc96e17e5a03ba931c86a5cd2a0ecaa2a3b77b moved the
11360 :text property setter to use set_text_internal(); this function does not
11361 invalidate the Layout cache and does not queue a relayout, thus breaking
11362 the behaviour of ClutterText when setting the contents of the actor using
11365 http://bugzilla.openedhand.com/show_bug.cgi?id=1851
11367 clutter/clutter-text.c | 12 ++++--------
11368 1 file changed, 4 insertions(+), 8 deletions(-)
11370 commit 91c38f877fe0a6224c648ec9f6ecbab8190b536e
11371 Author: Robert Bragg <robert@linux.intel.com>
11372 Date: Tue Oct 20 14:57:40 2009 +0100
11374 [group] Fix copy & paste error from 857b0239e (Use FixedLayout inside Group)
11376 clutter_group_get_preferred_height was calling
11377 clutter_layout_manager_get_preferred_width which e.g. broke
11380 clutter/clutter-group.c | 8 ++++----
11381 1 file changed, 4 insertions(+), 4 deletions(-)
11383 commit 74f2122b68547ac6228c1a8d49765aa71638fa1b
11384 Author: Robert Bragg <robert@linux.intel.com>
11385 Date: Tue Sep 29 02:56:23 2009 +0100
11387 [gles2] remove lots of redundant matrix stack code
11389 Since we no longer depend on the GL matrix API in Cogl we can remove a lot
11390 of wrapper code from the GLES 2 backend. This is particularly nice given
11391 that there was no code shared between the cogl-matrix-stack API and gles2
11392 wrappers so we had a lot of duplicated logic.
11394 clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c | 287 +++-----------------
11395 clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.h | 9 +-
11396 2 files changed, 34 insertions(+), 262 deletions(-)
11398 commit 5e5d94dfbed18bf2b4c8c7a7ff9847952b2c4ae2
11399 Author: Robert Bragg <robert@linux.intel.com>
11400 Date: Tue Oct 13 23:09:42 2009 +0100
11402 [cogl] Removes the cogl-current-matrix abstraction
11404 The indirection through this API isn't necessary since we no longer
11405 arbitrate between the OpenGL matrix API and Cogl's client side API. Also it
11406 doesn't help to maintain an OpenGL style matrix mode API for internal use
11407 since it's awkward to keep restoring the MODELVIEW mode and easy enough to
11408 directly work with the matrix stacks of interest.
11410 This replaces use of the _cogl_current_matrix API with direct use of the
11411 _cogl_matrix_stack API. All the unused cogl_current_matrix API is removed
11412 and the matrix utility code left in cogl-current-matrix.c was moved to
11415 clutter/cogl/cogl/Makefile.am | 2 -
11416 clutter/cogl/cogl/cogl-clip-stack.c | 15 +-
11417 clutter/cogl/cogl/cogl-context.c | 8 +-
11418 clutter/cogl/cogl/cogl-context.h | 4 +-
11419 clutter/cogl/cogl/cogl-current-matrix.h | 95 ----------
11420 clutter/cogl/cogl/cogl-internal.h | 14 +-
11421 clutter/cogl/cogl/cogl-material.c | 2 +
11422 clutter/cogl/cogl/cogl-texture.c | 28 ++-
11423 clutter/cogl/cogl/cogl-util.c | 1 -
11424 clutter/cogl/cogl/cogl.c | 228 +++++++++++++++++++----
11425 clutter/cogl/cogl/driver/gl/cogl-fbo.c | 26 +--
11426 clutter/cogl/cogl/driver/gl/cogl-primitives.c | 24 +--
11427 clutter/cogl/cogl/driver/gles/cogl-fbo.c | 27 ++-
11428 clutter/cogl/cogl/driver/gles/cogl-primitives.c | 24 +--
11429 doc/reference/cogl/Makefile.am | 1 -
11430 15 files changed, 271 insertions(+), 228 deletions(-)
11432 commit 9f7bf9fb4d234a25aba03266a286bc8c2d41f3fd
11433 Author: Robert Bragg <robert@linux.intel.com>
11434 Date: Wed Oct 14 10:53:48 2009 +0100
11436 [matrix-stack] Adds ctx->flushed_matrix_mode to cache the gl matrix mode
11438 This cache of the gl matrix mode lets us avoid repeat calls to glMatrixMode
11439 in _cogl_matrix_stack_flush_to_gl when we have lots of sequential modelview
11440 matrix modifications.
11442 clutter/cogl/cogl/cogl-context.c | 1 +
11443 clutter/cogl/cogl/cogl-context.h | 1 +
11444 clutter/cogl/cogl/cogl-matrix-stack.c | 30 ++++++++++++++++++------------
11445 3 files changed, 20 insertions(+), 12 deletions(-)
11447 commit b1f9f0a97d1abd4465ed7c7bed1da4ed366491ad
11448 Author: Robert Bragg <robert@linux.intel.com>
11449 Date: Tue Oct 6 12:36:32 2009 +0100
11451 matrix-stack: more optimization for load_identity case
11453 This goes a bit further than the previous patch, and as a special case
11454 we now simply represent identity matrices using a boolean, and only
11455 lazily initialize them when they need to be modified.
11457 clutter/cogl/cogl/cogl-matrix-stack.c | 82 ++++++++++++++++++++++++++++-----
11458 1 file changed, 71 insertions(+), 11 deletions(-)
11460 commit 460025d60348e3346cfd864b81d9867ea8474eee
11461 Author: Robert Bragg <robert@linux.intel.com>
11462 Date: Tue Oct 6 10:52:07 2009 +0100
11464 [matrix-stack] avoid redundant clearing of matrix when using load_identity
11466 The journal always uses an identity matrix since it uses software
11467 transformation. Currently it manually uses glLoadMatrix since previous
11468 experimentation showed that the cogl-matrix-stack gave bad performance, but
11469 it would be nice to fix performance so we only have to care about one path
11470 for loading matrices.
11472 For the common case where we do:
11473 cogl_matrix_stack_push()
11474 cogl_matrix_stack_load_identity()
11475 we were effectively initializing the matrix 3 times. Once due to use of
11476 g_slice_new0, then we had a cogl_matrix_init_identity in
11477 _cogl_matrix_state_new for good measure, and then finally in
11478 cogl_matrix_stack_load_identity we did another cogl_matrix_init_identity.
11480 We don't use g_slice_new0 anymore, _cogl_matrix_state_new is documented as
11481 not initializing the matrix (instead _cogl_matrix_stack_top_mutable now
11482 takes a boolean to choose if new stack entries should be initialised) and so
11483 we now only initialize once in cogl_matrix_stack_load_identity.
11485 clutter/cogl/cogl/cogl-matrix-stack.c | 54 ++++++++++++++++-----------------
11486 1 file changed, 26 insertions(+), 28 deletions(-)
11488 commit 2656b569b9911b8aa427a5a02c8b1f4095de6ed7
11489 Author: Robert Bragg <robert@linux.intel.com>
11490 Date: Tue Sep 29 02:58:27 2009 +0100
11492 [current-matrix] Adds texture matrix stacks + removes GL matrix API usage
11494 This relates back to an earlier commitment to stop using the OpenGL matrix
11495 API which is considered deprecated. (ref 54159f5a1d029db)
11497 The new texture matrix stacks are hung from a list of (internal only)
11498 CoglTextureUnit structures which the CoglMaterial code internally references
11499 via _cogl_get_texure_unit ().
11501 So we would be left with only the cogl-matrix-stack code being responsible
11502 for glMatrixMode, glLoadMatrix and glLoadIdentity this commit updates the
11503 journal code so it now uses the matrix-stack API instead of GL directly.
11505 clutter/cogl/cogl/cogl-context.c | 4 +
11506 clutter/cogl/cogl/cogl-context.h | 5 +-
11507 clutter/cogl/cogl/cogl-current-matrix.c | 236 +++++++------------------------
11508 clutter/cogl/cogl/cogl-internal.h | 12 ++
11509 clutter/cogl/cogl/cogl-journal.c | 33 +++--
11510 clutter/cogl/cogl/cogl-material.c | 22 +--
11511 clutter/cogl/cogl/cogl-matrix-stack.c | 15 +-
11512 clutter/cogl/cogl/cogl.c | 59 ++++++++
11513 8 files changed, 174 insertions(+), 212 deletions(-)
11515 commit 473f7ee31ebd6d52126978ba4e155a3bebc4cac1
11516 Author: Emmanuele Bassi <ebassi@linux.intel.com>
11517 Date: Mon Oct 19 15:31:29 2009 +0100
11519 text: Take pre-edit cursor position into account
11521 When determining the cursor position we also need to take into account
11522 the pre-edit cursor position as set by the set_preedit_string()
11525 clutter/clutter-text.c | 16 ++++++++++++++--
11526 1 file changed, 14 insertions(+), 2 deletions(-)
11528 commit 23cd0b79254acd2b97467a62010244328e210a87
11529 Author: Emmanuele Bassi <ebassi@gnome.org>
11530 Date: Mon Oct 19 12:01:38 2009 +0100
11532 docs: Documentation fixes
11534 • Fix list_stages() and peek_stages() documentation
11536 • Fix clutter_text_set_preedit_string() arguments in the header
11537 to match source and documentation
11539 • Add clutter_units_cm() to the private section for Units
11541 • Rename the LayoutManager section
11543 • Add FlowLayout:homogeneous accessors
11545 clutter/clutter-stage-manager.c | 4 ++--
11546 clutter/clutter-text.h | 4 ++--
11547 doc/reference/clutter/clutter-sections.txt | 9 ++++++---
11548 3 files changed, 10 insertions(+), 7 deletions(-)
11550 commit ba25571c8e34593f99ba302edf381a0151c98bbb
11551 Merge: 936779f 8ce8b91
11552 Author: Emmanuele Bassi <ebassi@gnome.org>
11553 Date: Mon Oct 19 11:45:15 2009 +0100
11555 Merge branch 'layout-manager'
11557 * layout-manager: (50 commits)
11558 docs: Reword a link
11559 layout, docs: Add more documentation to LayoutManager
11560 layout, docs: Fix description of Bin properties
11561 layout, bin: Use ceilf() instead of casting to int
11562 layout, docs: Add long description for FlowLayout
11563 layout, box: Clean up
11564 layout, box: Write long description for Box
11565 layout, docs: Remove unused functions
11566 layout: Document BoxLayout
11567 layout: Add BoxLayout, a single line layout manager
11568 layout: Report the correct size of FlowLayout
11569 layout: Resizing the stage resizes the FlowLayout box
11570 layout: Use the get_request_mode() getter in BinLayout
11571 layout: Change the request-mode along with the orientation
11572 actor: Add set_request_mode() method
11573 [layout] Remove FlowLayout:wrap
11574 [layout] Rename BinLayout and FlowLayout interactive tests
11575 [layout] Skip invisible children in FlowLayout
11576 [layout] Clean up and document FlowLayout
11577 [layout] Snap children of FlowLayout to column/row
11580 commit 8ce8b91383390482efe56d982d945a384766ca8c
11581 Author: Emmanuele Bassi <ebassi@gnome.org>
11582 Date: Mon Oct 19 11:44:29 2009 +0100
11584 docs: Reword a link
11586 clutter/clutter-layout-manager.c | 3 ++-
11587 1 file changed, 2 insertions(+), 1 deletion(-)
11589 commit cd3c85f7ba9094a250ec03f0380428fadafef0df
11590 Author: Emmanuele Bassi <ebassi@gnome.org>
11591 Date: Mon Oct 19 11:00:23 2009 +0100
11593 layout, docs: Add more documentation to LayoutManager
11595 The layout manager reference should have some documentation on how
11596 to use a LayoutManager object inside a container and how to implement
11597 a LayoutManager sub-class correctly.
11599 clutter/clutter-layout-manager.c | 41 ++++++++++++++++++++++++++++++++++++++
11600 1 file changed, 41 insertions(+)
11602 commit 936779fd96cc0d8d6713c5cb4c5dc9240cc04d97
11603 Author: Emmanuele Bassi <ebassi@gnome.org>
11604 Date: Sun Oct 18 17:49:00 2009 +0100
11606 build: Add back QUIET_GEN to the GIR generation
11608 clutter/Makefile.am | 2 +-
11609 1 file changed, 1 insertion(+), 1 deletion(-)
11611 commit bc8a7bd5b4c70247e4bc8cccc194c12e5b6a9a2f
11612 Author: Emmanuele Bassi <ebassi@gnome.org>
11613 Date: Sun Oct 18 17:15:04 2009 +0100
11617 .gitignore | 13 ++++++-------
11618 1 file changed, 6 insertions(+), 7 deletions(-)
11620 commit ab376d961fee066f809169f32946a32700ea0e53
11621 Author: Emmanuele Bassi <ebassi@gnome.org>
11622 Date: Sun Oct 18 17:12:12 2009 +0100
11624 build: De-nest the JSON from the introspection rules
11626 The JSON conditional rules can be moved outside the introspection
11627 conditional ones to avoid a nested check, as all the JSON rules do
11628 is setting up variables that may or may not be used.
11630 clutter/Makefile.am | 26 ++++++++++++--------------
11631 1 file changed, 12 insertions(+), 14 deletions(-)
11633 commit 5c162d904bbbbd5ae0f66885497dd0658d27e87f
11634 Author: Emmanuele Bassi <ebassi@gnome.org>
11635 Date: Sun Oct 18 17:11:42 2009 +0100
11637 build: Use QUIET_GEN when building ClutterJson GIR
11639 clutter/json/Makefile.am | 5 ++++-
11640 1 file changed, 4 insertions(+), 1 deletion(-)
11642 commit 8f11b3ca48fde34f5bc214f1ff122e5ed6298eac
11643 Author: Emmanuele Bassi <ebassi@gnome.org>
11644 Date: Sun Oct 18 17:00:24 2009 +0100
11646 build: Fix up the GIR generation rules
11648 The rules for generating Clutter's introspection data are
11649 still referencing the old COGL layout.
11651 clutter/Makefile.am | 9 ++++++---
11652 1 file changed, 6 insertions(+), 3 deletions(-)
11654 commit ad5c0af6399353ad49663954c6abd7305ecc9ad6
11655 Author: Emmanuele Bassi <ebassi@gnome.org>
11656 Date: Sat Oct 17 00:30:37 2009 +0100
11658 build: Add CPPFLAGS for the g-ir-scanner command line
11660 When I moved all CPP flags to AM_CPPFLAGS from the INCLUDES directive
11661 I forgot that g-ir-scanner needs those defines as well.
11663 clutter/Makefile.am | 1 +
11664 1 file changed, 1 insertion(+)
11666 commit ef9ea9e2377f63e8bbf22f4829b8a51953a434ef
11667 Author: Robert Bragg <robert@linux.intel.com>
11668 Date: Wed Sep 16 14:01:57 2009 +0100
11670 [cogl-primitives] Split the journal out from cogl-primitives.c
11672 The Journal can be considered a standalone component, so even though
11673 it's currently only used to log quads, it seems better to split it
11674 out into its own file.
11676 clutter/cogl/cogl/Makefile.am | 2 +
11677 clutter/cogl/cogl/cogl-context.c | 1 +
11678 clutter/cogl/cogl/cogl-journal-private.h | 57 +++
11679 clutter/cogl/cogl/cogl-journal.c | 744 ++++++++++++++++++++++++++++++
11680 clutter/cogl/cogl/cogl-primitives.c | 705 +---------------------------
11681 clutter/cogl/cogl/cogl-texture-private.h | 14 -
11682 6 files changed, 805 insertions(+), 718 deletions(-)
11684 commit 8790306629f8186bba7998b5567c2a45aafb87d9
11685 Author: Robert Bragg <robert@linux.intel.com>
11686 Date: Sun Sep 6 21:47:46 2009 +0100
11688 [test-backface-culling] Check that inverted tex coords don't affect culling
11690 The additional check draws another front facing rectangle but this time with
11691 the texture coords flipped on the x axis. The code that handles sliced
11692 textures in cogl-primitives.c makes some suspicious changes to the geometry
11693 when the texture coords are inverted.
11695 tests/conform/test-backface-culling.c | 28 ++++++++++++++++++++--------
11696 1 file changed, 20 insertions(+), 8 deletions(-)
11698 commit 2f628b1a8a405d2e4c08f2b2d125002ded0d8981
11699 Author: Robert Bragg <robert@linux.intel.com>
11700 Date: Wed Sep 23 15:11:55 2009 +0100
11702 [cogl-spans] split out cogl-spans code from cogl-texture-2d-sliced
11704 When we implement atlas textures we will probably want to use the spans API
11705 to handle texture repeating so it doesn't make sense to leave the code in
11706 cogl-texture-2d-sliced.c. Since it's a standalone set of data structures
11707 and algorithms it also seems reasonable to split out from cogl-texture.
11709 clutter/cogl/cogl/Makefile.am | 2 +
11710 clutter/cogl/cogl/cogl-spans.c | 132 +++++++++++++
11711 clutter/cogl/cogl/cogl-spans.h | 70 +++++++
11712 clutter/cogl/cogl/cogl-texture-2d-sliced-private.h | 27 ---
11713 clutter/cogl/cogl/cogl-texture-2d-sliced.c | 195 +++++---------------
11714 5 files changed, 248 insertions(+), 178 deletions(-)
11716 commit 568d6841871bdfea5d49d2a8143a49a0a7664a7b
11717 Author: Vladimir Nadvornik <nadvornik@suse.cz>
11718 Date: Sun Aug 30 12:36:11 2009 +0200
11720 [cogl-texture] Split CoglTexture into an abstract class + CoglTexture2dSliced
11722 cogl-texture-2d-sliced provides an implementation of CoglTexture and this
11723 seperation lays the foundation for potentially supporting atlas textures,
11724 pixmap textures (as in GLX_EXT_texture_from_pixmap) and fast-path
11725 GL_TEXTURE_{1D,2D,3D,RECTANGLE} textures in a maintainable fashion.
11727 clutter/cogl/cogl/Makefile.am | 2 +
11728 clutter/cogl/cogl/cogl-context.c | 2 +
11729 clutter/cogl/cogl/cogl-context.h | 2 +
11730 clutter/cogl/cogl/cogl-handle.h | 4 +-
11731 clutter/cogl/cogl/cogl-texture-2d-sliced-private.h | 191 ++
11732 clutter/cogl/cogl/cogl-texture-2d-sliced.c | 1871 +++++++++++++++++++
11733 clutter/cogl/cogl/cogl-texture-driver.h | 12 +
11734 clutter/cogl/cogl/cogl-texture-private.h | 80 +-
11735 clutter/cogl/cogl/cogl-texture.c | 1926 +++++---------------
11736 clutter/cogl/cogl/driver/gl/cogl-texture-driver.c | 97 +-
11737 .../cogl/cogl/driver/gles/cogl-context-driver.c | 2 -
11738 .../cogl/cogl/driver/gles/cogl-context-driver.h | 2 -
11739 .../cogl/cogl/driver/gles/cogl-texture-driver.c | 217 +--
11740 13 files changed, 2551 insertions(+), 1857 deletions(-)
11742 commit 9da26fc1ca820d12d325df400e6e02d7cd25423a
11743 Author: Robert Bragg <robert@linux.intel.com>
11744 Date: Wed Sep 16 11:56:17 2009 +0100
11746 [cogl-texture] Seal CoglTexture internals from cogl-primitives.c
11748 cogl-primitives.c was previously digging right into CoglTextures so it could
11749 manually iterate the texture slices for texturing quads and polygons and
11750 because we were missing some state getters we were lazily just poking into
11751 the structures directly.
11753 This adds some extra state getter functions, and adds a higher level
11754 _cogl_texture_foreach_slice () API that hopefully simplifies the way in
11755 which sliced textures may be used to render primitives. This lets you
11756 specify a rectangle in "virtual" texture coords and it will call a given
11757 callback for each slice that intersects that rectangle giving the virtual
11758 coords of the current slice and corresponding "real" texture coordinates for
11759 the underlying gl texture.
11761 At the same time a noteable bug in how we previously iterated sliced
11762 textures was fixed, whereby we weren't correctly handling inverted texture
11763 coordinates. E.g. with the previous code if you supplied texture coords of
11764 tx1=100,ty1=0,tx2=0,ty2=100 (inverted along y axis) that would result in a
11765 back-facing quad, which could be discarded if using back-face culling.
11767 clutter/cogl/cogl/cogl-material.c | 9 +-
11768 clutter/cogl/cogl/cogl-primitives.c | 736 ++++++++++++++----------------
11769 clutter/cogl/cogl/cogl-texture-private.h | 47 +-
11770 clutter/cogl/cogl/cogl-texture.c | 239 +++++++++-
11771 clutter/cogl/cogl/cogl-vertex-buffer.c | 6 +-
11772 clutter/cogl/cogl/driver/gl/cogl-fbo.c | 29 +-
11773 clutter/cogl/cogl/driver/gles/cogl-fbo.c | 29 +-
11774 7 files changed, 640 insertions(+), 455 deletions(-)
11776 commit 52cecd50ec87b617cc20dbc3ba4f843340fb5d63
11777 Author: Robert Bragg <robert@linux.intel.com>
11778 Date: Thu Jul 30 12:06:02 2009 +0100
11780 [docs] switch gl_handle+gl_target docs for cogl_texture_new_from_foreign
11782 The descriptions for gl_handle and gl_target were inverted.
11784 Thanks to Young-Ho Cha for spotting that.
11786 Signed-off-by: Robert Bragg <robert@linux.intel.com>
11788 clutter/cogl/cogl/cogl-texture.h | 4 ++--
11789 1 file changed, 2 insertions(+), 2 deletions(-)
11791 commit 95a869dab1b893f74c5b880e7be43e134eeb706f
11792 Author: Robert Bragg <robert@linux.intel.com>
11793 Date: Wed Jul 29 17:21:07 2009 +0100
11795 [cogl] move clutter/pango to clutter/cogl/pango
11797 As part of the re-organisation of Cogl; move clutter/pango to be part of the
11800 clutter/Makefile.am | 22 +-
11801 clutter/cogl/Makefile.am | 2 +-
11802 clutter/cogl/pango/Makefile.am | 33 ++
11803 clutter/cogl/pango/cogl-pango-display-list.c | 417 +++++++++++++++
11804 clutter/cogl/pango/cogl-pango-display-list.h | 70 +++
11805 clutter/cogl/pango/cogl-pango-fontmap.c | 209 ++++++++
11806 clutter/cogl/pango/cogl-pango-glyph-cache.c | 352 +++++++++++++
11807 clutter/cogl/pango/cogl-pango-glyph-cache.h | 78 +++
11808 clutter/cogl/pango/cogl-pango-private.h | 38 ++
11809 clutter/cogl/pango/cogl-pango-render.c | 697 ++++++++++++++++++++++++++
11810 clutter/cogl/pango/cogl-pango.h | 85 ++++
11811 clutter/pango/Makefile.am | 33 --
11812 clutter/pango/cogl-pango-display-list.c | 417 ---------------
11813 clutter/pango/cogl-pango-display-list.h | 70 ---
11814 clutter/pango/cogl-pango-fontmap.c | 209 --------
11815 clutter/pango/cogl-pango-glyph-cache.c | 352 -------------
11816 clutter/pango/cogl-pango-glyph-cache.h | 78 ---
11817 clutter/pango/cogl-pango-private.h | 38 --
11818 clutter/pango/cogl-pango-render.c | 697 --------------------------
11819 clutter/pango/cogl-pango.h | 85 ----
11820 configure.ac | 2 +-
11821 21 files changed, 1992 insertions(+), 1992 deletions(-)
11823 commit 43efab46bcf88c14cc429c6c7b659bdbc84f1f71
11824 Author: Robert Bragg <robert@linux.intel.com>
11825 Date: Tue Jul 28 02:02:02 2009 +0100
11827 Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys
11829 As part of an incremental process to have Cogl be a standalone project we
11830 want to re-consider how we organise the Cogl source code.
11832 Currently this is the structure I'm aiming for:
11835 <put common source here>
11850 The new winsys component is a starting point for migrating window system
11851 code (i.e. x11,glx,wgl,osx,egl etc) from Clutter to Cogl.
11853 The utils/ and pango/ directories aren't added by this commit, but they are
11854 noted because I plan to add them soon.
11856 Overview of the planned structure:
11858 * The winsys/ API is the API that binds OpenGL to a specific window system,
11859 be that X11 or win32 etc. Example are glx, wgl and egl. Much of the logic
11860 under clutter/{glx,osx,win32 etc} should migrate here.
11862 * Note there is also the idea of a winsys-base that may represent a window
11863 system for which there are multiple winsys APIs. An example of this is
11864 x11, since glx and egl may both be used with x11. (currently only Clutter
11865 has the idea of a winsys-base)
11867 * The driver/ represents a specific varient of OpenGL. Currently we have "gl"
11868 representing OpenGL 1.4-2.1 (mostly fixed function) and "gles" representing
11869 GLES 1.1 (fixed funciton) and 2.0 (fully shader based)
11871 * Everything under cogl/ should fundamentally be supporting access to the
11872 GPU. Essentially Cogl's most basic requirement is to provide a nice GPU
11873 Graphics API and drawing a line between this and the utility functionality
11874 we add to support Clutter should help keep this lean and maintainable.
11876 * Code under utils/ as suggested builds on cogl/ adding more convenient
11877 APIs or mechanism to optimize special cases. Broadly speaking you can
11878 compare cogl/ to OpenGL and utils/ to GLU.
11880 * clutter/pango will be moved to clutter/cogl/pango
11882 How some of the internal configure.ac/pkg-config terminology has changed:
11883 backendextra -> CLUTTER_WINSYS_BASE # e.g. "x11"
11884 backendextralib -> CLUTTER_WINSYS_BASE_LIB # e.g. "x11/libclutter-x11.la"
11885 clutterbackend -> {CLUTTER,COGL}_WINSYS # e.g. "glx"
11886 CLUTTER_FLAVOUR -> {CLUTTER,COGL}_WINSYS
11887 clutterbackendlib -> CLUTTER_WINSYS_LIB
11888 CLUTTER_COGL -> COGL_DRIVER # e.g. "gl"
11890 Note: The CLUTTER_FLAVOUR and CLUTTER_COGL defines are kept for apps
11892 As the first thing to take advantage of the new winsys component in Cogl;
11893 cogl_get_proc_address() has been moved from cogl/{gl,gles}/cogl.c into
11894 cogl/common/cogl.c and this common implementation first trys
11895 _cogl_winsys_get_proc_address() but if that fails then it falls back to
11899 clutter.pc.in | 10 +-
11900 clutter/Makefile.am | 38 +-
11901 clutter/cogl/Makefile.am | 89 +-
11902 clutter/cogl/TODO | 25 -
11903 clutter/cogl/cogl-bitmap.h | 80 -
11904 clutter/cogl/cogl-color.h | 261 --
11905 clutter/cogl/cogl-debug.h | 79 -
11906 clutter/cogl/cogl-deprecated.h | 36 -
11907 clutter/cogl/cogl-fixed.h | 782 ----
11908 clutter/cogl/cogl-material.h | 781 ----
11909 clutter/cogl/cogl-matrix.h | 290 --
11910 clutter/cogl/cogl-offscreen.h | 96 -
11911 clutter/cogl/cogl-path.h | 347 --
11912 clutter/cogl/cogl-shader.h | 313 --
11913 clutter/cogl/cogl-texture.h | 465 ---
11914 clutter/cogl/cogl-types.h | 328 --
11915 clutter/cogl/cogl-vertex-buffer.h | 452 ---
11916 clutter/cogl/cogl.h.in | 875 -----
11917 clutter/cogl/cogl.pc.in | 15 -
11918 clutter/cogl/cogl/Makefile.am | 161 +
11919 clutter/cogl/cogl/cogl-bitmap-fallback.c | 460 +++
11920 clutter/cogl/cogl/cogl-bitmap-pixbuf.c | 368 ++
11921 clutter/cogl/cogl/cogl-bitmap-private.h | 115 +
11922 clutter/cogl/cogl/cogl-bitmap.c | 208 ++
11923 clutter/cogl/cogl/cogl-bitmap.h | 80 +
11924 clutter/cogl/cogl/cogl-blend-string.c | 1005 ++++++
11925 clutter/cogl/cogl/cogl-blend-string.h | 138 +
11926 clutter/cogl/cogl/cogl-clip-stack.c | 503 +++
11927 clutter/cogl/cogl/cogl-clip-stack.h | 43 +
11928 clutter/cogl/cogl/cogl-color.c | 201 ++
11929 clutter/cogl/cogl/cogl-color.h | 261 ++
11930 clutter/cogl/cogl/cogl-context.c | 215 ++
11931 clutter/cogl/cogl/cogl-context.h | 131 +
11932 clutter/cogl/cogl/cogl-current-matrix.c | 549 +++
11933 clutter/cogl/cogl/cogl-current-matrix.h | 95 +
11934 clutter/cogl/cogl/cogl-debug.c | 131 +
11935 clutter/cogl/cogl/cogl-debug.h | 79 +
11936 clutter/cogl/cogl/cogl-deprecated.h | 36 +
11937 clutter/cogl/cogl/cogl-enum-types.c.in | 41 +
11938 clutter/cogl/cogl/cogl-enum-types.h.in | 25 +
11939 clutter/cogl/cogl/cogl-fixed.c | 950 +++++
11940 clutter/cogl/cogl/cogl-fixed.h | 782 ++++
11941 clutter/cogl/cogl/cogl-handle.h | 157 +
11942 clutter/cogl/cogl/cogl-internal.h | 88 +
11943 clutter/cogl/cogl/cogl-material-private.h | 255 ++
11944 clutter/cogl/cogl/cogl-material.c | 1972 ++++++++++
11945 clutter/cogl/cogl/cogl-material.h | 781 ++++
11946 clutter/cogl/cogl/cogl-matrix-stack.c | 363 ++
11947 clutter/cogl/cogl/cogl-matrix-stack.h | 82 +
11948 clutter/cogl/cogl/cogl-matrix.c | 282 ++
11949 clutter/cogl/cogl/cogl-matrix.h | 290 ++
11950 clutter/cogl/cogl/cogl-offscreen.h | 96 +
11951 clutter/cogl/cogl/cogl-path.h | 347 ++
11952 clutter/cogl/cogl/cogl-primitives.c | 2329 ++++++++++++
11953 clutter/cogl/cogl/cogl-primitives.h | 62 +
11954 clutter/cogl/cogl/cogl-shader.h | 313 ++
11955 clutter/cogl/cogl/cogl-texture-driver.h | 157 +
11956 clutter/cogl/cogl/cogl-texture-private.h | 151 +
11957 clutter/cogl/cogl/cogl-texture.c | 1682 +++++++++
11958 clutter/cogl/cogl/cogl-texture.h | 465 +++
11959 clutter/cogl/cogl/cogl-types.h | 328 ++
11960 clutter/cogl/cogl/cogl-util.c | 252 ++
11961 clutter/cogl/cogl/cogl-util.h | 30 +
11962 clutter/cogl/cogl/cogl-vertex-buffer-private.h | 169 +
11963 clutter/cogl/cogl/cogl-vertex-buffer.c | 2016 +++++++++++
11964 clutter/cogl/cogl/cogl-vertex-buffer.h | 452 +++
11965 clutter/cogl/cogl/cogl.c | 879 +++++
11966 clutter/cogl/cogl/cogl.h.in | 875 +++++
11967 clutter/cogl/cogl/cogl.pc.in | 17 +
11968 clutter/cogl/cogl/driver/Makefile.am | 7 +
11969 clutter/cogl/cogl/driver/gl/Makefile.am | 39 +
11970 clutter/cogl/cogl/driver/gl/cogl-context-driver.c | 84 +
11971 clutter/cogl/cogl/driver/gl/cogl-context-driver.h | 103 +
11972 clutter/cogl/cogl/driver/gl/cogl-defines.h.in | 1053 ++++++
11973 clutter/cogl/cogl/driver/gl/cogl-fbo.c | 330 ++
11974 clutter/cogl/cogl/driver/gl/cogl-fbo.h | 39 +
11975 clutter/cogl/cogl/driver/gl/cogl-primitives.c | 282 ++
11976 clutter/cogl/cogl/driver/gl/cogl-program.c | 255 ++
11977 clutter/cogl/cogl/driver/gl/cogl-program.h | 39 +
11978 clutter/cogl/cogl/driver/gl/cogl-shader-private.h | 39 +
11979 clutter/cogl/cogl/driver/gl/cogl-shader.c | 177 +
11980 clutter/cogl/cogl/driver/gl/cogl-texture-driver.c | 454 +++
11981 clutter/cogl/cogl/driver/gl/cogl.c | 443 +++
11982 clutter/cogl/cogl/driver/gles/Makefile.am | 62 +
11983 .../cogl/cogl/driver/gles/cogl-context-driver.c | 41 +
11984 .../cogl/cogl/driver/gles/cogl-context-driver.h | 44 +
11985 clutter/cogl/cogl/driver/gles/cogl-defines.h.in | 638 ++++
11986 clutter/cogl/cogl/driver/gles/cogl-fbo.c | 343 ++
11987 clutter/cogl/cogl/driver/gles/cogl-fbo.h | 39 +
11988 .../driver/gles/cogl-fixed-fragment-shader.glsl | 62 +
11989 .../cogl/driver/gles/cogl-fixed-vertex-shader.glsl | 65 +
11990 clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.c | 1635 +++++++++
11991 clutter/cogl/cogl/driver/gles/cogl-gles2-wrapper.h | 433 +++
11992 clutter/cogl/cogl/driver/gles/cogl-primitives.c | 453 +++
11993 clutter/cogl/cogl/driver/gles/cogl-program.c | 338 ++
11994 clutter/cogl/cogl/driver/gles/cogl-program.h | 43 +
11995 .../cogl/cogl/driver/gles/cogl-shader-private.h | 40 +
11996 clutter/cogl/cogl/driver/gles/cogl-shader.c | 221 ++
11997 .../cogl/cogl/driver/gles/cogl-texture-driver.c | 481 +++
11998 clutter/cogl/cogl/driver/gles/cogl-util.c | 49 +
11999 clutter/cogl/cogl/driver/gles/cogl-util.h | 30 +
12000 clutter/cogl/cogl/driver/gles/cogl.c | 64 +
12001 clutter/cogl/cogl/driver/gles/stringify.sh | 94 +
12002 clutter/cogl/cogl/stb_image.c | 3772 ++++++++++++++++++++
12003 clutter/cogl/cogl/winsys/Makefile.am | 43 +
12004 clutter/cogl/cogl/winsys/cogl-eglnative.c | 35 +
12005 clutter/cogl/cogl/winsys/cogl-eglx.c | 35 +
12006 clutter/cogl/cogl/winsys/cogl-fruity.c | 35 +
12007 clutter/cogl/cogl/winsys/cogl-glx.c | 78 +
12008 clutter/cogl/cogl/winsys/cogl-osx.c | 35 +
12009 clutter/cogl/cogl/winsys/cogl-sdl.c | 35 +
12010 clutter/cogl/cogl/winsys/cogl-win32.c | 35 +
12011 clutter/cogl/cogl/winsys/cogl-winsys.h | 30 +
12012 clutter/cogl/common/Makefile.am | 96 -
12013 clutter/cogl/common/cogl-bitmap-fallback.c | 460 ---
12014 clutter/cogl/common/cogl-bitmap-pixbuf.c | 368 --
12015 clutter/cogl/common/cogl-bitmap-private.h | 115 -
12016 clutter/cogl/common/cogl-bitmap.c | 208 --
12017 clutter/cogl/common/cogl-blend-string.c | 1005 ------
12018 clutter/cogl/common/cogl-blend-string.h | 138 -
12019 clutter/cogl/common/cogl-clip-stack.c | 503 ---
12020 clutter/cogl/common/cogl-clip-stack.h | 43 -
12021 clutter/cogl/common/cogl-color.c | 201 --
12022 clutter/cogl/common/cogl-context.c | 215 --
12023 clutter/cogl/common/cogl-context.h | 131 -
12024 clutter/cogl/common/cogl-current-matrix.c | 549 ---
12025 clutter/cogl/common/cogl-current-matrix.h | 95 -
12026 clutter/cogl/common/cogl-debug.c | 131 -
12027 clutter/cogl/common/cogl-enum-types.c.in | 41 -
12028 clutter/cogl/common/cogl-enum-types.h.in | 25 -
12029 clutter/cogl/common/cogl-fixed.c | 950 -----
12030 clutter/cogl/common/cogl-handle.h | 157 -
12031 clutter/cogl/common/cogl-internal.h | 88 -
12032 clutter/cogl/common/cogl-material-private.h | 255 --
12033 clutter/cogl/common/cogl-material.c | 1972 ----------
12034 clutter/cogl/common/cogl-matrix-stack.c | 363 --
12035 clutter/cogl/common/cogl-matrix-stack.h | 81 -
12036 clutter/cogl/common/cogl-matrix.c | 282 --
12037 clutter/cogl/common/cogl-primitives.c | 2329 ------------
12038 clutter/cogl/common/cogl-primitives.h | 62 -
12039 clutter/cogl/common/cogl-texture-driver.h | 157 -
12040 clutter/cogl/common/cogl-texture-private.h | 151 -
12041 clutter/cogl/common/cogl-texture.c | 1682 ---------
12042 clutter/cogl/common/cogl-util.c | 252 --
12043 clutter/cogl/common/cogl-util.h | 30 -
12044 clutter/cogl/common/cogl-vertex-buffer-private.h | 169 -
12045 clutter/cogl/common/cogl-vertex-buffer.c | 2016 -----------
12046 clutter/cogl/common/cogl.c | 858 -----
12047 clutter/cogl/common/stb_image.c | 3772 --------------------
12048 clutter/cogl/gl/cogl-context-driver.c | 84 -
12049 clutter/cogl/gl/cogl-context-driver.h | 103 -
12050 clutter/cogl/gl/cogl-defines.h.in | 1053 ------
12051 clutter/cogl/gl/cogl-fbo.c | 330 --
12052 clutter/cogl/gl/cogl-fbo.h | 39 -
12053 clutter/cogl/gl/cogl-primitives.c | 282 --
12054 clutter/cogl/gl/cogl-program.c | 255 --
12055 clutter/cogl/gl/cogl-program.h | 39 -
12056 clutter/cogl/gl/cogl-shader-private.h | 39 -
12057 clutter/cogl/gl/cogl-shader.c | 177 -
12058 clutter/cogl/gl/cogl-texture-driver.c | 454 ---
12059 clutter/cogl/gl/cogl.c | 515 ---
12060 clutter/cogl/gles/cogl-context-driver.c | 41 -
12061 clutter/cogl/gles/cogl-context-driver.h | 44 -
12062 clutter/cogl/gles/cogl-defines.h.in | 638 ----
12063 clutter/cogl/gles/cogl-fbo.c | 343 --
12064 clutter/cogl/gles/cogl-fbo.h | 39 -
12065 clutter/cogl/gles/cogl-fixed-fragment-shader.glsl | 62 -
12066 clutter/cogl/gles/cogl-fixed-vertex-shader.glsl | 65 -
12067 clutter/cogl/gles/cogl-gles2-wrapper.c | 1635 ---------
12068 clutter/cogl/gles/cogl-gles2-wrapper.h | 433 ---
12069 clutter/cogl/gles/cogl-primitives.c | 453 ---
12070 clutter/cogl/gles/cogl-program.c | 338 --
12071 clutter/cogl/gles/cogl-program.h | 43 -
12072 clutter/cogl/gles/cogl-shader-private.h | 40 -
12073 clutter/cogl/gles/cogl-shader.c | 221 --
12074 clutter/cogl/gles/cogl-texture-driver.c | 481 ---
12075 clutter/cogl/gles/cogl-util.c | 49 -
12076 clutter/cogl/gles/cogl-util.h | 30 -
12077 clutter/cogl/gles/cogl.c | 74 -
12078 clutter/cogl/gles/stringify.sh | 94 -
12079 clutter/eglnative/Makefile.am | 12 +-
12080 clutter/eglx/Makefile.am | 2 +
12081 clutter/fruity/Makefile.am | 8 +-
12082 clutter/glx/Makefile.am | 2 +
12083 clutter/osx/Makefile.am | 6 +-
12084 clutter/sdl/Makefile.am | 2 +
12085 clutter/win32/Makefile.am | 2 +
12086 clutter/win32/clutter-win32.pc.in | 8 +-
12087 clutter/x11/Makefile.am | 2 +
12088 clutter/x11/clutter-x11.pc.in | 10 +-
12089 configure.ac | 119 +-
12090 doc/reference/clutter/Makefile.am | 6 +-
12091 doc/reference/cogl/Makefile.am | 11 +-
12092 tests/conform/Makefile.am | 4 +-
12093 tests/interactive/Makefile.am | 4 +-
12094 tests/micro-bench/Makefile.am | 9 +-
12095 tests/tools/Makefile.am | 2 +
12096 198 files changed, 34272 insertions(+), 33869 deletions(-)
12098 commit 2eea83de75cec3dbc334feecd004a180a7f5b1e5
12099 Author: Robert Bragg <robert@linux.intel.com>
12100 Date: Tue Jul 28 01:34:33 2009 +0100
12102 Make the CoglContext structure a bit more maintainable
12104 This moves most of cogl-context.{c.h} to cogl/common with some driver
12105 specific members now living in a CoglContextDriver struct. Driver specific
12106 context initialization and typedefs now live in
12107 cogl/{gl,gles}/cogl-context-driver.{c,h}
12109 Driver specific members can be found under ctx->drv.stuff
12111 clutter/cogl/common/Makefile.am | 2 +
12112 clutter/cogl/common/cogl-blend-string.c | 2 +-
12113 clutter/cogl/common/cogl-context.c | 215 +++++++++++++++++++++++++
12114 clutter/cogl/common/cogl-context.h | 131 +++++++++++++++
12115 clutter/cogl/common/cogl-material.c | 14 +-
12116 clutter/cogl/common/cogl-primitives.c | 12 +-
12117 clutter/cogl/common/cogl-vertex-buffer.c | 26 +--
12118 clutter/cogl/common/cogl.c | 2 +-
12119 clutter/cogl/gl/Makefile.am | 2 +-
12120 clutter/cogl/gl/cogl-context-driver.c | 84 ++++++++++
12121 clutter/cogl/gl/cogl-context-driver.h | 103 ++++++++++++
12122 clutter/cogl/gl/cogl-context.c | 259 ------------------------------
12123 clutter/cogl/gl/cogl-context.h | 197 -----------------------
12124 clutter/cogl/gl/cogl-fbo.c | 24 +--
12125 clutter/cogl/gl/cogl-primitives.c | 2 +-
12126 clutter/cogl/gl/cogl-program.c | 50 +++---
12127 clutter/cogl/gl/cogl-shader.c | 12 +-
12128 clutter/cogl/gl/cogl-texture-driver.c | 2 +-
12129 clutter/cogl/gl/cogl.c | 224 +++++++++++++-------------
12130 clutter/cogl/gles/Makefile.am | 2 +-
12131 clutter/cogl/gles/cogl-context-driver.c | 41 +++++
12132 clutter/cogl/gles/cogl-context-driver.h | 44 +++++
12133 clutter/cogl/gles/cogl-context.c | 214 ------------------------
12134 clutter/cogl/gles/cogl-context.h | 136 ----------------
12135 clutter/cogl/gles/cogl-fbo.c | 8 +-
12136 clutter/cogl/gles/cogl-gles2-wrapper.c | 2 +-
12137 clutter/cogl/gles/cogl-program.c | 16 +-
12138 clutter/cogl/gles/cogl-texture-driver.c | 14 +-
12139 28 files changed, 828 insertions(+), 1012 deletions(-)
12141 commit 157eb437bac38d7a61991f47bd943cb9f6d84ad7
12142 Author: Robert Bragg <robert@linux.intel.com>
12143 Date: Tue Jul 28 00:37:11 2009 +0100
12145 Improve cogl-texture maintainability by moving 90% into cogl/common
12147 This splits the limited components that differed between
12148 cogl/{gl,gles}/cogl-texture.c into new {gl,gles}/cogl-texture-driver.c files
12149 and the rest that can now be shared into cogl/common/cogl-texture.c
12151 clutter/cogl/common/Makefile.am | 3 +
12152 clutter/cogl/common/cogl-internal.h | 1 +
12153 clutter/cogl/common/cogl-texture-driver.h | 157 +++
12154 clutter/cogl/common/cogl-texture-private.h | 151 ++
12155 clutter/cogl/common/cogl-texture.c | 1682 ++++++++++++++++++++++
12156 clutter/cogl/gl/Makefile.am | 3 +-
12157 clutter/cogl/gl/cogl-texture-driver.c | 454 ++++++
12158 clutter/cogl/gl/cogl-texture-private.h | 145 --
12159 clutter/cogl/gl/cogl-texture.c | 1996 ---------------------------
12160 clutter/cogl/gles/Makefile.am | 3 +-
12161 clutter/cogl/gles/cogl-gles2-wrapper.h | 1 +
12162 clutter/cogl/gles/cogl-texture-driver.c | 481 +++++++
12163 clutter/cogl/gles/cogl-texture-private.h | 144 --
12164 clutter/cogl/gles/cogl-texture.c | 2066 ----------------------------
12165 14 files changed, 2932 insertions(+), 4355 deletions(-)
12167 commit fe01ec6323967614c6404bc193503adb5bda1624
12168 Author: Robert Bragg <robert@linux.intel.com>
12169 Date: Thu Aug 20 11:54:41 2009 +0100
12171 [stage-egl] support fallbacks in clutter_stage_egl_realize
12173 Most of clutter_stage_egl_realize was renamed to
12174 _clutter_stage_egl_try_realize which now takes a cookie indicating which
12175 fallback number should tried next. clutter_stage_egl_realize now keeps
12176 trying to realize with successive fallback numbers until it succeeds or runs
12179 The only fallback supported for now is for hardware with no stencil buffer
12182 clutter/eglx/clutter-stage-egl.c | 112 ++++++++++++++++++++++++++++----------
12183 1 file changed, 82 insertions(+), 30 deletions(-)
12185 commit 3187e1964279b3fb93703fe6c67df5b6025729c9
12186 Author: Robert Bragg <robert@linux.intel.com>
12187 Date: Mon Aug 3 14:50:10 2009 +0100
12189 [x11 backend] remove data duplicated between backends and stages
12191 Make backends the canonical point of reference for the xdisplay, the xscreen
12192 number, the x root window and the xvisinfo for creating foreign stages.
12194 clutter/eglx/clutter-backend-egl.c | 10 +-
12195 clutter/eglx/clutter-stage-egl.c | 18 ++--
12196 clutter/glx/clutter-backend-glx.c | 59 +++++++-----
12197 clutter/glx/clutter-backend-glx.h | 6 ++
12198 clutter/glx/clutter-stage-glx.c | 58 ++++++------
12199 clutter/x11/clutter-backend-x11.c | 1 +
12200 clutter/x11/clutter-backend-x11.h | 5 +
12201 clutter/x11/clutter-stage-x11.c | 177 ++++++++++++++++++++++--------------
12202 clutter/x11/clutter-stage-x11.h | 8 +-
12203 9 files changed, 200 insertions(+), 142 deletions(-)
12205 commit 63414ab233522b0da8462b32c4e36e74be891475
12206 Author: Robert Bragg <robert@linux.intel.com>
12207 Date: Fri Jul 31 20:39:28 2009 +0100
12209 [glx backend] white space fixes
12211 Simply removes lots of trailing white spaces
12213 clutter/glx/clutter-backend-glx.c | 40 ++++++++++++++++++-------------------
12214 1 file changed, 20 insertions(+), 20 deletions(-)
12216 commit 45a668bef855b8564236a3153bf07e1ea0148d16
12217 Author: Robert Bragg <robert@linux.intel.com>
12218 Date: Fri Jul 31 17:07:10 2009 +0100
12220 [glx backend] use FBConfigs instead of Visuals for GL context creation
12222 This replaces calls to the old (glx 1.2) functions glXChooseVisual,
12223 glXCreateContext, glXMakeCurrent with the 1.3+ fbconfig varients
12224 glXChooseFBConfig, glXCreateNewContext, glXMakeContextCurrent.
12226 clutter/glx/clutter-backend-glx.c | 122 +++++++++++++++++++++++--------------
12227 1 file changed, 75 insertions(+), 47 deletions(-)
12229 commit 15d7a86621f3fc80d3d50e7f5a3a141412163e7f
12230 Author: Robert Bragg <robert@linux.intel.com>
12231 Date: Fri Jul 31 18:34:51 2009 +0100
12233 [backends] Remove the idea of offscreen stages from all backends
12235 The only backend that tried to implement offscreen stages was the GLX backend
12236 and even this has apparently be broken for some time without anyone noticing.
12238 The property still remains and since the property already clearly states that
12239 it may not work I don't expect anyone to notice.
12241 This simplifies quite a bit of the GLX code which is very desireable from the
12242 POV that we want to start migrating window system code down to Cogl and the
12243 simpler the code is the more straight forward this work will be.
12245 In the future when Cogl has a nicely designed API for framebuffer objects then
12246 re-implementing offscreen stages cleanly for *all* backends should be quite
12249 clutter/clutter-backend.c | 3 +-
12250 clutter/clutter-backend.h | 1 -
12251 clutter/clutter-private.h | 1 -
12252 clutter/clutter-stage.c | 33 +---
12253 clutter/eglnative/clutter-stage-egl.c | 217 +++++++++++------------
12254 clutter/eglx/clutter-backend-egl.c | 3 +-
12255 clutter/eglx/clutter-stage-egl.c | 307 +++++++++++++++------------------
12256 clutter/fruity/clutter-stage-fruity.c | 175 +++++++++----------
12257 clutter/glx/clutter-backend-glx.c | 59 ++-----
12258 clutter/glx/clutter-stage-glx.c | 224 ++++++++----------------
12259 clutter/osx/clutter-stage-osx.c | 10 --
12260 clutter/sdl/clutter-stage-sdl.c | 39 ++---
12261 clutter/x11/clutter-backend-x11.c | 5 +-
12262 clutter/x11/clutter-backend-x11.h | 8 +-
12263 clutter/x11/clutter-stage-x11.c | 5 +-
12264 15 files changed, 435 insertions(+), 655 deletions(-)
12266 commit 35f11d863c4ac66136df9846c898ed88ff8ffb34
12267 Author: Robert Bragg <robert@linux.intel.com>
12268 Date: Fri Oct 16 17:15:47 2009 +0100
12270 [build] more Makefile.am.{enums,marshal} fixes for out of tree builds
12272 for the marshal files $(srcdir) was getting prefixed twice since my last
12273 commit (2cc88f1140) since it was already being prefixed including
12274 Makefile.am. The problem with prefixing it in the includer file though is
12275 that the Make variable substitutions like :.list=.h mean we end up
12276 generating into the $(srcdir). This removes the prefix added in
12277 clutter/Makefile.am
12279 We were also missing a $(srcdir) prefix when setting EXTRA_DIST
12281 build/autotools/Makefile.am.enums | 2 +-
12282 build/autotools/Makefile.am.marshal | 3 ++-
12283 clutter/Makefile.am | 2 +-
12284 3 files changed, 4 insertions(+), 3 deletions(-)
12286 commit f1acc91f3704bfff45652aea4f14355485f34df0
12287 Author: Emmanuele Bassi <ebassi@gnome.org>
12288 Date: Fri Oct 16 15:57:21 2009 +0100
12290 Simple coding style fix for commit c5551184
12292 clutter/clutter-interval.c | 2 ++
12293 1 file changed, 2 insertions(+)
12295 commit a9d2c0f6903fff5a5b445265040f8bb689c10750
12296 Merge: b5adbf8 70c8128
12297 Author: Emmanuele Bassi <ebassi@gnome.org>
12298 Date: Fri Oct 16 15:55:05 2009 +0100
12300 Merge branch 'bug-1846'
12303 Fix warning message in the ParamSpec validation
12305 commit b5adbf89b851baa9fb833b00ad6137cc5e6547cb
12306 Merge: ee9f8c3 c555118
12307 Author: Emmanuele Bassi <ebassi@gnome.org>
12308 Date: Fri Oct 16 15:55:04 2009 +0100
12310 Merge branch 'bug-1845'
12313 Add a warning when ClutterInterval can't compute progress
12315 commit 70c8128457d49bf9dde0838470f1b4b363f9aafb
12316 Author: Damien Lespiau <damien.lespiau@intel.com>
12317 Date: Mon Oct 12 17:05:05 2009 +0100
12319 Fix warning message in the ParamSpec validation
12321 When validating a new GValue against the ClutterParamSpecUnits, we issue
12322 a warning when the units do not match with both the new value and the
12323 unit we expect to have. Unfortunately we were printing the unit of the
12324 new value twice and not the unit of the ParamSpec.
12326 http://bugzilla.openedhand.com/show_bug.cgi?id=1846
12328 clutter/clutter-units.c | 2 +-
12329 1 file changed, 1 insertion(+), 1 deletion(-)
12331 commit c5551184b0337ea8a990b14e52eb15e855a27ca9
12332 Author: Damien Lespiau <damien.lespiau@intel.com>
12333 Date: Mon Oct 12 16:45:39 2009 +0100
12335 Add a warning when ClutterInterval can't compute progress
12337 This is really useful when trying to animate GTypes that haven't
12338 registered any progress function. Instead of silently not working it
12339 will warn the developer.
12341 http://bugzilla.openedhand.com/show_bug.cgi?id=1845
12343 clutter/clutter-interval.c | 9 +++++++++
12344 1 file changed, 9 insertions(+)
12346 commit ee9f8c3bdf9672e0d79598eed8f73569190888dc
12347 Author: Damien Lespiau <damien.lespiau@intel.com>
12348 Date: Mon Oct 12 16:28:10 2009 +0100
12350 Add ClutterInterval integration
12352 To be able to animate CLUTTER_TYPE_UNITS properties we need to register
12353 the GType and its progress function against the ClutterInterval code.
12355 The two ClutterUnits defining the interval can use different units, the
12356 resulting unit will always be in pixels, so calculating a progress
12357 between 10px and 4cm is valid.
12359 http://bugzilla.openedhand.com/show_bug.cgi?id=1844
12361 clutter/clutter-units.c | 29 +++++++++++++++++++++++++++++
12362 1 file changed, 29 insertions(+)
12364 commit 83b4ec7a12ea279b59a80f6008e1bece25de3a8c
12365 Author: Emmanuele Bassi <ebassi@gnome.org>
12366 Date: Fri Oct 16 15:25:37 2009 +0100
12368 units: Cache the pixels value inside Units
12370 When computing the pixels value of a ClutterUnits value we should
12371 be caching the value to avoid recomputing for every call of
12372 clutter_units_to_pixels(). We already have a flag telling us to
12373 return the cached value, but we miss the mechanism to evict the
12374 cache whenever the Backend settings affecting the conversion, that
12375 is default font and resolution, change.
12377 In order to implement the eviction we can use a "serial"; the
12378 Backend will have an internal serial field which we retrieve and
12379 put inside the ClutterUnits structure (we split one of the two
12380 64 bit padding fields into two 32 bit fields to maintain ABI); every
12381 time we call clutter_units_to_pixels() we compare the units serial
12382 with that of the Backend; if they match and pixels_set is set to
12383 TRUE then we just return the stored pixels value. If the serials
12384 do not match then we unset the pixels_set flag and recompute the
12387 We can verify this by adding a simple test unit checking that
12388 by changing the resolution of ClutterBackend we get different
12389 pixel values for 1 em.
12391 http://bugzilla.openedhand.com/show_bug.cgi?id=1843
12394 clutter/clutter-backend.c | 21 +++++++++++++++--
12395 clutter/clutter-private.h | 2 ++
12396 clutter/clutter-units.c | 45 ++++++++++++++++++++++++++++++++++++
12397 clutter/clutter-units.h | 9 +++++++-
12398 tests/conform/test-clutter-units.c | 23 ++++++++++++++++++
12399 tests/conform/test-conform-main.c | 1 +
12400 7 files changed, 99 insertions(+), 3 deletions(-)
12402 commit 2ff31dfbaaad3056265b05efe57eac63f8e3ce61
12403 Author: Emmanuele Bassi <ebassi@gnome.org>
12404 Date: Fri Oct 16 14:22:15 2009 +0100
12406 text: Notify :position when it changes
12408 The :position property is not notified when changed.
12410 http://bugzilla.openedhand.com/show_bug.cgi?id=1830
12412 clutter/clutter-text.c | 15 +++++++++++++++
12413 1 file changed, 15 insertions(+)
12415 commit bc424fb56c3a75a822b22c0e5b284b5775f76abe
12416 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12417 Date: Sat Sep 19 09:19:06 2009 +0100
12419 [text] NULL-ify strings to avoid double-frees
12421 clutter/clutter-text.c | 1 +
12422 1 file changed, 1 insertion(+)
12424 commit 6f43f4b805387e0cac054d7b002634da3b00b106
12425 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12426 Date: Sat Sep 19 09:18:06 2009 +0100
12428 [text] Do not apply unset preedit attributes
12430 The pre-edit attributes are optional and thus should only be applied
12431 if they have been set to avoid assertion failures.
12433 clutter/clutter-text.c | 11 +++++++----
12434 1 file changed, 7 insertions(+), 4 deletions(-)
12436 commit 28837283877c11f26565d79e6bcd4b171203a9b0
12437 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12438 Date: Wed Sep 9 12:15:23 2009 +0100
12440 [text] Add pre-edit string to ClutterText
12442 Input Methods require to be able to set a "pre-edit string", that is
12443 a string that it's just displayed into the Text actor without being
12444 committed to the actor's buffer. The string might require custom Pango
12445 attributes, and an update of the cursor position.
12447 clutter/clutter-text.c | 193 +++++++++++++++++++++++-----
12448 clutter/clutter-text.h | 5 +
12449 doc/reference/clutter/clutter-sections.txt | 1 +
12450 tests/interactive/test-text-field.c | 179 ++++++++++++++++++++++++++
12451 4 files changed, 346 insertions(+), 32 deletions(-)
12453 commit 2cc88f1140ffa774371b877d723dfaf9e33a6ce5
12454 Author: Robert Bragg <robert@linux.intel.com>
12455 Date: Thu Oct 15 19:12:34 2009 +0100
12457 [build] fix Makefile.am.{enums,marshal} to support out of tree builds
12459 Out of tree builds were broken in commit 46b736f42e1165 since we didn't
12460 explicitly use $(srcdir) to find the input files for glib-mkenums and
12463 build/autotools/Makefile.am.enums | 4 ++--
12464 build/autotools/Makefile.am.marshal | 4 ++--
12465 2 files changed, 4 insertions(+), 4 deletions(-)
12467 commit 87f0b94df7524400b233cd1acca871fa6f8f0a02
12468 Author: Emmanuele Bassi <ebassi@gnome.org>
12469 Date: Thu Oct 15 14:20:44 2009 +0100
12471 layout, docs: Fix description of Bin properties
12473 The BinLayer and BinLayout properties name and blurb for introspection
12474 should be slightly more descriptive.
12476 clutter/clutter-bin-layout.c | 12 ++++++------
12477 1 file changed, 6 insertions(+), 6 deletions(-)
12479 commit 852abbb138898467fb6497508e99fb1a92203c78
12480 Author: Emmanuele Bassi <ebassi@gnome.org>
12481 Date: Thu Oct 15 14:12:37 2009 +0100
12483 layout, bin: Use ceilf() instead of casting to int
12485 Casting a float to int to truncate it before assigning the value
12486 to a float again is wrong. We should use ceilf() instead which
12487 does what we want to achieve (rounding up the size to avoid
12488 sub-pixel positioning of children).
12490 clutter/clutter-bin-layout.c | 26 ++++++++++++++------------
12491 1 file changed, 14 insertions(+), 12 deletions(-)
12493 commit 308c930f37c7c00eb6791d53fced7d1c2ac9600e
12494 Author: Emmanuele Bassi <ebassi@gnome.org>
12495 Date: Thu Oct 15 14:11:36 2009 +0100
12497 layout, docs: Add long description for FlowLayout
12499 Add the full description of the layout policy
12501 clutter/clutter-flow-layout.c | 16 ++++++++++++++++
12502 1 file changed, 16 insertions(+)
12504 commit 4d153e4507fdd8fc135998f771e1826a9b02e658
12505 Author: Emmanuele Bassi <ebassi@gnome.org>
12506 Date: Thu Oct 15 12:15:49 2009 +0100
12508 layout, box: Clean up
12510 * Use g_list_foreach() instead of iterating over the list inside
12511 the destruction sequence, since we are causing the widgets to be
12512 implicitly removed from the list via the destroy() call.
12514 * Use g_signal_connect_swapped() and spare us from a callback.
12516 clutter/clutter-box.c | 20 ++++++--------------
12517 1 file changed, 6 insertions(+), 14 deletions(-)
12519 commit adca939101e3a25309c29e6a263c1c7ac7b0d877
12520 Author: Emmanuele Bassi <ebassi@gnome.org>
12521 Date: Thu Oct 15 12:04:50 2009 +0100
12523 layout, box: Write long description for Box
12525 Also have an example of how to create a Box with a layout manager
12526 and how to use the pack() method.
12528 clutter/clutter-box.c | 45 ++++++++++++++++++++++++++++++++++++++++++++-
12529 1 file changed, 44 insertions(+), 1 deletion(-)
12531 commit 9f06f726d409d0ac948179b9771350147c5e699b
12532 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12533 Date: Tue Oct 13 16:52:57 2009 +0100
12535 layout, docs: Remove unused functions
12537 The :wrap property and its accessor functions were removed from
12540 doc/reference/clutter/clutter-sections.txt | 2 --
12541 1 file changed, 2 deletions(-)
12543 commit cd3dce1d5d957046934062780d21558e182ceb1a
12544 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12545 Date: Tue Oct 13 12:15:25 2009 +0100
12547 layout: Document BoxLayout
12549 Add BoxLayout to the API reference.
12551 doc/reference/clutter/clutter-docs.xml.in | 1 +
12552 doc/reference/clutter/clutter-sections.txt | 38 ++++++++++++++++++++++++++++
12553 doc/reference/clutter/clutter.types | 1 +
12554 3 files changed, 40 insertions(+)
12556 commit b526b765931bcf4e44feac4ab1b72763eb68f264
12557 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12558 Date: Tue Oct 13 12:14:05 2009 +0100
12560 layout: Add BoxLayout, a single line layout manager
12562 The BoxLayout layout manager implements a layout policy for arranging
12563 children on a single line, either alongside the X axis or alongside the
12567 clutter/Makefile.am | 2 +
12568 clutter/clutter-box-layout.c | 1496 +++++++++++++++++++++++++++++++++++
12569 clutter/clutter-box-layout.h | 143 ++++
12570 clutter/clutter.h | 1 +
12571 tests/interactive/Makefile.am | 3 +-
12572 tests/interactive/test-box-layout.c | 207 +++++
12573 7 files changed, 1852 insertions(+), 1 deletion(-)
12575 commit c4b2d4ce797b5ac4c61865d4249badcfb85657f0
12576 Author: Emmanuele Bassi <ebassi@gnome.org>
12577 Date: Thu Oct 8 15:45:29 2009 +0100
12579 layout: Report the correct size of FlowLayout
12581 FlowLayout should compute the correct height for the assigned width when
12582 in horizontal flow, and the correct width for the assigned height when
12583 in vertical flow. This means pre-computing the number of lines inside
12584 the get_preferred_width() and get_preferred_height(). We can then cache
12585 the computed column width and row height, cache them inside the layout
12586 and then use them when allocating the children.
12588 clutter/clutter-flow-layout.c | 457 +++++++++++++++++++++++++++-------
12589 tests/interactive/test-flow-layout.c | 4 +-
12590 2 files changed, 369 insertions(+), 92 deletions(-)
12592 commit 6f19666b13ac9bde44996620df714484dbe4bd67
12593 Author: Emmanuele Bassi <ebassi@gnome.org>
12594 Date: Wed Oct 7 15:30:29 2009 +0100
12596 layout: Resizing the stage resizes the FlowLayout box
12598 Add some user interaction to verify the dynamic reflowing.
12600 tests/interactive/test-flow-layout.c | 21 +++++++++++++++++++++
12601 1 file changed, 21 insertions(+)
12603 commit 0876575a9549acd54fbc3c70b4e7178e9e4e1e65
12604 Author: Emmanuele Bassi <ebassi@gnome.org>
12605 Date: Wed Oct 7 15:29:47 2009 +0100
12607 layout: Use the get_request_mode() getter in BinLayout
12609 Instead of using g_object_get(child, "request-mode", ...).
12611 clutter/clutter-bin-layout.c | 3 +--
12612 1 file changed, 1 insertion(+), 2 deletions(-)
12614 commit eb40e856e1a687c27d047ee6069b6ec84e1e1237
12615 Author: Emmanuele Bassi <ebassi@gnome.org>
12616 Date: Wed Oct 7 15:28:01 2009 +0100
12618 layout: Change the request-mode along with the orientation
12620 When changing the orientation of a FlowLayout, the associated
12621 container should also change its request mode. A horizontally
12622 flowing layout has a height depending on the width, since it
12623 will reflow vertically; similarly, a vertically reflowing layout
12624 will have a width depending on the height.
12626 clutter/clutter-flow-layout.c | 30 ++++++++++++++++++++++++++++--
12627 1 file changed, 28 insertions(+), 2 deletions(-)
12629 commit b5895335ab2d6975665426693fb1b96d7ca86f74
12630 Author: Emmanuele Bassi <ebassi@gnome.org>
12631 Date: Wed Oct 7 15:15:02 2009 +0100
12633 actor: Add set_request_mode() method
12635 We should not require the use g_object_set()/_get() for accessing
12636 the :request-mode property. A proper accessors pair should be
12639 clutter/clutter-actor.c | 48 ++++++++++++++++++++++++----
12640 clutter/clutter-actor.h | 3 ++
12641 doc/reference/clutter/clutter-sections.txt | 2 ++
12642 3 files changed, 46 insertions(+), 7 deletions(-)
12644 commit 19317520b57461b505751411cf9d9f39bbf12ad5
12645 Author: Emmanuele Bassi <ebassi@gnome.org>
12646 Date: Wed Oct 7 12:35:39 2009 +0100
12648 [layout] Remove FlowLayout:wrap
12650 The :wrap property is not implemented, and mostly useless: the
12651 FlowLayout is a reflowing grid. This means that if it receives
12652 less than the preferred width or height in the flow direction
12653 then it should always reflow.
12655 clutter/clutter-flow-layout.c | 107 +++--------------------------------------
12656 clutter/clutter-flow-layout.h | 3 --
12657 2 files changed, 8 insertions(+), 102 deletions(-)
12659 commit 6d954ec0742bad823c8c474873a21ab990a56c7f
12660 Author: Emmanuele Bassi <ebassi@gnome.org>
12661 Date: Wed Oct 7 11:42:09 2009 +0100
12663 [layout] Rename BinLayout and FlowLayout interactive tests
12665 The BinLayout and FlowLayout interactive tests should be named more
12669 tests/interactive/Makefile.am | 4 +-
12670 tests/interactive/test-bin-layout.c | 185 ++++++++++++++++++++++++++++++++++
12671 tests/interactive/test-box.c | 185 ----------------------------------
12672 tests/interactive/test-flow-layout.c | 148 +++++++++++++++++++++++++++
12673 tests/interactive/test-flow.c | 148 ---------------------------
12674 6 files changed, 337 insertions(+), 337 deletions(-)
12676 commit 4ea57bc685abeea9273b2b8427a9199980cc2f40
12677 Author: Emmanuele Bassi <ebassi@gnome.org>
12678 Date: Wed Oct 7 11:39:18 2009 +0100
12680 [layout] Skip invisible children in FlowLayout
12682 Skip hidden actors when computing the preferred size and when
12685 clutter/clutter-flow-layout.c | 9 +++++++++
12686 1 file changed, 9 insertions(+)
12688 commit b1bae4d66afc8420209f72dabcbf2fe81b461ff3
12689 Author: Emmanuele Bassi <ebassi@gnome.org>
12690 Date: Wed Oct 7 11:08:51 2009 +0100
12692 [layout] Clean up and document FlowLayout
12694 clutter/clutter-flow-layout.c | 177 ++++++++++++++++++++++++++++++++++++++---
12695 1 file changed, 168 insertions(+), 9 deletions(-)
12697 commit db3ef971705485b1000def688635daaac99f79cd
12698 Author: Emmanuele Bassi <ebassi@gnome.org>
12699 Date: Tue Oct 6 17:30:49 2009 +0100
12701 [layout] Snap children of FlowLayout to column/row
12703 Use the column and row size to align each child; with :homogeneous
12704 set to TRUE, or with children with the same size, the FlowLayout
12705 will behave like a reflowing grid.
12707 clutter/clutter-flow-layout.c | 14 ++++++++++----
12708 1 file changed, 10 insertions(+), 4 deletions(-)
12710 commit e5a074fd9e487444db9114c2970a4d83c1661c7f
12711 Author: Emmanuele Bassi <ebassi@gnome.org>
12712 Date: Tue Oct 6 16:17:16 2009 +0100
12714 [layout] Add :homogeneous to FlowLayout
12716 clutter/clutter-flow-layout.c | 90 +++++++++++++++++++++++++++++++++++------
12717 clutter/clutter-flow-layout.h | 3 ++
12718 tests/interactive/test-flow.c | 37 +++++++++++++++--
12719 3 files changed, 115 insertions(+), 15 deletions(-)
12721 commit 5737cf869f162f5539ae00f86db7923502c38dab
12722 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12723 Date: Fri Sep 18 17:28:02 2009 +0100
12725 [layout] Initial implementation of FlowLayout
12727 FlowLayout is a layout manager that arranges its children in a
12728 reflowing line; the orientation controls the major axis for the
12729 layout: horizontal, for reflow on the Y axis, and vertical, for
12730 reflow on the X axis.
12733 clutter/Makefile.am | 2 +
12734 clutter/clutter-flow-layout.c | 855 ++++++++++++++++++++++++++++
12735 clutter/clutter-flow-layout.h | 127 +++++
12736 clutter/clutter.h | 1 +
12737 doc/reference/clutter/clutter-docs.xml.in | 1 +
12738 doc/reference/clutter/clutter-sections.txt | 34 ++
12739 doc/reference/clutter/clutter.types | 1 +
12740 tests/interactive/Makefile.am | 3 +-
12741 tests/interactive/test-flow.c | 117 ++++
12742 10 files changed, 1141 insertions(+), 1 deletion(-)
12744 commit 857b0239e906b0e5eb1a2fec8703eb675a70675f
12745 Author: Emmanuele Bassi <ebassi@gnome.org>
12746 Date: Mon Oct 5 17:21:41 2009 +0100
12748 [layout] Use FixedLayout inside Group
12750 The Group actor should use the FixedLayout layout manager object
12751 to avoid duplicating code.
12753 clutter/clutter-group.c | 138 ++++++++++-------------------------------------
12754 1 file changed, 29 insertions(+), 109 deletions(-)
12756 commit 62db72cf4106f498a041d02d67de72460130acdd
12757 Author: Emmanuele Bassi <ebassi@gnome.org>
12758 Date: Mon Oct 5 17:09:04 2009 +0100
12760 [layout] Update FixedLayout
12762 The behaviour of ClutterGroup has been fixed with regards to the
12763 preferred size request; the fixed layout manager should use the
12766 clutter/clutter-fixed-layout.c | 116 +++++++---------------------------------
12767 1 file changed, 20 insertions(+), 96 deletions(-)
12769 commit 4663552a0017f85c818a664b3528fab617e6e15c
12770 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12771 Date: Fri Sep 18 15:29:09 2009 +0100
12773 [layout] Typo and whitespace fixes
12775 clutter/clutter-box.c | 2 +-
12776 clutter/clutter-box.h | 2 +-
12777 2 files changed, 2 insertions(+), 2 deletions(-)
12779 commit c98388bb0166fedd4e72bca42b99782a9b2fb52c
12780 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12781 Date: Thu Sep 17 18:21:51 2009 +0100
12783 [layout, box] Add Box:color
12785 Allow setting the background color of a ClutterBox
12787 clutter/clutter-box.c | 136 +++++++++++++++++++++++++++-
12788 clutter/clutter-box.h | 5 +
12789 doc/reference/clutter/clutter-sections.txt | 4 +
12790 3 files changed, 144 insertions(+), 1 deletion(-)
12792 commit df6ca3d171a6a8d1a18cbf0fe70f4e4572e54479
12793 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12794 Date: Thu Sep 17 11:38:43 2009 +0100
12796 [layout, docs] Clean up BinLayout documentation
12798 Documentation and code style fixes for BinLayout.
12800 clutter/clutter-bin-layout.c | 120 +++++++++++++++++++++++++++++++-----------
12801 clutter/clutter-bin-layout.h | 24 +++++++++
12802 2 files changed, 112 insertions(+), 32 deletions(-)
12804 commit 8b2088a91787562c01d5b8184f1f2b2f1d225371
12805 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12806 Date: Wed Sep 16 15:55:30 2009 +0100
12808 [layout, tests] Use variants for child packing in Box
12810 There are three potential variants to add a child inside a Box
12813 - clutter_box_pack(), a variadic argument function which
12814 allows passing arbitrary LayoutMeta properties and values;
12816 - clutter_bin_layout_add(), which uses the backpointer to
12817 the container from the LayoutManager and sets the layout
12818 properties directly without GValue (de)marshalling
12820 - clutter_container_add_actor() and
12821 clutter_bin_layout_set_alignment(), similar to the
12822 clutter_bin_layout_add() function above, but split in two
12824 The test-box interactive test should exercise all three variants.
12826 tests/interactive/test-box.c | 24 ++++++++++++++++--------
12827 1 file changed, 16 insertions(+), 8 deletions(-)
12829 commit 431a63d04adc40dfd719563c4f9978324f618b4e
12830 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12831 Date: Wed Sep 16 15:51:13 2009 +0100
12833 [layout] Store and use the container inside BinLayout
12835 The BinLayout should store a pointer to the Container that it is
12836 using it as the layout manager.
12838 This allows us to fix the API and drop the additional Container
12839 arguments from set_alignment() and get_alignment().
12841 This also allows us to add a ClutterBinLayout::add() method which
12842 adds an actor and sets the alignment policies without dealing with
12843 variadic arguments functions and GValue (de)marshalling.
12845 clutter/clutter-bin-layout.c | 120 +++++++++++++++++++++++++---
12846 clutter/clutter-bin-layout.h | 7 +-
12847 doc/reference/clutter/clutter-sections.txt | 1 +
12848 3 files changed, 114 insertions(+), 14 deletions(-)
12850 commit 755896664f7efc4bbfce0bfb6ea3249b6c526a59
12851 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12852 Date: Wed Sep 16 15:48:28 2009 +0100
12854 [layout] Set a back pointer to Box inside the layout
12856 Use the LayoutManager API to set a back pointer to the Box actor
12857 inside the LayoutManager used by the box.
12859 This also allows us to replace the LayoutManager on a Box, since
12860 the LayoutManager will be able to replace all the metadata if
12863 clutter/clutter-box.c | 37 ++++++++++++++++++++++++++--
12864 clutter/clutter-box.h | 2 ++
12865 doc/reference/clutter/clutter-sections.txt | 1 +
12866 3 files changed, 38 insertions(+), 2 deletions(-)
12868 commit 22bb243ec24821cd18e7dba791e793884ffe2a63
12869 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12870 Date: Wed Sep 16 15:47:26 2009 +0100
12872 [layout] Replace stale LayoutMeta
12874 If a LayoutMeta references a different container and/or layout manager
12875 then we should simply replace it and discard the previous one.
12877 clutter/clutter-layout-manager.c | 17 ++++++++++++++++-
12878 1 file changed, 16 insertions(+), 1 deletion(-)
12880 commit 9117ee205691a5bb1a3bb65e1963ed5b8826b79f
12881 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12882 Date: Wed Sep 16 14:58:30 2009 +0100
12884 [layout] Allow taking a back pointer to the Container
12886 The LayoutManager implementation might opt to take a back pointer
12887 to the Container that is using the layout instance; this allows
12888 direct access to the container itself from within the implementation.
12890 clutter/clutter-layout-manager.c | 28 ++++++++++++++++++++++++++++
12891 clutter/clutter-layout-manager.h | 12 ++++++++++++
12892 doc/reference/clutter/clutter-sections.txt | 1 +
12893 3 files changed, 41 insertions(+)
12895 commit f58bdbad15206f4369589f50789b9db9585f6e03
12896 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12897 Date: Wed Sep 16 11:10:45 2009 +0100
12899 [layout] Rename Box::add to Box::pack
12901 Since ClutterBox is a ClutterContainer we should avoid naming
12902 collisions between methods.
12904 clutter/clutter-box.c | 24 ++++++++++++------------
12905 clutter/clutter-box.h | 4 ++--
12906 doc/reference/clutter/clutter-sections.txt | 4 ++--
12907 tests/interactive/test-box.c | 24 ++++++++++++------------
12908 4 files changed, 28 insertions(+), 28 deletions(-)
12910 commit c6f67bf872ec2b51951a554e0351e6d7615d28ce
12911 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12912 Date: Wed Sep 16 11:10:38 2009 +0100
12914 [layout, docs] Document FixedLayout
12916 clutter/clutter-fixed-layout.c | 45 ++++++++++++++++++++++++++++++++++++++++
12917 clutter/clutter-fixed-layout.h | 42 +++++++++++++++++++++++++++++++++++++
12918 2 files changed, 87 insertions(+)
12920 commit aaae60e17837d6f0b330c04345f1e2c2be9f24b9
12921 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12922 Date: Tue Sep 15 23:20:51 2009 +0100
12924 [layout] Implement ClutterBox::add
12926 The ClutterBox::add method is a simple wrapper around the Container
12927 add_actor() method and the LayoutManager layout properties API. It
12928 allows adding an actor to a Box and setting the layout properties in
12931 If the LayoutManager used by the Box does not support layout properties
12932 then the add() method short-circuits out.
12934 Along with the varargs version of the method there's also a vector-based
12935 variant, for language bindings to use.
12937 clutter/clutter-box.c | 186 ++++++++++++++++++++++++++++
12938 clutter/clutter-box.h | 10 ++
12939 doc/reference/clutter/clutter-sections.txt | 2 +
12940 tests/interactive/test-box.c | 31 ++---
12941 4 files changed, 210 insertions(+), 19 deletions(-)
12943 commit a2086f1178fa3aed7fdc6f94d09efbc0e1bc2c11
12944 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12945 Date: Tue Sep 15 17:37:11 2009 +0100
12947 [layout] Add LayoutMeta
12949 Instead of overloading ClutterChildMeta with both container and layout
12950 metadata and delegate to every LayoutManager implementation to keep a
12951 backpointer to the layout manager instance, we can simply subclass
12952 ChildMeta into LayoutMeta and presto! everything works out pretty well
12955 clutter/Makefile.am | 2 +
12956 clutter/clutter-bin-layout.c | 35 ++++---
12957 clutter/clutter-layout-manager.c | 58 +++++++-----
12958 clutter/clutter-layout-manager.h | 133 +++++++++++++-------------
12959 clutter/clutter-layout-meta.c | 142 ++++++++++++++++++++++++++++
12960 clutter/clutter-layout-meta.h | 85 +++++++++++++++++
12961 clutter/clutter-types.h | 1 +
12962 clutter/clutter.h | 1 +
12963 doc/reference/clutter/clutter-docs.xml.in | 5 +-
12964 doc/reference/clutter/clutter-sections.txt | 19 ++++
12965 doc/reference/clutter/clutter.types | 1 +
12966 11 files changed, 369 insertions(+), 113 deletions(-)
12968 commit 899db6f226864614350d6aa07d8313dccf7d652f
12969 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12970 Date: Tue Sep 15 16:24:47 2009 +0100
12972 [layout, docs] Add layout managers sections
12974 Add LayoutManager and its subclasses, and the Box actor to the
12975 gtk-doc machinery needed to generate the API reference.
12977 clutter/clutter-bin-layout.c | 6 +-
12978 clutter/clutter-bin-layout.h | 4 +-
12979 clutter/clutter-layout-manager.c | 145 +++++++++++++++++++++++++++-
12980 clutter/clutter-layout-manager.h | 16 ++-
12981 doc/reference/clutter/clutter-docs.xml.in | 9 ++
12982 doc/reference/clutter/clutter-sections.txt | 94 ++++++++++++++++++
12983 doc/reference/clutter/clutter.types | 4 +
12984 7 files changed, 269 insertions(+), 9 deletions(-)
12986 commit 9cccff504a40706e70b11878572d7e7db7430792
12987 Author: Emmanuele Bassi <ebassi@linux.intel.com>
12988 Date: Mon Sep 14 21:51:49 2009 +0100
12990 [layout] Add layers to BinLayout
12992 Each actor managed by a BinLayout policy should reside inside its
12993 own "layer", with horizontal and vertical alignment. The :x-align
12994 and :y-align properties of the BinLayout are the default alignment
12995 policies, which are copied to each new "layer" when it is created.
12997 The set_alignment() and get_alignment() methods of BinLayout can
12998 be changed to operate on a specific "layer".
13000 The whole machinery uses the new ChildMeta support inside the
13001 LayoutManager base abstract class.
13003 clutter/clutter-bin-layout.c | 265 +++++++++++++++++++++++++++++++++++++-----
13004 clutter/clutter-bin-layout.h | 4 +
13005 tests/interactive/test-box.c | 147 ++++++++++++++++++++++-
13006 3 files changed, 385 insertions(+), 31 deletions(-)
13008 commit 98474076a1310494fec252fb6bfce8001bca78da
13009 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13010 Date: Mon Sep 14 21:50:20 2009 +0100
13012 [layout] Bind the layout ChildMeta inside Box
13014 The ClutterBox container actor should add and remove ChildMeta to
13015 each actor that has been added and removed to the list of children,
13018 clutter/clutter-box.c | 9 +++++++++
13019 1 file changed, 9 insertions(+)
13021 commit 7051fe275d9d052ce42e8237080844aa18ee927c
13022 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13023 Date: Mon Sep 14 21:48:06 2009 +0100
13025 [layout] Bind ChildMeta to LayoutManager
13027 The ChildMeta object is a storage for child-container properties,
13028 that is properties that exist only when an actor is inside a specific
13029 container. The LayoutManager delegate class should also have
13030 layout-specific properties -- so, for this job, we can "recycle"
13031 ChildMeta as the storage.
13033 clutter/clutter-layout-manager.c | 372 ++++++++++++++++++++++++++++++++++++++
13034 clutter/clutter-layout-manager.h | 92 ++++++----
13035 2 files changed, 432 insertions(+), 32 deletions(-)
13037 commit 83a4e9626772453804c61d7aa022eacf540bf0ce
13038 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13039 Date: Mon Sep 14 12:04:42 2009 +0100
13041 [layout] Document BinLayout
13043 clutter/clutter-bin-layout.c | 93 ++++++++++++++++++++++++++++++++++++++++++
13044 clutter/clutter-bin-layout.h | 46 ++++++++++++++++++++-
13045 2 files changed, 137 insertions(+), 2 deletions(-)
13047 commit b06a3293fe3d065369d9f97ad8bfa77051414fec
13048 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13049 Date: Mon Sep 14 12:03:38 2009 +0100
13051 [layout] Notify of alignment changes in BinLayout
13053 Emit the ::layout-changed when the BinLayout alignment policies change.
13055 This will result in a queue_relayout() on the containers using the
13056 BinLayout layout manager.
13058 clutter/clutter-bin-layout.c | 10 ++++++++++
13059 1 file changed, 10 insertions(+)
13061 commit 4e8d8bbc15f26e95adfd59469306b7098f9fd491
13062 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13063 Date: Mon Sep 14 11:28:34 2009 +0100
13065 [layout] Update Box
13067 * Use ::layout-changed to queue a relayout when the layout changes
13069 * Destroy the Box children when destroying the Box
13071 * Allow getting the layout manager from the Box
13073 clutter/clutter-box.c | 72 +++++++++++++++++++++++++++++++++++++++++++++----
13074 clutter/clutter-box.h | 4 ++-
13075 2 files changed, 70 insertions(+), 6 deletions(-)
13077 commit d096a3c791ab5b105d55a19ab316cd8b2fff878b
13078 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13079 Date: Mon Sep 14 11:04:11 2009 +0100
13081 [layout] Add LayoutManager::layout-changed signal
13083 If a sub-class of LayoutManager wishes to implement a parametrized
13084 layout policy it also needs a way to notify the container using the
13085 layout manager that the layout has changed. We cannot do it directly
13086 and automatically from the LayoutManager because a) it has no back
13087 link to the actor that it is using it and b) it can be attached to
13090 This is a job for <cue raising dramatic music> signals!
13092 By adding ClutterLayoutManager::layout-changed (and its relative
13093 emitted function) we can notify actors using the layout manager that
13094 the layout parameters have been changed, and thus they should queue
13097 clutter/clutter-layout-manager.c | 103 +++++++++++++++++++++++++++++++++++++-
13098 clutter/clutter-layout-manager.h | 44 ++++++++++++++++
13099 2 files changed, 146 insertions(+), 1 deletion(-)
13101 commit a1853892bae7c54d28a86e253e04c3753d65e159
13102 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13103 Date: Fri Sep 11 15:34:13 2009 +0100
13105 [tests] Add a Box interactive test
13108 tests/interactive/Makefile.am | 3 ++-
13109 tests/interactive/test-box.c | 47 +++++++++++++++++++++++++++++++++++++++++
13110 3 files changed, 50 insertions(+), 1 deletion(-)
13112 commit 1061ebeac90a5b03a172aa649aa5a8b8cfb5b293
13113 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13114 Date: Fri Sep 11 13:51:23 2009 +0100
13116 [layout] Add BinLayout
13118 A BinLayout is a simple layout manager that allocates a single cell,
13119 providing alignment on both the horizontal and vertical axis.
13121 If the container associated to the BinLayout has more than one child,
13122 the preferred size returned by the layout manager will be as big as
13123 the maximum of the children preferred sizes; the allocation will be
13124 applied to all children - but it will still depend on each child
13125 preferred size and the BinLayout horizontal and vertical alignment
13128 The supported alignment properties are:
13130 * center: align the child by centering it
13131 * start: align the child at the top or left border of the layout
13132 * end: align the child at the bottom or right border of the layout
13133 * fill: expand the child to fill the size of the layout
13134 * fixed: let the child position itself
13136 clutter/Makefile.am | 2 +
13137 clutter/clutter-bin-layout.c | 397 ++++++++++++++++++++++++++++++++++++++++++
13138 clutter/clutter-bin-layout.h | 50 ++++++
13139 clutter/clutter.h | 1 +
13140 4 files changed, 450 insertions(+)
13142 commit 6d4cc13f7c7047a609dd8055ce63048da294af39
13143 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13144 Date: Wed Sep 2 12:37:16 2009 +0100
13146 [layout] Add Fixed layout manager
13148 The FixedLayout layout manager object implements the same layout
13149 policy of ClutterGroup.
13151 clutter/Makefile.am | 2 +
13152 clutter/clutter-fixed-layout.c | 217 ++++++++++++++++++++++++++++++++++++++++
13153 clutter/clutter-fixed-layout.h | 38 +++++++
13154 clutter/clutter.h | 1 +
13155 4 files changed, 258 insertions(+)
13157 commit 141a1556908749236c90e69fc2388f4fc40c6d8f
13158 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13159 Date: Wed Sep 2 11:55:22 2009 +0100
13161 [layout] Make LayoutManager a floating object
13163 A layout manager instance makes only sense if it's owned by a
13164 container. For this reason, it should have a floating reference
13165 instead of a full reference on construction; this allows constructing
13168 box = clutter_box_new (clutter_fixed_layout_new ());
13170 without leaking the layout manager instance.
13172 clutter/clutter-box.c | 3 ++-
13173 clutter/clutter-layout-manager.c | 4 +++-
13174 clutter/clutter-layout-manager.h | 4 ++--
13175 3 files changed, 7 insertions(+), 4 deletions(-)
13177 commit 0340f656346d80696305218897720e28c88f367a
13178 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13179 Date: Tue Sep 1 17:42:50 2009 +0100
13181 [box] Add ClutterBox
13183 ClutterBox is an actor with no layout management. It relies on
13184 a ClutterLayoutManager to perform size requisition and allocation
13187 clutter/Makefile.am | 2 +
13188 clutter/clutter-box.c | 368 +++++++++++++++++++++++++++++++++++++++++++++++++
13189 clutter/clutter-box.h | 43 ++++++
13190 clutter/clutter.h | 1 +
13191 4 files changed, 414 insertions(+)
13193 commit d6183e95e51d1e3807ed5150768de2426b6b8e65
13194 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13195 Date: Tue Sep 1 16:34:28 2009 +0100
13197 [layout] Add initial implementation of LayoutManager
13199 The LayoutManager class is an abstract proxy for the size requesition
13200 and size allocation process in ClutterActor.
13202 A ClutterLayoutManager sub-class must implement get_preferred_width(),
13203 get_preferred_height() and allocate(); a ClutterContainer using the
13204 LayoutManager API will then proxy the corresponding Actor virtual
13205 functions to the LayoutManager instance. This allows having a generic
13206 "blank" ClutterActor sub-class, implementing the ClutterContainer
13207 interface, which leaves only the layout management implementation to
13208 the application developers.
13210 clutter/Makefile.am | 2 +
13211 clutter/clutter-layout-manager.c | 180 ++++++++++++++++++++++++++++++++++++++
13212 clutter/clutter-layout-manager.h | 92 +++++++++++++++++++
13213 clutter/clutter.h | 1 +
13214 4 files changed, 275 insertions(+)
13216 commit 4f2bfc003ad0f5b0b9d69693eed1bdbc9655f947
13217 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13218 Date: Tue Oct 13 19:27:03 2009 +0100
13220 build: Clean up main Makefile.am
13222 clutter/Makefile.am | 55 +++++++++++++++++++++++++++------------------------
13223 1 file changed, 29 insertions(+), 26 deletions(-)
13225 commit 46b736f42e1165420796ed2afe4fc791d82381da
13226 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13227 Date: Tue Oct 13 17:27:19 2009 +0100
13229 build: Move marshallers and enum types rules out
13231 The rules to create signal marshallers and enumeration GTypes are
13232 usually copied and pasted all over different projects, though they
13233 are pretty generic and, given a little bit of parametrization, can
13234 be put in separate Makefile.am files and included whenever needed.
13236 build/autotools/Makefile.am | 2 +
13237 build/autotools/Makefile.am.enums | 43 ++++++++++++++++++++
13238 build/autotools/Makefile.am.marshal | 44 ++++++++++++++++++++
13239 clutter/Makefile.am | 75 +++++++++--------------------------
13240 4 files changed, 107 insertions(+), 57 deletions(-)
13242 commit 0e33c10048dd3cba33644fd51ae3e1ea18dcc357
13243 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13244 Date: Tue Oct 13 17:00:15 2009 +0100
13246 docs: Allow XInclude fallback for the annotation glossary
13248 doc/reference/clutter/clutter-docs.xml.in | 2 +-
13249 1 file changed, 1 insertion(+), 1 deletion(-)
13251 commit a99f693c85cee6e389892b271f8aa25532bd7a6f
13252 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13253 Date: Sat Oct 10 13:52:46 2009 +0100
13255 docs: Make StageManager a public class
13257 The StageManager API is useful to track the stages of an application.
13258 It will also be useful when we land the modules API.
13260 doc/reference/clutter/Makefile.am | 1 -
13261 doc/reference/clutter/clutter-docs.xml.in | 1 +
13262 doc/reference/clutter/clutter-sections.txt | 23 +++++++++++++++++++++++
13263 doc/reference/clutter/clutter.types | 2 ++
13264 4 files changed, 26 insertions(+), 1 deletion(-)
13266 commit c3d056533c8733160227b790388723a4c8a16123
13267 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13268 Date: Sat Oct 10 13:51:47 2009 +0100
13270 stage/manager: Set :default-stage as read-only
13272 The StageManager:default-stage property should be read-only, since
13273 the default stage is owned by Clutter itself.
13275 clutter/clutter-stage-manager.c | 23 ++---------------------
13276 1 file changed, 2 insertions(+), 21 deletions(-)
13278 commit 74eaa2941327d3ee7762a93136b647979b6e094a
13279 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13280 Date: Sat Oct 10 13:50:25 2009 +0100
13282 stage/manager: Deprecate set_default_stage()
13284 The set_default_stage() method of StageManager should not be used
13285 by application code; technically, nothing in Clutter uses it, and
13286 StageManager's API is not considered public anyway.
13288 clutter/clutter-stage-manager.c | 52 ++++++++++++++++++++++++++++++---------
13289 clutter/clutter-stage-manager.h | 23 ++++++++++++++---
13290 2 files changed, 60 insertions(+), 15 deletions(-)
13292 commit a7ff5385a5071824e996eae6b92486ef07bd143e
13293 Author: Damien Lespiau <damien.lespiau@intel.com>
13294 Date: Fri Oct 9 17:18:34 2009 +0100
13296 [actor] Unset the IN_DESTRUCTION flag when leaving ::destroy()
13298 The IN_DESTRUCTION flag is set around the unrealization and disposal of
13299 the actor in clutter_actor_destroy() but is never unset (it's set twice
13302 Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13304 clutter/clutter-actor.c | 2 +-
13305 1 file changed, 1 insertion(+), 1 deletion(-)
13307 commit 3bbc96e17e5a03ba931c86a5cd2a0ecaa2a3b77b
13308 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13309 Date: Wed Oct 7 21:44:17 2009 +0100
13311 text: Make the :text property not set the :use-markup one
13313 Currently, setting the :text property has the side-effect of
13314 setting the :use-markup property to FALSE. This prevents
13315 constructing a Text actor, or setting its properties, like:
13317 g_object_set (text,
13318 "use-markup", TRUE,
13319 "text", some_string,
13322 as the ordering becomes important. Unfortunately, the ordering
13323 of the properties cannot be enforced with ClutterScript or
13324 with language bindings.
13326 The documentation of the clutter_text_set_text() method should
13327 be expanded to properly specify that the set_text() method will
13328 change the :use-markup property to FALSE as a side effect.
13330 clutter/clutter-text.c | 283 ++++++++++++++++++++++++------------------------
13331 1 file changed, 144 insertions(+), 139 deletions(-)
13333 commit 1f207c00d96e08141f6b998269732d9e65d4cf14
13334 Author: Emmanuele Bassi <ebassi@gnome.org>
13335 Date: Wed Oct 7 17:35:11 2009 +0100
13337 docs: Add the "clipping" section to the COGL API reference
13339 All the clip-related API in COGL is missing from the API reference
13340 because the cogl-clipping section is not included inside the main
13343 doc/reference/cogl/cogl-docs.xml.in | 1 +
13344 doc/reference/cogl/cogl-sections.txt | 3 ++-
13345 2 files changed, 3 insertions(+), 1 deletion(-)
13347 commit 80b3a8d3283fcc8af89bc83b2266ccd894cc50a6
13348 Author: Damien Lespiau <damien.lespiau@intel.com>
13349 Date: Wed Oct 7 17:09:41 2009 +0100
13351 [units] Ensure we don't have ponies
13353 The documentation states we should not parse ponies. Even with those
13354 with exclamation marks.
13356 Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13358 tests/conform/test-clutter-units.c | 2 +-
13359 1 file changed, 1 insertion(+), 1 deletion(-)
13361 commit 19c68799608910635b70c9befb92c1a6a21c15f3
13362 Author: Damien Lespiau <damien.lespiau@intel.com>
13363 Date: Tue Oct 6 00:49:40 2009 +0100
13365 [path] Add GValue transform functions from and to G_TYPE_STRING
13367 Transform functions allow the use of g_value_transform() to cast
13368 GValues. It's very handy to have casts to and from G_TYPE_STRING as it
13369 allows generic serialization and parsing of GTypes.
13371 Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13373 clutter/clutter-path.c | 36 +++++++++++++++++++++++++++++++++++-
13374 1 file changed, 35 insertions(+), 1 deletion(-)
13376 commit 8605073edb7a1e830696632a6de5ad694f1af98d
13377 Author: Damien Lespiau <damien.lespiau@intel.com>
13378 Date: Tue Oct 6 17:47:34 2009 +0100
13380 [units] Add support for centimeters
13382 The only tricky part of the patch is to remember that 1cm is 10mm.
13384 Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13386 clutter/clutter-units.c | 48 ++++++++++++++++++++++++++--
13387 clutter/clutter-units.h | 7 +++-
13388 doc/reference/clutter/clutter-sections.txt | 1 +
13389 tests/conform/test-clutter-units.c | 17 ++++++++--
13390 4 files changed, 67 insertions(+), 6 deletions(-)
13392 commit 96859959bd24d99f51d5dea3b5ec7bc4bf7071f3
13393 Author: Damien Lespiau <damien.lespiau@intel.com>
13394 Date: Tue Oct 6 12:02:15 2009 +0100
13396 [units] Be more strict in the grammar we are parsing
13398 Current parsing of units has a number of shortcomings:
13399 * a number followed by trailing space (without any unit specified) was
13401 * "5 emeralds" was parsed as 5em,
13402 * the way we parse the digits after the separator makes us lose
13403 precision for no good reason (5.0 is parsed as 5.00010014...f which
13404 makes g_assert_cmpfloat() fail)
13406 Let's define a stricter grammar we can recognize and try to do so. The
13407 description is in EBNF form, removing the optional <> which is a pain
13408 when having to write DocBook, and using '' for the terminal symbols.
13410 Last step, add more ClutterUnits unit test to get a better coverage of
13411 the grammar we want to parse.
13413 Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
13415 clutter/clutter-units.c | 76 +++++++++++++++++++++++-------------
13416 tests/conform/test-clutter-units.c | 22 +++++++++++
13417 2 files changed, 70 insertions(+), 28 deletions(-)
13419 commit 4d481e03f3534cb703a276cd430056d3ec27fcb0
13420 Author: Emmanuele Bassi <ebassi@gnome.org>
13421 Date: Wed Oct 7 13:00:57 2009 +0100
13423 color: Measure the string just once when parsing
13425 Instead of measuring the color hexadecimal string for each case, just
13426 measure it once and then use a switch() to go to the right case.
13428 clutter/clutter-color.c | 40 ++++++++++++++++++++++------------------
13429 1 file changed, 22 insertions(+), 18 deletions(-)
13431 commit c7d50083ec1d1209dd8653bc30ba4f3bec09e976
13432 Author: Thomas Wood <thomas.wood@intel.com>
13433 Date: Wed Oct 7 12:27:38 2009 +0100
13435 [color] allow alpha to be omitted when converting to color from string
13437 Parse #rgb and #rrggbb in addition to forms with the alpha channel
13438 specified. This allows conversion of colour strings from documents such as
13439 CSS where the alpha channel is not specified when using '#' notation.
13441 This patch also adds the relevant conformance test.
13443 clutter/clutter-color.c | 22 ++++++++++++++++++++++
13444 tests/conform/test-color.c | 28 ++++++++++++++++++++++++++++
13445 2 files changed, 50 insertions(+)
13447 commit 13ac1fe75bec418f4e37e04540e6d16af55413f5
13448 Author: Neil Roberts <neil@linux.intel.com>
13449 Date: Wed Oct 7 11:31:44 2009 +0100
13451 [clutter-id-pool] Also warn if the ID refers to a deleted actor
13453 We should also warn if the glReadPixels happens to generate an ID that
13454 is within the range of the ID array but no longer points to an
13457 clutter/clutter-id-pool.c | 10 +++++-----
13458 1 file changed, 5 insertions(+), 5 deletions(-)
13460 commit a4ff4d37a40b60ce7f7029c6fe12181c0e1e89e5
13461 Author: Neil Roberts <neil@linux.intel.com>
13462 Date: Wed Oct 7 12:46:43 2009 +0100
13464 [clutter-id-pool] Fix the check for out-of-range IDs
13466 If id == the length of the array then it is also invalid and could
13469 clutter/clutter-id-pool.c | 2 +-
13470 1 file changed, 1 insertion(+), 1 deletion(-)
13472 commit 142f8865181e92fb405ae0d2b2bc65468a9d2262
13473 Author: Thomas Wood <thomas.wood@intel.com>
13474 Date: Wed Oct 7 12:15:26 2009 +0100
13476 Revert "[color] allow alpha to omitted when converting from strings"
13478 This reverts commit eb8daac4b0726c1d9925bbbaeed7a8f39007da21.
13480 The original commit was incorrect and pushed accidentally.
13482 clutter/clutter-color.c | 22 ----------------------
13483 1 file changed, 22 deletions(-)
13485 commit bdf7499207d3fdba440228832445b71b9f64d300
13486 Author: Thomas Wood <thomas.wood@intel.com>
13487 Date: Wed Oct 7 11:40:41 2009 +0100
13489 [color] add a note to the documentation to specify the values of the alpha
13491 The alpha channel is fully opaque at 255 and fully transparent at 0.
13493 clutter/clutter-color.c | 2 ++
13494 1 file changed, 2 insertions(+)
13496 commit eb8daac4b0726c1d9925bbbaeed7a8f39007da21
13497 Author: Thomas Wood <thomas.wood@intel.com>
13498 Date: Wed Oct 7 11:38:08 2009 +0100
13500 [color] allow alpha to omitted when converting from strings
13502 Parse #rgb and #rrggbb in addition to forms with the alpha channel
13503 specified. This allows conversion of colour strings from documents such as
13504 CSS where the alpha channel is not specified when using '#' notation.
13506 clutter/clutter-color.c | 22 ++++++++++++++++++++++
13507 1 file changed, 22 insertions(+)
13509 commit 9e03d9231696160ef7d4d98cf6c1d2f2214c7172
13510 Author: Damien Lespiau <damien.lespiau@intel.com>
13511 Date: Tue Oct 6 01:04:50 2009 +0100
13513 [path] MOVE_TO and LINE_TO only use a pair of coordinates
13515 The documentation of ClutterPathNode had a small typo and stated that
13516 they use 2 pairs of coordinates.
13518 clutter/clutter-path.h | 4 ++--
13519 1 file changed, 2 insertions(+), 2 deletions(-)
13521 commit dd8e4dcd62979bf8b7c8ad0e8898888a065ba445
13522 Author: Robert Bragg <robert@linux.intel.com>
13523 Date: Mon Oct 5 16:46:24 2009 +0100
13525 [debug] Guard the use of gdk_pixbuf for pick debugging by #ifdef USE_GDKPIXBUF
13527 gdk is an optional clutter dependency, so the pick buffer debugging option
13528 needs some guards so we don't break, for example, the OSX builds. This also
13529 adds a comment for the bit fiddling done on the pick colors used to ensure
13530 the pick colors are more distinguished while debugging. (we swap the
13531 nibbles of each color component so that pick buffers don't just look black.)
13533 clutter/clutter-main.c | 25 +++++++++++++++++++++++++
13534 1 file changed, 25 insertions(+)
13536 commit f7c02642453420cf5866f9759d5f266d8ada40a5
13537 Author: Emmanuele Bassi <ebassi@gnome.org>
13538 Date: Mon Oct 5 15:51:28 2009 +0100
13540 [sdl] Update the SDL backend to the new StageWindow API
13542 The SDL backend remains experimental and not meant for public
13543 consumption, but at least it compiles and runs successfully.
13545 clutter/sdl/clutter-backend-sdl.c | 8 +--
13546 clutter/sdl/clutter-stage-sdl.c | 130 +++++++++++++++----------------------
13547 2 files changed, 57 insertions(+), 81 deletions(-)
13549 commit 3fee43560d8108f9508cbb24ee98228e50b79e5d
13550 Author: Emmanuele Bassi <ebassi@gnome.org>
13551 Date: Mon Oct 5 15:53:06 2009 +0100
13553 [eglx] Create a StageWindow, not an Actor
13555 The Backend should create a StageWindow instance, not an Actor.
13557 clutter/eglx/clutter-backend-egl.c | 4 ++--
13558 1 file changed, 2 insertions(+), 2 deletions(-)
13560 commit 40222e891bec62e4e7187a3e66bdf7866a60bd38
13561 Author: Neil Roberts <neil@linux.intel.com>
13562 Date: Tue Sep 29 12:11:55 2009 +0100
13564 [ClutterGroup] Don't take into account the left edges when calculating the size
13566 ClutterGroup previously calculated the size as the distance from the
13567 left edge of the leftmost child to the right edge of the rightmost
13568 child except if there were any chidren left of the origin then the
13569 left edge would be zero.
13571 However the group is always allocated its size relative to its
13572 origin so if all of the children are to the right of the origin then
13573 the preferred size would not be large enough to reach the rightmost
13588 This patch makes it so the size is always just the rightmost edge.
13604 http://bugzilla.openedhand.com/show_bug.cgi?id=1825
13606 clutter/clutter-group.c | 122 ++++++++++-------------------------------------
13607 1 file changed, 26 insertions(+), 96 deletions(-)
13609 commit 14e12ae4fd9320eeb970ff8aa7dfcd43dcfd5975
13610 Author: Emmanuele Bassi <ebassi@gnome.org>
13611 Date: Mon Oct 5 14:58:08 2009 +0100
13613 [eglx] Update the EGLX Stage to the new StageWindow API
13615 Move the ::realize and ::unrealize implementations over to the
13616 StageWindow instead of using Actor.
13618 clutter/eglx/clutter-stage-egl.c | 120 +++++++++++++++++++-------------------
13619 1 file changed, 60 insertions(+), 60 deletions(-)
13621 commit a799f6ccec0ea755c7677c5fe20c1bd52b321c05
13622 Author: Damien Lespiau <damien.lespiau@intel.com>
13623 Date: Sat Oct 3 14:08:33 2009 +0100
13625 Fix string parsing when no unit is given
13627 The check should really be on the character pointed by str. Added the
13628 corresponding test case.
13630 clutter/clutter-units.c | 2 +-
13631 tests/conform/test-clutter-units.c | 4 ++++
13632 2 files changed, 5 insertions(+), 1 deletion(-)
13634 commit 4d7b8c9d4290c91ea69d992bad396d067e84b15b
13635 Author: Damien Lespiau <damien.lespiau@intel.com>
13636 Date: Sat Oct 3 12:15:13 2009 +0100
13638 clutter_value_get_unit() has not be renamed
13640 Since the Great Rework of ClutterUnits, functions have been using
13641 'units' not 'unit' in their name. clutter_value_get_unit() is a left
13642 over from a dark age, its declaration and documentation have been
13643 updated but not the symbol itself.
13645 clutter/clutter-units.c | 2 +-
13646 1 file changed, 1 insertion(+), 1 deletion(-)
13648 commit 72243081b5b0bf0518951f9f5f3ae91a7d4c640f
13649 Merge: ad83caa 111512a
13650 Author: Emmanuele Bassi <ebassi@gnome.org>
13651 Date: Mon Oct 5 12:37:08 2009 +0100
13653 Merge branch 'stage-window-object'
13655 * stage-window-object:
13656 [x11] Fix Stage user-initiated resize
13657 [x11] Remove a useless forced paint
13658 [stage] Rework the Stage implementation class
13660 commit ad83caaed16a36aea0fafd4ed87cc283c30c413b
13661 Author: Emmanuele Bassi <ebassi@gnome.org>
13662 Date: Mon Oct 5 12:34:48 2009 +0100
13664 Clarify the IdPool warning
13666 Instead of having an assertion failure with a message of dubious
13667 usefulness, we should probably use a more verbose warning explaining
13668 what is the problem and what might be the cause.
13670 clutter/clutter-id-pool.c | 9 ++++++++-
13671 1 file changed, 8 insertions(+), 1 deletion(-)
13673 commit 111512a2a05243a7fc6f999f18805eae9bd6bfce
13674 Author: Emmanuele Bassi <ebassi@gnome.org>
13675 Date: Mon Oct 5 12:24:19 2009 +0100
13677 [x11] Fix Stage user-initiated resize
13679 The user-initiated resize is conflicting with the allocated size. This
13680 happens because we change the size of the stage's X Window behind the
13681 back of the size allocation machinery.
13683 Instead, we should change the size of the actor whenever we receive a
13684 ConfigureNotify event to reflect the new size of the actor.
13686 clutter/x11/clutter-event-x11.c | 7 +++----
13687 clutter/x11/clutter-stage-x11.c | 6 +++++-
13688 tests/interactive/test-actors.c | 1 +
13689 3 files changed, 9 insertions(+), 5 deletions(-)
13691 commit e3c2ed0009e2ce85e65d5a1724a807faae865494
13692 Author: Emmanuele Bassi <ebassi@gnome.org>
13693 Date: Mon Oct 5 12:21:02 2009 +0100
13695 [x11] Remove a useless forced paint
13697 We force the redraw before mapping, in the hope that when a composited
13698 window manager maps the window it will have its contents ready; that is
13699 not going to work: the solution for this problem requires the implementation
13700 of a protocol for compositors, and not a hack.
13702 Moreover, painting before mapping will cause a paint with the wrong
13703 GL viewport size, which is the wrong thing to do on GLX.
13705 clutter/x11/clutter-stage-x11.c | 5 -----
13706 1 file changed, 5 deletions(-)
13708 commit 6ddffac93561b5d3aa6226ee54bd8a5e1fcedeb5
13709 Author: Emmanuele Bassi <ebassi@gnome.org>
13710 Date: Sun Sep 27 11:38:01 2009 +0100
13712 [docs] Update the "Subclassing Actor" chapter
13714 The chapter on how to subclass ClutterActor inside the API reference for
13715 Clutter is still using ClutterUnit and referencing to concepts that have
13716 been changed since the document was written.
13718 doc/reference/clutter/subclassing-ClutterActor.xml | 169 +++++++++++++-------
13719 1 file changed, 107 insertions(+), 62 deletions(-)
13721 commit ab76d64df02bc03f935e9cdf5a0a29c6ffeace72
13722 Author: Robert Bragg <robert@linux.intel.com>
13723 Date: Tue Jul 28 00:40:29 2009 +0100
13725 [cogl-debug] avoid warnings when using COGL_NOTE with unbraced else clauses
13727 When not building a debug build the compiler was warning about empty
13728 else clauses with no braces due to code like:
13732 COGL_NOTE (DRAW, "a-wibble");
13734 This simply ensures that even for non debug builds COGL_NOTE will expand to
13735 a single statement.
13737 clutter/cogl/cogl-debug.h | 2 +-
13738 1 file changed, 1 insertion(+), 1 deletion(-)
13740 commit 904c495c6d3c59b34148c9a4834e4803b488997b
13741 Author: Robert Bragg <robert@linux.intel.com>
13742 Date: Thu Sep 24 17:34:26 2009 +0100
13744 [cogl-vertex-buffer] fix n_components validation for GL's builtin attributes
13746 glVertexPointer expects positions with 2, 3 or 4 components, glColorPointer
13747 expects colors with 3 or 4 components and glNormalPointer expects normals
13748 with three components so when adding vertex buffer atributes with the names
13749 "gl_Vertex", "gl_Color" or "gl_Normal" we assert these constraints and print
13750 an explanation to the developer if not met.
13752 This also fixes the previosly incorrect constraint that gl_Normal attributes
13753 must have n_components == 1; thanks to Cat Sidhe for reporting this:
13755 Bug: http://bugzilla.openedhand.com/show_bug.cgi?id=1819
13757 clutter/cogl/common/cogl-vertex-buffer.c | 19 +++++++++++++++----
13758 1 file changed, 15 insertions(+), 4 deletions(-)
13760 commit dae569b468c286ea23aa0e74e910232e025932db
13761 Author: Robert Bragg <robert@linux.intel.com>
13762 Date: Thu Sep 24 12:49:17 2009 +0100
13764 [debug] Adds a dump-pick-buffers CLUTTER_DEBUG option
13766 Now if you export CLUTTER_DEBUG=dump-pick-buffers clutter will write out a
13767 png, e.g. pick-buffer-00000.png, each time _clutter_to_pick() is called.
13768 It's a rather crude way to debug the picking (realtime visualization in a
13769 second stage would probably be nicer) but it we've used this approach
13770 successfully numerous times when debugging Clutter picking issues so it
13771 makes sense to have a debug option for it.
13773 clutter/clutter-debug.h | 35 +++++++++---------
13774 clutter/clutter-main.c | 94 ++++++++++++++++++++++++++++++++++++++++++++---
13775 2 files changed, 106 insertions(+), 23 deletions(-)
13777 commit 27ae9722dedb5bc25415c32326ffc7ba4ef1557d
13778 Author: Neil Roberts <neil@linux.intel.com>
13779 Date: Tue Sep 22 17:55:04 2009 +0100
13781 [container] Remove the unused 'object' variable in destroy_child_meta
13783 Since commit b2f958a61 this variable is no longer used so it was
13784 causing compiler warnings.
13786 clutter/clutter-container.c | 1 -
13787 1 file changed, 1 deletion(-)
13789 commit 4293920a11d5216095577cdfc46b9e21bb427a12
13790 Author: Robert Bragg <robert@linux.intel.com>
13791 Date: Tue Sep 22 11:27:47 2009 +0100
13793 [tests] Remove test-entry.c since we don't have a ClutterEntry any more
13795 Removes an unused interactive unit test for the old ClutterEntry actor we
13799 tests/interactive/test-entry.c | 47 ----------------------------------------
13800 2 files changed, 48 deletions(-)
13802 commit b710ed0eeace5561ccec1b1558ad26abb4af0da3
13803 Author: Robert Bragg <robert@linux.intel.com>
13804 Date: Thu Aug 20 11:53:37 2009 +0100
13806 [backend-egl] fix clutter_backend_egl_get_visual_info to not use Xalloc
13808 It looks like the intention was to duplicate an XVisualInfo in such a way
13809 that the pointer could be returned and then later freed using XFree. But
13810 Xalloc isn't an Xlib counterpart to XFree; Xlib doesn't provide a general
13811 purpose malloc wrapper afik. By shuffling things about a bit, it was
13812 possible to avoid the need for this hack.
13814 clutter/eglx/clutter-backend-egl.c | 46 ++++++++++++------------------------
13815 1 file changed, 15 insertions(+), 31 deletions(-)
13817 commit 6e50e26c86af20597b118f5a71d04f70b173f733
13818 Author: Damien Lespiau <damien.lespiau@intel.com>
13819 Date: Mon Sep 21 15:21:21 2009 +0100
13821 Add a few annotations on Cogl primitives functions
13823 By default, float * is considered as an out argument by gobject
13824 introspection which is wrong for quite a few Cogl symbols. Start adding
13825 annotations to fix that for the ones in the "Primitives" gtk-doc
13828 clutter/cogl/cogl-path.h | 8 ++++----
13829 clutter/cogl/cogl-texture.h | 15 ++++++++-------
13830 2 files changed, 12 insertions(+), 11 deletions(-)
13832 commit 1b37cb6cb79dc36279d40ef108576aafeb905412
13833 Author: Robert Bragg <robert@linux.intel.com>
13834 Date: Mon Sep 21 18:12:02 2009 +0100
13836 [container] cast actor to gobject before calling g_object_set_qdata
13838 A minor compiler warning fix: in destroy_child_meta we weren't casting the
13839 first argument to g_object_set_qdata to a gobject.
13841 clutter/clutter-container.c | 2 +-
13842 1 file changed, 1 insertion(+), 1 deletion(-)
13844 commit b2f958a61807ca36ccc1e7b3edf112b317885528
13845 Author: Øyvind Kolås <pippin@linux.intel.com>
13846 Date: Mon Sep 21 15:55:58 2009 +0100
13848 [container] unset the child meta qdata on the child, not the container
13850 In the default implementation of container::destroy_child_meta Set child
13851 meta qdata to NULL on the child and not the container, since the child
13852 is the object that owns the data.
13854 clutter/clutter-container.c | 2 +-
13855 1 file changed, 1 insertion(+), 1 deletion(-)
13857 commit d4e46bb893d41f7e9d80d3d272765e7b2779d32b
13858 Author: Thomas Wood <thomas.wood@intel.com>
13859 Date: Mon Sep 21 15:40:53 2009 +0100
13861 [container] set the child meta qdata on the child, not the container
13863 Set child meta qdata on the child and not the container, since the child is
13864 the object that owns the data.
13866 clutter/clutter-container.c | 2 +-
13867 1 file changed, 1 insertion(+), 1 deletion(-)
13869 commit 1c3d5a0e870d6a8f221577783f4c9d79dbc062c5
13870 Author: Neil Roberts <neil@linux.intel.com>
13871 Date: Thu Sep 17 18:29:03 2009 +0100
13873 [cogl] Remove CoglContext->journal_vbo{,_len}
13875 The lifetime of the journal VBO is entirely within the scope of the
13876 cogl_journal_flush function so there is no need to store it globally
13877 in the Cogl context. Instead, upload_vertices_to_vbo just returns the
13878 new VBO. cogl_journal_flush stores this in a local variable and
13879 destroys it before returning.
13881 This also fixes an assertion when using the GLES backend which was
13882 caused by nothing initialising the journal_vbo variable.
13884 clutter/cogl/common/cogl-primitives.c | 20 ++++++++++----------
13885 clutter/cogl/gl/cogl-context.c | 2 --
13886 clutter/cogl/gl/cogl-context.h | 2 --
13887 clutter/cogl/gles/cogl-context.h | 1 -
13888 4 files changed, 10 insertions(+), 15 deletions(-)
13890 commit ecfa0c4f92e3a78bdc4257c62a61b47aa41e0d05
13891 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13892 Date: Wed Sep 16 17:43:58 2009 +0100
13894 [build] Split out the custom silent rules
13896 The silent rules we use for custom targets should be moved into a
13897 separate Makefile.am that gets included from all the others.
13900 build/autotools/Makefile.am | 1 +
13901 build/autotools/Makefile.am.silent | 17 +++++++++++++++++
13902 clutter/Makefile.am | 12 +++++-------
13903 clutter/cogl/Makefile.am | 8 ++------
13904 clutter/cogl/common/Makefile.am | 8 ++------
13905 clutter/cogl/gl/Makefile.am | 2 ++
13906 clutter/cogl/gles/Makefile.am | 2 ++
13907 clutter/glx/Makefile.am | 2 ++
13908 clutter/pango/Makefile.am | 2 ++
13909 clutter/x11/Makefile.am | 2 ++
13910 tests/conform/Makefile.am | 8 +++++---
13911 tests/data/Makefile.am | 1 -
13912 tests/interactive/Makefile.am | 11 ++++++-----
13913 tests/micro-bench/Makefile.am | 2 ++
13914 tests/tools/Makefile.am | 9 ++++++---
13915 16 files changed, 58 insertions(+), 31 deletions(-)
13917 commit 94e60c393b6be8b69140da01835a377409f6a77b
13918 Author: Robert Bragg <robert@linux.intel.com>
13919 Date: Wed Sep 16 17:12:30 2009 +0100
13921 [test-cogl-multitexture] Print an error if textures can't be loaded
13923 I just wasted a silly amount time trying to bisect an apparently broken
13924 cogl-test-multitexture until I realized it was just silently failing to load
13927 tests/interactive/test-cogl-multitexture.c | 15 ++++++++++++---
13928 1 file changed, 12 insertions(+), 3 deletions(-)
13930 commit 3b4f46a18a1c631410b324d5f926c64f0e22ae93
13931 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13932 Date: Wed Sep 16 12:47:46 2009 +0100
13934 [docs] Fix the comment on version bumps
13936 configure.ac | 5 +++--
13937 1 file changed, 3 insertions(+), 2 deletions(-)
13939 commit 35c0da2b3a2558964ba74b9a213262f377aa2650
13940 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13941 Date: Wed Sep 16 11:57:45 2009 +0100
13943 [gitignore] Add test-preferred-size
13946 1 file changed, 1 insertion(+)
13948 commit 9dc012c07d1f6760d8d4cca07f5279e7b316dbd0
13949 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13950 Date: Wed Sep 16 11:55:04 2009 +0100
13952 [timeline] Account for clock roll backs between frames
13954 If the system clock rolls back between two frames then we need
13955 to account for the change, to avoid stopping the timeline.
13957 The best option, since a roll back can be any arbitrary amount
13958 of milliseconds, is to skip a frame.
13962 http://bugzilla.moblin.org/show_bug.cgi?id=3839
13964 clutter/clutter-timeline.c | 33 +++++++++++++++++++++++----------
13965 1 file changed, 23 insertions(+), 10 deletions(-)
13967 commit 0d08f6e0707c1b3274227abc8054529422206e22
13968 Author: Robert Bragg <robert@linux.intel.com>
13969 Date: Tue Sep 15 16:27:45 2009 +0100
13971 [cogl-fbo] Disable mipmap filters before calling glCheckFramebufferStatusEXT
13973 The framebuffer_object spec isn't clear in defining whether attaching a
13974 texture as a renderbuffer with mipmap filtering enabled while the mipmaps
13975 have not been uploaded should result in an incomplete framebuffer object.
13976 (different drivers make different decisions)
13978 To avoid an error with drivers that do consider this a problem we explicitly
13979 set non mipmapped filters before calling glCheckFramebufferStatusEXT. The
13980 filters will later be reset when the texture is actually used for rendering
13981 according to the filters set on the corresponding CoglMaterial.
13983 clutter/cogl/gl/cogl-fbo.c | 12 ++++++++++++
13984 1 file changed, 12 insertions(+)
13986 commit 561f5868e876ec17e9a6fa66282b8dcdf3ead6b6
13987 Author: Emmanuele Bassi <ebassi@linux.intel.com>
13988 Date: Tue Sep 15 11:09:49 2009 +0100
13990 [tests] Add preferred size conformance test unit
13992 This unit verifies that an Actor class will invoke the get_preferred_*
13993 virtual functions unless the caching is in effect; it also verifies
13994 that the cached values are correctly evicted.
13996 tests/conform/test-actor-size.c | 136 ++++++++++++++++++++++++++++++++++++-
13997 tests/conform/test-conform-main.c | 1 +
13998 2 files changed, 136 insertions(+), 1 deletion(-)
14000 commit 092401c01b249cd3ae9e4788ecbcce91ebb80f38
14001 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14002 Date: Mon Sep 14 21:45:51 2009 +0100
14004 [tests] Add initial sizing conformance test suite
14006 The size requisition and allocation mechanisms should be thoroughly
14007 tested to avoid unwanted regressions.
14009 For starters, we can test the explicit size setting and the side
14010 effects of calling clutter_actor_set_size().
14013 tests/conform/Makefile.am | 1 +
14014 tests/conform/test-actor-size.c | 77 +++++++++++++++++++++++++++++++++++++
14015 tests/conform/test-conform-main.c | 2 +
14016 4 files changed, 81 insertions(+)
14018 commit abbe2ebf8baa61edeaa2071fa850d000d565a6ce
14019 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14020 Date: Mon Sep 14 15:57:31 2009 +0100
14022 [container] Use a 1:1 mapping between child and ChildMeta
14024 Since an actor can only be parented to one container we don't need
14025 the extra complications of maintaining a list of ChildMeta objects
14026 attached to an actor in the default implementation of the Container
14029 clutter/clutter-container.c | 50 ++++++++-----------------------------------
14030 1 file changed, 9 insertions(+), 41 deletions(-)
14032 commit 6e3afa4ebed9ea4f9347e8dfd6f3cc20d1042dcd
14033 Author: Damien Lespiau <damien.lespiau@intel.com>
14034 Date: Thu Sep 10 13:27:02 2009 +0100
14036 [docs] Clutter's model implementation is called ClutterListModel
14038 It was renamed from ClutterModelDefault to ClutterListModel a while
14039 back. Update the reference to this class in ClutterModel documentation.
14041 clutter/clutter-model.c | 4 ++--
14042 1 file changed, 2 insertions(+), 2 deletions(-)
14044 commit c5195dda1533e2f42514a880bb5b7d105d4fe541
14045 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14046 Date: Wed Sep 9 16:15:54 2009 +0100
14048 [docs] Add fixxref for Cairo symbols
14050 Let gtk-doc resolve the Cairo types and symbols to the installed
14051 Cairo documentation.
14053 configure.ac | 2 ++
14054 doc/reference/clutter/Makefile.am | 6 +++---
14055 2 files changed, 5 insertions(+), 3 deletions(-)
14057 commit f4e272ee9b6224cddc7eca54172025c5232e37bf
14058 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14059 Date: Wed Sep 9 16:01:07 2009 +0100
14061 [docs] Add a Path migration guide
14063 ClutterBehaviourPath has been changed and ClutterBehaviourBspline has
14064 been removed; now we use ClutterPath everywhere we need to describe a
14065 path. This warrants a chapter in the migration guide.
14067 doc/reference/clutter/Makefile.am | 6 +-
14068 doc/reference/clutter/clutter-docs.xml.in | 1 +
14069 doc/reference/clutter/migrating-ClutterPath.xml | 167 +++++++++++++++++++++++
14070 3 files changed, 172 insertions(+), 2 deletions(-)
14072 commit 3cc56b2b138ff6451ba73e088d1023705455aef7
14073 Author: Øyvind Kolås <pippin@linux.intel.com>
14074 Date: Tue Sep 8 13:06:51 2009 +0100
14076 [text] implement get_property for "use-markup"
14078 clutter/clutter-text.c | 4 ++++
14079 1 file changed, 4 insertions(+)
14081 commit 6988744db750dc3430a6c8cdd6274bc7e855aaf5
14082 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14083 Date: Thu Aug 13 12:34:07 2009 +0100
14085 [stage] Rework the Stage implementation class
14087 Instead of using ClutterActor for the base class of the Stage
14088 implementation we should extend the StageWindow interface with
14089 the required bits (geometry, realization) and use a simple object
14092 This require a wee bit of changes across Backend, Stage and
14093 StageWindow, even though it's mostly re-shuffling.
14095 First of all, StageWindow should get new virtual functions:
14105 This covers all the bits that we use from ClutterActor currently
14106 inside the stage implementations.
14108 The ClutterBackend::create_stage() virtual function should create
14109 a StageWindow, and not an Actor (it should always have been; the
14110 fact that it returned an Actor was a leak of the black magic going
14111 on underneath). Since we never guaranteed ABI compatibility for
14112 the Backend class, this is not a problem.
14114 Internally to ClutterStage we can finally drop the shenanigans of
14115 setting/unsetting actor flags on the implementation: if the realization
14116 succeeds, for instance, we set the REALIZED flag on the Stage and
14119 As an initial proof of concept, the X11 and GLX stage implementations
14120 have been ported to the New World Order(tm) and show no regressions.
14122 clutter/Makefile.am | 2 +-
14123 clutter/clutter-backend.c | 14 ++--
14124 clutter/clutter-backend.h | 5 +-
14125 clutter/clutter-private.h | 2 +-
14126 clutter/clutter-stage-window.c | 79 +++++++++++++++++-
14127 clutter/clutter-stage-window.h | 33 ++++++++
14128 clutter/clutter-stage.c | 105 ++++++++++++------------
14129 clutter/clutter.h | 1 +
14130 clutter/glx/clutter-backend-glx.c | 14 ++--
14131 clutter/glx/clutter-stage-glx.c | 50 +++++-------
14132 clutter/x11/clutter-stage-x11.c | 161 +++++++++++--------------------------
14133 11 files changed, 253 insertions(+), 213 deletions(-)
14135 commit 742cc4d95b602440c004d5af09a7fab662f03596
14136 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14137 Date: Mon Sep 7 11:44:44 2009 +0100
14139 [docs] Small annotation fixes
14141 clutter/clutter-behaviour.c | 5 +++--
14142 clutter/cogl/cogl-material.h | 29 ++++++++++++++++++-----------
14143 clutter/cogl/cogl-texture.h | 7 ++++---
14144 3 files changed, 25 insertions(+), 16 deletions(-)
14146 commit c69209a253c7ccbfe5d2c91e6972fa3dc1deb50c
14147 Author: Neil Roberts <neil@linux.intel.com>
14148 Date: Mon Sep 7 11:36:05 2009 +0100
14150 [animation] Move the check for the 'signal::' prefix into a separate function
14152 The old code checked whether the property began with 'signal-' and
14153 then checked for 'signal-swapped' and 'signal-after'. This prevented
14154 you from animating a property called for example 'signal-strength'.
14156 The check for the prefix is now in a separate function which also adds
14157 a 'signal-swapped-after' prefix for completeness.
14161 http://bugzilla.openedhand.com/show_bug.cgi?id=1798
14163 clutter/clutter-animation.c | 75 +++++++++++++++++++++++--------------------
14164 1 file changed, 41 insertions(+), 34 deletions(-)
14166 commit 7783635af3c78cf65fcb62ccb03478f1a9556b05
14167 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14168 Date: Thu Sep 3 16:51:14 2009 +0100
14170 [docs] Add more collateral documentation
14172 * Add the main Glossary for Clutter terms
14174 * Add the annotation glossary, as generated by gtk-doc
14176 * Add the objects index and tree
14178 doc/reference/clutter/Makefile.am | 2 +
14179 doc/reference/clutter/clutter-docs.xml.in | 45 ++++++++-
14180 doc/reference/clutter/glossary.xml | 142 +++++++++++++++++++++++++++++
14181 3 files changed, 184 insertions(+), 5 deletions(-)
14183 commit 763f5a9d014656c09c4684bc69a0e45862882f43
14184 Author: Samuel Degrande <samuel.degrande@lifl.fr>
14185 Date: Wed Sep 2 16:27:22 2009 +0100
14187 DOT3_RGB[A] cannot be used in a Blend String
14189 The blend string compiler checks that the syntax of a function name is
14190 [A-Za-z_]*, preventing the use of DOT3_RGB[A].
14192 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14194 clutter/cogl/common/cogl-blend-string.c | 8 +++++++-
14195 1 file changed, 7 insertions(+), 1 deletion(-)
14197 commit a5e081dc9c8f39ce66270b77f5beaa6ac53e7a91
14198 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14199 Date: Wed Sep 2 15:26:33 2009 +0100
14201 [model] Do not attempt to free empty column names
14203 The column names are optional - ClutterModel will use the GType name
14204 if there is no user-specified column name. Hence, the ::finalize vfunc
14205 should not try to free an empty column names vector.
14209 http://bugzilla.openedhand.com/show_bug.cgi?id=1790
14211 clutter/clutter-model.c | 15 +++++++++------
14212 1 file changed, 9 insertions(+), 6 deletions(-)
14214 commit 3686107460847d6b9333ff2149b850401590bae8
14215 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14216 Date: Mon Aug 31 15:49:39 2009 +0100
14218 [docs] Make sure to document the point-release process
14220 Put the documentation right inside configure.ac, lest I forget.
14222 configure.ac | 25 ++++++++++++++++++-------
14223 1 file changed, 18 insertions(+), 7 deletions(-)
14225 commit db6b0a91e0c2aebb245ad5d382769889abbf88dd
14226 Author: Neil Roberts <neil@linux.intel.com>
14227 Date: Wed Aug 26 18:28:35 2009 +0100
14229 Take a reference to the material in clutter_texture_set_cogl_material
14231 The material is unref'd in clutter_texture_finalize and the
14232 documentation explicitly states that the function will take a ref so
14235 clutter/clutter-texture.c | 2 ++
14236 1 file changed, 2 insertions(+)
14238 commit bad7782ab4bc0b5a96d8a97b9b32d5726343b1c2
14239 Author: Neil Roberts <neil@linux.intel.com>
14240 Date: Wed Aug 26 18:24:48 2009 +0100
14242 Fix the documentation for clutter_texture_set_cogl_material
14244 The documentation was a copy of the docs for set_cogl_texture so it
14245 was somewhat broken.
14247 clutter/clutter-texture.c | 11 ++++++++---
14248 1 file changed, 8 insertions(+), 3 deletions(-)
14250 commit b766a1cc100778c7f74acd9dcc280400eae4c55b
14251 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14252 Date: Wed Aug 26 16:50:37 2009 +0100
14254 [tests] Update the script test JSON
14256 The test-script.json UI definition still used old types, like
14257 ClutterLabel and ClutterCloneTexture. It should move to the classes
14258 that have replaced them.
14260 tests/data/test-script.json | 18 +++++++++---------
14261 1 file changed, 9 insertions(+), 9 deletions(-)
14263 commit bb17dc1ce5d91f68da53944b5d7565be00b179eb
14264 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14265 Date: Wed Aug 26 16:49:45 2009 +0100
14267 [script] Clean up the ad hoc parsing code in Actor
14269 The old parsing code still assumed we had integers for pixels
14270 and floating point values for percentages; this is not the case
14273 clutter/clutter-actor.c | 38 ++------------------------------------
14274 1 file changed, 2 insertions(+), 36 deletions(-)
14276 commit 2ffebad3d9b29931c29b8cb927580f9166ab39df
14277 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14278 Date: Wed Aug 26 16:48:32 2009 +0100
14280 [script] Convert double to float when parsing
14282 The default floating point type for JSON is double precision; this means
14283 that we need to conver to single precision when setting a property with
14286 clutter/clutter-script.c | 13 +++++++++++++
14287 1 file changed, 13 insertions(+)
14289 commit 87831b3427be959bea6a649e2718a5bda5927463
14290 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14291 Date: Tue Aug 25 17:55:51 2009 +0100
14293 [tests] Add a Group actor unit
14295 We need to test that the depth sorting of ClutterGroup works correctly
14296 in case we wish to change the data structure that stores the children,
14297 and do so without changing the default behaviour.
14300 tests/conform/Makefile.am | 1 +
14301 tests/conform/test-conform-main.c | 2 ++
14302 tests/conform/test-group.c | 57 +++++++++++++++++++++++++++++++++++++
14303 4 files changed, 61 insertions(+)
14305 commit f1d58812078e04c7db17c80b51d48bb716b868d1
14306 Author: Øyvind Kolås <pippin@linux.intel.com>
14307 Date: Tue Aug 25 17:32:42 2009 +0100
14309 [group] Use floating point in sort_z_order
14311 clutter/clutter-group.c | 8 ++++++--
14312 1 file changed, 6 insertions(+), 2 deletions(-)
14314 commit d8d344f52930872a8eabdcc801872246b7ae61d1
14315 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14316 Date: Tue Aug 25 12:39:40 2009 +0100
14318 [docs] Add Interval get_type function
14320 The get_type() function for ClutterInterval is missing from the
14321 known GObject types, so gtk-doc doesn't know that it has to
14322 introspect it for hierarchy, properties and signals.
14324 doc/reference/clutter/clutter.types | 1 +
14325 1 file changed, 1 insertion(+)
14327 commit 95a6e1c925c7dd24ba97a4625d1da09ff861e5c3
14328 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14329 Date: Tue Aug 25 12:18:32 2009 +0100
14331 Fix the warnings for Animation::update_interval()
14333 The bindings for update_interval() were copied from bind().
14335 clutter/clutter-animation.c | 7 ++++---
14336 1 file changed, 4 insertions(+), 3 deletions(-)
14338 commit 899f051cd92fb0b5d41948897c7130b86a98dae9
14339 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14340 Date: Tue Aug 25 12:16:41 2009 +0100
14342 [animation] Add Animation::update()
14344 Currently, to update a property inside an animation you have to
14345 get the interval for that property and then call the set_final_value()
14348 We can provide a simpler, bind()-like method for the convenience of
14349 the developers that just validates everything and then calls the
14350 Interval.set_final_value().
14352 clutter/clutter-animation.c | 53 ++++++++++++++++++++++++++++
14353 clutter/clutter-animation.h | 3 ++
14354 doc/reference/clutter/clutter-sections.txt | 1 +
14355 3 files changed, 57 insertions(+)
14357 commit 4ca375e8fe395e375826ea795566b8af8029e09f
14358 Author: Neil Roberts <neil@linux.intel.com>
14359 Date: Mon Aug 24 12:50:57 2009 +0100
14361 [cogl-texture] Set GL_PACK_ROW_LENGTH when downloading texture data
14363 Otherwise the rowstride passed in from an application is not used
14364 correctly so you can not download to an area with a much larger
14367 clutter/cogl/gl/cogl-texture.c | 14 +++++++++++---
14368 1 file changed, 11 insertions(+), 3 deletions(-)
14370 commit 172074fd29cd42bf2790f78aa736f854218906f0
14371 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14372 Date: Fri Aug 21 12:05:52 2009 +0100
14374 [glx] Perform more checks before calling glXMakeCurrent
14376 Right now we just check for a NULL stage before calling glXMakeCurrent().
14378 We can, though, get a valid stage without an implementation attached to
14379 it while we are disposing a stage after a CLUTTER_DELETE event, since the
14380 events processing is performed on a vblank-locked basis.
14382 clutter/glx/clutter-backend-glx.c | 17 +++++++++++------
14383 1 file changed, 11 insertions(+), 6 deletions(-)
14385 commit 93e1d8e7a35afd0f1c08022bdf0f04154ad08ef1
14386 Author: Owen W. Taylor <otaylor@fishsoup.net>
14387 Date: Fri Aug 7 21:16:04 2009 -0400
14389 Add ::queue-relayout signal to ClutterActor for ClutterClone
14391 ClutterClone bases its preferred size on the preferred size of
14392 the source actor, so it needs to invalid its cached preferred
14393 size when the preferred size of the source actor changes.
14395 In order for this to work, we need to have notification when
14396 the size of the source actor changes, so add a ::queue-relayout
14397 signal to ClutterActor.
14399 Then connect to this from ClutterClone and queue a relayout
14400 on the clone when a relayout is queued on the source.
14402 http://bugzilla.openedhand.com/show_bug.cgi?id=1755
14404 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14406 clutter/clutter-actor.c | 56 ++++++++++++++++++++++++++++++++++++++---------
14407 clutter/clutter-actor.h | 5 ++++-
14408 clutter/clutter-clone.c | 12 ++++++++++
14409 3 files changed, 62 insertions(+), 11 deletions(-)
14411 commit 56daae9d7bc49a29a4e1c4e093928efb747ed675
14412 Author: Robert Bragg <robert@linux.intel.com>
14413 Date: Thu Aug 20 12:53:32 2009 +0100
14415 Revert "[cogl] Allow Cogl to create NPOT textures for GLES2"
14417 This reverts commit 3c47a3beb51462ef8af1070b75123660059e97d0.
14419 Of course I remembered just after pushing the patch why we hadn't done
14420 this before :-) If you look in the glsl spec:
14421 http://www.khronos.org/registry/gles/specs/2.0/es_full_spec_2.0.24.pdf
14422 Section 3.7.10 Texture Completeness and Non-Power-Of-Two Textures
14423 you can see GLES 2.0 doesn't support mipmaps for npot textures.
14425 There is possibly some way we could support this in Cogl but at least
14426 it's not as simple as or-ing in the feature flag, sadly.
14428 clutter/cogl/gles/cogl.c | 3 +--
14429 1 file changed, 1 insertion(+), 2 deletions(-)
14431 commit 3c47a3beb51462ef8af1070b75123660059e97d0
14432 Author: Robert Bragg <robert@linux.intel.com>
14433 Date: Thu Aug 20 12:15:21 2009 +0100
14435 [cogl] Allow Cogl to create NPOT textures for GLES2
14437 The core GLES2 API supports NPOT textures, i.e. there is no extension as for
14438 OpenGL, so we now add COGL_FEATURE_TEXTURE_NPOT to the feature flags in
14439 _cogl_features_init.
14441 Thanks to Gordon Williams for spotting this.
14443 clutter/cogl/gles/cogl.c | 3 ++-
14444 1 file changed, 2 insertions(+), 1 deletion(-)
14446 commit a5fe4ae4ec5c5c43aa0898095284447095462e37
14447 Author: Robert Bragg <robert@linux.intel.com>
14448 Date: Wed Aug 19 15:38:25 2009 +0100
14450 [cogl] %.c: %.glsl codegen: use BUILT_SOURCES var + fix stringify.sh
14452 Don't let stringify.sh write to the $srcdir + use the BUILT_SOURCES var in
14453 Makefile.am so as to ensure all .c. and .h files get generated from their
14454 corresponding .glsl files before building other targets.
14456 clutter/cogl/gles/Makefile.am | 14 +++++++++-----
14457 clutter/cogl/gles/stringify.sh | 40 +++++++++++++++++++---------------------
14458 2 files changed, 28 insertions(+), 26 deletions(-)
14460 commit 3761e9cd47950bfade7d3b829b20b245806632a2
14461 Author: Jonas Bonn <jonas@southpole.se>
14462 Date: Wed Aug 19 13:14:10 2009 +0000
14464 Check timeline direction when forcing final state
14466 If the timeline is running backwards, the completed signal handler should
14467 set the final state from the interval's initial value.
14469 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14471 clutter/clutter-animation.c | 11 ++++++++++-
14472 1 file changed, 10 insertions(+), 1 deletion(-)
14474 commit 373b165b3f1adc556e7ee70f01cff66d4a38cd60
14475 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14476 Date: Mon Aug 10 12:45:44 2009 +0200
14478 Use AM_SILENT_RULES if automake >= 1.11 is installed
14482 http://bugzilla.openedhand.com/show_bug.cgi?id=1756
14484 Based on a patch by: Javier Jardón <javierjc1982@gmail.com>
14486 clutter/Makefile.am | 7 +++++--
14487 clutter/cogl/Makefile.am | 6 ++++--
14488 clutter/cogl/common/Makefile.am | 7 ++++---
14489 configure.ac | 18 +++++++++++++++---
14490 4 files changed, 28 insertions(+), 10 deletions(-)
14492 commit 6a9130f10fe5ed3c78b541cf0d021857efb57cb4
14493 Author: Neil Roberts <neil@linux.intel.com>
14494 Date: Tue Aug 18 18:07:37 2009 +0100
14496 [pango-display-list] Don't premultiply the colour twice
14498 When rendering a glyph run from a texture we were premultiplying the
14499 colour once in display_list_render() and then again in
14500 display_list_render_texture(). This was causing the color to come out
14501 wrong. This fixes bug #1775.
14503 Thanks to Pierre-Luc Beaudoin for reporting.
14505 clutter/pango/cogl-pango-display-list.c | 1 -
14506 1 file changed, 1 deletion(-)
14508 commit 9befb055d0dd993d1171bf5652eefdc35567e7f5
14509 Author: Robert Bragg <robert@linux.intel.com>
14510 Date: Tue Aug 18 16:13:13 2009 +0100
14512 [cogl-material] Fix some brackets in _layer_flush_gl_sampler_state
14514 The wrong part of an expression was bracketed in the test to determine
14515 when a new texture matrix needed to be loaded which resulted in the
14516 first pass through _cogl_material_layer_flush_gl_sampler_state
14517 not uploading any user matrix.
14519 clutter/cogl/common/cogl-material.c | 8 ++++----
14520 1 file changed, 4 insertions(+), 4 deletions(-)
14522 commit 366e0725ce1bb804219b28a29539add1e05f73e8
14523 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14524 Date: Tue Aug 18 11:11:29 2009 +0100
14526 [docs] texture_polygon() is called polygon()
14528 Remove the mentions to the old name of cogl_polygon().
14530 clutter/cogl/cogl-types.h | 5 +++--
14531 1 file changed, 3 insertions(+), 2 deletions(-)
14533 commit f655b28e669b7aec5b3ace0d8873adeefa11b4de
14534 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14535 Date: Mon Aug 17 23:27:22 2009 +0100
14537 [build] Nothing can be prepended to QUIET_* rules
14539 Move the LD_LIBRARY_PATH override after the QUIET_GEN rule and
14540 unbreak the typelib compilation.
14542 clutter/Makefile.am | 3 ++-
14543 1 file changed, 2 insertions(+), 1 deletion(-)
14545 commit 8c00d705c0ec009c08950f314ab896b6ff40aa37
14546 Author: Jussi Kukkonen <jku@linux.intel.com>
14547 Date: Mon Aug 17 00:00:35 2009 +0300
14549 [text] move_word_backward/forward fixes
14551 clutter_text_move_word_backward/forward() calls did not use the
14552 start argument consistently. Also, clutter_text_move_word_forward()
14553 bound check checked the wrong end.
14557 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14559 clutter/clutter-text.c | 12 ++++++------
14560 1 file changed, 6 insertions(+), 6 deletions(-)
14562 commit 99437c476136ec6a735270efd8670efcd1f2c77e
14563 Author: Neil Roberts <neil@linux.intel.com>
14564 Date: Mon Aug 17 17:43:42 2009 +0100
14566 [text] Don't interpret the unicode value when the control modifier is on
14568 When a letter key is pressed with the control key held down one of
14569 three things will happen :-
14571 a) If the stage is embedded within a GtkClutterEmbed the unicode value
14572 will be filled from gdk_keyval_to_unicode. This will be the same
14573 value as if control was not pressed (so Ctrl+V will be 'v').
14575 b) If the stage is not in a GtkClutterEmbed and Clutter is running on
14576 the X11 backend then it will try to fill in the unicode value from
14577 XLookupString. This *will* take into account the control so the
14578 unicode value will represent a control character (Ctrl+V will be
14581 c) Most other backends will not bother to fill in the unicode
14582 value. Therefore clutter_keysym_to_unicode will be used which also
14583 does not take into account the control key (so Ctrl+V will be 'v').
14585 For cut and paste to work in Nbtk, the control keys need to bubble up
14586 to the parent NbtkEntry container. This works fine for 'b' but not 'a'
14589 This patch makes ClutterText always allow the event to bubble if the
14590 key is not handled by the binding pool and the control modifier is
14593 Ideally ClutterText would always get a unicode value that takes into
14594 account the modifiers but this is probably best left up to the input
14597 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14599 clutter/clutter-text.c | 3 ++-
14600 1 file changed, 2 insertions(+), 1 deletion(-)
14602 commit 5d7c2e7c4495b3d6f35ed3f4e50857f17b946872
14603 Author: Owen W. Taylor <otaylor@fishsoup.net>
14604 Date: Mon Aug 17 13:57:18 2009 -0400
14606 Set LD_LIBRARY_PATH when running g-ir-compiler
14608 g-ir-compiler currently opens the library for the .gir it is compiling;
14609 to make that work we need to set LD_LIBRARY_PATH before running
14610 g-ir-compiler to include .libs.
14612 (I think this may have been working earlier because there was a
14613 hack that substituted .so with .la and tried opening that; that
14614 works for the incorrect libclutter-glx-1.0.so but not for the
14615 correct libclutter-glx-1.0.so.0)
14617 http://bugzilla.openedhand.com/show_bug.cgi?id=1771
14619 clutter/Makefile.am | 1 +
14620 1 file changed, 1 insertion(+)
14622 commit 4c1248c5e9b934b23bdabbfc3d2dabdb8bab0656
14623 Author: Owen W. Taylor <otaylor@fishsoup.net>
14624 Date: Mon Aug 17 15:41:27 2009 +0100
14626 Full fix for the G-I support in Clutter
14628 Update the sed hack for the shared library to be more robust.
14630 Remove the --shared-library command line argument from g-ir-scanner,
14631 as no distribution will ever ship the .la files. This effectively
14632 reverts commit 68f8a98cfbf70e2b7bfcda7831907633eb08ca50.
14634 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14636 clutter/Makefile.am | 5 ++---
14637 1 file changed, 2 insertions(+), 3 deletions(-)
14639 commit 68f8a98cfbf70e2b7bfcda7831907633eb08ca50
14640 Author: Götz Waschk <waschk@mandriva.org>
14641 Date: Mon Aug 17 14:21:42 2009 +0100
14643 Specify the shared library for g-ir-compile
14645 Use the --shared-library option to specify the shared object to link
14646 against when compiling the typelib from the GIR data.
14648 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14650 clutter/Makefile.am | 6 +++++-
14651 1 file changed, 5 insertions(+), 1 deletion(-)
14653 commit 366e0f9cd7773433ba14cc531119bca3b9879a1e
14654 Author: Götz Waschk <waschk@mandriva.org>
14655 Date: Mon Aug 17 14:12:21 2009 +0100
14657 Update Clutter to use G-I 0.6.4
14659 Following bug #1762, the syntax of g-ir-scanner was changed in
14660 gobject-introspection, so Clutter does not build anymore with 0.6.4.
14662 See the bugzilla bug:
14664 http://bugzilla.gnome.org/show_bug.cgi?id=591669
14666 GObject-Introspection now uses a different mechanism to extract the
14667 SONAME when building the gir file and it needs the libtool archive as
14670 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14673 clutter/Makefile.am | 2 +-
14674 clutter/cogl/Makefile.am | 2 +-
14675 clutter/json/Makefile.am | 2 +-
14676 configure.ac | 2 +-
14677 5 files changed, 5 insertions(+), 5 deletions(-)
14679 commit 53cb86d94ba258cb917221856501c60738a143f3
14680 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14681 Date: Mon Aug 17 10:27:13 2009 +0100
14683 [docs] Update the requirements section
14685 README | 9 +++++++--
14686 1 file changed, 7 insertions(+), 2 deletions(-)
14688 commit 90d8f3183193176b796ac533158e3b0c2a4c2e85
14689 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14690 Date: Fri Aug 14 15:59:29 2009 +0100
14692 [units] Do not be locale-dependant on string conversion
14694 When dumping a ClutterUnits structure to a string we are using a bare
14695 g_strdup_printf(), which unfortunately is locale dependant. So, for
14696 instance, a type of CLUTTER_UNIT_EM and a value of 42 are stringified
14704 This would not be a problem -- clutter_units_from_string() allows both
14705 '.' and ',' as fractionary part delimiters. The test suite, on the
14706 other hand, does not know that, and it checks for exact matches with
14709 Calling setlocale(LC_ALL,"C") at the beginning of the conformance test
14710 suite is not a good idea, because it would prevent external testing; and
14711 it's a lame cop out from doing exactly what we have to do -- pick a format
14714 Like other platforms, languages and frameworks before us, we opt to
14715 be less liberal in what we create; so, we choose to always stringify
14716 ClutterUnits with fractionary parts using '.' as the delimiter.
14720 http://bugzilla.openedhand.com/show_bug.cgi?id=1763
14722 clutter/clutter-units.c | 24 ++++++++++++++----------
14723 1 file changed, 14 insertions(+), 10 deletions(-)
14725 commit f08b583a312cd87f3263078eecdb19a9328ac79f
14726 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14727 Date: Fri Aug 14 15:58:00 2009 +0100
14729 [tests] Abstract GTest and Clutter initialization
14731 The set up process of the conformance test suite is complex enough to
14732 warrant a split up into its own function.
14734 tests/conform/test-conform-main.c | 27 ++++++++++++++++++---------
14735 1 file changed, 18 insertions(+), 9 deletions(-)
14737 commit b31e2d59bdfcc3be46f3ec87de4bcabc32747133
14738 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14739 Date: Fri Aug 14 13:08:59 2009 +0100
14741 [build] Remove last user of CLUTTER_MAJORMINOR
14743 We should always use CLUTTER_API_VERSION instead.
14745 doc/manual/Makefile.am | 10 +++++-----
14746 1 file changed, 5 insertions(+), 5 deletions(-)
14748 commit 5274b4e4c48dbd81c7553ef9889b5897afe932c5
14749 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14750 Date: Fri Aug 14 13:08:17 2009 +0100
14752 [build] Clean up the eglnative and fruity Makefile.am
14754 * Do not use CLUTTER_MAJORMINOR
14756 * Use per-target compiler flags and libraries
14758 clutter/eglnative/Makefile.am | 11 +++++------
14759 clutter/fruity/Makefile.am | 21 ++++++++++-----------
14760 2 files changed, 15 insertions(+), 17 deletions(-)
14762 commit f7edc97d8df2f035fa81343126884b0cbfc9bc3a
14763 Author: Xu Li <xu.li@intel.com>
14764 Date: Tue Aug 4 22:06:27 2009 +0800
14766 Add new Atom atom_NET_WM_PID to set pid info
14768 Clutter advertises itself on X11 as implementing the _NET_WM_PING protocol,
14769 which is needed to be able to detect frozen applications; this allows us to
14770 stop the destruction of the stage by blocking the CLUTTER_DELETE event and
14771 wait for user feedback without the Window Manager thinking that the app has
14774 In order to implement the _NET_WM_PING protocol properly, though, we need
14775 to add the _NET_WM_PID property on the Stage window, since the EWMH states:
14777 [_NET_WM_PID] MAY be used by the Window Manager to kill windows which
14778 do not respond to the _NET_WM_PING protocol.
14780 Meaning that an unresponsive Clutter application might not be killable by
14781 the window manager.
14785 http://bugzilla.openedhand.com/show_bug.cgi?id=1748
14787 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14789 clutter/x11/clutter-backend-x11.c | 22 ++++++++++++----------
14790 clutter/x11/clutter-backend-x11.h | 1 +
14791 clutter/x11/clutter-stage-x11.c | 25 +++++++++++++++++++++++++
14792 3 files changed, 38 insertions(+), 10 deletions(-)
14794 commit 3abf393b87d83211d82b161c0417d80312b8783f
14795 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14796 Date: Fri Aug 14 11:29:03 2009 +0100
14798 [build] Clean up cogl-pango Makefile
14800 * Do _not_ use CLUTTER_MAJORMINOR to define the installation path
14801 for the headers; we must use CLUTTER_API_VERSION for that.
14803 * Do not put the C compiler flags in the INCLUDES directive.
14805 Bases on a patch by: Gary Ching-Pang Lin <glin@novell.com>
14807 clutter/pango/Makefile.am | 9 +++------
14808 1 file changed, 3 insertions(+), 6 deletions(-)
14810 commit 5c8ae6d2dcdb592a56f33927dcec2369a9147396
14811 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14812 Date: Thu Aug 13 18:05:38 2009 +0100
14814 [json] Fix compilation of the internal JSON-GLib
14816 Define the symbols needed to pass the single include policy when
14817 compiling the static object.
14819 clutter/json/Makefile.am | 4 +++-
14820 clutter/json/json-glib.h | 4 ++++
14821 2 files changed, 7 insertions(+), 1 deletion(-)
14823 commit 6e1f9ad9b65fedaa18950de712d7f6ab39b809f0
14824 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14825 Date: Thu Aug 13 16:15:04 2009 +0100
14827 [docs] Remove the version number from the title
14829 The version number in the title made sense when we were breaking
14830 API with every minor release. Now that we're API stable we can
14831 drop that and make the output in Devhelp and on the website slightly
14834 doc/reference/clutter/clutter-docs.xml.in | 4 ++--
14835 doc/reference/cogl/cogl-docs.xml.in | 9 +++++++--
14836 2 files changed, 9 insertions(+), 4 deletions(-)
14838 commit 8a794a85337c01a21f88a02c84bd519ed511b6c6
14839 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14840 Date: Thu Aug 13 16:13:55 2009 +0100
14842 [docs] Fix the examples for animate()
14844 Update the examples to reference to existing easing modes and to
14845 make sure to use floating point values for floating point properties.
14847 clutter/clutter-animation.c | 36 ++++++++++++++++++------------------
14848 1 file changed, 18 insertions(+), 18 deletions(-)
14850 commit f25cdf066c023222330119a1fe8ef5204773faa7
14851 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14852 Date: Thu Aug 13 12:26:09 2009 +0100
14854 [actor] Allow unsetting width and height separately
14856 It is possible to unset the size of an actor specified with set_width()
14857 and set_height() by using:
14859 clutter_actor_set_size (actor, -1, -1);
14861 Which works by unsetting the :min-*-set and the :natural-*-set properties.
14863 Calling set_width(-1) and set_height(-1) separately, though, doesn't work
14864 thus implicitly breaking the assumption that set_size() is nothing more
14865 than set_width()+set_height(). This was obviously due to the face that
14866 pre-1.0 set_width() and set_height() took an unsigned integer as an
14869 clutter/clutter-actor.c | 81 ++++++++++++++++++++++++++++++-----------------
14870 1 file changed, 52 insertions(+), 29 deletions(-)
14872 commit d3e06bc1e5654248d86aaa568179c5732839412e
14873 Author: Colin Walters <walters@verbum.org>
14874 Date: Thu Aug 13 10:49:39 2009 +0100
14876 Add (allow-none) for clutter_stage_set_key_focus()
14878 The @actor argument can be NULL to unset the key focus.
14880 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14882 clutter/clutter-stage.c | 2 +-
14883 1 file changed, 1 insertion(+), 1 deletion(-)
14885 commit 9766fb13005b04669e60befd9e0e3cddf822ac1c
14886 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14887 Date: Wed Aug 12 16:02:23 2009 +0100
14889 [script] Fix Actor's ad-hoc parser
14891 ClutterActor parses positional and dimensional properties with a
14892 custom deserializer. We need to:
14894 - handle G_TYPE_INT64, the default integer type for JSON-GLib
14895 - use G_TYPE_FLOAT for properties, since Actor switched to it
14896 for the pixel-based ones
14898 This makes ClutterScript work again.
14900 clutter/clutter-actor.c | 8 ++++----
14901 1 file changed, 4 insertions(+), 4 deletions(-)
14903 commit cfbbacb8079e2ad92d5e538195d49cfdf8818144
14904 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14905 Date: Wed Aug 12 16:01:25 2009 +0100
14907 [script] Fix the default deserialization
14909 Properties parsed from ClutterScript should now use G_TYPE_INT64
14910 and automatically convert between G_TYPE_INT and G_TYPE_INT64.
14912 clutter/clutter-script.c | 21 +++++++++++++--------
14913 1 file changed, 13 insertions(+), 8 deletions(-)
14915 commit 4d522456372c2394046968ce0a4b22f603023d32
14916 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14917 Date: Wed Aug 12 16:00:13 2009 +0100
14919 [json] Update the internal copy of JSON-GLib
14921 JSON-GLib switch to 64 bit integers upstream, to avoid the undefined
14922 integer size of the JSON RFC. All integers are automatically promoted
14925 clutter/json/json-array.c | 4 +--
14926 clutter/json/json-node.c | 61 +++++++++++++++++++++++++++++++++++---------
14927 clutter/json/json-object.c | 41 ++++++++---------------------
14928 clutter/json/json-parser.c | 13 +++++-----
14929 clutter/json/json-types.h | 16 +++++++-----
14930 5 files changed, 78 insertions(+), 57 deletions(-)
14932 commit 2b70b0d4ed791e8bc25b59eb3b2e9dbeb8201b11
14933 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14934 Date: Wed Aug 12 15:57:25 2009 +0100
14936 Include clutter-json.h, not json-types.h
14938 The json-types.h header is found by the mere fact of it being
14939 in the project; if we are compiling against the system JSON-GLib
14940 this could be horribly out of date.
14942 We need to use clutter-json.h, which will include the right
14945 clutter/clutter-script-private.h | 2 +-
14946 1 file changed, 1 insertion(+), 1 deletion(-)
14948 commit cc6aa6e4d537c5eec3fda85475f78bdf0da2ea10
14949 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14950 Date: Wed Aug 12 15:32:18 2009 +0100
14952 Clutter GIR depends on ClutterJson GIR conditionally
14954 If we're building Clutter with a system JSON-GLib we need to skip
14955 the typelib compilation of ClutterJson since we depend on Json-1.0.gir
14958 clutter/Makefile.am | 3 ++-
14959 1 file changed, 2 insertions(+), 1 deletion(-)
14961 commit 6fcf5c1820b29610a05e0f5022d1d6d907716df5
14962 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14963 Date: Wed Aug 12 15:31:16 2009 +0100
14965 [json] Include only json-glib.h
14967 JSON-GLib moved to a single include scheme, so we should only include
14968 json-glib.h. If we use the internal copy it doesn't matter, since the
14969 header does the right thing.
14971 clutter/clutter-json.h.in | 4 +---
14972 1 file changed, 1 insertion(+), 3 deletions(-)
14974 commit 8c49e227536fabddd2cbf81aa94e1624d30ca312
14975 Author: Emmanuele Bassi <ebassi@linux.intel.com>
14976 Date: Wed Aug 12 10:30:11 2009 +0100
14978 Add copyright and license notice
14980 The clutter-script-parser.c does not have a copyright and license
14981 notices; even though the LGPL is a per-project license and not a
14982 per-file license, having those notices in every source file is a
14985 clutter/clutter-script-parser.c | 32 ++++++++++++++++++++++++++++++++
14986 1 file changed, 32 insertions(+)
14988 commit 13e055a351f83c56b895b131566a6e842d24ed2a
14989 Author: zhou jiangwei <dyllan.zhou@samsung.com>
14990 Date: Tue Aug 11 14:18:37 2009 +0100
14992 [eglx] Update the EGLX backend
14994 The EGLX backend needs to be updated to the new ClutterBackendX11
14997 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
14999 clutter/eglx/clutter-backend-egl.c | 43 ++++++++++++++++++++++++++++++++++++
15000 clutter/eglx/clutter-backend-egl.h | 1 +
15001 clutter/eglx/clutter-stage-egl.c | 4 ++--
15002 3 files changed, 46 insertions(+), 2 deletions(-)
15004 commit 2ab9bef5873ca9d226ddf31fc65b96fe20fa72d5
15005 Author: zhou jiangwei <dyllan.zhou@samsung.com>
15006 Date: Tue Aug 11 14:17:28 2009 +0100
15008 [cogl] Fix the GLES 2.0 backend
15010 Update the GLES 2.0 backend to the new COGL API after the breakage
15011 introduced by the journal.
15013 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
15015 clutter/cogl/common/cogl-primitives.c | 5 +++--
15016 clutter/cogl/gles/cogl-context.h | 5 ++++-
15017 clutter/cogl/gles/cogl-gles2-wrapper.h | 5 +++++
15018 clutter/cogl/gles/cogl-primitives.c | 10 +++++-----
15019 clutter/cogl/gles/cogl-texture-private.h | 3 +++
15020 5 files changed, 20 insertions(+), 8 deletions(-)
15022 commit dbfd3f0f444680d85556edc0b96dff68ea22722d
15023 Author: Robert Bragg <robert@linux.intel.com>
15024 Date: Tue Aug 11 13:49:12 2009 +0100
15026 [cogl_clear] Also pass the alpha component of the CoglColor to glClearColor
15028 Previously we were passing a constant of 0.0 for the alpha component which
15029 wasn't as flexible.
15031 clutter/cogl/common/cogl.c | 2 +-
15032 1 file changed, 1 insertion(+), 1 deletion(-)
15034 commit f0cb337d920c46cb7ca45d80ade69057d0408ff5
15035 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15036 Date: Tue Aug 11 13:27:25 2009 +0100
15038 [build] Fix LDADD -> LIBADD usage
15040 clutter/osx/Makefile.am | 2 +-
15041 1 file changed, 1 insertion(+), 1 deletion(-)
15043 commit dfc32b60c4b1b0b83fbf70d7e02b58cbc919326a
15044 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15045 Date: Tue Aug 11 13:11:34 2009 +0100
15047 [osx] Clean up Makefile.am
15049 The OS X backend Makefile.am was missing a line concatenation, and
15050 so the -xobjective-c directive was always ignored.
15052 Instead of dumping everything into INCLUDES and LDADD we should follow
15053 what the rest of the backends do, and use per-target CFLAGS and LDADD,
15054 and reserve the INCLUDES to -D and -I directives.
15056 Thanks to: Christian Hergert <chris@dronelabs.com>
15058 clutter/osx/Makefile.am | 30 ++++++++++++++----------------
15059 1 file changed, 14 insertions(+), 16 deletions(-)
15061 commit d0748b3b9b34bf77ed3b813e3872cac64d6a6c35
15062 Merge: d263e7a df572d0
15063 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15064 Date: Mon Aug 10 17:21:20 2009 +0100
15066 Merge branch 'system-json-glib'
15068 * system-json-glib:
15069 [script] Simplify the parser code
15070 Update JSON-GLib dependency
15072 commit d263e7a78b7e98b2b87a51a194b93473344b6b27
15073 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15074 Date: Mon Aug 10 17:19:04 2009 +0100
15076 [build] Install JSON headers inside the right directory
15078 Don't install inside the clutter-MAJOR_MINOR/ directory, but use
15079 the API_VERSION (1.0).
15081 Otherwise we'd have the Clutter headers for 1.x inside:
15083 $includedir/clutter-1.0/clutter
15085 And the JSON-related headers inside:
15087 $includedir/clutter-1.<minor>/clutter
15089 clutter/json/Makefile.am | 2 +-
15090 1 file changed, 1 insertion(+), 1 deletion(-)
15092 commit 19a53054fde3ccfac365452618e4524e3f3c7efc
15093 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15094 Date: Fri Aug 7 15:27:25 2009 +0100
15096 Bump to 1.1.1 after branching 1.0
15098 configure.ac | 2 +-
15099 1 file changed, 1 insertion(+), 1 deletion(-)
15101 commit 420ed353b53bd624331bd249d7df98d14714b504
15102 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15103 Date: Fri Aug 7 08:18:17 2009 +0100
15105 [x11] Do not ask to destroy an empty Window
15107 The fix for bug 1750 inside commit b190448e made Clutter-GTK spew
15108 BadWindow errors. The reason for that is that we call XDestroyWindow()
15109 without checking if the old Window is None; this happens if we call
15110 clutter_x11_set_stage_foreign() on a new ClutterStage before it has
15113 Since Clutter-GTK does not need to realize the Stage it is going to
15114 embed anymore (the only reason for that was to obtain a proper Visual
15115 but now there's ClutterBackendX11 API for that), the set_stage_foreign()
15116 call is effectively setting the StageX11 Window for the first time.
15118 clutter/x11/clutter-stage-x11.c | 20 +++++++++++++++-----
15119 1 file changed, 15 insertions(+), 5 deletions(-)
15121 commit 335fb07ab02bc719c04bf2de115a88216f1321f7
15122 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15123 Date: Wed Aug 5 17:46:18 2009 +0100
15125 [actor] Add missing return_if_fail()
15127 The queue_relayout() method was missing the argument check.
15129 Thanks to: Neil Patel <njpatel@gmail.com>
15131 clutter/clutter-actor.c | 2 ++
15132 1 file changed, 2 insertions(+)
15134 commit 1434d7213487ad42626fcc4b1da180fe98192ef1
15135 Author: Neil Roberts <neil@linux.intel.com>
15136 Date: Wed Aug 5 15:51:49 2009 +0100
15138 Small doc fix to clutter_text_get_color
15140 Bug reported by Rob Bradford.
15142 clutter/clutter-text.c | 2 +-
15143 1 file changed, 1 insertion(+), 1 deletion(-)
15145 commit b190448ed460ae466cd6d1c7c34e47d4386fe4c4
15146 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15147 Date: Tue Aug 4 16:59:15 2009 +0100
15149 [x11] Destroy the Window we own when setting a foreign one
15151 When we replace the stage Window using a foreign one we also need to
15152 destroy the Window we created, if needed, to avoid leaking resources
15157 http://bugzilla.openedhand.com/show_bug.cgi?id=1750
15159 clutter/x11/clutter-stage-x11.c | 6 ++++++
15160 1 file changed, 6 insertions(+)
15162 commit 7963254c23f42a43b64ca3f2401499b456d677ce
15163 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15164 Date: Tue Aug 4 11:39:09 2009 +0100
15168 doc/reference/clutter/building-clutter.xml | 6 ++++--
15169 1 file changed, 4 insertions(+), 2 deletions(-)
15171 commit 79288b46ed60efe4cf3f970ef7f1cce17685cd84
15172 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15173 Date: Tue Aug 4 11:38:48 2009 +0100
15175 [docs] Fix a missing parameter
15177 clutter/cogl/cogl-vertex-buffer.h | 2 +-
15178 1 file changed, 1 insertion(+), 1 deletion(-)
15180 commit 9cda8d130f7097d8ca43ffb0e50206ab72d1892d
15181 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15182 Date: Tue Aug 4 11:11:59 2009 +0100
15184 [actor] Be more explicit when warning about invariants
15186 The "catch all" warning for a the mapped invariant violation is too
15187 generic: it doesn't tell you why the invariant was broken in case
15188 we are trying to map an unparented actor - e.g. through a Clone.
15190 clutter/clutter-actor.c | 10 ++++++++--
15191 1 file changed, 8 insertions(+), 2 deletions(-)
15193 commit f8a964b422c195219c59a3b21d9bb3125ce215dd
15194 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15195 Date: Tue Aug 4 11:10:55 2009 +0100
15197 [cogl] Expose cogl_is_vertex_buffer()
15199 The function is public and available in the shared object, but
15200 it's not present in the header, so this is not an API/ABI change.
15202 clutter/cogl/cogl-vertex-buffer.h | 14 ++++++++++++++
15203 doc/reference/cogl/cogl-sections.txt | 1 +
15204 2 files changed, 15 insertions(+)
15206 commit c9f57452e60c89c0b046def2f1787773545244df
15207 Author: Robert Bragg <robert@linux.intel.com>
15208 Date: Mon Aug 3 15:03:19 2009 +0100
15210 [build] remove reference to light1.png in tests/interactive/Makefile.am
15212 This file doesn't exist in the repo and isn't referenced by any unit tests.
15214 tests/interactive/Makefile.am | 4 +---
15215 1 file changed, 1 insertion(+), 3 deletions(-)
15217 commit 71c4fa0f73ec9a101a4dcb07a0d782e075185d4b
15218 Author: Robert Bragg <robert@linux.intel.com>
15219 Date: Mon Aug 3 14:53:46 2009 +0100
15221 [build] dist tests/interactive/wrapper.sh
15223 in tests/interactive/Makefile.am add wrapper.sh to EXTRA_DIST otherwise
15224 interactive unit tests wont be runnable when building from distributed
15227 tests/interactive/Makefile.am | 3 +++
15228 1 file changed, 3 insertions(+)
15230 commit c9c87543e8f827ee4c3510cd0025e8653d3309b1
15231 Author: Damien Lespiau <damien.lespiau@intel.com>
15232 Date: Mon Aug 3 14:11:33 2009 +0100
15234 [debug] CLUTTER_{NOTE,MARK,DBG,GLERR,TIMESTAMP} should always be statements
15236 In case someone tries to do:
15238 CLUTTER_NOTE(DOMAIN, "%s", blah);
15240 CLUTTER_NOTE () should always be a statement
15242 clutter/clutter-debug.h | 10 +++++-----
15243 1 file changed, 5 insertions(+), 5 deletions(-)
15245 commit cd35f3b384b645d171de49eee555363d4b2acc94
15246 Author: Damien Lespiau <damien.lespiau@intel.com>
15247 Date: Mon Aug 3 13:58:52 2009 +0100
15249 [debug] Fix __GNUC__ typo
15251 The right gcc define is __GNUC__ not __GNUC_. This typo had the side
15252 effect that we were using the non gcc specific debug macros leading to
15253 a less optmised CLUTTER_NOTE () than one could have dreamed of.
15255 clutter/clutter-debug.h | 2 +-
15256 1 file changed, 1 insertion(+), 1 deletion(-)
15258 commit 94b35a4a5ee4fa86d837b2deb06fe849a2a68977
15259 Author: Damien Lespiau <damien.lespiau@intel.com>
15260 Date: Mon Aug 3 13:56:32 2009 +0100
15262 [build] GCC_FLAGS is no more, MAINTAINER_CFLAGS is the One.
15264 CC_FLAGS was a left over from the 0.8.x age. Killed it and use the
15265 newer MAINTAINER_CFLAGS variable instead.
15267 clutter/Makefile.am | 2 +-
15268 clutter/eglnative/Makefile.am | 2 +-
15269 clutter/eglx/Makefile.am | 2 +-
15270 clutter/fruity/Makefile.am | 2 +-
15271 clutter/glx/Makefile.am | 3 +--
15272 clutter/json/Makefile.am | 2 ++
15273 clutter/osx/Makefile.am | 2 +-
15274 clutter/sdl/Makefile.am | 2 +-
15275 clutter/win32/Makefile.am | 2 +-
15276 clutter/x11/Makefile.am | 3 +--
15277 10 files changed, 11 insertions(+), 11 deletions(-)
15279 commit 4ee49eded0561ad987b50e1b04e15a685c1c06e2
15280 Author: Damien Lespiau <damien.lespiau@intel.com>
15281 Date: Mon Aug 3 13:58:21 2009 +0100
15283 [gitignore] Ignore new test-color-hls-roundtrip test
15285 tests/.gitignore | 1 +
15286 1 file changed, 1 insertion(+)
15288 commit b2ab2b953548bb9af41789e2465dfa9a588c9b2d
15289 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15290 Date: Sun Aug 2 18:34:17 2009 +0100
15292 [actor] Use the right vertex
15294 The vertex that should be used by the apply_relative_transform
15295 is the one passed in as const, and the result should be placed
15296 inside the non-const ClutterVertext. Currently, we are using
15297 the latter, and thus the function is completely useless.
15299 clutter/clutter-actor.c | 6 +++---
15300 1 file changed, 3 insertions(+), 3 deletions(-)
15302 commit ae2a861a0b042e36393e5eb76ecb17759a933892
15303 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15304 Date: Fri Jul 31 10:29:33 2009 +0100
15306 [x11] Force a redraw before mapping the stage
15308 Does as it says on the tin: run a paint cycle before calling
15311 clutter/x11/clutter-stage-x11.c | 9 ++++++---
15312 1 file changed, 6 insertions(+), 3 deletions(-)
15314 commit abdcf4debbedd9f924da4db9403ecbc9a030cb20
15315 Author: Joshua Lock <josh@linux.intel.com>
15316 Date: Fri Jul 31 10:16:56 2009 +0100
15318 [docs] Update building instructions for OS X
15320 Recommend OS X users install the dependencies using MacPorts and build
15321 Clutter themselves.
15323 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
15325 doc/reference/clutter/building-clutter.xml | 41 ++++++++++++++++------------
15326 1 file changed, 23 insertions(+), 18 deletions(-)
15328 commit b3842a6b62979d264b7d7057e4125602e644ccad
15329 Author: Neil Roberts <neil@linux.intel.com>
15330 Date: Wed Jul 29 19:06:36 2009 +0100
15332 [mingw] Update the README
15334 The README has been updated to say that you can use the script under
15335 MSYS and also to contain a pointer to OAH. It also contains the
15336 updated contents of a blog post¹ about building with MSYS.
15338 1. http://www.busydoingnothing.co.uk/blog/2008/07/13#ClutterWin32
15340 build/mingw/README | 133 +++++++++++++++++++++++++++++++++++++++++++++++++---
15341 1 file changed, 127 insertions(+), 6 deletions(-)
15343 commit 8ad446f3e9903d2339536db4febef1cbc77db643
15344 Author: Neil Roberts <neil@linux.intel.com>
15345 Date: Wed Jul 29 18:13:19 2009 +0100
15347 [mingw-cross-compile.sh] Fix to use git rather than svn
15349 The script includes a part to automatically checkout the Clutter
15350 source and build it but it was using the old svn repo instead of git.
15352 build/mingw/mingw-cross-compile.sh | 6 +++---
15353 1 file changed, 3 insertions(+), 3 deletions(-)
15355 commit d796d3c88c3d3044d1c1bf54c320504f4e5886eb
15356 Author: Neil Roberts <neil@linux.intel.com>
15357 Date: Wed Jul 29 17:59:54 2009 +0100
15359 [mingw-cross-compile.sh] Add a note about MSYS in the comment
15361 The comment previously implied that you could only use the script to
15362 cross compile but it works just as well under MSYS.
15364 build/mingw/mingw-cross-compile.sh | 5 +++--
15365 1 file changed, 3 insertions(+), 2 deletions(-)
15367 commit 1e14d3041dc2f68d18dcd3e03d34e8d0fa7a05f4
15368 Author: Neil Roberts <neil@linux.intel.com>
15369 Date: Wed Jul 29 17:58:02 2009 +0100
15371 [mingw-cross-compile.sh] Update version numbers of all the dependencies
15373 This updates the URLs for the binary dependencies to use the latest
15376 build/mingw/mingw-cross-compile.sh | 23 +++++++++++++----------
15377 1 file changed, 13 insertions(+), 10 deletions(-)
15379 commit a3c323c52c42785f93641e3603a5426bbb371876
15380 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15381 Date: Wed Jul 29 17:22:18 2009 +0100
15383 [docs] Remove mentions of Clutter-Cairo
15385 The mingw README file still mentions Clutter-Cairo as a known issue.
15387 build/mingw/README | 8 ++------
15388 1 file changed, 2 insertions(+), 6 deletions(-)
15390 commit 0ec6793738085308206e028d1136cb4cd4274f11
15391 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15392 Date: Wed Jul 29 17:21:13 2009 +0100
15394 [mingw/win32] Remove clutter-cairo
15396 The Clutter-Cairo library has been removed, so there's no point
15397 in checking it out -- from Subversion, even.
15399 build/mingw/mingw-cross-compile.sh | 23 -----------------------
15400 1 file changed, 23 deletions(-)
15402 commit fba1045bcb46da4ed04bd789b7650e985915243b
15403 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15404 Date: Tue Jul 28 18:39:24 2009 +0100
15406 Post-release bump to 1.0.1
15408 configure.ac | 2 +-
15409 1 file changed, 1 insertion(+), 1 deletion(-)
15411 commit df572d089c0811ecbc5e41d1c68d39fae47040e9
15412 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15413 Date: Mon Jun 29 16:33:36 2009 +0100
15415 [script] Simplify the parser code
15417 JSON-GLib provides simple accessors for basic types so that we
15418 can avoid getting the JsonNode out of a complex type. This makes
15419 the code simpler to understand.
15421 clutter/clutter-script.c | 39 ++++++++++-----------------------------
15422 1 file changed, 10 insertions(+), 29 deletions(-)
15424 commit 354fa437cdc4b67ca6c2452756a261222109b289
15425 Author: Emmanuele Bassi <ebassi@linux.intel.com>
15426 Date: Thu Jun 25 18:56:52 2009 +0100
15428 Update JSON-GLib dependency
15430 Currently, Clutter depends on the internal copy of JSON-GLib for
15431 the ClutterScript parser. This is done to allow building Clutter
15432 on platforms that do not have the library installed on the system.
15434 Just like we use the internal PNG/JPEG loader as a fallback in
15435 case we don't have GdkPixbuf or CoreGraphics available, we should
15436 use the internal copy of JSON-GLib only in case the system copy
15439 The change is simply to move the default for the --with-json
15440 configure switch from "internal" to "check".
15442 In order to allow stricter compliance, a third setting should
15443 be present: "system", which fails if the system copy is not
15446 We should also change the introspection generation to avoid
15447 breaking in case we require the installed Json-1.0.gir instead
15448 of the generated ClutterJson.gir
15450 clutter/Makefile.am | 5 ++++-
15451 configure.ac | 44 +++++++++++++++++++++++++++++++++++---------
15452 2 files changed, 39 insertions(+), 10 deletions(-)