diff options
author | Josh Matthews <josh@joshmatthews.net> | 2020-01-15 11:09:37 -0500 |
---|---|---|
committer | Josh Matthews <josh@joshmatthews.net> | 2020-01-15 11:09:37 -0500 |
commit | c385953c97d5f1eb0190487c314274c02904b7f7 (patch) | |
tree | 5f651d733950a07d2ff44a1a5f99f56bc6baabc0 /components/compositing | |
parent | 9a518cf7979b79b34611135d09c1dd0a96945255 (diff) | |
download | servo-jdm-revert4.tar.gz servo-jdm-revert4.zip |
Revert "Auto merge of #24677 - jdm:iframe-sizing-cleanup, r=asajeffrey"jdm-revert4
This reverts commit 9a518cf7979b79b34611135d09c1dd0a96945255, reversing
changes made to a33d493a4ff6f8a629a9b82202c49c41ecbefa49.
Diffstat (limited to 'components/compositing')
-rw-r--r-- | components/compositing/compositor.rs | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/components/compositing/compositor.rs b/components/compositing/compositor.rs index 3df7e1a8a0c..94f578d48f1 100644 --- a/components/compositing/compositor.rs +++ b/components/compositing/compositor.rs @@ -209,6 +209,9 @@ pub struct IOCompositor<Window: WindowMethods + ?Sized> { /// True to translate mouse input into touch events. convert_mouse_to_touch: bool, + + /// Ratio of device pixels per px at the default scale. + device_pixels_per_px: Option<f32>, } #[derive(Clone, Copy)] @@ -281,6 +284,7 @@ impl<Window: WindowMethods + ?Sized> IOCompositor<Window> { is_running_problem_test: bool, exit_after_load: bool, convert_mouse_to_touch: bool, + device_pixels_per_px: Option<f32>, ) -> Self { let composite_target = match output_file { Some(_) => CompositeTarget::PngFile, @@ -323,6 +327,7 @@ impl<Window: WindowMethods + ?Sized> IOCompositor<Window> { is_running_problem_test, exit_after_load, convert_mouse_to_touch, + device_pixels_per_px, } } @@ -333,6 +338,7 @@ impl<Window: WindowMethods + ?Sized> IOCompositor<Window> { is_running_problem_test: bool, exit_after_load: bool, convert_mouse_to_touch: bool, + device_pixels_per_px: Option<f32>, ) -> Self { let mut compositor = IOCompositor::new( window, @@ -341,11 +347,15 @@ impl<Window: WindowMethods + ?Sized> IOCompositor<Window> { is_running_problem_test, exit_after_load, convert_mouse_to_touch, + device_pixels_per_px, ); // Set the size of the root layer. compositor.update_zoom_transform(); + // Tell the constellation about the initial window size. + compositor.send_window_size(WindowSizeType::Initial); + compositor } @@ -635,6 +645,8 @@ impl<Window: WindowMethods + ?Sized> IOCompositor<Window> { self.create_pipeline_details_for_frame_tree(&frame_tree); + self.send_window_size(WindowSizeType::Initial); + self.frame_tree_id.next(); } @@ -1069,10 +1081,13 @@ impl<Window: WindowMethods + ?Sized> IOCompositor<Window> { } fn hidpi_factor(&self) -> Scale<f32, DeviceIndependentPixel, DevicePixel> { - if self.output_file.is_some() { - return Scale::new(1.0); + match self.device_pixels_per_px { + Some(device_pixels_per_px) => Scale::new(device_pixels_per_px), + None => match self.output_file { + Some(_) => Scale::new(1.0), + None => self.embedder_coordinates.hidpi_factor, + }, } - self.embedder_coordinates.hidpi_factor } fn device_pixels_per_page_px(&self) -> Scale<f32, CSSPixel, DevicePixel> { |