summaryrefslogtreecommitdiff
path: root/src/Fl_Overlay_Window.cxx
diff options
context:
space:
mode:
authorAlbrecht Schlosser <albrechts.fltk@online.de>2010-06-09 08:36:25 +0000
committerAlbrecht Schlosser <albrechts.fltk@online.de>2010-06-09 08:36:25 +0000
commit755f354ebe0a2f9c3ee287c53013279fd864ebbe (patch)
treeeb13f8d9150977b4977764698b67e558b8c63ebb /src/Fl_Overlay_Window.cxx
parentd7fdaf8262180573de0e838a70c1368641b82a8e (diff)
Fixed X11/XDBE double buffering (STR #2152, #2197). Both bugs could only be
seen if configure was run with --enable-xdbe (default in FLTK 1.3, optional in FLTK 1.1). src/Fl_Double_Window.cxx/Fl_Double_Window::resize(): STR #2152: deallocate back buffer when window is enlarged in any dimension to force allocation of a new back buffer. This appears to be necessary for some window managers (e.g. Cygwin). src/Fl_Overlay_Window.cxx/Fl_Overlay_Window::flush() and src/Fl_Double_Window.cxx/Fl_Double_Window::flush(): STR #2197: make sure that the entire overlay window will be drawn after a window redraw, because Fl_Double_Window::flush(1) erases the overlay as documented. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7636 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src/Fl_Overlay_Window.cxx')
-rw-r--r--src/Fl_Overlay_Window.cxx2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/Fl_Overlay_Window.cxx b/src/Fl_Overlay_Window.cxx
index 8acb4af35..581c7057d 100644
--- a/src/Fl_Overlay_Window.cxx
+++ b/src/Fl_Overlay_Window.cxx
@@ -61,7 +61,7 @@ void Fl_Overlay_Window::flush() {
return;
}
#endif
- int erase_overlay = (damage()&FL_DAMAGE_OVERLAY);
+ int erase_overlay = (damage()&FL_DAMAGE_OVERLAY) | (overlay_ == this);
clear_damage((uchar)(damage()&~FL_DAMAGE_OVERLAY));
Fl_Double_Window::flush(erase_overlay);
if (overlay_ == this) draw_overlay();