~3v1n0/indicator-messages/clear-notifications

« back to all changes in this revision

Viewing changes to src/im-menu-item.c

  • Committer: Ted Gould
  • Date: 2011-01-14 20:12:22 UTC
  • mfrom: (200.1.15 new-dbusmenu)
  • Revision ID: ted@gould.cx-20110114201222-0qtpmruy9tzdp9gh
Switching dbusmenu and indicator messages

Show diffs side-by-side

added added

removed removed

Lines of Context:
358
358
   this indicator should be calling for attention or not.  If we are,
359
359
   we need to signal that. */
360
360
static void
361
 
attention_cb (IndicateListener * listener, IndicateListenerServer * server, IndicateListenerIndicator * indicator, gchar * property, const GValue * propertydata, gpointer data)
 
361
attention_cb (IndicateListener * listener, IndicateListenerServer * server, IndicateListenerIndicator * indicator, gchar * property, GVariant * propertydata, gpointer data)
362
362
{
363
363
        g_debug("Got Attention Information");
364
364
        ImMenuItem * self = IM_MENU_ITEM(data);
373
373
        ImMenuItemPrivate * priv = IM_MENU_ITEM_GET_PRIVATE(self);
374
374
 
375
375
        gboolean wantit;
376
 
        if (G_VALUE_HOLDS_BOOLEAN(propertydata)) {
377
 
                wantit = g_value_get_boolean(propertydata);
378
 
        } else if (G_VALUE_HOLDS_STRING(propertydata)) {
379
 
                const gchar * propstring = g_value_get_string(propertydata);
 
376
        if (g_variant_is_of_type(propertydata, G_VARIANT_TYPE_BOOLEAN)) {
 
377
                wantit = g_variant_get_boolean(propertydata);
 
378
        } else if (g_variant_is_of_type(propertydata, G_VARIANT_TYPE_STRING)) {
 
379
                const gchar * propstring = g_variant_get_string(propertydata, NULL);
380
380
 
381
381
                if (propstring == NULL || propstring[0] == '\0' || !g_strcmp0(propstring, "false")) {
382
382
                        wantit = FALSE;
427
427
        } else if (!g_strcmp0(property, INDICATE_INDICATOR_MESSAGES_PROP_COUNT)) {
428
428
                indicate_listener_get_property(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_COUNT, count_cb, self);    
429
429
        } else if (!g_strcmp0(property, INDICATE_INDICATOR_MESSAGES_PROP_ATTENTION)) {
430
 
                indicate_listener_get_property_value(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_ATTENTION, attention_cb, self);      
 
430
                indicate_listener_get_property_variant(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_ATTENTION, attention_cb, self);    
431
431
        } else if (!g_strcmp0(property, "sender")) {
432
432
                /* This is a compatibility string with v1 and should be removed */
433
433
                g_debug("Indicator is using 'sender' property which is a v1 string.");
460
460
        indicate_listener_get_property_time(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_TIME, time_cb, self); 
461
461
        indicate_listener_get_property(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_ICON, icon_cb, self);      
462
462
        indicate_listener_get_property(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_COUNT, count_cb, self);    
463
 
        indicate_listener_get_property_value(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_ATTENTION, attention_cb, self);      
 
463
        indicate_listener_get_property_variant(listener, server, indicator, INDICATE_INDICATOR_MESSAGES_PROP_ATTENTION, attention_cb, self);    
464
464
        indicate_listener_get_property(listener, server, indicator, "sender", sender_cb, self); 
465
465
 
466
466
        g_signal_connect(G_OBJECT(self), DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED, G_CALLBACK(activate_cb), NULL);