summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSebastian Geerken (Patch by Jorge) <devnull@localhost>2012-09-27 13:17:31 +0200
committerSebastian Geerken (Patch by Jorge) <devnull@localhost>2012-09-27 13:17:31 +0200
commit4fa58df07b541950f2c5abb3fa2215a075bae37f (patch)
treed68767da5ebfb675e41c27d782301ba6c0b75493 /src
parent5b4bea34b31acc2c108562e979c58271be57d6ee (diff)
Support for "xml:lang" attribute.
Diffstat (limited to 'src')
-rw-r--r--src/html.cc14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/html.cc b/src/html.cc
index d33ddca0..b9d2428f 100644
--- a/src/html.cc
+++ b/src/html.cc
@@ -3480,7 +3480,19 @@ static void Html_parse_common_attrs(DilloHtml *html, char *tag, int tagsize)
html->styleEngine->setStyle (attrbuf);
}
- if (tagsize >= 10) { /* TODO prefs.hyphenate? */
+ /* handle "xml:lang" and "lang" attributes */
+ int hasXmlLang = 0;
+ if (tagsize >= 14) {
+ /* length of "<t xml:lang=i>" */
+ attrbuf = Html_get_attr2(html, tag, tagsize, "xml:lang",
+ HTML_LeftTrim | HTML_RightTrim);
+ if (attrbuf) {
+ html->styleEngine->setNonCssHint(PROPERTY_X_LANG, CSS_TYPE_STRING,
+ attrbuf);
+ hasXmlLang = 1;
+ }
+ }
+ if (!hasXmlLang && tagsize >= 10) { /* 'xml:lang' prevails over 'lang' */
/* length of "<t lang=i>" */
attrbuf = Html_get_attr2(html, tag, tagsize, "lang",
HTML_LeftTrim | HTML_RightTrim);