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

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

Issue 2858043007: Ensure CATEGORY_LAUNCHER exists for MAIN intents for NTP inactivity/logging. (Closed)
Patch Set: Rebase Created 3 years, 7 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 | chrome/android/java/src/org/chromium/chrome/browser/metrics/MainIntentBehaviorMetrics.java » ('j') | 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/ChromeTabbedActivity.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
index 484b358e4ed59d437faf6ca87340d3ed211545b7..047d8962d8b1ce818166d146408af4aebe3e9582 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -576,7 +576,7 @@ public class ChromeTabbedActivity extends ChromeActivity implements OverviewMode
TraceEvent.begin("ChromeTabbedActivity.onNewIntentWithNative");
super.onNewIntentWithNative(intent);
- if (isMainIntent(intent)) {
+ if (isMainIntentFromLauncher(intent)) {
if (IntentHandler.getUrlFromIntent(intent) == null) {
maybeLaunchNtpFromMainIntent(intent);
}
@@ -737,18 +737,25 @@ public class ChromeTabbedActivity extends ChromeActivity implements OverviewMode
textBubble.show();
}
- private boolean isMainIntent(Intent intent) {
- return intent != null && TextUtils.equals(intent.getAction(), Intent.ACTION_MAIN);
+ private boolean isMainIntentFromLauncher(Intent intent) {
+ return intent != null && TextUtils.equals(intent.getAction(), Intent.ACTION_MAIN)
+ && intent.hasCategory(Intent.CATEGORY_LAUNCHER);
}
private void logMainIntentBehavior(Intent intent) {
- assert isMainIntent(intent);
+ assert isMainIntentFromLauncher(intent);
long currentTime = System.currentTimeMillis();
long lastBackgroundedTimeMs = ContextUtils.getAppSharedPreferences().getLong(
LAST_BACKGROUNDED_TIME_MS_PREF, currentTime);
mMainIntentMetrics.onMainIntentWithNative(currentTime - lastBackgroundedTimeMs);
}
+ /** Access the main intent metrics for test validation. */
+ @VisibleForTesting
+ public MainIntentBehaviorMetrics getMainIntentBehaviorMetricsForTesting() {
+ return mMainIntentMetrics;
+ }
+
/**
* Determines if the intent should trigger an NTP and launches it if applicable.
*
@@ -756,7 +763,7 @@ public class ChromeTabbedActivity extends ChromeActivity implements OverviewMode
* @return Whether an NTP was triggered as a result of this intent.
*/
private boolean maybeLaunchNtpFromMainIntent(Intent intent) {
- assert isMainIntent(intent);
+ assert isMainIntentFromLauncher(intent);
if (!mIntentHandler.isIntentUserVisible()) return false;
if (FeatureUtilities.isChromeHomeEnabled()) return false;
@@ -860,7 +867,7 @@ public class ChromeTabbedActivity extends ChromeActivity implements OverviewMode
mIntentWithEffect = mIntentHandler.onNewIntent(intent);
}
- if (isMainIntent(intent)) {
+ if (isMainIntentFromLauncher(intent)) {
if (IntentHandler.getUrlFromIntent(intent) == null) {
assert !mIntentWithEffect
: "ACTION_MAIN should not have triggered any prior action";
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/metrics/MainIntentBehaviorMetrics.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698