aboutsummaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorAlex Ning <chineseperson5@gmail.com>2019-12-18 10:35:58 +0000
committerAlex Ning <chineseperson5@gmail.com>2019-12-18 10:35:58 +0000
commit5097919a3616b4dab44cc36e24fe8b08d7daf8dc (patch)
tree6e1ef60397e6e09e09eb33688623ad9b1da067f4 /app
parentee02d63345e479b2726185b1168015740b9a5a5a (diff)
downloadinfinity-for-reddit-5097919a3616b4dab44cc36e24fe8b08d7daf8dc.tar
infinity-for-reddit-5097919a3616b4dab44cc36e24fe8b08d7daf8dc.tar.gz
infinity-for-reddit-5097919a3616b4dab44cc36e24fe8b08d7daf8dc.tar.bz2
infinity-for-reddit-5097919a3616b4dab44cc36e24fe8b08d7daf8dc.tar.lz
infinity-for-reddit-5097919a3616b4dab44cc36e24fe8b08d7daf8dc.tar.xz
infinity-for-reddit-5097919a3616b4dab44cc36e24fe8b08d7daf8dc.tar.zst
infinity-for-reddit-5097919a3616b4dab44cc36e24fe8b08d7daf8dc.zip
Add a BottomAppBar to navigate to subscriptions and multireddits.
Diffstat (limited to 'app')
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/Activity/MainActivity.java57
-rwxr-xr-xapp/src/main/res/drawable-hdpi/baseline_add_white_24.pngbin138 -> 0 bytes
-rwxr-xr-xapp/src/main/res/drawable-mdpi/baseline_add_white_24.pngbin92 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-night/ic_add_bottom_app_bar_24dp.xml9
-rw-r--r--app/src/main/res/drawable-night/ic_outline_check_circle_outline_bottom_app_bar_24dp.xml (renamed from app/src/main/res/drawable/ic_outline_check_circle_outline_white_24px.xml)0
-rwxr-xr-xapp/src/main/res/drawable-xhdpi/baseline_add_white_24.pngbin97 -> 0 bytes
-rwxr-xr-xapp/src/main/res/drawable-xxhdpi/baseline_add_white_24.pngbin97 -> 0 bytes
-rwxr-xr-xapp/src/main/res/drawable-xxxhdpi/baseline_add_white_24.pngbin102 -> 0 bytes
-rw-r--r--app/src/main/res/drawable/ic_add_24dp.xml9
-rw-r--r--app/src/main/res/drawable/ic_add_bottom_app_bar_24dp.xml9
-rw-r--r--app/src/main/res/drawable/ic_outline_check_circle_outline_bottom_app_bar_24dp.xml9
-rw-r--r--app/src/main/res/layout/activity_view_subreddit_detail.xml2
-rw-r--r--app/src/main/res/layout/app_bar_main.xml57
-rw-r--r--app/src/main/res/layout/item_subreddit_listing.xml2
-rw-r--r--app/src/main/res/layout/item_user_listing.xml2
-rw-r--r--app/src/main/res/menu/main_activity.xml17
16 files changed, 121 insertions, 52 deletions
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/MainActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/MainActivity.java
index 6b592d72..d8021fce 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/MainActivity.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/MainActivity.java
@@ -45,6 +45,7 @@ import com.bumptech.glide.RequestManager;
import com.bumptech.glide.request.RequestOptions;
import com.google.android.material.appbar.AppBarLayout;
import com.google.android.material.appbar.CollapsingToolbarLayout;
+import com.google.android.material.bottomappbar.BottomAppBar;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.google.android.material.tabs.TabLayout;
@@ -162,6 +163,12 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
TabLayout tabLayout;
@BindView(R.id.fab_main_activity)
FloatingActionButton fab;
+ @BindView(R.id.bottom_navigation_main_activity)
+ BottomAppBar bottomNavigationView;
+ @BindView(R.id.subscriptions_bottom_app_bar_main_activity)
+ TextView subscriptionsBottomAppBar;
+ @BindView(R.id.multi_reddit_bottom_app_bar_main_activity)
+ TextView multiRedditBottomAppBar;
AccountViewModel accountViewModel;
@Inject
@Named("oauth")
@@ -353,20 +360,12 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
mNewAccountName = null;
if (newAccount == null) {
mNullAccessToken = true;
-
- if (mMenu != null) {
- mMenu.findItem(R.id.action_subscriptions_main_activity).setVisible(false);
- }
} else {
mAccessToken = newAccount.getAccessToken();
mAccountName = newAccount.getUsername();
mProfileImageUrl = newAccount.getProfileImageUrl();
mBannerImageUrl = newAccount.getBannerImageUrl();
mKarma = newAccount.getKarma();
-
- if (mMenu != null) {
- mMenu.findItem(R.id.action_subscriptions_main_activity).setVisible(true);
- }
}
if (enableNotification) {
@@ -395,10 +394,6 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
mBannerImageUrl = account.getBannerImageUrl();
mKarma = account.getKarma();
- if (mMenu != null) {
- mMenu.findItem(R.id.action_subscriptions_main_activity).setVisible(true);
- }
-
if (enableNotification) {
Constraints constraints = new Constraints.Builder()
.setRequiredNetworkType(NetworkType.CONNECTED)
@@ -421,20 +416,12 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
} else {
if (account == null) {
mNullAccessToken = true;
-
- if (mMenu != null) {
- mMenu.findItem(R.id.action_subscriptions_main_activity).setVisible(false);
- }
} else {
mAccessToken = account.getAccessToken();
mAccountName = account.getUsername();
mProfileImageUrl = account.getProfileImageUrl();
mBannerImageUrl = account.getBannerImageUrl();
mKarma = account.getKarma();
-
- if (mMenu != null) {
- mMenu.findItem(R.id.action_subscriptions_main_activity).setVisible(true);
- }
}
if (enableNotification) {
@@ -464,6 +451,21 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
return;
}
+ if (mAccessToken == null) {
+ bottomNavigationView.setVisibility(View.GONE);
+ } else {
+ bottomNavigationView.setVisibility(View.VISIBLE);
+ subscriptionsBottomAppBar.setOnClickListener(view -> {
+ Intent intent = new Intent(MainActivity.this, SubscribedThingListingActivity.class);
+ startActivity(intent);
+ });
+
+ multiRedditBottomAppBar.setOnClickListener(view -> {
+ Intent intent = new Intent(MainActivity.this, MultiRedditListingActivity.class);
+ startActivity(intent);
+ });
+ }
+
sectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
viewPager.setAdapter(sectionsPagerAdapter);
viewPager.setOffscreenPageLimit(3);
@@ -783,13 +785,6 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
getMenuInflater().inflate(R.menu.main_activity, menu);
mMenu = menu;
MenuItem lazyModeItem = mMenu.findItem(R.id.action_lazy_mode_main_activity);
- MenuItem subscriptionsItem = mMenu.findItem(R.id.action_subscriptions_main_activity);
-
- if (mAccessToken != null) {
- subscriptionsItem.setVisible(true);
- } else {
- subscriptionsItem.setVisible(false);
- }
if (isInLazyMode) {
lazyModeItem.setTitle(R.string.action_stop_lazy_mode);
@@ -807,12 +802,6 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()) {
- case R.id.action_subscriptions_main_activity:
- /*Intent subscriptionsIntent = new Intent(this, SubscribedThingListingActivity.class);
- startActivity(subscriptionsIntent);*/
- Intent multiIntent = new Intent(this, MultiRedditListingActivity.class);
- startActivity(multiIntent);
- return true;
case R.id.action_sort_main_activity:
if (viewPager.getCurrentItem() == 1 || viewPager.getCurrentItem() == 2) {
popularAndAllSortTypeBottomSheetFragment.show(getSupportFragmentManager(), popularAndAllSortTypeBottomSheetFragment.getTag());
@@ -935,11 +924,13 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
}
public void postScrollUp() {
+ bottomNavigationView.performShow();
fab.show();
}
public void postScrollDown() {
fab.hide();
+ bottomNavigationView.performHide();
}
@Subscribe
diff --git a/app/src/main/res/drawable-hdpi/baseline_add_white_24.png b/app/src/main/res/drawable-hdpi/baseline_add_white_24.png
deleted file mode 100755
index ea78104d..00000000
--- a/app/src/main/res/drawable-hdpi/baseline_add_white_24.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-mdpi/baseline_add_white_24.png b/app/src/main/res/drawable-mdpi/baseline_add_white_24.png
deleted file mode 100755
index eeba9f66..00000000
--- a/app/src/main/res/drawable-mdpi/baseline_add_white_24.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-night/ic_add_bottom_app_bar_24dp.xml b/app/src/main/res/drawable-night/ic_add_bottom_app_bar_24dp.xml
new file mode 100644
index 00000000..b6814bc2
--- /dev/null
+++ b/app/src/main/res/drawable-night/ic_add_bottom_app_bar_24dp.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24"
+ android:viewportHeight="24">
+ <path
+ android:fillColor="#FFFFFFFF"
+ android:pathData="M18,13h-5v5c0,0.55 -0.45,1 -1,1s-1,-0.45 -1,-1v-5H6c-0.55,0 -1,-0.45 -1,-1s0.45,-1 1,-1h5V6c0,-0.55 0.45,-1 1,-1s1,0.45 1,1v5h5c0.55,0 1,0.45 1,1s-0.45,1 -1,1z"/>
+</vector>
diff --git a/app/src/main/res/drawable/ic_outline_check_circle_outline_white_24px.xml b/app/src/main/res/drawable-night/ic_outline_check_circle_outline_bottom_app_bar_24dp.xml
index 191a8e4c..191a8e4c 100644
--- a/app/src/main/res/drawable/ic_outline_check_circle_outline_white_24px.xml
+++ b/app/src/main/res/drawable-night/ic_outline_check_circle_outline_bottom_app_bar_24dp.xml
diff --git a/app/src/main/res/drawable-xhdpi/baseline_add_white_24.png b/app/src/main/res/drawable-xhdpi/baseline_add_white_24.png
deleted file mode 100755
index 67bb598e..00000000
--- a/app/src/main/res/drawable-xhdpi/baseline_add_white_24.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xxhdpi/baseline_add_white_24.png b/app/src/main/res/drawable-xxhdpi/baseline_add_white_24.png
deleted file mode 100755
index 0fdced8f..00000000
--- a/app/src/main/res/drawable-xxhdpi/baseline_add_white_24.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xxxhdpi/baseline_add_white_24.png b/app/src/main/res/drawable-xxxhdpi/baseline_add_white_24.png
deleted file mode 100755
index d64c22e9..00000000
--- a/app/src/main/res/drawable-xxxhdpi/baseline_add_white_24.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable/ic_add_24dp.xml b/app/src/main/res/drawable/ic_add_24dp.xml
new file mode 100644
index 00000000..ed95d188
--- /dev/null
+++ b/app/src/main/res/drawable/ic_add_24dp.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24"
+ android:viewportHeight="24">
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M18,13h-5v5c0,0.55 -0.45,1 -1,1s-1,-0.45 -1,-1v-5H6c-0.55,0 -1,-0.45 -1,-1s0.45,-1 1,-1h5V6c0,-0.55 0.45,-1 1,-1s1,0.45 1,1v5h5c0.55,0 1,0.45 1,1s-0.45,1 -1,1z"/>
+</vector>
diff --git a/app/src/main/res/drawable/ic_add_bottom_app_bar_24dp.xml b/app/src/main/res/drawable/ic_add_bottom_app_bar_24dp.xml
new file mode 100644
index 00000000..a032b560
--- /dev/null
+++ b/app/src/main/res/drawable/ic_add_bottom_app_bar_24dp.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24"
+ android:viewportHeight="24">
+ <path
+ android:fillColor="#8A000000"
+ android:pathData="M18,13h-5v5c0,0.55 -0.45,1 -1,1s-1,-0.45 -1,-1v-5H6c-0.55,0 -1,-0.45 -1,-1s0.45,-1 1,-1h5V6c0,-0.55 0.45,-1 1,-1s1,0.45 1,1v5h5c0.55,0 1,0.45 1,1s-0.45,1 -1,1z"/>
+</vector>
diff --git a/app/src/main/res/drawable/ic_outline_check_circle_outline_bottom_app_bar_24dp.xml b/app/src/main/res/drawable/ic_outline_check_circle_outline_bottom_app_bar_24dp.xml
new file mode 100644
index 00000000..e518509a
--- /dev/null
+++ b/app/src/main/res/drawable/ic_outline_check_circle_outline_bottom_app_bar_24dp.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24"
+ android:viewportHeight="24">
+ <path
+ android:fillColor="#8A000000"
+ android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.41,0 -8,-3.59 -8,-8s3.59,-8 8,-8 8,3.59 8,8 -3.59,8 -8,8zM16.59,7.58L10,14.17l-2.59,-2.58L6,13l4,4 8,-8z"/>
+</vector>
diff --git a/app/src/main/res/layout/activity_view_subreddit_detail.xml b/app/src/main/res/layout/activity_view_subreddit_detail.xml
index faa42a70..fffa6a96 100644
--- a/app/src/main/res/layout/activity_view_subreddit_detail.xml
+++ b/app/src/main/res/layout/activity_view_subreddit_detail.xml
@@ -132,6 +132,6 @@
android:layout_margin="@dimen/fab_margin"
app:backgroundTint="@color/backgroundColorPrimary"
app:tint="@android:color/white"
- app:srcCompat="@drawable/baseline_add_white_24" />
+ app:srcCompat="@drawable/ic_add_24dp" />
</androidx.coordinatorlayout.widget.CoordinatorLayout> \ No newline at end of file
diff --git a/app/src/main/res/layout/app_bar_main.xml b/app/src/main/res/layout/app_bar_main.xml
index c7993b14..1fcb0353 100644
--- a/app/src/main/res/layout/app_bar_main.xml
+++ b/app/src/main/res/layout/app_bar_main.xml
@@ -56,14 +56,63 @@
android:layout_height="wrap_content"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
+ <com.google.android.material.bottomappbar.BottomAppBar
+ android:id="@+id/bottom_navigation_main_activity"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_gravity="bottom"
+ android:gravity="center"
+ app:backgroundTint="?attr/backgroundColor"
+ app:layout_anchorGravity="start"
+ app:fabAnimationMode="scale"
+ app:fabAlignmentMode="center">
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:weightSum="3"
+ android:paddingStart="0dp"
+ android:paddingEnd="16dp">
+
+ <TextView
+ android:id="@+id/subscriptions_bottom_app_bar_main_activity"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:gravity="center"
+ android:drawableTop="@drawable/ic_outline_check_circle_outline_bottom_app_bar_24dp"
+ android:text="@string/subscriptions"
+ android:textColor="@color/defaultTextColor"
+ android:background="?attr/selectableItemBackgroundBorderless" />
+
+ <TextView
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:background="@android:color/transparent"/>
+
+ <TextView
+ android:id="@+id/multi_reddit_bottom_app_bar_main_activity"
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:gravity="center"
+ android:drawableTop="@drawable/ic_outline_check_circle_outline_bottom_app_bar_24dp"
+ android:text="@string/multi_reddit_listing_activity"
+ android:textColor="@color/defaultTextColor"
+ android:background="?attr/selectableItemBackgroundBorderless"/>
+
+ </LinearLayout>
+ </com.google.android.material.bottomappbar.BottomAppBar>
+
<com.google.android.material.floatingactionbutton.FloatingActionButton
android:id="@+id/fab_main_activity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_gravity="bottom|end"
android:layout_margin="@dimen/fab_margin"
- app:backgroundTint="@color/backgroundColorPrimary"
- app:tint="@android:color/white"
- app:srcCompat="@drawable/baseline_add_white_24" />
+ app:backgroundTint="?attr/backgroundColor"
+ app:srcCompat="@drawable/ic_add_bottom_app_bar_24dp"
+ app:tint="@null"
+ app:layout_anchor="@id/bottom_navigation_main_activity" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>
diff --git a/app/src/main/res/layout/item_subreddit_listing.xml b/app/src/main/res/layout/item_subreddit_listing.xml
index f710ca43..68157c95 100644
--- a/app/src/main/res/layout/item_subreddit_listing.xml
+++ b/app/src/main/res/layout/item_subreddit_listing.xml
@@ -35,7 +35,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
- android:src="@drawable/baseline_add_white_24"
+ android:src="@drawable/ic_add_24dp"
android:tint="@color/colorPrimaryDarkDayNightTheme"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
diff --git a/app/src/main/res/layout/item_user_listing.xml b/app/src/main/res/layout/item_user_listing.xml
index 6ecb1ab7..a69b6a37 100644
--- a/app/src/main/res/layout/item_user_listing.xml
+++ b/app/src/main/res/layout/item_user_listing.xml
@@ -35,7 +35,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
- android:src="@drawable/baseline_add_white_24"
+ android:src="@drawable/ic_add_24dp"
android:tint="@color/colorPrimaryDarkDayNightTheme"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
diff --git a/app/src/main/res/menu/main_activity.xml b/app/src/main/res/menu/main_activity.xml
index cfc38eff..b500d3a7 100644
--- a/app/src/main/res/menu/main_activity.xml
+++ b/app/src/main/res/menu/main_activity.xml
@@ -3,43 +3,36 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:application="ml.docilealligator.infinityforreddit.Activity.MainActivity">
- <item
- android:id="@+id/action_subscriptions_main_activity"
- android:orderInCategory="1"
- android:title="@string/action_subscriptions"
- android:icon="@drawable/ic_outline_check_circle_outline_white_24px"
- app:showAsAction="ifRoom"
- android:visible="false"/>
<item
android:id="@+id/action_search_main_activity"
- android:orderInCategory="2"
+ android:orderInCategory="1"
android:title="@string/action_search"
android:icon="@drawable/ic_search_white_24dp"
app:showAsAction="ifRoom" />
<item
android:id="@+id/action_sort_main_activity"
- android:orderInCategory="3"
+ android:orderInCategory="2"
android:title="@string/action_sort"
android:icon="@drawable/ic_outline_sort_24px"
app:showAsAction="ifRoom" />
<item
android:id="@+id/action_refresh_main_activity"
- android:orderInCategory="4"
+ android:orderInCategory="3"
android:title="@string/action_refresh"
app:showAsAction="never" />
<item
android:id="@+id/action_lazy_mode_main_activity"
- android:orderInCategory="5"
+ android:orderInCategory="4"
android:title="@string/action_start_lazy_mode"
app:showAsAction="never" />
<item
android:id="@+id/action_change_post_layout_main_activity"
- android:orderInCategory="6"
+ android:orderInCategory="5"
android:title="@string/action_change_post_layout"
app:showAsAction="never" />
</menu> \ No newline at end of file