Benjamin Otte
42dc0ea0fd
styleprovider: Change function prototype
...
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.
2012-11-25 02:45:10 +01:00
Benjamin Otte
94b80cc774
symboliccolor: Change prototype of function
...
Makes it easier to use the function in the places where it's still used.
2012-11-24 21:56:47 +01:00
Benjamin Otte
932794e105
styleprovider: Remove (broken) implementations of get_style
...
The implementations were broken and get_style() is deprecated and
documented to return NULL now.
2012-11-24 21:12:00 +01:00
Benjamin Otte
4bc264a514
cssprovider: Handle non-existing section
...
Otherwise we'll get warnings on errors when CSS debug is disabled.
2012-11-15 19:25:14 +01:00
Alexander Larsson
1c4158a649
gtk_css_style_provider_lookup: minor loop optimiziation
...
This is a minor performance improvement but this loop
is run a lot so it actually matters in large state
changes.
2012-11-09 10:16:18 +01:00
Alexander Larsson
55d65571f3
Exit early in gtk_style_context_update_cache codepaths
...
If lookup->missing is empty we don't need to continue looking.
We short circuit in several places as this can happen
after iteratively makeign lookup->missing smaller.
2012-11-09 10:15:23 +01:00
Benjamin Otte
b41215bdea
cssprovider: Move fallback code into _gtk_css_provider_load_named()
...
This makes sure the full theme loading logic resides in one function and
isn't scattered around.
As a side-effect, the hash table kept by gtk_css_provider_get_named()
will now be populated with fallback themes. This will not be a problem
after the next commit though.
2012-10-31 11:09:09 +01:00
Benjamin Otte
738b453c66
cssprovider: Export gtk_css_provider_load_named) function
...
... and document it.
For now, the function is only exported internally.
2012-10-31 11:09:09 +01:00
Benjamin Otte
9c9d82f1a9
cssprovider: Split out theme loading function
...
Split maintaining the global themes hash table and the theme loading
code into two functions.
This also fixes leaking the provider when loading a theme from a builtin
resource.
2012-10-31 11:09:09 +01:00
Benjamin Otte
5e1ae36b2f
section: Add _gtk_css_section_to_string()
...
Mostly for debugging pruposes, but use it for printing CSS errors in
GtkCssProvider, too.
2012-09-28 18:27:49 +02:00
Benjamin Otte
6696aa2128
cssprovider: Remove another path that can't be reached
...
... because the return value of a function is always TRUE.
2012-09-19 15:32:38 +02:00
Benjamin Otte
697ed544dd
docs: Clarify GtkCssProvider loading return values
2012-09-19 15:30:21 +02:00
Benjamin Otte
ee91f22086
cssprovider: Get rid of return value
...
... that is always TRUE.
2012-09-19 15:18:51 +02:00
Matthias Clasen
ab3d6a0b0a
Revert "Bind the themes to the livecycle of the screen"
...
This reverts commit 1f5dea9eba
,
since it was causeing noticable behaviour changes.
Previously, GTK_DATA_PREFIX=/ ./gtk3-demo would start
gtk3-demo with the Raleigh theme. With that change, it
was starting with no theme at all (i.e. all black).
2012-09-17 22:31:25 -04:00
Benjamin Otte
e6c951a303
styleprovider: Add query function for keyframes
2012-09-17 20:39:11 +02:00
Benjamin Otte
c4cdb33b32
cssprovider: Add parsing support for @keyframes
2012-09-17 20:39:10 +02:00
William Jon McCann
b05224b059
Add back gtk_css_provider_get_named
...
Was in the original patch but was not in 1f5dea9
probably due to
a bad rebase.
https://bugzilla.gnome.org/show_bug.cgi?id=683896
2012-09-17 09:54:26 -04:00
William Jon McCann
1f5dea9eba
Bind the themes to the lifecycle of the screen
...
https://bugzilla.gnome.org/show_bug.cgi?id=683896
2012-09-16 20:20:44 -04:00
Benjamin Otte
6dc3113edc
cssstyleproperty: Get rid of unused API
...
Both _gtk_css_style_property_print_value() and
_gtk_css_style_property_compute_value() aren't necessary anymore and are
replaced by _gtk_css_value_print() and _gtk_css_value_comptue()
respectively.
2012-08-28 15:40:57 +02:00
Cosimo Cecchi
f70fc49ebc
docs: fix a number of typos and obsolete references
2012-07-02 10:41:11 -04:00
Benjamin Otte
25695684ad
cssprovider: Remove unused members from scanner
...
Now that the parser takes care of the file, we don't need to keep track
of it ourselves anymore.
2012-05-11 16:42:12 +02:00
Benjamin Otte
0e4670150a
csssection: Remove file argument from constructor
...
The parser has the file available.
2012-05-11 16:42:12 +02:00
Benjamin Otte
a7f238138e
styleproperty: Remove base argument
...
from _gtk_style_property_parse_value(). The GtkCssParser takes care of
that now.
2012-05-11 16:42:12 +02:00
Benjamin Otte
1367ef7e54
cssstylefuncs: Remove base argument
...
The GtkCssParser keeps track of the base file now.
2012-05-11 16:42:12 +02:00
Benjamin Otte
e1317268a3
cssparser: Change APIs that work with files
...
Now that we keep track of the parser's file, we don't require it to be
passed anymore.
2012-05-11 16:42:12 +02:00
Benjamin Otte
a65780902a
cssparser: Keep track of the file
2012-05-11 16:42:11 +02:00
Benjamin Otte
a8d8c02ab7
Revert "cssprovider: Remove unused members from scanner"
...
This reverts commit b501e64a8a
.
2012-05-11 16:41:25 +02:00
Benjamin Otte
b501e64a8a
cssprovider: Remove unused members from scanner
...
Now that the parser takes care of the file, we don't need to keep track
of it ourselves anymore.
2012-05-11 16:35:30 +02:00
Benjamin Otte
b4195cb408
cssmatcher: Handle case of empty widget path
...
This is tested by the stylecontext test, but doesn't appear in practice.
2012-05-01 03:13:02 +02:00
Benjamin Otte
6c63842e68
cssprovider: Actually match the state for style properties
...
Copy/paste error when refactoring.
Caught by stylecontext test.
2012-05-01 03:13:02 +02:00
William Jon McCann
9f5e580821
Try to load css themes from the XDG config directory first
...
Will fall back to previous locations.
https://bugzilla.gnome.org/show_bug.cgi?id=646631
2012-04-30 06:42:33 -04:00
Benjamin Otte
6443baadb9
styleprovider: Make all implementors emit the new signal
...
... and listen to it in the cases where they use other style providers.
2012-04-17 08:59:21 +02:00
Benjamin Otte
0111b9d507
symboliccolor: Treat it as a CssValue
...
.. now that it is one.
2012-04-17 08:59:20 +02:00
Benjamin Otte
505fefbec7
cssprovider: Add an empty line when printing
...
... between the @define-color statements and the rules.
2012-04-17 08:59:20 +02:00
Benjamin Otte
0cce3520d3
cssprovider: Store widget style value as string
...
There's no need to turn it into a GtkCssValue, it's always a string.
2012-04-17 08:59:15 +02:00
Benjamin Otte
9b7640b898
styleproperty: Make _gtk_style_property_parse_value() return a CssValue
...
Also split out initial/inherit handling into a custom GtkCssValue class.
2012-04-17 08:59:11 +02:00
Benjamin Otte
718ceaec45
css: Remove _gtk_css_style_property_is_specified_type()
...
That check is going to be refactored away.
2012-04-17 08:59:11 +02:00
Benjamin Otte
8dbe8c8349
syleprovider: Add a vfunc to get the changes
...
This way we can check what changes are even interesting for our matcher.
2012-04-17 08:59:08 +02:00
Benjamin Otte
a94b85d375
css: Make the style provider take a matcher as an input argument
2012-04-17 08:59:07 +02:00
Alexander Larsson
0b26605ab0
css: Only keep around GtkCssSections if GTK_CSS_DEBUG env var set
...
These are used purely for CSS debugging, and was using over 100k just
starting up gtk3-demo.
2012-03-29 13:57:22 +02:00
Alexander Larsson
a20b4423f4
Remove broken approach to get stable sort of CSS rules
...
The pointer comparisons in the sort compare function just doesn't
work.
We still need a stable sort, but the plan is to add a real
one in glib.
2012-03-15 21:12:32 +01:00
Alexander Larsson
7603e6e473
css: Use GtkCssValues instead of GValue in the css machinery
...
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.
2012-03-08 11:03:57 +01:00
Paolo Borelli
8adf311acd
Free the resource file string.
2012-03-04 18:02:06 +01:00
Benjamin Otte
67d0b8195d
css: Move selector parsing code into a custom function
2012-03-02 02:17:09 +01:00
Benjamin Otte
64425a28de
bitmask: Make setters return a new value
...
(Actually, it's not a real 'new' value yet, but will be soon.
This is the first step to make bitmasks immutable.
2012-03-01 15:10:36 +01:00
Benjamin Otte
49571ccc30
css: Fix variable
...
And you'd think I'd test my code...
2012-03-01 13:46:11 +01:00
Benjamin Otte
4608278328
cssprovider: Redo styles as an array
...
Saves even more memory and avoids an extra copy during assigning.
2012-03-01 06:40:15 +01:00
Benjamin Otte
98f557b859
css: Fix fallout
...
.. from carelessly merging 85b1b9b778
2012-03-01 05:32:34 +01:00
Alexander Larsson
85b1b9b778
Don't use hashtables for storing css rule properties
...
This saves a lot of memory
2012-03-01 03:00:29 +01:00
Javier Jardón
9d0febc9a6
Change FSF Address
2012-02-27 17:06:11 +00:00