summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* build: Fix introspection generation for 1.0.xclutter-1.0Damien Lespiau2010-06-012-3/+4
| | | | | | | | g-ir-scanner has changed when it comes to accepting parsing errors and it's not possible to generate the introspection data on 1.0.0 with recent-enough g-ir-scanner/g-ir-compiler. This patch makes Clutter 1.0.x generate introspection data again.
* docs: Fix the Animation:object propertyEmmanuele Bassi2010-02-101-1/+1
| | | | | There is a typo in the Animation:object property gtk-doc declaration. (cherry picked from commit 8daa3035e563870fc614813fd6329c63542b129e)
* x11 tfp: Plug a leakEmmanuele Bassi2010-02-031-9/+13
| | | | | | | | | | | | | Destroy the dummy XImage we create even on success. http://bugzilla.openedhand.com/show_bug.cgi?id=1918 Based on a patch by: Carlos Martín Nieto <carlos@cmartin.tk> Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com> (cherry picked from commit 64c1294cc26e034fbf8a9a05b4413f63b9cd882d) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* text: Store the markup attributes separatelyNeil Roberts2010-02-031-52/+82
| | | | | | | | | | | | | | | | | | | | | | | Previously when the markup property is set it would generate an attribute list from the markup and then merge it with the attributes from the attribute property and store it as the effective attributes. The markup attributes and the marked up text would then be forgotten. This breaks if the application then later changes the attributes property because it would try to regenerate the effective attributes from the markup text but the stored text no longer contains any markup. If the original markup text happened to contain entities like '&lt;' they would end up causing parse errors because they would be converted to the actual symbols. To fix this the attributes from the markup are now stored independently from the effective attributes. The effective attributes are now regenerated if either set of attributes changes right before a layout is created. http://bugzilla.openedhand.com/show_bug.cgi?id=1940 (cherry picked from commit 59105341bce12b2ec009ff953facbb7f7b10e85f) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* text: Free the Pango attribute list resourcesNeil Roberts2010-02-031-0/+7
| | | | | | | | The ClutterText owns three PangoAttrList resources which were not being unref'd. This adds the unref calls to the finalize method. (cherry picked from commit 32b456fc8c4e8743c1b2c32164f7e9f67188a60e) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* build: Silence the ClutterJson gir generationEmmanuele Bassi2010-01-221-1/+3
| | | | | Use the silent rule QUIET_GEN like the rest of the GIR generation rules in Clutter.
* master clock: Improve the timeline advancement protectionEmmanuele Bassi2010-01-221-10/+25
| | | | | | | | | | | | | | | | | | | | | | | The commit 1c69c61745ed510f0b6ab16cb963ca01994cb9fc which improved the protection against timeline removals during the master clock advancement was only doing half the job - and actually broke the chaining of animations inside the ::completed signal. We cannot simply take a reference on the timelines and still use the list held by the master clock because the do_tick() might result in the creation of a new timeline, which gets added at the end of the list with no reference increase and thus gets disposed at the end of the iteration. We also cannot steal the master clock timelines list because a timeline might be removed as the direct result of do_tick() and remove_timeline() would not find the timeline, failing and leaving a dangling pointer behind. For this reason we copy the list of timelines out of the one that the Master Clock holds, take a reference on each timeline, advance them all, release the reference and free the list. (cherry-picked from commit a545f66a5c34b66d1a31387105d114ca3edd3a46)
* Post-release bump to 1.0.11Emmanuele Bassi2010-01-111-2/+2
|
* Release 1.0.101.0.10Emmanuele Bassi2010-01-111-2/+2
|
* Update the NEWS for 1.0.10Emmanuele Bassi2010-01-111-0/+31
|
* Disable g_set_prgname()Emmanuele Bassi2010-01-111-0/+4
| | | | | | | | | | Apparently, calling g_set_prgname() multiple times is not allowed anymore, and hence clutter_init_* calls should not do that. Though this is really GLib's fault - and a massive nuisance for us - we should prolly comply to avoid the test suite dying on us. (cherry picked from commit 8d40cb947031f90a7b8cf459720278c6a6fe295d) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* Covert stb_image.c to Unix formatEmmanuele Bassi2010-01-111-3772/+3772
| | | | | | | | The file is still in DOS format (CRLF instead of LF) and this confuses the hell out of some versions of Git. (cherry picked from commit 8b59573190907da97c2af5a5be2e563fc66f8d51) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* master-clock: Take a reference before advancing timelinesEmmanuele Bassi2010-01-111-0/+7
| | | | | | | | | | | | | | | A timeline advancement might cause another timeline to be destroyed, which will likely lead to a segmentation fault. Before advancing the timelines we should take a reference on them - just like we do for the stages before doing event processing. This will prevent dispose() from running until the end of the advancement. http://bugzilla.openedhand.com/show_bug.cgi?id=1854 (cherry picked from commit 1c69c61745ed510f0b6ab16cb963ca01994cb9fc) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* x11: Emulate XKB's detectable key auto-repeatEmmanuele Bassi2010-01-111-0/+26
| | | | | | | | | | | | | | | Old-style X11 terminals require that even modern X11 send KeyPress and KeyRelease pairs when auto-repeating. For this reason modern(-ish) API like XKB has a way to detect auto-repeat and do a single KeyRelease at the end of a KeyPress sequence. The newly added check emulates XKB's detectable auto-repeat by peeking the next event after a KeyRelease and checking if it's a KeyPress for the same key and timestamp - and then ignoring the KeyRelease if it matches. (cherry picked from commit 86ce92eec14aa1aaf7c9ab14a520b66690488213) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* docs: Document Clutter's threading modelEmmanuele Bassi2010-01-111-0/+56
| | | | | | | Be explicit on how to deal with threads and Clutter. (cherry picked from commit 17e3b526d569b6c8f33cd050acce107d5f1b057b) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* Pass the interned string value to the binding callbackChristian Persch2010-01-111-1/+1
| | | | | | | | | http://bugzilla.openedhand.com/show_bug.cgi?id=1891 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com> (cherry picked from commit 70aeb1c64216d75ba63f1cbae1c824b69305bd73) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* text: Add a NULL preedit string checkEmmanuele Bassi2010-01-111-1/+3
| | | | | | | | This commit avoids a critical warning introduced by commit bc51b8ca47ac90e52ab6a27ff791ea97d53f4648 (cherry picked from commit 09c04d4c67ea8d3ebeb3ee5adfc3752562cae3cc) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* Fix cursor position in preedit statusRaymond Liu2010-01-111-2/+12
| | | | | | | | | http://bugzilla.openedhand.com/show_bug.cgi?id=1871 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com> (cherry picked from commit bc51b8ca47ac90e52ab6a27ff791ea97d53f4648) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* osx: CGBitmapContextCreate can't make 24bpp, alphaless offscreen pixmapsTim Horton2010-01-111-15/+3
| | | | | | | | | | | | | | | | | | | | | | While loading a JPEG from disk (with clutter_texture_new_from_file), I got the following: <Error>: CGBitmapContextCreate: unsupported parameter combination: 8 integer bits/component; 24 bits/pixel; 3-component colorspace; kCGImageAlphaNone; 3072 bytes/row. <Error>: CGContextDrawImage: invalid context Looking around, I found that CGBitmapContextCreate can't make 24bpp offscreen pixmaps without an alpha channel... This fixes the bug, and seems to not break other things... http://bugzilla.openedhand.com/show_bug.cgi?id=1159 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com> (cherry picked from commit fcd8237ac5f5dc7bc485b8b5726824129215beea) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* color: Fix HLS-to-RGB conversionEmmanuele Bassi2010-01-111-3/+5
| | | | | | | | | | | | Apparently, on 64bit systems the floating point noise is enough to screw up the float-to-int truncation. The solution is to round up by 0.5 and then use floorf(). This gives predictable and correct results on both 32bit and 64bit systems. (cherry picked from commit c387513a5fd5293cb8cf60e9c1334ceeff905852) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* texture: Error handling fixEmmanuele Bassi2010-01-111-3/+9
| | | | | | | | | | | | | When cogl_texture_new_from_data() fails in clutter_texture_set_from_data() and no GError is provided, the clutter app will segfault when dereferencing the GError ** and emitting LOAD_FINISHED signal. Based on a patch by: Haakon Sporsheim <haakon.sporsheim@gmail.com> http://bugzilla.openedhand.com/show_bug.cgi?id=1806 (cherry picked from commit 81c8cf3e6d839b13e106ab346feaccf1f2f9d3fd) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* actor: Show actor name or type in the state checks warningsEmmanuele Bassi2010-01-111-22/+47
| | | | | | | | | | When showing a warning in the state checks we perform to verify that the invariants are maintained when showing, mapping and realizing, we should also print out the name of the actor failing the checks. If the actor has no name, the GType name should be used as a fallback. (cherry picked from commit 7de47e74bda68c5d4dde82f2cbba6782fcf69d27) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* clone: Set :source as CONSTRUCTEmmanuele Bassi2010-01-111-1/+1
| | | | | | | | The :source property for ClutterClone is a constructor property, but it most definitely is not a constructor-only one. (cherry picked from commit 8727c3127cc049bf22e3b7cb89041b104ae4fea7) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* behaviour: Notify changes of the :alpha propertyEmmanuele Bassi2010-01-111-5/+7
| | | | | | | | The set_alpha() setter of ClutterBehaviour is not emitting notifications for the alpha property. (cherry picked from commit ef8ae7d72f752e10552e254c1ff9e76d19430aac) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* Force a relayout when showing an actorOwen W. Taylor2010-01-111-0/+9
| | | | | | | | | | | | | | | | When an actor is hidden, the parent actor is not required to size request or allocate it. (ClutterGroup does, but, for example, NbtkBoxLayout doesn't.) This means that the needs_width_request/needs_height_request/needs_allocate can be stale when we go to show it again - they are set for the actor but not the parent. Explicitly setting them to FALSE avoids clutter_actor_relayout() improperly short-circuiting. http://bugzilla.openedhand.com/show_bug.cgi?id=1831 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com> (cherry picked from commit c13701052497b4cdb009f95ad8ccce9f4a7d825e)
* animation: Keep a weak reference on actorsEmmanuele Bassi2010-01-111-0/+13
| | | | | | | | | | | | | Actors, unlike objects, can effectively go away whilst being animated - usually because of an explicit destoy(). The Animation created by clutter_actor_animate() and friends should keep a weak reference on the actor and eventually get rid of the animation itself in case the actor goes away whilst being animated. (cherry picked from commit 328ce370e7a7f155f63ee8206e8b6cd4e66a6c94) Signed-off-by: Thomas Wood <thomas.wood@intel.com>
* [ClutterGroup] Don't take into account the left edges when calculating the sizeNeil Roberts2009-10-271-96/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ClutterGroup previously calculated the size as the distance from the left edge of the leftmost child to the right edge of the rightmost child except if there were any chidren left of the origin then the left edge would be zero. However the group is always allocated its size relative to its origin so if all of the children are to the right of the origin then the preferred size would not be large enough to reach the rightmost child. origin ┼──────────┐ │Group │ │ ┌────────┼─┐ │ │Child │ │ │ │ │ │ └─┼────────┘ │ │ │ └──────────┘ group size ╟──────────╢ This patch makes it so the size is always just the rightmost edge. origin ┼────────────┐ │Group │ │ ┌──────────┤ │ │Child │ │ │ │ │ │ │ │ │ │ └─┴──────────┘ group size ╟────────────╢ Fixes bug: http://bugzilla.openedhand.com/show_bug.cgi?id=1825 (cherry picked from commit 40222e891bec62e4e7187a3e66bdf7866a60bd38)
* [cogl_polygon] Enable COGL_ENABLE_BLEND when use_color is setNeil Roberts2009-10-271-1/+1
| | | | | | | | Otherwise you can't use the alpha channel of the vertex colors unless the material has a texture with alpha or the material's color has alpha less than 255. (cherry picked from commit f8e6727e74c80b80bba3ccb9201e1afd23349c35)
* Use correct node type for json_object_set_object_memberColin Walters2009-10-211-1/+1
| | | | | | http://bugzilla.openedhand.com/show_bug.cgi?id=1840 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* Handle formatting nodes of type doubleColin Walters2009-10-211-0/+4
| | | | | | http://bugzilla.openedhand.com/show_bug.cgi?id=1840 Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
* text: Invalidate caches and sizes in set_text_internal()Emmanuele Bassi2009-10-201-8/+4
| | | | | | | | | | | | The change in commit 3bbc96e17e5a03ba931c86a5cd2a0ecaa2a3b77b moved the :text property setter to use set_text_internal(); this function does not invalidate the Layout cache and does not queue a relayout, thus breaking the behaviour of ClutterText when setting the contents of the actor using the property. http://bugzilla.openedhand.com/show_bug.cgi?id=1851 (cherry picked from commit 571df43b6d2348fd4db4b0275c8ed55e760ab353)
* Post-release bump to 1.0.9Emmanuele Bassi2009-10-191-2/+2
|
* release: 1.0.81.0.8Emmanuele Bassi2009-10-192-2/+31
|
* text: Notify :position when it changesEmmanuele Bassi2009-10-191-0/+15
| | | | | | | | The :position property is not notified when changed. http://bugzilla.openedhand.com/show_bug.cgi?id=1830 (cherry picked from commit 2ff31dfbaaad3056265b05efe57eac63f8e3ce61)
* [text] Add pre-edit string to ClutterTextEmmanuele Bassi2009-10-194-34/+364
| | | | | | | | | | | | | | Input Methods require to be able to set a "pre-edit string", that is a string that it's just displayed into the Text actor without being committed to the actor's buffer. The string might require custom Pango attributes, and an update of the cursor position. Cherry picked from master: 28837283877c11f26565d79e6bcd4b171203a9b0 6f43f4b805387e0cac054d7b002634da3b00b106 bc424fb56c3a75a822b22c0e5b284b5775f76abe 473f7ee31ebd6d52126978ba4e155a3bebc4cac1
* text: Make the :text property not set the :use-markup oneEmmanuele Bassi2009-10-191-139/+144
| | | | | | | | | | | | | | | | | | | | | Currently, setting the :text property has the side-effect of setting the :use-markup property to FALSE. This prevents constructing a Text actor, or setting its properties, like: g_object_set (text, "use-markup", TRUE, "text", some_string, NULL); as the ordering becomes important. Unfortunately, the ordering of the properties cannot be enforced with ClutterScript or with language bindings. The documentation of the clutter_text_set_text() method should be expanded to properly specify that the set_text() method will change the :use-markup property to FALSE as a side effect. (cherry picked from commit 3bbc96e17e5a03ba931c86a5cd2a0ecaa2a3b77b)
* color: Measure the string just once when parsingEmmanuele Bassi2009-10-191-18/+22
| | | | | | | Instead of measuring the color hexadecimal string for each case, just measure it once and then use a switch() to go to the right case. (cherry picked from commit 4d481e03f3534cb703a276cd430056d3ec27fcb0)
* [color] allow alpha to be omitted when converting to color from stringThomas Wood2009-10-192-0/+50
| | | | | | | | | | Parse #rgb and #rrggbb in addition to forms with the alpha channel specified. This allows conversion of colour strings from documents such as CSS where the alpha channel is not specified when using '#' notation. This patch also adds the relevant conformance test. (cherry picked from commit c7d50083ec1d1209dd8653bc30ba4f3bec09e976)
* [color] add a note to the documentation to specify the values of the alphaThomas Wood2009-10-191-0/+2
| | | | | | The alpha channel is fully opaque at 255 and fully transparent at 0. (cherry picked from commit bdf7499207d3fdba440228832445b71b9f64d300)
* [path] MOVE_TO and LINE_TO only use a pair of coordinatesDamien Lespiau2009-10-191-2/+2
| | | | | | | The documentation of ClutterPathNode had a small typo and stated that they use 2 pairs of coordinates. (cherry picked from commit 9e03d9231696160ef7d4d98cf6c1d2f2214c7172)
* Clarify the ID pool warningsEmmanuele Bassi2009-10-191-2/+9
| | | | | | | | | | | | | | | | Instead of having an assertion failure with a message of dubious usefulness, we should probably use a more verbose warning explaining what is the problem and what might be the cause. We should also warn if the glReadPixels happens to generate an ID that is within the range of the ID array but no longer points to an existing actor. Cherry picked from master: ad83caaed16a36aea0fafd4ed87cc283c30c413b Emmanuele Bassi a4ff4d37a40b60ce7f7029c6fe12181c0e1e89e5 Neil Roberts 13ac1fe75bec418f4e37e04540e6d16af55413f5 Neil Roberts
* [docs] Update the "Subclassing Actor" chapterEmmanuele Bassi2009-10-191-62/+107
| | | | | | | | The chapter on how to subclass ClutterActor inside the API reference for Clutter is still using ClutterUnit and referencing to concepts that have been changed since the document was written. (cherry picked from commit 6ddffac93561b5d3aa6226ee54bd8a5e1fcedeb5)
* [cogl-debug] avoid warnings when using COGL_NOTE with unbraced else clausesRobert Bragg2009-10-191-1/+1
| | | | | | | | | | | | | | When not building a debug build the compiler was warning about empty else clauses with no braces due to code like: if (blah) do_foo(); else COGL_NOTE (DRAW, "a-wibble"); This simply ensures that even for non debug builds COGL_NOTE will expand to a single statement. (cherry picked from commit ab76d64df02bc03f935e9cdf5a0a29c6ffeace72)
* [cogl-vertex-buffer] fix n_components validation for GL's builtin attributesRobert Bragg2009-10-191-4/+15
| | | | | | | | | | | | | | | glVertexPointer expects positions with 2, 3 or 4 components, glColorPointer expects colors with 3 or 4 components and glNormalPointer expects normals with three components so when adding vertex buffer atributes with the names "gl_Vertex", "gl_Color" or "gl_Normal" we assert these constraints and print an explanation to the developer if not met. This also fixes the previosly incorrect constraint that gl_Normal attributes must have n_components == 1; thanks to Cat Sidhe for reporting this: Bug: http://bugzilla.openedhand.com/show_bug.cgi?id=1819 (cherry picked from commit 904c495c6d3c59b34148c9a4834e4803b488997b)
* Add a few annotations on Cogl primitives functionsDamien Lespiau2009-10-192-11/+12
| | | | | | | | | By default, float * is considered as an out argument by gobject introspection which is wrong for quite a few Cogl symbols. Start adding annotations to fix that for the ones in the "Primitives" gtk-doc section. (cherry picked from commit 6e50e26c86af20597b118f5a71d04f70b173f733)
* [actor] Unset the IN_DESTRUCTION flag when leaving ::destroy()Damien Lespiau2009-10-121-1/+1
| | | | | | | | The IN_DESTRUCTION flag is set around the unrealization and disposal of the actor in clutter_actor_destroy() but is never unset (it's set twice instead). Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
* [container] Remove the unused 'object' variable in destroy_child_metaNeil Roberts2009-09-221-1/+0
| | | | | | Since commit b2f958a61 this variable is no longer used so it was causing compiler warnings. (cherry picked from commit 27ae9722dedb5bc25415c32326ffc7ba4ef1557d)
* Post-release bump to 1.0.7Robert Bragg2009-09-221-2/+2
|
* [release] 1.0.61.0.6Robert Bragg2009-09-221-2/+2
|
* Update the NEWSRobert Bragg2009-09-221-0/+52
|