diff --git a/data/org.gnome.settings-daemon.plugins.power.gschema.xml.in b/data/org.gnome.settings-daemon.plugins.power.gschema.xml.in
index 051bcf70307122c1c0fc47813c6fe4e0ed78d8b2..894d554c63290c4061011d6c5172df611e103320 100644
--- a/data/org.gnome.settings-daemon.plugins.power.gschema.xml.in
+++ b/data/org.gnome.settings-daemon.plugins.power.gschema.xml.in
@@ -11,6 +11,11 @@
Dim the screen after a period of inactivity
If the screen should be dimmed to save power when the computer is idle.
+
+ true
+ Show warnings before sleep
+ Weather to show notifications before sleep because of inactivity. This setting is ignored and always false on tablets and handsets.
+
900
Sleep timeout computer when on AC
diff --git a/plugins/power/gsd-power-manager.c b/plugins/power/gsd-power-manager.c
index 9ba6536fd455638f43a26c4fd54971cf73b488c3..3925696781ab598797bbb0070199f2a8ef696628 100644
--- a/plugins/power/gsd-power-manager.c
+++ b/plugins/power/gsd-power-manager.c
@@ -214,7 +214,7 @@ struct _GsdPowerManager
GsdPowerIdleMode previous_idle_mode;
/* Device Properties */
- gboolean show_sleep_warnings;
+ gboolean is_mobile_device;
/* Screens */
GsdDisplayConfig *display_config;
@@ -2549,7 +2549,8 @@ idle_triggered_idle_cb (GnomeIdleMonitor *monitor,
} else if (watch_id == manager->idle_sleep_id) {
idle_set_mode_no_temp (manager, GSD_POWER_IDLE_MODE_SLEEP);
} else if (watch_id == manager->idle_sleep_warning_id) {
- if (manager->show_sleep_warnings) {
+ if (!manager->is_mobile_device &&
+ g_settings_get_boolean (manager->settings, "show-sleep-warnings")) {
show_sleep_warning (manager);
}
if (manager->user_active_id < 1) {
@@ -3024,9 +3025,9 @@ gsd_power_manager_startup (GApplication *app)
chassis_type = gnome_settings_get_chassis_type ();
if (g_strcmp0 (chassis_type, "tablet") == 0 || g_strcmp0 (chassis_type, "handset") == 0) {
- manager->show_sleep_warnings = FALSE;
+ manager->is_mobile_device = TRUE;
} else {
- manager->show_sleep_warnings = TRUE;
+ manager->is_mobile_device = FALSE;
}
manager->settings = g_settings_new (GSD_POWER_SETTINGS_SCHEMA);