From 873f6ab49d84f292b2927f71f63d0e7ec3e78ecc Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Tue, 8 Jan 2019 18:07:55 +0100 Subject: [PATCH] Fix header showing in the wrong places --- Habitica/build.gradle | 2 +- .../habitica/ui/fragments/AboutFragment.kt | 1 + .../habitica/ui/fragments/BaseMainFragment.kt | 18 +++++++++++----- .../habitica/ui/fragments/NewsFragment.kt | 10 ++------- .../habitica/ui/fragments/StatsFragment.kt | 8 +------ .../inventory/shops/ShopsFragment.kt | 21 ++++++++++--------- .../ui/fragments/social/GuildFragment.kt | 9 +------- .../ui/fragments/social/InboxFragment.kt | 3 +-- .../social/InboxMessageListFragment.kt | 9 +------- .../fragments/social/QuestDetailFragment.kt | 1 + .../ui/fragments/social/TavernFragment.kt | 9 +------- .../fragments/social/party/PartyFragment.kt | 9 +------- 12 files changed, 35 insertions(+), 65 deletions(-) diff --git a/Habitica/build.gradle b/Habitica/build.gradle index 293ac1f82..75dd1a9be 100644 --- a/Habitica/build.gradle +++ b/Habitica/build.gradle @@ -148,7 +148,7 @@ android { buildConfigField "String", "STORE", "\"google\"" multiDexEnabled true - versionCode 2057 + versionCode 2058 versionName "1.7" } diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/AboutFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/AboutFragment.kt index 60eb0e450..35257de05 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/AboutFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/AboutFragment.kt @@ -47,6 +47,7 @@ class AboutFragment : BaseMainFragment() { override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { super.onCreateView(inflater, container, savedInstanceState) + this.hidesToolbar = true return inflater.inflate(R.layout.fragment_about, container, false) } diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/BaseMainFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/BaseMainFragment.kt index 5c2c304c5..d8104f99d 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/BaseMainFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/BaseMainFragment.kt @@ -37,8 +37,8 @@ abstract class BaseMainFragment : BaseFragment() { var bottomNavigation: BottomBar? = null var floatingMenuWrapper: ViewGroup? = null var usesTabLayout: Boolean = false + var hidesToolbar: Boolean = false var usesBottomNavigation = false - var fragmentSidebarIdentifier: String? = null open var user: User? = null open fun updateUserData(user: User?) { @@ -79,6 +79,14 @@ abstract class BaseMainFragment : BaseFragment() { updateTabLayoutVisibility() + if (hidesToolbar) { + hideToolbar() + disableToolbarScrolling() + } else { + showToolbar() + enableToolbarScrolling() + } + return null } @@ -105,20 +113,20 @@ abstract class BaseMainFragment : BaseFragment() { super.onSaveInstanceState(outState) } - fun hideToolbar() { + private fun hideToolbar() { activity?.avatarWithBars?.visibility = View.GONE } - fun showToolbar() { + private fun showToolbar() { activity?.avatarWithBars?.visibility = View.VISIBLE } - fun disableToolbarScrolling() { + private fun disableToolbarScrolling() { val params = collapsingToolbar?.layoutParams as? AppBarLayout.LayoutParams params?.scrollFlags = 0 } - fun enableToolbarScrolling() { + private fun enableToolbarScrolling() { val params = collapsingToolbar?.layoutParams as? AppBarLayout.LayoutParams params?.scrollFlags = AppBarLayout.LayoutParams.SCROLL_FLAG_SCROLL or AppBarLayout.LayoutParams.SCROLL_FLAG_EXIT_UNTIL_COLLAPSED } diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/NewsFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/NewsFragment.kt index 3200b0302..f8032a589 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/NewsFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/NewsFragment.kt @@ -16,10 +16,9 @@ import kotlinx.android.synthetic.main.fragment_news.* class NewsFragment : BaseMainFragment() { override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { + this.hidesToolbar = true super.onCreateView(inflater, container, savedInstanceState) - val view = container?.inflate(R.layout.fragment_news) - hideToolbar() - return view + return container?.inflate(R.layout.fragment_news) } override fun onViewCreated(view: View, savedInstanceState: Bundle?) { @@ -36,11 +35,6 @@ class NewsFragment : BaseMainFragment() { newsWebview.loadUrl("$address/static/new-stuff") } - override fun onDestroyView() { - showToolbar() - super.onDestroyView() - } - override fun injectFragment(component: AppComponent) { component.inject(this) } diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/StatsFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/StatsFragment.kt index e444b8896..1103fa030 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/StatsFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/StatsFragment.kt @@ -60,18 +60,12 @@ class StatsFragment: BaseMainFragment() { override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { tutorialStepIdentifier = "stats" tutorialText = getString(R.string.tutorial_stats) - + this.hidesToolbar = true super.onCreateView(inflater, container, savedInstanceState) - hideToolbar() return container?.inflate(R.layout.fragment_stats) } - override fun onDestroyView() { - showToolbar() - super.onDestroyView() - } - override fun onDestroy() { inventoryRepository.close() super.onDestroy() diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/shops/ShopsFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/shops/ShopsFragment.kt index 842ac6139..360634d82 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/shops/ShopsFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/shops/ShopsFragment.kt @@ -26,9 +26,8 @@ class ShopsFragment : BaseMainFragment() { override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { this.usesTabLayout = true + this.hidesToolbar = true super.onCreateView(inflater, container, savedInstanceState) - hideToolbar() - disableToolbarScrolling() return inflater.inflate(R.layout.fragment_viewpager, container, false) } @@ -42,12 +41,14 @@ class ShopsFragment : BaseMainFragment() { override fun onDestroyView() { toolbarAccessoryContainer?.removeView(currencyView) - showToolbar() - enableToolbarScrolling() - inventoryRepository.close() super.onDestroyView() } + override fun onDestroy() { + inventoryRepository.close() + super.onDestroy() + } + override fun injectFragment(component: AppComponent) { component.inject(this) } @@ -55,7 +56,7 @@ class ShopsFragment : BaseMainFragment() { private fun setViewPagerAdapter() { val fragmentManager = childFragmentManager - viewPager!!.adapter = object : FragmentPagerAdapter(fragmentManager) { + viewPager?.adapter = object : FragmentPagerAdapter(fragmentManager) { override fun getItem(position: Int): androidx.fragment.app.Fragment { @@ -77,10 +78,10 @@ class ShopsFragment : BaseMainFragment() { override fun getPageTitle(position: Int): CharSequence? { return when (position) { - 0 -> return context?.getString(R.string.market) - 1 -> return context?.getString(R.string.quests) - 2 -> return context?.getString(R.string.seasonalShop) - 3 -> return context?.getString(R.string.timeTravelers) + 0 -> context?.getString(R.string.market) + 1 -> context?.getString(R.string.quests) + 2 -> context?.getString(R.string.seasonalShop) + 3 -> context?.getString(R.string.timeTravelers) else -> "" } } diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/GuildFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/GuildFragment.kt index 054571d8b..b5edd2af2 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/GuildFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/GuildFragment.kt @@ -44,18 +44,11 @@ class GuildFragment : BaseMainFragment() { override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { this.usesTabLayout = true + this.hidesToolbar = true super.onCreateView(inflater, container, savedInstanceState) - hideToolbar() - disableToolbarScrolling() return inflater.inflate(R.layout.fragment_viewpager, container, false) } - override fun onDestroyView() { - showToolbar() - enableToolbarScrolling() - super.onDestroyView() - } - override fun onDestroy() { socialRepository.close() super.onDestroy() diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/InboxFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/InboxFragment.kt index 1cc042f39..929be8600 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/InboxFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/InboxFragment.kt @@ -38,9 +38,8 @@ class InboxFragment : BaseMainFragment(), androidx.swiperefreshlayout.widget.Swi override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { + this.hidesToolbar = true super.onCreateView(inflater, container, savedInstanceState) - hideToolbar() - disableToolbarScrolling() compositeSubscription.add(this.socialRepository.markPrivateMessagesRead(user).subscribe(Consumer { }, RxErrorHandler.handleEmptyError())) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/InboxMessageListFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/InboxMessageListFragment.kt index 0f4bf862a..3de3cdef5 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/InboxMessageListFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/InboxMessageListFragment.kt @@ -44,9 +44,8 @@ class InboxMessageListFragment : BaseMainFragment(), androidx.swiperefreshlayout override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { + this.hidesToolbar = true super.onCreateView(inflater, container, savedInstanceState) - hideToolbar() - disableToolbarScrolling() return inflater.inflate(R.layout.fragment_inbox_message_list, container, false) } @@ -98,12 +97,6 @@ class InboxMessageListFragment : BaseMainFragment(), androidx.swiperefreshlayout } } - override fun onDestroyView() { - showToolbar() - enableToolbarScrolling() - super.onDestroyView() - } - override fun onDestroy() { socialRepository.close() super.onDestroy() diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/QuestDetailFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/QuestDetailFragment.kt index d2cc439d1..ffad8a671 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/QuestDetailFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/QuestDetailFragment.kt @@ -64,6 +64,7 @@ class QuestDetailFragment : BaseMainFragment() { override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { super.onCreateView(inflater, container, savedInstanceState) + this.hidesToolbar = true return inflater.inflate(R.layout.fragment_quest_detail, container, false) } diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/TavernFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/TavernFragment.kt index 96160715c..2d49c7f62 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/TavernFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/TavernFragment.kt @@ -27,9 +27,8 @@ class TavernFragment : BaseMainFragment() { override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { this.usesTabLayout = true + this.hidesToolbar = true super.onCreateView(inflater, container, savedInstanceState) - hideToolbar() - disableToolbarScrolling() val v = inflater.inflate(R.layout.fragment_viewpager, container, false) this.tutorialStepIdentifier = "tavern" this.tutorialText = getString(R.string.tutorial_tavern) @@ -43,12 +42,6 @@ class TavernFragment : BaseMainFragment() { viewPager.currentItem = 0 } - override fun onDestroyView() { - showToolbar() - enableToolbarScrolling() - super.onDestroyView() - } - override fun onDestroy() { socialRepository.close() super.onDestroy() diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyFragment.kt index a8f4057d8..eb4953055 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyFragment.kt @@ -42,9 +42,8 @@ class PartyFragment : BaseMainFragment() { override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { this.usesTabLayout = true + this.hidesToolbar = true super.onCreateView(inflater, container, savedInstanceState) - hideToolbar() - disableToolbarScrolling() return inflater.inflate(R.layout.fragment_viewpager, container, false) } @@ -79,12 +78,6 @@ class PartyFragment : BaseMainFragment() { return user?.party?.id?.isNotEmpty() == true } - override fun onDestroyView() { - showToolbar() - enableToolbarScrolling() - super.onDestroyView() - } - override fun injectFragment(component: AppComponent) { component.inject(this) }