apps-android-commons
apps-android-commons copied to clipboard
Fix Crash EditDescriptionActivity when switched dark/light mode
Description (required)
Fixes #5473
What changes did you make and why?
Tests performed (required)
Tested {build variant, e.g. ProdDebug} on {name of device or emulator} with API level {API level}.
Screenshots (for UI changes only)
Please mention the issue number that this PR solves : )
Yeah I know I was going to mention the issue number once a related PR is merged, I want to make a commit after that PR is approved , so I didn't want to get this one reviewed before that :)
Ohh I see. 😅
@RitikaPahwa4444 made the required changes, please review it, thanks
Sorry for the delay! Thank you for making the suggested changes. I'll test it over the weekend and share my observations.
@RitikaPahwa4444 Sure
@RitikaPahwa4444 @nicolas-raoul Please Review and let me know if there is any change required.
@RitikaPahwa4444 Just Pinging In case you missed it, Please Review and merge this PR, thanks
Sorry, I was facing some issues with my emulators, had to reset everything. Tested, this does fix the crash :)
@RitikaPahwa4444 @nicolas-raoul if these changes fix the issue then can you please Merge this, thanks
Sorry would you mind rebasing from main? I am getting this error:
> Task :app:compileProdDebugJavaWithJavac
The following annotation processors are not incremental: butterknife-compiler-10.1.0.jar (com.jakewharton:butterknife-compiler:10.1.0), dagger-android-processor-2.23.jar (com.google.dagger:dagger-android-processor:2.23), dagger-compiler-2.23.jar (com.google.dagger:dagger-compiler:2.23).
Make sure all annotation processors are incremental to improve your build speed.
/Users/nicolasraoul/src/commons-app/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java:405: error: cannot find symbol
progressBarEditDescription.setVisibility(GONE);
^
symbol: variable progressBarEditDescription
location: class MediaDetailFragment
/Users/nicolasraoul/src/commons-app/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java:406: error: cannot find symbol
editDescription.setVisibility(VISIBLE);
^
symbol: variable editDescription
location: class MediaDetailFragment
@nicolas-raoul Done
I am still getting this crash with commit c114c273bfec36b7d1ca0a1552d37c237fae2f69 when following the steps described in the bug description:
APP_VERSION_NAME=4.2.1-debug-shashankiitbhu-custom_picker_5095
ANDROID_VERSION=14
PHONE_MODEL=Pixel 7 Pro
STACK_TRACE=java.lang.RuntimeException: Unable to start activity ComponentInfo{fr.free.nrw.commons/fr.free.nrw.commons.contributions.MainActivity}: java.lang.NullPointerException: Attempt to read from field 'androidx.viewpager.widget.ViewPager fr.free.nrw.commons.databinding.FragmentMediaDetailPagerBinding.mediaDetailsPager' on a null object reference in method 'void fr.free.nrw.commons.media.MediaDetailPagerFragment.onCreate(android.os.Bundle)'
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3946)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4126)
at android.app.ActivityThread.handleRelaunchActivityInner(ActivityThread.java:6165)
at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:6056)
at android.app.servertransaction.ActivityRelaunchItem.execute(ActivityRelaunchItem.java:77)
at android.app.servertransaction.ActivityTransactionItem.execute(ActivityTransactionItem.java:60)
at android.app.servertransaction.TransactionExecutor.executeNonLifecycleItem(TransactionExecutor.java:195)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:157)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:90)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2544)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loopOnce(Looper.java:232)
at android.os.Looper.loop(Looper.java:317)
at android.app.ActivityThread.main(ActivityThread.java:8501)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:878)
Caused by: java.lang.NullPointerException: Attempt to read from field 'androidx.viewpager.widget.ViewPager fr.free.nrw.commons.databinding.FragmentMediaDetailPagerBinding.mediaDetailsPager' on a null object reference in method 'void fr.free.nrw.commons.media.MediaDetailPagerFragment.onCreate(android.os.Bundle)'
at fr.free.nrw.commons.media.MediaDetailPagerFragment.onCreate(MediaDetailPagerFragment.java:167)
at androidx.fragment.app.Fragment.performCreate(Fragment.java:2949)
at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:475)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:278)
at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:112)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1647)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3128)
at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:3061)
at androidx.fragment.app.Fragment.restoreChildFragmentState(Fragment.java:1891)
at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:479)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:278)
at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:112)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1647)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3128)
at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:3061)
at androidx.fragment.app.FragmentController.dispatchCreate(FragmentController.java:240)
at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:276)
at androidx.appcompat.app.AppCompatActivity.onCreate(AppCompatActivity.java:106)
at fr.free.nrw.commons.di.CommonsDaggerAppCompatActivity.onCreate(CommonsDaggerAppCompatActivity.java:24)
at fr.free.nrw.commons.theme.BaseActivity.onCreate(BaseActivity.java:28)
at fr.free.nrw.commons.contributions.MainActivity.onCreate(MainActivity.java:119)
at android.app.Activity.performCreate(Activity.java:8767)
at android.app.Activity.performCreate(Activity.java:8745)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1519)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3928)
... 16 more
@nicolas-raoul Fixed the Error, Please Review
Would you mind fixing the conflict?
@nicolas-raoul Fixed the merge conflicts , Please Review and Merge