From fbc00b1cb9d2d813a0ea07123850633b0392b86d Mon Sep 17 00:00:00 2001
From: Docile-Alligator <25734209+Docile-Alligator@users.noreply.github.com>
Date: Tue, 10 Sep 2024 15:08:13 -0400
Subject: New UI design in CreateMultiRedditActivity.
---
.../activities/CreateMultiRedditActivity.java | 53 +++++---
.../res/layout/activity_create_multi_reddit.xml | 134 ++++++++++++++++-----
app/src/main/res/values/strings.xml | 1 +
3 files changed, 138 insertions(+), 50 deletions(-)
(limited to 'app')
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/CreateMultiRedditActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/CreateMultiRedditActivity.java
index 6e398871..fb9b1a47 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/CreateMultiRedditActivity.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/CreateMultiRedditActivity.java
@@ -2,12 +2,14 @@ package ml.docilealligator.infinityforreddit.activities;
import android.content.Intent;
import android.content.SharedPreferences;
+import android.content.res.ColorStateList;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
+import android.widget.CompoundButton;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@@ -26,11 +28,9 @@ import ml.docilealligator.infinityforreddit.R;
import ml.docilealligator.infinityforreddit.RedditDataRoomDatabase;
import ml.docilealligator.infinityforreddit.account.Account;
import ml.docilealligator.infinityforreddit.customtheme.CustomThemeWrapper;
-import ml.docilealligator.infinityforreddit.customviews.slidr.Slidr;
import ml.docilealligator.infinityforreddit.databinding.ActivityCreateMultiRedditBinding;
import ml.docilealligator.infinityforreddit.multireddit.CreateMultiReddit;
import ml.docilealligator.infinityforreddit.multireddit.MultiRedditJSONModel;
-import ml.docilealligator.infinityforreddit.utils.SharedPreferencesUtils;
import ml.docilealligator.infinityforreddit.utils.Utils;
import retrofit2.Retrofit;
@@ -68,10 +68,6 @@ public class CreateMultiRedditActivity extends BaseActivity {
applyCustomTheme();
- if (mSharedPreferences.getBoolean(SharedPreferencesUtils.SWIPE_RIGHT_TO_GO_BACK, true)) {
- Slidr.attach(this);
- }
-
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && isChangeStatusBarIconColor()) {
addOnOffsetChangedListener(binding.appbarLayoutCreateMultiRedditActivity);
}
@@ -80,7 +76,7 @@ public class CreateMultiRedditActivity extends BaseActivity {
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
if (accountName.equals(Account.ANONYMOUS_ACCOUNT)) {
- binding.visibilityWrapperLinearLayoutCreateMultiRedditActivity.setVisibility(View.GONE);
+ binding.visibilityChipCreateMultiRedditActivity.setVisibility(View.GONE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
binding.multiRedditNameEditTextCreateMultiRedditActivity.setImeOptions(binding.multiRedditNameEditTextCreateMultiRedditActivity.getImeOptions() | EditorInfoCompat.IME_FLAG_NO_PERSONALIZED_LEARNING);
binding.descriptionEditTextCreateMultiRedditActivity.setImeOptions(binding.descriptionEditTextCreateMultiRedditActivity.getImeOptions() | EditorInfoCompat.IME_FLAG_NO_PERSONALIZED_LEARNING);
@@ -96,11 +92,23 @@ public class CreateMultiRedditActivity extends BaseActivity {
}
private void bindView() {
- binding.selectSubredditTextViewCreateMultiRedditActivity.setOnClickListener(view -> {
+ binding.selectSubredditChipCreateMultiRedditActivity.setOnClickListener(view -> {
Intent intent = new Intent(CreateMultiRedditActivity.this, SelectedSubredditsAndUsersActivity.class);
intent.putStringArrayListExtra(SelectedSubredditsAndUsersActivity.EXTRA_SELECTED_SUBREDDITS, mSubreddits);
startActivityForResult(intent, SUBREDDIT_SELECTION_REQUEST_CODE);
});
+
+ binding.visibilityChipCreateMultiRedditActivity.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
+ @Override
+ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
+ if (isChecked) {
+ binding.visibilityChipCreateMultiRedditActivity.setChipBackgroundColor(ColorStateList.valueOf(mCustomThemeWrapper.getFilledCardViewBackgroundColor()));
+ } else {
+ //Match the background color
+ binding.visibilityChipCreateMultiRedditActivity.setChipBackgroundColor(ColorStateList.valueOf(mCustomThemeWrapper.getBackgroundColor()));
+ }
+ }
+ });
}
@Override
@@ -124,7 +132,7 @@ public class CreateMultiRedditActivity extends BaseActivity {
if (!accountName.equals(Account.ANONYMOUS_ACCOUNT)) {
String jsonModel = new MultiRedditJSONModel(binding.multiRedditNameEditTextCreateMultiRedditActivity.getText().toString(), binding.descriptionEditTextCreateMultiRedditActivity.getText().toString(),
- binding.visibilitySwitchCreateMultiRedditActivity.isChecked(), mSubreddits).createJSONModel();
+ binding.visibilityChipCreateMultiRedditActivity.isChecked(), mSubreddits).createJSONModel();
CreateMultiReddit.createMultiReddit(mOauthRetrofit, mRedditDataRoomDatabase, accessToken,
"/user/" + accountName + "/m/" + binding.multiRedditNameEditTextCreateMultiRedditActivity.getText().toString(),
jsonModel, new CreateMultiReddit.CreateMultiRedditListener() {
@@ -200,19 +208,30 @@ public class CreateMultiRedditActivity extends BaseActivity {
applyAppBarLayoutAndCollapsingToolbarLayoutAndToolbarTheme(binding.appbarLayoutCreateMultiRedditActivity,
binding.collapsingToolbarLayoutCreateMultiRedditActivity, binding.toolbarCreateMultiRedditActivity);
int primaryTextColor = mCustomThemeWrapper.getPrimaryTextColor();
- int secondaryTextColor = mCustomThemeWrapper.getSecondaryTextColor();
+ binding.inputCardViewCreateMultiRedditActivity.setCardBackgroundColor(mCustomThemeWrapper.getFilledCardViewBackgroundColor());
+
+ binding.multiRedditNameExplanationTextInputLayoutCreateMultiRedditActivity.setTextColor(primaryTextColor);
+ binding.multiRedditNameTextInputLayoutCreateMultiRedditActivity.setBoxStrokeColor(primaryTextColor);
+ binding.multiRedditNameTextInputLayoutCreateMultiRedditActivity.setDefaultHintTextColor(ColorStateList.valueOf(primaryTextColor));
binding.multiRedditNameEditTextCreateMultiRedditActivity.setTextColor(primaryTextColor);
- binding.multiRedditNameEditTextCreateMultiRedditActivity.setHintTextColor(secondaryTextColor);
- int dividerColor = mCustomThemeWrapper.getDividerColor();
- binding.divider1CreateMultiRedditActivity.setBackgroundColor(dividerColor);
- binding.divider2CreateMultiRedditActivity.setBackgroundColor(dividerColor);
+
+ binding.descriptionTextInputLayoutCreateMultiRedditActivity.setBoxStrokeColor(primaryTextColor);
+ binding.descriptionTextInputLayoutCreateMultiRedditActivity.setDefaultHintTextColor(ColorStateList.valueOf(primaryTextColor));
binding.descriptionEditTextCreateMultiRedditActivity.setTextColor(primaryTextColor);
- binding.descriptionEditTextCreateMultiRedditActivity.setHintTextColor(secondaryTextColor);
- binding.visibilityTextViewCreateMultiRedditActivity.setTextColor(primaryTextColor);
- binding.selectSubredditTextViewCreateMultiRedditActivity.setTextColor(primaryTextColor);
+
+
+ binding.selectSubredditChipCreateMultiRedditActivity.setTextColor(primaryTextColor);
+ binding.selectSubredditChipCreateMultiRedditActivity.setChipBackgroundColor(ColorStateList.valueOf(mCustomThemeWrapper.getFilledCardViewBackgroundColor()));
+ binding.selectSubredditChipCreateMultiRedditActivity.setChipStrokeColor(ColorStateList.valueOf(mCustomThemeWrapper.getFilledCardViewBackgroundColor()));
+
+ binding.visibilityChipCreateMultiRedditActivity.setTextColor(primaryTextColor);
+ binding.visibilityChipCreateMultiRedditActivity.setChipBackgroundColor(ColorStateList.valueOf(mCustomThemeWrapper.getFilledCardViewBackgroundColor()));
+ binding.visibilityChipCreateMultiRedditActivity.setChipStrokeColor(ColorStateList.valueOf(mCustomThemeWrapper.getFilledCardViewBackgroundColor()));
if (typeface != null) {
Utils.setFontToAllTextViews(binding.coordinatorLayoutCreateMultiRedditActivity, typeface);
+ binding.selectSubredditChipCreateMultiRedditActivity.setTypeface(typeface);
+ binding.visibilityChipCreateMultiRedditActivity.setTypeface(typeface);
}
}
}
diff --git a/app/src/main/res/layout/activity_create_multi_reddit.xml b/app/src/main/res/layout/activity_create_multi_reddit.xml
index e1b3a3e1..de9a8145 100644
--- a/app/src/main/res/layout/activity_create_multi_reddit.xml
+++ b/app/src/main/res/layout/activity_create_multi_reddit.xml
@@ -43,46 +43,116 @@
android:layout_height="wrap_content"
android:orientation="vertical">
-
-
-
+ android:layout_marginTop="16dp"
+ android:layout_marginStart="16dp"
+ android:layout_marginEnd="16dp"
+ app:cardCornerRadius="12dp">
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ app:chipSpacingHorizontal="16dp">
-
+
-
+
+
+
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index ee33c49d..07952129 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -736,6 +736,7 @@
Device Default
Set by Battery Saver
+ The name should be unique.
Name (Max 50 Characters)
Description
Private
--
cgit v1.2.3