Skip to content

Commit

Permalink
#378 show/hide the fab to create a keymap
Browse files Browse the repository at this point in the history
  • Loading branch information
sds100 committed Nov 14, 2020
1 parent cab59f5 commit 7ba2765
Showing 1 changed file with 15 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ import androidx.lifecycle.lifecycleScope
import androidx.navigation.fragment.findNavController
import androidx.transition.Fade
import androidx.transition.TransitionManager
import androidx.viewpager2.widget.ViewPager2
import androidx.work.OneTimeWorkRequestBuilder
import androidx.work.WorkManager
import com.google.android.material.tabs.TabLayoutMediator
Expand All @@ -42,6 +43,7 @@ import io.github.sds100.keymapper.util.*
import io.github.sds100.keymapper.util.result.NoCompatibleImeEnabled
import io.github.sds100.keymapper.util.result.getFullMessage
import io.github.sds100.keymapper.worker.SeedDatabaseWorker
import kotlinx.android.synthetic.main.fragment_home.*
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
import splitties.alertdialog.appcompat.alertDialog
Expand Down Expand Up @@ -116,6 +118,16 @@ class HomeFragment : Fragment(), SharedPreferences.OnSharedPreferenceChangeListe
private lateinit var mPagerAdapter: HomePagerAdapter
private lateinit var mTabLayoutMediator: TabLayoutMediator

private val mOnPageChangeCallback = object : ViewPager2.OnPageChangeCallback() {
override fun onPageSelected(position: Int) {
if (position == 0) {
fab.show()
} else {
fab.hide()
}
}
}

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)

Expand Down Expand Up @@ -155,6 +167,8 @@ class HomeFragment : Fragment(), SharedPreferences.OnSharedPreferenceChangeListe
attach()
}

viewPager.registerOnPageChangeCallback(mOnPageChangeCallback)

setOnNewKeymapClick {
val direction =
HomeFragmentDirections.actionToConfigKeymap(ConfigKeymapViewModel.NEW_KEYMAP_ID)
Expand Down Expand Up @@ -379,6 +393,7 @@ class HomeFragment : Fragment(), SharedPreferences.OnSharedPreferenceChangeListe

requireActivity().unregisterReceiver(mBroadcastReceiver)
requireContext().defaultSharedPreferences.unregisterOnSharedPreferenceChangeListener(this)
mBinding.viewPager.unregisterOnPageChangeCallback(mOnPageChangeCallback)
}

override fun onSharedPreferenceChanged(preferences: SharedPreferences?, key: String?) {
Expand Down

0 comments on commit 7ba2765

Please sign in to comment.