diff options
| author | Manolo Gouy <Manolo> | 2018-11-22 11:55:04 +0000 |
|---|---|---|
| committer | Manolo Gouy <Manolo> | 2018-11-22 11:55:04 +0000 |
| commit | 97c0c6a0243dfc5596abccc243044af6eeaf40b4 (patch) | |
| tree | a8352f1dc16b01a23d025397bafdf71bc2a1dc11 /src | |
| parent | 7e5b04cab5936e78fedd95323b67946b265bd7fe (diff) | |
MacOS: fix redraw of subwindow when display resolutions before miniaturize and after deminiaturize differ.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13129 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src')
| -rw-r--r-- | src/Fl_cocoa.mm | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/Fl_cocoa.mm b/src/Fl_cocoa.mm index 68e1cb353..915677038 100644 --- a/src/Fl_cocoa.mm +++ b/src/Fl_cocoa.mm @@ -1347,6 +1347,8 @@ static FLWindowDelegate *flwindowdelegate_instance = nil; FLWindow *nsw = (FLWindow*)[notif object]; if ([nsw miniwindowImage]) { [nsw setMiniwindowImage:nil]; } Fl_Window *window = [nsw getFl_Window]; + // necessary when resolutions before miniaturization and after deminiaturization differ + [nsw recursivelySendToSubwindows:@selector(setSubwindowFrame)]; Fl::handle(FL_SHOW, window); update_e_xy_and_e_xy_root(nsw); Fl::flush(); // Process redraws set by FL_SHOW. @@ -2198,10 +2200,7 @@ static CGContextRef prepare_bitmap_for_layer(int w, int h ) { if (!Fl::use_high_res_GL() && fl_mac_os_version < 101401) [self layer].contentsScale = 1.; Fl_Window *window = [(FLWindow*)[self window] getFl_Window]; Fl_Cocoa_Window_Driver *d = Fl_Cocoa_Window_Driver::driver(window); - if (d->wait_for_expose_value) { - // 1st drawing of GL window - [self did_view_resolution_change]; - } + [self did_view_resolution_change]; window->clear_damage(FL_DAMAGE_ALL); d->Fl_Window_Driver::flush(); window->clear_damage(); |
