Index: chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationParams.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationParams.java b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationParams.java |
index f894ce63314fb14568f05afecd2b40f56c020741..f0313b631774acdb4800fa209fbbb84a8114fa40 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationParams.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationParams.java |
@@ -44,10 +44,13 @@ public class ExternalNavigationParams { |
/** Whether this navigation happens in background tab. */ |
private final boolean mIsBackgroundTabNavigation; |
+ /** Whether this navigation happens in main frame. */ |
+ private final boolean mIsMainFrame; |
+ |
private ExternalNavigationParams(String url, boolean isIncognito, String referrerUrl, |
int pageTransition, boolean isRedirect, boolean appMustBeInForeground, |
TabRedirectHandler redirectHandler, TransitionPageHelper transitionPageHelper, Tab tab, |
- boolean openInNewTab, boolean isBackgroundTabNavigation) { |
+ boolean openInNewTab, boolean isBackgroundTabNavigation, boolean isMainFrame) { |
mUrl = url; |
mIsIncognito = isIncognito; |
mPageTransition = pageTransition; |
@@ -59,6 +62,7 @@ public class ExternalNavigationParams { |
mTab = tab; |
mOpenInNewTab = openInNewTab; |
mIsBackgroundTabNavigation = isBackgroundTabNavigation; |
+ mIsMainFrame = isMainFrame; |
} |
/** @return The URL to potentially open externally. */ |
@@ -119,6 +123,11 @@ public class ExternalNavigationParams { |
return mIsBackgroundTabNavigation; |
} |
+ /** @return Whether this navigation happens in main frame. */ |
+ public boolean isMainFrame() { |
+ return mIsMainFrame; |
+ } |
+ |
/** The builder for {@link ExternalNavigationParams} objects. */ |
public static class Builder { |
/** The URL which we are navigating to. */ |
@@ -153,6 +162,9 @@ public class ExternalNavigationParams { |
/** Whether this navigation happens in background tab. */ |
private boolean mIsBackgroundTabNavigation; |
+ /** Whether this navigation happens in main frame. */ |
+ private boolean mIsMainFrame; |
+ |
public Builder(String url, boolean isIncognito) { |
mUrl = url; |
mIsIncognito = isIncognito; |
@@ -203,11 +215,18 @@ public class ExternalNavigationParams { |
return this; |
} |
+ /** Sets whether this navigation happens in main frame. */ |
+ public Builder setIsMainFrame(boolean v) { |
+ mIsMainFrame = v; |
+ return this; |
+ } |
+ |
/** @return A fully constructed {@link ExternalNavigationParams} object. */ |
public ExternalNavigationParams build() { |
return new ExternalNavigationParams(mUrl, mIsIncognito, mReferrerUrl, mPageTransition, |
mIsRedirect, mApplicationMustBeInForeground, mRedirectHandler, |
- mTransitionPageHelper, mTab, mOpenInNewTab, mIsBackgroundTabNavigation); |
+ mTransitionPageHelper, mTab, mOpenInNewTab, mIsBackgroundTabNavigation, |
+ mIsMainFrame); |
} |
} |
} |