mirror of
https://github.com/cpvalente/ontime.git
synced 2026-08-22 15:39:11 +00:00
cursor follows playback
This commit is contained in:
@@ -56,12 +56,13 @@ export default function EventList(props) {
|
|||||||
if (socket == null) return;
|
if (socket == null) return;
|
||||||
|
|
||||||
// ask for playstate
|
// ask for playstate
|
||||||
socket.emit('get-selected-id');
|
socket.emit('get-selected');
|
||||||
socket.emit('get-next-id');
|
socket.emit('get-next-id');
|
||||||
|
|
||||||
// Handle playstate
|
// Handle playstate
|
||||||
socket.on('selected-id', (data) => {
|
socket.on('selected', (data) => {
|
||||||
setSelected(data);
|
setSelected(data);
|
||||||
|
console.log('debug cursor setted', data);
|
||||||
});
|
});
|
||||||
socket.on('next-id', (data) => {
|
socket.on('next-id', (data) => {
|
||||||
setNext(data);
|
setNext(data);
|
||||||
@@ -69,7 +70,7 @@ export default function EventList(props) {
|
|||||||
|
|
||||||
// Clear listener
|
// Clear listener
|
||||||
return () => {
|
return () => {
|
||||||
socket.off('selected-id');
|
socket.off('selected');
|
||||||
socket.off('next-id');
|
socket.off('next-id');
|
||||||
};
|
};
|
||||||
}, [socket]);
|
}, [socket]);
|
||||||
@@ -86,8 +87,11 @@ export default function EventList(props) {
|
|||||||
}, [cursor, cursorRef]);
|
}, [cursor, cursorRef]);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (cursorSettings !== 'locked') return;
|
if (cursorSettings !== 'locked' || selected == null) return;
|
||||||
}, [selected]);
|
if (selected.index == null) return;
|
||||||
|
|
||||||
|
setCursor(selected.index);
|
||||||
|
}, [selected, cursorSettings]);
|
||||||
|
|
||||||
if (events.length < 1) {
|
if (events.length < 1) {
|
||||||
return <Empty text='No Events' />;
|
return <Empty text='No Events' />;
|
||||||
@@ -112,6 +116,8 @@ export default function EventList(props) {
|
|||||||
console.log('EventList: events in event list', events);
|
console.log('EventList: events in event list', events);
|
||||||
let cumulativeDelay = 0;
|
let cumulativeDelay = 0;
|
||||||
|
|
||||||
|
console.log('debug selected', selected);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className={style.eventContainer}>
|
<div className={style.eventContainer}>
|
||||||
<DragDropContext onDragEnd={handleOnDragEnd}>
|
<DragDropContext onDragEnd={handleOnDragEnd}>
|
||||||
@@ -136,7 +142,7 @@ export default function EventList(props) {
|
|||||||
type={e.type}
|
type={e.type}
|
||||||
index={index}
|
index={index}
|
||||||
data={e}
|
data={e}
|
||||||
selected={selected === e.id}
|
selected={selected?.id === e.id}
|
||||||
next={next === e.id}
|
next={next === e.id}
|
||||||
eventsHandler={eventsHandler}
|
eventsHandler={eventsHandler}
|
||||||
delay={cumulativeDelay}
|
delay={cumulativeDelay}
|
||||||
|
|||||||
@@ -90,6 +90,10 @@ class EventTimer extends Timer {
|
|||||||
broadcastState() {
|
broadcastState() {
|
||||||
this.io.emit('timer', this.getObject());
|
this.io.emit('timer', this.getObject());
|
||||||
this.io.emit('playstate', this.state);
|
this.io.emit('playstate', this.state);
|
||||||
|
this.io.emit('selected', {
|
||||||
|
id: this.selectedEventId,
|
||||||
|
index: this.selectedEventIndex,
|
||||||
|
});
|
||||||
this.io.emit('selected-id', this.selectedEventId);
|
this.io.emit('selected-id', this.selectedEventId);
|
||||||
this.io.emit('next-id', this.nextEventId);
|
this.io.emit('next-id', this.nextEventId);
|
||||||
this.io.emit('publicselected-id', this.selectedPublicEventId);
|
this.io.emit('publicselected-id', this.selectedPublicEventId);
|
||||||
@@ -259,6 +263,13 @@ class EventTimer extends Timer {
|
|||||||
|
|
||||||
/*******************************************/
|
/*******************************************/
|
||||||
// selection data
|
// selection data
|
||||||
|
socket.on('get-selected', () => {
|
||||||
|
socket.emit('selected', {
|
||||||
|
id: this.selectedEventId,
|
||||||
|
index: this.selectedEventIndex,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
socket.on('get-selected-id', () => {
|
socket.on('get-selected-id', () => {
|
||||||
socket.emit('selected-id', this.selectedEventId);
|
socket.emit('selected-id', this.selectedEventId);
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user