From 461ce5f3631c99e928280935d92f084f4b641b9e Mon Sep 17 00:00:00 2001 From: Ivan Molodetskikh Date: Sun, 24 Dec 2023 14:30:19 +0400 Subject: Move output_size to utils --- src/utils.rs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/utils.rs') diff --git a/src/utils.rs b/src/utils.rs index bf25819b..07c737df 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -11,8 +11,9 @@ use std::time::Duration; use anyhow::{ensure, Context}; use directories::UserDirs; +use smithay::output::Output; use smithay::reexports::rustix::time::{clock_gettime, ClockId}; -use smithay::utils::{Logical, Point, Rectangle}; +use smithay::utils::{Logical, Point, Rectangle, Size}; use crate::config::Config; @@ -25,6 +26,16 @@ pub fn center(rect: Rectangle) -> Point { rect.loc + rect.size.downscale(2).to_point() } +pub fn output_size(output: &Output) -> Size { + let output_scale = output.current_scale().integer_scale(); + let output_transform = output.current_transform(); + let output_mode = output.current_mode().unwrap(); + + output_transform + .transform_size(output_mode.size) + .to_logical(output_scale) +} + pub fn make_screenshot_path(config: &Config) -> anyhow::Result> { let Some(path) = &config.screenshot_path else { return Ok(None); -- cgit