aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout/layout_task.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/layout/layout_task.rs')
-rw-r--r--components/layout/layout_task.rs31
1 files changed, 15 insertions, 16 deletions
diff --git a/components/layout/layout_task.rs b/components/layout/layout_task.rs
index 07b84a3505c..0bbfbb71746 100644
--- a/components/layout/layout_task.rs
+++ b/components/layout/layout_task.rs
@@ -58,7 +58,6 @@ use selectors::parser::PseudoElement;
use sequential;
use serde_json;
use std::borrow::ToOwned;
-use std::cell::Cell;
use std::collections::HashMap;
use std::collections::hash_state::DefaultState;
use std::mem::transmute;
@@ -219,7 +218,7 @@ pub struct LayoutTask {
pub font_cache_task: FontCacheTask,
/// Is this the first reflow in this LayoutTask?
- pub first_reflow: Cell<bool>,
+ pub first_reflow: bool,
/// To receive a canvas renderer associated to a layer, this message is propagated
/// to the paint chan
@@ -428,7 +427,7 @@ impl LayoutTask {
mem_profiler_chan: mem_profiler_chan,
image_cache_task: image_cache_task.clone(),
font_cache_task: font_cache_task,
- first_reflow: Cell::new(true),
+ first_reflow: true,
image_cache_receiver: image_cache_receiver,
image_cache_sender: ImageCacheChan(ipc_image_cache_sender),
font_cache_receiver: font_cache_receiver,
@@ -461,7 +460,7 @@ impl LayoutTask {
}
/// Starts listening on the port.
- fn start(self) {
+ fn start(mut self) {
let rw_data = self.rw_data.clone();
let mut possibly_locked_rw_data = Some(rw_data.lock().unwrap());
let mut rw_data = RwData {
@@ -498,7 +497,7 @@ impl LayoutTask {
}
/// Receives and dispatches messages from the script and constellation tasks
- fn handle_request<'a, 'b>(&self, possibly_locked_rw_data: &mut RwData<'a, 'b>) -> bool {
+ fn handle_request<'a, 'b>(&mut self, possibly_locked_rw_data: &mut RwData<'a, 'b>) -> bool {
enum Request {
FromPipeline(LayoutControlMsg),
FromScript(Msg),
@@ -568,7 +567,7 @@ impl LayoutTask {
/// repaint.
/// TODO: In the future we could detect if the image size hasn't changed
/// since last time and avoid performing a complete layout pass.
- fn repaint<'a, 'b>(&self, possibly_locked_rw_data: &mut RwData<'a, 'b>) -> bool {
+ fn repaint<'a, 'b>(&mut self, possibly_locked_rw_data: &mut RwData<'a, 'b>) -> bool {
let mut rw_data = possibly_locked_rw_data.lock();
let reflow_info = Reflow {
@@ -590,7 +589,7 @@ impl LayoutTask {
}
/// Receives and dispatches messages from other tasks.
- fn handle_request_helper<'a, 'b>(&self,
+ fn handle_request_helper<'a, 'b>(&mut self,
request: Msg,
possibly_locked_rw_data: &mut RwData<'a, 'b>)
-> bool {
@@ -1085,7 +1084,7 @@ impl LayoutTask {
}
/// The high-level routine that performs layout tasks.
- fn handle_reflow<'a, 'b>(&self,
+ fn handle_reflow<'a, 'b>(&mut self,
data: &ScriptReflow,
possibly_locked_rw_data: &mut RwData<'a, 'b>) {
// Make sure that every return path from this method joins the script task,
@@ -1232,7 +1231,7 @@ impl LayoutTask {
}
}
- fn set_visible_rects<'a, 'b>(&self,
+ fn set_visible_rects<'a, 'b>(&mut self,
new_visible_rects: Vec<(LayerId, Rect<Au>)>,
possibly_locked_rw_data: &mut RwData<'a, 'b>)
-> bool {
@@ -1289,12 +1288,12 @@ impl LayoutTask {
true
}
- fn tick_all_animations<'a, 'b>(&self, possibly_locked_rw_data: &mut RwData<'a, 'b>) {
+ fn tick_all_animations<'a, 'b>(&mut self, possibly_locked_rw_data: &mut RwData<'a, 'b>) {
let mut rw_data = possibly_locked_rw_data.lock();
animation::tick_all_animations(self, &mut rw_data)
}
- pub fn tick_animations(&self, rw_data: &mut LayoutTaskData) {
+ pub fn tick_animations(&mut self, rw_data: &mut LayoutTaskData) {
let reflow_info = Reflow {
goal: ReflowGoal::ForDisplay,
page_clip_rect: MAX_RECT,
@@ -1322,7 +1321,7 @@ impl LayoutTask {
&mut layout_context);
}
- fn reflow_with_newly_loaded_web_font<'a, 'b>(&self, possibly_locked_rw_data: &mut RwData<'a, 'b>) {
+ fn reflow_with_newly_loaded_web_font<'a, 'b>(&mut self, possibly_locked_rw_data: &mut RwData<'a, 'b>) {
let mut rw_data = possibly_locked_rw_data.lock();
font_context::invalidate_font_caches();
@@ -1345,7 +1344,7 @@ impl LayoutTask {
&mut layout_context);
}
- fn perform_post_style_recalc_layout_passes<'a>(&'a self,
+ fn perform_post_style_recalc_layout_passes<'a>(&'a mut self,
data: &Reflow,
rw_data: &mut LayoutTaskData,
layout_context: &mut SharedLayoutContext) {
@@ -1398,7 +1397,7 @@ impl LayoutTask {
}
}
- fn perform_post_main_layout_passes<'a>(&'a self,
+ fn perform_post_main_layout_passes<'a>(&'a mut self,
data: &Reflow,
rw_data: &mut LayoutTaskData,
layout_context: &mut SharedLayoutContext) {
@@ -1408,7 +1407,7 @@ impl LayoutTask {
&mut root_flow,
&mut *layout_context,
rw_data);
- self.first_reflow.set(false);
+ self.first_reflow = false;
if opts::get().trace_layout {
layout_debug::end_trace();
@@ -1456,7 +1455,7 @@ impl LayoutTask {
} else {
TimerMetadataFrameType::RootWindow
},
- incremental: if self.first_reflow.get() {
+ incremental: if self.first_reflow {
TimerMetadataReflowType::FirstReflow
} else {
TimerMetadataReflowType::Incremental