Fixed search categories in list of stickers from userpic emoji builder.

This commit is contained in:
23rd 2023-02-08 18:51:11 +03:00
parent 9090b8ce6b
commit 08644a9c31
4 changed files with 18 additions and 6 deletions

View file

@ -165,17 +165,18 @@ StickersListWidget::StickersListWidget(
QWidget *parent,
not_null<Window::SessionController*> controller,
Window::GifPauseReason level,
bool masks)
Mode mode)
: Inner(
parent,
st::defaultEmojiPan,
&controller->session(),
Window::PausedIn(controller, level))
, _mode(mode)
, _controller(controller)
, _api(&session().mtp())
, _localSetsManager(std::make_unique<LocalStickersManager>(&session()))
, _section(Section::Stickers)
, _isMasks(masks)
, _isMasks(mode == Mode::Masks)
, _updateItemsTimer([=] { updateItems(); })
, _updateSetsTimer([=] { updateSets(); })
, _trendingAddBgOver(
@ -2565,7 +2566,7 @@ void StickersListWidget::setupSearch() {
return a.isEmpty() ? b : (a + ' ' + b);
});
searchForSets(std::move(text), SearchEmoji(query, set));
}, session);
}, session, false, (_mode == Mode::UserpicBuilder));
}
void StickersListWidget::displaySet(uint64 setId) {

View file

@ -59,13 +59,21 @@ enum class ValidateIconAnimations;
class StickersListFooter;
class LocalStickersManager;
enum class StickersListMode {
Full,
Masks,
UserpicBuilder,
};
class StickersListWidget final : public TabbedSelector::Inner {
public:
using Mode = StickersListMode;
StickersListWidget(
QWidget *parent,
not_null<Window::SessionController*> controller,
Window::GifPauseReason level,
bool masks = false);
Mode mode = Mode::Full);
rpl::producer<FileChosen> chosen() const;
rpl::producer<> scrollUpdated() const;
@ -331,6 +339,8 @@ private:
int index,
not_null<DocumentData*> document);
const Mode _mode;
not_null<Window::SessionController*> _controller;
std::unique_ptr<Ui::TabbedSearch> _search;
MTP::Sender _api;

View file

@ -500,7 +500,7 @@ TabbedSelector::Tab TabbedSelector::createTab(SelectorTab type, int index) {
this,
_controller,
_level,
true);
StickersListWidget::Mode::Masks);
}
Unexpected("Type in TabbedSelector::createTab.");
};

View file

@ -274,7 +274,8 @@ EmojiSelector::Selector EmojiSelector::createStickersList(
object_ptr<ChatHelpers::StickersListWidget>(
scroll,
_controller,
Window::GifPauseReason::Any));
Window::GifPauseReason::Any,
ChatHelpers::StickersListMode::UserpicBuilder));
const auto footer = list->createFooter().data();
list->refreshRecent();
list->chosen(