19648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov/*
29648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov * Copyright (C) 2011 The Android Open Source Project
39648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov *
49648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov * Licensed under the Apache License, Version 2.0 (the "License");
59648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov * you may not use this file except in compliance with the License.
69648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov * You may obtain a copy of the License at
79648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov *
89648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov *      http://www.apache.org/licenses/LICENSE-2.0
99648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov *
109648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov * Unless required by applicable law or agreed to in writing, software
119648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov * distributed under the License is distributed on an "AS IS" BASIS,
129648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
139648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov * See the License for the specific language governing permissions and
149648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov * limitations under the License.
159648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov */
169648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
179648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganovpackage android.support.v4.view.accessibility;
189648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
199648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganovimport android.os.Parcelable;
209648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganovimport android.view.View;
219648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganovimport android.view.accessibility.AccessibilityRecord;
229648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
239648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganovimport java.util.List;
249648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
259648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov/**
269648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov * ICS specific AccessibilityRecord API implementation.
279648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov */
289648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganovclass AccessibilityRecordCompatIcs {
299648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
309648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static Object obtain() {
319648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return AccessibilityRecord.obtain();
329648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
339648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
349648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static Object obtain(Object record) {
359648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return AccessibilityRecord.obtain((AccessibilityRecord) record);
369648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
379648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
389648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static int getAddedCount(Object record) {
399648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getAddedCount();
409648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
419648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
429648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static CharSequence getBeforeText(Object record) {
439648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getBeforeText();
449648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
459648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
469648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static CharSequence getClassName(Object record) {
479648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getClassName();
489648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
499648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
509648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static CharSequence getContentDescription(Object record) {
519648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getContentDescription();
529648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
539648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
549648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static int getCurrentItemIndex(Object record) {
559648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getCurrentItemIndex();
569648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
579648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
589648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static int getFromIndex(Object record) {
599648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getFromIndex();
609648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
619648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
629648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static int getItemCount(Object record) {
639648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getItemCount();
649648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
659648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
669648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static Parcelable getParcelableData(Object record) {
679648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getParcelableData();
689648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
699648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
709648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static int getRemovedCount(Object record) {
719648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getRemovedCount();
729648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
739648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
749648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static int getScrollX(Object record) {
759648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getScrollX();
769648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
779648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
789648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static int getScrollY(Object record) {
799648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getScrollY();
809648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
819648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
829648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static Object getSource(Object record) {
839648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getSource();
849648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
859648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
869648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static List<CharSequence> getText(Object record) {
879648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getText();
889648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
899648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
909648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static int getToIndex(Object record) {
919648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getToIndex();
929648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
939648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
949648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static int getWindowId(Object record) {
959648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).getWindowId();
969648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
979648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
989648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static boolean isChecked(Object record) {
999648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).isChecked();
1009648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1019648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1029648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static boolean isEnabled(Object record) {
1039648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).isEnabled();
1049648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1059648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1069648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static boolean isFullScreen(Object record) {
1079648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).isFullScreen();
1089648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1099648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1109648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static boolean isPassword(Object record) {
1119648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).isPassword();
1129648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1139648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1149648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static boolean isScrollable(Object record) {
1159648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        return ((AccessibilityRecord) record).isScrollable();
1169648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1179648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1189648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void recycle(Object record) {
1199648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).recycle();
1209648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1219648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1229648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setAddedCount(Object record, int addedCount) {
1239648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setAddedCount(addedCount);
1249648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1259648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1269648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setBeforeText(Object record, CharSequence beforeText) {
1279648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setBeforeText(beforeText);
1289648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1299648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1309648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setChecked(Object record, boolean isChecked) {
1319648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setChecked(isChecked);
1329648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1339648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1349648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setClassName(Object record, CharSequence className) {
1359648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setClassName(className);
1369648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1379648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1389648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setContentDescription(Object record, CharSequence contentDescription) {
1399648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setContentDescription(contentDescription);
1409648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1419648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1429648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setCurrentItemIndex(Object record, int currentItemIndex) {
1439648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setCurrentItemIndex(currentItemIndex);
1449648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1459648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1469648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setEnabled(Object record, boolean isEnabled) {
1479648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setEnabled(isEnabled);
1489648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1499648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1509648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setFromIndex(Object record, int fromIndex) {
1519648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setFromIndex(fromIndex);
1529648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1539648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1549648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setFullScreen(Object record, boolean isFullScreen) {
1559648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setFullScreen(isFullScreen);
1569648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1579648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1589648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setItemCount(Object record, int itemCount) {
1599648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setItemCount(itemCount);
1609648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1619648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1629648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setParcelableData(Object record, Parcelable parcelableData) {
1639648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setParcelableData(parcelableData);
1649648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1659648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1669648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setPassword(Object record, boolean isPassword) {
1679648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setPassword(isPassword);
1689648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1699648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1709648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setRemovedCount(Object record, int removedCount) {
1719648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setRemovedCount(removedCount);
1729648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1739648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1749648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setScrollX(Object record, int scrollX) {
1759648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setScrollX(scrollX);
1769648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1779648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1789648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setScrollY(Object record, int scrollY) {
1799648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setScrollY(scrollY);
1809648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1819648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1829648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setScrollable(Object record, boolean scrollable) {
1839648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setScrollable(scrollable);
1849648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1859648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1869648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setSource(Object record, View source) {
1879648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setSource(source);
1889648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1899648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov
1909648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    public static void setToIndex(Object record, int toIndex) {
1919648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov        ((AccessibilityRecord) record).setToIndex(toIndex);
1929648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov    }
1939648c538bac4f04145c118cc41168d1d7a536312Svetoslav Ganov}
194