komikku/app/src/main/java/exh
arkon 26557b3257 #3520 Searchable Settings (#3683)
* Adding class stubs for settings search, UI elements.

* -  implement searchable settings
- `SettingsController.setupPreferenceScreen` must return a PreferenceScreen

* Remove unneeded SettingsControllerFactory.

* Set query hint, clean up code smell.

* Add search button to MoreController, stop infinite recursion.

* - initialize SearchResultCollection once in Activity.onCreate

* - implement prefernce highlighting after settings search

* - Ensure all Preferences have a key set or else the highlighting effect will have no effect on it.
- remove ExtensionFilterController and SourceFilterController from settingControllersList in SettingsSearchHelper, since those are related to Extensions and not Settings

* Limiting search to settings menu only, localized breadcrumb string, and code cleanup after code review.

* - moved call to SettingsSearchHelper.initPreferenceSearchResultCollection() into SettingsSearchController

* Code review cleanup and refactoring.

* Inlined non-reused key strings.

* Adding more UI polish, add comments for future enhancements.

* - retain search query when navigating *away* from SettingsSearchController
- keep `searchItem` in `expandActionView` state until user goes back (fixes the empty view in `SettingsSearchSearchController` issue)

Co-authored-by: mpm11011 <markuscicero5@gmail.com>
Co-authored-by: lmj0011 <9396189+lmj0011@users.noreply.github.com>
(cherry picked from commit 766f9e37b52873080c58d73dfaff42c5add24dc0)

# Conflicts:
#	app/build.gradle
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourceFilterController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/AboutController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsLibraryController.kt
2020-09-24 09:09:45 -04:00
..
debug #3520 Searchable Settings (#3683) 2020-09-24 09:09:45 -04:00
eh Use Kolinter Gradle plugin for linting instead of ktlint directly 2020-09-13 23:08:52 -04:00
favorites Use Kolinter Gradle plugin for linting instead of ktlint directly 2020-09-13 23:08:52 -04:00
log Update firebase 2020-08-23 21:57:06 -04:00
md Use Kolinter Gradle plugin for linting instead of ktlint directly 2020-09-13 23:08:52 -04:00
merged/sql Merged manga implementation, man this took forever to make and bugfix, its not even done 2020-09-05 18:17:33 -04:00
metadata Use Kolinter Gradle plugin for linting instead of ktlint directly 2020-09-13 23:08:52 -04:00
patch Add MangaDex only implementation of Mangadex Follows list 2020-09-11 23:12:13 -04:00
search Code cleanup 2020-08-04 22:51:56 -04:00
smartsearch Cleanup and fix a few compiler warnings 2020-09-13 22:24:03 -04:00
source Add MangaDex only implementation of Mangadex Follows list 2020-09-11 23:12:13 -04:00
uconfig Use XLog in more places 2020-09-17 09:05:19 -04:00
ui Use XLog in more places 2020-09-17 09:05:19 -04:00
util Use Kolinter Gradle plugin for linting instead of ktlint directly 2020-09-13 23:08:52 -04:00
widget/preference Fix some mangadex login imports 2020-09-17 10:41:41 -04:00
EHSourceHelpers.kt Rename LewdSource to MetadataSource to account for that Metadata will not always be for lewd sources 2020-08-19 18:45:56 -04:00
EXHMigrations.kt Use Kolinter Gradle plugin for linting instead of ktlint directly 2020-09-13 23:08:52 -04:00
EXHSavedSearch.kt Optimize imports, disallow wildcard imports because of klint, run linter 2020-05-03 01:36:21 -04:00
GalleryAdder.kt Use Kolinter Gradle plugin for linting instead of ktlint directly 2020-09-13 23:08:52 -04:00
StringBuilderExtensions.kt Upstream merge 2017-05-04 23:38:17 -04:00
Version.kt Add files for new action, should allow automatic updating when finished 2020-05-10 00:20:36 -04:00