mirror of
https://github.com/godotengine/godot.git
synced 2025-12-07 22:00:10 +00:00
Fix issue of AnimationPlayer hiding bezier editor when re-selecting it
Co-authored-by: Kasper Arnklit Frandsen <kasper.arnklit@gmail.com>
This commit is contained in:
parent
d61cd9149a
commit
c33b09ed19
1 changed files with 15 additions and 6 deletions
|
|
@ -3934,7 +3934,7 @@ void AnimationTrackEditor::set_animation(const Ref<Animation> &p_anim, bool p_re
|
|||
marker_edit->set_animation(p_anim, read_only);
|
||||
marker_edit->set_play_position(timeline->get_play_position());
|
||||
|
||||
_cancel_bezier_edit();
|
||||
_check_bezier_exist();
|
||||
_update_tracks();
|
||||
|
||||
if (animation.is_valid()) {
|
||||
|
|
@ -3963,7 +3963,14 @@ void AnimationTrackEditor::set_animation(const Ref<Animation> &p_anim, bool p_re
|
|||
}
|
||||
}
|
||||
|
||||
_check_bezier_exist();
|
||||
if (bezier_edit->is_visible()) {
|
||||
for (int i = 0; i < animation->get_track_count(); ++i) {
|
||||
if (animation->track_get_type(i) == Animation::TrackType::TYPE_BEZIER) {
|
||||
_bezier_edit(i);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
hscroll->hide();
|
||||
edit->set_disabled(true);
|
||||
|
|
@ -3984,10 +3991,12 @@ void AnimationTrackEditor::set_animation(const Ref<Animation> &p_anim, bool p_re
|
|||
|
||||
void AnimationTrackEditor::_check_bezier_exist() {
|
||||
bool is_exist = false;
|
||||
for (int i = 0; i < animation->get_track_count(); i++) {
|
||||
if (animation->track_get_type(i) == Animation::TrackType::TYPE_BEZIER) {
|
||||
is_exist = true;
|
||||
break;
|
||||
if (animation.is_valid()) {
|
||||
for (int i = 0; i < animation->get_track_count(); i++) {
|
||||
if (animation->track_get_type(i) == Animation::TrackType::TYPE_BEZIER) {
|
||||
is_exist = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (is_exist) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue