Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
authorTon Roosendaal <ton@blender.org>2009-07-19 20:53:57 +0400
committerTon Roosendaal <ton@blender.org>2009-07-19 20:53:57 +0400
commit9e047d5acc853f026680e5411af78805222160a1 (patch)
tree9f8e643e532d9535c023d08a5bcbfa2ba8f8b9db /source
parentb96a6e183863e5280a6e48a462593e8df72050ef (diff)
2.5
Bugfix: the 'active 3d view layer' was never set, causing issues when adding new objects. Reported by Martin, thanks!
Diffstat (limited to 'source')
-rw-r--r--source/blender/editors/space_view3d/view3d_header.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/source/blender/editors/space_view3d/view3d_header.c b/source/blender/editors/space_view3d/view3d_header.c
index 8cceb46c559..677d3c20de1 100644
--- a/source/blender/editors/space_view3d/view3d_header.c
+++ b/source/blender/editors/space_view3d/view3d_header.c
@@ -284,6 +284,21 @@ static int layers_exec(bContext *C, wmOperator *op)
else
v3d->lay = (1<<nr);
+ /* set active layer, ensure to always have one */
+ if(v3d->lay & (1<<nr))
+ v3d->layact= 1<<nr;
+ else if((v3d->lay & v3d->layact)==0) {
+ int bit= 0;
+
+ while(bit<32) {
+ if(v3d->lay & (1<<bit)) {
+ v3d->layact= 1<<bit;
+ break;
+ }
+ bit++;
+ }
+ }
+
if(v3d->scenelock) handle_view3d_lock(C);
/* new layers might need unflushed events events */