mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 1035439 - Part 2: Show closed tabs of the current private state in RecentTabsPanel. r=margaret
This commit is contained in:
parent
5dfe091a95
commit
fb97fd1f5f
@ -34,8 +34,6 @@ import android.database.MatrixCursor.RowBuilder;
|
|||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.support.v4.app.LoaderManager.LoaderCallbacks;
|
import android.support.v4.app.LoaderManager.LoaderCallbacks;
|
||||||
import android.support.v4.content.Loader;
|
import android.support.v4.content.Loader;
|
||||||
import android.support.v4.widget.CursorAdapter;
|
|
||||||
import android.util.Log;
|
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
@ -252,9 +250,7 @@ public class RecentTabsPanel extends HomeFragment
|
|||||||
mClosedTabs = closedTabs;
|
mClosedTabs = closedTabs;
|
||||||
|
|
||||||
// Reload the cursor to show recently closed tabs.
|
// Reload the cursor to show recently closed tabs.
|
||||||
if (mClosedTabs.length > 0 && canLoad()) {
|
getLoaderManager().restartLoader(LOADER_ID_RECENT_TABS, null, mCursorLoaderCallbacks);
|
||||||
getLoaderManager().restartLoader(LOADER_ID_RECENT_TABS, null, mCursorLoaderCallbacks);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -310,8 +306,8 @@ public class RecentTabsPanel extends HomeFragment
|
|||||||
for (int i = 0; i < length; i++) {
|
for (int i = 0; i < length; i++) {
|
||||||
final String url = closedTabs[i].url;
|
final String url = closedTabs[i].url;
|
||||||
|
|
||||||
// Don't show recent tabs for about:home.
|
// Don't show recent tabs for about:home or about:privatebrowsing.
|
||||||
if (!AboutPages.isAboutHome(url)) {
|
if (!AboutPages.isTitlelessAboutPage(url)) {
|
||||||
// If this is the first closed tab we're adding, add a header for the section.
|
// If this is the first closed tab we're adding, add a header for the section.
|
||||||
if (visibleClosedTabs == 0) {
|
if (visibleClosedTabs == 0) {
|
||||||
addRow(c, null, context.getString(R.string.home_closed_tabs_title), RecentTabs.TYPE_HEADER);
|
addRow(c, null, context.getString(R.string.home_closed_tabs_title), RecentTabs.TYPE_HEADER);
|
||||||
|
@ -18,6 +18,7 @@ XPCOMUtils.defineLazyServiceGetter(this, "CrashReporter",
|
|||||||
XPCOMUtils.defineLazyModuleGetter(this, "Task", "resource://gre/modules/Task.jsm");
|
XPCOMUtils.defineLazyModuleGetter(this, "Task", "resource://gre/modules/Task.jsm");
|
||||||
XPCOMUtils.defineLazyModuleGetter(this, "OS", "resource://gre/modules/osfile.jsm");
|
XPCOMUtils.defineLazyModuleGetter(this, "OS", "resource://gre/modules/osfile.jsm");
|
||||||
XPCOMUtils.defineLazyModuleGetter(this, "sendMessageToJava", "resource://gre/modules/Messaging.jsm");
|
XPCOMUtils.defineLazyModuleGetter(this, "sendMessageToJava", "resource://gre/modules/Messaging.jsm");
|
||||||
|
XPCOMUtils.defineLazyModuleGetter(this, "PrivateBrowsingUtils", "resource://gre/modules/PrivateBrowsingUtils.jsm");
|
||||||
|
|
||||||
function dump(a) {
|
function dump(a) {
|
||||||
Services.console.logStringMessage(a);
|
Services.console.logStringMessage(a);
|
||||||
@ -373,6 +374,13 @@ SessionStore.prototype = {
|
|||||||
|
|
||||||
this.saveStateDelayed();
|
this.saveStateDelayed();
|
||||||
this._updateCrashReportURL(aWindow);
|
this._updateCrashReportURL(aWindow);
|
||||||
|
|
||||||
|
// If the selected tab has changed while listening for closed tab
|
||||||
|
// notifications, we may have switched between different private browsing
|
||||||
|
// modes.
|
||||||
|
if (this._notifyClosedTabs) {
|
||||||
|
this._sendClosedTabsToJava(aWindow);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
saveStateDelayed: function ss_saveStateDelayed() {
|
saveStateDelayed: function ss_saveStateDelayed() {
|
||||||
@ -923,9 +931,10 @@ SessionStore.prototype = {
|
|||||||
throw (Components.returnCode = Cr.NS_ERROR_INVALID_ARG);
|
throw (Components.returnCode = Cr.NS_ERROR_INVALID_ARG);
|
||||||
|
|
||||||
let closedTabs = this._windows[aWindow.__SSID].closedTabs;
|
let closedTabs = this._windows[aWindow.__SSID].closedTabs;
|
||||||
|
let isPrivate = PrivateBrowsingUtils.isWindowPrivate(aWindow.BrowserApp.selectedBrowser.contentWindow);
|
||||||
|
|
||||||
let tabs = closedTabs
|
let tabs = closedTabs
|
||||||
.filter(tab => !tab.isPrivate)
|
.filter(tab => tab.isPrivate == isPrivate)
|
||||||
.map(function (tab) {
|
.map(function (tab) {
|
||||||
// Get the url and title for the last entry in the session history.
|
// Get the url and title for the last entry in the session history.
|
||||||
let lastEntry = tab.entries[tab.entries.length - 1];
|
let lastEntry = tab.entries[tab.entries.length - 1];
|
||||||
|
Loading…
Reference in New Issue
Block a user