Group :: Desktop gráfico/XFce
RPM: xfce4-power-manager
Main Changelog Spec Patches Sources Download Gear Bugs e FR Repocop
Patch: xfce4-power-manager-4.18.2-alt1.patch
Download
Download
common/xfpm-power-common.c | 8 ++--
.../power-manager-plugin/power-manager-button.c | 12 +++---
src/xfpm-backlight.c | 13 ++++---
src/xfpm-battery.c | 12 +++---
src/xfpm-dpms.c | 6 +--
src/xfpm-manager.c | 13 ++++---
src/xfpm-polkit.c | 5 +++
src/xfpm-power.c | 45 +++++++++++++---------
8 files changed, 65 insertions(+), 49 deletions(-)
diff --git a/common/xfpm-power-common.c b/common/xfpm-power-common.c
index 6c55b024..d7f1b036 100644
--- a/common/xfpm-power-common.c
+++ b/common/xfpm-power-common.c
@@ -195,7 +195,7 @@ get_device_icon_name (UpClient *upower, UpDevice *device, gboolean is_panel)
gchar *icon_name = NULL;
gchar *icon_suffix;
gsize icon_base_length;
- gchar *upower_icon;
+ gchar *upower_icon = NULL;
guint type = 0, state = 0;
gdouble percentage;
@@ -276,9 +276,9 @@ get_device_description (UpClient *upower, UpDevice *device)
gchar *est_time_str = NULL;
guint type = 0, state = 0;
gchar *model = NULL, *vendor = NULL;
- gboolean present, online;
- gdouble percentage;
- guint64 time_to_empty, time_to_full;
+ gboolean present = FALSE, online = FALSE;
+ gdouble percentage = 0;
+ guint64 time_to_empty = 0, time_to_full = 0;
/* hack, this depends on XFPM_DEVICE_TYPE_* being in sync with UP_DEVICE_KIND_* */
g_object_get (device,
diff --git a/panel-plugins/power-manager-plugin/power-manager-button.c b/panel-plugins/power-manager-plugin/power-manager-button.c
index 4e9e638b..36d9561b 100644
--- a/panel-plugins/power-manager-plugin/power-manager-button.c
+++ b/panel-plugins/power-manager-plugin/power-manager-button.c
@@ -191,7 +191,7 @@ get_display_device (PowerManagerButton *button)
{
BatteryDevice *battery_device = item->data;
guint type = 0;
- gdouble percentage;
+ gdouble percentage = 0;
if (!battery_device->device || !UP_IS_DEVICE(battery_device->device))
{
@@ -356,7 +356,7 @@ power_manager_button_device_icon_draw (GtkWidget *img, cairo_t *cr, gpointer use
{
UpDevice *device = NULL;
guint type = 0, state = 0;
- gdouble percentage;
+ gdouble percentage = 0;
gint height, width;
gdouble min_height = 2;
PangoLayout *layout = NULL;
@@ -1289,10 +1289,10 @@ power_manager_button_update_presentation_indicator (PowerManagerButton *button)
static void
power_manager_button_update_label (PowerManagerButton *button, UpDevice *device)
{
- guint state;
- gdouble percentage;
- guint64 time_to_empty;
- guint64 time_to_full;
+ guint state = 0;
+ gdouble percentage = 0;
+ guint64 time_to_empty = 0;
+ guint64 time_to_full = 0;
if (!POWER_MANAGER_IS_BUTTON (button) || !UP_IS_DEVICE (device))
return;
diff --git a/src/xfpm-backlight.c b/src/xfpm-backlight.c
index c250154a..d6a69991 100644
--- a/src/xfpm-backlight.c
+++ b/src/xfpm-backlight.c
@@ -108,7 +108,7 @@ xfpm_backlight_dim_brightness (XfpmBacklight *backlight)
if (xfpm_power_is_in_presentation_mode (backlight->priv->power) == FALSE )
{
- gint32 dim_level;
+ gint32 dim_level = 0;
g_object_get (G_OBJECT (backlight->priv->conf),
backlight->priv->on_battery ? BRIGHTNESS_LEVEL_ON_BATTERY : BRIGHTNESS_LEVEL_ON_AC, &dim_level,
@@ -226,9 +226,9 @@ xfpm_backlight_button_pressed_cb (XfpmButton *button, XfpmButtonKey type, XfpmBa
{
gint32 level;
gboolean ret = TRUE;
- gboolean handle_brightness_keys, show_popup;
- guint brightness_step_count;
- gboolean brightness_exponential;
+ gboolean handle_brightness_keys = FALSE, show_popup = FALSE;
+ guint brightness_step_count = 10;
+ gboolean brightness_exponential = FALSE;
g_object_get (G_OBJECT (backlight->priv->conf),
HANDLE_BRIGHTNESS_KEYS, &handle_brightness_keys,
@@ -260,7 +260,7 @@ xfpm_backlight_button_pressed_cb (XfpmButton *button, XfpmButtonKey type, XfpmBa
static void
xfpm_backlight_brightness_on_ac_settings_changed (XfpmBacklight *backlight)
{
- guint timeout_on_ac;
+ guint timeout_on_ac = 0;
g_object_get (G_OBJECT (backlight->priv->conf),
BRIGHTNESS_ON_AC, &timeout_on_ac,
@@ -281,7 +281,7 @@ xfpm_backlight_brightness_on_ac_settings_changed (XfpmBacklight *backlight)
static void
xfpm_backlight_brightness_on_battery_settings_changed (XfpmBacklight *backlight)
{
- guint timeout_on_battery ;
+ guint timeout_on_battery = 0;
g_object_get (G_OBJECT (backlight->priv->conf),
BRIGHTNESS_ON_BATTERY, &timeout_on_battery,
@@ -359,6 +359,7 @@ xfpm_backlight_init (XfpmBacklight *backlight)
backlight->priv->brightness_step_count = 10;
backlight->priv->brightness_exponential = FALSE;
backlight->priv->brightness_switch_initialized = FALSE;
+ backlight->priv->on_battery = FALSE;
if ( !backlight->priv->has_hw )
{
diff --git a/src/xfpm-battery.c b/src/xfpm-battery.c
index 71d6f1d4..c8735c0e 100644
--- a/src/xfpm-battery.c
+++ b/src/xfpm-battery.c
@@ -209,7 +209,7 @@ xfpm_battery_notify_idle (gpointer data)
static void
xfpm_battery_notify_state (XfpmBattery *battery)
{
- gboolean notify;
+ gboolean notify = FALSE;
static gboolean starting_up = TRUE;
if ( battery->priv->type == UP_DEVICE_KIND_BATTERY ||
@@ -237,7 +237,7 @@ static void
xfpm_battery_check_charge (XfpmBattery *battery)
{
XfpmBatteryCharge charge;
- guint critical_level, low_level;
+ guint critical_level = 0, low_level;
g_object_get (G_OBJECT (battery->priv->conf),
CRITICAL_POWER_LEVEL, &critical_level,
@@ -269,10 +269,10 @@ xfpm_battery_check_charge (XfpmBattery *battery)
static void
xfpm_battery_refresh (XfpmBattery *battery, UpDevice *device)
{
- gboolean present;
- guint state;
- gdouble percentage;
- guint64 to_empty, to_full;
+ gboolean present = FALSE;
+ guint state = 0;
+ gdouble percentage = 0;
+ guint64 to_empty = 0, to_full = 0;
g_object_get (device,
"is-present", &present,
diff --git a/src/xfpm-dpms.c b/src/xfpm-dpms.c
index 552bceb0..329a06ca 100644
--- a/src/xfpm-dpms.c
+++ b/src/xfpm-dpms.c
@@ -119,7 +119,7 @@ xfpm_dpms_get_enabled (XfpmDpms *dpms, gboolean *dpms_enabled)
static void
xfpm_dpms_get_sleep_mode (XfpmDpms *dpms, gboolean *ret_standby_mode)
{
- gchar *sleep_mode;
+ gchar *sleep_mode = NULL;
g_object_get (G_OBJECT (dpms->priv->conf),
DPMS_SLEEP_MODE, &sleep_mode,
@@ -136,7 +136,7 @@ xfpm_dpms_get_sleep_mode (XfpmDpms *dpms, gboolean *ret_standby_mode)
static void
xfpm_dpms_get_configuration_timeouts (XfpmDpms *dpms, guint16 *ret_sleep, guint16 *ret_off )
{
- guint sleep_time, off_time;
+ guint sleep_time = 0, off_time = 0;
g_object_get (G_OBJECT (dpms->priv->conf),
dpms->priv->on_battery ? ON_BATT_DPMS_SLEEP : ON_AC_DPMS_SLEEP, &sleep_time,
@@ -150,7 +150,7 @@ xfpm_dpms_get_configuration_timeouts (XfpmDpms *dpms, guint16 *ret_sleep, guint1
void
xfpm_dpms_refresh (XfpmDpms *dpms)
{
- gboolean enabled;
+ gboolean enabled = FALSE;
guint16 off_timeout;
guint16 sleep_timeout;
gboolean sleep_mode;
diff --git a/src/xfpm-manager.c b/src/xfpm-manager.c
index 41d8dfcf..9598d08d 100644
--- a/src/xfpm-manager.c
+++ b/src/xfpm-manager.c
@@ -415,8 +415,8 @@ xfpm_manager_button_pressed_cb (XfpmButton *bt, XfpmButtonKey type, XfpmManager
static void
xfpm_manager_lid_changed_cb (XfpmPower *power, gboolean lid_is_closed, XfpmManager *manager)
{
- XfpmLidTriggerAction action;
- gboolean on_battery, logind_handle_lid_switch;
+ XfpmLidTriggerAction action = LID_TRIGGER_NOTHING;
+ gboolean on_battery = FALSE, logind_handle_lid_switch = FALSE;
if (manager->priv->systemd != NULL)
{
@@ -493,7 +493,7 @@ xfpm_manager_alarm_timeout_cb (EggIdletime *idle, guint id, XfpmManager *manager
if ( id == TIMEOUT_INACTIVITY_ON_AC || id == TIMEOUT_INACTIVITY_ON_BATTERY )
{
XfpmShutdownRequest sleep_mode = XFPM_DO_NOTHING;
- gboolean on_battery;
+ gboolean on_battery = FALSE;
if ( manager->priv->inhibited )
{
@@ -524,7 +524,7 @@ xfpm_manager_alarm_timeout_cb (EggIdletime *idle, guint id, XfpmManager *manager
static void
xfpm_manager_set_idle_alarm_on_ac (XfpmManager *manager)
{
- guint on_ac;
+ guint on_ac = 0;
g_object_get (G_OBJECT (manager->priv->conf),
ON_AC_INACTIVITY_TIMEOUT, &on_ac,
@@ -550,7 +550,7 @@ xfpm_manager_set_idle_alarm_on_ac (XfpmManager *manager)
static void
xfpm_manager_set_idle_alarm_on_battery (XfpmManager *manager)
{
- guint on_battery;
+ guint on_battery = 0;
g_object_get (G_OBJECT (manager->priv->conf),
ON_BATTERY_INACTIVITY_TIMEOUT, &on_battery,
@@ -591,7 +591,8 @@ xfpm_manager_get_systemd_events(XfpmManager *manager)
{
GSList *events = NULL, *current_event;
gchar *what = g_strdup ("");
- gboolean logind_handle_power_key, logind_handle_suspend_key, logind_handle_hibernate_key, logind_handle_lid_switch;
+ gboolean logind_handle_power_key = FALSE, logind_handle_suspend_key = FALSE;
+ gboolean logind_handle_hibernate_key = FALSE, logind_handle_lid_switch = FALSE;
g_object_get (G_OBJECT (manager->priv->conf),
LOGIND_HANDLE_POWER_KEY, &logind_handle_power_key,
diff --git a/src/xfpm-polkit.c b/src/xfpm-polkit.c
index 329e8a17..3bc7583e 100644
--- a/src/xfpm-polkit.c
+++ b/src/xfpm-polkit.c
@@ -262,6 +262,7 @@ xfpm_polkit_init_data (XfpmPolkit *polkit)
{
gint pid;
guint64 start_time;
+ gint uid;
GVariantBuilder builder;
const gchar *subject_kind = NULL;
@@ -271,6 +272,7 @@ xfpm_polkit_init_data (XfpmPolkit *polkit)
g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
pid = getpid ();
+ uid = getuid ();
start_time = get_start_time_for_pid (pid);
@@ -286,6 +288,9 @@ xfpm_polkit_init_data (XfpmPolkit *polkit)
var = g_variant_new ("t", start_time);
g_variant_builder_add (&builder, "{sv}", "start-time", var);
+ var = g_variant_new ("u", (guint32)uid);
+ g_variant_builder_add (&builder, "{sv}", "uid", var);
+
XFPM_DEBUG ("Using unix session polkit subject");
}
else
diff --git a/src/xfpm-power.c b/src/xfpm-power.c
index c23ec204..c5d20bf9 100644
--- a/src/xfpm-power.c
+++ b/src/xfpm-power.c
@@ -174,7 +174,7 @@ static gboolean
check_for_consolekit2 (XfpmPower *power)
{
XfpmConsoleKit *console;
- gboolean can_suspend, can_hibernate;
+ gboolean can_suspend = FALSE, can_hibernate = FALSE;
g_return_val_if_fail (XFPM_IS_POWER (power), FALSE);
@@ -293,9 +293,9 @@ xfpm_power_check_lid (XfpmPower *power, gboolean present, gboolean closed)
static void
xfpm_power_get_properties (XfpmPower *power)
{
- gboolean on_battery;
- gboolean lid_is_closed;
- gboolean lid_is_present;
+ gboolean on_battery = FALSE;
+ gboolean lid_is_closed = FALSE;
+ gboolean lid_is_present = FALSE;
if (power->priv->systemd != NULL)
{
@@ -364,9 +364,9 @@ static void
xfpm_power_sleep (XfpmPower *power, const gchar *sleep_time, gboolean force)
{
GError *error = NULL;
- gboolean lock_screen;
+ gboolean lock_screen = FALSE;
#ifdef WITH_NETWORK_MANAGER
- gboolean network_manager_sleep;
+ gboolean network_manager_sleep = FALSE;
#endif
XfpmBrightness *brightness;
gint32 brightness_level;
@@ -503,6 +503,15 @@ xfpm_power_sleep (XfpmPower *power, const gchar *sleep_time, gboolean force)
xfpm_network_manager_sleep (FALSE);
}
#endif
+
+ /* Restore XKB settings */
+ error = NULL;
+ g_spawn_command_line_async ("xfce4-fixkeyboard", &error);
+ if (error)
+ {
+ g_warning ("Failed to execute xfce4-fixkeyboard: %s", error->message);
+ g_error_free (error);
+ }
}
static void
@@ -534,7 +543,7 @@ xfpm_power_get_current_charge_state (XfpmPower *power)
{
GList *list;
guint len, i;
- gboolean power_supply;
+ gboolean power_supply = FALSE;
XfpmBatteryCharge max_charge_status = XFPM_BATTERY_CHARGE_UNKNOWN;
list = g_hash_table_get_values (power->priv->hash);
@@ -542,8 +551,8 @@ xfpm_power_get_current_charge_state (XfpmPower *power)
for ( i = 0; i < len; i++ )
{
- XfpmBatteryCharge battery_charge;
- UpDeviceKind type;
+ XfpmBatteryCharge battery_charge = XFPM_BATTERY_CHARGE_UNKNOWN;
+ UpDeviceKind type = UP_DEVICE_KIND_UNKNOWN;
g_object_get (G_OBJECT (g_list_nth_data (list, i)),
"charge-status", &battery_charge,
@@ -573,7 +582,7 @@ xfpm_power_notify_action_callback (NotifyNotification *n, gchar *action, XfpmPow
static void
xfpm_power_add_actions_to_notification (XfpmPower *power, NotifyNotification *n)
{
- gboolean can_shutdown;
+ gboolean can_shutdown = FALSE;
if (power->priv->systemd != NULL)
{
@@ -654,7 +663,7 @@ xfpm_power_show_critical_action_gtk (XfpmPower *power)
GtkWidget *content_area;
GtkWidget *cancel;
const gchar *message;
- gboolean can_shutdown;
+ gboolean can_shutdown = FALSE;
if (power->priv->systemd != NULL)
{
@@ -735,7 +744,7 @@ xfpm_power_show_critical_action_gtk (XfpmPower *power)
static void
xfpm_power_show_critical_action (XfpmPower *power, XfpmBattery *battery)
{
- gboolean supports_actions;
+ gboolean supports_actions = FALSE;
g_object_get (G_OBJECT (power->priv->notify),
"actions", &supports_actions,
@@ -763,7 +772,7 @@ xfpm_power_process_critical_action (XfpmPower *power, XfpmShutdownRequest req)
static void
xfpm_power_system_on_critical_power (XfpmPower *power, XfpmBattery *battery)
{
- XfpmShutdownRequest critical_action;
+ XfpmShutdownRequest critical_action = XFPM_DO_NOTHING;
g_object_get (G_OBJECT (power->priv->conf),
CRITICAL_BATT_ACTION_CFG, &critical_action,
@@ -793,7 +802,7 @@ xfpm_power_system_on_critical_power (XfpmPower *power, XfpmBattery *battery)
static void
xfpm_power_battery_charge_changed_cb (XfpmBattery *battery, XfpmPower *power)
{
- gboolean notify;
+ gboolean notify = FALSE;
XfpmBatteryCharge battery_charge;
XfpmBatteryCharge current_charge;
@@ -1625,7 +1634,7 @@ static gboolean xfpm_power_dbus_shutdown (XfpmPower *power,
gpointer user_data)
{
GError *error = NULL;
- gboolean can_shutdown;
+ gboolean can_shutdown = FALSE;
if (power->priv->systemd != NULL)
{
@@ -1673,7 +1682,7 @@ xfpm_power_dbus_reboot (XfpmPower *power,
gpointer user_data)
{
GError *error = NULL;
- gboolean can_reboot;
+ gboolean can_reboot = FALSE;
if (power->priv->systemd != NULL)
{
@@ -1780,7 +1789,7 @@ xfpm_power_dbus_can_reboot (XfpmPower * power,
GDBusMethodInvocation *invocation,
gpointer user_data)
{
- gboolean can_reboot;
+ gboolean can_reboot = FALSE;
if (power->priv->systemd != NULL)
{
@@ -1807,7 +1816,7 @@ xfpm_power_dbus_can_shutdown (XfpmPower * power,
GDBusMethodInvocation *invocation,
gpointer user_data)
{
- gboolean can_shutdown;
+ gboolean can_shutdown = FALSE;
if (power->priv->systemd != NULL)
{