diff options
| author | Manolo Gouy <Manolo> | 2016-04-18 12:28:57 +0000 |
|---|---|---|
| committer | Manolo Gouy <Manolo> | 2016-04-18 12:28:57 +0000 |
| commit | 3df26257d09f87ab5e6224f813b5d15325ce219c (patch) | |
| tree | 0f662eea9f8ed12f291ad8cf66a9df0c8420f0a0 /src | |
| parent | 1d279de04433b2227965f7e0dcfea21e1203b4ec (diff) | |
Move Fl_X::backbuffer_bad under USE_X11 to class Fl_X11_Wi,dow_Driver.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11648 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src')
| -rw-r--r-- | src/Fl_x.cxx | 4 | ||||
| -rw-r--r-- | src/drivers/X11/Fl_X11_Window_Driver.H | 1 | ||||
| -rw-r--r-- | src/drivers/X11/Fl_X11_Window_Driver.cxx | 6 |
3 files changed, 7 insertions, 4 deletions
diff --git a/src/Fl_x.cxx b/src/Fl_x.cxx index 99da7f755..508105658 100644 --- a/src/Fl_x.cxx +++ b/src/Fl_x.cxx @@ -2220,7 +2220,9 @@ Fl_X* Fl_X::set_xid(Fl_Window* win, Window winxid) { xp->next = Fl_X::first; xp->region = 0; xp->wait_for_expose = 1; - xp->backbuffer_bad = 1; +#ifdef USE_XDBE + ((Fl_X11_Window_Driver*)win->driver())->backbuffer_bad = 1; +#endif Fl_X::first = xp; if (win->modal()) {Fl::modal_ = win; fl_fix_focus();} return xp; diff --git a/src/drivers/X11/Fl_X11_Window_Driver.H b/src/drivers/X11/Fl_X11_Window_Driver.H index e976619ee..e255e8c94 100644 --- a/src/drivers/X11/Fl_X11_Window_Driver.H +++ b/src/drivers/X11/Fl_X11_Window_Driver.H @@ -69,6 +69,7 @@ private: void shape_alpha_(Fl_Image* img, int offset); void flush_double(int erase_overlay); #ifdef USE_XDBE + char backbuffer_bad; void flush_double_dbe(int erase_overlay); #endif diff --git a/src/drivers/X11/Fl_X11_Window_Driver.cxx b/src/drivers/X11/Fl_X11_Window_Driver.cxx index a6171184c..b5f056a24 100644 --- a/src/drivers/X11/Fl_X11_Window_Driver.cxx +++ b/src/drivers/X11/Fl_X11_Window_Driver.cxx @@ -82,14 +82,14 @@ void Fl_X11_Window_Driver::flush_double_dbe(int erase_overlay) Fl_X *i = Fl_X::i(pWindow); if (!i->other_xid) { i->other_xid = XdbeAllocateBackBufferName(fl_display, fl_xid(pWindow), XdbeCopied); - i->backbuffer_bad = 1; + backbuffer_bad = 1; pWindow->clear_damage(FL_DAMAGE_ALL); } - if (i->backbuffer_bad || erase_overlay) { + if (backbuffer_bad || erase_overlay) { // Make sure we do a complete redraw... if (i->region) {Fl_Graphics_Driver::default_driver().XDestroyRegion(i->region); i->region = 0;} pWindow->clear_damage(FL_DAMAGE_ALL); - i->backbuffer_bad = 0; + backbuffer_bad = 0; } // Redraw as needed... if (pWindow->damage()) { |
