MCPcopy Create free account
hub / github.com/TDesktop-x64/tdesktop / refreshSearchField

Method refreshSearchField

Telegram/SourceFiles/info/info_content_widget.cpp:438–463  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

436}
437
438void ContentWidget::refreshSearchField(bool shown) {
439 auto search = _controller->searchFieldController();
440 if (search && shown) {
441 auto rowView = search->createRowView(
442 this,
443 st::infoLayerMediaSearch);
444 _searchWrap = std::move(rowView.wrap);
445 _searchField = rowView.field;
446
447 const auto view = _searchWrap.get();
448 widthValue(
449 ) | rpl::on_next([=](int newWidth) {
450 view->resizeToWidth(newWidth);
451 view->moveToLeft(0, 0);
452 }, view->lifetime());
453 view->show();
454 _searchField->setFocus();
455 setScrollTopSkip(view->heightNoMargins() - st::lineWidth);
456 } else if (_searchWrap) {
457 if (Ui::InFocusChain(this)) {
458 setFocus();
459 }
460 _searchWrap = nullptr;
461 setScrollTopSkip(0);
462 }
463}
464
465int ContentWidget::scrollBottomSkip() const {
466 return _scrollBottomSkip.current();

Callers

nothing calls this directly

Calls 7

searchFieldControllerMethod · 0.80
createRowViewMethod · 0.80
moveToLeftMethod · 0.80
getMethod · 0.45
resizeToWidthMethod · 0.45
showMethod · 0.45
setFocusMethod · 0.45

Tested by

no test coverage detected