mirror of
https://github.com/servo/servo.git
synced 2025-08-04 13:10:20 +01:00
Auto merge of #10061 - DavidBM:clean_code_removing_overflow_in_assign_bsizes, r=Manishearth
Remove overflow references on AssignBSizesAndStoreOverflow code <!-- Reviewable:start --> This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/10061) <!-- Reviewable:end -->
This commit is contained in:
commit
ce2da28a00
3 changed files with 10 additions and 11 deletions
|
@ -17,7 +17,7 @@ use std::sync::atomic::{AtomicIsize, Ordering};
|
||||||
use style::dom::{TNode, UnsafeNode};
|
use style::dom::{TNode, UnsafeNode};
|
||||||
use style::parallel::{CHUNK_SIZE, WorkQueueData};
|
use style::parallel::{CHUNK_SIZE, WorkQueueData};
|
||||||
use style::parallel::{run_queue_with_custom_work_data_type};
|
use style::parallel::{run_queue_with_custom_work_data_type};
|
||||||
use traversal::AssignBSizesAndStoreOverflow;
|
use traversal::AssignBSizes;
|
||||||
use traversal::{AssignISizes, BubbleISizes, PostorderNodeMutTraversal};
|
use traversal::{AssignISizes, BubbleISizes, PostorderNodeMutTraversal};
|
||||||
use util::opts;
|
use util::opts;
|
||||||
use util::workqueue::{WorkQueue, WorkUnit, WorkerProxy};
|
use util::workqueue::{WorkQueue, WorkUnit, WorkerProxy};
|
||||||
|
@ -198,7 +198,7 @@ impl<'a> ParallelPreorderFlowTraversal for AssignISizes<'a> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<'a> ParallelPostorderFlowTraversal for AssignBSizesAndStoreOverflow<'a> {}
|
impl<'a> ParallelPostorderFlowTraversal for AssignBSizes<'a> {}
|
||||||
|
|
||||||
fn assign_inline_sizes(unsafe_flows: UnsafeFlowList,
|
fn assign_inline_sizes(unsafe_flows: UnsafeFlowList,
|
||||||
proxy: &mut WorkerProxy<SharedLayoutContext, UnsafeFlowList>) {
|
proxy: &mut WorkerProxy<SharedLayoutContext, UnsafeFlowList>) {
|
||||||
|
@ -214,7 +214,7 @@ fn assign_block_sizes_and_store_overflow(
|
||||||
unsafe_flow: UnsafeFlow,
|
unsafe_flow: UnsafeFlow,
|
||||||
shared_layout_context: &SharedLayoutContext) {
|
shared_layout_context: &SharedLayoutContext) {
|
||||||
let layout_context = LayoutContext::new(shared_layout_context);
|
let layout_context = LayoutContext::new(shared_layout_context);
|
||||||
let assign_block_sizes_traversal = AssignBSizesAndStoreOverflow {
|
let assign_block_sizes_traversal = AssignBSizes {
|
||||||
layout_context: &layout_context,
|
layout_context: &layout_context,
|
||||||
};
|
};
|
||||||
assign_block_sizes_traversal.run_parallel(unsafe_flow)
|
assign_block_sizes_traversal.run_parallel(unsafe_flow)
|
||||||
|
|
|
@ -16,7 +16,7 @@ use generated_content::ResolveGeneratedContent;
|
||||||
use gfx::display_list::{DisplayListEntry, StackingContext};
|
use gfx::display_list::{DisplayListEntry, StackingContext};
|
||||||
use style::dom::TNode;
|
use style::dom::TNode;
|
||||||
use style::traversal::DomTraversalContext;
|
use style::traversal::DomTraversalContext;
|
||||||
use traversal::{AssignBSizesAndStoreOverflow, AssignISizes};
|
use traversal::{AssignBSizes, AssignISizes};
|
||||||
use traversal::{BubbleISizes, BuildDisplayList, ComputeAbsolutePositions, PostorderNodeMutTraversal};
|
use traversal::{BubbleISizes, BuildDisplayList, ComputeAbsolutePositions, PostorderNodeMutTraversal};
|
||||||
use util::opts;
|
use util::opts;
|
||||||
|
|
||||||
|
@ -44,7 +44,7 @@ pub fn traverse_flow_tree_preorder(root: &mut FlowRef,
|
||||||
shared_layout_context: &SharedLayoutContext) {
|
shared_layout_context: &SharedLayoutContext) {
|
||||||
fn doit(flow: &mut Flow,
|
fn doit(flow: &mut Flow,
|
||||||
assign_inline_sizes: AssignISizes,
|
assign_inline_sizes: AssignISizes,
|
||||||
assign_block_sizes: AssignBSizesAndStoreOverflow) {
|
assign_block_sizes: AssignBSizes) {
|
||||||
if assign_inline_sizes.should_process(flow) {
|
if assign_inline_sizes.should_process(flow) {
|
||||||
assign_inline_sizes.process(flow);
|
assign_inline_sizes.process(flow);
|
||||||
}
|
}
|
||||||
|
@ -71,7 +71,7 @@ pub fn traverse_flow_tree_preorder(root: &mut FlowRef,
|
||||||
}
|
}
|
||||||
|
|
||||||
let assign_inline_sizes = AssignISizes { layout_context: &layout_context };
|
let assign_inline_sizes = AssignISizes { layout_context: &layout_context };
|
||||||
let assign_block_sizes = AssignBSizesAndStoreOverflow { layout_context: &layout_context };
|
let assign_block_sizes = AssignBSizes { layout_context: &layout_context };
|
||||||
|
|
||||||
doit(root, assign_inline_sizes, assign_block_sizes);
|
doit(root, assign_inline_sizes, assign_block_sizes);
|
||||||
}
|
}
|
||||||
|
|
|
@ -172,15 +172,14 @@ impl<'a> PreorderFlowTraversal for AssignISizes<'a> {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// The assign-block-sizes-and-store-overflow traversal, the last (and most expensive) part of
|
/// The assign-block-sizes-and-store-overflow traversal, the last (and most expensive) part of
|
||||||
/// layout computation. Determines the final block-sizes for all layout objects, computes
|
/// layout computation. Determines the final block-sizes for all layout objects and computes
|
||||||
/// positions, and computes overflow regions. In Gecko this corresponds to `Reflow` and
|
/// positions. In Gecko this corresponds to `Reflow`.
|
||||||
/// `FinishAndStoreOverflow`.
|
|
||||||
#[derive(Copy, Clone)]
|
#[derive(Copy, Clone)]
|
||||||
pub struct AssignBSizesAndStoreOverflow<'a> {
|
pub struct AssignBSizes<'a> {
|
||||||
pub layout_context: &'a LayoutContext<'a>,
|
pub layout_context: &'a LayoutContext<'a>,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<'a> PostorderFlowTraversal for AssignBSizesAndStoreOverflow<'a> {
|
impl<'a> PostorderFlowTraversal for AssignBSizes<'a> {
|
||||||
#[inline]
|
#[inline]
|
||||||
fn process(&self, flow: &mut Flow) {
|
fn process(&self, flow: &mut Flow) {
|
||||||
// Can't do anything with flows impacted by floats until we reach their inorder parent.
|
// Can't do anything with flows impacted by floats until we reach their inorder parent.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue