Skip to content

Commit 58617ec

Browse files
committed
make minute interval work with timepicker default
1 parent bf1cc89 commit 58617ec

File tree

4 files changed

+16
-20
lines changed

4 files changed

+16
-20
lines changed

android/src/main/java/com/reactcommunity/rndatetimepicker/RNMinuteIntervals.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,4 @@ public final class RNMinuteIntervals {
1212
public static boolean isValid(Integer interval) {
1313
return Arrays.asList(MinuteIntervals).contains(interval);
1414
}
15-
16-
public static boolean isRadialPickerCompatible(Integer interval) {
17-
return MinuteIntervals[0].equals(interval) || MinuteIntervals[1].equals(interval);
18-
}
1915
}

android/src/main/java/com/reactcommunity/rndatetimepicker/RNTimePickerDialogFragment.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -63,11 +63,7 @@ static TimePickerDialog getDialog(
6363

6464
RNTimePickerDisplay display = RNTimePickerDisplay.DEFAULT;
6565
if (args != null && args.getString(RNConstants.ARG_DISPLAY, null) != null) {
66-
if (RNMinuteIntervals.isRadialPickerCompatible(minuteInterval)) {
67-
display = RNTimePickerDisplay.valueOf(args.getString(RNConstants.ARG_DISPLAY).toUpperCase(Locale.US));
68-
} else {
69-
display = RNTimePickerDisplay.SPINNER;
70-
}
66+
display = RNTimePickerDisplay.valueOf(args.getString(RNConstants.ARG_DISPLAY).toUpperCase(Locale.US));
7167
}
7268

7369
if (args != null) {

example/App.js

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,18 @@ const App = () => {
5555
setDisplay('spinner');
5656
};
5757

58-
const showTimepickerWithInterval = () => {
58+
const showTimepickerSpinnerWithInterval = () => {
5959
showMode('time');
6060
setDisplay('spinner');
6161
setMinInterval(5);
6262
};
6363

64+
const showTimepickerWithInterval = () => {
65+
showMode('time');
66+
setDisplay('default');
67+
setMinInterval(5);
68+
};
69+
6470
return (
6571
<>
6672
<StatusBar barStyle="dark-content" />
@@ -111,11 +117,18 @@ const App = () => {
111117
title="Show time picker!"
112118
/>
113119
</View>
120+
<View style={styles.button}>
121+
<Button
122+
testID="timePickerIntervalButton"
123+
onPress={showTimepickerSpinnerWithInterval}
124+
title="Show time picker spinner (with 5 min interval)!"
125+
/>
126+
</View>
114127
<View style={styles.button}>
115128
<Button
116129
testID="timePickerIntervalButton"
117130
onPress={showTimepickerWithInterval}
118-
title="Show time picker (with 5 min interval)!"
131+
title="Show time picker default (with 5 min interval)!"
119132
/>
120133
</View>
121134
<View style={styles.button}>

src/timepicker.android.js

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,6 @@
88
* @flow strict-local
99
*/
1010
import {
11-
DISPLAY_DEFAULT,
12-
DISPLAY_SPINNER,
1311
TIME_SET_ACTION,
1412
DISMISS_ACTION,
1513
MINUTE_INTERVAL_DEFAULT,
@@ -19,10 +17,6 @@ import {toMilliseconds} from './utils';
1917

2018
import type {TimePickerOptions, DateTimePickerResult} from './types';
2119

22-
const isRadialPickerCompatible = (interval: number) => {
23-
return interval === 1 || interval === 5;
24-
};
25-
2620
export default class TimePickerAndroid {
2721
/**
2822
* Opens the standard Android time picker dialog.
@@ -46,9 +40,6 @@ export default class TimePickerAndroid {
4640
static async open(options: TimePickerOptions): Promise<DateTimePickerResult> {
4741
toMilliseconds(options, 'value');
4842
options.minuteInterval = options.minuteInterval || MINUTE_INTERVAL_DEFAULT;
49-
options.display = isRadialPickerCompatible(options.minuteInterval)
50-
? options.display || DISPLAY_DEFAULT
51-
: DISPLAY_SPINNER;
5243

5344
return NativeModules.RNTimePickerAndroid.open(options);
5445
}

0 commit comments

Comments
 (0)