getAppComponentForControl(oControl) {
			let oComponent = oControl instanceof Component ? oControl : Utils.getComponentForControl(oControl);

			// special case for Fiori Elements to reach the real appComponent
			if (oComponent?.getAppComponent?.() instanceof Component) {
				return oComponent.getAppComponent();
			}

			// special case for OVP
			if (oComponent?.oComponentData?.appComponent) {
				return oComponent.oComponentData.appComponent;
			}

			if (oComponent?.getManifestEntry) {
				const oSapApp = oComponent.getManifestEntry("sap.app");

				if (oSapApp?.type && oSapApp.type !== "application") {
					if (oComponent instanceof Component) {
						// we need to call this method only when the component is an instance of Component in order to walk up the tree
						// returns owner app component
						oComponent = Utils.getComponentForControl(oComponent);
					}
					return this.getAppComponentForControl(oComponent);
				}
			}

			return oComponent;
		}
Returns the component that belongs to the passed control whose type is "application".
If the control has no component, it walks up the control tree in order to find a control having one.

@param {sap.ui.base.ManagedObject} oControl - Managed object instance
@returns {sap.ui.core.Component} Component instance if found or undefined
@private
@ui5-restricted sap.ui.fl