VariantManagement / FilterBar: ::backdrop remains in top layer after dialog is closed, freezing the page
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 56/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- Active
- Stack technique
- react, typescript
- Domaine
- frontend
Piste de recherche
Start by tracing how the VariantManagement and FilterBar dialogs mount and close, then inspect the ui5-dialog cleanup path, especially disconnectedCallback and onExitDOM. Reproduce the stuck backdrop with the listed steps, including React StrictMode; done means closing or unmounting the dialog removes the backdrop and leaves the page interactive.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Describe the bug
When a ui5-dialog inside VariantManagement (Save As) or FilterBar (Adapt Filters) is closed by toggling React state to false, the ::backdrop pseudo-element remains stranded in the browser's top layer. The dialog disappears visually but the backdrop persists as a semi-transparent black overlay blocking all pointer events. Only pressing Escape or refreshing the page recovers it.
(React version: 18.2.0)
Isolated Example
No response
Reproduction steps
VariantManagement:
- Render a component with at least one variant item
- Click the dropdown arrow to open the variant menu
- Click "Save As" to open the Save As dialog
- Enter a name and click Save
- The dialog closes — but the
::backdropremains and the page is unresponsive
FilterBar:
- Render a with at least one
- Click the "Adapt Filters" button — the FilterDialog opens
- Click Save (or Cancel)
- The dialog closes — but the
::backdropremains and the page is unresponsive
Note: With React 18 StrictMode enabled, the backdrop can get stuck on the very first open of either dialog, before any save action, due to the mount → unmount → remount double-cycle triggering disconnectedCallback without hidePopover().
Root cause observed in source:
Both components close dialogs by setting React state to false (setSaveAsDialogOpen(false) / setDialogOpen(false)), which unmounts the ui5-dialog directly. This triggers disconnectedCallback → onExitDOM, but onExitDOM never calls hidePopover(). The ::backdrop added by showPopover() on mount has no corresponding cleanup on unmount.
Expected Behaviour
When ui5-dialog is unmounted or closed, the ::backdrop is removed from the browser top layer and the page remains fully interactive.
Screenshots or Videos
UI5 Web Components for React Version
2.24.1
UI5 Web Components Version
2.24.0
Browser
Chrome, Safari, Firefox
Operating System
macOS
Additional Context
We attempted a workaround of explicitly calling Reflect.set(dialogElement, 'open', false) before the React state update that triggers the unmount, to force closePopup() while isConnected is still true. This did not consistently resolve the issue.
Relevant log output
Organization
No response
Declaration
- I’m not disclosing any internal or sensitive information.
- Langage dominant
- TypeScript
- Étoiles
- 541
- Forks
- 114
- Merge moyen
- 20 h 22 min
- PR mergées (30 j)
- 78
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de UI5/webcomponents-react
-
ObjectPage: tabIndex=0 set on first ObjectPageSection even for single-section layout causing WCAG 2.1.1 keyboard accessibility violationPeut-être pris @GerganaKremenska l’a pris aujourd’hui. Ouverte
UI5/webcomponents-react#9080 · 2 commentaires · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
UI5/webcomponents-react#9069 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 20/100
UI5/webcomponents-react#8529 ·
Les mainteneurs répondent en général sous 1 jour
-
Design Pending SAP SF
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
UI5/webcomponents-react#8158 · 1 commentaire · 1 réaction ·
Les mainteneurs répondent en général sous 1 jour
-
a11y Design Pending
Difficulté 3/5 1-2 jours Accessibilité débutants 35/100
UI5/webcomponents-react#7582 · 4 commentaires ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de UI5/webcomponents-react
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 83/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 1-3 heures Accessibilité débutants 72/100
zts212653/clowder-ai#1678 ·
Les mainteneurs répondent en général sous 1 jour
-
good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 64/100
Progressive-Victory/the-website#680 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100