From a1ebfcfcdb953a18e0b6b6f58c718aafc6b6dab1 Mon Sep 17 00:00:00 2001 From: Matt Woodrow Date: Fri, 14 Aug 2020 09:58:41 +0000 Subject: [PATCH 1/2] Bug 1658858 - Implement ImageRendering filtering parameter for SwCompositor. r=lsalzman Differential Revision: https://phabricator.services.mozilla.com/D86890 [ghsync] From https://hg.mozilla.org/mozilla-central/rev/e1becb3a2fb5239a52815f985df4608a0557c017 --- swgl/src/gl.cc | 3 +-- swgl/src/swgl_fns.rs | 3 +++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/swgl/src/gl.cc b/swgl/src/gl.cc index c4635ea90d..8a325645ed 100644 --- a/swgl/src/gl.cc +++ b/swgl/src/gl.cc @@ -4190,7 +4190,7 @@ void UnlockResource(LockedTexture* resource) { void Composite(LockedTexture* lockedDst, LockedTexture* lockedSrc, GLint srcX, GLint srcY, GLsizei srcWidth, GLsizei srcHeight, GLint dstX, GLint dstY, GLsizei dstWidth, GLsizei dstHeight, - GLboolean opaque, GLboolean flip) { + GLboolean opaque, GLboolean flip, GLenum filter) { if (!lockedDst || !lockedSrc) { return; } @@ -4224,7 +4224,6 @@ void Composite(LockedTexture* lockedDst, LockedTexture* lockedSrc, GLint srcX, IntRect srcReq = {srcX, srcY, srcX + srcWidth, srcY + srcHeight}; IntRect dstReq = {dstX, dstY, dstX + dstWidth, dstY + dstHeight}; - GLenum filter = GL_LINEAR; // TODO if (opaque) { if (!srcReq.same_size(dstReq) && filter == GL_LINEAR) { diff --git a/swgl/src/swgl_fns.rs b/swgl/src/swgl_fns.rs index b5b0ff14f4..7a86b0d9ef 100644 --- a/swgl/src/swgl_fns.rs +++ b/swgl/src/swgl_fns.rs @@ -299,6 +299,7 @@ extern "C" { dst_height: GLsizei, opaque: GLboolean, flip: GLboolean, + filter: GLenum, ); fn CreateContext() -> *mut c_void; fn ReferenceContext(ctx: *mut c_void); @@ -2301,6 +2302,7 @@ impl LockedResource { dst_height: GLsizei, opaque: bool, flip: bool, + filter: GLenum, ) { unsafe { Composite( @@ -2316,6 +2318,7 @@ impl LockedResource { dst_height, opaque as GLboolean, flip as GLboolean, + filter, ); } } From 2c1299bc569bf63c71c8112aa8f9f787036096ae Mon Sep 17 00:00:00 2001 From: Csoregi Natalia Date: Fri, 14 Aug 2020 09:58:49 +0000 Subject: [PATCH 2/2] Backed out 4 changesets (bug 1656817, bug 1656818, bug 1658858) for bustage on RendererOGL.cpp. CLOSED TREE Backed out changeset 9c8e4ec4e47c (bug 1656818) Backed out changeset 92252cfd26de (bug 1656818) Backed out changeset 1bebb79150d6 (bug 1656817) Backed out changeset e1becb3a2fb5 (bug 1658858) [ghsync] From https://hg.mozilla.org/mozilla-central/rev/f9394899c91cfedfa20529d37adecfb643f0ef9e --- swgl/src/gl.cc | 3 ++- swgl/src/swgl_fns.rs | 3 --- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/swgl/src/gl.cc b/swgl/src/gl.cc index 8a325645ed..c4635ea90d 100644 --- a/swgl/src/gl.cc +++ b/swgl/src/gl.cc @@ -4190,7 +4190,7 @@ void UnlockResource(LockedTexture* resource) { void Composite(LockedTexture* lockedDst, LockedTexture* lockedSrc, GLint srcX, GLint srcY, GLsizei srcWidth, GLsizei srcHeight, GLint dstX, GLint dstY, GLsizei dstWidth, GLsizei dstHeight, - GLboolean opaque, GLboolean flip, GLenum filter) { + GLboolean opaque, GLboolean flip) { if (!lockedDst || !lockedSrc) { return; } @@ -4224,6 +4224,7 @@ void Composite(LockedTexture* lockedDst, LockedTexture* lockedSrc, GLint srcX, IntRect srcReq = {srcX, srcY, srcX + srcWidth, srcY + srcHeight}; IntRect dstReq = {dstX, dstY, dstX + dstWidth, dstY + dstHeight}; + GLenum filter = GL_LINEAR; // TODO if (opaque) { if (!srcReq.same_size(dstReq) && filter == GL_LINEAR) { diff --git a/swgl/src/swgl_fns.rs b/swgl/src/swgl_fns.rs index 7a86b0d9ef..b5b0ff14f4 100644 --- a/swgl/src/swgl_fns.rs +++ b/swgl/src/swgl_fns.rs @@ -299,7 +299,6 @@ extern "C" { dst_height: GLsizei, opaque: GLboolean, flip: GLboolean, - filter: GLenum, ); fn CreateContext() -> *mut c_void; fn ReferenceContext(ctx: *mut c_void); @@ -2302,7 +2301,6 @@ impl LockedResource { dst_height: GLsizei, opaque: bool, flip: bool, - filter: GLenum, ) { unsafe { Composite( @@ -2318,7 +2316,6 @@ impl LockedResource { dst_height, opaque as GLboolean, flip as GLboolean, - filter, ); } }