Commit Graph

8796 Commits

Author SHA1 Message Date
ManoloFLTK
9ac73175be Use NSViewFrameDidChangeNotification instead of NSWindowDidResizeNotification
This allows to support the tabbing/untabbing of windows with simpler, clearer code.

This commit also fixes the resizing of Fl_Overlay_Window that was broken in the
recent commit "Simpler implementation of Fl_Cocoa_Window_Driver::resize()"
    c66caf5dce
2019-04-25 10:30:59 +02:00
ManoloFLTK
a98d3a6569 Use HAVE_GLXGETPROCADDRESSARB preprocessor variable 2019-04-23 18:17:16 +02:00
ManoloFLTK
6f82d88af3 macOS: restore correct tabbing/untabbing of windows - continued
slightly simpler and more explicit than previous commit at
    602c6ffd8a
2019-04-23 08:11:10 +02:00
ManoloFLTK
94f859c373 Consistently compute the current GUI scaling factor value. 2019-04-22 10:02:32 +02:00
ManoloFLTK
602c6ffd8a macOS: restore correct tabbing/untabbing of windows
The recent commit "Simpler implementation of Fl_Cocoa_Window_Driver::resize()"
    c66caf5dce
did not take care of tabbing/untabbing of windows.
This is repaired here.
2019-04-22 09:48:15 +02:00
ManoloFLTK
98b4ece33e Reorder Fl_Cocoa_Window_Driver to support upward OS compatibility 2019-04-21 09:45:06 +02:00
ManoloFLTK
f3bfe93a51 Fix Fl_Cocoa_Window_Driver::fullscreen_off()
The correct order of operations is to resize the window after having set its style.
2019-04-21 09:27:44 +02:00
ManoloFLTK
3f5580d49c macOS: better support of Fl_Window::border(int) 2019-04-20 22:01:48 +02:00
ManoloFLTK
33862479af Merge remote-tracking branch 'origin/master' 2019-04-19 13:05:14 +02:00
ManoloFLTK
ebbee5301b macOS: simpler handling of GL windows when first displayed.
tested on macOS versions 10.3, 10.6, 10.9, 10.14
2019-04-19 13:03:49 +02:00
Greg Ercolano
8d0647732f Fix time drawing color (was not being set)
The items showing the current time looked ugly on linux
when selected, since they were drawing in the leftover
blue color used for drawing the R-G-B box pattern.
2019-04-16 10:56:33 -07:00
ManoloFLTK
698fe39ff1 Minor code reordering 2019-04-15 16:08:16 +02:00
ManoloFLTK
72954f39d8 Minor code reordering. 2019-04-15 12:04:52 +02:00
ManoloFLTK
0067952e1a Correct typo in Doxygen doc 2019-04-14 19:10:08 +02:00
ManoloFLTK
52f4aa5546 Doxygen doc: rewording for more clarity. 2019-04-14 19:07:14 +02:00
ManoloFLTK
bb5ef3b1d0 Doxygen: rewording for more clarity. 2019-04-14 09:54:55 +02:00
ManoloFLTK
0f6cbd1cda Doxygen: rewording for more clarity. 2019-04-14 09:27:41 +02:00
ManoloFLTK
a65d7818be More explicit short doc of Fl_Multi_Label. 2019-04-14 08:57:17 +02:00
ManoloFLTK
5ad95da98e Further Doxygen doc about OpenGL and HighDPI. 2019-04-13 08:32:35 +02:00
ManoloFLTK
8540db95d8 Update Doxygen doc of Fl_Gl_Window::draw() for HighDPI support 2019-04-13 08:09:01 +02:00
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