Commit Graph

11750 Commits

Author SHA1 Message Date
Albrecht Schlosser
9dd8bf4b60 Document Fl_Flex and Fl_Grid in the list of group widgets 2024-10-07 17:15:20 +02:00
ManoloFLTK
6e5f3f7ecb Make Pango-handled text accept legacy CP1252-encoded text 2024-10-07 16:20:59 +02:00
Albrecht Schlosser
05d78e8ebd Improve documentation on mouse and keyboard events 2024-10-07 16:13:11 +02:00
Albrecht Schlosser
0b4bea1eea Fix shortcut FL_CTRL+'=' on Windows (#1086)
Strictly spoken, commit 3fbd4f944f introduced a regression on Windows.

The additional table entry VK_OEM_PLUS overrode the old behavior
because the value of VK_OEM_PLUS is 0xbb (see comment in code).
2024-10-07 14:33:44 +02:00
Albrecht Schlosser
16d59008c2 Add option to test scaling shortcuts in test/menubar
Note: if enabled, then the usual global scaling shortcuts don't work
  and scaling by shortcuts is disabled.

This is intended for testing and not for normal usage.
2024-10-07 14:27:01 +02:00
Matthias Melcher
18bda5315d Update Widget order in test/keyboard. 2024-10-07 11:59:49 +02:00
dannye
5c6ec56b33
Submenus with no callback enter their submenu instead of closing the whole menu (#1043)
Thanks for those nice changes.
2024-10-06 19:19:54 +02:00
Matthias Melcher
6e3b64425e Add fwd and back mouse buttons to test/keyboard 2024-10-06 18:53:03 +02:00
Albrecht Schlosser
4f4a9be15b Support mouse buttons 4 + 5 (aka "side buttons") (#1076, #1068)
This work is based on PR 1068 (patch by @CendioHalim) and
extended to store button status (4,5) in Fl::event_state() like
it's done for other mouse buttons (1-3).

Changes:
- new symbol: FL_BUTTON4 = side button 1 = "back"
- new symbol: FL_BUTTON5 = side button 2 = "forward"
- modified  : FL_BUTTONS now includes bits for two side buttons

Note: the status of these new buttons is not maintained by X11,
  therefore we need to maintain them in internal variables for
  this platform.
2024-10-06 18:53:03 +02:00
Albrecht Schlosser
3fbd4f944f Apply scaling-shortcut-kludge.patch for Windows
... as proposed by Manolo in a private mail.

This patch allows to detect "ctrl+'-' on keyboards with digits in
uppercase positions (e.g. French)" but this is only preliminary for
FLTK 1.4.0.

Windows keyboard handling should be revised in FLTK 1.5.0 or higher.
2024-10-06 18:44:31 +02:00
Matthias Melcher
0594d9a1a0 Update FLUID .fl files in the test/. 2024-10-06 17:53:57 +02:00
Albrecht Schlosser
133d8fb96d Update comment, sorry for the noise 2024-10-06 17:44:20 +02:00
Albrecht Schlosser
cd0f5aec24 Add comments regarding X11 keyboard layout handling
This commit doesn't change the code flow although the code has been
slightly refactored.
2024-10-06 17:42:22 +02:00
Matthias Melcher
9eb5f11c39 FLUID: Fixes file reading bug, introduces two weeks ago: #1078 2024-10-06 17:33:13 +02:00
Andrew Fuller
3431c9d21a
Fl_Text_Display: Fix text selection off-by-one bug (#1080)
This seems to have been left over from when mouse text selection would start a text selection on the left side of the character and always extend the selection to include the character under the cursor.

We now perform text selection based on whether the selection spans across the horizontal center of a character and so this next_char() causes the endpoint of the selection to be incorrectly shifted to the right.
2024-10-06 16:18:37 +02:00
ManoloFLTK
9d194ac960 Add necessary dirty indicator 2024-10-04 17:39:36 +02:00
ManoloFLTK
ea80a31266 macOS fix for "Fl_Window::cursor(...) does not work reliably on some platforms" (#1082) 2024-10-04 17:33:50 +02:00
Andrew Fuller
f348e2bdb9 Fix bug in Fl_Text_Display when tab is followed by multibyte char
When the user clicks the right half of a tab, we add 1 (the byte len of the tab) to obtain the starting index of the following character.
2024-09-28 11:05:05 +02:00
ManoloFLTK
84eeac5892 Fix issue about Fl_Tabs and maximizing window under Windows (#1075) 2024-09-25 10:23:47 +02:00
ManoloFLTK
a333817f41 Mark CMake option FLTK_USE_PANGO as highly recommended under X11 2024-09-23 19:41:44 +02:00
ManoloFLTK
c91a452ba3 CHANGES.txt: mention support for macOS 15 Sequoia 2024-09-23 19:40:51 +02:00
Matthias Melcher
da20d8397d FLUID: Improved paste order option 2024-09-15 14:00:15 +02:00
Matthias Melcher
b9b2f5d10f FLUID; Minor cleanup and code docs. 2024-09-14 23:14:52 +02:00
Matthias Melcher
4ff85176c9 FLUID: Improved insertion point for duplicate
Make a better guess where nodes should go when duplicating
a branch of the scene graph
2024-09-14 23:04:27 +02:00
ManoloFLTK
382d6b2fbd Bypass Mutter bug for menubar in fullscreen window (see #1061) 2024-09-14 15:08:03 +02:00
Matthias Melcher
e7f1247552 FLUID: type node placement in scene graph revised
- fixes copy/paste operation that would place pasted types wrong
- improves paste into folded and unfolded groups
- improves duplication of multiple types
- much improved placement of types that don;t fit at the
  requested position
- some more testing will follow in the next days
2024-09-14 01:10:41 +02:00
ManoloFLTK
bb917628ff Fix "Wayland crash on mapping windows at startup" (#1072) 2024-09-13 11:47:08 +02:00
ManoloFLTK
6aa5b70307 Fix problems introduced at commits 9b777cc and d70c79b 2024-09-13 11:39:08 +02:00
ManoloFLTK
31f4a44054 Fix typo in Doxygen text: unod --> undo 2024-09-12 14:14:18 +02:00
Matthias Melcher
e2b703e77d FLUID: formatting 2024-09-12 01:38:35 +02:00
Matthias Melcher
0ac0ec2aa3 FLUID: Eliminating two globals 2024-09-11 22:29:45 +02:00
ManoloFLTK
5cc9845f2f Fix "fl_read_image() missing right and bottom pixel line" (#1066) 2024-09-11 22:17:07 +02:00
Matthias Melcher
a7328d940b FLUID: Imporving method name can_have_children() 2024-09-11 15:00:48 +02:00
ManoloFLTK
9b777cc011 Wayland + Mutter: fix issue with menubar on fullscreen window (#1061) 2024-09-10 07:50:40 +02:00
ManoloFLTK
d70c79b8bc Wayland: one more fix yet for interactive move of subwindow inside parent 2024-09-09 10:27:04 +02:00
ManoloFLTK
2a87244ae3 Add support of GL with Wayland for Linux on Apple hardware 2024-09-07 16:50:14 +02:00
ManoloFLTK
17cebc851b Add pointer to Fl_Image::scale() to documentation of Fl_Image::copy(int, int) 2024-09-07 11:49:05 +02:00
Matthias Melcher
47be73d4cb FLUID: fixing resizable behavior for windows in live mode (#1055) 2024-09-06 14:02:53 +02:00
Matthias Melcher
d8eb45531e Fixes menu scrolling for secondary screens (#1060)
- huge menus would scroll down when the mouse pointer hit
position 0, but for some secondary screens, the top edge is
not at y==0, so now we check for a range a the top border of
the working space of the screen showing the menu.
2024-09-04 16:06:29 +02:00
Matthias Melcher
2b1f15084d Fixes menubar glitch when mouse is at y==0 (#1060) 2024-09-04 15:23:22 +02:00
Albrecht Schlosser
b595db30d4 CMake/Windows: enable MSVC runtime DLL option for Clang (#1058)
User @supsm reported that using LLVM/clang to compile together with
the MSVC linker should support the MSVC runtime DLL selection.

This commit enables the option on Windows except MinGW and MSYS
rather than MSVC only.
2024-09-03 11:17:58 +02:00
Matthias Melcher
2afeb6d647 FLUID Fix width of square button 2024-09-02 12:09:47 +02:00
Matthias Melcher
0ee76e5696 FLUID: Improve resizing behavior of properties dialog 2024-09-02 12:08:01 +02:00
Matthias Melcher
2834213815 Reverting false Ctrl Key fix on Windows
- 1ae43956e2
2024-09-02 11:59:36 +02:00
Matthias Melcher
aa6ce6b9f1 Cairo image drawing improvements 2024-09-01 16:11:31 +02:00
Matthias Melcher
634ce805e5 Fixing set_font and image overflow for Cairo. 2024-08-31 23:20:27 +02:00
Matthias Melcher
d51046cdea FLUID: Add Synchronized Resize. #1055 2024-08-31 20:36:34 +02:00
Matthias Melcher
e01c9ff6a0 Linux fixes for previous commit 2024-08-31 19:15:23 +02:00
Matthias Melcher
c8b8eb4b84 FLUID: Fixes grouping and ungrouping, #1056
- grouping a bunch of widgets will now create the new
  group in the expected place
- also add grouping and ungrouping of menu items
- ungrouping now also works with only a few items
  selected instead all items, moving the selection before
  the group
2024-08-31 19:08:18 +02:00
ManoloFLTK
1da9438a1c CMake: replace check_function_exists() with check_symbol_exists() (#1053) 2024-08-31 16:59:03 +02:00