1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-06-29 22:58:39 +02:00

Fix some failures to update the vertical scrollbar...

... Problem involves sequence in which event handlers are done, and started at
commit 278509a which updated track Y coordinates in a handler.

Solution is to delay the updating of scrollbars further, using CallAfter.

Also remove one unnecessary call to ProjectWindow::FixScrollbars() because
ProjectWindow::HandleResize follows it and includes scrollbar update already.
This commit is contained in:
Paul Licameli 2019-06-25 17:27:09 -04:00
parent b0ea6e274d
commit ef7068f46a
2 changed files with 5 additions and 4 deletions

View File

@ -867,6 +867,8 @@ void ProjectWindow::ApplyUpdatedTheme()
void ProjectWindow::RedrawProject(const bool bForceWaveTracks /*= false*/) void ProjectWindow::RedrawProject(const bool bForceWaveTracks /*= false*/)
{ {
CallAfter( [this, bForceWaveTracks]{
auto &project = mProject ; auto &project = mProject ;
auto &tracks = TrackList::Get( project ); auto &tracks = TrackList::Get( project );
auto &trackPanel = TrackPanel::Get( project ); auto &trackPanel = TrackPanel::Get( project );
@ -878,6 +880,8 @@ void ProjectWindow::RedrawProject(const bool bForceWaveTracks /*= false*/)
clip->MarkChanged(); clip->MarkChanged();
} }
trackPanel.Refresh(false); trackPanel.Refresh(false);
});
} }
void ProjectWindow::OnThemeChange(wxCommandEvent& evt) void ProjectWindow::OnThemeChange(wxCommandEvent& evt)
@ -1322,9 +1326,7 @@ void ProjectWindow::HandleResize()
return; return;
} }
FixScrollbars(); CallAfter( [this]{ FixScrollbars(), UpdateLayout(); } );
UpdateLayout();
} }

View File

@ -197,7 +197,6 @@ void DoRemoveTrack(AudacityProject &project, Track * toRemove)
name), name),
_("Track Remove")); _("Track Remove"));
window.FixScrollbars();
window.HandleResize(); window.HandleResize();
trackPanel.Refresh(false); trackPanel.Refresh(false);
} }