Change spinner

This commit is contained in:
stom79 2019-01-08 18:11:40 +01:00
parent 81ed7b17f2
commit e704c7cef0
7 changed files with 119 additions and 95 deletions

View File

@ -38,6 +38,9 @@ android {
playstore {
}
}
packagingOptions {
exclude 'META-INF/proguard/androidx-annotations.pro'
}
}
allprojects {
repositories {
@ -89,5 +92,6 @@ dependencies {
implementation "com.github.TorrentStream:TorrentStream-Android:$torrentstreamVersion"
implementation "net.gotev:uploadservice:$uploadServiceVersion"
implementation 'com.github.mabbas007:TagsEditText:1.0.5'
implementation 'com.jaredrummler:material-spinner:1.3.1'
playstoreImplementation "io.github.kobakei:ratethisapp:$ratethisappLibraryVersion"
}

View File

@ -30,10 +30,11 @@ import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
import com.jaredrummler.materialspinner.MaterialSpinner;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
@ -52,12 +53,13 @@ import mabbas007.tagsedittext.TagsEditText;
import static fr.gouv.etalab.mastodon.asynctasks.RetrievePeertubeInformationAsyncTask.peertubeInformation;
import static fr.gouv.etalab.mastodon.helper.Helper.THEME_LIGHT;
import static fr.gouv.etalab.mastodon.helper.Helper.changeMaterialSpinnerColor;
public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrievePeertubeInterface {
private Button set_upload_submit;
private Spinner set_upload_privacy, set_upload_categories, set_upload_licenses, set_upload_languages, set_upload_channel;
private MaterialSpinner 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;
@ -128,6 +130,13 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie
set_upload_nsfw = findViewById(R.id.set_upload_nsfw);
set_upload_enable_comments = findViewById(R.id.set_upload_enable_comments);
changeMaterialSpinnerColor(PeertubeEditUploadActivity.this, set_upload_channel);
changeMaterialSpinnerColor(PeertubeEditUploadActivity.this, set_upload_categories);
changeMaterialSpinnerColor(PeertubeEditUploadActivity.this, set_upload_licenses);
changeMaterialSpinnerColor(PeertubeEditUploadActivity.this, set_upload_languages);
changeMaterialSpinnerColor(PeertubeEditUploadActivity.this, set_upload_privacy);
LinkedHashMap<Integer, String> categories = new LinkedHashMap<>(peertubeInformation.getCategories());
LinkedHashMap<Integer, String> licences = new LinkedHashMap<>(peertubeInformation.getLicences());
@ -304,10 +313,10 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie
}
}
set_upload_privacy.setSelection(privacyPosition);
set_upload_languages.setSelection(languagePosition);
set_upload_licenses.setSelection(licensePosition);
set_upload_categories.setSelection(categoryPosition);
set_upload_privacy.setSelectedIndex(privacyPosition);
set_upload_languages.setSelectedIndex(languagePosition);
set_upload_licenses.setSelectedIndex(licensePosition);
set_upload_categories.setSelectedIndex(categoryPosition);
List<String> tags = peertube.getTags();
if( tags != null && tags.size() > 0) {
@ -356,7 +365,7 @@ public class PeertubeEditUploadActivity extends BaseActivity implements OnRetrie
channelPosition++;
}
}
set_upload_channel.setSelection(channelPosition);
set_upload_channel.setSelectedIndex(channelPosition);
set_upload_submit.setEnabled(true);
}

View File

@ -38,10 +38,11 @@ import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
import com.jaredrummler.materialspinner.MaterialSpinner;
import java.io.File;
import java.util.HashMap;
import java.util.List;
@ -55,13 +56,14 @@ import fr.gouv.etalab.mastodon.helper.Helper;
import fr.gouv.etalab.mastodon.interfaces.OnRetrievePeertubeInterface;
import static fr.gouv.etalab.mastodon.helper.Helper.THEME_LIGHT;
import static fr.gouv.etalab.mastodon.helper.Helper.changeMaterialSpinnerColor;
public class PeertubeUploadActivity extends BaseActivity implements OnRetrievePeertubeInterface {
private final int PICK_IVDEO = 52378;
private Button set_upload_file, set_upload_submit;
private Spinner set_upload_privacy, set_upload_channel;
private MaterialSpinner set_upload_privacy, set_upload_channel;
private TextView set_upload_file_name;
private HashMap<String, String> channels;
private final int MY_PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE = 724;
@ -116,6 +118,9 @@ public class PeertubeUploadActivity extends BaseActivity implements OnRetrievePe
set_upload_privacy = findViewById(R.id.set_upload_privacy);
set_upload_submit = findViewById(R.id.set_upload_submit);
changeMaterialSpinnerColor(PeertubeUploadActivity.this, set_upload_privacy);
changeMaterialSpinnerColor(PeertubeUploadActivity.this, set_upload_channel);
new RetrievePeertubeChannelsAsyncTask(PeertubeUploadActivity.this, PeertubeUploadActivity.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
channels = new HashMap<>();
}

View File

@ -112,6 +112,7 @@ import com.bumptech.glide.request.target.Target;
import com.bumptech.glide.request.transition.Transition;
import com.google.common.reflect.TypeToken;
import com.google.gson.Gson;
import com.jaredrummler.materialspinner.MaterialSpinner;
import com.oguzdev.circularfloatingactionmenu.library.FloatingActionButton;
import com.oguzdev.circularfloatingactionmenu.library.FloatingActionMenu;
import com.oguzdev.circularfloatingactionmenu.library.SubActionButton;
@ -3416,4 +3417,24 @@ public class Helper {
public static boolean isTablet(Context context){
return context.getResources().getBoolean(R.bool.isTablet);
}
public static void changeMaterialSpinnerColor(Context context, MaterialSpinner materialSpinner){
SharedPreferences sharedpreferences = context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE);
int theme = sharedpreferences.getInt(Helper.SET_THEME, Helper.THEME_DARK);
if( theme == THEME_BLACK) {
materialSpinner.setBackgroundColor(ContextCompat.getColor(context, R.color.black_3));
materialSpinner.setArrowColor(ContextCompat.getColor(context, R.color.dark_text));
materialSpinner.setTextColor(ContextCompat.getColor(context, R.color.dark_text));
}else if( theme == THEME_DARK){
materialSpinner.setBackgroundColor(ContextCompat.getColor(context, R.color.mastodonC1));
materialSpinner.setArrowColor(ContextCompat.getColor(context, R.color.dark_text));
materialSpinner.setTextColor(ContextCompat.getColor(context, R.color.dark_text));
}else {
materialSpinner.setBackgroundColor(ContextCompat.getColor(context, R.color.white));
materialSpinner.setArrowColor(ContextCompat.getColor(context, R.color.black));
materialSpinner.setTextColor(ContextCompat.getColor(context, R.color.black));
}
}
}

View File

@ -108,109 +108,93 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/channel"/>
<Spinner
<com.jaredrummler.materialspinner.MaterialSpinner
android:id="@+id/set_upload_channel"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
<!-- Videos categories -->
<LinearLayout
android:layout_width="match_parent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal"
android:baselineAligned="false">
<!-- Videos categories -->
<LinearLayout
android:layout_width="0dp"
android:layout_weight="1"
android:gravity="center_vertical"
android:layout_gravity="center_vertical"
android:orientation="vertical">
<TextView
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:layout_gravity="center_vertical"
android:orientation="vertical">
<TextView
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/category"/>
<Spinner
android:id="@+id/set_upload_categories"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
<!-- Videos licences -->
<LinearLayout
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:layout_gravity="center_vertical"
android:orientation="vertical">
<TextView
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/license"/>
<Spinner
android:id="@+id/set_upload_licenses"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
android:text="@string/category"/>
<com.jaredrummler.materialspinner.MaterialSpinner
android:id="@+id/set_upload_categories"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
<!-- Videos licences -->
<LinearLayout
android:layout_marginTop="10dp"
android:layout_width="match_parent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:baselineAligned="false">
<!-- Videos languages -->
<LinearLayout
android:layout_width="0dp"
android:layout_weight="1"
android:gravity="center_vertical"
android:layout_gravity="center_vertical"
android:orientation="vertical">
<TextView
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:layout_gravity="center_vertical"
android:orientation="vertical">
<TextView
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/language"/>
<Spinner
android:id="@+id/set_upload_languages"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
<!-- Videos Privacy -->
<LinearLayout
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:layout_gravity="center_vertical"
android:orientation="vertical">
<TextView
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/action_privacy"/>
<Spinner
android:id="@+id/set_upload_privacy"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
android:text="@string/license"/>
<com.jaredrummler.materialspinner.MaterialSpinner
android:id="@+id/set_upload_licenses"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
<!-- Videos languages -->
<LinearLayout
android:layout_marginTop="10dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:layout_gravity="center_vertical"
android:orientation="vertical">
<TextView
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/language"/>
<com.jaredrummler.materialspinner.MaterialSpinner
android:id="@+id/set_upload_languages"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
<!-- Videos Privacy -->
<LinearLayout
android:layout_marginTop="10dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:layout_gravity="center_vertical"
android:orientation="vertical">
<TextView
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/action_privacy"/>
<com.jaredrummler.materialspinner.MaterialSpinner
android:id="@+id/set_upload_privacy"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
<!-- More options -->
<LinearLayout
android:layout_marginTop="20dp"

View File

@ -63,7 +63,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/channel"/>
<Spinner
<com.jaredrummler.materialspinner.MaterialSpinner
android:textSize="16sp"
android:id="@+id/set_upload_channel"
android:layout_width="wrap_content"
@ -85,7 +85,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/action_privacy"/>
<Spinner
<com.jaredrummler.materialspinner.MaterialSpinner
android:textSize="16sp"
android:id="@+id/set_upload_privacy"
android:layout_width="wrap_content"

View File

@ -251,6 +251,7 @@
<item name="android:windowBackground">@color/black_3</item>
<item name="android:colorBackground">@color/black_3</item>
</style>
<style name="BlackSpinnerItemStyle" parent="Base.Widget.AppCompat.TextView.SpinnerItem">
<item name="android:padding">10dp</item>
</style>