diff options
author | yusufo <yusufo@chromium.org> | 2016-03-16 13:04:40 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-03-16 20:06:19 +0000 |
commit | 7b573e416404e90e942d3b63efb597702faa2775 (patch) | |
tree | 72090aaedab7843b3733d1de1da535fb2f5f9b18 | |
parent | 51fec73df69c66596985a9037bc0665529327507 (diff) | |
download | chromium_src-7b573e416404e90e942d3b63efb597702faa2775.zip chromium_src-7b573e416404e90e942d3b63efb597702faa2775.tar.gz chromium_src-7b573e416404e90e942d3b63efb597702faa2775.tar.bz2 |
Reland: Check for url changes to flip state for showing title only
We used to only keep a boolean for a first load, but that seems
to be very fragile since onNavigatedToDifferentPage also
gets called in refrestSelectedTab. This caches the initial url and
only flips state when there is a change from the url
BUG=90326
Review URL: https://codereview.chromium.org/1809683002
Cr-Commit-Position: refs/heads/master@{#381515}
-rw-r--r-- | chrome/android/java/src/org/chromium/chrome/browser/toolbar/CustomTabToolbar.java | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/CustomTabToolbar.java b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/CustomTabToolbar.java index 72b3b4e..391b0ca 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/CustomTabToolbar.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/CustomTabToolbar.java @@ -73,7 +73,7 @@ public class CustomTabToolbar extends ToolbarLayout implements LocationBar, private boolean mBackgroundColorSet; private long mInitializeTimeStamp; private int mState = STATE_DOMAIN_ONLY; - private boolean mIsFirstLoad = true; + private String mFirstUrl; private Runnable mTitleAnimationStarter = new Runnable() { @Override @@ -275,10 +275,13 @@ public class CustomTabToolbar extends ToolbarLayout implements LocationBar, protected void onNavigatedToDifferentPage() { super.onNavigatedToDifferentPage(); setTitleToPageTitle(); - if (mIsFirstLoad) { - mIsFirstLoad = false; - } else if (mState == STATE_TITLE_ONLY) { - setUrlBarHidden(false); + if (mState == STATE_TITLE_ONLY) { + if (TextUtils.isEmpty(mFirstUrl)) { + mFirstUrl = getToolbarDataProvider().getTab().getUrl(); + } else { + if (mFirstUrl.equals(getToolbarDataProvider().getTab().getUrl())) return; + setUrlBarHidden(false); + } } } |