@openui5/sap.ui.core 1.115.1 → 1.116.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.dtsgenrc +18 -0
- package/.eslintrc.json +11 -0
- package/.reuse/dep5 +0 -5
- package/THIRDPARTY.txt +1 -7
- package/package.json +1 -1
- package/src/jquery.sap.global.js +1 -1
- package/src/jquery.sap.properties.js +1 -1
- package/src/jquery.sap.resources.js +1 -1
- package/src/jquery.sap.script.js +1 -1
- package/src/jquery.sap.sjax.js +2 -2
- package/src/jquery.sap.storage.js +3 -3
- package/src/sap/base/Event.js +106 -0
- package/src/sap/base/Eventing.js +320 -0
- package/src/sap/base/config.js +1 -1
- package/src/sap/base/i18n/Formatting.js +991 -0
- package/src/sap/base/i18n/LanguageTag.js +189 -0
- package/src/sap/base/i18n/Localization.js +711 -0
- package/src/sap/base/i18n/ResourceBundle.js +5 -20
- package/src/sap/base/i18n/date/CalendarType.js +54 -0
- package/src/sap/base/i18n/date/CalendarWeekNumbering.js +105 -0
- package/src/sap/base/i18n/date/TimezoneUtils.js +287 -0
- package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
- package/src/sap/base/util/restricted/_castArray.js +1 -1
- package/src/sap/base/util/restricted/_compact.js +1 -1
- package/src/sap/base/util/restricted/_curry.js +1 -1
- package/src/sap/base/util/restricted/_debounce.js +1 -1
- package/src/sap/base/util/restricted/_difference.js +1 -1
- package/src/sap/base/util/restricted/_differenceBy.js +1 -1
- package/src/sap/base/util/restricted/_differenceWith.js +1 -1
- package/src/sap/base/util/restricted/_flatMap.js +1 -1
- package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
- package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
- package/src/sap/base/util/restricted/_flatten.js +1 -1
- package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
- package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
- package/src/sap/base/util/restricted/_intersection.js +1 -1
- package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
- package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
- package/src/sap/base/util/restricted/_isEqual.js +1 -1
- package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
- package/src/sap/base/util/restricted/_isNil.js +1 -1
- package/src/sap/base/util/restricted/_max.js +1 -1
- package/src/sap/base/util/restricted/_merge.js +1 -1
- package/src/sap/base/util/restricted/_mergeWith.js +1 -1
- package/src/sap/base/util/restricted/_min.js +1 -1
- package/src/sap/base/util/restricted/_omit.js +1 -1
- package/src/sap/base/util/restricted/_pick.js +1 -1
- package/src/sap/base/util/restricted/_pickBy.js +1 -1
- package/src/sap/base/util/restricted/_throttle.js +1 -1
- package/src/sap/base/util/restricted/_toArray.js +1 -1
- package/src/sap/base/util/restricted/_union.js +1 -1
- package/src/sap/base/util/restricted/_unionBy.js +1 -1
- package/src/sap/base/util/restricted/_unionWith.js +1 -1
- package/src/sap/base/util/restricted/_uniq.js +1 -1
- package/src/sap/base/util/restricted/_uniqBy.js +1 -1
- package/src/sap/base/util/restricted/_uniqWith.js +1 -1
- package/src/sap/base/util/restricted/_without.js +1 -1
- package/src/sap/base/util/restricted/_xor.js +1 -1
- package/src/sap/base/util/restricted/_xorBy.js +1 -1
- package/src/sap/base/util/restricted/_xorWith.js +1 -1
- package/src/sap/base/util/restricted/_zipObject.js +1 -1
- package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
- package/src/sap/ui/Device.js +3 -3
- package/src/sap/ui/Global.js +4 -4
- package/src/sap/ui/base/Event.js +1 -1
- package/src/sap/ui/base/EventProvider.js +4 -12
- package/src/sap/ui/base/Interface.js +1 -1
- package/src/sap/ui/base/ManagedObject.js +8 -12
- package/src/sap/ui/base/ManagedObjectMetadata.js +30 -7
- package/src/sap/ui/base/Metadata.js +1 -1
- package/src/sap/ui/base/Object.js +1 -1
- package/src/sap/ui/base/ObjectPool.js +1 -1
- package/src/sap/ui/base/SyncPromise.js +10 -5
- package/src/sap/ui/core/.library +2 -2
- package/src/sap/ui/core/AccessKeysEnablement.js +10 -5
- package/src/sap/ui/core/AnimationMode.js +49 -0
- package/src/sap/ui/core/BusyIndicator.js +33 -42
- package/src/sap/ui/core/CalendarType.js +11 -37
- package/src/sap/ui/core/Component.js +4 -5
- package/src/sap/ui/core/ComponentContainer.js +1 -1
- package/src/sap/ui/core/ComponentMetadata.js +2 -2
- package/src/sap/ui/core/ComponentSupport.js +1 -1
- package/src/sap/ui/core/Configuration.js +409 -1270
- package/src/sap/ui/core/Control.js +4 -12
- package/src/sap/ui/core/ControlBehavior.js +157 -0
- package/src/sap/ui/core/Core.js +124 -132
- package/src/sap/ui/core/CustomData.js +1 -1
- package/src/sap/ui/core/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/Element.js +14 -3
- package/src/sap/ui/core/ElementMetadata.js +1 -1
- package/src/sap/ui/core/EnabledPropagator.js +1 -1
- package/src/sap/ui/core/EventBus.js +1 -1
- package/src/sap/ui/core/Fragment.js +1 -1
- package/src/sap/ui/core/HTML.js +1 -1
- package/src/sap/ui/core/History.js +1 -1
- package/src/sap/ui/core/Icon.js +1 -1
- package/src/sap/ui/core/IndicationColorSupport.js +1 -1
- package/src/sap/ui/core/IntervalTrigger.js +1 -1
- package/src/sap/ui/core/InvisibleMessage.js +5 -7
- package/src/sap/ui/core/InvisibleRenderer.js +1 -1
- package/src/sap/ui/core/InvisibleText.js +12 -12
- package/src/sap/ui/core/Item.js +1 -1
- package/src/sap/ui/core/LabelEnablement.js +1 -1
- package/src/sap/ui/core/LayoutData.js +1 -1
- package/src/sap/ui/core/Lib.js +109 -22
- package/src/sap/ui/core/ListItem.js +1 -1
- package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
- package/src/sap/ui/core/Locale.js +151 -430
- package/src/sap/ui/core/LocaleData.js +39 -11
- package/src/sap/ui/core/Manifest.js +1 -1
- package/src/sap/ui/core/Message.js +1 -1
- package/src/sap/ui/core/RenderManager.js +1 -1
- package/src/sap/ui/core/Renderer.js +1 -1
- package/src/sap/ui/core/ResizeHandler.js +1 -1
- package/src/sap/ui/core/ScrollBar.js +1 -1
- package/src/sap/ui/core/SeparatorItem.js +1 -1
- package/src/sap/ui/core/StaticArea.js +31 -17
- package/src/sap/ui/core/Theming.js +451 -0
- package/src/sap/ui/core/Title.js +1 -1
- package/src/sap/ui/core/TooltipBase.js +1 -1
- package/src/sap/ui/core/UIArea.js +1 -1
- package/src/sap/ui/core/UIComponent.js +1 -1
- package/src/sap/ui/core/UIComponentMetadata.js +1 -1
- package/src/sap/ui/core/ValueStateSupport.js +1 -1
- package/src/sap/ui/core/VariantLayoutData.js +1 -1
- package/src/sap/ui/core/XMLComposite.js +1 -1
- package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
- package/src/sap/ui/core/XMLTemplateProcessor.js +1 -0
- package/src/sap/ui/core/_IconRegistry.js +7 -1
- package/src/sap/ui/core/date/CalendarWeekNumbering.js +12 -83
- package/src/sap/ui/core/date/UI5Date.js +2 -2
- package/src/sap/ui/core/delegate/ItemNavigation.js +8 -10
- package/src/sap/ui/core/delegate/ScrollEnablement.js +5 -5
- package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
- package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
- package/src/sap/ui/core/dnd/DragInfo.js +1 -1
- package/src/sap/ui/core/dnd/DropInfo.js +1 -1
- package/src/sap/ui/core/format/DateFormat.js +20 -15
- package/src/sap/ui/core/format/TimezoneUtil.js +15 -273
- package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
- package/src/sap/ui/core/library.js +3 -3
- package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
- package/src/sap/ui/core/message/Message.js +1 -1
- package/src/sap/ui/core/message/MessageManager.js +1 -1
- package/src/sap/ui/core/message/MessageParser.js +1 -1
- package/src/sap/ui/core/message/MessageProcessor.js +1 -1
- package/src/sap/ui/core/messagebundle_cs.properties +1 -1
- package/src/sap/ui/core/messagebundle_cy.properties +1 -1
- package/src/sap/ui/core/messagebundle_da.properties +1 -1
- package/src/sap/ui/core/messagebundle_de.properties +1 -1
- package/src/sap/ui/core/messagebundle_el.properties +1 -1
- package/src/sap/ui/core/messagebundle_en.properties +1 -1
- package/src/sap/ui/core/messagebundle_en_GB.properties +1 -1
- package/src/sap/ui/core/messagebundle_es.properties +1 -1
- package/src/sap/ui/core/messagebundle_es_MX.properties +1 -1
- package/src/sap/ui/core/messagebundle_et.properties +1 -1
- package/src/sap/ui/core/messagebundle_id.properties +1 -1
- package/src/sap/ui/core/messagebundle_it.properties +49 -49
- package/src/sap/ui/core/messagebundle_iw.properties +1 -1
- package/src/sap/ui/core/messagebundle_kk.properties +1 -1
- package/src/sap/ui/core/messagebundle_ko.properties +1 -1
- package/src/sap/ui/core/messagebundle_lt.properties +1 -1
- package/src/sap/ui/core/messagebundle_lv.properties +1 -1
- package/src/sap/ui/core/messagebundle_ms.properties +8 -8
- package/src/sap/ui/core/messagebundle_nl.properties +1 -1
- package/src/sap/ui/core/messagebundle_no.properties +1 -1
- package/src/sap/ui/core/messagebundle_pl.properties +1 -1
- package/src/sap/ui/core/messagebundle_pt.properties +1 -1
- package/src/sap/ui/core/messagebundle_pt_PT.properties +1 -1
- package/src/sap/ui/core/messagebundle_ro.properties +1 -1
- package/src/sap/ui/core/messagebundle_sh.properties +1 -1
- package/src/sap/ui/core/messagebundle_sv.properties +1 -1
- package/src/sap/ui/core/messagebundle_th.properties +1 -1
- package/src/sap/ui/core/messagebundle_uk.properties +21 -21
- package/src/sap/ui/core/messagebundle_vi.properties +1 -1
- package/src/sap/ui/core/mvc/HTMLView.js +1 -1
- package/src/sap/ui/core/mvc/JSONView.js +1 -1
- package/src/sap/ui/core/mvc/JSView.js +1 -1
- package/src/sap/ui/core/mvc/TemplateView.js +1 -1
- package/src/sap/ui/core/mvc/View.js +1 -1
- package/src/sap/ui/core/mvc/XMLView.js +1 -1
- package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/plugin/LessSupport.js +14 -16
- package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
- package/src/sap/ui/core/postmessage/Bus.js +1 -1
- package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
- package/src/sap/ui/core/routing/HashChanger.js +1 -0
- package/src/sap/ui/core/routing/Route.js +1 -0
- package/src/sap/ui/core/routing/Router.js +3 -1
- package/src/sap/ui/core/rules/Config.support.js +2 -2
- package/src/sap/ui/core/rules/Model.support.js +3 -1
- package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
- package/src/sap/ui/core/search/SearchProvider.js +1 -1
- package/src/sap/ui/core/service/Service.js +1 -1
- package/src/sap/ui/core/service/ServiceFactory.js +1 -1
- package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
- package/src/sap/ui/core/support/Plugin.js +1 -1
- package/src/sap/ui/core/support/Support.js +1 -1
- package/src/sap/ui/core/support/controls/TimelineOverview.js +1 -1
- package/src/sap/ui/core/support/plugins/ControlTree.js +2 -2
- package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
- package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
- package/src/sap/ui/core/support/plugins/Performance.js +1 -1
- package/src/sap/ui/core/support/plugins/Selector.js +1 -1
- package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
- package/src/sap/ui/core/support/plugins/Trace.js +1 -1
- package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
- package/src/sap/ui/core/themes/base/LocalBusyIndicator.less +4 -4
- package/src/sap/ui/core/themes/base/base.less +41 -20
- package/src/sap/ui/core/themes/base/fonts/SAP-icons.ttf +0 -0
- package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
- package/src/sap/ui/core/theming/Parameters.js +6 -5
- package/src/sap/ui/core/theming/ThemeManager.js +310 -447
- package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
- package/src/sap/ui/core/tmpl/DOMElement.js +5 -10
- package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
- package/src/sap/ui/core/tmpl/Template.js +1 -1
- package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
- package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
- package/src/sap/ui/core/util/Export.js +1 -1
- package/src/sap/ui/core/util/ExportCell.js +1 -1
- package/src/sap/ui/core/util/ExportColumn.js +1 -1
- package/src/sap/ui/core/util/ExportRow.js +1 -1
- package/src/sap/ui/core/util/ExportType.js +1 -1
- package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
- package/src/sap/ui/core/util/File.js +1 -1
- package/src/sap/ui/core/util/LibraryInfo.js +1 -1
- package/src/sap/ui/core/util/MockServer.js +1 -1
- package/src/sap/ui/core/util/PasteHelper.js +1 -1
- package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +3 -1
- package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
- package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
- package/src/sap/ui/core/ws/ReadyState.js +1 -1
- package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
- package/src/sap/ui/core/ws/WebSocket.js +1 -1
- package/src/sap/ui/debug/ControlTree.js +1 -1
- package/src/sap/ui/debug/DebugEnv.js +1 -1
- package/src/sap/ui/debug/PropertyList.js +1 -1
- package/src/sap/ui/events/PseudoEvents.js +17 -9
- package/src/sap/ui/model/Binding.js +19 -15
- package/src/sap/ui/model/ClientModel.js +1 -1
- package/src/sap/ui/model/CompositeBinding.js +57 -19
- package/src/sap/ui/model/CompositeDataState.js +1 -1
- package/src/sap/ui/model/CompositeType.js +1 -1
- package/src/sap/ui/model/DataState.js +1 -1
- package/src/sap/ui/model/ListBinding.js +42 -1
- package/src/sap/ui/model/MetaModel.js +1 -1
- package/src/sap/ui/model/Model.js +5 -4
- package/src/sap/ui/model/PropertyBinding.js +10 -0
- package/src/sap/ui/model/SelectionModel.js +1 -1
- package/src/sap/ui/model/SimpleType.js +4 -1
- package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
- package/src/sap/ui/model/Type.js +1 -1
- package/src/sap/ui/model/base/ManagedObjectModel.js +1 -1
- package/src/sap/ui/model/json/JSONModel.js +1 -1
- package/src/sap/ui/model/message/MessageModel.js +1 -1
- package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
- package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
- package/src/sap/ui/model/odata/ODataMetadata.js +1 -1
- package/src/sap/ui/model/odata/ODataModel.js +1 -1
- package/src/sap/ui/model/odata/type/Boolean.js +1 -1
- package/src/sap/ui/model/odata/type/Byte.js +1 -1
- package/src/sap/ui/model/odata/type/Currency.js +1 -1
- package/src/sap/ui/model/odata/type/Date.js +1 -1
- package/src/sap/ui/model/odata/type/DateTime.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeBase.js +8 -1
- package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
- package/src/sap/ui/model/odata/type/Decimal.js +1 -1
- package/src/sap/ui/model/odata/type/Double.js +1 -1
- package/src/sap/ui/model/odata/type/Guid.js +1 -1
- package/src/sap/ui/model/odata/type/Int.js +1 -1
- package/src/sap/ui/model/odata/type/Int16.js +1 -1
- package/src/sap/ui/model/odata/type/Int32.js +1 -1
- package/src/sap/ui/model/odata/type/Int64.js +1 -1
- package/src/sap/ui/model/odata/type/ODataType.js +3 -3
- package/src/sap/ui/model/odata/type/Raw.js +1 -1
- package/src/sap/ui/model/odata/type/SByte.js +1 -1
- package/src/sap/ui/model/odata/type/Single.js +1 -1
- package/src/sap/ui/model/odata/type/Stream.js +1 -1
- package/src/sap/ui/model/odata/type/String.js +1 -1
- package/src/sap/ui/model/odata/type/Time.js +1 -1
- package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
- package/src/sap/ui/model/odata/type/Unit.js +1 -1
- package/src/sap/ui/model/odata/v2/Context.js +3 -2
- package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataListBinding.js +14 -3
- package/src/sap/ui/model/odata/v2/ODataModel.js +45 -31
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/Context.js +7 -3
- package/src/sap/ui/model/odata/v4/ODataBinding.js +68 -39
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +12 -8
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +30 -8
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +11 -9
- package/src/sap/ui/model/odata/v4/ODataModel.js +10 -14
- package/src/sap/ui/model/odata/v4/ODataParentBinding.js +64 -31
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +21 -16
- package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +2 -0
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +37 -14
- package/src/sap/ui/model/odata/v4/lib/_Helper.js +11 -1
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +7 -4
- package/src/sap/ui/model/odata/v4/lib/_V2MetadataConverter.js +4 -4
- package/src/sap/ui/model/odata/v4/lib/_V2Requestor.js +1 -1
- package/src/sap/ui/model/resource/ResourceModel.js +1 -1
- package/src/sap/ui/model/type/Boolean.js +1 -1
- package/src/sap/ui/model/type/Currency.js +1 -1
- package/src/sap/ui/model/type/Date.js +1 -1
- package/src/sap/ui/model/type/DateInterval.js +1 -1
- package/src/sap/ui/model/type/DateTime.js +1 -1
- package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
- package/src/sap/ui/model/type/FileSize.js +1 -1
- package/src/sap/ui/model/type/Float.js +1 -1
- package/src/sap/ui/model/type/Integer.js +1 -1
- package/src/sap/ui/model/type/String.js +1 -1
- package/src/sap/ui/model/type/Time.js +1 -1
- package/src/sap/ui/model/type/TimeInterval.js +1 -1
- package/src/sap/ui/model/type/Unit.js +1 -1
- package/src/sap/ui/model/xml/XMLModel.js +1 -1
- package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
- package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
- package/src/sap/ui/test/Opa5.js +1 -1
- package/src/sap/ui/test/autowaiter/_autoWaiter.js +1 -1
- package/src/sap/ui/test/generic/TestBase.js +1 -1
- package/src/sap/ui/test/gherkin/simpleGherkinParser.js +10 -5
- package/src/sap/ui/test/matchers/LabelFor.js +1 -0
- package/src/sap/ui/thirdparty/caja-html-sanitizer.js +111 -96
- package/src/sap/ui/util/ActivityDetection.js +7 -1
- package/src/sap/ui/util/Mobile.js +11 -8
- package/src/sap/ui/util/Storage.js +1 -1
- package/src/ui5loader-autoconfig.js +5 -2
- package/src/ui5loader.js +169 -185
- package/test/sap/ui/core/FormatHelper.js +3 -2
- package/test/sap/ui/core/demokit/docuindex.json +6 -0
- package/test/sap/ui/core/demokit/sample/OpaBusyIndicator/OpaBusyIndicator.js +1 -1
- package/test/sap/ui/core/demokit/sample/OpaMatchers/OpaMatchers.js +2 -2
- package/test/sap/ui/core/demokit/sample/ViewTemplate/types/MIT.ODataTypes.html +9 -14
- package/test/sap/ui/core/demokit/sample/ViewTemplate/types/Opa.qunit.js +7 -0
- package/test/sap/ui/core/demokit/sample/common/pages/Any.js +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/tests/filter.js +2 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Component.js +27 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/ListReport.controller.js +43 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/ListReport.view.xml +47 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Main.controller.js +27 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Main.view.xml +7 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/NotFound.view.xml +8 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/ObjectPage.controller.js +123 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/ObjectPage.view.xml +92 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Opa.qunit.html +27 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Opa.qunit.js +69 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/README.html +55 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/SandboxModel.js +56 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/POST-SalesOrderList.json +66 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/SalesOrderList('0500000000')-SO_2_SOITEM.json +57 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/SalesOrderList('0500000000').json +20 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/SalesOrderList('0500000001').json +9 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/SalesOrderList('0500000007')-SO_2_BP.json +12 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/SalesOrderList.json +62 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/VH_CurrencyCode.json +85 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/VH_CurrencyCode.xml +185 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/VH_ProductID.json +93 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/VH_ProductID.xml +262 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/metadata.xml +1779 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/manifest.json +134 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/pages/Main.js +119 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/pages/Main.js +0 -41
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V2/manifest.json +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V4/manifest.json +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/Main.controller.js +5 -17
- package/test/sap/ui/core/demokit/sample/odata/v4/ServerDrivenPaging/Main.view.xml +3 -3
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/webapp/test/integration/arrangements/Startup.js +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/webapp/test/integration/arrangements/Startup.js +1 -1
- package/test/sap/ui/core/qunit/CompositeBinding.qunit.js +25 -7
- package/test/sap/ui/core/qunit/ControlRenderer.qunit.js +86 -2
- package/test/sap/ui/core/qunit/DataState.qunit.js +2 -7
- package/test/sap/ui/core/qunit/HTML.qunit.js +31 -31
- package/test/sap/ui/core/qunit/Lib.qunit.js +55 -2
- package/test/sap/ui/core/qunit/LocalBusyIndicator.qunit.js +22 -15
- package/test/sap/ui/core/qunit/ManagedObject.qunit.js +5 -3
- package/test/sap/ui/core/qunit/Object.qunit.js +4 -1
- package/test/sap/ui/core/qunit/ThemeManager.qunit.js +2 -2
- package/test/sap/ui/core/qunit/ThemeParameters.qunit.js +9 -3
- package/test/sap/ui/core/qunit/Theming.beforeBootstrap.qunit.js +13 -0
- package/test/sap/ui/core/qunit/Theming.qunit.js +229 -0
- package/test/sap/ui/core/qunit/analytics/AnalyticalTreeBindingAdapter.qunit.js +2 -7
- package/test/sap/ui/core/qunit/analytics/ODataModelAdapter.qunit.js +2 -7
- package/test/sap/ui/core/qunit/app/MessageListBinding.qunit.js +2 -7
- package/test/sap/ui/core/qunit/base/i18n/Formatting.qunit.html +24 -0
- package/test/sap/ui/core/qunit/base/i18n/Formatting.qunit.js +275 -0
- package/test/sap/ui/core/qunit/base/i18n/Localization.qunit.js +259 -0
- package/test/sap/ui/core/qunit/base/i18n/ResourceBundle.qunit.js +5 -6
- package/test/sap/ui/core/qunit/base/security/sanitizeHTML.qunit.js +17 -0
- package/test/sap/ui/core/qunit/bootstrap/BootstrapPreload.qunit.js +1 -2
- package/test/sap/ui/core/qunit/bootstrap/BootstrapWithCustomBootTask.beforeBootstrap.qunit.js +13 -12
- package/test/sap/ui/core/qunit/bootstrap/Configuration.qunit.js +388 -254
- package/test/sap/ui/core/qunit/bootstrap/ThemeVersion.qunit.js +19 -30
- package/test/sap/ui/core/qunit/component/Models.qunit.js +7 -28
- package/test/sap/ui/core/qunit/component/Models_unavoidablySync.qunit.js +8 -26
- package/test/sap/ui/core/qunit/component/testdata/async/lib2/library-preload.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/lib2/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/lib2/library.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/lib3/library-preload.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/lib3/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/lib3/library.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/lib4/library-preload.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/lib4/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/lib4/library.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/manifestcomp/Component-preload.js +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/manifestcomp/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/mycomp/Component-preload.js +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/mycomp/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/mysubcomp/Component-preload.js +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/mysubcomp/Component.js +2 -3
- package/test/sap/ui/core/qunit/component/testdata/customizing/customer/ext/Component.js +0 -4
- package/test/sap/ui/core/qunit/component/testdata/customizing/customer/ext/sync/Component.js +2 -6
- package/test/sap/ui/core/qunit/component/testdata/customizing/customersub/Component.js +0 -4
- package/test/sap/ui/core/qunit/component/testdata/inherit/Component.js +2 -7
- package/test/sap/ui/core/qunit/component/testdata/inherit/parent/Component.js +2 -7
- package/test/sap/ui/core/qunit/component/testdata/inheritAsync/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/inheritAsync/parentA/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/inheritAsync/parentB/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/inheritAsyncError/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/inheritAsyncError/parentA/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/inheritAsyncError/parentB/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/other/Component.js +2 -7
- package/test/sap/ui/core/qunit/component/testdata/terminologies/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/terminologies/component1/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/terminologies/component2/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/terminologies/component3/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/terminologies/component5/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/terminologies/reuse/Component.js +2 -3
- package/test/sap/ui/core/qunit/component/testdata/v1/Component.js +2 -7
- package/test/sap/ui/core/qunit/component/testdata/v1empty/Component.js +2 -7
- package/test/sap/ui/core/qunit/component/testdata/v1inline/Component.js +2 -5
- package/test/sap/ui/core/qunit/component/testdata/v1missing/Component.js +2 -7
- package/test/sap/ui/core/qunit/component/testdata/v2/Component.js +2 -5
- package/test/sap/ui/core/qunit/component/testdata/v2asyncRootView/Component.js +2 -5
- package/test/sap/ui/core/qunit/component/testdata/v2empty/Component.js +2 -9
- package/test/sap/ui/core/qunit/component/testdata/v2inline/Component.js +2 -5
- package/test/sap/ui/core/qunit/component/testdata/v2missing/Component.js +2 -9
- package/test/sap/ui/core/qunit/component/testdata/v2version/Component.js +2 -2
- package/test/sap/ui/core/qunit/dnd/DragDropInfo.qunit.js +1 -2
- package/test/sap/ui/core/qunit/generic/legacy/ControlMemoryLeaks.qunit.js +2 -0
- package/test/sap/ui/core/qunit/generic/legacy/DuplicateIdCheck.qunit.js +2 -0
- package/test/sap/ui/core/qunit/gherkin/dataTableUtils.qunit.js +2 -2
- package/test/sap/ui/core/qunit/i18n/Locale.qunit.js +0 -52
- package/test/sap/ui/core/qunit/i18n/LocaleData.qunit.js +1 -1
- package/test/sap/ui/core/qunit/i18n/UniversalDate.qunit.js +14 -24
- package/test/sap/ui/core/qunit/i18n/testsuite.i18n.qunit.js +18 -0
- package/test/sap/ui/core/qunit/internal/1RingModels.qunit.js +1 -0
- package/test/sap/ui/core/qunit/json/JSONListBinding.qunit.js +2 -7
- package/test/sap/ui/core/qunit/json/JSONPropertyBinding.qunit.js +7 -12
- package/test/sap/ui/core/qunit/json/JSONTwoWay.qunit.js +3 -8
- package/test/sap/ui/core/qunit/loader/fixture/amd-with-export-true/module1.js +2 -2
- package/test/sap/ui/core/qunit/messages/MessageMixin.qunit.js +2 -7
- package/test/sap/ui/core/qunit/messages/messagesUsage.qunit.js +1 -1
- package/test/sap/ui/core/qunit/model/Binding.qunit.js +36 -11
- package/test/sap/ui/core/qunit/model/ClientListBinding.qunit.js +2 -7
- package/test/sap/ui/core/qunit/model/ClientTreeBinding.qunit.js +2 -7
- package/test/sap/ui/core/qunit/model/CompositeDataState.qunit.js +2 -7
- package/test/sap/ui/core/qunit/model/Context.qunit.js +2 -7
- package/test/sap/ui/core/qunit/model/ContextBinding.qunit.js +2 -7
- package/test/sap/ui/core/qunit/model/ListBinding.qunit.js +63 -6
- package/test/sap/ui/core/qunit/model/Model.qunit.js +2 -7
- package/test/sap/ui/core/qunit/model/PropertyBinding.qunit.js +40 -0
- package/test/sap/ui/core/qunit/model/TreeBinding.qunit.js +2 -7
- package/test/sap/ui/core/qunit/model/TreeBindingAdapter.qunit.js +2 -7
- package/test/sap/ui/core/qunit/mvc/XMLView.qunit.js +9 -8
- package/test/sap/ui/core/qunit/mvc/extensions/Controllerextensions.qunit.js +4 -4
- package/test/sap/ui/core/qunit/mvc/extensions/Controllerextensions_legacy.qunit.js +4 -4
- package/test/sap/ui/core/qunit/odata/AnnotationParserNoFakeService.qunit.js +2 -7
- package/test/sap/ui/core/qunit/odata/ODataMessageParser.qunit.js +1 -1
- package/test/sap/ui/core/qunit/odata/ODataMessageParserNoFakeService.qunit.js +2 -8
- package/test/sap/ui/core/qunit/odata/ODataMetadataNoFakeService.qunit.js +1 -6
- package/test/sap/ui/core/qunit/odata/type/DateTimeBase.qunit.js +24 -0
- package/test/sap/ui/core/qunit/odata/v2/Context.qunit.js +2 -7
- package/test/sap/ui/core/qunit/odata/v2/ODataContextBindingNoFakeService.qunit.js +2 -7
- package/test/sap/ui/core/qunit/odata/v2/ODataListBindingNoFakeService.qunit.js +31 -17
- package/test/sap/ui/core/qunit/odata/v2/ODataModel.integration.qunit.js +28 -19
- package/test/sap/ui/core/qunit/odata/v2/ODataModelNoFakeService.qunit.js +70 -15
- package/test/sap/ui/core/qunit/odata/v2/ODataPropertyBindingNoFakeService.qunit.js +2 -7
- package/test/sap/ui/core/qunit/odata/v2/ODataTreeBindingFlatNoFakeService.qunit.js +4 -9
- package/test/sap/ui/core/qunit/odata/v2/ODataTreeBindingNoFakeService.qunit.js +2 -7
- package/test/sap/ui/core/qunit/odata/v2/_CreatedContextsCache.qunit.js +2 -7
- package/test/sap/ui/core/qunit/odata/v4/AnnotationHelper.qunit.js +1 -1
- package/test/sap/ui/core/qunit/odata/v4/Context.qunit.js +45 -17
- package/test/sap/ui/core/qunit/odata/v4/ODataBinding.qunit.js +152 -151
- package/test/sap/ui/core/qunit/odata/v4/ODataContextBinding.qunit.js +55 -27
- package/test/sap/ui/core/qunit/odata/v4/ODataListBinding.qunit.js +119 -4
- package/test/sap/ui/core/qunit/odata/v4/ODataMetaModel.qunit.js +3 -3
- package/test/sap/ui/core/qunit/odata/v4/ODataModel.integration.qunit.js +754 -195
- package/test/sap/ui/core/qunit/odata/v4/ODataModel.qunit.js +42 -53
- package/test/sap/ui/core/qunit/odata/v4/ODataParentBinding.qunit.js +283 -170
- package/test/sap/ui/core/qunit/odata/v4/ODataPropertyBinding.qunit.js +103 -78
- package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationCache.qunit.js +3 -0
- package/test/sap/ui/core/qunit/odata/v4/lib/_Cache.qunit.js +87 -58
- package/test/sap/ui/core/qunit/odata/v4/lib/_Helper.qunit.js +3 -1
- package/test/sap/ui/core/qunit/odata/v4/lib/_Requestor.qunit.js +124 -22
- package/test/sap/ui/core/qunit/odata/v4/testsuite.odatav4.qunit.js +4 -0
- package/test/sap/ui/core/qunit/opa/_LogCollector.qunit.js +1 -1
- package/test/sap/ui/core/qunit/performance/trace/FESR.qunit.js +5 -0
- package/test/sap/ui/core/qunit/resource/ResourceModel.qunit.js +17 -37
- package/test/sap/ui/core/qunit/routing/HashChanger.qunit.js +1 -6
- package/test/sap/ui/core/qunit/routing/RouterHashChanger.qunit.js +1 -10
- package/test/sap/ui/core/qunit/routing/async/Router.qunit.js +1 -22
- package/test/sap/ui/core/qunit/routing/async/Target.qunit.js +1 -4
- package/test/sap/ui/core/qunit/rule/model/modelSupport.qunit.js +34 -1
- package/test/sap/ui/core/qunit/testdata/fastnavigation/view/FastNavigation.view.xml +2 -2
- package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib1/i18n.properties +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib1/library.js +10 -0
- package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib1/manifest.json +10 -0
- package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib2/library.js +10 -0
- package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib2/messagebundle.properties +1 -0
- package/test/sap/ui/core/qunit/testsuites/testsuite.databinding.qunit.js +3 -0
- package/test/sap/ui/core/qunit/testsuites/testsuite.theming.qunit.js +29 -0
- package/test/sap/ui/core/qunit/types/DateFormatTimezones.qunit.js +397 -607
- package/test/sap/ui/core/qunit/types/SimpleType.qunit.js +16 -2
- package/test/sap/ui/core/qunit/types/Types.qunit.js +2 -37
- package/test/sap/ui/core/qunit/types/testsuite.types.qunit.js +1 -1
- package/test/sap/ui/core/qunit/util/SyncPromise.qunit.js +4 -1
- package/test/sap/ui/core/qunit/util/jQuery.sap.measure.qunit.js +16 -11
- package/test/sap/ui/core/qunit/xml/XMLListBinding.qunit.js +1 -3
- package/test/sap/ui/core/qunit/xml/XMLModel.qunit.js +4 -14
- package/test/sap/ui/core/qunit/xml/XMLPropertyBinding.qunit.js +7 -11
- package/test/sap/ui/core/qunit/xml/XMLTreeBinding.qunit.js +1 -1
- package/test/sap/ui/core/qunit/xml/XMLTwoWay.qunit.js +3 -7
- package/test/sap/ui/core/relnotes/changes-1.115.json +1 -37
- package/test/sap/ui/core/relnotes/changes-1.116.json +82 -0
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/firstItem-contextMenu.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/initial.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/lastItem-contextMenu.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/leftDownBtn-contextMenu.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/myButtonSample-contextMenu.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/rightDownBtn-contextMenu.ref.lnk +1 -1
- package/test/testsuite/js/samples.js +2 -0
- package/ui5.yaml +1 -1
|
@@ -81,7 +81,7 @@ sap.ui.define([
|
|
|
81
81
|
* @extends sap.ui.core.Element
|
|
82
82
|
* @abstract
|
|
83
83
|
* @author SAP SE
|
|
84
|
-
* @version 1.
|
|
84
|
+
* @version 1.116.0
|
|
85
85
|
* @alias sap.ui.core.Control
|
|
86
86
|
*/
|
|
87
87
|
var Control = Element.extend("sap.ui.core.Control", /** @lends sap.ui.core.Control.prototype */ {
|
|
@@ -378,7 +378,7 @@ sap.ui.define([
|
|
|
378
378
|
}
|
|
379
379
|
} else {
|
|
380
380
|
// else we bubble up the hierarchy
|
|
381
|
-
if (oParent && (
|
|
381
|
+
if (oParent && !oParent.isInvalidateSuppressed() && (
|
|
382
382
|
this.bOutput /* && !this.getUIArea() */ ||
|
|
383
383
|
/* !this.bOutput && */ !(this.getVisible && this.getVisible() === false))) {
|
|
384
384
|
|
|
@@ -653,9 +653,7 @@ sap.ui.define([
|
|
|
653
653
|
* @public
|
|
654
654
|
*/
|
|
655
655
|
Control.prototype.placeAt = function(oRef, vPosition) {
|
|
656
|
-
|
|
657
|
-
// core already initialized, do it now
|
|
658
|
-
|
|
656
|
+
Core.ready(function() {
|
|
659
657
|
// 1st try to resolve the oRef as a container control
|
|
660
658
|
var oContainer = oRef;
|
|
661
659
|
if (typeof oRef === "string") {
|
|
@@ -696,13 +694,7 @@ sap.ui.define([
|
|
|
696
694
|
Log.warning("Position " + vPosition + " is not supported for function placeAt.");
|
|
697
695
|
}
|
|
698
696
|
}
|
|
699
|
-
}
|
|
700
|
-
// core not yet initialized, defer execution
|
|
701
|
-
var that = this;
|
|
702
|
-
Core.attachInit(function () {
|
|
703
|
-
that.placeAt(oRef, vPosition);
|
|
704
|
-
});
|
|
705
|
-
}
|
|
697
|
+
}.bind(this));
|
|
706
698
|
return this;
|
|
707
699
|
};
|
|
708
700
|
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* OpenUI5
|
|
3
|
+
* (c) Copyright 2009-2023 SAP SE or an SAP affiliate company.
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
// Provides module sap.ui.core.ControlBehavior
|
|
8
|
+
sap.ui.define([
|
|
9
|
+
"sap/base/config",
|
|
10
|
+
"sap/base/Eventing",
|
|
11
|
+
"sap/ui/core/AnimationMode"
|
|
12
|
+
], function(
|
|
13
|
+
BaseConfig,
|
|
14
|
+
Eventing,
|
|
15
|
+
AnimationMode
|
|
16
|
+
) {
|
|
17
|
+
"use strict";
|
|
18
|
+
|
|
19
|
+
var oWritableConfig = BaseConfig.getWritableInstance();
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Provides control behavior relevant configuration options
|
|
23
|
+
*
|
|
24
|
+
* @namespace
|
|
25
|
+
* @alias module:sap/ui/core/ControlBehavior
|
|
26
|
+
* @private
|
|
27
|
+
* @ui5-restricted sap.ui.core
|
|
28
|
+
* @mixes module:sap/base/Eventing
|
|
29
|
+
* @borrows module:sap/base/Eventing.attachEvent as attachEvent
|
|
30
|
+
* @borrows module:sap/base/Eventing.attachEventOnce as attachEventOnce
|
|
31
|
+
* @borrows module:sap/base/Eventing.detachEvent as detachEvent
|
|
32
|
+
* @borrows module:sap/base/Eventing.fireEvent as fireEvent
|
|
33
|
+
* @borrows module:sap/base/Eventing.hasListeners as hasListeners
|
|
34
|
+
* @borrows module:sap/base/Eventing.getEventingParent as getEventingParent
|
|
35
|
+
*/
|
|
36
|
+
var ControlBehavior = {
|
|
37
|
+
/**
|
|
38
|
+
* The <code>change</code> event is fired, when the configuration options are changed.
|
|
39
|
+
*
|
|
40
|
+
* @name module:sap/ui/core/ControlBehavior.change
|
|
41
|
+
* @event
|
|
42
|
+
* @private
|
|
43
|
+
* @ui5-restricted sap.ui.core
|
|
44
|
+
*/
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Attaches the <code>fnFunction</code> event handler to the {@link #event:change change} event
|
|
48
|
+
* of <code>sap.ui.core.ControlBehavior</code>.
|
|
49
|
+
*
|
|
50
|
+
* When called, the context of the event handler (its <code>this</code>) will be bound to
|
|
51
|
+
* <code>oListener</code> if specified, otherwise it will be bound to this
|
|
52
|
+
* <code>sap.ui.core.ControlBehavior</code> itself.
|
|
53
|
+
*
|
|
54
|
+
* @param {function} fnFunction
|
|
55
|
+
* The function to be called when the event occurs
|
|
56
|
+
* @private
|
|
57
|
+
* @ui5-restricted sap.ui.core
|
|
58
|
+
*/
|
|
59
|
+
attachChange: function(fnFunction) {
|
|
60
|
+
ControlBehavior.attachEvent("change", fnFunction);
|
|
61
|
+
},
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Detaches event handler <code>fnFunction</code> from the {@link #event:change change} event of
|
|
65
|
+
* this <code>sap.ui.core.ControlBehavior</code>.
|
|
66
|
+
*
|
|
67
|
+
* @param {function} fnFunction Function to be called when the event occurs
|
|
68
|
+
* @private
|
|
69
|
+
* @ui5-restricted sap.ui.core
|
|
70
|
+
*/
|
|
71
|
+
detachChange: function(fnFunction) {
|
|
72
|
+
ControlBehavior.detachEvent("change", fnFunction);
|
|
73
|
+
},
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Returns whether the accessibility mode is enabled or not.
|
|
77
|
+
* @return {boolean} whether the accessibility mode is enabled or not
|
|
78
|
+
* @public
|
|
79
|
+
*/
|
|
80
|
+
isAccessibilityEnabled: function() {
|
|
81
|
+
return oWritableConfig.get({
|
|
82
|
+
name: "sapUiAccessibility",
|
|
83
|
+
type: BaseConfig.Type.Boolean,
|
|
84
|
+
defaultValue: true,
|
|
85
|
+
external: true
|
|
86
|
+
});
|
|
87
|
+
},
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Returns the current animation mode.
|
|
91
|
+
*
|
|
92
|
+
* @return {sap.ui.core.AnimationMode} The current animationMode
|
|
93
|
+
* @public
|
|
94
|
+
*/
|
|
95
|
+
getAnimationMode: function() {
|
|
96
|
+
var sAnimationMode = oWritableConfig.get({
|
|
97
|
+
name: "sapUiAnimationMode",
|
|
98
|
+
type: AnimationMode,
|
|
99
|
+
defaultValue: undefined,
|
|
100
|
+
external: true
|
|
101
|
+
});
|
|
102
|
+
var bAnimation = oWritableConfig.get({
|
|
103
|
+
name: "sapUiAnimation",
|
|
104
|
+
type: BaseConfig.Type.Boolean,
|
|
105
|
+
defaultValue: true,
|
|
106
|
+
external: true
|
|
107
|
+
});
|
|
108
|
+
if (sAnimationMode === undefined) {
|
|
109
|
+
if (bAnimation) {
|
|
110
|
+
sAnimationMode = AnimationMode.full;
|
|
111
|
+
} else {
|
|
112
|
+
sAnimationMode = AnimationMode.minimal;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
BaseConfig._.checkEnum(AnimationMode, sAnimationMode, "animationMode");
|
|
116
|
+
return sAnimationMode;
|
|
117
|
+
},
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* Sets the current animation mode.
|
|
121
|
+
*
|
|
122
|
+
* Expects an animation mode as string and validates it. If a wrong animation mode was set, an error is
|
|
123
|
+
* thrown. If the mode is valid it is set, then the attributes <code>data-sap-ui-animation</code> and
|
|
124
|
+
* <code>data-sap-ui-animation-mode</code> of the HTML document root element are also updated.
|
|
125
|
+
* If the <code>animationMode</code> is <code>AnimationMode.none</code> the old
|
|
126
|
+
* <code>animation</code> property is set to <code>false</code>, otherwise it is set to <code>true</code>.
|
|
127
|
+
*
|
|
128
|
+
* @param {sap.ui.core.AnimationMode} sAnimationMode A valid animation mode
|
|
129
|
+
* @throws {Error} If the provided <code>sAnimationMode</code> does not exist, an error is thrown
|
|
130
|
+
* @public
|
|
131
|
+
*/
|
|
132
|
+
setAnimationMode: function(sAnimationMode) {
|
|
133
|
+
BaseConfig._.checkEnum(AnimationMode, sAnimationMode, "animationMode");
|
|
134
|
+
|
|
135
|
+
var sOldAnimationMode = oWritableConfig.get({
|
|
136
|
+
name: "sapUiAnimationMode",
|
|
137
|
+
type: AnimationMode,
|
|
138
|
+
defaultValue: undefined,
|
|
139
|
+
external: true
|
|
140
|
+
});
|
|
141
|
+
|
|
142
|
+
// Set the animation mode and update html attributes.
|
|
143
|
+
oWritableConfig.set("sapUiAnimationMode", sAnimationMode);
|
|
144
|
+
if (sOldAnimationMode != sAnimationMode) {
|
|
145
|
+
fireChange({animationMode: sAnimationMode});
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
|
|
150
|
+
function fireChange(mChanges) {
|
|
151
|
+
ControlBehavior.fireEvent("change", mChanges);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
Eventing.apply(ControlBehavior);
|
|
155
|
+
|
|
156
|
+
return ControlBehavior;
|
|
157
|
+
});
|
package/src/sap/ui/core/Core.js
CHANGED
|
@@ -12,6 +12,7 @@ sap.ui.define([
|
|
|
12
12
|
'sap/ui/base/Interface',
|
|
13
13
|
'sap/ui/base/Object',
|
|
14
14
|
'sap/ui/base/ManagedObject',
|
|
15
|
+
'./AnimationMode',
|
|
15
16
|
'./Component',
|
|
16
17
|
'./Configuration',
|
|
17
18
|
'./Element',
|
|
@@ -19,19 +20,23 @@ sap.ui.define([
|
|
|
19
20
|
'./Lib',
|
|
20
21
|
'./Rendering',
|
|
21
22
|
'./RenderManager',
|
|
23
|
+
'./ControlBehavior',
|
|
22
24
|
'./UIArea',
|
|
23
25
|
'./message/MessageManager',
|
|
24
26
|
'./StaticArea',
|
|
27
|
+
"sap/ui/core/Theming",
|
|
25
28
|
"sap/base/Log",
|
|
26
29
|
"sap/ui/performance/Measurement",
|
|
27
30
|
"sap/ui/security/FrameOptions",
|
|
28
31
|
"sap/base/assert",
|
|
32
|
+
"sap/base/util/Deferred",
|
|
29
33
|
"sap/base/util/ObjectPath",
|
|
30
34
|
'sap/ui/performance/trace/initTraces',
|
|
31
35
|
'sap/base/util/isEmptyObject',
|
|
32
36
|
'sap/base/util/each',
|
|
33
37
|
'sap/ui/VersionInfo',
|
|
34
38
|
'sap/base/config',
|
|
39
|
+
'sap/base/Event',
|
|
35
40
|
'sap/ui/events/jquery/EventSimulation'
|
|
36
41
|
],
|
|
37
42
|
function(
|
|
@@ -41,6 +46,7 @@ sap.ui.define([
|
|
|
41
46
|
Interface,
|
|
42
47
|
BaseObject,
|
|
43
48
|
ManagedObject,
|
|
49
|
+
AnimationMode,
|
|
44
50
|
Component,
|
|
45
51
|
Configuration,
|
|
46
52
|
Element,
|
|
@@ -48,19 +54,23 @@ sap.ui.define([
|
|
|
48
54
|
Library,
|
|
49
55
|
Rendering,
|
|
50
56
|
RenderManager,
|
|
57
|
+
ControlBehavior,
|
|
51
58
|
UIArea,
|
|
52
59
|
MessageManager,
|
|
53
60
|
StaticArea,
|
|
61
|
+
Theming,
|
|
54
62
|
Log,
|
|
55
63
|
Measurement,
|
|
56
64
|
FrameOptions,
|
|
57
65
|
assert,
|
|
66
|
+
Deferred,
|
|
58
67
|
ObjectPath,
|
|
59
68
|
initTraces,
|
|
60
69
|
isEmptyObject,
|
|
61
70
|
each,
|
|
62
|
-
VersionInfo
|
|
63
|
-
|
|
71
|
+
VersionInfo,
|
|
72
|
+
BaseConfig,
|
|
73
|
+
BaseEvent
|
|
64
74
|
/* ,EventSimulation */
|
|
65
75
|
) {
|
|
66
76
|
|
|
@@ -76,11 +86,6 @@ sap.ui.define([
|
|
|
76
86
|
*/
|
|
77
87
|
var FocusHandler;
|
|
78
88
|
|
|
79
|
-
/**
|
|
80
|
-
* ThemeManager module reference, lazily retrieved via private "_getThemeManager" API.
|
|
81
|
-
*/
|
|
82
|
-
var ThemeManager;
|
|
83
|
-
|
|
84
89
|
// Initialize SAP Passport or FESR
|
|
85
90
|
initTraces();
|
|
86
91
|
|
|
@@ -90,6 +95,43 @@ sap.ui.define([
|
|
|
90
95
|
*/
|
|
91
96
|
var _oEventProvider;
|
|
92
97
|
|
|
98
|
+
/**
|
|
99
|
+
* Returns the waiting behavior for the initial theme loading.
|
|
100
|
+
* Possible values are:
|
|
101
|
+
* <ul>
|
|
102
|
+
* <li>undefined (default):
|
|
103
|
+
* By default neither the initialization of the SAPUI5 Core nor the first rendering
|
|
104
|
+
* wait for the configured theme to be loaded.
|
|
105
|
+
* </li>
|
|
106
|
+
* <li>"rendering":
|
|
107
|
+
* The first (initial) rendering of the application will be delayed until the theme
|
|
108
|
+
* has been loaded and applied (until Core.isThemeApplied()).
|
|
109
|
+
* Helps to avoid FOUC (flash of unstyled content).
|
|
110
|
+
* </li>
|
|
111
|
+
* <li>"init":
|
|
112
|
+
* Same as "rendering", but additionally delays the init event of theSAPUI5 Core until
|
|
113
|
+
* the configured theme has been loaded. Application code that waits for this event can
|
|
114
|
+
* then rely on the theming information to be present,
|
|
115
|
+
* e.g. for calling sap.ui.core.theming.Parameters.get
|
|
116
|
+
* </li>
|
|
117
|
+
* </ul>
|
|
118
|
+
*
|
|
119
|
+
* @returns {string} the configured waiting behavior for the initial theme loading
|
|
120
|
+
*/
|
|
121
|
+
function getWaitForTheme() {
|
|
122
|
+
var sWaitForTheme = BaseConfig.get({name: "sapUiXxWaitForTheme", type: BaseConfig.Type.String, external: true}).toLowerCase();
|
|
123
|
+
|
|
124
|
+
if (sWaitForTheme === "true" ) {
|
|
125
|
+
sWaitForTheme = "rendering";
|
|
126
|
+
}
|
|
127
|
+
if ( sWaitForTheme !== "rendering" && sWaitForTheme !== "init" ) {
|
|
128
|
+
// invalid value or false from legacy boolean setting
|
|
129
|
+
sWaitForTheme = undefined;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
return sWaitForTheme;
|
|
133
|
+
}
|
|
134
|
+
|
|
93
135
|
/*
|
|
94
136
|
* Internal class that can help to synchronize a set of asynchronous tasks.
|
|
95
137
|
* Each task must be registered in the sync point by calling startTask with
|
|
@@ -174,7 +216,7 @@ sap.ui.define([
|
|
|
174
216
|
* @extends sap.ui.base.Object
|
|
175
217
|
* @final
|
|
176
218
|
* @author SAP SE
|
|
177
|
-
* @version 1.
|
|
219
|
+
* @version 1.116.0
|
|
178
220
|
* @alias sap.ui.core.Core
|
|
179
221
|
* @public
|
|
180
222
|
* @hideconstructor
|
|
@@ -219,6 +261,12 @@ sap.ui.define([
|
|
|
219
261
|
*/
|
|
220
262
|
this.bInitialized = false;
|
|
221
263
|
|
|
264
|
+
/**
|
|
265
|
+
* Whether the core is ready
|
|
266
|
+
* @private
|
|
267
|
+
*/
|
|
268
|
+
this.bReady = false;
|
|
269
|
+
|
|
222
270
|
/**
|
|
223
271
|
* Available plugins in the order of registration.
|
|
224
272
|
* @private
|
|
@@ -266,11 +314,10 @@ sap.ui.define([
|
|
|
266
314
|
this.oRootComponent = null;
|
|
267
315
|
|
|
268
316
|
/**
|
|
269
|
-
*
|
|
270
|
-
* Moved here (before boot()) so that the libraries can be registered for lazy load!!
|
|
317
|
+
* Ready Promise
|
|
271
318
|
* @private
|
|
272
319
|
*/
|
|
273
|
-
this.
|
|
320
|
+
this.pReady = new Deferred();
|
|
274
321
|
|
|
275
322
|
/**
|
|
276
323
|
* Whether the legacy library has to be loaded.
|
|
@@ -313,7 +360,7 @@ sap.ui.define([
|
|
|
313
360
|
}
|
|
314
361
|
|
|
315
362
|
// enable LessSupport if specified in configuration
|
|
316
|
-
if (
|
|
363
|
+
if (BaseConfig.get({name: "sapUiXxLesssupport", type: BaseConfig.Type.Boolean}) && aModules.indexOf("sap.ui.core.plugin.LessSupport") == -1) {
|
|
317
364
|
Log.info("Including LessSupport into declared modules");
|
|
318
365
|
aModules.push("sap.ui.core.plugin.LessSupport");
|
|
319
366
|
}
|
|
@@ -326,8 +373,8 @@ sap.ui.define([
|
|
|
326
373
|
var bAsync = sPreloadMode === "async" || sap.ui.loader.config().async;
|
|
327
374
|
|
|
328
375
|
// adding the following classList is done here for compatibility reasons
|
|
329
|
-
document.documentElement.classList.add("sapUiTheme-" +
|
|
330
|
-
Log.info("Declared theme " +
|
|
376
|
+
document.documentElement.classList.add("sapUiTheme-" + Theming.getTheme());
|
|
377
|
+
Log.info("Declared theme " + Theming.getTheme(), null, METHOD);
|
|
331
378
|
|
|
332
379
|
Log.info("Declared modules: " + aModules, METHOD);
|
|
333
380
|
|
|
@@ -388,7 +435,7 @@ sap.ui.define([
|
|
|
388
435
|
|
|
389
436
|
// load the version info file in case of a custom theme to determine
|
|
390
437
|
// the distribution version which should be provided in library.css requests.
|
|
391
|
-
if (
|
|
438
|
+
if (Library.getVersionedLibCss()) {
|
|
392
439
|
var iVersionInfoTask = oSyncPoint2.startTask("load version info");
|
|
393
440
|
|
|
394
441
|
var fnCallback = function(oVersionInfo) {
|
|
@@ -580,6 +627,8 @@ sap.ui.define([
|
|
|
580
627
|
// @private, @ui5-restricted sap.ui.core
|
|
581
628
|
// - Init
|
|
582
629
|
"boot",
|
|
630
|
+
// - Ready Promise
|
|
631
|
+
"ready",
|
|
583
632
|
// - UIArea & Rendering
|
|
584
633
|
"addPrerenderingTask",
|
|
585
634
|
// - Messaging
|
|
@@ -711,14 +760,22 @@ sap.ui.define([
|
|
|
711
760
|
* @private
|
|
712
761
|
*/
|
|
713
762
|
Core.prototype._setupAnimation = function() {
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
jQuery
|
|
763
|
+
function adaptAnimationMode() {
|
|
764
|
+
var html = document.documentElement;
|
|
765
|
+
var sAnimationMode = ControlBehavior.getAnimationMode();
|
|
766
|
+
html.dataset.sapUiAnimationMode = sAnimationMode;
|
|
767
|
+
var bAnimation = (sAnimationMode !== AnimationMode.minimal && sAnimationMode !== AnimationMode.none);
|
|
768
|
+
html.dataset.sapUiAnimation = bAnimation ? "on" : "off";
|
|
769
|
+
if (typeof jQuery !== "undefined") {
|
|
770
|
+
jQuery.fx.off = !bAnimation;
|
|
771
|
+
}
|
|
721
772
|
}
|
|
773
|
+
ControlBehavior.attachChange(function(oEvent) {
|
|
774
|
+
if (oEvent.animationMode) {
|
|
775
|
+
adaptAnimationMode();
|
|
776
|
+
}
|
|
777
|
+
});
|
|
778
|
+
adaptAnimationMode();
|
|
722
779
|
};
|
|
723
780
|
|
|
724
781
|
/**
|
|
@@ -834,18 +891,10 @@ sap.ui.define([
|
|
|
834
891
|
assert(typeof sThemeName === "string", "sThemeName must be a string");
|
|
835
892
|
assert(typeof sThemeBaseUrl === "string" || typeof sThemeBaseUrl === "undefined", "sThemeBaseUrl must be a string or undefined");
|
|
836
893
|
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
// Configuration needs to be updated synchronously but only
|
|
840
|
-
// applyTheme in case theme changed
|
|
841
|
-
// Check is duplicated in applyTheme in ThemeManager
|
|
842
|
-
// be aware to keep both in sync
|
|
843
|
-
if ((sThemeName && Configuration.getTheme() != sThemeName)) {
|
|
844
|
-
Configuration.setTheme(sThemeName);
|
|
845
|
-
this._getThemeManager().then(function(ThemeManager) {
|
|
846
|
-
ThemeManager.applyTheme(sThemeName, sThemeBaseUrl, /* bForce = */ true);
|
|
847
|
-
});
|
|
894
|
+
if (sThemeBaseUrl) {
|
|
895
|
+
Theming.setThemeRoot(sThemeName, sThemeBaseUrl);
|
|
848
896
|
}
|
|
897
|
+
Theming.setTheme(sThemeName);
|
|
849
898
|
};
|
|
850
899
|
|
|
851
900
|
/**
|
|
@@ -897,9 +946,12 @@ sap.ui.define([
|
|
|
897
946
|
* @public
|
|
898
947
|
*/
|
|
899
948
|
Core.prototype.setThemeRoot = function(sThemeName, aLibraryNames, sThemeBaseUrl, bForceUpdate) {
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
949
|
+
if (typeof aLibraryNames === "string") {
|
|
950
|
+
bForceUpdate = sThemeBaseUrl;
|
|
951
|
+
sThemeBaseUrl = aLibraryNames;
|
|
952
|
+
aLibraryNames = undefined;
|
|
953
|
+
}
|
|
954
|
+
Theming.setThemeRoot(sThemeName, sThemeBaseUrl, aLibraryNames, bForceUpdate);
|
|
903
955
|
return this;
|
|
904
956
|
};
|
|
905
957
|
|
|
@@ -925,7 +977,7 @@ sap.ui.define([
|
|
|
925
977
|
|
|
926
978
|
this._setBodyAccessibilityRole();
|
|
927
979
|
|
|
928
|
-
var sWaitForTheme =
|
|
980
|
+
var sWaitForTheme = getWaitForTheme();
|
|
929
981
|
|
|
930
982
|
// If there is no waitForTheme or ThemeManager is already available and theme is loaded render directly sync
|
|
931
983
|
if (this.isThemeApplied() || !sWaitForTheme) {
|
|
@@ -933,27 +985,18 @@ sap.ui.define([
|
|
|
933
985
|
} else {
|
|
934
986
|
Rendering.suspend();
|
|
935
987
|
|
|
936
|
-
var whenThemeAppliedThen = function(fnCallback) {
|
|
937
|
-
this._getThemeManager().then(function(ThemeManager) {
|
|
938
|
-
if ( ThemeManager.themeLoaded ) {
|
|
939
|
-
fnCallback();
|
|
940
|
-
} else {
|
|
941
|
-
ThemeManager.attachEventOnce("ThemeChanged", fnCallback);
|
|
942
|
-
}
|
|
943
|
-
});
|
|
944
|
-
}.bind(this);
|
|
945
988
|
|
|
946
989
|
if (sWaitForTheme === "rendering") {
|
|
947
990
|
Rendering.notifyInteractionStep();
|
|
948
991
|
this._executeInitialization();
|
|
949
992
|
Rendering.getLogger().debug("delay initial rendering until theme has been loaded");
|
|
950
|
-
|
|
993
|
+
Theming.attachAppliedOnce(function() {
|
|
951
994
|
Rendering.resume("after theme has been loaded");
|
|
952
995
|
});
|
|
953
996
|
} else if (sWaitForTheme === "init") {
|
|
954
997
|
Rendering.getLogger().debug("delay init event and initial rendering until theme has been loaded");
|
|
955
998
|
Rendering.notifyInteractionStep();
|
|
956
|
-
|
|
999
|
+
Theming.attachAppliedOnce(function() {
|
|
957
1000
|
this._executeInitialization();
|
|
958
1001
|
Rendering.resume("after theme has been loaded");
|
|
959
1002
|
}.bind(this));
|
|
@@ -1065,33 +1108,13 @@ sap.ui.define([
|
|
|
1065
1108
|
}
|
|
1066
1109
|
};
|
|
1067
1110
|
|
|
1068
|
-
Core.prototype._executeInitListeners = function() {
|
|
1069
|
-
var METHOD = "sap.ui.core.Core.init()";
|
|
1070
|
-
|
|
1071
|
-
// make sure that we have no concurrent modifications on the init listeners
|
|
1072
|
-
var aCallbacks = this.aInitListeners;
|
|
1073
|
-
// reset the init listener so that we are aware the listeners are already
|
|
1074
|
-
// executed and the initialization phase is over / follow up registration
|
|
1075
|
-
// would then immediately call the init event handler
|
|
1076
|
-
this.aInitListeners = undefined;
|
|
1077
|
-
|
|
1078
|
-
// execute registered init event handlers
|
|
1079
|
-
if (aCallbacks && aCallbacks.length > 0) {
|
|
1080
|
-
// execute the callbacks
|
|
1081
|
-
Log.info("Fire Loaded Event",null,METHOD);
|
|
1082
|
-
aCallbacks.forEach(function(fn) {
|
|
1083
|
-
fn();
|
|
1084
|
-
});
|
|
1085
|
-
}
|
|
1086
|
-
};
|
|
1087
|
-
|
|
1088
1111
|
Core.prototype._executeInitialization = function() {
|
|
1112
|
+
// chain ready to be the firstone that is executed
|
|
1089
1113
|
var METHOD = "sap.ui.core.Core.init()"; // Because it's only used from init
|
|
1090
1114
|
if (this.bInitialized) {
|
|
1091
1115
|
return;
|
|
1092
1116
|
}
|
|
1093
1117
|
this.bInitialized = true;
|
|
1094
|
-
|
|
1095
1118
|
Log.info("Initialized",null,METHOD);
|
|
1096
1119
|
|
|
1097
1120
|
// start the plugins
|
|
@@ -1101,7 +1124,8 @@ sap.ui.define([
|
|
|
1101
1124
|
|
|
1102
1125
|
this._executeOnInit();
|
|
1103
1126
|
this._setupRootComponent(); // @legacy-relevant: private API for 2 deprecated concepts "rootComponent" & "sap.ui.app.Application"
|
|
1104
|
-
this.
|
|
1127
|
+
this.pReady.resolve();
|
|
1128
|
+
this.bReady = true;
|
|
1105
1129
|
};
|
|
1106
1130
|
|
|
1107
1131
|
/**
|
|
@@ -1125,38 +1149,15 @@ sap.ui.define([
|
|
|
1125
1149
|
* @return {boolean} whether the styles of the current theme are already applied
|
|
1126
1150
|
* @public
|
|
1127
1151
|
*/
|
|
1128
|
-
Core.prototype.isThemeApplied =
|
|
1129
|
-
ThemeManager = ThemeManager || sap.ui.require("sap/ui/core/theming/ThemeManager");
|
|
1130
|
-
return ThemeManager ? ThemeManager.themeLoaded : false;
|
|
1131
|
-
};
|
|
1132
|
-
|
|
1133
|
-
Core.prototype._getThemeManager = function (bClear) {
|
|
1134
|
-
ThemeManager = ThemeManager || sap.ui.require("sap/ui/core/theming/ThemeManager");
|
|
1152
|
+
Core.prototype.isThemeApplied = Theming.isApplied;
|
|
1135
1153
|
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
} else {
|
|
1144
|
-
this.pThemeManager = Promise.resolve(ThemeManager);
|
|
1145
|
-
}
|
|
1146
|
-
this.pThemeManager = this.pThemeManager.then(function(ThemeManager) {
|
|
1147
|
-
ThemeManager.attachEvent("ThemeChanged", function(oEvent) {
|
|
1148
|
-
this.fireThemeChanged(oEvent.getParameters());
|
|
1149
|
-
}.bind(this));
|
|
1150
|
-
return ThemeManager;
|
|
1151
|
-
}.bind(this));
|
|
1152
|
-
}
|
|
1153
|
-
// This is only used within initLibrary to reset flag themeLoaded synchronously in case
|
|
1154
|
-
// a theme for a new library will be loaded
|
|
1155
|
-
if (ThemeManager && bClear) {
|
|
1156
|
-
ThemeManager.reset();
|
|
1157
|
-
}
|
|
1158
|
-
return this.pThemeManager;
|
|
1159
|
-
};
|
|
1154
|
+
/**
|
|
1155
|
+
* Attach to 'applied' event of theming in order to keep existing core event 'ThemeChanged' stable
|
|
1156
|
+
*/
|
|
1157
|
+
Theming.attachApplied(function(oEvent) {
|
|
1158
|
+
// notify the listeners via a control event
|
|
1159
|
+
_oEventProvider && _oEventProvider.fireEvent(Core.M_EVENTS.ThemeChanged, BaseEvent.getParameters(oEvent));
|
|
1160
|
+
});
|
|
1160
1161
|
|
|
1161
1162
|
/**
|
|
1162
1163
|
* Registers a given function that is executed after the framework has been initialized.
|
|
@@ -1172,8 +1173,8 @@ sap.ui.define([
|
|
|
1172
1173
|
*/
|
|
1173
1174
|
Core.prototype.attachInitEvent = function (fnFunction) {
|
|
1174
1175
|
assert(typeof fnFunction === "function", "fnFunction must be a function");
|
|
1175
|
-
if (this.
|
|
1176
|
-
this.
|
|
1176
|
+
if (!this.bReady) {
|
|
1177
|
+
this.pReady.promise.then(fnFunction);
|
|
1177
1178
|
}
|
|
1178
1179
|
};
|
|
1179
1180
|
|
|
@@ -1192,11 +1193,7 @@ sap.ui.define([
|
|
|
1192
1193
|
*/
|
|
1193
1194
|
Core.prototype.attachInit = function (fnFunction) {
|
|
1194
1195
|
assert(typeof fnFunction === "function", "fnFunction must be a function");
|
|
1195
|
-
|
|
1196
|
-
this.aInitListeners.push(fnFunction);
|
|
1197
|
-
} else {
|
|
1198
|
-
fnFunction();
|
|
1199
|
-
}
|
|
1196
|
+
this.ready(fnFunction);
|
|
1200
1197
|
};
|
|
1201
1198
|
|
|
1202
1199
|
/**
|
|
@@ -1816,11 +1813,7 @@ sap.ui.define([
|
|
|
1816
1813
|
* for example changing the cozy/compact CSS class at a single control
|
|
1817
1814
|
* @public
|
|
1818
1815
|
*/
|
|
1819
|
-
Core.prototype.notifyContentDensityChanged =
|
|
1820
|
-
this._getThemeManager().then(function (ThemeManager) {
|
|
1821
|
-
ThemeManager.notifyContentDensityChanged();
|
|
1822
|
-
});
|
|
1823
|
-
};
|
|
1816
|
+
Core.prototype.notifyContentDensityChanged = Theming.notifyContentDensityChanged;
|
|
1824
1817
|
|
|
1825
1818
|
/**
|
|
1826
1819
|
* Fired after a theme has been applied.
|
|
@@ -1859,8 +1852,6 @@ sap.ui.define([
|
|
|
1859
1852
|
*/
|
|
1860
1853
|
Core.prototype.attachThemeChanged = function(fnFunction, oListener) {
|
|
1861
1854
|
// preparation for letting the "themeChanged" event be forwarded from the ThemeManager to the Core
|
|
1862
|
-
this._getThemeManager();
|
|
1863
|
-
|
|
1864
1855
|
_oEventProvider.attachEvent(Core.M_EVENTS.ThemeChanged, fnFunction, oListener);
|
|
1865
1856
|
};
|
|
1866
1857
|
|
|
@@ -1880,19 +1871,6 @@ sap.ui.define([
|
|
|
1880
1871
|
_oEventProvider.detachEvent(Core.M_EVENTS.ThemeChanged, fnFunction, oListener);
|
|
1881
1872
|
};
|
|
1882
1873
|
|
|
1883
|
-
/**
|
|
1884
|
-
* Fires event <code>ThemeChanged</code> to attached listeners.
|
|
1885
|
-
*
|
|
1886
|
-
* @param {object} [oParameters] Parameters to pass along with the event
|
|
1887
|
-
* @param {string} [oParameters.theme] Theme name (default is <code>sap.ui.getCore().getConfiguration().getTheme()</code>)
|
|
1888
|
-
*/
|
|
1889
|
-
Core.prototype.fireThemeChanged = function(oParameters) {
|
|
1890
|
-
var sEventId = Core.M_EVENTS.ThemeChanged;
|
|
1891
|
-
|
|
1892
|
-
// notify the listeners via a control event
|
|
1893
|
-
_oEventProvider.fireEvent(sEventId, oParameters);
|
|
1894
|
-
};
|
|
1895
|
-
|
|
1896
1874
|
/**
|
|
1897
1875
|
* Fired when a scope class has been added or removed on a control/element
|
|
1898
1876
|
* by using the custom style class API <code>addStyleClass</code>,
|
|
@@ -2021,10 +1999,6 @@ sap.ui.define([
|
|
|
2021
1999
|
if ( mChanges.rtl != undefined ) {
|
|
2022
2000
|
// update the dir attribute of the document
|
|
2023
2001
|
document.documentElement.setAttribute("dir", mChanges.rtl ? "rtl" : "ltr");
|
|
2024
|
-
// modify style sheet URLs
|
|
2025
|
-
this._getThemeManager().then(function (ThemeManager) {
|
|
2026
|
-
ThemeManager._updateThemeUrls(Configuration.getTheme());
|
|
2027
|
-
});
|
|
2028
2002
|
|
|
2029
2003
|
// invalidate all UIAreas
|
|
2030
2004
|
UIArea.registry.forEach(function(oUIArea) {
|
|
@@ -3009,6 +2983,24 @@ sap.ui.define([
|
|
|
3009
2983
|
Rendering.addPrerenderingTask(fnPrerenderingTask, bFirst);
|
|
3010
2984
|
};
|
|
3011
2985
|
|
|
2986
|
+
/** returns a Promise that resolves if the Core is initialized
|
|
2987
|
+
*
|
|
2988
|
+
* @param {function():void} [fnReady] If the Core is ready the function will be called immediately, otherwise when the ready Promise resolves.
|
|
2989
|
+
* @returns {Promise<undefined>} The ready promise
|
|
2990
|
+
* @private
|
|
2991
|
+
* @ui5-restricted sap.ui.core
|
|
2992
|
+
*/
|
|
2993
|
+
Core.prototype.ready = function(fnReady) {
|
|
2994
|
+
if (fnReady) {
|
|
2995
|
+
if (this.bReady) {
|
|
2996
|
+
fnReady();
|
|
2997
|
+
} else {
|
|
2998
|
+
this.pReady.promise.then(fnReady);
|
|
2999
|
+
}
|
|
3000
|
+
}
|
|
3001
|
+
return this.pReady.promise;
|
|
3002
|
+
};
|
|
3003
|
+
|
|
3012
3004
|
Core.prototype.destroy = function() {
|
|
3013
3005
|
RenderManager.detachPreserveContent(this._preserveHandler);
|
|
3014
3006
|
_oEventProvider.destroy();
|