~ubuntu-branches/ubuntu/oneiric/cairo-dock-plug-ins/oneiric-updates

« back to all changes in this revision

Viewing changes to powermanager/src/powermanager-init.c

  • Committer: Bazaar Package Importer
  • Author(s): Matthieu Baerts (matttbe), Matthieu Baerts (matttbe), Iain Lane
  • Date: 2011-10-09 00:19:16 UTC
  • mfrom: (1.1.15 upstream)
  • Revision ID: james.westby@ubuntu.com-20111009001916-9czstskx2t6l0b3x
Tags: 2.4.0~2-0ubuntu1
[ Matthieu Baerts (matttbe) ]
* New upstream bug fix release. (LP: #859984)
* Upstream (short) ChangeLog (2.4.0~0beta2 -> 2.4.0~1):
 - Powermanager: correctly release the reference on the device object
 - logout: now works if there is no session-manager
 - Status-Notifier: fixed a small bug
    (wrong callback in cairo_dock_stop_watching_dbus_name_owner)
 - Folders: fixed the positionning of the new icon
    and the dialog when dropping a folder inside the dock
    and fixed the icon-rendering
 - Dustbin: use the default theme if no icon is found
 - Impulse: the default context seems to be ok and not an error
 - Status-Notifier: On Ubuntu Oneiric (with indicator-0.4)
    the ApplicationAdded signal has changed and has a new parameter
 - Disable MeMenu on Oneiric (no longer available with indicator-0.4)
 - CMakeLists.txt: Improved output messages
 - Slide view: fixed a small offset in vertical view
 - musicPlayer:
  + split MPRIS 1.0 and 2.0 to help debugging and finding the right
     name of the bug.
  + 'rhythmbox-client' tool is no longer available: used MPRIS
  + Disable Amazon service (it no longer work)
  + Cover: fixed corrupted icons: some players (e.g. the latest version
     of RB) copy covers on their cache forlder but it takes a few time.
  + Fixed the update the icon and its name if the player is stopped.
  + Prevent a crash if the name given by MPRIS is NULL
 - Powermanager: try to prevent to have a few dialogues at the same time
 - PowerManager and AlsaMixer: hidden gnome2 or 3 apps if not available
 - Messaging-Menu: Updated for Natty and Oneiric
    (dbus-menu gives us GVariant instead of GValue objects)
 - Alsamixer: fixed a small bug on reload
 - Dbus: Bash interface: Fixed a typo with emblem positions
 - Sys-monitor: fixed a bug which prevented from getting
    the CPU temperature in some cases
 - Compiz (0.9): type filter: replaced type=utility by type=Utility
 - Updated the version of all applets that have gauges
   in order to use the right directory
 - Wifi: Fixed the status if we are not connected
 - Dbus: removed a conflict with the Help applet
 - Messaging-Menu: updated applet-menu.c => Memory leaks on pixbufs
 - Dbus: Fixed a crash when changing dock theme if a 'third-party' applet
    is running
 - Netspeed: in /proc/net/dev, there are 8 values to drop after the card id
    except if there is whitespaces just after this ':' character
    and fixed order and value for ON_ICON display
 - dock-rendering/toto: removed a useless file
 - Clipper: fixed the loading of the remembered items
    (they had the wrong type) and fixed a bug if we reduce the list of items
 - Folders, dustbin, Network-Monitor: tried to not use cast if it's possible
 - Code cleaned and re-organised a few functions
   (e.g. emblem references has been renamed)
 - Removed useless files: powermanager-dbus*
 - Updating translations
 - Fixed a few warnings at the compilation
 - Removed a few useless output messages
 - Fixed these LP bugs:
  + Empty trash from the trashcan does not delete files
     from usb harddisks: LP: #658681
  + Switcher applet doesn't respect desktop numbers LP: #626782
* Upstream (short) ChangeLog (2.4.0~1 -> 2.4.0~2):
 - Messaging-Menu: fixed a wrong g_object_unref (double free)
    and a small memory leak
 - Folders: fixed a tiny warning at the compilation (32bits)
 - switcher: removed an unnecessary config parameter
 - Folders: file size: used English instead of French translation.
 - Indicator applet: Forced a cast to remove an annoying warning
    due to clumsy dbusmenu_gtkmenu_new() declaration
 - Fixed the detection of the screensaver
 - Fixed tiny warnings at the compilation (with CAIRO_CONTAINER)
* debian/control:
 - Updated the version of cairo-dock-[core;data;dev].
 - Added gvfs as 'Suggests' for cairo-dock-plug-ins-integration
    (Used for managing files)
 - Removed 'libthunar-vfs-1-dev' (libthunar-vfs is no longer installed
    by default since XFCE 4.8 and it is replaced by gvfs)
 - Removed 'indicator-me' (no longer available
    and the installation of Cairo-Dock produces an error)
 - Moved 'indicator-messages' to 'Recommends'
* debian/rules:
 - Updated the name of CMake extras flags
* debian/cairo-dock-plug-ins-data.lintian-overrides:
 - Deleted (now useless)
* debian/cairo-dock-plug-ins.lintian-overrides:
 - Cairo-Dock Plug-Ins are not linked to gldi
 - shlib-without-versioned-soname: forwarded to upstream.
* debian/cairo-dock-plug-ins-integration.lintian-overrides:
 - Cairo-Dock Plug-Ins are not linked to gldi
 - ldconfig and shlibs are not needed
* debian/cairo-dock-plug-ins.install:
 - Fixed lintian errors: package-installs-python-bytecode
* debian/control: Fixed lintian warnings:
 - python-script-but-no-python-dep
 - description-synopsis-starts-with-article
* debian/changelog:
 - Fixed lintian warning: old-fsf-address-in-copyright-file
* debian/patches/01-switcher-force-compact-view.patch: 
 - Forced the compact view because the other doesn't work

[ Iain Lane ]
* Fix Mono/CLI build to be ~policy compliant and use correct compiler

Show diffs side-by-side

added added

removed removed

Lines of Context:
89
89
                CD_APPLET_SET_DESKLET_RENDERER ("Simple");
90
90
                CD_APPLET_ALLOW_NO_CLICKABLE_DESKLET;
91
91
        }
92
 
        
 
92
 
 
93
        myData.bIsHidden = FALSE;
 
94
 
93
95
        _set_data_renderer (myApplet, FALSE);
94
96
        if (myConfig.cEmblemIconName == NULL)
95
97
                myData.pEmblem = CD_APPLET_MAKE_EMBLEM (MY_APPLET_SHARE_DATA_DIR"/charge.svg");
115
117
                g_object_unref (myData.pUPowerClient);
116
118
        }
117
119
        
 
120
        if (myData.pBatteryDevice != NULL)
 
121
        {
 
122
                if (myData.iSignalID != 0)
 
123
                        g_source_remove (myData.iSignalID);
 
124
                g_object_unref (myData.pBatteryDevice);  // remove the ref we took on the device. it may or not destroy the object, that's why we disconnected manually the signal above.
 
125
        }
 
126
        
118
127
        if (myData.checkLoop != 0)
119
128
        {
120
129
                g_source_remove (myData.checkLoop);
148
157
                if (myConfig.iDisplayType == CD_POWERMANAGER_GRAPH)
149
158
                        CD_APPLET_SET_MY_DATA_RENDERER_HISTORY_TO_MAX;
150
159
        }
 
160
 
 
161
        if (myDock)
 
162
        {
 
163
                if (myConfig.bHideNotOnBattery && ! myData.bOnBattery)
 
164
                { // hide the icon when not on battery and if needed
 
165
                        cairo_dock_detach_icon_from_dock (myIcon, myDock, myIconsParam.iSeparateIcons);
 
166
                        myData.bIsHidden = TRUE;
 
167
                        cairo_dock_update_dock_size (myDock);
 
168
                }
 
169
                else if (myData.bIsHidden)
 
170
                {
 
171
                        cairo_dock_insert_icon_in_dock (myIcon, myDock, CAIRO_DOCK_UPDATE_DOCK_SIZE, CAIRO_DOCK_ANIMATE_ICON);
 
172
                        if (myData.bIsHidden)
 
173
                                cairo_dock_redraw_container (CAIRO_CONTAINER (myDock));
 
174
                        myData.bIsHidden = FALSE;
 
175
                }
 
176
        }
151
177
        
152
178
        //\_______________ On redessine notre icone.
153
179
        if (myData.cBatteryStateFilePath || myData.pUPowerClient != NULL)
157
183
                        double fPercent = (double) myData.iPercentage / 100.;
158
184
                        CD_APPLET_RENDER_NEW_DATA_ON_MY_ICON (&fPercent);
159
185
                        
160
 
                        //Embleme sur notre icône
161
 
                        //CD_APPLET_DRAW_EMBLEM ((myData.bOnBattery ? CAIRO_DOCK_EMBLEM_BLANK : CAIRO_DOCK_EMBLEM_CHARGE), CAIRO_DOCK_EMBLEM_MIDDLE);
 
186
                        //Embleme sur notre icone
162
187
                        if (! myData.bOnBattery)
163
188
                                CD_APPLET_DRAW_EMBLEM_ON_MY_ICON (myData.pEmblem);
164
189
                }
165
190
                else if (myConfig.iDisplayType == CD_POWERMANAGER_ICONS)
166
191
                        cd_powermanager_draw_icon_with_effect (myData.bOnBattery);
167
192
                
168
 
                if (!myData.bOnBattery && myData.iPercentage < 100)
169
 
                        myData.bAlerted = FALSE; //We will alert when battery charge reach 100%
170
 
                if (myData.bOnBattery)
171
 
                {
172
 
                        if (myData.iPercentage > myConfig.lowBatteryValue)
173
 
                                myData.bAlerted = FALSE; //We will alert when battery charge is under myConfig.lowBatteryValue
174
 
                        
175
 
                        if (myData.iPercentage > 4)
176
 
                                myData.bCritical = FALSE; //We will alert when battery charge is critical (under 4%)
177
 
                }
178
 
                
179
193
                myData.iPrevPercentage = -1;
180
194
                myData.iPrevTime = -1;
181
195
                update_icon();
182
196
 
183
197
        }
184
 
        else  // sinon on signale par l'icone appropriee que le bus n'est pas accessible.
185
 
                CD_APPLET_SET_LOCAL_IMAGE_ON_MY_ICON ("sector.svg");
186
 
        
 
198
        else  // sinon on signale par l'icone appropriee qu'aucune donnee n'est  accessible.
 
199
                CD_APPLET_SET_IMAGE_ON_MY_ICON (MY_APPLET_SHARE_DATA_DIR"/sector.svg");
187
200
CD_APPLET_RELOAD_END