シーケンサーエディタでのアニメーションセクションのAnimation|Playbackカテゴリの展開状態の保存について

お世話になっております。

<br/>

シーケンサーエディタについての質問です。

<br/>

アニメーションセクションを右クリックしたときのコンテキストメニューについて、Property内のAnimation > Playbackを展開しても再度コンテキストメニューを開くと閉じた状態に戻ってしまいます。

<br/>

展開された状態になっている人もいるため、保存される条件があると思うのですが、わかりませんでした。

<br/>

下記のようにEditorPerProjectUserSettings.iniに直接書けば展開された状態になることは確認できたのですが、問題ありませんか?

// EditorPerProjectUserSettings.ini
[DetailCustomWidgetExpansion]
MovieSceneSkeletalAnimationSection=MovieSceneSkeletalAnimationSection.Animation.Playback

<br/>

不具合のようにもみえるため、ご確認いただけますと幸いです。

<br/>

以上、よろしくお願いいたします。

<br/>

[Attachment Removed]

問題を再現することができたので UE-381517 Sequencer: Expansion State of Animation Track Properties is not saved としてバグ登録させていただきました。

展開状態が保存されたりされなかったりするのは プロパティに列挙される項目のうちSection > Advanced だけが、開閉操作でプロパティメニュー全体の展開状態の保存が即座に行われるためです。

この動作を利用して対応することも出来ますが、正式な修正までの暫定対処として他のメンバの展開状態を変更した時でも変更を保存することも検討できます。

コードは以下の通りです。

void SDetailsViewBase::SaveCustomExpansionState(const FString& NodePath, bool bIsExpanded)
{
	if (bIsExpanded)
	{
		ExpandedDetailNodes.Insert(NodePath);
	}
	else
	{
		ExpandedDetailNodes.Remove(NodePath);
	}
#if 1 //ワークアラウンド
	FRootPropertyNodeList& RootPropertyNodes = GetRootNodes();
	for (TSharedPtr<FComplexPropertyNode>& RootPropertyNode : RootPropertyNodes)
	{
		SaveExpandedItems(RootPropertyNode.ToSharedRef());
	}
#endif
}

EditorPerProjectUserSettings.iniを直接書き換えることでも対処は可能ですが、Section>Advancedの開閉で保存する方が容易かと思います。

[Attachment Removed]

バグ登録していただきありがとうございます。

提供いただいたコードを適用することで、保存されるようになることを確認いたしました。

また、「Section>Advancedの開閉で保存」も確認できました。

本件はクローズで問題ございません。

ご対応ありがとうございました。

[Attachment Removed]