1. 25 Feb, 2010 18 commits
    • Emmanuele Bassi's avatar
      docs: gtk-doc fixes for Animator · 63279f82
      Emmanuele Bassi authored
      Fix the syntax for:
        → enumeration values
        → return values
        → @since tags
      Also, fix the introspection annotations.
    • Emmanuele Bassi's avatar
      glx: Clean up sync-to-vblank mechanism discovery · 9db135c4
      Emmanuele Bassi authored
      The code has gotten really complicated to follow.
      As soon as we have a sync-to-vblank mechanism we should just bail out.
      Also, __GL_SYNC_TO_VBLANK (which is used by nVidia) should be assumed
      equivalent to a CLUTTER_VBLANK_GLX_SWAP.
    • Emmanuele Bassi's avatar
      docs: Add visual cue for Animator's key frames · 655cb966
      Emmanuele Bassi authored
      We should explain what a "key frame" is for ClutterAnimator, possibly
      with some sort of visual cue.
      This allows me to demonstrate my poor skills at using Inkscape, as well
      as my overall bad taste for graphics design.
    • Emmanuele Bassi's avatar
      script-parser: Remove top-level types list · d3d05261
      Emmanuele Bassi authored
      The top-level types list was comically out of date, and it was only
      determining whether the type we were constructing was initially unowned
      or a full object. We can safely replace it with a simple type check.
    • Emmanuele Bassi's avatar
      script-parser: Be more strict with "children" members · c0be19ef
      Emmanuele Bassi authored
      The "children" member for Container definitions should only reference
      actors, and warn about any other type.
    • Emmanuele Bassi's avatar
      animator: Add a :timeline property · c291d5a6
      Emmanuele Bassi authored
      It would be useful to be able to share the Timeline across different
      animator instances, or with different animation constructs. Also this
      allows sharing definitions of Timelines in ClutterScript.
    • Emmanuele Bassi's avatar
      animator: Remove NULL check in remove_key() · 64158253
      Emmanuele Bassi authored
      The arguments for remove_key() can be NULL, but there is an extraneous
      assertion that fails if they are. The pre-conditions should match the
      documentation, in this case.
    • Emmanuele Bassi's avatar
      box: Let pack_at() create the ChildMeta, if any · 4bc4c604
      Emmanuele Bassi authored
      A sub-class of ClutterBox might add ChildMeta support, and since
      pack_at() does not go through clutter_container_add_actor(), we
      need to manually call the create_child_meta() ourselves.
    • Emmanuele Bassi's avatar
      container: Expose create and destroy ChildMeta methods · 543e2d3f
      Emmanuele Bassi authored
      It is conceivable that Container implementations might add children
      outside of the Container::add() implementation - e.g. for packing at
      a specific index. Since the addition (and removal) might happen outside
      the common path we need to expose all the API that is implicitly called
      by ClutterContainer when adding and removing a child - namely the
      ChildMeta creation and destruction.
    • Neil Roberts's avatar
      test-cogl-blend-strings: Add some more tests · 31b5856d
      Neil Roberts authored
      The adds tests for the remaining layer combine functions, the 1 minus
      value operator and the TEXTURE_N source. Note however that Cogl
      currently fails when parsing a TEXTURE_N source so the test is
      commented out.
    • Neil Roberts's avatar
      gles2: Remove the special wrapper for glBindTexture · 14999bec
      Neil Roberts authored
      Previously the GLES2 backend needed a special wrapper for
      glBindTexture because it needed to know the internal GL format of the
      texture in order to correctly implement the GL_MODULATE texture env
      mode. When GL_MODULATE is used then the RGB values are taken from the
      previous texture layer rather than being fetched from the
      texture. However since the material API was added Cogl no longer uses
      the GL_MODULATE texture env mode but instead always uses GL_COMBINE.
      Compiling the GLES2 backend broke since the more-texture-backends
      branch merge because the cogl_get_internal_gl_format function was
      removed and there was one place in GLES2 specific code that was using
      this to bind the texture.
    • Neil Roberts's avatar
      cogl-gles2-wrapper: Add support for the layer combine operations · eba07020
      Neil Roberts authored
      The texture layer combine functions are now hard coded to GL_COMBINE
      instead of GL_MODULATE. The combine function can be customized with
      all the parameters of GL_COMBINE. A shader is generated to implement
      the given parameters.
      Currently it will try to generate code for the constant color but it
      will use a uniform which does not exist.
    • Neil Roberts's avatar
      gles2: Implement a wrapper for glGetIntegerv(GL_MAX_TEXTURE_UNITS) · 02b95239
      Neil Roberts authored
      The GLES2 backend for Cogl is failing to compile because
      GL_MAX_TEXTURE_UNITS is not defined. Let's define it and provide a
      wrapper which uses GL_MAX_TEXTURE_IMAGE_UNITS or
      COGL_GLES2_MAX_TEXTURE_UNITS, whichever is the smallest.
    • Øyvind Kolås's avatar
      animator: handle no initial key · 3bc0672f
      Øyvind Kolås authored
      Fixing the crasher reported in bug #1995.
    • Øyvind Kolås's avatar
      animator: added clutter_animator_compute_value · d2db5127
      Øyvind Kolås authored
      Allow querying the computed values of properties managed by a
    • Øyvind Kolås's avatar
      animator: removed bogus arg in keys interpolation accessor · e8d32fd1
      Øyvind Kolås authored
      A bogus ClutterInterpolation argument had been carried from
      clutter_animator_set_interpolation to clutter_animator_get_interpolation
      in copy and paste.
    • Emmanuele Bassi's avatar
      animation: Fix a typo · be8f53f2
      Emmanuele Bassi authored
      This will teach me to check before compiling a version-dependent branch
      that I'm actually using my jhbuild environment and not the system
    • Emmanuele Bassi's avatar
      Conditionally use G_VALUE_COLLECT_INIT() macro · 26e22b2e
      Emmanuele Bassi authored
      GLib 2.24 (but starting from the 2.23.2 unstable release) added a new
      macro for collecting GValues from a va_list.
      The newly added G_VALUE_COLLECT_INIT() macro should be used in place
      of initializing the GValue and calling G_VALUE_COLLECT(), and improves
      the collection performances by avoiding multiple checks, free and
      initialization calls.
  2. 24 Feb, 2010 15 commits
  3. 23 Feb, 2010 7 commits
    • Robert Bragg's avatar
      cogl debug: Adds glViewport call tracing · 1c65f2ee
      Robert Bragg authored
      To aid in the debugging of Clutter stage resize issues this adds a
      COGL_DEBUG=opengl option that will trace "some select OpenGL calls"
      (currently just glViewport calls)
    • Robert Bragg's avatar
      cogl debug: hint that all debugging paths are G_UNLIKELY · fa3830ff
      Robert Bragg authored
      Most Cogl debugging code conditions are marked as G_UNLIKELY with the
      intention of having the CPU branch prediction always assume the
      path is disabled so having debugging support in release binaries has
      negligible overhead.
      This patch simply fixes a few cases where we weren't using G_UNLIKELY.
    • Robert Bragg's avatar
      cogl debug: Support "minimum" level debugging by default · a58d6e8e
      Robert Bragg authored
      We basically want all Clutter applications out in the wild to at least
      have the basic set of COGL_DEBUG/--cogl-debug options available for
      investigating issues.
    • Robert Bragg's avatar
      cogl debug: Makes COGL_DEBUG=all|verbose|help more useful · 511e5ceb
      Robert Bragg authored
      COGL_DEBUG=all wasn't previously useful as there are several options
      that change the behaviour of Cogl and all together wouldn't help anyone
      debug anything.
      This patch makes it so COGL_DEBUG=all|verbose now only enables options
      that don't change the behaviour of Cogl, i.e. they only affect the
      amount of noise we'll print to a terminal.
      In addition to that this patch also improves the output from
      COGL_DEBUG=help so we now print a table of options including one liner
      descriptions of what each option enables.
    • Emmanuele Bassi's avatar
      box: Tweak the depth sorting function · 939e56e2
      Emmanuele Bassi authored
      By changing the depth sorting function we can achieve the same effect as
      ClutterGroup but without the costly append+sort.
    • Emmanuele Bassi's avatar
      cogl: Add deprecation annotation to CoglMaterial ref/unref · 95960ab9
      Emmanuele Bassi authored
      The G_GNUC_DEPRECATED annotation was missing from the material ref and
      unref functions.
    • Emmanuele Bassi's avatar
      debug: Split debugging notes from behavioural modifiers · a9941e94
      Emmanuele Bassi authored
      Some of the ClutterDebugFlags are not meant as a logging facility: they
      actually change Clutter's behaviour at run-time.
      It would be useful to have this distinction ratified, and thus split
      ClutterDebugFlags into two: one DebugFlags for logging facilities and
      another set of flags for behavioural changes.
      This split is warranted because:
        • it should be possible to do "CLUTTER_DEBUG=all" and only have
          log messages on the output
        • it should be possible to use behavioural modifiers even on a
          Clutter that has been compiled without debugging messages
      The commit adds two new debugging flags:
        ClutterPickDebugFlags - controlled by the CLUTTER_PICK environment
        ClutterPaintDebugFlags - controlled by the CLUTTER_PAINT environment
      The PickDebugFlags are:
      While the PaintDebugFlags is:
      The mechanism is equivalent to the CLUTTER_DEBUG environment variable,
      but it does not depend on the debug level selected when configuring and
      compiling Clutter. The picking and painting debugging flags are
      initialized at clutter_init() time.