Commit 2bcc8b96 authored by sotaro's avatar sotaro
Browse files

Bug 1477608 - Reuse same ExternalImageId for different video frames if possible r=jrmuizel

parent 8f246a4b
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -146,5 +146,12 @@ GPUVideoTextureHost::PushDisplayItems(wr::DisplayListBuilder& aBuilder,
                                         aImageKeys);
}

bool
GPUVideoTextureHost::SupportsWrNativeTexture()
{
  MOZ_ASSERT(mWrappedTextureHost);
  return mWrappedTextureHost->SupportsWrNativeTexture();
}

} // namespace layers
} // namespace mozilla
+2 −0
Original line number Diff line number Diff line
@@ -62,6 +62,8 @@ public:
                                wr::ImageRendering aFilter,
                                const Range<wr::ImageKey>& aImageKeys) override;

  virtual bool SupportsWrNativeTexture() override;

protected:
  RefPtr<TextureHost> mWrappedTextureHost;
};
+2 −0
Original line number Diff line number Diff line
@@ -674,6 +674,8 @@ public:

  virtual bool IsDirectMap() { return false; }

  virtual bool SupportsWrNativeTexture() { return false; }

protected:
  virtual void ReadUnlock();

+4 −0
Original line number Diff line number Diff line
@@ -371,6 +371,8 @@ public:
                                wr::ImageRendering aFilter,
                                const Range<wr::ImageKey>& aImageKeys) override;

  virtual bool SupportsWrNativeTexture() override { return true; }

protected:
  bool LockInternal();
  void UnlockInternal();
@@ -433,6 +435,8 @@ public:
                                wr::ImageRendering aFilter,
                                const Range<wr::ImageKey>& aImageKeys) override;

  virtual bool SupportsWrNativeTexture() override { return true; }

private:
  bool EnsureTextureSource();

+2 −0
Original line number Diff line number Diff line
@@ -251,6 +251,7 @@ EXPORTS.mozilla.layers += [
    'wr/WebRenderScrollData.h',
    'wr/WebRenderScrollDataWrapper.h',
    'wr/WebRenderTextureHost.h',
    'wr/WebRenderTextureHostWrapper.h',
    'wr/WebRenderUserData.h',
]

@@ -489,6 +490,7 @@ UNIFIED_SOURCES += [
    'wr/WebRenderLayerManager.cpp',
    'wr/WebRenderLayersLogging.cpp',
    'wr/WebRenderScrollData.cpp',
    'wr/WebRenderTextureHostWrapper.cpp',
    'wr/WebRenderUserData.cpp',
    # XXX here are some unified build error.
    #'wr/WebRenderTextureHost.cpp'
Loading