This is an annoying shortcoming in the current gnome-settings-manager (used to be gnome-power-manager). It does not check whether it should suspend when entering on-battery state.
Here's a work-around:
Put the following into an (executable) file /etc/pm/power.d/zzsleepiflidclosed
# If the lid is closed, then sleep when we are switched to battery mode.
case "$1" in
true) # Going into battery mode.
grep -q closed /proc/acpi/button/lid/*/state && dbus-send --print-reply --system --dest=org.freedesktop.UPower /org/freedesktop/UPower org.freedesktop.UPower.Suspend
false) # Going into line power mode
I don't know why the sleep 1 pause is necessary, but without it, my lenovo won't