pidgin/gtkdocklet.c

changeset 16681
c15974a4ff5d
parent 16263
27e0ef0f38e6
child 16808
c0736ad72fd6
equal deleted inserted replaced
16680:3a672630db5a 16681:c15974a4ff5d
116 PurpleSavedStatus *saved_status; 116 PurpleSavedStatus *saved_status;
117 PurpleStatusPrimitive prim; 117 PurpleStatusPrimitive prim;
118 DockletStatus newstatus = DOCKLET_STATUS_OFFLINE; 118 DockletStatus newstatus = DOCKLET_STATUS_OFFLINE;
119 gboolean pending = FALSE, connecting = FALSE; 119 gboolean pending = FALSE, connecting = FALSE;
120 120
121 /* get the current savedstatus */
122 saved_status = purple_savedstatus_get_current();
123
121 /* determine if any ims have unseen messages */ 124 /* determine if any ims have unseen messages */
122 convs = get_pending_list(DOCKLET_TOOLTIP_LINE_LIMIT); 125 convs = get_pending_list(DOCKLET_TOOLTIP_LINE_LIMIT);
123 126
124 if (!strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/docklet/show"), "pending")) { 127 if (!strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/docklet/show"), "pending")) {
125 if (convs && ui_ops->create && !visible) { 128 if (convs && ui_ops->create && !visible) {
166 } 169 }
167 170
168 g_list_free(convs); 171 g_list_free(convs);
169 172
170 } else if (ui_ops->set_tooltip) { 173 } else if (ui_ops->set_tooltip) {
171 ui_ops->set_tooltip(PIDGIN_NAME); 174 char *tooltip_text = g_strconcat(PIDGIN_NAME " - ",
175 purple_savedstatus_get_title(saved_status), NULL);
176 ui_ops->set_tooltip(tooltip_text);
177 g_free(tooltip_text);
172 } 178 }
173 179
174 for(l = purple_accounts_get_all(); l != NULL; l = l->next) { 180 for(l = purple_accounts_get_all(); l != NULL; l = l->next) {
175 181
176 PurpleAccount *account = (PurpleAccount*)l->data; 182 PurpleAccount *account = (PurpleAccount*)l->data;
185 account_status = purple_account_get_active_status(account); 191 account_status = purple_account_get_active_status(account);
186 if (purple_account_is_connecting(account)) 192 if (purple_account_is_connecting(account))
187 connecting = TRUE; 193 connecting = TRUE;
188 } 194 }
189 195
190 saved_status = purple_savedstatus_get_current();
191 prim = purple_savedstatus_get_type(saved_status); 196 prim = purple_savedstatus_get_type(saved_status);
192 if (pending) 197 if (pending)
193 newstatus = DOCKLET_STATUS_PENDING; 198 newstatus = DOCKLET_STATUS_PENDING;
194 else if (connecting) 199 else if (connecting)
195 newstatus = DOCKLET_STATUS_CONNECTING; 200 newstatus = DOCKLET_STATUS_CONNECTING;

mercurial