diff --git a/app/src/common/shared/org/mozilla/vrbrowser/browser/engine/SessionStack.java b/app/src/common/shared/org/mozilla/vrbrowser/browser/engine/SessionStack.java index f3bb338d4..297efd0df 100644 --- a/app/src/common/shared/org/mozilla/vrbrowser/browser/engine/SessionStack.java +++ b/app/src/common/shared/org/mozilla/vrbrowser/browser/engine/SessionStack.java @@ -506,6 +506,12 @@ public void setCurrentSession(int aId) { } } + public void purgeHistory() { + for (Map.Entry entry :mSessions.entrySet()) { + entry.getValue().mSession.purgeHistory(); + } + } + public void setRegion(String aRegion) { Log.d(LOGTAG, "SessionStack setRegion: " + aRegion); mRegion = aRegion != null ? aRegion.toLowerCase() : "worldwide"; diff --git a/app/src/common/shared/org/mozilla/vrbrowser/browser/engine/SessionStore.java b/app/src/common/shared/org/mozilla/vrbrowser/browser/engine/SessionStore.java index e5f6c97d5..be9d96752 100644 --- a/app/src/common/shared/org/mozilla/vrbrowser/browser/engine/SessionStore.java +++ b/app/src/common/shared/org/mozilla/vrbrowser/browser/engine/SessionStore.java @@ -141,6 +141,12 @@ public HistoryStore getHistoryStore() { return mHistoryStore; } + public void purgeSessionHistory() { + for (Map.Entry entry : mSessionStacks.entrySet()) { + entry.getValue().purgeHistory(); + } + } + public void onPause() { for (Map.Entry entry : mSessionStacks.entrySet()) { entry.getValue().setActive(false); diff --git a/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/WindowWidget.java b/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/WindowWidget.java index 1cd4c1c7b..f9ad8872e 100644 --- a/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/WindowWidget.java +++ b/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/WindowWidget.java @@ -135,7 +135,7 @@ default void onBookmarksHidden(WindowWidget aWindow) {} private WidgetPlacement mPlacementBeforeResize; private boolean mIsResizing; private boolean mIsFullScreen; - private boolean mAfterFirstlPaint; + private boolean mAfterFirstPaint; public interface WindowDelegate { void onFocusRequest(@NonNull WindowWidget aWindow); @@ -1138,15 +1138,16 @@ public void showClearCacheDialog() { store.deleteVisitsBetween(todayLimit, currentTime); break; case ClearCacheDialogWidget.YESTERDAY: - store.deleteVisitsBetween(yesterdayLimit, todayLimit); + store.deleteVisitsBetween(yesterdayLimit, currentTime); break; case ClearCacheDialogWidget.LAST_WEEK: - store.deleteVisitsBetween(oneWeekLimit, yesterdayLimit); + store.deleteVisitsBetween(oneWeekLimit, currentTime); break; case ClearCacheDialogWidget.EVERYTHING: store.deleteEverything(); break; } + SessionStore.get().purgeSessionHistory(); } }); mClearCacheDialog.show(REQUEST_FOCUS); @@ -1436,7 +1437,7 @@ public void onContextMenu(GeckoSession session, int screenX, int screenY, Contex @Override public void onFirstComposite(@NonNull GeckoSession session) { - if (!mAfterFirstlPaint) { + if (!mAfterFirstPaint) { return; } if (mFirstDrawCallback != null) { @@ -1447,13 +1448,13 @@ public void onFirstComposite(@NonNull GeckoSession session) { @Override public void onFirstContentfulPaint(@NonNull GeckoSession session) { - if (mAfterFirstlPaint) { + if (mAfterFirstPaint) { return; } if (mFirstDrawCallback != null) { ThreadUtils.postToUiThread(mFirstDrawCallback); mFirstDrawCallback = null; - mAfterFirstlPaint = true; + mAfterFirstPaint = true; } }