diff options
author | Caitlin Potter <snowball@defpixel.com> | 2013-09-10 17:44:53 +0100 |
---|---|---|
committer | Michael Drake <tlsa@netsurf-browser.org> | 2013-09-10 17:44:53 +0100 |
commit | bc9c80c2dbf21d805f5372aea3df14d310a1512c (patch) | |
tree | 990fab4a6a72e7ddea5f12da20329412da5006b6 /src/select/propset.h | |
parent | 2234cab352b0ef702b32aaa7ef433c4793086824 (diff) | |
download | libcss-bc9c80c2dbf21d805f5372aea3df14d310a1512c.tar.gz libcss-bc9c80c2dbf21d805f5372aea3df14d310a1512c.tar.bz2 |
Add support for parsing the writing-mode property. Thanks to Caitlin Potter.
Diffstat (limited to 'src/select/propset.h')
-rw-r--r-- | src/select/propset.h | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/src/select/propset.h b/src/select/propset.h index 2b705ae..29e8ae5 100644 --- a/src/select/propset.h +++ b/src/select/propset.h @@ -22,7 +22,7 @@ static const css_computed_uncommon default_uncommon = { 0, (CSS_WORD_SPACING_INHERIT << 2) | (CSS_COUNTER_INCREMENT_NONE << 1) | CSS_COUNTER_RESET_NONE, - (CSS_CURSOR_INHERIT << 3) | 0, + (CSS_CURSOR_INHERIT << 3) | (CSS_WRITING_MODE_INHERIT << 1) | 0, 0, 0, (CSS_CLIP_AUTO << 2) | CSS_CONTENT_NORMAL @@ -214,6 +214,28 @@ static inline css_error set_word_spacing( #undef WORD_SPACING_SHIFT #undef WORD_SPACING_INDEX +#define WRITING_MODE_INDEX 4 +#define WRITING_MODE_SHIFT 1 +#define WRITING_MODE_MASK 0x6 +static inline css_error set_writing_mode( + css_computed_style *style, uint8_t type) +{ + uint8_t *bits; + + ENSURE_UNCOMMON; + + bits = &style->uncommon->bits[WRITING_MODE_INDEX]; + + /* 2bits: type */ + *bits = (*bits & ~WRITING_MODE_MASK) | + ((type & 0x3) << WRITING_MODE_SHIFT); + + return CSS_OK; +} +#undef WRITING_MODE_MASK +#undef WRITING_MODE_SHIFT +#undef WRITING_MODE_INDEX + #define COUNTER_INCREMENT_INDEX 3 #define COUNTER_INCREMENT_SHIFT 1 #define COUNTER_INCREMENT_MASK 0x2 |