| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The API changes are:
1. When building a selection context, stylesheets added with
`css_select_ctx_{append|insert}_sheet()` now have to have
media strings associcated with them. Previously they took
a simple bitfield for CSS media type.
2. When selecting for an element, the client needs to specify
the current media requirements. Previously it only had to
provide the bitfield for CSS media type.
3. Same for the css_select_font_faces API.
The selection handling has been updated to handle the new
API, however it is currently only looking at the media type
when performing selection.
Signed-off-by: Michael Drake <michael.drake@codethink.co.uk>
|
|
|
|
|
|
|
|
|
| |
- Remove client allocation function.
- Change node_classes callback not to yield array ownership to libcss.
- Node bloom filters now built by, during selection libcss.
- Added selection callbacks to get and set data on document nodes.
Test suite, example, and documentation updated to match.
|
|
|
|
| |
length/data.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now we pass a node bloom filter to css_get_style. That node bloom
filter is filled with the node's ancestor element, class, and id
names. Internally, libcss also generates a bloom filter for each
selector chain. If the selector chain's bloom filter is not a
subset of the node bloom filter, we know that the selector chain's
rule does not apply to the node. This avoids the slow selector
chain matching process.
Other smaller optimisations to move the ruling out of selector
chains for inapplicable media types and other reasons to before
we start comparing rules from different sources to find the next
rule. All this is now done in hash.c so select.c never sees the
trivially ruled out rules.
|
|
|
|
| |
svn path=/trunk/libcss/; revision=12746
|
|
|
|
| |
svn path=/trunk/libcss/; revision=11972
|
|
|
|
| |
svn path=/trunk/libcss/; revision=11492
|
|
|
|
|
|
|
| |
TODO: update the tests to include a refcounting proof
svn path=/trunk/libcss/; revision=10162
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1) element selectors
2) universal selectors with class names
3) universal selectors with ids
4) universal selectors
Only bother looking for matching selectors in 2 & 3 if the node being selected for has class names or an id, respectively.
In theory, this should speed up style selection somewhat.
svn path=/trunk/libcss/; revision=8882
|
|
|
|
| |
svn path=/trunk/libcss/; revision=8830
|
|
|
|
|
|
| |
meant to work.
svn path=/trunk/libcss/; revision=8607
|
|
|
|
|
|
|
|
|
| |
It passes the tests, perhaps we need more of them.
Lifetimes of lwc_string objects really need attention before we can consider
this finished.
svn path=/trunk/libcss/; revision=6517
|
|
|
|
| |
svn path=/trunk/libcss/; revision=6482
|
|
|
|
|
|
| |
it's simpler)
svn path=/trunk/libcss/; revision=6272
|
|
svn path=/trunk/libcss/; revision=6263
|