summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael R Sweet <michael.r.sweet@gmail.com>1999-06-12 13:04:15 +0000
committerMichael R Sweet <michael.r.sweet@gmail.com>1999-06-12 13:04:15 +0000
commitb846b2515ada47714409f14bbee320c897c4ab5c (patch)
treee3d1139f21e9769825629b7600ea4517cf09b2dd
parentf3980ef211936a202e7176cf93344309d8a5dbbf (diff)
Final fix (I hope) for WIN32 selection code (now check against all windows
and only clear the selection when it isn't one of the app's windows). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.0@601 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
-rw-r--r--src/Fl_cutpaste_win32.cxx11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/Fl_cutpaste_win32.cxx b/src/Fl_cutpaste_win32.cxx
index 52715055e..28f8365a6 100644
--- a/src/Fl_cutpaste_win32.cxx
+++ b/src/Fl_cutpaste_win32.cxx
@@ -1,5 +1,5 @@
//
-// "$Id: Fl_cutpaste_win32.cxx,v 1.5.2.1 1999/05/15 14:31:32 mike Exp $"
+// "$Id: Fl_cutpaste_win32.cxx,v 1.5.2.2 1999/06/12 13:04:15 mike Exp $"
//
// WIN32 cut/paste for the Fast Light Tool Kit (FLTK).
//
@@ -47,7 +47,12 @@ static int selection_xevent_handler(int) {
switch (fl_msg.message) {
case WM_DESTROYCLIPBOARD:
- if (fl_msg.hwnd != fl_xid(Fl::first_window())) {
+ Fl_Window *w = Fl::first_window();
+ while (w != (Fl_Window *)0)
+ if (fl_msg.hwnd == fl_xid(w)) break;
+ else w = Fl::next_window(w);
+
+ if (w == (Fl_Window *)0) {
Fl::selection_owner(0);
Fl::flush(); // get the redraw to happen
}
@@ -132,5 +137,5 @@ void Fl::paste(Fl_Widget &receiver) {
}
//
-// End of "$Id: Fl_cutpaste_win32.cxx,v 1.5.2.1 1999/05/15 14:31:32 mike Exp $".
+// End of "$Id: Fl_cutpaste_win32.cxx,v 1.5.2.2 1999/06/12 13:04:15 mike Exp $".
//