aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/css.cc11
-rw-r--r--src/html.cc8
-rw-r--r--src/styleengine.cc14
3 files changed, 19 insertions, 14 deletions
diff --git a/src/css.cc b/src/css.cc
index 53ee10c9..70a8acf7 100644
--- a/src/css.cc
+++ b/src/css.cc
@@ -10,6 +10,7 @@
*/
#include <stdio.h>
+#include "prefs.h"
#include "html_common.hh"
#include "css.hh"
@@ -99,10 +100,12 @@ CssStyleSheet * CssContext::buildUserAgentStyle () {
CssProperty::Value v;
props = new CssPropertyList ();
- v.color = 13;
- props->set (CssProperty::CSS_PROPERTY_BACKGROUND_COLOR, v);
- v.size = 20;
- props->set (CssProperty::CSS_PROPERTY_FONT_SIZE, v);
+ v.color = prefs.link_color;
+ props->set (CssProperty::CSS_PROPERTY_COLOR, v);
+ v.textDecoration = dw::core::style::TEXT_DECORATION_UNDERLINE;
+ props->set (CssProperty::CSS_PROPERTY_TEXT_DECORATION, v);
+ v.cursor = dw::core::style::CURSOR_POINTER;
+ props->set (CssProperty::CSS_PROPERTY_CURSOR, v);
s->addRule (new CssSelector(a_Html_tag_index("a"), NULL, NULL), props);
return s;
}
diff --git a/src/html.cc b/src/html.cc
index 4ad1b5bc..7edb6b27 100644
--- a/src/html.cc
+++ b/src/html.cc
@@ -2495,17 +2495,9 @@ static void Html_tag_open_a(DilloHtml *html, const char *tag, int tagsize)
S_TOP(html)->current_bg_color),
*/
);
- } else {
- style_attrs.color = Color::createSimple(HT2LT(html),
- html->link_color);
}
-// if ((attrbuf = a_Html_get_attr(html, tag, tagsize, "title")))
-// style_attrs.x_tooltip = a_Dw_tooltip_new_no_ref(attrbuf);
-
- style_attrs.textDecoration |= TEXT_DECORATION_UNDERLINE;
style_attrs.x_link = Html_set_new_link(html, &url);
- style_attrs.cursor = CURSOR_POINTER;
// html->styleEngine->style () =
// Style::create (HT2LT(html), &style_attrs);
diff --git a/src/styleengine.cc b/src/styleengine.cc
index c75ad26d..e3f16bb7 100644
--- a/src/styleengine.cc
+++ b/src/styleengine.cc
@@ -45,7 +45,7 @@ StyleEngine::~StyleEngine () {
void StyleEngine::startElement (int tag, const char *id, const char *klass,
const char *style) {
- fprintf(stderr, "===> START %d %s %s %s\n", tag, id, klass, style);
+// fprintf(stderr, "===> START %d %s %s %s\n", tag, id, klass, style);
if (stack->getRef (stack->size () - 1)->style == NULL)
style0 ();
@@ -66,7 +66,7 @@ void StyleEngine::setNonCssProperties (CssPropertyList *props) {
}
void StyleEngine::endElement (int tag) {
- fprintf(stderr, "===> END %d\n", tag);
+// fprintf(stderr, "===> END %d\n", tag);
assert (stack->size () > 0);
Node *n = stack->getRef (stack->size () - 1);
@@ -97,12 +97,22 @@ void StyleEngine::apply (StyleAttrs *attrs, CssPropertyList *props) {
case CssProperty::CSS_PROPERTY_BORDER_BOTTOM_STYLE:
attrs->borderStyle.bottom = p->value.borderStyle;
break;
+ case CssProperty::CSS_PROPERTY_COLOR:
+ attrs->color =
+ Color::createSimple (layout, p->value.color);
+ break;
+ case CssProperty::CSS_PROPERTY_CURSOR:
+ attrs->cursor = p->value.cursor;
+ break;
case CssProperty::CSS_PROPERTY_FONT_FAMILY:
fontAttrs.name = p->value.name;
break;
case CssProperty::CSS_PROPERTY_FONT_SIZE:
fontAttrs.size = p->value.size;
break;
+ case CssProperty::CSS_PROPERTY_TEXT_DECORATION:
+ attrs->textDecoration |= p->value.textDecoration;
+ break;
default:
break;