Commit Graph

6458 Commits

Author SHA1 Message Date
ManoloFLTK
b98aa7bee6 Remove extraneous Wayland-related comment from Windows code 2023-03-22 21:05:28 +01:00
Albrecht Schlosser
8b327d1ddd Fix option CAIRO_EXT in combination with X11 on macOS
This modification became necessary since "__APPLE__" is no longer
undefined by the build system when X11 is used on macOS.
2023-03-22 21:01:36 +01:00
ManoloFLTK
2c03959511 CMake: check for presence of needed Wayland protocol source files 2023-03-22 10:45:24 +01:00
ManoloFLTK
41c94c4d87 Wayland: attempt to improve registry_handle_global_remove()
This function still needs to be tested on a true multi-display Unix box
2023-03-20 10:39:55 +01:00
ManoloFLTK
ad3ead111a Simulate one display for OWL Wayland compositor 2023-03-20 09:57:36 +01:00
Matthias Melcher
f9004352b4 Fix gl_rect and OGL::fl_point #688 2023-03-18 20:14:39 +01:00
Matthias Melcher
5c482f9d9b
Fix and update alignment #346 (#701)
* interactive layout alignment rewritten
* interface for new alignment rules
* new alignment dialog box
* user defined layout rules added
* layout rules can be stored in projects, settings, and external files
* Valgrind verification
2023-03-18 17:33:27 +01:00
ManoloFLTK
a9fb6a979f Rename bool variable for better clarity 2023-03-16 10:41:54 +01:00
ManoloFLTK
0eb6a0e193 Fix Fl_Wayland_Screen_Driver::get_mouse() for scale factor effect 2023-03-14 16:59:29 +01:00
ManoloFLTK
add43cd3fc Wayland: add support for multiple high or low DPI displays - cont'd 2023-03-14 11:50:44 +01:00
ManoloFLTK
16448d5ba8 Wayland: improve cursor_surface_enter() 2023-03-14 08:09:39 +01:00
ManoloFLTK
8aafe6cf69 Fix Fl_Wayland_Window_Driver::set_cursor_4args() 2023-03-13 15:31:12 +01:00
ManoloFLTK
9980dc6fa1 Remove unused variable 2023-03-13 12:31:25 +01:00
ManoloFLTK
eeb9267e6e Wayland: add support for multiple high or low DPI displays 2023-03-13 10:38:28 +01:00
ManoloFLTK
73a2ca5261 Fix c'tor of Fl_Wayland_Image_Surface_Driver for HighDPI displays 2023-03-10 13:17:53 +01:00
ManoloFLTK
2ee688dae9 Improve member function Fl_Wayland_Gl_Window_Driver::make_current_before() 2023-03-10 10:17:20 +01:00
Albrecht Schlosser
0f3b5ded8f Fix dependencies, typos, trailing whitespace, and formatting
No code changes.
2023-03-09 18:28:37 +01:00
Albrecht Schlosser
8b1ec4c531 Fix Visual Studio (MSVC) compiler warnings 2023-03-09 17:47:51 +01:00
ManoloFLTK
2527632054 Fix gl_overlay under Wayland 2023-03-09 17:41:37 +01:00
Albrecht Schlosser
5175192755 CMake: build shared libs with OPTION_CAIROEXT (issue #250)
- remove separate libfltk_cairo to avoid cyclic dependencies, but
- keep a dummy libfltk_cairo in 1.4.0 for backwards compatibility
- move cairo/Fl_Cairo.cxx to src/Fl_Cairo.cxx
- add preliminary Cairo support for Visual Studio (MSVC)

Static linking is not affected by this change, but users building
with hand-made Makefiles will have to remove libfltk_cairo starting
with FLTK 1.4.0. The dummy library can be linked for backwards
compatibility but it will be removed later (in 1.4.x or 1.5.0).

The shared FLTK library libfltk.{so|dylib|dll|..} depends on libcairo
if and only if FLTK is built with one of the Cairo options. This has
always been the case for OPTION_CAIROEXT but is now also true if only
OPTION_CAIRO is selected, i.e. FLTK programs linked with a Cairo
enabled shared FLTK library will also be linked with libcairo. The same
is true for configure options --enable-cairo and --enable-cairoext,
respectively.

Preliminary Cairo support for MSVC now detects a Cairo installation
using the CMake variable FLTK_CAIRO_DIR which must be set by the user.
Note that this feature is temporary and may be changed in the future
for a better and more comfortable version.
2023-03-09 17:34:05 +01:00
ManoloFLTK
e32d4bcab9 Fix Fl_Wayland_Screen_Driver::x() and friends 2023-03-09 16:56:57 +01:00
ManoloFLTK
e409b01ba6 Remove useless repetition from array dead_keys[] 2023-03-08 12:19:09 +01:00
ManoloFLTK
b14172401d Fix: Shift-Tab not "reverse navigating" on some platforms (#696) 2023-03-08 09:04:55 +01:00
ManoloFLTK
f89a9f9efc DnD of filenames: make Wayland behave as Windows and macOS
and also add more detailed documentation of platform-specific behaviors.
2023-03-06 11:08:04 +01:00
ManoloFLTK
a52811567e Wayland: improve DnD of filenames to allow space-containing names 2023-03-05 11:54:55 +01:00
ManoloFLTK
5ae92f034a Simpler use of member variable wl_registry in class Fl_Wayland_Screen_Driver 2023-03-04 08:34:10 +01:00
ManoloFLTK
b438d448fb Remove unused variable declaration + fix in wayland.dox 2023-03-03 18:00:44 +01:00
ManoloFLTK
77c6877374 Reorder members of class Fl_Wayland_Screen_Driver 2023-03-03 16:47:49 +01:00
ManoloFLTK
37764fcd28 Improve Fl_Wayland_Window_Driver::wld_scale() 2023-03-03 09:28:12 +01:00
ManoloFLTK
8f24d7f295 Fix typos in Doxygen documentation 2023-03-02 12:15:14 +01:00
ManoloFLTK
86c238c000 Add Fl_Wayland_Window_Driver::wld_scale() member function 2023-03-02 11:36:26 +01:00
Matthias Melcher
04be85c636 Improved Fl_String capacity increments 2023-03-01 15:21:49 +01:00
Matthias Melcher
a3d89f7e28 Fix malloc/delete mismatch 2023-02-27 14:17:25 +01:00
Matthias Melcher
13cd927ab4
Add Fl_String to Fl_Preferences (#687) 2023-02-25 22:44:39 +01:00
Albrecht Schlosser
314ad2310e Derive internal Fl_Help_View buffer from Fl_String
Refactor the internal class HV_Edit_Buffer by deriving it from the
the recently extended Fl_String class.

The class HV_Edit_Buffer still needs some "special" methods but the
code could be simplified substantially.
2023-02-24 14:14:16 +01:00
Matthias Melcher
9f87af8ad9
Fl_String refactoring and extension (#683)
- add true unittest and Fl_String testing
- interface and printout are similar to gtest
  without requiring external linkage.
  just run `unittest --core`.
- new Fl_String API
- extended API to fl_input_str and fl_password_str
- co-authored-by: Albrecht Schlosser <albrechts.fltk@online.de>
2023-02-23 15:42:05 +01:00
Albrecht Schlosser
ce45bcae2f Silence false positive gcc warning (#682)
... and fix a typo.

This warning was reported for gcc 12.2 (MinGW-w64 / MSYS2) but may have
appeared in earlier gcc versions (gcc 9.4 is not affected).

It's very likely that this warning needs '-O2' or '-O3' to be issued.
2023-02-21 12:46:47 +01:00
Matthias Melcher
2971625418 Add GLUT_ELAPSED_TIME simulation 2023-02-20 13:40:27 +01:00
ManoloFLTK
6f4cf105b1 Remove 2 compilation warnings under Windows with mingw64
Compiling Fl_Native_File_Chooser_WIN32.cxx...
fl_dnd_win32.cxx:436:11: warning: private field 'm_EnumF' is not used [-Wunused-private-field]
  FLEnum *m_EnumF;
          ^
1 warning generated.

Fl_Native_File_Chooser_WIN32.cxx:378:19: warning: use of bitwise '|' with boolean operands [-Wbitwise-instead-of-logical]
  bool unixpath = IsUnixPath(_directory) | IsUnixPath(_preset_file);    // caller uses unix paths?
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                         ||
Fl_Native_File_Chooser_WIN32.cxx:378:19: note: cast one or both operands to int to silence this warning
1 warning generated.
2023-02-20 12:43:36 +01:00
ManoloFLTK
147bda5471 Rename fd_callback() to wayland_socket_callback() 2023-02-19 08:53:00 +01:00
ManoloFLTK
2af43ef4c8 Remove special FL_CURSOR_NONE implementation in Wayland 2023-02-17 16:24:41 +01:00
ManoloFLTK
e84a1730ad Wayland: improve and document support of FL_CURSOR_NONE 2023-02-17 09:52:34 +01:00
ManoloFLTK
f6b87790cc Wayland: new struct wl_cursor *custom_cursor member variable 2023-02-15 22:52:20 +01:00
Matthias Melcher
6fbfaba19d
Move class Fl_Shortcut_Button from FLUID to core (#677) (#680) 2023-02-15 15:24:25 +01:00
ManoloFLTK
a4d0f7d269 Wayland: allow Fl_Window::cursor(Fl_Cursor) for whole window 2023-02-15 12:20:26 +01:00
ManoloFLTK
9ff67f013e Wayland: add support of Fl_Window::default_cursor(Fl_Cursor) 2023-02-15 06:43:39 +01:00
ManoloFLTK
868ab9696f Rename class Fl_Display_Cairo_Graphics_Driver to Fl_X11_Cairo_Graphics_Driver 2023-02-14 11:52:21 +01:00
ManoloFLTK
b055b82eb2 Use libdecor/src/os-compatibility.h to declare os_create_anonymous_file() 2023-02-14 10:44:15 +01:00
ManoloFLTK
8038b1f1ad Update doc of Fl_Image::copy() after new Fl_Anim_GIF_Image class 2023-02-14 08:51:42 +01:00
ManoloFLTK
3d0b96b095 Remove unneeded list of wayland seats 2023-02-13 16:54:16 +01:00