diff --git a/Telegram/SourceFiles/dialogs/dialogs_widget.cpp b/Telegram/SourceFiles/dialogs/dialogs_widget.cpp index 12f857b8e..9f1109d25 100644 --- a/Telegram/SourceFiles/dialogs/dialogs_widget.cpp +++ b/Telegram/SourceFiles/dialogs/dialogs_widget.cpp @@ -716,19 +716,18 @@ void Widget::changeOpenedSubsection( FnMut change, bool fromRight, anim::type animated) { - _a_show.stop(); - if (isHidden()) { animated = anim::type::instant; } if (animated == anim::type::normal) { + _connecting->setForceHidden(true); + _cacheUnder = grabForFolderSlideAnimation(); _showDirection = fromRight ? Window::SlideDirection::FromRight : Window::SlideDirection::FromLeft; _showAnimationType = ShowAnimation::Internal; - _connecting->setForceHidden(true); - _cacheUnder = grabForFolderSlideAnimation(); } + _a_show.stop(); change(); refreshTopBars(); updateControlsVisibility(true); diff --git a/Telegram/SourceFiles/window/window_session_controller.cpp b/Telegram/SourceFiles/window/window_session_controller.cpp index c7610d8ae..357044bae 100644 --- a/Telegram/SourceFiles/window/window_session_controller.cpp +++ b/Telegram/SourceFiles/window/window_session_controller.cpp @@ -983,6 +983,9 @@ void SessionController::openForum( if (_openedForum.current() != forum) { resetFakeUnreadWhileOpened(); } + if (forum && _activeChatEntry.current().key.peer()) { + clearSectionStack(params); + } _openedForum = forum.get(); if (_openedForum.current() == forum) { forum->forum()->destroyed(