DXP22.10.0007 Changelog

February 24, 2023

Extension App. Notification Service Worker. Migrate Launchpad. Show password translation. SAP GUI App Designer with CDN UI5 version. PDFView freezes after loading an invalid PDF file. External URL not loaded. PDFView.Show src options. Change App Extension Binding. Launchpad Inline Header Menu. Empty Message Area Model Data. Mobile Client with UI5 1.71. Customize screen list scroll. Launchpad Favicon. Launchpad After AppCache Enhancement Spot. Launchpad Recently Used. Semantic Object Navigation. UI5 Timeline Modules. App Designer Change Name. Plugins for Cordova Android Version. Deletion of Ajax Data Parameter. Custom UI5 Control. On Load Event Handler. Mobile Client NumPad Vibration. Inactive Launchpad/Mobile Client Layouts.

It is possible to use semantic objects with hash parameters to enter to many different objects in the Neptune Launchpad. When using a semantic object + action for hash navigation, the first call would be okay, but the second call would have an empty stringified Javascript object attached as a parameter after the semantic object/action. This error has been fixed and in that process the semantic navigation process has been renovated.

When you use semantic object/action for tile, screen and section navigation, you can specify static parameters in the tile and tilegroup configuration. Now parameters added dynamically to the hash URL will be prioritized over static parameters. But the static parameters will NOT be overwritten with the dynamic value as before! Now you can easily change the hash parameter value dynamically, but when clicking on a tile or navigating to a screen/section with live apps, the static parameters will be used.

It is not likely that this change will affect your launchpad/applications in any way, but if you do find that your navigation using semantic object/action has changed a little, please reach out to us, so that we can help you out!

Details

Extension App (1-18737)

When extending an Ajax call in an extension app, the application would dump.

Notification Service Worker (2-18756)

In a desktop launchpad with notifications enabled, a service worker was registered if the launchpad was running on a mobile device. The service worker was a leftover from previous launchpad versions and has no function. It has now been removed.

Migrate Launchpad (3-18384)
  • Launchpads using the old NEPTUNE_LAUNCHPAD_DESKTOP & NEPTUNE_LAUNCHPAD_MOBILE, must begin to use NEPTUNE_LAUNCHPAD_STANDARD or an extension of this in Neptune DXP 22. Older launchpad that use the older launchpad application and have tiles bound directly to it, can be migrated to use the new NEPTUNE_LAUNCHPAD_STANDARD. This migration process is now more accurate, it will convert parent tiles into tile groups and add subtitles to the new tile group.

  • Exporting launchpads will now add all dependent tiles added to launchpads using the old NEPTUNE_LAUNCHPAD_DESKTOP & NEPTUNE_LAUNCHPAD_MOBILE applications.

Show password translation (4-18773)

In the ABAP logon screen, the "Show Password" text was not translated.

SAP GUI App Designer with CDN UI5 version (5-18799)

When Opening an App in the SAP GUI App Designer that has a CDN SAPUI5 Version in the settings, the SAP GUI App Designer would create a dump.

PDFView freezes after loading an invalid PDF file (6-18753)

When an invalid PDF file was loaded into the neptune.PDFView, the PDFView would not be able to load any new documents.

External URL not loaded (7-18769)

A tile with translation would not load external URLs correctly.

PDFView.Show src options (8-18772)
  • When using the neptune.PDFView UI5 control, PDFView.Show is used to display a PDF file. Before it was only possible to add 2 parameters to the neptune.PDFView.Show function:

PDFView.Show(pdfData, wrapperId);
  • Now all parameters defined in getDocument from PDFJS can be used. Possible options are documented in the PDFView.Show code declaration.

// Using raw PDF data
PDFView.Show({
    data: "JVBERi0xLjcNCiW1...",
    wrapper: myPDFView.getId(),
    disableFontFace: true
});
// Using PDF URL
PDFView.Show({
    url: "http(s)://<server>/<path>.pdf",
    wrapper: myPDFView.getId(),
    disableFontFace: true
});
Change App Extension Binding (9-18821)

When changing a binding in an extension app, the SAP GUI App Designer would dump.

Launchpad Inline Header Menu (10-18828)

Setting the launchpad header menu to be inline with the rest of the header buttons in just one header line did not display any menu items.

Empty Message Area Model Data (11-18834)

UI5 model data should never be undefined or null in Neptune DXP 22. You should always expect that the model has either an object or an array depending on the data type. But the MessageArea is a little different. Customers have legacy code that checks the Message Area ModelData for undefined :( So, we’ve reverted back to the old settings, when modelMessageArea.oData will be undefined if no messages are present.

Mobile Client with UI5 1.71 (12-18822)

Mobile clients using UI5 1.71 will now be built with patch level independent UI5 files, so that UI5 will be loaded async in the bootstrap. This will fix errors in iOS when using an application that needs extra UI5 libraries.

Customize screen list scroll (18813)

When an end user is customizing the Neptune launchpad, the list of screens was not scrollable.

Launchpad Favicon (14-18831)

Favicon set on layout would not be used if a default layout was set in older Neptune DXP versions.

Launchpad After AppCache Enhancement Spot (15-18841)

The enhancement spot After AppCache was called twice, but it only makes sense to call the enhancement spot the last time after the dust has settled and the AppCache has gotten all the updates from the backend on load.

Launchpad Recently Used (16)

When enabling the recently used widget on a section (tilegroup), the recently used widget was not added automatically to the launchpad screen section.

Semantic Object Navigation (17-18854)
  • It’s possible to use semantic objects with hash parameters to navigate to many different objects in the Neptune Launchpad. When using a semantic object + action for hash navigation, the first call would be okay, but the second call would have an empty stringified Javascript object attached as a parameter after the semantic object/action. This error has been fixed and in that process the semantic navigation process has been renovated.

  • When you use semantic object/action for tile, screen and section navigation, you can specify static parameters in the tile and tilegroup configuration. now parameters added dynamically to the hash URL will be priorities over static parameters. But the static parameters will NOT be overwritten with the dynamic value as before! Now you can easily change the hash parameter value dynamically, but when clicking on a tile or navigating to a screen/section with live apps, the static parameters will be used.

  • It’s not likely that this change will affect your launchpad/applications in any way, but if you do find that your navigation using semantic object/action has changed a little, please reach out to us, so that we can help you out!

UI5 Timeline Modules (18-18867)

When running an app using the sap.suite.ui.commons.Timeline object, two UI5 modules must be loaded before the Javascript view is created on iOS devices. These modules are now added to required list loaded before the app.

App Designer Change Name (19-18872)

When changing the name on a script or object, open script tabs would not be renamed right away.

Plugins for Cordova Android Version (20-18688)

When selecting cordova android version 9 in the Cockpit there was a bug that would lead to the whitelist and splashscreen plugin not being included in the build.

Deletion of Ajax Data Parameter (21-18868)

The data parameter in Neptune Ajax calls was deleted when all the models had been updated. Some customers did abuse the data parameter for custom purposes. So, the data parameter will no longer be deleted. It is absolutely not recommended to use the Ajax success handler data parameter, please query the proper model data instead.

Custom UI5 Control (22-18874)

The true object type of a custom UI5 control will now be shown in the GUI Designer. Custom UI5 controls will now be properly created in the applications they are used.

On Load Event Handler (23-18900)

Running the NEPTUNE_LOGIN_PING stand alone would add the standard onLoad event handler in the HTML body tag. But the HTML in the NEPTUNE_LOGIN_PING app only includes the bare minimal HTML tags needed, so the event handler was not found. Rare usecase, only very creative customers will call NEPTUNE_LOGIN_PING on their own ;)

Mobile Client NumPad Vibration (24)

Vibration length on iOS devices cannot be controlled. The default vibration duration on iOS is too long to work smoothly when entering a pincode. The vibration when entering pincode digits has therefore been removed on iOS.

Inactive Launchpad/Mobile Client Layouts (25)

If device light/dark mode was enabled in a launchpad/mobile client and additional layouts were added, it was not possible to disable all the additional layouts. Neptune recommends that only one light and one dark layout is used when the "Device Light/Dark Mode" is enabled.

Contributors
  • Muhammad Zafarullah

  • Jurijs Pasedko

  • Lydia Haller

  • Omer Greenfeld

  • Gregory Hyson

  • Tony Morellet

  • Herbert Peter

  • Steve Campbell

  • Maximilian Schaufler

  • Pradeep Sankar

  • Jurijs Pasedko

  • Soeren Baek