From a459a590c290b854bab1b411f4a4c5f46e35f64f Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Tue, 21 May 2019 22:08:10 +1000 Subject: [PATCH] Fix part of T64679: Missing dirty preferences tag - Editing shortcuts. - Editing walk mode navigation. - Adding/removing paths. --- source/blender/editors/interface/interface_handlers.c | 6 +++++- source/blender/makesrna/RNA_access.h | 1 + source/blender/windowmanager/intern/wm_files.c | 2 ++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c index 364a03eb6a2..eea720f9561 100644 --- a/source/blender/editors/interface/interface_handlers.c +++ b/source/blender/editors/interface/interface_handlers.c @@ -565,7 +565,11 @@ static void ui_but_update_preferences_dirty(uiBut *but) } else { StructRNA *base = RNA_struct_base(but->rnapoin.type); - if (ELEM(base, &RNA_AddonPreferences, &RNA_KeyConfigPreferences)) { + if (ELEM(base, + &RNA_AddonPreferences, + &RNA_KeyConfigPreferences, + &RNA_KeyMapItem, + &RNA_WalkNavigation)) { tag = true; } } diff --git a/source/blender/makesrna/RNA_access.h b/source/blender/makesrna/RNA_access.h index 4d9ba2cca42..30abf0f54bf 100644 --- a/source/blender/makesrna/RNA_access.h +++ b/source/blender/makesrna/RNA_access.h @@ -726,6 +726,7 @@ extern StructRNA RNA_View3DOverlay; extern StructRNA RNA_View3DShading; extern StructRNA RNA_ViewLayer; extern StructRNA RNA_VoronoiTexture; +extern StructRNA RNA_WalkNavigation; extern StructRNA RNA_WarpModifier; extern StructRNA RNA_WaveModifier; extern StructRNA RNA_WeightedNormalModifier; diff --git a/source/blender/windowmanager/intern/wm_files.c b/source/blender/windowmanager/intern/wm_files.c index 92c37da0531..c9c14dbaf23 100644 --- a/source/blender/windowmanager/intern/wm_files.c +++ b/source/blender/windowmanager/intern/wm_files.c @@ -1652,6 +1652,7 @@ static int wm_userpref_autoexec_add_exec(bContext *UNUSED(C), wmOperator *UNUSED { bPathCompare *path_cmp = MEM_callocN(sizeof(bPathCompare), "bPathCompare"); BLI_addtail(&U.autoexec_paths, path_cmp); + U.runtime.is_dirty = true; return OPERATOR_FINISHED; } @@ -1672,6 +1673,7 @@ static int wm_userpref_autoexec_remove_exec(bContext *UNUSED(C), wmOperator *op) bPathCompare *path_cmp = BLI_findlink(&U.autoexec_paths, index); if (path_cmp) { BLI_freelinkN(&U.autoexec_paths, path_cmp); + U.runtime.is_dirty = true; } return OPERATOR_FINISHED; }