| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
There is a typo in the Animation:object property gtk-doc declaration.
(cherry picked from commit 8daa3035e563870fc614813fd6329c63542b129e)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 '<' 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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
| |
Use the silent rule QUIET_GEN like the rest of the GIR generation rules
in Clutter.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
Be explicit on how to deal with threads and Clutter.
(cherry picked from commit 17e3b526d569b6c8f33cd050acce107d5f1b057b)
Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
This commit avoids a critical warning introduced by commit
bc51b8ca47ac90e52ab6a27ff791ea97d53f4648
(cherry picked from commit 09c04d4c67ea8d3ebeb3ee5adfc3752562cae3cc)
Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 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)
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
| |
http://bugzilla.openedhand.com/show_bug.cgi?id=1840
Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
|
|
|
|
|
|
| |
http://bugzilla.openedhand.com/show_bug.cgi?id=1840
Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
The :position property is not notified when changed.
http://bugzilla.openedhand.com/show_bug.cgi?id=1830
(cherry picked from commit 2ff31dfbaaad3056265b05efe57eac63f8e3ce61)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
| |
The alpha channel is fully opaque at 255 and fully transparent at 0.
(cherry picked from commit bdf7499207d3fdba440228832445b71b9f64d300)
|
|
|
|
|
|
|
| |
The documentation of ClutterPathNode had a small typo and stated that
they use 2 pairs of coordinates.
(cherry picked from commit 9e03d9231696160ef7d4d98cf6c1d2f2214c7172)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Since commit b2f958a61 this variable is no longer used so it was
causing compiler warnings.
(cherry picked from commit 27ae9722dedb5bc25415c32326ffc7ba4ef1557d)
|
| |
|
| |
|
| |
|