From 5d3977e4b6e01246127fb4a5f951b43249be8ad4 Mon Sep 17 00:00:00 2001 From: dkanada Date: Sun, 18 Apr 2021 01:04:03 +0900 Subject: [PATCH] add sponsor button to navigation menu --- .../dkanada/gramophone/activities/MainActivity.java | 6 ++++++ .../com/dkanada/gramophone/util/NavigationUtil.java | 10 ++++++++++ app/src/main/res/menu/menu_drawer.xml | 5 +++++ app/src/main/res/values/strings.xml | 1 + 4 files changed, 22 insertions(+) diff --git a/app/src/main/java/com/dkanada/gramophone/activities/MainActivity.java b/app/src/main/java/com/dkanada/gramophone/activities/MainActivity.java index 1304a7a6..5ebf968e 100644 --- a/app/src/main/java/com/dkanada/gramophone/activities/MainActivity.java +++ b/app/src/main/java/com/dkanada/gramophone/activities/MainActivity.java @@ -14,6 +14,7 @@ import androidx.annotation.Nullable; import androidx.fragment.app.Fragment; import androidx.drawerlayout.widget.DrawerLayout; +import com.dkanada.gramophone.util.NavigationUtil; import com.kabouzeid.appthemehelper.ThemeStore; import com.kabouzeid.appthemehelper.util.ATHUtil; import com.kabouzeid.appthemehelper.util.NavigationViewUtil; @@ -75,6 +76,8 @@ public class MainActivity extends AbsSlidingMusicPanelActivity { menu.getItem(menu.size() - 1).setIcon(R.drawable.ic_settings_white_24dp); menu.add(R.id.navigation_drawer_menu_category_other, R.id.nav_about, menu.size(), R.string.action_about); menu.getItem(menu.size() - 1).setIcon(R.drawable.ic_info_outline_white_24dp); + menu.add(R.id.navigation_drawer_menu_category_other, R.id.nav_sponsor, menu.size(), R.string.sponsor); + menu.getItem(menu.size() - 1).setIcon(R.drawable.ic_favorite_white_24dp); menu.add(R.id.navigation_drawer_menu_category_other, R.id.nav_logout, menu.size(), R.string.logout); menu.getItem(menu.size() - 1).setIcon(R.drawable.ic_exit_to_app_white_48dp); @@ -134,6 +137,9 @@ public class MainActivity extends AbsSlidingMusicPanelActivity { case R.id.nav_about: new Handler().postDelayed(() -> startActivity(new Intent(MainActivity.this, AboutActivity.class)), 200); break; + case R.id.nav_sponsor: + NavigationUtil.openUrl(this, "https://github.com/sponsors/dkanada"); + break; case R.id.nav_logout: onLogout = true; ConfirmLogoutDialog.create().show(getSupportFragmentManager(), "CONFIRM_LOGOUT_DIALOG"); diff --git a/app/src/main/java/com/dkanada/gramophone/util/NavigationUtil.java b/app/src/main/java/com/dkanada/gramophone/util/NavigationUtil.java index 2d423c22..fdec82c5 100644 --- a/app/src/main/java/com/dkanada/gramophone/util/NavigationUtil.java +++ b/app/src/main/java/com/dkanada/gramophone/util/NavigationUtil.java @@ -3,6 +3,7 @@ package com.dkanada.gramophone.util; import android.app.Activity; import android.content.Context; import android.content.Intent; +import android.net.Uri; import androidx.annotation.NonNull; import androidx.annotation.Nullable; @@ -21,6 +22,15 @@ import com.dkanada.gramophone.activities.details.GenreDetailActivity; import com.dkanada.gramophone.activities.details.PlaylistDetailActivity; public class NavigationUtil { + public static void openUrl(@NonNull final Context context, String url) { + final Intent intent = new Intent(Intent.ACTION_VIEW); + + intent.setData(Uri.parse(url)); + intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + + context.startActivity(intent); + } + public static void goToLogin(@NonNull final Context context) { final Intent intent = new Intent(context, LoginActivity.class); diff --git a/app/src/main/res/menu/menu_drawer.xml b/app/src/main/res/menu/menu_drawer.xml index a56c72c9..380d734e 100644 --- a/app/src/main/res/menu/menu_drawer.xml +++ b/app/src/main/res/menu/menu_drawer.xml @@ -19,6 +19,11 @@ android:icon="@drawable/ic_info_outline_white_24dp" android:title="@string/action_about" /> + + Login Disable Ignore + Sponsor Logout Username Password