1b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein/* 2b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein * Copyright (C) 2013 The Android Open Source Project 3b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein * 4b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein * Licensed under the Apache License, Version 2.0 (the "License"); 5b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein * you may not use this file except in compliance with the License. 6b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein * You may obtain a copy of the License at 7b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein * 8b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein * http://www.apache.org/licenses/LICENSE-2.0 9b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein * 10b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein * Unless required by applicable law or agreed to in writing, software 11b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein * distributed under the License is distributed on an "AS IS" BASIS, 12b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein * See the License for the specific language governing permissions and 14b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein * limitations under the License. 15b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein */ 16b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein 17b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzsteinpackage com.android.datetimepicker; 18b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein 19b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzsteinimport android.content.Context; 20b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzsteinimport android.util.AttributeSet; 21b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzsteinimport android.view.accessibility.AccessibilityEvent; 22b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzsteinimport android.view.accessibility.AccessibilityNodeInfo; 23b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzsteinimport android.widget.Button; 24b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzsteinimport android.widget.TextView; 25b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein 26b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein/** 27b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein * Fake Button class, used so TextViews can announce themselves as Buttons, for accessibility. 28b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein */ 29cb3f2522609186db6239ad154af275957118295cSam Blitzsteinpublic class AccessibleTextView extends TextView { 30b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein 31cb3f2522609186db6239ad154af275957118295cSam Blitzstein public AccessibleTextView(Context context, AttributeSet attrs) { 32b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein super(context, attrs); 33b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein } 34b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein 35b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein @Override 36b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein public void onInitializeAccessibilityEvent(AccessibilityEvent event) { 37b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein super.onInitializeAccessibilityEvent(event); 38b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein event.setClassName(Button.class.getName()); 39b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein } 40b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein 41b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein @Override 42b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein public void onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo info) { 43b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein super.onInitializeAccessibilityNodeInfo(info); 44b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein info.setClassName(Button.class.getName()); 45b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein } 46b8f95646fc0510eebfeaa27864023d630f34090fSam Blitzstein} 47