Gitweb links:
...log
http://git.netsurf-browser.org/libcss.git/shortlog/e6d5d797176bca17454b81a328b1329aaa84ff6a
...commit
http://git.netsurf-browser.org/libcss.git/commit/e6d5d797176bca17454b81a328b1329aaa84ff6a
...tree
http://git.netsurf-browser.org/libcss.git/tree/e6d5d797176bca17454b81a328b1329aaa84ff6a
The branch, master has been updated
via e6d5d797176bca17454b81a328b1329aaa84ff6a (commit)
via 4d9a3d3e1dcdaa912dd00341a668ced672847a26 (commit)
via 3c0c6b6def402f0c0b654974e193c8c4bf55047f (commit)
from 0275dec0dff54eefd03d9302af4562c4024fb993 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff
http://git.netsurf-browser.org/libcss.git/commit/?id=e6d5d797176bca17454b81a328b1329aaa84ff6a
commit e6d5d797176bca17454b81a328b1329aaa84ff6a
Author: Michael Drake <[email protected]>
Commit: Michael Drake <[email protected]>
properties: Define align-self values in terms of align-items
diff --git a/include/libcss/properties.h b/include/libcss/properties.h
index f600bcc..af0a1f5 100644
--- a/include/libcss/properties.h
+++ b/include/libcss/properties.h
@@ -163,12 +163,12 @@ enum css_align_items_e {
};
enum css_align_self_e {
- CSS_ALIGN_SELF_INHERIT = 0x0,
- CSS_ALIGN_SELF_STRETCH = 0x1,
- CSS_ALIGN_SELF_FLEX_START = 0x2,
- CSS_ALIGN_SELF_FLEX_END = 0x3,
- CSS_ALIGN_SELF_CENTER = 0x4,
- CSS_ALIGN_SELF_BASELINE = 0x5,
+ CSS_ALIGN_SELF_INHERIT = CSS_ALIGN_ITEMS_INHERIT,
+ CSS_ALIGN_SELF_STRETCH = CSS_ALIGN_ITEMS_STRETCH,
+ CSS_ALIGN_SELF_FLEX_START = CSS_ALIGN_ITEMS_FLEX_START,
+ CSS_ALIGN_SELF_FLEX_END = CSS_ALIGN_ITEMS_FLEX_END,
+ CSS_ALIGN_SELF_CENTER = CSS_ALIGN_ITEMS_CENTER,
+ CSS_ALIGN_SELF_BASELINE = CSS_ALIGN_ITEMS_BASELINE,
CSS_ALIGN_SELF_AUTO = 0x6
};
diff --git a/src/bytecode/opcodes.h b/src/bytecode/opcodes.h
index b82172f..8bc05b4 100644
--- a/src/bytecode/opcodes.h
+++ b/src/bytecode/opcodes.h
@@ -29,11 +29,11 @@ enum op_align_items {
};
enum op_align_self {
- ALIGN_SELF_STRETCH = 0x0000,
- ALIGN_SELF_FLEX_START = 0x0001,
- ALIGN_SELF_FLEX_END = 0x0002,
- ALIGN_SELF_CENTER = 0x0003,
- ALIGN_SELF_BASELINE = 0x0004,
+ ALIGN_SELF_STRETCH = ALIGN_ITEMS_STRETCH,
+ ALIGN_SELF_FLEX_START = ALIGN_ITEMS_FLEX_START,
+ ALIGN_SELF_FLEX_END = ALIGN_ITEMS_FLEX_END,
+ ALIGN_SELF_CENTER = ALIGN_ITEMS_CENTER,
+ ALIGN_SELF_BASELINE = ALIGN_ITEMS_BASELINE,
ALIGN_SELF_AUTO = 0x0005
};
commitdiff
http://git.netsurf-browser.org/libcss.git/commit/?id=4d9a3d3e1dcdaa912dd00341a668ced672847a26
commit 4d9a3d3e1dcdaa912dd00341a668ced672847a26
Author: Michael Drake <[email protected]>
Commit: Michael Drake <[email protected]>
tests: Add tests for position:sticky
diff --git a/test/data/parse/properties.dat b/test/data/parse/properties.dat
index 302b2dc..b6a0715 100644
--- a/test/data/parse/properties.dat
+++ b/test/data/parse/properties.dat
@@ -3289,6 +3289,14 @@ p:before { content: open-quote
url('http://picodrive.acornarcade.com/') " : " at
| 0x000c0049
#reset
+#data
+* { position: sticky; }
+#errors
+#expected
+| 1 *
+| 0x00100049
+#reset
+
##
## 4a - quotes
##
diff --git a/test/data/select/tests1.dat b/test/data/select/tests1.dat
index 67a8364..997e88e 100644
--- a/test/data/select/tests1.dat
+++ b/test/data/select/tests1.dat
@@ -14289,3 +14289,112 @@ word-spacing: normal
writing-mode: horizontal-tb
z-index: auto
#reset
+
+#tree screen
+| div*
+#ua
+div { position: sticky; }
+#errors
+#expected
+align-content: stretch
+align-items: stretch
+align-self: auto
+background-attachment: scroll
+background-color: #00000000
+background-image: none
+background-position: 0% 0%
+background-repeat: repeat
+border-collapse: separate
+border-spacing: 0px 0px
+border-top-color: #ff000000
+border-right-color: #ff000000
+border-bottom-color: #ff000000
+border-left-color: #ff000000
+border-top-style: none
+border-right-style: none
+border-bottom-style: none
+border-left-style: none
+border-top-width: 2px
+border-right-width: 2px
+border-bottom-width: 2px
+border-left-width: 2px
+bottom: auto
+box-sizing: content-box
+break-after: auto
+break-before: auto
+break-inside: auto
+caption-side: top
+clear: none
+clip: auto
+color: #ff000000
+column-count: auto
+column-fill: balance
+column-gap: normal
+column-rule-color: #ff000000
+column-rule-style: none
+column-rule-width: 2px
+column-span: none
+column-width: auto
+content: normal
+counter-increment: none
+counter-reset: none
+cursor: auto
+direction: ltr
+display: inline
+empty-cells: show
+flex-basis: auto
+flex-direction: row
+flex-grow: 0.000
+flex-shrink: 1.000
+flex-wrap: nowrap
+float: none
+font-family: sans-serif
+font-size: 16px
+font-style: normal
+font-variant: normal
+font-weight: normal
+height: auto
+justify-content: flex-start
+left: auto
+letter-spacing: normal
+line-height: normal
+list-style-image: none
+list-style-position: outside
+list-style-type: disc
+margin-top: 0px
+margin-right: 0px
+margin-bottom: 0px
+margin-left: 0px
+max-height: none
+max-width: none
+min-height: 0px
+min-width: 0px
+opacity: 1.000
+order: 0
+outline-color: invert
+outline-style: none
+outline-width: 2px
+overflow-x: visible
+overflow-y: visible
+padding-top: 0px
+padding-right: 0px
+padding-bottom: 0px
+padding-left: 0px
+position: sticky
+quotes: none
+right: auto
+table-layout: auto
+text-align: default
+text-decoration: none
+text-indent: 0px
+text-transform: none
+top: auto
+unicode-bidi: normal
+vertical-align: baseline
+visibility: visible
+white-space: normal
+width: auto
+word-spacing: normal
+writing-mode: horizontal-tb
+z-index: auto
+#reset
diff --git a/test/dump_computed.h b/test/dump_computed.h
index a5c4f13..2ce7849 100644
--- a/test/dump_computed.h
+++ b/test/dump_computed.h
@@ -2725,6 +2725,9 @@ static void dump_computed_style(const css_computed_style
*style, char *buf,
case CSS_POSITION_FIXED:
wrote = snprintf(ptr, *len, "position: fixed\n");
break;
+ case CSS_POSITION_STICKY:
+ wrote = snprintf(ptr, *len, "position: sticky\n");
+ break;
default:
wrote = 0;
break;
commitdiff
http://git.netsurf-browser.org/libcss.git/commit/?id=3c0c6b6def402f0c0b654974e193c8c4bf55047f
commit 3c0c6b6def402f0c0b654974e193c8c4bf55047f
Author: Michael Drake <[email protected]>
Commit: Michael Drake <[email protected]>
properties: position: Add support for 'sticky' value
diff --git a/docs/Bytecode b/docs/Bytecode
index e547b17..67450cd 100644
--- a/docs/Bytecode
+++ b/docs/Bytecode
@@ -876,6 +876,7 @@ Opcodes
1 => relative,
2 => absolute,
3 => fixed,
+ 4 => sticky,
other => Reserved for future expansion.
4a - quotes
diff --git a/include/libcss/properties.h b/include/libcss/properties.h
index e056a75..f600bcc 100644
--- a/include/libcss/properties.h
+++ b/include/libcss/properties.h
@@ -763,7 +763,8 @@ enum css_position_e {
CSS_POSITION_STATIC = 0x1,
CSS_POSITION_RELATIVE = 0x2,
CSS_POSITION_ABSOLUTE = 0x3,
- CSS_POSITION_FIXED = 0x4
+ CSS_POSITION_FIXED = 0x4,
+ CSS_POSITION_STICKY = 0x5
};
enum css_quotes_e {
diff --git a/src/bytecode/opcodes.h b/src/bytecode/opcodes.h
index 52886b9..b82172f 100644
--- a/src/bytecode/opcodes.h
+++ b/src/bytecode/opcodes.h
@@ -665,7 +665,8 @@ enum op_position {
POSITION_STATIC = 0x0000,
POSITION_RELATIVE = 0x0001,
POSITION_ABSOLUTE = 0x0002,
- POSITION_FIXED = 0x0003
+ POSITION_FIXED = 0x0003,
+ POSITION_STICKY = 0x0004
};
enum op_quotes {
diff --git a/src/parse/properties/properties.gen
b/src/parse/properties/properties.gen
index a001370..b0e797c 100644
--- a/src/parse/properties/properties.gen
+++ b/src/parse/properties/properties.gen
@@ -148,7 +148,7 @@ pitch:CSS_PROP_PITCH IDENT:( INHERIT: INITIAL: REVERT:
UNSET: X_LOW:0,PITCH_X_LO
pitch_range:CSS_PROP_PITCH_RANGE IDENT:( INHERIT: INITIAL: REVERT: UNSET:
IDENT:) NUMBER:( false:PITCH_RANGE_SET RANGE:num<0||num>F_100 NUMBER:)
-position:CSS_PROP_POSITION IDENT:( INHERIT: INITIAL: REVERT: UNSET:
LIBCSS_STATIC:0,POSITION_STATIC RELATIVE:0,POSITION_RELATIVE
ABSOLUTE:0,POSITION_ABSOLUTE FIXED:0,POSITION_FIXED IDENT:)
+position:CSS_PROP_POSITION IDENT:( INHERIT: INITIAL: REVERT: UNSET:
LIBCSS_STATIC:0,POSITION_STATIC RELATIVE:0,POSITION_RELATIVE
ABSOLUTE:0,POSITION_ABSOLUTE FIXED:0,POSITION_FIXED STICKY:0,POSITION_STICKY
IDENT:)
richness:CSS_PROP_RICHNESS IDENT:( INHERIT: INITIAL: REVERT: UNSET: IDENT:)
NUMBER:( false:RICHNESS_SET RANGE:num<0||num>F_100 NUMBER:)
diff --git a/src/parse/propstrings.c b/src/parse/propstrings.c
index 2cac65f..786a3b7 100644
--- a/src/parse/propstrings.c
+++ b/src/parse/propstrings.c
@@ -488,6 +488,7 @@ const stringmap_entry stringmap[LAST_KNOWN] = {
SMAP("infinite"),
SMAP("grid"),
SMAP("inline-grid"),
+ SMAP("sticky"),
SMAP("aliceblue"),
SMAP("antiquewhite"),
diff --git a/src/parse/propstrings.h b/src/parse/propstrings.h
index 6c84f71..6d6dd49 100644
--- a/src/parse/propstrings.h
+++ b/src/parse/propstrings.h
@@ -109,7 +109,7 @@ enum {
VERTICAL_LR, CONTENT_BOX, BORDER_BOX, STRETCH, INLINE_FLEX, FLEX_START,
FLEX_END, SPACE_BETWEEN, SPACE_AROUND, SPACE_EVENLY, ROW, ROW_REVERSE,
COLUMN_REVERSE, WRAP_STRING, WRAP_REVERSE, AND, OR, ONLY, INFINITE,
- GRID, INLINE_GRID,
+ GRID, INLINE_GRID, STICKY,
/* Named colours */
FIRST_COLOUR,
diff --git a/src/select/properties/position.c b/src/select/properties/position.c
index 738dbff..cc4b3e7 100644
--- a/src/select/properties/position.c
+++ b/src/select/properties/position.c
@@ -35,6 +35,9 @@ css_error css__cascade_position(uint32_t opv, css_style
*style,
case POSITION_FIXED:
value = CSS_POSITION_FIXED;
break;
+ case POSITION_STICKY:
+ value = CSS_POSITION_STICKY;
+ break;
}
}
-----------------------------------------------------------------------
Summary of changes:
docs/Bytecode | 1 +
include/libcss/properties.h | 15 ++---
src/bytecode/opcodes.h | 13 +++--
src/parse/properties/properties.gen | 2 +-
src/parse/propstrings.c | 1 +
src/parse/propstrings.h | 2 +-
src/select/properties/position.c | 3 +
test/data/parse/properties.dat | 8 +++
test/data/select/tests1.dat | 109 +++++++++++++++++++++++++++++++++++
test/dump_computed.h | 3 +
10 files changed, 142 insertions(+), 15 deletions(-)
diff --git a/docs/Bytecode b/docs/Bytecode
index e547b17..67450cd 100644
--- a/docs/Bytecode
+++ b/docs/Bytecode
@@ -876,6 +876,7 @@ Opcodes
1 => relative,
2 => absolute,
3 => fixed,
+ 4 => sticky,
other => Reserved for future expansion.
4a - quotes
diff --git a/include/libcss/properties.h b/include/libcss/properties.h
index e056a75..af0a1f5 100644
--- a/include/libcss/properties.h
+++ b/include/libcss/properties.h
@@ -163,12 +163,12 @@ enum css_align_items_e {
};
enum css_align_self_e {
- CSS_ALIGN_SELF_INHERIT = 0x0,
- CSS_ALIGN_SELF_STRETCH = 0x1,
- CSS_ALIGN_SELF_FLEX_START = 0x2,
- CSS_ALIGN_SELF_FLEX_END = 0x3,
- CSS_ALIGN_SELF_CENTER = 0x4,
- CSS_ALIGN_SELF_BASELINE = 0x5,
+ CSS_ALIGN_SELF_INHERIT = CSS_ALIGN_ITEMS_INHERIT,
+ CSS_ALIGN_SELF_STRETCH = CSS_ALIGN_ITEMS_STRETCH,
+ CSS_ALIGN_SELF_FLEX_START = CSS_ALIGN_ITEMS_FLEX_START,
+ CSS_ALIGN_SELF_FLEX_END = CSS_ALIGN_ITEMS_FLEX_END,
+ CSS_ALIGN_SELF_CENTER = CSS_ALIGN_ITEMS_CENTER,
+ CSS_ALIGN_SELF_BASELINE = CSS_ALIGN_ITEMS_BASELINE,
CSS_ALIGN_SELF_AUTO = 0x6
};
@@ -763,7 +763,8 @@ enum css_position_e {
CSS_POSITION_STATIC = 0x1,
CSS_POSITION_RELATIVE = 0x2,
CSS_POSITION_ABSOLUTE = 0x3,
- CSS_POSITION_FIXED = 0x4
+ CSS_POSITION_FIXED = 0x4,
+ CSS_POSITION_STICKY = 0x5
};
enum css_quotes_e {
diff --git a/src/bytecode/opcodes.h b/src/bytecode/opcodes.h
index 52886b9..8bc05b4 100644
--- a/src/bytecode/opcodes.h
+++ b/src/bytecode/opcodes.h
@@ -29,11 +29,11 @@ enum op_align_items {
};
enum op_align_self {
- ALIGN_SELF_STRETCH = 0x0000,
- ALIGN_SELF_FLEX_START = 0x0001,
- ALIGN_SELF_FLEX_END = 0x0002,
- ALIGN_SELF_CENTER = 0x0003,
- ALIGN_SELF_BASELINE = 0x0004,
+ ALIGN_SELF_STRETCH = ALIGN_ITEMS_STRETCH,
+ ALIGN_SELF_FLEX_START = ALIGN_ITEMS_FLEX_START,
+ ALIGN_SELF_FLEX_END = ALIGN_ITEMS_FLEX_END,
+ ALIGN_SELF_CENTER = ALIGN_ITEMS_CENTER,
+ ALIGN_SELF_BASELINE = ALIGN_ITEMS_BASELINE,
ALIGN_SELF_AUTO = 0x0005
};
@@ -665,7 +665,8 @@ enum op_position {
POSITION_STATIC = 0x0000,
POSITION_RELATIVE = 0x0001,
POSITION_ABSOLUTE = 0x0002,
- POSITION_FIXED = 0x0003
+ POSITION_FIXED = 0x0003,
+ POSITION_STICKY = 0x0004
};
enum op_quotes {
diff --git a/src/parse/properties/properties.gen
b/src/parse/properties/properties.gen
index a001370..b0e797c 100644
--- a/src/parse/properties/properties.gen
+++ b/src/parse/properties/properties.gen
@@ -148,7 +148,7 @@ pitch:CSS_PROP_PITCH IDENT:( INHERIT: INITIAL: REVERT:
UNSET: X_LOW:0,PITCH_X_LO
pitch_range:CSS_PROP_PITCH_RANGE IDENT:( INHERIT: INITIAL: REVERT: UNSET:
IDENT:) NUMBER:( false:PITCH_RANGE_SET RANGE:num<0||num>F_100 NUMBER:)
-position:CSS_PROP_POSITION IDENT:( INHERIT: INITIAL: REVERT: UNSET:
LIBCSS_STATIC:0,POSITION_STATIC RELATIVE:0,POSITION_RELATIVE
ABSOLUTE:0,POSITION_ABSOLUTE FIXED:0,POSITION_FIXED IDENT:)
+position:CSS_PROP_POSITION IDENT:( INHERIT: INITIAL: REVERT: UNSET:
LIBCSS_STATIC:0,POSITION_STATIC RELATIVE:0,POSITION_RELATIVE
ABSOLUTE:0,POSITION_ABSOLUTE FIXED:0,POSITION_FIXED STICKY:0,POSITION_STICKY
IDENT:)
richness:CSS_PROP_RICHNESS IDENT:( INHERIT: INITIAL: REVERT: UNSET: IDENT:)
NUMBER:( false:RICHNESS_SET RANGE:num<0||num>F_100 NUMBER:)
diff --git a/src/parse/propstrings.c b/src/parse/propstrings.c
index 2cac65f..786a3b7 100644
--- a/src/parse/propstrings.c
+++ b/src/parse/propstrings.c
@@ -488,6 +488,7 @@ const stringmap_entry stringmap[LAST_KNOWN] = {
SMAP("infinite"),
SMAP("grid"),
SMAP("inline-grid"),
+ SMAP("sticky"),
SMAP("aliceblue"),
SMAP("antiquewhite"),
diff --git a/src/parse/propstrings.h b/src/parse/propstrings.h
index 6c84f71..6d6dd49 100644
--- a/src/parse/propstrings.h
+++ b/src/parse/propstrings.h
@@ -109,7 +109,7 @@ enum {
VERTICAL_LR, CONTENT_BOX, BORDER_BOX, STRETCH, INLINE_FLEX, FLEX_START,
FLEX_END, SPACE_BETWEEN, SPACE_AROUND, SPACE_EVENLY, ROW, ROW_REVERSE,
COLUMN_REVERSE, WRAP_STRING, WRAP_REVERSE, AND, OR, ONLY, INFINITE,
- GRID, INLINE_GRID,
+ GRID, INLINE_GRID, STICKY,
/* Named colours */
FIRST_COLOUR,
diff --git a/src/select/properties/position.c b/src/select/properties/position.c
index 738dbff..cc4b3e7 100644
--- a/src/select/properties/position.c
+++ b/src/select/properties/position.c
@@ -35,6 +35,9 @@ css_error css__cascade_position(uint32_t opv, css_style
*style,
case POSITION_FIXED:
value = CSS_POSITION_FIXED;
break;
+ case POSITION_STICKY:
+ value = CSS_POSITION_STICKY;
+ break;
}
}
diff --git a/test/data/parse/properties.dat b/test/data/parse/properties.dat
index 302b2dc..b6a0715 100644
--- a/test/data/parse/properties.dat
+++ b/test/data/parse/properties.dat
@@ -3289,6 +3289,14 @@ p:before { content: open-quote
url('http://picodrive.acornarcade.com/') " : " at
| 0x000c0049
#reset
+#data
+* { position: sticky; }
+#errors
+#expected
+| 1 *
+| 0x00100049
+#reset
+
##
## 4a - quotes
##
diff --git a/test/data/select/tests1.dat b/test/data/select/tests1.dat
index 67a8364..997e88e 100644
--- a/test/data/select/tests1.dat
+++ b/test/data/select/tests1.dat
@@ -14289,3 +14289,112 @@ word-spacing: normal
writing-mode: horizontal-tb
z-index: auto
#reset
+
+#tree screen
+| div*
+#ua
+div { position: sticky; }
+#errors
+#expected
+align-content: stretch
+align-items: stretch
+align-self: auto
+background-attachment: scroll
+background-color: #00000000
+background-image: none
+background-position: 0% 0%
+background-repeat: repeat
+border-collapse: separate
+border-spacing: 0px 0px
+border-top-color: #ff000000
+border-right-color: #ff000000
+border-bottom-color: #ff000000
+border-left-color: #ff000000
+border-top-style: none
+border-right-style: none
+border-bottom-style: none
+border-left-style: none
+border-top-width: 2px
+border-right-width: 2px
+border-bottom-width: 2px
+border-left-width: 2px
+bottom: auto
+box-sizing: content-box
+break-after: auto
+break-before: auto
+break-inside: auto
+caption-side: top
+clear: none
+clip: auto
+color: #ff000000
+column-count: auto
+column-fill: balance
+column-gap: normal
+column-rule-color: #ff000000
+column-rule-style: none
+column-rule-width: 2px
+column-span: none
+column-width: auto
+content: normal
+counter-increment: none
+counter-reset: none
+cursor: auto
+direction: ltr
+display: inline
+empty-cells: show
+flex-basis: auto
+flex-direction: row
+flex-grow: 0.000
+flex-shrink: 1.000
+flex-wrap: nowrap
+float: none
+font-family: sans-serif
+font-size: 16px
+font-style: normal
+font-variant: normal
+font-weight: normal
+height: auto
+justify-content: flex-start
+left: auto
+letter-spacing: normal
+line-height: normal
+list-style-image: none
+list-style-position: outside
+list-style-type: disc
+margin-top: 0px
+margin-right: 0px
+margin-bottom: 0px
+margin-left: 0px
+max-height: none
+max-width: none
+min-height: 0px
+min-width: 0px
+opacity: 1.000
+order: 0
+outline-color: invert
+outline-style: none
+outline-width: 2px
+overflow-x: visible
+overflow-y: visible
+padding-top: 0px
+padding-right: 0px
+padding-bottom: 0px
+padding-left: 0px
+position: sticky
+quotes: none
+right: auto
+table-layout: auto
+text-align: default
+text-decoration: none
+text-indent: 0px
+text-transform: none
+top: auto
+unicode-bidi: normal
+vertical-align: baseline
+visibility: visible
+white-space: normal
+width: auto
+word-spacing: normal
+writing-mode: horizontal-tb
+z-index: auto
+#reset
diff --git a/test/dump_computed.h b/test/dump_computed.h
index a5c4f13..2ce7849 100644
--- a/test/dump_computed.h
+++ b/test/dump_computed.h
@@ -2725,6 +2725,9 @@ static void dump_computed_style(const css_computed_style
*style, char *buf,
case CSS_POSITION_FIXED:
wrote = snprintf(ptr, *len, "position: fixed\n");
break;
+ case CSS_POSITION_STICKY:
+ wrote = snprintf(ptr, *len, "position: sticky\n");
+ break;
default:
wrote = 0;
break;
--
Cascading Style Sheets library
_______________________________________________
netsurf-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]