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:
-rw-r--r--source/blender/editors/include/ED_fileselect.h2
-rw-r--r--source/blender/editors/space_file/fsmenu.c14
2 files changed, 14 insertions, 2 deletions
diff --git a/source/blender/editors/include/ED_fileselect.h b/source/blender/editors/include/ED_fileselect.h
index 6a207a6e453..c367072e6e7 100644
--- a/source/blender/editors/include/ED_fileselect.h
+++ b/source/blender/editors/include/ED_fileselect.h
@@ -216,6 +216,8 @@ typedef enum FSMenuInsert {
FS_INSERT_FIRST = (1 << 2),
/** just append to preserve delivered order */
FS_INSERT_LAST = (1 << 3),
+ /** Do not validate the link when inserted. */
+ FS_INSERT_NO_VALIDATE = (1 << 4),
} FSMenuInsert;
struct FSMenu;
diff --git a/source/blender/editors/space_file/fsmenu.c b/source/blender/editors/space_file/fsmenu.c
index ae0e5b23d55..65354591034 100644
--- a/source/blender/editors/space_file/fsmenu.c
+++ b/source/blender/editors/space_file/fsmenu.c
@@ -463,7 +463,12 @@ void fsmenu_insert_entry(struct FSMenu *fsmenu,
ED_fsmenu_entry_set_icon(fsm_iter, icon);
- fsmenu_entry_refresh_valid(fsm_iter);
+ if (flag & FS_INSERT_NO_VALIDATE) {
+ fsm_iter->valid = true;
+ }
+ else {
+ fsmenu_entry_refresh_valid(fsm_iter);
+ }
if (fsm_prev) {
if (flag & FS_INSERT_FIRST) {
@@ -689,7 +694,12 @@ void fsmenu_read_system(struct FSMenu *fsmenu, int read_bookmarks)
break;
}
- fsmenu_insert_entry(fsmenu, FS_CATEGORY_SYSTEM, tmps, name, icon, FS_INSERT_SORTED);
+ fsmenu_insert_entry(fsmenu,
+ FS_CATEGORY_SYSTEM,
+ tmps,
+ name,
+ icon,
+ FS_INSERT_SORTED | FS_INSERT_NO_VALIDATE);
}
}