1
=== modified file 'src/xfpm-battery.c'
2
--- a/src/xfpm-battery.c 2009-09-24 09:10:34 +0000
3
+++ b/src/xfpm-battery.c 2009-09-26 20:41:29 +0000
5
XfpmBatteryState state,
9
+ gchar *icon = NULL, *notify_icon = NULL;
11
if ( state == BATTERY_NOT_PRESENT )
13
+ //FIXME what icon is most appropriate for this case? When does it happen?
14
+ xfpm_tray_icon_set_notify_icon (battery->priv->icon, "notification-battery-100-plugged");
15
xfpm_tray_icon_set_icon (battery->priv->icon,
16
battery->priv->type == HAL_DEVICE_TYPE_UPS ?
17
XFPM_UPS_ICON_PREFIX "missing" :
19
if ( state == BATTERY_FULLY_CHARGED )
21
if ( battery->priv->type == HAL_DEVICE_TYPE_PRIMARY)
23
+ xfpm_tray_icon_set_notify_icon (battery->priv->icon, battery->priv->adapter_present ? "notification-battery-100-plugged" : "notification-battery-100");
24
xfpm_tray_icon_set_icon (battery->priv->icon,
25
battery->priv->adapter_present ?
26
XFPM_PRIMARY_ICON_PREFIX "charged" :
27
XFPM_PRIMARY_ICON_PREFIX "100");
31
icon = g_strdup_printf("%s%s",
33
xfpm_battery_get_icon_index (battery->priv->type, percentage));
34
xfpm_tray_icon_set_icon (battery->priv->icon, icon);
37
+ notify_icon = g_strdup_printf("%s%s", "notification-battery-",
38
+ xfpm_battery_get_icon_index (battery->priv->type, percentage));
39
+ xfpm_tray_icon_set_notify_icon (battery->priv->icon, notify_icon);
40
+ g_free(notify_icon);
43
else if ( state == BATTERY_NOT_FULLY_CHARGED )
45
battery->priv->icon_prefix,
46
xfpm_battery_get_icon_index (battery->priv->type, percentage),
48
+ notify_icon = g_strdup_printf("%s%s-%s",
49
+ "notification-battery-",
50
+ xfpm_battery_get_icon_index (battery->priv->type, percentage),
55
icon = g_strdup_printf("%s%s",
56
battery->priv->icon_prefix,
57
xfpm_battery_get_icon_index (battery->priv->type, percentage));
58
+ notify_icon = g_strdup_printf("%s%s",
59
+ "notification-battery-",
60
+ xfpm_battery_get_icon_index (battery->priv->type, percentage));
62
xfpm_tray_icon_set_icon (battery->priv->icon, icon);
65
+ xfpm_tray_icon_set_notify_icon (battery->priv->icon, notify_icon);
66
+ g_free(notify_icon);
69
else if ( state == BATTERY_IS_CHARGING )
72
battery->priv->icon_prefix,
73
xfpm_battery_get_icon_index (battery->priv->type, percentage),
75
+ notify_icon = g_strdup_printf("%s%s-%s",
76
+ "notification-battery-",
77
+ xfpm_battery_get_icon_index (battery->priv->type, percentage),
80
xfpm_tray_icon_set_icon (battery->priv->icon, icon);
83
+ xfpm_tray_icon_set_notify_icon (battery->priv->icon, notify_icon);
84
+ g_free(notify_icon);
86
else if ( state == BATTERY_IS_DISCHARGING || state == BATTERY_CHARGE_CRITICAL ||
87
state == BATTERY_CHARGE_LOW )
89
icon = g_strdup_printf("%s%s",
90
battery->priv->icon_prefix,
91
xfpm_battery_get_icon_index (battery->priv->type, percentage));
92
+ notify_icon = g_strdup_printf("%s%s",
93
+ "notification-battery-",
94
+ xfpm_battery_get_icon_index (battery->priv->type, percentage));
96
xfpm_tray_icon_set_icon (battery->priv->icon, icon);
99
+ xfpm_tray_icon_set_notify_icon (battery->priv->icon, notify_icon);
100
+ g_free(notify_icon);
105
xfpm_notify_show_notification (battery->priv->notify,
106
_("Xfce power manager"),
108
- xfpm_tray_icon_get_icon_name (battery->priv->icon),
109
+ xfpm_tray_icon_get_notify_icon_name (battery->priv->icon),
111
battery->priv->type == HAL_DEVICE_TYPE_PRIMARY ? FALSE : TRUE,
114
=== modified file 'src/xfpm-tray-icon.c'
115
--- a/src/xfpm-tray-icon.c 2009-09-24 09:10:34 +0000
116
+++ b/src/xfpm-tray-icon.c 2009-09-26 20:52:17 +0000
121
+ GQuark notify_icon_quark;
124
gboolean data_available;
126
xfpm_notify_show_notification (tray->priv->notify,
127
_("Xfce power manager"),
129
- xfpm_tray_icon_get_icon_name (tray),
130
+ xfpm_tray_icon_get_notify_icon_name (tray),
133
XFPM_NOTIFY_CRITICAL,
135
xfpm_notify_show_notification (tray->priv->notify,
136
_("Xfce power manager"),
138
- xfpm_tray_icon_get_icon_name (tray),
139
+ xfpm_tray_icon_get_notify_icon_name (tray),
142
XFPM_NOTIFY_CRITICAL,
145
tray->priv->info_menu = TRUE;
146
tray->priv->icon_quark = 0;
147
+ tray->priv->notify_icon_quark = 0;
149
g_signal_connect (tray->priv->icon, "size-changed",
150
G_CALLBACK (xfpm_tray_icon_size_changed_cb), tray);
155
+void xfpm_tray_icon_set_notify_icon (XfpmTrayIcon *icon, const gchar *icon_name)
157
+ g_return_if_fail(XFPM_IS_TRAY_ICON(icon));
159
+ icon->priv->notify_icon_quark = g_quark_from_string(icon_name);
162
void xfpm_tray_icon_set_tooltip (XfpmTrayIcon *icon, const gchar *tooltip)
164
g_return_if_fail (XFPM_IS_TRAY_ICON (icon));
167
return g_quark_to_string (icon->priv->icon_quark);
170
+const gchar *xfpm_tray_icon_get_notify_icon_name (XfpmTrayIcon *icon)
172
+ g_return_val_if_fail(XFPM_IS_TRAY_ICON(icon), NULL);
174
+ if ( icon->priv->notify_icon_quark == 0 ) return NULL;
176
+ return g_quark_to_string (icon->priv->notify_icon_quark);
179
=== modified file 'src/xfpm-tray-icon.h'
180
--- a/src/xfpm-tray-icon.h 2009-09-24 09:10:34 +0000
181
+++ b/src/xfpm-tray-icon.h 2009-09-26 20:50:38 +0000
184
void xfpm_tray_icon_set_icon (XfpmTrayIcon *icon,
185
const gchar *icon_name);
187
+void xfpm_tray_icon_set_notify_icon (XfpmTrayIcon *icon,
188
+ const gchar *icon_name);
190
void xfpm_tray_icon_set_tooltip (XfpmTrayIcon *icon,
191
const gchar *tooltip);
194
const gchar *xfpm_tray_icon_get_icon_name (XfpmTrayIcon *icon) G_GNUC_PURE;
196
+const gchar *xfpm_tray_icon_get_notify_icon_name (XfpmTrayIcon *icon) G_GNUC_PURE;
200
#endif /* __XFPM_TRAY_ICON_H */