Do not move overlay element out of its place#16989
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Introduces an opt-in keepInPlace flag for OverlaySettings to prevent overlay content from being moved to a centralized overlay container, and begins deprecating OverlaySettings.outlet in favor of the new behavior.
Changes:
- Added
keepInPlace?: booleantoOverlaySettingsand implemented in-place wrapping/unwrapping logic inIgxOverlayService. - Deprecated
OverlaySettings.outletand updated multiple feature READMEs + changelog to document the new option. - Updated grid/pivot-grid filtering overlay settings and adjusted dialog/overlay tests to account for in-place wrapping behavior.
Reviewed changes
Copilot reviewed 14 out of 14 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| projects/igniteui-angular/core/src/services/overlay/utilities.ts | Adds keepInPlace to OverlaySettings; marks outlet as deprecated. |
| projects/igniteui-angular/core/src/services/overlay/overlay.ts | Implements in-place wrapping path for overlays + cleanup changes. |
| projects/igniteui-angular/core/src/services/overlay/overlay.spec.ts | Adds unit tests validating keep-in-place wrapping/unwrapping and mixed modes. |
| projects/igniteui-angular/grids/grid/src/grid-base.directive.ts | Sets keepInPlace on grid filter and advanced filtering overlay settings. |
| projects/igniteui-angular/grids/pivot-grid/src/pivot-grid.component.ts | Sets keepInPlace on pivot grid ESF filter overlay settings. |
| projects/igniteui-angular/directives/src/directives/toggle/toggle.directive.ts | Defaults toggle attach to { keepInPlace: true, ...overlaySettings }. |
| projects/igniteui-angular/dialog/src/dialog/dialog.component.spec.ts | Updates assertions to locate wrapper within the component host when in-place wrapping is used. |
| projects/igniteui-angular/core/src/services/overlay/README.md | Documents keepInPlace and deprecates outlet in docs. |
| projects/igniteui-angular/core/src/services/overlay/position/README.md | Notes outlet deprecation in positioning docs. |
| projects/igniteui-angular/drop-down/src/drop-down/autocomplete/README.md | Updates autocomplete overlay settings docs; notes outlet deprecation. |
| projects/igniteui-angular/directives/src/directives/toggle/README.md | Deprecates igxToggleOutlet docs and adds keepInPlace guidance. |
| projects/igniteui-angular/date-picker/src/date-picker/README.md | Marks date-picker outlet as deprecated in docs. |
| projects/igniteui-angular/date-picker/src/date-range-picker/README.md | Marks date-range-picker outlet as deprecated in docs. |
| CHANGELOG.md | Adds an entry for the new keepInPlace feature and outlet deprecation. |
projects/igniteui-angular/core/src/services/overlay/utilities.ts
Outdated
Show resolved
Hide resolved
projects/igniteui-angular/core/src/services/overlay/position/README.md
Outdated
Show resolved
Hide resolved
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
https://github.com/IgniteUI/igniteui-angular into mvenkov/do-not-move-overlay-element-from-its-position
1b73b1b to
73ce1fa
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Closes #16825
With this PR we are introducing
keepInPlaceproperty inOverlaySettings. When set totrueoverlay will not move the element to be shown out of its position. Instead the element will be wrapped in a content element and in a wrapper element. The new property default value isfalseto keep the current behavior.With this PR we also deprecate the
outletproperty ofOverlaySettings. This is not needed anymore as overlay element could be kept in its original position via the newkeepInPlaceproperty.Next steps:
outlet.keepInPlacedefault value true and deprecate it.keepInPlaceand always keep the overlay element at its original position.Additional information (check all that apply):
Checklist:
feature/README.MDupdates for the feature docsREADME.MDCHANGELOG.MDupdates for newly added functionalityng updatemigrations for the breaking changes (migrations guidelines)