From dcc3403ed1ed0f62032e600ae1cbf3066445e439 Mon Sep 17 00:00:00 2001 From: Oluwatobi Akinpelu Date: Mon, 20 Jul 2020 19:23:00 +0100 Subject: [PATCH 1/3] fixed global navigation --- app_main/build.gradle | 5 +- .../java/com/hover/runner/MainActivity.java | 12 +++++ .../main/java/com/hover/runner/api/Apis.java | 1 + .../com/hover/runner/enums/GlobalNav.java | 5 ++ .../action_details/ActionDetailsFragment.java | 8 +++ .../runner/ui/actions/ActionsFragment.java | 3 ++ .../runner/ui/parsers/ParsersFragment.java | 8 ++- .../TransactionDetailsFragment.java | 7 +++ .../ui/transactions/TransactionFragment.java | 1 + .../java/com/hover/runner/utils/UIHelper.java | 13 +++++ .../res/layout/action_details_fragment.xml | 4 ++ .../main/res/layout/fragment_transactions.xml | 1 - app_main/src/main/res/layout/global_nav.xml | 49 +++++++++++++++++++ .../src/main/res/layout/parsers_fragment.xml | 23 ++++++--- .../layout/transaction_details_fragment.xml | 14 +++++- build.gradle | 2 +- 16 files changed, 142 insertions(+), 14 deletions(-) create mode 100644 app_main/src/main/java/com/hover/runner/enums/GlobalNav.java create mode 100644 app_main/src/main/res/layout/global_nav.xml diff --git a/app_main/build.gradle b/app_main/build.gradle index 53c0646..3c366ed 100644 --- a/app_main/build.gradle +++ b/app_main/build.gradle @@ -7,7 +7,7 @@ android { buildToolsVersion "29.0.2" defaultConfig { - applicationId "com.hover.runnerBUILD_PLACEHOLDER_SUFFIX" + applicationId "com.usehover.testerv2" minSdkVersion 18 targetSdkVersion 29 versionCode 5 @@ -47,7 +47,7 @@ android { // versionNameSuffix "-pro" // } - dashboard { + dashboard { dimension "use" // applicationIdSuffix "BUILD_PLACEHOLDER_SUFFIX" adds a dot automatically. Google services doesn't like dots } @@ -99,4 +99,5 @@ dependencies { normalInternalDebugImplementation "androidx.work:work-runtime:2.2.0" normalInternalDebugImplementation 'com.google.android.gms:play-services-analytics:17.0.0' normalInternalDebugImplementation 'io.sentry:sentry-android:1.7.21' + } \ No newline at end of file diff --git a/app_main/src/main/java/com/hover/runner/MainActivity.java b/app_main/src/main/java/com/hover/runner/MainActivity.java index 1a9dcd9..a492a7c 100644 --- a/app_main/src/main/java/com/hover/runner/MainActivity.java +++ b/app_main/src/main/java/com/hover/runner/MainActivity.java @@ -5,6 +5,7 @@ import android.os.Bundle; import com.google.android.material.bottomnavigation.BottomNavigationView; +import com.hover.runner.enums.GlobalNav; import com.hover.sdk.api.Hover; import com.hover.sdk.permissions.PermissionActivity; import com.hover.runner.api.Apis; @@ -54,6 +55,17 @@ protected void onCreate(Bundle savedInstanceState) { initialActionFilter = getIntent().getExtras().getString("navigate"); navController.navigate(R.id.navigation_transactions); } + GlobalNav globalNavPos = (GlobalNav) getIntent().getExtras().get(Apis.GLOBAL_NAV); + if(globalNavPos !=null) { + switch (globalNavPos) { + case NAV_ACTION: navController.navigate(R.id.navigation_actions); + break; + case NAV_TRANSACTION: navController.navigate(R.id.navigation_transactions); + break; + case NAV_SETTINGS: navController.navigate(R.id.navigation_settings); + break; + } + } } } diff --git a/app_main/src/main/java/com/hover/runner/api/Apis.java b/app_main/src/main/java/com/hover/runner/api/Apis.java index 6974b9e..91193c2 100644 --- a/app_main/src/main/java/com/hover/runner/api/Apis.java +++ b/app_main/src/main/java/com/hover/runner/api/Apis.java @@ -44,6 +44,7 @@ public class Apis { public static final String TRANS_ID = "trans_id"; public static final String TRANS_DATE = "trans_date"; public static final String TRANS_STATUS = "trans_status"; + public static final String GLOBAL_NAV = "globalNav"; public LoginModel doLoginWorkManager(String email, String password) { diff --git a/app_main/src/main/java/com/hover/runner/enums/GlobalNav.java b/app_main/src/main/java/com/hover/runner/enums/GlobalNav.java new file mode 100644 index 0000000..8d98153 --- /dev/null +++ b/app_main/src/main/java/com/hover/runner/enums/GlobalNav.java @@ -0,0 +1,5 @@ +package com.hover.runner.enums; + +public enum GlobalNav { + NAV_ACTION, NAV_TRANSACTION, NAV_SETTINGS +} diff --git a/app_main/src/main/java/com/hover/runner/ui/action_details/ActionDetailsFragment.java b/app_main/src/main/java/com/hover/runner/ui/action_details/ActionDetailsFragment.java index aad7b64..b073c64 100644 --- a/app_main/src/main/java/com/hover/runner/ui/action_details/ActionDetailsFragment.java +++ b/app_main/src/main/java/com/hover/runner/ui/action_details/ActionDetailsFragment.java @@ -17,6 +17,7 @@ import androidx.recyclerview.widget.RecyclerView; import com.hover.runner.ApplicationInstance; +import com.hover.runner.enums.GlobalNav; import com.hover.runner.models.TransactionModels; import com.hover.runner.states.TransactionState; import com.hover.sdk.api.HoverParameters; @@ -91,6 +92,7 @@ public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup c }); mostRecentStatus = ActionDetailsActivity.statusEnums; setupTopDetailsInfo(mostRecentStatus); + setupGlobalNav(view); RecyclerView variablesRecyclerView = view.findViewById(R.id.action_variables_recyclerView); actionDetailsViewModel = new ViewModelProvider(this).get(ActionDetailsViewModel.class); @@ -271,6 +273,12 @@ public void onResume() { actionDetailsViewModel.getActionTrans(ActionDetailsActivity.actionId); } + private void setupGlobalNav(View view) { + view.findViewById(R.id.global_nav_Actions).setOnClickListener(v ->UIHelper.doGlobalNavigation(GlobalNav.NAV_ACTION, getActivity())); + view.findViewById(R.id.global_nav_Transactions).setOnClickListener(v -> UIHelper.doGlobalNavigation(GlobalNav.NAV_TRANSACTION, getActivity())); + view.findViewById(R.id.global_nav_Settings).setOnClickListener(v->UIHelper.doGlobalNavigation(GlobalNav.NAV_SETTINGS, getActivity())); + } + @Override public void customClickListener(Object... data) { diff --git a/app_main/src/main/java/com/hover/runner/ui/actions/ActionsFragment.java b/app_main/src/main/java/com/hover/runner/ui/actions/ActionsFragment.java index ed09984..6a74110 100644 --- a/app_main/src/main/java/com/hover/runner/ui/actions/ActionsFragment.java +++ b/app_main/src/main/java/com/hover/runner/ui/actions/ActionsFragment.java @@ -17,6 +17,7 @@ import androidx.recyclerview.widget.RecyclerView; import androidx.swiperefreshlayout.widget.SwipeRefreshLayout; +import com.hover.runner.enums.GlobalNav; import com.hover.sdk.actions.HoverAction; import com.hover.sdk.api.Hover; import com.hover.sdk.api.HoverParameters; @@ -77,6 +78,7 @@ public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, UIHelper.setTextUnderline(filterText, getResources().getString(R.string.filter_text)); + //CALL THE FILTER FUNCTION filterText.setOnClickListener(v -> { Intent i = new Intent(getActivity(), ActionFilterActivity.class); @@ -248,6 +250,7 @@ else if(actionRunCounter == withCompletedVariableActionList.size()) { } + @Override public void customClickListener(Object... data) { assert data!=null; diff --git a/app_main/src/main/java/com/hover/runner/ui/parsers/ParsersFragment.java b/app_main/src/main/java/com/hover/runner/ui/parsers/ParsersFragment.java index 759de43..24eac91 100644 --- a/app_main/src/main/java/com/hover/runner/ui/parsers/ParsersFragment.java +++ b/app_main/src/main/java/com/hover/runner/ui/parsers/ParsersFragment.java @@ -17,6 +17,7 @@ import com.hover.runner.R; import com.hover.runner.adapters.TransactionRecyclerAdapter; import com.hover.runner.api.Apis; +import com.hover.runner.enums.GlobalNav; import com.hover.runner.enums.StatusEnums; import com.hover.runner.interfaces.CustomOnClickListener; import com.hover.runner.ui.action_details.ActionDetailsActivity; @@ -111,10 +112,15 @@ public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup c parsersViewModel.getParsersInfo(ParsersActivity.parserId); parsersViewModel.getParserTransactions(ParsersActivity.parserId); - + setupGlobalNav(view); return view; } + private void setupGlobalNav(View view) { + view.findViewById(R.id.global_nav_Actions).setOnClickListener(v ->UIHelper.doGlobalNavigation(GlobalNav.NAV_ACTION, getActivity())); + view.findViewById(R.id.global_nav_Transactions).setOnClickListener(v -> UIHelper.doGlobalNavigation(GlobalNav.NAV_TRANSACTION, getActivity())); + view.findViewById(R.id.global_nav_Settings).setOnClickListener(v->UIHelper.doGlobalNavigation(GlobalNav.NAV_SETTINGS, getActivity())); + } private void startActionActivity(String actionId, String actionTitle, StatusEnums statusEnums) { Intent i = new Intent(getActivity(), ActionDetailsActivity.class); diff --git a/app_main/src/main/java/com/hover/runner/ui/transactionDetails/TransactionDetailsFragment.java b/app_main/src/main/java/com/hover/runner/ui/transactionDetails/TransactionDetailsFragment.java index 52e64ef..7c6c9e0 100644 --- a/app_main/src/main/java/com/hover/runner/ui/transactionDetails/TransactionDetailsFragment.java +++ b/app_main/src/main/java/com/hover/runner/ui/transactionDetails/TransactionDetailsFragment.java @@ -20,6 +20,7 @@ import com.hover.runner.adapters.TransactionMessagesRecyclerAdapter; import com.hover.runner.api.Apis; import com.hover.runner.enums.ClickTypeEnum; +import com.hover.runner.enums.GlobalNav; import com.hover.runner.interfaces.CustomOnClickListener; import com.hover.runner.ui.action_details.ActionDetailsActivity; import com.hover.runner.ui.parsers.ParsersActivity; @@ -138,9 +139,15 @@ public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup c transactionDetailsViewModel.getDeviceModels(TransactionDetailsActivity.transactionId); transactionDetailsViewModel.getMessagesModels(TransactionDetailsActivity.transactionId); + setupGlobalNav(view); return view; } + private void setupGlobalNav(View view) { + view.findViewById(R.id.global_nav_Actions).setOnClickListener(v ->UIHelper.doGlobalNavigation(GlobalNav.NAV_ACTION, getActivity())); + view.findViewById(R.id.global_nav_Transactions).setOnClickListener(v -> UIHelper.doGlobalNavigation(GlobalNav.NAV_TRANSACTION, getActivity())); + view.findViewById(R.id.global_nav_Settings).setOnClickListener(v->UIHelper.doGlobalNavigation(GlobalNav.NAV_SETTINGS, getActivity())); + } @Override public void customClickListener(Object... data) { if (data[0] == ClickTypeEnum.CLICK_ACTION) { diff --git a/app_main/src/main/java/com/hover/runner/ui/transactions/TransactionFragment.java b/app_main/src/main/java/com/hover/runner/ui/transactions/TransactionFragment.java index d1f8212..cd6c378 100644 --- a/app_main/src/main/java/com/hover/runner/ui/transactions/TransactionFragment.java +++ b/app_main/src/main/java/com/hover/runner/ui/transactions/TransactionFragment.java @@ -19,6 +19,7 @@ import com.hover.runner.R; import com.hover.runner.adapters.TransactionRecyclerAdapter; import com.hover.runner.api.Apis; +import com.hover.runner.enums.GlobalNav; import com.hover.runner.enums.StatusEnums; import com.hover.runner.interfaces.CustomOnClickListener; import com.hover.runner.ui.transactionDetails.TransactionDetailsActivity; diff --git a/app_main/src/main/java/com/hover/runner/utils/UIHelper.java b/app_main/src/main/java/com/hover/runner/utils/UIHelper.java index 08dc0dd..fae72c4 100644 --- a/app_main/src/main/java/com/hover/runner/utils/UIHelper.java +++ b/app_main/src/main/java/com/hover/runner/utils/UIHelper.java @@ -2,6 +2,7 @@ import android.app.Activity; import android.content.Context; +import android.content.Intent; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.graphics.Color; @@ -22,13 +23,23 @@ import com.google.android.material.snackbar.Snackbar; import com.hover.runner.ApplicationInstance; +import com.hover.runner.MainActivity; import com.hover.runner.R; +import com.hover.runner.api.Apis; +import com.hover.runner.enums.GlobalNav; import com.hover.runner.enums.StatusEnums; import com.hover.runner.interfaces.ParserClickListener; public class UIHelper { private static final int INITIAL_ITEMS_FETCH = 30; + public static void doGlobalNavigation(GlobalNav nav, Activity activity) { + Intent intent = new Intent(activity, MainActivity.class); + intent.putExtra(Apis.GLOBAL_NAV, nav); + activity.startActivity(intent); + activity.finishAffinity(); + } + public static LinearLayoutManager setMainLinearManagers(Context context) { LinearLayoutManager linearLayoutManager = new LinearLayoutManager(context); linearLayoutManager.setInitialPrefetchItemCount(INITIAL_ITEMS_FETCH); @@ -136,4 +147,6 @@ private static String getPackage(Context c) { + + } diff --git a/app_main/src/main/res/layout/action_details_fragment.xml b/app_main/src/main/res/layout/action_details_fragment.xml index 57ed44e..56f5ad7 100644 --- a/app_main/src/main/res/layout/action_details_fragment.xml +++ b/app_main/src/main/res/layout/action_details_fragment.xml @@ -372,4 +372,8 @@ android:textColor="@color/runActionTextColor" android:id="@+id/testSingle_id" android:text="@string/test_single_action"/> + + + + \ No newline at end of file diff --git a/app_main/src/main/res/layout/fragment_transactions.xml b/app_main/src/main/res/layout/fragment_transactions.xml index 8040c49..6d49a2e 100644 --- a/app_main/src/main/res/layout/fragment_transactions.xml +++ b/app_main/src/main/res/layout/fragment_transactions.xml @@ -5,7 +5,6 @@ android:layout_height="match_parent" android:background="@color/colorPrimaryDark" android:orientation="vertical" - android:layout_marginBottom="55dp" tools:context=".ui.transactions.TransactionFragment"> + + + + + + + + + \ No newline at end of file diff --git a/app_main/src/main/res/layout/parsers_fragment.xml b/app_main/src/main/res/layout/parsers_fragment.xml index ed08090..7978601 100644 --- a/app_main/src/main/res/layout/parsers_fragment.xml +++ b/app_main/src/main/res/layout/parsers_fragment.xml @@ -1,16 +1,23 @@ - - + + - - \ No newline at end of file + + + + \ No newline at end of file diff --git a/app_main/src/main/res/layout/transaction_details_fragment.xml b/app_main/src/main/res/layout/transaction_details_fragment.xml index de9c665..7f3c038 100644 --- a/app_main/src/main/res/layout/transaction_details_fragment.xml +++ b/app_main/src/main/res/layout/transaction_details_fragment.xml @@ -1,11 +1,19 @@ - + + + - \ No newline at end of file + + + \ No newline at end of file diff --git a/build.gradle b/build.gradle index 02d93f0..7884e27 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:4.0.0' + classpath 'com.android.tools.build:gradle:3.5.3' classpath 'com.google.gms:google-services:4.3.3' classpath 'com.google.firebase:firebase-crashlytics-gradle:2.2.0' } From b88706beeb1673de4e6729d9dae722bfcae11fe1 Mon Sep 17 00:00:00 2001 From: Oluwatobi Akinpelu Date: Mon, 20 Jul 2020 19:24:43 +0100 Subject: [PATCH 2/3] added gradle snippets from development branch --- app_main/build.gradle | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/app_main/build.gradle b/app_main/build.gradle index 3c366ed..53c0646 100644 --- a/app_main/build.gradle +++ b/app_main/build.gradle @@ -7,7 +7,7 @@ android { buildToolsVersion "29.0.2" defaultConfig { - applicationId "com.usehover.testerv2" + applicationId "com.hover.runnerBUILD_PLACEHOLDER_SUFFIX" minSdkVersion 18 targetSdkVersion 29 versionCode 5 @@ -47,7 +47,7 @@ android { // versionNameSuffix "-pro" // } - dashboard { + dashboard { dimension "use" // applicationIdSuffix "BUILD_PLACEHOLDER_SUFFIX" adds a dot automatically. Google services doesn't like dots } @@ -99,5 +99,4 @@ dependencies { normalInternalDebugImplementation "androidx.work:work-runtime:2.2.0" normalInternalDebugImplementation 'com.google.android.gms:play-services-analytics:17.0.0' normalInternalDebugImplementation 'io.sentry:sentry-android:1.7.21' - } \ No newline at end of file From 0ebee8f47c90213954cc61c09d6dfc05397ddcb0 Mon Sep 17 00:00:00 2001 From: Oluwatobi Akinpelu Date: Mon, 20 Jul 2020 19:28:28 +0100 Subject: [PATCH 3/3] reincreased gradle version to what it was initially --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 7884e27..02d93f0 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.5.3' + classpath 'com.android.tools.build:gradle:4.0.0' classpath 'com.google.gms:google-services:4.3.3' classpath 'com.google.firebase:firebase-crashlytics-gradle:2.2.0' }