From d190d057a5608f7e673c9d80651fbb190721c544 Mon Sep 17 00:00:00 2001
From: Alexander Reifschneider <alexander.reifschneider@mgm-tp.com>
Date: Thu, 13 Feb 2025 13:47:57 +0100
Subject: [PATCH] OZG-7474 Fix tooltips

---
 .../src/lib/tooltip/tooltip.component.ts      |  2 +-
 ...y-ozgcloud-button-container.component.html |  3 ++-
 .../vorgang-forward-form.component.html       |  3 ++-
 .../endgueltig-loeschen-button.component.html |  3 ++-
 ...dgueltig-loeschen-button.component.spec.ts |  5 +++--
 ...derung-zuruecknehmen-button.component.html |  3 ++-
 ...ung-zuruecknehmen-button.component.spec.ts |  5 +++--
 .../loeschen-anfordern-button.component.html  |  3 ++-
 ...oeschen-anfordern-button.component.spec.ts |  5 +++--
 .../postfach-mail-button.component.html       |  3 ++-
 .../postfach-mail-list.component.html         | 21 ++++++-------------
 .../ui/back-button/back-button.component.html |  4 ++--
 ...er-profile-button-container.component.html |  3 ++-
 ...profile-button-container.component.spec.ts |  5 +++--
 .../aktenzeichen-editable.component.html      |  3 ++-
 .../aktenzeichen-editable.component.spec.ts   |  5 +++--
 .../abschliessen-button.component.html        |  3 ++-
 .../abschliessen-button.component.spec.ts     |  5 +++--
 .../annehmen-button.component.html            |  3 ++-
 .../annehmen-button.component.spec.ts         |  4 ++--
 .../bearbeiten-button.component.html          |  3 ++-
 .../bearbeiten-button.component.spec.ts       |  5 +++--
 .../bescheiden-button.component.html          |  1 +
 .../verwerfen-button.component.html           |  3 ++-
 .../verwerfen-button.component.spec.ts        |  5 +++--
 .../wiedereroeffnen-button.component.html     |  3 ++-
 .../wiedereroeffnen-button.component.spec.ts  |  5 +++--
 .../zurueckholen-button.component.html        |  3 ++-
 .../zurueckholen-button.component.spec.ts     |  5 +++--
 .../zurueckstellen-button.component.html      |  3 ++-
 .../zurueckstellen-button.component.spec.ts   |  5 +++--
 .../erledigen-button-container.component.html |  3 ++-
 ...ledigen-button-container.component.spec.ts |  5 +++--
 ...submit-wiedervorlage-button.component.html |  3 ++-
 ...reroeffnen-button-container.component.html |  3 ++-
 ...oeffnen-button-container.component.spec.ts |  5 +++--
 ...wiedervorlage-create-button.component.html |  3 ++-
 37 files changed, 89 insertions(+), 65 deletions(-)

diff --git a/alfa-client/libs/design-system/src/lib/tooltip/tooltip.component.ts b/alfa-client/libs/design-system/src/lib/tooltip/tooltip.component.ts
index f82fe2102c..a5e130fefe 100644
--- a/alfa-client/libs/design-system/src/lib/tooltip/tooltip.component.ts
+++ b/alfa-client/libs/design-system/src/lib/tooltip/tooltip.component.ts
@@ -29,7 +29,7 @@ import { TooltipPosition } from './tooltip.directive';
   selector: 'ods-tooltip',
   imports: [NgClass],
   template: `<span
-    class="tooltip fixed z-[100] max-w-md animate-fadeIn cursor-default break-words rounded bg-ozggray-900 px-3 py-2 text-sm text-whitetext before:absolute before:border-l-[0.5rem] before:border-r-[0.5rem] before:border-l-transparent before:border-r-transparent dark:bg-white md:max-w-[calc(90vw)]"
+    class="tooltip fixed z-[100] max-w-md animate-fadeIn cursor-default break-words rounded bg-ozggray-900 px-3 py-2 text-sm font-normal text-whitetext before:absolute before:border-l-[0.5rem] before:border-r-[0.5rem] before:border-l-transparent before:border-r-transparent dark:bg-white md:max-w-[calc(90vw)]"
     [ngClass]="class"
     [class.visible]="show"
     [class.invisible]="!show"
diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html
index c3a536b79e..6afe4a115c 100644
--- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html
+++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html
@@ -1,7 +1,8 @@
 @if (vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.FORWARD_BY_OZGCLOUD) {
   @if (showAsIconButton) {
     <ods-button-with-spinner
-      tooltip="Vorgang weiterleiten"
+      [tooltip]="'Vorgang weiterleiten'"
+      tooltipAriaType="aria-labelledby"
       variant="ghost"
       size="fit"
       dataTestId="forward-by-ozgcloud-icon-button"
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component.html b/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component.html
index 277390cf09..02bfb07f6e 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component.html
+++ b/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component.html
@@ -43,7 +43,8 @@
 
   <ozgcloud-stroked-button-with-spinner
     dataTestId="forward-button"
-    toolTip="Vorgang weiterleiten"
+    [toolTip]="'Vorgang weiterleiten'"
+    tooltipAriaType="aria-labelledby"
     icon="forward"
     type="submit"
     text="Weiterleiten"
diff --git a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html
index bf476f537b..0043c92cb7 100644
--- a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html
+++ b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.html
@@ -26,7 +26,8 @@
 @if (showAsIconButton) {
   <ods-button-with-spinner
     data-test-id="endgueltig-loeschen-icon-button"
-    tooltip="Endgültig löschen"
+    [tooltip]="'Endgültig löschen'"
+    tooltipAriaType="aria-labelledby"
     variant="ghost"
     size="fit"
     (clickEmitter)="endgueltigLoeschen.emit()"
diff --git a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.spec.ts b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.spec.ts
index 66d46e2f07..a2a4b7a68f 100644
--- a/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.spec.ts
+++ b/alfa-client/libs/loesch-anforderung/src/lib/endgueltig-loeschen-button-container/endgueltig-loeschen-button/endgueltig-loeschen-button.component.spec.ts
@@ -24,9 +24,9 @@
 import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { DeleteVorgangFinallyIconComponent } from '@ods/system';
+import { DeleteVorgangFinallyIconComponent, TooltipDirective } from '@ods/system';
 import { getDataTestIdOf } from 'libs/tech-shared/test/data-test';
-import { MockComponent } from 'ng-mocks';
+import { MockComponent, MockDirective } from 'ng-mocks';
 import { EndgueltigLoeschenButtonComponent } from './endgueltig-loeschen-button.component';
 
 describe('EndgueltigLoeschenButtonComponent', () => {
@@ -42,6 +42,7 @@ describe('EndgueltigLoeschenButtonComponent', () => {
         EndgueltigLoeschenButtonComponent,
         MockComponent(ButtonWithSpinnerComponent),
         MockComponent(DeleteVorgangFinallyIconComponent),
+        MockDirective(TooltipDirective),
       ],
     }).compileComponents();
 
diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html
index 3aee95356b..a4536cb3f2 100644
--- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html
+++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.html
@@ -27,7 +27,8 @@
   <ods-button-with-spinner
     [stateResource]="loeschAnforderungZuruecknehmenCommand"
     data-test-id="loesch-anforderung-zuruecknehmen-icon-button"
-    tooltip="Löschanforderung zurücknehmen"
+    [tooltip]="'Löschanforderung zurücknehmen'"
+    tooltipAriaType="aria-labelledby"
     variant="ghost"
     size="fit"
     (clickEmitter)="loeschAnforderungZuruecknehmen.emit()"
diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts
index f51d85f101..83c5f617a4 100644
--- a/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts
+++ b/alfa-client/libs/loesch-anforderung/src/lib/loesch-anforderung-zuruecknehmen-button-container/loesch-anforderung-zuruecknehmen-button/loesch-anforderung-zuruecknehmen-button.component.spec.ts
@@ -24,9 +24,9 @@
 import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { UndoRequestVorgangDeletionIconComponent } from '@ods/system';
+import { TooltipDirective, UndoRequestVorgangDeletionIconComponent } from '@ods/system';
 import { getDataTestIdOf } from 'libs/tech-shared/test/data-test';
-import { MockComponent } from 'ng-mocks';
+import { MockComponent, MockDirective } from 'ng-mocks';
 import { LoeschAnforderungZuruecknehmenButtonComponent } from './loesch-anforderung-zuruecknehmen-button.component';
 
 describe('LoeschAnforderungZuruecknehmenButtonComponent', () => {
@@ -42,6 +42,7 @@ describe('LoeschAnforderungZuruecknehmenButtonComponent', () => {
         LoeschAnforderungZuruecknehmenButtonComponent,
         MockComponent(ButtonWithSpinnerComponent),
         MockComponent(UndoRequestVorgangDeletionIconComponent),
+        MockDirective(TooltipDirective),
       ],
     }).compileComponents();
 
diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html b/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html
index 4a7cc9cb40..869474ca10 100644
--- a/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html
+++ b/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.html
@@ -27,7 +27,8 @@
   <ods-button-with-spinner
     [stateResource]="loeschenAnfordernCommand"
     data-test-id="loeschen-anfordern-icon-button"
-    tooltip="Löschen anfordern"
+    [tooltip]="'Löschen anfordern'"
+    tooltipAriaType="aria-labelledby"
     variant="ghost"
     size="fit"
     (clickEmitter)="loeschenAnfordern.emit()"
diff --git a/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.spec.ts b/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.spec.ts
index f859031baf..41d80aba2d 100644
--- a/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.spec.ts
+++ b/alfa-client/libs/loesch-anforderung/src/lib/loeschen-anfordern-button-container/loeschen-anfordern-button/loeschen-anfordern-button.component.spec.ts
@@ -24,9 +24,9 @@
 import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { RequestVorgangDeletionIconComponent } from '@ods/system';
+import { RequestVorgangDeletionIconComponent, TooltipDirective } from '@ods/system';
 import { getDataTestIdOf } from 'libs/tech-shared/test/data-test';
-import { MockComponent } from 'ng-mocks';
+import { MockComponent, MockDirective } from 'ng-mocks';
 import { LoeschenAnfordernButtonComponent } from './loeschen-anfordern-button.component';
 
 describe('LoeschenAnfordernButtonComponent', () => {
@@ -42,6 +42,7 @@ describe('LoeschenAnfordernButtonComponent', () => {
         LoeschenAnfordernButtonComponent,
         MockComponent(ButtonWithSpinnerComponent),
         MockComponent(RequestVorgangDeletionIconComponent),
+        MockDirective(TooltipDirective),
       ],
     }).compileComponents();
 
diff --git a/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html b/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html
index 440eb0b7fe..eff1422c21 100644
--- a/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html
+++ b/alfa-client/libs/postfach/src/lib/postfach-mail-button-container/postfach-mail-button/postfach-mail-button.component.html
@@ -29,7 +29,8 @@
     <ods-button
       dataTestId="send-mail-icon-button"
       [isLoading]="pendingSendPostfachMailCommand.resource | hasLink: commandLinkRel.UPDATE"
-      tooltip="Neue Nachricht erstellen"
+      [tooltip]="'Neue Nachricht erstellen'"
+      tooltipAriaType="aria-labelledby"
       variant="ghost"
       size="fit"
       (clickEmitter)="openPostfachNachrichtenDialog.emit()"
diff --git a/alfa-client/libs/postfach/src/lib/postfach-mail-list-container/postfach-mail-list/postfach-mail-list.component.html b/alfa-client/libs/postfach/src/lib/postfach-mail-list-container/postfach-mail-list/postfach-mail-list.component.html
index 18d2fef090..fc494741e5 100644
--- a/alfa-client/libs/postfach/src/lib/postfach-mail-list-container/postfach-mail-list/postfach-mail-list.component.html
+++ b/alfa-client/libs/postfach/src/lib/postfach-mail-list-container/postfach-mail-list/postfach-mail-list.component.html
@@ -28,13 +28,10 @@
   <alfa-postfach-mail-pdf-button-container
     [postfachMailListResource]="postfachMailListStateResource.resource"
   ></alfa-postfach-mail-pdf-button-container>
-  <ng-container
-    *ngIf="
-      postfachMailListStateResource.resource | hasLink: postfachMailListLinkRel.SEND_POSTFACH_MAIL
-    "
-  >
+  <ng-container *ngIf="postfachMailListStateResource.resource | hasLink: postfachMailListLinkRel.SEND_POSTFACH_MAIL">
     <alfa-postfach-mail-button-container
-      toolTip="Neue Nachricht erstellen"
+      [toolTip]="'Neue Nachricht erstellen'"
+      tooltipAriaType="aria-labelledby"
       [vorgang]="vorgangStateResource.resource"
       data-test-id="postfach-mail-button-container-no-label"
     ></alfa-postfach-mail-button-container>
@@ -44,8 +41,7 @@
 <ozgcloud-spinner [stateResource]="postfachMailListStateResource">
   <alfa-postfach-mail
     *ngFor="
-      let postfachMail of postfachMailListStateResource.resource
-        | toEmbeddedResources: postfachMailListLinkRel.POSTFACH_MAIL_LIST
+      let postfachMail of postfachMailListStateResource.resource | toEmbeddedResources: postfachMailListLinkRel.POSTFACH_MAIL_LIST
     "
     class="postfach"
     [vorgangStateResource]="vorgangStateResource"
@@ -56,10 +52,7 @@
 </ozgcloud-spinner>
 
 <ng-container
-  *ngIf="
-    postfachMailListStateResource.resource | hasLink: postfachMailListLinkRel.SEND_POSTFACH_MAIL;
-    else noPostfach
-  "
+  *ngIf="postfachMailListStateResource.resource | hasLink: postfachMailListLinkRel.SEND_POSTFACH_MAIL; else noPostfach"
 >
   <alfa-postfach-mail-button-container
     text="Nachricht"
@@ -69,7 +62,5 @@
 </ng-container>
 
 <ng-template #noPostfach>
-  <span class="no-postfach-text" data-test-id="no-postfach-text"
-    >Dieser Vorgang ist nicht mit einem Postfach verknüpft.</span
-  >
+  <span class="no-postfach-text" data-test-id="no-postfach-text">Dieser Vorgang ist nicht mit einem Postfach verknüpft.</span>
 </ng-template>
diff --git a/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html b/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html
index 24868baff4..81e091ce81 100644
--- a/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html
+++ b/alfa-client/libs/ui/src/lib/ui/back-button/back-button.component.html
@@ -23,8 +23,8 @@
     unter der Lizenz sind dem Lizenztext zu entnehmen.
 
 -->
-<a [routerLink]="linkTo" data-test-id="back-button" [tooltip]="label" tooltipAriaType="aria-labelledby" tabindex="-1">
-  <ods-button variant="ghost" size="fit">
+<a [routerLink]="linkTo" data-test-id="back-button" tabindex="-1">
+  <ods-button variant="ghost" size="fit" [tooltip]="label" tooltipAriaType="aria-labelledby">
     <ods-arrow-back-icon icon class="fill-text" />
   </ods-button>
 </a>
diff --git a/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.html b/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.html
index f0e6aa37b1..e1e8b8b763 100644
--- a/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.html
+++ b/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.html
@@ -26,7 +26,8 @@
 @if (vorgang | hasLink: linkRel.ASSIGN) {
   <ods-button-with-spinner
     svgIcon="account_outline"
-    tooltip="Bearbeiter zuordnen"
+    [tooltip]="'Bearbeiter zuordnen'"
+    tooltipAriaType="aria-labelledby"
     data-test-id="assign-user-profile-icon-button"
     variant="ghost"
     size="fit"
diff --git a/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.spec.ts b/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.spec.ts
index 531805961b..a99b9f0846 100644
--- a/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.spec.ts
+++ b/alfa-client/libs/user-profile/src/lib/assign-user-profile-button-container/assign-user-profile-button-container.component.spec.ts
@@ -27,9 +27,9 @@ import { UserProfileService } from '@alfa-client/user-profile-shared';
 import { VorgangHeaderLinkRel } from '@alfa-client/vorgang-shared';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { AccountCircleIconComponent } from '@ods/system';
+import { AccountCircleIconComponent, TooltipDirective } from '@ods/system';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
-import { MockComponent } from 'ng-mocks';
+import { MockComponent, MockDirective } from 'ng-mocks';
 import { AssignUserProfileButtonContainerComponent } from './assign-user-profile-button-container.component';
 
 describe('AssignUserProfileButtonContainerComponent', () => {
@@ -47,6 +47,7 @@ describe('AssignUserProfileButtonContainerComponent', () => {
         HasLinkPipe,
         MockComponent(ButtonWithSpinnerComponent),
         MockComponent(AccountCircleIconComponent),
+        MockDirective(TooltipDirective),
       ],
       providers: [
         {
diff --git a/alfa-client/libs/vorgang-detail/src/lib/aktenzeichen-editable/aktenzeichen-editable.component.html b/alfa-client/libs/vorgang-detail/src/lib/aktenzeichen-editable/aktenzeichen-editable.component.html
index e56be799f1..a90a52997e 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/aktenzeichen-editable/aktenzeichen-editable.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/aktenzeichen-editable/aktenzeichen-editable.component.html
@@ -30,7 +30,8 @@
       class="absolute -top-2"
       variant="ghost"
       size="fit"
-      tooltip="Aktenzeichen bearbeiten"
+      [tooltip]="'Aktenzeichen bearbeiten'"
+      tooltipAriaType="aria-labelledby"
       data-test-id="aktenzeichen-editieren"
       (clickEmitter)="onEdit()"
     >
diff --git a/alfa-client/libs/vorgang-detail/src/lib/aktenzeichen-editable/aktenzeichen-editable.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/aktenzeichen-editable/aktenzeichen-editable.component.spec.ts
index 11982ed180..c930351baf 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/aktenzeichen-editable/aktenzeichen-editable.component.spec.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/aktenzeichen-editable/aktenzeichen-editable.component.spec.ts
@@ -27,10 +27,10 @@ import { DialogService } from '@alfa-client/ui';
 import { VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared';
 import { AktenzeichenComponent } from '@alfa-client/vorgang-shared-ui';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { ButtonComponent, EditIconComponent } from '@ods/system';
+import { ButtonComponent, EditIconComponent, TooltipDirective } from '@ods/system';
 import { getDataTestIdOf } from 'libs/tech-shared/test/data-test';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
-import { MockComponent } from 'ng-mocks';
+import { MockComponent, MockDirective } from 'ng-mocks';
 import { AktenzeichenEditDialogComponent } from '../aktenzeichen-edit-dialog/aktenzeichen-edit-dialog.component';
 import { AktenzeichenEditableComponent } from './aktenzeichen-editable.component';
 
@@ -50,6 +50,7 @@ describe('AktenzeichenComponent', () => {
         MockComponent(ButtonComponent),
         MockComponent(EditIconComponent),
         MockComponent(AktenzeichenComponent),
+        MockDirective(TooltipDirective),
       ],
       providers: [
         {
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html
index 758515c533..0188a0a906 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.html
@@ -29,7 +29,8 @@
     <ods-button-with-spinner
       [stateResource]="commandStateResource$ | async"
       dataTestId="abschliessen-icon-button"
-      tooltip="Vorgang abschließen"
+      [tooltip]="'Vorgang abschließen'"
+      tooltipAriaType="aria-labelledby"
       variant="ghost"
       size="fit"
       (clickEmitter)="abschliessen()"
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.spec.ts
index a7334741a0..599cf99c8d 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.spec.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/abschliessen-button/abschliessen-button.component.spec.ts
@@ -27,11 +27,11 @@ import { mock } from '@alfa-client/test-utils';
 import { VorgangCommandService, VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { CheckIconComponent } from '@ods/system';
+import { CheckIconComponent, TooltipDirective } from '@ods/system';
 import { createCommandResource } from 'libs/command-shared/test/command';
 import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
-import { MockComponent } from 'ng-mocks';
+import { MockComponent, MockDirective } from 'ng-mocks';
 import { Observable, of } from 'rxjs';
 import { AbschliessenButtonComponent } from './abschliessen-button.component';
 
@@ -53,6 +53,7 @@ describe('AbschliessenButtonComponent', () => {
         AbschliessenButtonComponent,
         MockComponent(ButtonWithSpinnerComponent),
         MockComponent(CheckIconComponent),
+        MockDirective(TooltipDirective),
         HasLinkPipe,
       ],
       providers: [
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html
index 7e55b9639e..f643340a8a 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.html
@@ -28,7 +28,8 @@
     <ods-button-with-spinner
       [stateResource]="commandStateResource$ | async"
       (clickEmitter)="annehmen()"
-      tooltip="Vorgang annehmen"
+      [tooltip]="'Vorgang annehmen'"
+      tooltipAriaType="aria-labelledby"
       variant="ghost"
       size="fit"
       dataTestId="annehmen-icon-button"
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts
index 0b4059086f..f9798f26d3 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/annehmen-button/annehmen-button.component.spec.ts
@@ -31,7 +31,7 @@ import { CheckCircleIconComponent, TooltipDirective } from '@ods/system';
 import { createCommandResource } from 'libs/command-shared/test/command';
 import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
-import { MockComponent } from 'ng-mocks';
+import { MockComponent, MockDirective } from 'ng-mocks';
 import { of } from 'rxjs';
 import { AnnehmenButtonComponent } from './annehmen-button.component';
 
@@ -52,9 +52,9 @@ describe('AnnehmenButtonComponent', () => {
       declarations: [
         AnnehmenButtonComponent,
         HasLinkPipe,
-        TooltipDirective,
         MockComponent(ButtonWithSpinnerComponent),
         MockComponent(CheckCircleIconComponent),
+        MockDirective(TooltipDirective),
       ],
       providers: [
         {
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html
index 107e3f67c2..46880b0531 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.html
@@ -29,7 +29,8 @@
     <ods-button-with-spinner
       [stateResource]="commandStateResource$ | async"
       dataTestId="bearbeiten-icon-button"
-      tooltip="Vorgang bearbeiten"
+      [tooltip]="'Vorgang bearbeiten'"
+      tooltipAriaType="aria-labelledby"
       variant="ghost"
       size="fit"
       (clickEmitter)="bearbeiten()"
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.spec.ts
index 9691ba2813..382edfc27f 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.spec.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bearbeiten-button/bearbeiten-button.component.spec.ts
@@ -26,11 +26,11 @@ import { mock } from '@alfa-client/test-utils';
 import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { EditIconComponent } from '@ods/system';
+import { EditIconComponent, TooltipDirective } from '@ods/system';
 import { createCommandResource } from 'libs/command-shared/test/command';
 import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
-import { MockComponent } from 'ng-mocks';
+import { MockComponent, MockDirective } from 'ng-mocks';
 import { of } from 'rxjs';
 import { BearbeitenButtonComponent } from './bearbeiten-button.component';
 
@@ -52,6 +52,7 @@ describe('BearbeitenButtonComponent', () => {
         BearbeitenButtonComponent,
         MockComponent(ButtonWithSpinnerComponent),
         MockComponent(EditIconComponent),
+        MockDirective(TooltipDirective),
         HasLinkPipe,
       ],
       providers: [
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html
index 32924b770f..b3464f415e 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/bescheiden-button/bescheiden-button.component.html
@@ -29,6 +29,7 @@
       [stateResource]="commandStateResource$ | async"
       (clickEmitter)="bescheiden()"
       [tooltip]="toolTipText"
+      tooltipAriaType="aria-labelledby"
       variant="ghost"
       size="fit"
       data-test-id="bescheiden-icon-button"
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html
index 784ddfbbf3..0c3fa80c34 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.html
@@ -28,7 +28,8 @@
     <ods-button-with-spinner
       [stateResource]="commandStateResource$ | async"
       dataTestId="verwerfen-icon-button"
-      tooltip="Vorgang verwerfen"
+      [tooltip]="'Vorgang verwerfen'"
+      tooltipAriaType="aria-labelledby"
       variant="ghost"
       size="fit"
       (clickEmitter)="verwerfen()"
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.spec.ts
index 75b739a230..32e09c8c15 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.spec.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/verwerfen-button/verwerfen-button.component.spec.ts
@@ -26,11 +26,11 @@ import { mock } from '@alfa-client/test-utils';
 import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { DiscardVorgangIconComponent } from '@ods/system';
+import { DiscardVorgangIconComponent, TooltipDirective } from '@ods/system';
 import { createCommandResource } from 'libs/command-shared/test/command';
 import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
-import { MockComponent } from 'ng-mocks';
+import { MockComponent, MockDirective } from 'ng-mocks';
 import { of } from 'rxjs';
 import { VerwerfenButtonComponent } from './verwerfen-button.component';
 
@@ -52,6 +52,7 @@ describe('VerwerfenButtonComponent', () => {
         VerwerfenButtonComponent,
         MockComponent(ButtonWithSpinnerComponent),
         MockComponent(DiscardVorgangIconComponent),
+        MockDirective(TooltipDirective),
         HasLinkPipe,
       ],
       providers: [
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html
index 0e3bba543b..803643eefd 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html
@@ -28,7 +28,8 @@
     <ods-button-with-spinner
       [stateResource]="commandStateResource$ | async"
       dataTestId="wiedereroeffnen-icon-button"
-      tooltip="Vorgang wiedereröffnen"
+      [tooltip]="'Vorgang wiedereröffnen'"
+      tooltipAriaType="aria-labelledby"
       variant="ghost"
       size="fit"
       (clickEmitter)="wiedereroeffnen()"
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts
index a522800052..9ab9c207ac 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts
@@ -26,11 +26,11 @@ import { mock } from '@alfa-client/test-utils';
 import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { UndoIconComponent } from '@ods/system';
+import { TooltipDirective, UndoIconComponent } from '@ods/system';
 import { createCommandResource } from 'libs/command-shared/test/command';
 import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
-import { MockComponent } from 'ng-mocks';
+import { MockComponent, MockDirective } from 'ng-mocks';
 import { of } from 'rxjs';
 import { WiedereroeffnenButtonComponent } from './wiedereroeffnen-button.component';
 
@@ -52,6 +52,7 @@ describe('WiedereroeffnenButtonComponent', () => {
         HasLinkPipe,
         MockComponent(ButtonWithSpinnerComponent),
         MockComponent(UndoIconComponent),
+        MockDirective(TooltipDirective),
       ],
       providers: [
         {
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html
index d2ac600887..8ee807e663 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html
@@ -30,7 +30,8 @@
       dataTestId="zurueckholen-icon-button"
       variant="ghost"
       size="fit"
-      tooltip="Vorgang zurückholen"
+      [tooltip]="'Vorgang zurückholen'"
+      tooltipAriaType="aria-labelledby"
       (clickEmitter)="zurueckholen()"
     >
       <ods-undo-icon icon class="fill-text" />
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts
index f91b5423f7..80f81d1d5d 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts
@@ -26,11 +26,11 @@ import { mock } from '@alfa-client/test-utils';
 import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { UndoIconComponent } from '@ods/system';
+import { TooltipDirective, UndoIconComponent } from '@ods/system';
 import { createCommandResource } from 'libs/command-shared/test/command';
 import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
-import { MockComponent } from 'ng-mocks';
+import { MockComponent, MockDirective } from 'ng-mocks';
 import { of } from 'rxjs';
 import { ZurueckholenButtonComponent } from './zurueckholen-button.component';
 
@@ -53,6 +53,7 @@ describe('ZurueckholenButtonComponent', () => {
         HasLinkPipe,
         MockComponent(ButtonWithSpinnerComponent),
         MockComponent(UndoIconComponent),
+        MockDirective(TooltipDirective),
       ],
       providers: [
         {
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html
index 843b20963e..d87c88a1a7 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html
@@ -29,7 +29,8 @@
     <ods-button-with-spinner
       [stateResource]="commandStateResource$ | async"
       dataTestId="zurueckstellen-icon-button"
-      tooltip="Vorgang zurückstellen"
+      [tooltip]="'Vorgang zurückstellen'"
+      tooltipAriaType="aria-labelledby"
       variant="ghost"
       size="fit"
       (clickEmitter)="zurueckstellen()"
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts
index 4f9a74edc4..51f20cf81b 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts
@@ -26,11 +26,11 @@ import { mock } from '@alfa-client/test-utils';
 import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { UndoIconComponent } from '@ods/system';
+import { TooltipDirective, UndoIconComponent } from '@ods/system';
 import { createCommandResource } from 'libs/command-shared/test/command';
 import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
-import { MockComponent } from 'ng-mocks';
+import { MockComponent, MockDirective } from 'ng-mocks';
 import { of } from 'rxjs';
 import { ZurueckstellenButtonComponent } from './zurueckstellen-button.component';
 
@@ -53,6 +53,7 @@ describe('ZurueckstellenButtonComponent', () => {
         HasLinkPipe,
         MockComponent(ButtonWithSpinnerComponent),
         MockComponent(UndoIconComponent),
+        MockDirective(TooltipDirective),
       ],
       providers: [
         {
diff --git a/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.html b/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.html
index 71fb146636..49f1ca7b95 100644
--- a/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.html
+++ b/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.html
@@ -27,7 +27,8 @@
   <ods-button-with-spinner
     dataTestId="erledigen-icon-button"
     [stateResource]="erledigenCommand$ | async"
-    tooltip="Als erledigt markieren"
+    [tooltip]="'Als erledigt markieren'"
+    tooltipAriaType="aria-labelledby"
     variant="ghost"
     size="fit"
     (clickEmitter)="erledigen()"
diff --git a/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.spec.ts b/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.spec.ts
index 81eec11065..f87fc191ba 100644
--- a/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.spec.ts
+++ b/alfa-client/libs/wiedervorlage/src/lib/erledigen-button-container/erledigen-button-container.component.spec.ts
@@ -26,10 +26,10 @@ import { mock } from '@alfa-client/test-utils';
 import { WiedervorlageLinkRel, WiedervorlageService } from '@alfa-client/wiedervorlage-shared';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { CheckCircleIconComponent } from '@ods/system';
+import { CheckCircleIconComponent, TooltipDirective } from '@ods/system';
 import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test';
 import { createWiedervorlageResource } from 'libs/wiedervorlage-shared/test/wiedervorlage';
-import { MockComponent } from 'ng-mocks';
+import { MockComponent, MockDirective } from 'ng-mocks';
 import { ErledigenButtonContainerComponent } from './erledigen-button-container.component';
 
 describe('ErledigenButtonContainerComponent', () => {
@@ -47,6 +47,7 @@ describe('ErledigenButtonContainerComponent', () => {
         HasLinkPipe,
         MockComponent(ButtonWithSpinnerComponent),
         MockComponent(CheckCircleIconComponent),
+        MockDirective(TooltipDirective),
       ],
       providers: [
         {
diff --git a/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.html b/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.html
index 322b831307..c0d873accc 100644
--- a/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.html
+++ b/alfa-client/libs/wiedervorlage/src/lib/submit-wiedervorlage-button/submit-wiedervorlage-button.component.html
@@ -26,7 +26,8 @@
 @if (showAsIconButton) {
   <ods-button-with-spinner
     [stateResource]="submitInProgress$ | async"
-    tooltip="Wiedervorlage speichern"
+    [tooltip]="'Wiedervorlage speichern'"
+    tooltipAriaType="aria-labelledby"
     variant="ghost"
     size="fit"
     (clickEmitter)="submit()"
diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.html b/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.html
index 12ccae7d16..89e6c8cfe1 100644
--- a/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.html
+++ b/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.html
@@ -27,7 +27,8 @@
   <ods-button-with-spinner
     data-test-id="wiedereroeffnen-icon-button"
     [stateResource]="wiedereroeffnenCommand$ | async"
-    tooltip="Als offen markieren"
+    [tooltip]="'Als offen markieren'"
+    tooltipAriaType="aria-labelledby"
     variant="ghost"
     size="fit"
     (clickEmitter)="wiedereroeffnen()"
diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.spec.ts b/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.spec.ts
index af8e1281a0..c80ebee942 100644
--- a/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.spec.ts
+++ b/alfa-client/libs/wiedervorlage/src/lib/wiedereroeffnen-button-container/wiedereroeffnen-button-container.component.spec.ts
@@ -26,9 +26,9 @@ import { mock } from '@alfa-client/test-utils';
 import { WiedervorlageLinkRel, WiedervorlageService } from '@alfa-client/wiedervorlage-shared';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { CheckCircleIconComponent } from '@ods/system';
+import { CheckCircleIconComponent, TooltipDirective } from '@ods/system';
 import { createWiedervorlageResource } from 'libs/wiedervorlage-shared/test/wiedervorlage';
-import { MockComponent } from 'ng-mocks';
+import { MockComponent, MockDirective } from 'ng-mocks';
 import { WiedereroeffnenButtonContainerComponent } from './wiedereroeffnen-button-container.component';
 
 describe('WiedereroeffnenButtonContainerComponent', () => {
@@ -46,6 +46,7 @@ describe('WiedereroeffnenButtonContainerComponent', () => {
         HasLinkPipe,
         MockComponent(ButtonWithSpinnerComponent),
         MockComponent(CheckCircleIconComponent),
+        MockDirective(TooltipDirective),
       ],
       providers: [
         {
diff --git a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.html b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.html
index c37de121c8..6fde7ac98e 100644
--- a/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.html
+++ b/alfa-client/libs/wiedervorlage/src/lib/wiedervorlage-list-in-vorgang-container/wiedervorlage-list-in-vorgang/wiedervorlage-create-button/wiedervorlage-create-button.component.html
@@ -32,7 +32,8 @@
           data-test-id="create-wiedervorlage-icon-button"
           variant="ghost"
           size="fit"
-          tooltip="Wiedervorlage erstellen"
+          [tooltip]="'Wiedervorlage erstellen'"
+          tooltipAriaType="aria-labelledby"
         >
           <ods-update-icon icon class="fill-text" />
         </ods-button-with-spinner>
-- 
GitLab