Merge "Start saving iconified state of SearchView." into nyc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
3043c7b19d
@@ -36,6 +36,8 @@ import android.graphics.Rect;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.os.Parcel;
|
||||
import android.os.Parcelable;
|
||||
import android.speech.RecognizerIntent;
|
||||
import android.text.Editable;
|
||||
import android.text.InputType;
|
||||
@@ -1332,6 +1334,48 @@ public class SearchView extends LinearLayout implements CollapsibleActionView {
|
||||
setIconified(false);
|
||||
}
|
||||
|
||||
static class SavedState extends BaseSavedState {
|
||||
boolean isIconified;
|
||||
|
||||
SavedState(Parcelable superState) {
|
||||
super(superState);
|
||||
}
|
||||
|
||||
public SavedState(Parcel source) {
|
||||
super(source);
|
||||
isIconified = (Boolean) source.readValue(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeToParcel(Parcel dest, int flags) {
|
||||
super.writeToParcel(dest, flags);
|
||||
dest.writeValue(isIconified);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "SearchView.SavedState{"
|
||||
+ Integer.toHexString(System.identityHashCode(this))
|
||||
+ " isIconified=" + isIconified + "}";
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Parcelable onSaveInstanceState() {
|
||||
Parcelable superState = super.onSaveInstanceState();
|
||||
SavedState ss = new SavedState(superState);
|
||||
ss.isIconified = isIconified();
|
||||
return ss;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onRestoreInstanceState(Parcelable state) {
|
||||
SavedState ss = (SavedState) state;
|
||||
super.onRestoreInstanceState(ss.getSuperState());
|
||||
updateViewsVisibility(ss.isIconified);
|
||||
requestLayout();
|
||||
}
|
||||
|
||||
@Override
|
||||
public CharSequence getAccessibilityClassName() {
|
||||
return SearchView.class.getName();
|
||||
|
||||
Reference in New Issue
Block a user