Release Notes
This page provides an overview of all new features and all corrections in the delivered releases for SAPUI5 Runtime, SAPUI5 Controls and SAPUI5 Tools.
Version 1.6.4 (September 2012)
A patch for the 1.6 code line. It contains the following fixes for the UI5 Core and Controls:
- fix dependencies in MenuButton, all-in-one
- Toolbar: focus on disabled button not visible
- DropdownBox: some special characters can be entered
- Table: Header should be truncated gracefully
- NumberFormat: int/float parsing accepts wrong chars
- Feeder: text copied from MS Word
- Table: Fixed the selection behavior.
- Feed: fix for default thumbnail not found
- RowRepeater: gotoPage crashes when the RR is hidden
- NavigationBar: Add aria-checked
- Core: Change event of the SelectionModel was fired even on no change!
- Table: fixed the selection behavior.
- Shell: Handle multiple Overlays
- Fix update bindings
- Callout/Quickview: fix corrupted tip
- ComboBox/DropdownBox: allow set key/value before update items
- Feeder: Copy and Paste from MS Word
- DatePicker: fix to use legacy date format if set
- Panel: Provide translatable tooltip texts
- TextArea: fix call of TextFields focus handling
- SimpleProxyServlet: Proxy content of arbitrary responses not only 200.
- datajs: fix Edm.Time with null values
- ODataModel: fix XSRF token refresh
- DropdownBox: fix model update brings error
- Add latest Core lib translations
- Fix Tab Chain in Shell/TI Scenario
- Table: fixed the re-rendering on row selection
- Table: prevent Table to grab focus on scrollbar click
- Shell: Fix paneWidth
- Table: fixed the rows announcement
- DatePicker: fix value if entered twice
- Model: override getInterface method
- Table: Grouping Labels are not rendered.
- Table: ACC improvements for rows/cols and row hdr.
- Button: Fix Focus on iPad
- ComboBox: cloning of bound "items" aggregation fails
Tools
- ENHANCEMENT: When submitting the deletion of a file with the SAPUI5 ABAP Repository Provider it is checked that the deletion can be performed and transported consistently, to avoid repository inconsistencies.
- FIX: When starting the SAPUI5 View Wizard in a workspace in which no SAPUI5 Application project is available, there is no exception anymore but a proper error message is displayed mentioning that first a SAPUI5 Application Project needs to be created.
Version 1.7.1 (September 2012)
Framework
- The deprecated class sap.ui.util.Rect has been deleted.
- Numberformat: Type validation for Integer and Float values works more restrictive. The format is aligned with the EDM type formats. Example for float: "1.3A" won't be parsed to "1.3" anymore, but will result in a ValidationException. Example for integer: "1.3" won't be parsed to "1" anymore, but will result in a ValidationException.
- ODataModel: additional sap.ui.model.odata.Filter enables to AND or OR filters for the same property.
- A new Application Cache Buster mechanism is introduced to allow caching for application files (like views) like in the runtimes Cache Buster mechanism
Controls
- INCOMPATIBLE CHANGE: ThingInspector: ThingAction IDs not unique. The IDs of the ThingAction instances that came as action parameter with the actionSelected event are now prefixed with the ThingInspector ID. This is necessary to deal with multiple ThingInspector instances.
- CHANGE: sap.ui.commons.Slider control has a new property labels to allow own labels instead of the numbers.
- CHANGE: sap.ui.commons.Slider control has a new property vertical and height to display the slider in vertical direction.
- CHANGE: sap.ui.ux3.SHell: Integration of control sap.ui.ux3.NotificationBar completed including collapse/expand feature.
- NEW: sap.ui.ux3.NotificationBar not longer flagged as experimental
- CHANGE: Control sap.ui.ux3.ExactBrowser:
- New API to set the order of the lists (see JSDoc of ExactBrowser and ExactAttribute
- Fixed keyboard support.
Tools
- FEATURE: The SAPUI5 Application Handler for SAPUI5 Repository on ABAP side implements the new Application Cache Buster mechanism which is introduced to allow caching for application files (like views) like in the runtimes Cache Buster mechanism.
- FEATURE: When sharing a project or submiting files the SAPUI5 ABAP Repository Provider checks whether the SAPUI5 runtime version on the server matches the one which is installed in Eclipse and used for code completion and application preview. If not a warning is raised.
Version 1.6.3 (September 2012)
A patch for the 1.6 code line. It contains the following fixes for the UI5 Core and Controls:
- FileUploader: reupload the same file again
- Fixed scroll bar on first mouse click
- Table - column header not rendered correctly
- Shell: Fix pane width
- Menu: Close Menu on TAB like on Escape
- Fix for Scrollbar in Webkit RTL mode.
- SearchField: Allow binding for attributes, esp. value
- Panel: Fix title length issue in IE
- Table - Fix for memleak in column for indicators.
- General: fix more occurrences of the 'ID with dot' issue
- Splitter: Ghost Overlay Fix when "." in ID.
- ComboBox/DropDown doesn't open with a . in the id.
- Callout/QuickView: Fix close issue
- Table, Accessibility: relationship between table cell and colHdr was missing
- Table: setSelectedIndex() does not select a row
- Fixed the scrollbar behavior for Webkit RTL.
- QuickView.open() results in Table invalidate
- Theming: prameters API should not fail if a UI library lacks the json file
- JSON/XML Model: change default caching behaviour. No timestamp added anymore. Caching (default) now depends on browser or server configuration.
- DropdownBox: no Change event on typeAhead
- Table: support two way binding for property 'selectedIndex'
- FileUploader: Fix for Chrome with Mac OS.
- SegmentedButton: Keyboard navigation issue when used in Toolbar
- SearchField+DropdownBox: do not store history in localStorage
- SegmentedButton: fix clone
- DropdownBox: fix ARIA on keyboard navigation
- General: Fixes for Chrome21
- Configuration: locale fixes
- Callout/QuickView: corrections
- Configuration: Support of SAP Portal URL parameters sap-locale sap-accessibility sap-rtl sap-theme
- Button,MenuButton: Fix focus problem
- Table: added support for RowOnly selection behavior (no row selector)
- Column Chart: add missing 'experimental' flag
- I18N: Added new resource bundles from B0Y.
Version 1.7.0 (August 2012)
Framework
- FEATURE: Now the SAP portal URL parameters sap-locale, sap-accessibility, sap-rtl and sap-theme are supported. If the similar sap-ui-* parameter are used in addition, they will be used.
- FEATURE: sap.ui.core.plugin.DeclarativeSupport and sap.ui.core.DeclarativeSupport:
- Declarative support is not experimental anymore
- See deprecation warnings for future changes
- FEATURE: sap.ui.model.odata.ODataModel support for $select parameter.
- FEATURE: sap.ui.model.odata.ODataModel filter URL creation: now reads the metadata for the Edm type for the filter property and then creates the filter URL according to this type: e.g. Edm.String will result in the URL as e.g. ?$filter=CustNo eq '112233' whereas Edm.Int32 will simply result in the URL as ?$filter=CustNo eq 112233.
Controls
- NEW: Control sap.ui.ux3.NotificationBar:
- New controls NotificationBar and Notifier and new element Message introduced.
- sap.ui.ux3.NotificationBar included into sap.ui.ux3.Shell (see JSDoc). Limitation: The change height feature of the NotificationBar is not yet available within the Shell.
- CHANGE: Control sap.ui.ux3.ExactBrowser:
- Change collapse behavior of the lists.
- Improved open animation for inital list rendering
- New API to set the widths of the lists (see JSDoc of ExactBrowser and ExactAttribute)
- ARIA Support
- New API to hide the first list (see JSDoc)
- Limitation: Due to the changes above the keyboard support does not work completely. This will be corrected with version 1.7.1.
- CHANGE: sap.ui.util.Rect was deprecated and will be removed. Use jQuery(...).rectContains(x,y) provided by jQuery.sap.dom.js to determine whether a point is contained in the rectangle defined by a DOM element.
Tools
- FEATURE: Tools also run on Eclipse 3.5, i.e. with NWDS.
Experimental Features
- Includes the full set of experimental features as documented for 1.6.x, with the exception of DeclarativeSupport which is a productive feature now, see above
- new experimental feature: Control sap.uiext.inbox.SubstitutionRulesManager: API is not yet finished and might change
Tools Version 1.6.2 (August 2012)
Tools
- Minor bugfixes
Runtime Version 1.6.1 (July 2012)
Controls
- FIX: Shell: Labels and Texts not selectable
- FIX: Security Fix for XSS prevention.
- FIX: FacetFilter: Fix declare in Renderer
- FIX: Fix the columnHeaderHeight property of the Table
- FIX: Grouping not working in IE RTL mode.
- FIX: Fix for Paginator focus issues in IE8
- FIX: Factory function doesn't work as documented
- FIX: Due Date Filter not available Added support from TaskInitial Filter.
- FIX: Due Date Filter Not Available Added Due Date Filter capability in Inbox.
- FIX: QUnit tests are failing for BPMInbox. Qunits falling due to issue in bindTaskTable.
- FIX: Some dropDown filters not working in Inbox
Tools
- FEATURE: The SimpleProxyServlet (used for local testing) is now using the standard Java proxy settings (http.proxyHost, http.proxyPort, http.noneProxyHosts, https.proxyHost, https.proxyPort, https.noneProxyHosts) instead of special servlet parameters. This information by default comes from the Eclipse proxy settings. The base remote location is configured via the servlet context parameter com.sap.ui5.proxy.REMOTE_LOCATION.
Runtime Version 1.6.0 (during development 1.5.3-SNAPSHOT) (July 2012)
Framework
- CHANGE: One common package sap/ui/thirdparty (incl. sub packages) within the Core library which contains all open source third party libraries:
- The following files were moved from their origin location without replacement: iscroll.js, iscroll-lite.js, zyngascroll.js, qunit.css, jquery-mobile-custom.js
- The following files were moved from their origin location, but a stub for loading the new file was added at the origin location:
- datajs.js, qunit.js, jquery-ui-core.js, jquery-ui-position.js, jquery-ui-datepicker.js
- The stub uses the jQuery.sap.require functionality and therefore only works when this functionality is available.
- Using the stub as fallback causes additional requests and is therefore only intended for an intermediate solution. Applications should adapt their dependencies as soon as possible.
- The following files were newly added: d3.js, jszip.js, less.js, caja-html-sanitizer.js
- jQuery UI was upadted to version 1.8.21 and addional jQuery UI plugins were added: jquery-ui-widget.js, jquery-ui-mouse.js, jquery-ui-draggable.js, jquery-ui-droppable.js, jquery-ui-resizable.js, jquery-ui-selectable.js, jquery-ui-sortable.js, jquery-effects-*.js
- The available jQuery versions are kept at the origin location but a copy is added to the new package. The Core uses by default the new location. Future versions of jQuery will only be available at the new location.
- Please notice also the corresponding section in the Compatibility Rules.
- CHANGE: The theming/styling of controls has been changed to use LESS. Therefore nearly all color parameters had changed. So if custom styling uses the color parameters they must be changed to the new oned to still work.
- NEW: sap.ui.model.json.JSONModel, sap.ui.model.xml.XMLModel, sap.ui.model.odata.ODataModel introduce a new method forceNoCache(). If set to true it will force requested pages not to be read from the browser cache. For XMLModel and JSONModel the default is set to true, for the ODataModel to false.
- NEW: sap.ui.model.json.JSONTreeBinding Support for nested arrays.
- CHANGE: sap.ui.model.odata.ODataModel.submitChanges(...) Does a MERGE request instead of PUT. No deep update possible, therefore associated entries are removed if the data was retrieved via expand.
- CHANGE: sap.ui.model.odata.ODataModel.update(...) New option to do a MERGE request instead of a PUT request.
- CHANGE: sap.ui.model.odata.ODataModel.getProperty(...) New Flag bIncludeExpandEntries. If the data was retrieved with expand, the data will be returned as deep structure if bIncludeExpandEntries is set to true. If bIncludeExpandEntries is set to false the referenced data will not be included.
- DEPRECATION: sap.ui.model.odata.ODataModel.getData(...) was deprecated. Use sap.ui.model.odata.ODataModel.getProperty(...) instead
Controls
- NEW: Various header types for control sap.ui.ux3.Shell: Aggregation headerType of type ShellHeaderType
- NEW: Options to hide tool area and side panel in control sap.ui.ux3.Shell: Properties showTools and showPane
- CHANGE: Adapations of GoldRelection theme for sap.ui.ux3.Shell and sap.ui.ux3.NavigationBar
- NEW: Base class sap.ui.core.search.SearchProvider for search providers introduced.
- DEPRECATION: sap.ui.commons.SearchProvider was deprecated. Instead sap.ui.core.search.OpenSearchProvider ( OpenSearchProvider API) should be used.
- NEW: New property enableFilterMode on control sap.ui.commons.SearchField: When this property is set the search event is also fired when the SearchField is empty or the Clear icon is pressed.
- NEW: Added the UI library sap.ui.richtexteditor containing the RichTextEditor control to provide a proper control to enter formatted text.
- The RichTextEditor of SAPUI5 version 1.6 contains a third party component TinyMCE provided by Moxiecode Systems AB. The SAP license agreement does not cover development of own applications with RichTextEditor of SAPUI5 version 1.6. To develop own applications with RichTextEditor of SAPUI5 version 1.6 customer/partner has to first obtain an appropriate license from Moxiecode Systems AB.
- Please be aware that the RichTextEditor control of SAPUI5 is going to be changed with the next SAPUI5 release 1.8: the reason is the embedded third party component TinyMCE from Moxiecode Systems AB, which potentially can be used by customers/partners without being aware of the specific license terms. To prevent this accidental usage, the TinyMCE code is going to be removed. More instructions how to manually add TinyMCE code will follow in the release notes of the SAPUI5 release 1.8.
- NEW: Popup pplacement in sap.ui.commons.CalloutBase: a callout control can be now positioned to the left or right of the parent control, in addition. A new method setPosition is added to simplify positioning. This functionality is available for sap.ui.commons.Callout and sap.ui.ux3.QuickView controls.
- NEW: sap.ui.table.ColumnMenu Added new control
- NEW: sap.ui.table.ColumnMenu Added visibility submenu
- NEW: sap.ui.table.Table Added new event "columnVisibility"
- NEW: sap.ui.table.Table Enabled zooming on touch devices
- NEW: sap.ui.table.Table Added new aggregation "menu"
Tools
- NEW: SAPUI5 Tools in Eclipse are new with release 1.6.0 and offer
- SAPUI5 Application Development Tool to create applications. It comes with
- wizards to create the application project
- and its views (with a JavaScript, XML or JSON layout)
- JavaScript coding completion and code templates/snippets and a
- build-in application preview.
- There is a Team Provider functionality to share/retrieve/submit application projects with an ABAP system (NetWeaver UI Extensions AddOn for NetWeaver 7.31) to support development within a team and handle conflicts.
Experimental Features:
Experimental features are not part of the officially delivered scope that SAP is going to guarantee for future releases – means experimental Features may be changed by SAP at any time for any reason without notice. The Experimental features are "NOT FOR PRODUCTION USE". You may not demonstrate, test, examine, evaluate or otherwise use the Experimental Features in a live operating environment or with data that has not been sufficiently backed up.
The purpose of Experimental features is to get feedback at an early point of time allowing customers/partners to influence the future product accordingly. Please use the SCN Developer Center http://scn.sap.com/community/developer-center/front-end to provide feedback accepting that Intellectual Property rights of the contributions or derivative works shall remain the exclusive property of SAP.
For general information about Experimental features, please check the Compatibility Rules, for a detailed list check out the list below:
- Mobile Tablet Support: The controls of the UI libraries sap.ui.core, sap.ui.commons, sap.ui.ux3 and sap.ui.table are not yet optimized or adapted for mobile tablet usage.
- OData Write Support: basic modificator functions for OData and first experiments for two way binding
- Module sap.ui.core.plugin.DeclarativeSupport: Current status is prototype.
- Module sap.ui.core.plugin.LessSupport: Current status is prototype.
- Module sap.ui.core.delegate.ScrollEnablement: Current status is prototype.
- Configuration Parameters with "-xx-" and the corresponding features: e.g. sap-ui-xx-test-mobile
- Weinre Server Configuration: Might change or removed in future releases
- Control sap.ui.table.Table: Current status for Threshold and Column Grouping is prototype.
- Deprecated Message Controls in sap.ui.commons: MessageBar, Message, MessageList, MessageToast - a new messaging concept is planned which will replace these controls.
- Control sap.ui.core.HTML: Support of HTML with multiple root nodes
- Control sap.uiext.inbox.Inbox: API is not yet finished and might change
- Control sap.ui.suite.TaskCircle: API is not yet finished and might change
- Control sap.ui.suite.VerticalProgressIndicator: API is not yet finished and might change
- Control sap.ui.ux3.Shell: Personalization, Color Picker (Control sap.ui.ux3.ShellColorPicker) and "Inspect"-Tool
- Controls / Types sap.ui.ux3.Feed*: Open discusses might result in API changes and adaptation. Especially the text presentation (e.g. @-references and formatted text) is not yet clear. Also Feed Model topic still open.
- Control sap.ui.ux3.Exact: Open discussions might result in API changes and adaptation. Especially the Result Area is not final.
- Control sap.ui.ux3.ExactArea: Open discussions might result in API changes and adaptation.
- Type sap.ui.ux3.ActionBarSocialActions: Open discussions might result in API changes and adaptation.
- Theme Editor: This application allows for easy branding of SAPUI5 applications. Currently optimized for the use with Chrome and Firefox.
- Improved performance for touch devices: Mouse events are now fired on their corresponding touch events
Runtime Version 1.5.2 (June 2012)
Framework
- CHANGE: The BeforeRendering Event (optional function onBeforeRendering in controls) is now called before every (re-)rendering of the control. This affects also the corresponding function in view controllers.
Controls
- CHANGE: sap.ui.commons.DatePicker on mobile devices now a native DatePicker is used. Therefore some functionlaity is not available there:
- it is not possible to open the DatePicker via F4. Only the native events open it
- The date pattern is used from the device. No pattern set by the application is used. But on the value property the date is provided with the pattern of the defined locale or set by the binding.
- Not all mobile devices already support the native DatePicker, on iPad it works. (Here input type=date is used, so the device/browser must support this.) Here we should think about feature detection…
- no direct input of the date possible, only via DatePicker.
- no copy & paste possible
- NEW: sap.ui.commons.ColorPicker control has been created
- NEW: sap.ui.commons.SegmentedButton control has been created
- CHANGE: sap.ui.ux3.DataSet Toolbar and FilterArea added. View switches are implemented with new SegmentedButton
- there is no build in sorting button anymore. Sorting can be handled via own functions in the new toolbar.
- there is no build in filter support anymore. Filtering will be handled e.g. by adding a FacetFilter into the new filter area.
- CHANGE: sap.ui.commons.layout.BorderLayout has been refactored.
- The specific RTL support of the BorderLayout has been dropped in favor of the standard RTL handling of UI5. Applications that have set the RTL property matching the global RTL configuration don't need to change anything. Only applications that have set the RTL property to a value different from the central configuration might run into issues. UI5 strongly suggests to rely on the central configuration. The value of the RTL property is ignored.
- the animated hide/show of areas is no longer a supported feature. It is still available but applications should consider to remove it or to animate the area on their own.
- CHANGE: sap.ui.core.ScrollBar Added touch support for mobile devices
Runtime Version 1.4.3 (2012-06-2?)
A patch for the 1.4 code line. It contains the following fixes:
- FIX Demokit: navigation and history fixed, spelling corrections
- FIX ODataModel: fix init problem for 1.4
- FIX ODataModel: fix refresh data after write
- FIX Databinding: setSizeLimit for JSON- and XMLModel
Runtime Version 1.5.1 (May 2012)
Framework
- CHANGE: the 'preload' feature that loads all JavaScript modules for a library in one request has been made a non-experimental feature and it is activate by default. See Bootstrap documentation for details.
- CHANGE: Databinding syntax changed, so that absolute bindings now must have a leading slash. For compatibility reasons, method setLegacySyntax() can be used to enable the old binding syntax.
- CHANGE: sap.ui.core.Element renamed method bindContext to bindElement for better understanding
- CHANGE: sap.ui.core.Element added support for model specific parameters in bindProperty, bindAggregation and bindElement
- CHANGE: sap.ui.core.Element extended signature of bindProperty and bindAggregation to accept object literals for binding information
- NEW: sap.ui.model.odata.ODataModel added support for $expand in createBindingContext and bindList
- NEW: sap.ui.core.Element added support for factory method instead of template control in bindAggregation
Controls
- CHANGE: Some properties of the charting controls (sap.service.visualization.*) have been renamed for clearer APIs, please check the API Reference. Most important changes are: measuresAsObjects has been renamed to tabularData, all ''Some''NumberFormat properties have been renamed to ''Some''FormatString.
- CHANGE: sap.ui.commons.DatePicker add keyboard navigation for "+" and "-" keys on input field
- CHANGE: sap.ui.commons.DatePicker use CLDR texts and locale information to localize DatePicker. This might change some texts and some default patterns!
- CHANGE: sap.ui.commons.DatePicker if bould to a model using the date type, the format pattern defined in the binding is used
- Change: sap.ui.commons.ComboBox/sap.ui.commons.DropdownBox on mobile devices now a native ComboBox is used. Therefore some functionlaity is not available there:
- it is not possible to open the dropdown list via F4. Only the native events open it
- there is no hover or active effect on the expander button
- there is no sapui5 specific typeahead function in the open list, only a native one if available on the device
- if there is a value entered in the ComboBox that is not in the list this is added as entry to the list (and removed if changed/deleted).
- by opening the list, the input field gets a short moment grey on the iPad
- on the DropdownBox there is no copy&paste possible
- the search help functionality of the DropdownBox is not available for mobile devices
- the history function of the DropdownBox is not available on mobile devices
- Change: The showListExpander feature of sap.ui.commons.SearchField is not available on mobile devices.
- Deprecation: The sap.ui.table.DataTable control is deprecated and should ve replaced by the new table controls (see below).
- NEW: sap.ui.table.Table control
- NEW: sap.ui.table.TreeTable control
- NEW: Menu item sap.ui.commons.MenuTextFieldItem
- NEW: sap.ui.commons.Callout control
- NEW: sap.ui.ux3.QuickView control
Runtime Version 1.5.0 (April 2012)
Framework
- NEW: API for performance measurements: jQuery.sap.measure
- NEW: API for mobile device detection and page initialization: "jQuery.sap.mobile", defining jQuery.device.is, jQuery.device.os and extending jQuery.support.
Controls
- NEW: control sap.ui.ux3.FacetFilter has been created.
- NEW: a first version of the CVOM charting library has been added. It contains controls for Bar chart, Line chart, Pie chart and Combination chart. Code samples can be found in the testsuite.
Runtime Version 1.4.2 (2012-05-16)
A patch for the 1.4 code line. It contains the following fixes:
- FIX Logging: allow log level configuration via URL parameter
- FIX Fix preserve DOM
- FIX Demokit: remove unnecessary content
- FIX ApplicationHeader: fix support for custom style classes
- FIX ODataModel: Make collection size limit configurable
- FIX Demokit: fix navigation on NetWeaver Java
- FIX Configurator WebUI: fix issue with the generation of boostrap files (containing Core)
- FIX All-In-One files: fix issue with module order
- FIX DropdownBox: Backspace creates invalid entry
- FIX Scrollbar: fix for event propagation
- FIX ExactList: Fix Positioning of expanded lists in RTL
- FIX ExactList: Optimize performance
- FIX Table: Bugfix for typos exit function of Table control
- FIX EPM Demo: adaptations to modified oData Fields
Runtime Version 1.4.1 (2012-04-13)
A patch for the 1.4 code line. It contains the following fixes:
- FIX: ODataModel: Renamed getMetadata to getServiceMetadata, getMetadata is reserved for getting the object metadata (see sap.ui.core.Metadata)
- FIX: Control / Element: make deferred placeAt() robust against premature destroy()
- FIX: DropdownBox: fixes on history feature
- add maxHistoryItems property to allow to disable history
- fix on typeAhead, show all valid history items up to max number
- refresh default value if listbox (items) are changed
- FIX ODataModel: Wrong date format in OData filter parameter
- FIX ThingInspector: Avoid assertions for internal aggregations
Runtime Version 1.4.0 (during development 1.3.3-SNAPSHOT) (April 2012)
Framework
- NEW: SAPUI5 Support Tool available (Technical Info, Console Log and Control Tree + Properties List) - the shortcut to open the tool is: CTRL+SHIFT+ALT+S
- NEW: in addition to the locale specific formatting, applications can define their own default formattings for date, time and numeric data. For details check the new FormatSettings API
- CHANGE: Function jQuery.sap.log.setLogListener was removed. Instead the 2 new functions jQuery.sap.log.addLogListener and jQuery.sap.log.removeLogListener are added.
- CHANGE: The proxy servlet com.sap.ui5.proxy.SimpleProxyServlet has been restricted for local usage only.
- DELETION: The proxy servlet com.sap.ui5.proxy.ProxyServlet is removed from distribution.
- DELETION: The deprecated context parameters of the Resource Servlet (com.sap.phx.*) have been removed.
Controls
- NEW: Property title added to sap.ui.ux3.Feed control. Title of the feed can be changed now.
- DELETION: The old feed controls sap.ui.ux3.feed.BaseFeedEntry, sap.ui.ux3.feed.CommentEntry, sap.ui.ux3.feed.FeedComponent, sap.ui.ux3.feed.FeedEntry and sap.ui.ux3.feed.Feeder. Use sap.ui.ux3.Feed, sap.ui.ux3.FeedChunk and sap.ui.ux3.Feeder instead.
- DELETION: The deprecated properties accessibleDescription and accessibleName are deleted from the sap.ui.commons.TextField control.
- DELETION: The deprecated method setContent was deleted from the sap.ui.commons.layout.MatrixLayoutCell control.
- DEPRECATED: The controls sap.ui.commons.MessageToast, sap.ui.commons.MessageList, sap.ui.commons.MessageBar and sap.ui.commons.Message are deprecated. A new messaging concept will be created in future. Therefore these controls might be removed in one of the next versions.
- CHANGE: The Fontsize and color for header texts in sap.ui.commons.TextView control are adopted to the goldreflection specification.
Experimental Features:
- Mobile Tablet Support: The controls of the UI libraries sap.ui.core, sap.ui.commons, sap.ui.ux3 and sap.ui.table are not yet optimized or adapted for mobile tablet usage.
- Theming: In future LESS might be introduced. Therefore adaptations in custom themes might be necessary.
- OData Write Support: basic modificator functions for OData and first experiments for two way binding
- Module sap.ui.core.plugin.DeclarativeSupport: Current status is prototype.
- Control sap.ui.ux3.Exact: Open discussions might result in API changes and adaptation. Especially the Result Area is not final.
- Controls sap.ui.ux3.Feed*: Open discusses might result in API changes and adaptation. Especially the text presentation (e.g. @-references and formatted text) is not yet clear. Also Feed Model topic still open.
- Control sap.ui.core.HTML: Support of HTML with multiple root nodes
- Control sap.ui.ux3.Shell: Personalization, Color Picker and "Inspect"-Tool
- Control sap.ui.table.DataTable: Plan is to deprecate it and to replace with sap.ui.table.Table. The old APIs should be kept and be routed to the new APIs - seamless migration.
- Deprecated Message Controls in sap.ui.commons: MessageBar, Message, MessageList, MessageToast - a new messaging concept is planned which will replace these controls.
- Configuration Parameters with "-xx-" and the corresponding features: e.g. sap-ui-xx-preload
- Weinre Server Configuration: Might change or removed in future releases
Runtime Version 1.3.2/1.3.1 (March 2012)
Note: Version 1.3.2 completely replaces 1.3.1, as 1.3.1 contains an outdated documentation.
Framework
- NEW: a new API for creating controls (or classes in general) has been introduced. See the documentation for details.
- CHANGE: the generation tools for controls have been adapted to the above mentioned new API. Due to this, the build results of 1.3.2 tools definitly require a 1.3.2 runtime. The same dependency between tools and runtime existed in older versions, but the impact was not that high. This time, any control build with 1.3.2 will fail on an older runtime!
- CHANGE: the whole concept for supporting optimized and unoptimized JavaScript sources in parallel has been revised (see documentation). It no longer requires server side support, but is handled completely on the client. If an application uses optimized sources and the debug mode is activated (either by specifying the URL parameter sap-ui-debug=true, by executing jQuery.sap.debug(true) in the console or address field or by opening the technical info with CTRL-SHIFT-ALT-P and using the corresponding check box), then the page will use debug sources from that point in time on.
- CHANGE: the configuration option debug has completely changed its meaning. In former releases, it activated the display of a control tree and a list of properties (as in the test suite). Starting from 1.3.2 on, the debug option instead toggles between optimized and debug sources. The old behavior still is supported, but with the new inspect option. See the configuration documentation for a complete list of options.
Controls
- CHANGE: Feed:
- The property commentChunk is deprecated because its not longer used. A FeedChunk will be automatically an comment if it's a child of a FeedChunk.
- The properties feederThumbnailSrc and feederSender of the FeedChunk control are now optional if the feedChunk is part of a feed control. In this case the value it taken from the parent. So the properties must only be set once at the feed control
- The order of the comments has changed like defined in the UI specification. A new comment is now added at the end.
- Now it is possible to show only the recent comments if all comments are shown before.
- CHANGE: the "worksetItemSelected" event of the sap.ui.ux3.Shell control is now fired before the workset item selection has changed. Therefore in the event handler Shell.getSelectedWorksetItem() now returns the previous selection! Instead, oEvent.getParameter("selected...") needs to be used to get the respective information about the target workset. This change was required to enable "preventDefault" functionality on this event. So the application can actually cancel /disable the switch to another workset item now.
Runtime Version 1.3.0 (February 2012)
Framework
- NEW: method Element.data(...) has been introduced to attach arbitrary data to UI5 controls. In the background this is an aggregation to sap.ui.core.CustomData which can also be used in Views and with data binding. See the respective documentation.
- NEW: Included locale support for the major languages and sap.ui.core.Locale to access locale specific data like date formats, number formats, currencies etc. The simple types like Date, Time Integer etc. have been extended to support the formatting and parsing of these locale data. See here how to use it: Testpage and Documentation.
- NEW: new API to find all child elements / controls of an element
- CHANGE: the jQuery version included in the UI5 core has been upgraded to 1.7.1 (from 1.4.4). You can still also use the UI5 core without jQuery (sap-ui-core-nojQuery.js) and additionally load your jQuery version of choice (1.4.4, 1.5.3, 1.6.4 and 1.7.1 are included as standalone files and supported).
- CHANGE: the included parts of jQuery UI (in particular the DatePicker) have been updated to version 1.8.17 (only a minor update)
- CHANGE: the support for databinding in the XMLView has been improved: binding of properties that have not a string type now works and list bindings can be used now
- CHANGE: the Java resource handler has been improved so that the cachebuster can be used with the CDN version or proxy configurations as well
- CHANGE: the handling of resource bundles has been changed so that empty or invalid language configuration doesn't break the application
- CHANGE: omit request to (often missing) central configuration file during bootstrap
- CHANGE: fix several assertions reg. model,
Controls
- NEW: control sap.ui.commons.ValueHelpField has been created.
- NEW: control sap.ui.commons.ToggleButton is ready to be used.
- NEW: ExactBrowser: support a reset via API
- CHANGE: DataTable: ARIA and keyboard support has been improved
- CHANGE: VerticalLayout: some style attributes have been moved to CSS classes to facilitate modifications by using custom style classes
- CHANGE: SearchField: Fix updated of suggestion list on BACKSPACE or DEL
- CHANGE: Some minor fixes and enhancements in Shell (rerendering of FacetBars, exception during destroy), MenuButton (redraw when modified while invisible), FileUploader (rendering without IFrame), ListBox (ID of items), DataTable (XSS fix reg. header)
Packaging & Documentation
- NEW: Core and all Controls: texts added in more languages
- CHANGE: Control Documentation revised
- CHANGE: to avoid misunderstandings reg. the contained functionality, the UI5 deliverable for static web servers has been renamed from sapui5-light to sapui5-static.
Runtime Version 1.2.0 (during development 1.1.2-SNAPSHOT) (January 2012)
Framework
- CHANGE: XMLModel: XMLTreeBinding didn't work when using hierarchical models with nested nodes with the same name. This has now been fixed. If your existing application doesn't work anymore (also this might be the case when using XMLListBinding), specify an absolute binding path because this behavior has been changed. Instead of getElementsByTagName which finds all nodes independently of its positions in the hierarchical tree we now use a getChildElementsByTagName internally to find only the nodes of a given parent node. So you have to specify the path to these parent node to get your application working again. —> e.g. model: <root><members><member> x</member></members></root>. Old binding was: oCombo.bindItems("member", oItemTemplate1);. This needs to be changed to: oCombo2.bindItems("/members/member", oItemTemplate1);.
- CHANGE: the deprecated methods sap.ui.core.RenderManager.writeCustomStyleClasses() and sap.ui.core.RenderManager.getEscaped() have been removed
- CHANGE: the logging APIs have been revised, logging is now configurable and the default behavior differs for debug sources (verbose) and optimized sources (only errors are logged). See Logging API documentation.
- CHANGE: out of the box support for the long deprecated old view names JsView, JsonView and XmlView have been removed. Please use the long established new names of JSView, JSONView and XMLView instead (all upper case letters for the technology acronyms) or create aliases on your own (oldName = newName)
- CHANGE: For associations within declarative Views (JSON, XML), the framework so far did not correctly manage the Ids (e.g. labelFor). As a result, such associations pointed to non-existent or (even worse) to wrong controls. This has been fixed, all associated Ids are prefixed now with the Id of the view. The view does not try to determine whether an id is part of the view or not. Instead it is assumed that views can declare associations reliably only to controls that they contain. Associations to controls outside the view must be established at runtime in controller code.
Controls
- NEW: control sap.ui.commons.ToggleButton has been created BUT is not ready to be used yet (only GoldReflection theme is supported and there is no accessibility support), so it has been marked as deprecated. This status will be removed in the next drop (sprint result).
- NEW: Splitter now has a new property splitterBarVisible which lets you hide the splitter bar.
- NEW: The sap.ui.ux3.DataSet control has been created.
- CHANGE: The enumeration values of the Orientation type (used by the Splitter) were renamed to upper case. Please adapt to these changes. The old versions still work though.
- sap.ui.commons.Orientation.vertical —> sap.ui.commons.Orientation.Vertical
- sap.ui.commons.Orientation.horizontal —> sap.ui.commons.Orientation.Horizontal
- NEW: TreeBinding now supports filtering so all model implementations can now implement the tree filtering functionality. Tree filtering is implemented for the JSONModel and XMLModel.
- NEW: the Button control was enhanced with the following properties:
- styled: if set to false the button is rendered without any CSS styles. So applications can design their own styles more easily.
- lite: if this is active, the button is rendered in a lite style (only specified in goldreflection, in other themes it looks like the toolbar button).
- style: A button can now have different styles like emphasized, accept or reject. For the possible styles a new type sap.ui.commons/ButtonStyle was created.
- CHANGE: the Button control style for Gold Reflection was adopted to implement the visual specification.
- CHANGE: Label control logic to determine ID of labelled HTML element of labelled control changed. A new function getIdForLabel introduced for all controls. By default the control ID is returned. But if the label should point to an inner HTML element it must be overwritten to return the right ID. Slider control and ListBox control adopted for this.
- CHANGE: ListBox control change of FocusDomRef to UL element.
- CHANGE: the long-deprecated method sap.ui.commons.Dialog.setContent() has been deleted. Use addContent() instead.
- CHANGE: the long-deprecated Web Table has been removed from the sap.ui.table library. It was never ment to be a productive control, so products must not use it. However, it is still available in our sap.ui.dev library with the name sap.ui.dev.webtable.Table. (remember: sap.ui.dev must not be delivered outside SAP).
- FIX: The tooltip for the 'select all' button in a DataTable? remained active, even when the selection mode had hidden the button itself. This has been fixed.
- FIX: The ApplicationHeader? failed to cleanup all its parts which might have led to duplicateId errors when an ApplicationHeader? was created again with an older Id. This has been fixed.
- CHANGE: Rework of ExactBrowser control:
- NEW: Header bar with reset functionality
- NEW: Keyboard support
- CHANGE: Display mode for lists was changed from a flat to a hierarchical visualization.
- DELETION: The internally used control ExactBrowseAttribute was removed and replaced by the new (private) control ExactList.
Runtime Version 1.1.1 (December 2011)
- DEPRECATED: The feed controls in sap.ui.ux3/feed folder are deprecated because there is a new set of feed controls direct in the sap.ui.ux3 root folder. In this takt these new controls have a base functionality and will be enhanced in future.
- NEW: Touch event support in mobile environments for control development ("on<EventName>" functions):
- The basic touch events touchstart, touchmove, touchend and touchcancel are added to the SAPUI5 Core event list (only if touch is supported).
- To to extend this touch event support parts of the jQuery Mobile 1.0 framework are included into the SAPUI5 Core (only if touch is supported). In detail the following jQuery Mobile plugins are included:
- jquery.mobile.media.js + jquery.mobile.support.js to enrich the feature detection (jQuery.support object).
- jquery.mobile.vmouse.js which provides basic event functionality to unify the browser and mobile event world.
- jquery.mobile.event.js which mainly provides additional touch events, which are derived from the basic touchstart/touchmove/touchend events.
- Therefore in addition the following jQuery Mobile "touch" events are added to the SAPUI5 Core event list (only if touch is supported): tap, swipe, swipeleft, swiperight, scrollstart, scrollstop
- To better support RTL scenarios the SAPUI5 Core provides on top of these jQuery Mobile "touch" events (swipeleft / swiperight) the semantic events swipebegin and swipeend.
- NEW: Validation hooks where the application can attach on parse/format/validation error events when these occur upon user input. An application can call attachParseError, attachValidationError, attachFormatError, attachValidationSuccess on the core and register a callback function to receive these events and then extract the affected element, its property and error messages out of the event object to react correspondingly. Currently these events are only fired if a binding with a type exists for the element property which input should be verified.
Runtime Version 1.1.0 (November 2011)
Framework
- NEW: Data Binding: Added new Events requestSent and requestCompleted which are fired by model implementations when they sent requests to the server to load data. The requestCompleted event is fired also when the request failed. In this case a requestFailed event is additionally fired. You can attach/detach to these events by calling the corresponding attach/detach functions on the model: e.g. oModel.attachRequestCompleted(this,function(oEvent){alert('request completed')}).
- CHANGE: datajs 1.2 integrated. This is mostly a maintenance release, so nearly everything should work as before.
- CHANGE: jQuery.sap.XML plugin method: jQuery.sap.parseXML() behavior changed. Now always a parseError object is appended as property of the returned XML document. To check if a parse error really occurred check if the errorCode property of the parseError object is != 0. This change was necessary because IE8 always has a parseError object attached even if no parse error occurred. In this case the error code is 0.
Controls
- NEW: The sap.ui.mobile library has been created, but is not meant for productive use yet! It is supposed to be the home for mobile-specific controls.
- CHANGE: the MobileApp and MobilePage control from the dev library have been copied into this new library and renamed to sap.ui.mobile.App and sap.ui.mobile.Page. Both are NOT ready for use. The controls in the dev library have been deprecated.
- NEW: new event liveChange on TextField, TextArea, ComboBox and DropdownBox controls. This is fires on keyup and returns the current content.
- NEW: new method getLiveValue on TextField, TextArea, ComboBox and DropdownBox controls. This returns the current content of the field, e.g. during typing.
- CHANGE: The sap.ui.table.Table has been reworked (deprecation has been removed and is re-implemented). The API has been changed. It is an alternative to the sap.ui.table.DataTable.
- CHANGE: The initialization of the DropdownBox has changed. If no valid value is set the first item is used as value.
- CHANGE: The properties accessibleDescription and accessibleName of the TextField control are deprecated because they have no functionality.
Runtime Version 1.0.0 (AKA 0.20.0 - October 2011)
Framework
- CHANGE: SAPUI5 has changed its versioning scheme: 0.20.x has been renamed to 1.0.x. In Nexus you will find both versions, but only the 1.0.0 line might benefit from patches.
- CHANGE: jQuery.sap.getUriParams now properly decodes '+' encodes spaces in URL parameters
- NEW: Data binding: New binding mode: One Time (read only from the model once).
- NEW: Data binding: New method on Element: hasModel: To check if a model is set to the element or one of its parents (including the Core).
- NEW: Data binding: Introduced SimpleTypes: Integer, Float, String,Boolean which can be set to the bindProperty method e.g.: oText.bindProperty("/clients/0/name",new sap.ui.model.type.String()). Restrictions, Input parsing and output formatting is then supported: new sap.ui.model.type.String(null,{ minLength : 3, maxLength : 10}).
- NEW: Data binding: Multi model support: It is now possible to set an additional model to an element/core by specifying a name for the model: e.g. element.setModel(oModel, "modelname");. When creating property bindings to this model you have to specify its name: oText.bindValue("modelname>/clients/0/name"). Note: these "secondary models" currently only support property bindings and not aggregation bindings.
Controls
- CHANGE: the "key" parameter of the "worksetItemSelected" event of the sap.ui.ux3.Shell control is now null instead of an empty string if the triggered Item does not have a key. The "paneBarItemSelected" event now contains the same parameters.
- CHANGE: the CSS classes written by the BorderLayout have been changed to fit our naming scheme (only relevant when referred to in a selector in some custom CSS used by an application).
- CHANGE: the sap.ui.commons.Dialog does no longer automatically choose a default Button. You explicitly have to define one if you want a Dialog to forward any "Enter" key press inside the Dialog to a certain Button.
- NEW: new properties selectedKey and selectedItemID on ComboBox and DropdownBox controls. The value can now be set using the item id or key.
- CHANGE: When an XMLView is rerendered, it now preserves its pure HTML (XHTML namespace), only controls are rerendered. Dynamic modifications to the DOM are also preserved.
LIMITATION: HTML controls as direct children of an XMLView are currently not supported. In most cases you can use XHTML content instead, which should even be easier to use. HTML controls can be used as children of other UI5 controls within an XMLView, but even there using XHTML might be more convenient. Outside of XMLViews, the HTML control is still the only way to embed HTML content into a control hierarchy. - NEW: the sap.ui.commons.HorizontalLayout control has been created.
- CHANGE: some colors of the "Gold Reflection" theme have changed according to the newest Ux guidelines. You may want to adapt if you hardcoded the old colors:
- The general background from #F7F7F7 to #F2F2F2
- The tool icons in the left-hand side of the Shell to a main color of #8899AA
Runtime Version 0.19.0 (September 2011)
Framework
- CHANGE: The default execution context this for control event handlers attachXYZ and browser event handlers (attachBrowserEvent has been made more consistent.
For control event handlers e.g. Button.press the context was window before, for browser events (e.g. keydown, mousedown) it was the corresponding DOMref before. Code samples and requests from our consumers have shown, that access to the control is needed most of the time. This often resulted in extra code, e.g. using jQuery.proxy() at registration time or using oEvent.getSource() or jQuery(oEvent.target).control(0) in the event handler.
NOTE: Therefore, as of now, all control event handlers are by default called with the corresponding control/element as their context (this).
This obviously is an incompatible change, but for applications that do not use this in event handlers, the existing code should continue to work. The three formentioned workarounds are to be used preferably. They might benefit from the change and remove the workarounds. Applications that do use this in the event handler need to modify their code. In control event handlers, they can access window directly. In browser event handlers, they can use oEvent.target, where oEvent is the first argument of the event handler (event object).
In addition, the attachBrowserEvent method now supports a third parameter (oListener) to define a concrete context for the event handler function.
- CHANGE: jQuery.sap.includeScript can only be used after the document has been initialized since document.write does not work for XHTML pages. We recommend to include initial scripts via the SCRIPT tag.
- CHANGE: Accessibility Mode is activated now by default and can be explicitly switched off using the configuration parameter sap-ui-accessibility=false.
- NEW: There are several new features available for the data binding:
- New events have been added which are fired when data loading (requestFailed) or data parsing (parseError) fails.
- New method PropertyBinding.setValue which updates the value on the binding and also in the model.
- Two-Way data binding has been introduced. Per default, all models have the defaultBindingMode set to sap.ui.model.BindingMode.TwoWay and support the One-Way and Two-Way binding modes. A model implementation can now specify its supported binding modes (e.g. only One-Way). An application can specify the default binding mode to be used for the model instance in the case that the mode is supported by the model. In the bindProperty method you can also specify the binding mode which should be used only for this specific property binding. The model needs to support this binding mode. The available binding modes are defined in sap.ui.model.BindingMode.
- Binding of the tooltip property finally also works in the constructor (e.g. {{{…tooltip: "{comment}", …})
- CHANGE: Data Binding for JSON Model: The optional data merge does now behave like jQuery.extend( [deep], target, object1, [objectN] )) with deep=true (the merge becomes recursive (aka. deep copy).
Controls
- CHANGE: The default value of the HTML control property preferDOM has been changed from false to true. This was a development request, as all use cases we have seen so far used the HTML control to create and preserve some piece of HTML. Most of the users first had to learn about the property preferDOM before they got their use cases working, so we decided to make it easier and to change the default (although this is an incompatible change). If an application really needs the old behavior, it simply can set preferDOM=false. Furthermore, the documentation of the contract and the restrictions of the HTML control have been detailed.
- NEW: The sap.ui.commons.TabStrip control has been enhanced with the tooltip function.
- CHANGE: Keyboard navigation improved for sap.ui.commons.TabStrip control
- CHANGE: sap.ui.commons.layout.MatrixLayout now has a property widths to set the widths of the colums. So the widths can now be read, not only set. As a result, the widths can be used in the XMLViews and JSONViews (MVC) as well.
- CHANGE: sap.ui.commons.DropdownBox now has the properties searchHelpEnabled, searchHelpText, searchHelpAdditionalText and searchHelpIcon to activate the search help functionality. In former releases, the same functionality was available via pure JavaScript APIs. With the current change, the features can be used more easily with the MVC concept, especially with XMLView and JSONView. For applications, this change should be transparent.
- DEPRECATION: Control sap.ui.commons.RoadMap: Substeps are no longer supported and will be removed in a future version. Therefore, the property expanded and the aggregation substeps of sap.ui.commons.RoadMapStep have been deprecated.
- CHANGE: The sap.ui.commons.layout.AbsoluteLayout has been reworked. The changes in detail are:
- CHANGE: The aggregation content was split into two aggregations, to make it usable in XMLViews:
- The AbsoluteLayout now has an aggregation positions which allows to aggregate sap.ui.commons.layout.PositionContainer elements. These containers then have an aggregation control to aggregate a child control which should be placed in the !AbsoluteLayout.
- A !PositionContainer which provides attributes to set the position of the child control in the !AbsoluteLayout.
- The former properties wrap* are not longer supported.
- For compatibility reasons the accessor functions of the old aggregation content (e.g. addContent) are kept. The corresponding !PositionContainers are maintained automatically in this case.
- The !AbsoluteLayout now allows to center a child control; see properties centerHorizontally and centerVertically of element sap.ui.commons.layout.PositionContainer
- The render mechanism of the !AbsoluteLayout was optimized. No re-rendering should occur when e.g. changing a position of a child control or when adding or removing a child control.
- CHANGE: The aggregation content was split into two aggregations, to make it usable in XMLViews:
Runtime Version 0.18.0 (August 2011)
- DEPRECATION: The web.Table control of library sap.ui.table and all its related controls, elements and types are only prototypic. They are now deprecated and might be removed in one of the following releases. In detail the following entities are deprecated:
- sap.ui.table.web.Table
- sap.ui.table.web.Record
- sap.ui.table.web.Cell
- sap.ui.table.web.RecordCell
- sap.ui.table.web.Toolbar
- sap.ui.table.web.ToolbarItem
- sap.ui.table.web.ToolbarItemType
- sap.ui.table.web.ToolbarType
- CHANGE: The three view control types that are part of the MVC Model View Controller support, have been renamed. The new names are more consistent with similar names in the SAPUI5 API (XMLModel, JSONModel, CSSSize, HTML(control)).
New name Old name sap.ui.core.mvc.JSView sap.ui.core.mvc.JsView sap.ui.core.mvc.JSONView sap.ui.core.mvc.JsonView sap.ui.core.mvc.XMLView sap.ui.core.mvc.XmlView
For compatibility reasons, the old names still will be supported for one or two minor releases.
- CHANGE: The default behavior of the JSON Model methods setData(oData, bMerge) and loadData(sURL, oParameters, async, sType, bMerge) have been changed. By default, they no longer merge the loaded/given data with data already existing in the model, but replace it. The old behavior still can be activated by setting the new, optional parameter bMerge to true. Applications that rely on the merge behavior need to set that parameter explicitly.
- NEW: Both, content and style of the Demo Kit, have been reworked.
Runtime Version 0.17.0 (July 2011)
- CHANGE: TabStrip control: Rework of renderer. If a new tab is selected only, the content area is rerendered, but not the complete control.
- CHANGE: TabStrip control: Change of standard behaviour by selecting a new tab. Now the new selected tab is selected automatically. No implementation of event select is needed anymore. Existing implementations should be adopted.
- NEW: TabStrip control: New method closeTab. This method should be called in the handler of the close event to close the tab. This cannot be done automatically because before the close application dependend logic must be performed. If the tab is closed, the next one is selected.
- CHANGE: TabStrip control: Once the control is rendered it is not possible to set the selectedIndex to a not existing, not visible or not enabled tab.
- DEPRECATION: The property selected of the Tab control is deprecated because it is not used. To identify the selected Tab of a TabStrip the property selectedIndex is used.
- CHANGE: TextField control: Some alignment issues fixed for internet explorer.
- CHANGE: MatrixLayout control: Fix of vertical alignment of cell content in case of layoutFixed and defined row height.
- CHANGE: The deprecated aggregation controls of the AccordionSection control has been removed.
- CHANGE: Data binding: Datajs 1.0 integrated in oData model. Everything should work as before.
Runtime Version 0.16.0 (June 2011)
- DEPRECATION/NEW: sap.ui.table.Table is deprecated now. Use sap.ui.table.DataTable instead.
- CHANGE: The default value of the SAPUI5 configuration option noDuplicateIds has been changed to true. That means whenever a control or element is created with an already existing ID, an error will be thrown. This change has been done to avoid hard to find issues with duplicate IDs ("fail early"). When you encounter such a duplicate ID error in your application, you preferably should fix the issue. Either destroy the old control instance, or use a different, unique ID for the new instance or completely omit the ID - SAPUI5 then will create a new, unique one for you. If none of these solutions is possible for some reason, and if you accept the risk of undiscovered errors, then you might set the noDuplicateIds option back to false in your application. See Configuration for details about the SAPUI5 configuration.
- NEW: Data Binding: Introduced new method bindContext and unbindContext on element to support setting/removing a binding against a specific binding path. This is useful for master/detail scenarios.
- NEW: Data Binding: Model, JSONModel, XMLModel, ODataModel: Definition and implementation of the new methods createBindingContext and destroyBindingContext. These methods are used for master/detail scenarios and are called internally by the element. Only new model implementations need to implement these methods. Applications shouldn't call these methods.
- CHANGE: Data Binding: oData Model: Removed load method. The loading of additional data is now handled internally.
- CHANGE: The deprecated class sap.ui.ux3.WorksetItem has been removed. Use sap.ui.ux3.NavigationItem instead.
- CHANGE: The method Dialog.setText() that has anyway not been in the declared API has been removed. Use setTitle() to set the Dialog title text.
- CHANGE: In the DatePicker control there are some corrections to fix some issues.
- NEW: A new VerticalLayout control was created. With this layout some controls can be aligned one below the other.
Runtime Version 0.15.0 (May/June 2011)
- CHANGE: The process of loading and initializing a UI Library on the client has been changed. In SAPUI5 up to version 0.14, a library has been loaded by
- loading the corresponding library.js file (e.g. sap/ui/commons/library.js),
- executing it, which in turn
- called back into the Core by calling the sap.ui.core.Core.initLibrary() method which
- loaded the library.properties file from the same library package (e.g. sap/ui/commons/library.properties) and
- created convenience placeholders for all controls (AKA 'lazy imports')
- Starting with version 0.15, the need to load a separate library.properties file has been eliminated. All information necessary to execute step 5) is now included in a JSON object provided by library.js in the call to initLibrary() in step 3. This change reduces the number of requests for each library by 1 and is a prerequisite for future enhancements in this area. To make the new JSON object available to initLibrary(), a UI Library must have been built with the build tools of version 0.15 (Maven or IDE).
- DEPRECATION: For compatibility reasons, older libraries are still supported (library.properties is then read as before) and for the same
reason, the library.properties file still exists. Both features will be removed in one of the upcoming releases of SAPUI5.
Note: If you have an urgent need for the library.properties file, please let us know. - CHANGE: The escaping functions jQuery.sap.escapeHTML and jQuery.sap.escapeJS have been reimplemented according to the new XSS Secure Programming Guide. In accordance with that guide, methods for escaping parts of URLs or CSS content have been added as well. For clarity, all escaping methods have been moved into a separate module jquery.sap.escape.js (previously jquery.sap.strings). The new module is automatically available to all SAPUI5 applications that use sap-ui-core.js (99%). In those rare cases, where applications do not reference sap-ui-core.js nor jquery-sap.js, but want to use the escaping, they have to include the new module directly via jQuery.sap.require("jquery.sap.escape"); }}}.
- CHANGE: The type sap.ui.ux3.WorksetItem has been replaced by sap.ui.ux3.NavigationItem (offering the same capabilities and to be used instead)
- NEW: It is now possible to define 0..n-associations in control APIs
- NEW: Elements can now be removed from aggregations not only by index, but also by ID or instance
- NEW: New control Ux3 NavigationBar offering tab-like navigation capabilities (limited accessibility as of this sprint)
- NEW: Data Binding: New binding syntax to define the binding directly in the control constructor
- CHANGE: Tree Data Binding enabled for sap.ui.commons.Tree control (see also new test page in test suite)
- CHANGE: The deprecated property Panel.showCollapseArrow has been removed.
- CHANGE: The deprecated property Panel.showMinimizeButton has been removed.
- CHANGE: The deprecated event Panel.scroll has been removed.
- CHANGE: The deprecated aggregation Panel.controls has been removed.
- CHANGE: The deprecated property Shell.helpButton has been removed.
- CHANGE: The deprecated property ComboBox.displaySecondaryValue has been removed.
- CHANGE: Complete rework of RoadMap control
- CHANGE: The deprecated aggregation AbsoluteLayout.children has been removed.
- CHANGE: Rework of Splitter keyboard navigation and many bug fixes.
- CHANGE: Complete rework of sap.ui.core.RenderManager. The changes might affect control development. The changes in detail are:
- CHANGE: Internal code cleanup and rework of rendering algorithm.
- DEPRECATION / CHANGE: The Core.getRenderManager function always returns a new RenderManager instance (respectively its interface) which can be used exclusivly without influence to the core rerendering. Too provide a proper naming the function getRenderManager has been deprecated.
- NEW: Function Core.createRenderManager is introduced as replacement for getRenderManager.
- DEPRECATION: The following functions were already or are newly deprecated and might be removed in future versions:
- getHTML: There will be no equivalent option available anymore in future because creating the HTML of a control and putting it into the DOM manually can result in controls which do not work properly. Use the new function flush as alternative (see description below)
- getEscaped: Not needed any more. Use writeEscaped, writeAttributeEscaped or directly jQuery.sap.escapeHTML instead.
- translate: Not implemented
- writeAcceleratorKey: Not implemented
- writeCustomStyleClasses: Not needed any more. Use writeClasses instead.
- writeAccessibilityState: This function is only an experimental feature.
- getResourceRoot: Use the more generic jQuery.sap.getModulePath instead.
- CHANGE: Stack is used for writing styles and classes to ensure that nested rendering of controls does not lead to side effects.
- CHANGE: Removed unnecessary parameter bReplaceExisting from the render function.
- NEW: Function destroy to cleanup an exclusive RenderManager instance when it is not needed anymore.
- NEW: Function flush as an alternative for the deprecated getHTML function (see above):
- Example usage:
// Create a new instance of the RenderManager var rm = sap.ui.getCore().createRenderManager(); // Use the writer API to fill the buffers (e.g. write controls and / or some plain HTML) rm.write("Hello"); rm.renderControl(oControl); rm.write("World"); // ... //Finally flush the buffer into a provided DOM node. The current content is removed. //After the flush the buffers are cleared and the Rendermanager instance can be reused if needed. rm.flush(oDomNode); //If the instance is not needed anymore, destroy it rm.destroy();
- This function avoids the problems occuring when putting some control HTML manually into the DOM, e.g. the currently focused control is stored, and the focus is reinitialized again after rendering or the functions onBeforeRendering and onAfterRendering are called on the rendered controls if needed.
- Example usage:
- CHANGE: The functions render, flush and destroy must not be used within control renderer code. To ensure this, a new interface has been introduced which is provided to the control renderers (see render functions of the control renderers). The interface provides all functions of the RenderManager except of the three functions mentioned above.
- CHANGE: Control Ux3 !Exact Pattern. The changes are in detail:
- NEW: Close icon on attribute list which has the same behavior as when the corresponding attribute would be deselected by the user.
- CHANGE: Changed visual appearance of the search field
- CHANGE: Changed visual appearance/behaviour of the attribute list expanding
- INCOMPATIBLE CHANGE: Attribute hasValuesIndicator of sap.ui.ux3.ExactAttribute was renamed to showSubAttributesIndicator.
- INCOMPATIBLE CHANGE: Aggregation values of sap.ui.ux3.ExactAttribute was renamed to attributes.
- INCOMPATIBLE CHANGE: The supply function mechanism of sap.ui.ux3.ExactAttribute? was reworked and the following API changes were done:
- DELETE: The attribute valuesSupplyFunction was removed.
- NEW: New attribute supplyActive
- NEW: New attribute autoActivateSupply
- NEW: New event supplyAttributes
- CHANGE: Changed meaning of the attribute showSubAttributesIndicator
- The new supply function mechanism works as follows:
- A supply function is now a handler which is attached to event supplyAttributes.
- The event is fired when the corresponding sap.ui.ux3.ExactAttribute is selected, it was already selected when a handler is attached, or function getAttributes() is called.
- The event is only fired if the attribute supplyActive is true (default). After firing the event, the attribute is automatically set to false. The idea is that a supply function is only called once when the data is requested. To enable the event again it is possible to manually set the attribute back to true.
- If you want the supply function to be called on every select you can set the attribute autoActivateSupply to true. In this case, the attribute supplyActive is automatically set to true on every deselect.
- Whether the sub attribute indicator (the little arrow beside an attribute in a list) is necessary is computed automatically (see new function getShowSubAttributesIndicator_Computed() of sap.ui.ux3.ExactAttribute). Only in case a supply function is attached and the attribute supplyActive is true, the Exact Pattern needs a hint whether sub-attributes might be available. Only in this case the attribute showSubAttributesIndicator is considered and must be maintained. If it is not possible to maintain it correctly (e.g. the backend does not support count-calls) it should be set to true (default).
- Bug fixing for asynchronous supply function. The corresponding list does not open before the supply function has finished its work.
- NEW: The functionality of the attribute list browsing has been extracted into a separate control: ExactBrowser
- CAUTION: This control is still not entirely finished and discussions with Ux are ongoing, so behavioral, visual and API changes may still happen after version 0.15.0. The pattern is also not yet compliant to all product standards like accessibility. The same is valid for controls which are build as part of the Exact control like ExactAttribute, ExactBrowseAttribute, ExactBrowser and ExactArea.
- CHANGE: The method MatrixLayout.setWidths now accepts real arrays.
Runtime Version 0.14.0 (May 2011)
- CHANGE: The deprecated property selectionFollowsFocus of the ListBox control has been removed.
- CHANGE: The deprecated property displaySecondaryValue of the ListBox control has been (renamed to displaySecondaryValues.
- CHANGE: The deprecated event click of the ListBox control has been removed since the select event does the same.
- CHANGE: The property displaySecondaryValue of the ComboBox and DropdownBox controls has been deprecated. Instead there is a new property displaySecondaryValues.
- CHANGE: The deprecated property valueState of the TextView control has been removed. For changing the text color the parameter semanticColor exists.
- CHANGE: The Popup.isOpen() function does now only return false after any closing animation has completed. This affects similar methods like Dialog.isOpen() as well.
- DEPRECATION: The aggregation helpButton of the sap.ui.ux3.Shell has been deprecated in favor of a more general headerItems aggregation.
- DEPRECATION: The mode property of the Paginator has been deprecated and will be removed. Only "Full" mode will be available in the future.
- NEW: A new event liveChange was added to the Slider control. This event fires changes of the slider value during the mousemove.
- NEW: A new property enabled was added to the Slider control. This is to be compatible to the other controls. If the Slider is not enabled it can not be changed. In all themes (except platinum) the visualization is like readonly because there is no specification for this from UX. This could be changed later if needed.
Runtime Version 0.13.0 (April 2011)
- NEW: New control library "sap.ui.ux3"
- NEW: New theme "sap_goldreflection"
- NEW: New control Ux3 "Gold Reflection" Shell - CAUTION: This control is not entirely finished and discussions with Ux are ongoing, so behavioral, visual and API changes may still happen after version 0.13.0. The Shell is also not yet compliant to all product standards like accessibility.
- NEW: New control Ux3 Exact Pattern; CAUTION: This control is not entirely finished and discussions with Ux are ongoing, so behavioral, visual and API changes may still happen after version 0.13.0. The pattern is also not yet compliant to all product standards like accessibility. The same is valid for controls which are build as part of the Exact control like ExactAttribute], ExactBrowseAttribute and ExactArea
- NEW: New control Ux3 Feed Component; CAUTION: This control is not entirely finished and discussions with Ux are ongoing, so behavioral, visual and API changes may still happen after version 0.13.0. The components also not yet compliant to all product standards like accessibility. The same is valid for controls which are build as part of the Feed Component like Feeder, FeedEntry?, and CommentEntry?.
- NEW: !ListBox.scrollToIndex() now also works when called before rendering
- NEW: The BusyIndicator control does now inherit from EventProvider and fires Open and Close events
- CHANGE: Data Binding for the Hierarchical Table supported.
- CHANGE: Keyboard navigation in the ListBox control now also accesses disabled items
- CHANGE: As started in version 0.12.0 for better overall consistency of the API, all container-like controls (controls with a general purpose aggregation accepting any child control(s)) now use the same name content and same cardinality (0..n) for their main aggregation.
- COMPATIBLE: Whenever possible, the old aggregation name and cardinality have been preserved, but deprecated. This is the case now for AccordionSection.controls
- INCOMPATIBLE: Splitter.first/secondPaneControls is now named Splitter.first/secondPaneContent
- CHANGE: A UIArea can now have several root controls. Therefore the UIArea has an aggregation content like all container-like controls which can be accesssed via the standard aggregation functions (e.g. getContent). In order of this change the following sub-changes were necessary:
- DEPRECATION: The function UIArea.setRootControl is deprecated. Use the accessor functions for the aggregation content instead.
- CHANGE: The function Control.placeAt was extended by a position parameter.
- DEPRECATION: The function Core.setRoot is deprecated. Use the function Control.placeAt instead.
- CHANGE: TextArea? calculation of cursor position changed because of performance issues on long texts.
Runtime Version 0.12.0 (March 2011)
- NEW: New controls RadioButtonGroup?, PasswordField?, RowRepeater?
- NEW: When registering a listener for any of the control events or for events from any EventProvider, an additional payload object can be specified (oData parameter). When the corresponding event is fired, the payload will be provided to the registered listener function as a second parameter, right after the event object. For details see the generic implementation EventProvider.attachEvent or one of the concrete events Button.attachPress.
- CHANGE: For better overall consistency of the API, all container-like controls (controls with a general purpose aggregation accepting any child control(s)) now use the same name content and same cardinality (0..n) for their main aggregation.
- COMPATIBLE: Whenever possible, the old aggregation name and cardinality have been preserved, but deprecated. This is the case for Panel.controls, Tab.controls, AbsoluteLayout.children
In two cases, the aggregation name content was already used, but with cardinality 0..1. For these controls, the cardinality of the aggregation also has been changed to 0..n, but with the following implementation peculiarities:
- The old setter function setContent(Control) has been kept, but deprecated. In future, the new function addContent(Control) should be used. setContent() has been implemented as removeAllContent() + addContent()
- The getter function getContent() now returns an array instead of null or a single control.
All code that used the getContent() method so far to retrieve a single control, now must be adapted either to handle multiple controls or to access the first entry of the returned array:
var oCtrl = oLayout.getContent()[0]
- This affects MatrixLayoutCell ( setContent, getContent) and Dialog ( setContent, getContent).
- CHANGE: Some deprecated methods and internal features have been finally removed:
- sap.ui.require - The method has been removed, use jQuery.sap.require instead.
- sap.ui.getClass - The method has been removed as it was only a special case of the more consistent jQuery.sap.getObject
- Parameter bBypassSetters of the Element.applySettings method has been removed. This parameter was intended for internal use only. As it caused issues with the core functionality of several controls, and with data binding and generic validation of settings in general, it has been discarded now.
- Generic support for a 3rd parameter (beside Id and Settings) in the constructors of Elements or Controls has been removed since 0.9.0 support for such a 3rd parameter (aka oSomething) had been removed from all SAPUI5 controls already. However, the Element base class still wrote a (deprecation) log entry and called an init3rd(oSomething) method when it existed. This functionality has been removed completely.
- Support for light controls (without runtime metadata) has been removed. Data binding and other features heavily rely on such runtime metadata. Separating the metadata independent features from the rest would have been too confusing for consumers.
- CHANGE: Added keyboard navigation feature to the Table Control.
- CHANGE: Enhanced vertical scrolling performance of the Table.
- CHANGE: Enhanced display of details messages from the Message Area/Bar?.
Runtime Version 0.11.0 (February 2011)
- CHANGE: The default width of the Panel control is no longer defined by the Panel contents, but always "100%".
- CHANGE: The High Contrast Black theme was changed to have a smaller font size, which fits the specification and is also the same font size used in the other themes.
- CHANGE: The ListBox HTML was completely changed (which is transparent as long as no code or CSS relies on it)
- CHANGE: Enhancements to the Table filtering functions.
- CHANGE: Enabled Web Toolkit consumption of the Table.
- DEPRECATION: The Panel properties showCollapseArrow and showMinimizeButton are now deprecated and will be removed in favor of the new property showCollapseIcon (the theme now defines how the icon is visualized)
- NEW: Every control has the new methods attachBrowserEvent and detachBrowserEvent which allow handling native browser events in this control
- NEW: The ListBox has new features like an optional icon column, additional event parameters in the select event, new properties like minWidth, maxWidth, text alignment and the new scrollToIndex method.
- NEW: New controls MessageBar, Tree and ApplicationHeader.
- NEW: Added drag and drop as well as resizing table columns.
Runtime Version 0.10.0 (December 2010)
- CHANGE: MatrixLayout has got a new rendering mode using the CSS property layout:fixed. To allow applications to use the old behavior, a new property !layoutFixed has been introduced. To enforce the usage of the more performant layout:fixed mode, the default of the property is true. So applications must explicitly set this property to false to get the old behavior.
- CHANGE: Due to the previous change, width and height are no longer supported for a !MatrixLayoutCell.
- CHANGE: Continous improvements to the Table control and its components
- CHANGE: Rework of the ComboBox control
- NEW: !AbsoluteLayout, !DataBinding, !RichTextEditor, !ProgressIndicator, !HTMLContainer, DatePicker, MenuButton, and more
Runtime Version 0.9.0 (September 2010)
- CHANGE: Introduction of jQuery
- CHANGE: A lot of APIs have been replaced by jQuery or are now part of our jQuery plugin
- CHANGE: 3rd parameter in constructor of some controls has been removed in favor of more general object literal mSettings
- CHANGE: File system layout of control libraries has been changed, both at runtime and at design time
- CHANGE: Hooks for controls have been changed
- CHANGE: Eventing has been changed
- CHANGE: Property values are validated, invalid values are reported as exceptions
- CHANGE: SAPUI5-cdn contains public libraries (core, commons and table)
- CHANGE: Old table control has been moved from sap.ui.table to sap.ui.dev
- NEW: Introduction of new controls: Table, Accordion, Splitter, RoadMap?, TextArea?, Slider, and more
- NEW: New way of configuring SAPUI5 in addition to attributes of bootstrap tag
- NEW: License texts of contributing components added *
Version 0.8.11 (End of June 2010)
SAPUI5 Runtime
- CHANGE: The name of the common underlying theme which is used as base for all specific themes is no longer default but has been changed to base. For any existing libraries outside the SAPUI5 Perforce source tree the respective theme folder must be renamed from default to base, otherwise specific themes will fail to pick up this theme as a base.
Version 0.8.10 (End of May 2010)
SAPUI5 Runtime
- CHANGE: It is now possible to set a tooltip for almost any element/control, a description how to implement it can be found in the corresponding control documentation. A tooltip can be a simple text tooltip which is displayed via the HTML title attribute and via any subclass of Tooltip, for example RichTooltip. All previous implementations of tooltips in the different controls have been replaced by this new generic feature. For applications this should be a fully compatible change. Control developers must no longer define properties or aggregations named tooltip. Existing properties with that name should either be removed completely if the generic implementation in Element is sufficient or should be renamed. If a control should support simple text tooltips, it is still the responsibility of the control renderer to render the title attribute as the best suitable DOM element can not be determined by the framework. See Element for more details, e.g. methods setTooltip, getTooltip_Text, getTooltip_AsString.
- CHANGE: Several events of existing SAPUI5 controls contained a parameter id that identified the source control firing the event. This parameter has been removed from all event definitions as it was redundant to and less convenient than the always available event.getSource(). To be compatible with older releases, the event object delivered to the application still contains the source id, but the parameter is no longer documented and will be removed in one of the next releases.
- CHANGE: For some controls, the id event parameter did not identify the event source but a different control. For clarity, these parameters have been renamed, see Toolbar.subItemSelected (itemId).
- CHANGE: The "High Contrast Black" theme has received a number of changes, including a larger font size and the replacement of styling images by simple characters and CSS borders. This was done to make the theme usable in Windows High Contrast mode.
Version 0.8.9 (May 2010)
SAPUI5 Runtime
- NEW: New controls in sap.ui.commons: Toolbar, FileUploader
- NEW: Declared library dependencies are propagated to the runtime and checked/resolved by the framework
- CHANGE: The methods sap.ui.core.Core.attachAnyEvent() and sap.ui.core.Core.detachAnyEvent have been deprecated and will be removed in the next drop. These methods are now available on sap.ui.core.BrowserEventManager which can be retrieved using sap.ui.core.Core.getBrowserEventManager.
Version 0.8.8 (April 2010)
SAPUI5 Runtime
- NEW: New controls in sap.ui.commons: Dialog, MessageBox available
- NEW: New controls in sap.ui.table: Web Table available
- CHANGE: Improved following controls in sap.ui.commons: RichTooltip, ComboBox
- CHANGE: Internal facility BlockLayer was renamed to BlindLayer to match wording / naming known from Lightspeed implementation.
- REMOVE: Internal control PopupListBox was removed. This was an internal entity used in an earlier development phase and became obsolete with new Popup and ComboBox implementation from 0.8.7.
Version 0.8.7 (March 2010)
SAPUI5 Runtime
- NEW: Two new controls have been added to the sap.ui.commons UI library: A Panel and a RichTooltip.
- NEW: A plugin concept has been introduced for the SAPUI5 core.
- ENHANCE: The testsuite has been slightly enhanced and now supports log filtering and less initialization issues.
- CHANGE: As the new Panel supports all features of the TitlePanel?, the latter has been abandoned.
- CHANGE: Moved the themes "Tradeshow Plus" and "sap_system" out of the core and the control libraries into a separate theme library for each (below src/test). Dependencies to those are now required in order to use these themes. Also moved the sap_ux theme library from src/test to src/libraries.
- CHANGE: The API of the SAPUI5 core has been revised and several unnecessary methods have been deprecated, or their visibility has been reduced. The changes should not affect applications or control development.
- CHANGE: The support for JSP Renderers has been moved out of the core and must be included as a separate script: jsprenderer.js. This leads to a minimized size of the core.
- CHANGE: Support for transformed lightspeed controls, and lightspeed facade controls has been moved out of the SAPUI5 core. As the corresponding libraries (sap.ui.legacy and (sap.ui.classic) compensate this change, applications should not notice a difference.
Version 0.8.6 and Prior
SAPUI5 Runtime
- In order to make the SAPUI5 runtime API cleaner and easier to remember, some global methods have been renamed. To avoid waste in this early development state, the older method names have not been deprecated but have been removed. After release to customer, such incompatible renamings will no longer occur.
List of renamings:
Old Names New Names sap.ui._package sap.ui.namespace sap.ui._import sap.ui.require sap.ui._lazyImport sap.ui.lazyRequire sap.ui._includeScript sap.ui.includeScript sap.ui._includeStyleSheet sap.ui.includeStyleSheet sap.ui._assert sap.ui.assert sap.ui._fatal sap.ui.fatal sap.ui._measure sap.ui.measure sap.ui._trace sap.ui.trace
- For the same reasons as above, some of the generated information for UI Controls and other classes have been modified.
<SomeClass>.metadata <SomeClass>.getMetadata() <SomeClass>.metadata.properties <SomeClass>.getMetadata().getProperties() <SomeClass>.metadata.aggregations <SomeClass>.getMetadata().getAggregations() <SomeClass>.metadata.associations <SomeClass>.getMetadata().getAssociations() <SomeControl>.aPublicMethods <SomeControl>.getMetadata().getAllPublicMethods() <SomeControl>.getElementName() <SomeControl>.getMetadata().getName() <SomeControl>.getLibraryName() <SomeControl>.getMetadata().getLibraryName()
- The HTML created by several renderers has been changed. Usually this should not be noticable
- DOM attributes and IDs created and managed by SAPUI5 have been cleaned up to reduce potential naming conflicts with other frameworks as well as application code.
- Changes in detail
- Clean up of the suffixes separator for controls (now uses - instead of _).
- Switched to ID suffixes with "-" separator
- Note: Due to interpretation of <someControlId>-r as Root-Dom-Node the use of this id is prohibited for inner structures of controls.
- Adopted the generated IDs to "id-<timestamp>-<counter>" (Script.js)
- Moved logger to sap.ui.Logger
- Switched sapdata to data-sap-ui
- Prefixed !Test Suite ids, classes and frames with "sap-ui"
- Shadow uses custom attribute data-sap-ui-shadow now
- Changes in detail
- New UI controls in sap.ui.commons UI library: TabStrip, ComboBox, Link, Image, RadioButton, ListBox
- New UI controls in sap.ui.dev UI library: CvomChart, DatePicker, GoogleMap, PacMan
- Extensibility concept of controls: How can existing controls be extended to enrich them with additional functionality
- ARIA accessibility attributes rendered for TabStrip, Button, CheckBox, RadioButton.
- UI Controls in sap.ui.commons UI library: Button, TextField, TextView, Label, Menu, MatrixLayout, CheckBox
- Theming infrastructure for UI controls based on CSS and parametrization
- Theme support for sap_platinum, sap_tradeshow_plus, sap_hcb (and some experimental others)
- GWT POC: Wrapping SAPUI5 UI controls with GWT widgets
- Server-side rendering POC: Providing server-side renderers for SAPUI5 UI controls
- Data binding POC
- Well-defined SAPUI5 core API and UI control API, provided for JavaScript
- SAPUI5 core features like
- UI control library plugin capabilities
- Utilities for AJAX requests
- Property files and language resource bundles
- OpenAjax support
- Lazy loading of UI control renderers
- Unit test environment based on JsUnit