Fix #35879: missing 3D viewport redraws when changing lamp settings, after recent
changes to avoid unnecessary redraws.
This commit is contained in:
@@ -831,13 +831,16 @@ static void view3d_main_area_listener(bScreen *sc, ScrArea *sa, ARegion *ar, wmN
|
||||
break;
|
||||
case NC_LAMP:
|
||||
switch (wmn->data) {
|
||||
case ND_LIGHTING_DRAW:
|
||||
case ND_LIGHTING:
|
||||
if ((v3d->drawtype == OB_MATERIAL) ||
|
||||
(v3d->drawtype == OB_TEXTURE && (scene->gm.matmode == GAME_MAT_GLSL)))
|
||||
{
|
||||
ED_region_tag_redraw(ar);
|
||||
}
|
||||
break;
|
||||
case ND_LIGHTING_DRAW:
|
||||
ED_region_tag_redraw(ar);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case NC_IMAGE:
|
||||
|
||||
@@ -136,10 +136,7 @@ static void rna_Lamp_update(Main *UNUSED(bmain), Scene *scene, PointerRNA *ptr)
|
||||
Lamp *la = ptr->id.data;
|
||||
|
||||
DAG_id_tag_update(&la->id, 0);
|
||||
if (scene->gm.matmode == GAME_MAT_GLSL)
|
||||
WM_main_add_notifier(NC_LAMP | ND_LIGHTING_DRAW, la);
|
||||
else
|
||||
WM_main_add_notifier(NC_LAMP | ND_LIGHTING, la);
|
||||
WM_main_add_notifier(NC_LAMP | ND_LIGHTING, la);
|
||||
}
|
||||
|
||||
static void rna_Lamp_draw_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *ptr)
|
||||
|
||||
Reference in New Issue
Block a user