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:
Dzmitry Malyshau 2017-11-23 09:39:42 -05:00
parent 230457d0d2
commit f32ca3183a
6 changed files with 20 additions and 19 deletions

View File

@ -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"

View File

@ -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,
composite_needed: bool) {
fn new_document_ready(&self,
_: DocumentId,
scrolled: bool,
composite_needed: bool) {
unsafe {
wr_notifier_new_scroll_frame_ready(self.window_id, composite_needed);
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,

View File

@ -5,7 +5,6 @@
#![deny(warnings)]
extern crate webrender;
extern crate webrender_api;
extern crate euclid;
extern crate app_units;
extern crate gleam;

View File

@ -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;

View File

@ -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]]

View File

@ -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]]