]> Pileus Git - ~andy/gtk/log
~andy/gtk
12 years agocomputedvalues: Split out a function
Benjamin Otte [Tue, 10 Apr 2012 11:25:56 +0000 (13:25 +0200)]
computedvalues: Split out a function

12 years agostylecontext: Don't queue a resize when none is needed
Benjamin Otte [Mon, 9 Apr 2012 19:15:22 +0000 (21:15 +0200)]
stylecontext: Don't queue a resize when none is needed

12 years agocontainer: Split out a function
Benjamin Otte [Mon, 9 Apr 2012 19:04:47 +0000 (21:04 +0200)]
container: Split out a function

12 years agocontainer: Remove duplicated flag
Benjamin Otte [Mon, 9 Apr 2012 18:53:37 +0000 (20:53 +0200)]
container: Remove duplicated flag

GtkContainer::need_resize and GtkWidget::alloc_needed are the same
thing.

12 years agocontainer: Simplify code
Benjamin Otte [Mon, 9 Apr 2012 18:28:45 +0000 (20:28 +0200)]
container: Simplify code

This code should not have any functional changes and just be simpler.

12 years agostylecontext: Listen to the new changed signal
Benjamin Otte [Sun, 8 Apr 2012 15:34:17 +0000 (17:34 +0200)]
stylecontext: Listen to the new changed signal

12 years agostyleprovider: Make all implementors emit the new signal
Benjamin Otte [Sun, 8 Apr 2012 15:35:24 +0000 (17:35 +0200)]
styleprovider: Make all implementors emit the new signal

... and listen to it in the cases where they use other style providers.

12 years agostyleprovider: Add a private signal for when things change
Benjamin Otte [Sun, 8 Apr 2012 15:33:22 +0000 (17:33 +0200)]
styleprovider: Add a private signal for when things change

12 years agostylecontext: Pass time to style_context_validate()
Benjamin Otte [Sat, 7 Apr 2012 20:44:00 +0000 (22:44 +0200)]
stylecontext: Pass time to style_context_validate()

This way, we can ensure that every style context uses the same timestamp
for whatever they do.

12 years agostylecontext: Compute if things changed before invalidating
Benjamin Otte [Sat, 7 Apr 2012 16:09:17 +0000 (18:09 +0200)]
stylecontext: Compute if things changed before invalidating

This is only a small performance boost by itself, but it's necessary
for animations, so we need it.

Benchmark numbers for my Glade benchmark for interested people:
        GTK 3.4.0    last commit  this commit
Raleigh
  real  0m41.879s    0m10.176s    0m9.900s
  user  0m41.394s    0m9.895s     0m9.628s
  sys   0m0.111s     0m0.096s     0m0.102s

Adwaita                                        (*)
  real  0m51.049s    0m13.432s    0m14.848s    0m12.253s
  user  0m50.487s    0m13.034s    0m13.218s    0m11.927s
  sys   0m0.117s     0m0.151s     0m0.147s     0m0.107s

Ambiance (patched to not use private GTK APIs)
  real  0m52.167s    0m13.115s    0m13.117s    0m12.944s
  user  0m51.576s    0m12.739s    0m12.768s    0m12.651s
  sys   0m0.119s     0m0.137s     0m0.136s     0m0.118s

(*) Adwaita and unico currently use custom properties, and
_gtk_css_value_compare() for custom properties always returns FALSE,
which makes this optimization never trigger. So I modified
_gtk_css_value_compare() to return TRUE for these properties instead and
reran the benchmark. Those are the numbers.

12 years agoreftests: Fix reftests for recent changes
Benjamin Otte [Sat, 7 Apr 2012 14:39:17 +0000 (16:39 +0200)]
reftests: Fix reftests for recent changes

12 years agowidget: Don't cache widget paths all the time
Benjamin Otte [Sat, 7 Apr 2012 12:15:35 +0000 (14:15 +0200)]
widget: Don't cache widget paths all the time

Add an internal API that allows GtkStyleContext to create a widget path
for the widget and with that bypassing gtk_widget_get_path() and that
  function caching the path.

12 years agostylecontext: Remove theming_engine cache variable
Benjamin Otte [Sat, 7 Apr 2012 09:08:23 +0000 (11:08 +0200)]
stylecontext: Remove theming_engine cache variable

Instead, look up the variable upon use. This is more correct (for when
the engine changes due to save/restore() shenanigans.

And it removes code that doesn't use the standard code paths.

12 years agostylecontext: Split out a function
Benjamin Otte [Sat, 7 Apr 2012 08:53:43 +0000 (10:53 +0200)]
stylecontext: Split out a function

12 years agostyleproperty: Remove equal_func vfunc
Benjamin Otte [Sat, 7 Apr 2012 08:39:51 +0000 (10:39 +0200)]
styleproperty: Remove equal_func vfunc

Equality tests are done with _gtk_css_value_equal(). There is no need to
do it per-property, equal values will still be equal.

This essentially reverts 24f5d54329e028347bd76af42e86ed190c1229a2 and
92c7a7171e1240b6d961ee5b6f9ab6b596e98904.

12 years agocssvalue: Split out old value handling to new typed value
Benjamin Otte [Sat, 7 Apr 2012 05:40:36 +0000 (07:40 +0200)]
cssvalue: Split out old value handling to new typed value

... and Make this new value be a real GValue, as we don't need to save
performance for these anymore (it's just used for custom properties).
And I'd rather have code work for all values then be optimized for no
reason.

12 years agothemingengine: Fix outline-width
Benjamin Otte [Sat, 7 Apr 2012 05:40:19 +0000 (07:40 +0200)]
themingengine: Fix outline-width

It's a number, not an int.

12 years agoshorthand: Fix border query functions
Benjamin Otte [Sat, 7 Apr 2012 05:38:35 +0000 (07:38 +0200)]
shorthand: Fix border query functions

We haven't been using ints there for a while, I wonder why that never
blew up...

12 years agosymboliccolor: Treat it as a CssValue
Benjamin Otte [Sat, 7 Apr 2012 04:18:03 +0000 (06:18 +0200)]
symboliccolor: Treat it as a CssValue

.. now that it is one.

12 years agotests: Add a test ensuring currentColor is parsed everywhere
Benjamin Otte [Thu, 5 Apr 2012 20:29:07 +0000 (22:29 +0200)]
tests: Add a test ensuring currentColor is parsed everywhere

12 years agocssprovider: Add an empty line when printing
Benjamin Otte [Thu, 5 Apr 2012 20:28:21 +0000 (22:28 +0200)]
cssprovider: Add an empty line when printing

... between the @define-color statements and the rules.

12 years agosymboliccolor: Parse 'currentColor' everywhere
Benjamin Otte [Thu, 5 Apr 2012 20:22:52 +0000 (22:22 +0200)]
symboliccolor: Parse 'currentColor' everywhere

12 years agosymboliccolor: Pass the current color to the resolve function
Benjamin Otte [Thu, 5 Apr 2012 20:12:37 +0000 (22:12 +0200)]
symboliccolor: Pass the current color to the resolve function

This way, we can resolve things like
  mix (currentColor, &otherColor);
and therefore parse currentColor as a regular color.

12 years agocssparser: Move symbolic color parser to gtksymboliccolor.c
Benjamin Otte [Thu, 5 Apr 2012 19:09:35 +0000 (21:09 +0200)]
cssparser: Move symbolic color parser to gtksymboliccolor.c

12 years agosymboliccolor: Turn this into a GtkCssValue
Benjamin Otte [Thu, 5 Apr 2012 18:55:29 +0000 (20:55 +0200)]
symboliccolor: Turn this into a GtkCssValue

12 years agocss: Add a shorthand 'transition' property
Benjamin Otte [Wed, 4 Apr 2012 20:33:27 +0000 (22:33 +0200)]
css: Add a shorthand 'transition' property

12 years agoshorthand: Add ',' to value_is_done_parsing()
Benjamin Otte [Wed, 4 Apr 2012 17:02:18 +0000 (19:02 +0200)]
shorthand: Add ',' to value_is_done_parsing()

12 years agocss: Remove old animation code
Benjamin Otte [Wed, 4 Apr 2012 16:55:51 +0000 (18:55 +0200)]
css: Remove old animation code

Deprecate public API where appropriate and make it no-ops.
Remove all calls to it.
Get rid of the 'transition' css property.

For now, this means spinners don't animate anymore.

12 years agocss: Remove GtkCssNumber
Benjamin Otte [Wed, 4 Apr 2012 16:25:43 +0000 (18:25 +0200)]
css: Remove GtkCssNumber

It's completely replaced by GtkCssNumberValue now.

12 years agolinear-gradient: Convert from GtkCssNumber to GtkCssValue
Benjamin Otte [Wed, 4 Apr 2012 16:23:49 +0000 (18:23 +0200)]
linear-gradient: Convert from GtkCssNumber to GtkCssValue

12 years agocssvalue: Convert border-image-width to border value
Benjamin Otte [Wed, 4 Apr 2012 15:42:45 +0000 (17:42 +0200)]
cssvalue: Convert border-image-width to border value

12 years agocssvalue: Add a border value
Benjamin Otte [Wed, 4 Apr 2012 14:15:41 +0000 (16:15 +0200)]
cssvalue: Add a border value

.. and parse border-image-slice with it.

12 years agocssvalue: Add a cssvalue for background-size
Benjamin Otte [Wed, 4 Apr 2012 10:39:55 +0000 (12:39 +0200)]
cssvalue: Add a cssvalue for background-size

12 years agocssvalue: Add a custom value for repeats
Benjamin Otte [Wed, 4 Apr 2012 09:44:57 +0000 (11:44 +0200)]
cssvalue: Add a custom value for repeats

In particular, that's background-repeat and border-image-repeat.

Also, fix up the border-image shorthand to allow any order.

12 years agocssvalue: Add a value for background-position
Benjamin Otte [Tue, 3 Apr 2012 20:21:16 +0000 (22:21 +0200)]
cssvalue: Add a value for background-position

12 years agocssvalue: Add a css value for engines
Benjamin Otte [Tue, 3 Apr 2012 19:26:34 +0000 (21:26 +0200)]
cssvalue: Add a css value for engines

12 years agocssstyleproperty: Convert binding sets
Benjamin Otte [Tue, 3 Apr 2012 17:11:41 +0000 (19:11 +0200)]
cssstyleproperty: Convert binding sets

Instead of keeping a custom GPtrArray, keep it as a GtkCssArrayValue of
GtkCssStringValue. This way, we gain equality comparisons and print
functions for free.

12 years agocssvalue: Add a value for border-radius corner properties
Benjamin Otte [Tue, 3 Apr 2012 16:39:01 +0000 (18:39 +0200)]
cssvalue: Add a value for border-radius corner properties

... and convert those properties to this value.

12 years agocss: Make outline-offset a number property
Benjamin Otte [Tue, 3 Apr 2012 14:57:44 +0000 (16:57 +0200)]
css: Make outline-offset a number property

12 years agoshadow: Add equal and transition support
Benjamin Otte [Tue, 3 Apr 2012 13:33:00 +0000 (15:33 +0200)]
shadow: Add equal and transition support

... and enable transitions for the shadow properties.

12 years agocssvalue: Add GtkCssShadowsValue
Benjamin Otte [Tue, 3 Apr 2012 13:15:24 +0000 (15:15 +0200)]
cssvalue: Add GtkCssShadowsValue

This is necessary because shadows get treated differently from other
lists when transitioning.

12 years agotests: Add a parsing test for shadows
Benjamin Otte [Tue, 3 Apr 2012 11:30:21 +0000 (13:30 +0200)]
tests: Add a parsing test for shadows

12 years agoshadow: Rewrite to store contents as values
Benjamin Otte [Tue, 3 Apr 2012 11:29:29 +0000 (13:29 +0200)]
shadow: Rewrite to store contents as values

12 years agoshadow: Make color a GtkCssValue
Benjamin Otte [Tue, 3 Apr 2012 10:07:53 +0000 (12:07 +0200)]
shadow: Make color a GtkCssValue

12 years agocssvalue: Make GtkCssShadowValue only hold one shadow
Benjamin Otte [Tue, 3 Apr 2012 09:49:46 +0000 (11:49 +0200)]
cssvalue: Make GtkCssShadowValue only hold one shadow

All the properties now are a GtkCssArrayValue of GtkCssSadowValue.
GtkCssArrayValue already does everything we want, so no need to
duplicate its funtionality.

12 years agothemingengine: Make _gtk_theming_engine_paint_spinner() args const
Benjamin Otte [Tue, 3 Apr 2012 09:49:22 +0000 (11:49 +0200)]
themingengine: Make _gtk_theming_engine_paint_spinner() args const

12 years agocssarrayvalue: Redo parsing arrays
Benjamin Otte [Tue, 3 Apr 2012 07:49:37 +0000 (09:49 +0200)]
cssarrayvalue: Redo parsing arrays

Does 3 things:
1) Introduce a "none" array signleton
2) Get rid of memleaks in error paths
3) Reduce code in parse funcs

12 years agostylecontext: Don't queue_resize() all the time
Benjamin Otte [Mon, 2 Apr 2012 21:28:37 +0000 (23:28 +0200)]
stylecontext: Don't queue_resize() all the time

When a parent style context exists, there's no need to queue_resize() on
the widget, because the parent widget will call
gtk_style_context_validate() on us and _then_ we can call queue_resize()
if we have to.

12 years agocssstyleproperty: Mark all animatable properties
Benjamin Otte [Mon, 2 Apr 2012 07:16:08 +0000 (09:16 +0200)]
cssstyleproperty: Mark all animatable properties

Only the ones that can be animated are marked of course. So more work is
needed.
This is important for
  transition-property: all;
because it'll just animate all the properties that can be.

12 years agocssstyleproperty: Add _gtk_css_style_property_is_animated()
Benjamin Otte [Mon, 2 Apr 2012 06:53:51 +0000 (08:53 +0200)]
cssstyleproperty: Add _gtk_css_style_property_is_animated()

12 years agocss: Move enum to the only source file using it
Benjamin Otte [Mon, 2 Apr 2012 06:47:11 +0000 (08:47 +0200)]
css: Move enum to the only source file using it

12 years agocssvalue: Add transition support for images
Benjamin Otte [Mon, 2 Apr 2012 01:37:25 +0000 (03:37 +0200)]
cssvalue: Add transition support for images

12 years agocssimage: Add GtkCssImageCrossFade
Benjamin Otte [Mon, 2 Apr 2012 01:25:30 +0000 (03:25 +0200)]
cssimage: Add GtkCssImageCrossFade

Supports the cross-fade() css notation the way the old CSS3 specs did.

The main reason for adding it is supporting image transitions though.

12 years agocssvalue: Add _gtk_css_value_to_string()
Benjamin Otte [Sun, 1 Apr 2012 05:28:35 +0000 (07:28 +0200)]
cssvalue: Add _gtk_css_value_to_string()

This is a tiny wrapper around _gtk_css_value_print().
It's intended for usage in gdb and printf debugging.

12 years agocssstyleproperty: Add transition properties
Benjamin Otte [Sun, 1 Apr 2012 04:22:20 +0000 (06:22 +0200)]
cssstyleproperty: Add transition properties

12 years agocssvalue: Add GtkCssEaseValue
Benjamin Otte [Sun, 1 Apr 2012 04:20:48 +0000 (06:20 +0200)]
cssvalue: Add GtkCssEaseValue

This is supposed to hold the transition-easing-function and
animation-easing-function values.

12 years agocssvalue: Add a GtkCssValue for idents
Benjamin Otte [Tue, 17 Apr 2012 05:46:17 +0000 (07:46 +0200)]
cssvalue: Add a GtkCssValue for idents

12 years agocss: Add <time> type to css number stuff
Benjamin Otte [Sun, 1 Apr 2012 02:02:34 +0000 (04:02 +0200)]
css: Add <time> type to css number stuff

12 years agocomputedvalues: Fix signage error
Benjamin Otte [Sun, 1 Apr 2012 01:41:19 +0000 (03:41 +0200)]
computedvalues: Fix signage error

12 years agocss: Remove _gtk_css_computed_values_get_value_by_name()
Benjamin Otte [Sat, 31 Mar 2012 03:45:28 +0000 (05:45 +0200)]
css: Remove _gtk_css_computed_values_get_value_by_name()

Now that we use an enum for the IDs, we don't need that function
anymore.

12 years agostylecontext: Convert _gtk_style_context_peek_property()
Benjamin Otte [Sat, 31 Mar 2012 03:42:28 +0000 (05:42 +0200)]
stylecontext: Convert _gtk_style_context_peek_property()

Take the property id instead of the name.

12 years agocss: Add an enum for all the style properties
Benjamin Otte [Sat, 31 Mar 2012 03:28:58 +0000 (05:28 +0200)]
css: Add an enum for all the style properties

So instead of using
  _gtk_css_style_property_get_id (GTK_CSS_STYLE_PROPERTY
        (_gtk_style_property_lookup ("name")))
one can now use
  GTK_CSS_PROPERTY_NAME

Esaier, eh?

12 years agocssvalue: Add _gtk_css_value_transition()
Benjamin Otte [Fri, 30 Mar 2012 15:47:26 +0000 (17:47 +0200)]
cssvalue: Add _gtk_css_value_transition()

Returns a value that transitions between start and end or %NULL if the
values cannot be transitioned.

So far, all implementations but numbers and rgba return NULL.

12 years agocssvalue: Do a hacky conversion of font-size to a number value
Benjamin Otte [Fri, 30 Mar 2012 01:51:25 +0000 (03:51 +0200)]
cssvalue: Do a hacky conversion of font-size to a number value

Just store the value as px for now.

The font-size property needs a complete makeover anyway.

12 years agocssvalue: Convert 'font-family'
Benjamin Otte [Fri, 30 Mar 2012 01:09:26 +0000 (03:09 +0200)]
cssvalue: Convert 'font-family'

It's now a CssArrayValue filled with CssStringValue

12 years agocssvalue: Add a custom value for strings
Benjamin Otte [Fri, 30 Mar 2012 00:48:05 +0000 (02:48 +0200)]
cssvalue: Add a custom value for strings

12 years agocssprovider: Store widget style value as string
Benjamin Otte [Fri, 30 Mar 2012 00:45:01 +0000 (02:45 +0200)]
cssprovider: Store widget style value as string

There's no need to turn it into a GtkCssValue, it's always a string.

12 years agocssvalue: Add GtkCssArea to the enum values
Benjamin Otte [Fri, 30 Mar 2012 00:19:39 +0000 (02:19 +0200)]
cssvalue: Add GtkCssArea to the enum values

... and get rid of its GType.

This makes it non-queryable using gtk_style_context_get() but it used to
be a private struct anyway.

12 years agoswitch: Set ACTIVE state flag with is_active property
Benjamin Otte [Thu, 29 Mar 2012 23:51:04 +0000 (01:51 +0200)]
switch: Set ACTIVE state flag with is_active property

12 years agostylecontext: Keep the main style data around until revalidation
Benjamin Otte [Thu, 29 Mar 2012 13:43:35 +0000 (15:43 +0200)]
stylecontext: Keep the main style data around until revalidation

12 years agostylecontext: Keep per-styleinfo data
Benjamin Otte [Thu, 29 Mar 2012 13:40:20 +0000 (15:40 +0200)]
stylecontext: Keep per-styleinfo data

Instead of having one global data structure, keep it per style info.
This means that we can do special tricks on the "global" style data.

12 years agostylecontext: Make style_data_lookup() not take a state anymore
Benjamin Otte [Thu, 29 Mar 2012 11:49:15 +0000 (13:49 +0200)]
stylecontext: Make style_data_lookup() not take a state anymore

Instead, use the current state of the style context.

12 years agowidget-factory: Add spinners
Benjamin Otte [Thu, 29 Mar 2012 11:48:43 +0000 (13:48 +0200)]
widget-factory: Add spinners

Doesn't look very well, but if somebody cares about that, he can fix it
(hint hint)

12 years agocssvalue: Add a cssvalue for images
Benjamin Otte [Thu, 29 Mar 2012 00:58:32 +0000 (02:58 +0200)]
cssvalue: Add a cssvalue for images

12 years agocssvalue: Add enum values for the pango enums
Benjamin Otte [Wed, 28 Mar 2012 07:04:54 +0000 (09:04 +0200)]
cssvalue: Add enum values for the pango enums

And fix the parser to conform to the CSS spec while at it.

12 years agocssvalue: Make border styles be their own value
Benjamin Otte [Wed, 28 Mar 2012 06:19:53 +0000 (08:19 +0200)]
cssvalue: Make border styles be their own value

... and add them via gtkcssenumvalue.[ch] which will be used for all
enums.

12 years agocssvalue: Add a custom RGBA value
Benjamin Otte [Wed, 28 Mar 2012 04:28:13 +0000 (06:28 +0200)]
cssvalue: Add a custom RGBA value

Note: custom CSS properties still use the default GtkCssValue and always
will.
So there is a difference in css values used between those, even though
they both carry a GdkRGBA payload.

12 years agocssstyleproperty: Make assign_value a vfunc
Benjamin Otte [Wed, 28 Mar 2012 04:20:47 +0000 (06:20 +0200)]
cssstyleproperty: Make assign_value a vfunc

12 years agocustomproperty: Implement assign vfunc
Benjamin Otte [Wed, 28 Mar 2012 03:15:48 +0000 (05:15 +0200)]
customproperty: Implement assign vfunc

I'm going to overwrite the GtkCssStyleProperty one, so better keep this
one.

12 years agoshadow: Also rename files
Benjamin Otte [Wed, 28 Mar 2012 01:34:19 +0000 (03:34 +0200)]
shadow: Also rename files

12 years agoshadow: Rename to GtkCssShadowValue
Benjamin Otte [Wed, 28 Mar 2012 01:31:20 +0000 (03:31 +0200)]
shadow: Rename to GtkCssShadowValue

I don't want to confuse css values with other stuff, so there.

12 years agocssvalue: Remove unused function
Benjamin Otte [Wed, 28 Mar 2012 01:06:08 +0000 (03:06 +0200)]
cssvalue: Remove unused function

12 years agoshadow: Move parse function into GtkShadow
Benjamin Otte [Wed, 28 Mar 2012 00:25:22 +0000 (02:25 +0200)]
shadow: Move parse function into GtkShadow

This way, we have less public API.
And gtkcssstylepropertyimpl.c looks less scary (only 1624 lines now).

12 years agoshadow: Make this a GtkCssValue
Benjamin Otte [Tue, 27 Mar 2012 23:56:57 +0000 (01:56 +0200)]
shadow: Make this a GtkCssValue

12 years agoshadow: Remove _gtk_shadow_get_resolved()
Benjamin Otte [Tue, 27 Mar 2012 23:18:55 +0000 (01:18 +0200)]
shadow: Remove _gtk_shadow_get_resolved()

It's unused

12 years agostylepropertyimpl: Make shadows unqueryable
Benjamin Otte [Tue, 27 Mar 2012 23:07:46 +0000 (01:07 +0200)]
stylepropertyimpl: Make shadows unqueryable

Normal APIs couldn't use GtkShadow anyway as the type was private.

12 years agotheming: Use peek_property() calls to query shadows
Benjamin Otte [Tue, 27 Mar 2012 23:03:39 +0000 (01:03 +0200)]
theming: Use peek_property() calls to query shadows

12 years agocssvalue: Split number values into their own class
Benjamin Otte [Tue, 27 Mar 2012 22:04:29 +0000 (00:04 +0200)]
cssvalue: Split number values into their own class

12 years agocssstyleproperty: Make query func a vfunc
Benjamin Otte [Tue, 27 Mar 2012 21:54:06 +0000 (23:54 +0200)]
cssstyleproperty: Make query func a vfunc

This will be needed soon.

12 years agocustomproperty: Add our own query_value function
Benjamin Otte [Tue, 27 Mar 2012 21:23:11 +0000 (23:23 +0200)]
customproperty: Add our own query_value function

I'm about to change the CssStyleProperty one, so better copy things
here.

12 years agocssstyelproperty: Rempove specified-type and computed-type props
Benjamin Otte [Tue, 27 Mar 2012 15:25:41 +0000 (17:25 +0200)]
cssstyelproperty: Rempove specified-type and computed-type props

This removes the necessity to keep a GType associated with style
properties and code can now make use of GtkCssValue completely.

12 years agostyleproperty: Remove default parse function
Benjamin Otte [Tue, 27 Mar 2012 13:58:22 +0000 (15:58 +0200)]
styleproperty: Remove default parse function

... and assert every style property brings its own.

12 years agostylepropertyimpl: Add remaining parse functions
Benjamin Otte [Tue, 27 Mar 2012 07:05:47 +0000 (09:05 +0200)]
stylepropertyimpl: Add remaining parse functions

12 years agostyleproperty: Simplify compute_value function
Benjamin Otte [Tue, 27 Mar 2012 05:51:20 +0000 (07:51 +0200)]
styleproperty: Simplify compute_value function

The compute_value fallback path is only needed for custom properties,
the real style properties have custom compute functions if they need
them already.

12 years agocss: Move shadow parse/print/compute funcs
Benjamin Otte [Tue, 27 Mar 2012 05:15:23 +0000 (07:15 +0200)]
css: Move shadow parse/print/compute funcs

They don't belong in the style funcs, as those are for custom
properties, and the shadow type is private.

12 years agostylepropertyimpl: Add parse funcs for enums
Benjamin Otte [Tue, 27 Mar 2012 04:29:37 +0000 (06:29 +0200)]
stylepropertyimpl: Add parse funcs for enums

12 years agostylepropertyimpl: Add color parsing function
Benjamin Otte [Tue, 27 Mar 2012 03:11:58 +0000 (05:11 +0200)]
stylepropertyimpl: Add color parsing function

This is in preparation for removing the specified type and computed type
properties from GtkCssStyleProperty, which is in preparation for really
using GtkCssValue classes and not GTypes.

12 years agocustomproperty: Don't rely on querying style property
Benjamin Otte [Tue, 27 Mar 2012 03:00:35 +0000 (05:00 +0200)]
customproperty: Don't rely on querying style property

This way, we can remove type madness from GtkCssStyleProperty later.

12 years agostyleproperty: Make gtk_style_property_register() not be valist
Benjamin Otte [Tue, 27 Mar 2012 02:58:15 +0000 (04:58 +0200)]
styleproperty: Make gtk_style_property_register() not be valist

Instead, make the caller create a GtkCssValue in advance.

12 years agocssvalue: Add _gtk_css_value_equal()
Benjamin Otte [Mon, 26 Mar 2012 23:43:12 +0000 (01:43 +0200)]
cssvalue: Add _gtk_css_value_equal()

For now, we return FALSE for all default css values, so this is not very
useful.

I also think of this as an optimization equal, not a guaranteed equal,
because we don't even have a notion of what "equal" means.

For example, for background-repeat, "repeat, repeat" and "repeat"
are functionally equivalent. But the cssvalue has no idea that it's used
for background-repeat.
As a more complicated example, "repeat, no-repeat" and "repeat" are
equal to what one sees as long as there's only one image listed
background-image-source. But once you start transition'ing to an image
with 2 sources, it's different...