Replace spinners

This commit is contained in:
tom79 2019-11-20 11:57:25 +01:00
parent f7c91f9e97
commit c7f2c8e800
16 changed files with 144 additions and 102 deletions

View File

@ -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'

View File

@ -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<String> adapterLive = new ArrayAdapter<>(getApplicationContext(),
ArrayAdapter<String> 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() {

View File

@ -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;

View File

@ -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<Integer, String> privacyToSend;
HashMap<String, String> languageToSend;
HashMap<String, String> 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<String>() {
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<Integer, String> 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<String>() {
@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<Integer, String> 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<String>() {
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<Integer, String> 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<String>() {
@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<String, String> 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<String>() {
@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<String, String> 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<String> 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);
}

View File

@ -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<String, String> 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<String>() {
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<Integer, String> 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<String>() {
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<String, String> 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

View File

@ -90,7 +90,7 @@ public class ProxyActivity extends BaseActivity {
count2 = 0;
final Spinner proxy_type = findViewById(R.id.type);
ArrayAdapter<CharSequence> 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);

View File

@ -3665,10 +3665,10 @@ public class TootActivity extends BaseActivity implements UploadStatusDelegate,
});
ArrayAdapter<CharSequence> 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<CharSequence> 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);

View File

@ -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<CharSequence> adapterResize = ArrayAdapter.createFromResource(context,
R.array.filter_expire, android.R.layout.simple_spinner_item);
ArrayAdapter<CharSequence> 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() {

View File

@ -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<String> adapterAttachment = new ArrayAdapter<>(context,
ArrayAdapter<String> 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<CharSequence> video_mode_spinnerAdapter = ArrayAdapter.createFromResource(getContext(),
R.array.settings_video_mode, android.R.layout.simple_spinner_item);
ArrayAdapter<CharSequence> 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<String> adapterMode = new ArrayAdapter<>(context,
ArrayAdapter<String> 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<String> adapterLive = new ArrayAdapter<>(context,
ArrayAdapter<String> 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<CharSequence> adapterTrans = ArrayAdapter.createFromResource(getContext(),
R.array.settings_translation, android.R.layout.simple_spinner_item);
ArrayAdapter<CharSequence> 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<CharSequence> adapterAction = ArrayAdapter.createFromResource(getContext(),
R.array.action_notification, android.R.layout.simple_spinner_item);
ArrayAdapter<CharSequence> 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<CharSequence> adapterLEDColour = ArrayAdapter.createFromResource(getContext(), R.array.led_colours, android.R.layout.simple_spinner_item);
ArrayAdapter<CharSequence> 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<String> adapterLocale = new ArrayAdapter<>(context,
ArrayAdapter<String> adapterLocale = new ArrayAdapter<>(Objects.requireNonNull(getActivity()),
android.R.layout.simple_spinner_dropdown_item, Helper.getLocales(context));
set_change_locale.setAdapter(adapterLocale);

View File

@ -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<CharSequence> adapterResize = ArrayAdapter.createFromResource(Objects.requireNonNull(getContext()),
R.array.filter_expire, android.R.layout.simple_spinner_item);
ArrayAdapter<CharSequence> 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() {

View File

@ -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<Integer, String> privacyToSend;
private HashMap<String, String> channelToSend;
private MaterialSpinner set_upload_channel;
private MaterialSpinner set_upload_privacy;
private Spinner set_upload_channel;
private Spinner set_upload_privacy;
private HashMap<String, String> channels;
@Override
@ -394,7 +396,7 @@ public class DisplayPlaylistsFragment extends Fragment implements OnPlaylistActi
channelToSend = new HashMap<>();
channelToSend.put(channelName[0], channelId[0]);
ArrayAdapter<String> adapterChannel = new ArrayAdapter<>(context,
ArrayAdapter<String> 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<String> adapterPrivacies = new ArrayAdapter<>(context,
ArrayAdapter<String> 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<String>() {
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<Integer, String> 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<String>() {
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<String, String> 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) {
}
});
}
}

View File

@ -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<CharSequence> video_mode_spinnerAdapter = ArrayAdapter.createFromResource(getContext(),
R.array.settings_video_mode, android.R.layout.simple_spinner_item);
ArrayAdapter<CharSequence> 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;

View File

@ -119,11 +119,11 @@
android:gravity="center"
android:text="@string/channel" />
<com.jaredrummler.materialspinner.MaterialSpinner
<Spinner
android:id="@+id/set_upload_channel"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:ms_background_color="?colorPrimaryDark" />
/>
</LinearLayout>
@ -142,11 +142,11 @@
android:gravity="center"
android:text="@string/category" />
<com.jaredrummler.materialspinner.MaterialSpinner
<Spinner
android:id="@+id/set_upload_categories"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:ms_background_color="?colorPrimaryDark" />
/>
</LinearLayout>
@ -165,11 +165,11 @@
android:gravity="center"
android:text="@string/license" />
<com.jaredrummler.materialspinner.MaterialSpinner
<Spinner
android:id="@+id/set_upload_licenses"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:ms_background_color="?colorPrimaryDark" />
/>
</LinearLayout>
@ -188,11 +188,11 @@
android:gravity="center"
android:text="@string/language" />
<com.jaredrummler.materialspinner.MaterialSpinner
<Spinner
android:id="@+id/set_upload_languages"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:ms_background_color="?colorPrimaryDark" />
/>
</LinearLayout>
<!-- Videos Privacy -->
@ -210,11 +210,11 @@
android:gravity="center"
android:text="@string/action_privacy" />
<com.jaredrummler.materialspinner.MaterialSpinner
<Spinner
android:id="@+id/set_upload_privacy"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:ms_background_color="?colorPrimaryDark" />
/>
</LinearLayout>

View File

@ -64,12 +64,11 @@
android:text="@string/channel"
android:textSize="16sp" />
<com.jaredrummler.materialspinner.MaterialSpinner
<Spinner
android:id="@+id/set_upload_channel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp"
app:ms_background_color="?colorPrimaryDark" />
android:textSize="16sp" />
</LinearLayout>
@ -89,12 +88,12 @@
android:text="@string/action_privacy"
android:textSize="16sp" />
<com.jaredrummler.materialspinner.MaterialSpinner
<Spinner
android:id="@+id/set_upload_privacy"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp"
app:ms_background_color="?colorPrimaryDark" />
/>
</LinearLayout>

View File

@ -56,12 +56,12 @@
android:text="@string/channel"
android:textSize="16sp" />
<com.jaredrummler.materialspinner.MaterialSpinner
<Spinner
android:id="@+id/set_upload_channel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14sp"
app:ms_background_color="?colorPrimaryDark" />
/>
</LinearLayout>
<!-- Videos Privacy -->
<LinearLayout
@ -79,12 +79,12 @@
android:text="@string/action_privacy"
android:textSize="16sp" />
<com.jaredrummler.materialspinner.MaterialSpinner
<Spinner
android:id="@+id/set_upload_privacy"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14sp"
app:ms_background_color="?colorPrimaryDark" />
/>
</LinearLayout>
</LinearLayout>

View File

@ -15,7 +15,6 @@
see <http://www.gnu.org/licenses>.
-->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/swipeContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@ -32,12 +31,12 @@
android:text="@string/settings_popup_message" />
<!-- Choose stream -->
<com.jaredrummler.materialspinner.MaterialSpinner
<Spinner
android:id="@+id/set_live_type"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="20dp"
app:ms_background_color="?colorPrimaryDark" />
/>
<TextView
android:id="@+id/set_live_type_indication"