summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorManolo Gouy <Manolo>2018-02-18 08:04:57 +0000
committerManolo Gouy <Manolo>2018-02-18 08:04:57 +0000
commita401c6c038e7cd15ada6e1449db5f40e08466949 (patch)
treefb1d5b2a55bc9f6928b32699cb5dd78bfcb790fd
parent3266594e914ba2bd0f03d43606238642c99803d9 (diff)
Fix Fl_Cocoa_Window_Driver::size_range() to make it support GUI rescaling.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12674 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
-rw-r--r--src/Fl_cocoa.mm9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/Fl_cocoa.mm b/src/Fl_cocoa.mm
index e5977ed85..e83f8af4c 100644
--- a/src/Fl_cocoa.mm
+++ b/src/Fl_cocoa.mm
@@ -3183,13 +3183,14 @@ Fl_X* Fl_Cocoa_Window_Driver::makeWindow()
* Tell the OS what window sizes we want to allow
*/
void Fl_Cocoa_Window_Driver::size_range() {
- int bx, by, bt;
- get_window_frame_sizes(bx, by, bt, pWindow);
Fl_Window_Driver::size_range();
- NSSize minSize = NSMakeSize(minw(), minh() + bt);
- NSSize maxSize = NSMakeSize(maxw() ? maxw():32000, maxh() ? maxh() + bt:32000);
Fl_X *i = Fl_X::i(pWindow);
if (i && i->xid) {
+ float s = Fl::screen_driver()->scale(0);
+ int bx, by, bt;
+ get_window_frame_sizes(bx, by, bt, pWindow);
+ NSSize minSize = NSMakeSize(int(minw() * s +.5) , int(minh() * s +.5) + bt);
+ NSSize maxSize = NSMakeSize(maxw() ? int(maxw() * s + .5):32000, maxh() ? int(maxh() * s +.5) + bt:32000);
[i->xid setMinSize:minSize];
[i->xid setMaxSize:maxSize];
}