mirror of
https://github.com/ArcaneChat/android.git
synced 2026-07-03 14:05:24 +02:00
search: add menu allowing toggling is:unread
This commit is contained in:
@@ -27,6 +27,7 @@ public class SearchToolbar extends LinearLayout {
|
||||
private static final String TAG = SearchToolbar.class.getSimpleName();
|
||||
private float x, y;
|
||||
private MenuItem searchItem;
|
||||
private EditText searchText;
|
||||
private SearchListener listener;
|
||||
|
||||
public SearchToolbar(Context context) {
|
||||
@@ -63,7 +64,7 @@ public class SearchToolbar extends LinearLayout {
|
||||
|
||||
this.searchItem = toolbar.getMenu().findItem(R.id.action_filter_search);
|
||||
SearchView searchView = (SearchView) searchItem.getActionView();
|
||||
EditText searchText = searchView.findViewById(androidx.appcompat.R.id.search_src_text);
|
||||
searchText = searchView.findViewById(androidx.appcompat.R.id.search_src_text);
|
||||
searchView.setImeOptions(EditorInfo.IME_ACTION_DONE);
|
||||
|
||||
searchView.setSubmitButtonEnabled(false);
|
||||
@@ -107,6 +108,17 @@ public class SearchToolbar extends LinearLayout {
|
||||
}
|
||||
});
|
||||
|
||||
MenuItem searchUnread = toolbar.getMenu().findItem(R.id.search_unread);
|
||||
searchUnread.setOnMenuItemClickListener(item -> {
|
||||
String t = searchText.getText().toString();
|
||||
if (!t.contains("is:unread")) {
|
||||
t += (t.isEmpty() ? "" : " ") + "is:unread ";
|
||||
}
|
||||
searchText.setText(t);
|
||||
searchText.setSelection(t.length(), t.length());
|
||||
return true;
|
||||
});
|
||||
|
||||
toolbar.setNavigationOnClickListener(v -> hide());
|
||||
}
|
||||
|
||||
|
||||
@@ -8,4 +8,8 @@
|
||||
app:actionViewClass="androidx.appcompat.widget.SearchView"
|
||||
app:showAsAction="collapseActionView|always" />
|
||||
|
||||
</menu>
|
||||
<item android:title="@string/search_unread"
|
||||
android:id="@+id/search_unread"
|
||||
app:showAsAction="never"/>
|
||||
|
||||
</menu>
|
||||
|
||||
@@ -466,6 +466,7 @@
|
||||
<string name="search_files">Search Files</string>
|
||||
<string name="search_explain">Search for chats, contacts, and messages</string>
|
||||
<string name="search_no_result_for_x">No results found for \"%s\"</string>
|
||||
<string name="search_unread">Unread</string>
|
||||
|
||||
|
||||
<!-- create/edit groups, contact/group profile -->
|
||||
|
||||
Reference in New Issue
Block a user