Merge "TimePicker - introduce hidden methods for CTS testing"

This commit is contained in:
Andrei Stingaceanu
2016-07-08 15:23:45 +00:00
committed by Android (Google) Code Review
4 changed files with 99 additions and 0 deletions

View File

@@ -18,6 +18,7 @@ package android.widget;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.TestApi;
import android.annotation.Widget;
import android.content.Context;
import android.content.res.Configuration;
@@ -250,6 +251,30 @@ public class TimePicker extends FrameLayout {
return mDelegate.dispatchPopulateAccessibilityEvent(event);
}
/** @hide */
@TestApi
public View getHourView() {
return mDelegate.getHourView();
}
/** @hide */
@TestApi
public View getMinuteView() {
return mDelegate.getMinuteView();
}
/** @hide */
@TestApi
public View getAmView() {
return mDelegate.getAmView();
}
/** @hide */
@TestApi
public View getPmView() {
return mDelegate.getPmView();
}
/**
* A delegate interface that defined the public API of the TimePicker. Allows different
* TimePicker implementations. This would need to be implemented by the TimePicker delegates
@@ -277,6 +302,18 @@ public class TimePicker extends FrameLayout {
boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent event);
void onPopulateAccessibilityEvent(AccessibilityEvent event);
/** @hide */
@TestApi View getHourView();
/** @hide */
@TestApi View getMinuteView();
/** @hide */
@TestApi View getAmView();
/** @hide */
@TestApi View getPmView();
}
static String[] getAmPmStrings(Context context) {

View File

@@ -17,6 +17,7 @@
package android.widget;
import android.annotation.Nullable;
import android.annotation.TestApi;
import android.content.Context;
import android.content.res.ColorStateList;
import android.content.res.Resources;
@@ -541,6 +542,34 @@ class TimePickerClockDelegate extends TimePicker.AbstractTimePickerDelegate {
event.getText().add(selectedTime + " " + selectionMode);
}
/** @hide */
@Override
@TestApi
public View getHourView() {
return mHourView;
}
/** @hide */
@Override
@TestApi
public View getMinuteView() {
return mMinuteView;
}
/** @hide */
@Override
@TestApi
public View getAmView() {
return mAmLabel;
}
/** @hide */
@Override
@TestApi
public View getPmView() {
return mPmLabel;
}
/**
* @return the index of the current item showing
*/

View File

@@ -16,6 +16,7 @@
package android.widget;
import android.annotation.TestApi;
import android.content.Context;
import android.content.res.TypedArray;
import android.os.Parcelable;
@@ -413,6 +414,34 @@ class TimePickerSpinnerDelegate extends TimePicker.AbstractTimePickerDelegate {
event.getText().add(selectedDateUtterance);
}
/** @hide */
@Override
@TestApi
public View getHourView() {
return mHourSpinnerInput;
}
/** @hide */
@Override
@TestApi
public View getMinuteView() {
return mMinuteSpinnerInput;
}
/** @hide */
@Override
@TestApi
public View getAmView() {
return mAmPmSpinnerInput;
}
/** @hide */
@Override
@TestApi
public View getPmView() {
return mAmPmSpinnerInput;
}
private void updateInputState() {
// Make sure that if the user changes the value and the IME is active
// for one of the inputs if this widget, the IME is closed. If the user