From cc7b8278b8768a61a32e95d62bad9c0bb899f322 Mon Sep 17 00:00:00 2001
From: cv <34649812+cpvalente@users.noreply.github.com>
Date: Thu, 20 May 2021 13:13:30 +0200
Subject: [PATCH] cursor follows playback
---
client/src/features/editors/list/EventList.jsx | 18 ++++++++++++------
server/classes/EventTimer.js | 11 +++++++++++
2 files changed, 23 insertions(+), 6 deletions(-)
diff --git a/client/src/features/editors/list/EventList.jsx b/client/src/features/editors/list/EventList.jsx
index 11a9ad78a..3d2e874df 100644
--- a/client/src/features/editors/list/EventList.jsx
+++ b/client/src/features/editors/list/EventList.jsx
@@ -56,12 +56,13 @@ export default function EventList(props) {
if (socket == null) return;
// ask for playstate
- socket.emit('get-selected-id');
+ socket.emit('get-selected');
socket.emit('get-next-id');
// Handle playstate
- socket.on('selected-id', (data) => {
+ socket.on('selected', (data) => {
setSelected(data);
+ console.log('debug cursor setted', data);
});
socket.on('next-id', (data) => {
setNext(data);
@@ -69,7 +70,7 @@ export default function EventList(props) {
// Clear listener
return () => {
- socket.off('selected-id');
+ socket.off('selected');
socket.off('next-id');
};
}, [socket]);
@@ -86,8 +87,11 @@ export default function EventList(props) {
}, [cursor, cursorRef]);
useEffect(() => {
- if (cursorSettings !== 'locked') return;
- }, [selected]);
+ if (cursorSettings !== 'locked' || selected == null) return;
+ if (selected.index == null) return;
+
+ setCursor(selected.index);
+ }, [selected, cursorSettings]);
if (events.length < 1) {
return