Fix visual glitch in poll results viewing.

We need a visible widget to mark more button height.
An invisible 'more' button doesn't receive geometry change events.
This commit is contained in:
John Preston 2020-04-21 13:34:36 +04:00
parent 53d206c12c
commit 57e9651a8a

View file

@ -579,6 +579,9 @@ ListController *CreateAnswerRows(
headerWrap->resize(headerWrap->width(), height);
}, header->lifetime());
auto moreTopWidget = object_ptr<Ui::RpWidget>(container);
moreTopWidget->resize(0, 0);
const auto moreTop = container->add(std::move(moreTopWidget));
const auto more = container->add(
object_ptr<Ui::SlideWrap<Ui::SettingsButton>>(
container,
@ -604,7 +607,7 @@ ListController *CreateAnswerRows(
rpl::combine(
std::move(visibleTop),
headerWrap->geometryValue(),
more->topValue()
moreTop->topValue()
) | rpl::filter([=](int, QRect headerRect, int moreTop) {
return moreTop >= headerRect.y() + headerRect.height();
}) | rpl::start_with_next([=](