Merge "[Audiosharing] Show dialogs when lifecycle isAtLeast STARTED" into main
This commit is contained in:
@@ -31,6 +31,7 @@ import androidx.annotation.VisibleForTesting;
|
|||||||
import androidx.appcompat.app.AlertDialog;
|
import androidx.appcompat.app.AlertDialog;
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
import androidx.fragment.app.FragmentManager;
|
import androidx.fragment.app.FragmentManager;
|
||||||
|
import androidx.lifecycle.Lifecycle;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.bluetooth.BluetoothPairingDetail;
|
import com.android.settings.bluetooth.BluetoothPairingDetail;
|
||||||
@@ -95,6 +96,11 @@ public class AudioSharingDialogFragment extends InstrumentedDialogFragment {
|
|||||||
Log.d(TAG, "Fail to show dialog: " + e.getMessage());
|
Log.d(TAG, "Fail to show dialog: " + e.getMessage());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Lifecycle.State currentState = host.getLifecycle().getCurrentState();
|
||||||
|
if (!currentState.isAtLeast(Lifecycle.State.STARTED)) {
|
||||||
|
Log.d(TAG, "Fail to show dialog with state: " + currentState);
|
||||||
|
return;
|
||||||
|
}
|
||||||
sHost = host;
|
sHost = host;
|
||||||
sListener = listener;
|
sListener = listener;
|
||||||
sEventData = eventData;
|
sEventData = eventData;
|
||||||
|
@@ -28,6 +28,7 @@ import androidx.annotation.VisibleForTesting;
|
|||||||
import androidx.appcompat.app.AlertDialog;
|
import androidx.appcompat.app.AlertDialog;
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
import androidx.fragment.app.FragmentManager;
|
import androidx.fragment.app.FragmentManager;
|
||||||
|
import androidx.lifecycle.Lifecycle;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
|
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
|
||||||
@@ -92,6 +93,11 @@ public class AudioSharingDisconnectDialogFragment extends InstrumentedDialogFrag
|
|||||||
Log.d(TAG, "Fail to show dialog: " + e.getMessage());
|
Log.d(TAG, "Fail to show dialog: " + e.getMessage());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Lifecycle.State currentState = host.getLifecycle().getCurrentState();
|
||||||
|
if (!currentState.isAtLeast(Lifecycle.State.STARTED)) {
|
||||||
|
Log.d(TAG, "Fail to show dialog with state: " + currentState);
|
||||||
|
return;
|
||||||
|
}
|
||||||
AlertDialog dialog = AudioSharingDialogHelper.getDialogIfShowing(manager, TAG);
|
AlertDialog dialog = AudioSharingDialogHelper.getDialogIfShowing(manager, TAG);
|
||||||
if (dialog != null) {
|
if (dialog != null) {
|
||||||
int newGroupId = BluetoothUtils.getGroupId(newDevice);
|
int newGroupId = BluetoothUtils.getGroupId(newDevice);
|
||||||
|
@@ -25,6 +25,7 @@ import androidx.annotation.Nullable;
|
|||||||
import androidx.appcompat.app.AlertDialog;
|
import androidx.appcompat.app.AlertDialog;
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
import androidx.fragment.app.FragmentManager;
|
import androidx.fragment.app.FragmentManager;
|
||||||
|
import androidx.lifecycle.Lifecycle;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
|
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
|
||||||
@@ -53,6 +54,11 @@ public class AudioSharingErrorDialogFragment extends InstrumentedDialogFragment
|
|||||||
Log.d(TAG, "Fail to show dialog: " + e.getMessage());
|
Log.d(TAG, "Fail to show dialog: " + e.getMessage());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Lifecycle.State currentState = host.getLifecycle().getCurrentState();
|
||||||
|
if (!currentState.isAtLeast(Lifecycle.State.STARTED)) {
|
||||||
|
Log.d(TAG, "Fail to show dialog with state: " + currentState);
|
||||||
|
return;
|
||||||
|
}
|
||||||
AlertDialog dialog = AudioSharingDialogHelper.getDialogIfShowing(manager, TAG);
|
AlertDialog dialog = AudioSharingDialogHelper.getDialogIfShowing(manager, TAG);
|
||||||
if (dialog != null) {
|
if (dialog != null) {
|
||||||
Log.d(TAG, "Dialog is showing, return.");
|
Log.d(TAG, "Dialog is showing, return.");
|
||||||
|
@@ -26,6 +26,7 @@ import androidx.annotation.Nullable;
|
|||||||
import androidx.appcompat.app.AlertDialog;
|
import androidx.appcompat.app.AlertDialog;
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
import androidx.fragment.app.FragmentManager;
|
import androidx.fragment.app.FragmentManager;
|
||||||
|
import androidx.lifecycle.Lifecycle;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
|
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
|
||||||
@@ -69,6 +70,11 @@ public class AudioSharingIncompatibleDialogFragment extends InstrumentedDialogFr
|
|||||||
Log.d(TAG, "Fail to show dialog: " + e.getMessage());
|
Log.d(TAG, "Fail to show dialog: " + e.getMessage());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Lifecycle.State currentState = host.getLifecycle().getCurrentState();
|
||||||
|
if (!currentState.isAtLeast(Lifecycle.State.STARTED)) {
|
||||||
|
Log.d(TAG, "Fail to show dialog with state: " + currentState);
|
||||||
|
return;
|
||||||
|
}
|
||||||
sListener = listener;
|
sListener = listener;
|
||||||
AlertDialog dialog = AudioSharingDialogHelper.getDialogIfShowing(manager, TAG);
|
AlertDialog dialog = AudioSharingDialogHelper.getDialogIfShowing(manager, TAG);
|
||||||
if (dialog != null) {
|
if (dialog != null) {
|
||||||
|
@@ -28,6 +28,7 @@ import androidx.annotation.VisibleForTesting;
|
|||||||
import androidx.appcompat.app.AlertDialog;
|
import androidx.appcompat.app.AlertDialog;
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
import androidx.fragment.app.FragmentManager;
|
import androidx.fragment.app.FragmentManager;
|
||||||
|
import androidx.lifecycle.Lifecycle;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.bluetooth.Utils;
|
import com.android.settings.bluetooth.Utils;
|
||||||
@@ -89,6 +90,11 @@ public class AudioSharingJoinDialogFragment extends InstrumentedDialogFragment {
|
|||||||
Log.d(TAG, "Fail to show dialog: " + e.getMessage());
|
Log.d(TAG, "Fail to show dialog: " + e.getMessage());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Lifecycle.State currentState = host.getLifecycle().getCurrentState();
|
||||||
|
if (!currentState.isAtLeast(Lifecycle.State.STARTED)) {
|
||||||
|
Log.d(TAG, "Fail to show dialog with state: " + currentState);
|
||||||
|
return;
|
||||||
|
}
|
||||||
sListener = listener;
|
sListener = listener;
|
||||||
sNewDevice = newDevice;
|
sNewDevice = newDevice;
|
||||||
sEventData = eventData;
|
sEventData = eventData;
|
||||||
|
@@ -31,6 +31,7 @@ import androidx.annotation.Nullable;
|
|||||||
import androidx.appcompat.app.AlertDialog;
|
import androidx.appcompat.app.AlertDialog;
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
import androidx.fragment.app.FragmentManager;
|
import androidx.fragment.app.FragmentManager;
|
||||||
|
import androidx.lifecycle.Lifecycle;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
|
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
|
||||||
@@ -72,6 +73,11 @@ public class AudioSharingProgressDialogFragment extends InstrumentedDialogFragme
|
|||||||
Log.d(TAG, "Fail to show dialog: " + e.getMessage());
|
Log.d(TAG, "Fail to show dialog: " + e.getMessage());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Lifecycle.State currentState = host.getLifecycle().getCurrentState();
|
||||||
|
if (!currentState.isAtLeast(Lifecycle.State.STARTED)) {
|
||||||
|
Log.d(TAG, "Fail to show dialog with state: " + currentState);
|
||||||
|
return;
|
||||||
|
}
|
||||||
AlertDialog dialog = AudioSharingDialogHelper.getDialogIfShowing(manager, TAG);
|
AlertDialog dialog = AudioSharingDialogHelper.getDialogIfShowing(manager, TAG);
|
||||||
if (dialog != null) {
|
if (dialog != null) {
|
||||||
if (!sMessage.equals(message)) {
|
if (!sMessage.equals(message)) {
|
||||||
|
@@ -28,6 +28,7 @@ import androidx.annotation.VisibleForTesting;
|
|||||||
import androidx.appcompat.app.AlertDialog;
|
import androidx.appcompat.app.AlertDialog;
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
import androidx.fragment.app.FragmentManager;
|
import androidx.fragment.app.FragmentManager;
|
||||||
|
import androidx.lifecycle.Lifecycle;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
|
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
|
||||||
@@ -89,6 +90,11 @@ public class AudioSharingStopDialogFragment extends InstrumentedDialogFragment {
|
|||||||
Log.d(TAG, "Fail to show dialog: " + e.getMessage());
|
Log.d(TAG, "Fail to show dialog: " + e.getMessage());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Lifecycle.State currentState = host.getLifecycle().getCurrentState();
|
||||||
|
if (!currentState.isAtLeast(Lifecycle.State.STARTED)) {
|
||||||
|
Log.d(TAG, "Fail to show dialog with state: " + currentState);
|
||||||
|
return;
|
||||||
|
}
|
||||||
AlertDialog dialog = AudioSharingDialogHelper.getDialogIfShowing(manager, TAG);
|
AlertDialog dialog = AudioSharingDialogHelper.getDialogIfShowing(manager, TAG);
|
||||||
if (dialog != null) {
|
if (dialog != null) {
|
||||||
int newGroupId = BluetoothUtils.getGroupId(newDevice);
|
int newGroupId = BluetoothUtils.getGroupId(newDevice);
|
||||||
|
@@ -767,7 +767,7 @@ public class AudioSharingSwitchBarController extends BasePreferenceController
|
|||||||
&& !(fragment instanceof AudioSharingErrorDialogFragment)
|
&& !(fragment instanceof AudioSharingErrorDialogFragment)
|
||||||
&& ((DialogFragment) fragment).getDialog() != null) {
|
&& ((DialogFragment) fragment).getDialog() != null) {
|
||||||
Log.d(TAG, "Remove stale dialog = " + fragment.getTag());
|
Log.d(TAG, "Remove stale dialog = " + fragment.getTag());
|
||||||
((DialogFragment) fragment).dismiss();
|
((DialogFragment) fragment).dismissAllowingStateLoss();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user