11package fr .free .nrw .commons .upload ;
22
33import android .content .Context ;
4- import android .content .res .Resources ;
54import android .graphics .Color ;
65import android .os .Build ;
76import android .support .annotation .NonNull ;
1514import android .widget .TextView ;
1615
1716import java .util .ArrayList ;
18- import java .util .Arrays ;
1917import java .util .List ;
2018import java .util .Locale ;
2119
@@ -42,23 +40,18 @@ public SpinnerLanguagesAdapter(@NonNull Context context,
4240 this .layoutInflater = LayoutInflater .from (context );
4341 languageNamesList = new ArrayList <>();
4442 languageCodesList = new ArrayList <>();
45- prepareLanguages (context );
43+ prepareLanguages ();
4644 this .selectedLanguages = selectedLanguages ;
4745 }
4846
49- private void prepareLanguages (Context context ) {
50- Resources resources = context .getResources ();
47+ private void prepareLanguages () {
5148 List <Language > languages = getLocaleSupportedByDevice ();
5249
5350 for (Language language : languages ) {
54- languageNamesList .add (language .getLocale ().getDisplayName ());
55- languageCodesList .add (language .getLocale ().getDisplayScript ());
56- }
57- for (int i = 0 ; i < languages .size (); i ++) {
58- languageNamesList .add (resources .getString (Language .languageGroups [i ]));
59- languageCodesList .add ("" );
60- languageNamesList .addAll (Arrays .asList (resources .getStringArray (Language .languageNames [i ])));
61- languageCodesList .addAll (Arrays .asList (resources .getStringArray (Language .languageCodes [i ])));
51+ if (!languageCodesList .contains (language .getLocale ().getLanguage ())) {
52+ languageNamesList .add (language .getLocale ().getDisplayName ());
53+ languageCodesList .add (language .getLocale ().getLanguage ());
54+ }
6255 }
6356 }
6457
@@ -146,11 +139,11 @@ public void init(int position, boolean isDropDownView) {
146139 }
147140 }
148141
149- public String getLanguageCode (int position ) {
142+ String getLanguageCode (int position ) {
150143 return languageCodesList .get (position );
151144 }
152145
153- public int getIndexOfUserDefaultLocale (Context context ) {
146+ int getIndexOfUserDefaultLocale (Context context ) {
154147 return languageCodesList .indexOf (context .getResources ().getConfiguration ().locale .getLanguage ());
155148 }
156149
0 commit comments