Autogenerated by:
cp dom/.clang-format image/ && mach format image/**.{cpp,h,mm}
No manual changes required.
Differential Revision: https://phabricator.services.mozilla.com/D311693
46 lines
1.4 KiB
C++
46 lines
1.4 KiB
C++
/* 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 mozilla_image_remote_RemoteImageProtocolHandler_h
|
|
#define mozilla_image_remote_RemoteImageProtocolHandler_h
|
|
|
|
#include "mozilla/AlreadyAddRefed.h"
|
|
#include "mozilla/ClearOnShutdown.h"
|
|
#include "mozilla/MozPromise.h"
|
|
#include "mozilla/StaticPtr.h"
|
|
#include "mozilla/dom/ContentParent.h"
|
|
#include "nsIProtocolHandler.h"
|
|
#include "nsThreadUtils.h"
|
|
#include "nsWeakReference.h"
|
|
|
|
namespace mozilla::image {
|
|
|
|
class RemoteImageProtocolHandler : public nsIProtocolHandler,
|
|
public nsSupportsWeakReference {
|
|
public:
|
|
NS_DECL_ISUPPORTS
|
|
NS_DECL_NSIPROTOCOLHANDLER
|
|
|
|
static already_AddRefed<RemoteImageProtocolHandler> GetSingleton() {
|
|
MOZ_ASSERT(NS_IsMainThread());
|
|
if (MOZ_UNLIKELY(!sSingleton)) {
|
|
sSingleton = new RemoteImageProtocolHandler();
|
|
ClearOnShutdown(&sSingleton);
|
|
}
|
|
return do_AddRef(sSingleton);
|
|
}
|
|
|
|
static already_AddRefed<gfx::SourceSurface> GetImageSurface(
|
|
imgIContainer* aContainer, gfx::IntSize aSize, ColorScheme aColorScheme);
|
|
|
|
private:
|
|
virtual ~RemoteImageProtocolHandler() = default;
|
|
|
|
static StaticRefPtr<RemoteImageProtocolHandler> sSingleton;
|
|
};
|
|
|
|
} // namespace mozilla::image
|
|
|
|
#endif // mozilla_image_remote_RemoteImageProtocolHandler_h
|