GitHub Issue #899: App save grid view in subfolder overrides inherited default - #7974
Merged
Conversation
…view when target folder provided
…view when target folder provided
…r, add EditSharedViewPermission container check, move "save a new private view" check up
labkey-nicka
approved these changes
Aug 25, 2026
| else | ||
| view = queryDef.getCustomView(owner, getViewContext().getRequest(), name); | ||
|
|
||
| // GitHub Issue #899: the lookups above also resolve views inherited from ancestor folders. Absent an explicit |
Contributor
There was a problem hiding this comment.
The comment at the top of this function is right. "Uck.".
| // GitHub Issue #899: getCustomView() also resolves views inherited from ancestor folders. Absent an explicit | ||
| // target folder, shadow that view with a new local one instead of rewriting (and un-inheriting) the ancestor's. | ||
| CustomView inheritedView = null; | ||
| if (existingView != null && !inheritToTargetContainer && existingView.getContainer() != null |
Contributor
There was a problem hiding this comment.
nit: Seems like some logical consolidation is in order with aligned logic in saveCustomView().
cnathe
added a commit
to LabKey/labkey-ui-components
that referenced
this pull request
Aug 26, 2026
…d default (#2066) #### Rationale LabKey/internal-issues#899 Saving a grid view from a subfolder currently resolves the view inherited from an ancestor folder, edits it in place, and then on save relocates it — so the subfolder save destroys the parent's inherited default. The fix threads a new explicitTargetContainer flag through both save actions: unless the caller explicitly named a target folder, an ancestor-owned view found by the lookup is discarded so a new local view shadows it instead. On the client, SaveViewModal stops offering/sending inherit outside the app home folder, and reads inherit/shared off the new server-supplied shadowed sub-object (a session view is never itself shared or inheritable, so its own flags were always wrong defaults). #### Related Pull Requests - LabKey/platform#7974 - #2066 - LabKey/limsModules#2427 - LabKey/testAutomation#3172 #### Changes - Save grid view fix for tracking the shadow view properties when saving session view
cnathe
added a commit
to LabKey/testAutomation
that referenced
this pull request
Aug 26, 2026
…d default- #7974 (#3172) ## Rationale LabKey/internal-issues#899 See related PRs for rationale. This PR fixes some test cases related to the save view modal and adds a new test case to CustomizeViewTest for the subfolder scenario. ## Related Pull Requests - LabKey/platform#7974 - LabKey/labkey-ui-components#2066 - LabKey/limsModules#2427 ## Changes - GridPanelViewTest fixes for the shared view setting in save modal - new CustomizeViewTest test case
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.
Rationale
https://github.com/LabKey/internal-issues/issues/899
Saving a grid view from a subfolder currently resolves the view inherited from an ancestor folder, edits it in place, and then on save relocates it — so the subfolder save destroys the parent's inherited default. The fix threads a new explicitTargetContainer flag through both save actions: unless the caller explicitly named a target folder, an ancestor-owned view found by the lookup is discarded so a new local view shadows it instead. On the client, SaveViewModal stops offering/sending inherit outside the app home folder, and reads inherit/shared off the new server-supplied shadowed sub-object (a session view is never itself shared or inheritable, so its own flags were always wrong defaults).
Related Pull Requests
Changes