From 4a7cd6b773053c707c7198cfb6a309c02ab32abb Mon Sep 17 00:00:00 2001 From: zachh Date: Mon, 21 Aug 2017 11:29:44 -0700 Subject: Fixed crash due to calling setRetainInstance on a nested fragment. Fixed by using the activity's fragment manager when creating the DialerUiTask. Bug: 64841638 Test: manual PiperOrigin-RevId: 165952771 Change-Id: Id9cac50a127f5bf8af65fd8926a055abe2ef7525 --- .../android/dialer/app/calllog/VisualVoicemailCallLogFragment.java | 4 +++- java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java | 2 +- java/com/android/dialer/common/concurrent/DialerUiTaskFragment.java | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) (limited to 'java') diff --git a/java/com/android/dialer/app/calllog/VisualVoicemailCallLogFragment.java b/java/com/android/dialer/app/calllog/VisualVoicemailCallLogFragment.java index 6882ef9d8..8bfd48b05 100644 --- a/java/com/android/dialer/app/calllog/VisualVoicemailCallLogFragment.java +++ b/java/com/android/dialer/app/calllog/VisualVoicemailCallLogFragment.java @@ -80,7 +80,9 @@ public class VisualVoicemailCallLogFragment extends CallLogFragment { mPreSyncVoicemailStatusCheckExecutor = DialerExecutors.createUiTaskBuilder( - getFragmentManager(), "fetchVoicemailStatus", new VoicemailStatusWorker()) + getActivity().getFragmentManager(), + "fetchVoicemailStatus", + new VoicemailStatusWorker()) .onSuccess(this::onPreSyncVoicemailStatusChecked) .build(); diff --git a/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java b/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java index 6d5015a22..de4e1cc4a 100644 --- a/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java +++ b/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java @@ -221,7 +221,7 @@ public class VoicemailPlaybackPresenter } shareVoicemailExecutor = DialerExecutors.createUiTaskBuilder( - mActivity.getFragmentManager(), "test", new ShareVoicemailWorker()) + mActivity.getFragmentManager(), "shareVoicemail", new ShareVoicemailWorker()) .onSuccess( output -> { if (output == null) { diff --git a/java/com/android/dialer/common/concurrent/DialerUiTaskFragment.java b/java/com/android/dialer/common/concurrent/DialerUiTaskFragment.java index 7f2a5a06b..b6068b24e 100644 --- a/java/com/android/dialer/common/concurrent/DialerUiTaskFragment.java +++ b/java/com/android/dialer/common/concurrent/DialerUiTaskFragment.java @@ -88,7 +88,7 @@ public final class DialerUiTaskFragment extends Fragment { (DialerUiTaskFragment) fragmentManager.findFragmentByTag(taskId); if (fragment == null) { - LogUtil.i("DialerUiTaskFragment.create", "creating new DialerUiTaskFragment"); + LogUtil.i("DialerUiTaskFragment.create", "creating new DialerUiTaskFragment for " + taskId); fragment = new DialerUiTaskFragment<>(); fragmentManager.beginTransaction().add(fragment, taskId).commit(); } -- cgit v1.2.3