Skip to content

Commit

Permalink
refactor how window_padding is passed around
Browse files Browse the repository at this point in the history
  • Loading branch information
seanstrom committed Nov 8, 2022
1 parent a068e0d commit 681835e
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 17 deletions.
15 changes: 12 additions & 3 deletions src/renderer/mod.rs
Expand Up @@ -85,12 +85,14 @@ pub struct Renderer {
profiler: profiler::Profiler,
os_scale_factor: f64,
user_scale_factor: f64,
window_padding: WindowPadding,
pub window_padding: WindowPadding,
}

impl Renderer {
pub fn new(os_scale_factor: f64, window_padding: WindowPadding) -> Self {
let user_scale_factor = SETTINGS.get::<WindowSettings>().scale_factor.into();
pub fn new(os_scale_factor: f64) -> Self {
let window_settings = SETTINGS.get::<WindowSettings>();

let user_scale_factor = window_settings.scale_factor.into();
let scale_factor = user_scale_factor * os_scale_factor;
let cursor_renderer = CursorRenderer::new();
let grid_renderer = GridRenderer::new(scale_factor);
Expand All @@ -102,6 +104,13 @@ impl Renderer {
let batched_draw_command_receiver = EVENT_AGGREGATOR.register_event::<Vec<DrawCommand>>();
let profiler = profiler::Profiler::new(12.0);

let window_padding = WindowPadding {
top: window_settings.top_padding,
left: window_settings.left_padding,
right: window_settings.right_padding,
bottom: window_settings.bottom_padding,
};

Renderer {
rendered_windows,
cursor_renderer,
Expand Down
19 changes: 5 additions & 14 deletions src/window/mod.rs
Expand Up @@ -41,7 +41,7 @@ use crate::{
event_aggregator::EVENT_AGGREGATOR,
frame::Frame,
redraw_scheduler::REDRAW_SCHEDULER,
renderer::{Renderer, WindowPadding},
renderer::{Renderer},
running_tracker::*,
settings::{
load_last_window_settings, save_window_geometry, PersistentWindowSettings, SETTINGS,
Expand Down Expand Up @@ -74,7 +74,6 @@ pub struct GlutinWindowWrapper {
size_at_startup: PhysicalSize<u32>,
maximized_at_startup: bool,
window_command_receiver: UnboundedReceiver<WindowCommand>,
window_padding: WindowPadding,
}

impl GlutinWindowWrapper {
Expand Down Expand Up @@ -240,8 +239,9 @@ impl GlutinWindowWrapper {
}

fn handle_new_grid_size(&mut self, new_size: PhysicalSize<u32>) {
let window_padding_width = self.window_padding.left + self.window_padding.right;
let window_padding_height = self.window_padding.top + self.window_padding.bottom;
let window_padding = self.renderer.window_padding;
let window_padding_width = window_padding.left + window_padding.right;
let window_padding_height = window_padding.top + window_padding.bottom;

let content_size = PhysicalSize {
width: new_size.width - window_padding_width,
Expand Down Expand Up @@ -411,16 +411,8 @@ pub fn create_window() {

log::trace!("repositioned window: {}", did_reposition);

let settings = SETTINGS.get::<WindowSettings>();
let window_padding = WindowPadding {
top: settings.top_padding,
left: settings.left_padding,
right: settings.right_padding,
bottom: settings.bottom_padding,
};

let scale_factor = windowed_context.window().scale_factor();
let renderer = Renderer::new(scale_factor, window_padding);
let renderer = Renderer::new(scale_factor);
let saved_inner_size = window.inner_size();

let skia_renderer = SkiaRenderer::new(&windowed_context);
Expand All @@ -446,7 +438,6 @@ pub fn create_window() {
saved_inner_size,
saved_grid_size: None,
window_command_receiver,
window_padding,
};

let mut previous_frame_start = Instant::now();
Expand Down

0 comments on commit 681835e

Please sign in to comment.