diff options
| author | Manolo Gouy <Manolo> | 2016-11-30 07:09:48 +0000 |
|---|---|---|
| committer | Manolo Gouy <Manolo> | 2016-11-30 07:09:48 +0000 |
| commit | 5bb4e853c7c80fa16e568f47c49c2282d197a19c (patch) | |
| tree | ac17b71e7b3f34e688af8aa85d355f940a8a5438 /src/Fl_Device.cxx | |
| parent | 4755ace9e9252c7cac6e29143fd0662ae62c2bf4 (diff) | |
Remove Fl_Image_Surface::end_current() to be called after usage of the drawing surface.
This ensures API compatibility with FLTK 1.3 where Fl_Surface_Device->set_current()
is used to change the current drawing surface.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12125 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src/Fl_Device.cxx')
| -rw-r--r-- | src/Fl_Device.cxx | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/Fl_Device.cxx b/src/Fl_Device.cxx index 430aa2bf5..9f0b6292c 100644 --- a/src/Fl_Device.cxx +++ b/src/Fl_Device.cxx @@ -48,14 +48,17 @@ TODO: */ +Fl_Surface_Device *Fl_Surface_Device::pre_surface_ = NULL; /** \brief Make this surface the current drawing surface. This surface will receive all future graphics requests. */ void Fl_Surface_Device::set_current(void) { + if (pre_surface_) pre_surface_->end_current_(); fl_graphics_driver = pGraphicsDriver; _surface = this; pGraphicsDriver->global_gc(); + pre_surface_ = this; } Fl_Surface_Device* Fl_Surface_Device::_surface; // the current target surface of graphics operations @@ -63,6 +66,7 @@ Fl_Surface_Device* Fl_Surface_Device::_surface; // the current target surface of Fl_Surface_Device::~Fl_Surface_Device() { + if (pre_surface_ == this) pre_surface_ = NULL; } |
