[gnome-shell] shell/app: Expose icon as property



commit 16b0d0d07c11f258f47978d8dfbd110a40508859
Author: Florian Müllner <fmuellner gnome org>
Date:   Fri Mar 12 23:13:25 2021 +0100

    shell/app: Expose icon as property
    
    A property can be more convenient than a method. More importantly,
    we are about to allow the icon to change, so a property will be
    useful to get notified about those changes.
    
    Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1761>

 src/shell-app.c | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)
---
diff --git a/src/shell-app.c b/src/shell-app.c
index d4fe30b0f5..d86b05a22d 100644
--- a/src/shell-app.c
+++ b/src/shell-app.c
@@ -93,6 +93,7 @@ enum {
   PROP_ID,
   PROP_DBUS_ID,
   PROP_ACTION_GROUP,
+  PROP_ICON,
   PROP_APP_INFO
 };
 
@@ -127,6 +128,9 @@ shell_app_get_property (GObject    *gobject,
     case PROP_ID:
       g_value_set_string (value, shell_app_get_id (app));
       break;
+    case PROP_ICON:
+      g_value_set_object (value, shell_app_get_icon (app));
+      break;
     case PROP_ACTION_GROUP:
       if (app->running_state)
         g_value_set_object (value, app->running_state->muxer);
@@ -1645,6 +1649,19 @@ shell_app_class_init(ShellAppClass *klass)
                                                         NULL,
                                                         G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
 
+  /**
+   * ShellApp:icon:
+   *
+   * The #GIcon representing this ShellApp
+   */
+  g_object_class_install_property (gobject_class,
+                                   PROP_ICON,
+                                   g_param_spec_object ("icon",
+                                                        "GIcon",
+                                                        "The GIcon representing this app",
+                                                        G_TYPE_ICON,
+                                                        G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
+
   /**
    * ShellApp:action-group:
    *


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