Commit Graph

10828 Commits

Author SHA1 Message Date
ManoloFLTK
da15a12ffe Fix " Wayland compilation warnings" (#788) 2023-10-09 08:11:54 +02:00
Albrecht Schlosser
1fd6f0dd3a Fix STR 3458: "GLUT compatibility mode segfaults"
... "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-10-07 17:14:11 +02:00
ManoloFLTK
f6690a9742 Fix: macOS runtime warning makeKeyWindow... (#785) 2023-10-06 19:02:09 +02:00
ManoloFLTK
f20e2188fd Change prototype to Fl::now(double offset = 0) - cont'd 2023-10-06 17:11:43 +02:00
ManoloFLTK
4d9805537b Change prototype to Fl::now(double offset = 0) 2023-10-06 16:23:08 +02:00
Matthias Melcher
ac047172b9 Removes stray files. 2023-10-06 15:39:53 +02:00
Matthias Melcher
068e10326e FLUID: typo 2023-10-06 13:47:26 +02:00
ManoloFLTK
6571bd2f28 Wayland: whitespace only changes 2023-10-05 17:07:55 +02:00
ManoloFLTK
e8f633cf2f Wayland: remove useless code 2023-10-04 10:24:27 +02:00
ManoloFLTK
aa14ffe6a1 Fix fltk.coredev: mandelbrot demo segfault under Wayland 2023-10-03 21:56:01 +02:00
Albrecht Schlosser
f8bf7e5da4 Avoid integer overflow on Windows in delta time calculation
See comment in the code. This makes the implementation more future
proof although it's still problematic starting around 2038.
2023-10-03 16:37:59 +02:00
Albrecht Schlosser
cfa1a3bd40 Enhance info about documentation generation
- update build requirements
- clarify CMake options
- make clear that a POSIX shell and some Unix tools are required
  to build the PDF documentation
2023-10-03 09:19:36 +02:00
ManoloFLTK
4132590d8c Wayland: add security test to avoid NULL pointer dereferencing 2023-10-03 08:13:33 +02:00
ManoloFLTK
74e63d9077 Wayland: document throttling redraws during interactive resizes 2023-10-03 08:12:13 +02:00
Matthias Melcher
76b16d8cef Fixes Fl_Tabs clipping offset 2023-09-30 13:41:49 +02:00
Albrecht Schlosser
a1f47148a3 Remove unused variable, silence compiler warning
warning: unused variable ‘dy’ [-Wunused-variable]
2023-09-29 16:27:03 +02:00
Matthias Melcher
144d7d3529 Adds Fl_Menu_::prev_mvalue() (#685) 2023-09-29 15:22:47 +02:00
Matthias Melcher
25a9af2f06 Fixes overlapping tabs (#718)
* corrects clipping of overlapping tabs
* fixes some issues with exotic box types
like rounded boxes
2023-09-29 14:12:39 +02:00
Matthias Melcher
f3eae58c52 Draw parent window backdrop on Fl_Tabs (#718) 2023-09-29 14:12:39 +02:00
ManoloFLTK
ff0a3a9d59 Wayland: throttle window redraws during interactive resizes (#776) 2023-09-29 12:29:52 +02:00
Matthias Melcher
491db97a3b
Reversed README.md 2023-09-28 16:01:29 +02:00
Matthias Melcher
87b635141a
Make README.md clickable 2023-09-28 15:57:21 +02:00
Albrecht Schlosser
bb7c68a477 Update dependencies 2023-09-27 16:49:46 +02:00
Matthias Melcher
371ff17639 FLUID: fixing settings dialog update 2023-09-27 13:14:09 +02:00
Matthias Melcher
e68f5e6c42 FLUID: minor fixes 2023-09-27 12:57:12 +02:00
Matthias Melcher
c073c1fca7 Fix for CLEAR flag in Fl_Preferences
Fixed warning in new Fl_Preferences constructor
2023-09-27 12:26:35 +02:00
Matthias Melcher
71b8e77935
FLUID: adds greatly enhanced Shell Commands (#774)
The user can add an arbitrary number of highly configurable 
shell commands through the setting panel. The commands can
be saved as user preferences, inside the .fl file, or exported
to an external file. Shell scripts can be limited to individual 
platforms, can have shortcut keys, etc. .

* documentation will follow
* support to call `fltk-config` will follow
2023-09-26 16:01:03 +02:00
ManoloFLTK
2bbdd49465 Remove "warning: extended initializer lists only available with …" 2023-09-26 15:38:21 +02:00
Matthias Melcher
2c528b816c FLUID: Typos in docs 2023-09-26 12:39:52 +02:00
ManoloFLTK
75273c06c5 Add Fl_Timestamp Fl::distant_past()
Can be handy when Fl::seconds_since() is used early at program startup
2023-09-26 12:31:20 +02:00
Matthias Melcher
0a2f05a2fe FLUID: Fixes regression #777
Wrote wrong path in #inlude statement under certain
conditions. Also removed 'snap' tag if not needed.
2023-09-26 00:29:26 +02:00
ManoloFLTK
b8fa522ca4 New member function Fl_Wayland_Graphics_Driver::create_wld_buffer()
The previous member Fl_Wayland_Graphics_Driver::create_shm_buffer() is now
renamed to create_wld_buffer() and divided in 2 parts:
- one is related to the draw buffer;
- the other is related to the wl_buffer and is what is now called create_shm_buffer().
This allows to delay creation of the wl_buffer until absolutely necessary,
done inside Fl_Wayland_Graphics_Driver::buffer_commit().
2023-09-25 16:40:01 +02:00
ManoloFLTK
59b251cc39 Slightly simpler Fl_Wayland_Window_Driver::flush()
and beef up description of Wayland's mechanism to throttle screen redrawing.
2023-09-24 09:52:48 +02:00
Albrecht Schlosser
c02ecbcae2 Regenerate src/Fl_File_Chooser.cxx from its fluid source file 2023-09-22 14:03:34 +02:00
Albrecht Schlosser
226a4ea784 Fix potential invalid stack variable access in test code
This code was (and is still) commented out but it *would* trigger
a "stack buffer overflow" error *if* uncommented.

The new code demonstrates how a binary object (Fl_Preferences 'bed')
can be dumped to a preferences file in binary format (if activated).
2023-09-22 14:03:34 +02:00
Albrecht Schlosser
43ff6f0c32 Update dependencies 2023-09-22 14:03:34 +02:00
ManoloFLTK
220dd47bea Increase reuse of mmap'ed data by FLTK Wayland buffer factory 2023-09-22 11:51:24 +02:00
Greg Ercolano
cee69943e5 Small FNFC doc clarification; "pilots" -> "presets" 2023-09-20 23:34:43 -07:00
ManoloFLTK
a26e12590c Step back commit 8248183 that's unsatisfactory while resizing windows 2023-09-18 13:06:13 +02:00
ManoloFLTK
be07e5448f Improve reuse of mmap'ed data by Wayland buffers 2023-09-17 13:05:50 +02:00
ManoloFLTK
824818303c Restore Doxygen doc of fl_graphics_driver 2023-09-17 09:00:48 +02:00
ManoloFLTK
5fa994fcfc Wayland.dox: rephrase how FLTK and Wayland interact 2023-09-17 07:28:05 +02:00
ManoloFLTK
5e15c34512 Wayland.dox: mention preprocessor variable FLTK_USE_WAYLAND 2023-09-16 07:18:41 +02:00
ManoloFLTK
709decd35b README.txt: fix Wayland-related configure options 2023-09-15 12:27:33 +02:00
ManoloFLTK
aca9d09cb9 Wayland.dox: add miscellaneous complementary information 2023-09-15 11:31:08 +02:00
ManoloFLTK
c5433d6c1e Update libdecor to commit 422abaf9 dated 2023-09-07
The libdecor commit title is "libdecor-gtk: handle touch events"
2023-09-13 11:51:39 +02:00
Albrecht Schlosser
ede381c005 Fix Visual Studio shared library build
Todo: fluid-shared can't (yet) be built agains the shared fltk lib
  because of some linker errors. Needs investigation.

Note: fluid-shared is basically a test program to demonstrate linking
  against the shared FLTK libs but doesn't work yet using VS (MSVC).
  This is no problem for the functionality.
2023-09-12 23:18:46 +02:00
Albrecht Schlosser
e44a988c4a Fix unittest object file list in test/Makefile (#683) 2023-09-08 15:30:06 +02:00
Albrecht Schlosser
f5afea3421 Update Doxyfile.in again, now using all defined doxygen tags
The process to generate the docs now uses the full Doxyfile as given
by `doxygen -u Doxyfile.in` with a specific doxygen version, in this
commit version 1.8.14.

There's only one addition: 'HTML_COLORSTYLE = TOGGLE' which has been
added to doxygen in version 1.9.5. We're using it now to give the user
the choice to select a "dark mode" or "light mode" theme if the docs
are generated with doxygen 1.9.5 or later.

Unknown doxygen tags are now filtered silently and logged in files
documentation/Doxyfile_error.log and documentation/Doxybook_error.log,
respectively.
2023-09-07 18:34:04 +02:00
Albrecht Schlosser
41ca8f2050 Update Doxyfile.in from doxygen version 1.5.5 to 1.8.14
Most (if not all) doxygen tags introduced after 1.5.5 are commented out
  to avoid doxygen warnings about obsolete or unknown tags, except
  those tags that need a specific value.

Add 'HTML_COLORSTYLE = TOGGLE' (since 1.9.5) for better user experience.
  With this tag users can switch between dark and light mode *if*
  the docs were generated with doxygen 1.9.5 or later.

Enable search engine.

Log doxygen conversion errors and warnings to Doxy*_error.log,
  i.e. silence the doxygen conversion process.

documentation/src/index.dox: Remove background color from html
  index page for better contrast when using dark mode.
2023-09-07 18:34:04 +02:00