Using parent node for Google search results

When hiding or replacing Google search results, we now use the search result container's parentNode. This avoids some UI conflicts and issues, particularly when injecting the replacement button.

For Google search result re-ordering, we still use the original search container w/o the parent node.
pull/765/head
Kevin Payravi 2024-07-21 01:40:25 -07:00
parent 1b0fc20eaa
commit 1affa19c9c
1 changed files with 5 additions and 1 deletions

View File

@ -329,7 +329,7 @@ async function filterSearchResult(matchingSite, searchResult, searchEngine, coun
searchFilterSetting = storage.defaultSearchAction;
}
const searchResultContainer = getSearchContainer(searchEngine, searchResult);
let searchResultContainer = getSearchContainer(searchEngine, searchResult);
if (searchResultContainer) {
// If this page from Fandom is the same as a re-ordered page, filter it out
@ -346,6 +346,10 @@ async function filterSearchResult(matchingSite, searchResult, searchEngine, coun
countFiltered += hideSearchResults(searchResultContainer, searchEngine, matchingSite, 'off');
console.debug(`Indie Wiki Buddy has hidden a result matching ${searchResultLink} because we re-ordered an indie wiki result with a matching article`);
} else if (searchFilterSetting !== 'disabled') {
// For Google search results, get the parentNode of the result container as that tends to be more reliable:
if (searchEngine == 'google') {
searchResultContainer = searchResultContainer.parentNode;
}
if (searchFilterSetting === 'hide') {
// Else, if the user has the preference set to hide search results, hide it indiscriminately
countFiltered += hideSearchResults(searchResultContainer, searchEngine, matchingSite, storage['hiddenResultsBanner']);