mirror of
https://github.com/Kunzisoft/KeePassDX.git
synced 2025-12-04 15:49:33 +01:00
Merge branch 'develop' into feature/Passkeys
This commit is contained in:
@@ -124,11 +124,9 @@ class SearchHelper {
|
||||
*/
|
||||
fun searchInEntry(entry: Entry,
|
||||
searchParameters: SearchParameters): Boolean {
|
||||
val searchQuery = searchParameters.searchQuery
|
||||
|
||||
// Not found if the search string is empty
|
||||
if (searchQuery.isEmpty())
|
||||
return false
|
||||
if (searchParameters.searchQuery.isEmpty())
|
||||
return searchParameters.allowEmptyQuery
|
||||
|
||||
// Exclude entry expired
|
||||
if (!searchParameters.searchInExpired) {
|
||||
@@ -219,10 +217,11 @@ class SearchHelper {
|
||||
}
|
||||
regex.matches(stringToCheck)
|
||||
} else {
|
||||
searchParameters.searchQuery.split(" ").any { word ->
|
||||
specialComparison?.invoke(stringToCheck, word)
|
||||
?: stringToCheck.contains(word, !searchParameters.caseSensitive)
|
||||
}
|
||||
specialComparison?.invoke(stringToCheck, searchParameters.searchQuery)
|
||||
?: stringToCheck.contains(
|
||||
searchParameters.searchQuery,
|
||||
!searchParameters.caseSensitive
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,6 +27,7 @@ import android.os.Parcelable
|
||||
*/
|
||||
class SearchParameters() : Parcelable{
|
||||
var searchQuery: String = ""
|
||||
var allowEmptyQuery = true
|
||||
var caseSensitive = false
|
||||
var isRegex = false
|
||||
|
||||
@@ -50,6 +51,7 @@ class SearchParameters() : Parcelable{
|
||||
|
||||
constructor(parcel: Parcel) : this() {
|
||||
searchQuery = parcel.readString() ?: searchQuery
|
||||
allowEmptyQuery = parcel.readByte() != 0.toByte()
|
||||
caseSensitive = parcel.readByte() != 0.toByte()
|
||||
isRegex = parcel.readByte() != 0.toByte()
|
||||
searchInTitles = parcel.readByte() != 0.toByte()
|
||||
@@ -71,6 +73,7 @@ class SearchParameters() : Parcelable{
|
||||
|
||||
override fun writeToParcel(parcel: Parcel, flags: Int) {
|
||||
parcel.writeString(searchQuery)
|
||||
parcel.writeByte(if (allowEmptyQuery) 1 else 0)
|
||||
parcel.writeByte(if (caseSensitive) 1 else 0)
|
||||
parcel.writeByte(if (isRegex) 1 else 0)
|
||||
parcel.writeByte(if (searchInTitles) 1 else 0)
|
||||
|
||||
@@ -110,6 +110,7 @@ class SearchInfo : ObjectNameResource, Parcelable {
|
||||
return SearchParameters().apply {
|
||||
if (isAPasskeySearch()) {
|
||||
searchQuery = relyingParty!!
|
||||
allowEmptyQuery = false
|
||||
searchInTitles = false
|
||||
searchInUsernames = false
|
||||
searchInPasswords = false
|
||||
@@ -127,6 +128,7 @@ class SearchInfo : ObjectNameResource, Parcelable {
|
||||
searchInTemplates = false
|
||||
} else {
|
||||
searchQuery = toString()
|
||||
allowEmptyQuery = false
|
||||
searchInTitles = true
|
||||
searchInUsernames = false
|
||||
searchInPasswords = false
|
||||
|
||||
Reference in New Issue
Block a user