Remove patched webxr

This commit is contained in:
Manish Goregaokar 2019-11-06 09:54:24 -08:00
parent 8cb6145311
commit 51bf8fcfe3
4 changed files with 57 additions and 33 deletions

View file

@ -67,6 +67,7 @@ use surfman::ContextAttributeFlags;
use surfman::ContextAttributes;
use surfman::GLVersion;
use surfman::SurfaceAccess;
use surfman::SurfaceInfo;
use surfman::SurfaceType;
use surfman_chains::SwapChains;
use webrender_traits::{WebrenderExternalImageRegistry, WebrenderImageHandlerType};
@ -438,8 +439,15 @@ impl WebGLThread {
let mut ctx = self
.device
.create_context(&context_descriptor, surface_access, &surface_type)
.create_context(&context_descriptor)
.expect("Failed to create the GL context!");
let surface = self
.device
.create_surface(&ctx, surface_access, &surface_type)
.expect("Failed to create the initial surface!");
self.device
.bind_surface_to_context(&mut ctx, surface)
.unwrap();
// https://github.com/pcwalton/surfman/issues/7
self.device
.make_context_current(&ctx)
@ -490,8 +498,10 @@ impl WebGLThread {
self.device.make_context_current(&ctx).unwrap();
let framebuffer = self
.device
.context_surface_framebuffer_object(&ctx)
.unwrap();
.context_surface_info(&ctx)
.unwrap()
.unwrap()
.framebuffer_object;
gl.bind_framebuffer(gl::FRAMEBUFFER, framebuffer);
gl.viewport(0, 0, size.width as i32, size.height as i32);
gl.scissor(0, 0, size.width as i32, size.height as i32);
@ -695,14 +705,18 @@ impl WebGLThread {
debug!("Rebinding {:?}", swap_id);
framebuffer_rebinding_info.apply(&self.device, &data.ctx, &*data.gl);
let framebuffer = self
let SurfaceInfo {
framebuffer_object,
id,
..
} = self
.device
.context_surface_framebuffer_object(&data.ctx)
.context_surface_info(&data.ctx)
.unwrap()
.unwrap();
debug!(
"... rebound framebuffer {}, new back buffer surface is {:?}",
framebuffer,
self.device.context_surface_id(&data.ctx).unwrap()
framebuffer_object, id
);
}
@ -1392,14 +1406,18 @@ impl WebGLImpl {
},
WebGLCommand::DrawingBufferWidth(ref sender) => {
let size = device
.context_surface_size(&ctx)
.expect("Where's the front buffer?");
.context_surface_info(&ctx)
.unwrap()
.expect("Where's the front buffer?")
.size;
sender.send(size.width).unwrap()
},
WebGLCommand::DrawingBufferHeight(ref sender) => {
let size = device
.context_surface_size(&ctx)
.expect("Where's the front buffer?");
.context_surface_info(&ctx)
.unwrap()
.expect("Where's the front buffer?")
.size;
sender.send(size.height).unwrap()
},
WebGLCommand::Finish(ref sender) => Self::finish(gl, sender),
@ -2139,9 +2157,13 @@ impl WebGLImpl {
id.get()
},
WebGLFramebufferBindingRequest::Explicit(WebGLFramebufferId::Opaque(_)) |
WebGLFramebufferBindingRequest::Default => device
.context_surface_framebuffer_object(ctx)
.expect("No surface attached!"),
WebGLFramebufferBindingRequest::Default => {
device
.context_surface_info(ctx)
.unwrap()
.expect("No surface attached!")
.framebuffer_object
},
};
debug!("WebGLImpl::bind_framebuffer: {:?}", id);
@ -2596,8 +2618,11 @@ impl FramebufferRebindingInfo {
gl.get_integer_v(gl::READ_FRAMEBUFFER_BINDING, &mut read_framebuffer);
gl.get_integer_v(gl::DRAW_FRAMEBUFFER_BINDING, &mut draw_framebuffer);
let context_surface_framebuffer =
device.context_surface_framebuffer_object(context).unwrap();
let context_surface_framebuffer = device
.context_surface_info(context)
.unwrap()
.unwrap()
.framebuffer_object;
let mut flags = FramebufferRebindingFlags::empty();
if context_surface_framebuffer == read_framebuffer[0] as GLuint {
@ -2619,8 +2644,11 @@ impl FramebufferRebindingInfo {
return;
}
let context_surface_framebuffer =
device.context_surface_framebuffer_object(context).unwrap();
let context_surface_framebuffer = device
.context_surface_info(context)
.unwrap()
.unwrap()
.framebuffer_object;
if self
.flags
.contains(FramebufferRebindingFlags::REBIND_READ_FRAMEBUFFER)