From 596fd2784acfca5c6c9100b49853583d0b7057d6 Mon Sep 17 00:00:00 2001 From: Ian MacArthur Date: Mon, 1 Dec 2014 10:42:41 +0000 Subject: [PATCH] Extend advanced.dox multithreading to add additional caveats about the use of show() and hide() from child threads, based on issues reported in fltk.general with tooltip windows causing issues. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10476 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- documentation/src/advanced.dox | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/documentation/src/advanced.dox b/documentation/src/advanced.dox index 30a3ed01f..60ea552ad 100644 --- a/documentation/src/advanced.dox +++ b/documentation/src/advanced.dox @@ -82,7 +82,14 @@ threads on all operating systems: \li Don't \p show() or \p hide() anything that contains widgets derived from Fl_Window, including dialogs, file - choosers, subwindows or those using Fl_Gl_Window. + choosers, subwindows or those using Fl_Gl_Window. Note that + this constraint may also apply to non-window widgets that + have tooltips, since the tooltip will contain a Fl_Window + object. In general, it is advised \b not to call \p show() + or \p hide() on any widget from the context of a + non-main thread (instead use the Fl_Awake_Handler function + variant of Fl::awake to have the main thread show or hide + the widget on behalf of the child thread.) \li Don't call Fl::run(), Fl::wait(), Fl::flush() or any related methods that will handle system messages