From fd59c36f9995f16181c9fbfed7dfc25cbd94d294 Mon Sep 17 00:00:00 2001 From: Kevin Gorham Date: Fri, 1 Feb 2019 11:10:43 -0500 Subject: [PATCH] bugfixes and transition animation --- .../di/component/ApplicationComponent.kt | 13 +++++-- .../wallet/ui/fragment/AboutFragment.kt | 11 +++++- .../wallet/ui/fragment/HistoryFragment.kt | 11 +++++- .../wallet/ui/fragment/HomeFragment.kt | 24 ++++++++++-- .../wallet/ui/fragment/ImportFragment.kt | 11 +++++- .../wallet/ui/fragment/RequestFragment.kt | 8 ++++ .../wallet/ui/fragment/SendFragment.kt | 24 +++++++++++- .../wallet/ui/fragment/SettingsFragment.kt | 11 +++++- .../drawable/background_rounded_corners.xml | 3 +- .../app/src/main/res/layout/fragment_send.xml | 38 +++++++++++-------- .../main/res/layout/include_home_content.xml | 17 ++++++++- .../app/src/main/res/values/strings.xml | 3 ++ 12 files changed, 142 insertions(+), 32 deletions(-) diff --git a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/di/component/ApplicationComponent.kt b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/di/component/ApplicationComponent.kt index 825b843..2a3eb65 100644 --- a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/di/component/ApplicationComponent.kt +++ b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/di/component/ApplicationComponent.kt @@ -4,9 +4,7 @@ import cash.z.android.wallet.ui.activity.MainActivityModule import cash.z.android.wallet.ZcashWalletApplication import cash.z.android.wallet.di.module.ApplicationModule import cash.z.android.wallet.di.module.SynchronizerModule -import cash.z.android.wallet.ui.fragment.HomeFragmentModule -import cash.z.android.wallet.ui.fragment.ReceiveFragmentModule -import cash.z.android.wallet.ui.fragment.SendFragmentModule +import cash.z.android.wallet.ui.fragment.* import dagger.Component import dagger.android.AndroidInjector import dagger.android.support.AndroidSupportInjectionModule @@ -23,9 +21,16 @@ import javax.inject.Singleton ApplicationModule::class, SynchronizerModule::class, MainActivityModule::class, + + // Injected Fragments + AboutFragmentModule::class, + HistoryFragmentModule::class, HomeFragmentModule::class, + ImportFragmentModule::class, ReceiveFragmentModule::class, - SendFragmentModule::class + RequestFragmentModule::class, + SendFragmentModule::class, + SettingsFragmentModule::class ] ) interface ApplicationComponent : AndroidInjector { diff --git a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/AboutFragment.kt b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/AboutFragment.kt index cfd0994..72016ab 100644 --- a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/AboutFragment.kt +++ b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/AboutFragment.kt @@ -1,4 +1,13 @@ package cash.z.android.wallet.ui.fragment +import dagger.Module +import dagger.android.ContributesAndroidInjector -class AboutFragment : PlaceholderFragment() \ No newline at end of file + +class AboutFragment : PlaceholderFragment() + +@Module +abstract class AboutFragmentModule { + @ContributesAndroidInjector + abstract fun contributeAboutFragment(): AboutFragment +} \ No newline at end of file diff --git a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/HistoryFragment.kt b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/HistoryFragment.kt index ee94be8..cc7ebbc 100644 --- a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/HistoryFragment.kt +++ b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/HistoryFragment.kt @@ -1,4 +1,13 @@ package cash.z.android.wallet.ui.fragment +import dagger.Module +import dagger.android.ContributesAndroidInjector -class HistoryFragment : PlaceholderFragment() \ No newline at end of file + +class HistoryFragment : PlaceholderFragment() + +@Module +abstract class HistoryFragmentModule { + @ContributesAndroidInjector + abstract fun contributeHistoryFragment(): HistoryFragment +} \ No newline at end of file diff --git a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/HomeFragment.kt b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/HomeFragment.kt index 2182bff..53d5614 100644 --- a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/HomeFragment.kt +++ b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/HomeFragment.kt @@ -14,6 +14,9 @@ import androidx.annotation.IdRes import androidx.annotation.StringRes import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView +import androidx.transition.ChangeBounds +import androidx.transition.TransitionInflater +import androidx.transition.TransitionSet import cash.z.android.wallet.R import cash.z.android.wallet.extention.toAppColor import cash.z.android.wallet.extention.toAppString @@ -50,6 +53,19 @@ class HomeFragment : BaseFragment(), HomePresenter.HomeView { savedInstanceState: Bundle? ): View? { viewsInitialized = false + val enterTransitionSet = TransitionSet().apply { + addTransition(TransitionInflater.from(mainActivity).inflateTransition(android.R.transition.move)) + duration = 400L + } + this.sharedElementEnterTransition = enterTransitionSet + this.sharedElementReturnTransition = enterTransitionSet + +// sharedElementEnterTransition = ChangeBounds().apply { +// duration = 750 +// } +// sharedElementReturnTransition= ChangeBounds().apply { +// duration = 750 +// } return inflater.inflate(R.layout.fragment_home, container, false) } @@ -69,10 +85,10 @@ class HomeFragment : BaseFragment(), HomePresenter.HomeView { group_empty_view_items.visibility = View.GONE group_full_view_items.visibility = View.GONE - image_logo.setOnClickListener { - forceRedraw() - toggleViews(false) - } +// image_logo.setOnClickListener { +// forceRedraw() +// toggleViews(false) +// } } override fun onResume() { diff --git a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/ImportFragment.kt b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/ImportFragment.kt index 8d35024..966147a 100644 --- a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/ImportFragment.kt +++ b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/ImportFragment.kt @@ -1,4 +1,13 @@ package cash.z.android.wallet.ui.fragment +import dagger.Module +import dagger.android.ContributesAndroidInjector -class ImportFragment : PlaceholderFragment() \ No newline at end of file + +class ImportFragment : PlaceholderFragment() + +@Module +abstract class ImportFragmentModule { + @ContributesAndroidInjector + abstract fun contributeImportFragment(): ImportFragment +} \ No newline at end of file diff --git a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/RequestFragment.kt b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/RequestFragment.kt index ead2845..4980ce7 100644 --- a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/RequestFragment.kt +++ b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/RequestFragment.kt @@ -9,6 +9,8 @@ import android.view.ViewGroup import androidx.fragment.app.Fragment import cash.z.android.wallet.R import cash.z.android.wallet.ui.activity.MainActivity +import dagger.Module +import dagger.android.ContributesAndroidInjector // TODO: Rename parameter arguments, choose names that match @@ -108,3 +110,9 @@ class RequestFragment : BaseFragment() { } } } + +@Module +abstract class RequestFragmentModule { + @ContributesAndroidInjector + abstract fun contributeRequestFragment(): RequestFragment +} \ No newline at end of file diff --git a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/SendFragment.kt b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/SendFragment.kt index 62c5823..e58c226 100644 --- a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/SendFragment.kt +++ b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/SendFragment.kt @@ -9,6 +9,9 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import androidx.core.text.toSpannable +import androidx.navigation.fragment.FragmentNavigatorExtras +import androidx.transition.TransitionInflater +import androidx.transition.TransitionSet import cash.z.android.wallet.R import cash.z.android.wallet.extention.Toaster import cash.z.android.wallet.extention.afterTextChanged @@ -76,7 +79,8 @@ class SendFragment : BaseFragment(), SendPresenter.SendView { } button_send_zec.setOnClickListener { - onSendZec() +// onSendZec() + onSendSuccess() } // onBalanceUpdated(12.82129334) @@ -102,7 +106,23 @@ class SendFragment : BaseFragment(), SendPresenter.SendView { override fun onSendSuccess() { setSendEnabled(true) - mainActivity.navController.navigateUp() + + val enterTransitionSet = TransitionSet() + enterTransitionSet.addTransition(TransitionInflater.from(mainActivity).inflateTransition(android.R.transition.explode)) + enterTransitionSet.duration = 1000L + enterTransitionSet.startDelay = 10L + this.sharedElementEnterTransition = enterTransitionSet + this.sharedElementReturnTransition = enterTransition + + +// mainActivity.navController.navigateUp() + val extras = FragmentNavigatorExtras( + transition_active_transaction_bg to getString(R.string.transition_active_transaction)) + + mainActivity.navController.navigate(R.id.nav_home_fragment, + null, + null, + extras) } override fun onSendFailure() { diff --git a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/SettingsFragment.kt b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/SettingsFragment.kt index 3e532cb..9423abf 100644 --- a/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/SettingsFragment.kt +++ b/zcash-android-wallet-app/app/src/main/java/cash/z/android/wallet/ui/fragment/SettingsFragment.kt @@ -1,4 +1,13 @@ package cash.z.android.wallet.ui.fragment +import dagger.Module +import dagger.android.ContributesAndroidInjector -class SettingsFragment : PlaceholderFragment() \ No newline at end of file + +class SettingsFragment : PlaceholderFragment() + +@Module +abstract class SettingsFragmentModule { + @ContributesAndroidInjector + abstract fun contributeSettingsFragment(): SettingsFragment +} \ No newline at end of file diff --git a/zcash-android-wallet-app/app/src/main/res/drawable/background_rounded_corners.xml b/zcash-android-wallet-app/app/src/main/res/drawable/background_rounded_corners.xml index c10fd46..1795796 100644 --- a/zcash-android-wallet-app/app/src/main/res/drawable/background_rounded_corners.xml +++ b/zcash-android-wallet-app/app/src/main/res/drawable/background_rounded_corners.xml @@ -1,5 +1,6 @@ - + + \ No newline at end of file diff --git a/zcash-android-wallet-app/app/src/main/res/layout/fragment_send.xml b/zcash-android-wallet-app/app/src/main/res/layout/fragment_send.xml index 6ae7fde..376b4a5 100644 --- a/zcash-android-wallet-app/app/src/main/res/layout/fragment_send.xml +++ b/zcash-android-wallet-app/app/src/main/res/layout/fragment_send.xml @@ -63,17 +63,13 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="@id/background_header" /> - + + + app:layout_constraintBottom_toBottomOf="@id/transition_active_transaction_bg" + app:layout_constraintEnd_toEndOf="@id/transition_active_transaction_bg" + app:layout_constraintStart_toStartOf="@id/transition_active_transaction_bg" + app:layout_constraintTop_toTopOf="@id/transition_active_transaction_bg" /> + app:layout_constraintTop_toBottomOf="@id/transition_active_transaction_bg" /> + android:paddingTop="30dp" + android:paddingBottom="16dp" + android:paddingStart="16dp" + android:paddingEnd="16dp"> + + + app:layout_constraintTop_toBottomOf="@id/transition_active_transaction_bg" /> Import Settings + + transition_active_transaction + Your Zcash shielded address Your wallet is empty.