summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorManolo Gouy <Manolo>2011-09-13 13:03:07 +0000
committerManolo Gouy <Manolo>2011-09-13 13:03:07 +0000
commit58076d7a268a6b67eaeeb0a9c1d63a5a5dba8a6e (patch)
treefb6ae7aed1c0fcdae72851723431633dc2097d06 /src
parent28d33a29ad287b7d153d02c271d7caf441b0e203 (diff)
Mac OS: - Correct application hiding when modal or menu window is on.
- Removed useless FL_FOCUS events when unhiding application. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9034 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src')
-rw-r--r--src/Fl_cocoa.mm7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/Fl_cocoa.mm b/src/Fl_cocoa.mm
index 33f01807a..d58aae46c 100644
--- a/src/Fl_cocoa.mm
+++ b/src/Fl_cocoa.mm
@@ -1069,7 +1069,7 @@ extern "C" {
for (x = Fl_X::first;x;x = x->next) {
FLWindow *cw = (FLWindow*)x->xid;
Fl_Window *win = x->w;
- if (win && cw) {
+ if (win && cw && [cw isVisible]) {
if (win->modal()) {
[cw setLevel:NSModalPanelWindowLevel];
if (topModal)
@@ -1113,7 +1113,7 @@ extern "C" {
for (x = Fl_X::first;x;x = x->next) {
FLWindow *cw = (FLWindow*)x->xid;
Fl_Window *win = x->w;
- if (win && cw) {
+ if (win && cw && [cw isVisible]) {
if (win->modal()) {
[cw setLevel:NSNormalWindowLevel];
if (top) [cw orderWindow:NSWindowAbove relativeTo:[top windowNumber]];
@@ -1124,7 +1124,7 @@ extern "C" {
for (x = Fl_X::first;x;x = x->next) {
FLWindow *cw = (FLWindow*)x->xid;
Fl_Window *win = x->w;
- if (win && cw) {
+ if (win && cw && [cw isVisible]) {
if (win->non_modal()) {
[cw setLevel:NSNormalWindowLevel];
if (top) [cw orderWindow:NSWindowAbove relativeTo:[top windowNumber]];
@@ -1150,7 +1150,6 @@ extern "C" {
for (x = Fl_X::first;x;x = x->next) {
Fl_Window *w = x->w;
if ( !w->parent() ) {
- if ( w->border() || (!w->modal() && !w->tooltip_window()) ) Fl::handle( FL_FOCUS, w);
Fl::handle( FL_SHOW, w);
}
}