Index: include/AdblockPlus/FilterEngine.h |
diff --git a/include/AdblockPlus/FilterEngine.h b/include/AdblockPlus/FilterEngine.h |
index b81433f5c9bf1b540cf837f6df1a1662bc623454..e256b3c3a5c50de65d0bee266ebb897efe1d2483 100644 |
--- a/include/AdblockPlus/FilterEngine.h |
+++ b/include/AdblockPlus/FilterEngine.h |
@@ -24,6 +24,7 @@ |
#include <vector> |
#include <AdblockPlus/JsEngine.h> |
#include <AdblockPlus/JsValue.h> |
+#include <AdblockPlus/Notification.h> |
#include "tr1_memory.h" |
@@ -237,6 +238,52 @@ namespace AdblockPlus |
std::vector<SubscriptionPtr> FetchAvailableSubscriptions() const; |
/** |
+ * Creates new Notification(see `Notification`) object. |
+ * @param type Type of the notification. |
+ * @param id Id of the newly created notification. |
+ * @return New Notification instance. |
+ */ |
+ std::tr1::shared_ptr<Notification> CreateNotification(NotificationType type, |
+ const std::string& id) const; |
Wladimir Palant
2015/01/21 13:48:28
Why do we need this in the public API? Shouldn't n
sergei
2015/01/21 15:58:55
It is for local notifications.
@Felix
Wladimir Palant
2015/01/21 19:23:18
What kind of local notifications? If the client ap
|
+ |
+ /** |
+ * Determines which notification is to be shown next. |
+ * @param url URL to match notifications to (optional). |
+ * @return Notification to be shown, or null if there is no any. |
+ */ |
+ std::tr1::shared_ptr<Notification> GetNextNotificationToShow( |
+ const std::string& url = std::string()); |
+ |
+ /** |
+ * Localizes the texts of the supplied notification. |
+ * @param notification Notification to translate. |
+ * @param locale The target locale (optional, defaults to the |
+ * application locale) |
Wladimir Palant
2015/01/21 13:48:28
Do we need this parameter at all? When would it ma
sergei
2015/01/21 15:58:55
1. The javascript notifications API has this argum
Wladimir Palant
2015/01/21 19:23:18
Yes, and it is already unused there. All the more
Felix Dahlke
2015/01/22 03:31:08
Agreed. I actually think we should remove it from
sergei
2015/01/22 14:08:15
I've removed locale for notification texts.
|
+ * @return the translated texts. |
+ */ |
+ NotificationTexts GetNotificationTexts( |
+ const std::tr1::shared_ptr<Notification>& notification, |
+ const std::string& locale = std::string()) const; |
Wladimir Palant
2015/01/21 13:48:28
Why isn't this a methods of the Notification class
sergei
2015/01/21 15:58:55
1. GetNotificationTexts is moved into Notification
Wladimir Palant
2015/01/21 19:23:18
What kind of flexibility? If we have a Notificatio
Felix Dahlke
2015/01/22 03:31:08
Agreed - there is no notification object in that s
sergei
2015/01/22 14:08:15
MarkAsShown is moved into Notification class. Just
|
+ |
+ /** |
+ * Adds a local notification. |
+ * @param value The notification to add |
+ */ |
+ void AddNotification(const std::tr1::shared_ptr<Notification>& value); |
Wladimir Palant
2015/01/21 13:48:28
Why do we need an API to add "local" notifications
sergei
2015/01/21 15:58:55
I guess it is designed for the cases when we can d
Felix Dahlke
2015/01/22 03:31:08
You're right Sergei, the question notification is
|
+ |
+ /** |
+ * Removes an existing local notification. |
+ * @param notification The notification to remove. |
+ */ |
+ void RemoveNotification(const std::tr1::shared_ptr<Notification>& value); |
+ |
+ /** |
+ * Marks the notification as shown. |
+ * @param notificationId The notification ID. |
+ */ |
+ void MarkNotificationAsShown(const std::string& notificationId); |
+ |
+ /** |
* Checks if any active filter matches the supplied URL. |
* @param url URL to match. |
* @param contentType Content type of the requested resource. |