summaryrefslogtreecommitdiff
path: root/src/drivers/X11
AgeCommit message (Collapse)Author
2023-10-07Fix STR 3458: "GLUT compatibility mode segfaults"Albrecht Schlosser
... "when there's no current window". Silently ignore GLUT function calls that need a current window if the current window is NULL, return 0 from functions that return an 'int'. Check if window is shown in Fl_X11_Gl_Window_Driver::swap_buffers(). This would issue "XRequest.nnn: GLXBadDrawable 0x0" on X11 otherwise. Note: the chosen implementation to ignore GLUT calls silently appears to be compatible with GLUT (3.7) whereas FreeGLUT 3.0 would issue error messages and exit. The latter could be implemented as well but would be much more work.
2023-04-23Replace internal fl_create_offscreen() calls by new Fl_Image_SurfaceManoloFLTK
2023-04-21Fl_Window_Driver::destroy_double_buffer() does not need overridesManoloFLTK
2023-04-14Remove duplication of Pango standard font namesManoloFLTK
And move each array of standard font names to appropriate font-related source file
2023-02-14Rename class Fl_Display_Cairo_Graphics_Driver to Fl_X11_Cairo_Graphics_DriverManoloFLTK
2023-01-13Fix for "Rename Fl_X* Fl_Window::i private class member" (#223)ManoloFLTK
2023-01-12Remove useless #include directivesManoloFLTK
2023-01-09Virtual member Fl_Window_Driver::makeWindow() now returns voidManoloFLTK
2022-12-30Use `FL_OVERRIDE` for all overridden virtual methods (#611)Matthias Melcher
FL_OVERRIDE is defined as `override` for C++11 and higher FL_OVERRIDE is defined as `override` for VisualC 2015 and newer Don't interfere with Fl_Widget::override()
2022-12-10Defer opening the display as much as possible (#586)Matthias Melcher
2022-11-30Remove small files fl_XXX_gl_platform_init.cxxManoloFLTK
The single-function content of these files is moved to Fl_XXX_Gl_Window_Driver.cxx.
2022-11-11Remove redundant doxygen docs of fl_beep()Albrecht Schlosser
Also add a comment to all platform driver implementations.
2022-11-07Delete src/drivers/X11/Fl_X11_System_Driver.*ManoloFLTK
2022-11-07Create class Fl_Unix_Screen_Driver used by X11 and Wayland platformsManoloFLTK
2022-10-23Make Fl::display(const char *) active also for the Wayland platform.ManoloFLTK
2022-10-16Fix "Fl::focus() changes Fl_Group::current() to null" (#515)Albrecht Schlosser
This issue is caused by setting `Fl_Group::current(0);` in Fl_Window::show(), i.e. in Fl_X::make_xid(..) in an attempt to fix a "very common user bug: forgot end()". As long as this is done, this commit fixes the issue. For details see GitHub issue #515.
2022-10-02Clean use of virtual GLContext Fl_Gl_Window_Driver::create_gl_context().ManoloFLTK
2022-09-27Remove use of class Fl_Window_Driver inside libfltk_glManoloFLTK
2022-09-23GL3 support under X11: ask for compatibility profile if possible.ManoloFLTK
2022-09-01Simplify Fl_Window_Driver::screen_num() member functions.ManoloFLTK
2022-09-01Restore building with --disable-xftManoloFLTK
2022-08-29Make hybrid Wayland/X11 platform.ManoloFLTK
2022-08-20Remove FL_EXPORT qualifier from platform-specific class declarations.ManoloFLTK
2022-07-16Remove empty lineAlbrecht Schlosser
2022-07-16beep: use maximum loudness for error, otherwise system-defaultLeon Winter
2022-07-16Let beep use system default settingsLeon Winter
Please note that the parameter 'percent' of XBell(3). Given the value of 100, the system defined setting (normally specified via xset) is ignored and the percent of 100 is used instead. When calling the bell from fltk with FL_BEEP_DEFAULT I would expect to get the default (system specified) percent setting.
2022-07-09Fix non-xft build referencing fl_get_font_xfld() (#461)Albrecht Schlosser
This is only one part of issue 461 which describes two build errors on "Raspberry Pi4 bullseye". It turned out that the build didn't find Xft.
2022-06-19Move input method support to Fl_Screen_Driver from Fl_Graphics_DriverManoloFLTK
2022-05-07Change protection levels in classes Fl_XXX_Gl_Window_DriverManoloFLTK
2022-05-05Move struct shape_data_type inside Fl_XXX_Window_Driver.ManoloFLTK
2022-04-12Modify test/cairo_test.cxx to show roles of OPTION_CAIRO and OPTION_CAIROEXT.ManoloFLTK
Also make clear that these options require, for now, Fl_Double_Window to work cross-platform.
2022-04-07Rename remaining FLTK_USE_CAIRO to FLTK_HAVE_CAIROEXTAlbrecht Schlosser
Thanks to Manolo for finding this.
2022-04-07Fix build w/o XftAlbrecht Schlosser
2022-03-21Fix for issue #418 : some warnings about unused functions.ManoloFLTK
2022-03-21Issue #359 RFE: access the MacOS windowid .ManoloFLTK
2022-03-14Move initialisation of X11 and Wayland built-in font names to ↵ManoloFLTK
fl_???_platform_init.cxx
2022-03-13Remove unnecessary #include directivesManoloFLTK
2022-03-13Separate platform init functions from platform-specific driver filesManoloFLTK
2022-03-04Add the Wayland platform to FLTK 1.4ManoloFLTK
2022-03-01Fix default size_range() calculation (issue #392, STR 3352)Albrecht Schlosser
2022-02-03Fl_Preferences (X11): Fix detection of preferences directoryAlbrecht Schlosser
- Fix compiler warning [-Wmaybe-uninitialized] for variable home - Reformat enum 'Root' for better readability - Add new enum values CORE_SYSTEM_L and CORE_USER_L - Improve documentation (deprecated and new enums) - Initialize internal static variable 'filename' which could be used uninitialized and thus return any previous value (type == MEMORY)
2022-02-03Reorganize classes Fl_System_Driver and Fl_Screen_DriverManoloFLTK
These virtual members are moved from Fl_Screen_Driver to Fl_System_Driver - wait(double) - ready() These virtual members are moved from Fl_System_Driver to Fl_Screen_Driver - copy(const char *stuff, int len, int clipboard, const char *type) - void paste(Fl_Widget &widget, int clipboard, const char *type) - clipboard_contains(const char *type) - clipboard_notify_change() These members are moved from Fl_X11_Screen_Driver to Fl_X11_System_Driver - poll_or_select_with_delay(double time_to_wait) - poll_or_select() and are made virtual in preparation for the introduction of class Fl_Unix_System_Driver.
2022-01-31Consolidate timeout handling across platforms (#379)Albrecht Schlosser
Add Fl_Timeout class Move platform independent code of Fl::wait() to main part - basic timeout handling - Fl::run_checks() - Fl::run_idle() - Fl::idle() - waiting time calculation (next timeout) - remove platform dependent "screen driver" stuff
2022-01-23Preferences XDG path (#377)Matthias Melcher
* Preferences: remove CamelCase from public interface. * Prefs: documentation. * Prefs: updating Doxygen comments * XDG conforming preferences path
2022-01-21Fix compiler warnings [-Wunused-variable]Albrecht Schlosser
... and missing return value [-Wreturn-type]
2022-01-19Fixing and upgrading Fl_Preferences (#374)Matthias Melcher
* Added filename function to Fl_Preferences Static function to get filename before opening. Member to get filename after opening. Bug fixes for memory mapped preferences. * ERROR is a macro on Windows, don't use it * Added Fl_Preferences::dirty(). User can now check if the database will be written when flushed or destroyed. Flush returns a crude error code. * Fl_Preferences::get binary data returns # of bytes read. * Verified group deletion code * Fl_Preferences ignores locale. This will make .prefs files interchangeable between different computers. * Updating the Preferences Mode to ignore locale. * Fixes in docs.
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-16Improve Fl_GTK_Native_File_Chooser_Driver in relation to FLTK windows.ManoloFLTK
Implement a new way to make the GTK file-chooser window modal-like by preventing any event processing by other FLTK windows. The new way is also no longer X11-specific.
2022-01-14Move make_transient() to Fl_Posix_System_Driver from Fl_Screen_DriverManoloFLTK
2021-12-09Remove compiler warnings about unused parameters (issue #307) - cont'dManoloFLTK