diff options
author | Ton Roosendaal <ton@blender.org> | 2013-05-25 18:08:56 +0400 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2013-05-25 18:08:56 +0400 |
commit | 24321d4891224befb9e9ee666950f02b21e6f1c7 (patch) | |
tree | 7859c456b71cc4a67ab5855c6a1dac6c3ce1fa63 /source/blender/windowmanager | |
parent | 9bf7a2a8c49d07bf41b5b2f743075ccf45cc9e02 (diff) |
Solving ancient Blender window sizing issue;
- Removed grid-snapping for area coordinates on scaling windows.
That caused the areas to shrink or expand, and eventually corrupt screen layouts.
- Added simple but efficient life resize for OSX. I need to know why this is so much
code for Windows... I suggest Windows to just copy same method; dispatch the queue,
and just let the event system draw.
Diffstat (limited to 'source/blender/windowmanager')
-rw-r--r-- | source/blender/windowmanager/intern/wm_window.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/source/blender/windowmanager/intern/wm_window.c b/source/blender/windowmanager/intern/wm_window.c index fe419010780..282e14cc5fe 100644 --- a/source/blender/windowmanager/intern/wm_window.c +++ b/source/blender/windowmanager/intern/wm_window.c @@ -900,6 +900,13 @@ static int ghost_event_proc(GHOST_EventHandle evt, GHOST_TUserDataPtr C_void_ptr wm_draw_window_clear(win); WM_event_add_notifier(C, NC_SCREEN | NA_EDITED, NULL); WM_event_add_notifier(C, NC_WINDOW | NA_EDITED, NULL); + +#if defined(__APPLE__) + /* OSX doesn't return to the mainloop while resize */ + wm_event_do_handlers(C); + wm_event_do_notifiers(C); + wm_draw_update(C); +#endif } } break; |