aboutsummaryrefslogtreecommitdiffstats
path: root/src/window.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/window.rs')
-rw-r--r--src/window.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/window.rs b/src/window.rs
index ac52ed7..00174d3 100644
--- a/src/window.rs
+++ b/src/window.rs
@@ -300,10 +300,39 @@ impl Window {
/// To get the dimensions of the frame buffer when calling `glViewport`, multiply with hidpi factor.
///
/// Returns `None` if the window no longer exists.
+ ///
+ /// DEPRECATED
#[inline]
pub fn get_inner_size(&self) -> Option<(u32, u32)> {
self.window.get_inner_size()
}
+
+ /// Returns the size in points of the client area of the window.
+ ///
+ /// The client area is the content of the window, excluding the title bar and borders.
+ /// To get the dimensions of the frame buffer when calling `glViewport`, multiply with hidpi factor.
+ ///
+ /// Returns `None` if the window no longer exists.
+ #[inline]
+ pub fn get_inner_size_points(&self) -> Option<(u32, u32)> {
+ self.window.get_inner_size()
+ }
+
+
+ /// Returns the size in pixels of the client area of the window.
+ ///
+ /// The client area is the content of the window, excluding the title bar and borders.
+ /// These are the dimensions of the frame buffer, and the dimensions that you should use
+ /// when you call `glViewport`.
+ ///
+ /// Returns `None` if the window no longer exists.
+ #[inline]
+ pub fn get_inner_size_pixels(&self) -> Option<(u32, u32)> {
+ self.window.get_inner_size().map(|(x, y)| {
+ let hidpi = self.hidpi_factor();
+ ((x as f32 * hidpi) as u32, (y as f32 * hidpi) as u32)
+ })
+ }
/// Returns the size in pixels of the window.
///