[tbb-commits] [tor-browser/tor-browser-60.2.1esr-8.5-1] Bug 1448305 - Avoid disk cache for icons of TwoLinePageRow in private tabs. r=JanH
gk at torproject.org
gk at torproject.org
Thu Oct 18 18:48:43 UTC 2018
commit 4744f30185f1e76fd8243bdc07e2c5dac6dd2302
Author: Rob Wu <rob at robwu.nl>
Date: Thu Jun 21 15:36:40 2018 +0200
Bug 1448305 - Avoid disk cache for icons of TwoLinePageRow in private tabs. r=JanH
E.g. autocompletion results and the "Recently closed" list.
---
.../base/java/org/mozilla/gecko/home/TwoLinePageRow.java | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/mobile/android/base/java/org/mozilla/gecko/home/TwoLinePageRow.java b/mobile/android/base/java/org/mozilla/gecko/home/TwoLinePageRow.java
index 334842e2bb2f..5be453f5a536 100644
--- a/mobile/android/base/java/org/mozilla/gecko/home/TwoLinePageRow.java
+++ b/mobile/android/base/java/org/mozilla/gecko/home/TwoLinePageRow.java
@@ -204,14 +204,11 @@ public class TwoLinePageRow extends ThemedLinearLayout
* selected tab.
*/
protected void updateDisplayedUrl() {
- final Tab selectedTab = Tabs.getInstance().getSelectedTab();
- final boolean isPrivate = (selectedTab != null) && (selectedTab.isPrivate());
-
// We always want to display the underlying page url, however for readermode pages
// we navigate to the about:reader equivalent, hence we need to use that url when finding
// existing tabs
final String navigationUrl = mHasReaderCacheItem ? ReaderModeUtils.getAboutReaderForUrl(mPageUrl) : mPageUrl;
- Tab tab = Tabs.getInstance().getFirstTabForUrl(navigationUrl, isPrivate);
+ Tab tab = Tabs.getInstance().getFirstTabForUrl(navigationUrl, isCurrentTabInPrivateMode());
if (!mShowIcons || tab == null) {
@@ -280,6 +277,7 @@ public class TwoLinePageRow extends ThemedLinearLayout
} else if (bookmarkId < BrowserContract.Bookmarks.FAKE_PARTNER_BOOKMARKS_START) {
mOngoingIconLoad = Icons.with(getContext())
.pageUrl(pageURL)
+ .setPrivateMode(isCurrentTabInPrivateMode())
.skipNetwork()
.privileged(true)
.icon(IconDescriptor.createGenericIcon(
@@ -289,6 +287,7 @@ public class TwoLinePageRow extends ThemedLinearLayout
} else {
mOngoingIconLoad = Icons.with(getContext())
.pageUrl(pageURL)
+ .setPrivateMode(isCurrentTabInPrivateMode())
.skipNetwork()
.build()
.execute(mFavicon.createIconCallback());
@@ -307,6 +306,15 @@ public class TwoLinePageRow extends ThemedLinearLayout
}
/**
+ * @return true if this view is shown inside a private tab, independent of whether
+ * a private mode theme is applied via <code>setPrivateMode(true)</code>.
+ */
+ private boolean isCurrentTabInPrivateMode() {
+ final Tab tab = Tabs.getInstance().getSelectedTab();
+ return tab != null && tab.isPrivate();
+ }
+
+ /**
* Update the data displayed by this row.
* <p>
* This method must be invoked on the UI thread.
More information about the tbb-commits
mailing list