Commit Graph

1164 Commits

Author SHA1 Message Date
Emmanuele Bassi
0515ee22c2 2008-08-27 Emmanuele Bassi <ebassi@openedhand.com>
Bug 1082 - Texture bitmap is destroyed in wrong way

	* clutter/cogl/common/cogl-bitmap-pixbuf.c:
	(_cogl_bitmap_from_file): Make a copy of the pixbuf data in
	the internal image loader so that we can keep working under
	the assumption that we are using the GLib memory allocation
	and deallocation functions.
2008-08-27 12:56:54 +00:00
Emmanuele Bassi
c34e17163d 2008-08-27 Emmanuele Bassi <ebassi@openedhand.com>
Bug 1099 - No ClutterScript API to get a list of IDs in a given file

	* clutter/clutter-script.[ch]: Add clutter_script_list_objects(),
	a function for retrieving all the objects built by a ClutterScript
	instance. (Based on a patch by Noah Gibbs)
2008-08-27 12:16:56 +00:00
Emmanuele Bassi
d03ad3dd41 2008-08-26 Emmanuele Bassi <ebassi@openedhand.com>
Bug 1090 - Label somtimes returns natural_width < min_width

	* clutter/clutter-label.c:
	(clutter_label_get_preferred_width): Check that the width of the
	layout is always greater than 0. (Johan Bilien)
2008-08-26 12:57:04 +00:00
Neil Roberts
607503ca43 Bug 1103 - Two typos in clutter documentation
* doc/reference/clutter/subclassing-ClutterActor.xml: Update the
	custom actor example since the Cogl API was changed to namespace
	all of the path related functions in cogl_path_*. Thanks to Nati
	Berkover.
	
	* clutter/clutter-score.c: Add missing parameter in example of
	calling clutter_score_start().
2008-08-19 10:55:49 +00:00
Neil Roberts
6b4a033efe Bug 1085 - Cursor is in wrong position on ClutterEntry if set
x-align property

	* clutter/clutter-entry.c (clutter_entry_paint): When calculating
	the position to draw the cursor at, take into account the
	alignment of the text. Queue a redraw when the x-align property is
	changed.
2008-08-18 15:33:38 +00:00
Neil Roberts
cd7b7c9c72 Bug 1091 - WM_MOUSEWHEEL (scroll-event) not handled correctlly
* clutter/win32/clutter-event-win32.c (message_translate): The
	coordinates in a WM_MOUSEWEEL message are given relative to the
	screen so they need to be converted to client coordinates before
	use. Thanks to Roman Yazmin.
2008-08-07 20:34:37 +00:00
Emmanuele Bassi
3e31f02211 2008-08-06 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-child-meta.c:
	(clutter_child_meta_set_property),
	(clutter_child_meta_class_init): Make the :container and
	:actor properties of ChildMeta construct-only, to allow
	bindings to actually use ChildMeta without abusing the API.

	* clutter/clutter-container.c (create_child_meta): Instead of
	setting the members of the ChildMeta structure, use the
	constructor properties.
2008-08-06 10:20:57 +00:00
Emmanuele Bassi
265f72ff2b 2008-08-04 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-keysyms.h: Resync with keysymdef.h inside Xorg.
2008-08-05 10:54:40 +00:00
Emmanuele Bassi
bd30ac8e28 2008-08-04 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script.c:
	(clutter_script_default_connect): Improve wording and debug
	messages in the default autoconnection for signal handlers.
2008-08-04 16:33:43 +00:00
Emmanuele Bassi
fbe225d179 2008-08-04 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-script-parser.c:
	* clutter/clutter-script-private.h: Clean up the code; add a
	conversion function for reading a ClutterColor out of a
	JSON object or array definition.

	* clutter/clutter-script.c: Clean up the code; document properly
	how we translate from type name to type function.
2008-08-04 16:21:27 +00:00
Emmanuele Bassi
2e67125cc9 2008-08-04 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-main.c: Rework and improve the documentation
	of the thread-safe timeout and idle source installer functions.
2008-08-04 10:36:37 +00:00
Neil Roberts
db4c5e2829 Bug 945 - Clipping+fbo cloning bugs
* clutter/cogl/gl/cogl.c: 
	* clutter/cogl/gles/cogl.c: 
	* clutter/cogl/cogl.h.in: Add cogl_clip_stack_save,
	cogl_clip_stack_restore, cogl_viewport and cogl_frustum.

	* clutter/cogl/gl/cogl-fbo.h: 
	* clutter/cogl/gl/cogl-fbo.c: Try to attach a stencil buffer when
	creating an FBO.

	* clutter/cogl/common/cogl-clip-stack.c: Add functions to save and
	restore the whole state of the stack.

	* clutter/clutter-texture.c (clutter_texture_paint): When
	rendering the FBO source, setup a temporary asymmetric perspective
	projection matrix to render it as it would appear on screen.

	* clutter/clutter-private.h: 
	* clutter/clutter-actor.c
	(_clutter_actor_apply_modelview_transform_recursive): No longer
	static and exported in clutter-private.h
2008-08-01 12:23:57 +00:00
Neil Roberts
fc73b84002 Bug 1071 - clutter_timeline_get_duration doesn't always work
* clutter/clutter-timeline.c: Calculate the 'duration' property
	on-demand instead of storing it as a member variable. Notify
	duration property changes whenever the fps or num_frames changes.
2008-08-01 11:09:43 +00:00
Neil Roberts
420dcf7437 Bug 1069 - Warnings with ClutterScore
* clutter/clutter-score.c (clutter_score_is_playing): Check
	whether priv->running_timelines is NULL before checking its
	length.
	(foreach_running_timeline): Remove the completed signal handler
	when stopping the score. Otherwise the completed callback will get
	called multiple times if the timeline is started later.
2008-08-01 11:09:31 +00:00
Neil Roberts
1e84798546 Bug 1075 - Difficult to bind clutter_stage_new
* clutter/clutter-stage.c (clutter_stage_dispose): Unrealize the
	stage before removing the update idle handler. Otherwise
	unrealizing causes another redraw to be queued and if the stage
	object remains alive it will cause an assert and abort.
2008-07-31 08:54:43 +00:00
Neil Roberts
6974c31ad5 * clutter/clutter-stage.c (clutter_stage_class_init): Added the
'perspective' property. All of the machinery was there to
	implement the property but somehow the call that actually installs
	it was missing.
2008-07-30 21:09:58 +00:00
Emmanuele Bassi
ba257b0196 2008-07-30 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-fixed.h:
	* clutter/clutter-units.h: Fix the upper and lower boundaries of
	ClutterFixed and ClutterUnit types; G_MAXINT16 and G_MININT16
	were not enough to describe those values.
2008-07-30 15:47:43 +00:00
Ross Burton
56be7fb7ea 2008-07-30 Ross Burton <ross@openedhand.com>
* clutter/clutter-main.c:
	Destroy the debugging timer when the context is freed.

	* clutter/clutter-stage.c:
	Free the stage title when the stage is finalized.
2008-07-30 15:01:37 +00:00
Neil Roberts
d6496254d6 * clutter/clutter-model.c (clutter_model_set_sorting_column): This
function is supposed to accept -1 to disable sorting. However it
	checks for whether the column is >= the number of columns, but
	clutter_model_get_n_columns() returns an unsigned int so the
	column number also gets promoted to unsigned for the
	comparison. Therefore -1 is always greater than the number of
	columns so it wouldn't let you set it.
2008-07-30 10:32:25 +00:00
Neil Roberts
7df15542e4 * clutter/clutter-timeline.c (clutter_timeline_list_markers): When
requesting the list of markers it was returning the marker data as
	a string instead of the name so it was copying garbage.
2008-07-26 14:00:32 +00:00
Neil Roberts
0d700d7abb * clutter/clutter-actor.c (clutter_actor_remove_clip)
(clutter_actor_set_clipu): Queue a redraw when the clip is
	changed.
2008-07-25 11:29:12 +00:00
Neil Roberts
7c8fdee369 * clutter/clutter-script.c: The example in the documentation
showed a color being specified as '0xff0000ff' but it should be
	'#ff0000ff'
2008-07-24 09:11:54 +00:00
Emmanuele Bassi
931c9edde3 2008-07-23 Emmanuele Bassi <ebassi@openedhand.com>
Bug 1062 - clutter_actor_query_coords() replacement in 0.8

	* clutter/clutter-deprecated.h: Fix the deprecation warning
	for clutter_actor_query_coords(). (Gwenole Beauchesne)
2008-07-23 12:20:35 +00:00
Emmanuele Bassi
d3d4f7be5a Fix the dependencies in the Makefile template 2008-07-17 11:17:32 +00:00
Neil Roberts
e33cce309a * clutter/clutter-texture.c:
* clutter/clutter-rectangle.c: 
	* clutter/clutter-group.c: 
	* clutter/clutter-entry.c: 
	* clutter/clutter-clone-texture.c: Remove unnecessary calls to
	cogl_{push,pop}_matrix. The matrix is preserved in
	clutter_actor_paint whenever the actor's transformation is applied
	so there should be no need to push the matrix in actor paint
	implementations unless it does some additional transformations
	itself.
2008-07-17 10:08:52 +00:00
Neil Roberts
9fbdee463d * clutter/cogl/common/cogl-primitives.c (cogl_path_rel_curve_to):
Fixed a typo in the second parameter which meant the curve was
	drawn incorrectly.
2008-07-14 19:22:17 +00:00
Emmanuele Bassi
d3e2b27cff 2008-07-14 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter.h: Include missing installed files.
2008-07-14 13:46:31 +00:00
Tomas Frydrych
7a33510e0c 2008-07-14 Tomas Frydrych <tf@openedhand.com>
* clutter/clutter-stage.c:
	    (clutter_stage_hide_cursor):
	    Fixed C&P bug that made it impossible to show cursor once hidden.

	    Stripped trailing whitespace.
2008-07-14 08:49:22 +00:00
Matthew Allum
d5369aa9bf 2008-07-13 Matthew Allum <mallum@openedhand.com>
* clutter/x11/clutter-x11-texture-pixmap.c:
        Call XSync in unredirect X error trap (Thanks to Andy Wingo)
2008-07-13 22:54:19 +00:00
Tomas Frydrych
5f8dc01de3 2008-07-11 Tomas Frydrych <tf@openedhand.com>
* clutter/clutter-fixed.c:
	    Move G_IMPLEMENT_INLINES before all other #include statements (bug
	    #1038).
2008-07-11 10:36:07 +00:00
Tomas Frydrych
9b4daec78b 2008-07-11 Tomas Frydrych <tf@openedhand.com>
* clutter/clutter-fixed.c:
	    Changed #define G_IMPLEMENTS_INLINES to G_IMPLEMENT_INLINES (bug
	    #1038).
2008-07-11 10:12:05 +00:00
Matthew Allum
34329a1ffb 008-07-10 Matthew Allum <mallum@openedhand.com>
* clutter/cogl/gles/cogl-fbo.c:
        * clutter/cogl/gles/cogl-texture.c:
        Fix warnings with eglnative build
2008-07-10 16:19:09 +00:00
Matthew Allum
18e1dfb232 2008-07-10 Matthew Allum <mallum@openedhand.com>
* clutter/glx/clutter-glx-texture-pixmap.c:
        Assume TFP npots sized textures are always supported if TFP ext is!
        (Based on patch from James Ketrenos)
2008-07-10 00:12:23 +00:00
Matthew Allum
34f6defca9 2008-07-08 Matthew Allum <mallum@openedhand.com>
Bug 1011 - Fix TFP fallback mechanism (take 2)

        * clutter/glx/clutter-glx-texture-pixmap.c:
        * tests/test-pixmap.c:
        Slightly modified patch from Gwenole Beauchesne applied
       to better handle both falling back to non accelerated tfp
       and improvements to the test case.
2008-07-08 11:58:08 +00:00
Matthew Allum
0a1ad0342e 2008-07-07 Matthew Allum <mallum@openedhand.com>
Bug 1016 - Changing window-redirect-automatic property after
                   creating ClutterX11TexturePixmap doesn't work.

        * clutter/x11/clutter-x11-texture-pixmap.c:
        (clutter_x11_texture_pixmap_set_window):
        Sync up redirection prop correctly (Jason Tackaberry)
2008-07-07 22:28:13 +00:00
Matthew Allum
cc43d7a30d 2008-07-07 Matthew Allum <mallum@openedhand.com>
Bug 1019 - clutter-frame-source.h not included by clutter.h

        * clutter/clutter.h:
        Add missing header include.
2008-07-07 22:18:27 +00:00
Neil Roberts
34a7433c6f * clutter/clutter-actor.h: Remove redundant duplicate declaration
of clutter_actor_allocate_preferred_size
2008-07-05 15:56:03 +00:00
Emmanuele Bassi
8e4ed73af8 2008-07-05 Emmanuele Bassi <ebassi@openedhand.com>
Bug 1033 - Manually parsing command line options prevents
	           initializing clutter (Armin Burgmeier)

	* clutter/clutter-main.c:
	(post_parse_hook), (clutter_init_real): Set the is_initialized
	flag inside the real initialization function.
2008-07-05 12:39:37 +00:00
Emmanuele Bassi
4d51f3e7ea 2008-07-04 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-label.c: Properly document the behaviour
	of the :alignment property.
2008-07-04 12:27:03 +00:00
Neil Roberts
167475e422 Bug 1015 - Cloning unparented actors with FBOs doesn't work with
new layout code

	* clutter/clutter-texture.c (clutter_texture_new_from_actor): Now
	parents the source actor if it doesn't already have a parent so
	that it will get an allocation during layout.

	* tests/test-fbo.c: One of the tests tries to ensure that the
	ClutterTexture clone keeps the source actor alive by derefing
	it. However as actors have a floating reference then test-fbo
	doesn't have its own reference once the source is parented so
	unrefing just steals the parent's reference and causes
	badness. The test now claims the floating reference before cloning
	the source so that it can safely be unref'd later.
2008-07-04 10:44:18 +00:00
Emmanuele Bassi
00e327fbec 2008-07-03 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/x11/Makefile.am: Fix distchecking by adding the
	generated enum types files to DISTCLEANFILES.
2008-07-03 17:07:51 +00:00
Tomas Frydrych
f3d5d9d757 2008-07-03 Tomas Frydrych <tf@openedhand.com>
* clutter/clutter-fixed.h:
	    * clutter/clutter-fixed.c
	    Fixed inlining of clutter_qmulx() and clutter_qdivx() (bug 1022).
2008-07-03 12:30:36 +00:00
Neil Roberts
0ee57b37cd * clutter/clutter-shader.c (bind_glsl_shader): Fix a cut-and-paste
error which broke vertex shaders
2008-07-03 12:29:03 +00:00
Øyvind Kolås
60341ad959 * clutter/cogl/common/cogl-bitmap-pixbuf.c:
(_cogl_bitmap_from_file): removed debug g_printf that announces each
successful image load done by the internal image backend.
2008-07-03 09:49:06 +00:00
Neil Roberts
919efb5a6f * clutter/clutter-actor.c
(clutter_actor_get_abs_allocation_vertices): The initialization of
	the local stage pointer got moved away in revision 3081 so it was
	crashing if the function is called before the layout is run.
2008-07-02 16:15:30 +00:00
Emmanuele Bassi
9056e3ac4c 2008-07-02 Emmanuele Bassi <ebassi@openedhand.com>
* clutter/clutter-label.c:
	(clutter_label_create_layout_no_cache),
	(clutter_label_create_layout): Split the layout creation in two
	functions: one creating the layout, the other creating the layout
	and hitting the glyphs cache. The first one is for the offscren
	operations - like requesting the preferred size; the second one
	is for paint and allocation.
	
	(clutter_label_allocate): Try to aggressively cache the PangoLayout
	between allocations - to avoid recreating it even when the label
	just moved because of an animation. See bug #1010.
2008-07-02 14:36:35 +00:00
Øyvind Kolås
5829aa8210 * clutter/fruity/clutter-fruity.c: made the multi touch code more
robust. There are situations though where the device seems to stop
generating any touch events until all fingers have been lifted and
a new interaction session is started.
2008-07-02 13:44:53 +00:00
Neil Roberts
1001d1ffa1 * clutter/eglx/clutter-stage-egl.c (clutter_stage_egl_realize):
Use clutter_x11_has_event_retrieval() instead of
	!backend_x11->no_xevent_retrieval to reflect the changes to the
	GLX backend in revision 3078
2008-07-02 09:48:06 +00:00
Emmanuele Bassi
12fd095006 2008-07-02 Emmanuele Bassi <ebassi@openedhand.com>
Bug 1010 - ClutterLabel does not update the layout (Lee Jusung)

	* clutter/clutter-actor.c:
	(clutter_actor_queue_relayout): Remove some pointer dereferencing.
	
	* clutter/clutter-label.c:
	(clutter_label_allocate): Revert the change of r2883 and remove the
	layout width cache and force a recreation of the layout every time
	we receive an allocation.
2008-07-02 09:24:25 +00:00
Neil Roberts
cfd91cd0ef * clutter/clutter-actor.c (clutter_actor_get_transformed_sizeu):
This is now do-what-I-mean like clutter_actor_get_size so that if
	the allocation box is available it will use that, otherwise it
	will use the preferred size. clutter_actor_transform_vertices has
	been converted to clutter_actor_transform_and_project_box so that
	it can be used by both functions. Based on a patch by Emmanuele
	Bassi.
	(clutter_actor_get_abs_allocation_vertices)
	(clutter_actor_get_allocation_vertices): These two functions now
	force a relayout if the allocation box is not available.

	* tests/test-fbo.c: Fixed the shader to use texture2D instead of
	texture2DRect now that GL_EXT_texture_rectangle is no longer used.
2008-07-01 21:52:19 +00:00