diff --git a/src/gpm-kbd-backlight.c b/src/gpm-kbd-backlight.c
index 102150e..ded2e48 100644
--- a/src/gpm-kbd-backlight.c
+++ b/src/gpm-kbd-backlight.c
@@ -159,7 +159,7 @@ gpm_kbd_backlight_brightness_up (GpmKbdBacklight *backlight)
 	guint new;
 
 	new = MIN (backlight->priv->brightness_percent + GPM_KBD_BACKLIGHT_STEP, 100u);
-	return gpm_kbd_backlight_set (backlight, new);
+	return gpm_kbd_backlight_set_brightness (backlight, new, NULL);
 }
 
 /**
@@ -172,7 +172,7 @@ gpm_kbd_backlight_brightness_down (GpmKbdBacklight *backlight)
 
 	/* we can possibly go below 0 here, so by converting to a gint we avoid underflow errors */
 	new = MAX ((gint) backlight->priv->brightness_percent - GPM_KBD_BACKLIGHT_STEP, 0);
-	return gpm_kbd_backlight_set (backlight, new);
+	return gpm_kbd_backlight_set_brightness (backlight, new, NULL);
 }
 
 /**
@@ -532,8 +532,7 @@ gpm_kbd_backlight_idle_changed_cb (GpmIdle *idle,
 		return;
 
 	if (mode == GPM_IDLE_MODE_NORMAL) {
-		backlight->priv->master_percentage = 100;
-		gpm_kbd_backlight_evaluate_power_source_and_set (backlight);
+		gpm_kbd_backlight_set (backlight, backlight->priv->master_percentage);
 	} else if (mode == GPM_IDLE_MODE_DIM) {
 		brightness = backlight->priv->master_percentage;
 		value = g_settings_get_int (backlight->priv->settings, GPM_SETTINGS_KBD_BRIGHTNESS_DIM_BY_ON_IDLE);
