Commit Graph

11764 Commits

Author SHA1 Message Date
Albrecht Schlosser
87527017b2 MacOS: Fix build folder for detection of SDK version (#1103)
Sorry for the noise...
2024-11-05 16:53:12 +01:00
Albrecht Schlosser
d5c0e215a4 MacOS: Improve detection of SDK version (#1103)
CMake/macOSMaxAllowed.c:
  avoid C compiler warning in test code

CMake/setup.cmake, technical changes:
- optimization: test SDK 15.0.0 first to avoid unnecessary test if true
- use a function instead of a macro
- use different names for (cached) result variables
- use prefix FLTK_ for cache variables

Note: the cache variables are marked 'internal': you may need to grep
  CMakeCache.txt to view them.
2024-11-05 16:09:39 +01:00
Matthias Melcher
a77cc0cb35 MacOS version check using try_compile: #1103
This change will work as well when cross-compiling.
2024-11-04 22:35:49 +01:00
Matthias Melcher
71a61d9cbf
Using try_run to get __MAC_OS_X_VERSION_MAX_ALLOWED (#1105) 2024-11-04 20:26:49 +01:00
ManoloFLTK
afe87de013 Correctly add weak-linked frameworks for increasingly high macOS versions 2024-11-04 13:06:36 +01:00
ManoloFLTK
5e91ecfd58 Fix Mac: Fl_Window::fullscreen() doesn't work for unfocused tabbed window (#1101) 2024-11-04 06:28:02 +01:00
ManoloFLTK
37144c06a1 Undo 6f6a375 that does not properly support macOS SDK 15.x (#1103) 2024-11-04 04:50:31 +01:00
Albrecht Schlosser
f90887ec49 Update ANNOUNCEMENT and CHANGES.txt for 1.4.0rc3 2024-11-03 19:05:29 +01:00
Matthias Melcher
5ac570c338 Fixes Fl_Tile resizing for "sudden" size changes: #1102
Enlarging and reducing wdth and height needed to be treated
seprately when the bottom right corner of the resizable would
overshoot the final size of the tile.
2024-11-03 18:53:18 +01:00
ManoloFLTK
6f6a375fca Recent macOS SDKs badly define MAC_OS_X_VERSION_MAX_ALLOWED
and the correct information is in __MAC_OS_X_VERSION_MAX_ALLOWED
2024-11-03 14:27:28 +01:00
ManoloFLTK
b8bf13ec65 Recent Xcode versions badly define MAC_OS_X_VERSION_MAX_ALLOWED
and the correct information is in __MAC_OS_X_VERSION_MAX_ALLOWED
2024-11-03 13:06:51 +01:00
Albrecht Schlosser
e138814257 Fix confusing alignment
note: no "real" code changes
2024-11-02 17:11:32 +01:00
ManoloFLTK
b3a6838128 Fix Mac: "Merge All Windows" fails if focused window is borderless (#1100) 2024-11-02 07:37:43 +01:00
ManoloFLTK
7ce5b74e12 New member function Fl_Cocoa_Window_Driver::capture_decorated_window_10_6(NSWindow*)
This function hides the code to capture an image of a window that varies a lot with macOS versions
2024-11-01 18:26:52 +01:00
Albrecht Schlosser
abf28f0b70 Improve and clarify documentation 2024-11-01 18:24:06 +01:00
Albrecht Schlosser
9bcef81cae Fix memory leaks in examples/shapedwindow.cxx
Note: usually we don't (need to) care for pseudo "leaks" at the end of
the program, we could just return, but this is a test and demo program.
2024-11-01 16:48:20 +01:00
Albrecht Schlosser
9d708a1b5a Fix compiler warning [-Wsign-compare]
Note: it is *unusual* (not FLTK style) that Fl_Window::border()
  returns 'unsigned int' instead of 'int'.

This should be investigated in FLTK 1.5 but maybe we can't change it:
  it's been so already in FLTK 1.3 and maybe earlier.
2024-11-01 16:35:03 +01:00
ManoloFLTK
818e2b77d1 Wayland: Fix issue in maximization of a borderless window (#1099)
Also fixes scenarios mixing fullscreen and maximization:
- maximize
- set fullscreen
- unset fullscreen
- un-maximize
with and without window border.
2024-11-01 15:43:18 +01:00
Albrecht Schlosser
34f465add2 Windows: fix compiler warning [-Wstrict-aliasing]
In function ‘void innards(...)’:
src/drivers/GDI/Fl_GDI_Graphics_Driver_image.cxx:132:23:
dereferencing type-punned pointer will break strict-aliasing rules
  BITMAPINFO &bmi = *((BITMAPINFO*)bmibuffer);
                     ~^~~~~~~~~~~~~~~~~~~~~~~

Found with gcc 12 (MinGW cross compiler)

Also: use correct sizes (sizeof) rather than hardcoded values.
2024-10-31 18:38:55 +01:00
ManoloFLTK
bdb5972504 macOS: prevent changing window border while window is maximized 2024-10-31 15:35:52 +01:00
ManoloFLTK
0ac1379985 macOS: prevent changing window border while window is fullscreen 2024-10-31 15:15:33 +01:00
ManoloFLTK
0cab095b3c Fix "Mac: Mixing native fullscreen button with Fl_Window::fullscreen() has side effects" (#1098) 2024-10-31 12:19:22 +01:00
ManoloFLTK
7237e0d308 Restore Fl_Widget_Surface::draw_decorated_window() under XQuartz 2024-10-31 09:17:55 +01:00
ManoloFLTK
3c03aecc3c Fix Windows: fullscreen doesn't always pick the correct display (#1097) 2024-10-30 17:32:57 +01:00
Albrecht Schlosser
56cf5684dc Make Fl_Window::flush() public for consistency with subclasses
... as discussed on fltk.general recently

Note: this method was already public in all subclasses of Fl_Window.
2024-10-30 14:30:08 +01:00
Albrecht Schlosser
510cffdb59 Improve layout of fltk-options
- slightly enlarge some field and object sizes
- fix window size_range()
2024-10-30 14:18:17 +01:00
Albrecht Schlosser
3c4f21783c Improve README.CMake.txt
- fix typos, clarify text
- improve headlines
- add "generic" CMake instructions
- add version spec to find_package command
2024-10-29 20:10:53 +01:00
Albrecht Schlosser
307148222a Update CHANGES.txt for 1.4.0 Release Candidate 2 2024-10-27 15:55:01 +01:00
ManoloFLTK
ae55a42c71 Quick fix for Windows Ctrl character handling - cont'd 2024-10-27 00:14:09 +02:00
ManoloFLTK
94a50ecd6b Windows: fix for using AltGr key after kludge for Ctrl+ (#1093) 2024-10-26 18:33:26 +02:00
Albrecht Schlosser
c0e07d3452 Add range check to Fl_Group::child(int)
Returns NULL if n is out of range to prevent accessing undefined
memory.
2024-10-25 02:39:47 +02:00
Albrecht Schlosser
f9f89be7d7 Improve docs about subclassing
- fix syntax errors in example code, e.g.: children_ is private
- use FLTK coding style
- improve alignment
2024-10-24 18:01:40 +02:00
Albrecht Schlosser
eb545c981b Fluid: replace 'FL_WINDOW+1' with 'FL_DOUBLE_WINDOW'
Note: 'FL_DOUBLE_WINDOW' *is* currently defined as 'FL_WINDOW+1'.
  This commit doesn't change real code but prevents potential bugs
  in the future if one of these constants would be changed.
2024-10-24 17:56:51 +02:00
Albrecht Schlosser
1fbcbee107 Mention HighDPI support in 'ANNOUNCEMENT' 2024-10-24 17:50:41 +02:00
Matthias Melcher
2228ec22d7 FLUID: Adds missing code for Grid and Flex live: #1092 2024-10-22 13:49:48 +02:00
Matthias Melcher
fb5c652200 FLUID: quick fix for live preview of Grid: #1092
- Grid Type live preview support was not implemented
- this is not a final fix, but just to avoid a crash
- additional work needed for Flex and Grid
2024-10-22 12:41:48 +02:00
Albrecht Schlosser
18e5c8232a Small typo fixes for release 2024-10-20 22:28:34 +02:00
Albrecht Schlosser
d85b67beac Fluid: update function_panel.fl from function_panel.cxx
Note: in commit a7328d940b
  "FLUID: Imporving method name `can_have_children()`"
  the file function_panel.cxx was edited w/o the corresponding
  fluid (.fl) file.

This commit fixes this, assuming the .cxx file was correct.
2024-10-20 20:03:09 +02:00
Albrecht Schlosser
32ac2ce0ac Update ANNOUNCEMENT and CHANGES files for release 1.4.0 2024-10-20 19:40:02 +02:00
Albrecht Schlosser
d163ab1357 Make remaining 'XPM' images 'const' 2024-10-20 17:00:16 +02:00
Albrecht Schlosser
74d827f71f Remove FL_MENU_RESERVED bit mask in favor of better documentation
This bit mask was added in commit 53b40f4138 in an attempt
to *document* reserved bits but it turned out that this mask could
have negative side effects on some newer compilers by propagating
the enum to an 'unsigned int' and issuing compiler warnings.

See this comment and follow-up's in fltk.general:
https://groups.google.com/g/fltkgeneral/c/7xrDkbkxiyw/m/rzEIJ7XhAgAJ
2024-10-19 15:58:51 +02:00
Matthias Melcher
737137cf78 Fixes Fl_Text_Display line number calculation. (#1088) 2024-10-19 15:53:29 +02:00
ManoloFLTK
6ea450407b Windows: process the +-containing key used with Ctrl in cross-platform way 2024-10-19 09:14:45 +02:00
Albrecht Schlosser
04c8dd9d26 Add forgotten FL_OVERRIDE attribute 2024-10-18 19:18:23 +02:00
Albrecht Schlosser
975cd3b4fd Remove unnecessary casts from glut demo programs
These casts are no longer useful since commit 5cd9f6fb80:
"STR #3323: glutAddMenuEntry now has a const label argument"
2024-10-18 17:01:34 +02:00
Albrecht Schlosser
89309ebbf2 Add missing *public* methods of Fl_Single_Window
- void make_current()
- void flush()
2024-10-18 16:30:23 +02:00
Albrecht Schlosser
1a4ec05b2b Update GitHub workflow: actions/checkout
update from 'actions/checkout@v2' to 'actions/checkout@v4'
2024-10-18 14:39:28 +02:00
Albrecht Schlosser
b2c6910997 Update README files
README.md:
 - add "Build FLUID User Handbook" badge
 - fix wording, add links

README.txt:
 - fix wording and copyright year
2024-10-18 14:39:28 +02:00
Albrecht Schlosser
cb6ee39852 Update documentation
- fix missing doxygen version in PDF docs created by CMake
- remove unnecessary quotes ('...') from version numbers and
  Git revisions (previously added for debugging purposes)
- fix navigation links at the bottom of tutorial pages (HTML only)
- remove 'D. Gibson' from documentation headers on his request
2024-10-17 16:01:32 +02:00
Matthias Melcher
acf3037ae8 FLUID: make sure that dialogs are visible for snapshots 2024-10-17 14:32:42 +02:00