Improve responsiveness of timer page - 1.180 🚀
This commit is contained in:
parent
bf6863000f
commit
84ff8a110b
|
@ -17,7 +17,7 @@ export interface TickEvent {
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function TimerPage() {
|
export default function TimerPage() {
|
||||||
const { minutes, seconds } = useTimer();
|
const { minutes, seconds, update } = useTimer();
|
||||||
const [settings, setSettings] = useState<Settings>();
|
const [settings, setSettings] = useState<Settings>();
|
||||||
const { colors } = useTheme();
|
const { colors } = useTheme();
|
||||||
|
|
||||||
|
@ -29,11 +29,13 @@ export default function TimerPage() {
|
||||||
|
|
||||||
const stop = () => {
|
const stop = () => {
|
||||||
NativeModules.AlarmModule.stop();
|
NativeModules.AlarmModule.stop();
|
||||||
|
update();
|
||||||
};
|
};
|
||||||
|
|
||||||
const add = async () => {
|
const add = async () => {
|
||||||
console.log(`${TimerPage.name}.add:`, settings);
|
console.log(`${TimerPage.name}.add:`, settings);
|
||||||
NativeModules.AlarmModule.add();
|
NativeModules.AlarmModule.add();
|
||||||
|
update();
|
||||||
};
|
};
|
||||||
|
|
||||||
const progress = useMemo(() => {
|
const progress = useMemo(() => {
|
||||||
|
|
|
@ -85,8 +85,8 @@ android {
|
||||||
applicationId "com.massive"
|
applicationId "com.massive"
|
||||||
minSdkVersion rootProject.ext.minSdkVersion
|
minSdkVersion rootProject.ext.minSdkVersion
|
||||||
targetSdkVersion rootProject.ext.targetSdkVersion
|
targetSdkVersion rootProject.ext.targetSdkVersion
|
||||||
versionCode 36205
|
versionCode 36206
|
||||||
versionName "1.179"
|
versionName "1.180"
|
||||||
}
|
}
|
||||||
signingConfigs {
|
signingConfigs {
|
||||||
release {
|
release {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "massive",
|
"name": "massive",
|
||||||
"version": "1.179",
|
"version": "1.180",
|
||||||
"private": true,
|
"private": true,
|
||||||
"license": "GPL-3.0-only",
|
"license": "GPL-3.0-only",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|
28
use-timer.ts
28
use-timer.ts
|
@ -8,19 +8,23 @@ export default function useTimer() {
|
||||||
const [minutes, setMinutes] = useState("00");
|
const [minutes, setMinutes] = useState("00");
|
||||||
const [seconds, setSeconds] = useState("00");
|
const [seconds, setSeconds] = useState("00");
|
||||||
|
|
||||||
|
const update = () => {
|
||||||
|
const current: number = NativeModules.AlarmModule.getCurrent();
|
||||||
|
setMinutes(
|
||||||
|
Math.floor(current / 1000 / 60)
|
||||||
|
.toString()
|
||||||
|
.padStart(2, "0")
|
||||||
|
);
|
||||||
|
setSeconds(
|
||||||
|
Math.floor((current / 1000) % 60)
|
||||||
|
.toString()
|
||||||
|
.padStart(2, "0")
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
useFocusEffect(
|
useFocusEffect(
|
||||||
useCallback(() => {
|
useCallback(() => {
|
||||||
const current: number = NativeModules.AlarmModule.getCurrent();
|
update();
|
||||||
setMinutes(
|
|
||||||
Math.floor(current / 1000 / 60)
|
|
||||||
.toString()
|
|
||||||
.padStart(2, "0")
|
|
||||||
);
|
|
||||||
setSeconds(
|
|
||||||
Math.floor((current / 1000) % 60)
|
|
||||||
.toString()
|
|
||||||
.padStart(2, "0")
|
|
||||||
);
|
|
||||||
const listener = emitter.addListener("tick", (event: TickEvent) => {
|
const listener = emitter.addListener("tick", (event: TickEvent) => {
|
||||||
console.log(`${useTimer.name}.tick:`, { event });
|
console.log(`${useTimer.name}.tick:`, { event });
|
||||||
setMinutes(event.minutes);
|
setMinutes(event.minutes);
|
||||||
|
@ -30,5 +34,5 @@ export default function useTimer() {
|
||||||
}, [])
|
}, [])
|
||||||
);
|
);
|
||||||
|
|
||||||
return { minutes, seconds };
|
return { minutes, seconds, update };
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue