mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Remove patched webxr
This commit is contained in:
parent
8cb6145311
commit
51bf8fcfe3
4 changed files with 57 additions and 33 deletions
8
Cargo.lock
generated
8
Cargo.lock
generated
|
@ -5070,7 +5070,7 @@ dependencies = [
|
|||
[[package]]
|
||||
name = "surfman"
|
||||
version = "0.23.0"
|
||||
source = "git+https://github.com/jdm/rust-offscreen-rendering-context?branch=servo#dc5cf4369105f566fe95daac75bce748ae1a1c41"
|
||||
source = "git+https://github.com/pcwalton/surfman#ffc4e4fda0b58554d4029f0d3d9abe85b42307ed"
|
||||
dependencies = [
|
||||
"bitflags",
|
||||
"cgl 0.3.2",
|
||||
|
@ -5097,7 +5097,7 @@ dependencies = [
|
|||
[[package]]
|
||||
name = "surfman-chains"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/asajeffrey/surfman-chains#13576ac0cd1573057472ba85ce520bd881e856dc"
|
||||
source = "git+https://github.com/asajeffrey/surfman-chains#6b66ad3d4325e76ce9ffcbd79eaf5b5d518902fb"
|
||||
dependencies = [
|
||||
"euclid",
|
||||
"fnv",
|
||||
|
@ -5996,7 +5996,7 @@ dependencies = [
|
|||
[[package]]
|
||||
name = "webxr"
|
||||
version = "0.0.1"
|
||||
source = "git+https://github.com/jdm/webxr?branch=no-gl-readback2#12e04bafc2c692bce303b2a9fa5e811e76fbaa0e"
|
||||
source = "git+https://github.com/servo/webxr#6545972b8305642b384702726e11198ce5e96be8"
|
||||
dependencies = [
|
||||
"bindgen",
|
||||
"euclid",
|
||||
|
@ -6015,7 +6015,7 @@ dependencies = [
|
|||
[[package]]
|
||||
name = "webxr-api"
|
||||
version = "0.0.1"
|
||||
source = "git+https://github.com/jdm/webxr?branch=no-gl-readback2#12e04bafc2c692bce303b2a9fa5e811e76fbaa0e"
|
||||
source = "git+https://github.com/servo/webxr#6545972b8305642b384702726e11198ce5e96be8"
|
||||
dependencies = [
|
||||
"euclid",
|
||||
"ipc-channel",
|
||||
|
|
|
@ -29,12 +29,3 @@ opt-level = 3
|
|||
mio = { git = "https://github.com/servo/mio.git", branch = "servo" }
|
||||
# https://github.com/retep998/winapi-rs/pull/816
|
||||
winapi = { git = "https://github.com/servo/winapi-rs", branch = "patch-1" }
|
||||
|
||||
|
||||
# temporary
|
||||
[patch."https://github.com/pcwalton/surfman"]
|
||||
surfman = { git = "https://github.com/jdm/rust-offscreen-rendering-context", branch = "servo" }
|
||||
|
||||
[patch."https://github.com/servo/webxr"]
|
||||
webxr = { git = "https://github.com/jdm/webxr", branch = "no-gl-readback2" }
|
||||
webxr-api = { git = "https://github.com/jdm/webxr", branch = "no-gl-readback2" }
|
||||
|
|
|
@ -17,6 +17,7 @@ use std::sync::{Arc, Mutex};
|
|||
use surfman::platform::generic::universal::context::Context;
|
||||
use surfman::platform::generic::universal::device::Device;
|
||||
use surfman::platform::generic::universal::surface::SurfaceTexture;
|
||||
use surfman::SurfaceInfo;
|
||||
use surfman_chains::SwapChains;
|
||||
use webrender_traits::{WebrenderExternalImageApi, WebrenderExternalImageRegistry};
|
||||
use webxr_api::SwapChainId as WebXRSwapChainId;
|
||||
|
@ -105,8 +106,12 @@ impl WebGLExternalImages {
|
|||
debug!("... locking chain {:?}", id);
|
||||
let front_buffer = self.swap_chains.get(id)?.take_surface()?;
|
||||
|
||||
debug!("... getting texture for surface {:?}", front_buffer.id());
|
||||
let size = front_buffer.size();
|
||||
let SurfaceInfo {
|
||||
id: front_buffer_id,
|
||||
size,
|
||||
..
|
||||
} = self.device.surface_info(&front_buffer);
|
||||
debug!("... getting texture for surface {:?}", front_buffer_id);
|
||||
let front_buffer_texture = self
|
||||
.device
|
||||
.create_surface_texture(&mut self.context, front_buffer)
|
||||
|
|
|
@ -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)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue