[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18681] branches/blender2.5/blender/source /blender/windowmanager/intern: 2.5
Ton Roosendaal
ton at blender.org
Mon Jan 26 16:22:12 CET 2009
Revision: 18681
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18681
Author: ton
Date: 2009-01-26 16:22:10 +0100 (Mon, 26 Jan 2009)
Log Message:
-----------
2.5
Bugfix: having multiple windows didnt read events anymore for other
windows. Caused by too much security escapes in event handlers.
Modified Paths:
--------------
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_event_system.c
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_window.c
Modified: branches/blender2.5/blender/source/blender/windowmanager/intern/wm_event_system.c
===================================================================
--- branches/blender2.5/blender/source/blender/windowmanager/intern/wm_event_system.c 2009-01-26 13:19:52 UTC (rev 18680)
+++ branches/blender2.5/blender/source/blender/windowmanager/intern/wm_event_system.c 2009-01-26 15:22:10 UTC (rev 18681)
@@ -790,6 +790,7 @@
int action;
CTX_wm_window_set(C, win);
+
/* we let modal handlers get active area/region, also wm_paintcursor_test needs it */
CTX_wm_area_set(C, area_event_inside(C, event->x, event->y));
CTX_wm_region_set(C, region_event_inside(C, event->x, event->y));
@@ -802,7 +803,7 @@
/* fileread case */
if(CTX_wm_window(C)==NULL) {
wm_event_free(event);
- break;
+ return;
}
if(wm_event_always_pass(event) || action==WM_HANDLER_CONTINUE) {
@@ -850,14 +851,8 @@
}
wm_event_free(event);
- CTX_wm_window_set(C, NULL);
- CTX_wm_area_set(C, NULL);
- CTX_wm_region_set(C, NULL);
}
-
- /* fileread case */
- if(CTX_wm_window(C)==NULL)
- break;
+ CTX_wm_window_set(C, NULL);
}
}
Modified: branches/blender2.5/blender/source/blender/windowmanager/intern/wm_window.c
===================================================================
--- branches/blender2.5/blender/source/blender/windowmanager/intern/wm_window.c 2009-01-26 13:19:52 UTC (rev 18680)
+++ branches/blender2.5/blender/source/blender/windowmanager/intern/wm_window.c 2009-01-26 15:22:10 UTC (rev 18681)
@@ -279,7 +279,6 @@
/* area-rip calls this */
wmWindow *WM_window_open(bContext *C, rcti *rect)
{
- wmWindowManager *wm= CTX_wm_manager(C);
wmWindow *win= wm_window_new(C);
win->posx= rect->xmin;
@@ -290,7 +289,7 @@
win->drawmethod= -1;
win->drawdata= NULL;
- wm_window_add_ghostwindow(wm, "Blender", win);
+ wm_check(C);
return win;
}
More information about the Bf-blender-cvs
mailing list