From 266396b1eb6d5ddca135caaaf596184afb9b4f03 Mon Sep 17 00:00:00 2001 From: Jean Guyomarc'h Date: Sun, 5 Jun 2016 11:29:25 +0200 Subject: ecore_cocoa: fix main loop handling Pffff... another tricky one... -windowDidResize is actually also called when the window is not resize by the user, leading to multiple event posting, and of course the infamous call of ecore_main_loop_iterate() when it was not paused at all, leading to messy events handling... the most visible being the initial resizing of the window going rogue. We now ensure with -windowWillStartLiveResize and -windowDidEndLiveResize that we only send an event when the user requested it. Since the main loop is paused at this point, calling ecore_main_loop_iterate() becomes safe. Fixes T3648 --- src/lib/ecore_cocoa/ecore_cocoa_window.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/lib/ecore_cocoa/ecore_cocoa_window.h') diff --git a/src/lib/ecore_cocoa/ecore_cocoa_window.h b/src/lib/ecore_cocoa/ecore_cocoa_window.h index 911c729ab8..a30240fc69 100644 --- a/src/lib/ecore_cocoa/ecore_cocoa_window.h +++ b/src/lib/ecore_cocoa/ecore_cocoa_window.h @@ -2,7 +2,8 @@ @interface EcoreCocoaWindow: NSWindow { - void *ecore_window_data; + void *ecore_window_data; + int _live_resize; } @property (nonatomic, assign) void *ecore_window_data; -- cgit v1.2.1