diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2009-12-17 17:38:30 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2009-12-17 17:38:30 +0300 |
commit | 68ff5a87ecc7584408a09cec02aa4e6220b4d21e (patch) | |
tree | 88fc8abe443135a3d5e775b16029db33e6632a3f /source/blender/windowmanager/intern/wm_draw.c | |
parent | 4b3c6b79966e6aa94e863386082065a3361b0ee5 (diff) |
Fix #20374: Limit selection to visible would not work anymore after trying to
select once but not selecting correctly, due the need backbuffer flag not being
reset correctly in the 3d view.
Diffstat (limited to 'source/blender/windowmanager/intern/wm_draw.c')
-rw-r--r-- | source/blender/windowmanager/intern/wm_draw.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/source/blender/windowmanager/intern/wm_draw.c b/source/blender/windowmanager/intern/wm_draw.c index 3335efeb166..b9e6ca2d281 100644 --- a/source/blender/windowmanager/intern/wm_draw.c +++ b/source/blender/windowmanager/intern/wm_draw.c @@ -34,6 +34,7 @@ #include "DNA_screen_types.h" #include "DNA_windowmanager_types.h" #include "DNA_userdef_types.h" +#include "DNA_view3d_types.h" #include "MEM_guardedalloc.h" @@ -90,6 +91,12 @@ static void wm_paintcursor_draw(bContext *C, ARegion *ar) } } +static void wm_area_mark_invalid_backbuf(ScrArea *sa) +{ + if(sa->spacetype == SPACE_VIEW3D) + ((View3D*)sa->spacedata.first)->flag |= V3D_INVALID_BACKBUF; +} + /********************** draw all **************************/ /* - reference method, draw all each time */ @@ -113,6 +120,7 @@ static void wm_method_draw_full(bContext *C, wmWindow *win) } } + wm_area_mark_invalid_backbuf(sa); CTX_wm_area_set(C, NULL); } @@ -230,6 +238,7 @@ static void wm_method_draw_overlap_all(bContext *C, wmWindow *win) } } + wm_area_mark_invalid_backbuf(sa); CTX_wm_area_set(C, NULL); } @@ -553,6 +562,7 @@ static void wm_method_draw_triple(bContext *C, wmWindow *win) } } + wm_area_mark_invalid_backbuf(sa); CTX_wm_area_set(C, NULL); } |