[Bf-blender-cvs] [e44a7d36f43] master: Fix UI not fully updating while resizing window on Windows and macOS.

Brecht Van Lommel noreply at git.blender.org
Thu Jan 17 11:45:09 CET 2019


Commit: e44a7d36f436b24e2b5ac1680f6a3f12ac6c1ff6
Author: Brecht Van Lommel
Date:   Thu Jan 17 01:59:32 2019 +0100
Branches: master
https://developer.blender.org/rBe44a7d36f436b24e2b5ac1680f6a3f12ac6c1ff6

Fix UI not fully updating while resizing window on Windows and macOS.

This is still not fully correct, since the event loop is blocked by GHOST
and no timer events are happening for animation while the mouse is still.
But for the most part it looks ok.

===================================================================

M	source/blender/windowmanager/intern/wm_window.c

===================================================================

diff --git a/source/blender/windowmanager/intern/wm_window.c b/source/blender/windowmanager/intern/wm_window.c
index 1362a37ee25..5d5be86949c 100644
--- a/source/blender/windowmanager/intern/wm_window.c
+++ b/source/blender/windowmanager/intern/wm_window.c
@@ -123,6 +123,7 @@ static struct WMInitStruct {
 /* ******** win open & close ************ */
 
 static void wm_window_set_drawable(wmWindowManager *wm, wmWindow *win, bool activate);
+static int wm_window_timer(const bContext *C);
 
 /* XXX this one should correctly check for apple top header...
  * done for Cocoa : returns window contents (and not frame) max size*/
@@ -1422,6 +1423,8 @@ static int ghost_event_proc(GHOST_EventHandle evt, GHOST_TUserDataPtr C_void_ptr
 
 #if defined(__APPLE__) || defined(WIN32)
 						/* OSX and Win32 don't return to the mainloop while resize */
+						wm_window_timer(C);
+						wm_event_do_handlers(C);
 						wm_event_do_notifiers(C);
 						wm_draw_update(C);



More information about the Bf-blender-cvs mailing list