This is an automated email from the ASF dual-hosted git repository. ahuber pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/causeway.git
commit d73693243389491890c82791c0a008ca0a6ff379 Merge: d610794e6ee 0261c85fc24 Author: Andi Huber <[email protected]> AuthorDate: Wed Mar 4 14:28:26 2026 +0100 Merge pull request #3426 from apache/3971-layout.switching CAUSEWAY-3971: Switching between Layout Variants may result in Members staying hidden .../applib/layout/grid/bootstrap/BSGrid.java | 4 +- .../applib/layout/grid/bootstrap/BSUtil.java | 122 ++++++++ .../mixins/layout/Object_downloadLayout.java | 22 +- .../causeway/applib/services/grid/GridService.java | 14 +- .../applib/services/layout/LayoutService.java | 13 +- .../commons/internal/collections/_Maps.java | 46 +++ .../commons/internal/collections/_Multimaps.java | 15 +- .../causeway/core/metamodel/facetapi/Facet.java | 1 - .../core/metamodel/facetapi/FacetHolder.java | 38 +-- .../metamodel/facetapi/FacetHolderLayered.java | 63 ++-- .../core/metamodel/facetapi/FacetHolderSimple.java | 73 +---- .../core/metamodel/facetapi/FacetRank.java | 140 +++++++++ .../core/metamodel/facetapi/FacetRanking.java | 235 +++++---------- .../core/metamodel/facetapi/FacetUtil.java | 64 ++-- .../core/metamodel/facetapi/HasFacetHolder.java | 4 +- .../core/metamodel/facetapi/QualifiedFacet.java | 60 ++++ .../core/metamodel/facetapi/TypedFacetRanking.java | 267 +++++++++++++++++ .../ActionPositionFacetForActionLayoutXml.java | 27 +- .../layout/CssClassFacetForActionLayoutXml.java | 26 +- .../actions/layout/FaFacetForActionLayoutXml.java | 26 +- .../layout/HiddenFacetForActionLayoutXml.java | 31 +- .../MemberDescribedFacetForActionLayoutXml.java | 27 +- .../layout/MemberNamedFacetForActionLayoutXml.java | 29 +- .../CssClassFacetForCollectionLayoutXml.java | 28 +- .../DefaultViewFacetForCollectionLayoutXml.java | 29 +- .../layout/HiddenFacetForCollectionLayoutXml.java | 31 +- ...MemberDescribedFacetForCollectionLayoutXml.java | 28 +- .../MemberNamedFacetForCollectionLayoutXml.java | 28 +- .../layout/PagedFacetForCollectionLayoutXml.java | 28 +- .../SortedByFacetForCollectionLayoutXml.java | 34 ++- .../TableDecoratorFacetForCollectionLayoutXml.java | 26 +- .../layout/group/LayoutGroupFacetForLayoutXml.java | 29 +- .../layout/order/LayoutOrderFacetForLayoutXml.java | 23 +- ...ookmarkPolicyFacetForDomainObjectLayoutXml.java | 27 +- .../CssClassFacetForDomainObjectLayoutXml.java | 26 +- ...ObjectLayoutAnnotationUsingCssClassUiEvent.java | 17 +- .../FaFacetForDomainObjectLayoutXml.java | 27 +- ...mainObjectLayoutAnnotationUsingIconUiEvent.java | 10 +- ...jectDescribedFacetForDomainObjectLayoutXml.java | 26 +- .../ObjectNamedFacetForDomainObjectLayoutXml.java | 27 +- ...ainObjectLayoutAnnotationUsingTitleUiEvent.java | 26 +- ...ableDecoratorFacetForDomainObjectLayoutXml.java | 26 +- .../metamodel/facets/object/grid/BSGridFacet.java | 12 +- .../object/promptStyle/PromptStyleFacet.java | 43 ++- .../CssClassFacetForPropertyLayoutXml.java | 29 +- .../HiddenFacetForPropertyLayoutXml.java | 33 ++- .../LabelAtFacetForPropertyLayoutXml.java | 28 +- .../MemberDescribedFacetForPropertyLayoutXml.java | 28 +- .../MemberNamedFacetForPropertyLayoutXml.java | 30 +- .../MultiLineFacetForPropertyLayoutXml.java | 31 +- .../RenderedAdjustedFacetForPropertyLayoutXml.java | 28 +- .../TypicalLengthFacetForPropertyLayoutXml.java | 28 +- .../UnchangingFacetForPropertyLayoutXml.java | 30 +- .../core/metamodel/services/grid/GridLoader.java | 5 +- .../services/grid/GridServiceDefault.java | 10 +- .../services/grid/ObjectMemberResolverForGrid.java | 325 ++------------------- .../grid/XmlLayoutRespectingFacetInstaller.java | 314 ++++++++++++++++++++ .../services/layout/LayoutServiceDefault.java | 62 ++-- ...udeAnnotationEnforcesMetamodelContribution.java | 13 +- .../causeway/core/metamodel/util/Facets.java | 30 +- .../objects/ObjectActionLayoutXmlDefaultTest.java | 6 +- .../metamodel/services/grid/Bar-simple.layout.xml | 37 +++ .../causeway/core/metamodel/services/grid/Bar.java | 33 +++ .../services/grid/GridCache_resourceNameTest.java | 11 +- .../metamodel/services/grid/GridLoadingTest.java | 2 +- .../services/grid/LayoutSwitchingTest.java | 177 +++++++++++ .../spec/impl/OneToManyAssociationDefaultTest.java | 3 +- .../bootstrap/MenuBarsServiceBootstrap.java | 33 +-- .../menubars/bootstrap/MenuBarsServiceBSTest.java | 1 - .../ui/components/ScalarPanelAbstractLegacy.java | 7 +- .../viewer/commons/model/layout/UiGridLayout.java | 7 +- .../resources/DomainObjectResourceServerside.java | 25 +- .../attributes/AttributeModelChangeListener.java | 5 +- .../ui/components/attributes/AttributePanel.java | 59 ++-- ...lChangeListener.java => HasAttributeModel.java} | 16 +- .../parented/ParentedCollectionPanel.java | 41 ++- .../ui/components/layout/bs/BSGridPanel.java | 13 +- .../components/layout/bs/BSGridPanelFactory.java | 14 +- .../wicket/ui/components/layout/bs/col/Col.java | 37 +-- ...RepeatingViewWithDynamicallyVisibleContent.java | 25 +- .../wicket/ui/components/layout/bs/row/Row.java | 35 +-- .../components/layout/bs/tabs/TabGroupPanel.java | 70 ++--- .../ui/components/layout/bs/tabs/TabPanel.java | 25 +- .../components/object/fieldset/PropertyGroup.java | 120 +++----- .../wicket/ui/pages/obj/DomainObjectPage.java | 25 +- .../ui/panels/HasDynamicallyVisibleContent.java | 9 +- 86 files changed, 2491 insertions(+), 1267 deletions(-)
