From a1edaa2f6219ba273150659c8d1d417e13f12d54 Mon Sep 17 00:00:00 2001 From: Ian Douglas Scott Date: Thu, 26 Aug 2021 21:14:58 -0700 Subject: [PATCH] WIP window size detection code --- src/window.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/window.rs b/src/window.rs index 719cc4fe..f22c3ea5 100644 --- a/src/window.rs +++ b/src/window.rs @@ -1,6 +1,7 @@ use cascade::cascade; use glib::clone; use gtk4::{gdk, glib, prelude::*}; +use std::cell::Cell; use crate::status_area::StatusArea; use crate::time_button::TimeButton; @@ -22,6 +23,17 @@ pub fn window(monitor: gdk::Monitor) -> gtk4::Window { gtk4::Window::new(); ..set_decorated(false); ..set_child(Some(&box_)); + ..set_size_request(monitor.geometry().width, 0); + ..connect_realize(|window| { + let surface = window.surface().unwrap(); + let size = Cell::new(None); + surface.connect_layout(move |surface, width, height| { + if size.replace(Some((width, height))) != Some((width, height)) { + println!("height: {}", height); + println!("width: {}", width); + } + }); + }); ..show(); };