Skip to content

Commit 6520666

Browse files
committed
Move to github
1 parent e0c2988 commit 6520666

File tree

4 files changed

+20
-4
lines changed

4 files changed

+20
-4
lines changed

.idea/misc.xml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/src/main/java/com/trendyol/medusa/SampleFragment.kt

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,12 @@ import android.view.View
77
import android.view.ViewGroup
88
import android.widget.Button
99
import android.widget.TextView
10+
import com.trendyol.medusalib.navigator.OnGoBackListener
1011

11-
class SampleFragment : BaseFragment(){
12+
class SampleFragment : BaseFragment(), OnGoBackListener{
13+
override fun onGoBack(): Boolean {
14+
return false
15+
}
1216

1317
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
1418
val view = inflater.inflate(R.layout.fragment_sample, container, false)!!
@@ -17,6 +21,8 @@ class SampleFragment : BaseFragment(){
1721
multipleStackNavigator!!.start(FragmentGenerator.generateNewFragment())
1822

1923
}
24+
25+
multipleStackNavigator!!.onGoBackListener = this
2026
return view
2127
}
2228

medusalib/src/main/java/com/trendyol/medusalib/navigator/MultipleStackNavigator.kt

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,9 @@ import java.util.*
1010
class MultipleStackNavigator(private val fragmentManager: FragmentManager,
1111
private val containerId: Int,
1212
private val rootFragments: List<Fragment>,
13-
private val navigatorListener: NavigatorListener? = null,
14-
private val navigatorConfiguration: NavigatorConfiguration = NavigatorConfiguration()) : Navigator {
13+
var navigatorListener: NavigatorListener? = null,
14+
private val navigatorConfiguration: NavigatorConfiguration = NavigatorConfiguration(),
15+
var onGoBackListener: OnGoBackListener? = null) : Navigator {
1516

1617
private val tagCreator: TagCreator = UniqueTagCreator()
1718

@@ -38,6 +39,10 @@ class MultipleStackNavigator(private val fragmentManager: FragmentManager,
3839
throw IllegalStateException("Can not call goBack() method because stack is empty.")
3940
}
4041

42+
if (onGoBackListener != null && onGoBackListener!!.onGoBack().not()) {
43+
return
44+
}
45+
4146
if (shouldExit() && shouldGoBackToInitialIndex()) {
4247
currentTabIndexStack.insertToBottom(navigatorConfiguration.initialTabIndex)
4348
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package com.trendyol.medusalib.navigator
2+
3+
interface OnGoBackListener {
4+
fun onGoBack(): Boolean
5+
}

0 commit comments

Comments
 (0)