From 2a61d5dd4bc7d8de26642a0819f921d0a5d90281 Mon Sep 17 00:00:00 2001 From: Andre Lammers <andre.lammers@mni.thm.de> Date: Tue, 17 Sep 2019 11:02:24 +0200 Subject: [PATCH] Fixed live-announcer for creator-room and home component --- .../room-creator-page.component.html | 1 + .../room-creator-page.component.ts | 13 ++++++++----- .../home/home-page/home-page.component.html | 2 +- .../home/home-page/home-page.component.ts | 2 -- src/assets/i18n/creator/de.json | 1 + src/assets/i18n/creator/en.json | 1 + 6 files changed, 12 insertions(+), 8 deletions(-) diff --git a/src/app/components/creator/room-creator-page/room-creator-page.component.html b/src/app/components/creator/room-creator-page/room-creator-page.component.html index 8d877b403..6c5f0f7b0 100644 --- a/src/app/components/creator/room-creator-page/room-creator-page.component.html +++ b/src/app/components/creator/room-creator-page/room-creator-page.component.html @@ -93,6 +93,7 @@ </mat-card> <div *ngIf="!isLoading && !room">{{ 'room-page.room-not-found' | translate }}</div> </div> + <button id="live_announcer-button" tabIndex="-1" (click)="announce()" class="visually-hidden">{{ 'room-page.live-announcer' | translate }}</button> </div> <div class="visually-hidden"> diff --git a/src/app/components/creator/room-creator-page/room-creator-page.component.ts b/src/app/components/creator/room-creator-page/room-creator-page.component.ts index 92ac273ac..fa6f25839 100644 --- a/src/app/components/creator/room-creator-page/room-creator-page.component.ts +++ b/src/app/components/creator/room-creator-page/room-creator-page.component.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, Renderer2, OnDestroy } from '@angular/core'; +import { Component, OnInit, Renderer2, OnDestroy, AfterContentInit } from '@angular/core'; import { RoomService } from '../../../services/http/room.service'; import { ActivatedRoute } from '@angular/router'; import { RoomPageComponent } from '../../shared/room-page/room-page.component'; @@ -25,7 +25,7 @@ import { KeyboardKey } from '../../../utils/keyboard/keys'; templateUrl: './room-creator-page.component.html', styleUrls: ['./room-creator-page.component.scss'] }) -export class RoomCreatorPageComponent extends RoomPageComponent implements OnInit, OnDestroy { +export class RoomCreatorPageComponent extends RoomPageComponent implements OnInit, OnDestroy, AfterContentInit { room: Room; updRoom: Room; commentThreshold: number; @@ -53,13 +53,18 @@ export class RoomCreatorPageComponent extends RoomPageComponent implements OnIni langService.langEmitter.subscribe(lang => translateService.use(lang)); } + ngAfterContentInit(): void { + setTimeout( () => { + document.getElementById('live_announcer-button').focus(); + }, 700); + } + ngOnInit() { window.scroll(0, 0); this.translateService.use(localStorage.getItem('currentLang')); this.route.params.subscribe(params => { this.initializeRoom(params['roomId']); }); - this.announce(); this.listenerFn = this._r.listen(document, 'keyup', (event) => { if (KeyboardUtils.isKeyEvent(event, KeyboardKey.Digit1) === true && this.eventService.focusOnInput === false) { document.getElementById('question_answer-button').focus(); @@ -97,8 +102,6 @@ export class RoomCreatorPageComponent extends RoomPageComponent implements OnIni 'oder die Taste 9 um diese Ansage zu wiederholen.', 'assertive'); } - - afterRoomLoadHook() { if (this.moderationEnabled) { this.viewModuleCount = this.viewModuleCount + 1; diff --git a/src/app/components/home/home-page/home-page.component.html b/src/app/components/home/home-page/home-page.component.html index 0edca87b5..7787e5fb0 100644 --- a/src/app/components/home/home-page/home-page.component.html +++ b/src/app/components/home/home-page/home-page.component.html @@ -1,4 +1,3 @@ -<button tabIndex="-1" (click)="announce()" id="live_announcer-button" class="visually-hidden">{{ 'home-page.live-announcer' | translate }}</button> <div fxLayout="column" fxLayoutAlign="center" fxLayoutGap="20px" fxFill> <div fxLayout="row" fxLayoutAlign="center" *ngIf="deviceType === 'mobile'"> <h1> @@ -25,4 +24,5 @@ </mat-card-content> </mat-card> </div> + <button id="live_announcer-button" tabIndex="-1" (click)="announce()" class="visually-hidden">{{ 'home-page.live-announcer' | translate }}</button> </div> diff --git a/src/app/components/home/home-page/home-page.component.ts b/src/app/components/home/home-page/home-page.component.ts index c2302f846..4c80a678b 100644 --- a/src/app/components/home/home-page/home-page.component.ts +++ b/src/app/components/home/home-page/home-page.component.ts @@ -22,11 +22,9 @@ export class HomePageComponent implements OnInit, OnDestroy, AfterContentInit { } ngAfterContentInit(): void { - setTimeout( () => { document.getElementById('live_announcer-button').focus(); }, 500); - } ngOnInit() { diff --git a/src/assets/i18n/creator/de.json b/src/assets/i18n/creator/de.json index 65c9f61b0..bf4e816db 100644 --- a/src/assets/i18n/creator/de.json +++ b/src/assets/i18n/creator/de.json @@ -158,6 +158,7 @@ "email-error": "E-Mail Adresse ist ungültig.", "export-comments": "Fragen exportieren", "general": "Sitzung", + "live-announcer": "Du befindest dich in der von dir erstellten Sitzung. Um Informationen zu Tastenkombinationen zu erhalten drücke jetzt die Enter-Taste oder rufe die Ansage zu einem späteren Zeitpunkt mit der Escape-Taste auf.", "live-feedback": "Live Feedback", "moderating-stream": "Moderation", "moderator-added": "Moderator wurde hinzugefügt.", diff --git a/src/assets/i18n/creator/en.json b/src/assets/i18n/creator/en.json index 18b91bc97..7c50db68d 100644 --- a/src/assets/i18n/creator/en.json +++ b/src/assets/i18n/creator/en.json @@ -159,6 +159,7 @@ "email-error": "E-Mail is invalid.", "export-comments": "Export questions", "general": "Session", + "live-announcer": "You're in the session you created. To get information about key combinations press the Enter key or call the announcement later with the Escape key.", "live-feedback": "Live feedback", "moderating-stream": "Moderation", "moderator-added": "Moderator was added.", -- GitLab