| Index: third_party/WebKit/Source/modules/notifications/NotificationResourcesLoader.h
|
| diff --git a/third_party/WebKit/Source/modules/notifications/NotificationResourcesLoader.h b/third_party/WebKit/Source/modules/notifications/NotificationResourcesLoader.h
|
| index 4e344090a7c85f00d3c31fd333b1d799b40bfd07..54f04886fbc4d61838ed4ec90ce1784da921fdb5 100644
|
| --- a/third_party/WebKit/Source/modules/notifications/NotificationResourcesLoader.h
|
| +++ b/third_party/WebKit/Source/modules/notifications/NotificationResourcesLoader.h
|
| @@ -11,42 +11,40 @@
|
| #include "platform/heap/Handle.h"
|
| #include "platform/heap/HeapAllocator.h"
|
| #include "platform/heap/ThreadState.h"
|
| +#include "public/platform/modules/notifications/notification.mojom-blink.h"
|
| +#include "public/platform/modules/notifications/notification_resources.mojom-blink.h"
|
| #include "third_party/skia/include/core/SkBitmap.h"
|
| #include "wtf/Functional.h"
|
| #include "wtf/OwnPtr.h"
|
| #include "wtf/PassOwnPtr.h"
|
| #include "wtf/Vector.h"
|
| -#include <memory>
|
|
|
| namespace blink {
|
|
|
| class ExecutionContext;
|
| -struct WebNotificationData;
|
| -struct WebNotificationResources;
|
|
|
| -// Fetches the resources specified in a given WebNotificationData. Uses a
|
| -// callback to notify the caller when all fetches have finished.
|
| +// Fetches the resources specified in a given notification. Uses a callback to
|
| +// notify the caller when all fetches have finished.
|
| class MODULES_EXPORT NotificationResourcesLoader final : public GarbageCollectedFinalized<NotificationResourcesLoader> {
|
| USING_PRE_FINALIZER(NotificationResourcesLoader, stop);
|
| public:
|
| - // Called when all fetches have finished. Passes a pointer to the
|
| - // NotificationResourcesLoader so callers that use multiple loaders can use
|
| - // the same function to handle the callbacks.
|
| - using CompletionCallback = Function<void(NotificationResourcesLoader*)>;
|
| + // Called when all fetches have finished. Passes a pointer to the loader so
|
| + // that callers having multiple loaders can distinguish them, as well as the
|
| + // notification for which resources have been loaded.
|
| + using CompletionCallback = Function<void(NotificationResourcesLoader*, mojom::blink::NotificationPtr)>;
|
|
|
| explicit NotificationResourcesLoader(PassOwnPtr<CompletionCallback>);
|
| ~NotificationResourcesLoader();
|
|
|
| - // Starts fetching the resources specified in the given WebNotificationData.
|
| - // If all the urls for the resources are empty or invalid,
|
| - // |m_completionCallback| will be run synchronously, otherwise it will be
|
| - // run asynchronously when all fetches have finished. Should not be called
|
| - // more than once.
|
| - void start(ExecutionContext*, const WebNotificationData&);
|
| + // Starts fetching the resources specified in the given notification. If all
|
| + // the urls for the resources are empty or invalid, |m_completionCallback|
|
| + // will be run synchronously, otherwise it will be run asynchronously when
|
| + // all fetches have finished. Should not be called more than once.
|
| + void start(ExecutionContext*, mojom::blink::NotificationPtr notification);
|
|
|
| - // Returns a new WebNotificationResources populated with the resources that
|
| - // have been fetched.
|
| - std::unique_ptr<WebNotificationResources> getResources() const;
|
| + // Returns a new Mojo NotificationResources object populated with the
|
| + // resources that have been fetched.
|
| + mojom::blink::NotificationResourcesPtr getResources() const;
|
|
|
| // Stops every loader in |m_imageLoaders|. This is also used as the
|
| // pre-finalizer.
|
| @@ -64,7 +62,9 @@ private:
|
| // there are no more pending requests.
|
| void didFinishRequest();
|
|
|
| - bool m_started;
|
| + // The notification for which resources are being loaded.
|
| + mojom::blink::NotificationPtr m_notification;
|
| +
|
| OwnPtr<CompletionCallback> m_completionCallback;
|
| int m_pendingRequestCount;
|
| HeapVector<Member<NotificationImageLoader>> m_imageLoaders;
|
|
|