Partally fix the style of finder

This commit is contained in:
daleclack 2023-11-08 18:01:15 +08:00
parent 37663f1626
commit 4830a01ed1
4 changed files with 70 additions and 11 deletions

View File

@ -8,13 +8,14 @@
/* @import url("resource://org/gtk/daleclack/reset.css"); */
.finder_box box{
background-color:alpha(white,0.7);
background-color:alpha(gray,0.7);
}
.finder_separator{
background-color:alpha(white ,0.7);
/* Background color in the box should be transparent*/
.finder_buttons box{
background-color: transparent;
}
label{
color:rgb(35, 27, 27);
.finder_buttons separator{
background-color: transparent;
}

View File

@ -104,16 +104,17 @@ static void my_dock_init(MyDock *self)
// Add finder
self->finder = my_finder_new(GTK_ORIENTATION_HORIZONTAL, 5);
GtkCssProvider *provider = gtk_css_provider_new();
gtk_css_provider_load_from_resource(provider, "/org/gtk/daleclack/style.css");
gtk_widget_add_css_class(self->finder_box, "finder_box");
gtk_style_context_add_provider_for_display(gtk_widget_get_display(self->finder_box),
GTK_STYLE_PROVIDER(provider), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
gtk_box_append(GTK_BOX(self->finder_box), self->finder);
// Link Signals
g_signal_connect(self->btnlaunch, "clicked", G_CALLBACK(btnlaunch_clicked), self);
GtkCssProvider *provider = gtk_css_provider_new();
gtk_css_provider_load_from_resource(provider, "/org/gtk/daleclack/style.css");
gtk_widget_add_css_class(GTK_WIDGET(self->finder_box), "finder_box");
gtk_style_context_add_provider_for_display(gtk_widget_get_display(GTK_WIDGET(self->finder_box)),
GTK_STYLE_PROVIDER(provider), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
my_finder_add_style(MY_FINDER(self->finder), provider);
// Pack widgets
// Dock position and mode, will be changable soon

View File

@ -131,6 +131,61 @@ static void my_finder_init(MyFinder *self)
gtk_box_append(GTK_BOX(self), self->menu_button);
}
void my_finder_add_style(MyFinder *finder, GtkCssProvider *provider)
{
// Make box in the buttons transparent
gtk_widget_add_css_class(finder->btn_icon, "finder_buttons");
gtk_style_context_add_provider_for_display(gtk_widget_get_display(finder->btn_icon),
GTK_STYLE_PROVIDER(provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
gtk_widget_add_css_class(GTK_WIDGET(finder->btntitle), "finder_buttons");
gtk_style_context_add_provider_for_display(gtk_widget_get_display(finder->btntitle),
GTK_STYLE_PROVIDER(provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
gtk_widget_add_css_class(GTK_WIDGET(finder->btnfile), "finder_buttons");
gtk_style_context_add_provider_for_display(gtk_widget_get_display(finder->btnfile),
GTK_STYLE_PROVIDER(provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
gtk_widget_add_css_class(GTK_WIDGET(finder->btnedit), "finder_buttons");
gtk_style_context_add_provider_for_display(gtk_widget_get_display(finder->btnedit),
GTK_STYLE_PROVIDER(provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
gtk_widget_add_css_class(GTK_WIDGET(finder->btnshow), "finder_buttons");
gtk_style_context_add_provider_for_display(gtk_widget_get_display(finder->btnshow),
GTK_STYLE_PROVIDER(provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
gtk_widget_add_css_class(GTK_WIDGET(finder->btngoto), "finder_buttons");
gtk_style_context_add_provider_for_display(gtk_widget_get_display(finder->btngoto),
GTK_STYLE_PROVIDER(provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
gtk_widget_add_css_class(GTK_WIDGET(finder->btnwin), "finder_buttons");
gtk_style_context_add_provider_for_display(gtk_widget_get_display(finder->btnwin),
GTK_STYLE_PROVIDER(provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
gtk_widget_add_css_class(GTK_WIDGET(finder->btnhelp), "finder_buttons");
gtk_style_context_add_provider_for_display(gtk_widget_get_display(finder->btnhelp),
GTK_STYLE_PROVIDER(provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
gtk_widget_add_css_class(GTK_WIDGET(finder->separator), "finder_buttons");
gtk_style_context_add_provider_for_display(gtk_widget_get_display(finder->separator),
GTK_STYLE_PROVIDER(provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
gtk_widget_add_css_class(GTK_WIDGET(finder->menu_button), "finder_buttons");
gtk_style_context_add_provider_for_display(gtk_widget_get_display(finder->menu_button),
GTK_STYLE_PROVIDER(provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
}
static void my_finder_class_init(MyFinderClass *klass)
{
}

View File

@ -5,3 +5,5 @@
G_DECLARE_FINAL_TYPE(MyFinder, my_finder, MY, FINDER, GtkBox)
GtkWidget *my_finder_new(GtkOrientation orientation, int spacing);
void my_finder_add_style(MyFinder *finder, GtkCssProvider *provider);