Fix layout handling after "Cancel"
When a user chooses a layout and then clicks "Cancel",
GDM gets confused. This is because, in part, that layouts
were being treated much the same as sessions and language,
which aren't things activated immediately.
This commit changes the layout handling, such that when
it changes state, it's updated in all three places at the
same time:
1) The active layout in the X server
2) The active item in the list
3) The default item in the list
Note, this is a bandaid. The whole thing is a bit wonky though, and
needs to be redone.
https://bugzilla.gnome.org/show_bug.cgi?id=622430
(cherry picked from commit 09f5aa04496c0ca66db7654628bd94cbf3f8bcbb)