aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/api/win32/callback.rs21
-rw-r--r--src/lib.rs4
2 files changed, 10 insertions, 15 deletions
diff --git a/src/api/win32/callback.rs b/src/api/win32/callback.rs
index bc2b6a6..5cd8ade 100644
--- a/src/api/win32/callback.rs
+++ b/src/api/win32/callback.rs
@@ -25,7 +25,6 @@ pub struct ThreadLocalData {
pub win: winapi::HWND,
pub sender: Sender<Event>,
pub window_state: Arc<Mutex<WindowState>>
- //pub cursor_state: Arc<Mutex<CursorState>>
}
struct MinMaxInfo {
@@ -295,21 +294,18 @@ pub unsafe extern "system" fn callback(window: winapi::HWND, msg: winapi::UINT,
winapi::WM_GETMINMAXINFO => {
let mut mmi = lparam as *mut MinMaxInfo;
//(*mmi).max_position = winapi::POINT { x: -8, y: -8 }; // The upper left corner of the window if it were maximized on the primary monitor.
- //(*mmi).max_size = winapi::POINT { x: 200, y: 200 }; // The dimensions of the primary monitor.
+ //(*mmi).max_size = winapi::POINT { x: .., y: .. }; // The dimensions of the primary monitor.
CONTEXT_STASH.with(|context_stash| {
- let cstash = context_stash.borrow();
- let cstash = cstash.as_ref();
+ match context_stash.borrow().as_ref() {
+ Some(cstash) => {
+ let window_state = cstash.window_state.lock().unwrap();
- let _window_state = if let Some(cstash) = cstash {
- if let Ok(window_state) = cstash.window_state.lock() {
match window_state.attributes.min_dimensions {
Some((width, height)) => {
(*mmi).min_track = winapi::POINT { x: width as i32, y: height as i32 };
},
- None => {
- (*mmi).min_track = winapi::POINT { x: 800, y: 600 };
- }
+ None => { }
}
match window_state.attributes.max_dimensions {
@@ -318,10 +314,9 @@ pub unsafe extern "system" fn callback(window: winapi::HWND, msg: winapi::UINT,
},
None => { }
}
- }
- } else {
- return
- };
+ },
+ None => { }
+ }
});
0
},
diff --git a/src/lib.rs b/src/lib.rs
index 1056e8b..c543155 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -527,12 +527,12 @@ pub struct WindowAttributes {
/// The default is `None`.
pub dimensions: Option<(u32, u32)>,
- /// The minimum dimensions a window can be, If this is `None`, the minimum will be set to 800x600.
+ /// The minimum dimensions a window can be, If this is `None`, the window will have no minimum dimensions (aside from reserved).
///
/// The default is `None`.
pub min_dimensions: Option<(u32, u32)>,
- /// The maximum dimensions a window can be, If this is `None`, the maximum will be the dimensions of the primary monitor.
+ /// The maximum dimensions a window can be, If this is `None`, the maximum will have no maximum or will be set to the primary monitor's dimensions by the platform.
///
/// The default is `None`.
pub max_dimensions: Option<(u32, u32)>,