diff --git a/templates/index.html b/templates/index.html
index 21613ab..42bfe9b 100644
--- a/templates/index.html
+++ b/templates/index.html
@@ -1696,9 +1696,11 @@
trimEnd = t;
if (video) video.currentTime = t;
}
- // Sync markerji: če čez initialCenter, reset (zelen sme samo levo, rdeč desno)
- if (markerInTime > initialCenter - 0.1) markerInTime = trimStart;
- if (markerOutTime < initialCenter + 0.1) markerOutTime = trimEnd;
+ // Sync markerji v okviru novega trim range-a
+ if (markerInTime < trimStart) markerInTime = trimStart;
+ if (markerInTime > trimEnd) markerInTime = trimStart;
+ if (markerOutTime > trimEnd) markerOutTime = trimEnd;
+ if (markerOutTime < trimStart) markerOutTime = trimEnd;
renderTrim();
renderMarkers();
}
@@ -1783,17 +1785,35 @@
e.preventDefault();
if (video) {
if (video.paused) {
- // STROGO: zelen IN samo v LEVI polovici, rdeč OUT samo v DESNI polovici
- // Center = ORIGINAL (LLM-jev clip center) — NE se NE spreminja!
- // Tako, če user razširi clip, klik blizu OUT še vedno → OUT marker
+ // Postavi marker po BLIŽINI playhead-a do trim handle-a:
+ // - Bližje LEVI handle (trimStart) → postavi IN marker
+ // - Bližje DESNI handle (trimEnd) → postavi OUT marker
+ // Tako uporabnik vedno premakne tisti handle, ki ga je opazoval.
const t = video.currentTime;
- const center = initialCenter;
- if (t < center) {
- markerInTime = Math.min(t, center - 0.1);
+ const distToStart = Math.abs(t - trimStart);
+ const distToEnd = Math.abs(t - trimEnd);
+
+ if (distToStart < distToEnd) {
+ // Bližje začetku → IN marker
+ // Klamp da ne preseže OUT marker (vsaj 0.5s pred OUT)
+ markerInTime = Math.min(t, markerOutTime - 0.5);
+ if (markerInTime < 0) markerInTime = 0;
} else {
- markerOutTime = Math.max(t, center + 0.1);
+ // Bližje koncu → OUT marker
+ // Klamp da ne preseže IN marker (vsaj 0.5s za IN)
+ markerOutTime = Math.max(t, markerInTime + 0.5);
+ if (markerOutTime > videoDuration) markerOutTime = videoDuration;
}
- console.log("[Marker]", { t, center, trimStart, trimEnd, markerInTime, markerOutTime });
+ console.log("[Marker]", {
+ t: t.toFixed(2),
+ trimStart: trimStart.toFixed(2),
+ trimEnd: trimEnd.toFixed(2),
+ distToStart: distToStart.toFixed(2),
+ distToEnd: distToEnd.toFixed(2),
+ chose: distToStart < distToEnd ? "IN" : "OUT",
+ markerInTime: markerInTime.toFixed(2),
+ markerOutTime: markerOutTime.toFixed(2),
+ });
renderMarkers();
video.play().catch(() => {});
} else {