The doc recommends to draw views with the displayLayer: method when the view manages itself
completely its own bitmap:
If your delegate implements the displayLayer: method, that implementation is responsible
for creating a bitmap and assigning it to the layer’s contents property.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13075 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This patch fixes two aspects described in STR #3119:
(a) enables detection and prefers pixel formats with composition
(b) selects no more than 32 bit colors (8 bits per pixel)
(a) was the reason for this STR, (b) was reported repeatedly in
fltk.general (see STR #3119).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13072 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
MacOS apps running under 10.14 AND linked with SDK 10.14 use a completely different way
to draw to the screen in comparison with the same app running under 10.13 or earlier:
all views are "layer-backed".
This commit makes FLTK apps running under 10.14 and linked with SDK 10.14 explicitly
use layers to draw to the screen.
FLTK apps remain downward compatible with earlier macOS versions.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13071 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
error: non-constant-expression cannot be narrowed from type 'int' to 'CGFloat'
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13070 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
The problem was visible with test/cube: when the window was minimized, only the left GL subwindow
was captured in the window icon.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13066 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Window capture by initWithFocusedViewRect: does not work if the app is linked against 10.14 SDK
and run under 10.14. In that case, capture is performed instead by CGWindowListCreateImage().
Detection of whether the app was linked against 10.14 SDK is done by checking whether
the FLView possesses a CALayer.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13062 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
The regression was detected by "FLTK 1.4 on macOS: Trouble compiling my Application with Makefile"
in fltk.general.
The fix is to have unbundled apps initialize under MacOS 10.13 as under earlier OS,
thus the new initialization procedure introduced for 10.13 is for bundled apps only.
Tested OK on 10.13.6 and 10.14 public beta 10.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13050 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Found with clang [-Wc++11-extensions] (example):
Building CXX object src/CMakeFiles/fltk.dir/Fl_x.cxx.o
In file included from ../../src/Fl_x.cxx:40:
../../src/drivers/X11/Fl_X11_Screen_Driver.H:36:10: warning: unelaborated
friend declaration is a C++11 extension; specify 'class' to befriend
'Fl_Screen_Driver' [-Wc++11-extensions]
friend Fl_Screen_Driver;
^
class
1 warning generated.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13047 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
The previous method int(x + 0.5) is incorrect when x < 0
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13046 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
The new procedure essentially resizes the window, as done on the X11+EWMH and Windows platforms.
This improves in particular the possibility to turn an Fl_Gl_Window fullscreen on and off.
MacOS ≥ 10.10 is required because the procedure isn't stable (random crashes during fast switches) with 10.9.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13045 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
The procedure given in https://www.khronos.org/opengl/wiki/Tutorial:_OpenGL_3.0_Context_Creation_(GLX)
is now followed. This gives access to contexts for the highest OpenGL version supported by the hardware
when flag FL_OPENGL3 is used in the call to Fl_Gl_Window::mode(int).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13021 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
FLTK now transforms that into \n as is expected under MacOS.
Older MS Office apps used \r as old MacOS software.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13014 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Also, define an FLTK event triggered when the scaling is changed and an option
to disable the transient window showing the new scaling factor.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13011 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This fixes a regression causing 'fluid-shared' build to fail (only if
configured with --enable-shared, obviously).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13006 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Consequently, the Doxygen documentation of Fl_Window::shape() will reappear.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13000 ea41ed52-d2ee-0310-a9c1-e6b18d33e121