From 1bc50aa780c6f7efd07756dc03a948ce8e536e15 Mon Sep 17 00:00:00 2001 From: Matthias Melcher Date: Mon, 27 Dec 2004 19:16:42 +0000 Subject: Fl_Double_Windows would always redraw their full content, even if only little changes were done in the UI. OS X creates all windows double buffered, whch would lead FLTK to beleive that the background buffer was missing on every redraw, causing a complete redraw of the full UI. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3953 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- src/Fl_Double_Window.cxx | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/Fl_Double_Window.cxx b/src/Fl_Double_Window.cxx index e3fc8edcd..7537c64b4 100644 --- a/src/Fl_Double_Window.cxx +++ b/src/Fl_Double_Window.cxx @@ -1,5 +1,5 @@ // -// "$Id: Fl_Double_Window.cxx,v 1.12.2.4.2.13 2004/11/21 15:33:24 easysw Exp $" +// "$Id: Fl_Double_Window.cxx,v 1.12.2.4.2.14 2004/12/27 19:16:42 matthiaswm Exp $" // // Double-buffered window code for the Fast Light Tool Kit (FLTK). // @@ -251,15 +251,20 @@ void Fl_Double_Window::flush(int eraseoverlay) { else #endif #ifdef __APPLE_QD__ - if ( ( !QDIsPortBuffered( GetWindowPort(myi->xid) ) ) || force_doublebuffering_ ) + if ( ( !QDIsPortBuffered( GetWindowPort(myi->xid) ) ) + || force_doublebuffering_ ) { myi->other_xid = fl_create_offscreen(w(), h()); + clear_damage(FL_DAMAGE_ALL); + } #elif defined(__APPLE_QUARTZ__) - if (force_doublebuffering_) + if (force_doublebuffering_) { myi->other_xid = fl_create_offscreen(w(), h()); + clear_damage(FL_DAMAGE_ALL); + } #else myi->other_xid = fl_create_offscreen(w(), h()); -#endif clear_damage(FL_DAMAGE_ALL); +#endif } #if USE_XDBE if (use_xdbe) { @@ -348,5 +353,5 @@ Fl_Double_Window::~Fl_Double_Window() { } // -// End of "$Id: Fl_Double_Window.cxx,v 1.12.2.4.2.13 2004/11/21 15:33:24 easysw Exp $". +// End of "$Id: Fl_Double_Window.cxx,v 1.12.2.4.2.14 2004/12/27 19:16:42 matthiaswm Exp $". // -- cgit v1.2.3