Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4375)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/signin/AccountSigninView.java

Issue 2360783004: Get FragmentManager directly from AccountSigninView.Delegate. (Closed)
Patch Set: Updated comments. Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/android/java/src/org/chromium/chrome/browser/signin/AccountSigninView.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/AccountSigninView.java b/chrome/android/java/src/org/chromium/chrome/browser/signin/AccountSigninView.java
index 60ce22285bd46ea26c954ad668e63636801e2376..88f61933a34d98ab5e5af5f751a5a6a6d1b14102 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/signin/AccountSigninView.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/signin/AccountSigninView.java
@@ -5,6 +5,7 @@
package org.chromium.chrome.browser.signin;
import android.app.Activity;
+import android.app.FragmentManager;
import android.content.Context;
import android.graphics.Bitmap;
import android.text.TextUtils;
@@ -81,9 +82,17 @@ public class AccountSigninView extends FrameLayout implements ProfileDownloader.
*/
public interface Delegate {
/**
- * Provides an Activity for the view to create dialogs.
+ * Provides an Activity for the View to check GMSCore version.
*/
public Activity getActivity();
+
+ /**
+ * Provides a FragmentManager for the View to create dialogs. This is done through a
+ * different mechanism than getActivity().getFragmentManager() as a potential fix to
+ * https://crbug.com/646978 on the theory that getActivity() and getFragmentManager()
+ * return null at different times.
+ */
+ public FragmentManager getFragmentManager();
}
private static final String TAG = "AccountSigninView";
@@ -256,7 +265,7 @@ public class AccountSigninView extends FrameLayout implements ProfileDownloader.
// Any dialogs that may have been showing are now invalid (they were created for the
// previously selected account).
ConfirmSyncDataStateMachine
- .cancelAllDialogs(mDelegate.getActivity().getFragmentManager());
+ .cancelAllDialogs(mDelegate.getFragmentManager());
if (mAccountNames.containsAll(oldAccountNames)) {
// A new account has been added and no accounts have been deleted. We will have
@@ -386,7 +395,7 @@ public class AccountSigninView extends FrameLayout implements ProfileDownloader.
String accountName = getSelectedAccountName();
ConfirmSyncDataStateMachine.run(PrefServiceBridge.getInstance().getSyncLastAccountName(),
accountName, ImportSyncType.PREVIOUS_DATA_FOUND,
- mDelegate.getActivity().getFragmentManager(),
+ mDelegate.getFragmentManager(),
getContext(), new ConfirmImportSyncDataDialog.Listener() {
@Override
public void onConfirm(boolean wipeData) {
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698