mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 1093886 - Respect places.history.enabled to disable nsAndroidHistory. r=mfinkle
This commit is contained in:
parent
769f5a80cb
commit
8502e8ba87
@ -10,8 +10,14 @@
|
|||||||
#include "mozilla/Services.h"
|
#include "mozilla/Services.h"
|
||||||
#include "nsIObserverService.h"
|
#include "nsIObserverService.h"
|
||||||
|
|
||||||
|
#include "mozilla/Preferences.h"
|
||||||
|
|
||||||
#define NS_LINK_VISITED_EVENT_TOPIC "link-visited"
|
#define NS_LINK_VISITED_EVENT_TOPIC "link-visited"
|
||||||
|
|
||||||
|
// We copy Places here.
|
||||||
|
// Note that we don't yet observe this pref at runtime.
|
||||||
|
#define PREF_HISTORY_ENABLED "places.history.enabled"
|
||||||
|
|
||||||
using namespace mozilla;
|
using namespace mozilla;
|
||||||
using mozilla::dom::Link;
|
using mozilla::dom::Link;
|
||||||
|
|
||||||
@ -33,7 +39,9 @@ nsAndroidHistory::GetSingleton()
|
|||||||
}
|
}
|
||||||
|
|
||||||
nsAndroidHistory::nsAndroidHistory()
|
nsAndroidHistory::nsAndroidHistory()
|
||||||
|
: mHistoryEnabled(true)
|
||||||
{
|
{
|
||||||
|
LoadPrefs();
|
||||||
}
|
}
|
||||||
|
|
||||||
NS_IMETHODIMP
|
NS_IMETHODIMP
|
||||||
@ -105,6 +113,16 @@ nsAndroidHistory::AppendToRecentlyVisitedURIs(nsIURI* aURI) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool
|
||||||
|
nsAndroidHistory::ShouldRecordHistory() {
|
||||||
|
return mHistoryEnabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
nsAndroidHistory::LoadPrefs() {
|
||||||
|
mHistoryEnabled = Preferences::GetBool(PREF_HISTORY_ENABLED, true);
|
||||||
|
}
|
||||||
|
|
||||||
inline bool
|
inline bool
|
||||||
nsAndroidHistory::IsRecentlyVisitedURI(nsIURI* aURI) {
|
nsAndroidHistory::IsRecentlyVisitedURI(nsIURI* aURI) {
|
||||||
bool equals = false;
|
bool equals = false;
|
||||||
@ -266,6 +284,12 @@ nsAndroidHistory::CanAddURI(nsIURI* aURI, bool* canAdd)
|
|||||||
NS_ENSURE_ARG(aURI);
|
NS_ENSURE_ARG(aURI);
|
||||||
NS_ENSURE_ARG_POINTER(canAdd);
|
NS_ENSURE_ARG_POINTER(canAdd);
|
||||||
|
|
||||||
|
// See if we're disabled.
|
||||||
|
if (!ShouldRecordHistory()) {
|
||||||
|
*canAdd = false;
|
||||||
|
return NS_OK;
|
||||||
|
}
|
||||||
|
|
||||||
nsAutoCString scheme;
|
nsAutoCString scheme;
|
||||||
nsresult rv = aURI->GetScheme(scheme);
|
nsresult rv = aURI->GetScheme(scheme);
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
@ -41,9 +41,14 @@ private:
|
|||||||
|
|
||||||
static nsAndroidHistory* sHistory;
|
static nsAndroidHistory* sHistory;
|
||||||
|
|
||||||
|
// Will mimic the value of the places.history.enabled preference.
|
||||||
|
bool mHistoryEnabled;
|
||||||
|
|
||||||
nsDataHashtable<nsStringHashKey, nsTArray<mozilla::dom::Link *> *> mListeners;
|
nsDataHashtable<nsStringHashKey, nsTArray<mozilla::dom::Link *> *> mListeners;
|
||||||
nsTPriorityQueue<nsString> mPendingURIs;
|
nsTPriorityQueue<nsString> mPendingURIs;
|
||||||
|
|
||||||
|
void LoadPrefs();
|
||||||
|
bool ShouldRecordHistory();
|
||||||
nsresult CanAddURI(nsIURI* aURI, bool* canAdd);
|
nsresult CanAddURI(nsIURI* aURI, bool* canAdd);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user