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
diff options
context:
space:
mode:
authorTon Roosendaal <ton@blender.org>2009-02-17 18:53:52 +0300
committerTon Roosendaal <ton@blender.org>2009-02-17 18:53:52 +0300
commit9322bddf2c8997adafe3474e50bbb2eab7ab2076 (patch)
treedcb59d85488efc58d745c9b124bf44a8264526b1 /source/blender/blenkernel
parent9185f7931aba220c0b8ac82878e869225f2549dd (diff)
2.5
Fix for the 'repeat last operator' option. It didn't work yet well outside editmode. Now undo/redo has to fully keep the UI alive, even when called from within a running popup. Another fix: when regions collapse/hide they were not effectively disabled, still accepting events. (like Nkey in 3d window).
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r--source/blender/blenkernel/intern/blender.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/source/blender/blenkernel/intern/blender.c b/source/blender/blenkernel/intern/blender.c
index 64acd933d46..be64faec3cf 100644
--- a/source/blender/blenkernel/intern/blender.c
+++ b/source/blender/blenkernel/intern/blender.c
@@ -321,10 +321,6 @@ static void setup_app_data(bContext *C, BlendFileData *bfd, char *filename)
G.main= bfd->main;
CTX_data_main_set(C, G.main);
- CTX_wm_screen_set(C, NULL);
- CTX_wm_area_set(C, NULL);
- CTX_wm_region_set(C, NULL);
- CTX_wm_ui_block_set(C, NULL, NULL);
if (bfd->user) {
@@ -340,15 +336,19 @@ static void setup_app_data(bContext *C, BlendFileData *bfd, char *filename)
/* case G_FILE_NO_UI or no screens in file */
if(mode) {
- CTX_wm_screen_set(C, curscreen);
+ /* leave entire context further unaltered? */
CTX_data_scene_set(C, curscene);
}
else {
G.winpos= bfd->winpos;
G.displaymode= bfd->displaymode;
G.fileflags= bfd->fileflags;
+
CTX_wm_screen_set(C, bfd->curscreen);
CTX_data_scene_set(C, bfd->curscreen->scene);
+ CTX_wm_area_set(C, NULL);
+ CTX_wm_region_set(C, NULL);
+ CTX_wm_ui_block_set(C, NULL, NULL);
}
/* this can happen when active scene was lib-linked, and doesnt exist anymore */
@@ -372,8 +372,9 @@ static void setup_app_data(bContext *C, BlendFileData *bfd, char *filename)
//setscreen(G.curscreen);
}
- // XXX is this in the right place?
- do_versions_ipos_to_animato(G.main); // XXX fixme... complicated versionpatching
+ // XXX temporarily here
+ if(G.main->versionfile < 250)
+ do_versions_ipos_to_animato(G.main); // XXX fixme... complicated versionpatching
/* baseflags, groups, make depsgraph, etc */
set_scene_bg(CTX_data_scene(C));