Ken Thomases : winemac: Discard old frame changed events when setting frame for off-screen windows , too.

Alexandre Julliard julliard at winehq.org
Mon Feb 18 13:27:05 CST 2013


Module: wine
Branch: master
Commit: 47352930d8a7caa74d658b8267f3a4add317cd4a
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=47352930d8a7caa74d658b8267f3a4add317cd4a

Author: Ken Thomases <ken at codeweavers.com>
Date:   Sun Feb 17 19:28:16 2013 -0600

winemac: Discard old frame changed events when setting frame for off-screen windows, too.

---

 dlls/winemac.drv/cocoa_window.m |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/dlls/winemac.drv/cocoa_window.m b/dlls/winemac.drv/cocoa_window.m
index 4371110..2247d32 100644
--- a/dlls/winemac.drv/cocoa_window.m
+++ b/dlls/winemac.drv/cocoa_window.m
@@ -445,6 +445,14 @@ static inline void fix_generic_modifiers_by_device(NSUInteger* modifiers)
                event.  The back end will ignore it if nothing actually changed. */
             [self windowDidResize:nil];
         }
+        else
+        {
+            /* The back end is establishing a new window size and position.  It's
+               not interested in any stale events regarding those that may be sitting
+               in the queue. */
+            [queue discardEventsMatchingMask:event_mask_for_type(WINDOW_FRAME_CHANGED)
+                                   forWindow:self];
+        }
 
         return on_screen;
     }




More information about the wine-cvs mailing list