Loading gfx/2d/DrawTargetD2D1.cpp +10 −4 Original line number Original line Diff line number Diff line Loading @@ -99,18 +99,21 @@ DrawTargetD2D1::Snapshot() return snapshot.forget(); return snapshot.forget(); } } void bool DrawTargetD2D1::EnsureLuminanceEffect() DrawTargetD2D1::EnsureLuminanceEffect() { { if (mLuminanceEffect.get()) { if (mLuminanceEffect.get()) { return; return true; } } HRESULT hr = mDC->CreateEffect(CLSID_D2D1LuminanceToAlpha, HRESULT hr = mDC->CreateEffect(CLSID_D2D1LuminanceToAlpha, getter_AddRefs(mLuminanceEffect)); getter_AddRefs(mLuminanceEffect)); if (FAILED(hr)) { if (FAILED(hr)) { gfxWarning() << "Failed to create luminance effect. Code: " << hexa(hr); gfxCriticalError() << "Failed to create luminance effect. Code: " << hexa(hr); return false; } } return true; } } already_AddRefed<SourceSurface> already_AddRefed<SourceSurface> Loading @@ -121,7 +124,10 @@ DrawTargetD2D1::IntoLuminanceSource(LuminanceType aLuminanceType, float aOpacity } } // Create the luminance effect // Create the luminance effect EnsureLuminanceEffect(); if (!EnsureLuminanceEffect()) { return DrawTarget::IntoLuminanceSource(aLuminanceType, aOpacity); } mLuminanceEffect->SetInput(0, mBitmap); mLuminanceEffect->SetInput(0, mBitmap); RefPtr<ID2D1Image> luminanceOutput; RefPtr<ID2D1Image> luminanceOutput; Loading gfx/2d/DrawTargetD2D1.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -299,7 +299,7 @@ private: uint32_t mDeviceSeq; uint32_t mDeviceSeq; // List of effects we use // List of effects we use void EnsureLuminanceEffect(); bool EnsureLuminanceEffect(); RefPtr<ID2D1Effect> mLuminanceEffect; RefPtr<ID2D1Effect> mLuminanceEffect; }; }; Loading Loading
gfx/2d/DrawTargetD2D1.cpp +10 −4 Original line number Original line Diff line number Diff line Loading @@ -99,18 +99,21 @@ DrawTargetD2D1::Snapshot() return snapshot.forget(); return snapshot.forget(); } } void bool DrawTargetD2D1::EnsureLuminanceEffect() DrawTargetD2D1::EnsureLuminanceEffect() { { if (mLuminanceEffect.get()) { if (mLuminanceEffect.get()) { return; return true; } } HRESULT hr = mDC->CreateEffect(CLSID_D2D1LuminanceToAlpha, HRESULT hr = mDC->CreateEffect(CLSID_D2D1LuminanceToAlpha, getter_AddRefs(mLuminanceEffect)); getter_AddRefs(mLuminanceEffect)); if (FAILED(hr)) { if (FAILED(hr)) { gfxWarning() << "Failed to create luminance effect. Code: " << hexa(hr); gfxCriticalError() << "Failed to create luminance effect. Code: " << hexa(hr); return false; } } return true; } } already_AddRefed<SourceSurface> already_AddRefed<SourceSurface> Loading @@ -121,7 +124,10 @@ DrawTargetD2D1::IntoLuminanceSource(LuminanceType aLuminanceType, float aOpacity } } // Create the luminance effect // Create the luminance effect EnsureLuminanceEffect(); if (!EnsureLuminanceEffect()) { return DrawTarget::IntoLuminanceSource(aLuminanceType, aOpacity); } mLuminanceEffect->SetInput(0, mBitmap); mLuminanceEffect->SetInput(0, mBitmap); RefPtr<ID2D1Image> luminanceOutput; RefPtr<ID2D1Image> luminanceOutput; Loading
gfx/2d/DrawTargetD2D1.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -299,7 +299,7 @@ private: uint32_t mDeviceSeq; uint32_t mDeviceSeq; // List of effects we use // List of effects we use void EnsureLuminanceEffect(); bool EnsureLuminanceEffect(); RefPtr<ID2D1Effect> mLuminanceEffect; RefPtr<ID2D1Effect> mLuminanceEffect; }; }; Loading