/*
registry.RegisterFeature(std::move(
...
ContentsWebView::kContentsWebViewElementId,
...
.SetAnchorElementFilter(base::BindRepeating(
[](const ui::ElementTracker::ElementList& elements)
-> ui::TrackedElement* {
if (elements.empty()) {
return nullptr;
}
auto* const browser_view =
views::ElementTrackerViews::GetInstance()
->GetFirstMatchingViewAs<BrowserView>(
kBrowserViewElementId, elements[0]->context());
std::vector<ContentsWebView*> contents_web_views =
browser_view->GetAllVisibleContentsWebViews();
for (auto* contents_web_view : contents_web_views) {
auto* pdf_doc_helper =
pdf::PDFDocumentHelper::MaybeGetForWebContents(
contents_web_view->GetWebContents());
if (pdf_doc_helper && pdf_doc_helper->SearchifyStarted()) {
return views::ElementTrackerViews::GetInstance()
->GetElementForView(contents_web_view);
}
}
return nullptr;
}))));
registry.RegisterFeature(std::move(
....
kTabStripElementId,
....
.SetAnchorElementFilter(base::BindRepeating(
[](const ui::ElementTracker::ElementList& elements)
-> ui::TrackedElement* {
if (elements.empty()) {
return nullptr;
}
auto* tab_strip = views::AsViewClass<TabStrip>(
elements[0]->AsA<views::TrackedElementViews>()->view());
auto* const browser_view =
views::ElementTrackerViews::GetInstance()
->GetFirstMatchingViewAs<BrowserView>(
kBrowserViewElementId, elements[0]->context());
auto* tab_strip_model =
browser_view->browser()->tab_strip_model();
for (int i = 0; i < tab_strip->GetTabCount(); i++) {
auto* pdf_doc_helper =
pdf::PDFDocumentHelper::MaybeGetForWebContents(
tab_strip_model->GetWebContentsAt(i));
if (pdf_doc_helper && pdf_doc_helper->SearchifyStarted()) {
return views::ElementTrackerViews::GetInstance()
->GetElementForView(tab_strip->tab_at(i));
}
}
return nullptr;
}))));
*/