Navigace mezi dny klávesovými šipkami
This commit is contained in:
parent
bc181defa8
commit
8ec87ec200
@ -1,4 +1,4 @@
|
|||||||
import React, { useContext, useEffect, useMemo, useRef, useState } from 'react';
|
import React, { useContext, useEffect, useMemo, useRef, useState, useCallback } from 'react';
|
||||||
import 'bootstrap/dist/css/bootstrap.min.css';
|
import 'bootstrap/dist/css/bootstrap.min.css';
|
||||||
import { EVENT_DISCONNECT, EVENT_MESSAGE, SocketContext } from './context/socket';
|
import { EVENT_DISCONNECT, EVENT_MESSAGE, SocketContext } from './context/socket';
|
||||||
import { addChoice, addPizza, changeDepartureTime, createPizzaDay, deletePizzaDay, errorHandler, finishDelivery, finishOrder, getData, getQrUrl, lockPizzaDay, removeChoice, removeChoices, removePizza, unlockPizzaDay, updateNote } from './Api';
|
import { addChoice, addPizza, changeDepartureTime, createPizzaDay, deletePizzaDay, errorHandler, finishDelivery, finishOrder, getData, getQrUrl, lockPizzaDay, removeChoice, removeChoices, removePizza, unlockPizzaDay, updateNote } from './Api';
|
||||||
@ -156,6 +156,22 @@ function App() {
|
|||||||
}
|
}
|
||||||
}, [choiceRef.current?.value, food])
|
}, [choiceRef.current?.value, food])
|
||||||
|
|
||||||
|
// Navigace mezi dny pomocí klávesových šípek
|
||||||
|
const handleKeyDown = useCallback((e: any) => {
|
||||||
|
if (e.keyCode == 37 && dayIndex != null && dayIndex > 0) {
|
||||||
|
handleDayChange(dayIndex - 1);
|
||||||
|
} else if (e.keyCode == 39 && dayIndex != null && dayIndex < 4) {
|
||||||
|
handleDayChange(dayIndex + 1);
|
||||||
|
}
|
||||||
|
}, [dayIndex]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
document.addEventListener('keydown', handleKeyDown);
|
||||||
|
return () => {
|
||||||
|
document.removeEventListener('keydown', handleKeyDown);
|
||||||
|
}
|
||||||
|
}, [handleKeyDown]);
|
||||||
|
|
||||||
// Index v týdnu dnešního dne (0-6)
|
// Index v týdnu dnešního dne (0-6)
|
||||||
// TODO tohle má posílat server, klient je nespolehlivý
|
// TODO tohle má posílat server, klient je nespolehlivý
|
||||||
const currentDayIndex = useMemo(() => {
|
const currentDayIndex = useMemo(() => {
|
||||||
@ -359,6 +375,7 @@ function App() {
|
|||||||
Poslední změny:
|
Poslední změny:
|
||||||
<ul>
|
<ul>
|
||||||
<li>Ochrana proti některým Stánkovinám</li>
|
<li>Ochrana proti některým Stánkovinám</li>
|
||||||
|
<li>Navigace mezi dny klávesovými šipkami</li>
|
||||||
</ul>
|
</ul>
|
||||||
</Alert>
|
</Alert>
|
||||||
{dayIndex != null &&
|
{dayIndex != null &&
|
||||||
|
Loading…
x
Reference in New Issue
Block a user