[evolution/wip/webkit2] EHTMLEditorPageDialog - Dialog shows wrong link color



commit a33bfe8549e2686b72e0fa8d7a90c9dc8561edc7
Author: Tomas Popela <tpopela redhat com>
Date:   Mon Mar 30 11:11:55 2015 +0200

    EHTMLEditorPageDialog - Dialog shows wrong link color

 e-util/e-html-editor-page-dialog.c |   25 +++++++++++++++++--------
 1 files changed, 17 insertions(+), 8 deletions(-)
---
diff --git a/e-util/e-html-editor-page-dialog.c b/e-util/e-html-editor-page-dialog.c
index c844a7b..795c748 100644
--- a/e-util/e-html-editor-page-dialog.c
+++ b/e-util/e-html-editor-page-dialog.c
@@ -395,14 +395,23 @@ html_editor_page_dialog_show (GtkWidget *widget)
 
                g_variant_get (result, "(&s)", &value);
                if (!value || !*value) {
-                       GdkColor color;
-                       gtk_widget_style_get (
-                               GTK_WIDGET (view), "link-color", &color, NULL);
-
-                       rgba.alpha = 1;
-                       rgba.red = ((gdouble) color.red) / G_MAXUINT16;
-                       rgba.green = ((gdouble) color.green) / G_MAXUINT16;
-                       rgba.blue = ((gdouble) color.blue) / G_MAXUINT16;
+                       GdkColor *color = NULL;
+                       GtkStyleContext *context;
+
+                       context = gtk_widget_get_style_context (GTK_WIDGET (view));
+                       gtk_style_context_get_style (context, "link-color", &color, NULL);
+
+                       if (color == NULL) {
+                               rgba.alpha = 1;
+                               rgba.red = 0;
+                               rgba.green = 0;
+                               rgba.blue = 1;
+                       } else {
+                               rgba.alpha = 1;
+                               rgba.red = ((gdouble) color->red) / G_MAXUINT16;
+                               rgba.green = ((gdouble) color->green) / G_MAXUINT16;
+                               rgba.blue = ((gdouble) color->blue) / G_MAXUINT16;
+                       }
                } else {
                        gdk_rgba_parse (&rgba, value);
                }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]