Commit Graph

11780 Commits

Author SHA1 Message Date
ManoloFLTK
26ea55d5a4 Wayland: fix interactive moving and resizing of a subwindow - cont'd (#987) 2024-06-27 09:37:50 +02:00
ManoloFLTK
b692cc55da Navigation in menubar: wrap around when using arrow past end or start of menubar.
Slight behavior change of Fl_Menu_Bar relatively to 1.3: left and right arrow keys
when pressed in the first (resp. last) (sub)menu of a menubar wrap to the menu
at the other end of the bar. Also, left and right arrow keys open the previous
(resp. next) menu of the bar when pressed in a submenu.
Rationale: macOS, gnome and Windows apps equipped with a menubar do that.
2024-06-27 07:45:45 +02:00
Albrecht Schlosser
64cd50c130 Update test/input_choice demo (#978)
- add Fl_Choice widget for layout comparison
- rewrite button callbacks
- improve layout and other details

This is a follow-up to issue #978, "merging" the existing input_choice
demo with "choicetest_v3" as mentioned.
2024-06-27 03:19:26 +02:00
Greg Ercolano
a678dba2e3 More copyright updates (#978) 2024-06-26 16:02:12 -07:00
Greg Ercolano
6f5ef5bb43 Update copyright date (#978) 2024-06-26 16:00:30 -07:00
Greg Ercolano
438a8af9da Fixes to Fl_Choice provided by Albrecht (#978)
This addresses some border case issues in Fl_Choice wrt erco's
recent Fl_Input_Choice modifications. As Albrecht writes in issue #978:

- The width of the (simulated) menu button in Fl_Choice is shrunk
  if the height of the widget is lower than 20 for some schemes.
  This (a) is inconsistent, (b) doesn't look good, and (c) doesn't
  match the better layout of the Fl_Input_Choice widget after your patch.

- The constant height (+/- 8) of the divider line in some schemes
  would overlap the border of the widget if the widget's height is
  smaller than about 19. You fixed this in your patch and I "stole"
  your [erco's] fix for Fl_Choice.

- The divider line and the box borders of Fl_Choice and Fl_Input_Choice
  didn't align properly. I fixed this in my Fl_Choice patch as well
  (IMHO this is the right place to fix it).
2024-06-26 15:46:36 -07:00
Greg Ercolano
5c7ba51be3 Fix Fl_Input_Choice vs Fl_Choice drawing issues (#978)
Differences in size of arrows and overall look varies
with different schemes applied for issue raised by Philip Rose
first on fltk.general:

Subject: Discrepancy between Fl_Choice and Fl_Input_Choice
2024-06-26 15:40:41 -07:00
ManoloFLTK
fe4c94b4dc Navigation in menubar: wrap around when using arrow past end or start of menubar.
Fix some border cases.
2024-06-25 13:23:49 +02:00
Greg Ercolano
f44c163234 Add example to build w/warnings+fltk examples 2024-06-24 21:14:51 -07:00
ManoloFLTK
c1a950e25f Navigation in menubar: wrap around when using arrow past end or start of menubar.
See "Menu navigation in FLTK is different from Ubuntu X11 navigation" in fltk.general.
Menubar wrapping is what macOS and gnome applications do.
2024-06-24 16:18:56 +02:00
ManoloFLTK
0bb559c803 Wayland: account for old versions of the GTK shell protocol - cont'd
Not easy to get it right in absence of any documentation for "GTK Shell" protocol.
2024-06-24 14:52:08 +02:00
ManoloFLTK
8250cc7f7b Wayland: account for old versions of the GTK shell protocol - cont'd 2024-06-24 09:30:07 +02:00
ManoloFLTK
1c482b5dbf Wayland: account for old versions of the GTK shell protocol 2024-06-23 18:37:21 +02:00
ManoloFLTK
9c2d38fe3c Derive Fl_File_Chooser.cxx from Fl_File_Chooser.fl 2024-06-23 18:07:32 +02:00
ManoloFLTK
d5f7a3a68b Remove in Fl_File_Chooser.fl max size values from Fl_Window::size_range() call
Such max values must be checked to be larger than min values, else error may occur.
2024-06-23 18:03:39 +02:00
ManoloFLTK
54cff14f87 Fix for "Fl_Pack should override clear() to set resizable(0)" (#993) 2024-06-23 08:50:29 +02:00
ManoloFLTK
7a35e256bc Wayland: stop key repeats when focus leaves a window 2024-06-23 08:05:53 +02:00
ManoloFLTK
115ae94de0 Wayland: use serial rather than time argument of wl_keyboard_key() to support key repeats 2024-06-22 15:57:34 +02:00
Albrecht Schlosser
f7dbaba3ef Fix typo reported in fltk.general
... by Brian Larsen
2024-06-22 11:49:09 +02:00
Albrecht Schlosser
b8cba7c41e Update dependencies 2024-06-21 18:16:44 +02:00
Albrecht Schlosser
d9c8cebfbe Remove trailing whitespace
no code changes
2024-06-21 18:10:33 +02:00
Albrecht Schlosser
97bab9abbd Fix compiler warning on macOS: remove unused variable 2024-06-21 18:08:49 +02:00
Albrecht Schlosser
a053b42445 Fix Wayland memory leak (#991) 2024-06-21 17:59:50 +02:00
Albrecht Schlosser
456d53c403
Add Fl::remove_next_timeout(...) to remove only one timeout (#992)
This method also returns the data pointer of the removed timeout.

This new method is generally useful for user code and particularly
necessary to fix issue #991.

Co-authored-by: Albrecht Schlosser <albrechts.fltk@online.de>
2024-06-21 17:35:01 +02:00
ManoloFLTK
5ee1c0c9df macOS: fix changes to Fl_X::first with front window 2024-06-21 15:37:34 +02:00
ManoloFLTK
4aa321fe68 Avoid ScreenCaptureKit bug that may modify a non-resizable window's styleMask 2024-06-19 11:21:58 +02:00
ManoloFLTK
152cc52d89 Wayland: capture window titlebar as depth-4 image 2024-06-17 15:35:02 +02:00
Albrecht Schlosser
58016cf219 Update abi-compliance-checker howto
Add documentation link.

Thanks to Greg for mentioning this in fltk.coredev.
2024-06-17 10:24:20 +02:00
ManoloFLTK
41ffc2c485 Fix "Under Ubuntu 22.04 any FLTK application appears in the Appmenu as 'FLTK'" 2024-06-16 23:22:58 +02:00
ManoloFLTK
377ff11ec9 Link frameworks used by recent macOS versions with -weak_framework
This allows FLTK apps to use the recent frameworks when they run on recent
macOS versions even if the minimum supported macOS version of these apps is more
ancient than the framework.
2024-06-16 19:48:55 +02:00
Matthias Melcher
d137ddfa7d Improve Fl::option documentation. 2024-06-15 15:16:42 +02:00
Albrecht Schlosser
3cc5c090f9 X11: update XDND protocol from version 4 to 5 (#988)
Some applications insist on sending XDND protocol version 5 and
rejected (ignored) FLTK as DND receiver because we allowed only
protocol version 4. Known apps: Google Chrome and Chromium.

This commit enables XDND protocol version 5 in FLTK programs as
DND receiver.
2024-06-15 12:11:41 +02:00
ManoloFLTK
7d98413d46 macOS 15.0 Sequoia: fix capture of window titlebars
The previous procedure using CGWindowListCreateImageFromArray()
is obsoleted in macOS 15.0 .
The new procedure requires an additional framework: ScreenCaptureKit;
FLTK uses it only for macOS ≥ 15.0
2024-06-14 11:55:53 +02:00
ManoloFLTK
7104746413 Fix crash in howto-drag-and-drop under macOS 2024-06-11 15:04:48 +02:00
ManoloFLTK
d7d1d0d6b2 Wayland: fix interactive moving and resizing of a subwindow - cont'd (#987) 2024-06-11 11:37:45 +02:00
ManoloFLTK
b17357339f Fix: Changing default color palette affects opengl child drawing on Wayland (#989) 2024-06-09 20:04:23 +02:00
ManoloFLTK
e5693efb75 Wayland: support DnD from X11-FLTK to Wayland-FLTK 2024-06-08 09:38:28 +02:00
ManoloFLTK
651d9f3e79 Wayland: add necessary calls to gtk_surface1_release() 2024-06-04 16:53:10 +02:00
ManoloFLTK
e2eeb36883 macOS: remove use of deprecated [NSBox setBorderType:] method 2024-06-03 17:36:08 +02:00
ManoloFLTK
6712130f22 Document how to control window location in screen under Wayland 2024-06-03 15:05:04 +02:00
ManoloFLTK
ce46b4b68b Wayland: fix interactive moving and resizing of a subwindow (#987) 2024-06-03 09:50:41 +02:00
ManoloFLTK
d792ed21f5 Fix Child Windows under Wayland are clipped on resizing … (#987) 2024-06-02 08:28:40 +02:00
ManoloFLTK
482da12f71 Fix: Zero-sized borderless window causes high cpu usage on windows (#985) 2024-06-01 16:48:27 +02:00
ManoloFLTK
be5c82b5e5 Reflect libdecor date in bundled-libs.dox 2024-06-01 10:52:23 +02:00
ManoloFLTK
5365aefc6e libdecor: update to upstream commit c2bd8ad6 (31-may-2024) 2024-06-01 10:12:50 +02:00
ManoloFLTK
04949f1349 Fix typo in doc of Fl_Double_Window::as_double_window() 2024-05-30 08:26:57 +02:00
ManoloFLTK
70c6f2ce12 Fix: Wayland sends wrong events after an FL_DRAG of a top window - cont'd (#983) 2024-05-28 22:28:54 +02:00
ManoloFLTK
9c8977eff1 Fix: Wayland sends wrong events after an FL_DRAG of a top window (#983) 2024-05-28 15:33:33 +02:00
ManoloFLTK
f3f69b892d Remove useless Fl_Window_Driver accessors after new member Fl_Window::get_size_range() 2024-05-27 11:39:27 +02:00
ManoloFLTK
c1333a2dec Wayland documentation: more about opening display connection 2024-05-27 10:40:24 +02:00