summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES2
-rw-r--r--src/Fl_mac.cxx2
-rw-r--r--src/Fl_win32.cxx2
-rw-r--r--src/Fl_x.cxx2
-rw-r--r--test/menubar.cxx2
5 files changed, 10 insertions, 0 deletions
diff --git a/CHANGES b/CHANGES
index 0dbee1bbf..78eff1a68 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,7 @@
CHANGES IN FLTK 1.1.8
+ - Showing any window will disable the current tooltip
+ so it won't pop over menus (STR #1321)
- Updated documentation to reflect limitation of
Fl::delete_widget() (STR #1306)
- Fixed line wrapping in Fl_Text_Display (STR #1227)
diff --git a/src/Fl_mac.cxx b/src/Fl_mac.cxx
index 0a667a461..a943fd46f 100644
--- a/src/Fl_mac.cxx
+++ b/src/Fl_mac.cxx
@@ -56,6 +56,7 @@ extern "C" {
#include <FL/x.H>
#include <FL/Fl_Tooltip.H>
#include <FL/Fl_Window.H>
+#include <FL/Fl_Tooltip.H>
#include <FL/Fl_Sys_Menu_Bar.H>
#include <stdio.h>
#include <stdlib.h>
@@ -1972,6 +1973,7 @@ void Fl_Window::show() {
} else {
labeltype(FL_NO_LABEL);
}
+ Fl_Tooltip::exit_(this);
if (!shown() || !i) {
Fl_X::make(this);
} else {
diff --git a/src/Fl_win32.cxx b/src/Fl_win32.cxx
index 6e380eb6f..3725b8dd7 100644
--- a/src/Fl_win32.cxx
+++ b/src/Fl_win32.cxx
@@ -33,6 +33,7 @@
#include <FL/x.H>
#include <FL/Fl_Window.H>
#include <FL/Enumerations.H>
+#include <FL/Fl_Tooltip.H>
#include "flstring.h"
#include "Fl_Font.H"
#include <stdio.h>
@@ -1512,6 +1513,7 @@ void Fl_Window::show() {
} else {
labeltype(FL_NO_LABEL);
}
+ Fl_Tooltip::exit_(this);
if (!shown()) {
// if (can_boxcheat(box())) fl_background_pixel = fl_xpixel(color());
Fl_X::make(this);
diff --git a/src/Fl_x.cxx b/src/Fl_x.cxx
index d7c909e32..b33c8bbb9 100644
--- a/src/Fl_x.cxx
+++ b/src/Fl_x.cxx
@@ -38,6 +38,7 @@
# include <FL/Fl.H>
# include <FL/x.H>
# include <FL/Fl_Window.H>
+# include <FL/Fl_Tooltip.H>
# include <stdio.h>
# include <stdlib.h>
# include "flstring.h"
@@ -1329,6 +1330,7 @@ void Fl_Window::show() {
} else {
labeltype(FL_NO_LABEL);
}
+ Fl_Tooltip::exit_(this);
if (!shown()) {
fl_open_display();
if (can_boxcheat(box())) fl_background_pixel = int(fl_xpixel(color()));
diff --git a/test/menubar.cxx b/test/menubar.cxx
index 92eee5796..787c939b3 100644
--- a/test/menubar.cxx
+++ b/test/menubar.cxx
@@ -184,9 +184,11 @@ int main(int argc, char **argv) {
menubar.callback(test_cb);
menus[0] = &menubar;
Fl_Menu_Button mb1(100,100,120,25,"&menubutton"); mb1.menu(pulldown);
+ mb1.tooltip("this is a menu button");
mb1.callback(test_cb);
menus[1] = &mb1;
Fl_Choice ch(300,100,80,25,"&choice:"); ch.menu(pulldown);
+ ch.tooltip("this is a choice menu");
ch.callback(test_cb);
menus[2] = &ch;
Fl_Menu_Button mb(0,0,WIDTH,400,"&popup");