Skip to content

Commit f939352

Browse files
author
A.Badakhshan
committed
0.4.8
1 parent 669a6a6 commit f939352

File tree

4 files changed

+24
-4
lines changed

4 files changed

+24
-4
lines changed

app/src/main/java/com/alirezabdn/whygoogle/MainFragment.kt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,16 @@ class MainFragment : WhyGoogleFragment<MainFragmentBinding>() {
3333
Log.d("WhG", "backtofrag")
3434
}
3535

36+
override fun onFragmentVisible() {
37+
super.onFragmentVisible()
38+
Log.d("WhG", "onFragmentVisible")
39+
}
40+
41+
override fun onEnterAnimationEnded() {
42+
super.onEnterAnimationEnded()
43+
Log.d("WhG", "onEnterAnimationEnded")
44+
}
45+
3646
override val bindingInflater: (LayoutInflater, ViewGroup?, Boolean) -> MainFragmentBinding
3747
get() = MainFragmentBinding::inflate
3848
}

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// Top-level build file where you can add configuration options common to all sub-projects/modules.
22
buildscript {
3-
ext.kotlin_version = "1.5.21"
3+
ext.kotlin_version = "1.5.31"
44
repositories {
55
google()
66
jcenter()

whygoogle/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ android {
1111
minSdkVersion 17
1212
targetSdkVersion 30
1313
versionCode 1
14-
versionName "0.4.7"
14+
versionName "0.4.8"
1515
}
1616
buildFeatures {
1717
viewBinding true

whygoogle/src/main/java/ir/ayantech/whygoogle/activity/SwipableWhyGoogleActivity.kt

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import androidx.appcompat.app.AppCompatActivity
77
import androidx.core.app.ActivityCompat
88
import androidx.fragment.app.Fragment
99
import androidx.viewbinding.ViewBinding
10-
import androidx.viewpager2.widget.ViewPager2
1110
import com.alirezabdn.whyfinal.adapter.FragmentStateAdapter
1211
import com.alirezabdn.whyfinal.adapter.FragmentViewHolder
1312
import com.alirezabdn.whyfinal.widget.NonFinalViewPager2
@@ -42,14 +41,22 @@ abstract class SwipableWhyGoogleActivity<T : ViewBinding> : AppCompatActivity(),
4241
}
4342
}
4443

44+
private var transitioning = false
45+
46+
val isTransitioning: Boolean by lazy {
47+
transitioning
48+
}
49+
4550
override fun onCreate(savedInstanceState: Bundle?) {
4651
super.onCreate(savedInstanceState)
4752
setContentView(binding.root)
4853
fragmentHost.registerOnPageChangeCallback(object :
4954
NonFinalViewPager2.OnPageChangeCallback() {
5055
override fun onPageScrollStateChanged(state: Int) {
5156
super.onPageScrollStateChanged(state)
52-
if (state == ViewPager2.SCROLL_STATE_IDLE) {
57+
if (state == NonFinalViewPager2.SCROLL_STATE_DRAGGING)
58+
transitioning = true
59+
if (state == NonFinalViewPager2.SCROLL_STATE_IDLE) {
5360
val previousCount = getFragmentCount()
5461
while (fragmentHost.currentItem <= getFragmentCount() - 2) {
5562
fragmentStack.removeLast()
@@ -63,6 +70,9 @@ abstract class SwipableWhyGoogleActivity<T : ViewBinding> : AppCompatActivity(),
6370
}
6471
onTopFragmentChanged(fragmentStack.last())
6572
fragmentStack.last().onFragmentVisible()
73+
if (transitioning)
74+
fragmentStack.lastOrNull()?.onEnterAnimationEnded()
75+
transitioning = false
6676
}
6777
}
6878
})

0 commit comments

Comments
 (0)