mirror of
https://github.com/servo/servo.git
synced 2025-08-04 21:20:23 +01:00
Replace gfx_traits::ScrollPolicy by webrender_traits::ScrollPolicy.
This commit is contained in:
parent
8e12a11da9
commit
5d2a68033a
4 changed files with 8 additions and 22 deletions
|
@ -19,7 +19,7 @@ use euclid::{Matrix4D, Point2D, Rect, Size2D};
|
||||||
use euclid::num::{One, Zero};
|
use euclid::num::{One, Zero};
|
||||||
use euclid::rect::TypedRect;
|
use euclid::rect::TypedRect;
|
||||||
use euclid::side_offsets::SideOffsets2D;
|
use euclid::side_offsets::SideOffsets2D;
|
||||||
use gfx_traits::{ScrollPolicy, ScrollRootId, StackingContextId};
|
use gfx_traits::{ScrollRootId, StackingContextId};
|
||||||
use gfx_traits::print_tree::PrintTree;
|
use gfx_traits::print_tree::PrintTree;
|
||||||
use ipc_channel::ipc::IpcSharedMemory;
|
use ipc_channel::ipc::IpcSharedMemory;
|
||||||
use msg::constellation_msg::PipelineId;
|
use msg::constellation_msg::PipelineId;
|
||||||
|
@ -34,7 +34,7 @@ use style::computed_values::{border_style, filter, image_rendering, mix_blend_mo
|
||||||
use style_traits::cursor::Cursor;
|
use style_traits::cursor::Cursor;
|
||||||
use text::TextRun;
|
use text::TextRun;
|
||||||
use text::glyph::ByteIndex;
|
use text::glyph::ByteIndex;
|
||||||
use webrender_traits::{self, ColorF, GradientStop, WebGLContextId};
|
use webrender_traits::{self, ColorF, GradientStop, ScrollPolicy, WebGLContextId};
|
||||||
|
|
||||||
pub use style::dom::OpaqueNode;
|
pub use style::dom::OpaqueNode;
|
||||||
|
|
||||||
|
@ -129,7 +129,7 @@ impl DisplayList {
|
||||||
// Convert the parent translated point into stacking context local transform space if the
|
// Convert the parent translated point into stacking context local transform space if the
|
||||||
// stacking context isn't fixed. If it's fixed, we need to use the client point anyway.
|
// stacking context isn't fixed. If it's fixed, we need to use the client point anyway.
|
||||||
debug_assert!(stacking_context.context_type == StackingContextType::Real);
|
debug_assert!(stacking_context.context_type == StackingContextType::Real);
|
||||||
let is_fixed = stacking_context.scroll_policy == ScrollPolicy::FixedPosition;
|
let is_fixed = stacking_context.scroll_policy == ScrollPolicy::Fixed;
|
||||||
let translated_point = if is_fixed {
|
let translated_point = if is_fixed {
|
||||||
*client_point
|
*client_point
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -44,15 +44,6 @@ const SPECIAL_STACKING_CONTEXT_ID_MASK: usize = 0xffff;
|
||||||
#[derive(Copy, Clone, RustcEncodable, Debug)]
|
#[derive(Copy, Clone, RustcEncodable, Debug)]
|
||||||
pub enum DevicePixel {}
|
pub enum DevicePixel {}
|
||||||
|
|
||||||
/// The scrolling policy of a layer.
|
|
||||||
#[derive(Clone, PartialEq, Eq, Copy, Deserialize, Serialize, Debug, HeapSizeOf)]
|
|
||||||
pub enum ScrollPolicy {
|
|
||||||
/// These layers scroll when the parent receives a scrolling message.
|
|
||||||
Scrollable,
|
|
||||||
/// These layers do not scroll when the parent receives a scrolling message.
|
|
||||||
FixedPosition,
|
|
||||||
}
|
|
||||||
|
|
||||||
/// A newtype struct for denoting the age of messages; prevents race conditions.
|
/// A newtype struct for denoting the age of messages; prevents race conditions.
|
||||||
#[derive(PartialEq, Eq, Debug, Copy, Clone, PartialOrd, Ord, Deserialize, Serialize)]
|
#[derive(PartialEq, Eq, Debug, Copy, Clone, PartialOrd, Ord, Deserialize, Serialize)]
|
||||||
pub struct Epoch(pub u32);
|
pub struct Epoch(pub u32);
|
||||||
|
|
|
@ -27,7 +27,7 @@ use gfx::display_list::{GradientDisplayItem, IframeDisplayItem, ImageDisplayItem
|
||||||
use gfx::display_list::{LineDisplayItem, OpaqueNode};
|
use gfx::display_list::{LineDisplayItem, OpaqueNode};
|
||||||
use gfx::display_list::{SolidColorDisplayItem, ScrollRoot, StackingContext, StackingContextType};
|
use gfx::display_list::{SolidColorDisplayItem, ScrollRoot, StackingContext, StackingContextType};
|
||||||
use gfx::display_list::{TextDisplayItem, TextOrientation, WebGLDisplayItem, WebRenderImageInfo};
|
use gfx::display_list::{TextDisplayItem, TextOrientation, WebGLDisplayItem, WebRenderImageInfo};
|
||||||
use gfx_traits::{ScrollPolicy, ScrollRootId, StackingContextId};
|
use gfx_traits::{ScrollRootId, StackingContextId};
|
||||||
use inline::{FIRST_FRAGMENT_OF_ELEMENT, InlineFlow, LAST_FRAGMENT_OF_ELEMENT};
|
use inline::{FIRST_FRAGMENT_OF_ELEMENT, InlineFlow, LAST_FRAGMENT_OF_ELEMENT};
|
||||||
use ipc_channel::ipc;
|
use ipc_channel::ipc;
|
||||||
use list_item::ListItemFlow;
|
use list_item::ListItemFlow;
|
||||||
|
@ -58,7 +58,7 @@ use style::values::computed::{AngleOrCorner, Gradient, GradientKind, LengthOrPer
|
||||||
use style::values::specified::{HorizontalDirection, VerticalDirection};
|
use style::values::specified::{HorizontalDirection, VerticalDirection};
|
||||||
use style_traits::cursor::Cursor;
|
use style_traits::cursor::Cursor;
|
||||||
use table_cell::CollapsedBordersForCell;
|
use table_cell::CollapsedBordersForCell;
|
||||||
use webrender_traits::{ColorF, GradientStop};
|
use webrender_traits::{ColorF, GradientStop, ScrollPolicy};
|
||||||
|
|
||||||
trait RgbColor {
|
trait RgbColor {
|
||||||
fn rgb(r: u8, g: u8, b: u8) -> Self;
|
fn rgb(r: u8, g: u8, b: u8) -> Self;
|
||||||
|
@ -1835,7 +1835,7 @@ impl BlockFlowDisplayListBuilding for BlockFlow {
|
||||||
}
|
}
|
||||||
|
|
||||||
let scroll_policy = if self.is_fixed() {
|
let scroll_policy = if self.is_fixed() {
|
||||||
ScrollPolicy::FixedPosition
|
ScrollPolicy::Fixed
|
||||||
} else {
|
} else {
|
||||||
ScrollPolicy::Scrollable
|
ScrollPolicy::Scrollable
|
||||||
};
|
};
|
||||||
|
|
|
@ -11,7 +11,7 @@ use app_units::Au;
|
||||||
use euclid::{Point2D, Rect, Size2D};
|
use euclid::{Point2D, Rect, Size2D};
|
||||||
use gfx::display_list::{BorderRadii, BoxShadowClipMode, ClippingRegion};
|
use gfx::display_list::{BorderRadii, BoxShadowClipMode, ClippingRegion};
|
||||||
use gfx::display_list::{DisplayItem, DisplayList, DisplayListTraversal, StackingContextType};
|
use gfx::display_list::{DisplayItem, DisplayList, DisplayListTraversal, StackingContextType};
|
||||||
use gfx_traits::{FragmentType, ScrollPolicy, ScrollRootId};
|
use gfx_traits::{FragmentType, ScrollRootId};
|
||||||
use msg::constellation_msg::PipelineId;
|
use msg::constellation_msg::PipelineId;
|
||||||
use style::computed_values::{image_rendering, mix_blend_mode};
|
use style::computed_values::{image_rendering, mix_blend_mode};
|
||||||
use style::computed_values::filter::{self, Filter};
|
use style::computed_values::filter::{self, Filter};
|
||||||
|
@ -337,16 +337,11 @@ impl WebRenderDisplayItemConverter for DisplayItem {
|
||||||
let stacking_context = &item.stacking_context;
|
let stacking_context = &item.stacking_context;
|
||||||
debug_assert!(stacking_context.context_type == StackingContextType::Real);
|
debug_assert!(stacking_context.context_type == StackingContextType::Real);
|
||||||
|
|
||||||
let webrender_scroll_policy = match stacking_context.scroll_policy {
|
|
||||||
ScrollPolicy::Scrollable => webrender_traits::ScrollPolicy::Scrollable,
|
|
||||||
ScrollPolicy::FixedPosition => webrender_traits::ScrollPolicy::Fixed,
|
|
||||||
};
|
|
||||||
|
|
||||||
let clip = builder.new_clip_region(&stacking_context.overflow.to_rectf(),
|
let clip = builder.new_clip_region(&stacking_context.overflow.to_rectf(),
|
||||||
vec![],
|
vec![],
|
||||||
None);
|
None);
|
||||||
|
|
||||||
builder.push_stacking_context(webrender_scroll_policy,
|
builder.push_stacking_context(stacking_context.scroll_policy,
|
||||||
stacking_context.bounds.to_rectf(),
|
stacking_context.bounds.to_rectf(),
|
||||||
clip,
|
clip,
|
||||||
stacking_context.z_index,
|
stacking_context.z_index,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue