Fix blocked numbers rotation jank.
+ Saved search term.
+ Fix padding/shadow jank between rotations.
+ Fix title disappearing for import on rotation.
Bug: 24910704
Change-Id: Ib683bd07ad629917ac429a5f33be54ecf781e33d
diff --git a/res/layout/blocked_number_fragment.xml b/res/layout/blocked_number_fragment.xml
index 7aff06e..4bc2085 100644
--- a/res/layout/blocked_number_fragment.xml
+++ b/res/layout/blocked_number_fragment.xml
@@ -18,7 +18,6 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
- android:paddingTop="?android:attr/actionBarSize"
android:background="@color/blocked_number_background">
<ListView android:id="@id/android:list"
diff --git a/res/layout/blocked_numbers_activity.xml b/res/layout/blocked_numbers_activity.xml
index b5810b7..d28eaf8 100644
--- a/res/layout/blocked_numbers_activity.xml
+++ b/res/layout/blocked_numbers_activity.xml
@@ -17,5 +17,6 @@
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/blocked_numbers_activity_container"
android:layout_width="match_parent"
- android:layout_height="match_parent">
+ android:layout_height="match_parent"
+ android:layout_marginTop="@dimen/action_bar_height">
</FrameLayout>
diff --git a/res/layout/view_numbers_to_import_fragment.xml b/res/layout/view_numbers_to_import_fragment.xml
index c79e69a..1836f8d 100644
--- a/res/layout/view_numbers_to_import_fragment.xml
+++ b/res/layout/view_numbers_to_import_fragment.xml
@@ -18,7 +18,6 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
- android:paddingTop="?android:attr/actionBarSize"
android:background="@color/blocked_number_background">
<ListView android:id="@id/android:list"
diff --git a/src/com/android/dialer/filterednumber/BlockedNumbersFragment.java b/src/com/android/dialer/filterednumber/BlockedNumbersFragment.java
index 7788cbe..fa40e26 100644
--- a/src/com/android/dialer/filterednumber/BlockedNumbersFragment.java
+++ b/src/com/android/dialer/filterednumber/BlockedNumbersFragment.java
@@ -109,7 +109,6 @@
ColorDrawable backgroundDrawable =
new ColorDrawable(getActivity().getColor(R.color.dialer_theme_color));
actionBar.setBackgroundDrawable(backgroundDrawable);
- actionBar.setElevation(getResources().getDimensionPixelSize(R.dimen.action_bar_elevation));
actionBar.setDisplayShowCustomEnabled(false);
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setDisplayShowHomeEnabled(true);
@@ -138,8 +137,7 @@
@Override
public View onCreateView(
LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
- View view = inflater.inflate(R.layout.blocked_number_fragment, container, false);
- return view;
+ return inflater.inflate(R.layout.blocked_number_fragment, container, false);
}
@Override
diff --git a/src/com/android/dialer/filterednumber/ManageBlockedNumbersActivity.java b/src/com/android/dialer/filterednumber/ManageBlockedNumbersActivity.java
index f785cf7..109fd97 100644
--- a/src/com/android/dialer/filterednumber/ManageBlockedNumbersActivity.java
+++ b/src/com/android/dialer/filterednumber/ManageBlockedNumbersActivity.java
@@ -120,7 +120,7 @@
@Override
public boolean isActionBarShowing() {
- return true;
+ return false;
}
@Override
@@ -135,11 +135,11 @@
@Override
public int getActionBarHideOffset() {
- return getSupportActionBar().getHideOffset();
+ return 0;
}
@Override
public int getActionBarHeight() {
- return getSupportActionBar().getHeight();
+ return 0;
}
}
diff --git a/src/com/android/dialer/filterednumber/ViewNumbersToImportFragment.java b/src/com/android/dialer/filterednumber/ViewNumbersToImportFragment.java
index 947dc67..9912416 100644
--- a/src/com/android/dialer/filterednumber/ViewNumbersToImportFragment.java
+++ b/src/com/android/dialer/filterednumber/ViewNumbersToImportFragment.java
@@ -72,6 +72,10 @@
ActionBar actionBar = ((AppCompatActivity) getActivity()).getSupportActionBar();
actionBar.setTitle(R.string.import_send_to_voicemail_numbers_label);
+ actionBar.setDisplayShowCustomEnabled(false);
+ actionBar.setDisplayHomeAsUpEnabled(true);
+ actionBar.setDisplayShowHomeEnabled(true);
+ actionBar.setDisplayShowTitleEnabled(true);
getActivity().findViewById(R.id.cancel_button).setOnClickListener(this);
getActivity().findViewById(R.id.import_button).setOnClickListener(this);
diff --git a/src/com/android/dialer/list/BlockedListSearchFragment.java b/src/com/android/dialer/list/BlockedListSearchFragment.java
index 6ff7dda..d1490f5 100644
--- a/src/com/android/dialer/list/BlockedListSearchFragment.java
+++ b/src/com/android/dialer/list/BlockedListSearchFragment.java
@@ -19,6 +19,7 @@
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;
import android.text.Editable;
+import android.text.TextUtils;
import android.text.TextWatcher;
import android.util.Log;
import android.util.TypedValue;
@@ -41,9 +42,12 @@
implements FilterNumberDialogFragment.Callback {
private static final String TAG = BlockedListSearchFragment.class.getSimpleName();
+ private static final String KEY_SEARCH_QUERY = "search_query";
+
private FilteredNumberAsyncQueryHandler mFilteredNumberAsyncQueryHandler;
private EditText mSearchView;
+ private String mSearchQuery;
private final TextWatcher mPhoneSearchQueryTextListener = new TextWatcher() {
@Override
@@ -52,7 +56,8 @@
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
- setQueryString(s.toString(), false);
+ mSearchQuery = s.toString();
+ setQueryString(mSearchQuery, false);
}
@Override
@@ -72,7 +77,6 @@
}
};
-
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -82,6 +86,9 @@
mFilteredNumberAsyncQueryHandler = new FilteredNumberAsyncQueryHandler(
getContext().getContentResolver());
+ if (savedInstanceState != null) {
+ mSearchQuery = savedInstanceState.getString(KEY_SEARCH_QUERY);
+ }
}
@Override
@@ -90,8 +97,6 @@
ActionBar actionBar = ((AppCompatActivity) getActivity()).getSupportActionBar();
actionBar.setCustomView(R.layout.search_edittext);
- actionBar.setBackgroundDrawable(null);
- actionBar.setElevation(0);
actionBar.setDisplayShowCustomEnabled(true);
actionBar.setDisplayHomeAsUpEnabled(false);
actionBar.setDisplayShowHomeEnabled(false);
@@ -100,21 +105,36 @@
.getCustomView().findViewById(R.id.search_view_container);
searchEditTextLayout.expand(false, true);
searchEditTextLayout.setCallback(mSearchLayoutCallback);
+ searchEditTextLayout.setBackgroundDrawable(null);
mSearchView = (EditText) searchEditTextLayout.findViewById(R.id.search_view);
mSearchView.addTextChangedListener(mPhoneSearchQueryTextListener);
mSearchView.setHint(R.string.block_number_search_hint);
+ searchEditTextLayout.findViewById(R.id.search_box_expanded)
+ .setBackgroundColor(getContext().getResources().getColor(android.R.color.white));
+
+ if (!TextUtils.isEmpty(mSearchQuery)) {
+ mSearchView.setText(mSearchQuery);
+ }
+
// TODO: Don't set custom text size; use default search text size.
mSearchView.setTextSize(TypedValue.COMPLEX_UNIT_PX,
getResources().getDimension(R.dimen.blocked_number_search_text_size));
}
@Override
+ public void onSaveInstanceState(Bundle outState) {
+ super.onSaveInstanceState(outState);
+ outState.putString(KEY_SEARCH_QUERY, getAdapter().getQueryString());
+ }
+
+ @Override
protected ContactEntryListAdapter createListAdapter() {
BlockedListSearchAdapter adapter = new BlockedListSearchAdapter(getActivity());
adapter.setDisplayPhotos(true);
adapter.setUseCallableUri(usesCallableUri());
+ adapter.setQueryString(mSearchQuery);
return adapter;
}
@@ -183,7 +203,8 @@
if (activity == null) {
return;
}
- activity.onBackPressed();
+
+ activity.showManagementUi();
}
@Override
diff --git a/src/com/android/dialer/widget/SearchEditTextLayout.java b/src/com/android/dialer/widget/SearchEditTextLayout.java
index 544749f..4f100dc 100644
--- a/src/com/android/dialer/widget/SearchEditTextLayout.java
+++ b/src/com/android/dialer/widget/SearchEditTextLayout.java
@@ -230,7 +230,6 @@
setElevation(0);
setPaddingRelative(paddingStart, paddingTop, paddingEnd, paddingBottom);
- setElevation(0);
if (requestFocus) {
mSearchView.requestFocus();
}