Fix ensure searchTarget is properly initialized for aggregatedSearch mode (#173)

Set searchTarget = defaultSearchTarget when aggregatedSearch is enabled, ensuring correct initialization and preventing missing suggestions on first input.

Without this fix, when opening the search page for the first time with aggregatedSearch enabled by default, entering an ID that matches a comic source does not trigger the "Open comic" suggestion. However, after toggling aggregatedSearch off and then back on, the same ID input correctly displays the suggestion.
This commit is contained in:
buste
2025-02-07 17:03:52 +08:00
committed by GitHub
parent 58d6ccdde1
commit 3aca3baafc

View File

@@ -142,6 +142,8 @@ class _SearchPageState extends State<SearchPage> {
var defaultSearchTarget = appdata.settings['defaultSearchTarget']; var defaultSearchTarget = appdata.settings['defaultSearchTarget'];
if (defaultSearchTarget == "_aggregated_") { if (defaultSearchTarget == "_aggregated_") {
aggregatedSearch = true; aggregatedSearch = true;
searchTarget = ComicSource.all().where((e) => e.searchPageData != null)
.toList().first.key;
} else if (defaultSearchTarget != null && } else if (defaultSearchTarget != null &&
ComicSource.find(defaultSearchTarget) != null) { ComicSource.find(defaultSearchTarget) != null) {
searchTarget = defaultSearchTarget; searchTarget = defaultSearchTarget;