The -[NSWindow makeKeyAndOrderFront:] message used to make the window appear on the screen,
but, starting with 10.10 (approximately), this changed, and it became necessary to query for events
for a new window to appear on the screen. With 10.11 two event messages are needed.
The solution is therefore to implement Fl_Window::wait_for_expose().
- Calling NSDisableScreenUpdates()()/NSEnableScreenUpdates() before and after window updates
greatly accelerates multi-window update operations.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10826 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
It's no longer necessary to apply a workaround for it.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10825 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
replace it by CGContextReplacePathWithStrokedPath() + CGContextFillPath()
that does the same without error.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10821 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
from later OS versions.
Unfortunately, it does not work with Mac OS 10.3
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10818 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
use different pasteboard data type names according to running OS.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10817 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
graphics context to draw to a window. This requires Mac OS 10.4.
The advantage is that it is possible for a secondary thread to call
Fl_Window::make_current() without needing to create an autorelease pool.
We save the native graphics state, and also the state with origin at top.
Fl_X::q_release_context() restores the graphics state twice to return to
the native state. This allows to use a single graphics context for a single
window and a single thread.
Under 10.3, we have to create a new NSGraphicsContext when Fl_Window::make_current()
is called directly, so that secondary threads cannot call Fl_Window::make_current() without
having created an autorelease pool.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10816 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
- do not use NSOpenGLPFAMultisample
- do not use -[NSBitmapImageRep bitmapFormat]
that require Mac OS 10.4
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10815 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
I also added some placeholders for yet to be defined events, just in
case they are forgotten to add in FL/names.h. This appears to be better
than to reference a non-existing array element (string pointer).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10812 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
The modified test program test/ask.cxx showed a problem that the active
dialog window was resized when fl_message_icon() was called while it was
open, because this call makeform() which resized the window.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10806 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
(This commit is in the interest of allowing the release of FLTK 1.3.4 not to be delayed).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10804 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
processing a mouse or keyboard event (they are OK in other cases).
We fix that by filling a rectangle instead of stroking along a line (and hope the public 10.11 will have fixed that).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10803 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
- avoid double redraw after window deminiaturization
- make sure that a new window appears on screen during the Fl_X::make() call
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10801 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This patch uses the correct data type (as defined by Windows / msn)
but does not fix the Cygwin linker problem. Unfortunately.
This issue may be a Cygwin problem and should be reported to Cygwin.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10795 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
modifies the glyph used to draw the previous Unicode codepoint.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10792 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This defeats the procedure FLTK uses to compute text widths (precomputing the width of each used
character) because the width of character n is not unique and potentially depends on character n+1.
Therefore, we now remove variation selectors from the input string before drawing it.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10791 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Screen captures produce ARGB data (instead of RGBA until 10.10)
so access to the raw image data takes now this into account.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10789 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
FL_ABI_VERSION should not be set in the IDE projects to avoid having to
update the version numbers for each release.
The default is used if FL_ABI_VERSION is not defined.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10788 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit adds the configure option --with-abiversion and the CMake option
OPTION_ABI_VERSION. Both options can be set e.g. to 10304 to build with
FL_ABI_VERSION = 10304 (FLTK 1.3.4).
For IDE builds there are new files ide/<IDE-NAME>/FL/abi-version.h that
can be edited to change the ABI version before the FLTK lib is built.
Note that this file MUST be copied to the include/FL directory if the
IDE-built library is to be installed.
The default is FL_ABI_VERSION = FL_MAJOR*10000 + FL_MINOR*100 + 0, i.e.
10300 for all FLTK 1.3.x versions to keep binary compatibility (ABI).
Todo: more tests and more documentation.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10786 ea41ed52-d2ee-0310-a9c1-e6b18d33e121