2
0
mirror of https://github.com/telegramdesktop/tdesktop synced 2025-08-31 14:38:15 +00:00

Make tabbed selector working in scheduled section.

This commit is contained in:
John Preston
2019-08-16 15:44:20 +03:00
parent 385a7eb00d
commit 3e895d0e85
27 changed files with 341 additions and 250 deletions

View File

@@ -13,9 +13,14 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "dialogs/dialogs_key.h"
class MainWidget;
class MainWindow;
class HistoryMessage;
class HistoryService;
namespace ChatHelpers {
class TabbedSelector;
} // namespace ChatHelpers
namespace Main {
class Session;
} // namespace Main
@@ -146,12 +151,17 @@ class SessionController
public:
SessionController(
not_null<Main::Session*> session,
not_null<MainWindow*> window);
not_null<::MainWindow*> window);
not_null<MainWindow*> window() const {
[[nodiscard]] not_null<::MainWindow*> window() const {
return _window;
}
[[nodiscard]] auto tabbedSelector() const
-> not_null<ChatHelpers::TabbedSelector*>;
void takeTabbedSelectorOwnershipFrom(not_null<QWidget*> parent);
[[nodiscard]] bool hasTabbedSelectorOwnership() const;
// This is needed for History TopBar updating when searchInChat
// is changed in the Dialogs::Widget of the current window.
rpl::variable<Dialogs::Key> searchInChat;
@@ -292,7 +302,7 @@ private:
void pushToChatEntryHistory(Dialogs::RowDescriptor row);
bool chatEntryHistoryMove(int steps);
const not_null<MainWindow*> _window;
const not_null<::MainWindow*> _window;
std::unique_ptr<Passport::FormController> _passportForm;
@@ -300,6 +310,9 @@ private:
base::Observable<void> _gifPauseLevelChanged;
base::Observable<void> _floatPlayerAreaUpdated;
// Depends on _gifPause*.
const std::unique_ptr<ChatHelpers::TabbedSelector> _tabbedSelector;
rpl::variable<Dialogs::RowDescriptor> _activeChatEntry;
base::Variable<bool> _dialogsListFocused = { false };
base::Variable<bool> _dialogsListDisplayForced = { false };