[krb5-auth-dialog] Remove "show trayicon" property altogether



commit 5e30a6d5bc6b2b35aefe8f3f98ee2b5ec6b881b4
Author: Guido Günther <agx sigxcpu org>
Date:   Sat Feb 12 16:56:04 2011 +0100

    Remove "show trayicon" property altogether
    
    The tray icon is now always enabled if the notification server doesn't
    support persistence.

 cc-panel/cc-ka-panel.c          |   59 ------------------------
 cc-panel/ka-panel.ui            |   96 ---------------------------------------
 src/ka-applet.c                 |   42 +-----------------
 src/ka-gconf.c                  |   16 -------
 src/krb5-auth-dialog.schemas.in |   13 -----
 5 files changed, 1 insertions(+), 225 deletions(-)
---
diff --git a/cc-panel/cc-ka-panel.c b/cc-panel/cc-ka-panel.c
index 5f66234..81dfb16 100644
--- a/cc-panel/cc-ka-panel.c
+++ b/cc-panel/cc-ka-panel.c
@@ -54,7 +54,6 @@ struct _CcKaPanelPrivate {
     GtkWidget *forwardable_toggle;
     GtkWidget *proxiable_toggle;
     GtkWidget *renewable_toggle;
-    GtkWidget *trayicon_toggle;
     GtkWidget *prompt_mins_entry;
 
     guint     listeners [N_LISTENERS];
@@ -596,63 +595,6 @@ cc_ka_panel_setup_renewable_toggle (CcKaPanelPrivate *priv)
     return renewable;
 }
 
-static void
-cc_ka_panel_trayicon_toggled (GtkToggleButton *toggle,
-                              CcKaPanelPrivate *priv)
-{
-    gboolean trayicon;
-
-    trayicon = gtk_toggle_button_get_active (toggle);
-    gconf_client_set_bool (priv->client, KA_GCONF_KEY_SHOW_TRAYICON, trayicon, NULL);
-}
-
-
-static void
-cc_ka_panel_trayicon_notify (GConfClient *client G_GNUC_UNUSED,
-                             guint cnx_id G_GNUC_UNUSED,
-                             GConfEntry *entry,
-                             CcKaPanelPrivate *priv)
-{
-    gboolean trayicon;
-
-    if (!entry->value || entry->value->type != GCONF_VALUE_BOOL)
-        return;
-
-    trayicon = gconf_value_get_bool (entry->value) != FALSE;
-
-    if (trayicon != gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (priv->trayicon_toggle)))
-        gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (priv->trayicon_toggle), trayicon);
-}
-
-
-static gboolean
-cc_ka_panel_setup_trayicon_toggle (CcKaPanelPrivate *priv)
-{
-    gboolean trayicon;
-
-    priv->trayicon_toggle = WID (priv->builder, "trayicon_toggle");
-    g_assert (priv->trayicon_toggle != NULL);
-
-    trayicon = gconf_client_get_bool (priv->client, KA_GCONF_KEY_SHOW_TRAYICON, NULL);
-
-    gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (priv->trayicon_toggle), trayicon);
-
-    g_signal_connect (priv->trayicon_toggle, "toggled",
-                      G_CALLBACK (cc_ka_panel_trayicon_toggled), priv);
-
-    if (!gconf_client_key_is_writable (priv->client, KA_GCONF_KEY_SHOW_TRAYICON, NULL)) {
-        gtk_widget_set_sensitive (priv->trayicon_toggle, FALSE);
-    }
-
-    priv->listeners [priv->n_listeners] =
-        gconf_client_notify_add (priv->client,
-                                 KA_GCONF_KEY_SHOW_TRAYICON,
-                                 (GConfClientNotifyFunc) cc_ka_panel_trayicon_notify,
-                                 priv, NULL, NULL);
-    priv->n_listeners++;
-    return trayicon;
-}
-
 
 static void
 cc_ka_panel_prompt_mins_changed (GtkSpinButton *button,
@@ -818,7 +760,6 @@ cc_ka_panel_init (CcKaPanel *self)
     cc_ka_panel_setup_forwardable_toggle (priv);
     cc_ka_panel_setup_proxiable_toggle (priv);
     cc_ka_panel_setup_renewable_toggle (priv);
-    cc_ka_panel_setup_trayicon_toggle (priv);
     cc_ka_panel_setup_prompt_mins_entry (priv);
 
     g_assert (priv->n_listeners == N_LISTENERS);
diff --git a/cc-panel/ka-panel.ui b/cc-panel/ka-panel.ui
index 10dbc14..0081a40 100644
--- a/cc-panel/ka-panel.ui
+++ b/cc-panel/ka-panel.ui
@@ -552,102 +552,6 @@
                 <property name="position">0</property>
               </packing>
             </child>
-            <child>
-              <object class="GtkVBox" id="vbox10">
-                <property name="visible">True</property>
-                <property name="orientation">vertical</property>
-                <property name="spacing">12</property>
-                <child>
-                  <object class="GtkLabel" id="label18">
-                    <property name="visible">True</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">Appearance</property>
-                    <attributes>
-                      <attribute name="weight" value="bold"/>
-                    </attributes>
-                  </object>
-                  <packing>
-                    <property name="expand">False</property>
-                    <property name="fill">False</property>
-                    <property name="position">0</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkHBox" id="hbox10">
-                    <property name="visible">True</property>
-                    <property name="spacing">12</property>
-                    <child>
-                      <object class="GtkImage" id="image2">
-                        <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="yalign">0</property>
-                        <property name="stock">gtk-zoom-in</property>
-                        <property name="icon-size">6</property>
-                      </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">False</property>
-                        <property name="position">0</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkVBox" id="vbox7">
-                        <property name="visible">True</property>
-                        <property name="orientation">vertical</property>
-                        <child>
-                          <object class="GtkHBox" id="hbox7">
-                            <property name="visible">True</property>
-                            <property name="spacing">6</property>
-                            <child>
-                              <object class="GtkLabel" id="label13">
-                                <property name="visible">True</property>
-                                <property name="label">    </property>
-                              </object>
-                              <packing>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                                <property name="position">0</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkCheckButton" id="trayicon_toggle">
-                                <property name="label" translatable="yes">Show tray icon</property>
-                                <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">False</property>
-                                <property name="tooltip_text" translatable="yes">If checked, display the tray icon in the status bar</property>
-                                <property name="draw_indicator">True</property>
-                              </object>
-                              <packing>
-                                <property name="expand">False</property>
-                                <property name="position">1</property>
-                              </packing>
-                            </child>
-                          </object>
-                          <packing>
-                            <property name="position">0</property>
-                          </packing>
-                        </child>
-                      </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">False</property>
-                        <property name="position">1</property>
-                      </packing>
-                    </child>
-                  </object>
-                  <packing>
-                    <property name="expand">False</property>
-                    <property name="fill">False</property>
-                    <property name="position">1</property>
-                  </packing>
-                </child>
-              </object>
-              <packing>
-                <property name="expand">False</property>
-                <property name="position">1</property>
-              </packing>
-            </child>
           </object>
           <packing>
             <property name="position">1</property>
diff --git a/src/ka-applet.c b/src/ka-applet.c
index b82a61d..6bb49f4 100644
--- a/src/ka-applet.c
+++ b/src/ka-applet.c
@@ -45,7 +45,6 @@ enum {
     KA_PROP_PRINCIPAL,
     KA_PROP_PK_USERID,
     KA_PROP_PK_ANCHORS,
-    KA_PROP_TRAYICON,
     KA_PROP_PW_PROMPT_MINS,
     KA_PROP_TGT_FORWARDABLE,
     KA_PROP_TGT_PROXIABLE,
@@ -71,7 +70,6 @@ struct _KaAppletPrivate {
     GtkStatusIcon *tray_icon;   /* the tray icon */
     GtkWidget *context_menu;    /* the tray icon's context menu */
     const char *icons[3];       /* for invalid, expiring and valid tickts */
-    gboolean show_trayicon;     /* show the trayicon */
     gboolean ns_persistence;    /* does the notification server support persistence */
 
     KaPwDialog *pwdialog;       /* the password dialog */
@@ -121,12 +119,6 @@ ka_applet_set_property (GObject *object,
         KA_DEBUG ("%s: %s", pspec->name, self->priv->pk_anchors);
         break;
 
-    case KA_PROP_TRAYICON:
-        self->priv->show_trayicon = g_value_get_boolean (value);
-        KA_DEBUG ("%s: %s", pspec->name,
-                  self->priv->show_trayicon ? "True" : "False");
-        break;
-
     case KA_PROP_PW_PROMPT_MINS:
         self->priv->pw_prompt_secs = g_value_get_uint (value) * 60;
         KA_DEBUG ("%s: %d", pspec->name, self->priv->pw_prompt_secs / 60);
@@ -178,10 +170,6 @@ ka_applet_get_property (GObject *object,
         g_value_set_string (value, self->priv->pk_anchors);
         break;
 
-    case KA_PROP_TRAYICON:
-        g_value_set_boolean (value, self->priv->show_trayicon);
-        break;
-
     case KA_PROP_PW_PROMPT_MINS:
         g_value_set_uint (value, self->priv->pw_prompt_secs / 60);
         break;
@@ -297,13 +285,6 @@ ka_applet_class_init (KaAppletClass *klass)
                                  "", G_PARAM_CONSTRUCT | G_PARAM_READWRITE);
     g_object_class_install_property (object_class, KA_PROP_PK_ANCHORS, pspec);
 
-    pspec = g_param_spec_boolean ("show-trayicon",
-                                  "Show tray icon",
-                                  "Show/Hide the tray icon",
-                                  TRUE,
-                                  G_PARAM_CONSTRUCT | G_PARAM_READWRITE);
-    g_object_class_install_property (object_class, KA_PROP_TRAYICON, pspec);
-
     pspec = g_param_spec_uint ("pw-prompt-mins",
                                "Password prompting interval",
                                "Password prompting interval in minutes",
@@ -849,24 +830,6 @@ ka_tray_icon_on_click (GtkStatusIcon *status_icon G_GNUC_UNUSED,
 
 
 static gboolean
-ka_applet_cb_show_trayicon (KaApplet *applet,
-                            GParamSpec *property G_GNUC_UNUSED,
-                            gpointer data G_GNUC_UNUSED)
-{
-    g_return_val_if_fail (applet != NULL, FALSE);
-    g_return_val_if_fail (applet->priv->tray_icon != NULL, FALSE);
-
-    /* no tray icon if the notification service supports persistence */
-    if (applet->priv->ns_persistence)
-        return TRUE;
-
-    gtk_status_icon_set_visible (applet->priv->tray_icon,
-                                 applet->priv->show_trayicon);
-    return TRUE;
-}
-
-
-static gboolean
 ka_applet_create_tray_icon (KaApplet *self)
 {
     GtkStatusIcon *tray_icon;
@@ -993,10 +956,7 @@ ka_applet_create ()
         g_error ("Failure to create context menu");
 
     ka_ns_check_persistence(applet);
-
-    if (ka_applet_create_tray_icon (applet))
-        g_signal_connect (applet, "notify::show-trayicon",
-            G_CALLBACK (ka_applet_cb_show_trayicon), NULL);
+    ka_applet_create_tray_icon (applet);
 
     applet->priv->uixml = gtk_builder_new ();
     ret = gtk_builder_add_from_file (applet->priv->uixml,
diff --git a/src/ka-gconf.c b/src/ka-gconf.c
index 4e3d1aa..0735808 100644
--- a/src/ka-gconf.c
+++ b/src/ka-gconf.c
@@ -84,19 +84,6 @@ ka_gconf_set_prompt_mins (GConfClient* client, KaApplet* applet)
 
 
 static gboolean
-ka_gconf_set_show_trayicon (GConfClient* client, KaApplet* applet)
-{
-	gboolean show_trayicon = TRUE;
-
-	if(!ka_gconf_get_bool(client, KA_GCONF_KEY_SHOW_TRAYICON, &show_trayicon)) {
-		show_trayicon = TRUE;
-	}
-	g_object_set(applet, "show-trayicon", show_trayicon, NULL);
-	return TRUE;
-}
-
-
-static gboolean
 ka_gconf_set_tgt_forwardable (GConfClient* client, KaApplet* applet)
 {
 	gboolean forwardable = FALSE;
@@ -153,8 +140,6 @@ ka_gconf_key_changed_callback (GConfClient* client,
 		ka_gconf_set_principal (client, applet);
 	} else if (g_strcmp0 (key, KA_GCONF_KEY_PROMPT_MINS) == 0) {
 		ka_gconf_set_prompt_mins (client, applet);
-	} else if (g_strcmp0 (key, KA_GCONF_KEY_SHOW_TRAYICON) == 0) {
-		ka_gconf_set_show_trayicon (client, applet);
 	} else if (g_strcmp0 (key, KA_GCONF_KEY_PK_USERID) == 0) {
 		ka_gconf_set_pk_userid (client, applet);
 	} else if (g_strcmp0 (key, KA_GCONF_KEY_PK_ANCHORS) == 0) {
@@ -195,7 +180,6 @@ ka_gconf_init (KaApplet* applet)
 	/* setup defaults */
 	ka_gconf_set_principal (client, applet);
 	ka_gconf_set_prompt_mins (client, applet);
-	ka_gconf_set_show_trayicon (client, applet);
 	ka_gconf_set_pk_userid(client, applet);
 	ka_gconf_set_pk_anchors(client, applet);
 	ka_gconf_set_tgt_forwardable(client, applet);
diff --git a/src/krb5-auth-dialog.schemas.in b/src/krb5-auth-dialog.schemas.in
index bb59f8e..4a88f2b 100644
--- a/src/krb5-auth-dialog.schemas.in
+++ b/src/krb5-auth-dialog.schemas.in
@@ -1,19 +1,6 @@
 <gconfschemafile>
   <schemalist>
     <schema>
-      <key>/schemas/apps/krb5-auth-dialog/show_trayicon</key>
-      <applyto>/apps/krb5-auth-dialog/show_trayicon</applyto>
-      <owner>krb5-auth-dialog</owner>
-      <type>bool</type>
-      <default>1</default>
-
-      <locale name="C">
-        <short>Show trayicon</short>
-        <long>Show a trayicon in the status area of the panel</long>
-      </locale>
-    </schema>
-
-    <schema>
       <key>/schemas/apps/krb5-auth-dialog/principal</key>
       <applyto>/apps/krb5-auth-dialog/principal</applyto>
       <owner>krb5-auth-dialog</owner>



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