It seems that LocaleList does not necessarily return the "Language Priority List" in the order that the user has prioritized things. So we have to kind of fake it by first adding the default locale, then adding the locales from LocaleList based on longest order first (e.g. de-AT then de). #987