Fix recursive filter; don't act twice on focus+click event
This commit is contained in:
parent
1ceb41acb6
commit
3523a0497b
2 changed files with 8 additions and 3 deletions
|
@ -83,8 +83,13 @@ public class AutofillService extends AccessibilityService {
|
|||
return;
|
||||
}
|
||||
|
||||
// if past this point, a new dialog will be created, so dismiss the existing
|
||||
if (dialog != null && dialog.isShowing()) {
|
||||
// if the view was clicked, the click event follows the focus event
|
||||
// since the focus event was already handled, ignore click event
|
||||
if (event.getEventType() == AccessibilityEvent.TYPE_VIEW_CLICKED) {
|
||||
return;
|
||||
}
|
||||
// if past this point, a new dialog will be created, so dismiss the existing
|
||||
dialog.dismiss();
|
||||
}
|
||||
|
||||
|
@ -145,7 +150,7 @@ public class AutofillService extends AccessibilityService {
|
|||
PasswordRepository.getPasswords(dir);
|
||||
for (PasswordItem item : passwordItems) {
|
||||
if (item.getType() == PasswordItem.TYPE_CATEGORY) {
|
||||
recursiveFilter(filter, item.getFile());
|
||||
items.addAll(recursiveFilter(filter, item.getFile()));
|
||||
}
|
||||
if (item.toString().toLowerCase().contains(filter.toLowerCase())) {
|
||||
items.add(item);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<accessibility-service xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:description="@string/autofill_description"
|
||||
android:accessibilityEventTypes="typeViewFocused|typeWindowStateChanged|typeViewClicked"
|
||||
android:accessibilityEventTypes="typeViewFocused|typeViewClicked|typeWindowStateChanged"
|
||||
android:accessibilityFlags="flagDefault"
|
||||
android:accessibilityFeedbackType="feedbackGeneric"
|
||||
android:notificationTimeout="100"
|
||||
|
|
Loading…
Reference in a new issue