force gpu layers on subtitle overlays so chrome opacity bugs dont clip them

This commit is contained in:
2026-04-20 02:15:55 +03:00
parent a4d4d1cea9
commit 85455acfa9
2 changed files with 10 additions and 1 deletions
+1
View File
@@ -86,6 +86,7 @@ export default function LibAssRenderer({ playerRef, subtitleUrl }: Props) {
<canvas <canvas
ref={canvasRef} ref={canvasRef}
className="absolute inset-0 w-full h-full pointer-events-none z-[100]" className="absolute inset-0 w-full h-full pointer-events-none z-[100]"
style={{ transform: 'translateZ(0)', willChange: 'transform', backfaceVisibility: 'hidden' }}
aria-hidden aria-hidden
/> />
) )
+9 -1
View File
@@ -145,7 +145,15 @@ export default function SubtitleOverlay({ playerRef, subtitleUrl }: Props) {
if (activeCues.length === 0) return null if (activeCues.length === 0) return null
return ( return (
<div className={`${className} z-[100]`} style={style}> <div
className={`${className} z-[100]`}
style={{
...style,
transform: 'translateZ(0)',
willChange: 'transform',
backfaceVisibility: 'hidden',
}}
>
{activeCues.map((cue, ci) => ( {activeCues.map((cue, ci) => (
<div key={ci} className={ci > 0 ? 'mt-1.5' : ''}> <div key={ci} className={ci > 0 ? 'mt-1.5' : ''}>
<span data-cue className="whitespace-pre-line"> <span data-cue className="whitespace-pre-line">