summaryrefslogtreecommitdiff
path: root/src/select
Commit message (Collapse)AuthorAgeFilesLines
* Select: MQ: Use interned strings for media featuresMichael Drake2022-08-284-36/+63
| | | | Avoids some strcmps.
* Select: Add strings for media query featuresMichael Drake2022-08-282-0/+29
|
* Select: Split out useful stringsMichael Drake2022-08-284-289/+320
|
* Selection: Media queries: Apply prefers-color-schemeMichael Drake2022-07-311-0/+33
|
* Select: Hash: Fix bloom instrumentation for size != 4.Michael Drake2022-03-161-1/+1
|
* Bloom: Init: Switch to memset.Michael Drake2022-03-161-21/+2
| | | | | GCC is a bit better at optimising a memset. For clang it makes no difference.
* Bloom: Style: Align function parameters.Michael Drake2022-03-161-2/+3
|
* Bloom: Docs: Sync comments with reality.Michael Drake2022-03-161-4/+11
|
* Bloom: Docs: Fix comment typo.Michael Drake2022-03-161-1/+1
|
* Selection: Optimise bloom filter merging.Michael Drake2022-03-131-2/+3
|
* Squash warning on apple darwin CI.Michael Drake2021-06-141-7/+9
|
* Selection: Don't duplicate unit conversion members in media descriptor.Michael Drake2021-05-199-61/+93
|
* Selection: Remove client callback for unit conversion.Michael Drake2021-05-195-179/+76
| | | | | | | Now clients provide a unit conversion context and libcss provides code to perform unit conversion. This reduces the amount of common code that clients have to write.
* Units: Add support for length unit conversion to libcss.Michael Drake2021-05-195-97/+677
| | | | Currently only used for unit conversion.
* Units: Remove units that nobody supports.Michael Drake2021-05-192-14/+0
|
* add css 3.1 complex predefined counter styles for addative systemsVincent Sanders2021-02-152-1/+129
|
* Improve list style fallback styling and range processingVincent Sanders2021-02-141-176/+231
|
* fix list style formatting with negative valuesVincent Sanders2021-02-131-158/+161
|
* implement the remaining css 3.1 simple predefined counter stylesVincent Sanders2021-02-122-0/+309
|
* implement the firt half of the css 3.1 simple predefined counter stylesVincent Sanders2021-02-092-30/+240
|
* Use two more bits, six total, for the list style propertyVincent Sanders2021-02-094-526/+526
| | | | | | Adding the two bits that were previously reserved (Must Be Zero) for use in the list style property gives space for sixty four styles instead of sixteen.
* add cyclic system to list style formattingVincent Sanders2021-02-081-2/+75
|
* make roman numeral list style obey range limit and fix decimal fallbackVincent Sanders2021-02-061-15/+31
|
* make list stle structures const and fix initialisation for older compilersVincent Sanders2021-02-061-22/+25
|
* add text formatting of values with list stylesVincent Sanders2021-02-052-1/+543
|
* select: Split out bytecode to unit conversion helper.Michael Drake2020-12-044-43/+54
|
* select: mq: Fix to convert parse unit types to public unit types.Michael Drake2020-12-011-4/+9
|
* select: computed: Squash use of uninitialised variable warning.Michael Drake2020-11-131-1/+1
|
* Computed styles: Check length pair getter type before using result.Michael Drake2020-02-241-0/+4
| | | | Fixes use of garbage value scan-build issue.
* Computed styles: Handle invalid width types.Michael Drake2020-02-241-0/+2
| | | | Fixes scan-build use of garbage value.
* Select hash: Simplify insertion at start of non-empty list.Michael Drake2019-08-011-11/+10
| | | | This might help Coverity understand what's going on.
* Media queries: Simplify parsed mq data structure slightly.Michael Drake2019-06-111-7/+5
|
* Computed styles: Remove last traces of extension blocks.Michael Drake2019-05-128-722/+548
|
* Computed styles: Drop uncommon extension blocks.Michael Drake2019-05-1224-2732/+2059
| | | | | | | | | | | | | | They were a space saving feature, but they became largely redundant with computed style sharing. They also made the code complex and buggy in many places. E.g. the cascade, inheritance / composition, and intial values all needed to behave corretly when they, or their parent, had or didn't have an uncommon block. Also, only the uncommon block was really used. Fixes: https://bugs.netsurf-browser.org/mantis/view.php?id=2641
* Media queries: Feature matching: Compare lengths in pixels.Michael Drake2019-05-071-39/+141
| | | | | | | | Clients now provide viewport dimensions in pixels. LibCSS can now convert the units from the stylesheet to pixels. Client must also provide default font size and line height for handling viewport and root element relative sizes.
* Media queries: Start implementing feature matching.Michael Drake2019-05-061-5/+85
| | | | | | | | | | | | Currently we just look at: - width - height TODO: - Unit conversion - Use interned string comparison
* Fix typo in assertion.Michael Drake2019-05-051-1/+1
|
* Media queries: Selection: Start implementing mq matching.Michael Drake2019-05-051-8/+60
|
* Media queries: Update selection API to support media queries.Michael Drake2019-05-045-22/+44
| | | | | | | | | | | | | | | | | | | | | 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>
* Media queries: Fix documentation typo.Michael Drake2019-05-041-1/+1
| | | | Signed-off-by: Michael Drake <michael.drake@codethink.co.uk>
* Media queries: Selection: For now, we just say the condition matches.Michael Drake2019-05-041-1/+2
| | | | Signed-off-by: Michael Drake <michael.drake@codethink.co.uk>
* Media Queries: Update stylesheet import for media query lists.Michael Drake2019-03-101-2/+4
|
* Media Queries: Update rule_good_for_media for new mq struct.Michael Drake2019-03-101-6/+44
| | | | | Doesn't currently match media query conditions, only the media type.
* Select generator: Squash undefined behaviour in generated code.Michael Drake2018-07-284-603/+621
| | | | | | | uint8_t is promoted to int instead of unsigned, so it can't hold the values we try to store. Reran `make select_generator` to update generated code.
* Selection: Unify rule good for media helper.Michael Drake2018-07-273-62/+54
|
* Build: Commit generated computed style access source code.Michael Drake2018-01-065-3/+5247
| | | | | | | | This means python3 is not required to build libcss. To re-generate the compute style access code, e.g. when adding new CSS properties, developers must run `make select_generator` and commit the updated generated source code.
* Selection: Autogenerated propset: Fix release of previous strings.Michael Drake2017-11-251-2/+2
|
* Selection: Content prop, use CSS_CONTENT_SET as condition for generator.Michael Drake2017-11-251-1/+1
|
* Select: Bug fixes in the generator.lcneves/select-autogenLucas Neves2017-11-192-18/+17
|
* Add support for new length units.Lucas Neves2017-11-131-0/+13
|