[gnome-disk-utility] Refine volumes grid



commit 93195c1d0914e1478072d4067f115be6d4e896fb
Author: Trinh Anh Ngoc <atw1990 gmail com>
Date:   Thu Dec 4 11:20:20 2014 +0700

    Refine volumes grid
    
    https://bugzilla.gnome.org/show_bug.cgi?id=741095

 src/disks/gduvolumegrid.c           |   20 ++++++++--------
 src/disks/gduwindow.c               |   43 ++++------------------------------
 src/disks/gnome-disks.gresource.xml |    1 +
 src/disks/ui/disks.ui               |    3 ++
 src/disks/ui/gdu.css                |   29 +++++++++++++++++++++++
 5 files changed, 48 insertions(+), 48 deletions(-)
---
diff --git a/src/disks/gduvolumegrid.c b/src/disks/gduvolumegrid.c
index af42707..565ea97 100644
--- a/src/disks/gduvolumegrid.c
+++ b/src/disks/gduvolumegrid.c
@@ -810,19 +810,19 @@ render_element (GduVolumeGrid *grid,
     gtk_render_focus (context, cr, x + 2, y + 2, w - 4, h - 4);
   if (element->unused > 0)
     {
+      GtkStyleContext *style;
+      GdkRGBA color;
       gdouble unused_height = element->unused * h / element->size;
-      cairo_pattern_t *gradient;
       cairo_save (cr);
-      gradient = cairo_pattern_create_linear (x, y + unused_height - 10, x, y + unused_height);
-      cairo_pattern_add_color_stop_rgba (gradient, 0.0,  1.0, 1.0, 1.0, 0.25);
-      cairo_pattern_add_color_stop_rgba (gradient, 1.0,  1.0, 1.0, 1.0, 0.00);
-      cairo_set_source (cr, gradient);
-      cairo_pattern_destroy (gradient);
+      style = gtk_widget_get_style_context (GTK_WIDGET (grid));
+      gtk_style_context_lookup_color (style, "theme_base_color", &color);
+      color.alpha = 0.25;
+      gdk_cairo_set_source_rgba (cr, &color);
       cairo_rectangle (cr,
-                       x,
-                       y,
-                       w,
-                       unused_height);
+                       x + 1,
+                       y + 1,
+                       w - 2,
+                       unused_height - 2);
       cairo_fill (cr);
       cairo_restore (cr);
     }
diff --git a/src/disks/gduwindow.c b/src/disks/gduwindow.c
index e8646cc..48a8086 100644
--- a/src/disks/gduwindow.c
+++ b/src/disks/gduwindow.c
@@ -789,48 +789,13 @@ static void
 init_css (GduWindow *window)
 {
   GtkCssProvider *provider;
+  GFile *file;
   GError *error;
-  const gchar *css =
-"#devtab-grid-toolbar.toolbar {\n"
-"    border-width: 1px;\n"
-"    border-radius: 3px;\n"
-"    border-style: solid;\n"
-"    background-color: @theme_base_color;\n"
-"}\n"
-"\n"
-".gnome-disk-utility-grid {\n"
-"  border-width: 1px;\n"
-"  border-radius: 3px;\n"
-"  border-style: solid;\n"
-"  border-color: @borders;\n"
-"  background-color: @theme_base_color;\n"
-"}\n"
-"\n"
-".gnome-disk-utility-grid:selected {\n"
-"  background-image: -gtk-gradient(radial,\n"
-"                                  center center, 0,\n"
-"                                  center center, 1,\n"
-"                                  from(@theme_selected_bg_color),\n"
-"                                  to(shade (@theme_selected_bg_color, 0.80)));\n"
-"  -adwaita-focus-border-color: mix(@theme_selected_fg_color, @theme_selected_bg_color, 0.30);\n"
-"}\n"
-"\n"
-".gnome-disk-utility-grid:selected:backdrop {\n"
-"  background-image: -gtk-gradient(radial,\n"
-"                                  center center, 0,\n"
-"                                  center center, 1,\n"
-"                                  from(@theme_unfocused_selected_bg_color),\n"
-"                                  to(shade (@theme_unfocused_selected_bg_color, 0.80)));\n"
-"  -adwaita-focus-border-color: mix(@theme_unfocused_selected_fg_color, @theme_unfocused_selected_bg_color, 
0.30);\n"
-"}\n"
-;
 
   provider = gtk_css_provider_new ();
+  file = g_file_new_for_uri ("resource:///org/gnome/Disks/ui/gdu.css");
   error = NULL;
-  if (!gtk_css_provider_load_from_data (provider,
-                                        css,
-                                        -1,
-                                        &error))
+  if (!gtk_css_provider_load_from_file (provider, file, NULL))
     {
       g_warning ("Can’t parse custom CSS: %s\n", error->message);
       g_error_free (error);
@@ -840,6 +805,8 @@ init_css (GduWindow *window)
   gtk_style_context_add_provider_for_screen (gtk_widget_get_screen (GTK_WIDGET (window)),
                                              GTK_STYLE_PROVIDER (provider),
                                              GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
+
+  g_object_unref (file);
   g_object_unref (provider);
 
  out:
diff --git a/src/disks/gnome-disks.gresource.xml b/src/disks/gnome-disks.gresource.xml
index 146a7cc..d1d8a40 100644
--- a/src/disks/gnome-disks.gresource.xml
+++ b/src/disks/gnome-disks.gresource.xml
@@ -22,5 +22,6 @@
     <file preprocess="xml-stripblanks">ui/restore-disk-image-dialog.ui</file>
     <file preprocess="xml-stripblanks">ui/smart-dialog.ui</file>
     <file preprocess="xml-stripblanks">ui/unlock-device-dialog.ui</file>
+    <file>ui/gdu.css</file>
   </gresource>
 </gresources>
diff --git a/src/disks/ui/disks.ui b/src/disks/ui/disks.ui
index de034f4..6592818 100644
--- a/src/disks/ui/disks.ui
+++ b/src/disks/ui/disks.ui
@@ -675,6 +675,9 @@
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="icon_size">1</property>
+                                <style>
+                                  <class name="inline-toolbar"/>
+                                </style>
                                 <child>
                                   <object class="GtkToolButton" id="toolbutton-mount">
                                     <property name="visible">True</property>
diff --git a/src/disks/ui/gdu.css b/src/disks/ui/gdu.css
new file mode 100644
index 0000000..0e5c5c1
--- /dev/null
+++ b/src/disks/ui/gdu.css
@@ -0,0 +1,29 @@
+.gnome-disk-utility-grid {
+       border-width: 1px;
+       border-radius: 3px;
+       border-style: solid;
+       border-color: @borders;
+       background-color: @theme_base_color;
+}
+
+#devtab-grid-toolbar {
+       border-top-width: 1px;
+}
+
+.gnome-disk-utility-grid:selected {
+       background-image: -gtk-gradient(radial,
+                                     center center, 0,
+                                     center center, 1,
+                                     from(@theme_selected_bg_color),
+                                     to(shade (@theme_selected_bg_color, 0.80)));
+       -adwaita-focus-border-color: mix(@theme_selected_fg_color, @theme_selected_bg_color, 0.30);
+}
+
+.gnome-disk-utility-grid:selected:backdrop {
+       background-image: -gtk-gradient(radial,
+                                     center center, 0,
+                                     center center, 1,
+                                     from(@theme_unfocused_selected_bg_color),
+                                     to(shade (@theme_unfocused_selected_bg_color, 0.80)));
+       -adwaita-focus-border-color: mix(@theme_unfocused_selected_fg_color, 
@theme_unfocused_selected_bg_color, 0.30);
+}


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