summaryrefslogtreecommitdiff
path: root/src/drivers/Xlib
AgeCommit message (Collapse)Author
2021-02-16Use <config.h> when appropriate.ManoloFLTK
2021-02-16Create classes Fl_XXX_Gl_Window_Driver according to driver model.ManoloFLTK
2020-11-24Fix for issue #163: Improve Xrender scaling qualityManoloFLTK
2020-11-20Fix for issue #159 - continuedManoloFLTK
Changes here concentrate the fix within static function alpha_blend() and thus are visible only when drawing transparent images under X11 platform without Xrender.
2020-11-19Remove compilation warnings about signed/unsigned comparison.ManoloFLTK
2020-11-19Fix for issue #159.ManoloFLTK
2020-11-12Fix for issue #155 - continuedManoloFLTK
The issue lies in details how floating point scaled coordinates are converted to integer values and its impact on the drawing of large SVG images. This commit fixes the X11 platform. The macOS platform is immune because drawing uses floating point coordinates. The Windows platform still needs fixing.
2020-10-28Pango ps (#148)ManoloFLTK
Use cairo-PostScript to output PostScript when pango is available. This allows to draw in vectorial form any script. Before, only the Latin script could be drawn to PostScript in vectorial form.
2020-10-08Fl_Xlib_Font_Descriptor does not need char glok[64] when USE_XFT is onManoloFLTK
2020-08-01Remove unneeded strdup from example, fold tabsGreg Ercolano
2020-08-01Implement + deploy fl_strdup()Greg Ercolano
2020-07-30Fix use of an SVG image in Fl_Tiled_Image when display is rescaled.ManoloFLTK
2020-07-28Fix for issue #119. Drawing artefacts for SVG images without XRender.ManoloFLTK
Xlib: Drawing SVG images in scaled mode without XRender has drawing artefacts.
2020-07-06Remove $Id$ tags, update URL's, and moreAlbrecht Schlosser
- remove obsolete svn '$Id$' tags from all source files - update .fl files and generated files accordingly - replace 'http://www.fltk.org' URL's with 'https://...' - replace bug report URL 'str.php' with 'bugs.php' - remove trailing whitespace - fix other whitespace errors flagged by Git - add and/or fix missing or wrong standard headers - convert tabs to spaces in all source files The only relevant code changes are in the fluid/ folder where some .fl files and other source files were used to generate the '$Id' headers and footers.
2020-03-20Rewrite Fl_Xlib_Graphics_Driver::get_font_name() with less lines of code.ManoloFLTK
2020-03-20Fix Fl::get_font_name() under X11+Xft-PangoManoloFLTK
2020-01-15Fix uninitialized vars in calls to fl_clip_box() (issue #6)Albrecht Schlosser
The main fixes are only to avoid static code analyzer warnings reported in issue #5, but there are also minor bug fixes included. These bug fixes are more of theoretical concerns though. Close #6.
2020-01-09Fix X11 RTL text clipping (STR 2798) - part 2Albrecht Schlosser
Yet another fix for RTL text...
2020-01-08Improve X11 coordinate clipping for text (STR 2798)Albrecht Schlosser
Text outside the 16-bit X11 coordinate space must be clipped before calling X11 draw functions, otherwise text might appear anywhere in the window because X11 would "truncate" the coordinates instead of proper clipping (X11 handles only 16-bit coordinates).
2019-11-08X11 + pango: Sort font names ignoring case.ManoloFLTK
2019-11-07Reorganise use of virtual member function Fl_Surface_Device::end_current()ManoloFLTK
2019-11-01Fix HiDPI support under X11 to read/draw RGB image from/to display.ManoloFLTK
2019-09-11Fix use of Xrender extension with old, 16-bit framebuffers.ManoloFLTK
Subject "Bug in 1.4 Displaying PNG under x64 Kernel x86 app." in fltk.general contains a report by Darren Legge that presents the problem, and a later post stating the code modification does fix the problem.
2019-06-06Add one argument to Fl_Screen_Driver::read_win_rectangle()ManoloFLTK
The new argument gives the window to be captured, or NULL to indicate capture from the current offscreen. Calling this function becomes easier because less dependent on global variables.
2019-06-06Fix in Fl_Xlib_Graphics_Driver::font_unscaled() necessary when changing ↵ManoloFLTK
drawing surfaces
2019-06-03X11+Pango: fix case when function pango_font_get_glyph_extents() failsManoloFLTK
2019-06-02X11+Pango: font names visible in the fonts and utf8 apps are usable for ↵ManoloFLTK
Fl::set_font(Fl_Font, const char*)
2019-05-30X11+Pango: call pango_font_description_from_string() less oftenManoloFLTK
Previously, each time fl_font(fnum, fsize) was called, functions pango_font_description_free() and pango_font_description_from_string() would be called. Now, pango_font_description_from_string() is called only once, the first time an Fl_Font is used.
2019-05-25Call virtual member Fl_Surface_Device::end_current() when necessaryManoloFLTK
Rename member function Fl_Surface_Device::end_current_() to end_current(), set it protected, and make it called by the destructor of all classes derived from Fl_Surface_Device that re-implement end_current(). This way, end_current() runs equally if Fl_Surface_Device()::pop_current() is called before or after the drawing surface is deleted.
2019-04-10Use the new Fl_Surface_Device::is_current() virtual functionManoloFLTK
2019-04-10Remove useless member functions Fl_XXX_Copy_Surface_Driver::w() and h()ManoloFLTK
2019-04-10New virtual member function bool Fl_Surface_Device::is_current()ManoloFLTK
2018-12-04Define useful implementations of Fl_Graphics_Driver::push_no_clip() and ↵ManoloFLTK
pop_clip().
2018-06-27Remove a few useless 'friend' statements.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12983 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-26Move Fl_Screen_Driver.H from FL/ to src/Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12975 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-23Doxygen only: fixed all block comments starting with an asterisk to ↵Matthias Melcher
space-only, fixed doxygen keywords prepended with @ to use a backward slash instead. No code was changed. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12970 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-05-12Remove public member function Fl_Window_Driver *Fl_Window::driver() so class ↵Manolo Gouy
Fl_Window_Driver is not in FLTK public API. This function is replaced by static Fl_Window_Driver* Fl_Window_Driver::(const Fl_Window *win). The purpose is to have class Fl_Window_Driver outside from FLTK ABI. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12915 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-05-09Remove a bunch of useless #include <FL/Fl_Printer.H> statements.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12909 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-05-06Make member function Fl_Image_Surface::get_offscreen_before_delete() be private.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12904 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-05-01Make virtual void Fl_Surface_Device::end_current_() have no argument because ↵Manolo Gouy
none is used. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12889 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-26Simplify API for Fl_Image_Surface::Fl_Image_Surface(int w, int h, int ↵Manolo Gouy
high_res, Fl_Offscreen off) with non-null offscreen. The caller no longer needs to call Fl_Image_Surface::get_offscreen_before_delete() before object deletion, because the object destructor knows the offscreen has not been created by the Fl_Image_Surface constructor. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12874 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-25class Fl_Xlib_Image_Surface_Driver : Remove unused member variable.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12871 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-19Fix handling of bg argument of fl_draw_pixmap(char**, int , int , Fl_Color ↵Manolo Gouy
bg) during direct drawing of pixmap image data. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12859 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-19Reorganise access to the value of the GUI scaling factor with public getter ↵Manolo Gouy
and protected, virtual setter member functions. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12858 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-16Remove virtual member Fl_GraphicsDriver::mask_bitmap(char **) and its ↵Manolo Gouy
re-implementations. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12843 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-15Restore building for X11 with HAVE_XRENDER = 0Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12837 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-13Homogenise and simplify the API of Fl_Graphics_Driver::cache(image-type *) ↵Manolo Gouy
virtual member functions. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12833 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-12Image drawing: simplify the code organisation to better support ↵Manolo Gouy
Fl_Image::scale(). Graphics drivers now use up to 6 virtual member functions to support Fl_Image drawing in the context of GUI and image rescaling : virtual void draw_pixmap(Fl_Pixmap *pxm, int XP, int YP, int WP, int HP, int cx, int cy) virtual void draw_bitmap(Fl_Bitmap *bm, int XP, int YP, int WP, int HP, int cx, int cy) virtual void draw_rgb(Fl_RGB_Image *rgb, int XP, int YP, int WP, int HP, int cx, int cy) and virtual void draw_fixed(Fl_Pixmap *pxm, int XP, int YP, int WP, int HP, int cx, int cy) virtual void draw_fixed(Fl_Bitmap *bm, int XP, int YP, int WP, int HP, int cx, int cy) virtual void draw_fixed(Fl_RGB_Image *rgb, int XP, int YP, int WP, int HP, int cx, int cy) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12828 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-05X11: Fix drawing of sliders with gtk+ scheme and GUI scaling >= 2 -- continuedManolo Gouy
Other places where line_delta_ is to be used. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12823 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-04-05X11: Fix drawing of sliders with gtk+ scheme and GUI scaling >= 2 that left ↵Manolo Gouy
footprints when moved. The fix is to use the X11 graphics driver's line_delta_ private member variable also when drawing complex shapes with fl_begin_loop(). The gtk+ scheme does use fl_begin_loop() to draw its frames. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12821 ea41ed52-d2ee-0310-a9c1-e6b18d33e121