Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 93af2e48 authored by Adam Powell's avatar Adam Powell Committed by Android (Google) Code Review
Browse files

Merge "Add selection mode support to GridView."

parents 893ce24f f343e1ba
Loading
Loading
Loading
Loading
+33 −33
Original line number Diff line number Diff line
@@ -195395,6 +195395,39 @@
<parameter name="defStyle" type="int">
</parameter>
</constructor>
<field name="CHOICE_MODE_MULTIPLE"
 type="int"
 transient="false"
 volatile="false"
 value="2"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="CHOICE_MODE_NONE"
 type="int"
 transient="false"
 volatile="false"
 value="0"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="CHOICE_MODE_SINGLE"
 type="int"
 transient="false"
 volatile="false"
 value="1"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<method name="afterTextChanged"
 return="void"
 abstract="false"
@@ -203851,39 +203884,6 @@
<parameter name="y" type="int">
</parameter>
</method>
<field name="CHOICE_MODE_MULTIPLE"
 type="int"
 transient="false"
 volatile="false"
 value="2"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="CHOICE_MODE_NONE"
 type="int"
 transient="false"
 volatile="false"
 value="0"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="CHOICE_MODE_SINGLE"
 type="int"
 transient="false"
 volatile="false"
 value="1"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
</class>
<class name="ListView.FixedViewInfo"
 extends="java.lang.Object"
+206 −219
Original line number Diff line number Diff line
@@ -215125,6 +215125,17 @@
<parameter name="after" type="int">
</parameter>
</method>
<method name="clearChoices"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="clearTextFilter"
 return="void"
 abstract="false"
@@ -215147,6 +215158,61 @@
 visibility="public"
>
</method>
<method name="getCheckedItemCount"
 return="int"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getCheckedItemIds"
 return="long[]"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getCheckedItemPosition"
 return="int"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getCheckedItemPositions"
 return="android.util.SparseBooleanArray"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getChoiceMode"
 return="int"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getListPaddingBottom"
 return="int"
 abstract="false"
@@ -215290,6 +215356,19 @@
 visibility="protected"
>
</method>
<method name="isItemChecked"
 return="boolean"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="position" type="int">
</parameter>
</method>
<method name="isScrollingCacheEnabled"
 return="boolean"
 abstract="false"
@@ -215490,6 +215569,19 @@
<parameter name="views" type="java.util.List&lt;android.view.View&gt;">
</parameter>
</method>
<method name="setAdapter"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="adapter" type="android.widget.ListAdapter">
</parameter>
</method>
<method name="setCacheColorHint"
 return="void"
 abstract="false"
@@ -215503,6 +215595,19 @@
<parameter name="color" type="int">
</parameter>
</method>
<method name="setChoiceMode"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="choiceMode" type="int">
</parameter>
</method>
<method name="setDrawSelectorOnTop"
 return="void"
 abstract="false"
@@ -215542,6 +215647,34 @@
<parameter name="filterText" type="java.lang.String">
</parameter>
</method>
<method name="setItemChecked"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="position" type="int">
</parameter>
<parameter name="value" type="boolean">
</parameter>
</method>
<method name="setMultiChoiceModeListener"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="listener" type="android.widget.AbsListView.MultiChoiceModeListener">
</parameter>
</method>
<method name="setOnScrollListener"
 return="void"
 abstract="false"
@@ -215758,6 +215891,50 @@
<parameter name="dr" type="android.graphics.drawable.Drawable">
</parameter>
</method>
<field name="CHOICE_MODE_MULTIPLE"
 type="int"
 transient="false"
 volatile="false"
 value="2"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="CHOICE_MODE_MULTIPLE_MODAL"
 type="int"
 transient="false"
 volatile="false"
 value="3"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="CHOICE_MODE_NONE"
 type="int"
 transient="false"
 volatile="false"
 value="0"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="CHOICE_MODE_SINGLE"
 type="int"
 transient="false"
 volatile="false"
 value="1"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="TRANSCRIPT_MODE_ALWAYS_SCROLL"
 type="int"
 transient="false"
@@ -215849,6 +216026,35 @@
</parameter>
</constructor>
</class>
<interface name="AbsListView.MultiChoiceModeListener"
 abstract="true"
 static="true"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<implements name="android.view.ActionMode.Callback">
</implements>
<method name="onItemCheckedStateChanged"
 return="void"
 abstract="true"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="mode" type="android.view.ActionMode">
</parameter>
<parameter name="position" type="int">
</parameter>
<parameter name="id" type="long">
</parameter>
<parameter name="checked" type="boolean">
</parameter>
</method>
</interface>
<interface name="AbsListView.OnScrollListener"
 abstract="true"
 static="true"
@@ -222296,19 +222502,6 @@
 visibility="public"
>
</method>
<method name="setAdapter"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="adapter" type="android.widget.ListAdapter">
</parameter>
</method>
<method name="setColumnWidth"
 return="void"
 abstract="false"
@@ -224611,17 +224804,6 @@
<parameter name="v" type="android.view.View">
</parameter>
</method>
<method name="clearChoices"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="findViewTraversal"
 return="android.view.View"
 abstract="false"
@@ -224670,61 +224852,6 @@
 visibility="public"
>
</method>
<method name="getCheckedItemCount"
 return="int"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getCheckedItemIds"
 return="long[]"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getCheckedItemPosition"
 return="int"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getCheckedItemPositions"
 return="android.util.SparseBooleanArray"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getChoiceMode"
 return="int"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getDivider"
 return="android.graphics.drawable.Drawable"
 abstract="false"
@@ -224791,19 +224918,6 @@
 visibility="public"
>
</method>
<method name="isItemChecked"
 return="boolean"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="position" type="int">
</parameter>
</method>
<method name="removeFooterView"
 return="boolean"
 abstract="false"
@@ -224830,32 +224944,6 @@
<parameter name="v" type="android.view.View">
</parameter>
</method>
<method name="setAdapter"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="adapter" type="android.widget.ListAdapter">
</parameter>
</method>
<method name="setChoiceMode"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="choiceMode" type="int">
</parameter>
</method>
<method name="setDivider"
 return="void"
 abstract="false"
@@ -224908,21 +224996,6 @@
<parameter name="headerDividersEnabled" type="boolean">
</parameter>
</method>
<method name="setItemChecked"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="position" type="int">
</parameter>
<parameter name="value" type="boolean">
</parameter>
</method>
<method name="setItemsCanFocus"
 return="void"
 abstract="false"
@@ -224936,19 +225009,6 @@
<parameter name="itemsCanFocus" type="boolean">
</parameter>
</method>
<method name="setMultiChoiceModeListener"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="listener" type="android.widget.ListView.MultiChoiceModeListener">
</parameter>
</method>
<method name="setSelection"
 return="void"
 abstract="false"
@@ -225001,50 +225061,6 @@
<parameter name="offset" type="int">
</parameter>
</method>
<field name="CHOICE_MODE_MULTIPLE"
 type="int"
 transient="false"
 volatile="false"
 value="2"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="CHOICE_MODE_MULTIPLE_MODAL"
 type="int"
 transient="false"
 volatile="false"
 value="3"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="CHOICE_MODE_NONE"
 type="int"
 transient="false"
 volatile="false"
 value="0"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="CHOICE_MODE_SINGLE"
 type="int"
 transient="false"
 volatile="false"
 value="1"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
</class>
<class name="ListView.FixedViewInfo"
 extends="java.lang.Object"
@@ -225093,35 +225109,6 @@
>
</field>
</class>
<interface name="ListView.MultiChoiceModeListener"
 abstract="true"
 static="true"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<implements name="android.view.ActionMode.Callback">
</implements>
<method name="onItemCheckedStateChanged"
 return="void"
 abstract="true"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="mode" type="android.view.ActionMode">
</parameter>
<parameter name="position" type="int">
</parameter>
<parameter name="id" type="long">
</parameter>
<parameter name="checked" type="boolean">
</parameter>
</method>
</interface>
<class name="MediaController"
 extends="android.widget.FrameLayout"
 abstract="false"
+470 −3

File changed.

Preview size limit exceeded, changes collapsed.

+30 −1
Original line number Diff line number Diff line
@@ -104,6 +104,26 @@ public class GridView extends AbsListView {
        a.recycle();
    }

    /**
     * Set how the user may select items from the grid.
     *
     * <p>GridView only supports {@link AbsListView#CHOICE_MODE_NONE} and
     * {@link AbsListView#CHOICE_MODE_MULTIPLE_MODAL}. Attempting to set an unsupported choice
     * mode will throw an UnsupportedOperationException.
     */
    @Override
    public void setChoiceMode(int choiceMode) {
        switch (choiceMode) {
        case CHOICE_MODE_NONE:
        case CHOICE_MODE_MULTIPLE_MODAL:
            super.setChoiceMode(choiceMode);
            break;

        default:
            throw new UnsupportedOperationException("Unsupported choice mode " + choiceMode);
        }
    }

    @Override
    public ListAdapter getAdapter() {
        return mAdapter;
@@ -137,6 +157,9 @@ public class GridView extends AbsListView {
        mOldSelectedPosition = INVALID_POSITION;
        mOldSelectedRowId = INVALID_ROW_ID;

        // AbsListView#setAdapter will update choice mode states.
        super.setAdapter(adapter);

        if (mAdapter != null) {
            mOldItemCount = mItemCount;
            mItemCount = mAdapter.getCount();
@@ -1312,6 +1335,12 @@ public class GridView extends AbsListView {
            child.setPressed(isPressed);
        }

        if (mChoiceMode != CHOICE_MODE_NONE && mCheckStates != null) {
            if (child instanceof Checkable) {
                ((Checkable) child).setChecked(mCheckStates.get(position));
            }
        }

        if (needToMeasure) {
            int childHeightSpec = ViewGroup.getChildMeasureSpec(
                    MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED), 0, p.height);
+4 −500

File changed.

Preview size limit exceeded, changes collapsed.

Loading