feat(editor): the simulation's properties in a sheet of their own, with a restart for everyone
Who started the simulation, "Pakete verwerfen" and the dropped packets move from the toolbar into a properties sheet beside the surface. New in it: restart the simulation, after asking. The room learns a restart message: stopped as by stop, every capture, dropped frame and program window emptied, started anew and named after who restarted; refused for readers and frozen projects, logged, and waiting for asked blobs like a start. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -10,9 +10,9 @@
|
||||
// whose bytes are not there.
|
||||
//
|
||||
// Who may do what: everyone in the project watches; only with a write grant
|
||||
// does one start, stop, set the speed, hold "Pakete verwerfen", clear the
|
||||
// capture or act in a window (WRITING_KINDS; else `readOnly`). A frozen
|
||||
// project's simulation does not start (`frozen`); freezing stops a running
|
||||
// does one start, stop, restart, set the speed, hold "Pakete verwerfen", clear
|
||||
// the capture or act in a window (WRITING_KINDS; else `readOnly`). A frozen
|
||||
// project's simulation does not start, nor start anew (`frozen`); freezing stops a running
|
||||
// one, what it left written back first.
|
||||
//
|
||||
// When the last person leaves, the room stays LINGER_MILLISECONDS (a tab
|
||||
@@ -250,11 +250,11 @@ export class SimRooms {
|
||||
answer({ kind: 'error', code: 'readOnly', ...request });
|
||||
return;
|
||||
}
|
||||
if (kind === 'start' && room.frozen) {
|
||||
if ((kind === 'start' || kind === 'restart') && room.frozen) {
|
||||
answer({ kind: 'error', code: 'frozen', ...request });
|
||||
return;
|
||||
}
|
||||
if (kind === 'start' || kind === 'stop') this.options.log.info(`sim.${kind}`, { project: room.project, user: person.login });
|
||||
if (kind === 'start' || kind === 'stop' || kind === 'restart') this.options.log.info(`sim.${kind}`, { project: room.project, user: person.login });
|
||||
}
|
||||
this.post(room, { type: 'client', room: room.project, client, message });
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user