/* -*- Mode: c++; c-basic-offset: 4; tab-width: 20; indent-tabs-mode: nil; -*- * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #ifndef NS_ANDROIDHISTORY_H #define NS_ANDROIDHISTORY_H #include "IHistory.h" #include "nsDataHashtable.h" #include "nsTPriorityQueue.h" #include "nsThreadUtils.h" #define NS_ANDROIDHISTORY_CID \ {0xCCAA4880, 0x44DD, 0x40A7, {0xA1, 0x3F, 0x61, 0x56, 0xFC, 0x88, 0x2C, 0x0B}} class nsAndroidHistory : public mozilla::IHistory, public nsIRunnable { public: NS_DECL_ISUPPORTS NS_DECL_IHISTORY NS_DECL_NSIRUNNABLE /** * Obtains a pointer that has had AddRef called on it. Used by the service * manager only. */ static nsAndroidHistory* GetSingleton(); nsAndroidHistory(); static void NotifyURIVisited(const nsString& str); private: static nsAndroidHistory* sHistory; nsDataHashtable *> mListeners; nsTPriorityQueue mPendingURIs; }; #endif