Commit Graph

8476 Commits

Author SHA1 Message Date
ManoloFLTK
f55729ed32 Doxygen: describe better support for OpenGL on HighDPI displays. 2019-04-12 18:47:42 +02:00
ManoloFLTK
4abaeba539 Doxygen: make explanation of how PostScript text works always visible. 2019-04-12 11:29:08 +02:00
ManoloFLTK
1280370fc8 Move Doxygen comments next to member function bodies. 2019-04-12 10:36:02 +02:00
ManoloFLTK
d50d0a3069 Remove function body from Fl_Widget_Surface class declaration. 2019-04-12 10:32:46 +02:00
ManoloFLTK
d36e1a79c3 Add check against hidden window. 2019-04-11 19:02:44 +02:00
ManoloFLTK
3fa2b73698 Update comments of Fl_Cocoa_Window_Driver::make_current() for macOS 10.14 2019-04-11 13:04:53 +02:00
ManoloFLTK
86ddfca2f3 Remove 2 Doxygen warnings
fltk-1.4/src/Fl_Copy_Surface.cxx:66: warning: no uniquely matching class member found for
 int Fl_Copy_Surface_Driver::printable_rect(int *w, int *h)
and same for Fl_Image_Surface_Driver.
2019-04-11 11:28:20 +02:00
Albrecht Schlosser
3bbc453237 Save and restore GL parameters as appropriate
According to the docs "glPixelStorei sets pixel storage modes that
affect the operation of subsequent glReadPixels as well as the
unpacking of texture patterns (see glTexImage2D and glTexSubImage2D)."

Hence we
(a) must be aware that current values of these modes can be anything
    set by user or FLTK code before
(b) should be polite and restore these modes to previous values

See discussion in fltk.coredev, thread "gl_draw problem" started on
Apr 05, 2019.
2019-04-10 17:02:04 +02:00
ManoloFLTK
cb7dbc34d7 Make member function Fl_Surface_Device::driver(Fl_Graphics_Driver*) protected. 2019-04-10 15:20:00 +02:00
ManoloFLTK
d5943f85b9 Use the new Fl_Surface_Device::is_current() virtual function 2019-04-10 13:53:13 +02:00
ManoloFLTK
4f0a16697e Remove useless member functions Fl_XXX_Copy_Surface_Driver::w() and h() 2019-04-10 13:21:23 +02:00
ManoloFLTK
7a0bebb22f New virtual member function bool Fl_Surface_Device::is_current() 2019-04-10 13:14:04 +02:00
ManoloFLTK
22a5dc3085 Function Fl_Screen_Driver::traverse_to_gl_subwindows() is static in its class 2019-04-10 10:22:45 +02:00
ManoloFLTK
8286e37b18 Add public function Fl_RGB_Image *fl_capture_window_part()
In the context of HighDPI screens, the API of function fl_read_image()
is inadequate because a rectangle of size WxH drawing units
of a window may contain many more than W*H pixels.

Function fl_capture_window_part() returns an Fl_RGB_Image
object whose drawing size matches the size of the rectangle
and whose data size matches the, possibly larger, size in pixels
of the corresponding area of the mapped window.
2019-04-09 18:50:18 +02:00
ManoloFLTK
0ddf5e74a9 Fix for STR 3519: the PostScript graphics driver fails with some narrow unicode characters 2019-04-09 16:26:15 +02:00
ManoloFLTK
86849aac8f Improve Fl_Cocoa_Window_Driver::make_current() 2019-04-09 12:43:03 +02:00
ManoloFLTK
abc8f4158f Member Fl_Cocoa_Window_Driver::window_flags_ stores now 2 flags 2019-04-07 11:24:20 +02:00
ManoloFLTK
c66caf5dce Simpler implementation of Fl_Cocoa_Window_Driver::resize() 2019-04-07 09:09:33 +02:00
ManoloFLTK
cc955d27a0 Maintain window position when turning its border on. 2019-04-07 08:57:06 +02:00
ManoloFLTK
63b86bd8f7 Revert back to previous state 2019-04-04 18:51:16 +02:00
ManoloFLTK
fc678c26b0 Merge remote-tracking branch 'origin/master' 2019-04-04 18:42:55 +02:00
ManoloFLTK
9b7f020ed3 Update procedure for OpenGL3 support. 2019-04-04 18:42:45 +02:00
Albrecht Schlosser
42afc70b6a Fix potential crash in fluid (issue #14)
trimclassname() would crash if it was given a NULL pointer. Now a
NULL pointer is returned instead.

Fixes #14
2019-04-04 17:20:57 +02:00
ManoloFLTK
7a3af40ede Merge remote-tracking branch 'origin/master' 2019-03-28 18:42:33 +01:00
ManoloFLTK
607689c890 macOS: More efficient window rescaling that rarely calls Fl_Group::resize() 2019-03-28 17:30:18 +01:00
Albrecht Schlosser
df6f15faf3 Add dependencies for non-Xft builds 2019-03-28 12:03:42 +01:00
Albrecht Schlosser
f78ef314aa Update dependencies
Note: these dependencies are not complete and will likely never be
because they depend on different configurations.
2019-03-28 11:42:09 +01:00
ManoloFLTK
d018aca37c Call to Fl_Group::init_sizes() needed after resize of widgets. 2019-03-27 21:35:55 +01:00
ManoloFLTK
536080f119 Send FL_FOCUS is necessary under X11 2019-03-27 18:59:20 +01:00
ManoloFLTK
f3e9b43ccc Correct typo in Doxygen doc of Fl::focus() 2019-03-27 18:54:45 +01:00
ManoloFLTK
9e18662d86 Use Fl_Widget_Tracker to check for existence of the putative focus widget 2019-03-27 17:16:25 +01:00
ManoloFLTK
0a7fb9f7b3 Follow CMP and rename a type with capitalized words without underscore 2019-03-27 13:12:52 +01:00
ManoloFLTK
4ac5382510 Remove unnecessary #include directives 2019-03-27 13:04:59 +01:00
ManoloFLTK
b488b2c9d0 Add further checks to avoid null pointer. 2019-03-27 12:33:00 +01:00
ManoloFLTK
a6ea844879 Check against null pointer for security 2019-03-27 11:32:23 +01:00
ManoloFLTK
9a9b02f9dd Don't change the focus widget after showing transient scale factor window 2019-03-27 11:28:55 +01:00
ManoloFLTK
e3e195a09c Use \deprecated Doxygen command where necessary 2019-03-26 13:57:41 +01:00
ManoloFLTK
a67a9b0f58 Correct typo in Doxygen doc of Fl_System_Driver::filename_ext() 2019-03-26 13:20:18 +01:00
ManoloFLTK
a2cbb03dc9 Improve Doxygen doc of the Fl_SVG_Image constructor 2019-03-26 11:06:55 +01:00
ManoloFLTK
499ec5c291 Replace static void Fl_Window_Driver::default_icons() by virtual Fl_Screen_Driver::default_icons() 2019-03-25 18:47:29 +01:00
ManoloFLTK
258116c5a6 Merge remote-tracking branch 'origin/master' 2019-03-25 13:16:51 +01:00
ManoloFLTK
6a807716a7 Rename fl_compute_macKeyLookUp() to Fl_Darwin_System_Driver::compute_macKeyLookUp() 2019-03-25 13:16:27 +01:00
Albrecht Schlosser
debc1a39ce Update dependencies 2019-03-25 13:16:05 +01:00
ManoloFLTK
e8d7eb1e46 Invalidate Quit also when running native file chooser. 2019-03-23 14:38:20 +01:00
ManoloFLTK
f89593d0de Avoid crash when messages canBecomeKeyWindow or canBecomeMainWindow received by closed window. 2019-03-18 13:07:55 +01:00
ManoloFLTK
1acd2e98d6 Merge remote-tracking branch 'origin/master' 2019-03-12 18:39:35 +01:00
ManoloFLTK
e659355052 Remove unneeded #include directive 2019-03-12 18:39:17 +01:00
Albrecht Schlosser
bab61a93d6 Prevent unnecessary Fl_Clock timer events (STR 3516)
See documentation @ STR 3516
2019-03-12 17:21:53 +01:00
ManoloFLTK
4324acc6f6 Avoid "unused argument" compiler warnings with -Wextra after #include <fl_draw.H> 2019-03-12 10:55:01 +01:00
ManoloFLTK
8e9512330d X11 platform: keep GUI scaling after screen is reconfigured 2019-03-11 16:38:35 +01:00