summaryrefslogtreecommitdiff
path: root/src/drivers/Xlib
AgeCommit message (Collapse)Author
2022-09-26Replace all calls to sprintf() by calls to snprintf().ManoloFLTK
2022-09-08Add necessary virtual qualifier to ~Fl_Font_Descriptor() and derived.ManoloFLTK
2022-08-29Make hybrid Wayland/X11 platform.ManoloFLTK
2022-08-25Remove unneeded FL_EXPORT declaration.ManoloFLTK
2022-08-20Remove FL_EXPORT qualifier from platform-specific class declarations.ManoloFLTK
2022-08-10Fix Fl_Xlib_Graphics_Driver for drawing tiled images.ManoloFLTK
Conflicting demands arise in the implementation of class Fl_Xlib_Graphics_Driver for drawing images with the XRender library : 1) Issue #163 leads to use a bilinear filter to draw-and-scale images. 2) This tends to blur the edges of drawn areas which is bad for tiled images (that is because the edges get alpha values, even for an opaque source image). This commit resolves the conflict adding a means to detect whether the library is busy drawing a tiled image. If so, the bilinear filter is not applied, drawn areas don't have blurred edges, resulting in a nice tiling. With this commit, these test apps perform correctly: - tiled_image is correct at all scaling factor values also when modified to use a depth-3 or a depth-4 Fl_RGB_Image as tile; - unittests - Drawing Images is correct at all scaling factor values; - pixmap_browser scales correctly up and down JPEG and PNG images.
2022-08-09Fix Fl_Xlib_Graphics_Driver for tiled-depth 3 images.ManoloFLTK
Modifying test/tiled_image to make it use a depth-3 image for tiling (rather than an Fl_Pixmap) shows the filter does require to use PictOpOver as the render op in the XRenderComposite call.
2022-08-09Fix Fl_Xlib_Graphics_Driver for RGB image drawing under XQuartz.ManoloFLTK
2022-07-26Remove redundant Fl_Xlib_Graphics_Driver::scale_bitmap_for_PostScript() ↵ManoloFLTK
under USE_XFT=1.
2022-07-20Change prototype of virtual Fl_Graphics_Driver::pango_font_description().ManoloFLTK
2022-06-19Move input method support to Fl_Screen_Driver from Fl_Graphics_DriverManoloFLTK
2022-03-24Remove platform-dependent type Fl_Bitmask (not in documented public API).ManoloFLTK
2022-03-21Avoid using same name (p) for distinct members of derived classes.ManoloFLTK
2022-03-21Fix for issue #416: Fl_Xlib_Graphics_Driver_font_xft.cxx has a libasan error.ManoloFLTK
2022-03-14Move initialisation of X11 and Wayland built-in font names to ↵ManoloFLTK
fl_???_platform_init.cxx
2022-03-13Separate platform init functions from platform-specific driver filesManoloFLTK
2022-01-16Rename FL/fl_string.h to FL/fl_string_functions.hAlbrecht Schlosser
This is part 1 of the final fix for a previous name clash on case insensitive file systems (fl_string.h vs. Fl_String.H).
2022-01-07Add virtual void Fl_Graphics_Driver::set_status() and implement for X11 ↵ManoloFLTK
platform.
2022-01-02Text input method for X11: fix for case when text widget is inside subwindow.ManoloFLTK
2021-12-12X11 platform: account for GUI scaling in location of input method aux window.ManoloFLTK
2021-11-26 Fix for issue #254: remove hardware overlay support - cont'd.ManoloFLTK
2021-11-26Fix for issue #254: remove hardware overlay support .ManoloFLTK
2021-11-25X11+XRender platform: more accurate drawing of RGB images when GUI is scaled.ManoloFLTK
RGB images are now drawn to a size that exactly fit discretised rectangles when non integral GUI scaling values are used.
2021-11-25Fix X11 platform bug when drawing transparent RGB image without XRender.ManoloFLTK
The bug would appear with test/device and when scaling up to 133% or above: the background of the Porsche pixmap would be truncated. The bug requires to set OPTION_XRENDERER=0 to appear.
2021-10-27Fix focus box drawing on X11 (partial fix for issue #156)Albrecht Schlosser
This fixes focus box drawing on X11 for some broken graphics drivers with line width zero as discussed on issue #156 titled "Incorrect rendering on Alpine Linux". This title is not entirely correct. The issue has been observed on other Linux distros as well if the "modesetting" driver is in effect. This does not fix rectangle drawing (missing pixels) in general which is obviously caused by a similar or the same driver issue.
2021-10-27Fix indenting, whitespace errors and dependenciesAlbrecht Schlosser
(no code changes)
2021-09-12Fix malloc/delete mismatch (X11 only)Albrecht Schlosser
2021-05-28New virtual member function Fl_Graphics_Driver::colored_rectf().ManoloFLTK
2021-05-26X11: fix fl_clip_box() coordinates > 16-bit (STR 3134)Albrecht Schlosser
Pre-clip coordinates to 16-bit range before using X11 clipping functions because X11 supports only 16-bit int's.
2021-03-26Remove X11-specific code from platform-independent Fl_PostScript.cxxManoloFLTK
2021-03-21Remove unnecessary system includes from public headersAlbrecht Schlosser
Add includes of system headers in the implementation files where necessary.
2021-03-13Fast pango (#201)ManoloFLTK
* Cache single unicode character widths under Xft+Pango
2021-03-11Unification of scaled coordinate calculations in class ↵ManoloFLTK
Fl_Scalable_Graphics_Driver Most coordinate calculations are done with the new inline function int Fl_Scalable_Graphics_Driver::floor(int coord) that is used by both the Windows and X11 platforms.
2021-03-02X11 platform: Accurately control RGB image drawing with GUI scaling.ManoloFLTK
2021-03-01Remove duplicated code between derived classes of Fl_Graphics_Driver - cont'd.ManoloFLTK
2021-03-01Remove duplicated code between derived classes of Fl_Graphics_Driver.ManoloFLTK
2021-02-16Fix whitespace errors (no code changes)Albrecht Schlosser
- remove trailing whitespace - convert tabs to spaces (configure.ac)
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.