From 21540390cb464b08d4a760807120c35ed847f020 Mon Sep 17 00:00:00 2001 From: Manolo Gouy Date: Sun, 27 Mar 2016 18:53:01 +0000 Subject: [PATCH] Remove the platform-dependent code from Fl_Widget_Surface.cxx - first part. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11445 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- src/Fl_Widget_Surface.cxx | 10 +--------- src/drivers/Cocoa/Fl_Cocoa_Window_Driver.cxx | 4 ++++ 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/src/Fl_Widget_Surface.cxx b/src/Fl_Widget_Surface.cxx index 6b8fbffee..42f307b07 100644 --- a/src/Fl_Widget_Surface.cxx +++ b/src/Fl_Widget_Surface.cxx @@ -64,11 +64,6 @@ void Fl_Widget_Surface::draw(Fl_Widget* widget, int delta_x, int delta_y) // if widget is a main window, clip all drawings to the window area if (is_window && !widget->window()) { fl_push_clip(0, 0, widget->w(), widget->h() ); -#ifdef __APPLE__ // for Mac OS X 10.6 and above, make window with rounded bottom corners - if ( fl_mac_os_version >= 100600 && driver()->has_feature(Fl_Graphics_Driver::NATIVE) ) { - Fl_X::clip_to_rounded_corners((CGContextRef)driver()->gc(), widget->w(), widget->h()); - } -#endif } // we do some trickery to recognize OpenGL windows and draw them via a plugin int drawn_by_plugin = 0; @@ -159,12 +154,9 @@ void Fl_Widget_Surface::print_window_part(Fl_Window *win, int x, int y, int w, i Fl_Window *save_front = Fl::first_window(); win->show(); Fl::check(); - win->make_current(); + Fl_X::i(win)->flush(); // makes the window current uchar *image_data; image_data = fl_read_image(NULL, x, y, w, h); -#ifdef __APPLE__ // PORTME: Fl_Surface_Driver - platform paged device - Fl_X::q_release_context(); // matches make_current() call above -#endif if (save_front != win) save_front->show(); current->set_current(); fl_draw_image(image_data, delta_x, delta_y, w, h, 3); diff --git a/src/drivers/Cocoa/Fl_Cocoa_Window_Driver.cxx b/src/drivers/Cocoa/Fl_Cocoa_Window_Driver.cxx index 3e60db8a9..4657566da 100644 --- a/src/drivers/Cocoa/Fl_Cocoa_Window_Driver.cxx +++ b/src/drivers/Cocoa/Fl_Cocoa_Window_Driver.cxx @@ -107,6 +107,10 @@ void Fl_Cocoa_Window_Driver::draw_begin() CGContextSaveGState(gc); # endif } + if ( fl_mac_os_version >= 100600 ) { + // for Mac OS X 10.6 and above, make window with rounded bottom corners + Fl_X::clip_to_rounded_corners(gc, pWindow->w(), pWindow->h()); + } }