tashilapathum / PleaseWait

A simple and lightweight Material 3 progress dialog library for Android to replace now-deprecated android.app.ProgressDialog
Apache License 2.0
17 stars 3 forks source link

java.lang.IllegalStateException: Fragment already added #5

Open e4basil opened 8 months ago

e4basil commented 8 months ago

java.lang.IllegalStateException: Fragment already added: PleaseWaitDialog{8b088c0} (9459f249-959e-44a7-b253-41de74725d63) at androidx.fragment.app.FragmentStore.addFragment(FragmentStore.java:92) at androidx.fragment.app.FragmentManager.addFragment(FragmentManager.java:1472) at androidx.fragment.app.BackStackRecord.executeOps(BackStackRecord.java:387) at androidx.fragment.app.FragmentManager.executeOps(FragmentManager.java:1956) at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1864) at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1814) at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1751) at androidx.fragment.app.FragmentManager$5.run(FragmentManager.java:538) at android.os.Handler.handleCallback(Handler.java:942) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loopOnce(Looper.java:211) at android.os.Looper.loop(Looper.java:300) at android.app.ActivityThread.main(ActivityThread.java:8152) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:580) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1028)

kabirnayeem99 commented 3 months ago

Facing the same issue myself.

tashilapathum commented 3 months ago

@kabirnayeem99 I'm working on a fix for this. As far as I know this is a silent error. Pls share your code if it prevents the dialog from showing or there's any other issue.

kabirnayeem99 commented 3 months ago

It occurs while I am using the following code to display a dialog within fragments that utilize navigation:

val loadingDialog by lazy { PleaseWaitDialog(requireActivity()) }

The application crashes when this code is employed in more than one fragment. Additionally, navigating back to a screen and attempting to show the dialog also triggers the crash.