Commit Graph

11112 Commits

Author SHA1 Message Date
Albrecht Schlosser
1d73c0195c Improve docs and add two new Fl_Menu_Item methods (#875)
This addresses some issues pointed out by GitHub Issue #875.

Documentation lacked details about Fl_Multi_Label assignment and
correct memory handling.

The new methods
 - Fl_Menu_Item::image_label(const Fl_Image *) and
 - Fl_Menu_Item::multi_label(const Fl_Multi_Label *)
provide a cleaner interface to assign images and Fl_Multi_Label's
to menu items.

examples/howto-menu-with-images.cxx: carify some issues, fix leak,
  and use new Fl_Menu_Item::multi_label(const Fl_Multi_Label *).
2023-12-23 20:08:18 +01:00
Albrecht Schlosser
016c36c917 Fix memory free() mismatch (#875)
This issue was revealed during testing for GitHub Issue #875.

"ERROR: AddressSanitizer: attempting free on address which was not
malloc()-ed", reported by examples/howto-menu-with-images.cxx if
the window object was released at the end of the program, causing
Fl_Menu_::clear() to be called.

The issue was caused by casting all supported label types to
'const char *' which are stored in Fl_Menu_Item::text and then trying
to free() all text strings in Fl_Menu_::clear() under certain
conditions.

Now images and Fl_Multi_Label's are no longer (tried to be) free'd.
2023-12-23 20:05:48 +01:00
ManoloFLTK
f59702e290 A more cross-platform way to fix issue #876 2023-12-22 09:16:48 +01:00
Albrecht Schlosser
007e37d897 Ensure that exporting 'fl_disable_wayland' works
... with cmake_minimum_required(VERSION 3.4) or higher. This version
sets CMP0065 to 'NEW' which by default inhibits exporting global
symbols from executable programs.

For details see CMake policy CMP0065 and README.Wayland.txt.
2023-12-21 19:13:49 +01:00
ManoloFLTK
fcf91e51c0 Fix "Fl_Plugin_Manager::loadAll doesn't work correct" (#876) 2023-12-21 17:12:13 +01:00
ManoloFLTK
e466fe20c8 Fix "Fl_Input popup menu customize doesn't work" (#874) 2023-12-21 15:23:38 +01:00
ManoloFLTK
42ff55026e Fix "commit 96bacd3 may crash on X11" (#873) 2023-12-21 14:22:08 +01:00
Albrecht Schlosser
76a2c95f07 Fix a typo, trailing whitespace, and dependencies 2023-12-21 14:03:04 +01:00
ManoloFLTK
3984639270 Restore "configure --enable-shared" under Linux (#872) 2023-12-20 23:42:45 +01:00
Albrecht Schlosser
5df5daf78e Make the 'Forms' compatibility library 'fltk_forms' optional
This library is no longer needed in FLTK itself. There is only one
demo program (test/forms.cxx) that uses it if it is built. The demo
program displays a message if fltk_forms is not available.

The default is 'enabled' for backwards compatibility but this may
be changed to 'disabled' in a future version.
2023-12-20 17:33:37 +01:00
Albrecht Schlosser
9023648e6c Update README.txt and CREDITS.txt
- README.txt: typos, names, FLTK URL and other minor changes

- CREDITS.txt: update current maintainers, remove mail addresses
2023-12-20 17:05:18 +01:00
ManoloFLTK
bc5d7e77aa Remove typos in the documentation of fl_x11_use_display() 2023-12-19 19:36:07 +01:00
Albrecht Schlosser
05687d1cb4 Fix typos, formatting, and text alignment in test/forms.cxx
no real code changes
2023-12-19 19:21:39 +01:00
ManoloFLTK
96bacd3f9d Procedure to instruct FLTK to use given X11 connexion (#149) 2023-12-19 15:48:26 +01:00
Greg Ercolano
1e6ac9c9bb Fix issue #871 for html causing crashes 2023-12-18 11:32:34 -08:00
ManoloFLTK
46b2f50750 Wayland: Menu items are accessible when mouse is over another win (#869) 2023-12-18 07:49:02 +01:00
Albrecht Schlosser
855a50a5f6 Fix MSVC compiler warning 2023-12-17 18:05:36 +01:00
Matthias Melcher
469d3ef3d5 #842: Enables command line color arguments on macOS 2023-12-16 21:59:43 +01:00
Matthias Melcher
638e762d3e #674: FLUID: Scrolls shell script terminal to the bottom on every run 2023-12-16 18:53:01 +01:00
Matthias Melcher
5f3bea4614 #832: FLUID: Improves widget browser output 2023-12-16 18:43:27 +01:00
Greg Ercolano
c0d7fe9af9 Small doc clarification 2023-12-16 07:39:17 -08:00
Matthias Melcher
f7eb21d92e Fixes fl_message_position for widgets and subwindows
-  https://groups.google.com/d/msgid/fltkcoredev/902a753e-7430-4302-b384-c30c7d45e3bfn%40googlegroups.com.
2023-12-16 14:45:40 +01:00
Matthias Melcher
046bf23a5d Adds mouse wheel input to Fl_Counter 2023-12-16 14:22:22 +01:00
Matthias Melcher
ca028872e7 #868: Suppress warning about unused private members of Fl_Shortcut_Button 2023-12-16 14:07:08 +01:00
Greg Ercolano
bdbd3497d4 STR#3283: Add new Fl_Table right-click popup menu example 2023-12-16 00:07:33 -08:00
Albrecht Schlosser
411c3df1cb Fix memory leak in Fl_Terminal (#867) 2023-12-16 01:37:21 +01:00
Albrecht Schlosser
e951db4c49 Fix C++ comments in C file 2023-12-15 20:03:35 +01:00
ManoloFLTK
2030995f6b Wayland+libdecor: iImprove fl_is_surface_gtk_titlebar() 2023-12-15 15:48:47 +01:00
Matthias Melcher
04a5098a58 #840: Generously adds Fl::args_to_utf8() for MinGW support. 2023-12-15 13:04:57 +01:00
MatthiasWM
fdf578d936 #840: Fixes fixed buffer size in Fl::args_to_utf8() (fl_call_main) 2023-12-15 12:56:06 +01:00
Matthias Melcher
a118930d95 #832: FLUID: Adds custom fonts and colors for widget browser. 2023-12-15 12:31:29 +01:00
ManoloFLTK
ce06a6b519 Some reorganization of fl_libdecor-plugins.c 2023-12-15 12:05:41 +01:00
Greg Ercolano
bbafcafbe1 fix window titles for table examples 2023-12-14 14:43:46 -08:00
Matthias Melcher
14f4dec0b9 FLUID: Adds image scaling to widget dialog 2023-12-14 23:37:10 +01:00
Matthias Melcher
33d0718756 FLUID: option to show terminal, clear terminal, and clear history 2023-12-14 19:40:34 +01:00
ManoloFLTK
673fa2e09c FLTK implementation of the "GTK Shell" Wayland protocol - cont'd
The loop over all libdecor-gtk decorations is now made using libdecor's
data structures, rather than using FLTK's mapped window list.
2023-12-14 07:55:31 +01:00
MatthiasWM
6ac3e8e230 #840: Fixes fixed buffer size in Fl::args_to_utf8() 2023-12-13 20:00:49 +01:00
Albrecht Schlosser
0c712e50bc Fix X11 '_NET_ACTIVE_WINDOW' message (STR 3396)
Send a valid timestamp rather than 0.

For details see STR 3396.
2023-12-13 19:07:30 +01:00
Matthias Melcher
6b39bc095f #862: FLUID "Open FIle..." no longer closes current project...
...when user cancels out of file choose
2023-12-13 17:31:04 +01:00
Matthias Melcher
41dd84016d #862: Removes default shortcut from Fl_Shortcut_Button
- the current UI for fallback/default/original shortcut was
confusing, so I remove it until we find something better. I
kept the values so we can reinstate a better interface without
changing the API.
2023-12-13 16:55:16 +01:00
Albrecht Schlosser
3c6fed2dd7 Improve Fl_Tabs documentation (minor wording issue) 2023-12-13 16:11:16 +01:00
ManoloFLTK
0936c2a55d FLTK implementation of the "GTK Shell" Wayland protocol - cont'd
The pointer_enter() function now checks that its non-FLTK wl_surface  argument
is the wl_surface of the titlebar of a GTK-decorated window.
2023-12-13 14:48:08 +01:00
Greg Ercolano
eedc5bdc0e Allow walk while selection is being made 2023-12-13 02:52:03 -08:00
ManoloFLTK
9738e52511 macOS platform + GLUT: fix crash with glut_test - cont'd 2023-12-13 10:41:15 +01:00
ManoloFLTK
36d34983bb Wayland+GLUT: fix crash in glut_test application - cont'd 2023-12-13 10:17:22 +01:00
Greg Ercolano
817966f215 Address hang in issue #866 2023-12-12 13:47:55 -08:00
Matthias Melcher
c10183379f #188: Fixes Fl_Shared_Image ref count and find op
- ported froward from 1.3.9
- fixes ref count for original and other images
- fixes binary search issues
2023-12-12 22:44:49 +01:00
Matthias Melcher
32b10cb626 #863: Fixes Fl_tile resize behavior when scaling window 2023-12-12 22:07:39 +01:00
ManoloFLTK
04cf2c4c7d Wayland+GLUT: fix crash in glut_test application 2023-12-12 21:17:42 +01:00
ManoloFLTK
a20bace4e1 macOS platform + GLUT: fix crash with glut_test app 2023-12-12 19:46:38 +01:00