1. 30 Nov, 2012 2 commits
  2. 25 Nov, 2012 1 commit
    • Benjamin Otte's avatar
      styleprovider: Change function prototype · 42dc0ea0
      Benjamin Otte authored
      Make _gtk_style_provider_private_get_color() return a GtkCssValue (a
      GtkCssColorValue to be exact) instead of GtkSymbolicColor.
      With this, the symbolic color usage inside GTK is minimized.
  3. 08 Nov, 2012 1 commit
  4. 28 Sep, 2012 1 commit
    • Benjamin Otte's avatar
      css: Huge refactoring to avoid computing wrong values · 1454ba15
      Benjamin Otte authored
      Here's the shortest description of the bug I can come up with:
      When computing values, we have 3 kinds of dependencies:
      (1) other properties ("currentColor" or em values)
      (2) inherited properties ("inherit")
      (3) generic things from the theme (@keyframes or @define-color)
      Previously, we passed the GtkStyleContext as an argument, because it
      provided these 3 things using:
      (1) _gtk_style_context_peek_property()
      (2) _gtk_style_context_peek_property(gtk_style_context_get_parent())
      (3) context->priv->cascade
      However, this makes it impossible to lookup values other than the ones
      accessible via _gtk_style_context_peek_property(). And this is exactly
      what we are doing in gtk_style_context_update_cache(). So when the cache
      updates encountered case (1), they were looking up the values from the
      wrong style data.
      So this large patch essentially does nothing but replace the
      context argument in all compute functions with new arguments for the 3
      cases above:
      (1) values
      (2) parent_values
      (3) provider
      We apparently have a lot of computing code.
  5. 17 Sep, 2012 2 commits
  6. 28 Aug, 2012 2 commits
  7. 17 Apr, 2012 9 commits
  8. 08 Mar, 2012 2 commits
    • Alexander Larsson's avatar
      Use GtkCssValue in symbolic color resolving · 616cc5b9
      Alexander Larsson authored
      We now store the symbolic colors as a GtkCssValue which means that
      we can reuse the color when resolving and storing the color in
      the computed values in the style context.
      Additionally we keep a last_resolved GtkCssValue cache in the
      GtkSymbolicColor, and if resolving the color returns the same as
      last time we reuse the old value. This further increases sharing
      of Css Values.
    • Alexander Larsson's avatar
      css: Use GtkCssValues instead of GValue in the css machinery · 7603e6e4
      Alexander Larsson authored
      Also, in places where we're computing a new CssValue based on an
      old one, make sure that if nothing changes we're returning a reference
      to the old one, rather than creating a new identical instance.
  9. 27 Feb, 2012 1 commit
  10. 02 Feb, 2012 1 commit
  11. 09 Jan, 2012 3 commits
  12. 17 Nov, 2011 1 commit
    • Alexander Larsson's avatar
      Add GtkStylePropertyContext and use it in when getting style properties · c09148ca
      Alexander Larsson authored
      At the toplevel we have _gtk_theming_engine_get, which lets us pass
      in a property context with (atm) the size to get the property for.
      Then there is a lot of plumbing to push this down into the lower
      layers of the style property code until finally hitting
      the property resolvers.
      I need this because I will be adding a property resolver for win32
      theme parts, and they render differently depending on the size
      (i.e. they don't scale linearly). The idea is that the code
      to get the background properties will pass in the final size
      and we will resolve the theme part specification to that particular
      If the old non-context calls are used we just hardcode a size
      of 100x100.
  13. 29 Jan, 2011 1 commit
    • Paolo Borelli's avatar
      Move the get_cursor_color in GtkStyleContext · 001697a2
      Paolo Borelli authored
      Move the private get_cursor_color method belongs to StyleContext. Change
      the api so that retrieving both primary and secondary color is possible.
      I left the method private for now, though it should probably be public
      as all the other getters.
  14. 23 Jan, 2011 1 commit