diff options
author | Sven Nilsen <bvssvni@gmail.com> | 2015-07-25 13:40:33 +0200 |
---|---|---|
committer | Sven Nilsen <bvssvni@gmail.com> | 2015-07-25 13:40:33 +0200 |
commit | 05175c1d800a3b5303118834d342ebbfd44ecc8d (patch) | |
tree | c0b5adc73501abb63b21862f3997a88fec9a3616 /src | |
parent | 50c263770367d322992b615930508b0996f83ef4 (diff) | |
download | glutin-05175c1d800a3b5303118834d342ebbfd44ecc8d.tar.gz glutin-05175c1d800a3b5303118834d342ebbfd44ecc8d.zip |
Split `get_inner_size`
Closes https://github.com/tomaka/glutin/issues/542
* Splits `get_inner_size` into `get_inner_size_points` and
`get_inner_size_pixels`
This is a breaking change.
Diffstat (limited to 'src')
-rw-r--r-- | src/window.rs | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/window.rs b/src/window.rs index ac52ed7..655c54f 100644 --- a/src/window.rs +++ b/src/window.rs @@ -301,10 +301,25 @@ impl Window { /// /// Returns `None` if the window no longer exists. #[inline] - pub fn get_inner_size(&self) -> Option<(u32, u32)> { + 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. /// /// These dimensions include title bar and borders. If you don't want these, you should use |