[gnome-shell/gnome-3-36] st/icon: Only load default fallback icon if an icon was set and failed to load



commit 01e894c028a8f909f58b042ccd2f652d4131199b
Author: Andre Moreira Magalhaes <andre endlessm com>
Date:   Fri Apr 3 10:25:25 2020 -0300

    st/icon: Only load default fallback icon if an icon was set and failed to load
    
    Commit c89d6a633 introduced a default fallback icon that would be displayed in
    case the main gicon or the fallback gicon wasn't set or failed to load.
    
    This broke the use case where a StIcon is created but no main icon or
    fallback icon are set on purpose, for example the appindicator extension
    which always creates a StIcon to represent icons in menu items but the
    actual icons are only set if the application provides one, leaving the
    menu showing the default fallback ("image-missing") icon for all menu
    entries that don't actually have an icon provided by the application.
    
    Fix that by only using the default fallback icon if the provided one
    failed to load.
    
    https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1173
    
    (cherry picked from commit 7ff7fb5d3b3ee655b1492226f68aeadac846e247)

 src/st/st-icon.c | 3 +++
 1 file changed, 3 insertions(+)
---
diff --git a/src/st/st-icon.c b/src/st/st-icon.c
index a2ccd8f754..e82adcc77f 100644
--- a/src/st/st-icon.c
+++ b/src/st/st-icon.c
@@ -418,6 +418,9 @@ st_icon_update (StIcon *icon)
       priv->opacity_handler_id = 0;
     }
 
+  if (priv->gicon == NULL && priv->fallback_gicon == NULL)
+    return;
+
   if (!st_widget_get_resource_scale (ST_WIDGET (icon), &resource_scale))
     return;
 


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