@@ -60,8 +60,12 @@ main (int argc, char **argv)
6060{
6161 char * desktopfile ;
6262 GOptionContext * context ;
63- GError * error , * error2 ;
64- GtkCssProvider * provider ;
63+ GError * error ;
64+ GdkScreen * screen ;
65+ GtkCssProvider * css ;
66+ GtkStyleProvider * provider ;
67+ const gchar * resource ;
68+ guint priority ;
6569
6670 bindtextdomain (GETTEXT_PACKAGE , MATELOCALEDIR );
6771 bind_textdomain_codeset (GETTEXT_PACKAGE , "UTF-8" );
@@ -167,22 +171,17 @@ main (int argc, char **argv)
167171 * connecting to the session manager */
168172 panel_session_init ();
169173
170- /*Load a css file from a path so the drag handle image can be loaded*/
171- error2 = NULL ;
172- provider = gtk_css_provider_new ();
173- gtk_css_provider_load_from_path (provider ,
174- DATADIR "/mate-panel/" "mate-panel.css" , & error2 );
175-
176- if (error2 != NULL ) {
177- g_warning ("Can't parse mate-panel CSS custom description: %s\n" , error2 -> message );
178- g_error_free (error2 );
179- }
180- else {
181- gtk_style_context_add_provider_for_screen (gdk_screen_get_default (),
182- GTK_STYLE_PROVIDER (provider ),
183- GTK_STYLE_PROVIDER_PRIORITY_FALLBACK );
184- }
185- g_object_unref (provider );
174+ /*Load a css file from a GResource so the drag handle image can be loaded*/
175+ screen = gdk_screen_get_default ();
176+ css = gtk_css_provider_new ();
177+ provider = GTK_STYLE_PROVIDER (css );
178+ resource = "/org/mate/panel/theme/mate-panel.css" ;
179+ priority = GTK_STYLE_PROVIDER_PRIORITY_FALLBACK ;
180+
181+ gtk_css_provider_load_from_resource (css , resource );
182+ gtk_style_context_add_provider_for_screen (screen , provider , priority );
183+
184+ g_object_unref (provider );
186185
187186 gtk_main ();
188187
0 commit comments