| Index: include/AdblockPlus/FilterEngine.h |
| diff --git a/include/AdblockPlus/FilterEngine.h b/include/AdblockPlus/FilterEngine.h |
| index a6fa146265620ebd4faa813689ae907955092c8c..51a822d97eedfd47a2601b18435486c651e9ef8d 100644 |
| --- a/include/AdblockPlus/FilterEngine.h |
| +++ b/include/AdblockPlus/FilterEngine.h |
| @@ -186,6 +186,12 @@ namespace AdblockPlus |
| typedef std::tr1::function<void(const std::string&, const JsValuePtr)> FilterChangeCallback; |
| /** |
| + * Callback type invoked when a new notification should be shown. |
| + * The parameter is the Notification object to be shown. |
| + */ |
| + typedef std::tr1::function<void(const NotificationPtr&)> ShowNotificationCallback; |
| + |
| + /** |
| * Constructor. |
| * @param jsEngine `JsEngine` instance used to run JavaScript code |
| * internally. |
| @@ -238,12 +244,22 @@ namespace AdblockPlus |
| std::vector<SubscriptionPtr> FetchAvailableSubscriptions() const; |
| /** |
| - * Determines which notification is to be shown next. |
| + * Invokes the listener set via SetNotificationAvailableCallback() with the |
| + * next notification to be shown. |
| * @param url URL to match notifications to (optional). |
| - * @return Notification to be shown, or `null` if there is no any. |
| */ |
| - NotificationPtr GetNextNotificationToShow( |
| - const std::string& url = std::string()); |
| + void ShowNextNotification(const std::string& url = std::string()); |
| + |
| + /** |
| + * Sets the callback invoked when a notification should be shown. |
| + * @param callback Callback to invoke. |
| + */ |
| + void SetShowNotificationCallback(const ShowNotificationCallback& value); |
| + |
| + /** |
| + * Removes the callback invoked when a notification should be shown. |
| + */ |
| + void RemoveShowNotificationCallback(); |
| /** |
| * Checks if any active filter matches the supplied URL. |
| @@ -386,6 +402,8 @@ namespace AdblockPlus |
| void UpdateCheckDone(const std::string& eventName, |
| UpdateCheckDoneCallback callback, JsValueList& params); |
| void FilterChanged(FilterChangeCallback callback, JsValueList& params); |
| + void ShowNotification(const ShowNotificationCallback& callback, |
| + const JsValueList& params); |
| }; |
| } |