diff options
| author | Manolo Gouy <Manolo> | 2014-02-22 15:04:44 +0000 |
|---|---|---|
| committer | Manolo Gouy <Manolo> | 2014-02-22 15:04:44 +0000 |
| commit | fe4d1af1949bc84ea6c17c0e64e9e5758d623ebd (patch) | |
| tree | 2a759c42ebde91a55ac90dd710fc6b35c405fdc6 /src | |
| parent | 56ac442c9307a81a1a67dab4ebf3e8a964b02ddd (diff) | |
Check for use of the Fl_GDI_Printer_Graphics_Driver class to detect printer usage.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10111 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src')
| -rw-r--r-- | src/Fl_Double_Window.cxx | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/Fl_Double_Window.cxx b/src/Fl_Double_Window.cxx index fb93c9cd9..4cc487215 100644 --- a/src/Fl_Double_Window.cxx +++ b/src/Fl_Double_Window.cxx @@ -218,8 +218,9 @@ void Fl_GDI_Graphics_Driver::copy_offscreen_with_alpha(int x,int y,int w,int h,H BOOL alpha_ok = 0; // first try to alpha blend // if to printer, always try alpha_blend - if ( Fl_Surface_Device::surface() != Fl_Display_Device::display_device() || fl_can_do_alpha_blending() ) { - if (fl_alpha_blend) alpha_ok = fl_alpha_blend(fl_gc, x, y, w, h, new_gc, srcx, srcy, w, h, blendfunc); + if (fl_graphics_driver->class_name() == Fl_GDI_Printer_Graphics_Driver::class_id && fl_alpha_blend || + Fl_Surface_Device::surface() == Fl_Display_Device::display_device() && fl_can_do_alpha_blending() ) { + alpha_ok = fl_alpha_blend(fl_gc, x, y, w, h, new_gc, srcx, srcy, w, h, blendfunc); } // if that failed (it shouldn't), still copy the bitmap over, but now alpha is 1 if (!alpha_ok) { |
