diff --git a/app/src/main/java/sh/sar/basedbank/ui/onboarding/OnboardingActivity.kt b/app/src/main/java/sh/sar/basedbank/ui/onboarding/OnboardingActivity.kt index 77c8e9f..7788a23 100644 --- a/app/src/main/java/sh/sar/basedbank/ui/onboarding/OnboardingActivity.kt +++ b/app/src/main/java/sh/sar/basedbank/ui/onboarding/OnboardingActivity.kt @@ -30,6 +30,15 @@ class OnboardingActivity : AppCompatActivity(), SecuritySetupFragment.Callback { binding.viewPager.adapter = adapter TabLayoutMediator(binding.dotsIndicator, binding.viewPager) { _, _ -> }.attach() + // Disable tap-to-navigate on dots: touch listener must be on the individual + // tab views inside SlidingTabStrip (child 0), because they consume ACTION_DOWN + // before the TabLayout's own touch listener ever fires. + val tabStrip = binding.dotsIndicator.getChildAt(0) as? android.view.ViewGroup + tabStrip?.let { + for (i in 0 until it.childCount) { + it.getChildAt(i).setOnTouchListener { _, _ -> true } + } + } // Pre-select language button without triggering the listener val savedLang = prefs.getString("language", null)