diff --git a/lib/java/com/google/android/material/timepicker/MaterialTimePicker.java b/lib/java/com/google/android/material/timepicker/MaterialTimePicker.java index f30f4c0ec..8f441909e 100644 --- a/lib/java/com/google/android/material/timepicker/MaterialTimePicker.java +++ b/lib/java/com/google/android/material/timepicker/MaterialTimePicker.java @@ -248,7 +248,11 @@ public final class MaterialTimePicker extends DialogFragment implements OnDouble if (time == null) { time = new TimeModel(); } - int defaultInputMode = time.format == CLOCK_24H ? INPUT_MODE_KEYBOARD : INPUT_MODE_CLOCK; + + boolean forceKeyboardInputMode = + getResources().getBoolean(R.bool.timepicker_force_input_mode_keyboard); + int defaultInputMode = + forceKeyboardInputMode || time.format == CLOCK_24H ? INPUT_MODE_KEYBOARD : INPUT_MODE_CLOCK; inputMode = bundle.getInt(INPUT_MODE_EXTRA, defaultInputMode); titleResId = bundle.getInt(TITLE_RES_EXTRA, 0); titleText = bundle.getCharSequence(TITLE_TEXT_EXTRA); @@ -299,14 +303,11 @@ public final class MaterialTimePicker extends DialogFragment implements OnDouble cancelButton = root.findViewById(R.id.material_timepicker_cancel_button); cancelButton.setOnClickListener( - new OnClickListener() { - @Override - public void onClick(View v) { - for (OnClickListener listener : negativeButtonListeners) { - listener.onClick(v); - } - dismiss(); + v -> { + for (OnClickListener listener : negativeButtonListeners) { + listener.onClick(v); } + dismiss(); }); if (negativeButtonTextResId != 0) { cancelButton.setText(negativeButtonTextResId); @@ -317,12 +318,9 @@ public final class MaterialTimePicker extends DialogFragment implements OnDouble updateCancelButtonVisibility(); modeButton.setOnClickListener( - new OnClickListener() { - @Override - public void onClick(View v) { - inputMode = (inputMode == INPUT_MODE_CLOCK) ? INPUT_MODE_KEYBOARD : INPUT_MODE_CLOCK; - updateInputMode(modeButton); - } + v -> { + inputMode = (inputMode == INPUT_MODE_CLOCK) ? INPUT_MODE_KEYBOARD : INPUT_MODE_CLOCK; + updateInputMode(modeButton); }); return root; @@ -563,14 +561,11 @@ public final class MaterialTimePicker extends DialogFragment implements OnDouble private TimeModel time = new TimeModel(); @Nullable private Integer inputMode; - @StringRes - private int titleTextResId = 0; + @StringRes private int titleTextResId = 0; private CharSequence titleText; - @StringRes - private int positiveButtonTextResId = 0; + @StringRes private int positiveButtonTextResId = 0; private CharSequence positiveButtonText; - @StringRes - private int negativeButtonTextResId = 0; + @StringRes private int negativeButtonTextResId = 0; private CharSequence negativeButtonText; private int overrideThemeResId = 0; diff --git a/lib/java/com/google/android/material/timepicker/res/values-h320dp/config.xml b/lib/java/com/google/android/material/timepicker/res/values-h320dp/config.xml new file mode 100644 index 000000000..8c73960ff --- /dev/null +++ b/lib/java/com/google/android/material/timepicker/res/values-h320dp/config.xml @@ -0,0 +1,20 @@ + + + + + false + diff --git a/lib/java/com/google/android/material/timepicker/res/values/config.xml b/lib/java/com/google/android/material/timepicker/res/values/config.xml new file mode 100644 index 000000000..94718d653 --- /dev/null +++ b/lib/java/com/google/android/material/timepicker/res/values/config.xml @@ -0,0 +1,20 @@ + + + + + true +