restore onclose