aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/script_thread.rs
diff options
context:
space:
mode:
authorZakor Gyula <gyula.zakor@h-lab.eu>2019-11-10 14:56:22 +0100
committerZakor Gyula <gyula.zakor@h-lab.eu>2019-11-21 08:30:26 +0100
commit12893aa0102f220f411b273a36ac1b4e25fa0ab7 (patch)
tree37362e455b8a1352fc88d39f8eb87170754c5d06 /components/script/script_thread.rs
parent47e39af0f36227e8e98b3dc3511c225192bf3736 (diff)
downloadservo-12893aa0102f220f411b273a36ac1b4e25fa0ab7.tar.gz
servo-12893aa0102f220f411b273a36ac1b4e25fa0ab7.zip
Initial implementation of WebGPU API
Diffstat (limited to 'components/script/script_thread.rs')
-rw-r--r--components/script/script_thread.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/components/script/script_thread.rs b/components/script/script_thread.rs
index 81784d73a6c..934196ce120 100644
--- a/components/script/script_thread.rs
+++ b/components/script/script_thread.rs
@@ -163,6 +163,7 @@ use style::dom::OpaqueNode;
use style::thread_state::{self, ThreadState};
use time::{at_utc, get_time, precise_time_ns, Timespec};
use url::Position;
+use webgpu::WebGPU;
use webrender_api::units::LayoutPixel;
use webrender_api::{DocumentId, RenderApiSender};
use webvr_traits::{WebVREvent, WebVRMsg};
@@ -629,6 +630,9 @@ pub struct ScriptThread {
/// A handle to the WebGL thread
webgl_chan: Option<WebGLPipeline>,
+ /// A handle to the WebGPU threads
+ webgpu: Option<WebGPU>,
+
/// A handle to the webvr thread, if available
webvr_chan: Option<IpcSender<WebVRMsg>>,
@@ -1338,6 +1342,7 @@ impl ScriptThread {
layout_to_constellation_chan: state.layout_to_constellation_chan,
webgl_chan: state.webgl_chan,
+ webgpu: state.webgpu,
webvr_chan: state.webvr_chan,
webxr_registry: state.webxr_registry,
@@ -3238,6 +3243,7 @@ impl ScriptThread {
incomplete.navigation_start,
incomplete.navigation_start_precise,
self.webgl_chan.as_ref().map(|chan| chan.channel()),
+ self.webgpu.clone(),
self.webvr_chan.clone(),
self.webxr_registry.clone(),
self.microtask_queue.clone(),