1# DO NOT MODIFY THIS FILE
2#
3# Clutter uses the Git commit log to generate the ChangeLog files when
4# creating the tarball for releases and snapshots. This file is maintained
5# only for historical reasons.
6
72008-12-10  Neil Roberts  <neil@linux.intel.com>
8
9	* clutter/cogl/gl/cogl.c:
10	* clutter/cogl/gl/cogl-defines.h.in:
11	* clutter/cogl/gl/cogl-context.h:
12	* clutter/cogl/common/cogl-mesh.c: Rename the glBufferDataSub
13	function to glBufferSubData. When calling glXGetProcAddress with
14	the former Mesa returns a stub dispatch function which will
15	segfault if you try to use it. With NVIDIA it returns NULL so
16	_cogl_features_init decides the card doesn't have VBO support.
17
182008-12-10  Neil Roberts  <neil@linux.intel.com>
19
20	Bug 1323 - ClutterBehaviorDepth conflicts with other behaviors
21
22	* clutter/clutter-behaviour-ellipse.c (actor_apply_knot_foreach):
23	Don't set the depth if there is no x or y tilt. That way it can
24	still be used in conjunction with ClutterBehaviourDepth. Thanks to
25	Tonny Tzeng.
26
272008-12-08  Emmanuele Bassi  <ebassi@linux.intel.com>
28
29	* clutter/clutter-binding-pool.h: Fix the ActivateFunc
30	documentation by adding a "return value" annotation.
31
322008-12-08  Emmanuele Bassi  <ebassi@linux.intel.com>
33
34	* clutter/Makefile.am:
35	* clutter/clutter.h: Add ClutterBindingPool to the build.
36
37	* clutter/clutter-binding-pool.c:
38	* clutter/clutter-binding-pool.h: Add ClutterBindingPool, a data
39	structure meant to hold (key symbol, modifiers) pairs and associate
40	them to a closure. The ClutterBindingPool can be used to install
41	key bindings for actors and then execute closures inside the
42	key-press-event signal handlers, removing the need for big
43	switch() or if() blocks for each key.
44
45	* clutter/clutter-event.c: Consistently use "key symbol" instead
46	of "key value".
47
48	* clutter/clutter-event.h: Add more modifier masks.
49
50	* clutter/clutter-marshal.list:
51
52	* tests/conform/Makefile.am:
53	* tests/conform/test-binding-pool.c:
54	* tests/conform/test-conform-main.c: Add ClutterBindingPool
55	conformance test.
56
57	* tests/interactive/Makefile.am:
58	* tests/interactive/test-binding-pool.c: Add interactive test (and
59	example code) for the ClutterBindingPool usage.
60
612008-12-08  Neil Roberts  <neil@linux.intel.com>
62
63	* clutter/clutter-main.c (_clutter_do_pick): Restore the GL_DITHER
64	state after reading the pixel value instead of before. Suggested
65	in bug 1328 thanks to Guy Zadickario.
66
672008-12-05  Emmanuele Bassi  <ebassi@linux.intel.com>
68
69	Bug 1309 - clutter_timeline_new and clutter_timeline_set_speed
70	have two standard of the fps limitation
71
72	* clutter/clutter-timeline.c:
73	(clutter_timeline_class_init): Set the maximum value of the
74	:fps property to be G_MAXUINT. (Zhang Wei)
75
762008-12-05  Neil Roberts  <neil@linux.intel.com>
77
78	* clutter/clutter-entry.c: Fix the 'Since' annotation in the
79	gtk-doc.
80
812008-12-05  Neil Roberts  <neil@linux.intel.com>
82
83	* clutter/clutter-timeline.c:
84	* clutter/clutter-texture.c:
85	* clutter/clutter-stage.c:
86	* clutter/clutter-label.c:
87	* clutter/clutter-behaviour-path.c:
88	* clutter/clutter-actor.c: Fix the 'Since' annotation in the
89	gtk-doc.
90
912008-12-05  Neil Roberts  <neil@linux.intel.com>
92
93	Bug 1252 - Merge ClutterBehaviourPath and ClutterBehaviourBspline
94
95	* clutter/clutter-path.h:
96	* clutter/clutter-path.c: Implementation of new ClutterPath object
97	to represent a path combining straight line and bezier curve
98	elements.
99
100	* clutter/clutter.h: Include clutter-path.h and remove
101	clutter-behaviour-bspline.h
102
103	* tests/interactive/test-threads.c (test_threads_main):
104	* tests/interactive/test-script.c:
105	* tests/interactive/test-behave.c (test_behave_main): Use new path
106	API
107
108	* clutter/clutter-effect.c: Use the new ClutterBehaviourPath API.
109
110	* clutter/clutter-bezier.h:
111	* clutter/clutter-bezier.c: Moved bezier curve handling code out
112	from clutter-behaviour-bspline.c to a separate file.
113
114	* clutter/clutter-behaviour-path.h:
115	* clutter/clutter-behaviour-path.c: Reimplemented to work with a
116	ClutterPath
117
118	* clutter/clutter-behaviour-bspline.h:
119	* clutter/clutter-behaviour-bspline.c: Removed
120
121	* clutter/Makefile.am: Add clutter-path and clutter-bezier, remove
122	clutter-behaviour-bspline.
123
124	* tests/conform/test-path.c: New automatic test for ClutterPath
125	consistency
126
127	* tests/conform/test-conform-main.c (main): Add test_path
128
129	* tests/conform/Makefile.am (test_conformance_SOURCES): Add
130	test-path.c
131
132	* clutter/clutter-sections.txt: Add ClutterPath docs
133
134	* clutter/clutter.types:
135	* clutter/clutter-docs.xml:
136	* doc/reference/clutter/clutter-animation-tutorial.xml: Remove
137	mention of ClutterBehaviourBspline
138
139	* clutter/clutter-marshal.list: Add VOID:UINT
140
1412008-12-04  Neil Roberts  <neil@linux.intel.com>
142
143	Bug 1297 - Bring back support for GL_ARB_texture_rectangle
144
145	* clutter/cogl/gl/cogl-texture.c (cogl_texture_new_from_foreign,
146	(_cogl_texture_quad_hw, cogl_texture_polygon),
147	(_cogl_texture_quad_sw): Support GL_ARB_texture_rectangle textures
148
149	* clutter/glx/clutter-glx-texture-pixmap.c: Use rectangle textures
150	when NPOTs are not available or it is forced by the
151	CLUTTER_PIXMAP_TEXTURE_RECTANGLE environment variable.
152
153	* clutter/cogl/gl/cogl.c (cogl_enable): Allow enabling
154	GL_TEXTURE_RECTANGLE_ARB.
155
1562008-12-04  Neil Roberts  <neil@linux.intel.com>
157
158	Bug 1172 - Disjoint paths and clip to path
159
160	* clutter/cogl/cogl-path.h:
161	* clutter/cogl/common/cogl-primitives.c:
162	* clutter/cogl/common/cogl-primitives.h:
163	* clutter/cogl/gl/cogl-primitives.c:
164	* clutter/cogl/gles/cogl-primitives.c: Changed the semantics of
165	cogl_path_move_to. Previously this always started a new path but
166	now it instead starts a new disjoint sub path. The path isn't
167	cleared until you call either cogl_path_stroke, cogl_path_fill or
168	cogl_path_new. There are also cogl_path_stroke_preserve and
169	cogl_path_fill_preserve functions.
170
171	* clutter/cogl/gl/cogl-context.c:
172	* clutter/cogl/gl/cogl-context.h:
173	* clutter/cogl/gles/cogl-context.c:
174	* clutter/cogl/gles/cogl-context.h: Convert the path nodes array
175	to a GArray.
176
177	* clutter/cogl/gl/cogl-texture.c:
178	* clutter/cogl/gles/cogl-texture.c: Call cogl_clip_ensure
179
180	* clutter/cogl/common/cogl-clip-stack.c:
181	* clutter/cogl/common/cogl-clip-stack.h: Simplified the clip
182	stack code quite a bit to make it more maintainable.  Previously
183	whenever you added a new clip it would go through a separate route
184	to immediately intersect with the current clip and when you
185	removed it again it would immediately rebuild the entire clip. Now
186	when you add or remove a clip it doesn't do anything immediately
187	but just sets a dirty flag instead.
188
189	* clutter/cogl/gl/cogl.c:
190	* clutter/cogl/gles/cogl.c: Taken away the code to intersect
191	stencil clips when there is exactly one stencil bit. It won't work
192	with path clips and I don't know of any platform that doesn't have
193	eight or zero stencil bits. It needs at least three bits to
194	intersect a path with an existing clip. cogl_features_init now
195	just decides you don't have a stencil buffer at all if you have
196	less than three bits.
197
198	* clutter/cogl/cogl.h.in: New functions and documentation.
199
200	* tests/interactive/test-clip.c: Replaced with a different test
201	that lets you add and remove clips. The three different mouse
202	buttons add clips in different shapes. This makes it easier to
203	test multiple levels of clipping.
204
205	* tests/interactive/test-cogl-primitives.c: Use
206	cogl_path_stroke_preserve when using the same path again.
207
208	* doc/reference/cogl/cogl-sections.txt: Document the new
209	functions.
210
2112008-12-03  Robert Bragg  <robert@linux.intel.com>
212
213	Bug 1303 - clutter_glx_texture_pixmap_using_extension doesn't check if
214	fallbacks are being used
215
216	* glx/clutter-glx-texture-pixmap.c:
217	clutter_glx_texture_pixmap_using_extension now checks to see if
218	priv->use_fallback is TRUE not just that the tfp extension is
219	available.
220
2212008-12-01  Neil Roberts  <neil@linux.intel.com>
222
223	Bug 1305 - NPOT textures unaligned to a pixel sometimes have
224	border artifacts
225
226	* clutter/cogl/gl/cogl-texture.c: Set the wrap mode of a texture
227	on demand
228
229	Instead of setting the wrap mode once per texture at creation, it
230	is now changed whenever the texture is drawn. The previous value
231	is cached so that it isn't changed if the value is the same.
232
233	This is used in _cogl_texture_quad_hw to only enable GL_REPEAT
234	mode when the coordinates are not in the range [0,1]. Otherwise it
235	can pull in pixels from the other edge when the texture is
236	rendered off-pixel.
237
2382008-11-28  Neil Roberts  <neil@linux.intel.com>
239
240	* tests/conform/test-backface-culling.c (TEXTURE_SIZE): Don't set
241	to a funny size on GLES because it will break cogl_texture_polygon
242
2432008-11-28  Neil Roberts  <neil@linux.intel.com>
244
245	* tests/conform/test-backface-culling.c: New test for backface
246	culling
247
248	* tests/conform/test-conform-main.c (main): Add
249	/texture/test_backface_culing
250
251	* tests/conform/Makefile.am (test_conformance_SOURCES): Add
252	test-backface-culling.c
253
2542008-11-28  Neil Roberts  <neil@linux.intel.com>
255
256	* tests/conform/test-mesh-mutability.c:
257	* tests/conform/test-mesh-interleved.c:
258	* tests/conform/test-mesh-contiguous.c: Remove the idle source
259	after the test is complete so that it won't interfere with other
260	tests.
261
2622008-11-26  Emmanuele Bassi  <ebassi@linux.intel.com>
263
264	* clutter/clutter-group.c:
265	(clutter_group_real_raise), (clutter_group_real_lower): Repaint
266	the Group on raise and lower.
267
2682008-11-26  Neil Roberts  <neil@linux.intel.com>
269
270	* clutter/cogl/gl/cogl-texture.c (cogl_texture_rectangle): Fixed
271	the test for whether to use hardware tiling. Previously it assumed
272	that texture coordinates are in increasing order but this is not
273	the case since bug 1057 was fixed. The texture coordinates are now
274	sorted later. It also allowed negative coordinates which doesn't
275	make sense if the texture has waste.
276
2772008-11-25  Emmanuele Bassi  <ebassi@linux.intel.com>
278
279	* configure.ac: Remove stray dependency on gdk-pixbuf-xlib; we
280	don't use the xlib specific API anymore. (thanks to Matthias
281	Clasen)
282
2832008-11-25  Neil Roberts  <neil@linux.intel.com>
284
285	Bug 1299 - clutter_score_remove will segmentation fault if
286	timelines are more than 52 and continue to remove them
287
288	* clutter/clutter-score.c (traverse_children): Don't destroy the
289	entry in the handler for REMOVE_BY_ID. It will be removed again
290	anyway in the call to g_node_traverse. This was causing a
291	crash. Thanks to zhangwei for spotting.
292
2932008-11-24  Neil Roberts  <neil@linux.intel.com>
294
295	Add a wrapper library to help testing without NPOTs.
296
297	* tests/tools/Makefile.am: Optionally build the
298	libdisable-npots.la library depending on whether libdl was
299	detected in the configure script. A helper script is also
300	generated to setup the LD_PRELOAD.
301
302	* tests/conform/Makefile.am: There are now two versions of the
303	test-report and full-report rules. test-report-normal is the same
304	as before and test-report-disable-npots runs the tests with the
305	disable-npots wrapper script. The full-report rule runs both of
306	them and displays two separate HTML files. The test-report rule
307	just runs the normal version as before.
308
309	* configure.ac: Add a test for libdl
310
311	* tests/tools/disable-npots.sh.in: New file. Template for the
312	helper script
313
314	* tests/tools/disable-npots.c: New file
315
3162008-11-24  Neil Roberts  <neil@linux.intel.com>
317
318	* clutter/cogl/gl/cogl-texture.c (cogl_texture_polygon): Fix the
319	equation for calculating texture coordinates when using sliced
320	textures. This became broken in revision 3520.
321
3222008-11-21  Neil Roberts  <neil@linux.intel.com>
323
324	Bug 1270 - Update to mingw-cross-compile.sh
325
326	* build/mingw/mingw-cross-compile.sh: Update to download latest
327	binaries. Patch thanks to David Kedves.
328
3292008-11-21  Neil Roberts  <neil@linux.intel.com>
330
331	Bug 1271 - mingw compiling failed: undefined reference to
332	`_glDrawRangeElements@24'
333
334	Resolve glDrawRangeElements with cogl_get_proc_address instead of
335	calling it directly because functions defined in GL > 1.1 are not
336	directly exported under Windows.
337
338	* clutter/cogl/common/cogl-mesh.c: Use the function pointer from
339	the context
340
341	* clutter/cogl/gl/cogl-context.c (cogl_create_context): Initialise
342	function pointer.
343
344	* clutter/cogl/gl/cogl-context.h (CoglContext): Add a function
345	pointer
346
347	* clutter/cogl/gl/cogl-defines.h.in: Add a typedef for the
348	function pointer.
349
350	* clutter/cogl/gl/cogl.c (_cogl_features_init): Resolve
351	glDrawRangeElements
352
3532008-11-21  Neil Roberts  <neil@linux.intel.com>
354
355	* tests/interactive/Makefile.am:
356	* tests/conform/Makefile.am: Use $(EXEEXT) when specifying a
357	dependency on an executable otherwise there won't be a rule to
358	build it on Windows.
359
3602008-11-21  Neil Roberts  <neil@linux.intel.com>
361
362	Bug 1269 - mingw32 building failed at clutter-media.c
363
364	* clutter/clutter-media.c: Rename the 'ERROR' signal enum to
365	'ERROR_SIGNAL' otherwise it clashes with windgi.h. Thanks to David
366	Kedves
367
3682008-11-21  Neil Roberts  <neil@linux.intel.com>
369
370	* clutter/pango/cogl-pango.h: Include pango/pango.h to get
371	pango-renderer.h. In versions prior to 1.18.4 pangocairo.h does
372	not include pango-renderer.h
373
3742008-11-21  Neil Roberts  <neil@linux.intel.com>
375
376	Bug 1280 - clutter_score_append_at_marker lead to segmentation
377	fault in trunk and incorrect appearance in clutter-0.8
378
379	* clutter/clutter-score.c (start_children_entries): Check whether
380	the child timeline is actually attached at a marker before
381	comparing whether the marker's name matches the marker
382	reached. This fixes a crash that happens when a marker is reached
383	on a timeline that also has child timelines attached at the
384	end. Thanks to zhangwei for spotting.
385
3862008-11-20  Emmanuele Bassi  <ebassi@linux.intel.com>
387
388	* clutter/clutter-actor.c:
389	(clutter_actor_set_property): Add sanity checks for NULL
390	boxed values when setting the rotation center.
391
392	* tests/interactive/test-animation.c:
393	(on_button_press): Add an example on how to use the rotation
394	properties to animate an actor.
395
3962008-11-18  Neil Roberts  <neil@linux.intel.com>
397
398	Fixed some trivial compiler warnings
399
400	* tests/interactive/test-pixmap.c (create_pixmap): Use a format
401	string instead of passing the error message directly to g_error.
402
403	* tests/interactive/test-easing.c (test_easing_main)
404	(on_button_press):
405	* tests/interactive/test-animation.c (on_button_press): Use
406	unsigned variables for the results from clutter_actor_get_size
407	otherwise it complains about the pointer signedness being
408	different.
409
410	* clutter/clutter-script.c (clutter_script_add_search_paths): Use
411	G_GSIZE_FORMAT instead of %d for a gsize parameter otherwise it
412	gets upset on 64-bit.
413
4142008-11-18  Neil Roberts  <neil@linux.intel.com>
415
416	* tests/conform/test-timeline.c (test_timeline): Remove the delay
417	idle handler after the test is finished, otherwise it will
418	continue running during subsequent tests. This was breaking
419	test_timeline_interpolate.
420
4212008-11-18  Robert Bragg  <robert@linux.intel.com>
422
423	* clutter/cogl/common/cogl-mesh.c:
424	Re-works validate_custom_attribute_name() so it doesn't access an
425	un-initialised variable.
426
4272008-11-18  Robert Bragg  <robert@linux.intel.com>
428
429	A comparison of gl/cogl-texture.c and gles/cogl-texture.c, to reduce
430	differences and improve maintainability.
431
432	* clutter/cogl/gl/cogl-context.h:
433	Adds a CoglTextureGLVertex typedef + texture_vertices and
434	texture_vertices_size members to CoglContext for using vertex arrays
435	like GLES does
436
437	* clutter/cogl/gl/cogl-context.c:
438	Initializes texture_vertices + texture_vertices_size members
439
440	* clutter/cogl/gl/cogl-internal.h:
441	Adds COGL_ENABLE_COLOR_ARRAY
442
443	* clutter/cogl/gl/cogl.c:
444	Add COGL_ENABLE_COLOR_ARRAY support to cogl_enable
445
446	* clutter/cogl/gles/cogl-context.h:
447	Change the CoglTextureGLVertex to use GLfloat for the position
448	and texture coord attributes and GLubyte for the color.
449
450	* clutter/cogl/gles/cogl-texture-private.h:
451	Adds a wrap_mode member like GL has.
452
453	* clutter/cogl/gl/cogl-texture.c
454	* clutter/cogl/gles/cogl-texture.c:
455	Improves the comparability of the files, such that the remaining
456	differences, better reflect the fundamental differences needed
457	between GL and GLES. Notably GL no longer uses glBegin/glEnd for
458	submitting vertices, it uses vertex arrays like GLES and this gives
459	a small but measurable fps improvement for test-text.
460
4612008-11-18  Robert Bragg  <robert@linux.intel.com>
462
463	* clutter/cogl/gl/cogl-internal.h
464	* clutter/cogl/gles/cogl-internal.h:
465	Removes semicolon after the GE() macro since that breaks using it as a
466	single statement.
467
4682008-11-18  Emmanuele Bassi  <ebassi@linux.intel.com>
469
470	* clutter/clutter.h: Add clutter-shader.h and
471	clutter-shader-types.h to the global include.
472
4732008-11-18  Emmanuele Bassi  <ebassi@linux.intel.com>
474
475	* clutter/cogl/cogl-shader.h: Add a function for setting an
476	integer uniform, similar to cogl_program_uniform_1f().
477
478	* clutter/cogl/gl/cogl-program.c: Implement the GL version
479	of cogl_program_uniform_1i().
480
481	* clutter/cogl/gles/cogl-program.c: Implement the GLES version
482	of cogl_program_uniform_1i().
483
4842008-11-18  Emmanuele Bassi  <ebassi@linux.intel.com>
485
486	Bug 1049 - Clutter doesn't support most GLSL uniforms (patch
487	by Chris Lord and Neil Roberts)
488
489	* README: Update release notes.
490
491	* clutter/Makefile.am:
492	* clutter/clutter-shader-types.[ch]: Add GValue types for
493	shader values.
494
495	* clutter/clutter-actor.[ch]: Update the shader API to use
496	the newly added GValue support for GLSL shader uniform
497	setters.
498
499	* clutter/clutter-shader.[ch]: Add float and integer convenience
500	API for single value GLSL uniform setters.
501
502	* clutter/cogl/cogl-shader.h: Add new uniform setters.
503
504	* clutter/cogl/gl/cogl-context.c:
505	* clutter/cogl/gl/cogl-context.h:
506	* clutter/cogl/gl/cogl-defines.h.in:
507	* clutter/cogl/gl/cogl-program.c:
508	* clutter/cogl/gl/cogl.c: Update the GL implementation of COGL
509	to handle the GLSL uniform setters.
510
511	* clutter/cogl/gles/cogl-gles2-wrapper.c:
512	* clutter/cogl/gles/cogl-gles2-wrapper.h:
513	* clutter/cogl/gles/cogl-internal.h:
514	* clutter/cogl/gles/cogl-program.c: Update the GLES 2.0 implementation
515	of COGL to handle the GLSL uniform setters.
516
517	* doc/reference/clutter/clutter-sections.txt:
518	* doc/reference/cogl/cogl-sections.txt: Update the documentation.
519
520	* tests/interactive/test-fbo.c:
521	* tests/interactive/test-shader.c: Update the shader tests.
522
5232008-11-18  Emmanuele Bassi  <ebassi@linux.intel.com>
524
525	* clutter/clutter-texture.c:
526	(clutter_texture_get_preferred_width): Fix the usage of the
527	fixed point division macro.
528
5292008-11-18  Emmanuele Bassi  <ebassi@linux.intel.com>
530
531	* tests/conform/test-conform-main.c (main): Do not run the
532	conformance test suite if we are on X11 but we do not have
533	a DISPLAY available. Some of the tests require a DISPLAY,
534	and everything passes through a clutter_init() call which will
535	fail anyway. If we are running make distcheck on an headless
536	box we might as well just skip the conformance test suite
537	without a meaningless error.
538
5392008-11-18  Emmanuele Bassi  <ebassi@linux.intel.com>
540
541	* tests/conform/test-mesh-contiguous.c:
542	* tests/conform/test-mesh-interleved.c:
543	* tests/conform/test-mesh-mutability.c: Remove the last bare
544	g_print() from the conformance test suite.
545
5462008-11-18  Emmanuele Bassi  <ebassi@linux.intel.com>
547
548	* clutter/clutter-alpha.h:
549	* clutter/clutter-alpha.c:
550	(clutter_alpha_set_mode): Use a lookup table to find the alpha
551	function given the animation mode.
552
553	(clutter_exp_in_func),
554	(clutter_exp_out_func),
555	(clutter_exp_in_out_func): Add new exponential functions.
556
557	* clutter/clutter-script.c: Update the lookup table with the
558	new animation modes; match "linear" to the ramp-inc alpha
559	function.
560
561	* clutter/clutter-types.h: Add new AnimationMode values.
562
563	* tests/interactive/test-easing.c: Update the easing functions
564	test.
565
5662008-11-18  Neil Roberts  <neil@linux.intel.com>
567
568	* tests/conform/test-pick.c (test_pick): The final result message
569	when --verbose is used was the wrong way around
570
5712008-11-18  Neil Roberts  <neil@linux.intel.com>
572
573	* tests/conform/test-conform-main.c (main): Fixed a typo in the
574	name of the path for test_realized.
575
5762008-11-17  Emmanuele Bassi  <ebassi@linux.intel.com>
577
578	Bug 1014 - Clutter Animation API Improvements
579
580	* clutter/Makefile.am:
581	* clutter/clutter.h: Update the build
582
583	* clutter/clutter-types.h: Add AnimationMode, an enumeration
584	for easing functions.
585
586	* clutter/clutter-alpha.[ch]: Add the :mode property to
587	control the function bound to an Alpha instance using an
588	enumeration value. Also add six new alpha functions:
589
590		- ease-in, ease-out, ease-in-out
591		- sine-in, sine-out, sine-in-out
592
593	* clutter/clutter-deprecated.h: Deprecate the #defines for
594	the alpha functions. They will be replaced by entries in the
595	ClutterAnimationMode.
596
597	* clutter/clutter-interval.[ch]: Add ClutterInterval, an
598	object for defining, validating and computing an interval
599	between two values.
600
601	* clutter/clutter-animation.[ch]: Add ClutterAnimation, an
602	object responsible for animation the properties of a single
603	actor along an interval of values. ClutterAnimation memory
604	management is automatic. A simple wrapper method for
605	ClutterActor is provided:
606
607		clutter_actor_animate()
608
609	which will create, or update, an animation for the passed
610	actor.
611
612	* clutter/clutter-debug.h:
613	* clutter/clutter-main.c: Add a new 'animation' debug note.
614
615	* clutter/clutter-script.c: Clean up the alpha functions
616	whitelist, and add the new functions.
617
618	* doc/reference/clutter/Makefile.am:
619	* doc/reference/clutter/clutter-sections.txt: Update the
620	API reference.
621
622	* doc/reference/clutter/clutter-animation.xml: Renamed to
623	doc/reference/clutter/clutter-animation-tutorial.xml to
624	avoid clashes with the ClutterAnimation section.
625
626	* doc/reference/clutter/clutter-docs.sgml: Renamed to
627	doc/reference/clutter/clutter-docs.xml, as it was an XML
628	file and not a SGML file.
629
630	* tests/Makefile.am:
631	* tests/interactive/Makefile.am:
632	* tests/interactive/test-animation.c:
633	* tests/interactive/test-easing.c: Add two tests for the
634	new simple animation API and the easing functions.
635
636	* tests/interactive/test-actors.c:
637	* tests/interactive/test-behave.c:
638	* tests/interactive/test-depth.c:
639	* tests/interactive/test-effects.c:
640	* tests/interactive/test-layout.c:
641	* tests/interactive/test-multistage.c:
642	* tests/interactive/test-paint-wrapper.c:
643	* tests/interactive/test-rotate.c:
644	* tests/interactive/test-scale.c:
645	* tests/interactive/test-texture-quality.c:
646	* tests/interactive/test-threads.c:
647	* tests/interactive/test-viewport.c: Update interactive tests
648	to the deprecations and new alpha API.
649
6502008-11-17  Emmanuele Bassi  <ebassi@linux.intel.com>
651
652	* clutter/clutter-entry.c:
653	* clutter/clutter-label.c:
654	* clutter/clutter-rectangle.c:
655	* clutter/clutter-script.c:
656	* clutter/clutter-stage.c: Use the ParamSpecColor and GValue
657	API for ClutterColor-based properties.
658
6592008-11-14  Robert Bragg  <ebassi@linux.intel.com>
660
661	* tests/interactive/Makefile.am
662	* tests/interactive/test-pixmap.c:
663	test-pixmap + test-devices accidentally got dropped from the makefiles
664	when changing the unit test layout; this puts them back.
665
6662008-11-14  Emmanuele Bassi  <ebassi@linux.intel.com>
667
668	Bug 1265 - ClutterScore doesn't emit 'started' signal (Bastian
669	Winkler)
670
671	* clutter/clutter-score.c: Emit the ::started signal.
672
673	* tests/interactive/test-score.c: Check the emission of the
674	Score signals.
675
6762008-11-13  Neil Roberts  <neil@linux.intel.com>
677
678	* clutter/cogl/gles/cogl-gles2-wrapper.h:
679	* clutter/cogl/gles/cogl-gles2-wrapper.c:
680	Initialise the 'tex' sampler uniform to 0. The GLSL spec
681	specifically says that you must initialize sampler uniforms. This
682	fixes texturing for GLES 2 when using the PowerVR simulator via
683	software Mesa.
684
6852008-11-13  Robert Bragg  <robert@linux.intel.com>
686
687	Gets the mesh API working with GLES2
688
689	* clutter/cogl/common/cogl-mesh.c:
690	Make sure we use the appropriate cogl_wrap_gl* funcs as appropriate
691
692	* clutter/cogl/gles/cogl-gles2-wrapper.c
693	* clutter/cogl/gles/cogl-gles2-wrapper.h:
694	In our glColorPointer wrapper we needed to mark our color attribute
695	as normalized.
696
697	* tests/conform/Makefile.am:
698	When creating unit test symlinks we use the -l gtester option to
699	list tests, but when using the PVR SDK the test binary also spews
700	out some extra info that caused lots of random symlinks to be
701	created. We now grep for lines starting with a '/'
702
703	* tests/conform/test-mesh-contiguous.c
704	* tests/conform/test-mesh-mutability.c:
705	Use cogl_set_source_color instead of directly calling glColor4ub
706
7072008-11-13  Neil Roberts  <neil@linux.intel.com>
708
709	* clutter/clutter-actor.c (clutter_actor_get_paint_visibility):
710	Fix logic so that it won't return TRUE for a hidden stage.
711
7122008-11-13  Emmanuele Bassi  <ebassi@linux.intel.com>
713
714	* clutter/clutter-behaviour-ellipse.c:
715	(clutter_behaviour_ellipse_applied): Do not reset the depth
716	of the actors to which the Ellipse behaviour has been applied
717	to, unless the behaviour is going to update it because it has
718	a tilt on the X or Y axis.
719
7202008-11-13  Neil Roberts  <neil@linux.intel.com>
721
722	* clutter/clutter-actor.c (clutter_actor_get_reactive)
723	(clutter_actor_get_paint_visibility): Be sure to return exactly
724	TRUE or FALSE instead of zero or some non-zero value in these
725	functions that return a gboolean. Thanks to Kai Wei for spotting.
726
7272008-11-12  Emmanuele Bassi  <ebassi@linux.intel.com>
728
729	* tests/conform/Makefile.am:
730	* tests/conform/test-conform-main.c:
731	* tests/conform/test-paint-opacity.c: Add test unit for label,
732	rectangle and paint opacity.
733
7342008-11-12  Emmanuele Bassi  <ebassi@linux.intel.com>
735
736	* clutter/cogl/cogl-color.h:
737	* clutter/cogl/cogl-path.h:
738	* clutter/cogl/cogl-types.h:
739	* clutter/cogl/common/cogl-color.c: Deprecated cogl_color()
740	in favour of cogl_set_source_color() and friends; store the
741	CoglColor components as unsigned bytes instead of fixed point
742	normalized values; add functions for allocating, copying and
743	freeing CoglColor, for use of language bindings.
744
745	* clutter/cogl/cogl.h.in:
746	* clutter/cogl/cogl-deprecated.h: Added cogl-deprecated.h,
747	an header file containing the deprecation symbols similar
748	to clutter-deprecated.h.
749
750	* clutter/cogl/gl/Makefile.am:
751	* clutter/cogl/gl/cogl-texture.c:
752	* clutter/cogl/gl/cogl.c:
753	* clutter/cogl/gles/Makefile.am:
754	* clutter/cogl/gles/cogl-texture.c:
755	* clutter/cogl/gles/cogl.c: Update the GL and GLES implementations
756	of COGL after the CoglColor changes.
757
758	* clutter/clutter-actor.c:
759	* clutter/clutter-clone-texture.c:
760	* clutter/clutter-entry.c:
761	* clutter/clutter-label.c:
762	* clutter/clutter-rectangle.c:
763	* clutter/clutter-texture.c: Do not use CoglColor whenever it
764	is possible, and use cogl_set_source_color4ub() instead.
765
766	* clutter/pango/cogl-pango-render.c: Ditto as above.
767
768	* doc/reference/clutter/subclassing-ClutterActor.xml:
769	* doc/reference/cogl/cogl-sections.txt: Update the documentation.
770
771	* tests/interactive/test-cogl-offscreen.c:
772	* tests/interactive/test-cogl-primitives.c:
773	* tests/interactive/test-cogl-tex-convert.c:
774	* tests/interactive/test-cogl-tex-foreign.c:
775	* tests/interactive/test-cogl-tex-getset.c:
776	* tests/interactive/test-cogl-tex-polygon.c:
777	* tests/interactive/test-cogl-tex-tile.c:
778	* tests/interactive/test-paint-wrapper.c: Drop the usage of
779	CoglColor whenever it is possible.
780
7812008-11-12  Neil Roberts  <neil@linux.intel.com>
782
783	Bug 1057 - cogl_texture_rectangle doesn't support backward
784	coordinates
785
786	* clutter/cogl/gl/cogl-texture.c: Instead of sorting the vertex
787	and texture coordinates passed to cogl_texture_rectangle, just
788	swap both sets whenever the texture coordinates are backward.
789
7902008-11-12  Neil Roberts  <neil@linux.intel.com>
791
792	* clutter/clutter-rectangle.c (clutter_rectangle_paint): Fixed so
793	that it doesn't use the alpha value from the border colour to draw
794	the rectangle
795
7962008-11-12  Neil Roberts  <neil@linux.intel.com>
797
798	* clutter/cogl/gles/Makefile.am (libclutterinclude_HEADERS):
799	* clutter/cogl/gl/Makefile.am (libclutterinclude_HEADERS):
800	* clutter/cogl/common/Makefile.am
801	(libclutter_cogl_common_la_SOURCES): Move cogl-mesh.h into the
802	headers for libclutter so that it will get installed.
803
8042008-11-12  Neil Roberts  <neil@linux.intel.com>
805
806	Fix warnings in mesh tests
807
808	* tests/conform/test-mesh-mutability.c (on_paint):
809	* tests/conform/test-mesh-interleved.c (on_paint):
810	* tests/conform/test-mesh-contiguous.c (on_paint): Use g_usleep
811	instead of sleep
812
813	* tests/conform/test-mesh-mutability.c (queue_redraw):
814	* tests/conform/test-mesh-interleved.c (queue_redraw):
815	* tests/conform/test-mesh-contiguous.c (queue_redraw): Added
816	missing return statement
817
818	* clutter/cogl/cogl-mesh.h: Add a declaration for
819	cogl_mesh_submit
820
821	* clutter/cogl/common/cogl-mesh.c (cogl_mesh_submit): Move the
822	documentation to cogl-mesh.h to match the rest of the functions
823
8242008-11-10  Robert Bragg  <robert@linux.intel.com>
825
826	Bug 1164 - Implements the proposed Mesh API
827
828	* clutter/cogl/cogl-mesh.h
829	* clutter/cogl/cogl-types.h
830	* clutter/cogl/cogl.h.in
831	* clutter/cogl/common/Makefile.am
832	* clutter/cogl/common/cogl-mesh-private.h
833	* clutter/cogl/common/cogl-mesh.c
834	* clutter/cogl/gl/cogl-context.c
835	* clutter/cogl/gl/cogl-context.h
836	* clutter/cogl/gl/cogl-defines.h.in
837	* clutter/cogl/gl/cogl.c
838	* clutter/cogl/gles/cogl-context.c
839	* clutter/cogl/gles/cogl-context.h:
840	The Mesh API provides a means for submitting an extensible number of
841	per vertex attributes to OpenGL in a way that doesn't require format
842	conversions and so that the data can be mapped into the GPU (in vertex
843	buffer objects) for - hopefully - fast re-use.
844
845	There are a number of things we can potentially use this API for, but
846	right now this just provides a foundation to build on. Please read
847	the extensive list of TODO items in cogl-mesh.c for examples.
848
849	Please refer to the cogl-mesh section in the reference manual for
850	documentation of the API.
851
852	* tests/conform/Makefile.am
853	* tests/conform/test-conform-main.c
854	* tests/conform/test-mesh-contiguous.c
855	* tests/conform/test-mesh-interleved.c
856	* tests/conform/test-mesh-mutability.c:
857	Privides basic coverage testing for the mesh API.
858
8592008-11-10  Robert Bragg  <robert@linux.intel.com>
860
861	Bug 1164 - Implements the proposed Mesh API
862
863	* clutter/cogl/cogl-mesh.h
864	* clutter/cogl/cogl-types.h
865	* clutter/cogl/cogl.h.in
866	* clutter/cogl/common/Makefile.am
867	* clutter/cogl/common/cogl-mesh-private.h
868	* clutter/cogl/common/cogl-mesh.c
869	* clutter/cogl/gl/cogl-context.c
870	* clutter/cogl/gl/cogl-context.h
871	* clutter/cogl/gl/cogl-defines.h.in
872	* clutter/cogl/gl/cogl.c
873	* clutter/cogl/gles/cogl-context.c
874	* clutter/cogl/gles/cogl-context.h:
875	The Mesh API provides a means for submitting an extensible number of
876	per vertex attributes to OpenGL in a way that doesn't require format
877	conversions and so that the data can be mapped into the GPU (in vertex
878	buffer objects) for - hopefully - fast re-use.
879
880	There are a number of things we can potentially use this API for, but
881	right now this just provides a foundation to build on. Please read
882	the extensive list of TODO items in cogl-mesh.c for examples.
883
884	Please refer to the cogl-mesh section in the reference manual for
885	documentation of the API.
886
887	* tests/conform/Makefile.am
888	* tests/conform/test-conform-main.c
889	* tests/conform/test-mesh-contiguous.c
890	* tests/conform/test-mesh-interleved.c
891	* tests/conform/test-mesh-mutability.c:
892	Privides basic coverage testing for the mesh API.
893
8942008-11-10  Robert Bragg  <robert@linux.intel.com>
895
896	* tests/conform/ADDING_NEW_TESTS
897	* tests/conform/test-conform-common.c
898	* tests/conform/test-pick.c:
899	Instead of using clutter_stage_new /clutter_actor_destroy as a way to
900	avoid cascading side effects between unit tests, due to left over
901	actors, we now destroy all children of the default stage between
902	tests instead.
903
904	* tests/conform/wrapper.sh:
905	Adds a convenience note about how to run valgrind for an individual
906	unit test
907
9082008-11-10  Neil Roberts  <neil@linux.intel.com>
909
910	* tests/interactive/test-main.c (main): Allow more than two
911	arguments so that the remaining arguments can be passed to the
912	test. This is needed for test-behave for example which can take a
913	--path argument.
914
9152008-11-10  Emmanuele Bassi  <ebassi@linux.intel.com>
916
917	* clutter/clutter-texture.c: Remove an unused function.
918
9192008-11-10  Emmanuele Bassi  <ebassi@linux.intel.com>
920
921	* tests/conform/test-label-cache.c:
922	* tests/conform/test-pick.c:
923	* tests/conform/test-timeline.c: Show all the output messages only
924	if the test was done with the verbose flag turned on.
925
926	* tests/interactive/test-main.c: Do not use the (gpointer*) cast,
927	but use a temporary gpointer instead.
928
9292008-11-10  Robert Bragg  <robert@linux.intel.com>
930
931	* tests/conform/Makefile.am:
932	* tests/conform/wrapper.sh:
933	* tests/conform/test-conform-main.c:
934	* tests/conform/test-timeline.c:
935	Adds Neil's updates to test-timeline.c so it now works with the new
936	unit testing infrastructure.
937
938	Also some fixes to ensure wrappers get setup correctly for the
939	timeline tests.
940
941	* tests/interactive/test-main.c:
942	cast the symbol return pointer as (gpointer *) to avoid warning
943
944	* tests/conform/test-pick.c:
945	g_assert that the test passes, instead of using exit()
946
947	* test/conform/ADDING_NEW_TESTS:
948	Fixes a silly typo
949
9502008-11-08  Emmanuele Bassi  <ebassi@linux.intel.com>
951
952	* tests/conform/Makefile.am:
953	* tests/conform/test-actor-invariants.c:
954	* tests/conform/test-conform-main.c: Move the actor invariants
955	unit to the conform section of the test suite.
956
957	* tests/interactive/Makefile.am:
958	* tests/interactive/test-entry-auto.c:
959	* tests/interactive/test-invariants.c: Remove the entry-auto
960	and invariants test, since those two belong to the conform
961	section.
962
9632008-11-07  Robert Bragg  <robert@linux.intel.com>
964
965	Bug 1162 - Re-works the tests/ to use the glib-2.16 unit testing
966	framework
967
968	* configure.ac:
969	* tests/*:
970	The tests have been reorganised into different categories: conformance,
971	interactive and micro benchmarks.
972	- conformance tests can be run as part of automated tests
973	- interactive tests are basically all the existing tests
974	- micro benchmarks focus on a single performance metric
975
976	I converted the timeline tests to conformance tests and also added some
977	tests from Neil Roberts and Ebassi.
978
979	Note: currently only the conformance tests use the glib test APIs,
980	though the micro benchmarks should too.
981
982	The other change is to make the unit tests link into monolithic binaries
983	which makes the build time for unit tests considerably faster. To deal
984	with the extra complexity this adds to debugging individual tests I
985	have added some sugar to the makefiles so all the tests can be run
986	directly via a symlink and when an individual test is run this way,
987	then a note is printed to the terminal explaining exactly how that test
988	may be debugged using GDB.
989
990	There is a convenience make rule: 'make test-report', that will run all
991	the conformance tests and hopefully even open the results in your web
992	browser. It skips some of the slower timeline tests, but you can run
993	those using 'make full-report'
994
9952008-11-07  Emmanuele Bassi  <ebassi@linux.intel.com>
996
997	* clutter/clutter-media.c: Improve documentation of the
998	ClutterMedia interface.
999
10002008-11-07  Matthew Allum  <mallum@linux.intel.com>
1001
1002	Bug 1238 - [PATCH] Pack bitfields in ClutterTexturePrivate
1003
1004	* clutter/clutter-texture.c:
1005
1006	Using 'guint my_field : 1' for booleans to save space only
1007	makes sense if you group all such fields together. Fix
1008	grouping for ClutterTexturePrivate. Thanks to Owen Taylor for
1009	patch.
1010
10112008-11-07  Matthew Allum  <mallum@linux.intel.com>
1012
1013       Bug 1237 - clutter_texture_set_filter_quality calls
1014	          clutter_texture_[un]realize
1015
1016	* clutter/clutter-texture.c: (clutter_texture_set_filter_quality):
1017	Call clutter_actor_[un]realize and keep visibility state
1018
10192008-11-07  Matthew Allum  <mallum@linux.intel.com>
1020
1021	* clutter/clutter-actor.c:
1022	* clutter/clutter-actor.h:
1023	* clutter/clutter-clone-texture.c:
1024	* clutter/clutter-private.h:
1025	* clutter/clutter-texture.c:
1026	* clutter/x11/clutter-x11-texture-pixmap.c:
1027
1028	Attempt to lower overhead of updating TFP's (particularly mipmaped).
1029	Compresses mipmap updates only for visible TFPs.
1030	Avoiding updates for non visible TFP's whilst keeping visible
1031	clones working ok.
1032
10332008-11-06  Neil Roberts  <neil@linux.intel.com>
1034
1035	Bug 1230 - Pick fails on low precision color buffers
1036
1037	* clutter/clutter-main.c (_clutter_id_to_color): When using fuzzy
1038	picking to pick a color for an actor, it would previously set the
1039	fuzzy bit and then all but the most significant of the remaining
1040	unused bits. This meant that for 16-bit displays it would end up
1041	with a strange pattern for the unused bits like 1011 which could
1042	cause it to round up. Now it just sets all but the most
1043	significant of all of the unused bits giving a pattern like
1044	0111. Thanks to Guy Zadickario for the patch.
1045
10462008-11-06  Neil Roberts  <neil@linux.intel.com>
1047
1048	* clutter/cogl/gles/cogl.c (cogl_perspective):
1049	* clutter/cogl/common/cogl-fixed.c (cogl_fixed_sin)
1050	(cogl_angle_sin, cogl_angle_tan, cogl_fixed_sqrt): Replaced uses
1051	of 1 + ~x with just -x which is equivalent and easier to
1052	understand.
1053
10542008-11-06  Emmanuele Bassi  <ebassi@linux.intel.com>
1055
1056	Bug 1233 - CLUTTER_ALPHA_SINE_INC is broken in trunk
1057
1058	* clutter/clutter-alpha.c: Fix a rollover in the sine functions.
1059
10602008-11-05  Neil Roberts  <neil@linux.intel.com>
1061
1062	* clutter/clutter-color.c (clutter_color_new): Remove CLAMP macros
1063	around the component parameters because they are guint8 anyway so
1064	the CLAMP is redundant and it causes a warning.
1065
10662008-11-04  Thomas Wood  <thomas@linux.intel.com>
1067
1068	* clutter/clutter-color.c: Update ClutterColor documentation as
1069	changes have been backported to 0.8.4.
1070
10712008-11-04  Emmanuele Bassi  <ebassi@linux.intel.com>
1072
1073	* clutter/clutter-script.c: Document the "is-default" member of
1074	a ClutterStage definition.
1075
10762008-11-04  Neil Roberts  <neil@linux.intel.com>
1077
1078	* clutter/cogl/gl/cogl.c (cogl_perspective): Use the accurate
1079	64-bit multiplication macro instead of COGL_FIXED_FAST_DIV for
1080	calculating xmax as was done previously. This fixes
1081	test-perspective and other tests that had a gone a bit skewiff.
1082
10832008-11-04  Neil Roberts  <neil@linux.intel.com>
1084
1085	Bug 1181 - In Score, timelines, appended at markers, are also
1086	called on complete
1087
1088	* clutter/clutter-score.c (start_children_entries): Use the name
1089	of the marker to start as the data parameter and only start child
1090	timelines that have the same marker name. Previously the
1091	ClutterScore would just start all child entries when a marker was
1092	reached or the timeline completed regardless of whether they were
1093	added with a marker or not. Thanks to Mihail Naydenov for
1094	reporting the bug.
1095
10962008-11-03  Emmanuele Bassi  <ebassi@linux.intel.com>
1097
1098	* clutter/cogl/gl/Makefile.am: Whitespace fixes.
1099
1100	* clutter/cogl/gles/Makefile.am: Put back a missing backslash
1101	that broke the GLES build.
1102
11032008-11-03  Emmanuele Bassi  <ebassi@linux.intel.com>
1104
1105	Bug 1231 - Build fails in gles flavour in revision 3442
1106
1107	* clutter/cogl/gles/cogl-context.h: Fix remaining use of
1108	ClutterFixed over CoglFixed. (Michael Boccara)
1109
11102008-11-03  Neil Roberts  <neil@linux.intel.com>
1111
1112	Bug 1207 - Timelines sometime miss markers
1113
1114	* clutter/clutter-timeline.c (timeline_timeout_func): Move the
1115	code for firing the new-frame and marker-reached signals into a
1116	separate static function so that it can also be called when the
1117	last frame is reached. Also fix an issue where the frame numbers
1118	were changed in the wrong direction when detecting missed markers
1119	in a reversed timeline. Based on a patch by Michael Boccara.
1120
1121	* tests/test-timeline.c: Now tries to automatically verify whether
1122	the test worked by keeping track of all the signal emissions. The
1123	timelines are run a second time with an extra timeout that causes
1124	delays to simulate skipped frames.
1125
11262008-10-31  Emmanuele Bassi  <ebassi@linux.intel.com>
1127
1128	* clutter/pango/cogl-pango-fontmap.c:
1129	* clutter/pango/cogl-pango-render.c: Whitespace fixes and code
1130	duplication removal. Plus, start documenting the CoglPango API.
1131
11322008-10-31  Matthew Allum  <mallum@openedhand.com>
1133
1134	* clutter/clutter-texture.c: (clutter_texture_set_filter_quality),
1135	(clutter_texture_get_filter_quality):
1136	Fix up some logic, typos.
1137
1138	* clutter/glx/clutter-glx-texture-pixmap.c:
1139	Improve support for mipmaped TFP textures.
1140
11412008-10-31  Emmanuele Bassi  <ebassi@linux.intel.com>
1142
1143	Bug 1200 - Crash with invalid DISPLAY
1144
1145	* clutter/clutter-main.c: Use the ClutterBackend wrapper API
1146	instead of directly checking the class structure.
1147
1148	* clutter/glx/clutter-backend-glx.c: Return the correct value
1149	in case of failure.
1150
1151	* clutter/x11/clutter-backend-x11.c: Bail out if XOpenDisplay()
1152	failed.
1153
11542008-10-30  Emmanuele Bassi  <ebassi@linux.intel.com>
1155
1156	* clutter/cogl/cogl-color.h:
1157	* clutter/cogl/cogl-fixed.h:
1158	* clutter/cogl/cogl-offscreen.h:
1159	* clutter/cogl/cogl-path.h:
1160	* clutter/cogl/cogl-shader.h:
1161	* clutter/cogl/cogl-texture.h:
1162	* clutter/cogl/cogl-types.h: Add copyright and licensing
1163	notice to the newly added files.
1164
11652008-10-30  Emmanuele Bassi  <ebassi@linux.intel.com>
1166
1167	Bug 1219 - Clean up cogl.h
1168
1169	* clutter/cogl/cogl.h.in:
1170	* clutter/cogl/cogl-offscreen.h:
1171	* clutter/cogl/cogl-path.h:
1172	* clutter/cogl/cogl-shader.h:
1173	* clutter/cogl/cogl-texture.h:
1174	* clutter/cogl/cogl-types.h: Split up the massive cogl.h file
1175	into sub-header for each section of the API.
1176
1177	* clutter/cogl/gl/*:
1178	* clutter/cogl/gles/*: Update the GL and GLES implementations
1179	of COGL to cope with the new header structure.
1180
1181	* doc/reference/cogl/Makefile.am: Fix symbol retrieval.
1182
11832008-10-30  Emmanuele Bassi  <ebassi@linux.intel.com>
1184
1185	Bug 1215 - Move the Pango renderer to the public API
1186
1187	* clutter/pango/*: Rename PangoClutter -> CoglPango.
1188
1189	* clutter/Makefile.am:
1190	* clutter/clutter-backend.c:
1191	* clutter/clutter-entry.c:
1192	* clutter/clutter-label.c:
1193	* clutter/clutter-main.[ch]:
1194	* clutter/clutter-private.h: Update the users of the Pango
1195	renderer API.
1196
1197	* README: Update release notes.
1198
11992008-10-30  Emmanuele Bassi  <ebassi@linux.intel.com>
1200
1201	Bug 1212 - Allow only a single include file for Clutter
1202
1203	* clutter/*.h: Only allow including clutter.h in third
1204	party code.
1205
1206	* clutter/cogl/cogl-color.h:
1207	* clutter/cogl/cogl-fixed.h:
1208	* clutter/cogl/cogl.h.in: Only allow including cogl.h in
1209	third party code.
1210
1211	* clutter/cogl/common/Makefile.am:
1212	* clutter/cogl/gl/Makefile.am:
1213	* clutter/cogl/gles/Makefile.am:
1214	* clutter/eglnative/Makefile.am:
1215	* clutter/eglx/Makefile.am:
1216	* clutter/fruity/Makefile.am:
1217	* clutter/glx/Makefile.am:
1218	* clutter/glx/clutter-glx.h:
1219	* clutter/osx/Makefile.am:
1220	* clutter/pango/Makefile.am:
1221	* clutter/sdl/Makefile.am:
1222	* clutter/win32/Makefile.am:
1223	* clutter/x11/Makefile.am: Fix build environment.
1224
1225	* clutter/x11/clutter-x11-texture-pixmap.h:
1226	* clutter/x11/clutter-x11.h: Fix inclusion rules.
1227
1228	* tests/test-pixmap.c: Fix inclusion of GdkPixbuf header.
1229
1230	* README: Update release notes.
1231
12322008-10-30  Emmanuele Bassi  <ebassi@linux.intel.com>
1233
1234	Bug 1211 - Drop ClutterFeatureFlags usage from COGL
1235
1236	* clutter/cogl/cogl.h.in:
1237	* clutter/cogl/gl/cogl.c:
1238	* clutter/cogl/gles/cogl.c: Do not use ClutterFeatureFlags
1239	when CoglFeatureFlags will do. This removes the last usage
1240	of Clutter API inside COGL.
1241
12422008-10-30  Emmanuele Bassi  <ebassi@linux.intel.com>
1243
1244	Bug 1210 - Add CoglColor API
1245
1246	* clutter/cogl/cogl-color.h:
1247	* clutter/cogl/cogl.h.in:
1248	* clutter/cogl/common/Makefile.am:
1249	* clutter/cogl/common/cogl-color.c:
1250	* clutter/cogl/gl/Makefile.am:
1251	* clutter/cogl/gl/cogl.c:
1252	* clutter/cogl/gles/Makefile.am:
1253	* clutter/cogl/gles/cogl-texture.c:
1254	* clutter/cogl/gles/cogl.c: Add a new color-type, to be used by
1255	COGL. CoglColor is optimized to allow the minimum amount of
1256	conversions possible for both GL and GLES implementations.
1257
1258	* clutter/clutter-actor.c:
1259	* clutter/clutter-clone-texture.c:
1260	* clutter/clutter-entry.c:
1261	* clutter/clutter-main.c:
1262	* clutter/clutter-rectangle.c:
1263	* clutter/clutter-stage.c:
1264	* clutter/clutter-texture.c: Use CoglColor when needed.
1265
1266	* clutter/pango/pangoclutter-render.c: Use CoglColor when needed.
1267
1268	* doc/reference/cogl/cogl-docs.sgml:
1269	* doc/reference/cogl/cogl-sections.txt: Update the documentation.
1270
1271	* tests/test-cogl-offscreen.c:
1272	* tests/test-cogl-primitives.c:
1273	* tests/test-cogl-tex-convert.c:
1274	* tests/test-cogl-tex-foreign.c:
1275	* tests/test-cogl-tex-getset.c:
1276	* tests/test-cogl-tex-polygon.c:
1277	* tests/test-cogl-tex-tile.c:
1278	* tests/test-paint-wrapper.c: Update the tests.
1279
1280	* README: Update release notes.
1281
12822008-10-30  Emmanuele Bassi  <ebassi@linux.intel.com>
1283
1284	Bug 1209 - Move fixed point API in COGL
1285
1286	* clutter/cogl/cogl-fixed.h:
1287	* clutter/cogl/cogl.h.in:
1288	* clutter/cogl/common/Makefile.am:
1289	* clutter/cogl/common/cogl-fixed.c: Add fixed point API, modelled
1290	after the ClutterFixed. The CoglFixed API supercedes the ClutterFixed
1291	one and avoids the dependency of COGL on Clutter's own API.
1292
1293	* clutter/cogl/common/cogl-clip-stack.c:
1294	* clutter/cogl/common/cogl-primitives.c:
1295	* clutter/cogl/common/cogl-primitives.h: Update internal usage of
1296	ClutterFixed to CoglFixed.
1297
1298	* clutter/cogl/gl/Makefile.am:
1299	* clutter/cogl/gl/cogl-primitives.c:
1300	* clutter/cogl/gl/cogl-texture.c:
1301	* clutter/cogl/gl/cogl.c: Ditto, in the GL implementation of the
1302	COGL API.
1303
1304	* clutter/cogl/gles/Makefile.am:
1305	* clutter/cogl/gles/cogl-fbo.c:
1306	* clutter/cogl/gles/cogl-gles2-wrapper.c:
1307	* clutter/cogl/gles/cogl-primitives.c:
1308	* clutter/cogl/gles/cogl-texture.c:
1309	* clutter/cogl/gles/cogl.c: Ditto, in the GLES implementation of
1310	the COGL API.
1311
1312	* clutter/pango/pangoclutter-glyph-cache.c:
1313	* clutter/pango/pangoclutter-glyph-cache.h: Ditto, in the Pango
1314	renderer glyphs cache.
1315
1316	* clutter/clutter-fixed.c:
1317	* clutter/clutter-fixed.h: ClutterFixed and related API becomes
1318	a simple transition API for bindings and public Clutter API.
1319
1320	* clutter/clutter-actor.c:
1321	* clutter/clutter-alpha.c:
1322	* clutter/clutter-backend.c:
1323	* clutter/clutter-behaviour-depth.c:
1324	* clutter/clutter-behaviour-ellipse.c:
1325	* clutter/clutter-behaviour-path.c:
1326	* clutter/clutter-behaviour-rotate.c:
1327	* clutter/clutter-behaviour-scale.c:
1328	* clutter/clutter-clone-texture.c:
1329	* clutter/clutter-color.c:
1330	* clutter/clutter-entry.c:
1331	* clutter/clutter-stage.c:
1332	* clutter/clutter-texture.c:
1333	* clutter/clutter-timeline.c:
1334	* clutter/clutter-units.h: Move from the internal usage of
1335	ClutterFixed to CoglFixed.
1336
1337	* doc/reference/clutter/clutter-sections.txt:
1338	* doc/reference/cogl/cogl-docs.sgml:
1339	* doc/reference/cogl/cogl-sections.txt: Update the documentation.
1340
1341	* tests/test-cogl-tex-tile.c:
1342	* tests/test-project.c: Fix tests after the API change
1343
1344	* README: Add release notes.
1345
13462008-10-29  Neil Roberts  <neil@linux.intel.com>
1347
1348	Bug 1074 - FBOs on GLES
1349
1350	* clutter/cogl/gles/cogl-fbo.c: Copy the code from gl/cogl-fbo but
1351	use the API calls directly instead of loading an extension because
1352	it is part of the core in GLES 2.
1353
1354	* clutter/cogl/gles/cogl.c (_cogl_features_init): Report
1355	COGL_FEATURE_OFFSCREEN.
1356
1357	* clutter/cogl/gles/cogl-fbo.h (CoglFbo): Add gl_stencil_handle.
1358
1359	* clutter/cogl/gles/cogl-context.h (CoglContext): Add
1360	viewport_store
1361
1362	* tests/test-fbo.c (make_shader): Conditionally use the GLES 2
1363	names of the shader variables
1364
13652008-10-29  Neil Roberts  <neil@linux.intel.com>
1366
1367	Bug 1206 - Picking disabled dithering
1368
1369	* clutter/clutter-main.c (_clutter_do_pick): After picking is
1370	finished, restore the state of glEnable (GL_DITHER). Otherwise it
1371	will cause the scene to look different after the first pick on low
1372	depth displays. (Thanks to Michael Boccara for the patch)
1373
13742008-10-28  Thomas Wood  <thomas@linux.intel.com>
1375
1376	* clutter/clutter-color.c (param_color_set_default): Set the no copy
1377	flag when setting the default param spec value to prevent invalid
1378	frees.
1379
13802008-10-27  Neil Roberts  <neil@linux.intel.com>
1381
1382	Bug 1189 - Backface culling
1383
1384	* clutter/cogl/gl/cogl-texture.c (cogl_texture_polygon)
1385	(_cogl_texture_quad_sw, _cogl_texture_quad_hw):
1386	* clutter/cogl/gles/cogl-texture.c (cogl_texture_polygon)
1387	(_cogl_texture_quad_sw, _cogl_texture_quad_hw): Enable backface
1388	culling in GL if it is requested.
1389
1390	* clutter/cogl/gles/cogl-texture.c (_cogl_texture_quad_sw)
1391	(_cogl_texture_quad_hw):
1392	* clutter/cogl/gl/cogl-texture.c (_cogl_texture_quad_sw)
1393	(_cogl_texture_quad_hw): Reorder the
1394	vertices so that they are counter-clockwise.
1395
1396	* clutter/cogl/gles/cogl-context.h (CoglContext):
1397	* clutter/cogl/gl/cogl-context.h (CoglContext): Added a flag to
1398	store whether backface culling is currently enabled.
1399
1400	* clutter/cogl/gles/cogl.c (cogl_enable_backface_culling):
1401	* clutter/cogl/gl/cogl.c (cogl_enable_backface_culling): New
1402	function
1403
1404	* doc/reference/cogl/cogl-sections.txt: Add
1405	cogl_enable_backface_culling
1406
14072008-10-27  Neil Roberts  <neil@linux.intel.com>
1408
1409	Bug 1196 - Texture border drawing problems
1410
1411	* clutter/cogl/gl/cogl-texture.c (_cogl_texture_upload_subregion_to_gl)
1412	(_cogl_texture_upload_to_gl):
1413
1414	* clutter/cogl/gles/cogl-texture.c (_cogl_texture_upload_to_gl)
1415	(_cogl_texture_upload_subregion_to_gl):
1416
1417	When uploading data to a sliced texture, fill the waste pixels
1418	with copies of the edge of the real texture data. Otherwise the
1419	value of the waste pixels are undefined so it will show artifacts
1420	when the texture is scaled with GL_LINEAR and the pixels are
1421	blended in.
1422
14232008-10-22  Thomas Wood  <thomas@linux.intel.com>
1424
1425	* tests/test-actors.c: Don't adjust the radius based on the number of
1426	actors
1427
14282008-10-21  Emmanuele Bassi  <ebassi@linux.intel.com>
1429
1430	* clutter/clutter-color.[ch] (clutter_value_set_color): Constify
1431	colors and values where needed.
1432
14332008-10-21  Emmanuele Bassi  <ebassi@linux.intel.com>
1434
1435	Bug 1197 - Missing const for clutter_init_with_args *
1436
1437	* clutter/clutter-main.[ch] (clutter_init_with_args): Constify
1438	the string parameters. (Owen Taylor)
1439
14402008-10-20  Emmanuele Bassi  <ebassi@linux.intel.com>
1441
1442	* configure.ac: Use gmodule-no-export-2.0, not gmodule-2.0,
1443	to avoid breaking the symbol hiding. (thanks to Ross Burton
1444	and Laurent Bigonville)
1445
14462008-10-20  Neil Roberts  <neil@linux.intel.com>
1447
1448	Bug 1043 - COGL calls glTexSubImage2D() with out-of-bounds
1449	values (SIGSEGV)
1450
1451	* clutter/cogl/gl/cogl-texture.c
1452	(_cogl_texture_upload_subregion_to_gl): When iterating over the
1453	slices, discard ones that don't intersect immediatly otherwise it
1454	will call glTexSubImage2D with a negative width/height and then
1455	move the source position incorrectly. Thanks to Gwenole
1456	Beauchesne.
1457
14582008-10-20  Emmanuele Bassi  <ebassi@linux.intel.com>
1459
1460	* clutter/clutter-color.h: Declare clutter_color_new() in the
1461	installed header.
1462
14632008-10-20  Neil Roberts  <neil@linux.intel.com>
1464
1465	Bug 1195 - ClutterBehaviourBspline only works for very short paths
1466
1467	* clutter/clutter-behaviour-bspline.c: Changed the CBZ_T_POW3 and
1468	CBZ_T_MUL functions so that they preserve more of the least
1469	significant bits. This fixes some of the jaggy behaviour with
1470	longer paths.
1471
14722008-10-17  Thomas Wood  <thomas@linux.intel.com>
1473
1474	reviewed by: Emmanuele Bassi <ebassi@linux.intel.com>
1475
1476	* clutter/clutter-color.[ch]: Add GParamSpec and GValue integration
1477	for ClutterColor. With ClutterParamSpecColor it is possible to define
1478	color properties; with the GValue integration it's possible to
1479	automatically transform strings into colors and vice versa.
1480
1481	(clutter_color_free): Allow NULL parameter to match other boxed
1482	types destructors.
1483
1484	(clutter_color_new): Add a constructor for the ClutterColor boxed
1485	type, mostly for bindings.
1486
14872008-10-17  Emmanuele Bassi  <ebassi@linux.intel.com>
1488
1489	* clutter/clutter-color.c (clutter_color_parse): Add checks
1490	for the arguments, to avoid trying to parse NULL strings.
1491
14922008-10-16  Emmanuele Bassi  <ebassi@linux.intel.com>
1493
1494	* clutter/clutter-container.[ch]: Add checks to the Container
1495	interface invocation methods, to avoid crashing or corrupting
1496	the stack when an actor does not implement every virtual
1497	function of the Container interface vtable. GObject allows this
1498	to happen so we must handle the case gracefully. This also means
1499	that we can classify some virtual function as mandatory (as is
1500	the case for ::add, ::remove and ::foreach) and some other
1501	optional.
1502
15032008-10-08  Emmanuele Bassi  <ebassi@linux.intel.com>
1504
1505	* tests/test-depth.c (raise_top), (main): Fix a shadowing
1506	with raise() from signal.h.
1507
15082008-10-01  Øyvind Kolås  <pippin@linux.intel.com>
1509
1510	Bug 1108 - Enter/Leave events logics wrt. skipped motion events
1511
1512	Handle dropped motion events when computing crossing events,
1513	based on a patch from Gwenole Beauchesne.
1514
1515	* clutter/clutter-main.c: (clutter_event_get_device): internal static
1516	utility function.
1517	(clutter_do_event): generate enter/leave events for all pointer
1518	events.
1519	(generate_enter_leave_events): modified enter/leave events generator
1520	to work for all pointer event types. Enter/leave events are now
1521	delivered before the motion/button event that caused the crossing to
1522	happen.
1523	* clutter/clutter-event.c: (clutter_event_copy), (clutter_event_free):
1524	removed reference counting logic that is not needed when the crossing
1525	events are directly delivered.
1526
15272008-09-29  Emmanuele Bassi  <ebassi@linux.intel.com>
1528
1529	* configure.ac: Post branch bump to 0.9.0
1530
15312008-09-25  Emmanuele Bassi  <ebassi@linux.intel.com>
1532
1533	* configure.ac: Post release bump to 0.8.3
1534
1535======== Release 0.8.2 ========================================================
1536
15372008-09-25  Emmanuele Bassi  <ebassi@linux.intel.com>
1538
1539	* configure.ac:
1540	* README:
1541	* NEWS: Release 0.8.2
1542
15432008-09-25  Emmanuele Bassi  <ebassi@linux.intel.com>
1544
1545	* clutter/clutter-event.h: Fix missing documentation.
1546
15472008-09-24  Emmanuele Bassi  <ebassi@linux.intel.com>
1548
1549	Bug 1130 - CLUTTER_MOTION is not emitted when time goes backwards.
1550
1551	* clutter/clutter-main.c (clutter_do_event): Check for time
1552	rollbacks inside the motion event throttling. (Pierce Liu)
1553
15542008-09-23  Emmanuele Bassi  <ebassi@linux.intel.com>
1555
1556	* clutter/clutter-timeout-pool.c: Reword previous commit.
1557
15582008-09-23  Emmanuele Bassi  <ebassi@linux.intel.com>
1559
1560	* clutter/clutter-timeout-pool.c:
1561	(clutter_timeout_pool_new): Fix previous commit: g_source_unref()
1562	is not needed. (Thanks to Neil Roberts)
1563
15642008-09-23  Emmanuele Bassi  <ebassi@linux.intel.com>
1565
1566	Bug 1154 - clutter_timeout_pool_new() documentation doesn't say
1567	how to free
1568
1569	* clutter/clutter-timeout-pool.c: Update the documentation to
1570	note that you must use g_source_unref() to free the timeout
1571	pool. (Murray Cumming)
1572
15732008-09-23  Emmanuele Bassi  <ebassi@linux.intel.com>
1574
1575	Bug 1124 - Clutter causes an additional size request in each
1576	allocation
1577
1578	* clutter/clutter-actor.c:
1579	(clutter_actor_store_old_geometry): Store the allocation instead
1580	of causing a new size-request cycle. (Johan Bilien)
1581
15822008-09-23  Emmanuele Bassi  <ebassi@linux.intel.com>
1583
1584	Bug 1125 - Save an extra pango_layout_get_size in many cases
1585
1586	* clutter/clutter-label.c:
1587	(clutter_label_create_layout_no_cache): Add a simple check
1588	before calling pango_layout_get_size(). (Johan Bilien)
1589
15902008-09-23  Emmanuele Bassi  <ebassi@linux.intel.com>
1591
1592	* clutter/clutter-alpha.c:
1593	(clutter_alpha_get_alpha): Do not return the cached value but
1594	just compute the current alpha value. The use case is pretty
1595	much straightforward: stop a timeline, advance it, and retrieve
1596	the alpha value before starting the timeline to adjust an
1597	animation dependent on the alpha. Caching the alpha value is
1598	not needed because the behaviours will always pass the alpha
1599	value inside the ::alpha-notify virtual function anyway, so
1600	there is no need for them to call clutter_alpha_get_alpha().
1601
1602	This change makes it also possible to reliably unit-test
1603	ClutterAlpha.
1604
1605	(timeline_new_frame_cb): Call clutter_alpha_get_alpha().
1606
16072008-09-23  Tomas Frydrych  <tf@linux.intel.com>
1608
1609	* clutter/clutter-main.c:
1610	* clutter/clutter-main.h:
1611	* clutter/clutter-private.h:
1612	* clutter/x11/clutter-backend-x11.c:
1613	(clutter_get_option_group_without_init):
1614	Function to obtain clutter option group without opening display
1615	(for use with foreign display and gtk_clutter_init). Bug 1033.
1616
1617	Stripped trailing whitespace.
1618
16192008-09-22  Neil Roberts  <neil@linux.intel.com>
1620
1621	Bug 856 - Teardown sequence is borked
1622
1623	* clutter/clutter-main.c: Don't free the ClutterMainContext so
1624	that the main loop can be restarted.
1625
1626	* clutter/eglx/clutter-backend-egl.c:
1627	* clutter/eglnative/clutter-backend-egl.c: Register an atexit
1628	handler which disposes the backend object so that we are still
1629	guaranteed to call eglTerminate on GLES.
1630
16312008-09-22  Neil Roberts  <neil@linux.intel.com>
1632
1633	* tests/test-unproject.c (on_event):
1634	* tests/test-project.c (on_event): Use a return value for the
1635	'event' signal handler, otherwise it might accidentally return
1636	TRUE for unhandled events and you won't be able to close the
1637	window.
1638
16392008-09-19  Emmanuele Bassi  <ebassi@linux.intel.com>
1640
1641	Bug 1033 - Manually parsing command line options prevents
1642	initializing clutter
1643
1644	* clutter/clutter-main.c:
1645	(post_parse_hook), (clutter_init_with_args),
1646	(clutter_parse_args), (clutter_init): Move the initialization
1647	of Clutter at the end of the post-parse hook of Clutter's
1648	GOptionGroup. Clutter must be initialized at the end of the
1649	argument parsing.
1650
16512008-09-19  Emmanuele Bassi  <ebassi@linux.intel.com>
1652
1653	* clutter/clutter-main.c: Properly document the
1654	clutter_get_option_group() function and the invariant that
1655	after parsing Clutter's option group the library will be
1656	initialized. (Thanks to Tomas Frydrych for pointing this
1657	out)
1658
16592008-09-19  Emmanuele Bassi  <ebassi@linux.intel.com>
1660
1661	* clutter/x11/clutter-backend-x11.c: Properly document the
1662	usage of clutter_x11_set_display().
1663
1664	* clutter/x11/clutter-x11.h: clutter_x11_set_display() is
1665	public API and should be declared in the header we install.
1666
16672008-09-18  Neil Roberts  <neil@linux.intel.com>
1668
1669	Bug 1048 - SIGFPE in cogl_texture_set_region() with nvidia
1670
1671	* clutter/cogl/gl/cogl-texture.c (cogl_texture_set_region):
1672	* clutter/cogl/gles/cogl-texture.c (cogl_texture_set_region):
1673	Don't attempt to upload any data if the width or height of the
1674	subregion is zero. Thanks to Gwenole Beauchesne.
1675
16762008-09-18  Neil Roberts  <neil@linux.intel.com>
1677
1678	Bug 1044 - cogl_get_viewport error
1679
1680	* clutter/cogl/gles/cogl.c (cogl_get_viewport): Use glGetIntegerv
1681	instead of glGetFixedv to read the viewport because the latter
1682	converts incorrectly on some hardware.
1683
16842008-09-18  Neil Roberts  <neil@linux.intel.com>
1685
1686	Bug 1080 - clutter_stage_read_pixels has upside-down y coordinate
1687
1688	* clutter/clutter-stage.c (clutter_stage_read_pixels): Use
1689	OpenGL's coordinate system for the arguments to glReadPixels (so
1690	that y zero is the bottom of the window). Use clutter_redraw
1691	instead of clutter_stage_paint to ensure the right GL context is
1692	selected. Set some of the glPixelStore parameters that might have
1693	been changed by Cogl.
1694
1695	* tests/test-stage-read-pixels.c: Replace with a different test
1696	that gets a sub-region of the stage around the cursor.
1697
16982008-09-17  Neil Roberts  <neil@linux.intel.com>
1699
1700	Bug 1145 - Flicker on resize the window
1701
1702	* clutter/glx/clutter-stage-glx.c (clutter_stage_glx_realize):
1703	Don't set a backing pixel on the X window. Otherwise when the
1704	window resizes it will flicker when X paints the background
1705	immediatly before Clutter repaints the whole stage.
1706
17072008-09-17  Neil Roberts  <neil@linux.intel.com>
1708
1709	* clutter/clutter-types.h: Swap left and right in the
1710	documentation for ClutterGravity.
1711
17122008-09-17  Neil Roberts  <neil@linux.intel.com>
1713
1714	Bug 1121 - Setting anchor point doesn't work if set too early
1715
1716	* clutter/clutter-actor.c
1717	(clutter_actor_set_anchor_point_from_gravity)
1718	(clutter_actor_move_anchor_point_from_gravity): Add documentation
1719	to make it clear that the anchor point won't move when the actor
1720	is resized.
1721
17222008-09-16  Neil Roberts  <neil@linux.intel.com>
1723
1724	Bug 1100 - WM_SIZE not handled correctly, user_resize and
1725	window_style correction.
1726
1727	* clutter/win32/clutter-stage-win32.c (get_window_style): Remove
1728	the WS_MAXIMIZEBOX style if the stage isn't resizable.
1729	(clutter_stage_win32_set_user_resize): Queue a redraw of the
1730	window frame when the user_resize property is changed.
1731
1732	* clutter/win32/clutter-event-win32.c (message_translate): Don't
1733	update the size of the stage when handling WM_SIZE messages that
1734	result from the stage being minimized. Thanks to Roman Yazmin.
1735
17362008-09-16  Tomas Frydrych  <tf@linux.intel.com>
1737
1738	* clutter/glx/clutter-glx-texture-pixmap.c:
1739	* clutter/x11/clutter-x11-texture-pixmap.c:
1740	TFP resyncing on MapNotify/ConfigureNotify (bug  1020; patch by
1741	Andy Wingo <wingo@pobox.com>).
1742
17432008-09-15  Øyvind Kolås  <pippin@linux.intel.com>
1744
1745	* clutter/clutter-main.c: amended typo in gtk-doc.
1746
17472008-09-12  Neil Roberts  <neil@linux.intel.com>
1748
1749	Bug 1034 - Picking doesn't work on Eee PC
1750
1751	* clutter/clutter-main.c (_clutter_id_to_color): When choosing a
1752	pick color, set all but the most significant of the unused
1753	bits. This should make make it more likely that the GL
1754	implementation will round down to the right value.
1755
1756	* tests/test-pick.c: Test case for picking. It creates 192 actors
1757	at known positions and stores their gids. It then calls
1758	clutter_stage_get_actor_at_pos with each position to check that
1759	the right gid is returned.
1760
1761	* tests/Makefile.am (noinst_PROGRAMS): Add test-pick
1762
17632008-09-12  Neil Roberts  <neil@linux.intel.com>
1764
1765	Bug 1010 - ClutterLabel does not update the layout (again)
1766
1767	* clutter/clutter-label.c: Bring back layout caching. This time it
1768	will cache up to three different layouts. The width for which each
1769	layout was generated is stored so that if the same width is
1770	requested again it can use the cached version. If no cached
1771	version is available it will try to replace the oldest
1772	layout. 'Age' is determined by a counter which is incremented
1773	every time a layout is created. The cache is cleared after any
1774	property changes that might affect the layout.
1775	(struct _ClutterLabelPrivate): Removed extents_width,
1776	extents_height and context because they weren't used anywhere.
1777
1778	* tests/test-label-cache.c: Add a test which checks whether the
1779	label is using a different layout when properties are
1780	changed. Also compares the extents of the label's layout with an
1781	independent layout and fails if they aren't the same.
1782
1783	* tests/Makefile.am (noinst_PROGRAMS): Add test-label-cache
1784
17852008-09-10  Neil Roberts  <neil@o-hand.com>
1786
1787	Bug 1137 - Setting the anchor point does not trigger a re-paint
1788
1789	* clutter/clutter-actor.c (clutter_actor_set_property): When
1790	changing the anchor point properties, use set_anchor_pointu
1791	instead of changing the value directly so that a redraw will be
1792	queued.
1793	(clutter_actor_set_anchor_pointu): Queue a redraw when the anchor
1794	point is changed. Thanks to Johan Bilien.
1795
17962008-08-27  Emmanuele Bassi  <ebassi@openedhand.com>
1797
1798	Bug 1082 - Texture bitmap is destroyed in wrong way
1799
1800	* clutter/cogl/common/cogl-bitmap-pixbuf.c:
1801	(_cogl_bitmap_from_file): Make a copy of the pixbuf data in
1802	the internal image loader so that we can keep working under
1803	the assumption that we are using the GLib memory allocation
1804	and deallocation functions.
1805
18062008-08-27  Emmanuele Bassi  <ebassi@openedhand.com>
1807
1808	Bug 1099 - No ClutterScript API to get a list of IDs in a given file
1809
1810	* clutter/clutter-script.[ch]: Add clutter_script_list_objects(),
1811	a function for retrieving all the objects built by a ClutterScript
1812	instance. (Based on a patch by Noah Gibbs)
1813
18142008-08-26  Emmanuele Bassi  <ebassi@openedhand.com>
1815
1816	Bug 1090 - Label somtimes returns natural_width < min_width
1817
1818	* clutter/clutter-label.c:
1819	(clutter_label_get_preferred_width): Check that the width of the
1820	layout is always greater than 0. (Johan Bilien)
1821
18222008-08-19  Neil Roberts  <neil@o-hand.com>
1823
1824	Bug 1103 - Two typos in clutter documentation
1825
1826	* doc/reference/clutter/subclassing-ClutterActor.xml: Update the
1827	custom actor example since the Cogl API was changed to namespace
1828	all of the path related functions in cogl_path_*. Thanks to Nati
1829	Berkover.
1830
1831	* clutter/clutter-score.c: Add missing parameter in example of
1832	calling clutter_score_start().
1833
18342008-08-18  Neil Roberts  <neil@o-hand.com>
1835
1836	Bug 1085 - Cursor is in wrong position on ClutterEntry if set
1837	x-align property
1838
1839	* clutter/clutter-entry.c (clutter_entry_paint): When calculating
1840	the position to draw the cursor at, take into account the
1841	alignment of the text. Queue a redraw when the x-align property is
1842	changed.
1843
18442008-08-07  Neil Roberts  <neil@o-hand.com>
1845
1846	Bug 1091 - WM_MOUSEWHEEL (scroll-event) not handled correctlly
1847
1848	* clutter/win32/clutter-event-win32.c (message_translate): The
1849	coordinates in a WM_MOUSEWEEL message are given relative to the
1850	screen so they need to be converted to client coordinates before
1851	use. Thanks to Roman Yazmin.
1852
18532008-08-06  Emmanuele Bassi  <ebassi@openedhand.com>
1854
1855	* clutter/clutter-child-meta.c:
1856	(clutter_child_meta_set_property),
1857	(clutter_child_meta_class_init): Make the :container and
1858	:actor properties of ChildMeta construct-only, to allow
1859	bindings to actually use ChildMeta without abusing the API.
1860
1861	* clutter/clutter-container.c (create_child_meta): Instead of
1862	setting the members of the ChildMeta structure, use the
1863	constructor properties.
1864
18652008-08-04  Emmanuele Bassi  <ebassi@openedhand.com>
1866
1867	* clutter/clutter-keysyms.h: Resync with keysymdef.h inside Xorg.
1868
18692008-08-04  Emmanuele Bassi  <ebassi@openedhand.com>
1870
1871	* clutter/clutter-script.c:
1872	(clutter_script_default_connect): Improve wording and debug
1873	messages in the default autoconnection for signal handlers.
1874
18752008-08-04  Emmanuele Bassi  <ebassi@openedhand.com>
1876
1877	* clutter/clutter-script-parser.c:
1878	* clutter/clutter-script-private.h: Clean up the code; add a
1879	conversion function for reading a ClutterColor out of a
1880	JSON object or array definition.
1881
1882	* clutter/clutter-script.c: Clean up the code; document properly
1883	how we translate from type name to type function.
1884
18852008-08-04  Emmanuele Bassi  <ebassi@openedhand.com>
1886
1887	* clutter/clutter-main.c: Rework and improve the documentation
1888	of the thread-safe timeout and idle source installer functions.
1889
18902008-08-01  Neil Roberts  <neil@o-hand.com>
1891
1892	Bug 945 - Clipping+fbo cloning bugs
1893
1894	* clutter/cogl/gl/cogl.c:
1895	* clutter/cogl/gles/cogl.c:
1896	* clutter/cogl/cogl.h.in: Add cogl_clip_stack_save,
1897	cogl_clip_stack_restore, cogl_viewport and cogl_frustum.
1898
1899	* clutter/cogl/gl/cogl-fbo.h:
1900	* clutter/cogl/gl/cogl-fbo.c: Try to attach a stencil buffer when
1901	creating an FBO.
1902
1903	* clutter/cogl/common/cogl-clip-stack.c: Add functions to save and
1904	restore the whole state of the stack.
1905
1906	* clutter/clutter-texture.c (clutter_texture_paint): When
1907	rendering the FBO source, setup a temporary asymmetric perspective
1908	projection matrix to render it as it would appear on screen.
1909
1910	* clutter/clutter-private.h:
1911	* clutter/clutter-actor.c
1912	(_clutter_actor_apply_modelview_transform_recursive): No longer
1913	static and exported in clutter-private.h
1914
19152008-08-01  Neil Roberts  <neil@o-hand.com>
1916
1917	Bug 1071 - clutter_timeline_get_duration doesn't always work
1918
1919	* clutter/clutter-timeline.c: Calculate the 'duration' property
1920	on-demand instead of storing it as a member variable. Notify
1921	duration property changes whenever the fps or num_frames changes.
1922
19232008-08-01  Neil Roberts  <neil@o-hand.com>
1924
1925	Bug 1069 - Warnings with ClutterScore
1926
1927	* clutter/clutter-score.c (clutter_score_is_playing): Check
1928	whether priv->running_timelines is NULL before checking its
1929	length.
1930	(foreach_running_timeline): Remove the completed signal handler
1931	when stopping the score. Otherwise the completed callback will get
1932	called multiple times if the timeline is started later.
1933
19342008-07-31  Neil Roberts  <neil@o-hand.com>
1935
1936	Bug 1075 - Difficult to bind clutter_stage_new
1937
1938	* clutter/clutter-stage.c (clutter_stage_dispose): Unrealize the
1939	stage before removing the update idle handler. Otherwise
1940	unrealizing causes another redraw to be queued and if the stage
1941	object remains alive it will cause an assert and abort.
1942
19432008-07-30  Neil Roberts  <neil@o-hand.com>
1944
1945	* clutter/clutter-stage.c (clutter_stage_class_init): Added the
1946	'perspective' property. All of the machinery was there to
1947	implement the property but somehow the call that actually installs
1948	it was missing.
1949
19502008-07-30  Emmanuele Bassi  <ebassi@openedhand.com>
1951
1952	* clutter/clutter-fixed.h:
1953	* clutter/clutter-units.h: Fix the upper and lower boundaries of
1954	ClutterFixed and ClutterUnit types; G_MAXINT16 and G_MININT16
1955	were not enough to describe those values.
1956
19572008-07-30  Ross Burton  <ross@openedhand.com>
1958
1959	* clutter/clutter-main.c:
1960	Destroy the debugging timer when the context is freed.
1961
1962	* clutter/clutter-stage.c:
1963	Free the stage title when the stage is finalized.
1964
19652008-07-30  Neil Roberts  <neil@o-hand.com>
1966
1967	* clutter/clutter-model.c (clutter_model_set_sorting_column): This
1968	function is supposed to accept -1 to disable sorting. However it
1969	checks for whether the column is >= the number of columns, but
1970	clutter_model_get_n_columns() returns an unsigned int so the
1971	column number also gets promoted to unsigned for the
1972	comparison. Therefore -1 is always greater than the number of
1973	columns so it wouldn't let you set it.
1974
19752008-07-26  Neil Roberts  <neil@o-hand.com>
1976
1977	* clutter/clutter-timeline.c (clutter_timeline_list_markers): When
1978	requesting the list of markers it was returning the marker data as
1979	a string instead of the name so it was copying garbage.
1980
19812008-07-25  Neil Roberts  <neil@o-hand.com>
1982
1983	* clutter/clutter-actor.c (clutter_actor_remove_clip)
1984	(clutter_actor_set_clipu): Queue a redraw when the clip is
1985	changed.
1986
19872008-07-24  Neil Roberts  <neil@o-hand.com>
1988
1989	* clutter/clutter-script.c: The example in the documentation
1990	showed a color being specified as '0xff0000ff' but it should be
1991	'#ff0000ff'
1992
19932008-07-23  Emmanuele Bassi  <ebassi@openedhand.com>
1994
1995	Bug 1062 - clutter_actor_query_coords() replacement in 0.8
1996
1997	* clutter/clutter-deprecated.h: Fix the deprecation warning
1998	for clutter_actor_query_coords(). (Gwenole Beauchesne)
1999
20002008-07-17  Emmanuele Bassi  <ebassi@openedhand.com>
2001
2002	Bug 1047 -  API documentation from release tarball is not
2003		    installed by "make install"
2004
2005	* configure.ac:
2006	* Makefile.am: Make the recursion into the documentation
2007	directory depend on on whether we explicitly enable it or
2008	if we are not inside an SVN checkout.
2009
20102008-07-17  Neil Roberts  <neil@o-hand.com>
2011
2012	* clutter/clutter-texture.c:
2013	* clutter/clutter-rectangle.c:
2014	* clutter/clutter-group.c:
2015	* clutter/clutter-entry.c:
2016	* clutter/clutter-clone-texture.c: Remove unnecessary calls to
2017	cogl_{push,pop}_matrix. The matrix is preserved in
2018	clutter_actor_paint whenever the actor's transformation is applied
2019	so there should be no need to push the matrix in actor paint
2020	implementations unless it does some additional transformations
2021	itself.
2022
20232008-07-16  Emmanuele Bassi  <ebassi@openedhand.com>
2024
2025	* clutter.pc.in: Add a variable containing the COGL backend
2026	inside the pkg-config file, for configure-time checks.
2027
20282008-07-14  Neil Roberts  <neil@o-hand.com>
2029
2030	* clutter/cogl/common/cogl-primitives.c (cogl_path_rel_curve_to):
2031	Fixed a typo in the second parameter which meant the curve was
2032	drawn incorrectly.
2033
20342008-07-14  Emmanuele Bassi  <ebassi@openedhand.com>
2035
2036	* clutter/clutter.h: Include missing installed files.
2037
20382008-07-14  Tomas Frydrych  <tf@openedhand.com>
2039
2040	* clutter/clutter-stage.c:
2041	(clutter_stage_hide_cursor):
2042	Fixed C&P bug that made it impossible to show cursor once hidden.
2043
2044	Stripped trailing whitespace.
2045
20462008-07-13  Matthew Allum  <mallum@openedhand.com>
2047
2048	* clutter/x11/clutter-x11-texture-pixmap.c:
2049	Call XSync in unredirect X error trap (Thanks to Andy Wingo)
2050
20512008-07-13  Neil Roberts  <neil@o-hand.com>
2052
2053	* build/mingw/mingw-cross-compile.sh: Avoid using the --strip
2054	option to tar because it isn't supported in the version shipped
2055	with MSYS.
2056
20572008-07-11  Tomas Frydrych  <tf@openedhand.com>
2058
2059	* clutter/clutter-fixed.c:
2060	Move G_IMPLEMENT_INLINES before all other #include statements (bug
2061	#1038).
2062
20632008-07-11  Tomas Frydrych  <tf@openedhand.com>
2064
2065	* clutter/clutter-fixed.c:
2066	Changed #define G_IMPLEMENTS_INLINES to G_IMPLEMENT_INLINES (bug
2067	#1038).
2068
20692008-07-10  Emmanuele Bassi  <ebassi@openedhand.com>
2070
2071	* configure.ac: Post release bump to 0.3.1.
2072
2073======== Release 0.8.0 ========================================================
2074
20752008-07-10  Emmanuele Bassi  <ebassi@openedhand.com>
2076
2077	* configure.ac:
2078	* NEWS: Release 0.8.0.
2079
20802008-07-10  Matthew Allum  <mallum@openedhand.com>
2081
2082	* clutter/cogl/gles/cogl-fbo.c:
2083	* clutter/cogl/gles/cogl-texture.c:
2084	Fix warnings with eglnative build
2085
20862008-07-10  Matthew Allum  <mallum@openedhand.com>
2087
2088	* README:
2089	Sync up/improve ready for 0.8 release.
2090
2091	* AUTHORS:
2092	Sync up to date - hope I havn't missed anyone..
2093
20942008-07-10  Matthew Allum  <mallum@openedhand.com>
2095
2096	* clutter/glx/clutter-glx-texture-pixmap.c:
2097	Assume TFP npots sized textures are always supported if TFP ext is!
2098	(Based on patch from James Ketrenos)
2099
21002008-07-08  Matthew Allum  <mallum@openedhand.com>
2101
2102	Bug 1011 - Fix TFP fallback mechanism (take 2)
2103
2104	* clutter/glx/clutter-glx-texture-pixmap.c:
2105	* tests/test-pixmap.c:
2106	Slightly modified patch from Gwenole Beauchesne applied
2107	to better handle both falling back to non accelerated tfp
2108	and improvements to the test case.
2109
21102008-07-07  Matthew Allum  <mallum@openedhand.com>
2111
2112	Bug 1016 - Changing window-redirect-automatic property after
2113		   creating ClutterX11TexturePixmap doesn't work.
2114
2115	* clutter/x11/clutter-x11-texture-pixmap.c:
2116	(clutter_x11_texture_pixmap_set_window):
2117	Sync up redirection prop correctly (Jason Tackaberry)
2118
21192008-07-07  Matthew Allum  <mallum@openedhand.com>
2120
2121	Bug 1019 - clutter-frame-source.h not included by clutter.h
2122
2123	* clutter/clutter.h:
2124	Add missing header include.
2125
21262008-07-05  Neil Roberts  <neil@o-hand.com>
2127
2128	* clutter/clutter-actor.h: Remove redundant duplicate declaration
2129	of clutter_actor_allocate_preferred_size
2130
21312008-07-05  Emmanuele Bassi  <ebassi@openedhand.com>
2132
2133	Bug 1033 - Manually parsing command line options prevents
2134		   initializing clutter (Armin Burgmeier)
2135
2136	* clutter/clutter-main.c:
2137	(post_parse_hook), (clutter_init_real): Set the is_initialized
2138	flag inside the real initialization function.
2139
21402008-07-04  Emmanuele Bassi  <ebassi@openedhand.com>
2141
2142	* clutter/clutter-label.c: Properly document the behaviour
2143	of the :alignment property.
2144
21452008-07-04  Neil Roberts  <neil@o-hand.com>
2146
2147	* build/mingw/mingw-cross-compile.sh: Default to the win32 flavour
2148	instead of the SDL flavour
2149
21502008-07-04  Neil Roberts  <neil@o-hand.com>
2151
2152	Bug 1015 - Cloning unparented actors with FBOs doesn't work with
2153	new layout code
2154
2155	* clutter/clutter-texture.c (clutter_texture_new_from_actor): Now
2156	parents the source actor if it doesn't already have a parent so
2157	that it will get an allocation during layout.
2158
2159	* tests/test-fbo.c: One of the tests tries to ensure that the
2160	ClutterTexture clone keeps the source actor alive by derefing
2161	it. However as actors have a floating reference then test-fbo
2162	doesn't have its own reference once the source is parented so
2163	unrefing just steals the parent's reference and causes
2164	badness. The test now claims the floating reference before cloning
2165	the source so that it can safely be unref'd later.
2166
21672008-07-03  Emmanuele Bassi  <ebassi@openedhand.com>
2168
2169	* clutter/x11/Makefile.am: Fix distchecking by adding the
2170	generated enum types files to DISTCLEANFILES.
2171
21722008-07-03  Tomas Frydrych  <tf@openedhand.com>
2173
2174	* clutter/clutter-fixed.h:
2175	* clutter/clutter-fixed.c
2176	Fixed inlining of clutter_qmulx() and clutter_qdivx() (bug 1022).
2177
21782008-07-03  Neil Roberts  <neil@o-hand.com>
2179
2180	* clutter/clutter-shader.c (bind_glsl_shader): Fix a cut-and-paste
2181	error which broke vertex shaders
2182
21832008-07-03  Øyvind Kolås  <pippin@o-hand.com>
2184
2185	* clutter/cogl/common/cogl-bitmap-pixbuf.c:
2186	(_cogl_bitmap_from_file): removed debug g_printf that announces each
2187	successful image load done by the internal image backend.
2188
21892008-07-02  Neil Roberts  <neil@o-hand.com>
2190
2191	* clutter/clutter-actor.c
2192	(clutter_actor_get_abs_allocation_vertices): The initialization of
2193	the local stage pointer got moved away in revision 3081 so it was
2194	crashing if the function is called before the layout is run.
2195
21962008-07-02  Emmanuele Bassi  <ebassi@openedhand.com>
2197
2198	* clutter/clutter-label.c:
2199	(clutter_label_create_layout_no_cache),
2200	(clutter_label_create_layout): Split the layout creation in two
2201	functions: one creating the layout, the other creating the layout
2202	and hitting the glyphs cache. The first one is for the offscren
2203	operations - like requesting the preferred size; the second one
2204	is for paint and allocation.
2205
2206	(clutter_label_allocate): Try to aggressively cache the PangoLayout
2207	between allocations - to avoid recreating it even when the label
2208	just moved because of an animation. See bug #1010.
2209
22102008-07-02  Øyvind Kolås  <pippin@o-hand.com>
2211
2212	* clutter/fruity/clutter-fruity.c: made the multi touch code more
2213	robust. There are situations though where the device seems to stop
2214	generating any touch events until all fingers have been lifted and
2215	a new interaction session is started.
2216
22172008-07-02  Neil Roberts  <neil@o-hand.com>
2218
2219	* clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize):
2220	Use clutter_x11_has_event_retrieval() instead of
2221	!backend_x11->no_xevent_retrieval to reflect the changes to the
2222	GLX backend in revision 3078
2223
22242008-07-02  Emmanuele Bassi  <ebassi@openedhand.com>
2225
2226	Bug 1010 - ClutterLabel does not update the layout (Lee Jusung)
2227
2228	* clutter/clutter-actor.c:
2229	(clutter_actor_queue_relayout): Remove some pointer dereferencing.
2230
2231	* clutter/clutter-label.c:
2232	(clutter_label_allocate): Revert the change of r2883 and remove the
2233	layout width cache and force a recreation of the layout every time
2234	we receive an allocation.
2235
22362008-07-01  Neil Roberts  <neil@o-hand.com>
2237
2238	* clutter/clutter-actor.c (clutter_actor_get_transformed_sizeu):
2239	This is now do-what-I-mean like clutter_actor_get_size so that if
2240	the allocation box is available it will use that, otherwise it
2241	will use the preferred size. clutter_actor_transform_vertices has
2242	been converted to clutter_actor_transform_and_project_box so that
2243	it can be used by both functions. Based on a patch by Emmanuele
2244	Bassi.
2245	(clutter_actor_get_abs_allocation_vertices)
2246	(clutter_actor_get_allocation_vertices): These two functions now
2247	force a relayout if the allocation box is not available.
2248
2249	* tests/test-fbo.c: Fixed the shader to use texture2D instead of
2250	texture2DRect now that GL_EXT_texture_rectangle is no longer used.
2251
22522008-07-01  Chris Lord  <chris@openedhand.com>
2253
2254	* clutter/clutter-stage.c:
2255	Add a note to the clutter_stage_read_pixels doc that the alpha channel
2256	isn't guaranteed to contain sensible data
2257
2258	* tests/test-stage-read-pixels.c: (update_snapshot):
2259	Overwrite the alpha data when using clutter_stage_read_pixels; fixes
2260	this test on non-nvidia drivers
2261
22622008-07-01  Matthew Allum  <mallum@openedhand.com>
2263
2264	* clutter/glx/clutter-stage-glx.c:
2265	* clutter/x11/clutter-backend-x11.c:
2266	* clutter/x11/clutter-backend-x11.h:
2267	* clutter/x11/clutter-event-x11.c:
2268	* clutter/x11/clutter-x11.h:
2269	* tests/test-devices.c:
2270	Disable use of XInput and add an explicit clutter_x11_enable_xinput
2271	to enable it.
2272	Also fix up the x11 pre-init calls to not need g_type_init.
2273
22742008-07-01  Øyvind Kolås  <pippin@o-hand.com>
2275
2276	Bug 1013 - Per device grabs are not obeyed in pointer device
2277		   propagation.
2278
2279	* clutter/clutter-event.c: (clutter_event_get_device_id): swap
2280	arguments of g_return_val_if_fail around.
2281	* clutter/clutter-event.h: added *device field to crossing events as
2282	well.
2283	* clutter/clutter-main.c: (emit_pointer_event): added a device
2284	argument and check for per device grabs if this device is passed.
2285	(clutter_do_event): pass the device if present for all pointer event
2286	emissions.
2287	(generate_enter_leave_events): copy the device from the motion events
2288	when generating enter/leave events.
2289
22902008-07-01  Chris Lord  <chris@openedhand.com>
2291
2292	* clutter/clutter-texture.c:
2293	Correct documentation about accepted pixel formats
2294
2295	* tests/test-stage-read-pixels.c: (main):
2296	Don't try to free a ClutterTexture after main, fixes segfault on quit
2297
22982008-07-01  Emmanuele Bassi  <ebassi@openedhand.com>
2299
2300	* clutter/clutter-behaviour-bspline.h:
2301	* clutter/clutter-behaviour.h:
2302	* clutter/clutter-event.h:
2303	* clutter/clutter-texture.h: Add missing documentation and
2304	change the copyright and licensing notice to use the FSF
2305	website instead of its address. (#512)
2306
23072008-06-30  Matthew Allum  <mallum@openedhand.com>
2308
2309	Bug 1008 - tfp still a bit borked
2310
2311	* clutter/x11/clutter-x11-texture-pixmap.c:
2312	Fix from Andy Wingo for sync_window borkage
2313
23142008-06-30  Neil Roberts  <neil@o-hand.com>
2315
2316	Bug 985 - MSC math.h / M_PI issue
2317
2318	* clutter/cogl/gl/cogl.c (set_clip_plane):
2319	* clutter/clutter-alpha.c (sinc_func): Use G_PI instead of M_PI
2320	because M_PI isn't defined in MSVC without a special
2321	#define. Thanks to Haakon Sporsheim
2322
23232008-06-30  Neil Roberts  <neil@o-hand.com>
2324
2325	* clutter/win32/clutter-backend-win32.c (check_vblank_env): Use
2326	g_ascii_strcasecmp instead of strcasecmp because strcasecmp isn't
2327	available in MSVC.
2328
23292008-06-30  Matthew Allum  <mallum@openedhand.com>
2330
2331	 Bug 1007 - Fix TFP fallback mechanism
2332
2333	* clutter/glx/clutter-glx-texture-pixmap.c:
2334	* clutter/x11/clutter-x11-texture-pixmap.c:
2335	Add some extra safety to glx pixmap creations and tidy up some notes.
2336	Patch from Gwenole Beauchesne.
2337
23382008-06-30  Neil Roberts  <neil@o-hand.com>
2339
2340	* clutter/x11/clutter-event-x11.c:
2341	* clutter/win32/clutter-event-win32.c: Use the HAVE_CONFIG_H guard
2342	around #include "config.h"
2343
23442008-06-30  Emmanuele Bassi  <ebassi@openedhand.com>
2345
2346	* clutter/Makefile.am:
2347	* clutter/eglx/Makefile.am:
2348	* clutter/glx/Makefile.am: Build the X11 base backend before
2349	the backends that depend on it.
2350
23512008-06-30  Emmanuele Bassi  <ebassi@openedhand.com>
2352
2353	Bug 1000 - clutter-x11 should define gtypes for its enumerations
2354
2355	* clutter/x11/Makefile.am:
2356	* clutter/x11/clutter-event-x11.c:
2357	* clutter/x11/clutter-x11-enum-types.c.in:
2358	* clutter/x11/clutter-x11-enum-types.h.in:
2359	* clutter/x11/clutter-x11.h: Add the GTypes for the X11-specific
2360	enumerations, so that they can be used by the bindings. (Andy
2361	Wingo)
2362
23632008-06-30  Chris Lord  <chris@openedhand.com>
2364
2365	* tests/test-shader.c:
2366	Fix edge-detect shader on ATI, thanks Gwenole Beauchesne
2367
23682008-06-30  Matthew Allum  <mallum@openedhand.com>
2369
2370	Bug 997 - automatic updates not working for named TFP pixmaps,
2371		  at least in x11
2372
2373	* clutter/glx/clutter-glx-texture-pixmap.c:
2374	* clutter/glx/clutter-glx-texture-pixmap.h:
2375	* clutter/x11/clutter-backend-x11.c:
2376	* clutter/x11/clutter-x11-texture-pixmap.c:
2377	* clutter/x11/clutter-x11-texture-pixmap.h:
2378	* clutter/x11/clutter-x11.h:
2379	* configure.ac:
2380	* tests/test-pixmap.c:
2381	Rework Andy Wingos patch a little adding more safety for now also
2382	handling redirect Windows (as well as pixmaps)
2383
23842008-06-30  Emmanuele Bassi  <ebassi@openedhand.com>
2385
2386	Bug 980 - cogl-bitmap-fallback.c compiler error/warning due to
2387		  cast issue (Haakon Sporsheim)
2388
2389	* clutter/cogl/common/cogl-bitmap-fallback.c:
2390	(_cogl_unpremult_alpha_last),
2391	(_cogl_unpremult_alpha_first): Cast to avoid a compiler warning
2392	with MSC.
2393
23942008-06-30  Chris Lord  <chris@openedhand.com>
2395
2396	* tests/test-shader.c: (main):
2397	Add a new shader to test-shaders (Sobel operator edge-detect)
2398
23992008-06-30  Øyvind Kolås  <pippin@o-hand.com>
2400
2401	Disable XInput handling for keyboard events, re-enabling key press and
2402	release events when pointer is outside window as well as re-enabling
2403	keyrepeat.
2404
2405	* clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize): select
2406	for KeyPressMask and KeyReleaseMask even with XInput enabled.
2407	* clutter/x11/clutter-backend-x11.c: (_clutter_x11_register_xinput):
2408	Disabled the XInput keyboard code paths (comments and #if 0's)
2409	* clutter/x11/clutter-event-x11.c: (event_translate): always handle
2410	keyboard events without regard to XInput.
2411
24122008-06-29  Matthew Allum  <mallum@openedhand.com>
2413
2414	* clutter/x11/clutter-event-x11.c:
2415	ifdef convert_xdevicekey_to_xkey () with XINPUT check.
2416	(fix via Andy Wingo)
2417
24182008-06-29  Tommi Komulainen  <tommi.komulainen@iki.fi>
2419
2420	* clutter/osx/clutter-osx.h (_clutter_event_osx_put)
2421	* clutter/osx/clutter-event-osx.c (clutter_event_osx_translate,
2422	NSEvent:clutterStage:)
2423	* clutter/osx/clutter-stage-osx.c (EVENT_HANDLER): Since events are
2424	delivered to ClutterGLView, pass the associated ClutterStage directly
2425	to event translation. Avoids relying on being embedded in
2426	ClutterGLWindow, which makes it easier to implement clutter-gtk.
2427
24282008-06-29  Tommi Komulainen  <tommi.komulainen@iki.fi>
2429
2430	* clutter/osx/clutter-event.osx.c (NSEvent:clutterKeyVal:): Add
2431	comment, on OSX backend the Shift modifier is included in 'keyval'
2432	making it identical to 'unicode_value'  Instead of <Shift>a or
2433	<Shift>3 you'd get <Shift>A and <Shift>#
2434
24352008-06-27  Matthew Allum  <mallum@openedhand.com>
2436
2437	* clutter/cogl/gl/cogl.c:
2438	Temp workaround for 10.4 ATI card OSX folks, see #929
2439	(Tommi Komulainen)
2440
2441	Bug 998 - clutter always captures X input events
2442
2443	* clutter/eglx/clutter-stage-egl.c:
2444	* clutter/glx/clutter-stage-glx.c:
2445	When we disable X event retrival, dont still select for window
2446	events.
2447
24482008-06-27  Emmanuele Bassi  <ebassi@openedhand.com>
2449
2450	* clutter/clutter-event.h:
2451	* clutter/clutter-main.c:
2452	* clutter/x11/clutter-backend-x11.c: Add further documentation,
2453	and increase the coverage to 94%.
2454
24552008-06-27  Emmanuele Bassi  <ebassi@openedhand.com>
2456
2457	* configure.ac: Post release bump to 0.7.7.
2458
2459======== Release 0.7.6 ========================================================
2460
24612008-06-27  Emmanuele Bassi  <ebassi@openedhand.com>
2462
2463	* configure.ac:
2464	* NEWS: Release 0.7.6.
2465
24662008-06-27  Neil Roberts  <neil@o-hand.com>
2467
2468	Bug 993 - Underline colors are sometimes wrong
2469
2470	* clutter/pango/pangoclutter-render.c: Fixed so that instead
2471	of trying to set the color in prepare_run it uses draw_glyphs
2472	to draw groups of glyphs and requests the color for each part
2473	from Pango.
2474
24752008-06-26  Emmanuele Bassi  <ebassi@openedhand.com>
2476
2477	* clutter/clutter-actor.c:
2478	(clutter_actor_set_min_width),
2479	(clutter_actor_set_min_height),
2480	(clutter_actor_set_natural_width),
2481	(clutter_actor_set_natural_height): Ignore any override of the
2482	minimum and natural size of the stage on backends that only
2483	support static stages.
2484
2485	* clutter/clutter-stage.c (clutter_stage_allocate): Use the
2486	preferred size of the ClutterStage implementation instead of
2487	the display size.
2488
2489	* clutter/clutter-backend.[ch]: Remove get_display_size() and
2490	clutter_backend_get_display_size().
2491
2492	* clutter/eglnative/clutter-backend-egl.c:
2493	* clutter/fruity/clutter-backend-fruity.c:
2494	* clutter/osx/clutter-backend-osx.c:
2495	* clutter/sdl/clutter-backend-sdl.c:
2496	* clutter/win32/clutter-backend-win32.c:
2497	* clutter/x11/clutter-backend-x11.c: Remove get_display_size()
2498	implementations.
2499
25002008-06-26  Emmanuele Bassi  <ebassi@openedhand.com>
2501
2502	* clutter/clutter-shader.c (bind_glsl_shader): Verify that the
2503	vertex shader has been successfully compiled, like we do with
2504	the fragment shader.
2505
25062008-06-26  Emmanuele Bassi  <ebassi@openedhand.com>
2507
2508	* clutter/osx/clutter-backend-osx.c:
2509	(clutter_backend_osx_get_display_size): Fix the allocation pool
2510	macro name.
2511
25122008-06-26  Matthew Allum  <mallum@openedhand.com>
2513
2514	* clutter/glx/clutter-glx-texture-pixmap.c:
2515	Move the gl extension probe into the regular object init() rather than
2516	class_init. Should be a little safer.
2517
25182008-06-26  Matthew Allum  <mallum@openedhand.com>
2519
2520	* tests/test-pixmap.c: (main):
2521	Use strtol on arg as to take hex values. Tweak from James Ketrenos
2522
25232008-06-25  Emmanuele Bassi  <ebassi@openedhand.com>
2524
2525	* configure.ac: Post release bump to 0.7.5.
2526
2527======== Release 0.7.4 ========================================================
2528
25292008-06-25  Emmanuele Bassi  <ebassi@openedhand.com>
2530
2531	* configure.ac:
2532	* NEWS: Release 0.7.4.
2533
25342008-06-25  Neil Roberts  <neil@o-hand.com>
2535
2536	* clutter/win32/clutter-backend-win32.c
2537	(clutter_backend_win32_get_display_size): Implement
2538	get_display_size on the Win32 backend.
2539
25402008-06-25  Emmanuele Bassi  <ebassi@openedhand.com>
2541
2542	* clutter/clutter-main.h: Make the priority constants public.
2543
2544	* clutter/clutter-stage.c: Use CLUTTER_PRIORITY_REDRAW.
2545
2546	* clutter/clutter-timeline.c: Use CLUTTER_PRIORITY_TIMELINE.
2547
25482008-06-25  Emmanuele Bassi  <ebassi@openedhand.com>
2549
2550	* clutter/osx/clutter-backend-osx.c:
2551	(clutter_backend_osx_get_display_size),
2552	(clutter_backend_osx_class_init): Implement the get_display_size
2553	function.
2554
25552008-06-25  Emmanuele Bassi  <ebassi@openedhand.com>
2556
2557	* clutter/clutter-actor.c:
2558	(clutter_actor_set_min_width),
2559	(clutter_actor_set_min_height),
2560	(clutter_actor_set_natural_width),
2561	(clutter_actor_set_natural_height): Add a comment explaining
2562	the override in place for backends providing a fixed size
2563	on a stage.
2564
25652008-06-25  Emmanuele Bassi  <ebassi@openedhand.com>
2566
2567	* clutter/clutter-actor.c:
2568	(clutter_actor_set_min_width),
2569	(clutter_actor_set_min_height),
2570	(clutter_actor_set_natural_width),
2571	(clutter_actor_set_natural_height): If setting the minimum
2572	and natural width and height on a top-level actor, and on
2573	a backend that provides only static stages, then override
2574	the value and use the size of the display as returned by
2575	the backend.
2576
2577	* clutter/eglnative/clutter-stage-egl.c:
2578	(clutter_stage_egl_realize): Remove the setting of the
2579	minimum and natural width and height.
2580
25812008-06-25  Emmanuele Bassi  <ebassi@openedhand.com>
2582
2583	* clutter/clutter-stage.c:
2584	(clutter_stage_allocate): Minor optimization.
2585
2586	(clutter_stage_init): Do not set the minimum size of the
2587	stage wrapper, and require that the backends set the size
2588	themselves.
2589
25902008-06-25  Emmanuele Bassi  <ebassi@openedhand.com>
2591
2592	* clutter/eglnative/clutter-stage-egl.c:
2593	(clutter_stage_egl_realize): Try to force the minimum and
2594	natural size on realization.
2595
25962008-06-25  Emmanuele Bassi  <ebassi@openedhand.com>
2597
2598	* clutter/clutter-backend.c:
2599	(clutter_backend_get_display_size): Provide a fallback for
2600	backends not implementing get_display_size().
2601
2602	* clutter/clutter-stage.c:
2603	(clutter_stage_allocate): Add debug messages.
2604
2605	* clutter/sdl/clutter-backend-sdl.c:
2606	(clutter_backend_sdl_get_display_size),
2607	(clutter_backend_sdl_class_init): Implement get_display_size()
2608	on the SDL backend.
2609
26102008-06-25  Chris Lord  <chris@openedhand.com>
2611
2612	* clutter/clutter-fixed.c: (clutter_sinx):
2613	Fix clutter_sinx for angles > CFX_2PI - CFX_ONE. Also add note to
2614	documentation about being able to use modulus with ClutterFixed
2615
26162008-06-25  Emmanuele Bassi  <ebassi@openedhand.com>
2617
2618	* clutter/clutter-backend.h:
2619	* clutter/clutter-backend.c:
2620	(clutter_backend_get_display_size): Add a function for getting the
2621	display size out of the backend.
2622
2623	* clutter/clutter-stage.c:
2624	(clutter_stage_allocate): When allocating on a backend with a
2625	static stage, we simply ignore the passed box and override it with
2626	the size of the display.
2627
2628	* clutter/eglnative/clutter-backend-egl.c:
2629	(clutter_backend_egl_get_display_size),
2630	(clutter_backend_egl_class_init): Implement get_display_size() by
2631	returning the size of the EGL surface.
2632
2633	* clutter/fruity/clutter-backend-fruity.c:
2634	(clutter_backend_egl_get_display_size),
2635	(clutter_backend_egl_class_init): Ditto as above.
2636
2637	* clutter/x11/clutter-backend-x11.c:
2638	(clutter_backend_x11_get_display_size),
2639	(clutter_backend_x11_class_init): Implement get_display_size() by
2640	returning the DisplayWidth and DisplayHeight of the current
2641	screen.
2642
26432008-06-25  Neil Roberts  <neil@o-hand.com>
2644
2645	* clutter/win32/clutter-stage-win32.c
2646	(clutter_stage_win32_realize): Use a more direct method to choose
2647	the best pixel format instead of ChoosePixelFormat because
2648	otherwise if the display's depth is 16 then it will prefer the
2649	non-accelerated software implementation when the requested depth
2650	is 24.
2651
26522008-06-25  Emmanuele Bassi  <ebassi@openedhand.com>
2653
2654	* clutter/clutter-stage.c (clutter_stage_allocate): Fix condition;
2655	should always test before committing.
2656
26572008-06-25  Matthew Allum  <mallum@openedhand.com>
2658
2659	* clutter/x11/clutter-backend-x11.c: (_clutter_x11_register_xinput)
2660	Add extra safety and fallback if no useable pointing devices are
2661	found.
2662
26632008-06-25  Emmanuele Bassi  <ebassi@openedhand.com>
2664
2665	* clutter/clutter-stage.c:
2666	(clutter_stage_allocate): Check if the stage provided by the
2667	backend is static (i.e. a framebuffer that cannot be resized)
2668	and interrupt the allocation chain there.
2669
2670	* clutter/eglnative/clutter-stage-egl.c:
2671	(clutter_stage_egl_class_init): Remove the ::allocate empty
2672	stub.
2673
26742008-06-25  Matthew Allum  <mallum@openedhand.com>
2675
2676	* clutter/eglnative/clutter-stage-egl.c:
2677	* clutter/eglx/clutter-stage-egl.c:
2678	Disable passing of attribs to eglCreateContext() on GLES 1.1 h/w
2679
26802008-06-25  Neil Roberts  <neil@o-hand.com>
2681
2682	* clutter/clutter-actor.c (clutter_actor_paint): Guard against the
2683	actor clip being enabled or disabled in an actor paint
2684	method. Otherwise the clip stack can be become unbalanced. This
2685	was happening in ClutterEntry until it was fixed in revision 2983.
2686
26872008-06-24  Neil Roberts  <neil@o-hand.com>
2688
2689	Bug 979 - Wrong call convension for SwapIntervalProc in win32 backend
2690
2691	* clutter/win32/clutter-backend-win32.c: Use the correct calling
2692	convention for SwapInterval. Thanks to Haakon Sporsheim.
2693
26942008-06-24  Emmanuele Bassi  <ebassi@openedhand.com>
2695
2696	Bug 989 - Add a search path for clutter script assets
2697
2698	* clutter/clutter-script.h:
2699	* clutter/clutter-script.c:
2700	(clutter_script_finalize),
2701	(clutter_script_add_search_paths),
2702	(clutter_script_lookup_filename): Add the ability to define multiple
2703	search paths inside ClutterScript and to look up a specific filename
2704	inside those search paths. This is useful to define a set of
2705	directories where the assets for a UI definition are and still
2706	reference those assets by their name instead of the full path. (989,
2707	based on a patch by Matthew Allum)
2708
2709	* clutter/clutter-texture.c:
2710	(clutter_texture_set_custom_property): Use the newly added
2711	clutter_script_lookup_filename() function.
2712
27132008-06-24  Neil Roberts  <neil@o-hand.com>
2714
2715	* clutter/cogl/gles/cogl-gles2-wrapper.h:
2716	* clutter/cogl/gles/cogl-gles2-wrapper.c: All of the settings and
2717	uniforms are now proxied into COGL variables instead of setting
2718	the GL uniforms directly. Just before glDrawArrays is executed a
2719	shader is generated using the given settings to avoid using 'if'
2720	statements. The shaders are cached.
2721
2722	* clutter/cogl/gles/cogl-fixed-vertex-shader.glsl:
2723	* clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: The shaders
2724	are now split into parts using comments instead of 'if' statements
2725	so that the simplest shader can be generated on the fly.
2726
2727	* clutter/cogl/gles/stringify.sh: Now splits up the shader sources
2728	into separate C strings where deliminated by special comments.
2729
2730	* clutter/cogl/gles/cogl-program.h:
2731	* clutter/cogl/gles/cogl-program.c: A custom shader can no longer
2732	be directly linked with the fixed-functionality replacement
2733	because the replacement changes depending on the settings. Instead
2734	the bound shader is linked with the appropriate replacement shader
2735	just before glDrawArrays is executed. The custom uniform variables
2736	must also be proxied through COGL variables because their location
2737	can change when relinked.
2738
27392008-06-24  Øyvind Kolås  <pippin@o-hand.com>
2740
2741	* clutter/fruity/clutter-fruity.c: removed dead code and unused
2742	variables.
2743
27442008-06-24  Øyvind Kolås  <pippin@o-hand.com>
2745
2746	* configure.ac: better alignment of list of enabled experimental
2747	features.
2748
27492008-06-24  Emmanuele Bassi  <ebassi@openedhand.com>
2750
2751	* doc/clutter-actor-invariants.txt: Fix grammar and spelling,
2752	document the ::parent-set signal emission.
2753
27542008-06-24  Emmanuele Bassi  <ebassi@openedhand.com>
2755
2756	* clutter/clutter-entry.c:
2757	(clutter_entry_ensure_layout): Convert the invisible char
2758	to UTF-8 to avoid Pango barfing on us.
2759
27602008-06-24  Matthew Allum  <mallum@openedhand.com>
2761
2762	* clutter/eglnative/clutter-stage-egl.c:
2763	Add an extra debug note.
2764	* configure.ac:
2765	Generate version.xml for COGL API docs
2766
27672008-06-24  Chris Lord  <chris@openedhand.com>
2768
2769	Bug 988 - cursor position wrong with multibyte invisible char
2770
2771	* clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position):
2772	Fix cursor position calculation when using invisible text
2773
27742008-06-23  Emmanuele Bassi  <ebassi@openedhand.com>
2775
2776	* clutter/x11/clutter-event-x11.c (event_translate): Set the
2777	event type explicitly in the union members as well for the
2778	key events, like we do for all the other events.
2779
27802008-06-23  Neil Roberts  <neil@o-hand.com>
2781
2782	* clutter/clutter-entry.c (clutter_entry_paint): Set the clip
2783	using COGL directly instead of setting the actor clip. Otherwise
2784	the clip stack will be unbalanced after the first draw. This also
2785	frees up the actor clip to be set by an application.
2786
27872008-06-23  Matthew Allum  <mallum@openedhand.com>
2788
2789	* NEWS:
2790	Add a quick note on fruity multiple deivce support.
2791	* README:
2792	Add multiple device support details and some tweaks on
2793	Clutter requirements (i.e GdkPixbuf).
2794
27952008-06-23  Matthew Allum  <mallum@openedhand.com>
2796
2797	Bug 987 - clutter-event.c c99 variable declaration
2798
2799	* clutter/clutter-event.c:
2800	Remove c99ism.
2801
28022008-06-23  Emmanuele Bassi  <ebassi@openedhand.com>
2803
2804	* configure.ac: Post release bump to 0.7.3.
2805
2806======== Release 0.7.2 ========================================================
2807
28082008-06-23  Emmanuele Bassi  <ebassi@openedhand.com>
2809
2810	* configure.ac:
2811	* NEWS: Release 0.7.2.
2812
28132008-06-23  Emmanuele Bassi  <ebassi@openedhand.com>
2814
2815	* clutter/clutter-texture.c:
2816	(clutter_texture_get_preferred_width),
2817	(clutter_texture_get_preferred_height),
2818	(clutter_texture_set_property),
2819	(clutter_texture_get_property),
2820	(clutter_texture_class_init),
2821	(clutter_texture_init): Add the new :keep-aspect-ratio property
2822	to ClutterTexture; when set to TRUE the texture will return a
2823	preferred width maintaining the aspect ratio with the given height
2824	and a preferred height maintaining the aspect ratio with the
2825	given width. This allows to set the width or the height and have
2826	the texture automatically request the height or the width respectively
2827	while maintaining the aspect ratio of the original image.
2828
2829	* tests/test-script.json: Update to test the new :keep-aspect-ratio
2830	property.
2831
28322008-06-23  Neil Roberts  <neil@o-hand.com>
2833
2834	Bug 918 - Group doesn't clip if it's children are clipped
2835
2836	* clutter/cogl/common/cogl-clip-stack.h:
2837	* clutter/cogl/common/cogl-clip-stack.c: Added functions to
2838	maintain a stack of clipping rectangles.
2839
2840	* clutter/cogl/gles/cogl.c:
2841	* clutter/cogl/gl/cogl.c: The cogl_clip_set and unset functions
2842	have moved into cogl-clip-stack.c which calls back to cogl.c to
2843	set the actual rectangles. Multiple clip rectangles are combined
2844	by merging the stencil buffers.
2845
2846	* clutter/cogl/gles/cogl-primitives.c (_cogl_path_fill_nodes):
2847	* clutter/cogl/gl/cogl-primitives.c (_cogl_path_fill_nodes): Merge
2848	the stencil buffer with the contents of the clipping stack after
2849	drawing the path.
2850
2851	* clutter/cogl/gles/cogl-context.h (CoglContext):
2852	* clutter/cogl/gl/cogl-context.h (CoglContext): Store the number
2853	of available stencil bits.
2854
2855	* clutter/cogl/common/Makefile.am
2856	(libclutter_cogl_common_la_SOURCES): Added cogl-clip-stack.c
2857
28582008-06-23  Robert Bragg  <bob@o-hand.com>
2859
2860	* clutter/eglx/clutter-stage-egl.c: Makes sure the eglx backend
2861	passes the EGL_OPENGL_ES2_BIT surface attrib when using
2862	GLES2.0 under cogl
2863
28642008-06-23  Chris Lord  <chris@openedhand.com>
2865
2866	* clutter/x11/clutter-event-x11.c: (convert_xdevicekey_to_xkey),
2867	(translate_key_event), (event_translate):
2868	Change the xinput event handling to use translate_key (fixes modifier
2869	handling with xinput key events)
2870
28712008-06-23  Emmanuele Bassi  <ebassi@openedhand.com>
2872
2873	Bug 982 - __COGL_GET_CONTEXT MS compiler issue (Haakon Sporsheim)
2874
2875	* clutter/cogl/common/cogl-handle.h:
2876	* clutter/cogl/common/cogl-primitives.c: Remove C99-isms.
2877
2878	* clutter/cogl/gl/cogl-fbo.c:
2879	* clutter/cogl/gl/cogl-primitives.c:
2880	* clutter/cogl/gl/cogl-texture.c:
2881	* clutter/cogl/gl/cogl.c: Ditto as above.
2882
2883	* clutter/cogl/gles/cogl-fbo.c:
2884	* clutter/cogl/gles/cogl-primitives.c:
2885	* clutter/cogl/gles/cogl-texture.c: Ditto as above.
2886
28872008-06-23  Emmanuele Bassi  <ebassi@openedhand.com>
2888
2889	Bug 984 - pango_clutter_render_layout() declared void, but
2890		  returns (Haakon Sporsheim)
2891
2892	* clutter/pango/pangoclutter-render.c:
2893	(pango_clutter_render_layout): Do not use a return statement.
2894
28952008-06-23  Emmanuele Bassi  <ebassi@openedhand.com>
2896
2897	Bug 905 - Paint cursor directly (Xan López)
2898
2899	* clutter/clutter-entry.c:
2900	(clutter_entry_paint_cursor),
2901	(clutter_entry_init),
2902	(clutter_entry_set_color): Directly paint the cursor on the
2903	entry instead of using an actor.
2904
29052008-06-23  Emmanuele Bassi  <ebassi@openedhand.com>
2906
2907	Bug 981 - clutter_stage_read_pixels temprow fix (Haakon Sporsheim)
2908
2909	* clutter/clutter-stage.c (clutter_stage_read_pixels): Allocate
2910	the temporary row data used to flip the buffer from glReadPixels()
2911	in order to fix compilation under MSVC. Also validate the input
2912	parameters to avoid random segfaults.
2913
29142008-06-23  Matthew Allum  <mallum@openedhand.com>
2915
2916	* clutter/clutter-actor.c:
2917	* clutter/clutter-actor.h:
2918	* clutter/clutter-event.c:
2919	* clutter/clutter-event.h:
2920	* clutter/clutter-main.c:
2921	* clutter/clutter-main.h:
2922	* clutter/clutter-private.h:
2923	* clutter/eglx/clutter-stage-egl.c:
2924	* clutter/fruity/clutter-backend-fruity.c:
2925	* clutter/fruity/clutter-backend-fruity.h:
2926	* clutter/fruity/clutter-fruity.c:
2927	* clutter/glx/clutter-stage-glx.c:
2928	* clutter/x11/clutter-backend-x11.c:
2929	* clutter/x11/clutter-backend-x11.h:
2930	* clutter/x11/clutter-event-x11.c:
2931	* clutter/x11/clutter-stage-x11.h:
2932	* clutter/x11/clutter-x11.h:
2933	* configure.ac:
2934	* tests/Makefile.am:
2935	* tests/test-devices.c:
2936	Merge of 'xinput' branch giving initial basic support of
2937	multiple input devices.
2938
29392008-06-23  Matthew Allum  <mallum@openedhand.com>
2940
2941	* clutter/clutter-actor.c:
2942	* clutter/clutter-actor.h:
2943	* clutter/clutter-group.c:
2944	Remove uneeded (at least for now) paint_area method (#970)
2945
29462008-06-19  Emmanuele Bassi  <ebassi@openedhand.com>
2947
2948	* clutter/clutter-script.c: Be more explicit about the fact that
2949	the script id is not the name of an actor, and that it is retrieved
2950	by using clutter_get_script_id().
2951
29522008-06-17  Emmanuele Bassi  <ebassi@openedhand.com>
2953
2954	* clutter/clutter-actor.h:
2955	* clutter/clutter-actor.c:
2956	(clutter_actor_allocate_preferred_size): Add more documentation
2957	and notes on where it's appropriate to call this function.
2958
29592008-06-17  Chris Lord  <chris@openedhand.com>
2960
2961	* clutter/clutter-texture.c: (clutter_texture_get_preferred_width),
2962	(clutter_texture_get_preferred_height):
2963	Maintain aspect ratio with natural width/height when for_width/height
2964	are specified
2965
29662008-06-17  Matthew Allum  <mallum@openedhand.com>
2967
2968	* clutter/clutter-actor.c:
2969	* clutter/clutter-actor.h:
2970	Clean up of parenting code (see #972)
2971	Doc updates to section intro.
2972	Add clutter_actor_allocate_preferred_size () utility call
2973
2974	* clutter/clutter-group.c: (clutter_fixed_layout_allocate):
2975	Use clutter_actor_allocate_preferred_size ()
2976
2977	* doc/clutter-actor-invariants.txt:
2978	Add some more notes
2979
29802008-06-17  Emmanuele Bassi  <ebassi@openedhand.com>
2981
2982	* clutter/clutter-actor.c:
2983	(clutter_actor_set_parent): Do not emit ::parent-set when
2984	reparenting.
2985
2986	(clutter_actor_unparent): Ditto, as above.
2987
2988	(clutter_actor_reparent): Emit ::parent-set with the old
2989	parent and set the IN_REPARENT flag unconditionally.
2990
29912008-06-17  Emmanuele Bassi  <ebassi@openedhand.com>
2992
2993	* doc/clutter-actor-invariants.txt: Document the flags, the
2994	invariants, the state changes and the minimum requirements for
2995	actor implementations. Needs to be tweaked and fleshed out
2996	before 0.8.0, and we obviously need to enforce the invariants.
2997
29982008-06-17  Emmanuele Bassi  <ebassi@openedhand.com>
2999
3000	* clutter/clutter-actor.c:
3001	(clutter_actor_set_parent): Document and maintain the invariant
3002	that after setting a realized parent on an actor, the actor is
3003	also going to be realized.
3004
3005	(clutter_actor_unparent): Change the invariant that an unparented
3006	actor is also unrealized: the paint is fast enough to avoid
3007	unrealizing, since it also causes more problems that what it's
3008	worth.
3009
3010	* tests/test-invariants.c (test_show_on_set_parent): Update the
3011	invariants test because we changed the invariants.
3012
30132008-06-17  Jussi Kukkonen  <jku@o-hand.com>
3014
3015	* clutter/clutter-score.c (clutter_score_append):
3016	initialize "marker" string and "complete_id" signal id when creating a
3017	ClutterScoreEntry.
3018
30192008-06-16  Tomas Frydrych  <tf@openedhand.com>
3020
3021	* clutter/clutter-actor.c:
3022	(clutter_actor_move_anchor_point_from_gravity):
3023	Fixed incorrect sign of position adjustment (revert of earlier
3024	change).
3025
30262008-06-16  Emmanuele Bassi  <ebassi@openedhand.com>
3027
3028	* clutter/clutter-actor.c (clutter_actor_unparent): Reset the
3029	:show-on-set-parent property to TRUE when unparenting.
3030
3031	* tests/Makefile.am: Add test-invariant to the build.
3032
3033	* tests/test-invariants.c: Test the invariants that we are going
3034	to honour (and document, at some point).
3035
30362008-06-16  Emmanuele Bassi  <ebassi@openedhand.com>
3037
3038	* clutter/eglnative/clutter-stage-egl.c: Ignore any size allocation
3039	we receive from the user.
3040
3041	* clutter/fruity/clutter-stage-fruity.c: Ditto as above.
3042
30432008-06-16  Tomas Frydrych  <tf@openedhand.com>
3044
3045	* clutter/clutter-actor.c:
3046	(clutter_actor_move_anchor_point):
3047	(clutter_actor_move_anchor_pointu):
3048	(clutter_actor_move_anchor_point_from_gravity):
3049	Fixed incorrect sign of position adjustment.
3050	Fixed replace call to _move_by with move_byu in
3051	_move_anchor_pointu.
3052
3053	Stripped trailing whitespace.
3054
30552008-06-15  Emmanuele Bassi  <ebassi@openedhand.com>
3056
3057	Bug #967 - Mismatch of Timeline::marker-reached signal signature
3058
3059	* clutter/clutter-marshal.list:
3060	* clutter/clutter-timeline.c:
3061	(clutter_timeline_class_init): Fix the type of the frame_num
3062	argument in the ::marker-reached signal creation to match the
3063	signal class handler. (Armin Burgmeier)
3064
30652008-06-14  Emmanuele Bassi  <ebassi@openedhand.com>
3066
3067	* README: We depend on PangoCairo, now; also add all the missing
3068	release notes entries and the missing backends configuration notes.
3069
30702008-06-14  Matthew Allum  <mallum@openedhand.com>
3071
3072	* README:
3073	Make needed GL version 1.4, note GLES2 support, add some notes
3074	for COGL.
3075
30762008-06-13  Emmanuele Bassi  <ebassi@openedhand.com>
3077
3078	* configure.ac: Post release bump to 0.7.1.
3079
3080======== Release 0.7.0 ========================================================
3081
30822008-06-13  Emmanuele Bassi  <ebassi@openedhand.com>
3083
3084	* README:
3085	* NEWS:
3086	* configure.ac: Release 0.7.0, "Booska".
3087
30882008-06-13  Emmanuele Bassi  <ebassi@openedhand.com>
3089
3090	* tests/test-cogl-offscreen.c:
3091	* tests/test-cogl-primitives.c:
3092	* tests/test-cogl-tex-convert.c:
3093	* tests/test-cogl-tex-foreign.c:
3094	* tests/test-cogl-tex-getset.c:
3095	* tests/test-cogl-tex-tile.c:
3096	* tests/test-layout.c:
3097	* tests/test-pixmap.c:
3098	* tests/test-texture-quality.c: Miscellaneous fixes for distcheck
3099	to pass.
3100
31012008-06-13  Emmanuele Bassi  <ebassi@openedhand.com>
3102
3103	* clutter/clutter-actor.c:
3104	* clutter/clutter-actor.h:
3105	* tests/test-cogl-primitives.c:
3106	* tests/test-events.c:
3107	* tests/test-multistage.c:
3108	* tests/test-textures.c:
3109	* tests/test-timeline.c: Miscellaneous fixes for distcheck to
3110	pass.
3111
31122008-06-13  Emmanuele Bassi  <ebassi@openedhand.com>
3113
3114	* clutter/clutter-texture.c:
3115	(clutter_texture_unrealize), (clutter_texture_dispose): Add a
3116	guard against reading back memory during the unrealization on
3117	dispose.
3118
31192008-06-13  Emmanuele Bassi  <ebassi@openedhand.com>
3120
3121	Bug #953 - Actors are not hidden before unrealized or
3122		   disposed (Tommi Komulainen)
3123
3124	* clutter/clutter-actor.c:
3125	(clutter_actor_unrealize): Hide a visible actor when unrealizing
3126	it.
3127
3128	(clutter_actor_dispose): Make sure to unrealize an actor when
3129	disposing it.
3130
31312008-06-13  Emmanuele Bassi  <ebassi@openedhand.com>
3132
3133	* clutter/clutter-actor.c:
3134	(clutter_actor_dispose), (clutter_actor_destroy),
3135	(clutter_actor_unparent): Clean up the actor's destruction
3136	sequence, making sure that every operation is performed
3137	under the CLUTTER_ACTOR_IN_DESTRUCTION internal flag. (thanks
3138	to Tomas Frydrych, Neil Roberts and Matthew Allum)
3139
31402008-06-13  Emmanuele Bassi  <ebassi@openedhand.com>
3141
3142	Bug #960 - PangoContext creation code should not be duplicated
3143
3144	* clutter/clutter-private.h:
3145	* clutter/clutter-main.c:
3146	(_clutter_context_create_pango_context): Abstract the creation
3147	of the PangoContext inside its own function, to avoid code and
3148	bugs duplication. (Tommi Komulainen)
3149
3150	* clutter/clutter-entry.c (clutter_entry_init): Use the newly
3151	added PangoContext creation function.
3152
3153	* clutter/clutter-label.c (clutter_label_init): Ditto as above.
3154
31552008-06-12  Emmanuele Bassi  <ebassi@openedhand.com>
3156
3157	Bug #964 - "unrealized" signal of ClutterActor wrongly named
3158
3159	* clutter/clutter-actor.c (clutter_actor_class_init): Fix typo
3160	in the ::unrealize signal name. (Armin Burgmeier)
3161
31622008-06-12  Emmanuele Bassi  <ebassi@openedhand.com>
3163
3164	* doc/reference/cogl/Makefile.am: Ignore cogl/gl and cogl/gles
3165	when building the documentation.
3166
3167	* clutter/cogl/cogl.h.in: Add sections in the header file.
3168
31692008-06-12  Emmanuele Bassi  <ebassi@openedhand.com>
3170
3171	* clutter/clutter-actor.c: Add more clarifications on the
3172	size and position accessors and the distinction between
3173	transformed and untransformed actor box inside the actor's
3174	description.
3175
31762008-06-12  Emmanuele Bassi  <ebassi@openedhand.com>
3177
3178	* clutter/clutter-actor.c: Clarify the documentation of the
3179	accessors of the width and height.
3180
31812008-06-12  Neil Roberts  <neil@o-hand.com>
3182
3183	* clutter/win32/clutter-stage-win32.c: Updated to the new layout
3184	API. All code to do with positioning the stage has been removed so
3185	the window is left where Windows wants to put it and it can not be
3186	moved with clutter_actor_set_position.
3187
3188	* clutter/win32/clutter-stage-win32.h (ClutterStageWin32): Remove
3189	win_xpos and win_ypos.
3190
3191	* clutter/win32/clutter-event-win32.c (message_translate): Remove
3192	the handler for WM_MOVE because the stage no longer cares where it
3193	is positioned.
3194
31952008-06-12  Emmanuele Bassi  <ebassi@openedhand.com>
3196
3197	* clutter/clutter-actor.[ch]: Documentation fixes.
3198
3199	* clutter/clutter-backend.c: Documentation fixes.
3200
3201	* clutter/clutter-container.h: Documentation fixes.
3202
3203	* clutter/clutter-fixed.c (clutter_qdivx): Fix the return
3204	value to be after the description.
3205
3206	* clutter/clutter-texture.[ch]: Documentation fixes.
3207
3208	* clutter/clutter-timeline.c: Documentation fixes.
3209
32102008-06-11  Emmanuele Bassi  <ebassi@openedhand.com>
3211
3212	* tests/test-layout.c: Take into account the origin of the
3213	parent, if it has changed, and queue a relayout if we are
3214	using the transformed box when computing the layout.
3215
32162008-06-11  Emmanuele Bassi  <ebassi@openedhand.com>
3217
3218	* clutter/eglnative/clutter-stage-egl.c: Remove a duplicate
3219	get_preferred_width() implementation. (thanks to Iain Holmes)
3220
32212008-06-11  Neil Roberts  <neil@o-hand.com>
3222
3223	* clutter/clutter-actor.c (clutter_actor_allocate): Fixed the
3224	logic when detecting whether the actor has moved.
3225
32262008-06-11  Iain Holmes  <iain@openedhand.com>
3227
3228	* configure.ac: Detect the GL headers in flavour=fruity
3229
3230	* clutter/fruity/clutter-stage-fruity.c: Update the Fruity backend to
3231	use the new size negotiation API.
3232
32332008-06-11  Emmanuele Bassi  <ebassi@openedhand.com>
3234
3235	* clutter/clutter-label.c (clutter_label_allocate): Keep the
3236	layout if the size of the allocation is the same as the last
3237	allocation received by the label.
3238
32392008-06-11  Emmanuele Bassi  <ebassi@openedhand.com>
3240
3241	* clutter/clutter-actor.c: Notify :x, :y, :width and :height
3242	properties using ClutterUnits, not pixels.
3243
32442008-06-11  Emmanuele Bassi  <ebassi@openedhand.com>
3245
3246	* clutter/eglnative/clutter-stage-egl.c: Update the EGL native
3247	backend to use the new size negotiation API.
3248
32492008-06-11  Emmanuele Bassi  <ebassi@openedhand.com>
3250
3251	* clutter/sdl/clutter-stage-sdl.c: Update the SDL backend to
3252	use the new size negotiation API.
3253
32542008-06-11  Emmanuele Bassi  <ebassi@openedhand.com>
3255
3256	Bug #961 - Fails to build on OSX
3257
3258	* clutter/osx/clutter-stage-osx.c: Update the OSX backend to
3259	use the new size negotiation API.
3260
32612008-06-11  Emmanuele Bassi  <ebassi@openedhand.com>
3262
3263	* autogen.sh: Force overwriting when glib-gettextize is
3264	invoked by autogen.sh.
3265
32662008-06-10  Neil Roberts  <neil@o-hand.com>
3267
3268	* clutter/clutter-main.c: Include <locale.h> for setlocale()
3269
32702008-06-10  Emmanuele Bassi  <ebassi@openedhand.com>
3271
3272	* clutter/clutter-child-meta.c: Fix section name
3273
3274	* clutter/clutter-container.c:
3275	(clutter_container_child_set_property),
3276	(clutter_container_child_get_property): Fix gtk-doc parameter
3277	name.
3278
3279	* clutter/clutter-container.h: Fix documentation of the
3280	interface vfuncs.
3281
3282	* clutter/clutter-event.h: Fix documentation.
3283
3284	* clutter/clutter-feature.h: Fix documentation.
3285
3286	* clutter/clutter-types.h: Add ClutterRequestMode.
3287
3288	* clutter/x11/clutter-event-x11.c: Fix documentation.
3289
3290	* tests/test-fullscreen.c: Verify that the stage size has been
3291	changed by clutter_stage_fullscreen().
3292
32932008-06-10  Emmanuele Bassi  <ebassi@openedhand.com>
3294
3295	Bug #815 - Split up request, allocation, and paint box
3296
3297	* clutter/clutter-actor.[ch]: Rework the size allocation,
3298	request and paint area. Now ::request_coords() is called
3299	::allocate(), and ::query_coords() has been split into
3300	::get_preferred_width() and ::get_preferred_height(). See
3301	the documentation and the layout test on how to implement
3302	a container and layout manager with the new API. (#915,
3303	based on a patch by Havoc Pennington, Lucas Rocha and Johan
3304	Bilien)
3305
3306	* clutter/clutter-clone-texture.c: Port CloneTexture to
3307	the new size negotiation API; it just means forwarding
3308	the requests to the parent texture.
3309
3310	* clutter/clutter-deprecated.h: Add deprecated and replaced
3311	API.
3312
3313	* clutter/clutter-entry.c: Port Entry to the new size
3314	negotiation API.
3315
3316	* clutter/clutter-group.c: Port Group to the new size
3317	negotiation API; the semantics of the Group actor do not
3318	change.
3319
3320	* clutter/clutter-label.c: Port Label to the new size
3321	negotiation API, and vastly simplify the code.
3322
3323	* clutter/clutter-main.[ch]: Add API for executing a
3324	relayout when needed.
3325
3326	* clutter/clutter-private.h: Add new Stage private API.
3327
3328	* clutter/clutter-rectangle.c: Update the get_abs_opacity()
3329	call to get_paint_opacity().
3330
3331	* clutter/clutter-stage.c:
3332	(clutter_stage_get_preferred_width),
3333	(clutter_stage_get_preferred_height),
3334	(clutter_stage_allocate),
3335	(clutter_stage_class_init): Port Stage to the new size
3336	negotiation API.
3337
3338	* clutter/clutter-texture.c: Port Texture to the new size
3339	negotiation API.
3340
3341	* clutter/clutter-types.h: Add ClutterRequestMode enumeration.
3342
3343	* clutter/x11/clutter-stage-x11.c: Port the X11 stage
3344	implementation to the new size negotiation API.
3345
3346	* tests/Makefile.am: Add the layout manager test case.
3347
3348	* tests/test-opacity.c: Update.
3349
3350	* tests/test-project.c: Update.
3351
3352	* tests/test-layout.c: Test case for a layout manager implemented
3353	using the new size negotiation API; the layout manager handles
3354	both transformed and untransformed children.
3355
33562008-06-10  Emmanuele Bassi  <ebassi@openedhand.com>
3357
3358	* Makefile.am: Add the po/ directory to the build.
3359
33602008-06-10  Emmanuele Bassi  <ebassi@openedhand.com>
3361
3362	* autogen.sh: Check for, and run glib-gettextize.
3363
3364	* configure.ac: Set up the localization support.
3365
3366	* clutter/clutter-main.c: Do not define the GETTEXT_PACKAGE,
3367	but use the one from the configure script.
3368
3369	* po/POTFILES.in: Template for the translatable files.
3370
33712008-06-10  Chris Lord  <chris@openedhand.com>
3372
3373	* clutter/clutter-main.c: (pre_parse_hook):
3374	Call setlocale on init
3375
3376	* clutter/x11/clutter-event-x11.c: (translate_key_event):
3377	Fix typo and use the same buffer size as xev
3378
33792008-06-10  Øyvind Kolås  <pippin@o-hand.com>
3380
3381	* clutter/clutter-texture.c: improved documentation for
3382	clutter_texture_set_filter_quality.
3383
33842008-06-10  Chris Lord  <chris@openedhand.com>
3385
3386	Bug #916 - ClutterKeyEvent:unicode_value is ignored
3387	Bug #950 - AltGr not handled
3388
3389	* clutter/osx/clutter-event-osx.c: (clutter_event_osx_translate):
3390	* clutter/x11/clutter-event-x11.c: (translate_key_event):
3391	* tests/test-events.c: (fill_keybuf), (input_cb):
3392	Apply patch from Tommi Komulainen, fill the unicode_value attribute of
3393	the ClutterKeyEvent struct. Also use XKeycodeToKeysym, as suggested in
3394	bug #950, comment #2
3395
33962008-06-10  Matthew Allum  <mallum@openedhand.com>
3397
3398	* clutter/clutter-texture.c:
3399	Minor reformatting cleanups. Emit filter-quality prop on change.
3400	* clutter/glx/clutter-glx-texture-pixmap.c:
3401	Support mipmaps via filter quality prop.
3402
34032008-06-10  Chris Lord  <chris@openedhand.com>
3404
3405	* tests/Makefile.am:
3406	* tests/test-entry-auto.c:
3407	Add automatic test for ClutterEntry, by Tommi Komulainen
3408
34092008-06-10  Chris Lord  <chris@openedhand.com>
3410
3411	* clutter/cogl/common/cogl-primitives.c: (_cogl_path_arc):
3412	Draw as expected when end angle is lower than start angle (i.e. do not
3413	swap the angles). This aligns with cairo behaviour.
3414
34152008-06-10  Tommi Komulainen  <tommi.komulainen@iki.fi>
3416
3417	Bug#959 - Multiple minor improvements
3418
3419	* configure.ac: pick up GDKPIXBUF_PREFIX from gdk-pixbuf-2.0
3420	module, not pango
3421
3422	* clutter/clutter-keysyms-table.h: cosmetic fix for ifdef guard
3423	name in the comment (leftover from earlier commit)
3424
3425	* tests/test-textures.c: don't depend on GdkPixbuf as we're not
3426	using any actual features from it, just plain pixel buffer
3427	manipulation
3428
3429	* clutter/clutter-timeline.c
3430	* clutter/clutter-timeline.h (clutter_timeline_list_markers): Use
3431	gsize* to return number of items, not guint*
3432	* tests/test-paint-wrapper.c: use correct type (guint*) in call
3433	to clutter_actor_get_size()
3434
3435	* tests/test-depth.c (janus_group): properly take height2 into
3436	account when calculating needed height for the rectangle
3437
3438	* tests/test-cogl-tex-getset.c: use rowstride, not width*4, when
3439	calculating pixel offsets
3440
3441	* tests/test-cogl-tex-getset.c: Don't assume/force RGBA format,
3442	also support ARGB format (needed with quartz imageloader.)
3443
34442008-06-09  Tommi Komulainen  <tommi.komulainen@iki.fi>
3445
3446	* clutter/osx/clutter-backend-osx.c (clutter_backend_osx_post_parse):
3447	Print GL_VENDOR, GL_RENDERER, GL_VERSION and GL_EXTENSIONS to aid
3448	debugging.
3449
34502008-06-09  Tommi Komulainen  <tommi.komulainen@iki.fi>
3451
3452	Bug #930 - add support for quartz imagebackend
3453
3454	* clutter/cogl/common/cogl-bitmap-pixbuf.c
3455	(_cogl_bitmap_from_file): When USE_QUARTZ is defined implement
3456	using Core Graphics.
3457	* configure.ac: support --with-imagebackend=quartz and print
3458	which imagebackend is selected. Make quartz default on OSX
3459
34602008-06-09  Øyvind Kolås  <pippin@o-hand.com>
3461
3462	* clutter/cogl/common/cogl-primitives.c: (cogl_path_rel_curve_to):
3463	fixed naming of implementation of cogl_path_rel_curve_to (it was
3464	called just cogl_rel_curve_to).
3465
34662008-06-09  Emmanuele Bassi  <ebassi@openedhand.com>
3467
3468	* configure.ac: Clean up a bit the X11 and X extensions
3469	checks with PKG_CHECK_EXISTS(). Since we are filling up the
3470	X11_CFLAGS and X11_LIBS variables ourselves there is no
3471	point in polluting the Makefiles with unused variables.
3472
3473	* clutter/Makefile.am: Remove the pkg-config variable
3474	evaluation and use the values retrieved from the configure
3475	script.
3476
34772008-06-09  Chris Lord  <chris@openedhand.com>
3478
3479	Bug #914 - ClutterEntry is confused about characters vs. bytes
3480
3481	* clutter/clutter-entry.c: (clutter_entry_ensure_layout),
3482	(clutter_entry_handle_key_event_internal),
3483	(clutter_entry_set_text):
3484	Fix mix-up of character and byte counts, handle unicode correctly.
3485	Use clutter_key_event_unicode() instead of
3486	clutter_keysym_to_unicode().
3487
3488	* clutter/clutter-event.c: (clutter_key_event_unicode):
3489	Don't ignore ClutterKeyEvent.unicode_value
3490
3491	* clutter/clutter-keysyms-table.h:
3492	Rename header define so as not to conflict with clutter-keysyms.h
3493
3494	Patch originally by Emmanuele Bassi, with input from Tommi Komulainen.
3495
34962008-06-07  Øyvind Kolås  <pippin@o-hand.com>
3497
3498	* clutter/clutter-texture.c: made the filter-quality proeprty also
3499	control the use of mipmapping.
3500	* clutter/clutter-texture.h: added ClutterTextureQuality enum.
3501	* tests/test-texture-quality.c: new test.
3502	* tests/Makefile.am: added test-texture-quality
3503
35042008-06-06  Emmanuele Bassi  <ebassi@openedhand.com>
3505
3506	* clutter/clutter-texture.c:
3507	(clutter_texture_class_init): Do not unrealize on hide(), and
3508	do not realize() on show. By default, clutter_actor_show() will
3509	realize ourselves, and we don't want to unrealize when hidden
3510	to avoid paying the penalty of reading back the texture data
3511	from the video memory.
3512
3513	* tests/test-actors.c: Show all textures again when pressing
3514	the 'r' key.
3515
35162008-06-06  Neil Roberts  <neil@o-hand.com>
3517
3518	* tests/test-shader.c: Use the special wrapper vars when building
3519	for GLES 2 and automatically cycle the shaders because it's
3520	difficult to right-click.
3521
35222008-06-06  Neil Roberts  <neil@o-hand.com>
3523
3524	* tests/test-shader.c: Fixed to use sampler2D instead of
3525	sampler2DRect now that GL_TEXTURE_RECTANGLE support is disabled in
3526	revision 2834. The ClutterTexture actor now has the
3527	'disable-slicing' property set. The distance in texture
3528	coordinates between pixels is passed in as a uniform so that the
3529	box-blur shader can still work.
3530
35312008-06-06  Emmanuele Bassi  <ebassi@openedhand.com>
3532
3533	Bug #952 - Fix test-textures in trunk
3534
3535	* tests/test-textures.c: Use USE_GDKPIXBUF instead of
3536	USE_PIXBUF. (#952, Gwenole Beauchesne)
3537
35382008-06-06  Emmanuele Bassi  <ebassi@openedhand.com>
3539
3540	Bug #951 - Fix clutter_entry_init() in trunk
3541
3542	* clutter/clutter-entry.c (clutter_entry_init): Remove a
3543	variable shadowing another one. (#951, Tommi Komulainen)
3544
35452008-06-06  Emmanuele Bassi  <ebassi@openedhand.com>
3546
3547	Bug #955 - ClutterLabel is missing fallback resolution handling
3548
3549	* clutter/clutter-label.c (clutter_label_init): Handle
3550	clutter_backend_get_resolution() return value -1 similar to
3551	ClutterEntry (falling back to 96.0). (#955, Tommi Komulainen)
3552
35532008-06-06  Neil Roberts  <neil@o-hand.com>
3554
3555	* clutter/eglnative/clutter-stage-egl.c
3556	(clutter_stage_egl_realize): Use ES 2 renderable type when
3557	building for GLES 2.
3558
3559	* clutter/eglnative/clutter-event-egl.c (get_backend_time): Added
3560	a NULL for the microseconds parameter of g_timer_elapsed.
3561
3562	* clutter/eglnative/clutter-stage-egl.h:
3563	* clutter/eglnative/clutter-egl.h:
3564	* clutter/eglnative/clutter-backend-egl.h: Include
3565	clutter-egl-headers.h instead of including the GL headers directly
3566	so it can include gl2.h when building for GLES 2.
3567
3568	* clutter/eglnative/clutter-egl-headers.h:
3569	* clutter/eglnative/Makefile.am (libclutter_eglnative_la_SOURCES):
3570	Added clutter-egl-headers.h
3571
3572	* clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: GLES 2
3573	doesn't provide a default precision for floats in the fragment
3574	shader and it will reject the shader if there isn't one.
3575
35762008-06-06  Matthew Allum  <mallum@openedhand.com>
3577
3578	Bug #948 - Remove texture rectangle support
3579
3580	* clutter/clutter-feature.c:
3581	* clutter/clutter-feature.h:
3582	* clutter/clutter-texture.c:
3583	* clutter/cogl/gl/cogl.c:
3584	* clutter/glx/clutter-glx-texture-pixmap.c:
3585	Remove support for GL_TEXTURE_RECTANGLE_ARB (now using just regular
3586	2D textures, with optional npots extension). Simplifys code, + makes
3587	mipmap & shader support much more sane.
3588
35892008-06-06  Øyvind Kolås  <pippin@o-hand.com>
3590
3591	Bug #931 - suspicious size allocation for pixel data.
3592
3593	* clutter/cogl/common/cogl-bitmap-pixbuf.c:
3594	(_cogl_bitmap_from_file): allocate height×rowstride and not duplicate
3595	gdkpixbuf's strange optimization saving some bytes at the end of the
3596	pixbuf.
3597
35982008-06-05  Tommi Komulainen  <tommi.komulainen@iki.fi>
3599
3600	Bug 913 - cogl fails to build on OSX
3601
3602	* clutter/cogl/gl/cogl-fbo.c: define GL_READ_FRAMEBUFFER_EXT and
3603	GL_DRAW_FRAMEBUFFER_EXT if not defined in the build system. The
3604	#ifdef can fail if they're not #defines but variables or enums.
3605	As the values are supposed to be industry standard even then
3606	it shouldn't have ill effects.
3607
36082008-06-05  Tommi Komulainen  <tommi.komulainen@iki.fi>
3609
3610	Bug #911 - OSX: add multistage support
3611
3612	* clutter/osx/clutter-backend-osx.{c,h}
3613	(clutter_backend_osx_init_stage, clutter_backend_osx_get_stage,
3614	clutter_backend_osx_redraw, clutter_backend_osx_create_stage,
3615	clutter_backend_osx_ensure_context, clutter_backend_osx_class_init,
3616	clutter_backend_osx_dispose, ClutterGLView:drawRect:):
3617	* clutter/osx/clutter-stage-osx.{c,h} (clutter_stage_osx_realize,
3618	ClutterGLWindow:setFrameSize:):
3619	Adapt to new multistage backend API. Don't keep a pointer to
3620	default stage. Derive from ClutterActor instead of ClutterStage.
3621	Implement ClutterStageWindow interface. Paint, resize and
3622	otherwise manipulate the wrapper rather than self when necessary.
3623
3624	(clutter_backend_post_parse): Create our singleton GL context
3625	here. We could probably create the context when the default
3626	stage is created, but I think this is more clean.
3627
3628	* clutter/osx/clutter-event-osx.c (clutter_event_osx_translate)
3629	* clutter/osx/clutter-stage-osx.c (clutter_stage_osx_state_update,
3630	ClutterGLWindow:windowShouldClose:):
3631	* clutter/osx/clutter-stage-osx.h: Export ClutterGLWindow interface
3632	for clutter-event-osx.c to easily get the stage for NSWindow.
3633	Fill in ClutterEventAny::stage on our events.
3634
36352008-06-05  Tommi Komulainen  <tommi.komulainen@iki.fi>
3636
3637	Bug #910 - OSX: missing memory pool
3638
3639	* clutter/osx/clutter-backend-osx.c (clutter_backend_osx_redraw):
3640	Add missing memory pool wrapup.
3641
36422008-06-05  Tommi Komulainen  <tommi.komulainen@iki.fi>
3643
3644	Bug #909 - OSX: missing NULL pointer handling
3645
3646	* clutter/osx/clutter-stage-osx.c (ClutterGLWindow,
3647	clutter_stage_osx_set_title): NSString:stringWithUTF8String:
3648	does not accept NULL values, use empty string ("") instead.
3649	Avoids potential crash.
3650
36512008-06-05  Emmanuele Bassi  <ebassi@openedhand.com>
3652
3653	* tests/Makefile.am:
3654	* tests/test-paint-wrapper.c: Add a test case (merely, a copy
3655	of test-actors.c) that verifies that handlers to the ::paint
3656	signal are called in the right order.
3657
36582008-06-05  Emmanuele Bassi  <ebassi@openedhand.com>
3659
3660	Bug #840 - Implement prepare-paint and finish-paint signals.
3661
3662	* clutter/clutter-actor.c:
3663	(clutter_actor_class_init): Add the ::paint, ::realize and
3664	::unrealize signals to ClutterActor. It is possible to
3665	override the paint, realization and unrealization of an
3666	actor without subclassing it. The ::paint signal handlers
3667	have the same limitations of a ClutterActor::paint implementation
3668	inside a subclass.
3669
3670	(clutter_actor_realize),
3671	(clutter_actor_unrealize),
3672	(clutter_actor_paint): Emit the signals instead of calling
3673	the functions from the class vtable.
3674
36752008-06-05  Emmanuele Bassi  <ebassi@openedhand.com>
3676
3677	* ChangeLog-ivan: Remove the ChangeLog of the clutter-ivan
3678	branch; the branch already contains it.
3679
36802008-06-05  Matthew Allum  <mallum@openedhand.com>
3681
3682	* clutter/glx/clutter-glx-texture-pixmap.h:
3683	Actually export clutter_glx_texture_pixmap_using_extension ()
3684
36852008-06-05  Chris Lord  <chris@openedhand.com>
3686
3687	* clutter/clutter-entry.c:
3688	Correct the documentation for clutter_entry_set_max_length, fixes bug
3689	#915.
3690
36912008-06-04  Robert Bragg  <bob@o-hand.com>
3692
3693	* tests/test-clip.c:
3694	Removes a spurious #include <gdk-pixbuf/gdk-pixbuf.h> which may not
3695	be found if using --with-imagebackend=internal
3696
36972008-06-04  Robert Bragg  <bob@o-hand.com>
3698
3699	* configure.ac:
3700	Checks that for pangocairo >= 1.18, since
3701	pangocairo-font.c uses pango_cairo_font_get_scaled_font which isn't
3702	otherwise available.
3703
37042008-06-03  Neil Roberts  <neil@o-hand.com>
3705
3706	Applied patch from bug #947
3707
3708	* clutter/clutter-stage.c (clutter_stage_get_default): Don't grab
3709	the floating reference when creating the default stage. The stage
3710	manager will take a reference to it so it will behave as any other
3711	stage.
3712	(clutter_stage_new): Don't take the floating reference to the new
3713	stage but let the stage manager keep it instead.
3714
3715	* clutter/clutter-stage-manager.c
3716	(_clutter_stage_manager_add_stage): Take a reference to the stage
3717	when it is added to the list.
3718	(_clutter_stage_manager_remove_stage): Unref the stage when it is
3719	removed from the list.
3720	(clutter_stage_manager_dispose): Keep track of the 'next' pointer
3721	as a separate variable so we can cope when the stage being
3722	destroyed removes itself from the list as the list is being
3723	iterated.
3724
3725	* clutter/clutter-actor.c (clutter_actor_destroy): Take a
3726	reference at the beginning of the function even if there is no
3727	parent container so that overall the reference count is not
3728	changed when the actor is unref'd again at the bottom of the
3729	function. Previously it would have a net effect of leaving the
3730	reference count alone unless it is a top level actor in which case
3731	it would unref it.
3732
37332008-06-03  Matthew Allum  <mallum@openedhand.com>
3734
3735	* clutter/glx/clutter-glx-texture-pixmap.c:
3736	Dont always fallback to x11 (slow) updates for a single
3737	failed pixmap.
3738	Minor cleanups.
3739	* clutter/x11/clutter-x11-texture-pixmap.c:
3740	Move shm allocation to only area updates.
3741
37422008-06-03  Øyvind Kolås  <pippin@o-hand.com>
3743
3744	* clutter/clutter-container.c: (container_get_child_property):
3745	s/g_object_set_property/g_object_get_property/
3746
37472008-06-02  Neil Roberts  <neil@o-hand.com>
3748
3749	* clutter/pango/pangoclutter-glyph-cache.c
3750	(pango_clutter_glyph_cache_set): When creating a new band, make
3751	sure the texture is wide enough for the glyph, not just tall
3752	enough.
3753
37542008-06-02  Neil Roberts  <neil@o-hand.com>
3755
3756	Applied 'final patch' from bug #874
3757
3758	* clutter/cogl/gles/cogl.c:
3759	* clutter/cogl/gl/cogl.c: The clip planes are now set using the
3760	inverse projection matrix as the modelview matrix so that they can
3761	be specified in screen coordinates.
3762
3763	* clutter/cogl/gles/cogl-context.h (CoglContext):
3764	* clutter/cogl/gl/cogl-context.h (CoglContext): Added a member to
3765	cache the inverse projection matrix
3766
3767	* clutter/clutter-fixed.h: Added a constant for converting from
3768	radians to degrees.
3769
3770	* clutter/clutter-fixed.c (clutter_atani, clutter_atan2i): Added
3771	fixed-point versions of atan and atan2.
3772
3773	* tests/test-clip.c: Added a test for clipping with various
3774	rotations and depths.
3775
3776	* tests/Makefile.am (noinst_PROGRAMS): Added test-clip
3777
37782008-06-02  Neil Roberts  <neil@o-hand.com>
3779
3780	* clutter/cogl/gles/cogl-gles2-wrapper.h: The uniform numbers are
3781	now stored in a separate struct so they can be stored for
3782	application program objects as well.
3783
3784	* clutter/cogl/gles/cogl.c: Moved stub shader functions into
3785	separate files.
3786	(_cogl_features_init): Report support for the shaders feature on
3787	GLES 2
3788
3789	* clutter/cogl/gles/cogl-shader.h:
3790	* clutter/cogl/gles/cogl-shader.c:
3791	* clutter/cogl/gles/cogl-program.h:
3792	* clutter/cogl/gles/cogl-program.c: Separate files to handle
3793	shaders on programs on GLES. If version 1.1 is being used then the
3794	stub functions which all fail are still used.
3795
3796	* clutter/cogl/gles/cogl-gles2-wrapper.c
3797	(cogl_gles2_wrapper_init, cogl_gles2_wrapper_bind_attributes),
3798	(cogl_gles2_wrapper_get_uniforms): Move the uniforms and attribute
3799	bindings into a separate function so they can be used to bind on
3800	application shaders as well.
3801	(cogl_gles2_wrapper_update_matrix): Now takes a parameter and is
3802	no longer static so that it can be used to update all of the
3803	matrices when a new shader is bound.
3804
3805	* clutter/cogl/gles/cogl-defines.h.in: Use GL_COMPILE_STATUS for
3806	CGL_OBJECT_COMPILE_STATUS if the latter isn't available (for
3807	example on GLES 2).
3808
3809	* clutter/cogl/gles/cogl-context.h (CoglContext): Added handle
3810	arrays for programs and shaders.
3811
3812	* clutter/cogl/gles/cogl-context.c (cogl_create_context)
3813	(cogl_destroy_context): Initialize and destroy program and shader
3814	handle array.
3815
3816	* clutter/cogl/gles/Makefile.am (libclutter_cogl_la_SOURCES): Add
3817	cogl-{shader,program}.{c,h}
3818
38192008-06-02  Neil Roberts  <neil@o-hand.com>
3820
3821	* clutter/cogl/gl/cogl-context.c (cogl_destroy_context): Fix
3822	cut-and-paste error where the wrong arrays were being freed.
3823
38242008-06-01  Emmanuele Bassi  <ebassi@openedhand.com>
3825
3826	Merge from clutter-0-6:
3827
3828	* clutter/clutter-model.c:
3829	(clutter_model_iter_set_internal_valist): Add an internal function
3830	wrapping ClutterModelIter::set_value that does not emit the
3831	::row-changed signal. Emitting this signal before the ::row-added
3832	one is wrong: a row cannot change before being inserted.
3833
3834	(clutter_model_append), (clutter_model_prepend),
3835	(clutter_model_insert): Use the non-signal emitting variant of
3836	clutter_model_iter_set_valist().
3837
3838	(clutter_model_iter_set_valist): Use the internal version and emit
3839	the ::row-changed signal at the end.
3840
38412008-05-31  Emmanuele Bassi  <ebassi@openedhand.com>
3842
3843	Bug #943 - Signals are only emitted within a certain area of
3844		   the stage
3845
3846	* clutter/clutter-main.c (clutter_do_event): Use the proper
3847	API and not the macros for the default stage, in case we are
3848	using a backend supporting multiple stages. (Julian Aron Prenner)
3849
38502008-05-30  Emmanuele Bassi  <ebassi@openedhand.com>
3851
3852	* clutter/pango/pangoclutter-fontmap.c:
3853	* clutter/pango/pangoclutter-renderer.c:
3854	* clutter/pango/pangoclutter.h
3855	* clutter/pango/pangoclutter-private.h: Add a function retrieving
3856	the font mipmapping setting.
3857
38582008-05-29  Neil Roberts  <neil@o-hand.com>
3859
3860	* clutter/cogl/gles/cogl-gles2-wrapper.h (CoglGles2Wrapper): Added
3861	uniforms for alpha testing.
3862
3863	* clutter/cogl/gles/cogl-gles2-wrapper.c
3864	(cogl_gles2_wrapper_init): Get the uniforms for alpha testing
3865	settings.
3866	(cogl_wrap_glEnable, cogl_wrap_glDisable): Enable/disable alpha
3867	testing.
3868	(cogl_wrap_glAlphaFunc): Filled in the wrapper.
3869
3870	* clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: Added alpha
3871	testing.
3872
3873	* clutter/cogl/gles/cogl-gles2-wrapper.h:
3874	* clutter/cogl/gles/cogl-gles2-wrapper.c
3875	(cogl_wrap_glGetIntegerv): Added a wrapper for glGetIntegerv so
3876	that it can report zero clip planes.
3877
3878	* clutter/cogl/gles/cogl.c:
3879	* clutter/cogl/gles/cogl-texture.c: Use the wrapped version of
3880	glGetIntegerv
3881
3882	* clutter/cogl/gles/cogl-primitives.c (_cogl_path_fill_nodes): Use
3883	_cogl_features_available to check for the stencil buffer instead
3884	of an #ifdef. The stencil buffer is available in the default
3885	profile for the GLES 2 simulator.
3886
38872008-05-29  Emmanuele Bassi  <ebassi@openedhand.com>
3888
3889	* configure.ac: Check the --with switches as soon as we have them,
3890	to avoid further checks that will fail anyway.
3891
38922008-05-29  Emmanuele Bassi  <ebassi@openedhand.com>
3893
3894	* README: Update the configure arguments list.
3895
38962008-05-28  Neil Roberts  <neil@o-hand.com>
3897
3898	* clutter/cogl/gles/cogl-gles2-wrapper.c
3899	(cogl_gles2_wrapper_init): Get uniforms for fog parameters and
3900	initialise them.
3901	(cogl_wrap_glDrawArrays): Store the modelview matrix in a uniform
3902	as well so that it can be used for fogging calculations.
3903	(cogl_wrap_glEnable, cogl_wrap_glDisable): Enable/disable fogging.
3904	(cogl_wrap_glFogx, cogl_wrap_glFogxv): Fill in wrapper to set
3905	fogging parameters.
3906
3907	* clutter/cogl/gles/cogl-fixed-vertex-shader.glsl: Calculate the
3908	fog amount if fogging is enabled.
3909
3910	* clutter/cogl/gles/cogl-fixed-fragment-shader.glsl: Mix with fog
3911	color.
3912
3913	* clutter/cogl/gles/cogl-gles2-wrapper.h (CoglGles2Wrapper): Add
3914	uniforms for fogging.
3915
39162008-05-28  Emmanuele Bassi  <ebassi@openedhand.com>
3917
3918	* clutter/pango/pangoclutter-font.c: Remove unneeded file.
3919
3920	* tests/Makefile.am:
3921	* tests/test-random-text.c: Add a test for checking the
3922	glyph cache.
3923
39242008-05-28  Emmanuele Bassi  <ebassi@openedhand.com>
3925
3926	Bug #919 - Replacement pango renderer (Neil Roberts)
3927
3928	* clutter/clutter-backend.h:
3929	* clutter/clutter-backend.c:
3930	(clutter_backend_set_font_options),
3931	(clutter_backend_get_font_options): Add the ability to set
3932	the cairo_font_options_t* for the backend at construction
3933	time, so that backend implementations can have their own
3934	options.
3935
3936	* clutter/clutter-color.c: Include pango/pango-attributes.h
3937	for the pango_color_parse() function.
3938
3939	* clutter/clutter-label.c:
3940	(clutter_label_ensure_layout),
3941	(clutter_label_init), (clutter_label_set_text),
3942	(clutter_label_set_font_name), (clutter_label_set_ellipsize),
3943	(clutter_label_set_use_markup): Ensure that the cache is
3944	always primed when the Label changes; this makes sure that
3945	the cache is rebuilt outside the paint run, which should
3946	make the painting perform better especially on embedded
3947	devices.
3948
3949	* clutter/clutter-entry.c:
3950	(clutter_entry_ensure_layout),
3951	(clutter_entry_init), (clutter_entry_set_text),
3952	(clutter_entry_set_font_name): Ditto as above.
3953
3954	* clutter/clutter-private.h:
3955	* clutter/clutter-main.[ch]: Create the font-map inside the
3956	main context; add two new functions:
3957
3958	  clutter_clear_glyph_cache()
3959	  clutter_set_use_mipmapped_text()
3960
3961	that control the glyphs cache.
3962
3963	* clutter/pango/Makefile.am:
3964	* clutter/pango/pangoclutter-fontmap.c:
3965	* clutter/pango/pangoclutter-private.h:
3966	* clutter/pango/pangoclutter-render.c:
3967	* clutter/pango/pangoclutter.h: Rewrite the Pango renderer
3968	using a PangoCairo context and saving the glyphs inside a
3969	more efficient cache.
3970
3971	* configure.ac: Depend on pangocairo instead of pangoft2.
3972
39732008-05-28  Emmanuele Bassi  <ebassi@openedhand.com>
3974
3975	Bug 882 - Allow child properties for containers implementing the
3976		  ClutterContainer interface (Øyvind Kolås)
3977
3978	* clutter/clutter-child-meta.[ch]: Base class for the metadata
3979	of a ClutterActor inside a ClutterContainer; the ChildMeta
3980	object implements a wrapper for storing data that is attached
3981	to a ClutterActor only when it's part of a ClutterContainer.
3982	The ChildMeta object is used to store the child properties
3983	accessible through the ClutterContainer API.
3984
3985	* clutter/clutter-container.[ch]: Creates the ChildMeta for
3986	each actor, in case the Container specifies the ChildMeta
3987	type to use.
3988
3989	* clutter/Makefile.am: Add clutter-child-meta.[ch] to the build.
3990
3991	* clutter/clutter-marshal.list: Add the marshaller for the
3992	ClutterContainer::child-notify signal.
3993
3994	* clutter/clutter-types.h: Declare ClutterContainer and
3995	ClutterChildMeta to avoid recursive inclusion.
3996
39972008-05-28  Neil Roberts  <neil@o-hand.com>
3998
3999	* clutter/cogl/gles/Makefile.am: Use old-style Makefile rules for
4000	the stringify script so that automake won't complain.
4001
40022008-05-28  Emmanuele Bassi  <ebassi@openedhand.com>
4003
4004	* tests/test-script.c:
4005	* tests/test-script.json: Test merging the same actor from two
4006	different sources.
4007
40082008-05-28  Emmanuele Bassi  <ebassi@openedhand.com>
4009
4010	Fix merging of objects with the same id.
4011
4012	* clutter/clutter-script.c:
4013	(json_object_end): If there already is an ObjectInfo under the
4014	parsed id, merge the construction with the currently stored
4015	state.
4016
4017	(parse_children), (parse_signals),
4018	(parse_behaviours): Append the newly parsed children, signals
4019	and behaviours, in case the ObjectInfo already has unresolved
4020	items.
4021
4022	(clutter_script_construct_object): Fix a typo in the type check.
4023
4024	(clutter_script_init): Do not copy the key inside the hash
4025	table holding the objects - we are already holding it inside
4026	the value.
4027
40282008-05-28  Neil Roberts  <neil@o-hand.com>
4029
4030	* clutter/cogl/gles/cogl-gles2-wrapper.c (cogl_wrap_glGetFixedv):
4031	Filled in the wrapper for glGetFixedv
4032
40332008-05-28  Neil Roberts  <neil@o-hand.com>
4034
4035	* clutter/cogl/gles/cogl-texture.c: Use the wrapper for
4036	glTexParameteri. Call glGenerateMipmap after every change to the
4037	texture image data.
4038
4039	* clutter/cogl/gles/cogl-gles2-wrapper.h:
4040	* clutter/cogl/gles/cogl-gles2-wrapper.c: Added a wrapper for
4041	glTexParameteri so that it can ignore requests to set
4042	GL_GENERATE_MIPMAP. Added a wrapper for glGenerateMipmap that does
4043	nothing on GLES 1
4044
40452008-05-28  Emmanuele Bassi  <ebassi@openedhand.com>
4046
4047	* clutter/clutter-script.c:
4048	(clutter_script_construct_object): Mark top-level objects,
4049	that is objects that don't have their ownership transferred
4050	when building up a ClutterScript.
4051
4052	(object_info_free): Merge a fix from the stable branch, but
4053	do not check the type - check whether the object is a top
4054	level (we still need the ClutterActor type check in order to
4055	call clutter_actor_destroy()).
4056
40572008-05-28  Emmanuele Bassi  <ebassi@openedhand.com>
4058
4059	* clutter/clutter-rectangle.c:
4060	(clutter_rectangle_paint): Remove commented out call to
4061	cogl_enable(); the call is not needed and the comment is
4062	in C99.
4063
40642008-05-27  Neil Roberts  <neil@o-hand.com>
4065
4066	* clutter/eglx/clutter-stage-egl.h:
4067	* clutter/eglx/clutter-egl-headers.h:
4068	* clutter/eglx/clutter-backend-egl.h:
4069	* clutter/eglx/Makefile.am: Include the GLES and EGL headers via
4070	clutter-egl-headers.h so that the right version can be used
4071	depending on whether the GLES 2 wrapper is being used.
4072
4073	* configure.ac: Added an automake conditional for whether the GLES
4074	2 wrapper should be used.
4075
4076	* clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize):
4077	Remove the call to glGetIntegerv to get the max texture size. It
4078	was being called before the GL context was bound so it didn't work
4079	anyway and it was causing trouble for the GLES 2 simulator.
4080
4081	* clutter/cogl/gles/stringify.sh: Shell script to convert the
4082	shaders into a C string.
4083
4084	* clutter/cogl/gles/cogl-gles2-wrapper.h:
4085	* clutter/cogl/gles/cogl-gles2-wrapper.c: Wrappers for most of the
4086	missing GL functions in GLES 2.
4087
4088	* clutter/cogl/gles/cogl-fixed-fragment-shader.glsl:
4089	* clutter/cogl/gles/cogl-fixed-vertex-shader.glsl: New shaders for
4090	GLES 2
4091
4092	* clutter/cogl/gles/cogl-defines.h.in: Use the @CLUTTER_GL_HEADER@
4093	macro instead of always using the GLES 1 header.
4094
4095	* clutter/cogl/gles/cogl-context.h (CoglContext): Include a field
4096	for the state of the GLES 2 wrapper.
4097
4098	* clutter/cogl/gles/cogl-texture.c:
4099	* clutter/cogl/gles/cogl-primitives.c:
4100	* clutter/cogl/gles/cogl.c: Use wrapped versions of the GL
4101	functions where neccessary.
4102
4103	* clutter/cogl/gles/Makefile.am: Add sources for the GLES 2
4104	wrapper and an extra build step to put the GLSL files into a C
4105	string whenever the files change.
4106
41072008-05-26  Matthew Allum  <mallum@openedhand.com>
4108
4109	* clutter/x11/clutter-stage-x11.c: (clutter_stage_x11_request_coords):
4110	Dont allow the window to be resize to 0 dimentions. (fixes #933)
4111
41122008-05-23  Emmanuele Bassi  <ebassi@openedhand.com>
4113
4114	Bug #912 - Invalid use of int* as parameter for glGetIntegerv
4115
4116	* clutter/cogl/gl/cogl.c (_cogl_features_init): Use GLint
4117	instead of int. (#912, Tommi Komulainen)
4118
41192008-05-23  Emmanuele Bassi  <ebassi@openedhand.com>
4120
4121	Bug #928 - Reparenting a child that itself is a container
4122	doesn't work
4123
4124	* clutter/clutter-actor.c (clutter_actor_set_parent): Realize
4125	an actor when setting its parent, if the parent is realized.
4126
4127	* clutter/clutter-group.c:
4128	(clutter_group_realize), (clutter_group_class_init): Add the
4129	missing implementation of the ::realize() virtual function; this
4130	makes sure that the children of a Group are realized if the Group
4131	is realized. (#928)
4132
41332008-05-21  Neil Roberts  <neil@o-hand.com>
4134
4135	* clutter/cogl/gl/cogl.c (error_string):
4136	* clutter/cogl/gles/cogl.c (error_string): Rename to
4137	_cogl_error_string and remove the static scoping so that it can be
4138	called in cogl-texture etc.
4139
4140	* clutter/cogl/gl/cogl-texture.c (cogl_texture_new_from_foreign):
4141	* clutter/cogl/gles/cogl-texture.c (cogl_texture_new_from_foreign):
4142	GE(*) can't be used to wrap around calls that use the return
4143	value.
4144
4145	* clutter/cogl/gl/cogl-texture.c (_cogl_texture_quad_sw)
4146	(_cogl_texture_quad_hw, cogl_texture_polygon): Remove GE(*)
4147	wrapper around calls in the middle of a glBegin/glEnd pair which
4148	otherwise always generate an error because glGetError can only be
4149	called outside of the pair.
4150
4151	* clutter/cogl/gl/cogl-internal.h: Include stdio.h when definig
4152	COGL_DEBUG and declare a prototype for _cogl_error_string.
4153
4154	* clutter/cogl/gles/cogl-internal.h: Match GE(*) macro to GL
4155	version.
4156
41572008-05-21  Ivan Leben  <ivan@o-hand.com>
4158
4159	* clutter/cogl/gles/cogl-texture.c:
4160	(_cogl_texture_download_from_gl:) Only comment out the broken
4161	check for framebuffer alpha bits, not the check for alpha in
4162	texture format.
4163
41642008-05-20  Øyvind Kolås  <pippin@o-hand.com>
4165
4166	Decouple actor opacity from fill opacity in ClutterRectangle (fixes
4167	race when both are set from clutter script also makes it more
4168	consistent with the behavior of other actors.)
4169
4170	* clutter/clutter-rectangle.c: (clutter_rectangle_set_color): stop
4171	setting the opacity of the actor from the specified color.
4172	(clutter_rectangle_paint): combine the absolute opacity of the actor
4173	with the alpha of the color when painting.
4174
41752008-05-20  Ivan Leben  <ivan@o-hand.com>
4176
4177	* clutter/cogl/gles/cogl-texture.c:
4178	(cogl_texture_download_from_gl:) Implemented a workaround
4179	for missing alpha framebuffer channel. There are still
4180	some issues with detecting whether alpha is present in the
4181	framebuffer. See comments in code. Test-cogl-tex-getset now
4182	successfully retrieves a RGBA texture image data.
4183
41842008-05-19  Ivan Leben  <ivan@o-hand.com>
4185
4186	* clutter/cogl/gles/cogl-texture.c:
4187	(cogl_texture_download_from_gl:) Store old blending factors
4188	and restore them when done. The lack of ability to retrieve
4189	the alpha channel now more noticable in test-cogl-tex-getset
4190	since the edges of the hand are not antialiased.
4191
4192	* clutter/cogl/gl(es)/cogl-internal.h: Declare
4193	cogl_blend_func to avoid "implicit implementation" compile
4194	warning.
4195
41962008-05-19  Ivan Leben  <ivan@o-hand.com>
4197
4198	* clutter/cogl/gl(es)/cogl.c: New internal function
4199	cogl_blend_func caches blending setup much like cogl_enable
4200	does with the enable flags. This separates blending factors
4201	setup from the enable/disable operation in preparation of
4202	the texture image retrieval fix for alpha channel on GLES.
4203	(cogl_enable:) Does not modify blending factors anymore.
4204
4205	* clutter/cogl/gl(es)/cogl-context.h: CoglContext holds two
4206	new variables to cache blending src and dst factors.
4207
4208	* clutter/cogl/gl(es)/cogl-context.c:
4209	(cogl_create_context:) Initialize blending factors.
4210
4211	* clutter/cogl/gles/cogl-texture.c:
4212	(cogl_texture_download_from_gl:) Set blending factors to
4213	CGL_ONE, CGL_ZERO which fixes the slighlty improper behavior
4214	where source colour was actually multiplied with its alpha
4215	value in the result (not noticable on current tests).
4216
42172008-05-19  Emmanuele Bassi  <ebassi@openedhand.com>
4218
4219	* clutter/eglx/Makefile.am: Fix the INCLUDE directives to
4220	properly include the X11 backend headers.
4221
4222	* clutter/glx/Makefile.am: Add the libclutter-x11.la static
4223	library to the LDADD directives.
4224
42252008-05-19  Tomas Frydrych  <tf@openedhand.com>
4226
4227	* clutter/x11/clutter-x11.h:
4228	* clutter/glx/clutter-glx.h:
4229	Include texture pixmap headers.
4230
42312008-05-16  Neil Roberts  <neil@o-hand.com>
4232
4233	* clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize):
4234	Fix name of parent class variable which otherwise breaks the
4235	build.
4236
42372008-05-16  Neil Roberts  <neil@o-hand.com>
4238
4239	Use the Mesa headers instead of depending on GLee for Win32
4240	builds.
4241
4242	* configure.ac: No longer check for GLee
4243
4244	* clutter/cogl/gl/cogl-defines.h.in: Don't bother including GLee.h
4245
4246	* build/mingw/mingw-cross-compile.sh: No longer downloads libGLee
4247	but downloads the Mesa library instead and installs the headers
4248	from that. Fixed the libpng version.
4249
42502008-05-16  Tomas Frydrych  <tf@openedhand.com>
4251
4252	* clutter/glx/Makefile.am:
4253	* clutter/x11/Makefile.am:
4254	Install glx and x11 specific includes into clutter/glx and
4255	clutter/x11 so that header files that include glx/*.h or x11/*.h
4256	when installed.
4257
42582008-05-16  Neil Roberts  <neil@o-hand.com>
4259
4260	* clutter/win32/clutter-event-win32.c (message_translate): Fix
4261	signedness of old_xpos and old_ypos to get rid of compiler
4262	warnings.
4263
4264	* clutter/win32/clutter-backend-win32.c
4265	(clutter_backend_win32_get_features): Cast the result of
4266	glGetString to a signed char pointer to avoid compiler warnings.
4267
42682008-05-15  Neil Roberts  <neil@o-hand.com>
4269
4270	* clutter/win32/clutter-stage-win32.c:
4271	* clutter/win32/clutter-backend-win32.c: Reflect changes to the
4272	GLX/X11 backend in revisions 2708-2709 and 2713-2715 which
4273	simplify the backend a little.
4274
42752008-05-15  Emmanuele Bassi  <ebassi@openedhand.com>
4276
4277	* clutter/x11/clutter-backend-x11.c:
4278	* clutter/clutter-event.h:
4279	* clutter/clutter-feature.h:
4280	* clutter/clutter-fixed.c:
4281	* clutter/clutter-model.h: Fix documentation.
4282
4283	* clutter/eglnative/clutter-backend-egl.[ch]:
4284	* clutter/eglnative/clutter-event-egl.c: Add the same solution
4285	used for the SDL backend in order to get the time of an event.
4286	This should fix the motion event throttling and the click count
4287	on button press. (#906)
4288
4289	* tests/test-pixmap.c (create_pixmap), (main): Fix preprocessor
4290	directives.
4291
42922008-05-14  Emmanuele Bassi  <ebassi@openedhand.com>
4293
4294	* tests/test-threads.c: Add a "progress bar" actor and
4295	make the test take less amount of time to complete.
4296
42972008-05-14  Emmanuele Bassi  <ebassi@openedhand.com>
4298
4299	* tests/test-events.c: Clean up a bit, and print out more
4300	messages when pressing one of the rectangles.
4301
4302	* tests/test-threads.c: Be more verbose in the console, and
4303	apply another behaviour on the rectangle, to show that we
4304	are not blocking.
4305
43062008-05-14  Øyvind Kolås  <pippin@o-hand.com>
4307
4308	* clutter/cogl/gles/cogl.c: (_cogl_features_init): do not set
4309	COGL_FEATURE_TEXTURE_READ_PIXELS, since it is not available.
4310
43112008-05-14  Matthew Allum  <mallum@openedhand.com>
4312
4313	* clutter/clutter-actor.c:
4314	* clutter/clutter-main.c:
4315	* clutter/clutter-private.h:
4316	Rejid Øyvind's previous commit a little moving more into
4317	clutter-main.c and using ClutterContext.
4318	Also Refactor clutter_init & clutter_init_with_args to share
4319	same core init code.
4320
43212008-05-13  Øyvind Kolås  <pippin@o-hand.com>
4322
4323	Made it possible to do picking when the colors stored in the
4324	framebuffer are only approximately the correct value.
4325
4326	* clutter/clutter-actor.c:
4327	(init_bits): initialize constants about how many bits are
4328	available/will be used for r,g,b components.
4329	(_clutter_pix_to_id): now own function, compute an id from a
4330	pixel into its own function (used from _clutter_do_pick).
4331	(_clutter_id_to_col): now own function, computes the color to use for
4332	a given id.
4333	(clutter_actor_paint): use clutter_id_to_col.
4334	* clutter/clutter-main.c:
4335	(_clutter_do_pick): use _clutter_pix_to_id
4336	(clutter_main): re-enable invocation of fruity app shell.
4337
43382008-05-13  Emmanuele Bassi  <ebassi@openedhand.com>
4339
4340	* clutter/fruity/clutter-stage-fruity.c:
4341	(clutter_stage_egl_show), (clutter_stage_egl_hide): Don't chain
4342	up and set flags, as it is not needed anymore.
4343
4344	(clutter_stage_egl_realize): Set the REALIZED flag.
4345
4346	* clutter/eglnative/clutter-stage-egl.c:
4347	(clutter_stage_egl_show), (clutter_stage_egl_hide): Don't chain
4348	up and set flags, as it is not needed anymore.
4349
43502008-05-13  Emmanuele Bassi  <ebassi@openedhand.com>
4351
4352	* clutter/glx/clutter-stage-glx.c:
4353	(clutter_stage_glx_unrealize): Move the shaders release from here...
4354
4355	* clutter/glx/clutter-backend-glx.c:
4356	(clutter_backend_glx_dispose): ... to here. Shaders should be
4357	released when the GL context is being destroyed, and that only
4358	happens when the backend is being disposed, now that we support
4359	multiple stages.
4360
43612008-05-13  Emmanuele Bassi  <ebassi@openedhand.com>
4362
4363	* clutter/clutter-backend.c:
4364	(_clutter_backend_create_stage): Call _clutter_stage_set_window()
4365	ourselves, thus removing yet another action that backends must
4366	implement and might get wrong; also cuts a backend-agnostic piece
4367	of code duplication.
4368
4369	* clutter/eglnative/clutter-backend-egl.c:
4370	(clutter_backend_egl_create_stage): Update the EGL native backend.
4371
4372	* clutter/eglx/clutter-backend-egl.c:
4373	(clutter_backend_egl_create_stage): Update the EGLX backend.
4374
4375	* clutter/fruity/clutter-backend-fruity.c:
4376	(clutter_backend_egl_create_stage): Update the fruity backend
4377
4378	* clutter/glx/clutter-backend-glx.c:
4379	(clutter_backend_glx_create_stage): Update the GLX backend.
4380
4381	* clutter/sdl/clutter-backend-sdl.c:
4382	(clutter_backend_sdl_create_stage): Update the SDL backend.
4383
4384	* HACKING.backends: Update the ::create_stage() description.
4385
43862008-05-13  Emmanuele Bassi  <ebassi@openedhand.com>
4387
4388	* clutter/x11/clutter-event-x11.c (event_translate): Remove the
4389	cheap Expose event compression, as it seems to play games when a
4390	composite manager is running. It's also not really needed, as
4391	the redraw queue will avoid redraws too close to each other
4392	anyway.
4393
4394	* clutter/x11/clutter-stage-x11.c:
4395	(clutter_stage_x11_show), (clutter_stage_x11_hide): Do not chain
4396	up just to set the flags. This fixes a critical warning coming
4397	from ClutterActor::hide() default implementation.
4398
43992008-05-13  Ivan Leben  <ivan.leben@o-hand.com>
4400
4401	* clutter/cogl/gl/cogl-defines.h.in:
4402	Fix GL function prototypes on OS X by #definining APIENTRY and
4403	APIENTRYP if missing.
4404
44052008-05-12  Ivan Leben  <ivan.leben@o-hand.com>
4406
4407	* clutter/cogl/gl/cogl-defines.h.in:
4408	Defined GL extension functions used by Cogl inside the COGL_
4409	namespace.
4410
4411	* clutter/cogl/gl/cogl-context.h:
4412	* clutter/cogl/gl/cogl.c:
4413	Use COGL_ extension function prototypes instead of relying
4414	on glext.h to define them. Should fix the mac compilability
4415	bug, but haven't tested it yet.
4416
44172008-05-12  Matthew Allum  <mallum@openedhand.com>
4418
4419	* clutter/x11/clutter-x11-texture-pixmap.c:
4420	* configure.ac:
4421	* tests/Makefile.am:
4422	Remove the XComposite dep from Clutter itself, just use
4423	in test-pixmap (if available)
4424
44252008-05-12  Emmanuele Bassi  <ebassi@openedhand.com>
4426
4427	Rework the stage wrapper/implementation relation: remove
4428	duplicated code and all the bookkeeping from the backends into
4429	ClutterStage whenever possible, to reduce the amount of	work a
4430	backend must do (and possibly get wrong). Thanks to Tommi
4431	Komulainen.
4432
4433	* clutter/clutter-main.c:
4434	(clutter_init_with_args), (clutter_init): Realize the default
4435	stage after creation. The default stage is special, because we
4436	use it in the initialization sequence. This removes the burden
4437	from the backends and reduces the things a backend can get
4438	wrong.
4439
4440	* clutter/clutter-stage.c:
4441	(clutter_stage_show): Make sure to realize the implementation if
4442	it hasn't been realized yet.
4443
4444	(clutter_stage_realize): Set the REALIZED flag and call
4445	clutter_stage_ensure_current() if the implementation was
4446	successfully realized.
4447
4448	(clutter_stage_unrealized): Call clutter_stage_ensure_current()
4449	on unrealize.
4450
4451	* clutter/glx/clutter-backend-glx.c:
4452	(clutter_backend_glx_create_stage): Do not realize the stage anymore
4453	when creating it, and let the normal realization sequence take
4454	place.
4455
4456	(clutter_backend_glx_ensure_context): Trap for X11 errors.
4457
4458	* clutter/glx/clutter-stage-glx.c:
4459	(clutter_stage_glx_realize): Chain up to the X11 implementation
4460	so that we can set up the window state (title, cursor visibility)
4461	when we actually have a X window. Also, do not call
4462	clutter_stage_ensure_current(), and rely on the wrapper to do
4463	it for us. This means we can drop setting the REALIZED flag on
4464	the wrapper.
4465
4466	(clutter_stage_glx_unrealize): Do not call
4467	clutter_stage_ensure_current() ourselves, and rely on the wrapper
4468	to do it for us.
4469
4470	* clutter/x11/clutter-stage-x11.c:
4471	(set_wm_title),	(set_cursor_visible): Move the WM title and
4472	cursor visibility code inside their own functions.
4473
4474	(clutter_stage_x11_realize): Set the window title and whether the
4475	cursor is visible or not after realizing the stage.
4476
4477	(clutter_stage_x11_set_cursor_visible),
4478	(clutter_stage_x11_set_title): Call set_wm_title() and
4479	set_cursor_visible().
4480
4481	(clutter_stage_x11_finalize): Free the title string.
4482
4483	* clutter/x11/clutter-stage-x11.h: Save more of the stage state,
4484	so that we can set it even when the stage hasn't been realized
4485	yet.
4486
4487	* clutter/eglnative/clutter-backend-egl.c:
4488	(clutter_backend_egl_create_stage):
4489	* clutter/eglnative/clutter-stage-egl.c:
4490	(clutter_stage_egl_unrealize),
4491	(clutter_stage_egl_realize): Update the eglnative backend.
4492
4493	* clutter/eglx/clutter-backend-egl.c:
4494	(clutter_backend_egl_ensure_context),
4495	(clutter_backend_egl_create_stage):
4496	* clutter/eglx/clutter-stage-egl.c:
4497	(clutter_stage_egl_unrealize),
4498	(clutter_stage_egl_realize): Update the eglx backend.
4499
4500	* clutter/sdl/clutter-backend-sdl.c:
4501	(clutter_backend_sdl_create_stage):
4502	* clutter/sdl/clutter-stage-sdl.c:
4503	(clutter_stage_sdl_realize): Update the sdl backend.
4504
4505	* clutter/fruity/clutter-backend-fruity.c:
4506	(clutter_backend_fruity_create_stage):
4507	* clutter/sdl/clutter-stage-fruity.c:
4508	(clutter_stage_fruity_realize): Update the fruity backend.
4509
4510	* tests/test-multistage.c (on_button_press): Bail out if
4511	clutter_stage_new() returns NULL.
4512
4513	* HACKING.backends: Update backend writing documentation.
4514
45152008-05-12  Robert Bragg  <bob@openedhand.com>
4516
4517	* clutter/clutter-timeline.c:
4518	Adds clutter-timeline documentation RE: r2337, explaining
4519	the current timeline semantics.
4520
45212008-05-12  Emmanuele Bassi  <ebassi@openedhand.com>
4522
4523	* HACKING.backends: Update documentation.
4524
4525	* clutter/glx/clutter-stage-glx.c:
4526	(clutter_stage_glx_realize): Avoid setting more flags than
4527	necessary.
4528
45292008-05-09  Neil Roberts  <neil@o-hand.com>
4530
4531	* clutter/clutter-frame-source.c (clutter_frame_source_add)
4532	(clutter_frame_source_add_full): Add gtk-doc and rename the
4533	'function' parameter to 'func'.
4534
4535	* clutter/clutter-frame-source.h: Rename the 'function' parameters
4536	to 'func'.
4537
4538	* clutter/Makefile.am (source_h): Make clutter-frame-source.h a
4539	public header.
4540
4541	* clutter/clutter-main.c (clutter_threads_add_frame_source_full):
4542	Improve gtk-doc
4543
45442008-05-09  Emmanuele Bassi  <ebassi@openedhand.com>
4545
4546	* clutter/clutter-script-private.h: Add a flag for the
4547	default stage.
4548
4549	* clutter/clutter-script.c:
4550	(json_object_end): If the "type" member is "ClutterStage"
4551	and we have a "is-default" member set to true then this
4552	is the default stage.
4553
4554	(clutter_script_construct_object): Special case the default
4555	stage instead of each ClutterStage.
4556
4557	(object_info_free): Ditto as above.
4558
4559	* tests/test-script.json: Test the creation of a non-default
4560	stage and the ::destroy handler to quit.
4561
45622008-05-09  Emmanuele Bassi  <ebassi@openedhand.com>
4563
4564	Bug #908 - Support transform from G_TYPE_INT to ClutterUnit
4565
4566	* clutter/clutter-units.c:
4567	(clutter_value_transform_int_unit),
4568	(clutter_unit_get_type): Add GValue transformation function from
4569	integer values to ClutterUnit. (#908)
4570
4571	(param_unit_validate): Fix validation for ClutterParamSpecUnit;
4572	this allows writable ClutterUnit properties.
4573
4574	* clutter/clutter-fixed.c:
4575	(clutter_value_transform_int_fixed),
4576	(clutter_value_transform_double_fixed),
4577	(clutter_value_transform_float_fixed): Add GValue transformation
4578	functions from native types (int, double, float) to ClutterFixed.
4579
4580	(clutter_fixed_get_type): Register the new transformation functions.
4581
4582	(param_fixed_validate): Fix validation for ClutterParamSpecUnit;
4583	this allows writable ClutterFixed properties.
4584
45852008-05-07  Ivan Leben  <ivan@o-hand.com>
4586
4587	* clutter/cogl/cogl.h.in:
4588	* clutter/cogl/gl(es)/cogl-texture.h:
4589	* clutter/cogl/gl(es)/cogl-texture.c:
4590	cogl_texture_new_* functions take a gboolean auto_mipmap argument.
4591	If TRUE automatic mipmap generation is enabled during the process
4592	of slice texture object creation.
4593	(cogl_texture_new_from_foreign:) now allows mipmap min filter
4594	flags.
4595
4596	* clutter/clutter-texture.c:
4597	* clutter/glx/clutter-glx-texture-pixmap.c:
4598	* tests/test-cogl-offscreen.c:
4599	* tests/test-cogl-tex-tile.c:
4600	* tests/test-cogl-tex-convert.c:
4601	* tests/test-cogl-tex-polygon.c:
4602	* tests/test-cogl-tex-getset.c:
4603	Pass FALSE for auto_mipmap to cogl_texture_new_*.
4604
4605	* clutter/pango/pangoclutter-render.c:
4606	(tc_get:) Pass TRUE to cogl_texture_new_with_size and use mipmap
4607	min filter for nicer glyphs at small scales. As a result test-text
4608	has gone all beautiful now.
4609
46102008-05-07  Neil Roberts  <neil@o-hand.com>
4611
4612	* clutter/clutter-frame-source.h: Added the missing G_BEGIN_DECLS
4613	and G_END_DECLS
4614
46152008-05-07  Emmanuele Bassi  <ebassi@openedhand.com>
4616
4617	* clutter/sdl/clutter-backend-sdl.c:
4618	(clutter_backend_sdl_dispose): Destroy the timer that we created...
4619	(clutter_backend_sdl_init): ... here.
4620
4621	* clutter/sdl/clutter-backend-sdl.h: Add a GTimer for time-based
4622	operations, like the event time.
4623
4624	* clutter/sdl/clutter-event-sdl.c:
4625	(get_backend_time): Get the elapsed milliseconds for the SDL
4626	backend.
4627
4628	(_clutter_events_init): Start the timer provided by the backend...
4629	(_clutter_events_uninit): ... and the stop it.
4630
4631	(key_event_translate), (event_translate): Use the backend time
4632	to fill out the time field of the event structures. This fixes
4633	the motion notification throttling on the SDL backend.
4634
46352008-05-06  Matthew Allum  <mallum@openedhand.com>
4636
4637	* clutter/glx/clutter-glx-texture-pixmap.c:
4638	* clutter/x11/clutter-x11-texture-pixmap.c:
4639	More cleanups, safety additions.
4640
46412008-05-05  Øyvind Kolås  <pippin@o-hand.com>
4642
4643	* clutter/cogl/gl/cogl-primitives.c:
4644	* clutter/cogl/gles/cogl-primitives.c:
4645	* clutter/cogl/common/cogl-primitives.c: moved declaration of
4646	gegl_rectangle and gegl_rectanglex here to satisfy linking
4647	requirements when building the fruity backend.
4648
46492008-05-05  Øyvind Kolås  <pippin@o-hand.com>
4650
4651	* clutter/cogl/cogl.h.in: api review touch ups.
4652	* clutter/cogl/common/cogl-primitives.c: api review touch ups.
4653	* clutter/cogl/gl/cogl-primitives.c: (cogl_path_fill),
4654	(cogl_path_stroke): indentation.
4655	* clutter/cogl/gles/cogl-primitives.c:
4656	(_cogl_path_fill_nodes): free allocated resources.
4657
4658	* tests/test-cogl-primitives.c: updated to new API, added rotation to
4659	test to show that cogl renders paths correct under perspective
4660	distortion.
4661
46622008-05-02  Emmanuele Bassi  <ebassi@openedhand.com>
4663
4664	Bug #900 - clutter_actor_lower() and friends do not queue redraw
4665
4666	* clutter/clutter-actor.c:
4667	(clutter_actor_raise),
4668	(clutter_actor_lower): Queue a redraw after raising and lowering
4669	and actor in the paint order stack. (#900)
4670
46712008-05-01  Richard Purdie  <rpurdie@openedhand.com>
4672
4673	* configure.ac:
4674	Set CLUTTER_COGL for fruity.
4675
46762008-05-01  Emmanuele Bassi  <ebassi@openedhand.com>
4677
4678	Build fixes for the SDL flavour.
4679
4680	* clutter/sdl/clutter-backend-sdl.c: Remove an unused function.
4681
4682	* clutter/sdl/clutter-event-sdl.c:
4683	(clutter_event_dispatch): Properly cast the stage pointer.
4684
4685	* clutter/sdl/clutter-stage-sdl.c:
4686	(clutter_stage_window_iface_init): Remove the draw_to_pixbuf()
4687	stub and assignment.
4688
46892008-05-01  Richard Purdie  <rpurdie@openedhand.com>
4690
4691	* configure.ac:
4692	Fix up fruity flavour configure option.
4693
46942008-05-01  Øyvind Kolås  <pippin@o-hand.com>
4695
4696	* clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes): draw
4697	the rasterized scanlines as an array of triangles.
4698
46992008-05-01  Emmanuele Bassi  <ebassi@openedhand.com>
4700
4701	* clutter/clutter-behaviour.c:
4702	(clutter_behaviour_remove_all): Disconnect the ::destroy
4703	handler when removing all actors, to match the behaviour
4704	of clutter_behaviour_remove().
4705
47062008-05-01  Matthew Allum  <mallum@openedhand.com>
4707
4708	* clutter/glx/clutter-glx-texture-pixmap.c:
4709	* tests/test-pixmap.c:
4710	Fix up texture-pixmap, now works.
4711	Thanks to Neil for spotting we were actually using
4712	wrong texture type in fbconfig (COGL change).
4713
47142008-04-30  Øyvind Kolås  <pippin@o-hand.com>
4715
4716	* clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes):
4717	keep track of direction we are drawing in and make sure we leave
4718	two intersection points when we have changed direction.
4719
47202008-04-30  Øyvind Kolås  <pippin@o-hand.com>
4721
4722	* clutter/cogl/gles/cogl-primitives.c: (_cogl_path_fill_nodes):
4723	scanline rasterizer fallback for GLES without working stencil
4724	buffer (would benefit from optimization/smarter choice of
4725	datastructures).
4726
47272008-04-30  Emmanuele Bassi  <ebassi@openedhand.com>
4728
4729	* clutter/clutter-effect.c:
4730	(clutter_effect_closure_destroy): Do not remove the actor
4731	from the behaviour; the behaviour is an internal detail of the
4732	effect, and it will remove the actors anyway when finalized
4733	when g_object_unref() is called. This should guard against
4734	actors being destroyed while an effect is running.
4735
47362008-04-30  Øyvind Kolås  <pippin@o-hand.com>
4737
4738	* clutter/cogl/common/Makefile.am:
4739	* clutter/cogl/common/cogl-primitives.c:
4740	* clutter/cogl/common/cogl-primitives.h:
4741	* clutter/cogl/gl/Makefile.am:
4742	* clutter/cogl/gl/cogl-primitives.c:
4743	* clutter/cogl/gl/cogl-primitives.h:
4744	* clutter/cogl/gles/Makefile.am:
4745	* clutter/cogl/gles/cogl-primitives.c:
4746	* clutter/cogl/gles/cogl-primitives.h: moved duplicated code to the
4747	common directory.
4748
47492008-04-30  Robert Bragg  <bob@openedhand.com>
4750
4751	* clutter/clutter/x11/clutter-x11-texture-pixmap.c:
4752	In _update_area_real with depth=16 we weren't setting up the alpha
4753	channel.
4754
47552008-04-29  Matthew Allum  <mallum@openedhand.com>
4756
4757	* clutter/glx/Makefile.am:
4758	* clutter/x11/Makefile.am:
4759	Revert header install locations (Mistake in previous commit,
4760	fixes #898)
4761
47622008-04-29  Neil Roberts  <neil@o-hand.com>
4763
4764	* clutter/clutter-actor.c (clutter_actor_move_anchor_point): The
4765	actor position was being moved in the wrong direction. Perhaps
4766	this was a cut-and-paste bug from move_anchor_point_from_gravity
4767	because in that function ax and ay represent the old anchor
4768	position, but in this function they represent the new.
4769
47702008-04-29  Matthew Allum  <mallum@openedhand.com>
4771
4772	* clutter/glx/Makefile.am:
4773	* clutter/glx/clutter-glx-texture-pixmap.c:
4774	* clutter/glx/clutter-glx-texture-pixmap.h:
4775	* clutter/x11/Makefile.am:
4776	* clutter/x11/clutter-x11-texture-pixmap.c:
4777	* tests/test-pixmap.c:
4778	Commit newer x11 texture pixmap stuff (optionally using SHM).
4779	Also seemingly still broken overhauled glx-texture-pixmap
4780	(code by Robert and myself)
4781
4782	* configure.ac:
4783	Minor formatting change.
4784
47852008-04-29  Neil Roberts  <neil@o-hand.com>
4786
4787	Removed COGLhandle and changed shader and program functions to be
4788	wrapped in reference-counted CoglHandles instead.
4789
4790	* clutter/cogl/gl/cogl-shader.c:
4791	* clutter/cogl/gl/cogl-shader.h:
4792	* clutter/cogl/gl/cogl-program.c:
4793	* clutter/cogl/gl/cogl-program.h:
4794	New files to hold the shader and program functions.
4795
4796	* clutter/cogl/gl/cogl.c: Removed shader and program functions.
4797
4798	* clutter/cogl/common/cogl-handle.h: New header to define
4799	COGL_HANDLE_DEFINE which helps build functions to create
4800	reference-counted handles. This reduces the amount of duplicated
4801	code.
4802
4803	* clutter/cogl/gl/cogl-texture.c:
4804	* clutter/cogl/gles/cogl-texture.c:
4805	* clutter/cogl/gl/cogl-fbo.c: Converted to use COGL_HANDLE_DEFINE
4806	from cogl-handle.h to avoid duplicating some of the common code.
4807
4808	* clutter/cogl/gles/cogl-defines.h.in:
4809	* clutter/cogl/gl/cogl-defines.h.in: Removed COGLhandle
4810
4811	* clutter/cogl/gl/cogl-context.h: Added handle arrays for programs
4812	and shaders.
4813
4814	* clutter/cogl/gl/cogl-context.c (cogl_create_context): Added
4815	initialisers for shader_handles and program_handles.
4816	(cogl_destroy_context): Added calls to g_array_free for all handle
4817	arrays.
4818
4819	* clutter/cogl/gl/Makefile.am (libclutter_cogl_la_SOURCES): Added
4820	cogl-{program,shader}.{c,h}
4821
4822	* clutter/cogl/common/Makefile.am
4823	(libclutter_cogl_common_la_SOURCES): Added cogl-handle.h
4824
4825	* clutter/cogl/gles/cogl.c:
4826	* clutter/cogl/cogl.h.in: Programs and shaders are now wrapped in
4827	CoglHandles instead of COGLhandles. cogl_program_destroy and
4828	cogl_shader_destroy is now replaced with cogl_program_unref and
4829	cogl_shader_unref. cogl_program_ref and cogl_shader_ref are also
4830	added.
4831
4832	* clutter/clutter-shader.c: Converted to use CoglHandles for the
4833	programs and shaders instead of COGLhandles.
4834
48352008-04-29  Øyvind Kolås  <pippin@o-hand.com>
4836
4837	* clutter/cogl/cogl.h.in: renaming of API's in cogl to make the
4838	primitives and path API a bit smaller and more resembling cairo.
4839	* clutter/cogl/gl/cogl-primitives.c:
4840	* clutter/cogl/gles/cogl-primitives.c:
4841	* clutter/cogl/gles/cogl.c:
4842
4843	* clutter/clutter-actor.c:
4844	* clutter/clutter-rectangle.c:
4845	* tests/test-cogl-offscreen.c:
4846	* tests/test-cogl-primitives.c:
4847	* tests/test-cogl-tex-convert.c:
4848	* tests/test-cogl-tex-foreign.c:
4849	* tests/test-cogl-tex-getset.c:
4850	* tests/test-cogl-tex-tile.c: updated according to changes in cogl.
4851
48522008-04-29  Robert Bragg  <bob@o-hand.com>
4853
4854	* clutter/x11/clutter-x11-texture-pixmap.c:
4855	In clutter_x11_texture_pixmap_set_pixmap, dont assume that the actor
4856	size should be changed to match the size of the pixmap.
4857
48582008-04-29  Robert Bragg  <bob@o-hand.com>
4859
4860	* clutter/cogl/gles/cogl-texture.c:
4861	Replaces an malloc call with g_malloc.
4862
48632008-04-29  Robert Bragg  <bob@o-hand.com>
4864
4865	* clutter/configure.ac:
4866	When looking for a GLES 1 library, also try the name "GLESv1_CM".
4867
4868	This also reduces the xfixes version requirement to v3, since we dont
4869	need support for Show/HideCursor.
4870
48712008-04-28  Neil Roberts  <neil@o-hand.com>
4872
4873	Fixed 'make dist'
4874
4875	* clutter/cogl/Makefile.am (EXTRA_DIST): Distribute cogl.h.in
4876	instead of cogl.h
4877	(DIST_SUBDIRS): Added common folder
4878
4879	* clutter/cogl/gl/Makefile.am (libclutter_cogl_la_SOURCES): Remove
4880	cogl-defines.h and use the right location for cogl-defines.gl.h
4881	(EXTRA_DIST): Distribute cogl-defines.h.in
4882
4883	* clutter/cogl/gles/Makefile.am (libclutter_cogl_la_SOURCES):
4884	Remove cogl-defines.h and use the right location for
4885	cogl-defines.gles.h
4886	(EXTRA_DIST): Distribute cogl-defines.h.in
4887
4888	* clutter/Makefile.am (DIST_SUBDIRS): Add fruity
4889
48902008-04-28  Neil Roberts  <neil@o-hand.com>
4891
4892	* clutter/cogl/cogl.h.in (COGL_A_BIT): Added the missing comma
4893	after COGL_PIXEL_FORMAT_G_8
4894
48952008-04-28  Emmanuele Bassi  <ebassi@openedhand.com>
4896
4897	* autogen.sh: Do not just touch the gtk-doc.make file, if we
4898	could not find gtkdocize, but echo an empty EXTRA_DIST into it
4899	so that the automake won't complain later on.
4900
49012008-04-28  Øyvind Kolås  <pippin@o-hand.com>
4902
4903	* clutter/cogl/cogl.h.in: reindented.
4904
49052008-04-28  Emmanuele Bassi  <ebassi@openedhand.com>
4906
4907	* clutter/clutter-actor.c:
4908	(parse_rotation_array),
4909	(clutter_actor_set_custom_property): Use the internal, unit based
4910	rotation setter when parsing the rotation from a ClutterScript
4911	file.
4912
4913	(clutter_geometry_copy),
4914	(clutter_vertex_copy),
4915	(clutter_actor_box_copy): Use the more efficient g_slice_dup().
4916
4917	(clutter_actor_get_stage): Add documentation.
4918
4919	* clutter/clutter-group.c: Documentation fix.
4920
49212008-04-28  Øyvind Kolås  <pippin@o-hand.com>
4922
4923	* clutter/cogl/cogl.h.in: moved the documentation of the cogl
4924	primitives to the main public header.
4925	* clutter/cogl/gl/cogl-primitives.c: from here ..
4926	* clutter/cogl/gles/cogl-primitives.c: .. _and_ here.
4927
49282008-04-28  Øyvind Kolås  <pippin@o-hand.com>
4929
4930	* clutter/cogl/cogl.h.in: added documentation.
4931
49322008-04-28  Emmanuele Bassi  <ebassi@openedhand.com>
4933
4934	* clutter/clutter-units.c (param_unit_init): Use the right
4935	macros to set the default minimum and maximum values.
4936
4937	* clutter/clutter-fixed.c (param_fixed_init): Ditto as above.
4938
49392008-04-28  Matthew Allum  <mallum@openedhand.com>
4940
4941	* autogen.sh:
4942	Dont display 'make' if configure fails.
4943	* configure.ac:
4944	Add new --with-gles version option for eventual GLES2 support
4945	Also minor tidyups.
4946
49472008-04-28  Neil Roberts  <neil@o-hand.com>
4948
4949	* tests/test-cogl-tex-polygon.c: Added buttons to toggle whether
4950	slicing and linear filtering is enabled. By default slicing is
4951	disabled to help test on GL ES.
4952
49532008-04-28  Neil Roberts  <neil@o-hand.com>
4954
4955	* tests/Makefile.am (INCLUDES): Added $(top_srcdir)/clutter to the
4956	include path. Otherwise the tests will fail to build trying to
4957	include "json/json-types.h" when building out-of-tree.
4958
49592008-04-28  Emmanuele Bassi  <ebassi@openedhand.com>
4960
4961	* clutter/eglnative/clutter-backend-egl.c:
4962	(clutter_backend_egl_redraw): Whitespace fixes.
4963
4964	* clutter/eglnative/clutter-stage-egl.c:
4965	(clutter_stage_egl_hide): Indentation fixes.
4966
4967	(clutter_stage_egl_realize): Use g_critical() to report failure,
4968	unset the flags and bail out instead of continuing the realization
4969	of the stage.
4970
49712008-04-25  Neil Roberts  <neil@o-hand.com>
4972
4973	Merged in the clutter-ivan branch which contained the new public
4974	COGL API.
4975
49762008-04-25  Emmanuele Bassi  <ebassi@openedhand.com>
4977
4978	* clutter/sdl/clutter-stage-sdl.[ch]: Port the SDL stage to
4979	the new stage implementation API.
4980
4981	* clutter/sdl/clutter-backend-sdl.[ch]: Port the SDL backend
4982	to the new backend API.
4983
4984	* clutter/sdl/clutter-event-sdl.c:
4985	(clutter_event_dispatch): Assign the default stage as the
4986	origin of the event.
4987
49882008-04-24  Emmanuele Bassi  <ebassi@openedhand.com>
4989
4990	* configure.ac: Add the --with-json configure switch to
4991	allow building Clutter with the external dependency on
4992	the system JSON-GLib; the default is to use the internal
4993	copy unless explicitly asked to check.
4994
49952008-04-24  Emmanuele Bassi  <ebassi@openedhand.com>
4996
4997	* Makefile.am: Add HACKING.backends to the EXTRA_DIST.
4998
49992008-04-24  Emmanuele Bassi  <ebassi@openedhand.com>
5000
5001	* HACKING.backends: Add documentation on how to write a
5002	backend for Clutter.
5003
50042008-04-24  Emmanuele Bassi  <ebassi@openedhand.com>
5005
5006	* clutter/eglnative/clutter-backend-egl.c:
5007	(clutter_backend_egl_create_stage): Fix checks using a
5008	non assigned member of the ClutterBackendEGL structure.
5009
50102008-04-23  Emmanuele Bassi  <ebassi@openedhand.com>
5011
5012	* clutter/eglnative/clutter-backend-egl.[ch]:
5013	* clutter/eglnative/clutter-stage-egl.[ch]:
5014	* clutter/eglnative/clutter-event-egl.c: Port to the new stage
5015	and backend APIs. *WARNING* untested and not compiled.
5016
5017	* clutter/eglx/clutter-backend-egl.c:
5018	(clutter_backend_egl_init): Set some defaults.
5019
50202008-04-23  Emmanuele Bassi  <ebassi@openedhand.com>
5021
5022	* tests/test-script.json: Remove the explicit "visible"
5023	member to test that the visibility of actors is TRUE
5024	by default.
5025
50262008-04-23  Emmanuele Bassi  <ebassi@openedhand.com>
5027
5028	* configure.ac:
5029	* clutter/Makefile.am: Do not build the internal JSON-GLib
5030	copy if there is a system installed one.
5031
5032	* clutter/clutter-json.h: Remove.
5033
5034	* clutter/clutter-json.h.in: Template for the clutter-json.h
5035	header file, used to opaquely include the JSON-GLib types.
5036
50372008-04-23  Emmanuele Bassi  <ebassi@openedhand.com>
5038
5039	* clutter/clutter-actor.c: Document :show-on-set-parent and
5040	the fact that calling clutter_actor_show() and hide() on an
5041	unparented actor will change that property as well as a side
5042	effect.
5043
50442008-04-23  Emmanuele Bassi  <ebassi@openedhand.com>
5045
5046	* clutter/clutter-actor.c (clutter_actor_set_property): Use the
5047	internal setter for the rotation center.
5048
50492008-04-23  Emmanuele Bassi  <ebassi@openedhand.com>
5050
5051	* clutter/clutter-actor.[ch]: Add units based variant of the
5052	rotation accessors.
5053
50542008-04-23  Emmanuele Bassi  <ebassi@openedhand.com>
5055
5056	Bug 892 - Incorrect results using rotation-[center|angle] properties
5057
5058	* clutter/clutter-actor.c:
5059	(clutter_actor_set_rotation_internal): Inline function for setting
5060	the rotation using fixed point for the angle and units for the
5061	center of rotation.
5062
5063	(clutter_actor_set_property),
5064	(clutter_actor_set_rotationx): Use the internal setter to avoid
5065	loss of precision and too many conversions to and from units.
5066
50672008-04-23  Emmanuele Bassi  <ebassi@openedhand.com>
5068
5069	Bug 891 - assertion failed when test-behave exits
5070
5071	* clutter/clutter-behaviour.c:
5072	(remove_actor_on_destroy),
5073	(clutter_behaviour_apply),
5074	(clutter_behaviour_remove): Remove the actor if it gets
5075	destroyed before the behaviour.
5076
50772008-04-18  Emmanuele Bassi  <ebassi@openedhand.com>
5078
5079	Bug #884 - Add clutter_alpha_set_closure
5080
5081	* clutter/clutter-alpha.[ch]: Add clutter_alpha_set_closure(),
5082	a GClosure variant of clutter_alpha_set_func(), and reimplement
5083	the latter as a special case of the former. (#884, Xan López)
5084
50852008-04-18  Neil Roberts  <neil@o-hand.com>
5086
5087	* clutter/clutter-timeline.c (clutter_timeline_get_progressx):
5088	Changed to use clutter_qdiv instead of CLUTTER_FIXED_DIV otherwise
5089	it can't cope with timelines with more than 255 frames.
5090
50912008-04-17  Emmanuele Bassi  <ebassi@openedhand.com>
5092
5093	* clutter/clutter-frame-source.c: Small coding style fixes.
5094
50952008-04-17  Neil Roberts  <neil@o-hand.com>
5096
5097	Applied patch from bug #881
5098
5099	* clutter/clutter-frame-source.h:
5100	* clutter/clutter-frame-source.c:
5101	New files that contain a replacement for g_timeout that try to
5102	cope with system delays.
5103
5104	* clutter/Makefile.am: Added clutter-frame-source.{c,h}
5105
5106	* clutter/clutter-timeline.c (timeout_add): Use a frame source
5107	instead of a g_timeout.
5108
5109	* clutter/clutter-main.c (clutter_threads_add_frame_source_full)
5110	(clutter_threads_add_frame_source): New public functions to wrap a
5111	frame source and grab the Clutter mutex.
5112
5113	* clutter/clutter-timeout-pool.c: Now calculates the timeout
5114	expiration times in the same way as a frame source does so that it
5115	counts time in frame intervals instead of setting the next
5116	expiration time as an offset from the current time.
5117
51182008-04-17  Emmanuele Bassi  <ebassi@openedhand.com>
5119
5120	* clutter/clutter-fixed.c:
5121	(clutter_value_transform_fixed_int),
5122	(clutter_value_transform_fixed_double),
5123	(clutter_value_transform_fixed_float),
5124	(clutter_fixed_get_type): Add GValue transformation functions
5125	for ClutterFixed; copying a CLUTTER_TYPE_FIXED GValue into
5126	a G_TYPE_FLOAT/G_TYPE_DOUBLE one will automatically transform
5127	the fixed point representation into a floating point one. Also
5128	add the G_TYPE_INT transformation function to do a plain
5129	fixed->int copy.
5130
5131	* clutter/clutter-units.c:
5132	(clutter_value_transform_unit_int),
5133	(clutter_unit_get_type): Add a unit->int transformation function.
5134
51352008-04-17  Emmanuele Bassi  <ebassi@openedhand.com>
5136
5137	* clutter/clutter-fixed.c (clutter_value_get_fixed): Fix typo
5138	in the function name.
5139
51402008-04-17  Emmanuele Bassi  <ebassi@openedhand.com>
5141
5142	* clutter/clutter-units.c (clutter_value_get_unit): Fix typo
5143	in the function name.
5144
51452008-04-17  Emmanuele Bassi  <ebassi@openedhand.com>
5146
5147	* HACKING: Amend coding style and tenets, as it is now possible
5148	to install and use unit based properties in a safe way.
5149
51502008-04-17  Emmanuele Bassi  <ebassi@openedhand.com>
5151
5152	* clutter/clutter-units.h:
5153	* clutter/clutter-fixed.h: Add boundaries for fixed point
5154	and units values.
5155
5156	* doc/reference/clutter-sections.txt: Update the documentation.
5157
51582008-04-17  Emmanuele Bassi  <ebassi@openedhand.com>
5159
5160	* autogen.sh: Try to continue even if we don't have gtk-doc
5161	installed; this will obviously won't work if you don't pass
5162	--disable-docs --disable-gtk-doc to autogen.sh as well.
5163
51642008-04-17  Emmanuele Bassi  <ebassi@openedhand.com>
5165
5166	* clutter/clutter-fixed.[ch]: Add a ClutterFixed fundamental
5167	type, and wrappers for storing it into GValues; also add a
5168	GParamSpec subclass for defining parameters holding
5169	ClutterFixed values. This allows creating GObject properties
5170	using fixed point values.
5171
5172	* doc/reference/clutter-sections.txt: Document the newly
5173	added API.
5174
51752008-04-17  Emmanuele Bassi  <ebassi@openedhand.com>
5176
5177	* clutter/Makefile.am: Add clutter-units.c
5178
5179	* clutter/clutter-units.[ch]: Add a ClutterUnit fundamental
5180	type, and wrappers for storing it into GValues; also add a
5181	GParamSpec subclass for defining parameters holding ClutterUnit
5182	values. This allows creating GObject properties using units.
5183
5184	* doc/reference/clutter-sections.txt: Document the newly
5185	added API.
5186
51872008-04-15  Matthew Allum  <mallum@openedhand.com>
5188
5189	Work related to #873;
5190
5191	* clutter/glx/clutter-backend-glx.c:
5192	* clutter/glx/clutter-backend-glx.h:
5193	* clutter/x11/clutter-x11-texture-pixmap.c:
5194	* clutter/x11/clutter-x11-texture-pixmap.h:
5195	General cleanup of texture pixmap code, adding;
5196	  - Pixmap dimentions and depth now auto probed, read only props.
5197	  - More X safety traps
5198	  - Add support for optionally tracking damage and automatically
5199	    updating texture.
5200
5201	* clutter/glx/clutter-glx-texture-pixmap.c:
5202	* clutter/glx/clutter-glx-texture-pixmap.h:
5203	General cleanup and some safety additions. Needs more work so
5204	'proper' subclass - dependent on new COGL.
5205
5206	* clutter/x11/clutter-backend-x11.c: (clutter_x11_remove_filter):
5207	Invert g_return_if check.
5208
5209	* configure.ac:
5210	Pull in XComposite and XDamage (at least for now)
5211
5212	* tests/Makefile.am:
5213	* tests/test-pixmap.c:
5214	Add a modified test from Johan for above.
5215
52162008-04-15  Neil Roberts  <neil@o-hand.com>
5217
5218	Added support for foreign windows to the Win32 backend.
5219
5220	* clutter/win32/clutter-stage-win32.c
5221	(clutter_stage_win32_request_coords): Don't resize foreign
5222	windows.
5223	(clutter_stage_win32_unrealize): Don't destroy foreign windows.
5224	(clutter_stage_win32_init): Added initialiser for is_foreign_win.
5225	(clutter_win32_get_stage_from_window): Resort to looking in the
5226	stage list if the window isn't the right window class so that it
5227	can still find stages with foreign windows.
5228	(clutter_win32_set_stage_foreign): New public function to set a
5229	foreign window for a stage.
5230
5231	* clutter/win32/clutter-event-win32.c
5232	(clutter_win32_disable_event_retrieval): New public function to
5233	disable event retrieval.
5234	(message_translate): Don't handle WM_SIZE or WM_MOVE for foreign
5235	windows.
5236
5237	* clutter/win32/clutter-backend-win32.h (struct
5238	_ClutterBackendWin32): Added a flag to disable event retrieval
5239
5240	* clutter/win32/clutter-backend-win32.c
5241	(clutter_backend_win32_ensure_context): Update debug note to
5242	include whether the stage is foreign or not.
5243
52442008-04-15  Øyvind Kolås  <pippin@o-hand.com>
5245
5246	* clutter/clutter-actor.c: (clutter_actor_set_shader_param): queue a
5247	redraw when a shader_param is set. Normalized some gtk-doc syntax in
5248	some of the api documentation.
5249
52502008-04-15  Øyvind Kolås  <pippin@o-hand.com>
5251
5252	* clutter/clutter-group.c: fixed typo in docs.
5253
52542008-04-14  Matthew Allum  <mallum@openedhand.com>
5255
5256	* clutter/eglx/clutter-stage-egl.c:
5257	Actually set wm protocols on eglx stage windows. Fixes issues with
5258	cloising stages and cleanup.
5259
52602008-04-14  Matthew Allum  <mallum@openedhand.com>
5261
5262	* clutter/cogl/gles/cogl.c: (cogl_color):
5263	Disable use of color4ub, issues with latest MBX SDL (#857)
5264
5265	* clutter/eglx/clutter-backend-egl.c:
5266	* clutter/eglx/clutter-stage-egl.c:
5267	* configure.ac:
5268	Fixup for the eglx backend to work with new backend/multistage code.
5269	Some issues remain in destroying stages.
5270
52712008-04-14  Neil Roberts  <neil@o-hand.com>
5272
5273	Bug #853
5274
5275	* clutter/clutter-timeline.c (clutter_timeline_get_progressx): Fix
5276	arithmetic for calculating the reverse progress when the timeline
5277	is backward. (Should subtract from one instead of taking the
5278	reciprocal).
5279
52802008-04-13  Neil Roberts  <neil@o-hand.com>
5281
5282	Upgraded the Win32 backend to work with the multi-stage
5283	subclassing code.
5284
5285	* clutter/win32/clutter-stage-win32.h:
5286	* clutter/win32/clutter-stage-win32.c: Now inherits from
5287	ClutterGroup and implements ClutterStageWindow instead of
5288	inheriting directly from ClutterStage.
5289
5290	* clutter/win32/clutter-event-win32.c (message_translate): Now
5291	takes an extra parameter to return whether DefWindowProc should be
5292	called. This is needed to prevent the default WM_CLOSE handler
5293	from destroying the window.
5294
5295	* clutter/win32/clutter-backend-win32.c
5296	(clutter_backend_win32_dispose): Destroy all of the stages using
5297	g_slist_foreach as per bug #871. Now also destroys the GL context.
5298	(clutter_backend_win32_get_features): Added assertions to ensure
5299	there is a valid GL context.
5300	(clutter_backend_win32_ensure_context): Accepts NULL stage. Gets
5301	implementation pointer from the stage.
5302
53032008-04-11  Emmanuele Bassi  <ebassi@openedhand.com>
5304
5305	* clutter/clutter-container.c:
5306	(clutter_container_get_type): Relax the precondition on the
5307	implementations of ClutterContainer from ClutterActor to
5308	GObject.
5309
53102008-04-11  Emmanuele Bassi  <ebassi@openedhand.com>
5311
5312	* README: Add a note about the Shader API changes.
5313
5314	* clutter/clutter-deprecated.h: Add deprecation symbols.
5315
5316	* clutter/clutter-shader.[ch]: Rename the :bound read-only
5317	property to :compiled. Also rename clutter_shader_bind()
5318	and clutter_shader_is_bound() to clutter_shader_compil() and
5319	clutter_shader_is_compiled(), respectively.
5320
5321	* clutter/glx/clutter-stage-glx.c:
5322	(clutter_stage_glx_unrealize): Update after
5323	clutter_shader_release_all() rename.
5324
5325	* tests/test-shader.c (button_release_cb), (main): Update.
5326
53272008-04-10  Emmanuele Bassi  <ebassi@openedhand.com>
5328
5329	* clutter/eglx/clutter-backend-egl.c:
5330	(clutter_backend_egl_ensure_context): Sync up with the GLX
5331	backend.
5332
5333	(clutter_backend_egl_create_stage): Dumb compilation fix.
5334
5335	* clutter/glx/clutter-backend-glx.c:
5336	(clutter_backend_glx_create_stage): Unref the stage if we are
5337	erroring out.
5338
53392008-04-10  Emmanuele Bassi  <ebassi@openedhand.com>
5340
5341	* clutter/eglx/clutter-stage-egl.c:
5342	(clutter_stage_egl_realize): Sync up with the GLX backend.
5343
53442008-04-09  Emmanuele Bassi  <ebassi@openedhand.com>
5345
5346	* clutter/Makefile.am: Update the regular expression to match
5347	all the namespaces we actually use. Thanks to Neil Roberts for
5348	spotting this. A make distclean is needed.
5349
5350	* clutter/cogl/gl/Makefile.am:
5351	* clutter/cogl/gles/Makefile.am:
5352	* clutter/json/Makefile.am:
5353	* clutter/pango/Makefile.am: Revert previous commit.
5354
53552008-04-09  Emmanuele Bassi  <ebassi@openedhand.com>
5356
5357	* clutter/cogl/Makefile.am:
5358	* clutter/cogl/gl/Makefile.am:
5359	* clutter/cogl/gles/Makefile.am:
5360	* clutter/json/Makefile.am:
5361	* clutter/pango/Makefile.am: Fix the visibility of all the
5362	symbols, for the main library and the statically linked ones.
5363
53642008-04-09  Emmanuele Bassi  <ebassi@openedhand.com>
5365
5366	* autogen.sh: Clean up a bit
5367
5368	* clutter/clutter-fixed.[ch]:
5369	(clutter_double_to_fixed),
5370	(clutter_double_to_int),
5371	(clutter_double_to_uint): Make these functions public, as they
5372	are expanded by their respective macros. This fixes the errors
5373	from the linker trying to resolve their name.
5374
53752008-04-09  Neil Roberts  <neil@o-hand.com>
5376
5377	Applied patch from bug #871
5378
5379	* clutter/x11/clutter-backend-x11.c (clutter_backend_x11_dispose):
5380	Call g_slist_foreach instead of iterating over the stage_manager
5381	list manually when deleting stages. Otherwise the 'next' pointer
5382	of the list node can get corrupted when the actor removes itself
5383	from the list.
5384
5385	* clutter/clutter-stage.c (clutter_stage_dispose): Call
5386	clutter_actor_unrealize in the dispose handler. This fixes
5387	problems where the dispose handler for the ClutterStageWrapper
5388	can't deselect the GL context until the stage is unrealized.
5389
53902008-04-04  Emmanuele Bassi  <ebassi@openedhand.com>
5391
5392	* clutter/clutter-backend.c: Add more debug messages
5393
5394	* clutter/clutter-stage.h:
5395	* clutter/clutter-stage.c:
5396	(clutter_stage_is_default): Add a function to check if the
5397	stage is the default one.
5398
5399	* clutter/glx/clutter-backend-glx.c:
5400	* clutter/glx/clutter-stage-glx.c:
5401	* clutter/x11/clutter-stage-x11.c: Keep the stage wrapper
5402	and implementation flags in sync, to ensure that the GL
5403	context is always set.
5404
54052008-04-04  Neil Roberts  <neil@o-hand.com>
5406
5407	* README: Fixed typo
5408
54092008-04-04  Matthew Allum  <mallum@openedhand.com>
5410
5411	* README:
5412	Add a note on new show-on-set-parent prop and stage subclassing.
5413
54142008-04-04  Emmanuele Bassi  <ebassi@openedhand.com>
5415
5416	Bug #864 - Allow instantiating and subclassing of ClutterStage
5417
5418	* clutter/Makefile.am: Add clutter-stage-window.[ch]
5419
5420	* clutter/clutter-stage-manager.c:
5421	(_clutter_stage_manager_remove_stage): Do not warn if removing
5422	a stage we don't manage, as we might be invoked multiple times
5423	during a ClutterState dispose sequence.
5424
5425	* clutter/clutter-actor.c:
5426	* clutter/clutter-backend.[ch]:
5427	* clutter/clutter-main.c:
5428	* clutter/clutter-private.h:
5429	* clutter/clutter-stage.[ch]: Make ClutterStage a proxy actor,
5430	with a private actor implementing the ClutterStageWindow
5431	interface for handling the per-backend realization, painting
5432	and unrealization, plus all the windowing system abstraction.
5433
5434	* clutter/x11/clutter-event-x11.c:
5435	* clutter/x11/clutter-stage-x11.[ch]: Port the X11 backend
5436	to the new backend and stage API and semantics.
5437
5438	* clutter/glx/clutter-backend-glx.c:
5439	* clutter/glx/clutter-stage-glx.c: Port the GLX backend to
5440	the new backend and stage API and semantics.
5441
5442	* clutter/eglx/clutter-backend-egl.[ch]:
5443	* clutter/eglx/clutter-stage-egl.[ch]: Port the EGLX backend
5444	to the new backend and stage API and semantics (untested).
5445
5446	* tests/test-multistage.c (on_button_press): Rename
5447	clutter_stage_create_new() to clutter_stage_new().
5448
54492008-04-04  Neil Roberts  <neil@o-hand.com>
5450
5451	Applied patch from bug #810.
5452
5453	* clutter/x11/clutter-event-x11.c (event_translate): Set a flag
5454	when resizing the stage from a ConfigureNotify event.
5455
5456	* clutter/x11/clutter-stage-x11.c
5457	(clutter_stage_x11_request_coords): Don't try to resize the window
5458	again if the flag is set.
5459	(clutter_stage_x11_init): Added initialiser for the flag.
5460
5461	* clutter/x11/clutter-stage-x11.h (struct _ClutterStageX11): Added
5462	the flag.
5463
54642008-04-04  Matthew Allum  <mallum@openedhand.com>
5465
5466	* clutter/clutter-actor.c:
5467	Remove uneeded stage private member.
5468	Add show-on-set-parent prop and make so by default Actors are
5469	now automatically shown when reparented (#791)
5470
5471	* clutter/eglx/clutter-backend-egl.c:
5472	* clutter/cogl/gles/cogl.c:
5473	A couple of minor comments.
5474
5475	* clutter/eglnative/Makefile.am:
5476	Add missing clutter-egl.h header (back port from trunk)
5477
5478	* tests/test-actors.c:
5479	Modify to take advantage of new show-on-set-parent functionality.
5480
54812008-04-03  Emmanuele Bassi  <ebassi@openedhand.com>
5482
5483	* clutter/Makefile.am: Only export symbols matching "^clutter.*",
5484	to avoid exposing the library-private symbols starting with
5485	an underscore.
5486
54872008-04-03  Emmanuele Bassi  <ebassi@openedhand.com>
5488
5489	* clutter/clutter-alpha.c: ClutterAlpha is an InitiallyUnowned
5490	subclass. This should fix a lot of leakage. (#860, Neil Roberts)
5491
54922008-04-03  Emmanuele Bassi  <ebassi@openedhand.com>
5493
5494	* clutter/glx/clutter-backend-glx.c:
5495	(clutter_backend_glx_get_features): Assert if we don't have a
5496	GL context here or if it's not matched to a drawable. Asserting
5497	might seem too drastic, but if we don't have a valid GL context
5498	here then Clutter will segfault anyway, and I'll take an assert()
5499	over a hard to read, deep in GLX guts backtrace any day (and
5500	twice on a monday).
5501
5502	* clutter/x11/clutter-backend-x11.c:
5503	(clutter_backend_x11_get_features): No need for a variable here.
5504
55052008-04-01  Matthew Allum  <mallum@openedhand.com>
5506
5507	* clutter/clutter-backend.c:
5508	* clutter/glx/clutter-backend-glx.c:
5509	* clutter/glx/clutter-stage-glx.c:
5510	Allow NULL to be passed to _clutter_backend_ensure_context
5511	which essentially clears GL context. This is hooked into stage
5512	unrealisation.  Isn't yet quite bulletproof.
5513	Fixes issues with gtk-embed crasher (thanks to Neil).
5514
55152008-04-1  Robert Bragg  <bob@o-hand.com>
5516
5517	* clutter/glx/clutter-glx-texture-pixmap.c:
5518	In clutter_glx_texture_pixmap_dispose; trap X errors around
5519	glXDestroyGLXPixmap so we can't die due to BadDrawable errors.
5520
55212008-03-31  Matthew Allum  <mallum@openedhand.com>
5522
5523	* README:
5524	Add notes on new multistage feature.
5525
5526	* clutter/clutter-stage-manager.c:
5527	Dont ref contained stages.
5528
5529	* clutter/clutter-stage.c:
5530	Automatically remove stage from stage manager on finalisation.
5531	Cleans up warnings when a stage is destroyed.
5532
5533	* clutter/clutter-backend.h:
5534	* clutter/glx/clutter-backend-glx.c:
5535	Minor formatting cleanups.
5536
5537	* clutter/glx/clutter-stage-glx.c:
5538	* configure.ac:
5539	* clutter/clutter-version.h.in:
5540	Add a general CLUTTER_STAGE_TYPE define, should be useful for
5541	evntual stage subclassing and creating with g_object_new()
5542
55432008-03-30  Neil Roberts  <neil@o-hand.com>
5544
5545	* clutter/win32/clutter-backend-win32.c
5546	(clutter_backend_win32_init): Added a call to
5547	timeBeginPeriod. Without this the frame rates are terrible because
5548	the glib timeouts are not accurate enough. However this requires
5549	Glib >= 2.16.0 to take any effect because of a change in the way
5550	g_poll is implemented. See revision 6597 of glib.
5551	(clutter_backend_win32_finalize): Added a call to timeEndPeriod.
5552
5553	* configure.ac: Added -lwinmm to the library dependencies for the
5554	Win32 backend.
5555
55562008-03-30  Neil Roberts  <neil@o-hand.com>
5557
5558	* clutter/win32/clutter-win32.h:
5559	* clutter/win32/clutter-stage-win32.h:
5560	* clutter/win32/clutter-stage-win32.c:
5561	* clutter/win32/clutter-event-win32.c:
5562	* clutter/win32/clutter-backend-win32.h:
5563	* clutter/win32/clutter-backend-win32.c:
5564	Upgraded for multi-stage support.
5565
5566	* clutter/win32/clutter-stage-win32.c
5567	(clutter_stage_win32_request_coords): Fixed so that it doesn't set
5568	the position or size if it hasn't changed. This was causing
5569	problems when the window was resized using the top left corner. In
5570	that case the window receives resize and move messages separately
5571	which caused the window to flash at a different size or position
5572	while one message was handled before the other.
5573	(clutter_stage_win32_realize): Added PFD_GENERIC_ACCELERATED to
5574	the list of pixel format flags to force it to use hardware
5575	acceleration.
5576
55772008-03-28  Matthew Allum  <mallum@openedhand.com>
5578
5579	* clutter/Makefile.am:
5580	* clutter/clutter-actor.c:
5581	* clutter/clutter-actor.h:
5582	* clutter/clutter-backend.c:
5583	* clutter/clutter-backend.h:
5584	* clutter/clutter-debug.h:
5585	* clutter/clutter-event.c:
5586	* clutter/clutter-event.h:
5587	* clutter/clutter-feature.h:
5588	* clutter/clutter-group.h:
5589	* clutter/clutter-main.c:
5590	* clutter/clutter-main.h:
5591	* clutter/clutter-private.h:
5592	* clutter/clutter-stage.c:
5593	* clutter/clutter-stage.h:
5594	* clutter/clutter-stage-manager.c
5595	* clutter/clutter-stage-manager.h
5596	* clutter/clutter-types.h:
5597	* clutter/glx/clutter-backend-glx.c:
5598	* clutter/glx/clutter-backend-glx.h:
5599	* clutter/glx/clutter-stage-glx.c:
5600	* clutter/glx/clutter-stage-glx.h:
5601	* clutter/x11/clutter-backend-x11.c:
5602	* clutter/x11/clutter-backend-x11.h:
5603	* clutter/x11/clutter-event-x11.c:
5604	* clutter/x11/clutter-stage-x11.c:
5605	* clutter/x11/clutter-x11.h:
5606	* tests/Makefile.am:
5607	* tests/test-multistage.c:
5608	Initial commit of multi stage support (mostly a merge from the
5609	clutter-multistage branch).
5610	Note, this commit will break all backends except glx.
5611
56122008-03-26  Neil Roberts  <neil@o-hand.com>
5613
5614	* clutter/win32/clutter-win32.h: Added gtk-doc documentation for
5615	the Win32 backend section.
5616
5617	* clutter/win32/clutter-stage-win32.c
5618	(clutter_win32_get_stage_window): Fixed punctuation in the
5619	documentation.
5620
5621	* README: Added notes about the Win32 backend.
5622
56232008-03-26  Neil Roberts  <neil@o-hand.com>
5624
5625	* clutter/win32/clutter-event-win32.c (clutter_event_check):
5626	Removed the pointless parameter in the call to check_msg_pending.
5627	(check_msg_pending): Fixed to use PeekMessageW instead of
5628	PeekMessage.
5629
56302008-03-25  Neil Roberts  <neil@o-hand.com>
5631
5632	Added a native Win32 WGL backend.
5633
5634	* configure.ac: Added the 'win32' flavour.
5635
5636	* clutter/cogl/gl/cogl.c (cogl_get_proc_address): Added an ifdef
5637	to use wglGetProcAddress with the Win32 backend.
5638
5639	* clutter/Makefile.am (DIST_SUBDIRS): Added the win32 directory.
5640
5641	* clutter/win32/clutter-win32.pc.in:
5642	* clutter/win32/clutter-win32.h:
5643	* clutter/win32/clutter-stage-win32.h:
5644	* clutter/win32/clutter-stage-win32.c:
5645	* clutter/win32/clutter-event-win32.c:
5646	* clutter/win32/clutter-backend-win32.h:
5647	* clutter/win32/Makefile.am:
5648	* clutter/win32/clutter-backend-win32.c: New files.
5649
56502008-03-19  Emmanuele Bassi  <ebassi@openedhand.com>
5651
5652	* clutter/clutter-model.[ch]: Add a ::copy() virtual function
5653	for copying iterators.
5654
5655	* clutter/clutter-list-model.c:
5656	(clutter_list_model_iter_copy),
5657	(clutter_list_model_iter_class_init): Implement the ::copy()
5658	function inside the ListModel iterator subclass.
5659
56602008-03-19  Emmanuele Bassi  <ebassi@openedhand.com>
5661
5662	* clutter/clutter-group.c:
5663	* clutter/clutter-texture.c: Use CLUTTER_ACTOR_IS_VISIBLE()
5664	and not CLUTTER_ACTOR_IS_MAPPED().
5665
56662008-03-19  Emmanuele Bassi  <ebassi@openedhand.com>
5667
5668	* clutter/clutter-score.[ch]: Small clean ups and refactoring.
5669	Use gulong instead of guint, so we have a bigger id space for
5670	the timelines inside a Score.
5671
56722008-03-19  Chris Lord  <chris@openedhand.com>
5673
5674	* clutter/clutter-actor.c:
5675	(_clutter_actor_apply_modelview_transform), (clutter_actor_paint):
5676	Apply clip inside paint function instead of transform function
5677
56782008-03-18  Emmanuele Bassi  <ebassi@openedhand.com>
5679
5680	* clutter/clutter-score.c: Update documentation.
5681
56822008-03-18  Emmanuele Bassi  <ebassi@openedhand.com>
5683
5684	* clutter/clutter-score.[ch]: Remove all the API changes, and
5685	just add a clutter_score_append_at_marker(); the implementation
5686	remains the same, but the marker must be explicitly created by
5687	the developer. The ids are no longer used to create implicit
5688	markers, so they can return to be unsigned integers. (#450)
5689
5690	* clutter/clutter-timeline.[ch]:
5691	(clutter_timeline_has_marker): Add a function to query a timeline
5692	for a marker being set.
5693
5694	* tests/test-score.c (main): Update with the API changes.
5695
5696	* clutter.symbols: Update exported symbols.
5697
56982008-03-18  Emmanuele Bassi  <ebassi@openedhand.com>
5699
5700	* clutter/clutter-texture.c: Small clean ups in the coding style.
5701
57022008-03-18  Emmanuele Bassi  <ebassi@openedhand.com>
5703
5704	* clutter.symbols: Add new symbols
5705
5706	* clutter/clutter-score.[ch]: Use the newly added marker API
5707	on the timelines to implement attaching timelines at specific
5708	points, using either milliseconds or frames.
5709
5710	* tests/test-score.c (main): Test the new API.
5711
57122008-03-18  Emmanuele Bassi  <ebassi@openedhand.com>
5713
5714	* clutter/clutter-marshal.list: Add signature for the
5715	::marker-reached signal marshaller.
5716
5717	* clutter/clutter-timeline.[ch]: Add timeline marker API;
5718	using markers it is possible to add a unique identifier to
5719	a particular frame of the timeline, and receive a signal
5720	notification when reaching that particular marker while
5721	playing the timeline. (#641)
5722
5723	* tests/test-timeline.c: Update the test case to check for
5724	the marker-reached signal emission.
5725
5726	* clutter.symbols: Add new symbols.
5727
57282008-03-10  Øyvind Kolås  <pippin@o-hand.com>
5729
5730	* tests/test-shader.c: improved readability of fragment shader
5731	examples by factoring out common bits into FRAGMENT_SHADER_BEGIN and
5732	FRAGMENT_SHADER_END macros.
5733
57342008-03-09  Matthew Allum  <mallum@openedhand.com>
5735
5736	* clutter/clutter-id-pool.c: (clutter_id_pool_free):
5737	Use g_slice_free not g_free.
5738	* clutter/clutter-main.c: (_clutter_do_pick):
5739	Dont 'over read' the framebuffer when picking (#839, Neil Roberts)
5740
57412008-03-07  Øyvind Kolås  <pippin@o-hand.com>
5742
5743	Refactored the integer id->ClutterActor mapping code to be a self
5744	contained data structure.
5745
5746	* clutter/clutter-id-pool.[ch]: new files.
5747	* clutter/Makefile.am: added clutter-id-pool.[ch]
5748	* clutter/clutter-private.h: use a ClutterIDPool instead of GArray and
5749	GSList to keep track of the reusable ids.
5750	* clutter/clutter-actor.c: moved id pool logic away.
5751	* clutter/clutter-main.c: simplified id pool creation/finalization.
5752
57532008-03-07  Robert Bragg  <bob@o-hand.com>
5754
5755	* clutter/clutter-timeline.c:
5756	Timeline changes to fix the issues identified in bugzilla #439
5757
5758	Notably, this includes some tweaks to timeline semantics.
5759	So e.g. for a
5760
5761	10 frame timeline here are some points about the new timeline code:
5762
5763	- When you create a timeline it starts with current_frame_num == 0
5764
5765	- After starting a timeline, the first timeout is for
5766	  current_frame_num == 1 (Notably it isn't 0 since there is a delay
5767	  before the first timeout signals so re-asserting the starting point
5768	  would give a longer than average first frame.)
5769
5770	- For a non looping timeline the last timeout would be for
5771	  current_frame_num == 10
5772
5773	- For a looping timeline the timeout for current_frame_num ==
5774	  10 would be followed by a timeout for current_frame_num == 1
5775	  and frame 0 is considered == frame 10.
5776
5777	- Asking for a timeline of N frames might better be described
5778	  as asking for a timeline of _length_ N.
5779
5780	Warning: Although I tried to test things, I guess it's quite
5781	likely that this breaks somthing depending on a specific quirk
5782	of the previous timeline code.
5783
57842008-03-06  Emmanuele Bassi  <ebassi@openedhand.com>
5785
5786	* clutter/clutter-actor.c:
5787	(clutter_actor_set_anchor_point_from_gravity): Fix a stupid
5788	conversion from pixels to units that should I not have made.
5789
57902008-03-06  Emmanuele Bassi  <ebassi@openedhand.com>
5791
5792	* README: Update the release notes.
5793
57942008-03-06  Gwenole Beauchesne  <gbeauchesne@splitted-desktop.org>
5795
5796	Signed off by: Emmanuele Bassi <ebassi@openedhand.com>
5797
5798	* clutter/clutter-group.c (clutter_group_real_lower): Fix to
5799	actually lower the actor under the 'above' actor. (#822)
5800
58012008-03-06  Emmanuele Bassi  <ebassi@openedhand.com>
5802
5803	* clutter/clutter-entry.h:
5804	* clutter/clutter-entry.c:
5805	(clutter_entry_handle_key_event_internal),
5806	(clutter_entry_key_press), (clutter_entry_class_init),
5807	(clutter_entry_handle_key_event): Provide a default class handler
5808	for the key-press-event, so that giving key focus to an entry will
5809	automatically make it work. This deprecates the
5810	clutter_entry_handle_key_event() function. (#824)
5811
5812	* tests/test-entry.c (main): Remove the handle_key_event()
5813	machinery, and just give focus to the entry.
5814
58152008-03-06  Chris Lord  <chris@openedhand.com>
5816
5817	* clutter/clutter-model.c: (clutter_model_set_sorting_column):
5818	Don't disable sorting on column 0
5819
58202008-03-06  Emmanuele Bassi  <ebassi@openedhand.com>
5821
5822	Add support for the anchor point inside ClutterScript (#834,
5823	David Stanczak)
5824
5825	* clutter/clutter-actor.c:
5826	(clutter_actor_set_property),
5827	(clutter_actor_get_property),
5828	(clutter_actor_class_init): Add the :anchor-x and :anchor-y
5829	properties to the ClutterActor class.
5830
5831	(clutter_actor_set_anchor_point),
5832	(clutter_actor_set_anchor_pointu),
5833	(clutter_actor_set_anchor_point_from_gravity): Reimplement
5834	the pixel based and gravity based API using the units based
5835	one. Emit the ::notify signal for the :anchor-x and :anchor-y
5836	properties.
5837
5838	(parse_units),
5839	(clutter_actor_parse_custom_node): Parse the :anchor-x and
5840	:anchor-y properties using the custom units format (mm, px,
5841	pt and %).
5842
5843	* tests/test-script.json: Test the newly added properties.
5844
58452008-03-05  Emmanuele Bassi  <ebassi@openedhand.com>
5846
5847	* configure.ac: Add "osx" the the AC_HELP_STRING of the flavour
5848	selection. (#831, Peter Enzerink)
5849
58502008-03-04  Emmanuele Bassi  <ebassi@openedhand.com>
5851
5852	* clutter/clutter-main.c (clutter_do_event): Do not throttle the
5853	motion events if the per-actor delivery has been disabled.
5854
58552008-03-04  Øyvind Kolås  <pippin@o-hand.com>
5856
5857	* clutter/pango/pangoclutter-render.c: (draw_glyph): use g_slice_new0
5858	instead of g_slice_new when allocating the glyph_info, avoiding a
5859	branch based on uninitialized memory.
5860
58612008-03-03  Emmanuele Bassi  <ebassi@openedhand.com>
5862
5863	* Makefile.am: Do not recurse into doc if we did not explicitly
5864	enabled the documentation build; we just recurse into doc if we
5865	are doing a dist or a distcheck.
5866
58672008-02-29  Øyvind Kolås  <pippin@o-hand.com>
5868
5869	Reuse the numeric id's used for picking actors to avoid the potential
5870	of overflowing the id numbers when continusly creating and destroying
5871	actors on long running applications for 16bpp.
5872
5873	* clutter/clutter-private.h: replaced hashtable with GArray and a
5874	GSList for available slots in the array.
5875	* clutter/clutter-actor.c: (create_actor_id): function to create an
5876	actor->id mapping, (release_actor_id): function to mark an existing id
5877	as available for reuse.
5878	* clutter/clutter-main.c: (clutter_context_free): added utility
5879	function for cleaning up the context,
5880	(clutter_get_actor_by_gid): use the GArray for looking up actors.
5881
58822008-02-26  Emmanuele Bassi  <ebassi@openedhand.com>
5883
5884	* clutter/clutter-alpha.c:
5885	(clutter_exp_inc_func),	(clutter_exp_dec_func): Clamp the value
5886	of the alpha function between [0, MAX_ALPHA]. (#800)
5887
58882008-02-25  Emmanuele Bassi  <ebassi@openedhand.com>
5889
5890	* clutter/clutter-main.c (emit_event): Fix the last commit
5891	which inverted a condition.
5892
58932008-02-25  Emmanuele Bassi  <ebassi@openedhand.com>
5894
5895	* clutter/clutter-actor.c: Remove the usage of g_return_if_fail()
5896	from static functions: either assert or use g_warning() to check
5897	internal state, as g_return_if_fail() can be compiled out.
5898
5899	* clutter/clutter-main.c: Ditto as above.
5900
59012008-02-25  Tomas Frydrych  <tf@openedhand.com>
5902
5903	* clutter/clutter-texture.c:
5904	(texture_update_data):
5905	Set alignment based on actual data rowstride, not the texture
5906	width.
5907
59082008-02-21  Tomas Frydrych  <tf@openedhand.com>
5909
5910	* clutter/x11/clutter-backend-x11.h:
5911	* clutter/x11/clutter-event-x11.c:
5912	* clutter/x11/clutter-x11.h:
5913	(clutter_x11_handle_event):
5914	(clutter_x11_disable_event_retrieval):
5915	Functions to allow to hook into external XEvent retrieval (for
5916	example when using clutter with gtk); NB: this API is tentative.
5917
59182008-02-21  Emmanuele Bassi  <ebassi@openedhand.com>
5919
5920	* clutter/x11/clutter-event-x11.c (event_translate): Ignore
5921	PropertyNotify events if they don't match our window.
5922
5923	* clutter/x11/clutter-stage-x11.c:
5924	(clutter_stage_x11_request_coords): Chain up to the parent's
5925	request coords.
5926
59272008-02-21  Emmanuele Bassi  <ebassi@openedhand.com>
5928
5929	* clutter/x11/clutter-event-x11.c (event_translate): Ignore
5930	ConfigureNotify events if we are painting on a foreign window.
5931
5932	* clutter/x11/clutter-stage-x11.c:
5933	(clutter_stage_x11_request_coords): Reliquish control of the
5934	window size, if we are painting on a foreign window. This fixes
5935	the GtkClutterEmbed widget.
5936
59372008-02-20  Emmanuele Bassi  <ebassi@openedhand.com>
5938
5939	* clutter/clutter-timeline.c (clutter_timeline_set_delay): Relax
5940	the condition to allow 0 msecs of delay (meaning: no delay).
5941
59422008-02-20  Tomas Frydrych  <tf@openedhand.com>
5943
5944	* clutter/Makefile.am:
5945	Added libclutter_ ... _la_DEPENDENCIES to fix dependency tracking.
5946
59472008-02-20  Tomas Frydrych  <tf@openedhand.com>
5948
5949	* clutter/x11/clutter-x11.h:
5950	* clutter/x11/clutter-backend-x11.c:
5951	(clutter_x11_set_display):
5952	Function to set X display connection prior to calling
5953	clutter_init(); stripped loads of trailing space.
5954
59552008-02-20  Tomas Frydrych  <tf@openedhand.com>
5956
5957	* clutter/clutter-marshal.list:
5958	* clutter/glx/Makefile.am:
5959	* clutter/glx/clutter-backend-glx.c:
5960	* clutter/glx/clutter-backend-glx.h:
5961	* clutter/glx/clutter-glx.h:
5962	* clutter/x11/Makefile.am:
5963	ClutterX11TexturePixmap and ClutterGLXTexturePixmap actors (#713;
5964	patch by Johan Bilien).
5965
59662008-02-20  Emmanuele Bassi  <ebassi@openedhand.com>
5967
5968	* clutter/clutter-actor.h:
5969	* clutter/clutter-actor.c:
5970	(clutter_actor_get_abs_opacity): Add function that does what
5971	get_opacity() does now...
5972
5973	(clutter_actor_get_opacity): ... and make get_opacity() do what
5974	it's supposed to be doing. The original get_opacity() returned
5975	a composited value, and there's no way to actually extract the
5976	real opacity value set with set_opacity().
5977
5978	* clutter/clutter-clone-texture.c:
5979	* clutter/clutter-rectangle.c:
5980	* clutter/clutter-texture.c: Update to use get_abs_opacity().
5981
5982	* clutter/clutter-entry.c:
5983	* clutter/clutter-label.c: Ditto. Also, never change the stored
5984	alpha value. (#804)
5985
5986	* tests/Makefile.am:
5987	* tests/test-opacity.c: Test suite for the get_opacity() and
5988	get_abs_opacity() API, and correct opacity handling.
5989
5990	* README: Add note about the change in get_opacity().
5991
59922008-02-19  Chris Lord  <chris@openedhand.com>
5993
5994	* clutter/clutter-model.c: (clutter_model_resort):
5995	Don't return when there's no sort function set, leave that to the
5996	model sub-class
5997
59982008-02-18  Emmanuele Bassi  <ebassi@openedhand.com>
5999
6000	* configure.ac:
6001	* README: Post stable release bump to 0.7.1
6002
60032008-02-18  Emmanuele Bassi  <ebassi@openedhand.com>
6004
6005	* README:
6006	* NEWS: Release 0.6.0
6007
60082008-02-18  Emmanuele Bassi  <ebassi@openedhand.com>
6009
6010	* clutter/clutter-list-model.c:
6011	(clutter_list_model_iter_set_value): Fix a typo in the conversion
6012	code.
6013
60142008-02-18  Chris Lord  <chris@openedhand.com>
6015
6016	* README:
6017	Fix spelling mistake and a typo
6018
60192008-02-18  Emmanuele Bassi  <ebassi@openedhand.com>
6020
6021	* clutter/clutter-actor.c:
6022	(clutter_actor_get_box_from_vertices): Avoid a masking warning
6023	caused by math.h utter braindamage.
6024
60252008-02-18  Emmanuele Bassi  <ebassi@openedhand.com>
6026
6027	* clutter/clutter-actor.c: Document the fact that ancestor can
6028	be NULL in the relative transformation API, and what are the
6029	effects.
6030
60312008-02-15  Matthew Allum  <mallum@openedhand.com>
6032
6033	* clutter/pango/pangoclutter-render.c: (draw_glyph):
6034	More safety checks (#796, Tero Saarni)
6035
60362008-02-15  Chris Lord  <chris@openedhand.com>
6037
6038	* clutter/clutter-entry.c:
6039	* clutter/clutter-group.c:
6040	* clutter/clutter-label.c:
6041	* clutter/clutter-rectangle.c:
6042	* clutter/clutter-texture.c:
6043	More documentation fixes
6044
60452008-02-15  Chris Lord  <chris@openedhand.com>
6046
6047	* clutter/clutter-entry.c: (clutter_entry_class_init):
6048	More documentation fixes
6049
60502008-02-15  Chris Lord  <chris@openedhand.com>
6051
6052	* clutter/clutter-label.c: (clutter_label_class_init):
6053	More documentation fixes
6054
60552008-02-15  Chris Lord  <chris@openedhand.com>
6056
6057	* clutter/clutter-clone-texture.c:
6058	* clutter/clutter-texture.c: (clutter_texture_class_init):
6059	More documentation fixes
6060
60612008-02-15  Chris Lord  <chris@openedhand.com>
6062
6063	* clutter/clutter-actor.c:
6064	* clutter/clutter-container.c:
6065	* clutter/clutter-media.c:
6066	* clutter/clutter-rectangle.c:
6067	* clutter/clutter-stage.c: (clutter_stage_class_init):
6068	* clutter/clutter-stage.h:
6069	* clutter/clutter-texture.c:
6070	* doc/reference/clutter-docs.sgml:
6071	Fix more documentation
6072
60732008-02-15  Emmanuele Bassi  <ebassi@openedhand.com>
6074
6075	* clutter/clutter-actor.[ch]:
6076	* clutter/clutter-types.h:
6077	* doc/reference/clutter-docs.sgml: Fix a lot of documentation.
6078
60792008-02-15  Matthew Allum  <mallum@openedhand.com>
6080
6081	* clutter/cogl/gles/cogl.c: (cogl_paint_init):
6082	Remove depth test getting turned on by default (unlike GL backend)
6083
60842008-02-15  Tomas Frydrych  <tf@openedhand.com>
6085
6086	* configure.ac:
6087	* clutter/clutter-version.h.in:
6088	* build/msvc_2k5/clutter-version.h:
6089	Removed unused --without-fpu configure option and CLUTTER_NO_FPU
6090	macro
6091
60922008-02-15  Tomas Frydrych  <tf@openedhand.com>
6093
6094	* build/mingw/README:
6095	* build/mingw/mingw-cross-compile.sh:
6096	Script that automates cross compilation with mingw by Neil Roberts
6097	<bpeeluk@yahoo.co.uk>
6098
60992008-02-15  Emmanuele Bassi  <ebassi@openedhand.com>
6100
6101	* clutter/clutter-actor.[ch]: Rename
6102	clutter_actor_get_box_from_vertices() to
6103	clutter_actor_box_get_from_vertices().
6104
6105	* clutter/clutter-group.c (clutter_group_query_coords): Fix the
6106	query_coords() implementation.
6107
61082008-02-15  Tomas Frydrych  <tf@openedhand.com>
6109
6110	* clutter/clutter-actor.c:
6111	* clutter/clutter-actor.h:
6112	(clutter_group_query_coords):
6113	Added function to translate vertex array to a bounding box.
6114
6115	(clutter_actor_is_scaled):
6116	(clutter_actor_is_rotated):
6117	Fixed documentation.
6118
61192008-02-15  Tomas Frydrych  <tf@openedhand.com>
6120
6121	* clutter/clutter-group.c: (clutter_group_query_coords):
6122	Disabled new code taking into account actor scale and rotation.
6123
61242008-02-14  Tomas Frydrych  <tf@openedhand.com>
6125
6126	* clutter/clutter-actor.c:
6127	* clutter/clutter-actor.h:
6128	(clutter_actor_is_scaled):
6129	(clutter_actor_is_rotated):
6130	Convenience functions to test whether actor is scaled or rotated.
6131
6132	(clutter_actor_apply_relative_transform_to_point):
6133	Removed unused variable.
6134
6135	* clutter/clutter-group.c:
6136	(clutter_group_query_coords):
6137	Use clutter_actor_get_relative_vertices() to calculate bounding
6138	boxes of children that are scaled or rotated.
6139
61402008-02-14  Tomas Frydrych  <tf@openedhand.com>
6141
6142	* clutter/clutter-actor.c:
6143	* clutter/clutter-actor.h:
6144	(clutter_actor_get_relative_vertices):
6145	(clutter_actor_apply_relative_transform_to_point):
6146	Functions to calculate actor vertices in the plane of a given
6147	ancestor.
6148
61492008-02-12  Chris Lord  <chris@openedhand.com>
6150
6151	* clutter/clutter-texture.c: (texture_get_tile_pixbuf),
6152	(clutter_texture_get_pixbuf):
6153	Fix copying textures to pixbufs for tiled textures and correct #ifndef
6154	typo
6155
6156	* clutter/clutter-util.c:
6157	Amend documentation
6158
61592008-02-12  Matthew Allum  <mallum@openedhand.com>
6160
6161	* clutter/clutter-texture.c: (texture_get_tile_pixbuf):
6162	ifdef out 'leaked' GL only API call.
6163
61642008-02-12  Tomas Frydrych  <tf@openedhand.com>
6165
6166	* clutter/clutter-texture.c (texture_update_data):
6167	Fixed incorrect calculation of offset into texture data (needs to
6168	use width of the texture, not of the updated area).
6169
61702008-02-12  Tomas Frydrych  <tf@openedhand.com>
6171
6172	* clutter/clutter-texture.c (texture_update_data):
6173	Fixed incorrect aligment of texture data.
6174
61752008-02-12  Tomas Frydrych  <tf@openedhand.com>
6176
6177	* clutter/x11/clutter-event-x11.c (event_translate):
6178	Ignore events not directed at the stage window once they have been
6179	passed to the filter functions.
6180
61812008-02-11  Matthew Allum  <mallum@openedhand.com>
6182
6183	* clutter/clutter-actor.c:
6184	Minor documentation tweak to class description.
6185
6186	* clutter/clutter-behaviour-scale.c:
6187	'Force' start + end vals of scale behaviour
6188	(#779, Havoc Pennington)
6189
61902008-02-11  Emmanuele Bassi  <ebassi@openedhand.com>
6191
6192	* README:
6193	* NEWS: Release 0.5.6
6194
6195	* configure.ac: Post release bump to 0.5.7.
6196
6197	* clutter/clutter-behaviour-scale.c:
6198	* tests/test-fbo.c: Fix compilation warnings.
6199
62002008-02-11  Tomas Frydrych  <tf@openedhand.com>
6201
6202	* clutter/clutter-actor.c (clutter_actor_transform_stage_point):
6203	Moved part of the calculation to floating point to avoid overflow
6204	of ClutterFixed range for large actors (bug 613).
6205
62062008-02-10  Matthew Allum    <mallum@o-hand.com>
6207
6208	* clutter/osx/clutter-stage-osx.c
6209	Fix up a couple of typos breaking build.
6210
62112008-02-08  Emmanuele Bassi  <ebassi@openedhand.com>
6212
6213	* clutter/clutter-actor.c: Add actor box diagram and notes.
6214
62152008-02-08  Emmanuele Bassi  <ebassi@openedhand.com>
6216
6217	* clutter/clutter-behaviour-path.c: Move the nice graph and
6218	description from the Path behaviour...
6219
6220	* clutter/clutter-behaviour.c: ... to the main Behaviour class.
6221
62222008-02-08  Emmanuele Bassi  <ebassi@openedhand.com>
6223
6224	* clutter/clutter-behaviour-path.c: Add a paragraph describing
6225	the effects of different alpha functions on the path behaviour.
6226
62272008-02-08  Emmanuele Bassi  <ebassi@openedhand.com>
6228
6229	* clutter/clutter-actor.c: Reference the newly added event-flow.png
6230
6231	* clutter/clutter-alpha.c: Ditto, with alpha-func.png
6232
6233	* clutter/clutter-texture.c: Fix the XML.
6234
62352008-02-08  Emmanuele Bassi  <ebassi@openedhand.com>
6236
6237	* clutter/clutter-behaviour-path.c: Reference the newly
6238	added image showing the effects of different alpha functions
6239	on the same path behaviour.
6240
6241	* configure.ac: Find out the prefix of some of the libraries
6242	we depend upon, so that gtk-doc can fix the references for us.
6243
62442008-02-08  Matthew Allum  <mallum@openedhand.com>
6245
6246	* clutter/clutter-texture.c:
6247	Tidy up offscreen code, adding into realize/unrealize.
6248	Add more safety code.
6249	Improve documentation.
6250
62512008-02-08  Emmanuele Bassi  <ebassi@openedhand.com>
6252
6253	* clutter/clutter-script.c:
6254	(resolve_alpha_func): Use a whitelist containing the alpha function
6255	provided by Clutter, as a fallback in case g_module_open() does not
6256	work.
6257
6258	(clutter_script_parse_alpha): Add an explicit warning in case we
6259	cannot find the alpha function used inside a UI definition.
6260
62612008-02-07  Tomas Frydrych  <tf@openedhand.com>
6262
6263	* clutter/clutter-group.c (clutter_group_query_coords):
6264	Take into account the anchor point when calculating the box size.
6265
62662008-02-07  Emmanuele Bassi  <ebassi@openedhand.com>
6267
6268	* clutter/clutter-actor.c: Add a note on clutter_actor_set_size()
6269	reguarding groups.
6270
6271	* clutter/clutter-group.c: Clarify group sizing.
6272
62732008-02-07  Øyvind Kolås  <pippin@o-hand.com>
6274
6275	* tests/test-shader.c: (button_release_cb): added simplified
6276	implementation of a box-blur shader from Gwenole Beauchesne that
6277	should work on GLSL implementing low-end IGPs not implementing
6278	dynamic branching. The original code used crashed some of these
6279	due to bugs in drivers or similar. Resolves bug #710.
6280
62812008-02-07  Tomas Frydrych  <tf@openedhand.com>
6282
6283	* tests/test-actors.c:
6284	Reverted previous change.
6285
62862008-02-07  Tomas Frydrych  <tf@openedhand.com>
6287
6288	* clutter/clutter-actor.c:
6289	(clutter_actor_set_property):
6290	Fixed handling of PROP_ROTATE_CENTER_Y, ROTATE_CENTER_Z
6291
6292	* tests/test-actors.c:
6293	Adjusted to use anchor point for both group and hands.
6294
62952008-02-07  Neil J. Patel  <njp@o-hand.com>
6296
6297	* tests/test-actors.c: (frame_cb), (main):
6298	Changed set_anchor to move_anchor.
6299	Changed clutter_actor_rotate x & y values to 0,0.
6300	Switched on scaling because it seems to work without drifting.
6301
63022008-02-07  Emmanuele Bassi  <ebassi@openedhand.com>
6303
6304	* clutter/clutter-script-parser.c:
6305	(clutter_script_get_type_from_symbol),
6306	(clutter_script_get_type_from_class): Use BIND_LAZY flag
6307	when looking at the symbols, so we don't load them all up.
6308
6309	* clutter/clutter-script.c (resolve_alpha_func): Ditto as above.
6310
63112008-02-07  Øyvind Kolås  <pippin@o-hand.com>
6312
6313	* clutter/clutter-actor.c:
6314	(_clutter_actor_apply_modelview_transform): perform translation as
6315	well as anchor point adjustment based on self not being stage (and
6316	not by self not being an orphan).
6317
63182008-02-07  Matthew Allum  <mallum@openedhand.com>
6319
6320	* clutter/clutter-stage.c:
6321	* clutter/clutter-stage.h:
6322	* clutter/eglnative/clutter-stage-egl.c:
6323	* clutter/eglx/clutter-stage-egl.c:
6324	* clutter/osx/clutter-stage-osx.c:
6325	* clutter/sdl/clutter-stage-sdl.c:
6326	* clutter/x11/clutter-stage-x11.c:
6327	Add at least somne basic offscreen handling into all backends.
6328	Remove unused clutter_stage_set_offscreen vfunc. (#549)
6329
6330	* clutter/clutter-texture.c:
6331	Minor API doc tweak, noting rowstride source in set_area
6332
63332008-02-07  Emmanuele Bassi  <ebassi@openedhand.com>
6334
6335	* clutter/clutter-score.c (traverse_children): Actually implement
6336	clutter_score_list_timelines().
6337
6338	* tests/test-score.c (main): Test clutter_score_list_timelines().
6339
63402008-02-07  Matthew Allum  <mallum@openedhand.com>
6341
6342	* clutter/pango/pangoclutter-render.c:
6343	Warn if requested glyph is too big for underlying texture cache.
6344	(see #666)
6345
63462008-02-07  Matthew Allum  <mallum@openedhand.com>
6347
6348	* clutter/clutter-texture.c: (texture_upload_data):
6349	Remove random appearing 'priv->filter_quality =1' (#643)
6350
63512008-02-06  Matthew Allum  <mallum@openedhand.com>
6352
6353	* clutter/clutter-texture.c:
6354	Minor clean up from last commit.
6355
6356	* tests/test-fbo.c:
6357	Small tweak (rotate offscreen, rather than resize)
6358
63592008-02-06  Matthew Allum  <mallum@openedhand.com>
6360
6361	* clutter/clutter-texture.c:
6362	Initial attempt at handling resizing/tranformed source textures.
6363
6364	* clutter/pango/pangoclutter-render.c: (draw_glyph):
6365	Guards against freetype returning NULL bitmaps and
6366	thus causing device by zeros on NVIDIA drivers. (see ml)
6367
63682008-02-05  Matthew Allum  <mallum@openedhand.com>
6369
6370	* clutter/clutter-actor.c: (clutter_actor_get_vertices):
6371	Make sure GL related Matrices are initialised. Fixes #756
6372
6373	* clutter/clutter-texture.c:
6374	Fix up code from Norways answer to Jean-Michel Basquiat.
6375	(warning on tile_get_pixbuf)
6376
63772008-02-05  Øyvind Kolås  <pippin@o-hand.com>
6378
6379	* clutter/clutter-texture.c: removed spurious left over debug printf.
6380
63812008-02-05  Øyvind Kolås  <pippin@o-hand.com>
6382
6383	* clutter/clutter-texture.c: applied modified patch from Gwenole
6384	Beuchesne adressing bug #635. Adressing a buffer overflow in
6385	clutter_texture_get_pixbuf() when tiling is forced.
6386
63872008-02-04  Emmanuele Bassi  <ebassi@openedhand.com>
6388
6389	* clutter/clutter-shader.c (clutter_shader_constructor): Keep the
6390	constructor line under the 80 columns using a variable.
6391
63922008-02-04  Emmanuele Bassi  <ebassi@openedhand.com>
6393
6394	* clutter/clutter-actor.c:
6395	* clutter/clutter-shader.c: Small documentation and style fixes
6396
6397	* tests/test-scale.c: Constify the gravities array.
6398
63992008-02-04  Chris Lord  <chris@openedhand.com>
6400
6401	* clutter/clutter-actor.c: (clutter_actor_transform_stage_point):
6402	Check that x_out and y_out != NULL before setting their contents
6403
64042008-02-04  Øyvind Kolås  <pippin@o-hand.com>
6405
6406	* clutter/clutter-timeline.c: (clutter_timeline_rewind): updated
6407	documentation to take direction into account.
6408
64092008-02-04  Øyvind Kolås  <pippin@o-hand.com>
6410
6411	* tests/test-fbo.c: (make_shader):
6412	* tests/test-shader.c: (main): multiply the resulting gl_FragColor
6413	with gl_Color before being done to take opacity into account in the
6414	GLSL fragments.
6415
64162008-02-04  Øyvind Kolås  <pippin@o-hand.com>
6417
6418	* clutter/clutter-actor.[ch]: added clutter_actor_get_shader and
6419	renamed clutter_actor_apply_shader to be clutter_actor_set_shader.
6420	Reindented/aligned header.
6421	* clutter/clutter-texture.c: (clutter_texture_paint): temporarily
6422	disable the shader on top of the clutter context's shader stack while
6423	rendering into the FBO.
6424	* tests/test-fbo.c: (main): s/apply_shader/set_shader/
6425	* tests/test-shader.c: (button_release_cb), (main):
6426	s/apply_shader/set_shader/
6427
64282008-02-03  Matthew Allum  <mallum@openedhand.com>
6429
6430	* clutter/clutter-actor.c: (clutter_actor_set_rotationx):
6431	Add notify signal for set_rotate
6432
6433	* clutter/clutter-texture.c:
6434	Add basic cleanup code for fbo's
6435
6436	* tests/test-fbo.c: (main):
6437	Minor notes.
6438
6439	* clutter/osx/clutter-stage-osx.c: (clutter_stage_osx_realize):
6440	Turn on vblanking.
6441
64422008-02-03  Matthew Allum  <mallum@openedhand.com>
6443
6444	* clutter/clutter-shader.c:
6445	Minor formatting cleanups to fit in 80 cols.
6446
6447	* clutter/clutter-texture.c:
6448	More safety checks, clean ups in clutter_texture_new_from_actor()
6449
6450	* clutter/cogl/gl/cogl.c:
6451	Always clear the FBO initially when rendering
6452
6453	* tests/test-fbo.c:
6454	Overhall the test as to be more useful (and show current issues)
6455
64562008-02-02  Matthew Allum  <mallum@openedhand.com>
6457
6458	* clutter/clutter-timeline.c:
6459	Document frame number limits in new-frame signal.
6460
6461	* clutter/x11/clutter-event-x11.c:
6462	Remove uneeded error trap (#751)
6463
64642008-02-01  Matthew Allum  <mallum@openedhand.com>
6465
6466	* clutter/cogl/cogl.h:
6467	* clutter/cogl/gl/cogl.c: (cogl_paint_init), (cogl_enable):
6468	* clutter/cogl/gles/cogl.c: (cogl_enable):
6469
6470       Disable the depth test and buffer as has some strange side
6471       effects, mainly on x/y axis rotation with multiple layers at
6472       same depth (eg rotating text on a bg has very strange
6473       effect). Seems no clean 100% effective way to fix without other
6474       odd issues.. So for now move to application to handle and add
6475       cogl_enable_depth_test() as for custom actors (i.e groups) to
6476       enable if need be.
6477
64782008-02-01  Matthew Allum  <mallum@openedhand.com>
6479
6480	* clutter/clutter-texture.c: (clutter_texture_new_from_actor):
6481	Fix typo breaking FBO rendering on anything other than a cloned
6482	texture.
6483
64842008-02-01  Matthew Allum  <mallum@openedhand.com>
6485
6486	* clutter/clutter-feature.h:
6487	* clutter/clutter-texture.c:
6488	* clutter/clutter-texture.h:
6489	* clutter/cogl/cogl.h:
6490	* clutter/cogl/gl/cogl.c:
6491	* clutter/cogl/gles/cogl.c:
6492	* tests/Makefile.am:
6493	* tests/test.fbo.c:
6494	Add initial support for FBO's in Clutter (OpenGL only so far).
6495	See new clutter_texture_new_from_actor()
6496	Initial implementation, needs work.
6497
6498	* clutter/x11/clutter-stage-x11.c:
6499	(clutter_stage_x11_set_cursor_visible):
6500	Fall back to again not relying on xfixes to hide cursor. *sigh*
6501
6502	* clutter/clutter-deprecated.h:
6503	Add clutter_group_find_child_by_id
6504
65052008-02-01  Øyvind Kolås  <pippin@o-hand.com>
6506
6507	* clutter/cogl/gles/cogl.c: (cogl_rectangle_internal): increase size
6508	of GLfixed[] array to make contents fit.
6509
65102008-02-01  Emmanuele Bassi  <ebassi@openedhand.com>
6511
6512	* clutter/clutter-actor.h: Clean up a bit the flag-related macros.
6513
65142008-02-01  Emmanuele Bassi  <ebassi@openedhand.com>
6515
6516	* clutter/clutter-actor.c:
6517	(clutter_actor_get_property): Use clutter_actor_get_reactive()
6518	instead of the IS_REACTIVE() macro.
6519
6520	(clutter_actor_set_reactive): Emit the notify signal for the
6521	reactive property.
6522
6523	* clutter/clutter-timeline.c:
6524	(timeline_timeout_func),
6525	(clutter_timeline_get_delta): Coding style fixes.
6526
65272008-01-31  Rob Bradford  <rob@openedhand.com>
6528
6529	* clutter/glx/clutter-stage-glx.c:
6530	* clutter/glx/clutter-backend-glx.c:
6531	* clutter/glx/clutter-backend-glx.h:
6532	Fix formatting.
6533
65342008-01-31  Emmanuele Bassi  <ebassi@sprite>
6535
6536	* clutter/clutter-timeline.c (clutter_timeline_skip): Don't
6537	add the frames outside the direction check. (thanks to benoar
6538	on clutter-list for spotting it)
6539
65402007-01-31  Tomas Frydrych  <tf@openedhand.com>
6541
6542	* clutter/clutter-actor.c:
6543	(clutter_actor_transform_vertices):
6544	Call clutter_actor_query_coords() instead of accessing the actor
6545	box, so that actors that calculate their bounding box on the fly
6546	(like ClutterGroup) work.
6547
6548	* (_clutter_actor_apply_modelview_transform_recursive):
6549	Made to work for parentless actors.
6550
65512008-01-31  Øyvind Kolås  <pippin@o-hand.com>
6552
6553	* tests/test-depth.c: added a box of cloned hands to further expand
6554	the scope of depth testing scenarios exercised by test-depth.
6555
65562008-01-31  Øyvind Kolås  <pippin@o-hand.com>
6557
6558	* tests/test-depth.c: (timeline_completed): make use of
6559	clutter_timeline_set_direction instead of static state.
6560	(raise_top): made rectangle remain at fixed depth and raise
6561	above each other.
6562	(janus_group): added a rectangle with two faces, one red and
6563	one green, that spins around.
6564
65652008-01-31  Emmanuele Bassi  <ebassi@openedhand.com>
6566
6567	* clutter/clutter-entry.h:
6568	* clutter/clutter-entry.c:
6569	(clutter_entry_set_cursor_position),
6570	(clutter_entry_get_cursor_position): Rename [gs]et_position()
6571	to [gs]set_cursor_position(), and avoid method name collisions
6572	with bindings for high-level languages.
6573
6574	* clutter/clutter-deprecated.h: Add replacement warnings for the
6575	renamed methods.
6576
65772008-01-31  Emmanuele Bassi  <ebassi@openedhand.com>
6578
6579	* clutter/clutter-actor.c (clutter_actor_init): Explicitly
6580	memset() to 0 the clip container, so if you get the clip without
6581	having set it, you won't get garbage.
6582
65832008-01-31  Rob Bradford  <rob@openedhand.com>
6584
6585	* clutter/x11/clutter-backend-x11-private.h:
6586	Add missing start to comment
6587
6588	* clutter/x11/clutter-backend-x11.c:
6589	* clutter/x11/clutter-event-x11.c:
6590	* clutter/x11/clutter-stage-x11.c:
6591	* clutter/x11/clutter-x11.h:
6592	Remove tabs.
6593
65942008-01-30  Emmanuele Bassi  <ebassi@openedhand.com>
6595
6596	* README: Add the osx flavour, and mark it experimental,
6597	along with the sdl backend. EGL-based backends should not be
6598	considered experimental anymore, even though they might require
6599	tweaking.
6600
66012008-01-30  Emmanuele Bassi  <ebassi@openedhand.com>
6602
6603	* HACKING: Expand the "document API" point, and the release
6604	process.
6605
6606	* README: Update the release notes regarding the scale behaviour,
6607	now that the gravity has been removed.
6608
66092007-01-30  Tomas Frydrych  <tf@openedhand.com>
6610
6611	* clutter/clutter-actor.c:
6612	* clutter/clutter-actor.h:
6613	Added new clutter_actor_move_anchor_point_ API.
6614
6615	* clutter/clutter-behaviour-scale.c:
6616	* clutter/clutter-behaviour-scale.h:
6617	* clutter/clutter-effect.c:
6618	* clutter/clutter-effect.h:
6619	* tests/test-actors.c:
6620	* tests/test-effects.c:
6621	* tests/test-scale.c:
6622	Removed gravity from ClutterBehaviourScale.
6623
66242008-01-27  Emmanuele Bassi  <ebassi@openedhand.com>
6625
6626	* tests/test-depth.c (main): Use a group instead of pushing
6627	the actors on the stage.
6628
66292008-01-25  Emmanuele Bassi  <ebassi@openedhand.com>
6630
6631	* clutter/clutter-group.c (sort_z_order): Invert condition to
6632	return to the same as in revision 1976.
6633
66342008-01-25  Emmanuele Bassi  <ebassi@openedhand.com>
6635
6636	* clutter/clutter-label.c (clutter_label_query_coords): Check
6637	if the layout logical rectangle size is bigger than the bounding
6638	box; this usually means that the bounding box changed in one
6639	point and the label private allocation needs to be
6640	updated. (#724)
6641
66422008-01-25  Emmanuele Bassi  <ebassi@openedhand.com>
6643
6644	* clutter/x11/Makefile.am: Add the generated clutter-x11 pkg-config
6645	file to CLEANFILES, to pass distcheck.
6646
6647	* Makefile.am:
6648	* clutter/Makefile.am: Tweak up the Makefiles.
6649
6650	* README:
6651	* NEWS: Release 0.5.4
6652
6653	* configure.ac: Post-release bump to 0.5.5
6654
66552008-01-25  Emmanuele Bassi  <ebassi@openedhand.com>
6656
6657	* clutter/clutter-group.c: Use a shorter Z order sorting function,
6658	avoiding the checks.
6659
66602008-01-25  Øyvind Kolås  <pippin@o-hand.com>
6661
6662	* clutter/clutter-shader.c: added documentation strings for
6663	ClutterShader.
6664
66652008-01-23  Emmanuele Bassi  <ebassi@openedhand.com>
6666
6667	* Makefile.am: Use variables, instead of substitutions.
6668
6669	* clutter/clutter-private.h:
6670	* clutter/clutter-main.h: Make clutter_do_event() public again,
6671	as we need it in clutter-gtk.
6672
6673	* configure.ac:
6674	* clutter/x11/Makefile.am:
6675	* clutter/x11/clutter-x11.pc.in: Add a clutter-x11 pkg-config
6676	file for clutter-gtk, as it depends on the X11 backend API, as
6677	implemented by the GLX and EGLX backends.
6678
6679	* clutter/x11/clutter-event-x11.c (event_translate): Do not
6680	propagate DestroyNotify events if the stage doesn't own the
6681	window.
6682
6683	* tests/test-scale.c (main): Set values different from the default.
6684
66852008-01-21  Emmanuele Bassi  <ebassi@openedhand.com>
6686
6687	* clutter/clutter-behaviour-scale.c:
6688	(clutter_behaviour_scale_set_property),
6689	(clutter_behaviour_scale_class_init): Fix stupid typo in the
6690	y-scale-end property declaration. (#720)
6691
66922008-01-21  Emmanuele Bassi  <ebassi@openedhand.com>
6693
6694	* clutter/clutter-behaviour-depth.h:
6695	* clutter/clutter-behaviour-depth.c:
6696	(clutter_behaviour_depth_set_bounds),
6697	(clutter_behaviour_depth_get_bounds): Add the depth-start and
6698	depth-end accessors.
6699
6700	* tests/test-depth.c (timeline_completed): Use set_bounds()
6701	instead of g_object_set().
6702
6703	* clutter.symbols: Add clutter_behaviour_depth_set_bounds()
6704	and clutter_behaviour_opacity_get_bounds() to the list of
6705	public symbols.
6706
67072008-01-21  Emmanuele Bassi  <ebassi@openedhand.com>
6708
6709	* clutter/clutter-behaviour-scale.c: Use separate variables for
6710	storing the scale boundaries; apparently, using arrays broke
6711	the python bindings. (#720)
6712
67132008-01-21  Matthew Allum  <mallum@openedhand.com>
6714
6715	* clutter/clutter-group.c:
6716	Make sure unrealizing a group also unrealizes children.
6717
6718	* clutter/glx/clutter-stage-glx.c:
6719	Chain up to group unrealize to make sure textures get unrealized
6720	when changing context (see #718)
6721
6722	* clutter/clutter-texture.c:
6723	Formatting cleanups
6724
67252008-01-21  Øyvind Kolås  <pippin@gimp.org>
6726
6727	* tests/test-shader.c: fix incompatible types in shader programs
6728
6729	Apparently floats can't be multiplied or divided with ints without
6730	explicit type casts. Use 2.0 or float(var) where appropriate. Patch
6731	from Tommi Komulainen (#715).
6732
67332008-01-19  Emmanuele Bassi  <ebassi@openedhand.com>
6734
6735	* clutter/clutter-main.c (generate_enter_leave_events): Do not
6736	take the explicit reference, and let clutter_event_copy() do it
6737	for us. (#714, Neil Roberts)
6738
67392008-01-19  Emmanuele Bassi  <ebassi@openedhand.com>
6740
6741	* clutter/clutter-event.c (clutter_event_copy): Take an extra
6742	reference on the related actor in ClutterEventCrossing that we
6743	explicitly unref in clutter_event_free(). (#714, Neil Roberts)
6744
67452008-01-18  Emmanuele Bassi  <ebassi@openedhand.com>
6746
6747	* tests/test-actors.c (input_cb): Fix the callback signature;
6748	hide the clicked actor only if it's a hand.
6749
67502008-01-18  Emmanuele Bassi  <ebassi@openedhand.com>
6751
6752	* clutter/clutter-main.c (clutter_do_event): Check the
6753	return value of the ::event signal for the CLUTTER_DELETE
6754	event type.
6755
6756	* clutter/clutter-stage.c (clutter_stage_event): Emit the
6757	::event signal when receiving the CLUTTER_DELETE event; this
6758	allows to intercept the user's closing of the stage window.
6759
67602007-01-18  Tomas Frydrych  <tf@openedhand.com>
6761
6762	* clutter/clutter-fixed.h:
6763	Added missing proto for clutter_fixed_qdivx().
6764
67652007-01-18  Tomas Frydrych  <tf@openedhand.com>
6766
6767	* clutter/clutter-fixed.h:
6768	* clutter/clutter-fixed.c:
6769	Added CLUTTER_QDIV() for 64-bit division (bug 564, patch by
6770	Gwenole Beauchesne).
6771
67722008-01-18  Emmanuele Bassi  <ebassi@openedhand.com>
6773
6774	* clutter/clutter-event.h: Add a gunichar field for the Unicode
6775	representation of the key. (#555)
6776
67772008-01-18  Emmanuele Bassi  <ebassi@openedhand.com>
6778
6779	* clutter/clutter-actor.h:
6780	* clutter/clutter-script.h:
6781	* clutter/clutter-stage.h:
6782	* clutter/clutter-units.h: Documentation fixes and additions.
6783
67842008-01-18  Emmanuele Bassi  <ebassi@openedhand.com>
6785
6786	* clutter.symbols: Add ClutterBehaviourOpacity accessors.
6787
6788	* clutter/clutter-behaviour-opacity.h:
6789	* clutter/clutter-behaviour-opacity.c:
6790	(clutter_behaviour_opacity_set_bounds),
6791	(clutter_behaviour_opacity_get_bounds): Add accessors for the
6792	opacity-start and opacity-end properties.
6793
6794	* clutter/clutter-behaviour-scale.h: Fix the argument name to
6795	avoid complaints by gtk-doc.
6796
67972008-01-17  Emmanuele Bassi  <ebassi@openedhand.com>
6798
6799	* clutter/clutter-behaviour-scale.c:
6800	(clutter_behaviour_scale_set_gravity): Notify on the right property
6801	name.
6802
68032008-01-17  Emmanuele Bassi  <ebassi@openedhand.com>
6804
6805	* clutter.symbols: Add new ClutterBehaviourScale setters.
6806
6807	* clutter/clutter-behaviour-scale.[ch]: Split the scaling factors
6808	on both axis. Add setters for all the behaviour properties.
6809
6810	* clutter/clutter-effect.h:
6811	* clutter/clutter-effect.c (clutter_effect_scale): Split the
6812	final scale factor to match the ClutterBehaviourScale changes. (#709)
6813
6814	* tests/test-actors.c:
6815	* tests/test-effects.c:
6816	* tests/test-rotate.c:
6817	* tests/test-scale.c: Update after API change.
6818
68192008-01-16  Emmanuele Bassi  <ebassi@openedhand.com>
6820
6821	* clutter/cogl/cogl.h: Rename COGLhandleARB to COGLhandle.
6822
6823	* clutter/cogl/gl/cogl-defines.h.in:
6824	* clutter/cogl/gl/cogl.c: Update GL implementation of COGL.
6825
6826	* clutter/cogl/gles/cogl-defines.h:
6827	* clutter/cogl/gles/cogl.c: Update GLES implementation of COGL.
6828
6829	* clutter/clutter-shader.c: Fix ClutterShader to use the new
6830	COGLhandle type instead of COGLhandlerARB.
6831
68322008-01-16  Emmanuele Bassi  <ebassi@openedhand.com>
6833
6834	Define COGLhandleARB. (patch by Johan Bilien)
6835
6836	* clutter/cogl/gles/cogl-defines.h: Define COGLhandleARB on
6837	GLES as well (using GLuint)
6838
6839	* clutter/cogl/gles/cogl.c: Use COGLhandleARB.
6840
68412008-01-14  Tommi Komulainen  <tommi.komulainen@iki.fi>
6842
6843	reviewed by: Emmanuele Bassi  <ebassi@openedhand.com>
6844
6845	* clutter/osx/clutter-event-osx.c (_clutter_event_osx_put):
6846	Initialize ClutterEvent structure with zeroes (#672)
6847
6848	The 'source' member was uninitialized and being referenced in
6849	clutter_do_event leading to crash.
6850
68512008-01-14  Emmanuele Bassi  <ebassi@openedhand.com>
6852
6853	* tests/test-scale.c: Improve test case for scaling (#684,
6854	Jaap A. Haitsma)
6855
68562008-01-14  Emmanuele Bassi  <ebassi@openedhand.com>
6857
6858	* clutter/clutter-timeline.c (timeline_timeout_func): Fix
6859	check if the last frame was reached by skipping a frame (#654,
6860	Johan Bilien)
6861
68622008-01-14  Emmanuele Bassi  <ebassi@openedhand.com>
6863
6864	* clutter/clutter-shader.c: Use correct format string for
6865	gssize. (#695, Tommi Komulainen)
6866
68672008-01-14  Emmanuele Bassi  <ebassi@openedhand.com>
6868
6869	* clutter/cogl/gl/cogl.c (cogl_get_proc_address): Implement non-GLX
6870	version using GModule and looking up the symbol from the running
6871	process. It should work when linked to library providing the
6872	requested function. (#696, Tommi Komulainen)
6873
68742008-01-14  Emmanuele Bassi  <ebassi@openedhand.com>
6875
6876	* configure.ac: Post-release bump to 0.5.3
6877
6878	* README:
6879	* NEWS: Release 0.5.2
6880
68812008-01-14  Emmanuele Bassi  <ebassi@openedhand.com>
6882
6883	* clutter.symbols: Add clutter_model_insertv()
6884
6885	* clutter/clutter-model.[ch] (clutter_model_insertv): Add a vector
6886	based insertion API, for language bindings
6887
68882008-01-12  Emmanuele Bassi  <ebassi@openedhand.com>
6889
6890	* clutter/clutter-effect.c (clutter_effect_rotate): Make the
6891	rotate effect work on the passed axis, instead of hardcoding
6892	the X axis. (#700, Neil Roberts)
6893
68942008-01-10  Øyvind Kolås  <pippin@gimp.org>
6895
6896	Added COGLhandleARB since the underlying type on OSX is void*,
6897	patch from Tommi Komulainen <tommi.komulainen@iki.fi>, (#694)
6898
6899	* clutter/cogl/gl/cogl-defines.h.in: Added COGLhandleARB typedef.
6900	* clutter/cogl/cogl.h:
6901	* clutter/cogl/gl/cogl.c:
6902	* clutter/clutter-shader.c: Use COGLhandleARB instead of COGLint when
6903	referring to program or shader handles.
6904
69052008-01-09  Emmanuele Bassi  <ebassi@openedhand.com>
6906
6907	* clutter/Makefile.am:
6908	* clutter/clutter.h:
6909	* clutter/clutter-list-model.[ch]: Complete the ClutterModelDefault
6910	to ClutterListModel rename by renaming the source files
6911
69122008-01-09  Emmanuele Bassi  <ebassi@openedhand.com>
6913
6914	* clutter/clutter-model-default.[ch]: Rename ClutterModelDefault
6915	into ClutterListModel, to make it clear that the default
6916	ClutterModel implementation is list-based
6917
6918	* tests/test-model.c: Update call
6919
69202008-01-09  Emmanuele Bassi  <ebassi@openedhand.com>
6921
6922	* clutter/clutter-model-default.c:
6923	(clutter_model_default_new),
6924	(clutter_model_default_newv): Move the constructors in the
6925	right file
6926
6927	* clutter/clutter-model-private.h: Add a private header for
6928	the ClutterModel implementations
6929
6930	* clutter/clutter-model.c:
6931	(clutter_model_check_type),
6932	(clutter_model_set_n_columns),
6933	(clutter_model_set_column_type): Mark as private to Clutter,
6934	not static to ClutterModel
6935
6936	* clutter/Makefile.am: Add clutter-model-private.h
6937
69382008-01-09  Emmanuele Bassi  <ebassi@openedhand.com>
6939
6940	* clutter/clutter-label.c:
6941	(clutter_label_ensure_layout): Fix the ClutterUnits to Pango
6942	scale conversion.
6943
69442008-01-08  Emmanuele Bassi  <ebassi@openedhand.com>
6945
6946	* clutter/clutter-model.c:
6947	(clutter_model_appendv),
6948	(clutter_model_prependv): Fix the columns length pre-condition
6949
69502008-01-07  Emmanuele Bassi  <ebassi@openedhand.com>
6951
6952	* clutter/clutter-model-default.[ch]: Remove the ClutterModelDefault
6953	iterator symbols from the public API; the iterator implementation
6954	is a detail of the default ClutterModel class
6955
6956	* clutter.symbols: Update
6957
69582008-01-07  Emmanuele Bassi  <ebassi@openedhand.com>
6959
6960	* clutter/clutter-model.h:
6961	* clutter/clutter-model.c:
6962	(clutter_model_appendv),
6963	(clutter_model_prependv): Add vector based API for bindings.
6964
6965	(clutter_model_get_column_name),
6966	(clutter_model_get_column_type),
6967	(clutter_model_set_sorting_column): Fix the check in the condition
6968	on the column index.
6969
6970	* tests/test-scale.c (on_timeline_completed), (main): Fix spelling
6971
6972	* clutter.symbols: Update public symbols
6973
69742008-01-04  Emmanuele Bassi  <ebassi@openedhand.com>
6975
6976	* clutter.symbols: Add clutter_actor_move_byu()
6977
6978	* clutter/clutter-actor.h:
6979	* clutter/clutter-actor.c:
6980	(clutter_actor_move_by),
6981	(clutter_actor_move_byu): Add a units-based variant of the
6982	clutter_actor_move_by() function
6983
69842008-01-02  Johan Bilien  <jobi@via.ecp.fr>
6985
6986	reviewed by: Emmanuele Bassi  <ebassi@openedhand.com>
6987
6988	* configure.ac: Use AC_DEFINE_UNQUOTED to expand the
6989	variable. Fixes EGL backend build
6990
69912008-01-02  Emmanuele Bassi  <ebassi@openedhand.com>
6992
6993	* configure.ac: Post release bump to 0.5.1
6994
69952008-01-02  Emmanuele Bassi  <ebassi@openedhand.com>
6996
6997	* README:
6998	* NEWS: Release 0.5.0
6999
70002008-01-02  Emmanuele Bassi  <ebassi@openedhand.com>
7001
7002	* clutter/clutter-model-default.c:
7003	(clutter_model_default_get_iter_at_row),
7004	(clutter_model_default_insert_row): Fix off-by-one errors
7005
7006	(clutter_model_default_class_init):
7007	(clutter_model_default_remove_row): Move the actual removal of the
7008	row to...
7009
7010	(clutter_model_default_row_removed): ... the signal class handler
7011	of ::row-removed; this way, signal handlers connected to
7012	::row-removed will get a valid iterator, while signal handlers
7013	connected to ::row-removed with the AFTER flag will get an updated
7014	model
7015
70162007-12-31  Tomas Frydrych  <tf@openedhand.com>
7017
7018	* configure.ac:
7019	* clutter/Makefile.am:
7020	Added -no-undefined to libtool LDFLAGS for mingw/SDL backend, to
7021	allow building of shared libraries for win32.
7022
70232007-12-31  Tomas Frydrych  <tf@openedhand.com>
7024
7025	* configure.ac:
7026	* clutter.pc.in:
7027	Added CLUTTER_REQUIRES automake var to allow deps in clutter.pc to
7028	be backend-specific.
7029
70302007-12-28  Emmanuele Bassi  <ebassi@openedhand.com>
7031
7032	* clutter/clutter-texture.c:
7033	(clutter_texture_unrealize): Do not read the pixels back if the
7034	texture is being destroyed
7035
70362007-12-28  Emmanuele Bassi  <ebassi@openedhand.com>
7037
7038	* clutter/clutter-model.c:
7039	(clutter_model_real_get_n_rows), (clutter_model_class_init),
7040	(clutter_model_get_n_rows): Provide a default implementation of
7041	the get_n_rows() method, so that subclasses do not strictly need
7042	to override it
7043
70442007-12-25  Emmanuele Bassi  <ebassi@openedhand.com>
7045
7046	* clutter/clutter-actor.c:
7047	(parse_rotation_array): Inline, and get the JsonArray as a parameter
7048
7049	(parse_rotation): Update
7050
7051	* clutter/clutter-script.c:
7052	(warn_missing_attribute): Fix for emacs-style warnings
7053
7054	(clutter_script_parse_node): Remove an ifdeffed out section
7055
7056	(clutter_script_construct_parameters),
7057	(clutter_script_construct_object): Rename get_parameters, so
7058	it's obvious what it does
7059
70602007-12-25  Emmanuele Bassi  <ebassi@openedhand.com>
7061
7062	* tests/test-script.json: Fix the JSON syntax
7063
70642007-12-25  Emmanuele Bassi  <ebassi@openedhand.com>
7065
7066	* clutter/clutter-enum-types.c.in: Fix the template
7067
70682007-12-24  Emmanuele Bassi  <ebassi@openedhand.com>
7069
7070	* clutter/clutter-stage.c:
7071	* clutter/clutter-stage.h:
7072	* clutter/clutter-texture.c: Remove some of the remaining FIXMEs
7073	in the API documentation
7074
70752007-12-24  Emmanuele Bassi  <ebassi@openedhand.com>
7076
7077	* clutter/clutter-color.c:
7078	* clutter/clutter-event.c:
7079	* clutter/clutter-stage.c: Intern more strings using the I_() macro
7080
7081	* clutter/clutter-enum-types.c.in: Call g_intern_static_string()
7082	in the enum types template
7083
70842007-12-24  Emmanuele Bassi  <ebassi@openedhand.com>
7085
7086	* clutter.symbols: Add clutter_actor_set_clipu() and
7087	clutter_actor_get_clipu()
7088
7089	* clutter/clutter-actor.h:
7090	* clutter/clutter-actor.c:
7091	(clutter_actor_set_clipu), (clutter_actor_get_clipu): Add the
7092	new units-based versions of the clip accessors
7093
7094	(clutter_actor_set_clip), (clutter_actor_get_clip): Reimplement
7095	the pixels-based clip accessors as proxies for the units-based
7096	ones
7097
70982007-12-24  Emmanuele Bassi  <ebassi@openedhand.com>
7099
7100	* clutter/cogl/cogl.h: Update cogl_clip_set() to accept the
7101	clip components as ClutterFixed values
7102
7103	* clutter/cogl/gl/cogl.c (cogl_clip_set): Update the GL implementation
7104	of cogl_clip_set()
7105
7106	* clutter/cogl/gles/cogl.c:
7107	(cogl_rectangle_internal): Provide an internal, inlined rectangle
7108	drawing	function using fixed point values, to be shared by
7109	cogl_clip_set() and cogl_rectangle()
7110
7111	(cogl_clip_set), (cogl_rectangle): Update the GLES implementation
7112	of cogl_clip_set() and cogl_rectangle() to use the new internal
7113	rectangle drawing function
7114
7115	* clutter/clutter-actor.c: Make the clip an array of ClutterUnit
7116	values instead of pixel-based; this allows higher precision and
7117	device independence
7118
7119	(_clutter_actor_apply_modelview_transform): Pass the clip
7120	components converting from units to fixed point values, using
7121	the new cogl_clip_set() signature
7122
7123	(clutter_actor_get_property), (clutter_actor_set_clip),
7124	(clutter_actor_get_clip): Update the accessors of the clip
7125	property
7126
71272007-12-21  Emmanuele Bassi  <ebassi@openedhand.com>
7128
7129	* clutter/clutter-actor.h: Remove the unused ::set_depth() and
7130	::get_depth() virtual functions. (#674, Murray Cumming)
7131
71322007-12-21  Emmanuele Bassi  <ebassi@openedhand.com>
7133
7134	* clutter/clutter-group.c:
7135	* clutter/clutter-group.h: Add the clutter_group_add() convenience
7136	function; it's now "undeprecated" and implemented as a macro
7137
7138	* clutter/clutter-stage.h: Add clutter_stage_add() as a convenience
7139	macro
7140
7141	* clutter/cogl/cogl.h: Include just the needed headers instead
7142	of the whole clutter.h; this avoids rebuild cogl when not needed
7143
71442007-12-21  Emmanuele Bassi  <ebassi@openedhand.com>
7145
7146	* Makefile.am: Move tests build before docs, to cut down the
7147	distcheck failure discovery
7148
7149	* clutter.symbols: Add clutter_texture_set_area_from_rgb_data()
7150
7151	* clutter/clutter-actor.c:
7152	* clutter/clutter-script.c:
7153	* clutter/clutter-texture.c:
7154	* clutter/json/json-generator.c:
7155	* clutter/json/json-parser.c: Compilation fixes for passing distcheck
7156
7157	* tests/test-grab.c:
7158	* tests/test-score.c:
7159	* tests/test-script.c:
7160	* tests/test-shader.c:
7161	* tests/test-unproject.c: Ditto as above
7162
71632007-12-21  Emmanuele Bassi  <ebassi@openedhand.com>
7164
7165	* clutter/clutter-label.c:
7166	(clutter_label_ensure_layout): Avoid rounding errors in the layout
7167	computing when switching between Clutter units and Pango units.
7168
71692007-12-19  Øyvind Kolås  <pippin@o-hand.com>
7170
7171	* clutter/clutter-texture.[ch]: (bug #675) added
7172	clutter_texture_set_area_from_rgb_data, sharing some of the
7173	initialization infrastructure with clutter_texture_set_from_rgb_data.
7174
71752007-12-20  Emmanuele Bassi  <ebassi@openedhand.com>
7176
7177	* clutter/clutter-container.c:
7178	(clutter_container_lower_child): Fix interface method call
7179	to actually call ClutterContainer::lower. (#670, Gwenole
7180	Beauchesne)
7181
71822007-12-20  Emmanuele Bassi  <ebassi@openedhand.com>
7183
7184	* clutter/clutter-label.c:
7185	(clutter_label_query_coords): Return the bounding box set inside
7186	request_coords(), if any; otherwise, return the natural allocation
7187	of the label. (#678, reported by Gwenole Beauchesne)
7188
7189	* tests/test-rotate.c: Align the label
7190
71912007-12-19  Tomas Frydrych  <tf@openedhand.com>
7192
7193	* clutter/Makefile.am:
7194	* clutter/cogl/gl/cogl-defines.h.in:
7195	* clutter/pango/pangoclutter-render.c:
7196	* configure.ac:
7197	Fixes to allow cross-compilation with mingw (patch by Neil
7198	Roberts).
7199	Removed trailing whitespace.
7200
72012007-12-18  Øyvind Kolås  <pippin@o-hand.com>
7202
7203	* clutter/clutter-main.c: (generate_enter_leave_events): synthesize
7204	enter event (without related) and corresponding leave event when the
7205	actor the cursor is over has been destroyed.
7206	* clutter/clutter-event.c: (clutter_event_free): only unref the
7207	related_actor when it actually is set.
7208
72092007-12-18  Emmanuele Bassi  <ebassi@openedhand.com>
7210
7211	* clutter/clutter-main.c:
7212	(unset_motion_last_actor),
7213	(generate_enter_leave_events): Attach a callback to the destroy
7214	signal on the last motion actor, so if it goes away while the
7215	pointer is in the middle of it we can unset the pointer.
7216
7217	* clutter/clutter-private.h: Store the last motion actor inside
7218	the global context.
7219
72202007-12-17  Emmanuele Bassi <ebassi@openedhand.com>
7221
7222	* clutter/clutter-actor.c:
7223	(clutter_actor_should_pick_paint),
7224	(clutter_actor_apply_transform_to_point): Fix the whitespace.
7225
7226	(clutter_actor_set_rotation): Clarify that the coordinates of
7227	the centre of rotation are relative to the anchor point or,
7228	if not set, to the upper left corner of the bounding box.
7229
72302007-12-17  Tomas Frydrych  <tf@openedhand.com>
7231
7232	* clutter/clutter-behaviour-ellipse.c:
7233	* clutter/clutter-behaviour-rotate.c:
7234	Clamping of start and end angles to <0, 360).
7235
72362007-12-17  Emmanuele Bassi  <ebassi@openedhand.com>
7237
7238	* clutter/clutter-behaviour-path.c: Clarify the equivalence
7239	between the upper and lower bounds of the ClutterAlpha and
7240	the position in the path. (#634)
7241
72422007-12-17  Emmanuele Bassi  <ebassi@openedhand.com>
7243
7244	* clutter/clutter-texture.c: Mention the fact that a ClutterTexture
7245	will scale its contents to fit inside the requested bounding
7246	box. (#661)
7247
72482007-12-17  Emmanuele Bassi  <ebassi@openedhand.com>
7249
7250	* clutter/clutter-actor.c: Fix documentation for
7251	the ::captured-event signal. (#673)
7252
72532007-12-17  Emmanuele Bassi  <ebassi@openedhand.com>
7254
7255	* clutter/clutter-actor.c: Clarify the set_clip() method
7256	documentation, pointing out that the clip area origin is
7257	always the top-left corner of an actor.
7258
72592007-12-15  Emmanuele Bassi  <ebassi@openedhand.com>
7260
7261	* clutter/clutter-actor.c:
7262	* clutter/clutter-alpha.h:
7263	* clutter/clutter-event.h:
7264	* clutter/clutter-fixed.[ch]:
7265	* clutter/clutter-model.h:
7266	* clutter/clutter-shader.[ch]:
7267	* clutter/clutter-stage.c: Documentation fixes.
7268
72692007-12-15  Emmanuele Bassi <ebassi@openedhand.com>
7270
7271	* clutter/clutter-model-default.c:
7272	(clutter_model_default_iter_next),
7273	(clutter_model_default_iter_prev): Do not instantiate a new
7274	iterator, and update the passed one instead, as we say we do
7275	in the documentation. This avoid leaking tons of iterators.
7276
7277	* clutter/clutter-model.[ch]: Update the documentation.
7278
7279	* tests/test-model.c: Prettify some output.
7280
72812007-12-14  Emmanuele Bassi  <ebassi@openedhand.com>
7282
7283	* clutter/clutter-behaviour.c:
7284	(clutter_knot_get_type): Use the I_() macro.
7285
7286	* clutter/clutter-model.[ch]: Make ClutterModel and ClutterModelIter
7287	abstract classes; also, provide more virtual functions inside the
7288	ClutterModel vtable, to allow subclasses and language bindings to
7289	override the entire ClutterModel using other/native data types
7290	to store the rows.
7291
7292	* clutter/clutter-model-default.[ch]: ClutterModelDefault is a
7293	default implementation of ClutterModel and ClutterModelIter using
7294	GSequence.
7295
7296	* clutter/Makefile.am:
7297	* clutter/clutter.h: Build glue for ClutterModelDefault.
7298
7299	* tests/test-model.c: Update for constructor changes.
7300
7301	* tests/test-shader.c: Fix a typo.
7302
73032007-12-14  Matthew Allum  <mallum@openedhand.com>
7304
7305	* clutter/cogl/gl/cogl-defines.h.in:
7306	* clutter/cogl/gles/cogl-defines.h:
7307	Add CLUTTER_COGL_HAS_GL/GLES defines
7308
73092007-12-11  Øyvind Kolås  <pippin@o-hand.com>
7310
7311	Refined the ClutterShader API based on a patch from Emmanuele Bassi.
7312
7313	* clutter/clutter-actor.c: (clutter_actor_paint),
7314	(clutter_actor_apply_shader): queue a redraw of actor when shader is
7315	set.
7316	* clutter/clutter-actor.h: indentation.
7317	* clutter/clutter-shader.[ch]: made the fragment and vertex shader
7318	sources properties. Report error through GError when binding shaders.
7319	* tests/test-shader.c: modified to use newer API.
7320
73212007-12-10  Emmanuele Bassi  <ebassi@openedhand.com>
7322
7323	* clutter/clutter-model.c:
7324	(clutter_model_get_sorting_column): Fix wrong type check.
7325
73262007-12-10  Emmanuele Bassi  <ebassi@openedhand.com>
7327
7328	* clutter/clutter-model.[ch]: Allow unsorting the model (passing
7329	-1 as the sorting column)
7330
7331	(clutter_model_iter_get_valist): Do not initialise twice che
7332	return value.
7333
73342007-12-10  Emmanuele Bassi  <ebassi@openedhand.com>
7335
7336	* clutter/clutter-model.c (clutter_model_iter_get_value): Initialise
7337	the passed GValue like the other getters do.
7338
73392007-12-10  Emmanuele Bassi  <ebassi@openedhand.com>
7340
7341	* clutter/clutter-model.h:
7342	* clutter/clutter-model.c:
7343	(clutter_model_append_value),
7344	(clutter_model_prepend_value),
7345	(clutter_model_insert_value): Add a _value() variant for the
7346	insertion methods, for use of the language bindings.
7347
7348	(clutter_model_append),
7349	(clutter_model_prepend),
7350	(clutter_model_insert): Do not return a boolean: insertion should
7351	never fail unless for a programming error, in which case we have
7352	plenty of warnings.
7353
73542007-12-10  Emmanuele Bassi  <ebassi@openedhand.com>
7355
7356	* clutter/clutter-behaviour-ellipse.c:
7357	(clutter_behaviour_ellipse_get_angle_tilt),
7358	(clutter_behaviour_ellipse_get_angle_tiltx),
7359	(clutter_behaviour_ellipse_set_tilt): Fix a double conversion
7360	that was messing up the returned results. (#665)
7361
73622007-12-10  Emmanuele Bassi  <ebassi@openedhand.com>
7363
7364	* clutter/clutter-actor.c:
7365	(clutter_actor_set_property),
7366	(clutter_actor_get_property),
7367	(clutter_actor_class_init): Add the rotation-* properties,
7368	controlling the rotation angle and center on each axis. (#614)
7369
7370	(parse_rotation_array), (parse_rotation),
7371	(clutter_actor_parse_custom_node),
7372	(clutter_actor_set_custom_property),
7373	(clutter_scriptable_iface_init): Add a new "rotation" custom
7374	property for expressing the rotation along each axis in a
7375	compact way:
7376
7377	  "rotation" : [
7378	    { "x-axis" : [ <angle>, [ <y>, <z> ] ] },
7379	    { "y-axis" : [ <angle>, [ <x>, <z> ] ] },
7380	    { "z-axis" : [ <angle>, [ <x>, <y> ] ] }
7381	  ]
7382
7383	(clutter_geometry_get_type),(clutter_vertex_get_type),
7384	(clutter_actor_box_get_type): Use the I_() macro instead of
7385	directly calling g_intern_static_string().
7386
7387	* clutter/clutter-entry.c (clutter_entry_request_coords):
7388	* clutter/clutter-label.c (clutter_label_ensure_layout),
7389	(clutter_label_request_coords): Use CLUTTER_UNITS_FROM_DEVICE()
7390	instead of CLUTTER_UNITS_FROM_INT(), as "device" means "pixels".
7391
7392	* clutter/clutter-private.h: Add the I_() macro for intern
7393	static strings.
7394
7395	* tests/test-script.json: Test the newly added "rotation"
7396	custom property.
7397
73982007-12-10  Tomas Frydrych  <tf@openedhand.com>
7399
7400	* tests/Makefile.am:
7401	Fixed a typo.
7402
74032007-12-10  Tomas Frydrych  <tf@openedhand.com>
7404
7405	* tests/test-viewport.c:
7406	* tests/Makefile.am:
7407	Added a simple viewport test.
7408
74092007-12-10  Tomas Frydrych  <tf@openedhand.com>
7410
7411	* clutter/clutter-actor.c:
7412	(_clutter_actor_apply_modelview_transform):
7413	Moved offset translation after rotation so that rotation coords
7414	are also relative to the offset point.
7415
74162007-12-09  Emmanuele Bassi  <ebassi@openedhand.com>
7417
7418	* tests/test-events.c (input_cb):
7419	* tests/test-text.c (main): Fix compiler errors. (#592,
7420	Gwenole Beauchesne)
7421
74222007-12-09  Emmanuele Bassi  <ebassi@openedhand.com>
7423
7424	* clutter/clutter-actor.c: Document the values for full
7425	transparency and full opacity in the set_opacity()
7426	method. (#662)
7427
7428	* clutter/clutter-behaviour-ellipse.c: Improve consistency
7429	in the apidoc.
7430
74312007-12-08  Emmanuele Bassi  <ebassi@openedhand.com>
7432
7433	* configure.ac: Make libtool respect the -s switch of make
7434	and be quiet.
7435
74362007-12-07  Emmanuele Bassi  <ebassi@openedhand.com>
7437
7438	* clutter/clutter-actor.h:
7439	* clutter/clutter-actor.c:
7440	(clutter_actor_get_sizeu),
7441	(clutter_actor_get_positionu): Add unit-based accessors to
7442	the size and position.
7443
74442007-12-07  Tomas Frydrych  <tf@openedhand.com>
7445
7446	* clutter/clutter-behaviour-ellipse.c:
7447	(clutter_behaviour_ellipse_set_angle_start):
7448	(clutter_behaviour_ellipse_set_angle_end):
7449	(clutter_behaviour_ellipse_set_angle_tilt):
7450	(clutter_behaviour_ellipse_set_tilt):
7451	Removed strayed degree -> ClutterAngle conversions left over from
7452	API changes.
7453
7454	(clutter_behaviour_ellipse_set_angle_tiltx):
7455	Removed stray printf.
7456
74572007-12-07  Tomas Frydrych  <tf@openedhand.com>
7458
7459	* clutter/clutter-behaviour-ellipse.c:
7460	Fixed tilt setters and getters.
7461
74622007-12-06  Tomas Frydrych  <tf@openedhand.com>
7463
7464	* clutter/clutter-fixed.c:
7465	* clutter/clutter-fixed.h:
7466	(clutter_sqrti):
7467	Added extra iteration to the Newton-Rapson algorithm for arguments
7468	lesser than 342 to improve precission.
7469
74702007-12-06  Emmanuele Bassi  <ebassi@openedhand.com>
7471
7472	* clutter/clutter-main.c:
7473	(clutter_set_motion_events_frequency): Never allow the motion
7474	events devlivery frequency to exceed the default frame rate.
7475
74762007-12-06  Emmanuele Bassi  <ebassi@openedhand.com>
7477
7478	* clutter/json/json-parser.[ch]: Use gssize, size we allow -1
7479	as a length (meaning "use the whole string").
7480
7481	(json_parser_load_from_data): Use the passed length instead of
7482	using strlen() all the time.
7483
7484	* clutter/clutter-script.[ch]: Ditto as above.
7485
74862007-12-06  Emmanuele Bassi  <ebassi@openedhand.com>
7487
7488	* clutter/pango/pangoclutter-render.c: Hush a compiler warning
7489	by removing a unused variable.
7490
74912007-12-06  Emmanuele Bassi  <ebassi@openedhand.com>
7492
7493	* clutter/clutter-label.c (clutter_label_ensure_layout): If the
7494	label has a requested size, force it when ensuring the layout.
7495
74962007-12-06  Emmanuele Bassi  <ebassi@openedhand.com>
7497
7498	* tests/test-unproject.c: Fix type comparison.
7499
7500	* tests/test-score.c: Save the returned ids.
7501
75022007-12-05  Matthew Allum  <mallum@openedhand.com>
7503
7504	reviewed by: <delete if not using a buddy>
7505
7506	* clutter/pango/pangoclutter-render.c: (tc_get), (free_glyph_info),
7507	(draw_glyph), (draw_trapezoid), (pango_clutter_render_layout),
7508	(pango_clutter_render_layout_line),
7509	(pango_clutter_render_clear_caches), (prepare_run), (draw_begin):
7510
75112007-12-05  Emmanuele Bassi  <ebassi@openedhand.com>
7512
7513	* clutter/clutter-score.h: Rearrange declarations.
7514
7515	* clutter/clutter-score.c: More documentation in the long
7516	description of the ClutterScore section.
7517
7518	* clutter/clutter-debug.h:
7519	* clutter/clutter-main.c: Add the CLUTTER_DEBUG_SHADER flag,
7520	for debugging the shader calls.
7521
7522	* clutter/clutter-feature.h: Fix the documentation of the
7523	feature flags.
7524
7525	* clutter/Makefile.am: Remove trailing whitespace.
7526
75272007-12-05  Tomas Frydrych  <tf@openedhand.com>
7528
7529	* clutter/clutter-actor.c:
7530	* clutter/clutter-actor.h:
7531	* tests/Makefile.am:
7532	* tests/test-unproject:
7533	(clutter_actor_transform_stage_point):
7534	Added new function for translating stage coordinates into local
7535	actor coordinates.
7536
75372007-12-04  Emmanuele Bassi  <ebassi@openedhand.com>
7538
7539	* clutter/clutter-score.c: Better document ClutterScore
7540	and its API.
7541
75422007-12-04  Emmanuele Bassi  <ebassi@openedhand.com>
7543
7544	* clutter/clutter-score.[ch]: Reimplement ClutterScore using
7545	a N-ary tree to store the timelines. Remove clutter_score_add():
7546	the same functionality can be achieved by passing a NULL
7547	parent to clutter_score_append().
7548
7549	* tests/test-score.c: Update ClutterScore test unit, and add
7550	debug printouts.
7551
75522007-12-04  Øyvind Kolås  <pippin@o-hand.com>
7553
7554	* clutter/clutter-shader.c: (bind_glsl_shader): use gchar instead of
7555	GLcharARB.
7556
75572007-12-03  Øyvind Kolås  <pippin@o-hand.com>
7558
7559	* clutter/clutter-shader.[ch]: do not include GL.h.
7560
75612007-12-03  Øyvind Kolås  <pippin@o-hand.com>
7562
7563	Support for shaders in clutter. At the moment limited to drivers
7564	providing GLSL support.
7565
7566	* clutter/cogl/cogl.h: added rather direct binding of needed for glsl
7567	shaders.
7568	* clutter/cogl/gl/cogl-defines.h.in:
7569	* clutter/cogl/gl/cogl.c:
7570	* clutter/cogl/gles/cogl-defines.h: added stubs.
7571	* clutter/cogl/gles/cogl.c: added stubs.
7572
7573	* clutter/glx/clutter-stage-glx.c:
7574	(clutter_stage_glx_realize): unrelated memory management sanity fix.
7575	(clutter_stage_glx_unrealize): unbind all shaders on stage unrealize.
7576
7577	* clutter/Makefile.am: added clutter-shader.[ch]
7578	* clutter/clutter-actor.[ch]: adding shader capability to
7579	actors.
7580	* clutter/clutter-feature.h: added CLUTTER_FEATURE_SHADERS_GLSL
7581	* clutter/clutter-private.h: added stack of shaders to context.
7582	* clutter/clutter-shader.[ch]: new.
7583
7584	* tests/Makefile.am: added shader test.
7585	* tests/test-shader.c: (frame_cb), (main): simple shader test,
7586	cycle through the inline shader with right/left mouse buttons.
7587
75882007-12-03  Øyvind Kolås  <pippin@o-hand.com>
7589
7590	* clutter/glx/clutter-stage-glx.c: for extra sanity, set
7591	stage_x11->xvisinfo = NULL after XFree. Makes using the root window
7592	as foreign window possible.
7593
75942007-11-30  Øyvind Kolås  <pippin@o-hand.com>
7595
7596	* clutter/clutter-timeline.c: (clutter_timeline_get_delta): return the
7597	number of milliseconds passed between new-frame events instead of
7598	since new-frame events, thus making sure that the sum of _get_delta's
7599	returned for all new-frame events is equal to total time elapsed.
7600
76012007-11-30  Emmanuele Bassi  <ebassi@openedhand.com>
7602
7603	* clutter/clutter-actor.c (parse_units),
7604	(clutter_actor_parse_custom_node): Do not allow using percentages
7605	of the stage on the stage itself, as it makes little to no
7606	sense.
7607
7608	* clutter/clutter-script.c:
7609	(clutter_script_construct_object): Rearrange code.
7610
7611	* tests/test-script.json: Do not set the size of the stage, to
7612	test for the stage size percentage.
7613
76142007-11-30  Emmanuele Bassi  <ebassi@openedhand.com>
7615
7616	* clutter/clutter-model.h: Complete the documentation of
7617	the ClutterModelClass structure members.
7618
76192007-11-30  Emmanuele Bassi  <ebassi@openedhand.com>
7620
7621	* clutter/clutter-timeline.h:
7622	* clutter/clutter-timeline.c
7623	(timeline_timeout_func),
7624	(clutter_timeline_get_delta): Add a function for retrieving
7625	the number of frames and the time (in milliseconds) elapsed
7626	since the last timeline ::new-frame signal. This can be useful
7627	for implementing a physics engine or just for knowing how if
7628	and how many frames have been skipped.
7629
76302007-11-30  Emmanuele Bassi  <ebassi@openedhand.com>
7631
7632	* clutter/clutter-actor.c (parse_units),
7633	(clutter_actor_parse_custom_node),
7634	(clutter_scriptable_iface_init): Override the parsing code
7635	for the x, y, width and height properties of ClutterActor,
7636	to allow strings with modifiers when defining the position
7637	and/or the dimensions of an actor. Bare integers are assumed
7638	as pixels; floating point values in the [0, 1] interval are
7639	assumed as percentages; strings can have these modifiers:
7640
7641	  - px - pixels
7642	  - mm - millimeters
7643	  - pt - points (at the current resolution)
7644	  - %  - percentage of the stage
7645
7646	* clutter/clutter-units.h: Fix the conversion macros
7647
7648	* tests/test-script.json: Test the new values.
7649
76502007-11-29  Emmanuele Bassi  <ebassi@openedhand.com>
7651
7652	* clutter/clutter-model.[ch]: Slight API change in the constructor
7653	functions for ClutterModel: clutter_model_new() now takes a list
7654	of GType/string pairs for both the column type and the column name.
7655
7656	(clutter_model_set_n_columns),
7657	(clutter_model_set_names),
7658	(clutter_model_set_types): Subclasses of ClutterModel will be able
7659	to call clutter_model_set_types() and clutter_model_set_names() in
7660	any order, provided that they don't call each function more than
7661	once.
7662
7663	* tests/test-model.c: Update the test case.
7664
76652007-11-29  Tomas Frydrych  <tf@openedhand.com>
7666
7667	* clutter/clutter-actor.h:
7668	* clutter/clutter-actor.c:
7669	Converted depth and rotation offsets to ClutterUnit.
7670
7671	(clutter_actor_set_depthu):
7672	(clutter_actor_get_depthu):
7673	Additional ClutterUnit API.
7674
7675	(_clutter_actor_apply_modelview_transform):
7676	Use cogl_translatex() in place of cogl_translate().
7677
76782007-11-29  Emmanuele Bassi  <ebassi@openedhand.com>
7679
7680	* *: Add svn:ignore property to every directory, so that
7681	svn status starts being useful.
7682
76832007-11-29  Matthew Allum  <mallum@openedhand.com>
7684
7685	* clutter/clutter-main.c: (generate_enter_leave_events):
7686	Minor formatting tweak.
7687	* configure.ac:
7688	Typo fix from Damien Lespiau (via mailing list)
7689
76902007-11-28  Emmanuele Bassi  <ebassi@openedhand.com>
7691
7692	Add more introspection capabilities to the base model class
7693
7694	* clutter/clutter-model.h:
7695	* clutter/clutter-model.c:
7696	(clutter_model_finalize): Do no leak the column types array.
7697
7698	(clutter_model_get_n_columns): Function for getting the number
7699	of columns inside a model.
7700
7701	(clutter_model_set_names): Add API for setting the names of the
7702	columns.
7703
7704	(clutter_model_get_column_name),
7705	(_model_get_column_type): Add API for getting each column's name,
7706	and the default implementation for ClutterModel.
7707
7708	(clutter_model_get_column_type),
7709	(_model_get_iter_at_row): Add API for getting each column's type,
7710	and the default implementation for ClutterModel.
7711
7712	* clutter.symbols: Add ClutterModel and ClutterModelIter symbols,
7713	and keep the symbols file sorted.
7714
77152007-11-28  Tomas Frydrych  <tf@openedhand.com>
7716
7717	* clutter/clutter-actor.c:
7718	* clutter/clutter-actor.h:
7719	(clutter_actor_set_positionu):
7720	(clutter_actor_set_sizeu):
7721	(clutter_actor_get_widthu):
7722	(clutter_actor_get_heightu):
7723	(clutter_actor_set_widthu):
7724	(clutter_actor_set_heightu):
7725	(clutter_actor_get_xu):
7726	(clutter_actor_get_yu):
7727	(clutter_actor_set_xu):
7728	(clutter_actor_set_yu):
7729	Expanded ClutterActor API with new ClutterUnit-base functions.
7730
7731	* clutter/clutter-stage.c:
7732	* clutter/clutter-stage.h:
7733	(clutter_stage_get_resolution):
7734	(clutter_stage_get_resolutionx):
7735	New function to query stage resolution (floating and fixed point
7736	versions).
7737
7738	* clutter/clutter-units.h:
7739	(CLUTTER_UNITS_FROM_STAGE_WIDTH_PERCENTAGE):
7740	(CLUTTER_UNITS_FROM_STAGE_HEIGHT_PERCENTAGE):
7741	(CLUTTER_UNITS_FROM_PARENT_WIDTH_PERCENTAGE):
7742	(CLUTTER_UNITS_FROM_PARENT_HEIGHT_PERCENTAGE):
7743	(CLUTTER_UNITS_FROM_MM):
7744	(CLUTTER_UNITS_FROM_MMX):
7745	(CLUTTER_UNITS_FROM_POINTS):
7746	(CLUTTER_UNITS_FROM_POINTSX):
7747	New macros for conversions to ClutterUnits.
7748
7749	* clutter.symbols:
7750	Added:
7751		ClutterActor anchor_point functions,
7752		clutter_stage_get_resolution functions.
7753
7754	Removed:
7755		clutter_actor_scale_with_gravity functions.
7756
77572007-11-28  Emmanuele Bassi  <ebassi@openedhand.com>
7758
7759	* clutter/clutter-actor.[ch]: Documentation fixes.
7760
77612007-11-28  Emmanuele Bassi  <ebassi@openedhand.com>
7762
7763	Remove the layout containers: they will be moved to a
7764	high-level library.
7765
7766	* clutter/clutter.h:
7767	* clutter/Makefile.am: Remove layout and boxes from the
7768	build.
7769
7770	* clutter/clutter-layout.[ch]: Remove the ClutterLayout
7771	interface.
7772
7773	* clutter/clutter-box.[ch]:
7774	* clutter/clutter-hbox.[ch]:
7775	* clutter/clutter-vbox.[ch]: Remove ClutterBox and its
7776	subclasses.
7777
7778	* clutter/clutter-label.c: Remove ClutterLayout implementation
7779
7780	* clutter/clutter-script-private.h:
7781	* clutter/clutter-script-parser.c:
7782	* clutter/clutter-script.c:
7783	(clutter_script_parse_node): Remove special parsing for
7784	ClutterMargin and ClutterPadding.
7785
7786	* clutter/clutter-types.h: Remove ClutterPadding and ClutterMargin.
7787
7788	* tests/Makefile.am:
7789	* tests/test-boxes.c: Remove the boxes test case.
7790
77912007-11-28  Tomas Frydrych  <tf@openedhand.com>
7792
7793	* clutter/NEWS:
7794	Started 0.6.0 section with comment on actor anchor point.
7795
7796	* clutter/clutter/clutter-actor.c:
7797	* clutter/clutter/clutter-actor.h:
7798	* clutter/clutter/clutter-behaviour-scale.c:
7799	* clutter/clutter/clutter-deprecated.h:
7800	(clutter_actor_set_anchor_point):
7801	(clutter_actor_set_anchor_pointu):
7802	(clutter_actor_get_anchor_point):
7803	(clutter_actor_get_anchor_pointu):
7804	(clutter_actor_set_anchor_point_from_gravity):
7805	New anchor point API deprecating old gravity scaling, added
7806	comments on modelview matrix construction to ClutterActor
7807	documentation.
7808
7809	(clutter_actor_set_scale_with_gravity):
7810	(clutter_actor_set_scale_with_gravityx):
7811	Deprecated; use clutter_actor_set_anchor_point_from_gravity() instead.
7812
78132007-11-28  Emmanuele Bassi  <ebassi@openedhand.com>
7814
7815	* clutter/clutter-effect.[ch]: Add clutter_effect_template_construct()
7816	function, for language bindings that need to set the alpha function
7817	but cannot call the clutter_effect_template_new() ctor themselves.
7818
78192007-11-27  Tomas Frydrych  <tf@openedhand.com>
7820
7821	* clutter/clutter-behaviour-ellipse.c:
7822	* clutter/clutter-behaviour-ellipse.h:
7823	(clutter_behaviour_ellipse_get_angle_startx):
7824	(clutter_behaviour_ellipse_set_angle_startx):
7825	(clutter_behaviour_ellipse_get_angle_endx):
7826	(clutter_behaviour_ellipse_set_angle_endx):
7827	(clutter_behaviour_ellipse_get_angle_tiltx):
7828	(clutter_behaviour_ellipse_set_angle_tiltx):
7829	Changed to take and return angles in degrees represented as
7830	ClutterFixed.
7831
78322007-11-27  Emmanuele Bassi  <ebassi@openedhand.com>
7833
7834	* clutter/clutter-actor.c (clutter_actor_destroy): Remove the
7835	reference we hold on the actor, as it was preventing the finalization
7836	of every child on the stage.
7837
78382007-11-26  Emmanuele Bassi  <ebassi@openedhand.com>
7839
7840	* clutter/x11/clutter-stage-x11.c:
7841	(clutter_stage_x11_set_cursor_visible): Restore the XFixes usage,
7842	as it now seems to be have been fixed.
7843
78442007-11-26  Emmanuele Bassi  <ebassi@openedhand.com>
7845
7846	* clutter/clutter-actor.c:
7847	(clutter_actor_real_show),
7848	(clutter_actor_real_hide): Do not set the MAPPED flag on the actor
7849	if it is a top-level one (like ClutterStage); the backends are
7850	responsible for setting that flag, as it might be the result of an
7851	asynchronous operation (e.g. on X11).
7852
7853	* clutter/eglnative/clutter-stage-egl.c:
7854	(clutter_stage_egl_show),
7855	(clutter_stage_egl_hide): Set/unset the CLUTTER_ACTOR_MAPPED flag
7856	on show and hide respectively.
7857
7858	* clutter/osx/clutter-stage-osx.c:
7859	(clutter_stage_osx_show),
7860	(clutter_stage_osx_hide): Ditto as above.
7861
7862	* clutter/sdl/clutter-stage-sdl.c:
7863	(clutter_stage_sdl_show),
7864	(clutter_stage_sdl_hide): Ditto as above, plus chain up to the
7865	parent class show/hide virtual functions.
7866
7867	* clutter/x11/clutter-event-x11.c (event_translate): Use the MapNotify
7868	and UnmapNotify events to call the X11 stage map/unmap functions.
7869
7870	* clutter/x11/clutter-stage-x11.[ch]:
7871	(clutter_stage_x11_set_fullscreen): Set the fullscreen_on_map flag
7872	with the fullscreen value.
7873
7874	(clutter_stage_x11_map), (clutter_stage_x11_unmap): Set the MAPPED
7875	flag on the stage actor and redraw; also, if the fullscreen_on_map
7876	flag was set, call clutter_stage_fullscreen() as well. (#648)
7877
7878	* tests/Makefile.am:
7879	* tests/test-fullscreen.c: Add a fullscreen test case for checking
7880	whether fullscreen works on every backend/platform.
7881
78822007-11-23  Emmanuele Bassi  <ebassi@openedhand.com>
7883
7884	* clutter/clutter-actor.c:
7885	(clutter_actor_real_request_coords),
7886	(clutter_actor_request_coords),
7887	(clutter_actor_class_init): Provide a default ::request_coords()
7888	implementation in ClutterActor and use it to store the bounding
7889	box passed to clutter_actor_request_coords(). This makes the code
7890	more reliable and clean, and avoids a call to the subclass
7891	request_coords() method if the bounding box did not change. Now,
7892	every class overriding ClutterActor::request_coords() *must* chain
7893	up to the parent class method or the bounding box will not be
7894	saved inside the ClutterActor structure.
7895
7896	* clutter/clutter-entry.c:
7897	* clutter/clutter-group.c:
7898	* clutter/clutter-hbox.c:
7899	* clutter/clutter-label.c:
7900	* clutter/clutter-texture.c:
7901	* clutter/clutter-vbox.c: Chain up to the parent class
7902	request_coords() method.
7903
79042007-11-23  Emmanuele Bassi  <ebassi@openedhand.com>
7905
7906	* clutter/clutter-event.h: Add more documentation.
7907
79082007-11-23  Emmanuele Bassi  <ebassi@openedhand.com>
7909
7910	* tests/test-event.c: Back out an accidental commit.
7911
79122007-11-23  Emmanuele Bassi  <ebassi@openedhand.com>
7913
7914	* clutter/clutter-actor.c:
7915	* clutter/clutter-alpha.c:
7916	* clutter/clutter-effect.c:
7917	* clutter/clutter-event.c:
7918	* clutter/clutter-event.h:
7919	* clutter/clutter-group.h:
7920	* clutter/clutter-model.c:,
7921	* clutter/clutter-script.c:
7922	* clutter/clutter-scriptable.h:
7923	* clutter/clutter-stage.c: Documentation fixes.
7924
7925	* clutter/clutter-score.c: Fix implementation.
7926
79272007-11-23  Emmanuele Bassi  <ebassi@openedhand.com>
7928
7929	* clutter/x11/clutter-stage-x11.c: Chain up the hide and show
7930	to the parent's implementation.
7931
79322007-11-23  Emmanuele Bassi  <ebassi@openedhand.com>
7933
7934	* clutter/clutter-effect.[ch]: Update the effects API to remove
7935	the start value for most of them.
7936
7937	(clutter_effect_move): Make it a simple "move from current
7938	position to new coordinates" effect.
7939
7940	(clutter_effect_path): Rename from clutter_effect_move().
7941
7942	(clutter_effect_rotate): Sync up with the new actor rotation API.
7943
7944	* tests/test-effects.c: Regression test for the effects.
7945
7946	* tests/Makefile.am: Build glue for test-effects
7947
7948	* tests/test-behave.c: Emulate a full ramp by using a looping
7949	timeline changing its direction when reaching the last frame.
7950
79512007-11-23  Emmanuele Bassi  <ebassi@openedhand.com>
7952
7953	* clutter/clutter-actor.c (clutter_actor_destroy): Bail out
7954	if clutter_actor_destroy() was called on the stage: the stage
7955	is not for the user to destroy.
7956
7957	* clutter/x11/clutter-backend-x11.c:
7958	* clutter/eglnative/clutter-backend-egl.c:
7959	* clutter/sdl/clutter-backend-sdl.c:
7960	* clutter/osx/clutter-backend-osx.c: Unset the top-level private
7961	flag on the stage when disposing it, so the backends can safely
7962	call clutter_actor_destroy().
7963
7964	* clutter/clutter-private.h: Tweak the private flags accessors,
7965	to avoid the typecheck.
7966
79672007-11-22  Emmanuele Bassi  <ebassi@openedhand.com>
7968
7969	* clutter/clutter-label.c (clutter_label_new_full): Set the
7970	terminating NULL which was removed when applying patch for
7971	fixing #606. (#645, Gwenole Beauchesne)
7972
79732007-11-22  Øyvind Kolås  <pippin@o-hand.com>
7974
7975	* clutter/clutter-actor.c: mended a couple of typos in documentation.
7976
79772007-11-21  Matthew Allum  <mallum@openedhand.com>
7978
7979	* clutter/cogl/gles/cogl.c: (cogl_fog_set):
7980	Minor fixes for fog on GLES.
7981
79822007-11-21  Emmanuele Bassi  <ebassi@openedhand.com>
7983
7984	* clutter/cogl/cogl.h: Add cogl_fog_set() abstracting the
7985	glFog() functions and enabling the GL_FOG flag.
7986
7987	* clutter/cogl/gl/cogl.c: Add GL implementation of cogl_fog_set().
7988
7989	* clutter/cogl/gles/cogl.c: Add GL/ES implementation of
7990	cogl_fog_set().
7991
7992	* clutter.symbols: Add new symbols.
7993
7994	* clutter/clutter-stage.h: Add API to enable depth cueing on
7995	the stage using a linear GL fog, and to set the parameters
7996	for it (#637).
7997
7998	* clutter/clutter-stage.c (clutter_stage_paint): Enable the
7999	GL fog if the ClutterStage:use-fog property is true.
8000
8001	* tests/test-depth.c: Test the new stage API.
8002
80032007-11-20  Øyvind Kolås  <pippin@o-hand.com>
8004
8005	* clutter/clutter-main.c: (event_click_count_generate): generalized
8006	click_count generation code.
8007	* tests/test-events.c: (input_cb): extended test to report click_count
8008	for release and scroll events as well as press events.
8009
80102007-11-20  Øyvind Kolås  <pippin@o-hand.com>
8011
8012	* clutter/clutter-main.c: (clutter_do_event): avoid computing source
8013	of events if it is already set (for synthetic events.)
8014	* clutter/clutter-event.c: Add more information to the documentation
8015	of clutter_event_put.
8016
80172007-11-20  Emmanuele Bassi  <ebassi@openedhand.com>
8018
8019	* README: Add diff example command lines for submitting patches.
8020
80212007-11-20  Emmanuele Bassi  <ebassi@openedhand.com>
8022
8023	* clutter/clutter-actor.c::
8024	* clutter/clutter-behaviour-opacity.c:
8025	* clutter/clutter-clone-texture.c:
8026	* clutter/clutter-effect.c:
8027	* clutter/clutter-label.c: Remove the usage of G_PARAM_CONSTRUCT
8028	without an override for the ::construct virtual function; using
8029	G_PARAM_CONSTRUCT to set the default value of a property is not
8030	the recommended approach; default values are set inside the
8031	instance init function.
8032
80332007-11-20  Emmanuele Bassi  <ebassi@openedhand.com>
8034
8035	* clutter/clutter-texture.c (clutter_texture_init): Set filter-quality
8036	value to 1, to fix the regression caused when applying the patch for
8037	buf #616.
8038
80392007-11-19  Emmanuele Bassi  <ebassi@openedhand.com>
8040
8041	* clutter/clutter-label.[ch]: Fix ClutterLabel size allocation when
8042	no bounding box has been provided, and store the box set by the
8043	user so that it can be reused when recomputing the layout. (#600)
8044
8045	(clutter_label_class_init),
8046	(clutter_label_init): Set the :wrap property default to FALSE.
8047
8048	* clutter/clutter-units.h: Add ClutterUnit-to-PangoUnit conversion
8049	macro.
8050
8051	* tests/test-rotate.c: Fix string.
8052
80532007-11-19  Emmanuele Bassi  <ebassi@openedhand.com>
8054
8055	* clutter/clutter-behaviour-bspline.c:
8056	* clutter/clutter-behaviour-depth.c:
8057	* clutter/clutter-behaviour-ellipse.c:
8058	* clutter/clutter-behaviour-opacity.c:
8059	* clutter/clutter-behaviour-path.c:
8060	* clutter/clutter-behaviour-rotate.c:
8061	* clutter/clutter-behaviour-scale.c: Fix gtk-doc short description.
8062
80632007-11-19  Emmanuele Bassi  <ebassi@openedhand.com>
8064
8065	* clutter.symbols: Update
8066
8067	* clutter/clutter-actor.h: Rename the angle argument for
8068	set_rotationx() to avoid gtk-doc complaining
8069
8070	* clutter/clutter-main.h:
8071	* clutter/clutter-main.c:
8072	(clutter_set_motion_events_enabled): Rename for consistency
8073
8074	(clutter_get_motion_events_frequency),
8075	(clutter_set_motion_events_frequency): Add accessors for the default
8076	motion events deliver frequency.
8077
8078	(clutter_do_event): Throttle down motion events delivery using the
8079	motion events frequency setting, to avoid excessive redraws. (#608)
8080
8081	(clutter_context_get_default): Enable per-actor motion events, at
8082	least for now.
8083
8084	* tests/test-events.c (red_button_cb):
8085	* tests/test-grab.c (green_press_cb): Update.
8086
80872007-11-19  Emmanuele Bassi  <ebassi@openedhand.com>
8088
8089	* clutter/clutter-timeline.c (timeline_timeout_func): Do not emit the
8090	::new-frame signal twice for the last frame. (#531)
8091
80922007-11-19  Øyvind Kolås  <pippin@o-hand.com>
8093
8094	* clutter/clutter-actor.[ch]: (clutter_actor_set_rotationx),
8095	(clutter_actor_set_rotation): swapped axis and angle around,
8096	the new argument order is: (axis, angle, x, y, z). Also removed
8097	deprecated rotation functions from header.
8098
8099	Updated use of clutter_actor_set_rotation? in the following files:
8100
8101	* clutter/clutter-behaviour-rotate.c:
8102	* clutter/clutter-effect.c:
8103	* tests/test-actors.c:
8104	* tests/test-project.c:
8105
81062007-11-19  Emmanuele Bassi  <ebassi@openedhand.com>
8107
8108	* clutter/clutter-label.[ch]: Constify the color argument
8109	for the ClutterLabel ctor. (#604)
8110
81112007-11-18  Matthew Allum  <mallum@openedhand.com>
8112
8113	* clutter/clutter-actor.c:
8114	* clutter/clutter-actor.h:
8115	* clutter/clutter-group.c:
8116	* clutter/clutter-main.c:
8117	* clutter/clutter-stage.c:
8118	* tests/test-events.c:
8119	Parent Actors no longer need to be set reactive for reactive
8120	children to get events. Also makes groups now pickable.
8121	(#597, #423)
8122
8123	* clutter/clutter-texture.c:
8124	Handle case when 1x1 tiled texture is created,
8125	falling 'back' to being non tiled. (#596)
8126
8127	* clutter/eglx/clutter-backend-egl.c:
8128	Call EglTerminate on backend shutdown.
8129
81302007-11-18  Emmanuele Bassi  <ebassi@openedhand.com>
8131
8132	* clutter.pc.in: Bump up glib-2.0 dependency.
8133
81342007-11-18  Emmanuele Bassi  <ebassi@openedhand.com>
8135
8136	* clutter/clutter-model.c: Add gtk-doc section for
8137	ClutterModelIter
8138
8139	* clutter/clutter-script.h: Fix argument name.
8140
8141	* clutter/x11/clutter-x11.h:
8142	* clutter/x11/clutter-event-x11.c:
8143	* clutter/x11/clutter-backend-x11.c: Document functions and
8144	types.
8145
81462007-11-18  Emmanuele Bassi  <ebassi@openedhand.com>
8147
8148	* clutter.symbols: Update exported symbols.
8149
8150	* clutter/clutter-actor.[ch]: Remove clutter_actor_rotate_*
8151	and clutter_actor_get_rx* and provide a simpler rotation API:
8152	clutter_actor_set_rotation() and clutter_actor_get_rotation().
8153
8154	* clutter/clutter-deprecated.h: Deprecate the old rotation API.
8155
8156	* clutter/clutter-behaviour-bspline.c:
8157	* clutter/clutter-behaviour-rotate.c:
8158	* clutter/clutter-effect.c: Update internal usage of the
8159	rotation API.
8160
8161	* tests/test-project.c: Ditto as above.
8162
81632007-11-17  Emmanuele Bassi  <ebassi@openedhand.com>
8164
8165	Optimise Atoms usage in the X11 and X11-based backends.
8166
8167	* clutter/x11/clutter-backend-x11.c:
8168	(clutter_backend_x11_post_parse): Call XInternAtoms() here and
8169	get all the atoms from X in one call.
8170
8171	* clutter/x11/clutter-backend-x11.h: Store all the atoms inside
8172	the ClutterBackendX11 structure.
8173
8174	* clutter/x11/clutter-event-x11.c:
8175	(xembed_send_message), (xembed_set_info),
8176	(_clutter_backend_x11_events_init),
8177	(set_user_time), (handle_wm_protocols_event),
8178	(handle_xembed_event), (event_translate): Do not cache atoms
8179	or call XInternAtom() directly, and use the atoms off the X11
8180	backend structure instead.
8181
8182	* clutter/x11/clutter-stage-x11.c:
8183	(send_wmspec_change_state), (clutter_stage_x11_set_wm_protocols),
8184	(clutter_stage_x11_set_fullscreen),
8185	(clutter_stage_x11_set_title): Ditto as above.
8186
8187	* clutter/x11/clutter-stage-x11.h: Update the set_wm_protocols()
8188	method to take the X11 stage implementation.
8189
8190	* clutter/glx/clutter-stage-glx.c:
8191	(clutter_stage_glx_realize): Update for the set_wm_protocols()
8192	change.
8193
8194	* tests/test-project.c: (main): Test clutter_stage_set_title().
8195
81962007-11-17  Emmanuele Bassi  <ebassi@openedhand.com>
8197
8198	* configure.ac: Depend on GLib >= 2.14 because of ClutterModel
8199	usage of GSequence.
8200
82012007-11-16  Øyvind Kolås  <pippin@o-hand.com>
8202
8203	* clutter/clutter-main.c: (emit_event): renamed from deliver_event,
8204	(emit_pointer_event): utility function to emit pointer event signals
8205	(which takes pointer grab into account).
8206	(emit_keyboard_event): utility function to emit keyboard event signals
8207	(which takes keyboard grab into account).
8208	(clutter_do_event): use the above utility functions, also reindented
8209	the source.
8210
82112007-11-16  Øyvind Kolås  <pippin@o-hand.com>
8212
8213	* tests/test-grab.c: (main): fix use of clutter_actor_set_reactive
8214
82152007-11-15  Øyvind Kolås  <pippin@o-hand.com>
8216
8217	* clutter/clutter-main.[ch]: added clutter_grab_keyboard,
8218	clutter_ungrab_keyboard and clutter_get_keyboard_grab, in
8219	clutter_do_event deliver keyboard related events only to the
8220	actor with the keyboard grab if a grab exists.
8221	* clutter/clutter-private.h: added keyboard_grab_actor to context.
8222	* tests/test-grab.c: added testing for testing the keyboard grab.
8223
82242007-11-15  Emmanuele Bassi  <ebassi@openedhand.com>
8225
8226	* clutter/clutter-texture.c:
8227	(clutter_texture_request_coords), (clutter_texture_class_init),
8228	(clutter_texture_init): Unset :sync-size if explicitly setting
8229	the texture size. (#616)
8230
82312007-11-15  Emmanuele Bassi  <ebassi@openedhand.com>
8232
8233	* clutter/clutter-actor.[ch]: Massive API clean-ups. Initial
8234	fixes for bugs #614 and #628.
8235
8236	* clutter/clutter-main.c:
8237	* clutter/clutter-stage.c: Update internal usage of the actor
8238	API.
8239
8240	* tests/test-events.c: Update test suite.
8241
82422007-11-15  Øyvind Kolås  <pippin@o-hand.com>
8243
8244	* clutter/clutter-main.c: (generate_enter_leave_events),
8245	(clutter_do_event): moved the generation of enter/leave events
8246	to a utility function.
8247
82482007-11-15  Neil J. Patel  <njp@o-hand.com>
8249
8250	* clutter/clutter-model.c:
8251	Added some more examples to the documentation, plus explained how the
8252	iters work internally.
8253
82542007-11-15  Øyvind Kolås  <pippin@o-hand.com>
8255
8256	* clutter/clutter-main.[ch]: added clutter_grab_pointer,
8257	clutter_ungrab_pointer and clutter_get_pointer_grab, in
8258	clutter_do_event deliver pointer related events only to the
8259	actor with the pointer grab if a grab exists.
8260	* clutter/clutter-private.h: added pointer_grab_actor to context.
8261	* tests/Makefile.am:
8262	* tests/test-grab.c: added test for testing the pointer grab.
8263
82642007-11-15  Emmanuele Bassi  <ebassi@openedhand.com>
8265
8266	* clutter/clutter-timeline.[ch]: Add ClutterTimeline:direction
8267	property, defining the direction (forward or backward) of the
8268	timeline.
8269
8270	* tests/test-timeline.c: Test the direction property.
8271
8272	* clutter.symbols: Update exported symbols
8273
82742007-11-15  Emmanuele Bassi  <ebassi@openedhand.com>
8275
8276	* clutter/clutter-effect.h:
8277	* clutter/clutter-effect.c:
8278	(clutter_effect_template_new_for_duration): Add a simple constructor
8279	for implicitly creating a ClutterTimeline with a given duration.
8280
82812007-11-15  Emmanuele Bassi  <ebassi@openedhand.com>
8282
8283	* clutter.symbols: Update with the new public symbols
8284
8285	* clutter/clutter-script.h:
8286	* clutter/clutter-script-private.h:
8287	* clutter/clutter-script.c:
8288	(parse_signals), (json_object_end),
8289	(signal_info_free), (object_info_free): Parse the "signals"
8290	member for GObjects.
8291
8292	(clutter_script_connect_signals),
8293	(clutter_script_connect_signals_full): Add new API for autoconnecting
8294	signal handlers using the UI definition files.
8295
8296	* tests/test-script.c:
8297	* tests/test-script.json: Test signal autoconnection.
8298
82992007-11-15  Matthew Allum  <mallum@openedhand.com>
8300
8301	* clutter/Makefile.am:
8302	* clutter/eglx/Makefile.am:
8303	* clutter/eglx/clutter-backend-egl.c:
8304	* clutter/eglx/clutter-backend-egl.h:
8305	* clutter/eglx/clutter-eglx.h:
8306	* clutter/eglx/clutter-event-egl.c:
8307	* clutter/eglx/clutter-stage-egl.c:
8308	* clutter/eglx/clutter-stage-egl.h:
8309	* clutter/glx/Makefile.am:
8310	* clutter/glx/clutter-backend-glx.c:
8311	* clutter/glx/clutter-backend-glx.h:
8312	* clutter/glx/clutter-event-glx.c:
8313	* clutter/glx/clutter-glx.h:
8314	* clutter/glx/clutter-stage-glx.c:
8315	* clutter/glx/clutter-stage-glx.h:
8316	* clutter/x11/Makefile.am:
8317	* clutter/x11/clutter-backend-x11-private.h:
8318	* clutter/x11/clutter-backend-x11.c:
8319	* clutter/x11/clutter-backend-x11.h:
8320	* clutter/x11/clutter-event-x11.c:
8321	* clutter/x11/clutter-stage-x11.c:
8322	* clutter/x11/clutter-stage-x11.h:
8323	* clutter/x11/clutter-x11.h:
8324	Create a new X11 backend class of which EGL and GLX 'real' backends
8325	then subclass. Effectively shares all X11 code between both backends
8326	avoids code duplication and brings many missing features to EGL X
8327	backend. Requires some cleanup and testing. (#518)
8328
8329	* clutter/cogl/gles/cogl.c: (cogl_color):
8330	Add define to use color4ub only if configure finds it.
8331	If not fall back to old code.
8332
8333	* configure.ac:
8334	Drop support for vincent checks.
8335	Drop sdles backend.
8336	Specifically check for color4ub call.
8337
83382007-11-15  Neil J. Patel  <njp@o-hand.com>
8339
8340	* clutter/Makefile.am:
8341	* clutter/clutter-model.c:
8342	* clutter/clutter-model.h:
8343	* clutter/clutter.h:
8344	* tests/Makefile.am:
8345	* tests/test-model.c:
8346	Merged ClutterModel, which closes #443.
8347
83482007-11-14  Emmanuele Bassi  <ebassi@openedhand.com>
8349
8350	* clutter/clutter-clone-texture.c (set_parent_texture): Hide the
8351	clone texture only if it was visible, and show it again if we
8352	are adding a visible texture.
8353
8354	* tests/test-script.json: Test the CloneTexture actor.
8355
83562007-11-14  Emmanuele Bassi  <ebassi@openedhand.com>
8357
8358	* clutter/clutter-actor.[ch]: Rename clutter_actor_get_id() to
8359	clutter_actor_get_gid().
8360
8361	(clutter_actor_set_parent): Use GUINT_TO_POINTER().
8362
8363	* clutter/clutter-deprecated.h: Add a replacement warning for
8364	clutter_actor_get_id().
8365
8366	* clutter/clutter-texture.c (texture_upload_data): Use
8367	clutter_actor_get_gid(), and don't leak the filename string.
8368
83692007-11-14  Emmanuele Bassi  <ebassi@openedhand.com>
8370
8371	* clutter/clutter-scriptable.[ch]: Rename ::set_name and ::get_name
8372	to ::set_id and ::get_id, to avoid potential confusion with the
8373	ClutterActor:name property.
8374
8375	* clutter/clutter-script.h:
8376	* clutter/clutter-script.c (clutter_script_construct_object): Use
8377	clutter_scriptable_set_id().
8378
8379	(clutter_get_script_id): Add a public function to retrieve the ID
8380	used in the UI definition files from an object.
8381
8382	* clutter/clutter-actor.c: Do not set the name of the actor with
8383	the ID set in the UI definition files.
8384
8385	* tests/test-script.c: Test clutter_get_script_id().
8386
8387	* clutter.symbols: Update with the new symbols.
8388
83892007-11-14  Emmanuele Bassi  <ebassi@openedhand.com>
8390
8391	* clutter/cutter-deprecated.h: Don't let everyone know from where
8392	we have stolen^Wtaken inspiration for the deprecation warnings.
8393
83942007-11-13  Øyvind Kolås  <pippin@o-hand.com>
8395
8396	* clutter/clutter-behaviour-bspline.[ch]:
8397	Replaced clutter_behaviour_bspline_append with
8398	clutter_behaviour_bspline_append_knots. Fixes bug #582.
8399	* clutter/clutter-deprecated.h: added deprecation macro reflecting the
8400	API change.
8401
84022007-11-13  Øyvind Kolås  <pippin@o-hand.com>
8403
8404	* clutter/Makefile.am:
8405	* clutter/clutter.h: include clutter-deprecated.h
8406	* clutter/clutter-deprecated.h: added file containing macros that
8407	provides more meaningful errors when compiling clutter using code that
8408	uses deprecated functions.
8409
84102007-11-13  Øyvind Kolås  <pippin@o-hand.com>
8411
8412	Renamed all properties of behaviours (and related
8413	functions/variables/parameters)
8414	to match the pattern something-start, something-end. Fixes bug #577.
8415
8416	* clutter/clutter-behaviour-depth.c:
8417	* clutter/clutter-behaviour-depth.h:
8418	* clutter/clutter-behaviour-ellipse.c:
8419	* clutter/clutter-behaviour-ellipse.h:
8420	* clutter/clutter-behaviour-path.c:
8421	* clutter/clutter-behaviour-rotate.c:
8422	* clutter/clutter-behaviour-rotate.h:
8423	* clutter/clutter-behaviour-scale.c:
8424	* clutter/clutter-behaviour-scale.h:
8425	* clutter/clutter-effect.c:
8426	* clutter/clutter-effect.h:
8427	* clutter/clutter-script.c:
8428	* tests/test-depth.c:
8429	* tests/test-script.c:
8430
84312007-11-06  Øyvind Kolås  <pippin@o-hand.com>
8432
8433	* clutter/clutter-event.h: made ClutterEventAny have a source field,
8434	rearanged other structs to have source in the same position.
8435	* clutter/clutter-event.c: (clutter_event_get_source): modified to use
8436	the any event.
8437	(clutter_event_free): removed unused variable.
8438	* clutter/clutter-main.c: (deliver_event), (clutter_do_event): reduced
8439	amount of code. As well as deliver button-release events to the stage.
8440
84412007-11-08  Rob Bradford  <rob@openedhand.com>
8442
8443	* clutter/glx/clutter-glx.h:
8444	Include <X11/Xutil.h> needed for the definition of XVisualInfo.
8445
84462007-11-08  Rob Bradford  <rob@openedhand.com>
8447
8448	* clutter/cogl/gles/cogl.c: (cogl_color):
8449	Switch over to using glColor4ub in the GLES backend. It's available in
8450	the header file but missing in the reference manual.
8451
84522007-11-07  Emmanuele Bassi  <ebassi@openedhand.com>
8453
8454	* clutter/clutter-actor.[ch]: Fix the declaration of the
8455	class handlers for the ::captured-event, ::enter-event and
8456	::leave-event signals; the function signatures were missing
8457	the return value the signals marshallers were expecting, and
8458	their names weren't respecting the convention for event-related
8459	signals.
8460
84612007-11-06  Tomas Frydrych  <tf@o-hand.com>
8462
8463	* clutter/clutter-fixed.h:
8464	Added CLUTTER_SQRTI_ARG_MAX, CLUTTER_SQRTI_5_PERCENT,
8465	CLUTTER_SQRTI_10_PERCENT expressing clutter_sqrti limits.
8466	Stripped trailing whitespace.
8467
8468	* clutter/clutter-fixed.c:
8469	(clutter_sqrti):
8470	Updated documentation, stripped trailing whitespace.
8471
8472	* clutter/clutter-behaviour-path.c:
8473	(node_distance):
8474	Use clib sqrt if clutter_sqrti() precission would be worse than
8475	10%.
8476	Stripped trailing whitespace.
8477
84782007-11-06  Emmanuele Bassi  <ebassi@openedhand.com>
8479
8480	* clutter/clutter-layout.h: Add commodity macros to test for
8481	a specific layout flag in one line.
8482
84832007-11-06  Emmanuele Bassi  <ebassi@openedhand.com>
8484
8485	* clutter/clutter-box.c (clutter_box_dispose): Call unparent()
8486	on the children, instead of destroy(), to avoid a double free
8487	and a crash when destroying a ClutterBox.
8488
84892007-11-06  Emmanuele Bassi  <ebassi@openedhand.com>
8490
8491	* clutter/clutter-label.c: Break the references in ::dispose,
8492	and free the resources in ::finalize.
8493
84942007-11-05  Øyvind Kolås  <pippin@o-hand.com>
8495
8496	* clutter/clutter-container.[ch]: removed find_child_by_id method
8497	from interface (and all implementations of it) since this
8498	functionality is now implemented using a global hash.
8499	* clutter/clutter-box.c:
8500	* clutter/clutter-group.c:
8501
85022007-11-01  Emmanuele Bassi  <ebassi@openedhand.com>
8503
8504	* clutter/clutter-script.c: Do not keep ownership of the
8505	pixbufs we load.
8506
85072007-10-31  Øyvind Kolås  <pippin@o-hand.com>
8508
8509	* clutter/clutter-main.c: (_clutter_do_pick): disable dithering
8510	when painting in pick mode.
8511
85122007-10-31  Matthew Allum  <mallum@openedhand.com>
8513
8514	* clutter/clutter-score.c:
8515	Various minor improvements to ClutterScore.
8516
85172007-10-30  Emmanuele Bassi  <ebassi@openedhand.com>
8518
8519	* clutter/clutter-layout.c: Fix documentation, with regards to
8520	the containers handling of the children implementing the
8521	ClutterLayout interface.
8522
85232007-10-29  Emmanuele Bassi  <ebassi@openedhand.com>
8524
8525	* configure.ac:
8526	* clutter/cogl/gl/cogl-defines.h.in: The OS X backend has a funny
8527	OpenGL header location, so it basically did break every application
8528	including clutter/cogl.h because the GL header inclusion depended
8529	on symbols defined into Clutter's config.h. Now, we define the
8530	GL header into the configure template and use it to create the
8531	cogl-defines.h file cogl.h includes.
8532
85332007-10-29  Emmanuele Bassi  <ebassi@openedhand.com>
8534
8535	* clutter/json/json-parser.c: Enable parsing of negative numbers;
8536	GScanner splits negative numbers into two tokens, so we need to
8537	special case them.
8538
85392007-10-29  Emmanuele Bassi  <ebassi@openedhand.com>
8540
8541	* clutter/clutter-script.c: Add the :filename and :filename-set
8542	properties, to retrieve the path of the currently parsed file (if
8543	:filename-set is TRUE) from the ClutterScriptable implementations.
8544
85452007-10-28  Matthew Allum  <mallum@openedhand.com>
8546
8547	* clutter/clutter-effect.c:
8548	Small doc fix (#584)
8549
85502007-10-27  Emmanuele Bassi  <ebassi@openedhand.com>
8551
8552	* clutter/json/json-parser.c:
8553	(json_scanner_msg_handler): Set the GError to be returned by
8554	the parsing functions into the GScanner error message handler.
8555
8556	(json_parser_object): Return the symbol token in case we have
8557	a parse error after the member name.
8558
8559	(json_parser_load_from_data): Propagate the error set in the
8560	message handler, if any.
8561
8562	* clutter/json/json-node.c (json_node_free): Unref the objects
8563	only if are set, to avoid a couple of needless criticals we
8564	get on error.
8565
8566	* tests/test-script.json: More properties.
8567
85682007-10-27  Emmanuele Bassi  <ebassi@openedhand.com>
8569
8570	* clutter/clutter-script.[ch]: Slight API change in the
8571	clutter_script_get_objects() function: now it takes
8572	object name/object return location pairs and returns the
8573	number of objects found and returned.
8574
8575	* tests/test-script.c: Exercise the clutter_script_get_objects()
8576	function.
8577
85782007-10-27  Emmanuele Bassi  <ebassi@openedhand.com>
8579
8580	* clutter/clutter-rectangle.c (clutter_rectangle_paint): Use
8581	CGL_ENABLE_BLEND flag instead of CGL_BLEND value. (#580,
8582	Gwenole Beauchesne)
8583
85842007-10-27  Emmanuele Bassi  <ebassi@openedhand.com>
8585
8586	* clutter/clutter-color.c (clutter_color_to_string): Update the
8587	documentation for the format of the returned string, and remove
8588	the note: now clutter_color_parse() can parse the string this
8589	function returns.
8590
85912007-10-27  Emmanuele Bassi  <ebassi@openedhand.com>
8592
8593	* clutter/pango/pangoclutter-render.c: Last usage of guint
8594	replaced with COGLuint. (Tommi Komulainen)
8595
85962007-10-26  Matthew Allum  <mallum@openedhand.com>
8597
8598	* clutter/clutter-texture.c:
8599	* clutter/cogl/cogl.h:
8600	* clutter/cogl/gl/cogl-defines.h:
8601	* clutter/cogl/gles/cogl-defines.h:
8602	* clutter/cogl/gl/cogl.c:
8603	* clutter/cogl/gles/cogl.c:
8604	Switch from use of guint to COGLuint. Avoids problems when
8605	guint != GLuint on some platforms, i.e OSX.
8606	(Tommi Komulainen, #525, #523)
8607
8608	* clutter/Makefile.am:
8609	* clutter/osx/Makefile.am:
8610	* clutter/osx/clutter-backend-osx.c:
8611	* clutter/osx/clutter-backend-osx.h:
8612	* clutter/osx/clutter-event-osx.c:
8613	* clutter/osx/clutter-osx.h:
8614	* clutter/osx/clutter-stage-osx.c:
8615	* clutter/osx/clutter-stage-osx.h:
8616	* configure.ac:
8617	Add initial Cocoa/OSX Backend (by Tommi Komulainen, see #526)
8618
86192007-10-26  Emmanuele Bassi  <ebassi@openedhand.com>
8620
8621	* clutter/clutter-entry.c: Add a :x-align property for aligning
8622	the text in the entry, in case the actor is wider than the
8623	text it shows.
8624
86252007-10-26  Emmanuele Bassi  <ebassi@openedhand.com>
8626
8627	* clutter/clutter-main.c: Add a --clutter-default-fps run-time
8628	switch and CLUTTER_DEFAULT_FPS environment variable support for
8629	setting the default frame-rate at run-time.
8630
86312007-10-26  Emmanuele Bassi  <ebassi@openedhand.com>
8632
8633	* clutter/clutter-script.h:
8634	* clutter/clutter-script.c: Add a ::get_type_from_name() virtual
8635	function for bindings to override. The current implementation
8636	calls g_type_from_name() and our lazy class resolver.
8637
8638	* clutter.symbols: Update.
8639
8640	* doc/reference/clutter-sections.txt: Update.
8641
86422007-10-25  Emmanuele Bassi  <ebassi@openedhand.com>
8643
8644	* clutter/clutter-behaviour-path.c: Reverse the list of
8645	parsed knots, to preserve the real ordering after prepending
8646	them (thanks to Øyvind for spotting this).
8647
8648	* clutter/clutter-behaviour-bspline.c: Ditto as above.
8649
86502007-10-25  Emmanuele Bassi  <ebassi@openedhand.com>
8651
8652	* clutter/clutter-script-parser.c: Unset the GValue when
8653	getting a ClutterUnit from a JSON node.
8654
86552007-10-25  Emmanuele Bassi  <ebassi@openedhand.com>
8656
8657	* clutter/clutter-behaviour-bspline.c: Implement the
8658	ClutterScriptableIface to parse the custom "knots" property.
8659
86602007-10-25  Emmanuele Bassi  <ebassi@openedhand.com>
8661
8662	* tests/test-script.c:
8663	* tests/test-script.json: Rejig the test case and add a
8664	path behaviour to test the knot parsing code.
8665
86662007-10-25  Emmanuele Bassi  <ebassi@openedhand.com>
8667
8668	* clutter/cogl/cogl.h: Do not include <clutter/clutter.h>.
8669
86702007-10-25  Emmanuele Bassi  <ebassi@openedhand.com>
8671
8672	* clutter/clutter-behaviour-path.c: Implement the
8673	ClutterScriptableIface to parse the custom "knots" property.
8674
86752007-10-25  Emmanuele Bassi  <ebassi@openedhand.com>
8676
8677	* clutter/clutter-texture.c (clutter_texture_set_property): Do
8678	not try to set NULL pixbufs.
8679
86802007-10-25  Emmanuele Bassi  <ebassi@openedhand.com>
8681
8682	* clutter/clutter-actor.c: Implement part of the ClutterScriptable
8683	interface, using the ClutterActor API to set and get the name
8684	of an actor.
8685
8686	(clutter_geometry_copy), (clutter_geometry_free): Use
8687	the slice allocator to avoid fragmentation when setting
8688	properties and emitting signals (that is: when packing
8689	boxed types into GValues).
8690
8691	(clutter_actor_box_copy), (clutter_actor_box_free),
8692	(clutter_vertex_copy), (clutter_vertex_free): Ditto.
8693
8694	* clutter/clutter-actor.h:
8695	* clutter/clutter-actor.c:
8696	(clutter_actor_push_transform_child),
8697	(clutter_actor_pop_transfomr_child): Simple wrappers around
8698	COGL API, which avoid including clutter/cogl.h when writing
8699	container actors outside Clutter.
8700
87012007-10-25  Emmanuele Bassi  <ebassi@openedhand.com>
8702
8703	* clutter/Makefile.am:
8704	* clutter/clutter.h:
8705	* clutter/clutter-scriptable.[ch]: Add the ClutterScriptable
8706	interface; by implementing this interface, a class can
8707	override the UI definition parsing and transform complex data
8708	types into GObject properties, or allow custom properties.
8709
8710	* clutter/clutter-script.c:
8711	* clutter/clutter-script-parser.c:
8712	* clutter/clutter-script-private.h: Rearrange the code and
8713	use the ClutterScriptable interface to parse and build the
8714	custom properties. This cleans up the code and also it makes
8715	it more reliable (the complex type parsing is now done using
8716	the target type and not just the name of the property).
8717
87182007-10-25  Emmanuele Bassi  <ebassi@openedhand.com>
8719
8720	* clutter/clutter-json.h: Header for including the JSON
8721	parsing and data types.
8722
8723	* clutter/json/json-types.h: Add JSON_NODE_VALUE_TYPE() macro.
8724
8725	* clutter/json/Makefile.am: Install the JSON headers into a
8726	private location. This might change in the future, and might
8727	also cause collisions if you're using JSON-GLib and Clutter
8728	at the same time, so be warned.
8729
87302007-10-22  Emmanuele Bassi  <ebassi@openedhand.com>
8731
8732	* clutter/clutter-label.c (clutter_label_request_coords): If
8733	we get a size requisition, and we have ellipsization active,
8734	check if we are getting less space than what the layout needs
8735	and recompute the width.
8736
87372007-10-22  Emmanuele Bassi  <ebassi@openedhand.com>
8738
8739	* clutter/clutter-color.c (clutter_color_to_string): Change
8740	the print format to "%02x%02x%02x%02x" because we use guint8
8741	for each component, not guint16.
8742
87432007-10-19  Emmanuele Bassi  <ebassi@openedhand.com>
8744
8745	* clutter/clutter-entry.c (clutter_entry_paint): Fixed off by
8746	one error. (#566, Gwenole Beauchesne)
8747
87482007-10-18  Øyvind Kolås  <pippin@o-hand.com>
8749
8750	* clutter/clutter-timeline.c: (clutter_timeline_set_duration):
8751	rearranged arithemetic to allow specifying duration with sub second
8752	precision (also enables durations smaller than one second).
8753
87542007-10-18  Emmanuele Bassi  <ebassi@openedhand.com>
8755
8756	* clutter/clutter-script-private.h:
8757	* clutter/clutter-script.h:
8758	* clutter/clutter-script.c: Allow id-less objects: as long
8759	as they have a "type" member, a unique id will be provided.
8760
8761	(json_object_end): Add merge id to the object information
8762	structure.
8763
8764	(apply_behaviours), (add_children): Keep the unresolved
8765	objects around.
8766
8767	(construct_stage), (clutter_script_construct_object): If an
8768	object has unresolved children or behaviours try resolving
8769	them when we ask for it.
8770
8771	(json_parse_end), (clutter_script_ensure_objects): Ensure
8772	that the objects are fully constructed as best as we can when
8773	finished parsing.
8774
8775	(object_info_free), (remove_by_merge_id):
8776	(clutter_script_unmerge_objects): Remove objects under the
8777	same merge id returned by the loading functions. (Fixes
8778	bug #558)
8779
8780	* test/test-script.c:
8781	* test/test-script.json: Test unresolved merging and unmerging
8782	in ClutterScript.
8783
87842007-10-18  Matthew Allum  <mallum@openedhand.com>
8785
8786	* clutter/clutter-score.c:
8787	* clutter/clutter-score.h:
8788	* tests/test-score.c:
8789	Implement more ClutterScore functionality.
8790
87912007-10-17  Emmanuele Bassi  <ebassi@openedhand.com>
8792
8793	* clutter/clutter-actor.c:
8794	(clutter_actor_set_property), (clutter_actor_get_property),
8795	(clutter_actor_class_init): Add the :reactive property, to
8796	control reactiveness using the UI definition files.
8797
8798	(clutter_actor_reparent): Do not assume the parent is a
8799	ClutterContainer, and call the container API only if needed.
8800
8801	(clutter_actor_destroy): Remove from the parent if needed,
8802	just like the documentation says.
8803
88042007-10-16  Øyvind Kolås  <pippin@o-hand.com>
8805
8806	* clutter/pango/pangoclutter-render.c: (tc_get): Provide for blank
8807	rows/columns of pixels between adjecant glyphs in the texture cache to
8808	avoid bilinear interpolation spillage at edges of glyphs.
8809
88102007-10-16  Øyvind Kolås  <pippin@o-hand.com>
8811
8812	* clutter/clutter-main.c: (clutter_do_event): allow motion events
8813	only delivered to stage to be caught in the capture phase as well
8814	as the bubbling phase.
8815
88162007-10-16  Emmanuele Bassi  <ebassi@openedhand.com>
8817
8818	* clutter/json/json-object.c: Automatically transform every
8819	delimiter into an underscore.
8820
8821	* clutter/clutter-script.c: Implement the "parent_texture"
8822	property translation for ClutterCloneTextures, using the
8823	passed id of the parent texture.
8824
88252007-10-16  Emmanuele Bassi  <ebassi@openedhand.com>
8826
8827	* clutter/clutter-timeline.[ch]: Added ClutterTimeline:duration,
8828	a property for setting the duration of a timeline in milliseconds.
8829	The property comes with accessors and a new constructor. The
8830	frame rate used is the default value.
8831
8832	* clutter/clutter-private.h:
8833	* clutter/clutter-main.[ch]: Add clutter_get_default_frame_rate()
8834	and clutter_set_default_frame_rate(); these two functions control
8835	the default frame rate to be used when creating timelines. Currently
8836	is set to 60 frames-per-second.
8837
88382007-10-16  Tomas Frydrych  <tf@o-hand.com>
8839
8840	* build/msvc_2k5:
8841	Added MSVC project files.
8842
88432007-10-16  Emmanuele bassi  <ebassi@openedhand.com>
8844
8845	* clutter/clutter-color.c: Copy the alpha when shading.
8846
88472007-10-16  Tomas Frydrych  <tf@o-hand.com>
8848
8849	* clutter.symbols:
8850	Added a bunch of missing symbols.
8851
8852	* clutter/clutter-script.c:
8853	* json/json-node.c:
8854	Use g_slice_new0 instead of g_slice_new to avoid passing
8855	garbage to functions.
8856
8857	* tests/test-threads.c:
8858	Replaced non-portable sleep() with g_usleep().
8859
88602007-10-15  Tomas Frydrych  <tf@o-hand.com>
8861
8862	* clutter/cogl/gl/cogl-defines.h:
8863	* clutter/cogl/gl/cogl.c:
8864	Fixup GL include for windows.
8865
88662007-10-15  Matthew Allum  <mallum@openedhand.com>
8867
8868	* clutter/clutter-actor.c:
8869	More events documentation.
8870
8871	* clutter/clutter-event.c:
8872	* clutter/clutter-event.h:
8873	Add synthetic flag and make put_event use it
8874	(via modded patch from pippin)
8875
8876	* clutter/clutter-main.c: (clutter_do_event):
8877	dont use put event anymore when pushing enter/leave events.
8878
88792007-10-15  Emmanuele Bassi  <ebassi@openedhand.com>
8880
8881	* clutter/pango/Makefile.am: Compile with the debug flags, if
8882	set.
8883
88842007-10-12  Emmanuele Bassi  <ebassi@openedhand.com>
8885
8886	* clutter.symbols: Remove non-public symbols.
8887
88882007-10-12  Tomas Frydrych  <tf@o-hand.com>
8889
8890	* clutter.symbols:
8891	A list of public symbols, one per line; semi-autogenerated, so
8892	might not be complete -- PLEASE when adding new public APIs, add
8893	the function name to this file.
8894
88952007-10-12  Emmanuele Bassi  <ebassi@openedhand.com>
8896
8897	* clutter/clutter-actor.c: Add a :depth property, so we can
8898	set the initial depth of an actor inside the UI definition
8899	files.
8900
89012007-10-12  Tomas Frydrych  <tf@o-hand.com>
8902
8903	* tests/test-actors.c:
8904	When using MSVC, define _USE_MATH_DEFINES before including
8905	math.h, otherwise constants like M_PI will not be defined.
8906
89072007-10-12  Emmanuele Bassi  <ebassi@openedhand.com>
8908
8909	* clutter/clutter-script.c (construct_timline),
8910	(parse_member_to_property): Transfer ownership of the
8911	implicit timelines to the behaviour, so that they get
8912	unreferenced when the behaviour is destroyed.
8913
8914	(parse_member_to_property): Reverse the list of children
8915	and behaviours.
8916
89172007-10-12  Tomas Frydrych  <tf@o-hand.com>
8918
8919	Portability fixes:
8920
8921	* clutter/clutter-private.h:
8922	Bracket #include "unistd.h" with #ifdef HAVE_UNISTD_H
8923
8924	* clutter/clutter-fixed.c:
8925	Use "", not <> for inclusion of local files.
8926
8927	(clutter_sqrtx): forward declare local variables.
8928
8929	* clutter/clutter-debug.h:
8930	Added non-gcc (c99) implementation of variadic debug macros for
8931	when not compiling with gcc.
8932
8933	* clutter/pango/pangoclutter-render.c:
8934	Fixed some strange uses of CLUTTER_NOTE() + stripped trailing
8935	whitespace.
8936
89372007-10-12  Tomas Frydrych  <tf@o-hand.com>
8938
8939	* clutter/clutter-actor.c:
8940	* clutter/clutter-backend.c:
8941	* clutter/clutter-behaviour-depth.c:
8942	* clutter/clutter-box.c:
8943	* clutter/clutter-clone-texture.c:
8944	* clutter/clutter-container.c:
8945	* clutter/clutter-entry.c:
8946	* clutter/clutter-feature.c:
8947	* clutter/clutter-fixed.c:
8948	* clutter/clutter-group.c:
8949	* clutter/clutter-hbox.c:
8950	* clutter/clutter-label.c:
8951	* clutter/clutter-layout.c:
8952	* clutter/clutter-media.c:
8953	* clutter/clutter-rectangle.c:
8954	* clutter/clutter-score.c:
8955	* clutter/clutter-script.c:
8956	* clutter/clutter-stage.c:
8957	* clutter/clutter-texture.c:
8958	* clutter/clutter-timeline.c:
8959	* clutter/clutter-timeout-pool.c:
8960	* clutter/clutter-vbox.c:
8961	* clutter/cogl/gl/cogl.c:
8962	* clutter/cogl/gles/cogl.c:
8963	* clutter/eglnative/clutter-backend-egl.c:
8964	* clutter/eglnative/clutter-event-egl.c:
8965	* clutter/eglnative/clutter-stage-egl.c:
8966	* clutter/eglx/clutter-backend-egl.c:
8967	* clutter/eglx/clutter-event-egl.c:
8968	* clutter/eglx/clutter-stage-egl.c:
8969	* clutter/glx/clutter-event-glx.c:
8970	* clutter/json/json-array.c:
8971	* clutter/json/json-generator.c:
8972	* clutter/json/json-node.c:
8973	* clutter/json/json-object.c:
8974	* clutter/json/json-parser.c:
8975	* clutter/sdl/clutter-backend-sdl.c:
8976	* clutter/sdl/clutter-event-sdl.c:
8977	* clutter/sdl/clutter-stage-sdl.c:
8978
8979	Fixedup config.h inclusion (must always be bracketed with #ifdef
8980	HAVE_CONFIG_H).
8981
89822007-10-11  Tomas Frydrych  <tf@o-hand.com>
8983
8984	* clutter/clutter-entry.c:
8985	Avoid using C++ reserverd words to name variables.
8986
89872007-10-11  Øyvind Kolås  <pippin@o-hand.com>
8988
8989	Improve the quality of text when the scale it is shown at screen is
8990	smaller than the original, seems to work well down to about a scale
8991	of 50%.
8992
8993	* clutter/pango/pangoclutter-fontmap.c:
8994	(pango_clutter_font_map_default_substitute): turn off hinting.
8995	* clutter/pango/pangoclutter-render.c: request linear filtering
8996	instead of nearest neighbour when scaling down.
8997	* tests/test-text.c: replaced test with a a test that renders a sample
8998	grid with various pixel sizes and scales for visual inspection of
8999	text rendering quality.
9000
90012007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>
9002
9003	* clutter/glx/clutter-backend-glx.c: Fix documentation of the
9004	filter function API.
9005
9006	* clutter/clutter-score.c:
9007	* clutter/clutter-effect.c:
9008	* clutter/clutter-actor.c: Documentation fixes.
9009
9010	* clutter/clutter-actor.h: Automatically typecast to ClutterActor
9011	when setting/checking flags.
9012
90132007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>
9014
9015	* clutter/clutter-actor.c: Beautify the ClutterActor documentation.
9016
90172007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>
9018
9019	* clutter/clutter-actor.c: Remove the ::event-after signal:
9020	three event layers to connect to seems a bit overkill.
9021
9022	(clutter_actor_event): Return FALSE, not TRUE by default,
9023	as g_signal_emit() will change the return value if no
9024	handlers are connected
9025
9026	* clutter/clutter-stage.c: Emit ::notify when we change
9027	the fullscreen property.
9028
9029	* clutter/clutter-script.c: Add more documentation for the
9030	definition format and keywords.
9031
9032	(translate_property): Collapse the G_TYPE_ENUM and G_TYPE_FLAGS
9033	cases into one, to simplify the code.
9034
9035	* tests/test-script.c: Test enumeration conversion by using
9036	a value different from the default.
9037
90382007-10-10  Matthew Allum  <mallum@openedhand.com>
9039
9040	* clutter/clutter-actor.c:
9041	* clutter/clutter-actor.h:
9042	* clutter/clutter-event.c:
9043	* clutter/clutter-main.c:
9044	* tests/test-events.c:
9045	Add basic W3 DOM  event 'capture' like functionality.
9046
90472007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>
9048
9049	* clutter/clutter-script-private.h:
9050	* clutter/clutter-script.c: Parse flags like we parse enums.
9051
90522007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>
9053
9054	* clutter/json/json-types.h:
9055	* clutter/json/json-array.c:
9056	* clutter/json/json-object.c: Resync with the upstream copy
9057	of JSON-GLib; add json_object_remove_member() and
9058	json_array_remove_element() and fix the g_hash_table_get_keys()
9059	replacement for GLib 2.12.
9060
9061	* clutter/clutter-script.c: Clean up the complex properties
9062	parsing code.
9063
90642007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>
9065
9066	* clutter/clutter-script.c (json_object_end): Add "type_func"
9067	to the list of attributes we skip.
9068
90692007-10-10  Emmanuele Bassi  <ebassi@openedhand.com>
9070
9071	* clutter/json/json-parser.c: Use the commodity JsonNode API
9072	and accept bare values as root nodes.
9073
9074	* clutter/clutter-script-private.h:
9075	* clutter/clutter-script.c: Unreference the created objects
9076	only if they are top-levels, like ClutterBehaviour and
9077	ClutterTimelines. Actors have floating references, so we
9078	just transfer ownership to their containers, and the stage
9079	is owned by the backend. Add the "type_func" key to the
9080	object definition, so the user can supply its own GType
9081	function if the class name doesn't follow the GObject rules.
9082	Document the ClutterScript public API.
9083
90842007-10-10  Matthew Allum  <mallum@openedhand.com>
9085
9086	* clutter/clutter-actor.c:
9087	* clutter/clutter-actor.h:
9088	Add missing enter/leave event signals
9089
9090	* clutter/clutter-main.c: (clutter_do_event):
9091	Set time in crossing events.
9092	Protect against do_pick() failing.
9093
90942007-10-09  Emmanuele Bassi  <ebassi@openedhand.com>
9095
9096	* clutter/clutter-script.c (resolve_alpha_func): Fix the
9097	ClutterAlphaFunc resolution function.
9098
90992007-10-09  Emmanuele Bassi  <ebassi@openedhand.com>
9100
9101	* tests/Makefile.am:
9102	* tests/test-script.c:
9103	* tests/test-script.json: Move part of the UI definition into
9104	its own file and exercise clutter_script_load_from_file().
9105
91062007-10-09  Emmanuele Bassi  <ebassi@openedhand.com>
9107
9108	* clutter/clutter-script.c (clutter_script_get_object): Construct
9109	the requested object if it hasn't been already. This allows
9110	referencing objects within the same snippet.
9111
9112	* tests/test-script.c: Declare a timeline and use it inside
9113	multiple behaviours; apply multiple behaviours to various
9114	actors, then retrieve the timeline to start it when the test
9115	runs.
9116
91172007-10-09  Emmanuele Bassi  <ebassi@openedhand.com>
9118
9119	* clutter/clutter-script-private.h:
9120	* clutter/clutter-script.c: Allow applying behaviours directly
9121	inside the UI definition data.
9122
9123	* tests/test-script.c: Test the "behaviours" member.
9124
91252007-10-09  Rob Bradford  <rob@openedhand.com>
9126
9127	* clutter/eglnative/clutter-backend-egl.c:
9128	(clutter_backend_egl_dispose):
9129	Call eglTerminate() on the display when the backend is disposed of.
9130
9131	* clutter/eglnative/clutter-stage-egl.c:
9132	(clutter_stage_egl_realize):
9133	Don't use the createNativeWindow() call, it's not generic EGL.
9134
91352007-10-09  Emmanuele Bassi  <ebassi@openedhand.com>
9136
9137	* clutter/clutter-script-private.h:
9138	* clutter/clutter-script.h:
9139	* clutter/clutter-script.c: Add licensing information to
9140	the newly added files.
9141
9142	* clutter/clutter-script.c: Support creating behaviours with
9143	ClutterScript. ClutterAlpha objects are implicit, but
9144	timelines can be both explicit objects using their id or
9145	implicit objects. Make the property resolution and translation
9146	more robust. Support the pixbuf property.
9147
9148	* tests/test-script.c: Test the newly added features.
9149
9150	* docs/reference/clutter-docs.sgml:
9151	* docs/reference/clutter-sections.txt: Add ClutterScript.
9152
91532007-10-09  Emmanuele Bassi  <ebassi@openedhand.com>
9154
9155	* clutter/clutter-fixed.h: Add deprecation guards around
9156	CLUTTER_FIXED_INT().
9157
91582007-10-08  Emmanuele Bassi  <ebassi@openedhand.com>
9159
9160	* clutter/clutter-script.c: Parse ClutterMargin and ClutterPadding
9161	properties from arrays or integers (assume pixels).
9162
91632007-10-08  Emmanuele Bassi  <ebassi@openedhand.com>
9164
9165	* clutter/clutter-script-private.h:
9166	* clutter/clutter-script.c: Allow defining childrens for every
9167	container actor inside the UI definition files.
9168
91692007-10-08  Matthew Allum  <mallum@openedhand.com>
9170
9171	* clutter/clutter-actor.c:
9172	* clutter/clutter-actor.h:
9173	* clutter/clutter-private.h:
9174	* clutter/clutter-main.c:
9175	Add a hash to global clutter context mapping all parented actor
9176	id's to actors.
9177	Add clutter_get_actor_by_id() call.
9178	Convert picking machinery to use above.
9179	(performance/simpler composite actor creation)
9180
9181	* clutter/clutter-stage.c: (clutter_stage_fullscreen),
9182	(clutter_stage_unfullscreen), (clutter_stage_event):
9183	Only set the fullscreen property on stage state fullscreen event(#545)
9184	Experimental as could be painful to implement on non X backends.
9185
91862007-10-08  Emmanuele Bassi  <ebassi@openedhand.com>
9187
9188	* clutter/clutter-script.c (json_parse_end):
9189	* clutter/json/json-object.c (json_object_get_members): Replace
9190	the GLib 2.14 API with the equivalent code for GLib < 2.14.
9191
9192	* configure.ac: Revert the dependency bump.
9193
91942007-10-08  Emmanuele Bassi  <ebassi@openedhand.com>
9195
9196	Initial implementation of the UI definition files. (#424)
9197
9198	* clutter/json/Makefile.am:
9199	* clutter/json/*.[ch]: In-tree copy of JSON-GLib, a GLib-based
9200	JSON parser/generator library. We use it in-tree because we might
9201	need to change the API. Ideally, we'd depend on it.
9202
9203	* clutter/clutter.h:
9204	* clutter/clutter-script-private.h:
9205	* clutter/clutter-script.[ch]: ClutterScript, the scenegraph
9206	generator class. It parses JSON streams in form of buffers and
9207	files and builds the scene.
9208
9209	* clutter/clutter-debug.h:
9210	* clutter/clutter-main.c: Add a "script" debug flag
9211
9212	* clutter/Makefile.am: Build glue.
9213
9214	* tests/Makefile.am:
9215	* tests/test-script.c: Add a test case for the ClutterScript.
9216
9217	* configure.ac: Depend on GLib 2.14, so we can use the
9218	g_hash_table_get_key() and g_hash_table_get_values() functions
9219	for the time being; we can probably reimplement those, but we
9220	are going to need 2.14 anyway if we are going to implement a
9221	list model using GSequence.
9222
92232007-10-08  Emmanuele Bassi  <ebassi@openedhand.com>
9224
9225	* tests/test-behave.c: Use the right return type for the
9226	event callbacks.
9227
92282007-10-03  Matthew Allum  <mallum@openedhand.com>
9229
9230	* clutter/clutter-actor.c:
9231	* clutter/clutter-event.c:
9232	* clutter/clutter-event.h:
9233	* clutter/clutter-main.c:
9234	* clutter/clutter-private.h:
9235	* clutter/eglnative/clutter-event-egl.c:
9236	* clutter/eglx/clutter-event-egl.c:
9237	* clutter/glx/clutter-event-glx.c:
9238	* clutter/sdl/clutter-event-sdl.c:
9239	Remove seperate double/triple click events and replace with
9240	a click_count member.
9241	Move calculating click counts from backend to do_event()
9242	Initial implementation of ENTER/LEAVE events.
9243
9244	* tests/test-events.c:
9245	Add code to test above.
9246
9247	* tests/test-behave.c:
9248	Sync with newer API.
9249
9250	* clutter/clutter-score.c:
9251	Silence a warning.
9252
92532007-10-01  Emmanuele Bassi  <ebassi@openedhand.com>
9254
9255	* clutter/clutter-fixed.h: Add CLUTTER_FIXED_TO_INT() and
9256	deprecate CLUTTER_FIXED_INT(), for symmetry with
9257	CLUTTER_FIXED_FROM_INT().
9258
9259	* clutter/clutter-alpha.c:
9260	* clutter/clutter-behaviour-depth.c:
9261	* clutter/clutter-behaviour-ellipse.c:
9262	* clutter/clutter-behaviour-path.c:
9263	* clutter/clutter-fixed.h: Use CLUTTER_FIXED_TO_INT().
9264
92652007-10-01  Emmanuele Bassi  <ebassi@openedhand.com>
9266
9267	* clutter/clutter-actor.c (clutter_actor_get_size): Implement
9268	get_size() as a wrapper around clutter_actor_query_coords()
9269	instead of calling g_object_get() twice.
9270
9271	(clutter_actor_init): Initialise the box in one call.
9272
92732007-10-01  Emmanuele Bassi  <ebassi@openedhand.com>
9274
9275	* clutter/clutter-actor.[ch]: Remove the ::event-after signal
9276	class handler, as it's not meant to be overridden by sub-classes.
9277
9278	(clutter_actor_class_init):
9279	Make every event-related signal return a boolean: return TRUE
9280	in a signal handler to block the emission. The value is accumulated
9281	automatically by the signal API.
9282
9283	(clutter_actor_event): If ::event returns TRUE, skip to emitting
9284	::event-after. Return the value accumulated by the signal emission
9285	chain.
9286
9287	* clutter/clutter-private.h: Rename _clutter_boolean_accumlator().
9288
9289	* clutter/clutter-main.c (clutter_do_event): If clutter_actor_event()
9290	returns TRUE then stop the event emission chain from child to parent.
9291
9292	* clutter/clutter-stage.c (clutter_stage_event): Behave like
9293	clutter_actor_event().
9294
9295	(clutter_stage_get_key_focus),
9296	(clutter_stage_set_key_focus): Avoid a nasty circular reference
9297	issue: if the actor passed to set_key_focus is NULL then the stage
9298	has the key focus.
9299
9300	* tests/test-events.c: Update the events test with the API
9301	changes.
9302
93032007-10-01  Tomas Frydrych  <tf@openedhand.com>
9304
9305	* clutter/clutter-actor.c:
9306	(clutter_actor_set_scale_with_gravityx):
9307	Use CLUTTER_QMUL for better precission (#532, patch by Gwenole
9308	Beauchesne).
9309
9310	* clutter/clutter-color.c:
9311	(clutter_color_to_hlsx):
9312	Added missing CLUTTER_INT_TO_FIXED conversion (#544, patch by Neil
9313	Roberts).
9314
93152007-10-01  Neil J. Patel  <njp@o-hand.com>
9316
9317	Patch by: Tommi Komulainen <tommi.komulainen@iki.fi>
9318
9319	* clutter/clutter-entry.c: (clutter_entry_delete_text):
9320	Fix characters vs. bytes inconsistency (#520).
9321
93222007-09-30  Matthew Allum  <mallum@openedhand.com>
9323
9324	* clutter/clutter-event.h:
9325	Removed unused POINTER_ENTER and POINTER_LEAVE states. (#546)
9326	* clutter/clutter-stage.c: (clutter_stage_fullscreen),
9327	(clutter_stage_unfullscreen):
9328	Only Change fullscreen prop if the backend implements fullscreen
9329	methods. (#545)
9330
93312007-09-28  Øyvind Kolås  <pippin@openedhand.com>
9332
9333	* clutter/clutter-container.[ch]: added
9334	clutter_container_find_child_by_name.
9335
93362007-09-28  Øyvind Kolås  <pippin@openedhand.com>
9337
9338	* clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize):
9339	removed unused variable perspective.
9340	* tests/test-events.c: (main): added CLUTTER_STAGE() cast.
9341	* tests/test-threads.c: include unistd.h for sleep().
9342
93432007-09-28  Øyvind Kolås  <pippin@openedhand.com>
9344
9345	* clutter/clutter-label.c: (clutter_label_ensure_layout): avoid
9346	calling pango_layout_set_text|markup before we've got any text.
9347
93482007-09-27  Matthew Allum  <mallum@openedhand.com>
9349
9350	* tests/test-scale.c:
9351	Fix out of about array addressing (#522, Tommi Komulainen)
9352
93532007-09-27  Matthew Allum  <mallum@openedhand.com>
9354
9355	* clutter/clutter-clone-texture.c:
9356	* clutter/clutter-rectangle.c:
9357	Include "config.h" in all c files (#524, Tommi Komulainen)
9358
93592007-09-27  Matthew Allum  <mallum@openedhand.com>
9360
9361	Merge from stable.
9362
9363	* clutter/clutter-behaviour-path.c: (path_alpha_to_position)
9364	Fix uninitialized variable (#480, Gwenole Beauchesne)
9365
93662007-09-27  Matthew Allum  <mallum@openedhand.com>
9367
9368	* clutter/clutter-event.c:
9369	* clutter/clutter-event.h:
9370	* clutter/clutter-main.c:
9371	Further event tweaks;
9372	- Ref the event actor source
9373	- Protect against off stage events (button releases) (#511)
9374	- Move more into ClutterEventAny
9375	- Add a click count to button event (as yet unused)
9376	- Minor cleanups
9377
9378	* clutter/clutter-actor.c:
9379	Make scale x/y a property.
9380
9381	* clutter/clutter-private.h:
9382	Remove _clutter_actor_apply_modelview*
9383
9384	* clutter/eglx/clutter-backend-egl.c:
9385	Warning cleanup
9386
9387	* clutter/eglx/clutter-stage-egl.c:
9388	* clutter/glx/clutter-stage-glx.c:
9389	* clutter/sdl/clutter-stage-sdl.c:
9390	Avoid setting viewport directly, but set sync flag.
9391
9392	* clutter/pango/pangoclutter-render.c: (draw_glyph):
9393	Minor cleanups.
9394
9395	* clutter/Makefile.am:
9396	* tests/Makefile.am:
9397	* tests/test-score.c
9398	* clutter/clutter.h:
9399	* clutter/clutter-score.h:
9400	* clutter/clutter-score.c:
9401	Add very initial (broken) ClutterScore implementation.
9402
94032007-09-25  Ross Burton  <ross@openedhand.com>
9404
9405	Merge from stable.
9406
9407	* clutter/clutter-group.c:
9408	Optimise sort_z_order.
9409
94102007-09-17  Emmanuele Bassi  <ebassi@openedhand.com>
9411
9412	Merge from stable
9413
9414	* clutter/eglnative/clutter-event-egl.c:
9415	Flag every device click after the first as motion events
9416	instead of button presses. (#505, Shreyas Srinivasan)
9417
94182007-09-10  Matthew Allum  <mallum@openedhand.com>
9419
9420	Port from stable branch.
9421
9422	* clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch):
9423	Only declare tsevent if we have tslib (#498, Robert Bragg)
9424
94252007-09-06  Emmanuele Bassi  <ebassi@openedhand.com>
9426
9427	* clutter/clutter-stage.c: Remove stray include <gdk-pixbuf-xlib.h>
9428	in ClutterStage: the code requesting it was moved in the backends.
9429
94302007-08-31  Emmanuele Bassi  <ebassi@openedhand.com>
9431
9432	* clutter/clutter-rectangle.c: Fix the border drawing: do not
9433	overdraw the rectangle on the border and fix the check for
9434	different border colour. (#488, Neil Roberts)
9435
94362007-08-29  Matthew Allum  <mallum@openedhand.com>
9437
9438	* clutter/clutter-effect.c: (clutter_effect_template_set_property):
9439	Add missing break statement. Whoops.
9440
94412007-08-29  Matthew Allum  <mallum@openedhand.com>
9442
9443	* clutter/clutter-main.c: (_clutter_do_pick):
9444	Call glFinish before reading pixels
9445	* clutter/eglx/clutter-stage-egl.c: (clutter_stage_egl_realize):
9446	Add missing read surface in making context current.
9447	Above fixes via	Kate Alhola.
9448
9449	* clutter/glx/clutter-glx.h:
9450	Add missing filter funcs so there actually exported
9451
94522007-08-24  Matthew Allum  <mallum@openedhand.com>
9453
9454	* clutter/clutter-actor.c:
9455	* clutter/clutter-event.h:
9456	* clutter/clutter-main.c:
9457	* clutter/clutter-stage.c:
9458	* clutter/clutter-stage.h:
9459	* clutter/glx/clutter-backend-glx.c:
9460	* clutter/glx/clutter-backend-glx.h:
9461	* clutter/glx/clutter-event-glx.c:
9462	* clutter/glx/clutter-stage-glx.c:
9463	* clutter/glx/clutter-stage-glx.h:
9464	Add initial support for stage state events.
9465	Fix fullscreening for an already mapped stage.
9466
9467	* tests/test-events.c:
9468	Print out info from the above. Blue button now toggles
9469	fullscreen.
9470
9471	* clutter/clutter-effect.c:
9472	* clutter/clutter-effect.h:
9473	Add a setting for templates to ref or clone underlying
9474	timelines. (As to improve sync issues like those in foofone)
9475
9476	* tests/test-timeline.c:
9477	Also add completed signals.
9478
9479	* clutter/cogl/gles/cogl.c: (cogl_texture_image_2d):
9480	* configure.ac:
9481	Forward port from stable branch. RGB Image fixes gles
9482	and check for lower case libgles_cm.
9483
94842007-08-24  Tomas Frydrych  <tf@openedhand.com>
9485
9486	* clutter/clutter-actor.c:
9487	(_clutter_actor_apply_modelview_transform):
9488
9489	Fixed rotation around x axis (bug 486).
9490
94912007-08-23  Emmanuele Bassi  <ebassi@openedhand.com>
9492
9493	* clutter/clutter-private.h:
9494	* clutter/clutter-event.c: Revert the event queue ordering
9495	commit.
9496
9497	* clutter/eglx/clutter-event-egl.c:
9498	* clutter/glx/clutter-event-glx.c:
9499	* clutter/sdl/clutter-event-sdl.c: Update backends.
9500
95012007-08-22  Tomas Frydrych  <tf@openedhand.com>
9502
9503	* clutter/clutter-behaviour-rotate.c:
9504	* clutter/clutter-behaviour-ellipse.c:
9505
9506	Fixed CCW rotation in rotate behaviour (bug 483); fixed overall
9507	path length calculation for angles > 360 in rotate and ellipse.
9508
95092007-08-22  Emmanuele Bassi  <ebassi@openedhand.com>
9510
9511	* clutter/clutter-main.c (clutter_threads_dispatch_free): Remove
9512	the main threads locking calls: the main loop might remove the
9513	source while dispatching it, so whether or not we are already
9514	holding the lock is unpredictable for the library. Leave a comment
9515	with the relevant bug number in GNOME's Bugzilla and wait for a
9516	fix in GLib.
9517
95182007-08-21  Emmanuele Bassi  <ebassi@openedhand.com>
9519
9520	* clutter/clutter-event.c: Correctly initialise the state
9521	variables used to detect multiple clicks.
9522
9523	(clutter_event_get_coords): Return the coordinates for
9524	CLUTTER_3BUTTON_PRESS events.
9525
9526	(clutter_events_pending): Check from the tail of the queue backward,
9527	like we do in clutter_event_get() and clutter_event_peek().
9528
95292007-08-21  Emmanuele Bassi  <ebassi@openedhand.com>
9530
9531	Preserve the ordering of the events in the queue when sythesising
9532	new events in the event translation sequence. (#481)
9533
9534	* clutter/clutter-event.c:
9535	* clutter/clutter-private.h: Allow flagging new events on the
9536	events queue without breaking ClutterEvent using a masked type.
9537
9538	(clutter_event_get), (clutter_event_put),
9539	(clutter_event_pending): Ignore events with the CLUTTER_EVENT_PENDING
9540	flag set when walking the events queue.
9541
9542	* clutter/eglx/clutter-event-egl.c:
9543	* clutter/glx/clutter-event-glx.c:
9544	* clutter/sdl/clutter-event-sdl.c: Push the new events straight
9545	on the queue, with the CLUTTER_EVENT_PENDING flag set; remove the
9546	flag if the event translation was succesful, or remove the event
9547	altogether.
9548
95492007-08-21  Emmanuele Bassi  <ebassi@openedhand.com>
9550
9551	* clutter/clutter-stage.c: Add missing documentation for the
9552	ClutterStage properties.
9553
95542007-08-21  Tomas Frydrych  <tf@openedhand.com>
9555
9556	* clutter/clutter-fixed.c:
9557	(clutter_sqrti):
9558
9559	Fixes for 64-bit platforms; use of SSE builtin when available
9560	(bugs 478, 479, patches by Gwenole Beauchesne).
9561
95622007-08-20  Emmanuele Bassi  <ebassi@openedhand.com>
9563
9564	* clutter/Makefile.am:
9565	* clutter/clutter-enum-types.h.in:
9566	* clutter/clutter-enum-types.c.in: Use template files for
9567	glib-mkenums; this makes the Makefile template a bit more
9568	clean and the enum types generation more customisable (e.g.
9569	when GLib 2.14 has been released, we can use g_once_init_enter()
9570	and g_once_init_leave() to have thread-safe GType functions
9571	for the enum types as well).
9572
95732007-08-20  Emmanuele Bassi  <ebassi@openedhand.com>
9574
9575	* clutter/clutter-version.h.in: Fix CLUTTER_CHECK_VERSION()
9576	macro to accept micro versions. (#477, Neil Roberts)
9577
95782007-08-19  Emmanuele Bassi  <ebassi@openedhand.com>
9579
9580	Various timeline related changes.
9581
9582	* clutter/clutter-timeout-pool.c: Use g_list_insert_sorted() to
9583	fix a timeout pool reversal happening with our homegrown
9584	sorted insertion function. (see #470)
9585
9586	* tests/Makefile.am:
9587	* tests/test-timeline.c: Add a ClutterTimeline test suite, for
9588	finding regressions in the behaviour of the timelines. (#470,
9589	Rob Bradford)
9590
9591	* clutter/clutter-main.c (clutter_do_event): Use an EVENT note,
9592	not a SCHEDULER one; SCHEDULER is for timelines and idle sources
9593	only.
9594
9595	* clutter/clutter-version.h.in: Protect the bare numbers of
9596	the version components.
9597
9598	* clutter/clutter-effect.c: Do not unref the ClutterAlpha, as
9599	the ownership is already of the behaviour used by the effect
9600	closure.
9601
9602	* clutter/clutter-timeline.c: Emit the ::new-frame signal only
9603	if the timeline is still active
9604
9605	Always advance at least of one frame. (#471, Rob Bradford)
9606
9607	Do not rewind the timeline if the user paused it in the ::new-frame
9608	signal handler: either the user has already done it with
9609	clutter_timeline_stop() or it's not what he's expecting if he
9610	called clutter_timeline_pause(). (#372, Johan Bilien)
9611
9612	If we skipped the last frame before emitting the ::complete
9613	signal, emit ::new-frame with the last frame.
9614
9615	Do not call clutter_timeline_stop() at the end of a non-looping
9616	timeline, as it emits the ::pause signal as well. Also, rewind the
9617	timeline *after* emitting ::complete, so that calling
9618	clutter_timeline_get_current_frame() in a signal handler still
9619	works.
9620
96212007-08-19  Matthew Allum  <mallum@openedhand.com>
9622
9623	* clutter/eglx/clutter-event-egl.c: (clutter_event_dispatch):
9624	Fix clutter_thread typo (Kate Alhola)
9625
96262007-08-18  Emmanuele Bassi  <ebassi@openedhand.com>
9627
9628	* clutter/clutter-effect.c:
9629	* clutter/clutter-main.c: Update the Since: tag for the
9630	backported API.
9631
9632	* clutter/clutter-behaviour-rotate.c: Fix a typo in the get_center()
9633	method. (#468, Neil Roberts)
9634
9635	Freeze and thaw the notification queue when changing multiple
9636	properties in the same method. Fix some coding style issues.
9637
96382007-08-15  Emmanuele Bassi  <ebassi@openedhand.com>
9639
9640	* clutter/clutter-actor.c: Add checks for the "reactive" flag
9641	accessors.
9642
96432007-08-15  Emmanuele Bassi  <ebassi@openedhand.com>
9644
9645	* clutter/clutter-effect.[ch]: Add clutter_effect_depth(), a
9646	simple wrapper around ClutterBehaviourDepth. (#464, Ali Sabil)
9647
96482007-08-15  Emmanuele Bassi  <ebassi@openedhand.com>
9649
9650	* clutter/clutter-alpha.c (clutter_smoothstep_inc): Use the
9651	correct type for parameters, to avoid overflow  (Ali Sabil).
9652
9653	* clutter/clutter-behaviour-opacity.c: Use the right format
9654	when printing the unsigned alpha value and opacity to the
9655	debug output.
9656
96572007-08-14  Emmanuele Bassi  <ebassi@openedhand.com>
9658
9659	* clutter/clutter-container.[ch]:
9660	* clutter/clutter-actor.c:
9661	* clutter/clutter-group.c: Rename clutter_container_raise() to
9662	clutter_container_raise_child(), and clutter_container_lower()
9663	to clutter_container_lower_child() to avoid clashing with
9664	ClutterActor raise() and lower() respectively.
9665
96662007-08-13  Matthew Allum  <mallum@openedhand.com>
9667
9668	* clutter/clutter-actor.c:
9669	* clutter/clutter-actor.h:
9670	* clutter/clutter-event.c:
9671	* clutter/clutter-event.h:
9672	* clutter/clutter-main.c:
9673	* clutter/clutter-main.h:
9674	* clutter/clutter-private.h:
9675	* clutter/clutter-stage.c:
9676	* clutter/clutter-stage.h:
9677	* clutter/clutter-types.h:
9678	Initial implementation of actors emmitting event signals (423);
9679	- Actors set_reactive() to receive mouse events.
9680	  (call clutter_enable_motion_events() for per action motion events)
9681	- clutter_stage_set_key_focus () to direct key events.
9682	- Events bubble up to parents (ending at stage)
9683	  (original source identified by clutter_event_get_source())
9684	TODO:
9685	- enter/leave notifys for actors.
9686	- stage specific events - fullscreen
9687	- grabs
9688
9689	* tests/test-events.c:
9690	Extend a little to use new API
9691
9692	* clutter/cogl/gl/cogl.c:
9693	* clutter/glx/clutter-backend-glx.c:
9694	Move get_proc_address into cogl and out of backend.
9695	(shaders will need it)
9696
9697	* clutter/clutter-group.c: (clutter_group_real_lower):
9698	Fix a minor compile warning.
9699
9700	* TODO:
9701	Sync up.
9702
97032007-08-13  Emmanuele Bassi  <ebassi@openedhand.com>
9704
9705	* clutter/clutter-container.[ch]: Add find_child_by_id(),
9706	raise(), lower() and sort_depth_order() virtual functions to
9707	ClutterContainer.
9708
9709	* clutter/clutter-group.[ch]: Deprecate the redundant calls
9710	from ClutterGroup, and make ClutterGroup implement them as part
9711	of the ClutterContainer interface implementation.
9712
9713	* clutter/clutter-box.c: Implement the newly added ClutterContainer
9714	methods; now clutter_stage_get_actor_at_pos() works with boxes
9715	as well as groups.
9716
9717	* clutter/clutter-stage.c:
9718	* clutter/clutter-actor.c: Replace calls to ClutterGroup functions
9719	with ClutterContainer ones.
9720
97212007-08-12  Emmanuele Bassi  <ebassi@openedhand.com>
9722
9723	* clutter/clutter-timeout-pool.c: Fix removing and adding timeouts
9724	to the timeout pool during a dispatch of a timeout source already
9725	inside the pool. (#456, based on a patch by Neil Roberts)
9726
9727	(clutter_timeout_dispatch), (clutter_timeout_pool_dispatch): Hold
9728	the main Clutter lock in the pool dispatch function, instead of
9729	the per-timeout dispatch; this guarantees that the ref+unref of
9730	the single timeouts are done under the main lock.
9731
97322007-08-12  Matthew Allum  <mallum@openedhand.com>
9733
9734	* clutter/clutter-texture.c: (texture_upload_data):
9735	Align texture data correctly for edge tiles.
9736	(#422 - Neil Roberts)
9737
97382007-08-11  Matthew Allum  <mallum@openedhand.com>
9739
9740	* clutter/clutter-texture.c:
9741	 Fix typo in clutter_texture_get_pixbuf (#458, Neil Roberts).
9742	 Use take_object when getting pixbuf prop to avoid ref leak. (Neil
9743	 Roberts)
9744
97452007-08-09  Emmanuele Bassi  <ebassi@openedhand.com>
9746
9747	* clutter/clutter-box.c: Rename a variable to fix a compiler
9748	warning.
9749
97502007-08-08  Emmanuele Bassi  <ebassi@openedhand.com>
9751
9752	* clutter/clutter-behaviour-ellipse:
9753	(clutter_behaviour_ellipse_get_tiltx): Remove useless
9754	"Return" in the API documentation.
9755
97562007-08-08  Emmanuele Bassi  <ebassi@openedhand.com>
9757
9758	* clutter/clutter-timeout-pool.c: Fix sorting of the pool
9759	when inserting and removing timeout sources. (#449, Neil
9760	Roberts)
9761
97622007-08-08  Emmanuele Bassi  <ebassi@openedhand.com>
9763
9764	* clutter/clutter-main.c (clutter_get_timestamp): Remove
9765	the microseconds remainder, which is mostly useless. (#447)
9766
97672007-08-08  Emmanuele Bassi  <ebassi@openedhand.com>
9768
9769	* clutter/clutter-main.c (clutter_get_timestamp): Return the
9770	correct number of microseconds (#447, Neil Roberts)
9771
97722007-08-08  Emmanuele Bassi  <ebassi@openedhand.com>
9773
9774	Merge the clutter.git/threading branch.
9775
9776	* clutter/clutter-main.c:
9777	* clutter/clutter-main.h:
9778	* clutter/clutter-private.h: Add threading locking and unlocking
9779	functions, to mark a critical section and access the Clutter API
9780	from differen threads. Add an initialisation function and a function
9781	to override the default lock aquisition and release functions, for
9782	bindings and application-specific locking handling. Add MT-safe
9783	versions of g_idle_add() and g_timeout_add() which will call the
9784	functions under the main Clutter lock and without races. The
9785	Clutter thread-safe implementation is basically the same used by
9786	GDK, so the same caveats apply.
9787
9788	* clutter/clutter-actor.c:
9789	* clutter/clutter-timeline.c:
9790	* clutter/clutter-timeout-pool.c: Use the new threading API when
9791	invoking idle and timeouts.
9792
9793	* clutter/eglnative/clutter-event-egl.c:
9794	* clutter/eglx/clutter-event-egl.c:
9795	* clutter/glx/clutter-event-glx.c:
9796	* clutter/sdl/clutter-event-sdl.c: Acquire and release the main
9797	Clutter lock when preparing, checking and dispatching the events
9798	on the queue in every backend.
9799
9800	* tests/Makefile.am:
9801	* tests/test-threads.c: Add a test case, showing how to use the
9802	threading API and write thread-safe Clutter applications.
9803
98042007-08-08  Emmanuele Bassi  <ebassi@openedhand.com>
9805
9806	* configure.ac: Bump up to 0.5.0 and start the new development
9807	branch.
9808
98092007-08-07  Emmanuele Bassi  <ebassi@openedhand.com>
9810
9811	* configure.ac: Bump up to 0.4.0.
9812
98132007-08-07  Emmanuele Bassi  <ebassi@openedhand.com>
9814
9815	* clutter/clutter-entry.c:
9816	* clutter/clutter-fixed.c:
9817	* clutter/pango/pangoclutter.h: Small fixes for passing the
9818	distcheck phase with extra-strict compiler flags.
9819
98202007-08-07  Emmanuele Bassi  <ebassi@openedhand.com>
9821
9822	* clutter/clutter-actor.h:
9823	* clutter/clutter-alpha.h:
9824	* clutter/clutter-behaviour-ellipse.[ch]:
9825	* clutter/clutter-behaviour-path.h:
9826	* clutter/clutter-behaviour-rotate.c:
9827	* clutter/clutter-behaviour.h:
9828	* clutter/clutter-box.h:
9829	* clutter/clutter-color.h:
9830	* clutter/clutter-container.h:
9831	* clutter/clutter-effect.h:
9832	* clutter/clutter-entry.h:
9833	* clutter/clutter-fixed.h:
9834	* clutter/clutter-layout.h:
9835	* clutter/clutter-main.h:
9836	* clutter/clutter-stage.h:
9837	* clutter/clutter-texture.h:
9838	* clutter/clutter-units.h:
9839	* clutter/clutter-version.h.in:
9840	* clutter/glx/clutter-glx.h: Documentation additions and
9841	various fixes.
9842
98432007-08-07  Matthew Allum  <mallum@openedhand.com>
9844
9845	* clutter/clutter-behaviour-ellipse.c:
9846	Add a documentation note regarding ellipse setting
9847	the applied actors position.
9848
98492007-08-07  Matthew Allum  <mallum@openedhand.com>
9850
9851	* NEWS:
9852	* README:
9853	More updates ready for 0.4.0
9854
98552007-08-07  Matthew Allum  <mallum@openedhand.com>
9856
9857	* clutter/clutter-fixed.c:
9858	* clutter/clutter-fixed.h:
9859	Add documentation.
9860
9861	* clutter/cogl/gl/cogl.c: (cogl_perspective):
9862	Remove CFX_* shortened macros
9863
98642007-08-06  Emmanuele Bassi  <ebassi@openedhand.com>
9865
9866	* clutter/clutter-main.[ch]: Remove clutter_threads_enter()
9867	and clutter_threads_leave(); both are no-ops and they just
9868	confuse things. The thread-awareness in Clutter is planned
9869	for 0.4.1/0.5.0.
9870
9871	* README:
9872	* NEWS: Update.
9873
98742007-08-06  Emmanuele Bassi  <ebassi@openedhand.com>
9875
9876	* clutter/clutter-box.[ch]: Implement margin, color and default
9877	padding for ClutterBox. Provide API to pack a child by specifying
9878	every packing detail or just pack with the defaults. ClutterBox
9879	works like the HTML boxing model, API-wise: a box with margins
9880	and padding around each child. Needs work, still.
9881
9882	* clutter/clutter-hbox.c:
9883	* clutter/clutter-vbox.c: Update with the new API and new attributes.
9884
9885	* clutter/clutter-types.h: Add ClutterMargin and ClutterPadding.
9886
9887	* test/test-boxes.c: Exercise the new API.
9888
98892007-08-06  Matthew Allum  <mallum@openedhand.com>
9890
9891	* clutter/clutter-texture.c:
9892	Correct set pixbuf property as GDK_TYPE_PIXBUF
9893	(fix via Neil Roberts)
9894
98952007-08-06  Matthew Allum  <mallum@openedhand.com>
9896
9897	* clutter/clutter-behaviour-depth.c:
9898	Modify to work like all other behvaiours in not forcing
9899	increasing order in behaviour 'limits'. (#436)
9900	Rename limit min/max props to start/end.
9901
9902	* tests/test-depth.c:
9903	Simplify test-case to work with above change and
9904	without multiple ramps
9905
9906	* clutter/clutter-behaviour-rotate.c:
9907	Handle CW rotation when end > start and similar for CCW just
9908	like ellipse behaviour.
9909
99102007-08-05  Matthew Allum  <mallum@openedhand.com>
9911
9912	* README:
9913	* clutter/clutter-actor.c:
9914	Document show/hide_all behaviour correctly.
9915
99162007-08-05  Emmanuele Bassi  <ebassi@openedhand.com>
9917
9918	* clutter/clutter-behaviour-depth.c: Fix typo in the description.
9919
99202007-08-04  Emmanuele Bassi  <ebassi@openedhand.com>
9921
9922	* clutter/clutter-behaviour-depth.c: Clarify the depth behaviour
9923	even more in the description used by the API reference.
9924
99252007-08-04  Emmanuele Bassi  <ebassi@openedhand.com>
9926
9927	* clutter/clutter-behaviour-depth.[ch]: Clarify that what drives
9928	the movement along the Z axis is the ClutterAlpha object (we
9929	don't have the luxury of a rollover like the opacity does);
9930	so, if you want to go from 0 to -100 you have to use a
9931	decreasing function, just as well if you want to go from 100
9932	to 0. Using a min-depth of 100 and a max-depth of 0 and an
9933	increasing function is undefined behaviour.
9934
9935	* tests/Makefile.am:
9936	* tests/test-depth.c: Add a test case for the depth behaviour.
9937
99382007-08-04  Emmanuele Bassi  <ebassi@openedhand.com>
9939
9940	* clutter/clutter-actor.c (clutter_actor_set_opacity): Queue
9941	a redraw when setting the opacity of an actor.
9942
99432007-08-03  Emmanuele Bassi  <ebassi@openedhand.com>
9944
9945	* clutter/clutter-behaviour-ellipse.c:
9946	(clutter_behaviour_ellipse_get_angle_tilt): Avoid recursion
9947	by fixing a typo.
9948
9949	(clutter_behaviour_ellipse_get_angle_begin),
9950	(clutter_behaviour_ellipse_get_angle_end): Correct the angles
9951	here too.
9952
99532007-08-03  Emmanuele Bassi  <ebassi@openedhand.com>
9954
9955	* clutter/clutter-behaviour-ellipse.c:
9956	(clutter_behaviour_ellipse_get_property): Do not forget to
9957	correct the angles when returning them.
9958
99592007-08-03  Tomas Frydrych  <tf@openedhand.com>
9960
9961	* clutter/clutter-behaviour-ellipse.c:
9962	* clutter/clutter-behaviour-ellipse.h:
9963	(clutter_behaviour_ellipse_new):
9964	(clutter_behaviour_ellipse_newx):
9965
9966	Added direction parameter; made behaviour to respect direction
9967	parameter; unclumped angle_begin and angle_end values.
9968
99692007-08-02  Matthew Allum  <mallum@openedhand.com>
9970
9971	* NEWS:
9972	* README:
9973	Initial updating ready for release.
9974
99752007-08-02  Emmanuele Bassi  <ebassi@openedhand.com>
9976
9977	* clutter/eglnative/clutter-backend-egl.c:
9978	* clutter/eglx/clutter-backend-egl.c:
9979	* clutter/sdl/clutter-backend-sdl.c: Set the default resolution
9980	as 96.0 dpi for every backend (we already were under this
9981	assumption anyway, and this makes it easier to change this
9982	setting per-backend).
9983
9984	* clutter/pango/pangoclutter-fontmap.c:
9985	* clutter/pango/pangoclutter.h: Allow setting the resolution
9986	for the PangoClutterFontMap object and provide the implementation
9987	for the PangoFcFontMap::get_resolution() virtual function. This
9988	allows to set the resolution of the PangoContext when retrieving
9989	it.
9990
9991	* clutter/clutter-label.c (clutter_label_init): Set the
9992	resolution of the font map with the one the backend gives us.
9993
9994	* clutter/clutter-entry.c (clutter_entry_init): Ditto.
9995
99962007-08-02  Emmanuele Bassi  <ebassi@openedhand.com>
9997
9998	* clutter/clutter-color.c (clutter_color_subtract): Invert the
9999	operands and match what the function says it does. (#435)
10000
100012007-08-01  Matthew Allum  <mallum@openedhand.com>
10002
10003	* clutter/clutter-color.c: (clutter_color_from_pixel):
10004	Fix typo in alpha channel extraction (#434)
10005
100062007-08-01  Emmanuele Bassi  <ebassi@openedhand.com>
10007
10008	* clutter/clutter-actor.[ch]: Add floating-point variant of the
10009	clutter_actor_get_r[xyz]angx() functions.
10010
100112007-07-31  Emmanuele Bassi  <ebassi@openedhand.com>
10012
10013	* clutter/clutter-stage.[ch]: Fix clutter_stage_set_user_resizable()
10014	name, and add a getter for the property.
10015
10016	* clutter/glx/clutter-stage-glx.c: Use the accessor, not
10017	g_object_get() to retrieve the value of the resizable property.
10018
100192007-07-31  Emmanuele Bassi  <ebassi@openedhand.com>
10020
10021	* clutter/clutter-backend.[ch]: Add clutter_backend_set_resolution()
10022	and clutter_backend_get_resolution(); backends should use the former
10023	to set the resolution of the display when initialising, while actors
10024	should use the latter when sizing themselves depending on the
10025	resolution or the font size.
10026
10027	* clutter/glx/clutter-backend-glx.c: Set the resolution as 96 dpi
10028	as a default and query the X server when opening the display.
10029
10030	* clutter/clutter-entry.c: Drop the hardcoded dpi value and use
10031	clutter_backend_get_resolution() to compute the default size.
10032
100332007-07-31  Emmanuele Bassi  <ebassi@openedhand.com>
10034
10035	* clutter/clutter-entry.c (clutter_entry_init): Set the default
10036	size of the entry based on the size of the default font. (#414).
10037
100382007-07-31  Emmanuele Bassi  <ebassi@openedhand.com>
10039
10040	* clutter/sdl/clutter-backend-sdl.c: Fix a typo in
10041	clutter_backend_sdl_get_features() (#426, Pan Bohui)
10042
100432007-07-30  Matthew Allum  <mallum@openedhand.com>
10044
10045	* AUTHORS:
10046	* HACKING:
10047	* README:
10048	Various updates and improvements.
10049
10050	* configure.ac:
10051	Remove --disable-fast-fp-conversions
10052
100532007-07-30  Tomas Frydrych  <tf@openedhand.com>
10054
10055	* clutter/clutter-behaviour-ellipse:
10056	(clutter_behaviour_ellipse_advance):
10057
10058	Fixed invalid assumption about z cooordiance in calculation of
10059	tilt in y axis.
10060
100612007-07-30  Tomas Frydrych  <tf@openedhand.com>
10062
10063	* clutter/clutter-actor.c:
10064
10065	Fixed incorrect order of modelview matrix stack in calculating
10066	actor vertices.
10067
100682007-07-30  Matthew Allum  <mallum@openedhand.com>
10069
10070	* clutter/clutter-backend.h:
10071	Remove #if 0's old backend_api
10072	(generating uneeded documentation)
10073
100742007-07-30  Matthew Allum  <mallum@openedhand.com>
10075
10076	* clutter/clutter-texture.c:
10077	Fix re-relisation for large tiled textures.
10078	* tests/test-textures.c: (main):
10079	Add a show/hide to trigger above (see #442)
10080
100812007-07-29  Emmanuele Bassi  <ebassi@openedhand.com>
10082
10083	* clutter/clutter-types.h: Document ClutterGravity enumeration
10084	and remove the only incomplete symbol of the api reference. Now
10085	we are up to 79% documented symbols.
10086
100872007-07-29  Emmanuele Bassi  <ebassi@openedhand.com>
10088
10089	* clutter/clutter-media.c: Document ClutterMedia signals;
10090	replace the implementation of clutter_media_set_filename() with
10091	something a wee bit more robust (and portable) than a sprintf().
10092
100932007-07-29  Emmanuele Bassi  <ebassi@openedhand.com>
10094
10095	* clutter/clutter-behaviour-ellipse.c: Documentation
10096	fixes; kill some indirections; freeze the notification
10097	queue when (potentially) emitting multiple notify
10098	signals.
10099
10100	* clutter/clutter-alpha.h: Remove the unused macro
10101	CLUTTER_TYPE_SMOOTHSTEP.
10102
101032007-07-28  Emmanuele Bassi  <ebassi@openedhand.com>
10104
10105	* clutter/clutter-actor.[ch]: Use GInitiallyUnowned
10106	as the parent structure in the ClutterActor structure
10107	definition; somehow, this has escaped everyone attention
10108	in one year and a half. Luckily, GInitiallyUnowned is
10109	as big as GObject.
10110
10111	 (clutter_actor_get_abs_position_units),
10112	 (clutter_actor_get_abs_position): Check parameters.
10113
10114	 * clutter/clutter-texture.h: Unmangle the flags enum
10115	 type declaration, so that dumb parsers like h2defs.py
10116	 are not fooled.
10117
10118	 * clutter/clutter-behaviour-ellipse.[ch]:
10119	 * clutter/clutter-effect.c: Fix some documentation
10120	 issues and make gtk-doc happy.
10121
101222007-07-27  Tomas Frydrych  <tf@openedhand.com>
10123
10124	* clutter/clutter-behaviour-ellipse.h:
10125	* clutter/clutter-behaviour-ellipse.c:
10126	* tests/test-behave.c:
10127	(clutter_behaviour_ellipse_get_angle_tilt):
10128	(clutter_behaviour_ellipse_set_angle_tilt):
10129
10130	Pruned ClutterBehaviourEllipse api.
10131
101322007-07-27  Tomas Frydrych  <tf@openedhand.com>
10133
10134	* clutter/clutter-behaviour-ellipse.h:
10135	* clutter/clutter-behaviour-ellipse.c:
10136	(clutter_behaviour_ellipse_set_angle_tilt_x):
10137	(clutter_behaviour_ellipse_set_angle_tilt_xx):
10138	(clutter_behaviour_ellipse_get_angle_tilt_x):
10139	(clutter_behaviour_ellipse_get_angle_tilt_xx):
10140	(clutter_behaviour_ellipse_set_angle_tilt_y):
10141	(clutter_behaviour_ellipse_set_angle_tilt_yx):
10142	(clutter_behaviour_ellipse_get_angle_tilt_y):
10143	(clutter_behaviour_ellipse_get_angle_tilt_yx):
10144	(clutter_behaviour_ellipse_set_angle_tilt_z):
10145	(clutter_behaviour_ellipse_set_angle_tilt_zx):
10146	(clutter_behaviour_ellipse_get_angle_tilt_z):
10147	(clutter_behaviour_ellipse_get_angle_tilt_zx):
10148	(clutter_behaviour_ellipse_set_tilt):
10149	(clutter_behaviour_ellipse_set_tiltx):
10150	(clutter_behaviour_ellipse_get_tilt):
10151	(clutter_behaviour_ellipse_get_tiltx):
10152
10153	* tests/test-behave.c:
10154
10155	Allow tilting ClutterBehaviourEllipse in all three axis; affects
10156	any code using the previous tilt api.
10157
101582007-07-26  Matthew Allum  <mallum@openedhand.com>
10159
10160	* clutter/clutter-feature.h:
10161	Add new stage feature flags and document.
10162
10163	* clutter/eglnative/clutter-backend-egl.c:
10164	* clutter/eglx/clutter-backend-egl.c:
10165	* clutter/sdl/clutter-backend-sdl.c:
10166	Set new feature flags.
10167
10168	* clutter/glx/clutter-backend-glx.c:
10169	* clutter/glx/clutter-stage-glx.c:
10170	* clutter/clutter-stage.c:
10171	* clutter/clutter-stage.h:
10172	Add a 'user_resizeable' setting to the backend and implement
10173	for glx backend.
10174
101752007-07-26  Emmanuele Bassi  <ebassi@openedhand.com>
10176
10177	* clutter/clutter-behaviour-ellipse.c:
10178	* clutter/clutter-behaviour.h:
10179	* clutter/clutter-event.c:
10180	* clutter/clutter-texture.h:
10181	* clutter/clutter-types.h: Add missing documentation and fix
10182	parameters names to make gtk-doc happy.
10183
101842007-07-26  Tomas Frydrych  <tf@openedhand.com>
10185
10186	* clutter/clutter-behaviour-ellipse.h:
10187	* clutter/clutter-behaviour-ellipse.c:
10188	* tests/test-behave.c:
10189
10190	Removed tilt paramter from ClutterBehaviourEllipse constructors;
10191	Made angles to be relative to 12 o'clock;
10192	Added direction property;
10193
101942007-07-26  Emmanuele Bassi  <ebassi@openedhand.com>
10195
10196	* clutter/clutter-types.h:
10197	* clutter/Makefile.am: Add a header for common types, to avoid
10198	inclusion hell.
10199
10200	* clutter/clutter-actor.h:
10201	* clutter/clutter-behaviour.h:
10202	* clutter/clutter-behaviour-rotate.h:
10203	* clutter/clutter-behaviour-scale.h: Move some boxed types and som
10204	enums to clutter-types.h.
10205
102062007-07-26  Neil J. Patel  <njp@o-hand.com>
10207
10208	* clutter/clutter-entry.c: (offset_to_bytes),
10209	(clutter_entry_ensure_cursor_position),
10210	(clutter_entry_new_with_text), (clutter_entry_new),
10211	(clutter_entry_insert_unichar), (clutter_entry_delete_chars):
10212
10213	Fixed utf8 support so it actually works now, for both
10214	inserting and deleting chars.  Fixed positioning of cursor for
10215	utf8 chars. Both GString and Pnago need bytes (not
10216	documented!) for string manipulation, so making sure all
10217	values were bytes and not char positions fixed the issue.  Set
10218	a default size of 50x50 for the entry, otherwise no chars can
10219	be seen if the size is not set after creation (which confuses
10220	the developer).
10221
102222007-07-26  Emmanuele Bassi  <ebassi@openedhand.com>
10223
10224	* clutter/clutter-timeline.c:
10225	Do not accept zero as a value for the num-frames and fps properties
10226	in both the constructor and the setter functions.
10227
102282007-07-26  Emmanuele Bassi  <ebassi@openedhand.com>
10229
10230	* clutter/clutter-actor.[ch]:
10231	* clutter/clutter-behaviour-bspline.c:
10232	* clutter/clutter-behaviour.c:
10233	* clutter/clutter-box.[ch]:
10234	* clutter/clutter-clone-texture.c:
10235	* clutter/clutter-entry.c:
10236	* clutter/clutter-group.[ch]:
10237	* clutter/clutter-texture.c:
10238	* clutter/pango/pangoclutter-render.c:
10239	* tests/test-actors.c:
10240	* tests/test-behave.c:
10241	* tests/test-entry.c:
10242	* tests/test-events.c:
10243	* tests/test-project.c:
10244	* tests/test-rotate.c:
10245	* tests/test-scale.c:
10246	* tests/test-text.c:
10247	* tests/test-textures.c: Miscellaneous compiler warning fixes.
10248
102492007-07-26  Emmanuele Bassi  <ebassi@openedhand.com>
10250
10251	* configure.ac:
10252	* Makefile.am: Add a configure switch to enable strict
10253	compiler flags, and turn it on when we are doing a distcheck.
10254
102552007-07-25  Matthew Allum  <mallum@openedhand.com>
10256
10257	* Makefile.am:
10258	* HACKING:
10259	Add with initial notes on coding bits and bobs.
10260
10261	* clutter/clutter-behaviour-scale.c:
10262	Doc fixes.
10263
10264	* clutter/clutter-event.c: (clutter_event_put):
10265	Doc fixes.
10266
10267	* clutter/glx/clutter-stage-glx.c:
10268	Disable wm user resizing of stage (At least for now)
10269	Doc fixes.
10270
102712007-07-25  Tomas Frydrych  <tf@openedhand.com>
10272
10273	* clutter/clutter-fixed.c:
10274
10275	Fixed endianness issue in fast fp conversions.
10276
102772007-07-25  Tomas Frydrych  <tf@openedhand.com>
10278
10279	* configure.ac:
10280	* clutter/clutter-fixed.c:
10281
10282	Added --disable-fast-fp-conversion option.
10283
102842007-07-25  Emmanuele Bassi  <ebassi@openedhand.com>
10285
10286	* clutter/clutter-label.[ch]: Ouch, clutter_label_get_alignment()
10287	returns a PangoAlignment, not a boolean.
10288
102892007-07-25  Emmanuele Bassi  <ebassi@openedhand.com>
10290
10291	* clutter/clutter-behaviour.h:
10292	* clutter/clutter-behaviour.c: Rename clutter_behaviour_clear()
10293	to clutter_behaviour_remove_all() to avoid method clashes in
10294	bindings.
10295
102962007-07-25  Tomas Frydrych  <tf@openedhand.com>
10297
10298	* tests/test-rotate.c:
10299	* tests/Makefile.am:
10300
10301	Added test-rotate.
10302
103032007-07-25  Emmanuele Bassi  <ebassi@openedhand.com>
10304
10305	* clutter/clutter-behaviour-bspline.c: Kill off some deep pointer
10306	indirections; use CLUTTER_NOTE() instead of ifdeffed out g_debug();
10307	add checks in every public entry point; move some initialisations
10308	of private data structures out of the constructor and into the
10309	init function, where they belong.
10310
103112007-07-25  Matthew Allum  <mallum@openedhand.com>
10312
10313	* clutter/clutter-behaviour-rotate.c:
10314	* clutter/clutter-behaviour-rotate.h:
10315	Split 'center' prop into 3 seperate props for each axis.
10316	Use clutter_behaviour_actors_foreach() rather than
10317	clutter_behaviour_get_actors() to avoid copying list.
10318	Call fixed point rotation funcs internally.
10319
10320	* clutter/clutter-effect.c:
10321	* clutter/clutter-effect.h:
10322	Add new simple rotation based effect funcs.
10323
103242007-07-25  Emmanuele Bassi  <ebassi@openedhand.com>
10325
10326	* clutter/clutter.h: Include clutter-behaviour-depth.h
10327
103282007-07-24  Emmanuele Bassi  <ebassi@openedhand.com>
10329
10330	* clutter/clutter-behaviour-rotate.[ch]: Add a center property
10331	for the center or rotation; implement the set_bounds() methods.
10332
103332007-07-24  Emmanuele Bassi  <ebassi@openedhand.com>
10334
10335	* clutter/eglx/clutter-backend-egl.c:
10336	* clutter/eglnative/clutter-backend-egl.c:
10337	* clutter/sdl/clutter-backend-sdl.c: Destroy the stage in every
10338	backend.
10339
103402007-07-24  Emmanuele Bassi  <ebassi@openedhand.com>
10341
10342	* clutter/glx/clutter-backend-glx.c: Destroy the stage, don't
10343	just unref it.
10344
103452007-07-24  Emmanuele Bassi  <ebassi@openedhand.com>
10346
10347	* clutter/clutter-main.c: Add debug markers.
10348
103492007-07-24  Emmanuele Bassi  <ebassi@openedhand.com>
10350
10351	* clutter/clutter-texture.[ch]: Add a ClutterTextureError
10352	to be returned by the loader functions; use the GObject API
10353	to allocate the private data structure instead of managing it
10354	ourselves; add documentation.
10355
103562007-07-24  Emmanuele Bassi  <ebassi@openedhand.com>
10357
10358	* clutter/clutter-actor.c:
10359	* clutter/clutter-box.h:
10360	* clutter/clutter-stage.c: Documentation fixes.
10361
103622007-07-24  Matthew Allum  <mallum@openedhand.com>
10363
10364	* clutter/cogl/gl/cogl-defines.h:
10365	Add  CGL_UNSIGNED_INT_8_8_8_8_REV (for big endian machines)
10366
103672007-07-24  Matthew Allum  <mallum@openedhand.com>
10368
10369	* clutter/cogl/gl/cogl-defines.h:
10370	Another GL_TEXTURE_RECTANGLE_ARB related fix (#404)
10371
103722007-07-24  Matthew Allum  <mallum@openedhand.com>
10373
10374	* clutter/clutter-backend.c:
10375	Minor build fixes (#413)
10376
103772007-07-24  Emmanuele Bassi  <ebassi@openedhand.com>
10378
10379	* clutter/clutter-effect.h:
10380	* clutter/clutter-effect.c: Add a secondary constructor for
10381	ClutterEffectTemplate, for use of the bindings.
10382
103832007-07-24  Matthew Allum  <mallum@openedhand.com>
10384
10385	* clutter/cogl/gles/cogl.c: (cogl_get_bitmasks):
10386	Fix typo calling glGetIntegerv rather than glGetInteger
10387
103882007-07-24  Matthew Allum  <mallum@openedhand.com>
10389
10390	* clutter/cogl/gl/cogl.c: (cogl_get_features):
10391	learn to use cpp properly.
10392
103932007-07-24  Matthew Allum  <mallum@openedhand.com>
10394
10395	* clutter/clutter-media.c: (clutter_media_base_init):
10396	Remove #if 0! signal - assume causing issues with binding generation.
10397	(#407)
10398
10399	* clutter/cogl/gl/cogl.c:
10400	Check GL_TEXTURE_RECTANGLE_ARB and GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB
10401	are defined in gl.h (#404)
10402
104032007-07-24  Matthew Allum  <mallum@openedhand.com>
10404
10405	* clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_realize):
10406	Create stage window with correct depth/visual. Via patch from
10407	Robert Bragg (#409).
10408
104092007-07-23  Matthew Allum  <mallum@openedhand.com>
10410
10411	* clutter/clutter-texture.c: (texture_render_to_gl_quad),
10412	(clutter_texture_paint):
10413	Dont be over aggressive in throwing criticals for unrealized
10414	textures. Doesn't make sense for sub classes. (#403)
10415
104162007-07-22  Emmanuele Bassi  <ebassi@openedhand.com>
10417
10418	Two small fixes for correctly debugging the deinitialisation
10419	phase of the backend:
10420
10421	* clutter/glx/clutter-backend-glx.c: Remove the event source
10422	after we unref the main stage.
10423
10424	* clutter/glx/clutter-stage-glx.c: Add a mark at the end of the
10425	unrealize call (the perl bindings seem to crash before we reach
10426	this point).
10427
104282007-07-22  Emmanuele Bassi  <ebassi@openedhand.com>
10429
10430	* clutter/clutter-behaviour-ellipse.c: Remove pointer indirections;
10431	add sanity checks on the public entry points; make all the public
10432	properties floating point (where needed) andconvert them to fixed
10433	point internally. (Partial fix for #389)
10434
104352007-07-22  Emmanuele Bassi  <ebassi@openedhand.com>
10436
10437	* clutter/clutter-behaviour.[ch]: Rename ClutterBehaviour::apply
10438	and ClutterBehaviour::remove to ClutterBehaviour::applied and
10439	ClutterBehaviour::removed respectively, and emit them when the
10440	behaviour has been applied (or does no longer apply) to an actor.
10441
10442	(clutter_behaviour_dispose), (clutter_behaviour_finalize),
10443	(clutter_behaviour_class_init): Move the actor removal to the
10444	::dispose virtual function, and remove the ::finalize one;
10445	document the missing properties and signals.
10446
10447	(clutter_behaviour_clear): Add function to clear a behaviour:
10448	every actor will be unreffed and the ClutterBehaviour::removed
10449	signal will be emitted.
10450
104512007-07-21  Matthew Allum  <mallum@openedhand.com>
10452
10453	* clutter/clutter-event.c:
10454	Correct  clutter_event_get_state () return type. Fixes #398
10455
10456	* clutter/glx/clutter-stage-glx.c:
10457	Disable use XFixes cursor visibility funcs. Appears to have issues
10458	on feisty X Server at least. Fallback should work generally better.
10459
10460	Fix non offscreen clutter_stage_snapshot to also rotate read pixel
10461	data to correct orientation.
10462
104632007-07-12  Matthew Allum  <mallum@openedhand.com>
10464
10465	* clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch):
10466	Avoid sending too many events which are just pressure changes.
10467
104682007-07-12  Matthew Allum  <mallum@openedhand.com>
10469
10470	* clutter/clutter-actor.c: (clutter_actor_paint):
10471	* clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
10472	* clutter/cogl/cogl.h:
10473	* clutter/cogl/gl/cogl.c: (cogl_get_viewport):
10474	* clutter/cogl/gles/cogl.c: (cogl_get_viewport):
10475	Hopefully fix clutter_actor_at_pos on !32bpp displays.
10476	Based on patch from Pan Bohui, See;
10477	http://bugzilla.openedhand.com/show_bug.cgi?id=390
10478
10479	* TODO:
10480	More misc updates.
10481
104822007-07-11  Emmanuele Bassi  <ebassi@openedhand.com>
10483
10484	* clutter/clutter-behaviour-opacity.c:
10485	Don't check direction in opacity.
10486
104872007-07-11  Tomas Frydrych  <tf@openedhand.com>
10488
10489	* clutter/clutter-fixed.h:
10490	Fixed CLUTTER_ANGLE_ macros.
10491
10492	* clutter/clutter-behaviour-ellipse.h:
10493	* clutter/clutter-behaviour-ellipse.c:
10494	Implemented "apply" signal closer to position actor on the start
10495	of the elliptic path.
10496
10497	(clutter_behaviour_ellipse_get_angle_begin):
10498	(clutter_behaviour_ellipse_set_angle_begin):
10499	(clutter_behaviour_ellipse_get_angle_end):
10500	(clutter_behaviour_ellipse_set_angle_end):
10501	(clutter_behaviour_ellipse_get_angle_tilt):
10502	(clutter_behaviour_ellipse_set_angle_tilt):
10503	Renamed with an x suffix; added versions for angles in degrees.
10504
105052007-07-09  Matthew Allum  <mallum@openedhand.com>
10506
10507	* TODO:
10508	Updates.
10509	* clutter/clutter-stage.c:
10510	* clutter/glx/clutter-stage-glx.c:
10511	Fix cursor visibility property.
10512	Force a repaint before mapping to attempt to avoid flicker.
10513
105142007-07-09  Richard Purdie  <rpurdie@openedhand.com>
10515
10516	* clutter/eglnative/clutter-event-egl.c:
10517	* configure.ac:
10518	Add tslib support to eglnative backend.
10519
105202007-07-09  Richard Purdie  <rpurdie@openedhand.com>
10521
10522	* clutter/eglnative/clutter-backend-egl.c:
10523	Tweaks to the eglnative backend.
10524
105252007-07-09  Richard Purdie  <rpurdie@openedhand.com>
10526
10527	* clutter/clutter-backend.c:
10528	Make the backend add_option function optional.
10529
105302007-07-09  Emmanuele Bassi  <ebassi@openedhand.com>
10531
10532	* clutter/clutter-behaviour-depth.h:
10533	* clutter/clutter-behaviour-depth.c:
10534	* clutter/Makefile.am: Add ClutterBehaviourDepth, a simple
10535	behaviour controlling the depth of a set of actors.
10536
10537	* clutter/clutter-behaviour-opacity.c: Always make sure that
10538	the opacity applied to the actors is a positive integer, even
10539	in case where the start and end opacity are reversed; use the
10540	correct cast macros for passing the opacity as a pointer.
10541
105422007-07-06  ====================== 0.3.1 Release ========================
10543
105442007-07-06  Matthew Allum  <mallum@openedhand.com>
10545
10546	* NEWS:
10547	* configure.ac:
10548	Update for 0.3.1
10549
105502007-07-06  Matthew Allum  <mallum@openedhand.com>
10551
10552	* clutter/eglx/Makefile.am:
10553	* clutter/eglx/clutter-egl.h:
10554	* clutter/eglx/clutter-event-egl.c:
10555	* clutter/eglx/clutter-stage-egl.c:
10556	Rename clutter-egl.h -> clutter-eglx.h
10557
10558	* NEWS:
10559	* README:
10560	Add info re EGL split.
10561
105622007-07-06  Matthew Allum  <mallum@openedhand.com>
10563
10564	* clutter/Makefile.am:
10565	* clutter/eglnative/Makefile.am:
10566	* clutter/eglnative/clutter-backend-egl.c:
10567	* clutter/eglnative/clutter-backend-egl.h:
10568	* clutter/eglnative/clutter-egl.h:
10569	* clutter/eglnative/clutter-event-egl.c:
10570	* clutter/eglnative/clutter-stage-egl.c:
10571	* clutter/eglnative/clutter-stage-egl.h:
10572	* clutter/eglx/Makefile.am:
10573	* clutter/eglx/clutter-backend-egl.c:
10574	* clutter/eglx/clutter-egl.h:
10575	* clutter/eglx/clutter-event-egl.c:
10576	* clutter/eglx/clutter-stage-egl.c:
10577	* configure.ac:
10578	Add a new 'native' EGL backend for non X based EGL's
10579	(i.e on framebuffer).
10580	Rename old backend to 'eglx' and namespace public funcs with this.
10581
10582	* clutter/pango/pangoclutter-private.h:
10583	Add extra checks for expected defines.
10584
105852007-07-06  Matthew Allum  <mallum@openedhand.com>
10586
10587	* NEWS:
10588	* README:
10589	Updates for upcoming 0.3.1 release.
10590	* clutter/egl/Makefile.am:
10591	* clutter/egl/clutter-backend-egl.c:
10592	* clutter/egl/clutter-backend-egl.h:
10593	* clutter/egl/clutter-egl.h:
10594	* clutter/egl/clutter-event-egl.c:
10595	* clutter/egl/clutter-stage-egl.c:
10596	* clutter/egl/clutter-stage-egl.h:
10597	* configure.ac:
10598	Move egl -> eglx
10599
106002007-07-06  Matthew Allum  <mallum@openedhand.com>
10601
10602	* clutter/clutter-box.c: (clutter_box_pick):
10603	Call clutter_box_paint rather than actor paint method avoiding
10604	infinte loop (Fixes test-boxes crasher).
10605
10606	* clutter/glx/clutter-stage-glx.c: (clutter_stage_glx_unrealize):
10607	Trap the X calls to avoid potential X errors.
10608
106092007-07-06  Ross Burton  <ross@openedhand.com>
10610
10611	* tests/Makefile.am:
10612	Dist redhand.png.
10613
106142007-07-05  Tomas Frydrych  <tf@openedhand.com>
10615
10616	* cluter/clutter-group.c:
10617	(clutter_group_query_coords:)
10618	Reset box size to zero width and height to report correct size if
10619	the contents of the group shrink.
10620
106212007-07-05  Emmanuele Bassi  <ebassi@openedhand.com>
10622
10623	* clutter/clutter-rectangle.c: Fix off-by-border-width bug
10624	in the border creation of a ClutterRectangle.
10625
106262007-07-05  Tomas Frydrych  <tf@openedhand.com>
10627
10628	* clutter/clutter-fixed.h:
10629	* clutter/clutter-fixed.c:
10630	Added CLUTTER_FLOAT_TO_UINT macro;
10631	(clutter_pow2x):
10632	Fixed sign issue.
10633
106342007-07-04  Emmanuele Bassi  <ebassi@openedhand.com>
10635
10636	* clutter/*: Loads of fixes for the API reference.
10637
106382007-07-04  Emmanuele Bassi  <ebassi@openedhand.com>
10639
10640	Merge from clutter/work
10641
10642	* clutter/clutter-alpha.[ch]: Fix the argument names for
10643	the smoothstep alpha functions, for gtk-doc.
10644
10645	* clutter/clutter-group.c (clutter_group_remove_all): Fix
10646	the iteration on the children list.
10647
106482007-07-04  Emmanuele Bassi  <ebassi@openedhand.com>
10649
10650	* clutter/clutter-main.c (clutter_redraw): Move the stage
10651	paint init call from the main redraw function...
10652
10653	* clutter/clutter-stage.c (clutter_stage_paint): ... to the
10654	ClutterActor::paint() overridden method in ClutterStage.
10655
106562007-07-04  Emmanuele Bassi  <ebassi@openedhand.com>
10657
10658	* clutter/clutter.h:
10659	* clutter/Makefile.am: ClutterBackend is marked as public API,
10660	so install the clutter-backend.h header and include it when
10661	including clutter.h.
10662
106632007-07-04  Emmanuele Bassi  <ebassi@openedhand.com>
10664
10665	* clutter/clutter-entry.[ch]: Various fixes to ClutterEntry:
10666	fix code style issues; add documentation for the various
10667	properties; add ClutterEntry:entry-padding property, for controlling
10668	the text padding (until we have style properties separated from
10669	the object properties); notify property changes; free resources
10670	in the ::finalize method; rename clutter_entry_add() to
10671	clutter_entry_insert_unichar(), and clutter_entry_remove() to
10672	clutter_entry_delete_chars() - for bindings and for matching the
10673	insert_text() and delete_text() existing methods; add a getter
10674	method for the max-length property.
10675
106762007-07-04  Emmanuele Bassi  <ebassi@openedhand.com>
10677
10678	* clutter/clutter-actor.[ch]: Use the right get_type() function
10679	name for ClutterVertex, and add the CLUTTER_TYPE_VERTEX macro.
10680
106812007-07-03  Ross Burton  <ross@openedhand.com>
10682
10683	* configure.ac:
10684	Check for XFixes 4 and above.
10685
106862007-07-02  Tomas Frydrych  <tf@openedhand.com>
10687
10688	* clutter/clutter-actor.h:
10689	* clutter/clutter-actor.c:
10690	* tests/test-project.c:
10691	(clutter_actor_apply_transform_to_point):
10692	Use ClutterVertex for input and output parameters.
10693
106942007-07-01  Emmanuele Bassi  <ebassi@openedhand.com>
10695
10696	Merge from clutter.git/work branch
10697
10698	* clutter/clutter-effect.[ch]: Clean up ClutterEffect; use a
10699	pointer to access the private data structure, instead of doing
10700	a type check every time. Add description for the API reference.
10701
10702	* docs/reference/clutter-sections.txt:
10703	* clutter/*.[ch]: Add various documentation fixes.
10704
10705	* clutter/clutter-entry.c: Remove a stray g_print() call.
10706
107072007-06-29  Neil J. Patel  <njp@o-hand.com>
10708
10709	* clutter/clutter-entry.c: (clutter_entry_handle_key_event),
10710	(clutter_entry_add), (clutter_entry_remove):
10711	Check if unichar == 0, and if so, return, as it will cause a delete in
10712	the GString.
10713
107142007-06-20  ============== 0.3 Release ====================================
10715
107162007-06-29  Matthew Allum  <mallum@openedhand.com>
10717
10718	* clutter/clutter-texture.c: (texture_upload_data):
10719	Fix a SEGV for GL ES textures.
10720
10721	* clutter/cogl/gles/cogl.c: (cogl_setup_viewport):
10722	Tweak default z_camera for 60 degrees like GL.
10723
10724	* clutter/egl/clutter-backend-egl.c::
10725	* clutter/egl/clutter-stage-egl.c:
10726	Fix edpy usage (thanks to Kaj Gronholm).
10727
107282007-06-29  Tomas Frydrych  <tf@openedhand.com>
10729
10730	* clutter/clutter-group.c:
10731	(clutter_group_query_coords):
10732	Fixed box calculation.
10733
107342007-06-28  Tomas Frydrych  <tf@openedhand.com>
10735
10736	* clutter/clutter-group.c:
10737	(clutter_group_raise):
10738	(clutter_group_lower):
10739	Fixed SIGSEGV when attempting to raise / lower an only child.
10740
107412007-06-28  Matthew Allum  <mallum@openedhand.com>
10742
10743	* clutter/cogl/gl/cogl.c: (cogl_setup_viewport):
10744	Improve fixed z_camera value for defualt perspective.
10745	Appears pixel perfect on ATI and Intel at least
10746
107472007-06-28  Tomas Frydrych  <tf@openedhand.com>
10748
10749	* tests/test-perspective.c:
10750	Moved red dots to be positioned 1px off each corner.
10751
107522007-06-28  Matthew Allum  <mallum@openedhand.com>
10753
10754	* tests/Makefile.am:
10755	* tests/test-perspective.c:
10756	Add simple perspective test
10757
107582007-06-27  Tomas Frydrych  <tf@openedhand.com>
10759
10760	* clutter/clutter-actor.h:
10761	* clutter/clutter-actor.c:
10762	* tests/test-project.c:
10763	Renamed clutter_actor_project_point() to
10764	clutter_actor_apply_trasform_to_point() and
10765	clutter_actor_project_vertices() to clutter_actor_get_vertices().
10766
107672007-06-27  Tomas Frydrych  <tf@openedhand.com>
10768
10769	* clutter/clutter-actor.h:
10770	* clutter/clutter-actor.c:
10771	* tests/test-project.c:
10772	(clutter_actor_project_point):
10773	Separated input from output parameters.
10774
107752007-06-27  Matthew Allum  <mallum@openedhand.com>
10776
10777	* Makefile.am:
10778	Dont remove README on make clean
10779
107802007-06-27  Tomas Frydrych  <tf@openedhand.com>
10781
10782	* clutter/clutter-actor.c:
10783	(_clutter_actor_apply_modelview_transform):
10784	Fixed incorrect order of scaling an rotation that was causing
10785	objects that were both rotated and scaled to change position.
10786
107872007-06-27  Tomas Frydrych  <tf@openedhand.com>
10788
10789	* clutter/clutter-actor.c:
10790	(clutter_actor_scale_with_gravityx):
10791	Made to work after changes to the behavivour of
10792	clutter_actor_get_absolute_size() for rotated actors.
10793
107942007-06-26  Tomas Frydrych  <tf@openedhand.com>
10795
10796	* clutter/cogl/gl/cogl.c:
10797	* clutter/cogl/gles/cogl.c:
10798	(cogl_setup_viewport):
10799	For default perspective angle of 60 degrees, use a hardcoded
10800	z_camera constant that provides minimal artefacts when rendering
10801	text; for other angles we calculate.
10802
108032007-06-26  Tomas Frydrych  <tf@openedhand.com>
10804
10805	* clutter/clutter-actor.h:
10806	* clutter/clutter-actor.c:
10807	Added fixed point version of clutter_actor_rotate_*() functions
10808	and accessors for rotation angles.
10809
108102007-06-25  Matthew Allum  <mallum@openedhand.com>
10811
10812	* README:
10813	Update a little more.
10814	* clutter/clutter-effect.c:
10815	Add missing func documentation
10816	* clutter/clutter-rectangle.c:
10817	Fix border drawing.
10818
108192007-06-25  Tomas Frydrych  <tf@openedhand.com>
10820
10821	* clutter/clutter-fixed.h:
10822	Fixed definition of clutter_cosx() macro.
10823
10824	* clutter/clutter-stage.c:
10825	* clutter/cogl/cogl.h:
10826	* clutter/cogl/gl/cogl.c:
10827	* clutter/cogl/gles/cogl.c:
10828	Changed ClutterPerspective.fovy from ClutterAngle to degrees to
10829	improve precission in Z-camera calculations.
10830
108312007-06-22  Matthew Allum  <mallum@openedhand.com>
10832
10833	* README:
10834	* README.in:
10835	* autogen.sh:
10836	* configure.ac:
10837	Move back to regular README naming at least for now.
10838
108392007-06-22  Matthew Allum  <mallum@openedhand.com>
10840
10841	* NEWS:
10842	* README.in:
10843	* TODO:
10844	Update for 0.3 release.
10845
10846	* clutter/clutter-actor.c:
10847	Minor doc fixups
10848
10849	* clutter/clutter-texture.c:
10850	Various minor additions for handling non RGBA data.
10851	Fix a typo breaking clutter_texture_get_pixbuf() on tiled textures.
10852
10853	* tests/test-actors.c:
10854	Disable scaling to avoid drifting (temporary till API is fixed)
10855
108562007-06-21  Emmanuele Bassi  <ebassi@openedhand.com>
10857
10858	* clutter/clutter-timeline.c: Allow disabling the timeline pool
10859	by using the CLUTTER_TIMELINE environment variable set to
10860	"no-pool".
10861
108622007-06-19  Emmanuele Bassi  <ebassi@openedhand.com>
10863
10864	* README.in: Update release notes.
10865
108662007-06-19  Matthew Allum  <mallum@openedhand.com>
10867
10868	* clutter/clutter-main.c: (clutter_init_with_args), (clutter_init):
10869	Safer checks for setting progname if NULL is passed in init.
10870
108712007-06-19  Emmanuele Bassi  <ebassi@openedhand.com>
10872
10873	* autogen.sh: autoreconf needs a README.
10874
108752007-06-19  Matthew Allum  <mallum@openedhand.com>
10876
10877	* TODO:
10878	Sync up a little.
10879	* clutter/clutter-main.c:
10880	Set a default window title based on g_prgname().
10881
10882	* clutter/clutter-stage.c:
10883	* clutter/clutter-stage.h:
10884	* clutter/egl/clutter-stage-egl.c:
10885	* clutter/glx/clutter-stage-glx.c:
10886	* clutter/sdl/clutter-stage-sdl.c:
10887	Alter draw_to_pixbuf to return a pixbuf
10888
10889	* configure.ac:
10890	Only full in gdk-pixbuf-xlib as a GLX backend dep.
10891
10892	* tests/test-entry.c:
10893	Fix a couple of warnings.
10894
108952007-06-19  Emmanuele Bassi  <ebassi@openedhand.com>
10896
10897	* Makefile.am: Add README.in to the EXTRA_DIST.
10898
108992007-06-19  Emmanuele Bassi  <ebassi@openedhand.com>
10900
10901	* configure.ac:
10902	* README.in: Use a template for the README file, so that
10903	it gets the right version number.
10904
109052007-06-19  Matthew Allum  <mallum@openedhand.com>
10906
10907	* clutter/clutter-stage.c:
10908	* clutter/clutter-stage.h:
10909	* clutter/glx/clutter-stage-glx.c:
10910	* clutter/sdl/clutter-stage-sdl.c:
10911	Add window title setting/getting functionality.
10912
10913	* clutter/clutter-event.c: (clutter_key_event_unicode):
10914	Remove uneeded convert case call.
10915
10916	* clutter/cogl/gl/cogl.c: (cogl_rectangle)
10917	Use parameters correctly for underlying GL rect call.
10918
10919	* tests/test-entry.c:
10920	Add a window title.
10921
109222007-06-18  Matthew Allum  <mallum@openedhand.com>
10923
10924	* clutter/sdl/clutter-event-sdl.c:
10925	Seemingly fix SDL Event source.
10926	Add some very basic SDL keysym translation.
10927	(Thanks to Thomas Van Machelen for initial translation code)
10928
10929	* tests/test-events.c:
10930	Dump some info on keysyms pressed.
10931
109322007-06-16  Emmanuele Bassi  <ebassi@openedhand.com>
10933
10934	* clutter/clutter-actor.h:
10935	* clutter/clutter-stage.h: Add 32 padding slots; when we
10936	reach 1.0 it'll be a long road until the following ABI
10937	break.
10938
10939	* tests/test-behave.c: Don't forget to include headers.
10940
109412007-06-16  Emmanuele Bassi  <ebassi@openedhand.com>
10942
10943	* clutter/clutter-container.h:
10944	* clutter/clutter-layout.h: Interfaces are not checked
10945	at compile-time, so there's not need to add padding to
10946	avoid ABI breaks.
10947
109482007-06-16  Emmanuele Bassi  <ebassi@openedhand.com>
10949
10950	* configure.ac: Partially revert last commit, and fail
10951	with AC_MSG_ERROR() instead of disabling the manual build
10952	if no jw and xmlto were found.
10953
109542007-06-16  Emmanuele Bassi  <ebassi@openedhand.com>
10955
10956	* configure.ac: If the programs required to build the manual
10957	are not found and --enable-manual was passed, then just print
10958	a warning and disable the manual build instead of aborting the
10959	configure.
10960
10961	* doc/manual/Makefile.am: Use the full path gathered by the
10962	configure script when invoking jw and xmlto.
10963
109642007-06-16  Matthew Allum  <mallum@openedhand.com>
10965
10966	* clutter/clutter-actor.c:
10967	Fix typo in x rotation transform (Thanks to Johan Billen #138)
10968
10969	* configure.ac:
10970	* doc/manual/Makefile.am:
10971	Fix manual build and required program check.
10972
10973	* tests/Makefile.am:
10974	Another typo fix.
10975
109762007-06-15  Tomas Frydrych  <tf@openedhand.com>
10977
10978	* clutter/clutter-actor.c:
10979	Added some comments; renamed MTX_GL_SCALE to MTX_GL_SCALE_X for
10980	consistency; removed some debug output.
10981
109822007-06-14  Tomas Frydrych  <tf@openedhand.com>
10983
10984	* clutter/clutter-vbox.c:
10985	* clutter/clutter-hbox.c:
10986	(clutter_vbox_pack_child):
10987	(clutter_hbox_pack_child):
10988	Fixed child coords.
10989
109902007-06-14  Emmanuele Bassi  <ebassi@openedhand.com>
10991
10992	* clutter/clutter-box.[ch]: Base class for layout containers.
10993
10994	* clutter/clutter-hbox.[ch]: Horizontal box actor.
10995
10996	* clutter/clutter-vbox.[ch]: Vertical box actor.
10997
10998	* clutter/clutter.h:
10999	* clutter/Makefile.am: Build glue
11000
11001	* tests/Makefile.am:
11002	* tests/test-boxes.c: Test suite for ClutterBox API and
11003	implementations.
11004
110052007-06-14  Matthew Allum  <mallum@openedhand.com>
11006
11007	* clutter/cogl/gl/cogl.c: (cogl_check_extension):
11008	Actually populate this func and remove the static alternate
11009	named one. Means GLX actually checks for available extensions.
11010	Other minor tidy ups.
11011
11012	* clutter/glx/clutter-backend-glx.c:
11013	* clutter/glx/clutter-backend-glx.h:
11014	Add support for GLX_SGI_swap_control to do vblanking prefering
11015	over glXGetVideoSyncSGI. Should fix issues on Intel chips with
11016	very slow frame rates due to vblank problems.
11017	Thanks to  Michel Danzer for tips, see;
11018	http://bugs.freedesktop.org/show_bug.cgi?id=10542
11019
11020	* test/test-actors.c:
11021	Change FPS to 60.
11022
110232007-06-14  Emmanuele Bassi  <ebassi@openedhand.com>
11024
11025	* clutter/clutter-timeout-pool.c: Make ClutterTimeoutPool
11026	more thread-safe, using a static lock.
11027
11028	(clutter_timeout_pool_dispatch), (clutter_timeout_pool_remove): Fix
11029	a race condition-turned-in-memory corruption bug, triggered by
11030	removing a timeout from the pool while still spinning the pool
11031	source.
11032
110332007-06-14  Emmanuele Bassi  <ebassi@openedhand.com>
11034
11035	* configure.ac:
11036	* doc/manual/Makefile.am: Find xmlto and jw in the path and
11037	use the symbolic names when building the manual.
11038
110392007-06-14  Tomas Frydrych  <tf@openedhand.com>
11040
11041	* clutter/clutter-actor.c:
11042	(clutter_actor_get_abs_position):
11043	(clutter_actor_get_abs_size):
11044	Reimplement using clutter_actor_project_point() and
11045	clutter_actor_project_vertices().
11046
11047	* tests/test-project.c:
11048	Rename clutter_actor_allocate_coords -> clutter_actor_query_coords
11049
110502007-06-14  Matthew Allum  <mallum@openedhand.com>
11051
11052	* clutter/clutter-actor.c:
11053	* clutter/clutter-actor.h:
11054	* clutter/clutter-group.c:
11055	* clutter/clutter-label.c:
11056	* clutter/egl/clutter-stage-egl.c:
11057	* clutter/glx/clutter-stage-glx.c:
11058	* clutter/sdl/clutter-stage-sdl.c:
11059	Rename clutter_actor_allocate_coords -> clutter_actor_query_coords
11060
11061	Change repaints to G_PRIORITY_DEFAULT + 10.
11062	(timelines are G_PRIORITY_DEFAULT + 30, events G_PRIORITY_DEFAULT)
11063
11064	* clutter/glx/clutter-event-glx.c:
11065	Handle shift modifier in keycode -> keysym translation.
11066
11067	* tests/test-actors.c:
11068	Remove (broken) screen saver code.
11069	Add scaling behaviour, clean code a little.
11070
110712007-06-13  Tomas Frydrych  <tf@openedhand.com>
11072
11073	* clutter/clutter-actor.c:
11074	(clutter_actor_project_vertices):
11075	(clutter_actor_project_proint):
11076	Fixed translation of Y coords to match the windowing system.
11077
11078	* clutter/egl/clutter-stage-egl.c:
11079	* clutter/glx/clutter-stage-glx.c:
11080	* clutter/sdl/clutter-stage-sdl.c:
11081	(clutter_stage_*_request_size):
11082	Initialize viewport when setting/resetting stage side.
11083
11084	* tests/Makefile.am
11085	* tests/test-project.c:
11086	An interactive test of the projection stuff.
11087
110882007-06-12  Tomas Frydrych  <tf@openedhand.com>
11089
11090	* clutter/clutter-main.c:
11091	(clutter_redraw):
11092	Clear CLUTTER_ACTOR_SYNC_MATRICES flag after setting up viewport.
11093
110942007-06-12  Matthew Allum  <mallum@openedhand.com>
11095
11096	* doc/manual/Makefile.am:
11097	Fix typo in Makefile so PDF's actually get built.
11098
11099	* doc/manual/clutter-manual.xml.in:
11100	Add an FAQ section with initial entry.
11101
111022007-06-12  Tomas Frydrych  <tf@openedhand.com>
11103
11104	* clutter/clutter-fixed.h:
11105	Added shorthand CFX_QMUL macro.
11106
11107	* clutter/clutter-private.h:
11108	* clutter/clutter-actor.h:
11109	* clutter/clutter-actor.c:
11110	Replaced ClutterVertices with ClutterVertex;
11111
11112	(clutter_actor_get_transformed_vertices):
11113	(clutter_actor_get_transformed_point):
11114	Replaced with clutter_actor_projected_vertices and
11115	clutter_actor_projected_point.
11116
11117	(_clutter_actor_apply_modelview_transform):
11118	(_clutter_actor_apply_modelview_transform_recursive):
11119	Private functions to push actor modelview transforms on OpenGL
11120	stack.
11121
11122	* clutter/cogl/cogl.h:
11123	* clutter/cogl/gl/cogl.c:
11124	* clutter/cogl/gles/cogl.c:
11125	(cogl_get_viewport):
11126	(cogl_get_modelview_matrix):
11127	(cogl_get_projection_matrix):
11128	Functions to access OpenGL transforms.
11129
111302007-06-12  Matthew Allum  <mallum@openedhand.com>
11131
11132	* clutter/clutter-alpha.c:
11133	Remove stray g_debug.
11134
11135	* clutter/clutter-behaviour-rotate.c:
11136	Register private class member.
11137
11138	* clutter/clutter-behaviour.c:
11139	* clutter/clutter-behaviour.h:
11140	Add applied and removed signals.
11141
11142	* Makefile.am:
11143	* configure.ac:
11144	* examples/Makefile.am:
11145	* examples/README:
11146	* examples/behave.c:
11147	* examples/slider.c:
11148	* examples/super-oh.c:
11149	* examples/test-entry.c:
11150	* examples/test-text.c:
11151	* examples/test.c:
11152	* tests/Makefile.am:
11153	Remove examples, moving applicable code into tests.
11154
111552007-06-11  Tomas Frydrych  <tf@openedhand.com>
11156
11157	* clutter/clutter-alpha.c:
11158	(clutter_alpha_sine_inc):
11159	(clutter_alpha_sine_dec):
11160	(clutter_alpha_sine_half):
11161	Fixed unsigned overflow.
11162
111632007-06-11  Emmanuele Bassi  <ebassi@openedhand.com>
11164
11165	* clutter/clutter-event.h: Add full modifier masks enums.
11166
11167	* clutter/glx/clutter-event-glx.c: Copy the modifier masks from
11168	the native X event structure.
11169
11170	* clutter/clutter-event.c: Convert to upper case if the
11171	shift or the lock masks are applied.
11172
111732007-06-09  Emmanuele Bassi  <ebassi@openedhand.com>
11174
11175	* clutter/clutter.h:
11176	* clutter/clutter-timeout-pool.[ch]: Add a timeout pool source;
11177	every timeout added to this pool will use a single slice of the
11178	main loop.
11179
11180	* clutter/clutter-timelince.c: Use a per-class timeout pool for
11181	every timeline.
11182
111832007-06-08  Matthew Allum  <mallum@openedhand.com>
11184
11185	* clutter/clutter-texture.c: (clutter_texture_get_pixbuf):
11186	Remove stray printf.
11187
111882007-06-08  Matthew Allum  <mallum@openedhand.com>
11189
11190	* clutter/clutter-actor.c:
11191	* clutter/clutter-debug.h:
11192	* clutter/clutter-main.c:
11193	* clutter/clutter-main.h:
11194	* clutter/clutter-private.h:
11195	* clutter/clutter-timeline.c:
11196	Add 'schedule' debug flag and new CLUTTER_TIMESTAMP macro.
11197
11198	* clutter/clutter-texture.c:
11199	* clutter/clutter-texture.h:
11200	* clutter/cogl/cogl.h:
11201	* clutter/cogl/gl/cogl-defines.h:
11202	* clutter/cogl/gles/cogl-defines.h:
11203	* clutter/cogl/gl/cogl.c:
11204	* clutter/cogl/gles/cogl.c:
11205	Add initial experiemental YUV texture support.
11206	Move texture rect size checks into cogl.
11207	Better handle moving texture data from video -> system memory
11208	(if support available).
11209
112102007-06-07  Neil J. Patel  <njp@o-hand.com>
11211
11212	* clutter/clutter-entry.c: (clutter_entry_class_init),
11213	(clutter_entry_handle_key_event):
11214	* clutter/clutter-entry.h:
11215	Added an 'activated' signal, which is emitted when the 'Enter' key is
11216	pressed.
11217
11218	* examples/test-entry.c: (on_entry_activated), (main):
11219	Added a test handler for the activated signal.
11220
112212007-06-07  Emmanuele Bassi  <ebassi@openedhand.com>
11222
11223	* clutter/*: Move documentation from the templates into the
11224	source code.
11225
112262007-06-07  Emmanuele Bassi  <ebassi@openedhand.com>
11227
11228	* clutter/clutter-container.[ch]: Add a generic actor container
11229	interface, for actors to implement without subclassing ClutterGroup.
11230
11231	* clutter/clutter-group.[ch]: Make ClutterGroup implement the
11232	ClutterContainer interface, and deprecate the colliding methods.
11233
11234	* clutter/clutter-layout.[ch]: Add extended layout interface.
11235	Actors and containers requiring or honouring complex layout
11236	management should implement this interface and provide at least
11237	one of the available layout types: width for height, height for
11238	width, natural size, iterative size request.
11239
11240	* clutter/clutter-label.c: A ClutterLabel requires height for
11241	width layout management, so it implements the ClutterLayout
11242	interface.
11243
11244	* clutter/Makefile.am: Add new files to the build.
11245
11246	* tests/*.c:
11247	* examples/*.c: Update tests and examples code to use the
11248	new ClutterContainer API instead of ClutterGroup.
11249
112502007-06-07  Emmanuele Bassi  <ebassi@o-hand.com>
11251
11252	* clutter/clutter-timeline.[ch]: Add a "delay" property, which
11253	delays the real start of the timeline by a number of milliseconds.
11254
11255	(clutter_timeline_clone): Rename clutter_timeline_copy() to
11256	clutter_timeline_clone(), for consistency.
11257
112582007-06-01  Neil J. Patel  <njp@o-hand.com>
11259
11260	* clutter/clutter-entry.c: (clutter_entry_set_property),
11261	(clutter_entry_get_property), (clutter_entry_class_init),
11262	(clutter_entry_init), (clutter_entry_set_text),
11263	(clutter_entry_set_max_length):
11264	* clutter/clutter-entry.h:
11265	* examples/test-entry.c: (main):
11266	Added a max-length property whihc limits the length of the text in the
11267	entry.
11268
112692007-06-01  Neil J. Patel  <njp@o-hand.com>
11270
11271	* clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position),
11272	(clutter_entry_paint), (clutter_entry_init),
11273	(clutter_entry_handle_key_event):
11274	Clipping within the entry class to stop it over-slipping its
11275	boundries.
11276	Text will move within the clip region to keep the cursor always
11277	visible.
11278	Added some padding to the left and right to make sure cursor is
11279	always show.
11280
112812007-06-01  Tomas Frydrych  <tf@openedhand.com>
11282
11283	* clutter/clutter-actor.c:
11284	* clutter/clutter-stage.c:
11285	* clutter/clutter-private.h:
11286	Removed perspective matrix caching from ClutterStage.
11287
112882007-06-01  Neil J. Patel  <njp@o-hand.com>
11289
11290	* clutter/clutter-entry.c: (clutter_entry_set_property),
11291	(clutter_entry_get_property), (clutter_entry_ensure_layout),
11292	(clutter_entry_class_init), (clutter_entry_init),
11293	(clutter_entry_set_visibility), (clutter_entry_get_visibility),
11294	(clutter_entry_set_invisible_char),
11295	(clutter_entry_get_invisible_char):
11296	* clutter/clutter-entry.h:
11297	Added text-visibility, which will allow you to show all entered text
11298	as a nominated charaecter ('*' is default).
11299
11300	* examples/test-entry.c: (main):
11301
113022007-06-01  Neil J. Patel  <njp@o-hand.com>
11303
11304	* clutter/clutter-entry.c: (clutter_entry_ensure_cursor_position),
11305	(clutter_entry_clear_cursor_position),
11306	(clutter_entry_paint_cursor), (clutter_entry_paint),
11307	(clutter_entry_class_init), (clutter_entry_set_text),
11308	(clutter_entry_set_position):
11309	* clutter/clutter-entry.h:
11310	Added a signla to track cursor movements.
11311	Moved the sursor painting function so it can be subclassed.
11312
113132007-06-01  Tomas Frydrych  <tf@openedhand.com>
11314
11315	* clutter/clutter-actor.c:
11316	(clutter_actor_get_transformed_point):
11317	Make input again relative to the actor; feed depth into transform.
11318
113192007-06-01  Neil J. Patel  <njp@o-hand.com>
11320
11321	* clutter/clutter-entry.c: (clutter_entry_class_init),
11322	(clutter_entry_set_text):
11323	* clutter/clutter-entry.h:
11324	* examples/test-entry.c: (on_entry_text_changed), (main):
11325	Added a text-changed signal to the entry.
11326
113272007-06-01  Neil J. Patel  <njp@o-hand.com>
11328
11329	* clutter/clutter-effect.h:
11330	Removed extra G_END_DECLS outside the #endif
11331
11332	* clutter/clutter-entry.c: (clutter_entry_handle_key_event),
11333	(clutter_entry_add):
11334	* clutter/clutter-entry.h:
11335	* examples/test-entry.c: (on_key_release_cb):
11336	Added a function to deal with ClutterKeyEvents. Handles the majority
11337	of entry-related keyboard keys. However modifiers still need to be
11338	implemented.
11339
113402007-06-01  Tomas Frydrych  <tf@openedhand.com>
11341
11342	* clutter/clutter-actor.c:
11343	(mtx_create):
11344	Apply perspective transform before all other transforms.
11345
113462007-06-01  Tomas Frydrych  <tf@openedhand.com>
11347
11348	* clutter/clutter-stage.c:
11349	(clutter_stage_init):
11350	Call _clutter_stage_refresh_perspective_matrix to initialize the
11351	matrix for default values.
11352
113532007-06-01  Tomas Frydrych  <tf@openedhand.com>
11354
11355	* clutter/clutter-fixed.h:
11356	* clutter/clutter-behaviour-ellipse.h:
11357	* clutter/clutter-behaviour-ellipse.c:
11358	* clutter/clutter-behaviour-bspline.h:
11359	* clutter/clutter-behaviour-bspline.c:
11360	Documentation fixes.
11361
113622007-05-31  Tomas Frydrych  <tf@openedhand.com>
11363
11364	* clutter/clutter-stage.c:
11365	* clutter/clutter-private.h:
11366	(_clutter_stage_get_perspective_matrix):
11367	New function.
11368
11369	* clutter/clutter-actor.c:
11370	(clutter_actor_get_tranformed_vertices):
11371	(clutter_actor_get_tranformed_point):
11372	Apply perspective matrix on the top of actor transform matrix.
11373
113742007-05-31  Neil J Patel  <njp@o-hand.com>
11375
11376	* clutter/Makefile.am:
11377	* clutter/clutter-entry.c: (clutter_entry_set_property),
11378	(clutter_entry_get_property), (clutter_entry_ensure_layout),
11379	(clutter_entry_clear_layout),
11380	(clutter_entry_ensure_cursor_position), (clutter_entry_paint),
11381	(clutter_entry_request_coords), (clutter_entry_dispose),
11382	(clutter_entry_finalize), (clutter_entry_class_init),
11383	(clutter_entry_init), (clutter_entry_new_with_text),
11384	(clutter_entry_new_full), (clutter_entry_new),
11385	(clutter_entry_get_text), (clutter_entry_set_text),
11386	(clutter_entry_get_font_name), (clutter_entry_set_font_name),
11387	(clutter_entry_set_color), (clutter_entry_get_color),
11388	(clutter_entry_get_layout), (clutter_entry_set_alignment),
11389	(clutter_entry_get_alignment), (clutter_entry_set_position),
11390	(clutter_entry_get_position), (clutter_entry_add),
11391	(clutter_entry_remove), (clutter_entry_insert_text),
11392	(clutter_entry_delete_text), (clutter_entry_set_visible_cursor),
11393	(clutter_entry_get_visible_cursor):
11394	* clutter/clutter-entry.h:
11395	* clutter/clutter.h:
11396	* examples/Makefile.am:
11397	Initial import of ClutterEntry actor.
11398
11399	* examples/test-entry.c: (on_key_release_cb), (main):
11400	A basic test for ClutterEntry
11401
114022007-05-31  Tomas Frydrych  <tf@openedhand.com>
11403
11404	* clutter/clutter-actor.c:
11405	(clutter_actor_get_transformed_point):
11406	Fixed coordinance translation.
11407
114082007-05-31  Matthew Allum  <mallum@openedhand.com>
11409
11410	* clutter/clutter-actor.c:
11411	* clutter/clutter-actor.h:
11412	Add clutter_actor_get_transformed_point()
11413
11414	* clutter/clutter-main.c:
11415	Plug in perspective setup to redraw
11416
11417	* clutter/clutter-stage.c:
11418	* clutter/clutter-stage.h:
11419	Remove audience code for now.
11420
114212007-05-31  Matthew Allum  <mallum@openedhand.com>
11422
11423	* clutter/egl/clutter-backend-egl.c:
11424	* clutter/egl/clutter-backend-egl.h:
11425	* clutter/egl/clutter-event-egl.c:
11426	* clutter/egl/clutter-stage-egl.c:
11427	* clutter/egl/clutter-stage-egl.h:
11428	Rename Egl -> EGL
11429
114302007-05-31  Matthew Allum  <mallum@openedhand.com>
11431
11432	* clutter/glx/clutter-backend-glx.c:
11433	* clutter/glx/clutter-backend-glx.h:
11434	* clutter/glx/clutter-event-glx.c:
11435	* clutter/glx/clutter-glx.h:
11436	* clutter/glx/clutter-stage-glx.c:
11437	* clutter/glx/clutter-stage-glx.h:
11438	Change type nameing from Glx -> GLX.
11439	Add basic event filtering functionality
11440
114412007-05-31  Tomas Frydrych  <tf@openedhand.com>
11442
11443	* clutter/clutter-behaviour-ellipse.c:
11444	Changed behaviour so that a beginning angle of 0 would correspond
11445	to 12 o'clock.
11446
114472007-05-31  Tomas Frydrych  <tf@openedhand.com>
11448
11449	* clutter/clutter-fixed.h:
11450	* clutter/clutter-fixed.c:
11451	(_clutter_double_to_int):
11452	Fixed return value to gint; added missing cast that broke negative
11453	number conversions.
11454
11455	(CLUTTER_ANGLE_FROM_DEGX):
11456	Swapped division and multiplication around to avoid overflows.
11457
11458	* clutter/clutter-behaviour-ellipse.c:
11459	Fixed incorrectly set lower bounds for angle properties.
11460
11461	* clutter/clutter-actor.h:
11462	* clutter/clutter-actor.c:
11463	Added ClutterVertices type.
11464	(clutter_actor_get_transformed_vertices):
11465	New function.
11466
114672007-05-31  Matthew Allum  <mallum@openedhand.com>
11468	* TODO:
11469	Sync up for whats left for 0.4 release (and 0.6 ideas)
11470
114712007-05-31  Matthew Allum  <mallum@openedhand.com>
11472
11473	* clutter/clutter-behaviour-ellipse.c:
11474	Remove uneeded knot signal
11475
11476	* clutter/clutter-behaviour-path.c:
11477	Fix so knot signal is emitted only when a knot is reached.
11478
11479	* clutter/clutter-effect.c:
11480	* clutter/clutter-effect.h:
11481	Add a scale effect.
11482
11483	* configure.ac:
11484	* doc/manual/Makefile.am:
11485	* doc/manual/clutter-manual.xml.in:
11486	* doc/manual/manual.xsl:
11487	* doc/manual/style.css:
11488	Add various bits for application developers manual.
11489
114902007-05-30  Tomas Frydrych  <tf@openedhand.com>
11491
11492	* clutter/clutter-alpha.h:
11493	* clutter/clutter-alpha.c:
11494	Removed ClutterSmoothstep struct
11495	(clutter_smoothstep_inc_func):
11496	Renamed to clutter_smoothstep_func.
11497	(clutter_smoothstep_added_func):
11498	Added.
11499
115002007-05-29  Tomas Frydrych  <tf@openedhand.com>
11501
11502	* clutter/clutter-fixed.h:
11503	(clutter_cosx):
11504	(clutter_cosi):
11505	Fixed wrong sign in cos -> sin tranformation.
11506
11507	* clutter/clutter-behaviour-ellipse.c:
11508	(clutter_behaviour_ellipse_advance):
11509	Replaced coordinace calculation for tilted ellipse with a sane
11510	algorithm.
11511
11512	* examples/behave.c:
11513	Added tilt parameter to the example ellptic path.
11514
115152007-05-29  Tomas Frydrych  <tf@openedhand.com>
11516
11517	* clutter/cogl/gles/cogl.c:
11518	(cogl_setup_viewport):
11519	Fixed z_camera calculation.
11520
115212007-05-28  Matthew Allum  <mallum@openedhand.com>
11522
11523	* clutter/clutter-texture.c: (clutter_texture_unrealize):
11524	Dont even try to move texture pixels from video -> system
11525	ram on unrealisation for GL/ES
11526
115272007-05-28  Matthew Allum  <mallum@openedhand.com>
11528
11529	* clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
11530	Fix for GL/ES. Barring texture reads this means all clutter
11531	functionality now works on GL/ES! (no doubt with a few yet to
11532	be discovered bugs)
11533
115342007-05-28  Matthew Allum  <mallum@openedhand.com>
11535
11536	* clutter/clutter-backend.c:
11537	* clutter/clutter-backend.h:
11538	* clutter/glx/clutter-stage-glx.c:
11539	* clutter/glx/clutter-backend-glx.c:
11540	Fix up rendering pipeline removing clutter_backend_XXX_stage_paint
11541	and adding clutter_backend_XXX_redraw instead. Duplicates less
11542	code in backends, avoids clutter_actor_paint() getting called
11543	before stage is set up (viewport wise) and unbreaks things like
11544	picking.
11545
11546	* clutter/clutter-actor.c:
11547	* clutter/clutter-actor.h:
11548	* clutter/clutter-main.c:
11549	* clutter/clutter-private.h:
11550	* clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos):
11551	Redo picking functionality a different way (via color indexing)
11552	as to provide more flexibility, possibly speed and more likely
11553	work with GL/ES (doesn't currently however - not sure why).
11554
11555	* clutter/clutter-group.c:
11556	Add groups own 'pick' method.
11557
11558	* clutter/cogl/cogl.h:
11559	* clutter/cogl/gl/cogl.c:
11560	* clutter/cogl/gles/cogl.c:
11561	Move clipping funtionality into cogl.
11562
11563	* clutter/cogl/gles/cogl-defines.h:
11564	Hack around missing BGR format in GL/ES.
11565
11566	* clutter/egl/clutter-backend-egl.c:
11567	* clutter/egl/clutter-backend-egl.h:
11568	* clutter/egl/clutter-stage-egl.c:
11569	* clutter/sdl/clutter-backend-sdl.c:
11570	* clutter/sdl/clutter-backend-sdl.h:
11571	* clutter/sdl/clutter-event-sdl.c:
11572	* clutter/sdl/clutter-stage-sdl.c:
11573	Update backends to newer API.
11574	Add basic mouse event translation to SDL.
11575
115762007-05-25  Matthew Allum  <mallum@openedhand.com>
11577
11578	* clutter/clutter-color.c: (clutter_color_parse):
11579	Handle #rrggbbaa color setting strings (i.e with alpha).
11580	Set alpha to 0xff if it is not specified.
11581
11582	* clutter/clutter-stage.c: (clutter_stage_get_actor_at_pos)
11583	Increase select buffer.
11584
11585	* examples/super-oh.c:
11586	Fix up use of clutter_group_show_all()
11587
115882007-05-25  Tomas Frydrych  <tf@openedhand.com>
11589
11590	* clutter/clutter-actor.c:
11591	* clutter/clutter-actor.h:
11592	Renamed clutter_actor_scalex() to clutter_actor_set_scale_with_gravityx
11593	Added floating point version clutter_actor_set_scale_with_gravity.
11594
11595	* clutter/clutter-units.h:
11596	* clutter/clutter-actor.h:
11597	typedef ClutterUnit
11598
11599	* clutter/clutter-fixed.h:
11600	* clutter/clutter-stage.c:
11601	CLUTTER_ANGLE_FROM_DEG(), CLUTTER_ANGLE_FROM_DEGX()
11602	renamed CLUTTER_DEGF_TO_CLUTTER_ANGLE to CLUTTER_ANGLE_FROM_DEGF
11603
11604	* clutter/clutter-behaviour-ellipse.h:
11605	* clutter/clutter-behaviour-ellipse.c:
11606	* examples/behave.c:
11607	(clutter_behaviour_ellipse_new):
11608	Changed signature to take angles in degrees, and x,y offsets.
11609	(clutter_behaviour_ellipse_newx):
11610	Fixed version clutter_behaviour_ellipse_new.
11611	(clutter_behaviour_ellipse_set_center):
11612	(clutter_behaviour_ellipse_get_center):
11613	Changed signature to take x,y coords instead of ClutterKnot.
11614
11615	clutter/cogl/gl/cogl.c:
11616	clutter/cogl/gles/cogl.c:
11617	(cogl_setup_viewport):
11618	Added z_camera calculation.
11619
116202007-05-25  Matthew Allum  <mallum@openedhand.com>
11621
11622	* Makefile.am:
11623	Install a default flavour .pc file.
11624
11625	* clutter/clutter-actor.c:
11626	Translate units correctly for translate()
11627
11628	* clutter/clutter-feature.h:
11629	Add new texture features.
11630
11631	* clutter/clutter-fixed.h:
11632	Add clutter angle conversion defines.
11633
11634	* clutter/clutter-group.c:
11635	Use cogl not GL. Dont recurse on show all.
11636
11637	* clutter/clutter-private.h:
11638	Remove sync_viewport.
11639
11640	* clutter/clutter-rectangle.c:
11641	Fix cogl typo.
11642
11643	* clutter/clutter-stage.c:
11644	* clutter/clutter-stage.h:
11645	Add perspective settings. Remove viewport_sync.
11646	Add audience stubs. Fix up actor_at_pos a little (still broken)
11647
11648	* clutter/clutter-texture.h:
11649	* clutter/clutter-texture.c:
11650	Redo pixel uploading. Add initial (disabled) YUV support.
11651
11652	* clutter/clutter-timeline.c:
11653	Fire 'completed' signal when looping.
11654
11655	* clutter/cogl/gl/cogl.c:
11656	Move some backend checks here.
11657
11658	* clutter/glx/clutter-backend-glx.c:
11659	Actually check target display has GLX ext.
11660
11661	* clutter/glx/clutter-stage-glx.c:
11662	Handle offscreen failing more gracefully.
11663
11664	* examples/Makefile.am:
11665	Use AM_LDFLAGS.
11666
11667	* clutter/clutter-main.c:
11668	* clutter/clutter-feature.c:
11669	* clutter/clutter-backend.c:
11670	* clutter/clutter-alpha.c:
11671	Fix a compile warnings.
11672
11673	* tests/Makefile.am:
11674	* tests/test-offscreen.c:
11675	* tests/test-scale.c:
11676	More tests.
11677
116782007-05-23  Tomas Frydrych  <tf@openedhand.com>
11679
11680	* clutter/clutter-actor.c:
11681	* clutter/clutter-actor.h:
11682	(clutter_actor_get_abs_size_units):
11683	(clutter_actor_get_abs_position_units):
11684	removed from public api
11685
116862007-05-22  Tomas Frydrych  <tf@openedhand.com>
11687
11688	* configure.ac:
11689	* Makefile.am:
11690	* clutter.pc.in:
11691	* clutter/Makefile.am:
11692	* clutter/clutter-actor.c:
11693	* clutter/clutter-actor.h:
11694	* clutter/clutter-group.c:
11695	* clutter/clutter-label.c:
11696	* clutter/clutter-real.h:
11697	* clutter/clutter-units.h:
11698	* clutter/clutter.h:
11699	* clutter/egl/clutter-stage-egl.c:
11700	* clutter/glx/clutter-stage-glx.c:
11701	* clutter/sdl/clutter-stage-sdl.c:
11702	* examples/Makefile.am:
11703	* tests/Makefile.am:
11704	Removed ClutterReal; added clutter-units.
11705
117062007-05-18  Tomas Frydrych  <tf@openedhand.com>
11707
11708	* configure.ac:
11709	* Makefile.am:
11710	* clutter.pc.in:
11711	* clutter/Makefile.am:
11712	* clutter/clutter-actor.c:
11713	* clutter/clutter-actor.h:
11714	* clutter/clutter-behaviour-scale.c:
11715	* clutter/clutter-behaviour-scale.h:
11716	* clutter/clutter-group.c:
11717	* clutter/clutter-label.c:
11718	* clutter/clutter-real.h:
11719	* clutter/egl/clutter-stage-egl.c:
11720	* clutter/glx/clutter-stage-glx.c:
11721	* examples/Makefile.am:
11722	* tests/Makefile.am:
11723	ClutterReal type.
11724
117252007-05-17  Emmanuele Bassi  <ebassi@openedhand.com>
11726
11727	* clutter/clutter-main.c: Use clutter_base_init() inside the
11728	initialisation process, instead of calling g_type_init() directly.
11729
11730	* clutter/clutter-alpha.c:
11731	* clutter/clutter-behaviour-bspline.c:
11732	* clutter/clutter-behaviour-ellipse.c: Fix API documentation.
11733
117342007-05-17  Matthew Allum  <mallum@openedhand.com>
11735
11736	* configure.ac:
11737	Fix CLUTTER_NO_FPU typo.
11738
117392007-05-17  Tomas Frydrych  <tf@openedhand.com>
11740
11741	* clutter/clutter-alpha.h:
11742	* clutter/clutter-alpha.c:
11743	* doc/reference/clutter-sections.txt:
11744	Added clutter_exp_inc_func() and clutter_exp_dec_func().
11745
117462007-05-16  Emmanuele Bassi  <ebassi@openedhand.com>
11747
11748	* clutter/clutter-main.[ch]: Add clutter_base_init(), semi-private
11749	function to initialise just the base Clutter functionalities; it's
11750	only used by gtk-doc to introspect the classes.
11751
11752	* clutter/clutter-feature.c: Do not access the private features
11753	data structure unless it has been initialised.
11754
117552007-05-16  Tomas Frydrych  <tf@openedhand.com>
11756
11757	* clutter/clutter-alpha.h:
11758	* clutter/clutter-alpha.c:
11759	* doc/reference/clutter-sections.txt:
11760	Added clutter_sine_half().
11761
117622007-05-16  Tomas Frydrych  <tf@openedhand.com>
11763
11764	* clutter/clutter-alpha.h:
11765	* clutter/clutter-alpha.c:
11766	* doc/reference/clutter-sections.txt:
11767	Fixed clutter_sine_inc(), added clutter_sine_dec().
11768
117692007-05-16  Tomas Frydrych  <tf@openedhand.com>
11770
11771	* clutter/clutter-alpha.h:
11772	* clutter/clutter-alpha.c:
11773	* doc/reference/clutter-sections.txt:
11774	* doc/rererence/clutter.types:
11775	* doc/reference/tmpl/clutter-alpha.sgml:
11776	clutter_smoothstep_func alpha function,
11777	ClutterSmoothstep struct for smoothstep function data.
11778
117792007-05-16  Matthew Allum  <mallum@openedhand.com>
11780
11781	* clutter/clutter-backend.c:
11782	* clutter/clutter-backend.h:
11783	* clutter/clutter-feature.c:
11784	* clutter/clutter-feature.h:
11785	* clutter/clutter-main.c:
11786	* clutter/clutter-main.h:
11787	* clutter/clutter-private.h:
11788	* clutter/clutter-stage.c:
11789	* clutter/cogl/cogl.h:
11790	* clutter/cogl/gl/cogl.c:
11791	* clutter/cogl/gles/cogl.c:
11792	* clutter/glx/clutter-backend-glx.c:
11793	* clutter/glx/clutter-backend-glx.h:
11794	* clutter/glx/clutter-glx.h:
11795	* clutter/glx/clutter-stage-glx.c:
11796	* clutter/glx/clutter-stage-glx.h:
11797	Rejig the features() foo, moving mostly into backends/cogl.
11798
117992007-05-15  Tomas Frydrych  <tf@openedhand.com>
11800
11801	* clutter/clutter-actor.c:
11802	(clutter_actor_get_abs_position):
11803	Removed unnecessary CFX_MUL().
11804
118052007-05-15  Tomas Frydrych  <tf@openedhand.com>
11806
11807	* clutter/clutter-behaviour-ellipse.h:
11808	* clutter/clutter-behaviour-ellipse.c:
11809	(clutter_behaviour_ellipse_new):
11810	Added a tilt parameter.
11811
118122007-05-14  Matthew Allum  <mallum@openedhand.com>
11813
11814	* clutter/clutter-behaviour-path.c:
11815	Fix bug where last knot position wouldn't get reached.
11816
11817	* clutter/clutter-group.c:
11818	Add some docs
11819
11820	* clutter/clutter-timeline.h:
11821	* clutter/clutter-timeline.c:
11822	Add clutter_timeline_copy (needed for ClutterEffect)
11823
11824	* clutter/clutter-version.h.in:
11825	Export windowing system / GL backend etc defines.
11826
11827	* clutter/Makefile.am:
11828	* clutter/clutter-effect.c:
11829	* clutter/clutter-effect.h:
11830	* clutter/clutter.h:
11831
11832	* clutter/glx/clutter-backend-glx.c:
11833	Minor clean ups.
11834
11835	* clutter/clutter-alpha.h:
11836	Add a fixme.
11837
11838	* configure.ac:
11839	Add FPU define.
11840
11841	* examples/Makefile.am:
11842	* examples/slider.c:
11843	Add Robs slider game.
11844
118452007-05-10  Matthew Allum  <mallum@openedhand.com>
11846
11847	* clutter/egl/clutter-backend-egl.c:
11848	* clutter/egl/clutter-event-egl.c:
11849	* clutter/sdl/clutter-backend-sdl.c:
11850	* clutter/sdl/clutter-event-sdl.c:
11851	Fix SDL & EGL backends to work with newer backend code.
11852
118532007-05-10  Tomas Frydrych  <tf@openedhand.com>
11854
11855	* clutter/clutter-color.h:
11856	* clutter/clutter-color.c:
11857	Added clutter_color_to/from_hlsx()
11858	(clutter_color_to/from_hls):
11859	Clobber hue to 0 .. 250
11860
118612007-05-10  Matthew Allum  <mallum@openedhand.com>
11862
11863	* clutter/clutter-backend.c:
11864	* clutter/clutter-backend.h:
11865	* clutter/clutter-event.c:
11866	* clutter/clutter-main.c:
11867	* clutter/clutter-private.h:
11868	* clutter/glx/clutter-backend-glx.c:
11869	* clutter/glx/clutter-backend-glx.h:
11870	* clutter/glx/clutter-event-glx.c:
11871	Rejig backend event code as to simplify a little.
11872	NOTE: This breaks non glx backends.
11873
11874	* tests/Makefile.am:
11875	* tests/test-events.c:
11876	Add a very simple event test.
11877
11878	* tests/test-textures.c: (main):
11879	Add some more sizes to the test.
11880
118812007-05-05  Matthew Allum  <mallum@openedhand.com>
11882
11883	* clutter/clutter-texture.c:
11884	Fix typos with new cogl using texture code. Fixes tiled textures.
11885	Add a check for max npots size.
11886
11887	* configure.ac:
11888	* Makefile.am:
11889	* tests/Makefile.am:
11890	* tests/test-textures.c:
11891	Add a simple texture test.
11892
118932007-05-02  Matthew Allum  <mallum@openedhand.com>
11894
11895	* clutter/Makefile.am:
11896	* clutter/clutter-stage.c:
11897	* clutter/sdl/Makefile.am:
11898	* clutter/sdl/clutter-backend-sdl.c:
11899	* clutter/sdl/clutter-backend-sdl.h:
11900	* clutter/sdl/clutter-event-sdl.c:
11901	* clutter/sdl/clutter-sdl.h:
11902	* clutter/sdl/clutter-stage-sdl.c:
11903	* clutter/sdl/clutter-stage-sdl.h:
11904	* configure.ac:
11905	Add a basic SDL based backend. Lacks real input event handling
11906	(translation) as yet.
11907	Also allows for clutter to be built against dgles.
11908
119092007-05-02  Matthew Allum  <mallum@openedhand.com>
11910
11911	* clutter/clutter-actor.c:
11912	* clutter/cogl/gles/cogl.c:
11913	Fix rotation + other fixed point cleanups.
11914
11915	* clutter/clutter-texture.h:
11916	Sketch out an updated API.
11917
119182007-05-01  Matthew Allum  <mallum@openedhand.com>
11919
11920	* clutter/clutter-rectangle.c:
11921	Comment out color match check for now as appears to be causing
11922	borders to always get pained.
11923
11924	* clutter/clutter-texture.h:
11925	Add some format defines (unused as yet)
11926
11927	* clutter/cogl/gles/cogl.c:
11928	* clutter/egl/clutter-stage-egl.c:
11929	* configure.ac:
11930	Various OpenGL ES backend related fixes and tweaks.
11931
119322007-04-30  Tomas Frydrych  <tf@openedhand.com>
11933
11934	* clutter/clutter-fixed.c (clutter_sini):
11935	Fixed bug in reducing angle to 0-2pi.
11936
11937	* clutter/clutter-behaviour-ellipse.h:
11938	* clutter/clutter-behaviour-ellipse.c:
11939	* clutter/clutter.h:
11940	* clutter/Makefile.am:
11941	* doc/clutter.types:
11942	* doc/clutter-docs.sgml:
11943	Added ClutterBehaviourEllipse for movement along
11944	elliptic paths.
11945
11946	* examples/bspline.c:
11947	* examples/behave.c:
11948	* examples/Makefile.am:
11949	Added --path commandline option to behave to choose different
11950	path types (poly, ellipse, bspline) and dropped bspline example.
11951
119522007-04-28  Matthew Allum  <mallum@openedhand.com>
11953
11954	* clutter/Makefile.am:
11955	* clutter/clutter-debug.h:
11956	* clutter/clutter-fixed.h:
11957	* clutter/clutter-main.c:
11958	* clutter/cogl/gles/Makefile.am:
11959	* clutter/cogl/gles/cogl-defines.h:
11960	* clutter/cogl/gles/cogl.c:
11961	* clutter/egl/clutter-backend-egl.c:
11962	* clutter/egl/clutter-backend-egl.h:
11963	* clutter/egl/clutter-stage-egl.c:
11964	* configure.ac:
11965	Populate most stubs for cogl GL/ES implementation.
11966	(against vincent - see http://svn.o-hand.com/repos/misc/ogles)
11967	Add various fixups to EGL backend.
11968	Code builds and runs (on 16bpp) but yet displays much (is close!)
11969
11970	* clutter/pango/pangoclutter-render.c:
11971	comment out some rouge glBegin/end calls.
11972
119732007-04-27  Matthew Allum  <mallum@openedhand.com>
11974
11975	* clutter/Makefile.am:
11976	* clutter/clutter-actor.c:
11977	* clutter/clutter-clone-texture.c:
11978	* clutter/clutter-rectangle.c:
11979	* clutter/clutter-stage.c:
11980	* clutter/clutter-texture.c:
11981	* clutter/cogl/cogl.h:
11982	* clutter/cogl/gl/Makefile.am:
11983	* clutter/cogl/gl/cogl-defines.h:
11984	* clutter/cogl/gl/cogl.c:
11985	* clutter/cogl/gles/Makefile.am:
11986	* clutter/cogl/gles/cogl-defines.h:
11987	* clutter/cogl/gles/cogl.c:
11988	* clutter/glx/Makefile.am:
11989	* clutter/glx/clutter-stage-glx.c:
11990	* clutter/pango/Makefile.am:
11991	* clutter/pango/pangoclutter-render.c:
11992	* configure.ac:
11993	Add initial 'cogl' implementation. 'cogl' is a simple abstration
11994	layer over GL and GL/ES used by clutter internally. It should
11995	eventually allow clutter applications to be run on both GL and GL/ES
11996	with just a recompile as well as provide more debugging and potentially
11997	profiling information for GL and GL/ES usage.
11998
11999	This commit contains the initial GL implementation.
12000
120012007-04-26  Emmanuele Bassi  <ebassi@openedhand.com>
12002
12003	Merge from clutter-0-2
12004
12005	* clutter/clutter-label.c: Unbreak the "use-markup" property
12006	by actually passing the markup to pango_layout_set_markup().
12007
120082007-04-25  Emmanuele Bassi  <ebassi@openedhand.com>
12009
12010	Merge from clutter.git/master
12011
12012	* clutter/glx/clutter-event-glx.c:
12013	* clutter/glx/clutter-stage-glx.c: Implement the _NET_WM_PING
12014	protocol handling on the main stage window.
12015
12016	* clutter/clutter-stage.h:
12017	* clutter/clutter-stage.c:
12018	* clutter/clutter-main.c: Handle CLUTTER_DELETE events internally,
12019	by calling clutter_main_quit(), and remove the ::delete-event
12020	signal from ClutterStage; clean up the signal emission sequence
12021	for the events: emit the ::event signal before emitting any signal
12022	and the ::event-after signal after the signal has been emitted; move
12023	the signal emission calls inside ClutterStage so we can call
12024	g_signal_emit() instead of g_signal_emit_by_name(), thus sparing us
12025	a lookup for each event.
12026
12027	* examples/test.c: Remove ::delete-event signal handling.
12028
120292007-04-19  Emmanuele Bassi  <ebassi@openedhand.com>
12030
12031	Merge from clutter.git/master
12032
12033	* clutter/clutter-backend.h:
12034	* clutter/clutter-backend.c: Add API for getting screen/display
12035	properties from the backend.
12036
12037	* clutter/glx/clutter-backend-glx.c:
12038	* clutter/glx/clutter-backend-egl.c: Retrieve screen/display
12039	properties inside the backends init function.
12040
12041	* clutter/glx/clutter-event-glx.c: Handle the WM_PROTOCOLS
12042	ClientMessage events.
12043
12044	* clutter/glx/clutter-stage-glx.c: Use XSetWMProtocols to enable
12045	the WM_PROTOCOLS ClientMessage events on the stage window.
12046
12047	* clutter/glx/clutter-glx.h: Return the Screen pointer and not
12048	the screen number in clutter_glx_get_default_screen(). The screen
12049	number is returned by clutter_backend_get_screen_number(), or
12050	by calling XScreenNumberOfScreen on the returned pointer.
12051
12052	* clutter/clutter-event.h: Add CLUTTER_DELETE to the event types.
12053
12054	* clutter/clutter-main.c: Emit the ClutterStage::delete-event
12055	when receiving a CLUTTER_DELETE event; if the signal handlers
12056	return FALSE, call clutter_main_quit().
12057
12058	* clutter/clutter-marshal.list:
12059	* clutter/clutter-stage.c: Use the right marshaller function
12060	for the delete-event closure.
12061
12062	* examples/test.c: Test the "delete-event" signal handler.
12063
120642007-04-16  Emmanuele Bassi  <ebassi@openedhand.com>
12065
12066	Merge from clutter.git/merge-from-stable
12067
12068	* clutter/clutter-event.h:
12069	* clutter/glx/clutter-event-glx.c: Add the XEMBED protocol support
12070	in the GLX backend, for embedding the stage window into another
12071	X window. This allows cross-toolkit inclusion and makes clutter-gtk
12072	possible.
12073
12074	* clutter/clutter-behaviour-scale.c: Implement every ClutterGravity
12075	value inside the scale behaviour and make the actors anchor to a
12076	gravity when scaling up and down.
12077
12078	* clutter/clutter-texture.c: Revert to copying GdkPixbuf areas to
12079	correctly implement the texture tiling. This fixes segmentation
12080	faults occurring with cards with a small texture memory area.
12081
12082	* clutter/clutter-actor.c: Call g_object_freeze_notify() (and take
12083	a reference on the actor) inside clutter_actor_request_size() so
12084	that the notifications get unqueued at the end of the size request.
12085
120862007-04-16  Emmanuele Bassi  <ebassi@openedhand.com>
12087
12088	Merge from clutter.git/work
12089
12090	* clutter/clutter-behaviour-bspline.[ch]: Return a ClutterBehaviour
12091	when splicing the b-spline; fix the header and the API documentation;
12092	hush the compiler warnings; kill of some pointer indirections.
12093
12094	* clutter/clutter-behaviour-rotate.[ch]: Add a rotate behaviour,
12095	with user defined axis, direction and sweep angle.
12096
12097	* clutter/clutter-behaviour.c (clutter_behaviour_is_applied): Add
12098	a parameter ISA check and return FALSE if it fails.
12099
121002007-04-12  Tomas Frydrych  <tf@openedhand.com>
12101
12102	* clutter/clutter-behaviour.h:
12103	* clutter/clutter-behaviour.c:
12104	* clutter/clutter-behaviour-path.h:
12105	* clutter/clutter-behaviour-path.c:
12106	Moved declaration of ClutterKnot from clutter-behaviour path
12107	into clutter-behaviour.
12108
12109	* clutter/clutter-fixed.h
12110	* clutter/clutter-fixed.c
12111	Added myself as an author.
12112
12113	* clutter/Makefile.am:
12114	* clutter/clutter.h:
12115	* clutter/clutter-behaviour-bspline.h:
12116	* clutter/clutter-behaviour-bspline.c:
12117	Added new bezier spline behaviour.
12118
12119	* examples/bspline.c:
12120	* examples/Makefile.am:
12121	An example of using bspline path.
12122
121232007-04-07  Matthew Allum  <mallum@openedhand.com>
12124
12125	* clutter/glx/clutter-backend-glx.c:
12126	Fix version check.
12127
121282007-03-29  Tomas Frydrych  <tf@openedhand.com>
12129
12130	* clutter/clutter-stage.c:
12131	(perspective): fixed degree -> rad conversion for fovy angle
12132	(perspectivex): fixed degree -> rad conversion for fovy angle,
12133	added code for gle glMultMatrixx().
12134
121352007-03-29  Tomas Frydrych  <tf@openedhand.com>
12136
12137	* configure.ac: fixed typo
12138
12139	* clutter/clutter-fixed.c:
12140	* clutter/clutter-fixed.h:
12141	(clutter_tani): fast implementation of tan()
12142	(clutter_qmulx): improved-precission fixed point multiply
12143
12144	* clutter/clutter-stage.c:
12145	(perspectivex): fixed point implementaiton of perspective()
12146	(_clutter_stage_sync_viewport):
12147	(clutter_stage_get_actor_at_pos):
12148	use perspectivex() instead of perspective()
12149
121502007-03-27  Matthew Allum  <mallum@openedhand.com>
12151
12152	* clutter/cogl/Makefile.am:
12153	* clutter/cogl/cogl.h:
12154	* clutter/cogl/gles/Makefile.am:
12155	* clutter/cogl/gles/cogl.c:
12156	Begin poplulating cogl GLES code.
12157
12158	* configure.ac:
12159	* clutter/egl/clutter-event-egl.c:
12160	* clutter/egl/clutter-stage-egl.c:
12161	* clutter/egl/clutter-stage-egl.h:
12162	* clutter/egl/clutter-backend-egl.c:
12163	* clutter/egl/clutter-backend-egl.h:
12164	* clutter/egl/clutter-egl.h:
12165	Add initial EGL/X backend work mostly ported from backend branch.
12166	Builds but untested as yet.
12167
12168	* clutter/glx/clutter-stage-glx.c:
12169	Only include XFixes Header if we have have it.
12170
12171	* clutter/clutter-behaviour.c: (clutter_behaviour_apply):
12172	* clutter/clutter-behaviour.h:
12173	Add clutter_behaviour_is_applied()
12174
121752007-03-27  Emmanuele Bassi  <ebassi@openedhand.com>
12176
12177	* clutter/clutter-stage.h: Remove unused clutter_stage_flush()
12178	declaration.
12179
121802007-03-27  Emmanuele Bassi  <ebassi@openedhand.com>
12181
12182	* clutter/glx/clutter-glx.h:
12183	* clutter/glx/clutter-stage-glx.c: (Re-)Implement the foreign
12184	window setting function for the stage in the GLX backend.
12185
121862007-03-27  Emmanuele Bassi  <ebassi@openedhand.com>
12187
12188	* clutter/clutter-stage.h: Declare the clutter_perspective_get_type()
12189	function in the header.
12190
121912007-03-27  Emmanuele Bassi  <ebassi@openedhand.com>
12192
12193	* clutter/cogl/cogl.h: Add header and compiler guards.
12194
121952007-03-27  Emmanuele Bassi  <ebassi@openedhand.com>
12196
12197	* clutter/glx/clutter-stage-glx.c: Remove the check in the
12198	paint chain up: we know for sure that the parent's paint
12199	vfunc is present.
12200
122012007-03-27  Matthew Allum  <mallum@openedhand.com>
12202
12203	* clutter/clutter-feature.c:
12204	Rejig ifdef's a little. Make drm vblanking Linux only.
12205
12206	* clutter/clutter-stage.c:
12207	* clutter/clutter-stage.h:
12208	Add a perspective boxed type.
12209
12210	* clutter/glx/clutter-stage-glx.c:
12211	Add some FIXMEs
12212
12213	* clutter/Makefile.am:
12214	* clutter/cogl/Makefile.am:
12215	* clutter/cogl/cogl.h:
12216	* clutter/cogl/gl/Makefile.am:
12217	* clutter/cogl/gl/cogl.c:
12218	* configure.ac:
12219	Very initial work on 'cogl' GL/GLES abstraction/utility code.
12220
122212007-03-26  Emmanuele Bassi  <ebassi@openedhand.com>
12222
12223	* clutter/clutter-behaviour-scale.[ch]: Add API for getting
12224	the scale bounds and the gravity from a scale behaviour instance.
12225
122262007-03-26  Emmanuele Bassi  <ebassi@openedhand.com>
12227
12228	* clutter/clutter-timeline.c: Fix last commit.
12229
122302007-03-25  Emmanuele Bassi  <ebassi@openedhand.com>
12231
12232	* clutter/clutter-timeline.c: Slightly lower the proiority
12233	of the ClutterTimeline tick, so that events get a higher
12234	priority in the main loop.
12235
122362007-03-25  Emmanuele Bassi  <ebassi@openedhand.com>
12237
12238	* clutter/clutter-event.[ch]: Remove the flags member from
12239	the ClutterEvent structure; remove the ClutterEventFlags
12240	enum.
12241
122422007-03-25  Emmanuele Bassi  <ebassi@openedhand.com>
12243
12244	* clutter/clutter-stage.h: Remove the ::get_actor_at_pos()
12245	and ::flush() vfuncs.
12246
12247	* clutter/glx/clutter-stage-glx.c: Remove the implementations
12248	of those vfuncs from the backend specific code, as they are
12249	pure GL calls.
12250
12251	* clutter/clutter-stage.c: Add back the actor hit detection
12252	code in the base stage class, along with the viewport
12253	synchronisation function.
12254
12255	* clutter/clutter-private.h: Declare the private function
12256	_clutter_stage_sync_viewport().
12257
122582007-03-23  Emmanuele Bassi  <ebassi@openedhand.com>
12259
12260	* clutter/clutter-backend.c: Clear the event queue when
12261	disposing the backend object; remove the initialisation
12262	of the backend structure members...
12263
12264	* clutter/glx/clutter-backend-glx.c: ... and keep it here
12265	in the backends where it belongs.
12266
122672007-03-23  Emmanuele Bassi  <ebassi@openedhand.com>
12268
12269	* clutter/clutter-private.h:
12270	* clutter/clutter-backend.h: Move the backend functions
12271	into the private header.
12272
12273	* clutter/glx/clutter-stage-glx.c:
12274	* clutter/glx/clutter-event-glx.c:
12275	* clutter/clutter-main.c:
12276	* clutter/clutter-stage.c: Update the calls to the private
12277	backend functions.
12278
12279	* clutter/clutter-backend.[ch]: Add an ::init_features
12280	vfunc to ClutterBackend.
12281
122822007-03-23  Emmanuele Bassi  <ebassi@openedhand.com>
12283
12284	* clutter/glx/clutter-stage-glx.c:
12285	Make sure the top-left corner of the box is our origin,
12286	when returning the allocation.
12287
12288	* clutter/clutter-stage.c:
12289	* clutter/clutter-group.c: Add tracing for the paint
12290	method.
12291
122922007-03-23  Matthew Allum  <mallum@openedhand.com>
12293
12294	* clutter/glx/clutter-stage-glx.c:
12295	(clutter_stage_glx_allocate_coords):
12296	Make new stage return correct width & height.
12297
122982007-03-23  Emmanuele Bassi  <ebassi@openedhand.com>
12299
12300	Assorted build fixes to pass distcheck.
12301
12302	* clutter/glx/Makefile.am: Install the clutter-glx.h header.
12303
12304	* clutter/Makefile.am: Actually apply linker flags.
12305
12306	* configure.ac: Use a more readable CLUTTER_API_VERSION instead
12307	of CLUTTER_MAJORMINOR; require gobject-2.0 with glib-2.0 >= 2.10,
12308	as we are using GObject and the slice allocator from glib 2.10.
12309
12310	* clutter.pc.in: Add the apiversion variable.
12311
123122007-03-23  Emmanuele Bassi  <ebassi@openedhand.com>
12313
12314	* clutter/clutter-event.c: Pop and peek the event queue
12315	from the tail - it's a queue, not a stack.
12316
12317	* clutter/clutter-private.h:
12318	* clutter/clutter-main.c: Add a boolean signal accumulator.
12319
12320	* clutter/clutter-stage.[ch]: Add an event argument to
12321	the 'delete-event' signal; rename the 'input-event' signal
12322	to 'event'; add the static scope flag to all the stage
12323	events.
12324
12325	* examples/*.c: Update.
12326
123272007-03-22  Emmanuele Bassi  <ebassi@openedhand.com>
12328
12329	* clutter.pc.in: Require gobject-2.0 too.
12330
12331	* ChangeLog: Fix the previous commit log.
12332
123332007-03-22  Emmanuele Bassi  <ebassi@openedhand.com>
12334
12335	* clutter/clutter-private.h: Remove inclusion of backend-specific
12336	headers; update the main context object; add the declarations for
12337	the event queue functions.
12338
12339	* clutter/clutter-backend.[ch]: Add the abstract ClutterBackend
12340	object, which holds backend-specific settings, the main stage,
12341	and the event queue. Every backend must implement a subclass of
12342	ClutterBackend and ClutterStage.
12343
12344	* clutter/clutter-feature.c: Protect the GLX specific calls
12345	behing #ifdef HAVE_CLUTTER_GLX.
12346
12347	* clutter/clutter-actor.c:
12348	* clutter/clutter-group.c:
12349	* clutter/clutter-clone-texture.c: Include GL/gl.h
12350
12351	* clutter/clutter-event.[ch]: Update public API and implement the
12352	event queue private API; hold a reference on the event objects;
12353	move out the keysym-to-unicode table; add the new event types.
12354
12355	* clutter/clutter-color.h: Include clutter-fixed.h
12356
12357	* clutter/clutter-main.c: Update API; get the main stage
12358	from the backend object; process the event received from the
12359	queue; lock/unlock the main mutex if we have one; move the
12360	initialisation process sooner in the init sequence, in order to
12361	have the backend object when we check for options; call the
12362	backed vfuncs in the pre/post parse hooks.
12363
12364	* clutter/clutter-stage.c: Make ClutterStage and abstract class,
12365	implemented by the backends.
12366
12367	* clutter/clutter/glx/clutter-glx.h:
12368	* clutter/clutter/glx/clutter-backend-glx.[ch]:
12369	* clutter/clutter/glx/clutter-event-glx.c:
12370	* clutter/clutter/glx/clutter-stage-glx.[ch]:
12371	* clutter/clutter/glx/Makefile.am: Add the GLX backend.
12372
12373	* clutter/clutter/egl/clutter-backend-egl.[ch]:
12374	* clutter/clutter/egl/clutter-event-egl.c:
12375	* clutter/clutter/egl/clutter-stage-egl.[ch]:
12376	* clutter/clutter/egl/Makefile.am: Add the stub for a EGL backend.
12377
12378	* examples/*.c: Update for the new API.
12379
12380	* configure.ac: Check for the XFixes X extension; add a configure
12381	switch for choosing the backend; show the backend we are building
12382	in the summary.
12383
12384	* clutter.pc.in: Add the backend to the exported variables.
12385
12386	* clutter/Makefile.am: Install the headers in the
12387	clutter-$api_version/clutter directory, as usual; call the shared
12388	object libclutter-$backend-$api_version; build glue for the
12389	backend static library.
12390
123912007-03-19  Matthew Allum  <mallum@openedhand.com>
12392
12393	* clutter/clutter-label.c:
12394	Simple doc fix.
12395	* clutter/clutter-texture.c: (clutter_texture_get_pixbuf):
12396	Backport of fix to get_pixbuf on non alpha textures from 0_2 branch.
12397
123982007-03-19  Emmanuele Bassi  <ebassi@openedhand.com>
12399
12400	* clutter/clutter-texture.c: Clean up code; add checks
12401	in public API.
12402
124032007-02-18  Matthew Allum  <mallum@openedhand.com>
12404
12405	* clutter/clutter-actor.c: (clutter_actor_reparent):
12406	Add a FIXME re calling clutter_group here.
12407	* clutter/clutter-group.c:
12408	Fix clutter_group_remove_all
12409
124102007-02-15  Matthew Allum  <mallum@openedhand.com>
12411
12412	* clutter/clutter-group.h:
12413	Add missing clutter_group_remove_all declaration.
12414
124152007-02-14  Matthew Allum  <mallum@openedhand.com>
12416
12417	* clutter/Makefile.am:
12418	* clutter/clutter-main.c:
12419	* clutter/clutter-stage.c:
12420	* clutter/clutter-version.h.in:
12421	* configure.ac:
12422	* examples/super-oh.c:
12423	Add CLUTTER_FLAVOUR define.
12424
124252007-02-13  Matthew Allum  <mallum@openedhand.com>
12426
12427	* examples/super-oh.c: (screensaver_setup):
12428	Fix example to build with new glx api
12429
124302007-02-07  Emmanuele Bassi  <ebassi@openedhand.com>
12431
12432	* clutter/clutter-debug.h: Define the CLUTTER_MARK()
12433	macro even when CLUTTER_ENABLE_DEBUG is not
12434	defined. (#215)
12435
124362007-01-30  Tomas Frydrych  <tf@openedhand.com>
12437
12438	* clutter/clutter-alpha.c:
12439	(sincx1024_func):
12440	(clutter_sine_func):
12441	(clutter_sine_inc_func):
12442	fixed the fixed point math.
12443
124442007-01-30  Emmanuele Bassi  <ebassi@openedhand.com>
12445
12446	* clutter/clutter-alpha.h:
12447	* clutter/clutter-alpha.c: Add the square waveform
12448	function clutter_square_func() to the precooked
12449	alpha functions.
12450
124512007-01-23  Matthew Allum  <mallum@openedhand.com>
12452
12453	* Makefile.am:
12454	* clutter.pc.in:
12455	* clutter/Makefile.am:
12456	* clutter/clutter-backend-glx.c:
12457	* clutter/clutter-backend-glx.h:
12458	* clutter/clutter-event.c:
12459	* clutter/clutter-feature.c:
12460	* clutter/clutter-group.c:
12461	* clutter/clutter-main.c:
12462	* clutter/clutter-main.h:
12463	* clutter/clutter-private.h:
12464	* clutter/clutter-stage-glx.c:
12465	* clutter/clutter-stage-glx.h:
12466	* clutter/clutter-stage.c:
12467	* clutter/clutter-stage.h:
12468	* clutter/clutter-util.c:
12469	* clutter/clutter-util.h:
12470	* clutter/pango/pangoclutter-render.c:
12471	* configure.ac:
12472	* examples/Makefile.am:
12473	Initial work in supporting different GL backends (ie. GLX/EGL/DirectFB etc).
12474	Currently just GLX supported and now mostly self contained.
12475
12476	* TODO:
12477	Add a note about caching glenables
12478
124792007-01-23  Tomas Frydrych  <tf@openedhand.com>
12480
12481	* clutter/clutter-fixed.c:
12482	(_clutter_double_to_fixed):
12483	(_clutter_double_to_int):
12484	Fixed to avoid problems with punned pointers and gcc
12485	optimatisation.
12486
12487	* clutter/pango/pangoclutter-private.h:
12488	Simplified PANGO_PIXELS_26_6 macro.
12489
12490	* clutter/pango/pangoclutter-font.c:
12491	(_pango_clutter_font_new):
12492	Replace floating with fixed point math.
12493
124942007-01-19  Tomas Frydrych  <tf@openedhand.com>
12495
12496	* clutter/clutter-fixed.c: (clutter_sqrti):
12497	Use union instead of casting int <-> float to get rid of
12498	punned-pointer warning and avoid gcc optimatisation breaking
12499	the function on arm.
12500
125012007-01-19  Emmanuele Bassi  <ebassi@openedhand.com>
12502
12503	Allow the ClutterGroup subclasses to override the add and
12504	remove operations.
12505
12506	* clutter/clutter-group.c: Move the add and remove code from
12507	clutter_group_add() and clutter_group_remove() to the signal
12508	class closures; make the "add" and "remove" signals as
12509	RUN_FIRST.
12510
125112007-01-19  Tomas Frydrych  <tf@openedhand.com>
12512
12513	* clutter/clutter-fixed.h.:
12514	* clutter/clutter-fixed.c:
12515	Added fast double to int and double to fixed point conversion
12516	routines; changed CLUTTER_FLOAT_TO_FIXED to use it.
12517	Replaced clutter_sqrti with fixed point implementation of the QIII
12518	algorithm.
12519
12520	* clutter/clutter-behavior-path.c: use clutter_sqrti always
12521
12522	* clutter/clutter-alpha.c:
12523	(sinc_func): replaced double -> int cast with CLUTTER_FLOAT_TO_INT
12524
125252007-01-18  Emmanuele Bassi  <ebassi@openedhand.com>
12526
12527	* configure.ac: Post release bump to 0.3.0.
12528
125292007-01-18 =============== 0.2 Release ================================
12530
125312007-01-18  Matthew Allum  <mallum@openedhand.com>
12532
12533	* clutter.doap:
12534	Update for 0.2 release
12535
125362007-01-18  Emmanuele Bassi  <ebassi@openedhand.com>
12537
12538	* clutter/clutter-group.h: Add public functions
12539	clutter_group_get_n_children() and clutter_group_get_nth_child().
12540
12541	* clutter/clutter-behaviour.h:
12542	* clutter/clutter-behaviour.c: Fix header alignment; fix argument
12543	name for apidoc.
12544
125452007-01-18  Emmanuele Bassi  <ebassi@openedhand.com>
12546
12547	* clutter/Makefile.am: Use the build dir when linking to the
12548	internal pango clutter renderer.
12549
125502007-01-18  Tomas Frydrych  <tf@openedhand.com>
12551
12552	* clutter/clutter-fixed.h: fixed a typo in comment
12553
125542007-01-18  Emmanuele Bassi  <ebassi@openedhand.com>
12555
12556	* clutter/clutter-fixed.h: Remove some inline documentation to
12557	make the header more readable.
12558
12559	* clutter/clutter-behaviour.c: The actors are store inside a
12560	GSList and not in a GList, so change the list operations to
12561	use the right API.
12562
125632007-01-18  Tomas Frydrych  <tf@openedhand.com>
12564
12565	* clutter/clutter-color.c:
12566	(clutter_color_darken):
12567	(clutter_color_lighten):
12568	Changed calls to clutter_color_shade calls to clutter_color_shadex
12569
125702007-01-17  Matthew Allum  <mallum@openedhand.com>
12571
12572	* configure.ac:
12573	Bump up version to 0.2.0
12574
125752007-01-17  Tomas Frydrych  <tf@openedhand.com>
12576	* configure.ac:
12577	* clutter/clutter-behavior-path.c:
12578	Added --without-fpu option.
12579
12580	* doc/refrence/tmpl/clutter-fixed.sgml:
12581	* clutter/clutter-fixed.c:
12582	* clutter/clutter-fixed.h:
12583	Documentation for fixed point API.
12584
12585	* AUTHORS: added self.
12586
125872007-01-17  Emmanuele Bassi  <ebassi@openedhand.com>
12588
12589	* clutter/clutter-feature.h:
12590	* clutter/clutter-feature.c: Move the GL headers from the
12591	header file to the body.
12592
12593	* clutter/clutter-fixed.h:
12594	* clutter/clutter-fixed.c: Fix apidoc.
12595
12596	* clutter/clutter-color.h:
12597	* clutter/clutter-color.c: Ditto.
12598
125992007-01-17  Tomas Frydrych  <tf@openedhand.com>
12600
12601	* clutter/clutter-fixed.h:
12602	* clutter/clutter-fixed.c:
12603	* clutter/clutter-alpha.c:
12604	Renamed clutter_fixed_sin() to clutter_sinx() and
12605	clutter_angle_sin() to clutter_sini(); added clutter_sqrtx()
12606	and clutter_sqrti(); added missing copyright.
12607
12608	* clutter/clutter-behavior.c:
12609	replaced call to sqrt() with clutter_sqrti()
12610
12611	* clutter/clutter-behavior-scale.c:
12612	(clutter_behaviour_scale_alpha_notify):
12613	Replaced floating point math with fixed point.
12614
126152007-01-16  Emmanuele Bassi  <ebassi@openedhand.com>
12616
12617	* clutter/clutter-feature.c: Use clutter_vblank_method() to
12618	get the VBlank method name from the environment variable OR
12619	the command line switch.
12620
12621	(clutter_feature_do_init): Move the check on the features
12622	state here, to avoid an expensive function call, and inline
12623	the function.
12624
12625	* clutter/clutter-fixed.c: Fix gtk-doc.
12626
12627	* clutter/clutter-main.c: Add a --clutter-vblank command line
12628	switch controlling the VBlank method to be used: it overrides
12629	the CLUTTER_VBLANK environment variable.
12630
12631	(pre_parse_hook), (clutter_init),
12632	(clutter_init_with_args): Move thread initialisation before
12633	type init, to avoid the warning that comes with newer GLib
12634	versions.
12635
12636	* clutter/clutter-group.h:
12637	* clutter/clutter-group.c: Mark clutter_group_show_all() and
12638	clutter_group_hide_all() as deprecated.
12639
126402007-01-16  Matthew Allum  <mallum@openedhand.com>
12641
12642	* NEWS:
12643	Minor tweaks
12644
12645	* TODO:
12646	Sync up, mainly with 0.3 todo items
12647
12648	* clutter/clutter-behaviour.c:
12649	* clutter/clutter-behaviour.h:
12650	clutter_behaviour_get_n_actors() / clutter_behaviour_get_nth_actor()
12651	Additions.
12652
12653	* clutter/clutter-stage.c: (clutter_stage_realize):
12654	Experimental (disabled) visual setting code.
12655
12656	* clutter/clutter-feature.c:
12657	Check for GL_EXT_texture_rectangle (#198  - Frederick Riss)
12658
12659	* clutter/clutter-group.c: (clutter_group_allocate_coords):
12660	Fix for group size allocation (#199 -  Frederick Riss)
12661
12662	* clutter/clutter-texture.c: (texture_upload_data):
12663	Fix texture unpacking row length (#197 Frederick Riss)
12664
12665	* examples/Makefile.am:
12666	Fix LDADD in build (#196 - Frederick Riss)
12667
126682007-01-16  Tomas Frydrych  <tf@openedhand.com>
12669
12670	* clutter/clutter-fixed.h:
12671	Added integer ClutterAngle type, protype of clutter_angle_sin,
12672	convenience macros clutter_fixed_cos and clutter_angle_cos, plus
12673	other convenience macros for commonly used constants and ops.
12674	* clutter/clutter-fixed.c:
12675	(clutter_fixed_sin):
12676	Fixed to work for negative angles.
12677	(clutter_angle_sin):
12678	Fast fixed point sin function for ClutterAngle angles.
12679	* clutter/clutter-alpha.c:
12680	(clutter_sin_func, clutter_sin_inc_func):
12681	Changed to use clutter_angle_sin function.
12682	* clutter-behavior-path.c:
12683	replaced floating point with fixed point operations
12684	* clutter/clutter-color.c:
12685	* clutter/clutter-color.h:
12686	Added (clutter_color_shadex), replaced floating point operations
12687	with fixed point
12688
126892007-01-15  Tomas Frydrych  <tf@openedhand.com>
12690
12691	* clutter/clutter-fixed.h: (CLUTTER_FIXED_TO_DOUBLE/FLOAT):
12692	Fixed macro so it works for negative values.
12693	* clutter/clutter-fixed.c: (clutter_fixed_sin):
12694	Implemented fixed point sin function.
12695	* clutter/clutter-alpha.c: (clutter_sin_func, clutter_sin_inc_func):
12696	Pluged in fixed point sin function.
12697
126982007-01-07  Matthew Allum  <mallum@openedhand.com>
12699
12700	* clutter/clutter-actor.c: (clutter_actor_allocate_coords):
12701	Fix an amazingly not noticed until now typo.
12702	Minor doc tweaks.
12703
12704	* clutter/clutter-behaviour-opacity.c:
12705	(clutter_behaviour_alpha_notify):
12706	Take into account initial opacity value when calculating from alpha.
12707
12708	* clutter/clutter-group.c:
12709	Add new get_nth_child() and get_n_children() api calls.
12710
127112007-01-04  Matthew Allum  <mallum@openedhand.com>
12712
12713	* clutter/clutter-actor.c:
12714	* clutter/clutter-actor.h:
12715	Add new set_width/height API calls.
12716	Tweak scaling by reseting matrix.
12717	Make set_opactiy() take parent opacity into account.
12718	Fix clipping.
12719
12720	* clutter/clutter-alpha.c:
12721	Add more sine functionality.
12722
12723	* clutter/clutter-behaviour-opacity.c:
12724	Dont make a copy of all applied actors but use a foreach()
12725
12726	* clutter/clutter-behaviour-scale.c:
12727	Give correct limits to propertys.
12728	Tweak gravity a little more.
12729	Update docs.
12730:
12731	* clutter/clutter-behaviour.c: (clutter_behaviour_remove):
12732	Minor warning text change.
12733
12734	* clutter/clutter-feature.c: (clutter_feature_wait_for_vblank):
12735	Minor dri ioctl tweak.
12736
12737	* clutter/clutter-label.c:
12738	* clutter/clutter-label.h:
12739	Add new label_full api call.
12740
127412006-12-27  Emmanuele Bassi  <ebassi@openedhand.com>
12742
12743	* clutter/clutter-stage.[ch]:
12744	* clutter/clutter-event.[ch]: Revert changes; this is what
12745	happens when you keep old tree around.
12746
127472006-12-27  Emmanuele Bassi  <ebassi@openedhand.com>
12748
12749	* clutter/clutter-color.h:
12750	* clutter/clutter-color.c: Add clutter_color_to_string(),
12751	which creates a hex-encoded color string from a ClutterColor.
12752
127532006-12-20  Matthew Allum  <mallum@openedhand.com>
12754
12755	* NEWS:
12756	Add some missing improvements.
12757
127582006-12-17  Emmanuele Bassi  <ebassi@openedhand.com>
12759
12760	* clutter/clutter-label.c: Remove some gtk-isms; always take
12761	a reference before calling g_object_notify(), as the object
12762	might get disposed while calling the closures inside the
12763	notify queue; notify the changes of the ellipsize property.
12764
127652006-12-14  Emmanuele Bassi  <ebassi@openedhand.com>
12766
12767	* clutter/clutter-color.h:
12768	* clutter/clutter-color.c: Expose clutter_color_copy()
12769	and clutter_color_free() for the python bindings, so that
12770	they can manager the conversion automatically; use the
12771	slice allocator when copying/freeing a ClutterColor.
12772
127732006-12-13  Emmanuele Bassi  <ebassi@openedhand.com>
12774
12775	* clutter/clutter-color.h:
12776	* clutter/clutter-color.c: Add clutter_color_equal(),
12777	a function for comparing two colors.
12778
12779	* clutter/clutter-rectangle.c:
12780	(clutter_rectangle_set_color),
12781	(clutter_rectangle_set_border_color): Unset the border if
12782	the color of the rectangle and the color of the border are
12783	the same.
12784
127852006-12-13  Emmanuele Bassi  <ebassi@openedhand.com>
12786
12787	* clutter/clutter-actor.c:
12788	* clutter/clutter-clone-texture.c:
12789	* clutter/clutter-event.h:
12790	* clutter/clutter-stage.c:
12791	* clutter/clutter-texture.c:
12792	* clutter/clutter-timeline.c: Update the inline apidoc.
12793
127942006-12-13  Matthew Allum  <mallum@openedhand.com>
12795
12796	* clutter/clutter-actor.c: (clutter_actor_class_init):
12797	Allow actor x,y props to be negative.
12798
127992006-12-12  Emmanuele Bassi  <ebassi@openedhand.com>
12800
12801	Rework part of the show/hide machinery.  Allow groups sub-classes
12802	and composite actors to override show_all/hide_all in order to
12803	decide which children they wish to show/hide.  This means that
12804	if an actor overrides the default show/hide virtual methods, it'll
12805	have to chain up to the parent class show/hide.  While we're at it,
12806	provide the fully recursive clutter_actor_show_all() and
12807	clutter_actor_hide_all() methods.
12808
12809	* clutter/clutter-behaviour-path.c: Add apidoc for the ClutterKnot
12810	functions; add pathological equality case for clutter_knot_equal().
12811
12812	* clutter/clutter-event.h:
12813	* clutter/clutter-feature.h:
12814	* clutter/clutter-behaviour.c:
12815	* clutter/clutter-behaviour-scale.c:Fix parameters name so that
12816	gtk-doc doesn't complain.
12817
12818	* clutter/clutter-actor.c:
12819	* clutter/clutter-event.c: Add apidoc
12820
12821	* clutter/clutter-actor.h:
12822	* clutter/clutter-actor.c: Add a clutter_actor_show_all() and a
12823	clutter_actor_hide_all() functions; provide a mechanism for
12824	groups and composited actors to programmatically select what to
12825	show/hide when clutter_actor_show_all() and clutter_actor_hide_all()
12826	are called.  If you are overriding the ClutterActor::show or
12827	the ClutterActor::hide virtual methods you should chain up with
12828	the parent class.
12829
12830	* clutter/clutter-group.c: Override show_all and hide_all and
12831	recursively show/hide every child inside the group;
12832	clutter_group_show_all() and clutter_group_hide_all() remain as non
12833	recursive versions of clutter_actor_show_all() and
12834	clutter_actor_hide_all() (maybe we should rename them in order
12835	to avoid name clashes with the bindings).
12836
12837	* clutter/clutter-stage.c:
12838	* clutter/clutter-texture.c: Chain up with parent class show
12839	and hide vfuncs.
12840
12841	* clutter/clutter-clone-texture.h:
12842	* clutter/clutter-clone-texture.c: Provide API for changing the
12843	parent texture of a clone texture actor.
12844
12845	* examples/behave.c:
12846	* examples/super-oh.c:
12847	* examples/test.c: Use clutter_actor_show_all() instead of
12848	clutter_group_show_all().
12849
128502006-12-08  Matthew Allum  <mallum@openedhand.com>
12851
12852	* clutter.doap:
12853	Put release date in correct format.
12854
128552006-12-08  Emmanuele Bassi  <ebassi@openedhand.com>
12856
12857	* clutter/clutter-behaviour.h: Add a function prototype
12858	for the foreach function: we need something more specific
12859	than GFunc; add clutter_behaviour_get_actors(), used to
12860	get a list of the actors.
12861
12862	* clutter/clutter-behaviour.c: Add debugging notes; add
12863	a warning for behaviour implementations missing the
12864	alpha_notify vfunc; add api documentation
12865
12866	* clutter/clutter-behaviour-opacity.c:
12867	* clutter/clutter-behaviour-path.c:
12868	* clutter/clutter-behaviour-scale.c: Reimplement the
12869	alpha_notify functions using the new foreach function
12870	and, where possible, by directly iterating on the
12871	actors: this shaves off the number of recalculations
12872	of the property/alpha values, and the number of
12873	functions.
12874
128752006-12-05  Emmanuele Bassi  <ebassi@openedhand.com>
12876
12877	* clutter/clutter-rectangle.c: Forgot to set the
12878	pencil color.
12879
128802006-12-05  Emmanuele Bassi  <ebassi@openedhand.com>
12881
12882	* behave.c: Add test for clutter_color_parse().
12883
128842006-12-05  Emmanuele Bassi  <ebassi@openedhand.com>
12885
12886	* clutter/clutter-event.c: Move the apidoc out.
12887
128882006-12-05  Emmanuele Bassi  <ebassi@openedhand.com>
12889
12890	* clutter/clutter-color.h:
12891	* clutter/clutter-color.c: Add clutter_color_parse(),
12892	which parses a string containing a color definition as
12893	understood by XParseColor() (or pango_color_parse()).
12894
128952006-12-04  Emmanuele Bassi  <ebassi@openedhand.com>
12896
12897	Avoid clutter segfaulting when used without invoking
12898	clutter_init().  This is needed when using api documentation
12899	tools and every other tool relying on the GObject
12900	introspection API (esp. on a headless box).  see the
12901	note in clutter/clutter-feature.c:clutter_feature_init
12902	for a full explanation.
12903
12904	* clutter/clutter-feature.c: Call clutter_feature_init()
12905	when needed by one of the accessors of the features
12906	structure.
12907
12908	* clutter/clutter-main.c:
12909	* clutter/clutter-private.h: Remove clutter_feature_init()
12910	public declaration: the features support check is done the
12911	first time a feature is needed.
12912
12913	* clutter/clutter-main.c: Do not ever access the clutter
12914	main context pointer directly; instead, obtain a pointer
12915	to it via clutter_context_get_default(), which will always
12916	return something valid.
12917
129182006-12-04  Emmanuele Bassi  <ebassi@openedhand.com>
12919
12920	* clutter/clutter-private.h: Add our own READABLE,
12921	WRITABLE and READWRITE paramspec flags, declaring the
12922	string components of the properties GParamSpec as static;
12923	this should shave off some bytes in the memory footprint
12924	and avoid relocations.
12925
12926	* clutter/clutter-actor.c:
12927	* clutter/clutter-behaviour.c:
12928	* clutter/clutter-behaviour-opacity.c:
12929	* clutter/clutter-behaviour-path.c:
12930	* clutter/clutter-behavuour-scale.c:
12931	* clutter/clutter-clone-texture.c:
12932	* clutter/clutter-label.c:
12933	* clutter/clutter-rectangle.c:
12934	* clutter/clutter-stage.c:
12935	* clutter/clutter-texture.c:
12936	* clutter/clutter-timeline.c: Use the CLUTTER_PARAM_*
12937	macros we just added.
12938
12939	* clutter/clutter-behaviour-scale.c: Add properties for
12940	the scale begin, scale end and gravity parameters.
12941
12942	* clutter/clutter-behaviour-path.h: Mark the ClutterKnot
12943	memory management functions as public (for the bindings),
12944	since we use the slice allocator for copying knots around;
12945	add a clutter_knot_equal() function.
12946
12947	* clutter/clutter-behaviour-path.c:
12948	(node_distance): Use clutter_knot_equal() as a fast path
12949	to avoid the sqrt() in case the nodes we are using are
12950	at the same position.
12951	(path_total_length): Additional check on the existence
12952	of the next node.
12953
12954	* examples/behave.c: Do not leak the ClutterBehaviour
12955	objects around.
12956
129572006-12-03  Emmanuele Bassi  <ebassi@openedhand.com>
12958
12959	* clutter/clutter-texture.h: Clean up.
12960
12961	* clutter/clutter-texture.c: Typo fix in the name
12962	of ClutterTextureTileDimension.
12963
12964	* clutter/clutter-behaviour.c: Allow passing NULL
12965	to clutter_behaviour_set_alpha() (as we pass NULL
12966	in the finalize process).
12967
129682006-12-02  Emmanuele Bassi  <ebassi@openedhand.com>
12969
12970	* clutter/clutter-version.h.in: Fix a stupid logic
12971	error in the CHECK_VERSION macro.
12972
129732006-11-30  Matthew Allum  <mallum@openedhand.com>
12974
12975	* clutter.doap:
12976	Updates
12977
129782006-11-30  Emmanuele Bassi  <ebassi@openedhand.com>
12979
12980	* clutter/clutter-stage.h:
12981	* clutter/clutter-stage.c:
12982	(clutter_stage_swap_buffers): Remove, as the same is done
12983	via clutter_redraw() and clutter_actor_queue_redraw().
12984
12985	(clutter_stage_unrealize), (clutter_stage_init),
12986	(clutter_stage_set_xwindow_foreign): Do not call
12987	XDestroyWindow() on the stage Window if we are using a
12988	foreign Window, as we don't control its lifetime.
12989
129902006-11-30  Emmanuele Bassi  <ebassi@openedhand.com>
12991
12992	* Makefile.am: Remove the gtk directory from the SUBDIRS.
12993
12994	* clutter/clutter-stage.h:
12995	* clutter/clutter-stage.c: Add clutter_stage_swap_buffers(),
12996	which swaps the GL buffers.  This fixes the redraw in the
12997	GTK widget.
12998
129992006-11-29  Emmanuele Bassi  <ebassi@openedhand.com>
13000
13001	* clutter/clutter-stage.c:
13002	(clutter_stage_set_xwindow_foreign): Add checks;
13003	remove an indirection to the private data.
13004
130052006-11-29  Emmanuele Bassi  <ebassi@openedhand.com>
13006
13007	* gtk/*
13008	* configure.ac:
13009	* Makfile.am: Remove the GTK+ widget from the
13010	main tree; now Clutter depends just on GLib,
13011	XLibs, GdkPixbuf and OpenGL.
13012
130132006-11-29  Matthew Allum  <mallum@openedhand.com>
13014
13015	* clutter/clutter-stage.c: (clutter_stage_realize):
13016	Set colormap on stage window - should fix issues
13017	with indirect rendering.
13018
130192006-11-23  Matthew Allum  <mallum@openedhand.com>
13020
13021	* clutter/clutter-debug.h:
13022	Fix small macro typo.
13023
130242006-11-22  Matthew Allum  <mallum@openedhand.com>
13025
13026	* clutter/clutter-actor.c:
13027	* clutter/clutter-alpha.c:
13028	* clutter/clutter-behaviour-opacity.c:
13029	* clutter/clutter-behaviour-scale.c:
13030	* clutter/clutter-clone-texture.c:
13031	* clutter/clutter-feature.c:
13032	* clutter/clutter-label.c:
13033	* clutter/clutter-main.c:
13034	* clutter/clutter-stage.c:
13035	* clutter/clutter-texture.c
13036	* clutter/clutter-timeline.c:
13037	* clutter/clutter-debug.h:
13038	Make CLUTTER_NOTE() just take a string rather than a func.
13039	Add more default context to output.
13040
13041	* configure.ac:
13042	Fix flag and add more help docs for --ebable-debug option.
13043
130442006-11-21  Emmanuele Bassi  <ebassi@openedhand.com>
13045
13046	* clutter/clutter-main.c: Add a --g-fatal-warnings switch
13047	for abort()-ing on warnings and criticals.
13048
130492006-11-21  Emmanuele Bassi  <ebassi@openedhand.com>
13050
13051	* configure.ac: Enable debug messages also when
13052	--enable-debug is set to "minimum".
13053
13054	* clutter/Makefile.am:
13055	* clutter/clutter-debug.h: Move all debugging macros inside
13056	this private header; make all debug macros depend on the
13057	CLUTTER_ENABLE_DEBUG compile time define, controlled by
13058	the --enable-debug configure switch; add G_LOG_DOMAIN define.
13059
13060	* clutter/clutter-main.c: Clean up the debug stuff; add
13061	command line argument parsing using GOption; the debug
13062	messages now are triggered like this:
13063
13064	  CLUTTER_DEBUG=section:section:... clutter-app
13065
13066	or like this:
13067
13068	  clutter-app --clutter-debug=section:section:...
13069
13070	where "section" is one of the sections listed in clutter-main.c,
13071	or "all", for all sections; each section is bound to a flag,
13072	which can be used to define a domain when adding a debug note
13073	using the CLUTTER_NOTE() macro; the old CLUTTER_DBG() macro is
13074	just a wrapper around that, under the CLUTTER_DEBUG_MISC domain;
13075	CLUTTER_NOTE() is used like this:
13076
13077	  CLUTTER_NOTE (DOMAIN, log-function);
13078
13079	where log function is g_printerr(), g_message(), g_warning(),
13080	g_critical() or directly g_log() - for instance:
13081
13082	  CLUTTER_NOTE (PANGO, g_warning ("Cache miss: %d", glyph));
13083
13084	will print the warning only if the "pango" flag has been
13085	set to the CLUTTER_DEBUG envvar or passed to the --clutter-debug
13086	command line argument.
13087
13088	similar to CLUTTER_SHOW_FPS, there's also the --clutter-show-fps
13089	command line switch; also, the --display and --screen command
13090	line switches have been added: the first overrides the DISPLAY
13091	envvar and the second controls the X screen used by Clutter to
13092	get the root window on the display.
13093
13094	* clutter/clutter-main.h:
13095	* clutter/clutter-main.c: Add extended support for GOption
13096	in Clutter; use clutter_init_with_args() to let Clutter
13097	parse your own command line arguments; use instead
13098	clutter_get_option_group() to get the GOptionGroup used by
13099	Clutter if you want to do the parsing yourself with
13100	g_option_context_parse(). The init sequence has been verified,
13101	updated and moved into common functions where possible.
13102
13103	* clutter/pango/pangoclutter-render.c:
13104	* clutter/*.c: Include "clutter-debug.h" where needed; use
13105	CLUTTER_NOTE() instead of CLUTTER_DBG().
13106
13107	* examples/super-oh.c: Use the new clutter_init_with_args()
13108	function, and add a --num-hands command line switch to
13109	the SuperOH example code controlling the number of hands at
13110	runtime.
13111
131122006-11-21  Emmanuele Bassi  <ebassi@openedhand.com>
13113
13114	* configure.ac: Rename G_ENABLE_DEBUG to CLUTTER_ENABLE_DEBUG.
13115
131162006-11-20  Emmanuele Bassi  <ebassi@openedhand.com>
13117
13118	* clutter/clutter-rectangle.h:
13119	* clutter/clutter-rectangle.c: Add border to the ClutterRectangle
13120	actor; add "border-width", "border-color" and "has-border"
13121	properties, plus their accessors.  The border generation code is
13122	pretty lame, at the moment.
13123
13124	* examples/behave.c: Add code to test the new rectangle properties.
13125
131262006-11-20  Matthew Allum  <mallum@openedhand.com>
13127
13128	* clutter.doap:
13129	Add an initial DOAP file to project
13130
131312006-11-20  Emmanuele Bassi  <ebassi@openedhand.com>
13132
13133	* clutter/Makefile.am:
13134	* clutter/clutter.h:
13135	* clutter/clutter-version.h.in: Auto-generated versioning macros.
13136
13137	* clutter/clutter-actor.h:
13138	* clutter/clutter-actor.c: Add a ClutterActor::parent-set signal,
13139	for notificating changes of an actor's parent; add api-doc for
13140	the actor's properties; add the ClutterActor "name" property; clean
13141	up a bit some functions; emit the "parent-set" signal when setting
13142	te parent and when unparenting; better warnings when lowering
13143	and raising an actor.
13144
13145	* configure.ac:
13146	* clutter/Makefile.am: Add a --enable-debug configure option,
13147	with three levels of debugging: no, minimum and yes; default
13148	for development releases (odd minor version) is "yes"; update
13149	the version m4 defines; update the libtool macros: now just
13150	changed the clutter_interface_age when releasing will update
13151	everything else.
13152
131532006-11-17  Emmanuele Bassi  <ebassi@openedhand.com>
13154
13155	* clutter/clutter-behaviour-path.h:
13156	* clutter/clutter-behaviour-path.c: Add "since" strings; add
13157	a "knot" property which can be used to append a knot to the path;
13158	fix apidoc.
13159
13160	* clutter/clutter-alpha.c: Add "since" strings.
13161
13162	* clutter/clutter-feature.c: Add apidoc.
13163
13164	* clutter/clutter-behaviour-opacity.c: Add the "opacity-start"
13165	and "opacity-end" properties; rewrite constructor to use them.
13166
131672006-11-17  Emmanuele Bassi  <ebassi@openedhand.com>
13168
13169	* clutter/clutter-behaviour-path.h:
13170	* clutter/clutter-behaviour-path.c: Add a "knot-reached" signal,
13171	which is emitted when the path reaches a node in the nodes list;
13172	flesh out the documentation a bit; sync the parameters names
13173	so that gtk-doc doesn't complain about missing stuff.
13174
13175	* clutter/clutter-behaviour.h:
13176	* clutter/clutter-behaviour.c: Add the alpha value to the
13177	ClutterBehaviour::alpha_notify vfunc, so you don't have to
13178	get the value from the alpha inside the behaviour implementations;
13179	add more documentation.
13180
13181	* clutter/clutter-alpha.c: Flesh out the description.
13182
13183	* clutter/clutter-actor.h: Update the header.
13184
13185	* clutter/clutter-behaviour-opacity.c:
13186	* clutter/clutter-behaviour-scale.c: Update docs.
13187
131882006-11-17  Matthew Allum  <mallum@openedhand.com>
13189
13190	* clutter/clutter-alpha.c:
13191	* clutter/clutter-behaviour-opacity.c:
13192	More docs.
13193
13194	* clutter/clutter-behaviour-path.h:
13195	* clutter/clutter-behaviour-path.c:
13196	More docs, add clutter_behaviour_path_insert_knot(),
13197	clutter_behaviour_path_remove_knot()
13198
13199	* clutter/clutter-behaviour-scale.h:
13200	* clutter/clutter-behaviour-scale.c:
13201	More docs, add clutter_behaviour_scale_newx() taking fixed values.
13202
13203	* clutter/Makefile.am:
13204	* clutter/pango/Makefile.am:
13205	Fix linking warning.
13206
132072006-11-15  Matthew Allum  <mallum@openedhand.com>
13208
13209	* clutter/clutter-actor.h:
13210	* clutter/clutter-actor.c:
13211	Add new API clutter_actor_move_by(), clutter_actor_get_size()
13212
13213	* clutter/clutter-alpha.c:
13214	* clutter/clutter-alpha.h:
13215	Add clutter alpha sine func
13216
13217	* clutter/clutter-behaviours.h:
13218	* clutter/clutter-behaviours.c:
13219	Add a basic scale behaviour (needs work)
13220
13221	* examples/behave.c: (main):
13222	More playing with new behaviour functionality
13223
13224	* clutter/clutter-feature.c:
13225	* clutter/clutter-feature.h:
13226	* clutter/clutter-main.c:
13227	Add new experimental sync to vblank code
13228	Set env CLUTTER_VBLANK=none to disable.
13229
132302006-11-16  Emmanuele Bassi  <ebassi@openedhand.com>
13231
13232	* clutter/clutter-private.h:
13233	* clutter/clutter-actor.c: Implement the defined
13234	clutter_actor_reparent() method; call unrealize
13235	when unparenting an actor.
13236
132372006-11-15  Emmanuele Bassi  <ebassi@openedhand.com>
13238
13239	* clutter/clutter-alpha.h:
13240	* clutter/clutter-alpha.c: Add a data parameter to
13241	the ClutterAlphaFunc; add a data+destroy parameter
13242	to clutter_alpha_set_func() and to clutter_alpha_new(),
13243	and turned the latter into clutter_alpha_new_full();
13244	add a simple, empty constructor clutter_alpha_new().
13245
13246	These changes makes writing bindings a tad more easy,
13247	as bindings require passing their own functions in
13248	order to call the real alpha function.
13249
13250	* clutter/clutter-behaviour.h: Clean up the header.
13251
13252	* clutter/clutter-behaviours.[ch]:
13253	* clutter/clutter-behaviour-opacity.[ch]:
13254	* clutter/clutter-behaviour-path.[ch]:
13255	* clutter/clutter-behaviour-scale.[ch]: Split the
13256	ClutterBehaviourPath, ClutterBehaviourOpacity and
13257	ClutterBehaviourScale into their own files as they
13258	have been growing a bit. Fix ClutterBehaviourPath
13259	API.
13260
13261	* clutter/clutter-media.h: Remove the commented
13262	"metadata_available" signal: gtk-doc chokes up on that.
13263
13264	* clutter/clutter-timeline.h:
13265	* clutter/clutter-timeline.c: Remove the useless
13266	ClutterTimelineAlphaFunc signature; add missing accessor
13267	methods for the properties; clean up a bit.
13268
13269	* clutter/clutter-util.h:
13270	* clutter/clutter-util.c: Remove unneeded function
13271	clutter_util_can_create_texture().
13272
13273	* clutter/clutter-feature.h: Sync the name of
13274	clutter_feature_get_all() with the name declared
13275	in clutter-feature.h.
13276
13277	* clutter/Makefile.am:
13278	* clutter/clutter.h: Update.
13279
13280	* examples/behave.c: Update to the new ClutterAlpha
13281	constructor.
13282
13283	* examples/super-oh.c: Use the right pointer and avoid
13284	the compiler making a fuss about it.
13285
132862006-11-15  Matthew Allum  <mallum@openedhand.com>
13287
13288	* clutter/clutter-actor.h:
13289	* clutter/clutter-actor.c:
13290	Add new API clutter_actor_move_by(), clutter_actor_get_size()
13291
13292	* clutter/clutter-alpha.c:
13293	* clutter/clutter-alpha.h:
13294	Add clutter alpha sine func
13295
13296	* clutter/clutter-behaviours.h:
13297	* clutter/clutter-behaviours.c:
13298	Add a basic scale behaviour (needs work)
13299
13300	* examples/behave.c: (main):
13301	More playing with new behaviour functionality
13302
13303	* clutter/clutter-feature.c:
13304	* clutter/clutter-feature.h:
13305	* clutter/clutter-main.c:
13306	Add new experimental sync to vblank code
13307	Set env CLUTTER_VBLANK=none to disable.
13308
133092006-11-15  Emmanuele Bassi  <ebassi@openedhand.com>
13310
13311	* clutter/clutter-alpha.h:
13312	* clutter/clutter-alpha.c: ClutterAlpha is an initially
13313	floating object, as it makes sense only when bound to
13314	a ClutterBehaviour; add checks for public API.
13315
13316	* clutter/clutter-behaviour.h:
13317	* clutter/clutter-behaviour.c: Remove the ClutterBehaviour
13318	constructor: ClutterBehaviour is an abstract class which
13319	must be implemented by subclassing; add checks for public
13320	API; unref the actors on finalize; sink the ClutterAlpha
13321	object.
13322
13323	* clutter/clutter-behaviours.h: ClutterKnot is a boxed
13324	type: add the _get_type() function declaration and the
13325	type macro.
13326
133272006-10-23  Matthew Allum  <mallum@openedhand.com>
13328
13329	* clutter/clutter-alpha.h:
13330	* clutter/clutter-behaviour.c:
13331	* clutter/clutter-behaviour.h:
13332	* clutter/clutter-behaviours.c:
13333	* clutter/clutter-behaviours.h:
13334	* examples/behave.c:
13335	Behaviours now only 'driven' by ClutterAlpha, not any object/prop.
13336	Add simple Clutter path behaviour.
13337
133382006-10-03  Matthew Allum  <mallum@openedhand.com>
13339
13340	* configure.ac:
13341	* clutter/Makefile.am:
13342	* clutter/clutter-actor.c:
13343	* clutter/clutter-label.c:
13344	* clutter/clutter-label.h:
13345	* clutter/pango/Makefile.am:
13346	* clutter/pango/pangoclutter-font.c:
13347	* clutter/pango/pangoclutter-fontmap.c:
13348	* clutter/pango/pangoclutter-private.h:
13349	* clutter/pango/pangoclutter-render.c:
13350	* clutter/pango/pangoclutter.h:
13351	Add initial rough new pango renderer and clutter-label.
13352
13353	* examples/super-oh.c:
13354	* examples/test.c:
13355	Minor fixups
13356
133572006-09-20  Matthew Allum  <mallum@openedhand.com>
13358
13359	* clutter/clutter-actor.c: (clutter_actor_paint):
13360	* clutter/clutter-clone-texture.c: (clutter_clone_texture_paint):
13361	* clutter/clutter-group.c: (clutter_group_paint):
13362	* clutter/clutter-rectangle.c: (clutter_rectangle_paint):
13363	* clutter/clutter-texture.c: (clutter_texture_paint):
13364	Fix for #156.
13365	clutter_actor_paint() now translates to actor position as
13366	to not fix scaled groups positioning. Sub classes now paint
13367	at 0,0.
13368
133692006-09-19  Matthew Allum  <mallum@openedhand.com>
13370
13371	* clutter/clutter-actor.c: (redraw_update_idle),
13372	(clutter_actor_queue_redraw):
13373	* clutter/clutter-main.c: (clutter_redraw):
13374	Remove now uneeded locks
13375	( new gst and texture code makes redundant )
13376
13377	* clutter/clutter-texture.c:
13378	* clutter/clutter-texture.h:
13379	Redo clutter texture as to not keep a reference
13380	to underlying texture.
13381
133822006-09-15  Matthew Allum  <mallum@openedhand.com>
13383
13384	More fixes from Bastien Nocera (#155):
13385
13386	* clutter/clutter-main.c: (clutter_init):
13387	* clutter/clutter-main.h:
13388	Add an enum for clutter init to return an error code.
13389	* configure.ac:
13390	Dont check for XInitThreads, there is no need, its part of xlib.
13391
133922006-09-14  Matthew Allum  <mallum@openedhand.com>
13393
13394	Various fixes from Bastien Nocera:
13395
13396	* clutter/clutter-event.h:
13397	* clutter/clutter-stage.c: (clutter_stage_unrealize),
13398	(clutter_stage_realize), (clutter_stage_request_coords),
13399	(clutter_stage_dispose), (clutter_stage_init):
13400	* clutter/clutter-stage.h:
13401	* gtk/gtk-clutter-test.c: (input_cb), (frame_cb), (main):
13402	* gtk/gtk-clutter.c: (realize):
13403	Misc fixes (#152)
13404
13405	* clutter/clutter-group.c: (clutter_group_remove):
13406	Remove uneeded ref count (#143)
13407
13408	* examples/super-oh.c: (input_cb):
13409	Handle key release rather than presses (#154)
13410
13411	* configure.ac:
13412	Add old style X libs check when x11.pc unavailable (#101)
13413
134142006-09-01  Matthew Allum  <mallum@openedhand.com>
13415
13416	* clutter/Makefile.am:
13417	* clutter/clutter-media.c:
13418	* clutter/clutter-media.h:
13419	* clutter/clutter.h:
13420	Re-add clutter media.
13421
134222006-08-31  Matthew Allum  <mallum@openedhand.com>
13423
13424	* clutter/clutter-actor.c:
13425	* clutter/clutter-group.c: (clutter_group_paint),
13426	(clutter_group_request_coords), (clutter_group_allocate_coords),
13427	(clutter_group_add):
13428	Fix some group sizing/positioning issues.
13429
134302006-08-30  Jorn Baayen  <jorn@openedhand.com>
13431
13432	* clutter.pc.in:
13433
13434	Remove gstreamer deps.
13435
134362006-08-30  Jorn Baayen  <jorn@openedhand.com>
13437
13438	* README:
13439	* clutter/Makefile.am:
13440	* clutter/clutter-audio.c:
13441	* clutter/clutter-audio.h:
13442	* clutter/clutter-main.c: (clutter_init):
13443	* clutter/clutter-media.c:
13444	* clutter/clutter-media.h:
13445	* clutter/clutter-video-texture.c:
13446	* clutter/clutter-video-texture.h:
13447	* clutter/clutter.h:
13448	* configure.ac:
13449	* examples/Makefile.am:
13450	* examples/README:
13451	* examples/video-cube.c:
13452	* examples/video-player.c:
13453	* gst/Makefile.am:
13454	* gst/clutterimagesink.:
13455	* gst/clutterimagesink.c:
13456	* gst/clutterimagesink.h:
13457	* gtk/Makefile.am:
13458
13459	Remove gstreamer bits. There live in clutter-gst now.
13460
134612006-08-30  Jorn Baayen  <jorn@openedhand.com>
13462
13463	* clutter/Makefile.am:
13464	* clutter/clutter-audio.c:
13465	* clutter/clutter-audio.h:
13466	* clutter/clutter.h:
13467
13468	Added ClutterAudio audio playback object.
13469
134702006-08-29  Matthew Allum  <mallum@openedhand.com>
13471
13472	* clutter/clutter-fixed.h:
13473	Add basic fixed point utility defines and type.
13474
13475	* clutter/Makefile.am:
13476	* clutter/clutter-actor.c:
13477	* clutter/clutter-actor.h:
13478	* clutter/clutter-group.c:
13479	* clutter/clutter-stage.c:
13480	* examples/super-oh.c: (main):
13481	Add scale API and functionality.
13482	Rework group sizing. Now group size requests have no effect
13483	but can be scaled.
13484
134852006-08-29  Jorn Baayen  <jorn@openedhand.com>
13486
13487	* clutter/clutter-behaviour.c: (_clutter_behaviour_finalize),
13488	(_clutter_behaviour_set_property),
13489	(_clutter_behaviour_get_property), (clutter_behaviour_class_init),
13490	(clutter_behaviour_init), (clutter_behaviour_apply),
13491	(clutter_behaviour_remove), (clutter_behaviour_remove_all),
13492	(clutter_behaviour_actors_foreach):
13493	* clutter/clutter-behaviour.h:
13494	* clutter/clutter-behaviours.c:
13495	(clutter_behaviour_property_change),
13496	(clutter_behaviour_opacity_dispose),
13497	(clutter_behaviour_opacity_finalize),
13498	(clutter_behaviour_opacity_class_init),
13499	(clutter_behaviour_opacity_init):
13500	* clutter/clutter-behaviours.h:
13501	* clutter/clutter-marshal.list:
13502	* examples/behave.c: (main):
13503
13504	Behaviours track generic GObject properties.
13505
13506	* clutter/clutter-video-texture.h:
13507
13508	Remove signal prototypes - they are already specified in
13509	clutter-media.h.
13510
135112006-08-28  Jorn Baayen  <jorn@openedhand.com>
13512
13513	* clutter/Makefile.am:
13514	* clutter/clutter-alpha.c:
13515	* clutter/clutter-alpha.h:
13516	* clutter/clutter-behaviours.c:
13517	(clutter_behaviour_opacity_dispose),
13518	(clutter_behaviour_opacity_init),
13519	(clutter_behaviour_opacity_frame_foreach),
13520	(clutter_behaviour_opacity_frame):
13521	* clutter/clutter-behaviours.h:
13522	* clutter/clutter-timeline.c: (clutter_timeline_class_init):
13523	* clutter/clutter-timeline.h:
13524	* clutter/clutter.h:
13525	* examples/behave.c: (main):
13526
13527	Separate alpha calculation into its own class.
13528
13529	* clutter/clutter-behaviour.c: (clutter_behaviour_set_timelime):
13530
13531	Correct NULL check.
13532
135332006-08-15  Matthew Allum  <mallum@openedhand.com>
13534
13535	* clutter/clutter-behaviour.h:
13536	Behaviours shouldn't subclass timelines.
13537
135382006-08-15  Matthew Allum  <mallum@openedhand.com>
13539
13540	* clutter/clutter-behaviour.c:
13541	* clutter/clutter-behaviour.h:
13542	* clutter/clutter-behaviours.c:
13543	* clutter/clutter-timeline.c:
13544	* clutter/clutter-timeline.h:
13545	* clutter/clutter.h:
13546	Make basic behaviour infrastructure actually work.
13547
13548	* examples/Makefile.am:
13549	* examples/behave.c:
13550	Add a simple behaviour demo/test
13551
13552	* clutter/clutter-media.c: (clutter_media_set_volume):
13553	Actuall set volume rather than position..   (Fixes #141)
13554
135552006-08-14  Matthew Allum  <mallum@openedhand.com>
13556
13557	* clutter/Makefile.am:
13558	* clutter/clutter-behaviour.c:
13559	* clutter/clutter-behaviour.h:
13560	* clutter/clutter-behaviours.c:
13561	* clutter/clutter-behaviours.h:
13562	* clutter/clutter-timeline.c:
13563	* clutter/clutter-timeline.h:
13564	Add very initial new behaviour functionality.
13565
13566	* clutter/clutter-stage.c:
13567	* clutter/clutter-main.c:
13568	* clutter/clutter-actor.c:
13569	Improve clipping using stencil test rather than scissor check.
13570	( Should now handle rotated clips etc ).
13571
13572	* clutter/clutter-group.c: (clutter_group_paint):
13573	Fix typo on position check.
13574
135752006-08-07  Matthew Allum  <mallum@openedhand.com>
13576
13577	* clutter/clutter-video-texture.c: (lay_pipeline):
13578	Set quality of service prop on fakesink to TRUE.
13579
135802006-08-07  Matthew Allum  <mallum@openedhand.com>
13581
13582	* clutter/clutter-actor.c: (clutter_actor_paint):
13583	Remove relic from old stage behaviour - dont unref
13584	it during a clip.
13585
135862006-07-27  Emmanuele Bassi  <ebassi@openedhand.com>
13587
13588	* clutter/clutter-feature.c: No need to call clutter_feature_init()
13589	each time: it's private and should never be seen from the outside;
13590	add a warning, just in case something screws up and calls it more
13591	than once.
13592
135932006-07-27  Emmanuele Bassi  <ebassi@openedhand.com>
13594
13595	* clutter/clutter-private.h: Move clutter_feature_init()
13596	declaration here: you shouldn't even need to initialise
13597	features yourself.
13598
13599	* clutter/clutter-feature.c: call clutter_feature_init()
13600	each time you try to access the feature list; add a static
13601	lock around the feature flags container; add api documentation.
13602
13603	* clutter/clutter-feature.h: Add a type for the feature flags
13604	to make bindings happy.
13605
136062006-07-24  Matthew Allum  <mallum@openedhand.com>
13607
13608	* clutter/Makefile.am:
13609	* clutter/clutter-feature.c:
13610	* clutter/clutter-feature.h:
13611
13612	Add new funcs for checking for available runtime GL
13613	extensions.
13614
13615	* clutter/clutter-clone-texture.c:
13616	* clutter/clutter-texture.c:
13617
13618	Add support for non power of two textures
13619       if GL_TEXTURE_RECTANGLE_ARB extension available ( at runtime ).
13620       Should lower texture memory needs a little.
13621
136222006-07-17  Emmanuele Bassi  <ebassi@openedhand.com>
13623
13624	* clutter/clutter-stage.c (clutter_stage_get_default): Fix
13625	api documentation.
13626
136272006-07-15  Emmanuele Bassi  <ebassi@openedhand.com>
13628
13629	* clutter/clutter-main.c:
13630
13631	(clutter_main): Destroy the main stage, instead of unreffing it.
13632
13633	(clutter_init): Ref and sink the main stage, as it is a top
13634	level actor.
13635
13636	* clutter/clutter-stage.c (clutter_stage_unrealize): Access
13637	the Window private member directly, instead of calling the
13638	get_xwindow method.
13639
13640	* examples/test.c (main): Quit on button press.
13641
136422006-07-09  Emmanuele Bassi  <ebassi@openedhand.com>
13643
13644	* clutter/clutter-event.h: Change the name of the
13645	ClutterEvent union members to something a little shorter.
13646
136472006-07-06  Emmanuele Bassi  <ebassi@openedhand.com>
13648
13649	* configure.ac: Remove the python stuff, now that the bindings
13650	are out of tree.
13651
136522006-07-06  Emmanuele Bassi  <ebassi@openedhand.com>
13653
13654	* configure.ac: Mark this as 0.1.1, and change the version info
13655	of the library.
13656
13657	* clutter/clutter-actor.c:
13658	* clutter/clutter-group.c: Fix documentation.
13659
136602006-07-06  Emmanuele Bassi  <ebassi@openedhand.com>
13661
13662	* clutter/clutter-actor.h:
13663	* clutter/clutter-actor.c:
13664
13665	(clutter_actor_class_init), (clutter_actor_set_property),
13666	(clutter_actor_get_property): Add the "clip" and "has-clip"
13667	properties.
13668
13669	(clutter_actor_set_clip), (clutter_actor_remove_clip): Emit
13670	the notification for the changed properties.
13671
13672	(clutter_actor_has_clip): Simple accessor to the "has-clip"
13673	property.
13674
136752006-07-06  Emmanuele Bassi  <ebassi@openedhand.com>
13676
13677	Big rework of the actor management semantics: now ClutterActor
13678	objects behave like GtkObjects - that is they have an initial
13679	"floating" reference that gets "sunk" when they are added to
13680	a ClutterGroup.  This makes a group responsible of de-allocating
13681	each actor inside it, so you just have to destroy the group to
13682	get every child actor destroyed.  Also, now you can do:
13683
13684	  clutter_group_add (group, clutter_video_texture_new ());
13685
13686	without having to care about reference counting and explicit
13687	unreffing.
13688
13689	* clutter/clutter-private.h: Add private flags setter and
13690	getter macros.
13691
13692	* clutter/clutter-actor.h:
13693	* clutter/clutter-actor.c: Clean up; inherit from GInitiallyUnowned;
13694	add a "visible" property; add the "destroy", "show" and "hide"
13695	signals to ClutterActorClass.
13696
13697	(clutter_actor_show), (clutter_actor_hide): Refactor a bit; emit
13698	the "show" and "hide" signals.
13699
13700	(clutter_actor_set_property), (clutter_actor_get_property),
13701	(clutter_actor_class_init): Implement the "visible" property; add
13702	signals.
13703
13704	(clutter_actor_finalize): Do not leak the actor's name, if it is
13705	set.
13706
13707	(clutter_actor_dispose): Emit the "destroy" signal here.
13708
13709	(clutter_actor_init): Sink the initial floating flag if needed.
13710
13711	(clutter_actor_destroy): Add a function to explicitely destroy
13712	a ClutterActor.
13713
13714	(clutter_actor_set_parent), (clutter_actor_get_parent),
13715	(clutter_actor_unparent): Make set_parent require a valid parent;
13716	add unparent; check on get_parent; ref_sink the actor when
13717	setting its parent and unref it when unsetting it.  Probably we'll
13718	need a function that does reparenting as unparent+set_parent in
13719	a single shot.
13720
13721	* clutter/clutter-group.h:
13722	* clutter/clutter-group.c (clutter_group_dispose),
13723	(clutter_group_finalize), (clutter_group_add),
13724	(clutter_group_remove): Make the group destroy its children when
13725	disposing it; clean up, and use the newly-available
13726	clutter_actor_unparent().
13727
13728	* clutter/clutter-stage.h:
13729	* clutter/clutter-stage.c (clutter_stage_init): ClutterStage is
13730	a top-level actor; clean up.
13731
13732	* clutter/clutter-video-texture.h:
13733	* clutter/clutter-video-texture.c: Clean up.
13734
13735	* examples/super-oh.c:
13736	* examples/test.c:
13737	* examples/video-player.c:
13738	* examples/test-text.c:
13739	* examples/video-cube.c: Remove the g_object_unref() call, as the
13740	ClutterStage object is destroyed on clutter_main_quit().
13741
137422006-06-23  Matthew Allum  <mallum@openedhand.com>
13743
13744	* examples/super-oh.c:
13745	Remove random stage unref fixing trails. Fixes #98
13746
137472006-06-23  Matthew Allum  <mallum@openedhand.com>
13748
13749	* examples/video-player.c: (size_change):
13750	cast stage height to gint avoiding wierdness for when
13751	video height greater than half display height. Fixed #99
13752
137532006-06-23  Matthew Allum  <mallum@openedhand.com>
13754
13755	* clutter/clutter-video-texture.c: (clutter_video_texture_new):
13756	Small fix for video playback on Big Endian. See #97
13757
137582006-06-23  Iain Holmes  <iain@openedhand.com>
13759
13760	* clutter/clutter-texture.h: Add space :) Sorry.
13761
137622006-06-23  Iain Holmes  <iain@openedhand.com>
13763
13764	* clutter/clutter-label.h:
13765	* clutter/clutter-group.h:
13766	* clutter/clutter-rectangle.h:
13767	* clutter/clutter-video-texture.h:
13768	* clutter/clutter-event.h:
13769	* clutter/clutter-texture.h: Fix the header layout so that C# parser
13770	can understand everything.
13771
137722006-06-23  Ross Burton  <ross@openedhand.com>
13773
13774	* configure.ac:
13775	* Makefile.am:
13776	Remove references to bindings/, it's moved.
13777
137782006-06-23  Emmanuele Bassi  <ebassi@openedhand.com>
13779
13780	* clutter/clutter-group.c
13781	(clutter_group_get_children): Mention that you must free
13782	the returned list otherwise you'll leak stuff all around.
13783
137842006-06-23  Ross Burton  <ross@openedhand.com>
13785
13786	* examples/super-oh.c:
13787	Fix build with trails enabled. Still crashes.
13788
137892006-06-23  Ross Burton  <ross@openedhand.com>
13790
13791	* configure.ac:
13792	Disable static libraries.
13793
137942006-06-22  Matthew Allum  <mallum@openedhand.com>
13795
13796	* web/index.html:
13797	Make OpeneHand link
13798
137992006-06-22  Matthew Allum  <mallum@openedhand.com>
13800
13801	* web/index.html:
13802	Add Pango ref, authors info.
13803
13804========== 2006-06-22 0.1 Release =====================
13805
138062006-06-22  Matthew Allum  <mallum@openedhand.com>
13807
13808	* configure.ac:
13809	* web/index.html:
13810	Correct Bugzilla link. Add debs link
13811	Bump up version to 0.1 !
13812
138132006-06-22  Matthew Allum  <mallum@openedhand.com>
13814
13815	* NEWS:
13816	Add an entry for 0.1 release
13817	* web/index.html:
13818	* web/style.css:
13819	Add basic website.
13820
138212006-06-22  Iain Holmes  <iain@openedhand.com>
13822
13823	* clutter/clutter-main.c: Guess what...more docs
13824
138252006-06-22  Iain Holmes  <iain@openedhand.com>
13826
13827	* clutter/clutter-event.c: Add docs
13828
138292006-06-22  Iain Holmes  <iain@openedhand.com>
13830
13831	* clutter/clutter-media.c: Add docs
13832
138332006-06-22  Iain Holmes  <iain@openedhand.com>
13834
13835	* clutter/clutter-texture.c: Fix typos.
13836
13837	* clutter/clutter-timeline.c: Fix typos.
13838
138392006-06-22  Iain Holmes  <iain@openedhand.com>
13840
13841	* clutter/clutter-video-texture.c: Docs.
13842
138432006-06-22  Iain Holmes  <iain@openedhand.com>
13844
13845	* clutter/clutter-group.c: More typo fixes
13846
13847	* clutter/clutter-event.c: Documentation
13848
138492006-06-22  Emmanuele Bassi  <ebassi@openedhand.com>
13850
13851	* clutter/clutter-timeline.h:
13852	* clutter/clutter-timeline.c: Add a "started" and a "paused"
13853	signals; add more sanity checks on the public functions.
13854
13855	(clutter_timeline_get_loop): Add a getter function for the
13856	loop property.
13857
13858	* clutter/clutter-marshal.list: Add marshallers.
13859
13860	* clutter/clutter-timeline.h:
13861	* clutter/clutter-actor.h: Add padding for future expansion
13862	without breaking ABI.
13863
138642006-06-22  Iain Holmes  <iain@openedhand.com>
13865
13866	* clutter/clutter-actor.c: Fix some typos in the docs.
13867
138682006-06-22  Iain Holmes  <iain@openedhand.com>
13869
13870	* clutter/clutter-util.c: And more
13871
138722006-06-22  Ross Burton  <ross@openedhand.com>
13873
13874	* clutter/clutter-label.c:
13875	* clutter/clutter-video-texture.c:
13876	* clutter/clutter-texture.c:
13877	* clutter/clutter-timeline.c:
13878	* clutter/clutter-group.c:
13879	Fix gtk-doc problems.
13880
138812006-06-22  Iain Holmes  <iain@openedhand.com>
13882
13883	* clutter/clutter-main.c: More documentation
13884
138852006-06-22  Matthew Allum  <mallum@openedhand.com>
13886
13887	* clutter/clutter-main.h:
13888	Remove bogus xvisual call.
13889
138902006-06-22  Matthew Allum  <mallum@openedhand.com>
13891
13892	* clutter/clutter-actor.c:
13893	* clutter/clutter-actor.h:
13894	Remove mirroring related calls ( unimplemented )
13895	* gtk/gtk-clutter-test.c: 0 -> NULL
13896
138972006-06-22  Iain Holmes  <iain@openedhand.com>
13898
13899	* clutter/clutter-actor.c:
13900	* clutter/clutter-stage.c:
13901	* gtk/gtk-clutter.c: More docs
13902
139032006-06-22  Iain Holmes  <iain@openedhand.com>
13904
13905	* clutter/clutter-actor.c: Added some more docs.
13906
139072006-06-22  Matthew Allum  <mallum@openedhand.com>
13908
13909	* clutter/clutter-actor.c:
13910	* clutter/clutter-clone-texture.c:
13911	* clutter/clutter-color.c:
13912	* clutter/clutter-event.c:
13913	* clutter/clutter-group.c:
13914	* clutter/clutter-label.c:
13915	* clutter/clutter-main.c:
13916	* clutter/clutter-media.c:
13917	* clutter/clutter-rectangle.c:
13918	* clutter/clutter-stage.c:
13919	* clutter/clutter-texture.c:
13920	* clutter/clutter-timeline.c:
13921	* clutter/clutter-util.c:
13922	* clutter/clutter-video-texture.c:
13923	* configure.ac:
13924	Documentation updates - add section headers.
13925
139262006-06-22  Iain Holmes  <iain@openedhand.com>
13927
13928	* gtk/gtk-clutter-test.c (main): Don't show the stage.
13929
139302006-06-22  Iain Holmes  <iain@openedhand.com>
13931
13932	* gtk/gtk-clutter.[ch]: Rewrite to use
13933	clutter_stage_set_xwindow_foreign rather than GtkSocket.
13934
13935	* gtk/gtk-clutter-test.c: Add fading!1!!!!11! OMGWTFBBQ!!!
13936
139372006-06-21  Emmanuele Bassi  <ebassi@openedhand.com>
13938
13939	* examples/video-cube.c (main): Quit on key press.
13940
139412006-06-21  Emmanuele Bassi  <ebassi@openedhand.com>
13942
13943	* clutter/Makefile.am: Re-fix distcheck after last commit.
13944
139452006-06-21  Matthew Allum  <mallum@openedhand.com>
13946
13947	* clutter/Makefile.am:
13948	Make sure clutter.h included.
13949	* clutter/clutter-stage.c: (clutter_stage_realize),
13950	(clutter_stage_get_actor_at_pos):
13951	Select for motion events on X window.
13952	Return highest rather than lowest found actor for actor_at_pos.
13953	* examples/Makefile.am:
13954	Remove test-text, remane test video.
13955	* examples/README:
13956	Add info about the included examples.
13957	* examples/test-video.c:
13958	* examples/video-player.c:
13959	Redo test-video a little nicer and rename.
13960	* examples/video-cube.c:
13961	Fix so it at least 'works' again.
13962	* examples/test.c:
13963	Clean up a little.
13964
139652006-06-21  Ross Burton  <ross@openedhand.com>
13966
13967	* Makefile.am:
13968	* gtk/Makefile.am:
13969	Add gtk widget to distcheck and fix.
13970
139712006-06-21  Emmanuele Bassi  <ebassi@openedhand.com>
13972
13973	* clutter/Makefile.am:
13974	* bindings/python/Makefile.am:
13975	* Makefile.am: Fix distcheck
13976
139772006-06-21  Ross Burton  <ross@openedhand.com>
13978
13979	* clutter/Makefile.am:
13980	* examples/Makefile.am:
13981	Fix dist.
13982
139832006-06-20  Matthew Allum  <mallum@openedhand.com>
13984
13985	* TODO:
13986	Update.
13987	* clutter/clutter-group.c:
13988	Attempt better group sizing code.
13989	* clutter/clutter-label.c:
13990	Minor tweaks.
13991	* clutter/clutter-texture.c:
13992	More debug info, make sure texture is realised for base_size()
13993	* clutter/clutter-video-texture.c:
13994	Seeking fixes
13995	* examples/test.c: (main):
13996	Populate with more randomness.
13997
139982006-06-15  Matthew Allum  <mallum@openedhand.com>
13999
14000	* clutter/clutter-stage.c:
14001	* clutter/clutter-stage.h:
14002	Add clutter_stage_set_xwindow_foreign() call
14003	* clutter/clutter-util.c:
14004	* clutter/clutter-util.h:
14005	Add some X error traps
14006	* examples/super-oh.c:
14007	Toy with us of new clutter_stage_set_xwindow_foreign() for
14008	optional screensaver functionality.
14009
140102006-06-14  Matthew Allum  <mallum@openedhand.com>
14011
14012	* configure.ac:
14013	Add checks for GL/gl.h and GL/glx.h
14014
140152006-06-14  Matthew Allum  <mallum@openedhand.com>
14016
14017	* AUTHORS:
14018	* README:
14019	* TODO:
14020	Update all.
14021
140222006-06-13  Matthew Allum  <mallum@openedhand.com>
14023
14024	* clutter/clutter-video-texture.c:
14025	Add missing license.
14026
140272006-06-13  Matthew Allum  <mallum@openedhand.com>
14028
14029	* clutter/Makefile.am:
14030	* clutter/clutter-actor.c:
14031	* clutter/clutter-actor.h:
14032	* clutter/clutter-clone-texture.c:
14033	* clutter/clutter-clone-texture.h:
14034	* clutter/clutter-element.c:
14035	* clutter/clutter-element.h:
14036	* clutter/clutter-group.c:
14037	* clutter/clutter-group.h:
14038	* clutter/clutter-label.c:
14039	* clutter/clutter-label.h:
14040	* clutter/clutter-main.c:
14041	* clutter/clutter-main.h:
14042	* clutter/clutter-rectangle.c:
14043	* clutter/clutter-rectangle.h:
14044	* clutter/clutter-stage.c:
14045	* clutter/clutter-stage.h:
14046	* clutter/clutter-texture.c:
14047	* clutter/clutter-texture.h:
14048	* clutter/clutter-video-texture.c:
14049	* clutter/clutter-video-texture.h:
14050	* clutter/clutter.h:
14051	* examples/super-oh.c:
14052	* examples/test-text.c:
14053	* examples/test-video.c:
14054	* examples/test.c:
14055	* examples/video-cube.c:
14056	* gtk/gtk-clutter-test.c:
14057	* gtk/gtk-clutter.c:
14058	* gtk/gtk-clutter.h:
14059	Element to Actor Renaming.
14060
140612006-06-12  Matthew Allum  <mallum@openedhand.com>
14062
14063	* clutter/Makefile.am:
14064	* clutter/clutter-media.c:
14065	* clutter/clutter-media.h:
14066	* clutter/clutter-video-texture.c:
14067	* clutter/clutter-video-texture.h:
14068	* clutter/clutter.h:
14069	* examples/test-video.c: (main):
14070	* examples/video-cube.c: (main):
14071	Add new 'media' interface.
14072	Drop Totem based video playback code replace with newly
14073	rewritten supper Jorn based code. Clutter is now fully LGPL.
14074
14075	* clutter/clutter-texture.c: (tile_dimension):
14076	Remove uneeded overlap code.
14077
140782006-06-08  Iain Holmes  <iain@openedhand.com>
14079
14080	* clutter/clutter-texture.c:
14081	Opps, undo change I didn't mean to commit
14082
140832006-06-08  Iain Holmes  <iain@openedhand.com>
14084
14085	* configure.ac:
14086	Add gdk-pixbuf-xlib cflags/libs to clutter libs
14087	Build the gtk-clutter.pc file.
14088
14089	* clutter.pc.in:
14090	Add the gdk-pixbuf-xlib depends.
14091
14092	* gtk/gtk-clutter.pc.in:
14093	pkg-config stuff for gtk-clutter
14094
14095	* gtk/Makefile.am:
14096	Install gtk-clutter.pc
14097
140982006-06-08  Matthew Allum  <mallum@openedhand.com>
14099
14100	* clutter/clutter-main.c:
14101	* clutter/clutter-private.h:
14102	* clutter/clutter-stage.c:
14103	Rework and fix offscreen rendering, also rejig GLX
14104	context handling, moving mostly into stage.
14105	Require at least OpenGL 1.2 ( CLAMP_TO_EDGE )
14106
14107	* clutter/clutter-texture.c:
14108	Explicity set props on _init() as to avoid nasty can_create
14109	bug failing miserably in certain situations.
14110	Switch to CLAMP_TO_EDGE for textures to avoid tile seams.
14111	Add some more GL error checks.
14112
14113	* clutter/clutter-label.c:
14114	Extra debug info
14115
14116	* configure.ac:
14117	Require gdk-pixbuf-xlib-2.0
14118
141192006-06-06  Matthew Allum  <mallum@openedhand.com>
14120
14121	* configure.ac:
14122	Use pkg-config to check for X. Really Check for GL libs.
14123	Make gtk binding optional. Cleanup a little.
14124
14125	* Makefile.am:
14126	* gtk/Makefile.am:
14127	Make gtk binding optional
14128
14129	* clutter/clutter-element.c:
14130	Cleanup a little, notify on size change.
14131
14132	* clutter/clutter-texture.c:
14133	Lots of cleanups. Add waste prop. Add filter quality prop.
14134
14135	* clutter/clutter-clone-texture.c:
14136	Make object construction simpler to work better with bindings.
14137
14138	* clutter/clutter-stage.c:
14139	* clutter/clutter-timeline.c:
14140	Minor reformating, cleanups.
14141
14142	* examples/test-text.c: (main):
14143	Random experimentation
14144
141452006-06-06  Iain Holmes  <iain@openedhand.com>
14146
14147	* gtk/gtk-clutter.c (size_request): Take the size of the widget from
14148	the ClutterStage.
14149	(gtk_clutter_class_init): Hook up size-request
14150
141512006-06-06  Iain Holmes  <iain@openedhand.com>
14152
14153	* gtk/: Add a gtk widget for clutter.
14154
14155	* configure.ac: Add GTK checks
14156
14157	* Makefile.am: Go into gtk/
14158
141592006-06-05  Matthew Allum  <mallum@openedhand.com>
14160
14161	* clutter/clutter-group.c: (clutter_group_remove):
14162	Fix parent check.
14163
141642006-06-05  Matthew Allum  <mallum@openedhand.com>
14165
14166	* clutter/clutter-event.h:
14167	Remove send_event field. Clutter shouldn't need it.
14168
14169	* clutter/clutter-main.c: (clutter_dispatch_x_event):
14170	Dont malloc a new clutter event for each xevent.
14171
14172	* clutter/clutter-stage.h:
14173	* clutter/clutter-stage.c: (clutter_stage_class_init),
14174	(clutter_stage_get_default):
14175	Dont ref stage from clutter_stage_get_default.
14176
14177	* examples/super-oh.c: (main):
14178	Remove some now uneeded debug g_prints
14179
141802006-06-05  Emmanuele Bassi  <ebassi@openedhand.com>
14181
14182	* clutter-color.h:
14183	* clutter-color.c: Reimplement ClutterColor as a boxed type;
14184	add convenience API for color handling, like: add, subtract,
14185	shade, HSL color-space conversion, packing and unpacking.
14186
14187	* clutter-private.h: Update ClutterMainContext, and export the
14188	main context pointer here.
14189
14190	* clutter-rectangle.h:
14191	* clutter-rectangle.c: Update the color-related code; make
14192	clutter_rectangle_new() and empty constructor and provide
14193	clutter_rectangle_new_with_color(); provide color setter
14194	and getter API.
14195
14196	* clutter-label.h:
14197	* clutter-label.c: Rename the "font" property to "font-name";
14198	update the color-related code to the new ClutterColor object;
14199	rename clutter_label_new() to clutter_label_new_with_text(),
14200	and add setters and getters for the properties.
14201
14202	* clutter-marshal.list: Add VOID:OBJECT and VOID:BOXED marshallers
14203	generators.
14204
14205	* clutter-stage.h:
14206	* clutter-stage.c: Rework the API: provide a default constructor
14207	for a singleton object, named clutter_stage_get_default(), which
14208	supercedes the clutter_stage() function in clutter-main; provide
14209	new events: button-press-event, button-release-event,
14210	key-press-event and key-release-event; update the color-related
14211	code;
14212
14213	(clutter_stage_snapshot): Allow negative width and height when
14214	taking a snapshot (meaning: use full width/height).
14215
14216	(clutter_stage_get_element_at_pos): Rename clutter_stage_pick().
14217
14218	* clutter-element.c (clutter_element_paint): Clean up the
14219	stage and color related code.
14220
14221	* clutter-event.h:
14222	* clutter-event.c: Add generic ClutterAnyEvent type; add
14223	clutter_event_new(), clutter_event_copy() and clutter_event_free();
14224	make ClutterEvent a boxed type.
14225
14226	* clutter-main.h:
14227	* clutter-main.c: Remove clutter_stage(); add clutter_main_quit(),
14228	for cleanly quitting from clutter_main(); add multiple mainloops
14229	support; allocate the ClutterCntx instead of adding it to the
14230	stack; re-work the ClutterEvent dispatching.
14231
14232	* clutter-group.c (clutter_group_add), (clutter_group_remove): Keep
14233	a reference on the element when added to a ClutterGroup.
14234
14235	* examples/rects.py
14236	* examples/test.c:
14237	* examples/test-text.c:
14238	* examples/video-cube.c:
14239	* examples/super-oh.c:
14240	* examples/test-video.c: Update.
14241
142422006-06-04  Matthew Allum  <mallum@openedhand.com>
14243
14244	* clutter/clutter-element.c:
14245	* clutter/clutter-group.c:
14246	* clutter/clutter-group.h:
14247	Work more on depth ( Z ) setting with sorting.
14248
14249	* clutter/clutter-main.c: (clutter_redraw):
14250	Experiment with glXWaitVideoSyncSGI. Currently disabled.
14251
142522006-06-02  Matthew Allum  <mallum@openedhand.com>
14253
14254	* clutter/clutter-element.h:
14255	Add missing _depth() declarations
14256
14257	* clutter/clutter-main.c:
14258	* clutter/clutter-main.h:
14259	* clutter/clutter-private.h:
14260	* clutter/clutter-stage.c:
14261	* clutter/clutter-stage.h:
14262	Rejig GL setup as for stage to support an offscreen property.
14263	Offscreen support is however a little borked.
14264
142652006-06-01  Matthew Allum  <mallum@openedhand.com>
14266
14267	* clutter/clutter-element.c:
14268	Fix a snafu in clutter_element_raise ()
14269
14270	* clutter/clutter-timeline.c:
14271	* clutter/clutter-timeline.h:
14272	Add new clutter_timeline_is_playing() method
14273
142742006-05-29  Matthew Allum  <mallum@openedhand.com>
14275
14276	* clutter/clutter-color.c: (clutter_color_set):
14277	Fix bit shifts in clutter color setters.
14278
142792006-05-29  Matthew Allum  <mallum@openedhand.com>
14280
14281	* clutter/clutter-element.c:
14282	* clutter/clutter-element.h:
14283	Add initial new element depth() getter and setter.
14284
14285	* clutter/clutter-group.c:
14286	* clutter/clutter-group.h:
14287	Add 2 new methods for listing a groups children externally.
14288
142892006-05-27  Emmanuele Bassi  <ebassi@openedhand.com>
14290
14291	* clutter/clutter-clone-texture.c (set_parent_texture),
14292	(clutter_clone_texture_set_property),
14293	(clutter_clone_texture_get_property),
14294	(clutter_clone_texture_class_init),
14295	(clutter_clone_texture_new): Add a "parent-texture"
14296	constructor-only property to simplify the constructor code.
14297
14298	* clutter/clutter-rectangle.c (clutter_rectangle_new):
14299	* clutter/clutter-timeline.c (clutter_timeline_new): Simplify
14300	the constructor code.
14301
14302	* examples/rect.py: Use the new method names for clutter.main()
14303	and clutter.stage().
14304
143052006-05-26  Emmanuele Bassi  <ebassi@openedhand.com>
14306
14307	* clutter/clutter-element.c: Fix gtk-doc annotations for public
14308	functions; add sanity checks for public API; factor out some
14309	pointer dereferences.
14310
143112006-05-26  Emmanuele Bassi  <ebassi@openedhand.com>
14312
14313	Big entry, small changes.
14314
14315	* clutter/clutter-rectangle.c:
14316	* clutter/clutter-clone-texture.c:
14317	* clutter/clutter-group.c:
14318	* clutter/clutter-element.c:
14319	* clutter/clutter-label.c: Use the GObject built-in definition
14320	of a private data structure; it removes the need for managing
14321	the allocation/de-allocation of a private structure ourselves.
14322
14323	* clutter/clutter-group.h:
14324	* clutter/clutter-label.h: Add padding, for adding signals and
14325	other class-wide definitions without breaking ABI.
14326
14327	* clutter/clutter-element.h:
14328	* clutter/clutter-element.c (clutter_element_box_get_type),
14329	(clutter_element_box_copy): Make ClutterElementBox a GBoxed
14330	type; clean up declarations of the enums and flags.
14331
14332	* clutter/clutter-group.h:
14333	* clutter/clutter-group.c (clutter_group_add_many_valist),
14334	(clutter_group_add_many): Add a _valist version of
14335	clutter_group_add_many() function, and re-implement the latter
14336	as a proxy for the former; language bindings do not cope
14337	well with variable argument functions.
14338
14339	* clutter/clutter-video-texture.h:
14340	* clutter/clutter-video-texture.c: Use the right prefix for
14341	the error and for the ratio enumerations.
14342
14343	* clutter/*.c:
14344	* clutter/*.h:
14345	* clutter/Makefile.am: Use the <clutter/...> include path
14346	for parallel installations.
14347
14348	* clutter/Makefile.am:
14349	* clutter/clutter-enum-types.h:
14350	* clutter/clutter-enum-types.c: Register the enumeration types
14351	inside the GObject type system in order to use them as properties
14352	and bindings automagically pick them up.
14353
14354	* bindings/python/ChangeLog: Add a changelog for the bindings...
14355
14356	* doc/reference/ChangeLog: ... and a changelog for the reference.
14357
14358	* examples/test.c:
14359	* examples/video-cube.c:
14360	* examples/test-video.c: Use the <clutter/clutter.h> header.
14361
143622006-05-25  Matthew Allum  <mallum@openedhand.com>
14363
14364	* clutter/clutter-clone-texture.c:
14365	(clone_texture_render_to_gl_quad):
14366	Remove uneeded bogus warning. Fix a typo causing large
14367	texture to get incorrectly rendered.
14368	* clutter/clutter-texture.c: (init_tiles),
14369	(texture_render_to_gl_quad), (clutter_texture_sync_pixbuf),
14370	(clutter_texture_realize):
14371	Add some new debug info.
14372	* clutter/clutter-video-texture.c: (fakesink_handoff_cb):
14373	Set the pixbuf from GST_BUFFER_DATA() a little safer.
14374
143752006-05-25  Matthew Allum  <mallum@openedhand.com>
14376
14377	* clutter.pc.in:
14378	Fix prefix snafu via Ross.
14379
143802006-05-24  Matthew Allum  <mallum@openedhand.com>
14381
14382	* clutter/clutter-element.c: (clutter_element_paint),
14383	(clutter_element_class_init):
14384	* clutter/clutter-label.c: (clutter_label_make_pixbuf):
14385	* clutter/clutter-main.c: (clutter_main):
14386	* clutter/clutter-stage.c: (sync_fullscreen), (sync_gl_viewport):
14387	* clutter/clutter-stage.h:
14388	Various minor tweaks / fixes needed by o.p.t
14389	* clutter/clutter-texture.c: (texture_render_to_gl_quad),
14390	(clutter_texture_sync_pixbuf), (clutter_texture_set_property),
14391	(clutter_texture_get_property), (clutter_texture_class_init):
14392	Experiment adding currently borked repreating textures,
14393	* clutter/clutter-timeline.c: (timeline_timeout_func),
14394	(clutter_timeline_skip):
14395	Fix timeline callback frame counting.
14396	* examples/test-video.c: (main):
14397	Experiment with repeated textures.
14398
143992006-05-23  Matthew Allum  <mallum@openedhand.com>
14400
14401	* clutter/clutter-clone-texture.h:
14402	Fix Include.
14403	* clutter/clutter-element.c: (clutter_element_set_parent):
14404	Only unref if parent non NULL
14405	* clutter/clutter-label.c: (clutter_label_class_init),
14406	(clutter_label_set_text), (clutter_label_set_font):
14407	* clutter/clutter-stage.h:
14408	Add some utility defines
14409	* clutter/clutter-texture.c: (init_tiles):
14410	* clutter/clutter-timeline.c: (clutter_timeline_class_init),
14411	(timeline_timeout_func), (clutter_timeline_get_current_frame):
14412	* clutter/clutter-timeline.h:
14413	Add a 'completed' signal
14414	Dont free priv when g_type_class_private used.
14415	* clutter/clutter.h:
14416	Add missing clutter-rectangle.h
14417	* examples/Makefile.am:
14418	* examples/super-oh.c: (main):
14419	* examples/test.c:
14420	* examples/video-cube.c:
14421	Fix includes
14422
144232006-05-22  Matthew Allum  <mallum@openedhand.com>
14424
14425	* clutter/clutter-element.c:
14426	* clutter/clutter-element.h:
14427	* clutter/clutter-event.c:
14428	* clutter/clutter-group.c: (clutter_group_remove_all):
14429	* clutter/clutter-group.h:
14430	* clutter/clutter-main.c: (translate_button_event),
14431	(translate_motion_event):
14432	Improve mouse event handling.
14433	Add code to map arbituary ( i.e cursor ) position to
14434	a clutter element using OpenGL 'picking'.
14435	* clutter/clutter-texture.c:
14436	* clutter/clutter-clone-texture.c:
14437	re-realize parent texture if it gets hidden.
14438	* clutter/clutter-stage.c:
14439	* clutter/clutter-stage.h:
14440	Make sure stage sets gl viewport up even if just default size.
14441	(clutter_texture_hide), (clutter_texture_paint):
14442	* doc/reference/Makefile.am:
14443	* examples/super-oh.c: (input_cb), (frame_cb), (main):
14444	Add test for mouse events, click to remove.
14445
144462006-05-21  Matthew Allum  <mallum@openedhand.com>
14447
14448	* clutter/clutter-element.c:
14449	* clutter/clutter-element.h:
14450	Add new core sizing methods and more documentation.
14451	* clutter/clutter-group.c:
14452	* clutter/clutter-group.h:
14453	Use the sizing bits and documentation.
14454	* clutter/clutter-main.c:
14455	* clutter/clutter-event.h:
14456	Add FPS display when CLUTTER_SHOW_FPS env var set.
14457	Add initial support for mouse events.
14458	* clutter/clutter-stage.c:
14459	Add 'snapshot' method.
14460	* clutter/clutter-texture.c: (clutter_texture_new_from_pixbuf):
14461	* clutter/clutter-texture.h:
14462	Documentation.
14463	* clutter/clutter-timeline.c:
14464	Add support for changing FPS setting on the fly. Document.
14465	* examples/super-oh.c: (frame_cb), (main):
14466	Add an optional motion trails effect.
14467
144682006-05-17  Matthew Allum  <mallum@openedhand.com>
14469
14470	* README:
14471	Add a tiny bit of info
14472	* TODO:
14473	Sync up a little
14474	* clutter/clutter-clone-texture.c:
14475	(clone_texture_render_to_gl_quad):
14476	* clutter/clutter-element.c: (clutter_element_show),
14477	(clutter_element_realize), (clutter_element_unrealize),
14478	(clutter_element_paint), (clutter_element_set_id),
14479	(clutter_element_get_id):
14480	* clutter/clutter-element.h:
14481	Rename REALISE() to REALIZE()
14482
14483	* clutter/clutter-texture.c: (texture_render_to_gl_quad),
14484	(clutter_texture_sync_pixbuf), (clutter_texture_set_pixbuf):
14485	* clutter/clutter-video-texture.c: (query_timeout),
14486	(got_video_size), (caps_set), (parse_stream_info),
14487	(handle_element_message), (bus_message_cb),
14488	(poll_for_state_change_full), (clutter_video_texture_get_property),
14489	(clutter_video_texture_class_init), (clutter_video_texture_init),
14490	(clutter_video_texture_open), (clutter_video_texture_seek_time),
14491	(stop_play_pipeline):
14492	* clutter/clutter-video-texture.h:
14493	Move over using fakesink and handoff instead of custom element
14494	Support 3 channel pixbufs as textures and thus increase efficiency
14495	of video texture ( also avoids byte swapping. )
14496	Clean up video texture code somemore.
14497	Add some metadata support.
14498
14499	* Makefile.am:
14500	* configure.ac:
14501	Disable old custom clutter gst element from build.
14502
14503	* examples/test-video.c: (foo), (size_change), (tick), (main):
14504	* examples/video-cube.c: (clutter_video_texture_cube_paint):
14505	Sink with new API. Pause on key press.
14506
145072006-05-13  Matthew Allum  <mallum@openedhand.com>
14508
14509	* clutter/clutter-element.c: (redraw_update_idle),
14510	(clutter_element_show), (clutter_element_hide),
14511	(clutter_element_realize), (clutter_element_unrealize),
14512	(clutter_element_class_init), (clutter_element_init),
14513	(clutter_element_queue_redraw), (clutter_element_set_geometry),
14514	(clutter_element_get_geometry), (clutter_element_get_coords),
14515	(clutter_element_set_position), (clutter_element_set_size),
14516	(clutter_element_get_abs_position), (clutter_element_get_width),
14517	(clutter_element_get_height), (clutter_element_get_x),
14518	(clutter_element_get_y), (clutter_element_set_opacity):
14519	* clutter/clutter-texture.c: (clutter_texture_get_base_size),
14520	(clutter_texture_bind_tile), (clutter_texture_get_n_tiles),
14521	(clutter_texture_get_x_tile_detail),
14522	(clutter_texture_get_y_tile_detail):
14523	* doc/reference/Makefile.am:
14524	* doc/reference/clutter.types:
14525	Documentation updates.
14526
145272006-05-13  Matthew Allum  <mallum@openedhand.com>
14528
14529	* clutter.pc.in:
14530	Add @MAJORMINOR@ to installed dirs.
14531	* clutter/clutter-main.c: (clutter_xscreen), (clutter_init):
14532	* clutter/clutter-main.h:
14533	* clutter/clutter-private.h:
14534	Quick fix for debug statements so now only appear
14535	if CLUTTER_DBBUG env var set.
14536
145372006-05-12  Matthew Allum  <mallum@openedhand.com>
14538
14539	* configure.ac:
14540	* Makefile.am:
14541	* clutter/Makefile.am:
14542	* bindings/python/Makefile.am:
14543	* examples/Makefile.am:
14544	* gst/Makefile.am:
14545	Clean up autofoo a bit fixing versioning.
14546	* bootstrap-autotools.sh:
14547	* clutter-1.0.pc.in:
14548	Rename.
14549
145502006-05-12  Matthew Allum  <mallum@openedhand.com>
14551
14552	* bindings/python/Makefile.am:
14553	* bindings/python/clutter.override:
14554	* clutter/Makefile.am:
14555	* clutter/clutter-bin.c:
14556	* clutter/clutter-bin.h:
14557	* clutter/clutter-element.c: (clutter_element_dispose),
14558	(clutter_element_raise), (clutter_element_lower):
14559	* clutter/clutter-group.c:
14560	* clutter/clutter-group.h:
14561	* clutter/clutter-main.c: (clutter_threads_leave):
14562	* clutter/clutter-main.h:
14563	* clutter/clutter-stage.c: (clutter_stage_class_init):
14564	* clutter/clutter-stage.h:
14565	* clutter/clutter.h:
14566	* examples/super-oh.c: (frame_cb), (main):
14567	* examples/test-text.c: (main):
14568	* examples/test-video.c: (main):
14569	* examples/test.c: (main):
14570	* examples/video-cube.c: (main):
14571	Rename clutter-bin to clutter-group
14572
145732006-05-11  Matthew Allum  <mallum@openedhand.com>
14574
14575	* clutter/clutter-clone-texture.c:
14576	(clone_texture_render_to_gl_quad), (clutter_clone_texture_paint),
14577	(clutter_clone_texture_class_init), (clutter_clone_texture_new):
14578	Fix cloning.
14579	* clutter/clutter-element.c: (clutter_element_rotate_z),
14580	(clutter_element_rotate_x), (clutter_element_rotate_y):
14581	Minor tweaks
14582	* examples/Makefile.am:
14583	* examples/super-oh.c:
14584	Add a new demo - unsing rotations and clones.
14585
145862006-05-11  Matthew Allum  <mallum@openedhand.com>
14587
14588	* bindings/python/Makefile.am:
14589	* bindings/python/clutter-base-types.defs:
14590	* bindings/python/clutter-base.defs:
14591	* bindings/python/clutter.override:
14592	Python goodiness from ebassi.
14593	 - Element geometry handled nicely.
14594	 - get_coords(), get_abs_position() added.
14595
14596	* clutter/clutter-element.c: (clutter_element_rotate_x),
14597	(clutter_element_rotate_y), (clutter_element_mirror),
14598	* clutter/clutter-element.h:
14599	Add initial rotation API. Make Geometry boxed ( ebassi )
14600
14601	* clutter/clutter-stage.c: (sync_gl_viewport):
14602	Set depth in main world transform.
14603
14604	* clutter/clutter-timeline.h:
14605	Add missing new() api call.
14606
14607	* examples/test.c: (timeout_text_cb), (frame_cb), (main):
14608	Tou with some rotation
14609
146102006-05-11  Matthew Allum  <mallum@openedhand.com>
14611
14612	reviewed by: <delete if not using a buddy>
14613
14614	* bindings/python/Makefile.am:
14615	* bindings/python/clutter-base-types.defs:
14616	* bindings/python/clutter-base.defs:
14617	* bindings/python/clutter.override:
14618	* clutter/clutter-bin.c: (clutter_bin_paint):
14619	* clutter/clutter-element.c: (clutter_element_paint),
14620	(clutter_element_get_height), (clutter_element_get_x),
14621	(clutter_element_get_y), (clutter_element_set_opacity),
14622	(clutter_element_get_opacity), (clutter_element_set_id),
14623	(clutter_element_get_id), (clutter_element_rotate_x),
14624	(clutter_element_rotate_y), (clutter_element_mirror),
14625	(clutter_element_set_clip), (clutter_element_remove_clip),
14626	(clutter_element_set_parent), (clutter_element_get_parent),
14627	(clutter_element_raise), (clutter_element_lower),
14628	(clutter_element_raise_top), (clutter_element_lower_bottom):
14629	* clutter/clutter-element.h:
14630	* clutter/clutter-main.c: (clutter_redraw):
14631	* clutter/clutter-stage.c: (sync_gl_viewport):
14632	* clutter/clutter-timeline.h:
14633	* examples/test.c: (timeout_text_cb), (frame_cb), (main):
14634
146352006-05-09  Matthew Allum  <mallum@openedhand.com>
14636
14637	* COPYING:
14638	* clutter/clutter-bin.c:
14639	* clutter/clutter-bin.h:
14640	* clutter/clutter-clone-texture.c:
14641	* clutter/clutter-clone-texture.h:
14642	* clutter/clutter-color.c:
14643	* clutter/clutter-color.h:
14644	* clutter/clutter-element.c:
14645	* clutter/clutter-element.h:
14646	* clutter/clutter-event.c:
14647	* clutter/clutter-event.h:
14648	* clutter/clutter-keysyms.h:
14649	* clutter/clutter-label.c:
14650	* clutter/clutter-label.h:
14651	* clutter/clutter-main.c:
14652	* clutter/clutter-main.h:
14653	* clutter/clutter-private.h:
14654	* clutter/clutter-rectangle.c:
14655	* clutter/clutter-rectangle.h:
14656	* clutter/clutter-stage.c:
14657	* clutter/clutter-stage.h:
14658	* clutter/clutter-texture.c:
14659	* clutter/clutter-texture.h:
14660	* clutter/clutter-timeline.c:
14661	* clutter/clutter-timeline.h:
14662	* clutter/clutter-util.c:
14663	* clutter/clutter-util.h:
14664	Add license info.
14665
146662006-05-08  Matthew Allum  <mallum@openedhand.com>
14667
14668	* clutter/Makefile.am:
14669	* clutter/clutter-event.c:
14670	* clutter/clutter-event.h:
14671	* clutter/clutter-keysyms.h:
14672	* clutter/clutter-main.c: (clutter_dispatch_x_event):
14673	* clutter/clutter-stage.c: (clutter_stage_class_init):
14674	* clutter/clutter-stage.h:
14675	* clutter/clutter.h:
14676	* bindings/python/Makefile.am:
14677	* bindings/python/clutter.override:
14678	Add basic input event handling. Keys only atm.
14679
146802006-05-08  Matthew Allum  <mallum@openedhand.com>
14681
14682	* TODO:
14683	Sync a little.
14684	* bindings/python/Makefile.am:
14685	* bindings/python/clutter.override:
14686	Fix up so pixbufs now work ( thanks ebassi! )
14687	Add some missing newer headers.
14688	* clutter/clutter-main.h:
14689	Remove unused clutter_queue_redraw();
14690
146912006-05-07  Matthew Allum  <mallum@openedhand.com>
14692
14693	* clutter/clutter-element.c: (clutter_element_class_init),
14694	(clutter_element_init), (clutter_element_queue_redraw),
14695	(clutter_element_set_geometry), (clutter_element_get_geometry),
14696	(clutter_element_get_coords), (clutter_element_set_position),
14697	(clutter_element_set_size), (clutter_element_get_abs_position),
14698	(clutter_element_get_width), (clutter_element_get_height),
14699	(clutter_element_get_x), (clutter_element_get_y),
14700	(clutter_element_set_opacity):
14701	* clutter/clutter-main.c: (clutter_dispatch_x_event):
14702	* clutter/clutter-main.h:
14703	* clutter/clutter-private.h:
14704	* clutter/clutter-stage.c: (clutter_stage_set_color):
14705	* clutter/clutter-texture.c: (clutter_texture_set_pixbuf):
14706	Rename clutter_queue_redraw -> clutter_element_queue_redraw
14707
14708	* clutter/clutter-label.c: (clutter_label_make_pixbuf),
14709	(clutter_label_set_property), (clutter_label_set_text_extents):
14710	* clutter/clutter-label.h:
14711	Fixes to extents
14712
14713	* examples/Makefile.am:
14714	* examples/test-text.c:
14715	Add sime test text example.
14716
147172006-05-07  Matthew Allum  <mallum@openedhand.com>
14718
14719	* clutter/clutter-label.c: (clutter_label_make_pixbuf),
14720	(clutter_label_get_property), (clutter_label_dispose),
14721	(clutter_label_class_init), (clutter_label_init),
14722	(clutter_label_new_with_text), (clutter_label_new),
14723	(clutter_label_set_text), (clutter_label_set_font),
14724	(clutter_label_set_text_extents), (clutter_label_set_fg_color):
14725	* examples/test.c: (main):
14726	Slight efficiency improvements. Add initial extents API.
14727
147282006-05-07  Matthew Allum  <mallum@openedhand.com>
14729
14730	* TODO:
14731	resync.
14732	* clutter/Makefile.am:
14733	* clutter/clutter-clone-texture.c:
14734	* clutter/clutter-clone-texture.h:
14735	Add new texture clone element.
14736	* clutter/clutter-color.c:
14737	* clutter/clutter-color.h:
14738	Add simple color API.
14739	* clutter/clutter-util.c:
14740	* clutter/clutter-util.h:
14741	Move shared texture funcs into shared util code.
14742	* clutter/clutter-texture.c: (can_create), (tile_dimension),
14743	(init_tiles), (texture_render_to_gl_quad),
14744	(clutter_texture_unrealize), (clutter_texture_sync_pixbuf),
14745	(clutter_texture_realize), (clutter_texture_show),
14746	(clutter_texture_hide), (clutter_texture_paint),
14747	(clutter_texture_finalize), (clutter_texture_set_property),
14748	(clutter_texture_get_property), (clutter_texture_class_init),
14749	(clutter_texture_init), (clutter_texture_set_pixbuf),
14750	(clutter_texture_new_from_pixbuf), (clutter_texture_get_base_size),
14751	(clutter_texture_bind_tile):
14752	Changes for clones to work.
14753	* clutter/clutter-element.c: (clutter_element_paint),
14754	(clutter_element_set_property), (clutter_element_get_property),
14755	(clutter_element_set_position), (clutter_element_set_size),
14756	(clutter_element_get_abs_position), (clutter_element_get_width),
14757	(clutter_element_get_height), (clutter_element_get_x),
14758	(clutter_element_get_y), (clutter_element_set_opacity),
14759	(clutter_element_get_opacity), (clutter_element_set_id),
14760	(clutter_element_get_id), (clutter_element_set_clip):
14761	* clutter/clutter-element.h:
14762	Add clipping and other tweaks.
14763	* clutter/clutter-stage.c: (sync_gl_viewport),
14764	(clutter_stage_paint), (clutter_stage_init):
14765	Add psuedo 3D desktop like GL setup.
14766	* clutter/clutter-label.c: (clutter_label_make_pixbuf):
14767	* clutter/clutter-label.h:
14768	* clutter/clutter-main.c: (clutter_redraw):
14769	* clutter/clutter-main.h:
14770	* clutter/clutter-private.h:
14771	* clutter/clutter-rectangle.c: (clutter_rectangle_paint):
14772	* clutter/clutter-stage.h:
14773	* clutter/clutter-texture.h:
14774	* clutter/clutter-timeline.c: (clutter_timeline_class_init):
14775	* clutter/clutter-video-texture.c:
14776	* clutter/clutter.h:
14777	* examples/test-video.c: (foo), (size_change), (tick), (main):
14778	* examples/test.c: (main):
14779	* examples/video-cube.c: (clutter_video_texture_cube_paint),
14780	(clutter_video_texture_cube_class_init),
14781	(clutter_video_texture_cube_init):
14782	Various minor tweaks for API changes, new features etc.
14783
147842006-05-03  Matthew Allum  <mallum@openedhand.com>
14785
14786	* clutter/clutter-bin.c: (clutter_bin_paint):
14787	* clutter/clutter-bin.h:
14788	* clutter/clutter-element.c: (clutter_element_unrealize),
14789	(clutter_element_paint), (clutter_element_set_property),
14790	(clutter_element_get_property), (clutter_element_dispose),
14791	(clutter_element_finalize), (clutter_element_class_init),
14792	(clutter_element_init), (clutter_element_queue_redraw),
14793	(clutter_element_set_geometry), (clutter_element_get_geometry),
14794	(clutter_element_get_coords), (clutter_element_set_position),
14795	(clutter_element_set_size), (clutter_element_get_abs_position),
14796	(clutter_element_set_opacity), (clutter_element_get_opacity),
14797	(clutter_element_set_clip), (clutter_element_remove_clip),
14798	(clutter_element_set_parent), (clutter_element_get_parent),
14799	(clutter_element_raise), (clutter_element_lower),
14800	(clutter_element_raise_top), (clutter_element_lower_bottom):
14801	* clutter/clutter-element.h:
14802	* clutter/clutter-label.c: (clutter_label_set_fg_color):
14803	* clutter/clutter-rectangle.c: (clutter_rectangle_paint),
14804	(clutter_rectangle_set_property), (clutter_rectangle_init):
14805	* clutter/clutter-stage.c: (sync_xwindow_size):
14806	* clutter/clutter-texture.c: (clutter_texture_paint),
14807	(clutter_texture_set_pixbuf):
14808	Clean up ClutterElement, removing globals, improving sizing
14809	and initial clipping code.
14810
14811	* clutter/clutter.h:
14812	* clutter/clutter-timeline.c: (clutter_timeline_class_init),
14813	(timeline_timeout_func), (clutter_timeline_start),
14814	(clutter_timeline_pause), (clutter_timeline_rewind),
14815	(clutter_timeline_skip), (clutter_timeline_advance),
14816	(clutter_timeline_get_current_frame), (clutter_timeline_new):
14817	* clutter/clutter-timeline.h:
14818	Various fixes to timelines. Implement frame skipping.
14819
14820	* examples/test.c: (timeout_text_cb), (main):
14821	Update to use timeline.
14822
148232006-05-02  Matthew Allum  <mallum@openedhand.com>
14824
14825	* TODO:
14826	Update
14827	* clutter/clutter-element.h:
14828	* clutter/clutter-rectangle.h:
14829	Minor formatting cleanups
14830
148312006-05-02  Matthew Allum  <mallum@openedhand.com>
14832
14833	* clutter/Makefile.am:
14834	* clutter/clutter-timeline.c:
14835	* clutter/clutter-timeline.h:
14836	Add initial timeline implementation
14837
148382006-05-02  Matthew Allum  <mallum@openedhand.com>
14839
14840	* bindings/python/Makefile.am:
14841	* bindings/python/cluttermodule.c: (initclutter):
14842	Fix python build with new -1.0 naming. Use of GdkPixbufs
14843	still causing crashes.
14844
148452006-04-30  Matthew Allum  <mallum@openedhand.com>
14846
14847	* clutter/clutter-main.c: (events_init), (redraw_update_idle),
14848	(clutter_queue_redraw), (clutter_redraw):
14849	Fix repaint queueing, using idle handler now.
14850	Clean up some minor compiler warnings.
14851	* clutter/clutter-main.h:
14852	* clutter/clutter-texture.c: (clutter_texture_unrealize),
14853	(clutter_texture_set_pixbuf):
14854	Rename gl_lock/unlock to threads_enter/leaver
14855
148562006-04-30  Matthew Allum  <mallum@openedhand.com>
14857
14858	* Makefile.am:
14859	* clutter-1.0.pc.in:
14860	* clutter/Makefile.am:
14861	* clutter/clutter-bin.h:
14862	* clutter/clutter-label.h:
14863	* clutter/clutter-rectangle.h:
14864	* clutter/clutter-stage.h:
14865	* clutter/clutter-texture.h:
14866	* clutter/clutter-video-texture.h:
14867	* clutter/clutter.h:
14868	* configure.ac:
14869	* examples/Makefile.am:
14870	Add .pc file, tag -1.0 onto lib, includes dir naming.
14871
148722006-04-29  Matthew Allum  <mallum@openedhand.com>
14873
14874	* clutter/clutter-main.c: (clutter_dispatch_x_event),
14875	(clutter_queue_redraw), (clutter_redraw):
14876	Simplify paint event queueing. Does not actually queue
14877	anymore (broken), needs wrong to reduce high number of
14878	uneeded paints.
14879
14880	* clutter/clutter-texture.c: (clutter_texture_set_pixbuf):
14881	Remove visible check which broke paints of resized texture pixmaps.
14882
148832006-04-19  Matthew Allum  <mallum@openedhand.com>
14884
14885	* clutter/clutter-bin.c: (clutter_bin_paint), (clutter_bin_add):
14886	* clutter/clutter-element.c: (clutter_element_paint):
14887	* clutter/clutter-element.h:
14888	* clutter/clutter-label.c: (clutter_label_set_property),
14889	(clutter_label_get_property), (clutter_label_class_init):
14890	* clutter/clutter-marshal.list:
14891	* clutter/clutter-rectangle.c: (clutter_rectangle_set_property),
14892	(clutter_rectangle_get_property), (clutter_rectangle_class_init):
14893	* clutter/clutter-stage.c: (clutter_stage_dispose),
14894	(clutter_stage_get_property), (clutter_stage_class_init):
14895	* clutter/clutter-texture.c: (clutter_texture_realize),
14896	(clutter_texture_class_init), (clutter_texture_set_pixbuf):
14897	* clutter/clutter-texture.h:
14898	More object cleanups. Add signal to texture size changes.
14899	Fix color props. Adjust element realise flags workings ( broken ).
14900	* examples/test-video.c: (main):
14901	Broken due to realize flag changes.
14902
149032006-04-18  Matthew Allum  <mallum@openedhand.com>
14904
14905	* clutter/clutter-bin.c: (clutter_bin_get_property),
14906	(clutter_bin_finalize), (clutter_bin_class_init),
14907	(clutter_bin_new), (clutter_bin_show_all), (clutter_bin_hide_all),
14908	(clutter_bin_add):
14909	* clutter/clutter-bin.h:
14910	* clutter/clutter-element.c: (clutter_element_get_property),
14911	(clutter_element_finalize), (clutter_element_class_init),
14912	(clutter_element_set_parent), (clutter_element_get_parent),
14913	(clutter_element_raise), (clutter_element_lower):
14914	* clutter/clutter-element.h:
14915	* clutter/clutter-label.c: (clutter_label_make_pixbuf),
14916	(clutter_label_get_property), (clutter_label_dispose),
14917	(clutter_label_finalize), (clutter_label_class_init),
14918	(clutter_label_init), (clutter_label_new_with_text),
14919	(clutter_label_new), (clutter_label_set_text),
14920	(clutter_label_set_font), (clutter_label_set_fg_color):
14921	* clutter/clutter-label.h:
14922	* clutter/clutter-rectangle.c: (clutter_rectangle_paint),
14923	(clutter_rectangle_set_property), (clutter_rectangle_get_property),
14924	(clutter_rectangle_finalize), (clutter_rectangle_dispose),
14925	(clutter_rectangle_class_init), (clutter_rectangle_init),
14926	(clutter_rectangle_new):
14927	* clutter/clutter-texture.c: (clutter_texture_paint),
14928	(clutter_texture_dispose), (clutter_texture_finalize),
14929	(clutter_texture_set_property), (clutter_texture_get_property),
14930	(clutter_texture_class_init), (clutter_texture_init),
14931	(clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf):
14932	Various GObject usages cleanups, adding properties and
14933	finalize/dispose functions properly.
14934
149352006-04-18  Matthew Allum  <mallum@openedhand.com>
14936
14937	* bindings/python/Makefile.am:
14938	* bindings/python/clutter.override:
14939	* bindings/python/cluttermodule.c: (initclutter):
14940	* clutter/clutter-label.h:
14941	* clutter/clutter-rectangle.h:
14942	* clutter/clutter-video-texture.h:
14943	More fixups to now less broken python bindings
14944	* examples/rects.py:
14945	A simple python script using bindings
14946
149472006-04-18  Matthew Allum  <mallum@openedhand.com>
14948
14949	* clutter/clutter-marshal.list:
14950	Add missing.
14951
149522006-04-17  Matthew Allum  <mallum@openedhand.com>
14953
14954	* Makefile.am:
14955	* bindings/Makefile.am:
14956	* bindings/python/Makefile.am:
14957	* bindings/python/clutter.override:
14958	* bindings/python/cluttermodule.c:
14959	* configure.ac:
14960	First shot at some python bindings ( broken atm )
14961	* clutter/clutter-bin.h:
14962	* clutter/clutter-element.h:
14963	* clutter/clutter-stage.h:
14964	* clutter/clutter-texture.h:
14965	* clutter/clutter.h:
14966	Rejig headers a little so h2def.py happier
14967
149682006-04-17  Matthew Allum  <mallum@openedhand.com>
14969
14970	* TODO:
14971	* doc/clutter.types:
14972	* doc/reference/Makefile.am:
14973	Move gtk-doc gubbins to doc/reference
14974
149752006-04-16  Matthew Allum  <mallum@openedhand.com>
14976
14977	* TODO:
14978	More updates
14979
14980	* clutter/clutter-bin.c: (clutter_bin_paint):
14981	Add translate call
14982
14983	* clutter/clutter-texture.c: (clutter_texture_dispose),
14984	(clutter_texture_class_init), (clutter_texture_set_pixbuf):
14985	Fixup object finalization a little.
14986
14987	* bootstrap-autotools.sh:
14988	* configure.ac:
14989	* doc/Makefile.am:
14990	* doc/clutter.types:
14991	Add gtk-doc infrastructure
14992
149932006-04-15  Matthew Allum  <mallum@openedhand.com>
14994
14995	* TODO:
14996	More ideas.
14997
14998	* clutter/Makefile.am:
14999	* clutter/clutter-rectangle.c: (clutter_rectangle_new):
15000	Sync passed color alpha chan to element opacity,
15001
15002	* clutter/clutter-video-texture.c:
15003	(clutter_video_texture_error_quark), (signal_eos_delayed),
15004	(query_timeout), (got_video_size), (caps_set), (parse_stream_info),
15005	(handle_element_message)
15006	* clutter/clutter-video-texture.h:
15007	Port more of bacon video widget API.
15008
15009	* examples/test-video.c: (foo), (tick), (main):
15010	Add a simple overlay displaying playback time.
15011
150122006-04-15  Matthew Allum  <mallum@openedhand.com>
15013
15014	* clutter/clutter-element.c:
15015	* clutter/clutter-label.c: (clutter_label_init),
15016	(clutter_label_new_with_text):
15017	* clutter/clutter-label.h:
15018	* clutter/clutter-main.c: (clutter_redraw), (clutter_gl_unlock):
15019	* clutter/clutter-main.h:
15020	* clutter/clutter-rectangle.c: (clutter_rectangle_init),
15021	(clutter_rectangle_new):
15022	* clutter/clutter-rectangle.h:
15023	* clutter/clutter-texture.c: (clutter_texture_class_init),
15024	(clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf):
15025	* clutter/clutter-texture.h:
15026	* clutter/clutter-video-texture.c: (clutter_video_texture_init):
15027	* clutter/clutter-video-texture.h:
15028	* examples/test-video.c: (main):
15029	* examples/test.c: (main):
15030	* examples/video-cube.c: (clutter_video_texture_cube_init), (main):
15031	Make xxx_new() return there type as ClutterElement*
15032
150332006-04-15  Matthew Allum  <mallum@openedhand.com>
15034
15035	* TODO:
15036	Update
15037	* clutter/clutter-main.c:
15038	* clutter/clutter-stage.c:
15039	* clutter/clutter-texture.c:
15040	* clutter/clutter-texture.h:
15041	* gst/clutterimagesink.c: (gst_clutterimagesink_clutterimage_put),
15042	(gst_clutterimagesink_context_get):
15043	Various experiments with textures and 3D views.
15044
15045	* clutter/clutter-video-texture.c:
15046	(clutter_video_texture_class_init), (clutter_video_texture_init):
15047	* examples/Makefile.am:
15048	* examples/test-video.c: (main):
15049	* examples/video-cube.c:
15050	Add video-cube example
15051
150522006-04-13  Matthew Allum  <mallum@openedhand.com>
15053
15054	* TODO:
15055	Update
15056
15057	* clutter/clutter-bin.c:
15058	* clutter/clutter-bin.h:
15059	New container element
15060
15061	* clutter/clutter-stage.c:
15062	* clutter/clutter-stage.h:
15063	Make stage a proper element
15064
15065	* clutter/Makefile.am:
15066	* clutter/clutter.h:
15067	* clutter/clutter-element.c: (clutter_element_show),
15068	(clutter_element_set_opacity):
15069	* clutter/clutter-element.h:
15070	* clutter/clutter-label.c: (clutter_label_make_pixbuf),
15071	(clutter_label_set_text), (clutter_label_set_font):
15072	* clutter/clutter-private.h:
15073	Various tweaks new api calls.
15074
15075	* clutter/clutter-main.c: (events_init):
15076	* clutter/clutter-main.h:
15077	Make ClutterContex Private to main
15078
15079	* clutter/clutter-texture.c:
15080	* clutter/clutter-texture.h:
15081	* clutter/clutter-video-texture.c:
15082	(clutter_video_texture_finalize):
15083	Fix video crash
15084
15085	* examples/test-video.c: (main):
15086	* examples/test.c: (main):
15087	Fix for API changes.
15088
150892006-04-11  Matthew Allum  <mallum@openedhand.com>
15090
15091	* TODO:
15092	Add
15093	* clutter/clutter-video-texture.c:
15094	(clutter_video_texture_finalize):
15095	* clutter/clutter-video-texture.h:
15096	Remove bogus pixbuf attribute
15097
150982006-04-10  Matthew Allum  <mallum@openedhand.com>
15099
15100	* clutter/clutter-main.c: (clutter_dispatch_x_event),
15101	(clutter_queue_redraw), (clutter_main), (clutter_set_stage_params),
15102	(clutter_init):
15103	* clutter/clutter-main.h:
15104	* clutter/clutter-private.h:
15105	Make Stage non fullscreen ( for now ). Change event loop to
15106	work better with video.
15107
15108	* clutter/Makefile.am:
15109	* clutter/clutter-label.c: (clutter_label_make_pixbuf),
15110	(clutter_label_class_init), (clutter_label_new_with_text),
15111	(clutter_label_set_text), (clutter_label_set_font):
15112	* clutter/clutter-texture.c: (texture_render_to_gl_quad),
15113	(clutter_texture_unrealize), (clutter_texture_sync_pixbuf),
15114	(clutter_texture_realize), (clutter_texture_show),
15115	(clutter_texture_hide), (clutter_texture_paint),
15116	(clutter_texture_finalize), (clutter_texture_set_property),
15117	(clutter_texture_get_property), (clutter_texture_class_init),
15118	(clutter_texture_init), (clutter_texture_get_pixbuf),
15119	(clutter_texture_set_pixbuf), (clutter_texture_new_from_pixbuf):
15120	* clutter/clutter-texture.h:
15121	* clutter/clutter.h:
15122	Fix leakage. Improve performance. Add support for non tiled
15123	textures.
15124
15125	* examples/Makefile.am:
15126	* examples/test.c: (timeout_text_cb), (main):
15127	Experiments
15128
15129	* examples/test-video.c:
15130	* configure.ac:
15131	* gst/Makefile.am:
15132	* gst/clutterimagesink.c:
15133	* gst/clutterimagesink.h:
15134	* clutter/clutter-video-texture.c:
15135	* clutter/clutter-video-texture.h:
15136	Add initial support for video textures with gst-0.10
15137
15138	* gst/cltrimagesink.c:
15139	* gst/cltrimagesink.h:
15140	Remove old gst-0.8 sink
15141
151422006-04-05  Matthew Allum  <mallum@openedhand.com>
15143
15144	* clutter/Makefile.am:
15145	* clutter/clutter-element.c: (clutter_element_show),
15146	(clutter_element_hide), (clutter_element_realize),
15147	(clutter_element_unrealize), (clutter_element_paint),
15148	(clutter_element_finalize), (clutter_element_class_init),
15149	(clutter_element_init), (clutter_element_new):
15150	* clutter/clutter-element.h:
15151	* clutter/clutter.h:
15152	* clutter/clutter-main.c: (clutter_dispatch_x_event),
15153	(events_init), (clutter_redraw), (clutter_main), (clutter_init),
15154	(clutter_show_stage):
15155	* clutter/clutter-main.h:
15156	Various minor tweaks.
15157
15158	* clutter/clutter-private.h:
15159	* clutter/clutter-texture.c: (can_create), (init_tiles),
15160	(clutter_texture_unrealize), (clutter_texture_realize),
15161	(clutter_texture_finalize), (clutter_texture_class_init),
15162	(clutter_texture_init):
15163	* clutter/clutter-texture.h:
15164	Much improve texture class.
15165
15166	* clutter/clutter-label.c:
15167	* clutter/clutter-label.h:
15168	Add new text rendering class
15169
15170	* clutter/clutter-rectangle.c:
15171	* clutter/clutter-rectangle.h:
15172	Add basic rectangle drawing class
15173
15174	* examples/test.c:
15175	Add text rendering and animation to test.
15176
151772006-04-04  Matthew Allum  <mallum@openedhand.com>
15178
15179	* clutter/Makefile.am:
15180	* clutter/clutter-element.c: (clutter_element_realize):
15181	* clutter/clutter-element.h:
15182	* clutter/clutter-image.c:
15183	* clutter/clutter-image.h:
15184	* clutter/clutter-main.c: (clutter_dispatch_x_event),
15185	(clutter_main), (clutter_set_stage_params), (clutter_init):
15186	* clutter/clutter-texture.c: (next_p2), (can_create),
15187	(tile_dimension), (init_tiles), (texture_render_to_gl_quad),
15188	(clutter_texture_unrealize), (clutter_texture_realize),
15189	(clutter_texture_get_pixbuf), (clutter_texture_paint),
15190	(clutter_texture_finalize), (clutter_texture_class_init):
15191	* clutter/clutter-texture.h:
15192	* clutter/clutter.h:
15193	* configure.ac:
15194	* examples/test.c:
15195	Implement basic tiled texture painting.
15196
151972006-04-03  Matthew Allum  <mallum@openedhand.com>
15198
15199	reviewed by: <delete if not using a buddy>
15200
15201	* clutter/Makefile.am:
15202	* clutter/clutter-element.c:
15203	* clutter/clutter-element.h:
15204	* clutter/clutter-image.c:
15205	* clutter/clutter-image.h:
15206	* clutter/clutter-main.c: (events_init), (stage_realize),
15207	(clutter_queue_redraw), (clutter_redraw), (clutter_add_to_stage),
15208	(clutter_remove_from_stage), (clutter_main),
15209	(clutter_set_stage_params), (clutter_init):
15210	* clutter/clutter-main.h:
15211	* clutter/clutter-private.h:
15212	* clutter/clutter.h:
15213	* examples/test.c:
15214
152152006-04-02  Matthew Allum  <mallum@openedhand.com>
15216
15217	* clutter/Makefile.am:
15218	* clutter/cltr-animator.c:
15219	* clutter/cltr-animator.h:
15220	* clutter/cltr-button.c:
15221	* clutter/cltr-button.h:
15222	* clutter/cltr-core.c:
15223	* clutter/cltr-core.h:
15224	* clutter/cltr-events.c:
15225	* clutter/cltr-events.h:
15226	* clutter/cltr-glu.c:
15227	* clutter/cltr-glu.h:
15228	* clutter/cltr-label.c:
15229	* clutter/cltr-label.h:
15230	* clutter/cltr-list.c:
15231	* clutter/cltr-list.h:
15232	* clutter/cltr-overlay.c:
15233	* clutter/cltr-overlay.h:
15234	* clutter/cltr-photo-grid.c:
15235	* clutter/cltr-photo-grid.h:
15236	* clutter/cltr-private.h:
15237	* clutter/cltr-scratch.c:
15238	* clutter/cltr-scratch.h:
15239	* clutter/cltr-texture.c:
15240	* clutter/cltr-texture.h:
15241	* clutter/cltr-video.c:
15242	* clutter/cltr-video.h:
15243	* clutter/cltr-widget.c:
15244	* clutter/cltr-widget.h:
15245	* clutter/cltr-window.c:
15246	* clutter/cltr-window.h:
15247	* clutter/cltr.h:
15248	* clutter/clutter-main.c:
15249	* clutter/clutter-main.h:
15250	* clutter/clutter-private.h:
15251	* clutter/clutter.h:
15252	* clutter/fonts.c:
15253	* clutter/fonts.h:
15254	* clutter/pixbuf.c:
15255	* clutter/pixbuf.h:
15256	* clutter/util.c:
15257	* clutter/util.h:
15258	* configure.ac:
15259	* examples/Makefile.am:
15260	* examples/photos.c:
15261	* examples/player.c:
15262	* examples/scratch.c:
15263	* examples/select.c:
15264	* examples/test.c:
15265	Remove old cltr files replacing with beginnings of
15266	rejigged 'clutter' ones.
15267
152682005-05-27  mallum,,,  <mallum@openedhand.com>
15269
15270	* clutter/cltr-animator.c: (cltr_animator_zoom_new),
15271	(cltr_animator_move_new), (cltr_animator_fullzoom_new),
15272	(cltr_animator_new), (cltr_animator_set_args),
15273	(cltr_animator_wrapped_zoom_paint), (cltr_animator_reset),
15274	(cltr_animator_timeout_cb), (cltr_animator_run):
15275	* clutter/cltr-animator.h:
15276	* clutter/cltr-button.c: (cltr_button_set_label),
15277	(cltr_button_paint):
15278	* clutter/cltr-label.c: (cltr_label_new), (cltr_label_set_text),
15279	(cltr_label_get_text), (cltr_label_show),
15280	(cltr_label_handle_xevent), (cltr_label_paint):
15281	* clutter/cltr-label.h:
15282	* clutter/cltr-list.c: (cltr_list_paint):
15283	* clutter/cltr-widget.c:
15284	* examples/select.c: (usage), (video_ctrl_hide),
15285	(video_ctrl_stop_cb), (video_ctrl_play_cb),
15286	(video_ctrl_seek_begin_cb), (init_video_ctrl), (show_video_ctrl),
15287	(populate), (cell_to_item), (zoom_video_out), (init_show_controls),
15288	(handle_xevent), (zoom_out_complete), (zoom_in_complete):
15289	More select hacking ...
15290
152912005-05-23  mallum,,,  <mallum@openedhand.com>
15292
15293	* clutter/cltr-button.c: (cltr_button_new_with_label),
15294	(cltr_button_handle_xevent), (cltr_button_paint):
15295	* clutter/cltr-button.h:
15296	* clutter/cltr-events.c: (cltr_main_loop):
15297	* clutter/cltr-list.c: (cltr_list_cell_new),
15298	(cltr_list_append_cell), (cltr_list_update_layout),
15299	(cltr_list_paint):
15300	* clutter/cltr-list.h:
15301	* clutter/cltr-overlay.c: (cltr_overlay_paint):
15302	* clutter/cltr-private.h:
15303	* clutter/cltr-widget.c: (cltr_widget_show),
15304	(cltr_widget_show_all), (cltr_widget_add_child):
15305	* clutter/cltr-widget.h:
15306	* clutter/cltr-window.c: (cltr_window_show), (cltr_window_paint),
15307	(cltr_window_handle_xevent), (cltr_window_post_paint),
15308	(cltr_window_set_paint_funcs), (cltr_window_xwin),
15309	(cltr_window_hide_cursor), (cltr_window_set_fullscreen):
15310	* clutter/cltr-window.h:
15311	* examples/select.c: (usage), (init_video_ctrl), (show_video_ctrl),
15312	(populate), (cell_to_item), (handle_xevent), (zoom_out_complete),
15313	(zoom_in_complete), (cell_activated), (main):
15314	Much Select hacking
15315
153162005-05-17  mallum,,,  <mallum@openedhand.com>
15317
15318	* clutter/cltr-video.c: (cltr_video_get_pixbuf):
15319	* gst/cltrimagesink.c: (gst_cltrimagesink_change_state),
15320	(gst_cltrimagesink_chain):
15321	Fix thread related segv's on grabbing video image.
15322	Also pop any unplayed data from sink on stop
15323
153242005-05-16  mallum,,,  <mallum@openedhand.com>
15325
15326	* clutter/cltr-animator.c: (cltr_animator_zoom_new),
15327	(cltr_animator_fullzoom_new), (cltr_animator_new),
15328	(cltr_animator_set_args), (cltr_animator_wrapped_paint):
15329	* clutter/cltr-animator.h:
15330	* clutter/cltr-list.c: (cltr_list_cell_new),
15331	(cltr_list_get_active_cell_co_ords), (cltr_list_show),
15332	(cltr_list_on_activate_cell), (cltr_list_update_layout),
15333	(cltr_list_paint):
15334	* clutter/cltr-list.h:
15335	* clutter/cltr-texture.c: (cltr_texture_realize),
15336	(cltr_texture_unref), (cltr_texture_sync_pixbuf),
15337	(cltr_texture_force_rgb_data):
15338	* clutter/cltr-video.c: (got_stream_length), (got_time_tick),
15339	(got_state_change), (parse_stream_info), (cb_iterate),
15340	(cltr_video_play), (cltr_video_set_volume),
15341	(cltr_video_get_volume), (cltr_video_get_pixbuf),
15342	(cltr_video_idler), (cltr_video_set_source),
15343	(cltr_video_handle_xevent), (cltr_video_paint):
15344	* clutter/cltr-video.h:
15345	* clutter/cltr-widget.c:
15346	* clutter/pixbuf.c: (pixbuf_write_png), (load_png_file),
15347	(pixbuf_copy), (pixbuf_fill_rect), (pixbuf_scale_down),
15348	(pixbuf_clone):
15349	* examples/select.c: (usage), (populate), (cell_to_item),
15350	(handle_xevent), (zoom_out_complete), (zoom_in_complete),
15351	(cell_activated), (main):
15352	* gst/cltrimagesink.c: (gst_cltrimagesink_getcaps),
15353	(gst_cltrimagesink_chain):
15354	Far too much hacking. Fix many endian image issues.
15355	Greatly improve select demo
15356
153572005-05-16  mallum,,,  <mallum@openedhand.com>
15358
15359	* clutter/Makefile.am:
15360	* clutter/cltr-animator.c:
15361	* clutter/cltr-animator.h:
15362	* clutter/cltr-list.c: (distfunc), (cltr_list_new),
15363	(cltr_list_get_active_cell_co_ords), (cltr_list_show),
15364	(cltr_list_on_activate_cell), (cltr_list_handle_xevent),
15365	(cltr_list_animate), (cltr_list_timeout_cb),
15366	(cltr_list_update_layout), (cltr_list_paint):
15367	* clutter/cltr-list.h:
15368	* clutter/cltr-private.h:
15369	* clutter/cltr.h:
15370	* clutter/pixbuf.c: (load_png_file):
15371	* examples/player.c:
15372	* examples/select.c: (usage), (populate), (cell_activated), (main):
15373	Work on animator zooming. Also build up select.c much
15374
153752005-05-14  mallum,,,  <mallum@openedhand.com>
15376
15377	* clutter/cltr-animator.c:
15378	Add initial outline
15379	* clutter/cltr-button.c: (cltr_button_new_with_pixbuf),
15380	(cltr_button_handle_xkeyevent), (cltr_button_handle_xevent),
15381	(cltr_button_paint):
15382	various tweaks/experimentation
15383	* clutter/cltr-core.c: (cltr_init), (cltr_display_height):
15384	* clutter/cltr-glu.c: (cltr_glu_set_color):
15385	* clutter/cltr-glu.h:
15386	Add unfilled rect call.
15387	* clutter/cltr-label.c: (cltr_label_new), (cltr_label_paint):
15388	* clutter/cltr-list.c: (distfunc), (cltr_list_cell_new),
15389	(cltr_list_show), (cltr_list_animate), (cltr_list_paint):
15390	update list a little.
15391	* clutter/cltr-overlay.c: (cltr_overlay_handle_xevent),
15392	(cltr_overlay_paint):
15393	* clutter/cltr-private.h:
15394	* clutter/cltr-texture.c: (cltr_texture_realize):
15395	* clutter/cltr-video.c: (cltr_video_paint):
15396	* clutter/cltr.h:
15397	* clutter/fonts.c: (draw_layout_on_pixbuf):
15398	Fix font alpha blending
15399	* examples/Makefile.am:
15400	* examples/player.c: (main):
15401	* examples/scratch.c: (main):
15402	tweaks.
15403	* examples/select.c:
15404	new example
15405
154062005-05-11  mallum,,,  <mallum@openedhand.com>
15407
15408	* clutter/cltr-video.c: (got_buffering), (cltr_video_new),
15409	(cltr_video_play), (cltr_video_idler):
15410	* examples/photos.c: (main):
15411	* examples/player.c: (handle_xevent), (main):
15412	* gst/cltrimagesink.c: (gst_cltrimagesink_chain):
15413	Fix Gl thread related crash on video playback
15414	Make examples less bound to my laptop ;)
15415
154162005-05-06  mallum,,,  <mallum@openedhand.com>
15417
15418	* clutter/cltr-button.c: (cltr_button_new_with_label):
15419	* clutter/cltr-overlay.c:
15420	* clutter/cltr-photo-grid.c: (cltr_photo_grid_cell_new),
15421	(cltr_photo_grid_paint), (cltr_photo_grid_new):
15422	* clutter/cltr-video.c: (cltr_video_print_tag), (got_buffering),
15423	(got_error), (caps_set), (parse_stream_info), (cb_iterate),
15424	(cltr_video_new), (cltr_video_play), (cltr_video_seek),
15425	(cltr_video_seek_time), (cltr_video_stop), (cltr_video_close),
15426	(cltr_video_pause), (cltr_video_can_set_volume),
15427	(cltr_video_set_volume), (cltr_video_get_volume),
15428	(cltr_video_idler), (cltr_video_set_source), (cltr_video_show),
15429	(cltr_video_hide), (cltr_video_handle_xevent), (cltr_video_paint):
15430	* clutter/cltr-video.h:
15431	* clutter/cltr-widget.h:
15432	* clutter/cltr-window.c: (cltr_window_show), (cltr_window_paint),
15433	(cltr_window_handle_xevent), (cltr_window_set_fullscreen),
15434	(cltr_window_focus_widget):
15435	* clutter/cltr-window.h:
15436	* clutter/cltr.h:
15437	* clutter/fonts.c: (get_layout_bitmap), (font_draw),
15438	(font_get_pixel_size):
15439	* configure.ac:
15440	* examples/photos.c: (photo_grid_populate):
15441	* examples/player.c: (handle_xevent), (main):
15442	* examples/scratch.c: (main):
15443	Lots more tweaks, mainly updating video widget.
15444
154452005-04-29  mallum,,,  <mallum@openedhand.com>
15446
15447	* clutter/cltr-button.c: (cltr_button_new),
15448	(cltr_button_on_activate), (cltr_button_new_with_label),
15449	(cltr_button_show):
15450	* clutter/cltr-button.h:
15451	* clutter/cltr-label.c: (cltr_label_new), (cltr_label_paint):
15452	* clutter/cltr-private.h:
15453	* clutter/cltr-video.c: (cltr_video_play):
15454	* clutter/cltr-widget.c: (cltr_widget_new), (cltr_widget_abs_x),
15455	(cltr_widget_abs_y), (cltr_widget_abs_x2), (cltr_widget_abs_y2),
15456	(cltr_widget_width), (cltr_widget_height), (cltr_widget_show),
15457	(cltr_widget_focus), (cltr_widget_unfocus),
15458	(cltr_widget_set_focus_next), (cltr_widget_get_focus_next),
15459	(cltr_widget_show_all):
15460	* clutter/cltr-widget.h:
15461	* clutter/cltr-window.c: (cltr_window_new),
15462	(cltr_window_focus_widget):
15463	* clutter/cltr.h:
15464	* clutter/fonts.c: (draw_layout_on_pixbuf), (font_get_pixel_size):
15465	* examples/scratch.c: (main):
15466	Hack buttons some more
15467
154682005-04-27  mallum,,,  <mallum@openedhand.com>
15469
15470	* clutter/Makefile.am:
15471	* clutter/cltr-button.c: (cltr_button_new):
15472	* clutter/cltr-label.c:
15473	* clutter/cltr-label.h:
15474	* clutter/cltr-photo-grid.c: (cltr_photo_grid_paint):
15475	* clutter/cltr-texture.c: (cltr_texture_realize),
15476	(cltr_texture_new), (cltr_texture_unref),
15477	(cltr_texture_no_tile_new):
15478	* clutter/cltr-texture.h:
15479	* clutter/cltr-video.c: (cltr_video_got_time_tick), (caps_set),
15480	(cltr_video_new), (cltr_video_idler), (cltr_video_set_source),
15481	(cltr_video_play), (cltr_video_pause), (cltr_video_show),
15482	(cltr_video_hide), (cltr_video_handle_xevent), (cltr_video_paint):
15483	* clutter/cltr.h:
15484	* clutter/fonts.c: (font_new), (draw_layout_on_pixbuf),
15485	(font_draw):
15486	* clutter/fonts.h:
15487	* clutter/pixbuf.c: (pixbuf_set_pixel), (pixbuf_get_pixel):
15488	* examples/photos.c: (photo_grid_populate), (main):
15489	* examples/player.c: (main):
15490	Improve video widget, use playbin rather than gst_play
15491	Lots of misc tweaks.
15492
154932005-04-26  mallum,,,  <mallum@openedhand.com>
15494
15495	* clutter/Makefile.am:
15496	* clutter/cltr-core.c: (cltr_init):
15497	* clutter/cltr-events.c: (cltr_events_init), (cltr_main_loop):
15498	* clutter/cltr-photo-grid.c:
15499	* clutter/cltr-private.h:
15500	* clutter/cltr-scratch.c: (cltr_scratch_handle_xevent),
15501	(cltr_scratch_paint):
15502	* clutter/cltr-texture.c: (cltr_texture_render_to_gl_quad),
15503	(init_tiles), (cltr_texture_unrealize), (cltr_texture_realize),
15504	(cltr_texture_new), (cltr_texture_no_tile_new),
15505	(cltr_texture_get_pixbuf):
15506	* clutter/cltr-texture.h:
15507	* clutter/cltr-video.c:
15508	* clutter/cltr-video.h:
15509	* clutter/cltr-widget.c: (cltr_widget_queue_paint):
15510	* clutter/cltr.h:
15511	* examples/Makefile.am:
15512	* examples/player.c:
15513	* gst/cltrimagesink.c: (gst_cltrimagesink_fixate),
15514	(gst_cltrimagesink_getcaps), (gst_cltrimagesink_sink_link),
15515	(gst_cltrimagesink_change_state), (gst_cltrimagesink_chain),
15516	(gst_cltrimagesink_set_property), (gst_cltrimagesink_get_property),
15517	(gst_cltrimagesink_finalize), (gst_cltrimagesink_class_init):
15518	* gst/cltrimagesink.h:
15519	Initial go at very hacky gst video widget
15520
155212005-04-22  mallum,,,  <mallum@openedhand.com>
15522
15523	* clutter/Makefile.am:
15524	* clutter/cltr-button.c:
15525	* clutter/cltr-button.h:
15526	* clutter/cltr-core.c: (cltr_init):
15527	* clutter/cltr-overlay.c:
15528	* clutter/cltr-overlay.h:
15529	* clutter/cltr-photo-grid.c: (cltr_photo_grid_handle_xevent),
15530	(cltr_photo_grid_cell_new), (ctrl_photo_grid_get_zoomed_coords),
15531	(cell_is_offscreen), (cltr_photo_grid_idle_cb),
15532	(cltr_photo_grid_navigate), (cltr_photo_grid_activate_cell),
15533	(cltr_photo_grid_populate), (cltr_photo_grid_update_visual_state),
15534	(cltr_photo_grid_paint), (cltr_photo_grid_show),
15535	(cltr_photo_grid_set_fps), (cltr_photo_grid_get_fps),
15536	(cltr_photo_grid_set_anim_steps), (cltr_photo_grid_get_anim_steps),
15537	(cltr_photo_grid_new):
15538	Fix up grid so external prog can load images.
15539	* clutter/cltr-photo-grid.h:
15540	* clutter/cltr-texture.c: (cltr_texture_realize),
15541	(cltr_texture_new):
15542	* clutter/cltr-texture.h:
15543	* clutter/cltr-window.c: (cltr_window_set_fullscreen):
15544	* clutter/cltr.h:
15545	* clutter/pixbuf.c: (pixbuf_scale_down), (ConvolveImage),
15546	(GaussianBlurImage):
15547	* clutter/pixbuf.h:
15548	New experimental Methods
15549	* configure.ac:
15550	* examples/Makefile.am:
15551	* examples/photos.c:
15552	* examples/player.c:
15553	Add new examples
15554	* gst/Makefile.am:
15555	* gst/cltrimagesink.c:
15556	* gst/cltrimagesink.h:
15557	Add initial crusty ( broken ) gst stuff
15558
155592005-04-13  mallum,,,  <mallum@openedhand.com>
15560
15561	* bootstrap-autotools.sh:
15562	* clutter/Makefile.am:
15563	* clutter/cltr.c:
15564	* configure.ac:
15565	* examples/Makefile.am:
15566	* examples/scratch.c:
15567	Initial autotooling of everything.
15568
155692005-04-07  mallum,,,  <mallum@openedhand.com>
15570
15571	* Makefile:
15572	* cltr-events.c: (cltr_main_loop):
15573	* cltr-list.c:
15574	* cltr-list.h:
15575	Add list widget
15576	* cltr-photo-grid.c: (cltr_photo_grid_cell_new),
15577	(cltr_photo_grid_append_cell), (ctrl_photo_grid_cell_to_coords),
15578	(ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_idle_cb),
15579	(cltr_photo_grid_navigate), (cltr_photo_grid_activate_cell),
15580	(cltr_photo_grid_update_visual_state), (cltr_photo_grid_paint),
15581	(cltr_photo_grid_show), (cltr_photo_grid_new):
15582	* cltr-texture.c:
15583	* cltr-widget.c:
15584	* cltr-window.c: (cltr_window_new), (cltr_window_show),
15585	(cltr_window_handle_xevent):
15586	* cltr-window.h:
15587	* cltr.c: (main):
15588	* cltr.h:
15589	* pixbuf.c: (pixbuf_copy):
15590	* pixbuf.h:
15591	Cleanups
15592
155932005-04-03  mallum,,,  <mallum@openedhand.com>
15594
15595	* Makefile:
15596	* cltr-core.c:
15597	* cltr-core.h:
15598	* cltr-events.c:
15599	* cltr-events.h:
15600	* cltr-photo-grid.c: (cltr_photo_grid_handle_xkeyevent),
15601	(cltr_photo_grid_handle_xevent), (cltr_photo_grid_cell_new),
15602	(cltr_photo_grid_append_cell), (ctrl_photo_grid_cell_to_coords),
15603	(ctrl_photo_grid_get_zoomed_coords), (cell_is_offscreen),
15604	(cltr_photo_grid_idle_cb), (cltr_photo_grid_navigate),
15605	(cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
15606	(cltr_photo_grid_paint), (cltr_photo_grid_show),
15607	(cltr_photo_grid_new):
15608	* cltr-photo-grid.h:
15609	* cltr-private.h:
15610	* cltr-texture.c:
15611	* cltr-texture.h:
15612	* cltr-widget.c:
15613	* cltr-widget.h:
15614	* cltr-window.c:
15615	* cltr-window.h:
15616	* cltr.c:
15617	* cltr.h:
15618	Add very basic initial toolkit infrastructure
15619
156202005-03-31  mallum,,,  <mallum@openedhand.com>
15621
15622	* cltr-photo-grid.c: (cltr_photo_grid_append_cell),
15623	(ctrl_photo_grid_cell_to_coords),
15624	(ctrl_photo_grid_get_zoomed_coords), (cell_is_offscreen),
15625	(cltr_photo_grid_idle_cb), (cltr_photo_grid_navigate),
15626	(cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
15627	(cltr_photo_grid_redraw), (cltr_photo_grid_new):
15628	* cltr-photo-grid.h:
15629	* cltr-texture.c: (cltr_texture_render_to_gl_quad), (init_tiles),
15630	(cltr_texture_realize):
15631	* cltr-texture.h:
15632	* cltr.c: (main):
15633	Implemented scrolling. Very rough around the edges, needs tidying.
15634
156352005-03-30  mallum,,,  <mallum@openedhand.com>
15636
15637	* Makefile:
15638	* cltr-photo-grid.c: (cltr_photo_grid_redraw),
15639	(cltr_photo_grid_new):
15640	* cltr-tex.c:
15641	* cltr-tex.h:
15642	* cltr-texture.c: (cltr_texture_new):
15643	More renaming
15644
156452005-03-30  mallum,,,  <mallum@openedhand.com>
15646
15647	* cltr-photo-grid.c: (cltr_photo_grid_populate),
15648	(cltr_photo_grid_redraw), (cltr_photo_grid_new):
15649	* cltr-photo-grid.h:
15650	* cltr-tex.c: (next_p2), (cltr_texture_render_to_gl_quad),
15651	(tile_dimension), (init_tiles), (cltr_texture_new):
15652	* cltr-tex.h:
15653	* cltr.h:
15654	Rename CltrImage -> CltrTexture
15655
156562005-03-30  mallum,,,  <mallum@openedhand.com>
15657
15658	* Makefile:
15659	* cltr-photo-grid.c: (cltr_photo_grid_populate),
15660	(cltr_photo_grid_redraw):
15661	* cltr-photo-grid.h:
15662	* cltr-tex.c:
15663	* cltr-tex.h:
15664	* cltr.c: (main):
15665	* cltr.h:
15666	* pixbuf.c: (pixbuf_unref), (pixbuf_copy):
15667	* pixbuf.h:
15668	Add intial new texture tiling code.
15669
156702005-03-27  mallum,,,  <mallum@openedhand.com>
15671
15672	* Makefile:
15673	* cltr-photo-grid.c: (cltr_photo_grid_cell_new),
15674	(ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_navigate),
15675	(cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
15676	(cltr_photo_grid_redraw), (cltr_photo_grid_new):
15677	* cltr-photo-grid.h:
15678	* cltr.c: (cltr_dispatch_x_event), (cltr_init), (test_idle_cb),
15679	(main):
15680	* cltr.h:
15681	Add a very hacky threaded image loader.
15682	Make event handling a little more efficient, though still hacky
15683	* pixbuf.c: (pixel_set_vals), pixbuf.h:
15684	Add copy func ( unused as yet )
15685
156862005-03-25  mallum,,,  <mallum@openedhand.com>
15687
15688	* cltr-photo-grid.c: (cltr_photo_grid_cell_new),
15689	(ctrl_photo_grid_get_zoomed_coords), (cltr_photo_grid_redraw),
15690	(cltr_photo_grid_new):
15691	* cltr-photo-grid.h:
15692	* cltr.c: (cltr_window_new), (idle_cb), (main):
15693	Use GL matrices in a saner way.
15694	Add random rotation to picts
15695	Random minor tweaks
15696
156972005-03-24  mallum,,,  <mallum@openedhand.com>
15698
15699	* Makefile:
15700	* cltr-photo-grid.c:
15701	* cltr-photo-grid.h:
15702	* cltr.c: (cltr_window_new), (cltr_main_loop):
15703	* cltr.h:
15704	Split up cltr.c a bit. start refactoring a bit.
15705
157062005-03-23  mallum,,,  <mallum@openedhand.com>
15707
15708	* cltr.c: (cltr_photo_grid_populate), (cltr_photo_grid_redraw),
15709	(cltr_photo_grid_new), (main):
15710	* cltr.h:
15711	Various minor tweaks
15712	* pixbuf.c: (pixbuf_set_pixel), (pixbuf_get_pixel):
15713	Fix RGBA ordering in set/get pixel
15714
157152005-03-23  mallum,,,  <mallum@openedhand.com>
15716
15717	* cltr.c: (ctrl_photo_grid_get_trans_coords),
15718	Fix grid co-ords -> translation vals converter
15719	(cltr_photo_grid_navigate), (cltr_photo_grid_redraw),
15720	(cltr_photo_grid_new), (idle_cb):
15721	Fix moving between pictures when zoomed
15722
157232005-03-23  mallum,,,  <mallum@openedhand.com>
15724
15725	* cltr.c: (cltr_dispatch_x_event), (cltr_window_new),
15726	(cltr_main_loop), (cltr_photo_grid_navigate),
15727	(cltr_photo_grid_activate_cell), (cltr_photo_grid_populate),
15728	(cltr_photo_grid_redraw), (cltr_photo_grid_new), (idle_cb), (main):
15729	* cltr.h:
15730	Lots, make the grid roughly work.
15731
15732	* fonts.c: (get_layout_bitmap), (font_draw):
15733	remove debug printfs
15734
157352005-03-22  mallum,,,  <mallum@openedhand.com>
15736
15737	* cltr.c: (x_event_prepare), (x_event_check), (x_event_dispatch),
15738	(cltr_dispatch_x_event), (cltr_init), (cltr_window_new),
15739	(cltr_photo_grid_append_cell), (cltr_photo_grid_populate),
15740	(cltr_photo_grid_redraw), (cltr_photo_grid_new),
15741	(idle_cb), (main):
15742	* cltr.h:
15743	Add glib event loop
15744