Index: chrome/android/java/src/org/chromium/chrome/browser/init/AsyncInitializationActivity.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/AsyncInitializationActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/init/AsyncInitializationActivity.java |
index a757b288f25cc7f8a589afe9354896f941226d46..c7edd138f9c6b3a0021626f775c72f88f0dcc776 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/init/AsyncInitializationActivity.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/init/AsyncInitializationActivity.java |
@@ -27,6 +27,7 @@ import android.view.WindowManager; |
import org.chromium.base.ApiCompatibilityUtils; |
import org.chromium.base.TraceEvent; |
import org.chromium.base.VisibleForTesting; |
+import org.chromium.base.library_loader.LibraryLoader; |
import org.chromium.base.library_loader.LoaderErrors; |
import org.chromium.base.library_loader.ProcessInitException; |
import org.chromium.chrome.R; |
@@ -61,6 +62,7 @@ public abstract class AsyncInitializationActivity extends AppCompatActivity impl |
private MemoryUma mMemoryUma; |
private long mLastUserInteractionTime; |
private boolean mIsTablet; |
+ private boolean mHadWarmStart; |
public AsyncInitializationActivity() { |
mHandler = new Handler(); |
@@ -95,6 +97,7 @@ public abstract class AsyncInitializationActivity extends AppCompatActivity impl |
@Override |
public void preInflationStartup() { |
+ mHadWarmStart = LibraryLoader.isInitialized(); |
// On some devices, OEM modifications have been made to the resource loader that cause the |
// DeviceFormFactor calculation of whether a device is using tablet resources to be |
// incorrect. Check which resources were actually loaded and set the DeviceFormFactor |
@@ -397,6 +400,14 @@ public abstract class AsyncInitializationActivity extends AppCompatActivity impl |
return mIsTablet; |
} |
+ /** |
+ * @return Whether the activity had a warm start because the native library was already fully |
+ * loaded and initialized. |
+ */ |
+ public boolean hadWarmStart() { |
+ return mHadWarmStart; |
+ } |
+ |
@Override |
public void onUserInteraction() { |
mLastUserInteractionTime = SystemClock.elapsedRealtime(); |