Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Just match against universal string intern instead of checking strings ↵ | Michael Drake | 2013-12-07 | 3 | -8/+13 |
| | | | | length/data. | ||||
* | Slight simplification to selector detail itterator. | Michael Drake | 2013-12-07 | 1 | -3/+2 |
| | |||||
* | Fixup for insensitive hash utilisation. | Michael Drake | 2013-12-02 | 1 | -7/+27 |
| | |||||
* | Since element/class/id names are known to have insensitive string set, just ↵ | Michael Drake | 2013-12-02 | 1 | -23/+8 |
| | | | | use that hash value for hash table, instead of calculating own hash. | ||||
* | We know element/id/class names are available through the insensitive ptr now. | Michael Drake | 2013-12-02 | 1 | -22/+9 |
| | |||||
* | Significantly optimise CSS selection performance. | Michael Drake | 2013-12-01 | 4 | -123/+444 |
| | | | | | | | | | | | | | | | | 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. | ||||
* | Fix NULL check of array. Coverity #1127067. | Michael Drake | 2013-11-08 | 1 | -5/+3 |
| | |||||
* | Remove redundant masks. Coverity #1127061, #1127062, #1127063, #1127064, ↵ | Michael Drake | 2013-11-08 | 1 | -24/+6 |
| | | | | and #1127065. | ||||
* | Add computed style accessor for writing-mode and and writing-mode to the ↵ | Michael Drake | 2013-09-10 | 2 | -0/+22 |
| | | | | property handler table. | ||||
* | Add support for parsing the writing-mode property. Thanks to Caitlin Potter. | Caitlin Potter | 2013-09-10 | 6 | -2/+119 |
| | |||||
* | Prioritise id and class hashes over element hash when inserting rules. | Michael Drake | 2012-08-26 | 2 | -47/+108 |
| | |||||
* | Skip empty/broken rules early, before we match their selector chains. | Michael Drake | 2012-08-26 | 1 | -11/+13 |
| | |||||
* | Fix not([node_name]) selection. | Michael Drake | 2012-08-07 | 1 | -1/+7 |
| | |||||
* | Clear up CLANG warnings in various property setters | Daniel Silverstone | 2012-07-01 | 1 | -11/+14 |
| | |||||
* | Update to new NSBUILD infrastructure | Daniel Silverstone | 2012-06-29 | 2 | -2/+2 |
| | | | | svn path=/trunk/libcss/; revision=14004 | ||||
* | correctly apply enum casts to avoid warnings about casting between | Vincent Sanders | 2012-04-14 | 1 | -6/+6 |
| | | | | | | disimmilar enumerations. svn path=/trunk/libcss/; revision=13868 | ||||
* | Complete widows and orphans support. Thanks to James Montgomerie. | Michael Drake | 2012-04-13 | 6 | -38/+219 |
| | | | | svn path=/trunk/libcss/; revision=13864 | ||||
* | Fix debug build (warnings about comparing different enums). | François Revel | 2012-04-06 | 1 | -4/+6 |
| | | | | svn path=/trunk/libcss/; revision=13810 | ||||
* | Use correct unit enum values for computed clip rectangle | Rob Kendrick | 2012-03-25 | 1 | -1/+1 |
| | | | | svn path=/trunk/libcss/; revision=13651 | ||||
* | Add support for parsing CSS3 Multi-column layout properties: | Michael Drake | 2012-01-28 | 14 | -0/+843 |
| | | | | | | | | | | | | | | | | | | + break-after + break-before + break-inside + column-count + column-fill + column-gap + column-rule-color + column-rule-style + column_rule-width + column_span + column_width TODO: Shorthand properties (columns, column-rule) TODO: Selection svn path=/trunk/libcss/; revision=13412 | ||||
* | Fix font-face defaults (credit: James Montgomerie) | John Mark Bell | 2012-01-24 | 1 | -1/+10 |
| | | | | svn path=/trunk/libcss/; revision=13406 | ||||
* | @font-face support. Credit: James Montgomerie | John Mark Bell | 2011-12-04 | 4 | -20/+615 |
| | | | | | | Things missing: parser tests; the following descriptors: font-feature-settings, font-stretch, font-variant, unicode-range. svn path=/trunk/libcss/; revision=13244 | ||||
* | Fall back to UA's default font family if no generic family is specified in ↵ | John Mark Bell | 2011-12-04 | 1 | -10/+48 |
| | | | | | | | | the input CSS. Based on a patch from James Montgomerie. svn path=/trunk/libcss/; revision=13227 | ||||
* | Simplify cache loop criterion. | Michael Drake | 2011-11-07 | 1 | -2/+3 |
| | | | | svn path=/trunk/libcss/; revision=13134 | ||||
* | Fill reject cache backwards from end. | Michael Drake | 2011-11-07 | 2 | -7/+8 |
| | | | | svn path=/trunk/libcss/; revision=13133 | ||||
* | Code style tweak. | Michael Drake | 2011-11-06 | 1 | -1/+1 |
| | | | | svn path=/trunk/libcss/; revision=13132 | ||||
* | Avoid trying to add already-cached selectors to reject cache. Remove ↵ | Michael Drake | 2011-11-06 | 1 | -24/+15 |
| | | | | | | pre-insertion search. svn path=/trunk/libcss/; revision=13131 | ||||
* | Fix regression introduced by reject cache: do not cache failure to match ↵ | John Mark Bell | 2011-11-05 | 1 | -0/+1 |
| | | | | | | multi-detailed selectors svn path=/trunk/libcss/; revision=13126 | ||||
* | Selection micro optimisation. | Michael Drake | 2011-11-04 | 1 | -15/+17 |
| | | | | svn path=/trunk/libcss/; revision=13120 | ||||
* | Don't need to match CSS_SELECTOR_ELEMENT detail since it will always match. | Michael Drake | 2011-11-04 | 1 | -8/+13 |
| | | | | svn path=/trunk/libcss/; revision=13119 | ||||
* | Cache rejected ancestor class/ID selectors to improve selection efficiency | John Mark Bell | 2011-11-04 | 2 | -8/+102 |
| | | | | svn path=/trunk/libcss/; revision=13118 | ||||
* | Appease ancient compilers | John Mark Bell | 2011-09-06 | 1 | -3/+9 |
| | | | | svn path=/trunk/libcss/; revision=12765 | ||||
* | A bunch more microoptimisations | John Mark Bell | 2011-09-06 | 3 | -101/+74 |
| | | | | svn path=/trunk/libcss/; revision=12746 | ||||
* | Iterate over pseudo elements, then properties, and reject unused pseudo ↵ | John Mark Bell | 2011-09-05 | 1 | -16/+15 |
| | | | | | | | | elements at the earliest opportunity. Avoids pointlessly iterating over count(unused-pseudo-element) * count(properties) properties. svn path=/trunk/libcss/; revision=12744 | ||||
* | Compute node name, id, and classes once, instead of once per stylesheet | John Mark Bell | 2011-09-05 | 2 | -48/+51 |
| | | | | svn path=/trunk/libcss/; revision=12743 | ||||
* | Hoist string internment into selection context constructor. | John Mark Bell | 2011-09-05 | 2 | -305/+302 |
| | | | | | | Destroy interned strings from selection context destructor. svn path=/trunk/libcss/; revision=12742 | ||||
* | Add support for selecting page-break-{before, after, inside} | John Mark Bell | 2011-08-23 | 9 | -64/+267 |
| | | | | | | Credit: James Montgomerie svn path=/trunk/libcss/; revision=12645 | ||||
* | Fix build with GCC 4.6 | John Mark Bell | 2011-07-26 | 12 | -36/+1 |
| | | | | svn path=/trunk/libcss/; revision=12627 | ||||
* | Add structure versioning for client input | John Mark Bell | 2011-03-13 | 1 | -1/+3 |
| | | | | svn path=/trunk/libcss/; revision=12007 | ||||
* | Ensure that the uncommon extension block is initialised correctly | John Mark Bell | 2011-03-12 | 1 | -1/+24 |
| | | | | svn path=/trunk/libcss/; revision=11990 | ||||
* | Fix set_clip | John Mark Bell | 2011-03-12 | 1 | -2/+2 |
| | | | | svn path=/trunk/libcss/; revision=11989 | ||||
* | Fix cascade of clip rectangle value | John Mark Bell | 2011-03-12 | 1 | -0/+1 |
| | | | | svn path=/trunk/libcss/; revision=11988 | ||||
* | CSS3 Namespaces | John Mark Bell | 2011-03-12 | 3 | -67/+70 |
| | | | | svn path=/trunk/libcss/; revision=11972 | ||||
* | Hide the CSS computed style itself. Only expose a few simple structures ↵ | Daniel Silverstone | 2011-03-12 | 4 | -0/+2114 |
| | | | | | | which we can keep sane. All property accessors are thus hidden behind a link symbol for ABI safety svn path=/trunk/libcss/; revision=11969 | ||||
* | The document root element cannot be the child of anything | John Mark Bell | 2011-01-31 | 1 | -12/+25 |
| | | | | svn path=/trunk/libcss/; revision=11572 | ||||
* | Fix specificity calculation for prefix, suffix, and substring attribute ↵ | John Mark Bell | 2011-01-31 | 1 | -0/+21 |
| | | | | | | | | selectors. Fix dumping of these selectors when debugging selector chains svn path=/trunk/libcss/; revision=11569 | ||||
* | Place negated class and id selectors in the universal hash chain | John Mark Bell | 2011-01-31 | 1 | -2/+4 |
| | | | | svn path=/trunk/libcss/; revision=11568 | ||||
* | CSS3 Selectors | John Mark Bell | 2011-01-31 | 2 | -4/+309 |
| | | | | svn path=/trunk/libcss/; revision=11557 | ||||
* | Add support for opacity property | John Mark Bell | 2011-01-29 | 6 | -0/+112 |
| | | | | svn path=/trunk/libcss/; revision=11527 | ||||
* | Centralise handling of transparent colours. | John Mark Bell | 2011-01-29 | 9 | -19/+89 |
| | | | | | | Add support for currentColor svn path=/trunk/libcss/; revision=11525 |