Commit Graph

8953 Commits

Author SHA1 Message Date
Albrecht Schlosser
a03220aba5 Fix a memory leak in fluid
Also fixed two typos in comments.
2020-03-08 12:42:30 +01:00
Albrecht Schlosser
1ffcef2373 Update Fl_Text_Display documentation
No code changes except minor formatting and trailing whitespace.
2020-03-08 12:33:06 +01:00
ManoloFLTK
735d73bb59 Merge remote-tracking branch 'refs/remotes/origin/master' 2020-03-03 19:03:53 +01:00
ManoloFLTK
8f142b938a Fix for STR#3534 to draw correctly Fl_Tiled_Image's on non-display surfaces. 2020-03-03 19:03:29 +01:00
Albrecht Schlosser
3746b8986e Clarify documentation of Fl_Pack 2020-03-03 17:29:00 +01:00
Albrecht Schlosser
0d7a9e7f37 Clarify Fl_File_Chooser documentation 2020-03-02 19:34:24 +01:00
ManoloFLTK
87c994e2f8 Fl_Sys_Menu_Bar: make it strict equivalent of Fl_Menu_Bar outside macOS 2020-02-28 16:47:44 +01:00
ManoloFLTK
e18de6ff03 Fix the Fl_RGB_Image(Fl_Pixmap *pxm) c'tor when pxm is scaled. 2020-02-22 07:15:08 +01:00
Albrecht Schlosser
2d2c2ff45e CMake: set option to build docs (default): ON
This option does not build the documentation automatically, docs
still must be built manually, e.g. 'make docs' or 'make html'.
2020-02-14 15:23:53 +01:00
Albrecht Schlosser
975acb32b6 Update travis control file again
We can't use --status-bugs because this would always FAIL - there
are currently too many potential bugs (or false positives).
2020-02-13 22:22:28 +01:00
Albrecht Schlosser
e75ba551a6 Update travis control file
Remove unnecessary help message, use standard CMake configuration
as described in README file.
2020-02-13 22:07:29 +01:00
Albrecht Schlosser
c4ed2341ec Fix potential null pointer dereferences in fluid 2020-02-11 19:01:48 +01:00
Albrecht Schlosser
6db6440441 Fix static analyzer issues in Fl_Text_Display
Remove unused variables and unused code to silence warnings.
2020-02-11 18:41:49 +01:00
Albrecht Schlosser
8ea4b5b5b1 Fix static analyzer errors and warnings
Fix several bugs found by scan-build (more to come).
https://clang-analyzer.llvm.org/scan-build.html

See also current travis-ci build log with static analyzer, e.g.
https://travis-ci.com/fltk/fltk/jobs/285426415
(link may become invalid in the future).
2020-02-11 15:46:46 +01:00
Albrecht Schlosser
924289a40c X11: Fix X Input Methods (XIM) (STR 3502, 3192)
Revert commit 958d912ffc using 'XSetLocaleModifiers("@im=");'
which was incorrect (STR 3192).

Apply fix for STR 3502, using 'XSetLocaleModifiers("");' which appears
to be the correct solution for using X Input Methods (XIM).

This has also been backported to FLTK 1.3.6 in branch-1.3, see
commit 219ae5e455.
2020-02-10 13:38:26 +01:00
Albrecht Schlosser
4c1b92eb52 Implement fl_putenv() as cross-platform putenv() 2020-02-10 12:10:40 +01:00
Albrecht Schlosser
dcb848ca3e Remove empty file from compilation 2020-02-09 16:08:46 +01:00
darealshinji
71dc3269cd Eliminate -Wunknown-pragmas and -Wsign-compare warnings on GCC 2020-02-09 15:31:57 +01:00
ManoloFLTK
707b81b626 Restore macOS capacity to turn window fullscreen encompassing several screens. 2020-02-09 11:17:49 +01:00
ManoloFLTK
85256b908f Make test/fullscreen follow what doc of Fl_Window constructor says.
That doc says:
"Top-level windows initially have visible() set to 0 and parent() set to NULL"
and here sw is created as a top-level window, so it must be made visible
either by set_visible() or by show().
2020-02-09 08:43:36 +01:00
ManoloFLTK
d6aa3a67a0 Add screen scaling support to Fl_Cairo_Window under X11 platform. 2020-02-09 07:52:20 +01:00
ManoloFLTK
83bd04e0a3 Fix Fl_Cocoa_Window_Driver::resize when called before the window is show()'n. 2020-02-07 17:11:22 +01:00
ManoloFLTK
d068fbf9de Fix state of visible() flag after Fl_Window(x, y, w, h, t).
The doc states:
"Top-level windows initially have visible() set to 0 and parent() set to NULL.
Subwindows initially have visible() set to 1 and parent() set to the parent window pointer."
The first statement was not satisfied when a window was constructed
with the Fl_Window(x, y, w, h, t) constructor.
2020-02-07 15:23:50 +01:00
ManoloFLTK
7cb0c2311c Fix computation of Fl_Window::decorated_h() on macOS when screen is scaled. 2020-02-06 16:01:19 +01:00
Albrecht Schlosser
c0b4fed619 Documentation: update cairo_test screenshot 2020-02-05 19:12:58 +01:00
Albrecht Schlosser
97554a88cc Move fl_font(face, size) to fl_draw.cxx
I believe this is a better place.

Also: add FL_EXPORT since it's no longer inline.
2020-02-03 17:30:54 +01:00
Albrecht Schlosser
dd3485c57a Fix regression calling fl_font() w/o draw context
According to the documentation fl_font(face, size) may be called
"outside a draw context if necessary to call fl_width()".

This worked in 1.3.5 but did not in 1.4 (so far). I reworded the
docs to make clear that other measurement functions can be called
as well and refactored the code to make sure that fl_font(face, size)
will open the display if necessary.
2020-02-03 16:35:28 +01:00
Albrecht Schlosser
b8ab77e39c Don't "export" X11 specific fl_open_display() function
The X11 specific overloaded function fl_open_display(Display *)
has never been documented but exposed (and "exported" in the ABI)
in FL/platform.H which is not necessary. This internal function
is now static and no longer exposed in the ABI.

Don't confuse with fl_open_display() w/o arguments which is still
exported and declared in FL/platform.H.
2020-02-03 15:58:13 +01:00
Albrecht Schlosser
a9bdb7a7b4 Fix disabling of deprecated warnings
Fix cut'n'paste error: needs #pragma pop instead of push.
2020-01-31 15:54:51 +01:00
Albrecht Schlosser
f93b825b08 Update Fl::keyboard_screen_scaling()
- make the internal variable static
- make it callable after fl_open_display()
- document that it's currently only usable to switch scaling off
2020-01-31 15:48:21 +01:00
Albrecht Schlosser
65a798f9a2 Disable X11 "deprecated declaration" warning
... for GCC >= 4.6 and clang compilers.

This annoying warning exists on X11 (Linux/Unix/macOS) platforms
because we need to use XKeycodeToKeysym() although it is deprecated.
See STR 2913 for discussion and details.
2020-01-31 15:06:21 +01:00
Albrecht Schlosser
a71c5f4c10 Fix typo 2020-01-31 13:13:49 +01:00
ManoloFLTK
4ba6cef0b9 Add Fl::keyboard_screen_scaling(int) to control recognition of ctrl/+/-/0/ 2020-01-31 09:42:36 +01:00
ManoloFLTK
9d4d5ffdeb Mention the new "Preview" switch of the GTK native file dialog. 2020-01-31 08:10:37 +01:00
ManoloFLTK
d1afac2150 Add a "Preview" switch to the GTK native file chooser.
The button state is recorded in a preference so is recovered the next
time the GTK file chooser runs.
2020-01-31 08:07:57 +01:00
ManoloFLTK
b9ea732d02 Mention new public variable Fl_Image::register_images_done. 2020-01-30 19:14:02 +01:00
ManoloFLTK
325c4b8666 New public static variable bool Fl_Image::register_images_done
Allows an app to detect whether fl_register_images() was called or not.
2020-01-30 18:54:18 +01:00
ManoloFLTK
fbf20b7225 Protect against situation where HAVE_DLSYM && HAVE_DLFCN_H && !defined(RTLD_DEFAULT) 2020-01-30 18:49:34 +01:00
ManoloFLTK
b45a18a231 Fix Doxygen formatting problem. 2020-01-28 18:36:03 +01:00
ManoloFLTK
982892a98b Restore compilability when HAVE_DLFCN_H = 0 2020-01-27 17:38:46 +01:00
ManoloFLTK
62cc0bba74 Restore compilability when HAVE_DLFCN_H = 0 2020-01-27 17:34:56 +01:00
ManoloFLTK
1e9e742245 Fix 2 typos in Fl_Widget::shortcut_label() Doxygen doc. 2020-01-26 19:23:59 +01:00
ManoloFLTK
3384fe93df Add Fl_Widget::shortcut_label(int) to control effect of '&' in some widget labels 2020-01-26 19:15:30 +01:00
Albrecht Schlosser
d2cb11369c Improve migration docs on Fl_Preferences 2020-01-26 15:11:40 +01:00
Albrecht Schlosser
30a868dc0f Improve Unicode / UTF-8 documentation 2020-01-26 15:10:53 +01:00
Albrecht Schlosser
f3724f7488 [CMake] Remove unnecessary dependency
Building the documentation need not depend on building the library.
This change can speed up changing, building, and viewing modified
docs.
2020-01-26 15:07:15 +01:00
Albrecht Schlosser
9fa1c3182e Fix documentation of Fl_Shortcut
Unfortunately this typedef for shortcuts in Fl_Menu_Items etc.
can currently not be used with the full (21-bit) range of Unicode.

These restrictions are now documented but should be removed in a
future version, if possible.
2020-01-26 14:30:33 +01:00
ManoloFLTK
794eb962eb GTK printer chooser: add code to support choice of paper size and orientation 2020-01-24 18:05:46 +01:00
ManoloFLTK
59295b52a1 Remove unnecessary extern declaration 2020-01-23 15:44:14 +01:00
ManoloFLTK
a47df74431 Fix preservation of the caller's locale when running GTK dialogs.
There are now 2 kinds of GTK libraries (V2 and V3) and two dialogs
the file chooser and the printer chooser.
2020-01-22 18:44:49 +01:00