From d6f43136341159cccde9f707f2a493c109ec4e85 Mon Sep 17 00:00:00 2001 From: Alexandre Mazari Date: Fri, 29 Jul 2011 23:57:51 -0500 Subject: e-window: use a css file for widget styling Replace local styling (used for the tab close button and embed's status frame) by a global css sheet loaded at window construction. This allows tweaking style properties without rebuilding. The css file is installed in $(pkgdatadir)/epiphany.css. Signed-off-by: Diego Escalante Urrelo Bug #644805 --- src/ephy-window.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'src/ephy-window.c') diff --git a/src/ephy-window.c b/src/ephy-window.c index f5ee4b2a9..f8cedf9be 100644 --- a/src/ephy-window.c +++ b/src/ephy-window.c @@ -3683,6 +3683,8 @@ ephy_window_constructor (GType type, guint settings_connection; GSList *proxies; GtkWidget *proxy; + GtkCssProvider *css_provider; + GFile *css_file; object = G_OBJECT_CLASS (ephy_window_parent_class)->constructor (type, n_construct_properties, construct_params); @@ -3779,6 +3781,27 @@ ephy_window_constructor (GType type, } #endif + /* Attach the CSS provider to the window */ + css_file = g_file_new_for_path (ephy_file ("epiphany.css")); + css_provider = gtk_css_provider_new (); + gtk_css_provider_load_from_file (css_provider, + css_file, + &error); + if (error == NULL) + { + gtk_style_context_add_provider_for_screen (gtk_widget_get_screen (GTK_WIDGET (window)), + GTK_STYLE_PROVIDER (css_provider), + GTK_STYLE_PROVIDER_PRIORITY_APPLICATION); + } + else + { + g_warning ("Could not attach css style: %s", error->message); + g_error_free (error); + } + + g_object_unref (css_provider); + g_object_unref (css_file); + /* Initialize the menus */ priv->tabs_menu = ephy_tabs_menu_new (window); priv->enc_menu = ephy_encoding_menu_new (window); -- cgit v1.2.3