summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Zemiao Zhu <zemiao@google.com> 2020-07-28 19:56:04 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2020-07-28 19:56:04 +0000
commit521eeff4e86641e09a1c68f5a39dd0913418c567 (patch)
tree2a42a2897df5df1110ffb8341ee84181279e15f1
parentf10b6f4d247f68cd5f90cfbb1a4b8dd931875c49 (diff)
parent7f7a52c3aa81b71d9fb5b17d79320fe8e0c6ec44 (diff)
Merge "Clear SearchView focus after selecting search history."
-rw-r--r--src/com/android/documentsui/queries/SearchFragment.java2
-rw-r--r--tests/common/com/android/documentsui/bots/SearchBot.java8
-rw-r--r--tests/functional/com/android/documentsui/SearchViewUiTest.java18
3 files changed, 27 insertions, 1 deletions
diff --git a/src/com/android/documentsui/queries/SearchFragment.java b/src/com/android/documentsui/queries/SearchFragment.java
index 7f2e779bb..667dc8e48 100644
--- a/src/com/android/documentsui/queries/SearchFragment.java
+++ b/src/com/android/documentsui/queries/SearchFragment.java
@@ -150,7 +150,7 @@ public class SearchFragment extends Fragment{
final String item = mHistoryList.get(position);
mSearchViewManager.setHistorySearch();
mSearchViewManager.setCurrentSearch(item);
- mSearchViewManager.restoreSearch(true);
+ mSearchViewManager.restoreSearch(/* keepFocus= */ false);
}
private void dismiss() {
diff --git a/tests/common/com/android/documentsui/bots/SearchBot.java b/tests/common/com/android/documentsui/bots/SearchBot.java
index 0481aa4fb..13494f00d 100644
--- a/tests/common/com/android/documentsui/bots/SearchBot.java
+++ b/tests/common/com/android/documentsui/bots/SearchBot.java
@@ -34,6 +34,7 @@ import android.content.Context;
import android.support.test.uiautomator.UiDevice;
import android.support.test.uiautomator.UiObject;
import android.support.test.uiautomator.UiObjectNotFoundException;
+import android.support.test.uiautomator.UiSelector;
import android.view.View;
import androidx.recyclerview.R;
@@ -76,6 +77,13 @@ public class SearchBot extends Bots.BaseBot {
clear.click();
}
+ // Click on the search history item with specified queryText, if exists.
+ public void clickSearchHistory(String queryText) throws UiObjectNotFoundException {
+ UiObject history = findSearchHistoryView();
+ UiSelector historyItemSelector = new UiSelector().text(queryText);
+ mDevice.findObject(history.getSelector().childSelector(historyItemSelector)).click();
+ }
+
public void setInputText(String query) throws UiObjectNotFoundException {
onView(SEARCH_INPUT).perform(typeText(query));
}
diff --git a/tests/functional/com/android/documentsui/SearchViewUiTest.java b/tests/functional/com/android/documentsui/SearchViewUiTest.java
index 2bda5ec31..04ea87a41 100644
--- a/tests/functional/com/android/documentsui/SearchViewUiTest.java
+++ b/tests/functional/com/android/documentsui/SearchViewUiTest.java
@@ -244,5 +244,23 @@ public class SearchViewUiTest extends ActivityTest<FilesActivity> {
bots.search.assertInputExists(true);
bots.search.assertInputFocused(true);
+ bots.search.assertSearchHistoryVisible(true);
+ }
+
+ public void testSearchView_focusClearedAfterSelectingSearchHistory() throws Exception {
+ String queryText = "history";
+ bots.search.clickIcon();
+ bots.search.setInputText(queryText);
+ bots.keyboard.pressEnter();
+ device.waitForIdle();
+
+ bots.search.clickSearchViewClearButton();
+ device.waitForIdle();
+ bots.search.assertInputFocused(true);
+ bots.search.assertSearchHistoryVisible(true);
+
+ bots.search.clickSearchHistory(queryText);
+ bots.search.assertInputFocused(false);
+ bots.search.assertSearchHistoryVisible(false);
}
}