summaryrefslogtreecommitdiff
path: root/src/Fl_cocoa.mm
AgeCommit message (Collapse)Author
2022-09-23GL3 for macOS platform: allow creation of GL1 and GL3 contexts by an app.ManoloFLTK
2022-09-22Fix issue #501: build error under macOS 10.10ManoloFLTK
2022-09-15Make Fl::set_color(r,g,b,a) effective under Wayland and macOS.ManoloFLTK
2022-09-12Allow use of Fl_Window::default_icon() with a scaled image.ManoloFLTK
2022-09-07Improve support of child windows that may leak outside their parent window.ManoloFLTK
1) add Wayland code that prevent subwindows from leaking outside their parent. This does not cover GL subwindows. 2) add macOS code that prevent GL subwindows from leaking outside their parent. This fixes issue #494 for the macOS platform. N.B.: Wayland GL subwindows are not prevented from leaking because no solution that would not require any change in client applications was found. Code that would cover Wayland GL subwindows but would require client applications to always use the FL_ALPHA flag is included in this commit in commented out form.
2022-08-29Make hybrid Wayland/X11 platform.ManoloFLTK
2022-06-27Remove unused code controlled by the FLTK_CONSOLIDATE_MOTION preprocessor ↵ManoloFLTK
variable.
2022-06-23Fix for issue #450: Fl_Counter slips into infinite loop.ManoloFLTK
This issue revealed that the macOS and Wayland platform processed events slightly differently from other platforms. Under X11 and Windows, Fl::wait() processes one event if one is present, and also all other events present in the event queue immediately after the processing of that event. Under macOS and Wayland, Fl::wait() processes one event if one is present and returns. This commits makes the macOS and Wayland platforms behave as other platforms.
2022-05-05Add check against null pointer occurrence reported with Gmsh (Issue #434).ManoloFLTK
2022-04-29Fix for issue #434 : Segfaults on macOS.ManoloFLTK
2022-04-10Fix for issue #426 - cont'd.ManoloFLTK
2022-04-08Fix for issue #426: "configure --enable-cairoext" flips display upside downManoloFLTK
2022-04-03Silence compiler warnings [-Wunused-but-set-variable]Albrecht Schlosser
2022-03-21Issue #359 RFE: access the MacOS windowid .ManoloFLTK
2022-03-20Simpler updateTrackingAreas method of class FLView is enough.ManoloFLTK
2022-03-20 Fix issue #413: Commit 29d9e31 creates memory handling problem under macOS.ManoloFLTK
2022-03-19Restore default YES value for FLWindow releasedWhenClosed property.ManoloFLTK
2022-03-18Fix for issue #411: send FL_ENTER / FL_LEAVE events to Fl_Window objects.ManoloFLTK
2022-03-01Fix default size_range() calculation (issue #392, STR 3352)Albrecht Schlosser
2022-02-08Fix for issue #373 apparent with macOS platform and SDK ≤ 10.13ManoloFLTK
Many thanks to @CendioOssman for finding the cure.
2022-02-03Rearrange "Print Button Window" functionsAlbrecht Schlosser
- Rename Fl_Screen_Driver::print_or_copy_window() to fl_print_or_copy_window() - Add header file src/print_button.h - Update dependencies
2022-02-03Reorganize classes Fl_System_Driver and Fl_Screen_DriverManoloFLTK
These virtual members are moved from Fl_Screen_Driver to Fl_System_Driver - wait(double) - ready() These virtual members are moved from Fl_System_Driver to Fl_Screen_Driver - copy(const char *stuff, int len, int clipboard, const char *type) - void paste(Fl_Widget &widget, int clipboard, const char *type) - clipboard_contains(const char *type) - clipboard_notify_change() These members are moved from Fl_X11_Screen_Driver to Fl_X11_System_Driver - poll_or_select_with_delay(double time_to_wait) - poll_or_select() and are made virtual in preparation for the introduction of class Fl_Unix_System_Driver.
2022-02-02Add platform-independent Fl_Screen_Driver::print_or_copy_window().ManoloFLTK
This member function is available for all platforms to print or copy the front window with or without its titlebar.
2022-02-02macOS: add "Toggle printing of titlebar" to application menu - cont'd.ManoloFLTK
2022-02-02macOS: add "Toggle printing of titlebar" to application menu.ManoloFLTK
2022-01-31Consolidate timeout handling across platforms (#379)Albrecht Schlosser
Add Fl_Timeout class Move platform independent code of Fl::wait() to main part - basic timeout handling - Fl::run_checks() - Fl::run_idle() - Fl::idle() - waiting time calculation (next timeout) - remove platform dependent "screen driver" stuff
2022-01-19Fixing and upgrading Fl_Preferences (#374)Matthias Melcher
* Added filename function to Fl_Preferences Static function to get filename before opening. Member to get filename after opening. Bug fixes for memory mapped preferences. * ERROR is a macro on Windows, don't use it * Added Fl_Preferences::dirty(). User can now check if the database will be written when flushed or destroyed. Flush returns a crude error code. * Fl_Preferences::get binary data returns # of bytes read. * Verified group deletion code * Fl_Preferences ignores locale. This will make .prefs files interchangeable between different computers. * Updating the Preferences Mode to ignore locale. * Fixes in docs.
2022-01-16Rename FL/fl_string.h to FL/fl_string_functions.hAlbrecht Schlosser
This is part 1 of the final fix for a previous name clash on case insensitive file systems (fl_string.h vs. Fl_String.H).
2022-01-07Re-organize cross-platform support for text input methods.ManoloFLTK
FLTK 1.3 supports complex text input methods (TIMs) for the 3 platforms (X11, Windows, macOS). This support has an interface with FLTK that is common for X11 and Windows, via (undocumented) functions fl_set_spot(), fl_set_status() and fl_reset_spot(). In contrast, and because it's been developed independently, the interface between the macOS TIM and FLTK 1.3 is completely different : static functions FL::insertion_point_location() and Fl::reset_marked_text(). The present change implements a single TIM/FLTK interface used by all platforms based on functions fl_set_spot() and fl_reset_spot(). The previous macOS-specific functions FL::insertion_point_location() and Fl::reset_marked_text() are maintained only for compatibility with 1.3 and deprecated.
2022-01-07Add virtual void Fl_Graphics_Driver::set_status() and implement for X11 ↵ManoloFLTK
platform.
2021-12-29 Fix fullscreen window level corner cases on macOS - cont'dManoloFLTK
See long discussion in PR#277 at https://github.com/fltk/fltk/pull/277
2021-12-18Generate FL/fl_config.h rather than FL/abi-version.hAlbrecht Schlosser
... as discussed in fltk.coredev in thread "RFC: introduce public config header <FL/fl_config.h>", see: https://groups.google.com/g/fltkcoredev/c/xLCs1AIXMVo/m/MHZpQggzAQAJ - Rename abi-version.h to fl_config.h, rename input files, update dependencies, .gitignore, CMake, configure and Makefiles. - Include Cairo options in FL/fl_config.h - Rename FLTK_USE_CAIRO to FLTK_HAVE_CAIROEXT for consistency. - Include <FL/fl_config.h> in config.h and wherever necessary, fix include order (move FL/Fl.H to the top) and more. - Move USE_X11 to fl_config.h and rename to FLTK_USE_X11 - Do not include <config.h> in Cairo demo program which is no longer required in Cairo programs since FLTK 1.4.0
2021-12-17macOS platform: fix for issue #325 Disabling IM disables Greek and Cyrillic ↵ManoloFLTK
layouts Thanks to Pierre Ossman who gave the fix.
2021-12-07Fix for fltk.coredev "reentrant calls with Fl_Window::resize" - cont'dManoloFLTK
2021-12-06macOS platform: compute the screen number where a top window is mapped.ManoloFLTK
2021-12-05Fixes STR #3352: "tiny window problem if child group larger than window"Greg Ercolano
2021-11-24Fix for [fltk.coredev] reentrant calls with Fl_Window::resizeManoloFLTK
2021-11-05Fix for issue #279 about detecting early retina with GL windows.ManoloFLTK
2021-11-05Make "FLTK_CONSOLIDATE_MOTION" user-definable (issue #76)Albrecht Schlosser
This undocumented macro is used on X11 and macOS platforms to consolidate mouse move events, i.e. to collect some events and send them later as one event. The old macro name CONSOLIDATE_MOTION has been renamed to FLTK_CONSOLIDATE_MOTION since it is now a "global" symbol. Users can define FLTK_CONSOLIDATE_MOTION in their build system, e.g. on the compiler commandline, as 0 or 1 to disable or enable this feature, respectively. In FLTK 1.3 the default was 0 (OFF) on macOS and 1 (ON) on X11. In FLTK 1.4 the default is always 0 (OFF).
2021-10-27Fix indenting, whitespace errors and dependenciesAlbrecht Schlosser
(no code changes)
2021-10-06macOS: "Fix fullscreen window level corner cases"ManoloFLTK
This corresponds to changes of PR#277 (Author: Samuel Mannehed)
2021-09-24macOS platform: facilitate use when another toolkit handles the system menu.ManoloFLTK
2021-08-04macOS: account for deprecation of [NSBitmapImageRep ↵ManoloFLTK
initWithFocusedViewRect:] in macOS 10.14
2021-08-03macOS: fix paste of image for macOS 11.xManoloFLTK
With macOS 11.x, the pasteboard image can be found with floating point pixel values. This changes makes FLTK process adequately such image data.
2021-07-24Fix © year.ManoloFLTK
2021-05-27 macOS: Avoid premature FL_RELEASE event at start of drag-n-drop operation.ManoloFLTK
This fixes this issue mentioned in fltk.general : https://www.fltk.org/newsgroups.php?s40623+gfltk.general+v40638+T
2021-02-16Use <config.h> when appropriate.ManoloFLTK
2020-11-27Fix for issue #123 - macOS platformManoloFLTK
2020-11-19Remove unnecessary function call when macOS ≥ 10.6ManoloFLTK
2020-11-19Add comment about detection of macOS "Big Sur" 11.0 at run-time.ManoloFLTK