summaryrefslogtreecommitdiff
path: root/src/select
Commit message (Collapse)AuthorAgeFilesLines
* Ensure there are zero global symbols without css_ or css__ in front of them. ↵Daniel Silverstone2011-01-20107-568/+568
| | | | | | This helps prevent confusion if someone else wants a function called parse_background or similar svn path=/trunk/libcss/; revision=11416
* fix play_diring cascade string usageVincent Sanders2011-01-201-2/+2
| | | | svn path=/trunk/libcss/; revision=11412
* fix cursor cascadeVincent Sanders2011-01-201-2/+2
| | | | svn path=/trunk/libcss/; revision=11410
* Merge parser autogeneration and string handling refactor branch ↵Vincent Sanders2011-01-19104-701/+26
| | | | | | r=jmb,kinnison,vince svn path=/trunk/libcss/; revision=11408
* Turns out, we know the size of the styles block up-front.John Mark Bell2011-01-051-3/+1
| | | | svn path=/trunk/libcss/; revision=11214
* Simultaneously select styles for base + pseudo elements.John Mark Bell2011-01-0581-300/+379
| | | | svn path=/trunk/libcss/; revision=11211
* Complete the fix for pseudo element selection: inline styles and ↵John Mark Bell2011-01-021-6/+18
| | | | | | presentational hints must not be applied to pseudo elements. svn path=/trunk/libcss/; revision=11181
* When selecting for a node's pseudo elements, only match rules which apply to ↵Michael Drake2011-01-011-11/+24
| | | | | | the pseudo element, and not the raw node as well. svn path=/trunk/libcss/; revision=11177
* Split up properties selectorsVincent Sanders2010-12-05103-6646/+8253
| | | | svn path=/trunk/libcss/; revision=11011
* Add string vector capability to stylesheet (r=jmb)Vincent Sanders2010-12-054-3/+3
| | | | | | Move properties ready for split svn path=/trunk/libcss/; revision=11005
* Fix destruction of bytecode for the clip property.John Mark Bell2010-09-281-1/+1
| | | | svn path=/trunk/libcss/; revision=10856
* Remove ownerNode and ownerRule fields from stylesheet objects.John Mark Bell2010-06-271-3/+11
| | | | | | | | | | | These prevent stylesheets being used in multiple contexts simultaneously. Their values can be inferred from the context in which the stylesheet is used. Replace use of ownerRule to backtrack in style selection with a (fixed-size) stack of rules to process. This prevents crashes when a sheet that was previously imported somewhere is reused as a top-level sheet. svn path=/trunk/libcss/; revision=10581
* Really fix hint leaks. Hint data ownership is passed to libcss.John Mark Bell2010-04-292-140/+34
| | | | | | Ensure that hint is initialised before asking client to populate it (so as to guard against broken clients) svn path=/trunk/libcss/; revision=10520
* Stop leaking references to interned strings obtained from presentational hintsJohn Mark Bell2010-04-281-62/+142
| | | | svn path=/trunk/libcss/; revision=10513
* Fix RISC OS buildJohn Mark Bell2010-04-051-1/+2
| | | | svn path=/trunk/libcss/; revision=10247
* Correct management of string references in computed styles.John Mark Bell2010-04-043-30/+213
| | | | svn path=/trunk/libcss/; revision=10240
* Make libcss suitable for the new libwapcaplet behaviour.Daniel Silverstone2010-03-284-1202/+996
| | | | svn path=/trunk/libcss/; revision=10168
* Fix libcss to use new libwapcaplet behaviour.Daniel Silverstone2010-03-273-70/+40
| | | | | | | TODO: update the tests to include a refcounting proof svn path=/trunk/libcss/; revision=10162
* Origin and media are not properties of the stylesheet. John Mark Bell2010-01-121-44/+74
| | | | | | | | | They are properties of the context in which the stylesheet is used. Therefore, for top-level sheets, this information must be provided at selection time. For child sheets, the origin is inherited from their parent and the applicable media types are specified on the linking mechanism. svn path=/trunk/libcss/; revision=9802
* Lose redundant assignments.John Mark Bell2009-11-221-3/+0
| | | | | | | | Drop some dead code. Avoid a potential NULL dereference. Add missing "break" in initial substate of block context parser svn path=/trunk/libcss/; revision=9678
* Somewhat nasty text-align magic for the benefit of HTML tables.John Mark Bell2009-08-231-0/+11
| | | | svn path=/trunk/libcss/; revision=9405
* It turns out that using magic values for text-align is simpler than having ↵John Mark Bell2009-08-225-129/+31
| | | | | | an entirely new property for html alignment. svn path=/trunk/libcss/; revision=9387
* Wrong -- it inheritsJohn Mark Bell2009-08-211-1/+1
| | | | svn path=/trunk/libcss/; revision=9380
* -libcss-align is not inheritedJohn Mark Bell2009-08-211-1/+1
| | | | svn path=/trunk/libcss/; revision=9379
* -libcss-alignJohn Mark Bell2009-08-215-0/+107
| | | | svn path=/trunk/libcss/; revision=9378
* s/opcode/opcode_t/John Mark Bell2009-08-031-1/+1
| | | | svn path=/trunk/libcss/; revision=9020
* Use unsigned int for bitfields. Apparently, using uint32_t confuses some ↵John Mark Bell2009-08-022-6/+6
| | | | | | compilers. svn path=/trunk/libcss/; revision=8990
* Fix processing of quotes bytecode during cascade.John Mark Bell2009-07-301-7/+9
| | | | svn path=/trunk/libcss/; revision=8912
* Plug potential memory leaks in property settingJohn Mark Bell2009-07-301-0/+27
| | | | svn path=/trunk/libcss/; revision=8911
* Change selector hash to segregate:John Mark Bell2009-07-293-171/+783
| | | | | | | | | | | | | 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
* Calculate the in-memory size of stylesheets and provide some API to access this.John Mark Bell2009-07-272-0/+31
| | | | svn path=/trunk/libcss/; revision=8830
* Clarify operationJohn Mark Bell2009-07-221-2/+3
| | | | svn path=/trunk/libcss/; revision=8706
* Match details before considering combinators.John Mark Bell2009-07-221-14/+13
| | | | svn path=/trunk/libcss/; revision=8667
* Remove pointless parameterJohn Mark Bell2009-07-212-6/+5
| | | | svn path=/trunk/libcss/; revision=8653
* Always set values in result style when composingJohn Mark Bell2009-07-211-335/+392
| | | | svn path=/trunk/libcss/; revision=8651
* Avoid division by zeroJohn Mark Bell2009-07-201-2/+5
| | | | svn path=/trunk/libcss/; revision=8624
* Error checking for string comparisons.John Mark Bell2009-07-171-3/+13
| | | | svn path=/trunk/libcss/; revision=8608
* Fix selector hash some more. It turns out that I'd forgotten how it was ↵John Mark Bell2009-07-172-4/+35
| | | | | | meant to work. svn path=/trunk/libcss/; revision=8607
* Fix utterly broken selector chain search code.John Mark Bell2009-07-171-12/+0
| | | | svn path=/trunk/libcss/; revision=8604
* Change mechanism for handling case sensitivity of element names. Now has ↵John Mark Bell2009-07-172-15/+17
| | | | | | | | another selection handler callback for this. Change selector hash to use an ASCII case-insensitive hash function. svn path=/trunk/libcss/; revision=8602
* Store em and percentage values for properties in the computed style.John Mark Bell2009-07-173-536/+1983
| | | | | | | | Fully compute them on access. Introduce a swathe of internal accessors that don't perform the complete computation. Port property composition to these new APIs. Reduce absolute value computation to making font sizes absolute and converting any EX units to EM. svn path=/trunk/libcss/; revision=8601
* It is necessary to consider the element name when matching selectors. John Mark Bell2009-07-171-6/+27
| | | | | | | Firstly, the chains being processed are from a hashtable, so aren't guaranteed to apply to the element being selected. Secondly, when processing combinators, we have a completely different node object to compare. svn path=/trunk/libcss/; revision=8593
* Ensure that we merge-sort the element and universal selector chains during ↵John Mark Bell2009-07-171-44/+51
| | | | | | selection. svn path=/trunk/libcss/; revision=8592
* Fix matching of named ancestor combinators.John Mark Bell2009-07-171-34/+166
| | | | | | Add some helpful debug -- disabled by default. svn path=/trunk/libcss/; revision=8591
* Add a flag to the font size computation callback to indicate that the ↵John Mark Bell2009-07-162-5/+6
| | | | | | resultant absolute font size should not be clamped to a fixed minimum (e.g. if the client has a minimum permissible font size) svn path=/trunk/libcss/; revision=8586
* Use a proper hash function.John Mark Bell2009-07-161-1/+1
| | | | svn path=/trunk/libcss/; revision=8572
* Provide accessor for computed value of display assuming static position.John Mark Bell2009-07-152-58/+2
| | | | | | Modify css_computed_display to follow $9.7. svn path=/trunk/libcss/; revision=8568
* Fix selection from selectors within @media blocks.John Mark Bell2009-07-151-8/+14
| | | | svn path=/trunk/libcss/; revision=8549
* Provide some API to allow retrieval of an Initial styleJohn Mark Bell2009-07-121-0/+40
| | | | svn path=/trunk/libcss/; revision=8468
* It helps if you add filesJohn Mark Bell2009-07-091-0/+20
| | | | svn path=/trunk/libcss/; revision=8411