refactor: extract overlay auto add controller #7028
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is another attempt at extracting common behavior for automatically adding overlay-based components to the UI. The previous PR (#6620) slightly modified the auto-removal behavior by running it in
beforeClientResponse
. That in turn caused a regression inDialog
, so the previous PR was reverted.The reason for delaying the auto-close behavior was that:
opened
property change listener inOverlayAutoAddController
runs first and removes the component from the UIConfirmDialog
that can be a problem because clicking confirm / cancel buttons closes the dialog from the client (opened
property change) and also sends confirm / cancel events which are then not be processedAs an alternative, this PR changes
ConfirmDialog
to:opened
property from client to serveropened-changed
listener to change theopened
property on the serveropened-changed
listener removes the component from the UI - the UI check only happens once before running all listenersopened-changed
also auto-removed the component