gnome-shell: lifecycle fixes

Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
gnome-shell: refactor

Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>