Merge branch 'blender-v5.0-release'

This commit is contained in:
Clément Foucault
2025-10-13 14:36:00 +02:00
3 changed files with 37 additions and 35 deletions

View File

@@ -2687,6 +2687,39 @@ void do_versions_after_linking_500(FileData *fd, Main *bmain)
}
}
if (!MAIN_VERSION_FILE_ATLEAST(bmain, 500, 100)) {
/* Note: this HAS to happen in the 'after linking' stage, because
* #do_version_area_change_space_to_space_action() basically performs the opposite operation
* and is called from #do_versions_after_linking_280(). */
LISTBASE_FOREACH (bScreen *, screen, &bmain->screens) {
LISTBASE_FOREACH (ScrArea *, area, &screen->areabase) {
LISTBASE_FOREACH (SpaceLink *, sl, &area->spacedata) {
if (!ELEM(sl->spacetype, SPACE_ACTION)) {
continue;
}
SpaceAction *saction = reinterpret_cast<SpaceAction *>(sl);
const eAnimEdit_Context dopesheet_mode = eAnimEdit_Context(saction->mode);
if (dopesheet_mode != SACTCONT_TIMELINE) {
continue;
}
/* Switching to dopesheet since that is the closest to the timeline view. */
saction->mode = SACTCONT_DOPESHEET;
/* The multiplication by 2 assumes that the time control footer has the same size as the
* header. The header is only shown if there is enough space for both. */
const bool show_header = area->winy > (HEADERY * UI_SCALE_FAC) * 2;
LISTBASE_FOREACH (ARegion *, region, &area->regionbase) {
if (!show_header && region->regiontype == RGN_TYPE_HEADER) {
region->flag |= RGN_FLAG_HIDDEN;
}
if (region->regiontype == RGN_TYPE_FOOTER) {
region->flag &= ~RGN_FLAG_HIDDEN;
}
}
}
}
}
}
if (!MAIN_VERSION_FILE_ATLEAST(bmain, 500, 101)) {
const uint8_t default_flags = DNA_struct_default_get(ToolSettings)->fix_to_cam_flag;
LISTBASE_FOREACH (Scene *, scene, &bmain->scenes) {
@@ -3836,35 +3869,6 @@ void blo_do_versions_500(FileData *fd, Library * /*lib*/, Main *bmain)
}
}
if (!MAIN_VERSION_FILE_ATLEAST(bmain, 500, 100)) {
LISTBASE_FOREACH (bScreen *, screen, &bmain->screens) {
LISTBASE_FOREACH (ScrArea *, area, &screen->areabase) {
LISTBASE_FOREACH (SpaceLink *, sl, &area->spacedata) {
if (!ELEM(sl->spacetype, SPACE_ACTION)) {
continue;
}
SpaceAction *saction = reinterpret_cast<SpaceAction *>(sl);
if (saction->mode != SACTCONT_TIMELINE) {
continue;
}
/* Switching to dopesheet since that is the closest to the timeline view. */
saction->mode = SACTCONT_DOPESHEET;
/* The multiplication by 2 assumes that the time control footer has the same size as the
* header. The header is only shown if there is enough space for both. */
const bool show_header = area->winy > (HEADERY * UI_SCALE_FAC) * 2;
LISTBASE_FOREACH (ARegion *, region, &area->regionbase) {
if (!show_header && region->regiontype == RGN_TYPE_HEADER) {
region->flag |= RGN_FLAG_HIDDEN;
}
if (region->regiontype == RGN_TYPE_FOOTER) {
region->flag &= ~RGN_FLAG_HIDDEN;
}
}
}
}
}
}
if (!MAIN_VERSION_FILE_ATLEAST(bmain, 500, 102)) {
LISTBASE_FOREACH (Scene *, scene, &bmain->scenes) {
scene->r.time_jump_delta = 1.0f;

View File

@@ -212,6 +212,9 @@ class Preprocessor {
}
str = remove_comments(str, report_error);
threadgroup_variables_parsing(str);
if (language == BLENDER_GLSL || language == CPP) {
str = disabled_code_mutation(str, report_error);
}
parse_builtins(str, filename);
if (language == BLENDER_GLSL || language == CPP) {
if (do_parse_function) {
@@ -221,7 +224,6 @@ class Preprocessor {
pragma_runtime_generated_parsing(str);
pragma_once_linting(str, filename, report_error);
}
str = disabled_code_mutation(str, report_error);
str = include_parse_and_remove(str, report_error);
str = pragmas_mutation(str, report_error);
str = swizzle_function_mutation(str, report_error);