From c51c5f29fb078fa7343f513299a78592a5ec2420 Mon Sep 17 00:00:00 2001 From: Aurimas Liutikas Date: Wed, 22 Feb 2017 16:56:43 -0800 Subject: [PATCH] Fix toggling of AM/PM of TimePicker using hardware keyboard. Set AM/PM mode before setting hour in TextInputTimePickerView. This is needed so we know exactly which it is when we are using 12 hour clock. Not setting it early was causing TextInputTimePickerView to update TimePicker with the hour that was not offset correctly based on AM/PM state. Test: existing tests caught this - TimePickerTest#testKeyboardInputModeClockAmPm verified locally that this test now passes. Bug: 35262830 Change-Id: I7e912320cb5a72c5d9d4e80dc0b42deb651f2636 --- core/java/android/widget/TextInputTimePickerView.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/java/android/widget/TextInputTimePickerView.java b/core/java/android/widget/TextInputTimePickerView.java index ef91576c0e275..0183343e96e1d 100644 --- a/core/java/android/widget/TextInputTimePickerView.java +++ b/core/java/android/widget/TextInputTimePickerView.java @@ -177,15 +177,15 @@ public class TextInputTimePickerView extends RelativeLayout { mAmPmSpinner.setVisibility(is24Hour ? View.INVISIBLE : View.VISIBLE); - mHourEditText.setText(String.format(format, localizedHour)); - mMinuteEditText.setText(String.format(format, minute)); - if (amOrPm == AM) { mAmPmSpinner.setSelection(0); } else { mAmPmSpinner.setSelection(1); } + mHourEditText.setText(String.format(format, localizedHour)); + mMinuteEditText.setText(String.format(format, minute)); + if (mErrorShowing) { validateInput(); }