GUI: Tisch-Blase fix, Oeffnung wandert zum Sprecher

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0113vDKdSNtD3Dwcw4QMu9yV
This commit is contained in:
schakal00783
2026-07-17 01:21:16 +02:00
co-authored by Claude Fable 5
parent 1975bfe696
commit 55f03e7389
3 changed files with 15 additions and 9 deletions
+4 -6
View File
@@ -599,13 +599,11 @@ async function openRecording(id) {
const seats = tableSeats(Math.min(persons.length, spkOrder.length));
const seat = seats[i >= 0 ? Math.min(i, persons.length - 1) : 0];
if (bubble && seat) {
// Classic speech bubble AT the speaker: hang it between their mouth and
// the table centre, tail (arrow) pointing back at them.
const bx = seat.x + (50 - seat.x) * 0.52;
const by = seat.y + (50 - seat.y) * 0.60;
// The bubble sits FIXED on the table; only its tail (the "Öffnung")
// wanders to point at whoever is speaking.
bubble.className = `tbubble ${scls[tu.sp] || ''} arrow-${seat.side}`;
bubble.style.left = bx + '%';
bubble.style.top = by + '%';
bubble.style.left = '';
bubble.style.top = '';
bubble.querySelector('.tb-name').textContent = spkLabel(tu.sp, i >= 0 ? i : 0);
// The full turn as clickable word spans — highlighted + scrolled below.
bubble.querySelector('.tb-text').innerHTML =