From 78155c90b53ea88a2c47c7f2d7915d4682d259e1 Mon Sep 17 00:00:00 2001 From: Janak Amarasena Date: Thu, 31 May 2018 02:36:50 +0530 Subject: Added donation button to navigation drawer --- app/build.gradle | 2 ++ app/src/main/java/se/leap/bitmaskclient/Constants.java | 6 ++++++ .../main/java/se/leap/bitmaskclient/DrawerSettingsAdapter.java | 1 + .../se/leap/bitmaskclient/drawer/NavigationDrawerFragment.java | 9 +++++++++ app/src/main/res/values/strings.xml | 1 + 5 files changed, 19 insertions(+) (limited to 'app') diff --git a/app/build.gradle b/app/build.gradle index 1ade8155..045aa8d0 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -12,6 +12,8 @@ android { resValue "string", "app_name", "Bitmask" vectorDrawables.useSupportLibrary = true buildConfigField 'boolean', 'openvpn3', 'false' + //Build Config Feilds for default donation details + buildConfigField 'String', 'donation_url', '"https://leap.se/en/about-us/donate"' testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" dexOptions { jumboMode true diff --git a/app/src/main/java/se/leap/bitmaskclient/Constants.java b/app/src/main/java/se/leap/bitmaskclient/Constants.java index d719e8d3..bcce1549 100644 --- a/app/src/main/java/se/leap/bitmaskclient/Constants.java +++ b/app/src/main/java/se/leap/bitmaskclient/Constants.java @@ -87,4 +87,10 @@ public interface Constants { // ICS-OPENVPN CONSTANTS ///////////////////////////////////////////// String DEFAULT_SHARED_PREFS_BATTERY_SAVER = "screenoff"; + + ////////////////////////////////////////////// + // CUSTOM CONSTANTS + ///////////////////////////////////////////// + String DONATION_URL = BuildConfig.donation_url; + } diff --git a/app/src/main/java/se/leap/bitmaskclient/DrawerSettingsAdapter.java b/app/src/main/java/se/leap/bitmaskclient/DrawerSettingsAdapter.java index 8238df55..01b10575 100644 --- a/app/src/main/java/se/leap/bitmaskclient/DrawerSettingsAdapter.java +++ b/app/src/main/java/se/leap/bitmaskclient/DrawerSettingsAdapter.java @@ -40,6 +40,7 @@ public class DrawerSettingsAdapter extends BaseAdapter { public static final int ABOUT = 2; public static final int BATTERY_SAVER = 3; public static final int ALWAYS_ON = 4; + public static final int DONATE = 5; //view types public final static int VIEW_SIMPLE_TEXT = 0; diff --git a/app/src/main/java/se/leap/bitmaskclient/drawer/NavigationDrawerFragment.java b/app/src/main/java/se/leap/bitmaskclient/drawer/NavigationDrawerFragment.java index e7a5e460..371e65fc 100644 --- a/app/src/main/java/se/leap/bitmaskclient/drawer/NavigationDrawerFragment.java +++ b/app/src/main/java/se/leap/bitmaskclient/drawer/NavigationDrawerFragment.java @@ -22,6 +22,7 @@ import android.content.DialogInterface; import android.content.Intent; import android.content.SharedPreferences; import android.content.res.Configuration; +import android.net.Uri; import android.os.Build; import android.os.Bundle; import android.support.v4.app.DialogFragment; @@ -67,9 +68,11 @@ import static se.leap.bitmaskclient.ConfigHelper.getShowAlwaysOnDialog; import static se.leap.bitmaskclient.Constants.PROVIDER_KEY; import static se.leap.bitmaskclient.Constants.REQUEST_CODE_SWITCH_PROVIDER; import static se.leap.bitmaskclient.Constants.SHARED_PREFERENCES; +import static se.leap.bitmaskclient.Constants.DONATION_URL; import static se.leap.bitmaskclient.DrawerSettingsAdapter.ABOUT; import static se.leap.bitmaskclient.DrawerSettingsAdapter.ALWAYS_ON; import static se.leap.bitmaskclient.DrawerSettingsAdapter.BATTERY_SAVER; +import static se.leap.bitmaskclient.DrawerSettingsAdapter.DONATE; import static se.leap.bitmaskclient.DrawerSettingsAdapter.DrawerSettingsItem.getSimpleTextInstance; import static se.leap.bitmaskclient.DrawerSettingsAdapter.DrawerSettingsItem.getSwitchInstance; import static se.leap.bitmaskclient.DrawerSettingsAdapter.LOG; @@ -77,6 +80,7 @@ import static se.leap.bitmaskclient.DrawerSettingsAdapter.SWITCH_PROVIDER; import static se.leap.bitmaskclient.R.string.about_fragment_title; import static se.leap.bitmaskclient.R.string.log_fragment_title; import static se.leap.bitmaskclient.R.string.switch_provider_menu_option; +import static se.leap.bitmaskclient.R.string.navigation_drawer_donation_button; /** * Fragment used for managing interactions for and presentation of a navigation drawer. @@ -184,6 +188,7 @@ public class NavigationDrawerFragment extends Fragment { settingsListAdapter.addItem(getSimpleTextInstance(getString(switch_provider_menu_option), SWITCH_PROVIDER)); settingsListAdapter.addItem(getSimpleTextInstance(getString(log_fragment_title), LOG)); settingsListAdapter.addItem(getSimpleTextInstance(getString(about_fragment_title), ABOUT)); + settingsListAdapter.addItem(getSimpleTextInstance(getString(navigation_drawer_donation_button), DONATE)); mDrawerSettingsListView.setAdapter(settingsListAdapter); @@ -452,6 +457,10 @@ public class NavigationDrawerFragment extends Fragment { startActivity(intent); } break; + case DONATE: + Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(DONATION_URL)); + startActivity(browserIntent); + break; default: break; } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index a308b5e7..503d7df6 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -113,4 +113,5 @@ Always-on VPN Do not show again. To enable always-on VPN in Android VPN Settings click on the configure icon [img src] and turn the switch on." + Donate -- cgit v1.2.3