summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Melcher <fltk@matthiasm.com>2011-09-30 09:38:35 +0000
committerMatthias Melcher <fltk@matthiasm.com>2011-09-30 09:38:35 +0000
commit00e8e44cf43f423a61c0712499b313e8a2bb1556 (patch)
tree196c3f66db00d7cf354acb5e4172c68a8a117c42
parent309742dab32eb2bd16b1f016f53f19c85817b599 (diff)
OSX: Fixed screen updates durin DND operations
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9090 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
-rw-r--r--src/Fl_cocoa.mm5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/Fl_cocoa.mm b/src/Fl_cocoa.mm
index 67cae882c..876426b43 100644
--- a/src/Fl_cocoa.mm
+++ b/src/Fl_cocoa.mm
@@ -1738,6 +1738,7 @@ static void q_set_window_title(NSWindow *nsw, const char * name, const char *mi
int ret = Fl::handle( FL_DND_ENTER, target );
breakMacEventLoop();
fl_unlock_function();
+ Fl::flush();
return ret ? NSDragOperationCopy : NSDragOperationNone;
}
- (NSDragOperation)draggingUpdated:(id < NSDraggingInfo >)sender
@@ -1749,6 +1750,10 @@ static void q_set_window_title(NSWindow *nsw, const char * name, const char *mi
int ret = Fl::handle( FL_DND_DRAG, target );
breakMacEventLoop();
fl_unlock_function();
+ // if the DND started in the same application, Fl::dnd() will not return until
+ // the the DND operation is finished. The call below causes the drop indicator
+ // to be draw correctly (a full event handling would be better...)
+ Fl::flush();
return ret ? NSDragOperationCopy : NSDragOperationNone;
}
- (BOOL)performDragOperation:(id <NSDraggingInfo>)sender