Changeset 3156

Show
Ignore:
Timestamp:
12/19/07 21:34:23
Author:
pvanhoof
Message:
Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/ChangeLog

    r3155 r3156  
    33        * New documentaiton style, third commit (libtinymailui-gtk) 
    44        * Implemented support for LIST-EXTENDED's SUBSCRIBED parameter 
     5        * A fix in TnyGnomeDevice 
    56 
    672007-12-18  Philip Van Hoof <pvanhoof@gnome.org> 
  • trunk/libtinymail-gnome-desktop/tny-gnome-device-priv.h

    r2825 r3156  
    2525struct _TnyGnomeDevicePriv 
    2626{ 
    27         gboolean forced, fset
    28      
     27        gboolean forced, fset, current_state
     28 
    2929#ifdef GNOME 
    3030        gboolean invnm; 
  • trunk/libtinymail-gnome-desktop/tny-gnome-device.c

    r2825 r3156  
    131131tny_gnome_device_on_online (TnyDevice *self) 
    132132{ 
     133        TnyGnomeDevicePriv *priv = TNY_GNOME_DEVICE_GET_PRIVATE (self); 
     134 
    133135        gdk_threads_enter (); 
    134         g_signal_emit (self, tny_device_signals [TNY_DEVICE_CONNECTION_CHANGED], 0, TRUE); 
     136        if (!priv->current_state) { 
     137                priv->current_state = TRUE; 
     138                g_signal_emit (self, tny_device_signals [TNY_DEVICE_CONNECTION_CHANGED], 0, TRUE); 
     139        } 
    135140        gdk_threads_leave (); 
    136141 
     
    141146tny_gnome_device_on_offline (TnyDevice *self) 
    142147{ 
     148        TnyGnomeDevicePriv *priv = TNY_GNOME_DEVICE_GET_PRIVATE (self); 
     149 
    143150        gdk_threads_enter (); 
    144         g_signal_emit (self, tny_device_signals [TNY_DEVICE_CONNECTION_CHANGED], 0, FALSE); 
     151        if (priv->current_state) { 
     152                priv->current_state = FALSE; 
     153                g_signal_emit (self, tny_device_signals [TNY_DEVICE_CONNECTION_CHANGED], 0, FALSE); 
     154        } 
    145155        gdk_threads_leave (); 
    146156 
     
    199209        priv->fset = TRUE; 
    200210        priv->forced = TRUE; 
     211        priv->current_state = TRUE; 
     212#else 
     213        priv->current_state = FALSE; 
    201214#endif 
    202215 
     
    205218        priv->nm_ctx = libnm_glib_init (); 
    206219#ifndef IMMEDIATE_ONLINE_TEST 
     220        priv->current_state = tny_gnome_device_is_online (TNY_DEVICE (self)); 
    207221        priv->callback_id = libnm_glib_register_callback  
    208222                (priv->nm_ctx, nm_callback, self, NULL);