Skip to content

Commit b59221c

Browse files
committed
Fix double call dissmis for dialog fragment
1 parent 0351cb0 commit b59221c

File tree

2 files changed

+22
-8
lines changed

2 files changed

+22
-8
lines changed

core/src/main/java/com/omega_r/base/components/OmegaBottomSheetDialogFragment.kt

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -218,12 +218,19 @@ abstract class OmegaBottomSheetDialogFragment : MvpBottomSheetDialogFragment(),
218218
this.data = data
219219
}
220220

221+
override fun onCancel(dialog: DialogInterface) {
222+
super.onCancel(dialog)
223+
result = false
224+
}
225+
221226
override fun onDismiss(dialog: DialogInterface) {
222227
super.onDismiss(dialog)
223-
val requestCode = targetRequestCode
224-
if (requestCode != 0) {
225-
val omegaComponent = (parentFragment as? OmegaComponent) ?: (activity as? OmegaComponent)
226-
omegaComponent?.presenter?.onLaunchResult(requestCode, result, data)
228+
if (isResumed) {
229+
val requestCode = targetRequestCode
230+
if (requestCode != 0) {
231+
val omegaComponent = (parentFragment as? OmegaComponent) ?: (activity as? OmegaComponent)
232+
omegaComponent?.presenter?.onLaunchResult(requestCode, result, data)
233+
}
227234
}
228235
}
229236

core/src/main/java/com/omega_r/base/components/OmegaDialogFragment.kt

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -249,12 +249,19 @@ abstract class OmegaDialogFragment : MvpAppCompatDialogFragment(), OmegaComponen
249249
this.data = data
250250
}
251251

252+
override fun onCancel(dialog: DialogInterface) {
253+
super.onCancel(dialog)
254+
result = false
255+
}
256+
252257
override fun onDismiss(dialog: DialogInterface) {
253258
super.onDismiss(dialog)
254-
val requestCode = targetRequestCode
255-
if (requestCode != 0) {
256-
val omegaComponent = (parentFragment as? OmegaComponent) ?: (activity as? OmegaComponent)
257-
omegaComponent?.presenter?.onLaunchResult(requestCode, result, data)
259+
if (isResumed) {
260+
val requestCode = targetRequestCode
261+
if (requestCode != 0) {
262+
val omegaComponent = (parentFragment as? OmegaComponent) ?: (activity as? OmegaComponent)
263+
omegaComponent?.presenter?.onLaunchResult(requestCode, result, data)
264+
}
258265
}
259266
}
260267

0 commit comments

Comments
 (0)