diff --git a/app/build.gradle b/app/build.gradle index dd3038eee..f0b27e859 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -100,7 +100,6 @@ dependencies { implementation 'com.google.android.exoplayer:exoplayer:2.10.6' implementation 'org.apache.poi:poi:3.16' implementation 'com.github.mabbas007:TagsEditText:1.0.5' - implementation 'com.jaredrummler:material-spinner:1.3.1' implementation "com.tonyodev.fetch2:fetch2:2.3.6" implementation 'com.github.stom79:horizontalbargraph:1.6' implementation 'jp.wasabeef:glide-transformations:4.0.0' diff --git a/app/src/main/java/app/fedilab/android/activities/BaseMainActivity.java b/app/src/main/java/app/fedilab/android/activities/BaseMainActivity.java index b66ad338f..9ea541d18 100644 --- a/app/src/main/java/app/fedilab/android/activities/BaseMainActivity.java +++ b/app/src/main/java/app/fedilab/android/activities/BaseMainActivity.java @@ -42,12 +42,14 @@ import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.view.inputmethod.InputMethodManager; +import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.EditText; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.RelativeLayout; import android.widget.SeekBar; +import android.widget.Spinner; import android.widget.TextView; import android.widget.Toast; @@ -71,7 +73,6 @@ import com.google.android.material.appbar.AppBarLayout; import com.google.android.material.floatingactionbutton.FloatingActionButton; import com.google.android.material.navigation.NavigationView; import com.google.android.material.tabs.TabLayout; -import com.jaredrummler.materialspinner.MaterialSpinner; import java.io.File; import java.lang.ref.WeakReference; @@ -1190,9 +1191,9 @@ public abstract class BaseMainActivity extends BaseActivity //Live notification mode - final MaterialSpinner set_live_type = dialogView.findViewById(R.id.set_live_type); + final Spinner set_live_type = dialogView.findViewById(R.id.set_live_type); String[] labels = {getString(R.string.live_notif), getString(R.string.live_delayed), getString(R.string.no_live_notif)}; - ArrayAdapter adapterLive = new ArrayAdapter<>(getApplicationContext(), + ArrayAdapter adapterLive = new ArrayAdapter<>(BaseMainActivity.this, android.R.layout.simple_spinner_dropdown_item, labels); set_live_type.setAdapter(adapterLive); TextView set_live_type_indication = dialogView.findViewById(R.id.set_live_type_indication); @@ -1207,10 +1208,10 @@ public abstract class BaseMainActivity extends BaseActivity set_live_type_indication.setText(R.string.no_live_indication); break; } - set_live_type.setSelectedIndex(Helper.liveNotifType(getApplicationContext())); - set_live_type.setOnItemSelectedListener(new MaterialSpinner.OnItemSelectedListener() { + set_live_type.setSelection(Helper.liveNotifType(getApplicationContext())); + set_live_type.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override - public void onItemSelected(MaterialSpinner view, int position, long id, Object item) { + public void onItemSelected(AdapterView parent, View view, int position, long id) { SharedPreferences.Editor editor = sharedpreferences.edit(); switch (position) { case Helper.NOTIF_LIVE: @@ -1245,9 +1246,12 @@ public abstract class BaseMainActivity extends BaseActivity break; } } + + @Override + public void onNothingSelected(AdapterView parent) { + + } }); - - dialogBuilderOptin.setTitle(R.string.settings_popup_title); dialogBuilderOptin.setCancelable(false); dialogBuilderOptin.setPositiveButton(R.string.validate, new DialogInterface.OnClickListener() { diff --git a/app/src/main/java/app/fedilab/android/activities/MastodonRegisterActivity.java b/app/src/main/java/app/fedilab/android/activities/MastodonRegisterActivity.java index 2fed8c7cb..7c2a9c5f2 100644 --- a/app/src/main/java/app/fedilab/android/activities/MastodonRegisterActivity.java +++ b/app/src/main/java/app/fedilab/android/activities/MastodonRegisterActivity.java @@ -49,8 +49,6 @@ import androidx.core.content.ContextCompat; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; -import com.jaredrummler.materialspinner.MaterialSpinner; - import java.io.IOException; import java.lang.ref.WeakReference; import java.net.HttpURLConnection; diff --git a/app/src/main/java/app/fedilab/android/activities/PeertubeEditUploadActivity.java b/app/src/main/java/app/fedilab/android/activities/PeertubeEditUploadActivity.java index ed0474c19..78f6b2700 100644 --- a/app/src/main/java/app/fedilab/android/activities/PeertubeEditUploadActivity.java +++ b/app/src/main/java/app/fedilab/android/activities/PeertubeEditUploadActivity.java @@ -24,12 +24,14 @@ import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.CheckBox; import android.widget.EditText; import android.widget.ImageView; import android.widget.LinearLayout; +import android.widget.Spinner; import android.widget.TextView; import android.widget.Toast; @@ -37,8 +39,6 @@ import androidx.appcompat.app.ActionBar; import androidx.appcompat.app.AlertDialog; import androidx.core.content.ContextCompat; -import com.jaredrummler.materialspinner.MaterialSpinner; - import java.util.HashMap; import java.util.Iterator; import java.util.LinkedHashMap; @@ -72,8 +72,8 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie HashMap privacyToSend; HashMap languageToSend; HashMap channelToSend; - private Button set_upload_submit, set_upload_delete; - private MaterialSpinner set_upload_privacy, set_upload_categories, set_upload_licenses, set_upload_languages, set_upload_channel; + private Button set_upload_submit; + private Spinner set_upload_privacy, set_upload_categories, set_upload_licenses, set_upload_languages, set_upload_channel; private EditText p_video_title, p_video_description; private TagsEditText p_video_tags; private CheckBox set_upload_nsfw, set_upload_enable_comments; @@ -91,9 +91,6 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie case Helper.THEME_LIGHT: setTheme(R.style.AppTheme_Fedilab); break; - case Helper.THEME_DARK: - setTheme(R.style.AppThemeDark); - break; case Helper.THEME_BLACK: setTheme(R.style.AppThemeBlack); break; @@ -132,7 +129,7 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie set_upload_submit = findViewById(R.id.set_upload_submit); - set_upload_delete = findViewById(R.id.set_upload_delete); + Button set_upload_delete = findViewById(R.id.set_upload_delete); set_upload_privacy = findViewById(R.id.set_upload_privacy); set_upload_channel = findViewById(R.id.set_upload_channel); set_upload_categories = findViewById(R.id.set_upload_categories); @@ -413,9 +410,9 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie } //Manage privacies - set_upload_privacy.setOnItemSelectedListener(new MaterialSpinner.OnItemSelectedListener() { + set_upload_privacy.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override - public void onItemSelected(MaterialSpinner view, int position, long id, String item) { + public void onItemSelected(AdapterView parent, View view, int position, long id) { LinkedHashMap privaciesCheck = new LinkedHashMap<>(peertubeInformation.getPrivacies()); Iterator it = privaciesCheck.entrySet().iterator(); int i = 0; @@ -430,11 +427,15 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie i++; } } - }); - //Manage license - set_upload_licenses.setOnItemSelectedListener(new MaterialSpinner.OnItemSelectedListener() { + @Override - public void onItemSelected(MaterialSpinner view, int position, long id, String item) { + public void onNothingSelected(AdapterView parent) { + + } + }); + set_upload_licenses.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(AdapterView parent, View view, int position, long id) { LinkedHashMap licensesCheck = new LinkedHashMap<>(peertubeInformation.getLicences()); Iterator it = licensesCheck.entrySet().iterator(); int i = 0; @@ -449,11 +450,16 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie i++; } } + + @Override + public void onNothingSelected(AdapterView parent) { + + } }); //Manage categories - set_upload_categories.setOnItemSelectedListener(new MaterialSpinner.OnItemSelectedListener() { + set_upload_categories.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override - public void onItemSelected(MaterialSpinner view, int position, long id, String item) { + public void onItemSelected(AdapterView parent, View view, int position, long id) { LinkedHashMap categoriesCheck = new LinkedHashMap<>(peertubeInformation.getCategories()); Iterator it = categoriesCheck.entrySet().iterator(); int i = 0; @@ -468,11 +474,17 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie i++; } } - }); - //Manage languages - set_upload_languages.setOnItemSelectedListener(new MaterialSpinner.OnItemSelectedListener() { + @Override - public void onItemSelected(MaterialSpinner view, int position, long id, String item) { + public void onNothingSelected(AdapterView parent) { + + } + }); + + //Manage languages + set_upload_languages.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(AdapterView parent, View view, int position, long id) { LinkedHashMap languagesCheck = new LinkedHashMap<>(peertubeInformation.getLanguages()); Iterator it = languagesCheck.entrySet().iterator(); int i = 0; @@ -487,13 +499,16 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie i++; } } - }); - - //Manage languages - set_upload_channel.setOnItemSelectedListener(new MaterialSpinner.OnItemSelectedListener() { @Override - public void onItemSelected(MaterialSpinner view, int position, long id, String item) { + public void onNothingSelected(AdapterView parent) { + + } + }); + //Manage languages + set_upload_channel.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(AdapterView parent, View view, int position, long id) { LinkedHashMap channelsCheck = new LinkedHashMap<>(channels); Iterator it = channelsCheck.entrySet().iterator(); int i = 0; @@ -509,6 +524,11 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie i++; } } + + @Override + public void onNothingSelected(AdapterView parent) { + + } }); @@ -535,10 +555,10 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie } }); - set_upload_privacy.setSelectedIndex(privacyPosition); - set_upload_languages.setSelectedIndex(languagePosition); - set_upload_licenses.setSelectedIndex(licensePosition); - set_upload_categories.setSelectedIndex(categoryPosition); + set_upload_privacy.setSelection(privacyPosition); + set_upload_languages.setSelection(languagePosition); + set_upload_licenses.setSelection(licensePosition); + set_upload_categories.setSelection(categoryPosition); List tags = peertube.getTags(); if (tags != null && tags.size() > 0) { @@ -591,7 +611,7 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie channelPosition++; } } - set_upload_channel.setSelectedIndex(channelPosition); + set_upload_channel.setSelection(channelPosition); set_upload_submit.setEnabled(true); } diff --git a/app/src/main/java/app/fedilab/android/activities/PeertubeUploadActivity.java b/app/src/main/java/app/fedilab/android/activities/PeertubeUploadActivity.java index 27bc80953..360e89970 100644 --- a/app/src/main/java/app/fedilab/android/activities/PeertubeUploadActivity.java +++ b/app/src/main/java/app/fedilab/android/activities/PeertubeUploadActivity.java @@ -31,11 +31,13 @@ import android.provider.OpenableColumns; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.EditText; import android.widget.ImageView; import android.widget.LinearLayout; +import android.widget.Spinner; import android.widget.TextView; import android.widget.Toast; @@ -43,7 +45,6 @@ import androidx.appcompat.app.ActionBar; import androidx.core.app.ActivityCompat; import androidx.core.content.ContextCompat; -import com.jaredrummler.materialspinner.MaterialSpinner; import net.gotev.uploadservice.MultipartUploadRequest; import net.gotev.uploadservice.ServerResponse; @@ -80,7 +81,7 @@ public class PeertubeUploadActivity extends BaseActivity implements OnRetrievePe private final int PICK_IVDEO = 52378; private final int MY_PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE = 724; private Button set_upload_file, set_upload_submit; - private MaterialSpinner set_upload_privacy, set_upload_channel; + private Spinner set_upload_privacy, set_upload_channel; private TextView set_upload_file_name; private EditText video_title; private HashMap channels; @@ -100,9 +101,6 @@ public class PeertubeUploadActivity extends BaseActivity implements OnRetrievePe case Helper.THEME_LIGHT: setTheme(R.style.AppTheme_Fedilab); break; - case Helper.THEME_DARK: - setTheme(R.style.AppThemeDark); - break; case Helper.THEME_BLACK: setTheme(R.style.AppThemeBlack); break; @@ -258,9 +256,9 @@ public class PeertubeUploadActivity extends BaseActivity implements OnRetrievePe set_upload_privacy.setAdapter(adapterPrivacies); //Manage privacies - set_upload_privacy.setOnItemSelectedListener(new MaterialSpinner.OnItemSelectedListener() { + set_upload_privacy.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override - public void onItemSelected(MaterialSpinner view, int position, long id, String item) { + public void onItemSelected(AdapterView parent, View view, int position, long id) { LinkedHashMap privaciesCheck = new LinkedHashMap<>(peertubeInformation.getPrivacies()); Iterator it = privaciesCheck.entrySet().iterator(); int i = 0; @@ -275,8 +273,12 @@ public class PeertubeUploadActivity extends BaseActivity implements OnRetrievePe i++; } } - }); + @Override + public void onNothingSelected(AdapterView parent) { + + } + }); set_upload_file.setEnabled(true); set_upload_file.setOnClickListener(new View.OnClickListener() { @@ -308,9 +310,9 @@ public class PeertubeUploadActivity extends BaseActivity implements OnRetrievePe }); //Manage languages - set_upload_channel.setOnItemSelectedListener(new MaterialSpinner.OnItemSelectedListener() { + set_upload_channel.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override - public void onItemSelected(MaterialSpinner view, int position, long id, String item) { + public void onItemSelected(AdapterView parent, View view, int position, long id) { LinkedHashMap channelsCheck = new LinkedHashMap<>(channels); Iterator it = channelsCheck.entrySet().iterator(); int i = 0; @@ -326,6 +328,11 @@ public class PeertubeUploadActivity extends BaseActivity implements OnRetrievePe i++; } } + + @Override + public void onNothingSelected(AdapterView parent) { + + } }); set_upload_submit.setOnClickListener(new View.OnClickListener() { @Override diff --git a/app/src/main/java/app/fedilab/android/activities/ProxyActivity.java b/app/src/main/java/app/fedilab/android/activities/ProxyActivity.java index 133b128f1..6e4d9458e 100644 --- a/app/src/main/java/app/fedilab/android/activities/ProxyActivity.java +++ b/app/src/main/java/app/fedilab/android/activities/ProxyActivity.java @@ -90,7 +90,7 @@ public class ProxyActivity extends BaseActivity { count2 = 0; final Spinner proxy_type = findViewById(R.id.type); ArrayAdapter adapterTrans = ArrayAdapter.createFromResource(ProxyActivity.this, - R.array.proxy_type_choice, android.R.layout.simple_spinner_item); + R.array.proxy_type_choice, android.R.layout.simple_spinner_dropdown_item); proxy_type.setAdapter(adapterTrans); diff --git a/app/src/main/java/app/fedilab/android/activities/TootActivity.java b/app/src/main/java/app/fedilab/android/activities/TootActivity.java index 5ec098841..cda92be94 100644 --- a/app/src/main/java/app/fedilab/android/activities/TootActivity.java +++ b/app/src/main/java/app/fedilab/android/activities/TootActivity.java @@ -3665,10 +3665,10 @@ public class TootActivity extends BaseActivity implements UploadStatusDelegate, }); ArrayAdapter pollduration = ArrayAdapter.createFromResource(TootActivity.this, - R.array.poll_duration, android.R.layout.simple_spinner_item); + R.array.poll_duration, android.R.layout.simple_spinner_dropdown_item); ArrayAdapter pollchoice = ArrayAdapter.createFromResource(TootActivity.this, - R.array.poll_choice_type, android.R.layout.simple_spinner_item); + R.array.poll_choice_type, android.R.layout.simple_spinner_dropdown_item); poll_choice.setAdapter(pollchoice); poll_duration.setAdapter(pollduration); poll_duration.setSelection(4); diff --git a/app/src/main/java/app/fedilab/android/drawers/FilterAdapter.java b/app/src/main/java/app/fedilab/android/drawers/FilterAdapter.java index e3b22e3d3..3e75bb812 100644 --- a/app/src/main/java/app/fedilab/android/drawers/FilterAdapter.java +++ b/app/src/main/java/app/fedilab/android/drawers/FilterAdapter.java @@ -41,6 +41,7 @@ import com.google.android.material.floatingactionbutton.FloatingActionButton; import java.util.ArrayList; import java.util.List; +import java.util.Objects; import app.fedilab.android.R; import app.fedilab.android.activities.BaseMainActivity; @@ -134,8 +135,8 @@ public class FilterAdapter extends BaseAdapter implements OnFilterActionInterfac CheckBox context_whole_word = dialogView.findViewById(R.id.context_whole_word); CheckBox context_drop = dialogView.findViewById(R.id.context_drop); Spinner filter_expire = dialogView.findViewById(R.id.filter_expire); - ArrayAdapter adapterResize = ArrayAdapter.createFromResource(context, - R.array.filter_expire, android.R.layout.simple_spinner_item); + ArrayAdapter adapterResize = ArrayAdapter.createFromResource(Objects.requireNonNull(context), + R.array.filter_expire, android.R.layout.simple_spinner_dropdown_item); filter_expire.setAdapter(adapterResize); final int[] expire = {-1}; filter_expire.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { diff --git a/app/src/main/java/app/fedilab/android/fragments/ContentSettingsFragment.java b/app/src/main/java/app/fedilab/android/fragments/ContentSettingsFragment.java index cb255b682..d8b0a18ae 100644 --- a/app/src/main/java/app/fedilab/android/fragments/ContentSettingsFragment.java +++ b/app/src/main/java/app/fedilab/android/fragments/ContentSettingsFragment.java @@ -71,6 +71,7 @@ import java.util.ArrayList; import java.util.Collection; import java.util.List; import java.util.Locale; +import java.util.Objects; import java.util.Set; import app.fedilab.android.R; @@ -504,7 +505,7 @@ public class ContentSettingsFragment extends Fragment implements OnRetrieveRemot Spinner set_attachment_group = rootView.findViewById(R.id.set_attachment_group); String[] attachment_labels = {context.getString(R.string.set_attachment_always), context.getString(R.string.set_attachment_wifi), context.getString(R.string.set_attachment_ask)}; - ArrayAdapter adapterAttachment = new ArrayAdapter<>(context, + ArrayAdapter adapterAttachment = new ArrayAdapter<>(Objects.requireNonNull(getActivity()), android.R.layout.simple_spinner_dropdown_item, attachment_labels); set_attachment_group.setAdapter(adapterAttachment); int attachmentAction = sharedpreferences.getInt(Helper.SET_ATTACHMENT_ACTION, Helper.ATTACHMENT_ALWAYS); @@ -552,8 +553,8 @@ public class ContentSettingsFragment extends Fragment implements OnRetrieveRemot //Video mode final Spinner video_mode_spinner = rootView.findViewById(R.id.set_video_mode); - ArrayAdapter video_mode_spinnerAdapter = ArrayAdapter.createFromResource(getContext(), - R.array.settings_video_mode, android.R.layout.simple_spinner_item); + ArrayAdapter video_mode_spinnerAdapter = ArrayAdapter.createFromResource(Objects.requireNonNull(getActivity()), + R.array.settings_video_mode, android.R.layout.simple_spinner_dropdown_item); video_mode_spinner.setAdapter(video_mode_spinnerAdapter); if (videoMode == Helper.VIDEO_MODE_TORRENT) videoMode = Helper.VIDEO_MODE_DIRECT; @@ -1138,7 +1139,7 @@ public class ContentSettingsFragment extends Fragment implements OnRetrieveRemot Spinner set_mode = rootView.findViewById(R.id.set_mode); String[] mode_labels = {context.getString(R.string.set_normal), context.getString(R.string.set_compact), context.getString(R.string.set_console)}; - ArrayAdapter adapterMode = new ArrayAdapter<>(context, + ArrayAdapter adapterMode = new ArrayAdapter<>(Objects.requireNonNull(getActivity()), android.R.layout.simple_spinner_dropdown_item, mode_labels); set_mode.setAdapter(adapterMode); boolean compact_mode = sharedpreferences.getBoolean(Helper.SET_COMPACT_MODE, false); @@ -1326,7 +1327,7 @@ public class ContentSettingsFragment extends Fragment implements OnRetrieveRemot //Live notification mode final Spinner set_live_type = rootView.findViewById(R.id.set_live_type); String[] labels = {context.getString(R.string.live_notif), context.getString(R.string.live_delayed), context.getString(R.string.no_live_notif)}; - ArrayAdapter adapterLive = new ArrayAdapter<>(context, + ArrayAdapter adapterLive = new ArrayAdapter<>(Objects.requireNonNull(getActivity()), android.R.layout.simple_spinner_dropdown_item, labels); LinearLayout live_notif_per_account = rootView.findViewById(R.id.live_notif_per_account); @@ -1816,8 +1817,8 @@ public class ContentSettingsFragment extends Fragment implements OnRetrieveRemot //Translators final Spinner translation_layout_spinner = rootView.findViewById(R.id.translation_layout_spinner); - ArrayAdapter adapterTrans = ArrayAdapter.createFromResource(getContext(), - R.array.settings_translation, android.R.layout.simple_spinner_item); + ArrayAdapter adapterTrans = ArrayAdapter.createFromResource(Objects.requireNonNull(getActivity()), + R.array.settings_translation, android.R.layout.simple_spinner_dropdown_item); translation_layout_spinner.setAdapter(adapterTrans); int positionSpinnerTrans; @@ -2124,8 +2125,8 @@ public class ContentSettingsFragment extends Fragment implements OnRetrieveRemot final Spinner action_notification = rootView.findViewById(R.id.action_notification); - ArrayAdapter adapterAction = ArrayAdapter.createFromResource(getContext(), - R.array.action_notification, android.R.layout.simple_spinner_item); + ArrayAdapter adapterAction = ArrayAdapter.createFromResource(Objects.requireNonNull(getActivity()), + R.array.action_notification, android.R.layout.simple_spinner_dropdown_item); action_notification.setAdapter(adapterAction); int positionNotificationAntion; switch (sharedpreferences.getInt(Helper.SET_NOTIFICATION_ACTION, Helper.ACTION_ACTIVE)) { @@ -2259,7 +2260,7 @@ public class ContentSettingsFragment extends Fragment implements OnRetrieveRemot ledLabel.setEnabled(true); led_colour_spinner.setEnabled(true); - ArrayAdapter adapterLEDColour = ArrayAdapter.createFromResource(getContext(), R.array.led_colours, android.R.layout.simple_spinner_item); + ArrayAdapter adapterLEDColour = ArrayAdapter.createFromResource(Objects.requireNonNull(getActivity()), R.array.led_colours, android.R.layout.simple_spinner_dropdown_item); led_colour_spinner.setAdapter(adapterLEDColour); int positionSpinnerLEDColour = (sharedpreferences.getInt(Helper.SET_LED_COLOUR, Helper.LED_COLOUR)); led_colour_spinner.setSelection(positionSpinnerLEDColour); @@ -2372,7 +2373,7 @@ public class ContentSettingsFragment extends Fragment implements OnRetrieveRemot String currentLanguage = sharedpreferences.getString(Helper.SET_DEFAULT_LOCALE_NEW, Helper.localeToStringStorage(Locale.getDefault())); Locale currentLocale = Helper.restoreLocaleFromString(currentLanguage); final Spinner set_change_locale = rootView.findViewById(R.id.set_change_locale); - ArrayAdapter adapterLocale = new ArrayAdapter<>(context, + ArrayAdapter adapterLocale = new ArrayAdapter<>(Objects.requireNonNull(getActivity()), android.R.layout.simple_spinner_dropdown_item, Helper.getLocales(context)); set_change_locale.setAdapter(adapterLocale); diff --git a/app/src/main/java/app/fedilab/android/fragments/DisplayFiltersFragment.java b/app/src/main/java/app/fedilab/android/fragments/DisplayFiltersFragment.java index 0d76f7abd..921528b2d 100644 --- a/app/src/main/java/app/fedilab/android/fragments/DisplayFiltersFragment.java +++ b/app/src/main/java/app/fedilab/android/fragments/DisplayFiltersFragment.java @@ -127,8 +127,8 @@ public class DisplayFiltersFragment extends Fragment implements OnFilterActionIn CheckBox context_whole_word = dialogView.findViewById(R.id.context_whole_word); CheckBox context_drop = dialogView.findViewById(R.id.context_drop); Spinner filter_expire = dialogView.findViewById(R.id.filter_expire); - ArrayAdapter adapterResize = ArrayAdapter.createFromResource(Objects.requireNonNull(getContext()), - R.array.filter_expire, android.R.layout.simple_spinner_item); + ArrayAdapter adapterResize = ArrayAdapter.createFromResource(Objects.requireNonNull(getActivity()), + R.array.filter_expire, android.R.layout.simple_spinner_dropdown_item); filter_expire.setAdapter(adapterResize); final int[] expire = {-1}; filter_expire.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { diff --git a/app/src/main/java/app/fedilab/android/fragments/DisplayPlaylistsFragment.java b/app/src/main/java/app/fedilab/android/fragments/DisplayPlaylistsFragment.java index 8990cb590..e65d55606 100644 --- a/app/src/main/java/app/fedilab/android/fragments/DisplayPlaylistsFragment.java +++ b/app/src/main/java/app/fedilab/android/fragments/DisplayPlaylistsFragment.java @@ -27,11 +27,13 @@ import android.view.View; import android.view.ViewGroup; import android.view.WindowManager; import android.view.inputmethod.InputMethodManager; +import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.EditText; import android.widget.LinearLayout; import android.widget.ListView; import android.widget.RelativeLayout; +import android.widget.Spinner; import android.widget.Toast; import androidx.annotation.NonNull; @@ -40,7 +42,6 @@ import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentTransaction; import com.google.android.material.floatingactionbutton.FloatingActionButton; -import com.jaredrummler.materialspinner.MaterialSpinner; import net.gotev.uploadservice.MultipartUploadRequest; import net.gotev.uploadservice.ServerResponse; @@ -55,6 +56,7 @@ import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; +import java.util.Objects; import app.fedilab.android.R; import app.fedilab.android.activities.MainActivity; @@ -89,8 +91,8 @@ public class DisplayPlaylistsFragment extends Fragment implements OnPlaylistActi private RelativeLayout textviewNoAction; private HashMap privacyToSend; private HashMap channelToSend; - private MaterialSpinner set_upload_channel; - private MaterialSpinner set_upload_privacy; + private Spinner set_upload_channel; + private Spinner set_upload_privacy; private HashMap channels; @Override @@ -394,7 +396,7 @@ public class DisplayPlaylistsFragment extends Fragment implements OnPlaylistActi channelToSend = new HashMap<>(); channelToSend.put(channelName[0], channelId[0]); - ArrayAdapter adapterChannel = new ArrayAdapter<>(context, + ArrayAdapter adapterChannel = new ArrayAdapter<>(Objects.requireNonNull(getActivity()), android.R.layout.simple_spinner_dropdown_item, channelName); set_upload_channel.setAdapter(adapterChannel); @@ -421,14 +423,14 @@ public class DisplayPlaylistsFragment extends Fragment implements OnPlaylistActi i++; } - ArrayAdapter adapterPrivacies = new ArrayAdapter<>(context, + ArrayAdapter adapterPrivacies = new ArrayAdapter<>(Objects.requireNonNull(getActivity()), android.R.layout.simple_spinner_dropdown_item, privaciesA); set_upload_privacy.setAdapter(adapterPrivacies); //Manage privacies - set_upload_privacy.setOnItemSelectedListener(new MaterialSpinner.OnItemSelectedListener() { + set_upload_privacy.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override - public void onItemSelected(MaterialSpinner view, int position, long id, String item) { + public void onItemSelected(AdapterView parent, View view, int position, long id) { LinkedHashMap privaciesCheck = new LinkedHashMap<>(peertubeInformation.getPrivacies()); Iterator it = privaciesCheck.entrySet().iterator(); int i = 0; @@ -443,11 +445,16 @@ public class DisplayPlaylistsFragment extends Fragment implements OnPlaylistActi i++; } } + + @Override + public void onNothingSelected(AdapterView parent) { + + } }); //Manage languages - set_upload_channel.setOnItemSelectedListener(new MaterialSpinner.OnItemSelectedListener() { + set_upload_channel.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override - public void onItemSelected(MaterialSpinner view, int position, long id, String item) { + public void onItemSelected(AdapterView parent, View view, int position, long id) { LinkedHashMap channelsCheck = new LinkedHashMap<>(channels); Iterator it = channelsCheck.entrySet().iterator(); int i = 0; @@ -462,6 +469,11 @@ public class DisplayPlaylistsFragment extends Fragment implements OnPlaylistActi i++; } } + + @Override + public void onNothingSelected(AdapterView parent) { + + } }); } } diff --git a/app/src/main/java/app/fedilab/android/fragments/SettingsPeertubeFragment.java b/app/src/main/java/app/fedilab/android/fragments/SettingsPeertubeFragment.java index b881d605d..5cffdfa7c 100644 --- a/app/src/main/java/app/fedilab/android/fragments/SettingsPeertubeFragment.java +++ b/app/src/main/java/app/fedilab/android/fragments/SettingsPeertubeFragment.java @@ -28,6 +28,8 @@ import android.widget.Spinner; import androidx.annotation.NonNull; import androidx.fragment.app.Fragment; +import java.util.Objects; + import app.fedilab.android.R; import app.fedilab.android.helper.Helper; @@ -56,8 +58,8 @@ public class SettingsPeertubeFragment extends Fragment { //Video mode final Spinner video_mode_spinner = rootView.findViewById(R.id.set_video_mode); - ArrayAdapter video_mode_spinnerAdapter = ArrayAdapter.createFromResource(getContext(), - R.array.settings_video_mode, android.R.layout.simple_spinner_item); + ArrayAdapter video_mode_spinnerAdapter = ArrayAdapter.createFromResource(Objects.requireNonNull(getActivity()), + R.array.settings_video_mode, android.R.layout.simple_spinner_dropdown_item); video_mode_spinner.setAdapter(video_mode_spinnerAdapter); if (videoMode == Helper.VIDEO_MODE_TORRENT) videoMode = Helper.VIDEO_MODE_DIRECT; diff --git a/app/src/main/res/layout/activity_peertube_edit.xml b/app/src/main/res/layout/activity_peertube_edit.xml index 5e93dbc2c..251d3c290 100644 --- a/app/src/main/res/layout/activity_peertube_edit.xml +++ b/app/src/main/res/layout/activity_peertube_edit.xml @@ -119,11 +119,11 @@ android:gravity="center" android:text="@string/channel" /> - + /> @@ -142,11 +142,11 @@ android:gravity="center" android:text="@string/category" /> - + /> @@ -165,11 +165,11 @@ android:gravity="center" android:text="@string/license" /> - + /> @@ -188,11 +188,11 @@ android:gravity="center" android:text="@string/language" /> - + /> @@ -210,11 +210,11 @@ android:gravity="center" android:text="@string/action_privacy" /> - + /> diff --git a/app/src/main/res/layout/activity_peertube_upload.xml b/app/src/main/res/layout/activity_peertube_upload.xml index d3d81ac8d..fb7b007a5 100644 --- a/app/src/main/res/layout/activity_peertube_upload.xml +++ b/app/src/main/res/layout/activity_peertube_upload.xml @@ -64,12 +64,11 @@ android:text="@string/channel" android:textSize="16sp" /> - + android:textSize="16sp" /> @@ -89,12 +88,12 @@ android:text="@string/action_privacy" android:textSize="16sp" /> - + /> diff --git a/app/src/main/res/layout/add_playlist.xml b/app/src/main/res/layout/add_playlist.xml index 0c8c0fde8..f4e0ad0cf 100644 --- a/app/src/main/res/layout/add_playlist.xml +++ b/app/src/main/res/layout/add_playlist.xml @@ -56,12 +56,12 @@ android:text="@string/channel" android:textSize="16sp" /> - + /> - + /> diff --git a/app/src/main/res/layout/popup_quick_settings.xml b/app/src/main/res/layout/popup_quick_settings.xml index 536681da9..0d1246065 100644 --- a/app/src/main/res/layout/popup_quick_settings.xml +++ b/app/src/main/res/layout/popup_quick_settings.xml @@ -15,7 +15,6 @@ see . --> - + />