Commit Graph

11564 Commits

Author SHA1 Message Date
Greg Ercolano
257e20e929 Added Fl_Terminal::text() and docs 2024-03-02 22:47:45 -08:00
Matthias Melcher
f1c9b198bb Promote fl_strlcpy to <FL/fl_string_functions.h> 2024-03-02 23:49:35 +01:00
Matthias Melcher
4ccadff4b9 Fix test/editor use of strncy to strlcpy 2024-03-02 23:14:07 +01:00
Matthias Melcher
ec9430e744 FLUID: comments, typos, formatting 2024-03-02 22:58:57 +01:00
ManoloFLTK
7fea97c7a7 Fix regression introduced at 41740ca for non resizable windows - cont'd 2024-03-02 20:02:11 +01:00
Matthias Melcher
c9f54ad744 fltk-options: enlarge text area for Linux fonts 2024-03-02 19:41:51 +01:00
ManoloFLTK
b74099c5fd Add OPTION_SIMPLE_ZOOM_SHORTCUT to fine tune zoom-in shortcut 2024-03-02 17:25:10 +01:00
ManoloFLTK
a76229972e macOS: remove test that became useless after 5f20698 2024-03-02 08:12:54 +01:00
ManoloFLTK
34b8801fed Windows: fix moving window with Windows+Shift+arrow (#919) 2024-03-01 18:30:20 +01:00
ManoloFLTK
cc15700bdb Windows: improve changing scale values of display while app runs. 2024-03-01 14:00:43 +01:00
ManoloFLTK
266647d2a7 Windows: fix issue if moving window back & forth across screens (#919) 2024-03-01 12:20:10 +01:00
ManoloFLTK
0eef561e7b Windows: make Ctrl/+/-/0/ scaling system-wide if all screens have same DPI 2024-03-01 11:11:15 +01:00
ManoloFLTK
5f2069871d Move recognition of Ctrl= out of Fl::test_shortcut(unsigned) 2024-02-29 07:17:31 +01:00
Albrecht Schlosser
367826979d Fix a typo and the URL to an STR in a comment
no code changes
2024-02-28 15:54:02 +01:00
ManoloFLTK
f4fb973c5d Simplify code to recognize GUI rescaling shortcuts 2024-02-28 09:13:35 +01:00
ManoloFLTK
fa7fe31372 Document GUI scaling shortcuts - cont'd 2024-02-27 21:10:04 +01:00
ManoloFLTK
0359ecd53b Document how GUI scaling shortcuts FL_COMMAND/+/-/0/ work
Document also how to deactivate them.
2024-02-27 19:14:05 +01:00
ManoloFLTK
eb3977ac43 Fix regression introduced at 41740ca for non resizable windows 2024-02-27 18:52:25 +01:00
ManoloFLTK
fc46e771cd Improve prioritization of event handlers added at open display time 2024-02-27 16:20:25 +01:00
ManoloFLTK
746cbf861a Minor optimization of macOS automatic Window menu 2024-02-27 13:46:41 +01:00
ManoloFLTK
4863f959c8 macOS: Window menu of system menubar follows changes in active window 2024-02-27 09:13:41 +01:00
ManoloFLTK
f35ae7122d Stop GUI scaling when window is maximized or full screen (#919)
Don't rescale when any top window on same screen as focus window is fullscreen or maximized
2024-02-27 08:46:40 +01:00
ManoloFLTK
3f794d3abe Allow FL_COMMAND+'+' as macOS system menu shortcuts - cont'd 2024-02-26 17:48:18 +01:00
ManoloFLTK
0818d4ec5b Fix: Fl_Window::fullscreen() does not work correctly on Mac (#920) 2024-02-26 12:15:47 +01:00
ManoloFLTK
41740caa2e Don't rescale when top window is fullscreen or maximized (#919) 2024-02-26 11:00:42 +01:00
ManoloFLTK
2ea5291821 Allow FL_COMMAND+'+' and FL_CTRL+'0' as menu shortcuts 2024-02-26 10:46:28 +01:00
Albrecht Schlosser
77c726c79c CMake/macOS/X11: fix "FINK" search directories
note: use only if found.

Todo: check if we can get rid of explicit directory names like /opt/sw,
  /sw, /opt/X11, ...
2024-02-24 19:20:22 +01:00
Albrecht Schlosser
37c8c051ba Remove reference to automake which is not required 2024-02-24 18:10:35 +01:00
Albrecht Schlosser
f288aea10a Fix Fl_Group::resize() for groups w/o resizable() (#917)
Improve code comments to clarify which cases are handled in a code
block and why this is done. Subwindows have some special needs.
2024-02-23 19:21:26 +01:00
Albrecht Schlosser
a6dc84ac83 Fix CMake code that should only be evaluated on macOS
Too much simplified code when introducing modern CMake and renaming
some build options caused this issue. It's hopefully fixed nor, or
at least improved.

Todo: the code in question needs to be revised anyway.
2024-02-22 19:42:57 +01:00
ManoloFLTK
957becbe28 Fix: fl_height(int, int) decreases the font size after each call (#915) 2024-02-21 09:38:24 +01:00
ManoloFLTK
681e22a452 Add scale_handler first so it has least priority of all handlers 2024-02-20 21:47:43 +01:00
ManoloFLTK
69d7991acc FL_MENU_TOGGLE/RADIO items do not update in macOS menu bar (#916) 2024-02-20 18:41:12 +01:00
ManoloFLTK
ba5ed296e9 Improve implementation of the macOS Window menu
The macOS Window menu is connected to the item array of the  macOS menubar
via FL_SUBMENU_POINTER. This facilitates memorization of pointers
to items of the macOS menubar because the item array no longer changes
each time a window opens of gets closed.
2024-02-20 16:00:01 +01:00
Matthias Melcher
4649188cf6 Remove unused FLUID documentation refs in CMake config 2024-02-20 15:03:08 +01:00
Matthias Melcher
fe9ecec1be Remove unfinished FLUID documentation.
A copy of the docs exists in my repo clone and
will be merged back when the docs are useful and
part of the CMake setup.
2024-02-20 15:00:49 +01:00
Matthias Melcher
8cce99b2c7 Typo 2024-02-20 14:35:54 +01:00
Matthias Melcher
2f343ad64d
Fix Terminal character position and add word selection (#906)
* Improve horizontal interactive selection
* Using half-character positions to implement selection
  similar to Fl_Input.
* Add word and line selection
* Fix vertical position of text
2024-02-18 13:29:37 +01:00
Greg Ercolano
eb4916344b Clear screen also clears attributes/xterm modes (#911)
Clear was setting characters to a space using the current style,
but if the style left Dim/Bold/Inverse (etc) enabled, that was being
used to affect the clear character, and thus affected clearing screen.

Seems weird tho; what if one wants to do a cleol (\033[K) on a screen
that is all inverted text; is there no way to use inverse mode for
clearing to the end of line? Or to delete a character?
2024-02-17 07:59:42 -08:00
ManoloFLTK
3ecadc0a8e Update bundled libjpeg to version 9f 2024-02-17 12:20:28 +01:00
ManoloFLTK
bf938da079 Update bundled libpng to version 1.6.42 2024-02-17 12:20:28 +01:00
ManoloFLTK
b90437119d Update bundled zlib to version 1.3.1 2024-02-17 12:20:28 +01:00
Greg Ercolano
00cdb1757f Added attribute checks to test/terminal for recent changes. 2024-02-16 13:14:15 -08:00
Greg Ercolano
58a1496389 Fixed Fl_Terminal xterm color 39/49 handling, and other mods.
Fixed a bug in the handling of xterm color 39 + 49, which avoids
applying Dim/Bold if default color is the special "see through" color
0xffffff00. A test will be added to test/terminal to excercise this
in a follow up commit.

Renamed CharStyle::?gcolor_uchar() -> CharStyle::?gcolor_xterm()
for a consistent naming convention.

Changed fltk_fg_color() from a static func to a CharStyle method
because it needs to access the defaultcolor for the special cases
for xterm colors 39 and 49.

Made CharStyle::attr_color() private, as per Jonathan Griffitts request
in issue #909.

Improved docs regarding effects of Dim/Bold for xterm and non-xterm color
methods.

Fl_Terminal::text?gcolor_xterm() methods now use CharStyle::?gcolor_xterm()
methods, removing the duplicate code logic.
2024-02-16 13:10:06 -08:00
Greg Ercolano
1069ebc1b6 Fix Fl_Terminal xterm CharStyle charflags (#909) 2024-02-16 04:46:05 -08:00
Greg Ercolano
cc562761c2 Fix text overflow in fluid widget panel (#908)
Made fonts slightly smaller,
enlarged/moved some widgets in Alignment: group.
2024-02-15 09:25:28 -08:00
Albrecht Schlosser
0987c763ec CMake: fix "LIBDECOR_PLUGIN_DIR" undefined error
This could happen on Linux if built with CMake option
  "-DFLTK_USE_SYSTEM_LIBDECOR=OFF"
2024-02-14 22:57:55 +01:00
Albrecht Schlosser
b282ee0335 CMake: remove unintended debug output 2024-02-14 17:51:51 +01:00
Albrecht Schlosser
7992b0b9ab CMake: fix installation on macOS
fluid and fltk-options are now installed correctly as bundles and as
stand-alone executables side by side in the 'bin' folder relative
to CMAKE_INSTALL_PREFIX.

This works but the installation folders may be changed in the future.

Targets fltk::fluid is now exported correctly so

  find_package(FLTK CONFIG ...)

works with both the build folder and an installed version.
2024-02-14 17:06:10 +01:00
Albrecht Schlosser
cd3cb62770 CMake: simplify resources.cmake
Note: CheckIncludeFiles caches the result in an 'internal' variable.
Hence mark_as_advanced() is not necessary for these variables.
2024-02-13 16:15:46 +01:00