diff --git a/components/compositing/compositor.rs b/components/compositing/compositor.rs index 134b7ee0af1..f9cd4f1007e 100644 --- a/components/compositing/compositor.rs +++ b/components/compositing/compositor.rs @@ -113,8 +113,8 @@ pub struct IOCompositor { /// many times for a single page. got_load_complete_message: bool, - /// Whether we have gotten a `SetIds` message. - got_set_ids_message: bool, + /// Whether we have received a `SetFrameTree` message. + got_set_frame_tree_message: bool, /// The channel on which messages can be sent to the constellation. constellation_chan: ConstellationChan, @@ -195,7 +195,7 @@ impl IOCompositor { ready_states: HashMap::new(), paint_states: HashMap::new(), got_load_complete_message: false, - got_set_ids_message: false, + got_set_frame_tree_message: false, constellation_chan: constellation_chan, time_profiler_chan: time_profiler_chan, memory_profiler_chan: memory_profiler_chan, @@ -268,7 +268,7 @@ impl IOCompositor { self.remove_outstanding_paint_msg(); } - (Msg::SetIds(frame_tree, response_chan, new_constellation_chan), + (Msg::SetFrameTree(frame_tree, response_chan, new_constellation_chan), ShutdownState::NotShuttingDown) => { self.set_frame_tree(&frame_tree, response_chan, @@ -282,8 +282,8 @@ impl IOCompositor { response_channel.send(()); } - (Msg::CreateOrUpdateRootLayer(layer_properties), ShutdownState::NotShuttingDown) => { - self.create_or_update_root_layer(layer_properties); + (Msg::CreateOrUpdateBaseLayer(layer_properties), ShutdownState::NotShuttingDown) => { + self.create_or_update_base_layer(layer_properties); } (Msg::CreateOrUpdateDescendantLayer(layer_properties), @@ -300,9 +300,9 @@ impl IOCompositor { self.set_layer_origin(pipeline_id, layer_id, origin); } - (Msg::Paint(pipeline_id, epoch, replies), ShutdownState::NotShuttingDown) => { + (Msg::AssignPaintedBuffers(pipeline_id, epoch, replies), ShutdownState::NotShuttingDown) => { for (layer_id, new_layer_buffer_set) in replies.into_iter() { - self.paint(pipeline_id, layer_id, new_layer_buffer_set, epoch); + self.assign_painted_buffers(pipeline_id, layer_id, new_layer_buffer_set, epoch); } self.remove_outstanding_paint_msg(); } @@ -464,7 +464,7 @@ impl IOCompositor { self.constellation_chan = new_constellation_chan; self.send_window_size(); - self.got_set_ids_message = true; + self.got_set_frame_tree_message = true; self.composite_if_necessary(); } @@ -540,24 +540,24 @@ impl IOCompositor { } } - fn create_or_update_root_layer(&mut self, layer_properties: LayerProperties) { - let need_new_root_layer = !self.update_layer_if_exists(layer_properties); - if need_new_root_layer { + fn create_or_update_base_layer(&mut self, layer_properties: LayerProperties) { + let need_new_base_layer = !self.update_layer_if_exists(layer_properties); + if need_new_base_layer { let root_layer = self.find_pipeline_root_layer(layer_properties.pipeline_id); root_layer.update_layer_except_bounds(layer_properties); let root_layer_pipeline = root_layer.extra_data.borrow().pipeline.clone(); - let first_child = CompositorData::new_layer( + let base_layer = CompositorData::new_layer( root_layer_pipeline.clone(), layer_properties, WantsScrollEventsFlag::DoesntWantScrollEvents, opts::get().tile_size); - // Add the first child / base layer to the front of the child list, so that - // child iframe layers are painted on top of the base layer. These iframe - // layers were added previously when creating the layer tree skeleton in - // create_frame_tree_root_layers. - root_layer.children().insert(0, first_child); + // Add the base layer to the front of the child list, so that child + // iframe layers are painted on top of the base layer. These iframe + // layers were added previously when creating the layer tree + // skeleton in create_frame_tree_root_layers. + root_layer.children().insert(0, base_layer); } self.scroll_layer_to_fragment_point_if_necessary(layer_properties.pipeline_id, @@ -654,13 +654,13 @@ impl IOCompositor { self.send_buffer_requests_for_all_layers(); } - fn paint(&mut self, - pipeline_id: PipelineId, - layer_id: LayerId, - new_layer_buffer_set: Box, - epoch: Epoch) { + fn assign_painted_buffers(&mut self, + pipeline_id: PipelineId, + layer_id: LayerId, + new_layer_buffer_set: Box, + epoch: Epoch) { match self.find_layer_with_pipeline_and_layer_id(pipeline_id, layer_id) { - Some(layer) => self.paint_to_layer(layer, new_layer_buffer_set, epoch), + Some(layer) => self.assign_painted_buffers_to_layer(layer, new_layer_buffer_set, epoch), None => { match self.paint_channels.entry(pipeline_id) { Occupied(entry) => { @@ -673,10 +673,10 @@ impl IOCompositor { } } - fn paint_to_layer(&mut self, - layer: Rc>, - new_layer_buffer_set: Box, - epoch: Epoch) { + fn assign_painted_buffers_to_layer(&mut self, + layer: Rc>, + new_layer_buffer_set: Box, + epoch: Epoch) { debug!("compositor received new frame at size {}x{}", self.window_size.width.get(), self.window_size.height.get()); @@ -1038,7 +1038,7 @@ impl IOCompositor { return false; } - if !self.got_set_ids_message { + if !self.got_set_frame_tree_message { return false; } @@ -1295,12 +1295,12 @@ impl CompositorEventListener for IOCompositor where Window: Wind fn repaint_synchronously(&mut self) { while self.shutdown_state != ShutdownState::ShuttingDown { let msg = self.port.recv_compositor_msg(); - let is_paint = match msg { - Msg::Paint(..) => true, + let received_new_buffers = match msg { + Msg::AssignPaintedBuffers(..) => true, _ => false, }; let keep_going = self.handle_browser_message(msg); - if is_paint { + if received_new_buffers { self.composite(); break } @@ -1318,7 +1318,7 @@ impl CompositorEventListener for IOCompositor where Window: Wind } // Drain compositor port, sometimes messages contain channels that are blocking - // another task from finishing (i.e. SetIds) + // another task from finishing (i.e. SetFrameTree). while self.port.try_recv_compositor_msg().is_some() {} // Tell the profiler, memory profiler, and scrolling timer to shut down. diff --git a/components/compositing/compositor_task.rs b/components/compositing/compositor_task.rs index 0c1fed90ece..aa4424e2214 100644 --- a/components/compositing/compositor_task.rs +++ b/components/compositing/compositor_task.rs @@ -130,11 +130,11 @@ impl PaintListener for Box { port.recv() } - fn paint(&mut self, - pipeline_id: PipelineId, - epoch: Epoch, - replies: Vec<(LayerId, Box)>) { - self.send(Msg::Paint(pipeline_id, epoch, replies)); + fn assign_painted_buffers(&mut self, + pipeline_id: PipelineId, + epoch: Epoch, + replies: Vec<(LayerId, Box)>) { + self.send(Msg::AssignPaintedBuffers(pipeline_id, epoch, replies)); } fn initialize_layers_for_pipeline(&mut self, @@ -148,7 +148,7 @@ impl PaintListener for Box { for metadata in metadata.iter() { let layer_properties = LayerProperties::new(pipeline_id, epoch, metadata); if first { - self.send(Msg::CreateOrUpdateRootLayer(layer_properties)); + self.send(Msg::CreateOrUpdateBaseLayer(layer_properties)); first = false } else { self.send(Msg::CreateOrUpdateDescendantLayer(layer_properties)); @@ -171,8 +171,8 @@ pub enum Msg { Exit(Sender<()>), /// Informs the compositor that the constellation has completed shutdown. - /// Required because the constellation can have pending calls to make (e.g. SetIds) - /// at the time that we send it an ExitMsg. + /// Required because the constellation can have pending calls to make + /// (e.g. SetFrameTree) at the time that we send it an ExitMsg. ShutdownComplete, /// Requests the compositor's graphics metadata. Graphics metadata is what the painter needs @@ -184,7 +184,7 @@ pub enum Msg { /// Tells the compositor to create the root layer for a pipeline if necessary (i.e. if no layer /// with that ID exists). - CreateOrUpdateRootLayer(LayerProperties), + CreateOrUpdateBaseLayer(LayerProperties), /// Tells the compositor to create a descendant layer for a pipeline if necessary (i.e. if no /// layer with that ID exists). CreateOrUpdateDescendantLayer(LayerProperties), @@ -192,8 +192,8 @@ pub enum Msg { SetLayerOrigin(PipelineId, LayerId, Point2D), /// Scroll a page in a window ScrollFragmentPoint(PipelineId, LayerId, Point2D), - /// Requests that the compositor paint the given layer buffer set for the given page size. - Paint(PipelineId, Epoch, Vec<(LayerId, Box)>), + /// Requests that the compositor assign the painted buffers to the given layers. + AssignPaintedBuffers(PipelineId, Epoch, Vec<(LayerId, Box)>), /// Alerts the compositor to the current status of page loading. ChangeReadyState(PipelineId, ReadyState), /// Alerts the compositor to the current status of painting. @@ -204,8 +204,8 @@ pub enum Msg { ChangePageLoadData(FrameId, LoadData), /// Alerts the compositor that a `PaintMsg` has been discarded. PaintMsgDiscarded, - /// Sets the channel to the current layout and paint tasks, along with their ID. - SetIds(SendableFrameTree, Sender<()>, ConstellationChan), + /// Replaces the current frame tree, typically called during main frame navigation. + SetFrameTree(SendableFrameTree, Sender<()>, ConstellationChan), /// Sends an updated version of the frame tree. FrameTreeUpdate(FrameTreeDiff, Sender<()>), /// The load of a page has completed. @@ -227,18 +227,18 @@ impl Show for Msg { Msg::Exit(..) => write!(f, "Exit"), Msg::ShutdownComplete(..) => write!(f, "ShutdownComplete"), Msg::GetGraphicsMetadata(..) => write!(f, "GetGraphicsMetadata"), - Msg::CreateOrUpdateRootLayer(..) => write!(f, "CreateOrUpdateRootLayer"), + Msg::CreateOrUpdateBaseLayer(..) => write!(f, "CreateOrUpdateBaseLayer"), Msg::CreateOrUpdateDescendantLayer(..) => write!(f, "CreateOrUpdateDescendantLayer"), Msg::SetLayerOrigin(..) => write!(f, "SetLayerOrigin"), Msg::ScrollFragmentPoint(..) => write!(f, "ScrollFragmentPoint"), - Msg::Paint(..) => write!(f, "Paint"), + Msg::AssignPaintedBuffers(..) => write!(f, "AssignPaintedBuffers"), Msg::ChangeReadyState(..) => write!(f, "ChangeReadyState"), Msg::ChangePaintState(..) => write!(f, "ChangePaintState"), Msg::ChangePageTitle(..) => write!(f, "ChangePageTitle"), Msg::ChangePageLoadData(..) => write!(f, "ChangePageLoadData"), Msg::PaintMsgDiscarded(..) => write!(f, "PaintMsgDiscarded"), Msg::FrameTreeUpdate(..) => write!(f, "FrameTreeUpdate"), - Msg::SetIds(..) => write!(f, "SetIds"), + Msg::SetFrameTree(..) => write!(f, "SetFrameTree"), Msg::LoadComplete => write!(f, "LoadComplete"), Msg::ScrollTimeout(..) => write!(f, "ScrollTimeout"), Msg::KeyEvent(..) => write!(f, "KeyEvent"), diff --git a/components/compositing/constellation.rs b/components/compositing/constellation.rs index 06f0289f338..5bc565b7f9a 100644 --- a/components/compositing/constellation.rs +++ b/components/compositing/constellation.rs @@ -1021,10 +1021,10 @@ impl Constellation { fn set_ids(&mut self, frame_tree: &Rc) { let (chan, port) = channel(); - debug!("Constellation sending SetIds"); - self.compositor_proxy.send(CompositorMsg::SetIds(frame_tree.to_sendable(), - chan, - self.chan.clone())); + debug!("Constellation sending SetFrameTree"); + self.compositor_proxy.send(CompositorMsg::SetFrameTree(frame_tree.to_sendable(), + chan, + self.chan.clone())); match port.recv_opt() { Ok(()) => { let mut iter = frame_tree.iter(); diff --git a/components/compositing/headless.rs b/components/compositing/headless.rs index a7464a6723a..8b58d727292 100644 --- a/components/compositing/headless.rs +++ b/components/compositing/headless.rs @@ -86,7 +86,7 @@ impl CompositorEventListener for NullCompositor { chan.send(None); } - Msg::SetIds(_, response_chan, _) => { + Msg::SetFrameTree(_, response_chan, _) => { response_chan.send(()); } @@ -96,12 +96,12 @@ impl CompositorEventListener for NullCompositor { // Explicitly list ignored messages so that when we add a new one, // we'll notice and think about whether it needs a response, like - // SetIds. + // SetFrameTree. - Msg::CreateOrUpdateRootLayer(..) | + Msg::CreateOrUpdateBaseLayer(..) | Msg::CreateOrUpdateDescendantLayer(..) | Msg::SetLayerOrigin(..) | - Msg::Paint(..) | + Msg::AssignPaintedBuffers(..) | Msg::ChangeReadyState(..) | Msg::ChangePaintState(..) | Msg::ScrollFragmentPoint(..) | diff --git a/components/gfx/paint_task.rs b/components/gfx/paint_task.rs index dd288fc07e1..ddd44f9e724 100644 --- a/components/gfx/paint_task.rs +++ b/components/gfx/paint_task.rs @@ -278,7 +278,7 @@ impl PaintTask where C: PaintListener + Send { } debug!("PaintTask: returning surfaces"); - self.compositor.paint(self.id, self.epoch, replies); + self.compositor.assign_painted_buffers(self.id, self.epoch, replies); } Msg::UnusedBuffer(unused_buffers) => { debug!("PaintTask: Received {} unused buffers", unused_buffers.len()); diff --git a/components/msg/compositor_msg.rs b/components/msg/compositor_msg.rs index 2b220652a03..a2e3c4d1909 100644 --- a/components/msg/compositor_msg.rs +++ b/components/msg/compositor_msg.rs @@ -95,11 +95,11 @@ pub trait PaintListener for Sized? { metadata: Vec, epoch: Epoch); - /// Sends new tiles for the given layer to the compositor. - fn paint(&mut self, - pipeline_id: PipelineId, - epoch: Epoch, - replies: Vec<(LayerId, Box)>); + /// Sends new buffers for the given layers to the compositor. + fn assign_painted_buffers(&mut self, + pipeline_id: PipelineId, + epoch: Epoch, + replies: Vec<(LayerId, Box)>); fn paint_msg_discarded(&mut self); fn set_paint_state(&mut self, PipelineId, PaintState);