From bb47c3696c2d82bebaa82223a34892c8928c693b Mon Sep 17 00:00:00 2001 From: Carlos Santos <4a.santos@gmail.com> Date: Tue, 21 Oct 2025 19:10:27 +0200 Subject: [PATCH] ov-components: Configures root injection for overlay Configures root injection for the CDK overlay container. This ensures the overlay container is properly initialized and available throughout the application. It also makes the overlay available application wide and solves the problem of injecting multiple instances. --- .../src/lib/config/custom-cdk-overlay.ts | 4 +++- .../src/lib/openvidu-components-angular.module.ts | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/config/custom-cdk-overlay.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/config/custom-cdk-overlay.ts index 57d1499db..56567c925 100644 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/config/custom-cdk-overlay.ts +++ b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/config/custom-cdk-overlay.ts @@ -1,7 +1,9 @@ import { OverlayContainer } from '@angular/cdk/overlay'; import { Injectable } from '@angular/core'; -@Injectable() +@Injectable({ + providedIn: 'root' +}) export class CdkOverlayContainer extends OverlayContainer { private readonly cdkContainerClass: string = '.cdk-overlay-container'; private defaultSelector = 'body'; diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/openvidu-components-angular.module.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/openvidu-components-angular.module.ts index e531e4afe..fd6ee2346 100644 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/openvidu-components-angular.module.ts +++ b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/openvidu-components-angular.module.ts @@ -38,7 +38,7 @@ export class OpenViduComponentsModule { BroadcastingService, // CaptionService, CdkOverlayContainer, - { provide: OverlayContainer, useClass: CdkOverlayContainer }, + { provide: OverlayContainer, useExisting: CdkOverlayContainer }, ChatService, DeviceService, DocumentService,