[nautilus/wip/antoniof/post-gtk4-switch-fixes: 9/13] view-icon-item-ui: Use GtkPicture instead of GtkImage




commit 139becae908fce7dfdf14cc052c1d83b69b1a9c1
Author: António Fernandes <antoniof gnome org>
Date:   Fri Dec 24 00:07:17 2021 +0000

    view-icon-item-ui: Use GtkPicture instead of GtkImage
    
    GtkImage is simpler now and doesn't have some features we rely on for
    the grid view.
    
    Instead, we should use the new GtkPicture to get the expected results.
    
    But -gtk-icon-filter CSS extensions don't work on GtkPicture. Instead,
    use a filter to achieve a similar visual result.

 src/nautilus-view-icon-item-ui.c               | 2 +-
 src/resources/css/Adwaita.css                  | 5 ++---
 src/resources/ui/nautilus-view-icon-item-ui.ui | 3 ++-
 3 files changed, 5 insertions(+), 5 deletions(-)
---
diff --git a/src/nautilus-view-icon-item-ui.c b/src/nautilus-view-icon-item-ui.c
index 344e0fc2a..8bb1e2abe 100644
--- a/src/nautilus-view-icon-item-ui.c
+++ b/src/nautilus-view-icon-item-ui.c
@@ -47,7 +47,7 @@ update_icon (NautilusViewIconItemUi *self)
             NAUTILUS_FILE_ICON_FLAGS_USE_ONE_EMBLEM;
 
     icon_paintable = nautilus_file_get_icon_paintable (file, icon_size, 1, flags);
-    gtk_image_set_from_paintable (GTK_IMAGE (self->icon), icon_paintable);
+    gtk_picture_set_paintable (GTK_PICTURE (self->icon), icon_paintable);
 
     gtk_widget_set_size_request (self->fixed_height_box, icon_size, icon_size);
     if (icon_size < NAUTILUS_GRID_ICON_SIZE_LARGEST)
diff --git a/src/resources/css/Adwaita.css b/src/resources/css/Adwaita.css
index 7c4d687e4..a05f44e27 100644
--- a/src/resources/css/Adwaita.css
+++ b/src/resources/css/Adwaita.css
@@ -186,7 +186,6 @@ flowboxchild:selected .icon-ui-labels-box {
   color: @accent_fg_color;
 }
 
-flowboxchild:selected image {
-  -gtk-icon-filter: opacity(0.5);
-  -gtk-icon-shadow: 0px 0px @accent_bg_color;
+flowboxchild:selected picture {
+  filter: sepia(1.5) hue-rotate(180deg) brightness(0.5) saturate(2.0);
 }
diff --git a/src/resources/ui/nautilus-view-icon-item-ui.ui b/src/resources/ui/nautilus-view-icon-item-ui.ui
index fa1fe25e1..624a5a178 100644
--- a/src/resources/ui/nautilus-view-icon-item-ui.ui
+++ b/src/resources/ui/nautilus-view-icon-item-ui.ui
@@ -17,11 +17,12 @@
             <property name="valign">center</property>
             <property name="width-request">96</property>
             <child>
-              <object class="GtkImage" id="icon">
+              <object class="GtkPicture" id="icon">
                 <property name="halign">center</property>
                 <property name="hexpand">True</property>
                 <property name="valign">end</property>
                 <property name="vexpand">True</property>
+                <property name="can-shrink">False</property>
               </object>
             </child>
           </object>


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