Commit Graph

11126 Commits

Author SHA1 Message Date
ManoloFLTK
a893cc3f5e Wayland: fix processing of '.' keypad key (#881) 2024-01-06 09:22:40 +01:00
ManoloFLTK
bc28433f2e Wayland: numeric keypad keys don't work as intended - cont'd (#881) 2024-01-05 19:34:46 +01:00
ManoloFLTK
944b5e7072 Wayland: numeric keypad keys don't work as intended (#881) 2024-01-05 19:05:36 +01:00
Albrecht Schlosser
3b1ea22d1d Remove unused variables [-Wunused-variable] 2024-01-04 15:29:07 +01:00
Greg Ercolano
04bf5c5a34 Limit test/terminal window size
Prevents window from squishing buttons horizontally.
Allows tty height to shrink to no less than a single line.
2024-01-03 23:08:18 -08:00
Matthias Melcher
71d3cdd337 Removes debugging printf. 2024-01-04 01:27:40 +01:00
Matthias Melcher
46c9cf2f10 #797: Improves Fl_Tile resize behaviour
- if a tile with a size range is resize smaller than the
minimum size of all children, the children will now no
longer shrink, and expanding will make them work
again as expected.
2024-01-04 01:26:40 +01:00
Albrecht Schlosser
d237d186ae CMake: add missing configuration output statement 2024-01-01 19:14:26 +01:00
Albrecht Schlosser
ecb3e40d69 Fluid: fix "MergeBack" preference location
... although currently disabled - just in case this feature will be
re-enabled.
2023-12-30 17:37:31 +01:00
Matthias Melcher
a09c75e9bc Adds Fl_Input RMB menu translation to test/preferences
This also updates the RMB menu labels before every popup so
that changing the labels after creating the widgets still reflects
that change correctly.
2023-12-28 15:43:21 +01:00
ManoloFLTK
30f2ec8185 Fix for bug in Mutter Wayland compositor (#878) - cont'd
Add more tests to do additional operations under stricter conditions
2023-12-28 11:28:47 +01:00
ManoloFLTK
6143764885 Fix for bug in Mutter Wayland compositor (#878)
Mutter implements too strictly this rule expected from compositors about "frame callbacks" :
"A server should avoid signaling the frame callbacks if the surface is not visible in any way,
e.g. the surface is off-screen, or completely obscured by other opaque surfaces."
When a window is being interactively resized, it makes no sense to create a frame callback
for an entirely covered surface but then never signal the surface can be redrawn,
because this blocks the resize operation.

Neither KWin nor Weston have this problem.
2023-12-28 09:59:51 +01:00
ManoloFLTK
73bd4a53dd Fix position of 1-button Fl_Message windows 2023-12-27 12:15:25 +01:00
ManoloFLTK
bb5cb5b6d4 Wld: export only member functions for ./configure --enable-shared (#872) 2023-12-26 16:00:44 +01:00
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