summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* x11: Check for initialized context when enabling ARGB visualsclutter-1.2Emmanuele Bassi2010-11-241-1/+1
| | | | | | | | | | Instead of using the backend singleton. This allows lazy initialization of Clutter. http://bugzilla.clutter-project.org/show_bug.cgi?id=2435 (cherry picked from commit 446107f19d59ab95c918e566b5d8efdb8c0841c8) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* cogl-texture-2d-sliced: Use the smallest possible wasteNeil Roberts2010-10-111-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | When picking a size for the last slice in a texture, Cogl would always pick the biggest power of two size that doesn't create too much waste and is less than or equal to the previous slice size. However this can end up creating a texture that is bigger than needed if there is a smaller power of two. For example, if the maximum waste is 127 (the current default) and we try to create a texture that is 257 pixels wide it will decide that the next power of two (512) is too much waste (255) so it will create the first slice at 256 pixels wide. Then we only have 1 pixel left to allocate but Cogl would pick the next smaller size that has a small enough waste which is 128. But of course 1 is already a power of two so that's redundantly oversized by 127. This patch fixes it so that whenever it finds a size that would be big enough, instead of using exactly that it picks the next power of two up from the size we need to fill. http://bugzilla.clutter-project.org/show_bug.cgi?id=2355 (cherry picked from commit 7e112472b5ad9deea9b0ad1fda47aa16199a780a)
* ClutterAnimator doesn't ref timeline properlyStephen Kennedy2010-09-301-5/+18
| | | | | | | | | | | | | | | | | | | | | | ClutterAnimator currently has a number of bugs related to its referencing of its internal timeline. 1) The default timeline created in _init is not unreffed (it appears the programmer has wrongly thought ClutterTimeline has a floating reference based on the use of g_object_ref_sink in _set_timeline) 2) The timeline and slave_timeline vars are unreffed in finalize instead of dispose 3) The signal handlers set up in _set_timeline are not disconnected when the animator is disposed http://bugzilla.clutter-project.org/show_bug.cgi?id=2347 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com> (cherry picked from commit 3fe10e0bb1a7d6d9ad1f28ab50d609d2a0af55fb) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* animator: fix removal of all keysØyvind Kolås2010-09-301-16/+7
| | | | | | | | | | | | When removing all keys in a ClutterAnimator, the hash table with object/property name pairs went out of sync. This change makes the animator always clear this hash table upon key-removal; and refreshing it if the animator's timeline is running. Fixes bug #2335 (cherry picked from commit 4640dad6afdce4469b64cef3fea9a426afcb0ce8) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* animator: Plug some leaksEmmanuele Bassi2010-09-301-13/+7
| | | | | | (cherry picked from commit 271e0d960486acea896389b05ba521d569c7c83a) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* animator: Remove redundant parenthesisEmmanuele Bassi2010-09-301-1/+1
| | | | | | (cherry picked from commit 306385c2eb6ea3e0df406edc34227ca8c2622b7d) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* animator: Improve the key value copyEmmanuele Bassi2010-09-301-13/+28
| | | | | | | | Use the same code used elsewhere in Clutter when dealing with values that can be copied or transformed. (cherry picked from commit 74301da8e7bbce31395871927fe8afd6e08bbfd9) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* cogl_texture_get_data() copies using wrong width size.Neil Roberts2010-09-271-1/+1
| | | | | | | | | | | For sliced 2D textures, _cogl_texture_2d_sliced_get_data() uses the bitmap width as the number of bytes to copy from an intermediate bitmap when a conversion is needed. This doesn't take into account the bpp so it wasn't copying enough data. Based on a patch by Brian Tarricone. http://bugzilla.clutter-project.org/show_bug.cgi?id=2125
* Post-release version bump to 1.2.15Emmanuele Bassi2010-09-241-2/+2
|
* Clutter 1.2.14 (stable)1.2.14Emmanuele Bassi2010-09-242-2/+26
|
* Remove false dependency on OpenGL for OpenGL ES builds.Alexandros Frantzis2010-09-241-3/+0
| | | | http://bugzilla.clutter-project.org/show_bug.cgi?id=2272
* Backport GLES 1.1 detection code from clutter 1.3.x.Alexandros Frantzis2010-09-241-34/+41
| | | | | | | Correctly detect various GLES v1.1 libraries (with or without additional EGL libraries). http://bugzilla.clutter-project.org/show_bug.cgi?id=2271
* keysyms: Update from masterEmmanuele Bassi2010-09-211-15/+190
| | | | Update the keysyms header from master.
* clutter-box-layout: Swap the default request modeNeil Roberts2010-09-201-3/+3
| | | | | | | | | | | | | | | | The request mode set by the box layout was previously width-for-height in a vertical layout and height-for-width in a horizontal layout which seems to be wrong. For example, if width-for-height is used in a vertical layout then the width request will come second with the for_height parameter set. However a vertical layout doesn't pass the for_height parameter on to its children so doing the requests in that order doesn't help. If the layout contains a ClutterText then both the width and height request for it will have -1 for the for_width and for_height parameters so the text would end up allocated too small. http://bugzilla.clutter-project.org/show_bug.cgi?id=2328 (cherry picked from commit 8f4d61e663770d6a24b75d77418a145eba7c104f)
* texture-async: Fix path fallback codeEmmanuele Bassi2010-09-091-3/+11
| | | | | And error out in case of load failure. (cherry picked from commit 00675f42aab932b2a2cb7d128d282625f681e449)
* gles/cogl-shader.c: Store the shader type in CoglShaderNeil Roberts2010-07-222-1/+2
| | | | | | | | | | | | Nothing was storing the shader type when a shader was created so it would get confused about whether it was a custom vertex or fragment shader. Also the 'type' member of CoglShader was a GLenum but the only place that read it was treating it as if it was CoglShaderType. This changes it be CoglShaderType. (cherry picked from commit ec26466cdce5b701af7c82bce4588cb6f2e3180c)
* Flush the journal before setting a user program in GLES2Neil Roberts2010-07-221-0/+6
| | | | | | Like the big GL backend, GLES2 needs to flush the journal before setting a user program because the current program is not logged in the journal.
* Fix test-shader for GLES2Neil Roberts2010-07-221-6/+6
| | | | | | | The tests can't rely on using the internal HAVE_* macros that are generated by configure.ac. It's better to use the public COGL_HAS_* macros from cogl-defines.h This was causing it to use the GL versions of the variable names.
* test-shader: Unref the ClutterShader after setting it on an actorNeil Roberts2010-07-221-0/+4
| | | | | | | Otherwise the test leaks the shader object and the underlying GLSL program. (cherry picked from commit 616eccdad63ce35d5ce59094cf026970b799cf09)
* Plug the leaking CoglProgram and CoglShaderNeil Roberts2010-07-224-0/+8
| | | | | | | _cogl_program_free and _cogl_shader_free never freed the struct their structs so it would end up leaking a little bit. (cherry picked from commit 87e77f9a22785b8b11f7cdb4dc82841aa34c6e83)
* test-shader: The tex_coord varying is now an array under GLES2Neil Roberts2010-07-221-2/+2
| | | | | | | | | | | Since the GLES2 wrapper grew support for multi-texturing, the tex_coord varying variable defined in the vertex shader is actually an array of texture coordinates so it ought to match in the fragment shader in test-shader. This seemed to work anyway under Mesa/Intel but under NVidia it does not so I don't think it's safe to assume that linking a non-array varying with an array will work. (cherry picked from commit a1c74209795c341dc89dbe2f6c3a91242a8c813c)
* cogl-material: Don't map the shininess value to [0,1]Neil Roberts2010-07-222-6/+7
| | | | | | | | | | | | | | | In OpenGL the 'shininess' lighting parameter is floating point value limited to the range 0.0→128.0. This number is used to affect the size of the specular highlight. Cogl materials used to only accept a number between 0.0 and 1.0 which then gets multiplied by 128.0 before sending to GL. I think the assumption was that this is just a weird GL quirk so we don't expose it. However the value is used as an exponent to raise the attenuation to a power so there is no conceptual limit to the value. This removes the mapping and changes some of the documentation. http://bugzilla.clutter-project.org/show_bug.cgi?id=2222
* Minor fix to the documentation for clutter_texture_get_sync_sizeNeil Roberts2010-07-221-1/+1
| | | | | | | | | The documentation was recursively referring to itself causing a stack overflow in the reader's brain. http://bugzilla.clutter-project.org/show_bug.cgi?id=2233 (cherry picked from commit 1dee65770a7eba85c899890e652d4cf32744c71a)
* Fixes build with GLX on Mac OS X.Nate Stedman2010-07-151-1/+1
| | | | | | | | | | Moves preprocessor #ifdef __linux_ above else statement, avoiding the lack of an else block if __linux__ is not defined. http://bugzilla.clutter-project.org/show_bug.cgi?id=2212 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com> (cherry picked from commit fff5558ad25d3a633657c2bd4558132b21dc8ab8)
* Post-release version bump to 1.2.13Emmanuele Bassi2010-07-141-2/+2
|
* Release 1.2.12 (stable)1.2.12Emmanuele Bassi2010-07-142-2/+40
|
* clutter-animation: Fix for using fixed:: from clutter_actor_animatevNeil Roberts2010-07-141-1/+1
| | | | | | | | | | | | | When using clutter_actor_animatev it would set a boolean whenever a property begins with "fixed::". However it would never clear the variable so it would end up marking all subsequent properties as fixed. http://bugzilla.openedhand.com/show_bug.cgi?id=2180 http://bugzilla.clutter-project.org/show_bug.cgi?id=2149 (cherry picked from commit 8512423f22995dced954b9b5c5e6481af83ba5a0)
* Change the Bugzilla link in the configure scriptEmmanuele Bassi2010-07-141-1/+1
| | | | | | Slightly edited when backporting from master: f60999becfc40af940eba23cd2dbdd8dd2455b1a
* doap: Update after the infrastructure changesEmmanuele Bassi2010-07-141-59/+5
| | | | | | (cherry picked from commit 4e5c84ebc5fba38afdf0593f830dc2ea08098a30) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* docs: Fix example code in BindingPoolElliot Smith2010-07-141-2/+3
| | | | | | | | | | | The code sample in the gtk-doc annotations for ClutterBindingPool shows the arguments in the wrong order. http://bugzilla.clutter-project.org/show_bug.cgi?id=2133 (cherry picked from commit 213cd30cebfb58df1298a13adf528755aad6cdfa) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* Improve clutter_text_get_chars docAlejandro Piñeiro2010-07-141-1/+1
| | | | | | | | | | Explicitly explain that end_pos is not included with the resulting string http://bugzilla.clutter-project.org/show_bug.cgi?id=2081 (cherry picked from commit d37dee8258ec2a10f5825694376cc27bc43b8f93) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* actor: Top-levels should always report a 255 opacityEmmanuele Bassi2010-07-141-0/+7
| | | | | | | | | | The paint opacity should always assume a fully opaque top-level at the end, otherwise the scene would be rendered fully transparent. http://bugzilla.clutter-project.org/show_bug.cgi?id=2050 (cherry picked from commit a950388bc68a0fbdb76bf83cc0673bdca2f1d1d5) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* actor: Ignore the NOP paint at 0 opacity for top-levelsEmmanuele Bassi2010-07-141-1/+3
| | | | | | | | | | | A top-level actor could still have 0 opacity (e.g. a Stage with the :use-alpha property set to TRUE), but we want its children to still be painted. http://bugzilla.clutter-project.org/show_bug.cgi?id=2050 (cherry picked from commit 42df1a150b8ecb49f02a5780b9f9c983221c97ea) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* test-conformance: Use -export-dynamic instead of -rdynamicNeil Roberts2010-07-141-1/+1
| | | | | | | | | | | | | The -rdynamic linker option is specific to ELF so it was breaking builds on systems with other object formats such as Windows and Solaris. This patch replaces that option with -export-dynamic which is a portable libtool option which should do the right thing on each platform. http://bugzilla.clutter-project.org/show_bug.cgi?id=1930 (cherry picked from commit fbeab378289a0e9f9470aa9f532003cf66529970) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* autogen.sh: Support NOCONFIGURE, like gnome-commonColin Walters2010-07-141-1/+3
| | | | | | (cherry picked from commit f64c66ede8c3edea31931bae4edcb4c10f53d93a) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* build: Exclude built sources from the distAlexandros Frantzis2010-07-141-4/+4
| | | | | | | | http://bugzilla.clutter-project.org/show_bug.cgi?id=2169 (cherry picked from commit 140f76abf44594dc6b004b381e3ec24b6ecdc208) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* osx: explicitly request depth and stencil buffer bitsRobert Bragg2010-07-141-0/+2
| | | | | | | | | | | | | | | This is a blind patch because I don't know enough about the osx backend and the osx backend probably doesn't even work these days anyway but since people have filed bugs specifically on OSX that imply they don't have a depth or stencil buffer this tries to fix that. Maybe someone will eventually pick up the osx backend again and verify if this helps. http://bugzilla.clutter-project.org/show_bug.cgi?id=1394 (cherry picked from commit 279e68d8d9a84356c83e32502c5bc5af5160da08) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* Add cogl_vertex_buffer_is_indices to the public headersNeil Roberts2010-07-142-0/+16
| | | | | | | | This function has always been defined in the shared library but it was missed from the public headers. (cherry picked from commit 0e839c37693339287232f0292283f92522fa3ca5) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* animator: fix removal of multiple keysØyvind Kolås2010-07-091-5/+6
| | | | When removing keys, sometimes a couple of keys would be remaining.
* animator: avoid walking off empty listØyvind Kolås2010-07-091-1/+1
| | | | | When removing the last key in a list, the last part of the for statement could cause dereferencing (NULL)->next and thus segfaulting.
* animator: fix issue of dropped frames towards end of animationsØyvind Kolås2010-07-091-3/+6
|
* animator: fix looping when doing cubic interpolationØyvind Kolås2010-07-091-2/+2
| | | | | When using interpolation and the last key is not at 1.0 a bouncing artifact could be observed after the keys.
* animator: only keys that are removed due to actors disappearing are inertØyvind Kolås2010-07-091-20/+38
|
* animator: refactoringØyvind Kolås2010-07-091-83/+84
| | | | renamed KeyAnimator to PropertyIter
* animator: retain ease-in/interpolation when changing first keyØyvind Kolås2010-07-091-1/+37
| | | | | | Duplicate the existing ease-in/interpolation mode for the property when removing, replacing the first key for a property or adding a new first key for a property.
* animator: fix crash when setting keys on running animatorØyvind Kolås2010-07-091-0/+4
| | | | | | When inserting or modifying keys of a running animator the internal iterators per property could go out of sync. Reinitializing the iterators if the timeline is running avoids this.
* cogl-vertex-buffer: Fix the #define for glDisableVertexAttribArrayNeil Roberts2010-07-061-1/+1
| | | | | | | | | glDisableVertexAttribArray was defined to glEnableVertexAttribArray so it would probably cause crashes if it was ever used. Presumably nothing is using these yet because the generic attributes are not yet tied to shader attributes in a predictable way. (cherry picked from commit ced7915ea1977bd9d9aa2a70f54f1f2f774ed567)
* event: Typos in event code could cause crashesChris Lord2010-06-292-2/+2
| | | | | | | A typo in clutter-event.c meant that the wrong struct location could be used for the input device of key events. Also, a typo in the X11 event code meant that key-presses would come from the pointer device (releases would still come from the keyboard device).
* clutter-event-win32: Emit multiple events for WM_MOUSEWHEEL MessagesNeil Roberts2010-06-251-1/+1
| | | | | | | | | | | | | | | | | | It's possible that a single WM_MOUSEWHEEL event can arrive with a scroll amount greater than WHEEL_DELTA. Previously it would accumulate these amounts but it would still only emit a single event per message. For example, if a message arrived that is worth two WHEEL_DELTAs then it would emit one event and leave scroll_pos as +WHEEL_DELTA. If the wheel is then scrolled in the opposite direction then wheel delta would end up as zero and the scroll event would get lost. This patch fixes it so that it always emits enough events to put scroll_pos back to less than WHEEL_DELTA. http://bugzilla.clutter-project.org/show_bug.cgi?id=2135 (cherry picked from commit 527ad961ab039c55f7cc0cc3066aedcf183db857)
* clutter-event-win32: Directly enqueue events in message_translateNeil Roberts2010-06-251-135/+162
| | | | | | | | | | | | | | | | | | | | | | | Previously the window procedure for the stage window would always create a ClutterEvent struct for every message and then pass that on to message_translate to fill in the details. message_translate could return FALSE to abandon the event. Instead of this, message_translate now creates and queues the event itself whenever it sees a message that could translate to an event. The function now returns void. This has a number of advantages: * It saves redundantly allocating events for messages that Clutter doesn't care about. * A single message can now easily be translated into multiple events. * There were some messages that were handled and did not fill in the event struct but did not cause the function to return FALSE. I think this would end up with a CLUTTER_NOTHING event being emitted. http://bugzilla.clutter-project.org/show_bug.cgi?id=2135 (cherry picked from commit 2c8d73f0472798896a6528359f82f8ea6f7589e2)