mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-14 13:55:43 +00:00
Bug 1419440 - Update for API changes in WR PR 2050. r=kats
MozReview-Commit-ID: 4TFZB8XpY6l --HG-- extra : rebase_source : 31be31fa926dd9144378146fe8c1a3e47cb389aa
This commit is contained in:
parent
230457d0d2
commit
f32ca3183a
@ -5,7 +5,6 @@ authors = ["The Mozilla Project Developers"]
|
||||
license = "MPL-2.0"
|
||||
|
||||
[dependencies]
|
||||
webrender_api = {path = "../webrender_api", version = "0.54.0"}
|
||||
rayon = "0.8"
|
||||
thread_profiler = "0.1.1"
|
||||
euclid = "0.15"
|
||||
|
@ -6,7 +6,7 @@ use std::sync::Arc;
|
||||
use std::os::raw::{c_void, c_char, c_float};
|
||||
use gleam::gl;
|
||||
|
||||
use webrender_api::*;
|
||||
use webrender::api::*;
|
||||
use webrender::{ReadPixelsFormat, Renderer, RendererOptions, ThreadListener};
|
||||
use webrender::{ExternalImage, ExternalImageHandler, ExternalImageSource};
|
||||
use webrender::DebugFlags;
|
||||
@ -26,8 +26,6 @@ use core_foundation::string::CFString;
|
||||
#[cfg(target_os = "macos")]
|
||||
use core_graphics::font::CGFont;
|
||||
|
||||
extern crate webrender_api;
|
||||
|
||||
/// cbindgen:field-names=[mNamespace, mHandle]
|
||||
type WrExternalImageBufferType = ExternalImageType;
|
||||
|
||||
@ -78,7 +76,8 @@ pub struct DocumentHandle {
|
||||
|
||||
impl DocumentHandle {
|
||||
pub fn new(api: RenderApi, size: DeviceUintSize) -> DocumentHandle {
|
||||
let doc = api.add_document(size);
|
||||
let layer = 0; //TODO
|
||||
let doc = api.add_document(size, layer);
|
||||
DocumentHandle {
|
||||
api: api,
|
||||
document_id: doc
|
||||
@ -446,23 +445,29 @@ extern "C" {
|
||||
raw_event: usize);
|
||||
}
|
||||
|
||||
impl webrender_api::RenderNotifier for CppNotifier {
|
||||
fn clone(&self) -> Box<webrender_api::RenderNotifier> {
|
||||
impl RenderNotifier for CppNotifier {
|
||||
fn clone(&self) -> Box<RenderNotifier> {
|
||||
Box::new(CppNotifier {
|
||||
window_id: self.window_id,
|
||||
})
|
||||
}
|
||||
|
||||
fn new_frame_ready(&self) {
|
||||
fn wake_up(&self) {
|
||||
unsafe {
|
||||
wr_notifier_new_frame_ready(self.window_id);
|
||||
}
|
||||
}
|
||||
|
||||
fn new_scroll_frame_ready(&self,
|
||||
fn new_document_ready(&self,
|
||||
_: DocumentId,
|
||||
scrolled: bool,
|
||||
composite_needed: bool) {
|
||||
unsafe {
|
||||
if scrolled {
|
||||
wr_notifier_new_scroll_frame_ready(self.window_id, composite_needed);
|
||||
} else {
|
||||
wr_notifier_new_frame_ready(self.window_id);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1166,7 +1171,7 @@ pub unsafe extern "C" fn wr_api_get_namespace(dh: &mut DocumentHandle) -> WrIdNa
|
||||
|
||||
pub struct WebRenderFrameBuilder {
|
||||
pub root_pipeline_id: WrPipelineId,
|
||||
pub dl_builder: webrender_api::DisplayListBuilder,
|
||||
pub dl_builder: DisplayListBuilder,
|
||||
}
|
||||
|
||||
impl WebRenderFrameBuilder {
|
||||
@ -1174,7 +1179,7 @@ impl WebRenderFrameBuilder {
|
||||
content_size: LayoutSize) -> WebRenderFrameBuilder {
|
||||
WebRenderFrameBuilder {
|
||||
root_pipeline_id: root_pipeline_id,
|
||||
dl_builder: webrender_api::DisplayListBuilder::new(root_pipeline_id, content_size),
|
||||
dl_builder: DisplayListBuilder::new(root_pipeline_id, content_size),
|
||||
}
|
||||
}
|
||||
pub fn with_capacity(root_pipeline_id: WrPipelineId,
|
||||
@ -1182,7 +1187,7 @@ impl WebRenderFrameBuilder {
|
||||
capacity: usize) -> WebRenderFrameBuilder {
|
||||
WebRenderFrameBuilder {
|
||||
root_pipeline_id: root_pipeline_id,
|
||||
dl_builder: webrender_api::DisplayListBuilder::with_capacity(root_pipeline_id, content_size, capacity),
|
||||
dl_builder: DisplayListBuilder::with_capacity(root_pipeline_id, content_size, capacity),
|
||||
}
|
||||
}
|
||||
|
||||
@ -1300,7 +1305,7 @@ pub extern "C" fn wr_dp_push_stacking_context(state: &mut WrState,
|
||||
state.frame_builder
|
||||
.dl_builder
|
||||
.push_stacking_context(&prim_info,
|
||||
webrender_api::ScrollPolicy::Scrollable,
|
||||
ScrollPolicy::Scrollable,
|
||||
transform_binding,
|
||||
transform_style,
|
||||
perspective,
|
||||
|
@ -5,7 +5,6 @@
|
||||
#![deny(warnings)]
|
||||
|
||||
extern crate webrender;
|
||||
extern crate webrender_api;
|
||||
extern crate euclid;
|
||||
extern crate app_units;
|
||||
extern crate gleam;
|
||||
|
@ -1,5 +1,5 @@
|
||||
#![allow(improper_ctypes)] // this is needed so that rustc doesn't complain about passing the &Arc<Vec> to an extern function
|
||||
use webrender_api::*;
|
||||
use webrender::api::*;
|
||||
use bindings::{ByteSlice, MutByteSlice, wr_moz2d_render_cb, ArcVecU8};
|
||||
use rayon::ThreadPool;
|
||||
|
||||
|
1
toolkit/library/gtest/rust/Cargo.lock
generated
1
toolkit/library/gtest/rust/Cargo.lock
generated
@ -1549,7 +1549,6 @@ dependencies = [
|
||||
"rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"thread_profiler 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"webrender 0.54.0",
|
||||
"webrender_api 0.54.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
1
toolkit/library/rust/Cargo.lock
generated
1
toolkit/library/rust/Cargo.lock
generated
@ -1561,7 +1561,6 @@ dependencies = [
|
||||
"rayon 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"thread_profiler 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"webrender 0.54.0",
|
||||
"webrender_api 0.54.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
Loading…
Reference in New Issue
Block a user