[Bf-blender-cvs] [5fc69361be5] lanpr-under-gp: LineArt: Ensure notification of line art gpencil objects when enable/disableing line art.
YimingWu
noreply at git.blender.org
Tue Jul 28 05:50:16 CEST 2020
Commit: 5fc69361be52339f49ead4a036261c9993eaf375
Author: YimingWu
Date: Tue Jul 28 11:49:15 2020 +0800
Branches: lanpr-under-gp
https://developer.blender.org/rB5fc69361be52339f49ead4a036261c9993eaf375
LineArt: Ensure notification of line art gpencil objects when enable/disableing line art.
===================================================================
M source/blender/editors/lineart/lineart_cpu.c
M source/blender/makesrna/intern/rna_scene.c
===================================================================
diff --git a/source/blender/editors/lineart/lineart_cpu.c b/source/blender/editors/lineart/lineart_cpu.c
index b44668d7b65..ad155fa99f9 100644
--- a/source/blender/editors/lineart/lineart_cpu.c
+++ b/source/blender/editors/lineart/lineart_cpu.c
@@ -3948,6 +3948,11 @@ void SCENE_OT_lineart_bake_strokes(wmOperatorType *ot)
void ED_lineart_post_frame_update_external(bContext *C, Scene *scene, Depsgraph *dg)
{
if (!(scene->lineart.flags & LRT_AUTO_UPDATE)) {
+ /* This way the modifier will update, removing remaing strokes in the viewport. */
+ if (ED_lineart_modifier_sync_flag_check(LRT_SYNC_WAITING)) {
+ ED_lineart_modifier_sync_flag_set(LRT_SYNC_IDLE, false);
+ lineart_gpencil_notify_targets(dg);
+ }
return;
}
if (ED_lineart_modifier_sync_flag_check(LRT_SYNC_WAITING)) {
diff --git a/source/blender/makesrna/intern/rna_scene.c b/source/blender/makesrna/intern/rna_scene.c
index 2719ffe6a83..08a42b76b24 100644
--- a/source/blender/makesrna/intern/rna_scene.c
+++ b/source/blender/makesrna/intern/rna_scene.c
@@ -7288,7 +7288,8 @@ static void rna_def_scene_lineart(BlenderRNA *brna)
RNA_def_property_boolean_default(prop, 0);
RNA_def_property_ui_text(
prop, "Auto Update", "Automatically update Line Art cache when frame changes");
- RNA_def_property_update(prop, NC_SCENE, NULL);
+ /* Also use this update callback to trigger the modifier to clear the frame */
+ RNA_def_property_update(prop, NC_SCENE, "rna_lineart_update");
prop = RNA_def_property(srna, "gpencil_overwrite", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "flags", LRT_GPENCIL_OVERWRITE);
More information about the Bf-blender-cvs
mailing list