This is an automated email from the ASF dual-hosted git repository. ahuber pushed a commit to branch v4 in repository https://gitbox.apache.org/repos/asf/causeway.git
commit 4237d6a83fc4a1586ff150b4c7e46d5af98ccd57 Merge: c7b2c2b85b5 13766468ffd Author: Andi Huber <ahu...@apache.org> AuthorDate: Fri Aug 29 06:30:10 2025 +0200 Merge pull request #3080 from apache/3889-icon.overhaul CAUSEWAY-3889: Support for object icon image embedding .../applib/annotation/DomainObjectLayout.java | 2 +- .../causeway/applib/annotation/ObjectSupport.java | 30 ++++++ .../causeway/applib/domain/DomainObjectList.java | 14 +-- .../causeway/applib/events/EventObjectBase.java | 32 +++++- .../causeway/applib/events/ui/IconUiEvent.java | 89 ++++++++--------- .../services/appfeatui/ApplicationFeatureMenu.java | 6 +- .../appfeatui/ApplicationFeatureViewModel.java | 4 +- .../applib/services/title/TitleService.java | 11 ++- .../config/beans/CausewayBeanTypeClassifier.java | 7 +- .../progmodel/ProgrammingModelConstants.java | 14 ++- .../metamodel/facets/FacetFactoryAbstract.java | 2 + .../core/metamodel/facets/ImperativeAspect.java | 19 ++++ .../members/iconfa/FaImperativeFacetAbstract.java | 60 ----------- .../members/iconfa/FaStaticFacetAbstract.java | 1 - .../FaFacetOnMemberFromConfiguredRegex.java | 110 ++++++++++++--------- ...mainObjectLayoutAnnotationUsingIconUiEvent.java | 91 ++++++++--------- .../metamodel/facets/object/icon/IconFacet.java | 8 +- .../metamodel/facets/object/icon/ObjectIcon.java | 6 +- .../facets/object/icon/ObjectIconEmbedded.java | 3 +- .../metamodel/facets/object/icon/ObjectIconFa.java | 3 +- .../facets/object/icon/ObjectIconService.java | 31 +++--- .../facets/object/icon/ObjectIconUrlBased.java | 3 +- .../method/IconFacetViaIconMethod.java} | 58 +++++------ .../icon/method/IconFacetViaIconNameMethod.java | 45 +++++---- .../ident/IconFacetFromProjectionFacet.java | 33 ++++--- .../object/support/ObjectSupportFacetFactory.java | 68 ++++++------- .../facets/object/title/TitleRenderRequest.java | 4 +- .../inspect/model/MetamodelInspectView.java | 21 ++-- .../core/metamodel/object/ManagedObject.java | 15 +-- .../services/title/TitleServiceDefault.java | 27 ++--- .../core/metamodel/spec/ObjectSpecification.java | 32 ++---- .../spec/impl/ObjectSpecificationDefault.java | 54 +++++----- .../metamodel/facets/FacetFactoryTestAbstract.java | 4 +- .../IconFacetMethodFaTest.java} | 35 ++++--- .../ident/icon/IconFacetMethodFactoryTest.java | 9 +- .../object/ident/icon/IconFacetMethodTest.java | 23 ++--- .../FontAwesomeLayersFacetMethodFactoryTest.java | 40 -------- .../ObjectSupportFacetFactoryTestAbstract.java | 5 +- .../services/title/TitleServiceDefaultTest.java | 4 +- .../mmtestsupport/MetaModelContext_forTesting.java | 3 +- .../mmtestsupport/TitleServiceForTesting.java} | 27 +++-- .../icons/ObjectIconServiceDefault.java | 82 ++++++++------- .../testdomain/model/good/ProperFullyAbstract.java | 2 +- .../testdomain/model/good/ProperFullyImpl.java | 5 +- .../good/ProperMemberInheritanceAbstract.java | 4 +- .../good/ProperMemberInheritanceInterface.java | 5 +- .../interaction/DomainObjectTesterFactory.java | 11 ++- .../DomainModelTest_usingGoodDomain.java | 10 +- .../MetaModelRegressionTest.verify.approved.xml | 24 ++--- viewers/commons/model/pom.xml | 3 +- .../viewer/commons/model/mixin/HasIcon.java | 6 +- .../viewer/controller/ResourceController.java | 3 +- .../resources/DomainObjectResourceServerside.java | 3 +- .../wicket/model/models/BookmarkTreeNode.java | 2 + .../wicket/model/models/BookmarkableModel.java | 3 +- .../viewer/wicket/model/models/UiObjectWkt.java | 7 +- .../wicket/ui/components/layout/bs/col/Col.java | 7 +- .../object/icontitle/ObjectIconAndTitlePanel.java | 22 +++-- .../icontitle/ObjectIconAndTitlePanelFactory.java | 6 +- .../icontitle/ObjectIconTitleAndCopyLinkPanel.java | 7 +- .../ObjectIconTitleAndCopyLinkPanelFactory.java | 3 +- .../tree/themes/bootstrap/wkt-tree-theme.css | 4 +- .../objectsimplelink/ObjectLinkSimplePanel.css | 2 +- .../bootstrap/css/bootstrap-overrides-all-v2.css | 7 +- 64 files changed, 641 insertions(+), 640 deletions(-)