Loading core/java/android/widget/AbsListView.java +11 −2 Original line number Diff line number Diff line Loading @@ -1574,8 +1574,17 @@ public abstract class AbsListView extends AdapterView<ListAdapter> implements Te ss.inActionMode = mChoiceMode == CHOICE_MODE_MULTIPLE_MODAL && mChoiceActionMode != null; ss.checkState = mCheckStates; ss.checkIdState = mCheckedIdStates; if (mCheckStates != null) { ss.checkState = mCheckStates.clone(); } if (mCheckedIdStates != null) { final LongSparseArray<Boolean> idState = new LongSparseArray<Boolean>(); final int count = mCheckedIdStates.size(); for (int i = 0; i < count; i++) { idState.put(mCheckedIdStates.keyAt(i), mCheckedIdStates.valueAt(i)); } ss.checkIdState = idState; } ss.checkedItemCount = mCheckedItemCount; return ss; Loading core/java/com/android/internal/widget/AbsActionBarView.java +14 −1 Original line number Diff line number Diff line Loading @@ -56,6 +56,16 @@ public abstract class AbsActionBarView extends ViewGroup { mSplitView = splitView; } /** * @return Current visibility or if animating, the visibility being animated to. */ public int getAnimatedVisibility() { if (mVisibilityAnim != null) { return mVisAnimListener.mFinalVisibility; } return getVisibility(); } public void animateToVisibility(int visibility) { if (mVisibilityAnim != null) { mVisibilityAnim.cancel(); Loading Loading @@ -179,7 +189,7 @@ public abstract class AbsActionBarView extends ViewGroup { protected class VisibilityAnimListener implements Animator.AnimatorListener { private boolean mCanceled = false; private int mFinalVisibility; int mFinalVisibility; public VisibilityAnimListener withFinalVisibility(int visibility) { mFinalVisibility = visibility; Loading @@ -199,6 +209,9 @@ public abstract class AbsActionBarView extends ViewGroup { mVisibilityAnim = null; setVisibility(mFinalVisibility); if (mSplitView != null && mMenuView != null) { mMenuView.setVisibility(mFinalVisibility); } } @Override Loading core/java/com/android/internal/widget/ActionBarContextView.java +4 −3 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ import android.util.AttributeSet; import android.view.ActionMode; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.view.animation.DecelerateInterpolator; import android.widget.LinearLayout; import android.widget.TextView; Loading Loading @@ -270,14 +271,14 @@ public class ActionBarContextView extends AbsActionBarView implements AnimatorLi } @Override protected LayoutParams generateDefaultLayoutParams() { protected ViewGroup.LayoutParams generateDefaultLayoutParams() { // Used by custom views if they don't supply layout params. Everything else // added to an ActionBarContextView should have them already. return new MarginLayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); } @Override public LayoutParams generateLayoutParams(AttributeSet attrs) { public ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs) { return new MarginLayoutParams(getContext(), attrs); } Loading Loading @@ -321,7 +322,7 @@ public class ActionBarContextView extends AbsActionBarView implements AnimatorLi } if (mCustomView != null) { LayoutParams lp = mCustomView.getLayoutParams(); ViewGroup.LayoutParams lp = mCustomView.getLayoutParams(); final int customWidthMode = lp.width != LayoutParams.WRAP_CONTENT ? MeasureSpec.EXACTLY : MeasureSpec.AT_MOST; final int customWidth = lp.width >= 0 ? Loading core/java/com/android/internal/widget/ActionBarView.java +7 −6 Original line number Diff line number Diff line Loading @@ -401,6 +401,7 @@ public class ActionBarView extends AbsActionBarView { if (oldParent != null && oldParent != mSplitView) { oldParent.removeView(menuView); } menuView.setVisibility(getAnimatedVisibility()); mSplitView.addView(menuView, layoutParams); } else { // We'll add this later if we missed it this time. Loading Loading @@ -683,7 +684,7 @@ public class ActionBarView extends AbsActionBarView { } @Override protected LayoutParams generateDefaultLayoutParams() { protected ViewGroup.LayoutParams generateDefaultLayoutParams() { // Used by custom nav views if they don't supply layout params. Everything else // added to an ActionBarView should have them already. return new ActionBar.LayoutParams(DEFAULT_CUSTOM_GRAVITY); Loading Loading @@ -810,7 +811,7 @@ public class ActionBarView extends AbsActionBarView { HomeView homeLayout = mExpandedActionView != null ? mExpandedHomeLayout : mHomeLayout; if (homeLayout.getVisibility() != GONE) { final LayoutParams lp = homeLayout.getLayoutParams(); final ViewGroup.LayoutParams lp = homeLayout.getLayoutParams(); int homeWidthSpec; if (lp.width < 0) { homeWidthSpec = MeasureSpec.makeMeasureSpec(availableWidth, MeasureSpec.AT_MOST); Loading Loading @@ -881,7 +882,7 @@ public class ActionBarView extends AbsActionBarView { } if (customView != null) { final LayoutParams lp = generateLayoutParams(customView.getLayoutParams()); final ViewGroup.LayoutParams lp = generateLayoutParams(customView.getLayoutParams()); final ActionBar.LayoutParams ablp = lp instanceof ActionBar.LayoutParams ? (ActionBar.LayoutParams) lp : null; Loading Loading @@ -1017,7 +1018,7 @@ public class ActionBarView extends AbsActionBarView { customView = mCustomNavView; } if (customView != null) { LayoutParams lp = customView.getLayoutParams(); ViewGroup.LayoutParams lp = customView.getLayoutParams(); final ActionBar.LayoutParams ablp = lp instanceof ActionBar.LayoutParams ? (ActionBar.LayoutParams) lp : null; Loading Loading @@ -1095,12 +1096,12 @@ public class ActionBarView extends AbsActionBarView { } @Override public LayoutParams generateLayoutParams(AttributeSet attrs) { public ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs) { return new ActionBar.LayoutParams(getContext(), attrs); } @Override public LayoutParams generateLayoutParams(LayoutParams lp) { public ViewGroup.LayoutParams generateLayoutParams(ViewGroup.LayoutParams lp) { if (lp == null) { lp = generateDefaultLayoutParams(); } Loading Loading
core/java/android/widget/AbsListView.java +11 −2 Original line number Diff line number Diff line Loading @@ -1574,8 +1574,17 @@ public abstract class AbsListView extends AdapterView<ListAdapter> implements Te ss.inActionMode = mChoiceMode == CHOICE_MODE_MULTIPLE_MODAL && mChoiceActionMode != null; ss.checkState = mCheckStates; ss.checkIdState = mCheckedIdStates; if (mCheckStates != null) { ss.checkState = mCheckStates.clone(); } if (mCheckedIdStates != null) { final LongSparseArray<Boolean> idState = new LongSparseArray<Boolean>(); final int count = mCheckedIdStates.size(); for (int i = 0; i < count; i++) { idState.put(mCheckedIdStates.keyAt(i), mCheckedIdStates.valueAt(i)); } ss.checkIdState = idState; } ss.checkedItemCount = mCheckedItemCount; return ss; Loading
core/java/com/android/internal/widget/AbsActionBarView.java +14 −1 Original line number Diff line number Diff line Loading @@ -56,6 +56,16 @@ public abstract class AbsActionBarView extends ViewGroup { mSplitView = splitView; } /** * @return Current visibility or if animating, the visibility being animated to. */ public int getAnimatedVisibility() { if (mVisibilityAnim != null) { return mVisAnimListener.mFinalVisibility; } return getVisibility(); } public void animateToVisibility(int visibility) { if (mVisibilityAnim != null) { mVisibilityAnim.cancel(); Loading Loading @@ -179,7 +189,7 @@ public abstract class AbsActionBarView extends ViewGroup { protected class VisibilityAnimListener implements Animator.AnimatorListener { private boolean mCanceled = false; private int mFinalVisibility; int mFinalVisibility; public VisibilityAnimListener withFinalVisibility(int visibility) { mFinalVisibility = visibility; Loading @@ -199,6 +209,9 @@ public abstract class AbsActionBarView extends ViewGroup { mVisibilityAnim = null; setVisibility(mFinalVisibility); if (mSplitView != null && mMenuView != null) { mMenuView.setVisibility(mFinalVisibility); } } @Override Loading
core/java/com/android/internal/widget/ActionBarContextView.java +4 −3 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ import android.util.AttributeSet; import android.view.ActionMode; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.view.animation.DecelerateInterpolator; import android.widget.LinearLayout; import android.widget.TextView; Loading Loading @@ -270,14 +271,14 @@ public class ActionBarContextView extends AbsActionBarView implements AnimatorLi } @Override protected LayoutParams generateDefaultLayoutParams() { protected ViewGroup.LayoutParams generateDefaultLayoutParams() { // Used by custom views if they don't supply layout params. Everything else // added to an ActionBarContextView should have them already. return new MarginLayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); } @Override public LayoutParams generateLayoutParams(AttributeSet attrs) { public ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs) { return new MarginLayoutParams(getContext(), attrs); } Loading Loading @@ -321,7 +322,7 @@ public class ActionBarContextView extends AbsActionBarView implements AnimatorLi } if (mCustomView != null) { LayoutParams lp = mCustomView.getLayoutParams(); ViewGroup.LayoutParams lp = mCustomView.getLayoutParams(); final int customWidthMode = lp.width != LayoutParams.WRAP_CONTENT ? MeasureSpec.EXACTLY : MeasureSpec.AT_MOST; final int customWidth = lp.width >= 0 ? Loading
core/java/com/android/internal/widget/ActionBarView.java +7 −6 Original line number Diff line number Diff line Loading @@ -401,6 +401,7 @@ public class ActionBarView extends AbsActionBarView { if (oldParent != null && oldParent != mSplitView) { oldParent.removeView(menuView); } menuView.setVisibility(getAnimatedVisibility()); mSplitView.addView(menuView, layoutParams); } else { // We'll add this later if we missed it this time. Loading Loading @@ -683,7 +684,7 @@ public class ActionBarView extends AbsActionBarView { } @Override protected LayoutParams generateDefaultLayoutParams() { protected ViewGroup.LayoutParams generateDefaultLayoutParams() { // Used by custom nav views if they don't supply layout params. Everything else // added to an ActionBarView should have them already. return new ActionBar.LayoutParams(DEFAULT_CUSTOM_GRAVITY); Loading Loading @@ -810,7 +811,7 @@ public class ActionBarView extends AbsActionBarView { HomeView homeLayout = mExpandedActionView != null ? mExpandedHomeLayout : mHomeLayout; if (homeLayout.getVisibility() != GONE) { final LayoutParams lp = homeLayout.getLayoutParams(); final ViewGroup.LayoutParams lp = homeLayout.getLayoutParams(); int homeWidthSpec; if (lp.width < 0) { homeWidthSpec = MeasureSpec.makeMeasureSpec(availableWidth, MeasureSpec.AT_MOST); Loading Loading @@ -881,7 +882,7 @@ public class ActionBarView extends AbsActionBarView { } if (customView != null) { final LayoutParams lp = generateLayoutParams(customView.getLayoutParams()); final ViewGroup.LayoutParams lp = generateLayoutParams(customView.getLayoutParams()); final ActionBar.LayoutParams ablp = lp instanceof ActionBar.LayoutParams ? (ActionBar.LayoutParams) lp : null; Loading Loading @@ -1017,7 +1018,7 @@ public class ActionBarView extends AbsActionBarView { customView = mCustomNavView; } if (customView != null) { LayoutParams lp = customView.getLayoutParams(); ViewGroup.LayoutParams lp = customView.getLayoutParams(); final ActionBar.LayoutParams ablp = lp instanceof ActionBar.LayoutParams ? (ActionBar.LayoutParams) lp : null; Loading Loading @@ -1095,12 +1096,12 @@ public class ActionBarView extends AbsActionBarView { } @Override public LayoutParams generateLayoutParams(AttributeSet attrs) { public ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs) { return new ActionBar.LayoutParams(getContext(), attrs); } @Override public LayoutParams generateLayoutParams(LayoutParams lp) { public ViewGroup.LayoutParams generateLayoutParams(ViewGroup.LayoutParams lp) { if (lp == null) { lp = generateDefaultLayoutParams(); } Loading