| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
No parse implementation as yet.
Selection hasn't been updated, either. One item of note
in that area is that a client currently provides the
media for top-level sheets being added to a selection
context. This probably needs to change to providing a
lwc_string containing the verbatim media query from
the containing document's import mechanism. That way,
the internal representation of media queries can remain
opaque to clients.
|
|
|
|
| |
/include/libcss/fpmath.h:86:29: runtime error: left shift of negative value -1
|
|
|
|
| |
include/libcss/fpmath.h:60:27: runtime error: left shift of negative value -2611200
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Note this changes the public API. We can't compose directly
over child style now, since it may be interned.
|
| |
|
|
|
|
|
| |
Note this changes the API.
Selection tests updated.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, we performed normal selection from CSS sources, and then iterated
over all the properties in the populated computed style. If the properties were
unset or their values were not from either a UA stylesheet or user stylesheet
with !important set, then we asked the client program (e.g. NetSurf) if there
were any presentational hints for that node, for each such property.
In the worst case this triggered N_PROPERTIES * N_NODES calls back to the client
program, even for properties that can't be set via HTML attributes.
The new API asks the client to supply a list of all the presentational hints
that apply to the given node. For most nodes on modern documents, this is 0.
Any presentational hints are applied before selection from CSS sources.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Now, overflow is a shorthand property setting both overflow-x and
overflow-y.
The getter for the computed overflow has been removed, and replaced
with two for overflow-x and overflow-y.
|
|
|
|
|
|
|
|
|
| |
- 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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
property handler table.
|
| |
|
|
|
|
| |
svn path=/trunk/libcss/; revision=13864
|
|
|
|
| |
svn path=/trunk/libcss/; revision=13709
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
+ 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
|
|
|
|
|
|
| |
Things missing: parser tests; the following descriptors: font-feature-settings, font-stretch, font-variant, unicode-range.
svn path=/trunk/libcss/; revision=13244
|
|
|
|
| |
svn path=/trunk/libcss/; revision=12769
|
|
|
|
|
|
| |
Montgomerie.
svn path=/trunk/libcss/; revision=12697
|