diff options
author | eshyong <eric.shyong@gmail.com> | 2014-07-06 23:48:31 -0400 |
---|---|---|
committer | eshyong <eric.shyong@gmail.com> | 2014-07-06 23:49:01 -0400 |
commit | f085655cc6a3f04ff5232e367f6b825e98c1b7de (patch) | |
tree | edbd6405460b8abb30cd6c24a7c94a7a0da2882a /src | |
parent | e62637fee2f1c9627468dde81a68df1dd40b6bc9 (diff) | |
download | servo-f085655cc6a3f04ff5232e367f6b825e98c1b7de.tar.gz servo-f085655cc6a3f04ff5232e367f6b825e98c1b7de.zip |
Made Page.window_size and Page.next_subpage_id Traceable, added trait Encodable for WindowSizeData, ViewportPx, PagePx, and DevicePixel
Diffstat (limited to 'src')
-rw-r--r-- | src/components/msg/constellation_msg.rs | 2 | ||||
-rw-r--r-- | src/components/script/page.rs | 8 | ||||
-rw-r--r-- | src/components/util/geometry.rs | 3 |
3 files changed, 9 insertions, 4 deletions
diff --git a/src/components/msg/constellation_msg.rs b/src/components/msg/constellation_msg.rs index 84207ee7f7e..1969b7d7513 100644 --- a/src/components/msg/constellation_msg.rs +++ b/src/components/msg/constellation_msg.rs @@ -8,6 +8,7 @@ use geom::rect::Rect; use geom::size::TypedSize2D; use geom::scale_factor::ScaleFactor; +use serialize::Encodable; use servo_util::geometry::{DevicePixel, PagePx, ViewportPx}; use std::comm::{channel, Sender, Receiver}; use url::Url; @@ -35,6 +36,7 @@ pub struct Failure { pub subpage_id: Option<SubpageId>, } +#[deriving(Encodable)] pub struct WindowSizeData { /// The size of the initial layout viewport, before parsing an /// http://www.w3.org/TR/css-device-adapt/#initial-viewport diff --git a/src/components/script/page.rs b/src/components/script/page.rs index ebdeb324819..98d074787da 100644 --- a/src/components/script/page.rs +++ b/src/components/script/page.rs @@ -60,7 +60,7 @@ pub struct Page { damage: Traceable<RefCell<Option<DocumentDamage>>>, /// The current size of the window, in pixels. - pub window_size: Untraceable<Cell<WindowSizeData>>, + pub window_size: Traceable<Cell<WindowSizeData>>, js_info: Traceable<RefCell<Option<JSPageInfo>>>, @@ -70,7 +70,7 @@ pub struct Page { /// when reloading. url: Untraceable<RefCell<Option<(Url, bool)>>>, - next_subpage_id: Untraceable<Cell<SubpageId>>, + next_subpage_id: Traceable<Cell<SubpageId>>, /// Pending resize event, if any. pub resize_event: Untraceable<Cell<Option<WindowSizeData>>>, @@ -132,10 +132,10 @@ impl Page { layout_chan: Untraceable::new(layout_chan), layout_join_port: Untraceable::new(RefCell::new(None)), damage: Traceable::new(RefCell::new(None)), - window_size: Untraceable::new(Cell::new(window_size)), + window_size: Traceable::new(Cell::new(window_size)), js_info: Traceable::new(RefCell::new(Some(js_info))), url: Untraceable::new(RefCell::new(None)), - next_subpage_id: Untraceable::new(Cell::new(SubpageId(0))), + next_subpage_id: Traceable::new(Cell::new(SubpageId(0))), resize_event: Untraceable::new(Cell::new(None)), fragment_node: Cell::new(None), last_reflow_id: Traceable::new(Cell::new(0)), diff --git a/src/components/util/geometry.rs b/src/components/util/geometry.rs index a8c03832058..e0e980c7659 100644 --- a/src/components/util/geometry.rs +++ b/src/components/util/geometry.rs @@ -16,6 +16,7 @@ use std::fmt; /// One hardware pixel. /// /// This unit corresponds to the smallest addressable element of the display hardware. +#[deriving(Encodable)] pub enum DevicePixel {} /// A normalized "pixel" at the default resolution for the display. @@ -42,6 +43,7 @@ pub enum ScreenPx {} /// /// At the default zoom level of 100%, one PagePx is equal to one ScreenPx. However, if the /// document is zoomed in or out then this scale may be larger or smaller. +#[deriving(Encodable)] pub enum ViewportPx {} /// One CSS "px" in the root coordinate system for the content document. @@ -50,6 +52,7 @@ pub enum ViewportPx {} /// This is the mobile-style "pinch zoom" that enlarges content without reflowing it. When the /// viewport zoom is not equal to 1.0, then the layout viewport is no longer the same physical size /// as the viewable area. +#[deriving(Encodable)] pub enum PagePx {} // In summary, the hierarchy of pixel units and the factors to convert from one to the next: |