Twitter Logo Follow us on Twitter
Project Information About this project

RAP 3.22 - New and Noteworthy

Here's a list of the most noteworthy things in the RAP 3.22 release which is available for download since September 14, 2022.

Support for MenuItem Tooltip Text

New API has been added to support adding tooltip text to MenuItem. If tooltip with HTML markup is used, RWT.TOOLTIP_MARKUP_ENABLED must be set as data on the item as usual.

  • org.eclipse.swt.widgets.MenuItem.setToolTipText(String)
  • org.eclipse.swt.widgets.MenuItem.getToolTipText()

Mouse Wheel Scroll Direction

With the new count property it is now possible to determine the mouse wheel scroll direction by its sign. It is set for MouseDown, MouseUp, MouseDoubleClick, and MouseWheel client scripting events.

Support for MImperativeExpression in RAP e4

With the synchronisation of the code in MenuManagerRenderer.updateVisibility and in ContributionsAnalyzer.isVisible with the upstream code from the Eclipse Platform MImperativeExpression are now supported in RAP e4.

Add Possibility to Disable Shutdown Request

In certain circumstances it is required to prevent the execution of sendShutdown/sendBeacon, e.g. when HTTP 302/303 redirects are intercepted and handled manually.

This can be configured within the ApplicationConfiguration by setting an additional string property:

  Map properties = new HashMap();
  properties.put( WebClient.DISABLE_SHUTDOWN_REQUEST, "true" );
  application.addEntryPoint( "/", Demo.class, properties );
        

Enable Easier Load Testing

One problem with RAP-based applications and load testing is caused by the text size determination. In oder to compute an exact layout, the RAP server asks the web client with probe strings to measure their local size in pixels. These requests are triggered by the server, which can be quite confusing for any load testing tool which cannot provide that size information by themselves.

Because the exact size and the perfect layout is not what you are interested in when running load tests, we added a new system property org.eclipse.rap.rwt.enableLoadTests. By setting this to true the RAP server does not send any texts nor probes for measurement to the client, and fills TextSizeStorage and ProbeResultStore with estimates instead.

Upgrade Apache commons-fileupload to version 1.4.0, commons-io to version 2.11.0

There were some security reports for earlier version of Apache commons-fileupload. Although RAP did not use any of the methods in question, and was therefore not directly affected by any of the reported vulnerabilities, it was time to upgrade these external libraries to their latest stable version.

Please note that the new versions are taken from Maven Central and therefore follow a slightly different naming scheme with a different bundle symbolic name:

  • org.apache.commons.fileupload renamed to org.apache.commons.commons-fileupload
  • org.apache.commons.io renamed to org.apache.commons.commons-io

Upgrade to Eclipse Tycho 2.7.5

In order to mirror the PGP signatures of external dependencies during the build into the RAP p2 repositories, an upgrade of Eclipse Tycho to version 2.7.5 was required in RAP Runtime and Tools. With this change, the RAP p2 repositories are kept in compliance with the Eclipse Simultaneous Release guidelines.

Issues fixed