From 98c1a55ff7401381c710bb1c5e9d6aa8b5375ec9 Mon Sep 17 00:00:00 2001 From: 4gray Date: Fri, 17 Jul 2026 08:02:52 +0200 Subject: [PATCH] fix(settings): label shared controls toggle --- .../settings-playback-section.component.html | 3 +++ .../settings-playback-section.component.spec.ts | 16 ++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/apps/web/src/app/settings/settings-playback-section.component.html b/apps/web/src/app/settings/settings-playback-section.component.html index 15510dcb3..75551c14a 100644 --- a/apps/web/src/app/settings/settings-playback-section.component.html +++ b/apps/web/src/app/settings/settings-playback-section.component.html @@ -87,6 +87,9 @@
diff --git a/apps/web/src/app/settings/settings-playback-section.component.spec.ts b/apps/web/src/app/settings/settings-playback-section.component.spec.ts index 193b17d6e..5c6ce2662 100644 --- a/apps/web/src/app/settings/settings-playback-section.component.spec.ts +++ b/apps/web/src/app/settings/settings-playback-section.component.spec.ts @@ -14,6 +14,8 @@ const VLC_PATH_DESCRIPTION = const MPV_ARGUMENTS_PLACEHOLDER = '--ontop\n--autofit=640x360\n--geometry=+80+80'; const VLC_ARGUMENTS_PLACEHOLDER = '--video-on-top\n--width=640\n--height=360'; +const WEB_PLAYER_SHARED_CONTROLS_LABEL = + 'Unified controls for web players (experimental)'; describe('SettingsPlaybackSectionComponent', () => { let fixture: ComponentFixture; @@ -39,6 +41,8 @@ describe('SettingsPlaybackSectionComponent', () => { MPV_PLAYER_PATH_DESCRIPTION: MPV_PATH_DESCRIPTION, MPV_COMPATIBLE_PLAYER_TIP: MPV_COMPATIBLE_PLAYER_TIP, VLC_PLAYER_PATH_DESCRIPTION: VLC_PATH_DESCRIPTION, + WEB_PLAYER_SHARED_CONTROLS: + WEB_PLAYER_SHARED_CONTROLS_LABEL, }, }, true @@ -177,6 +181,18 @@ describe('SettingsPlaybackSectionComponent', () => { expect(checkbox?.checked).toBe(true); }); + it('labels the rendered native shared web controls checkbox', () => { + fixture.detectChanges(); + + const checkbox = fixture.nativeElement.querySelector( + '[data-test-id="web-player-shared-controls-toggle"] input[type="checkbox"]' + ); + + expect(checkbox?.getAttribute('aria-label')).toBe( + WEB_PLAYER_SHARED_CONTROLS_LABEL + ); + }); + it('keeps the double-click option visible when path settings are unavailable', () => { fixture.componentRef.setInput('form', createForm(VideoPlayer.MPV)); fixture.componentRef.setInput('isDesktop', true);