[gnome-3-38] Backport gdm fixes
Backport some GDM fixes from !1644 (merged), !1622 (merged), !1652 (merged), !1683 (merged) to gnome-3-38 branch
Backport some GDM fixes from !1644 (merged), !1622 (merged), !1652 (merged), !1683 (merged) to gnome-3-38 branch