Marquee Feature: Mobile Themes and Templates

(-) Mobile Themes and Templates854Development of themes to support the development of mobile applications
... Add "CSS Classes" attribute to regions, buttons, page items and report columns815EA1 A new attribute "CSS Classes" should be added to regions, buttons, page items and classic report columns to allow easier styling of this components.
Region and button templates should support the new template placeholders #REGION_CSS_CLASSES# and #BUTTON_CSS_CLASSES#
... Add "Has Edit Links" flag to page templates to specify if "Show Edit Links" is supported984EA2A new flag "Has Edit Links" should be added to page templates to allow the configuration if the "Show Edit Links" feature of the developer toolbar is available for a page. For normal page templates this will normally be set to Yes, but for jQuery Mobile pages this will be set to "No" because that can disrupt the JQM engine.
... Add PAGE_STATIC_ID substitution to page templates867EA1Add a #PAGE_STATIC_ID# substitution string to be available for use within a page template's 'Body' section. This is useful for jQuery Mobile, specifically for use on the element that has data-role="page", eg:

The #PAGE_STATIC_ID# should substitute to 'P' || [page ID].

Once this is available, dynamic actions can then hook on to this ID, for the 'Page Load' event when the current page is UI Type = 'JQM_SMARTPHONE'. When using this UI type, the 'Page Load' event internally maps to jQuery Mobile's 'pageinit' event handler, which has to be bound to this with the page data-role.
... Add page and popup transition attribute for Mobile826EA1Default mobile page and popup transition type (slide, slideup, flip, etc.) specified on theme level.
Page level transition override - should contain an entry "Use Theme Default". Such attributes should only be visible when it's a mobile page template.
... Add support for multiple user interfaces in an application827EA2An application is able to support different UI. For example, some pages can be be for Desktop browsers, and some for smartphones and some for tablets.

Based on the UI picked for a page, only components designed for that UI are visible. For example it's not useful to show the tree component for a smartphone UI.

It is possible to import multiple themes where each is assign to a specific UI type.

For each UI it is possible to specify the home url and the login url.

There is a new page template placeholder called #SWITCH_UI_TO_[name of UI type]# which can be used to switch to a different UI.

The different UI types support a device detection to automatically show the optimized pages for that device.
... Declarative support to specify JavaScript files and code816EA1Add new application, page and page template attribute "JavaScript file URL(s)" to support declarative definition of JavaScript files which should be loaded for an application, page or page template.
... Declarative support to specify inline CSS and CSS files817EA1Add new page and page template attributes "CSS file URL(s)" and "Inline CSS" to support declarative definition of CSS files and inline CSS which should be loaded for a page.
... New Page Template Placeholders933EA1Page Templates support the new placeholders #GENERATED_CSS#, #GENERATED_JAVASCRIPT# and #DEVELOPER_TOOLBAR# in the "Header", "Body" and "Footer" definition attributes.
... New page template substitution #REQUESTED_URL#970EA1Page templates should support the new #REQUESTED_URL# substitution which returns the URL of the requested page as the browser has sent it.

This is necessary for jQuery Mobile where AJAX calls are used to load pages and where jQuery Mobile is not able to detect redirects in those calls resulting in a wrong URL which gets displayed.
... New placeholders to include standard APEX CSS and standard JavaScript files701EA1Add new placeholders #APEX_CSS# and #APEX_JAVASCRIPT# to be used in page templates. This will give greater flexibility where and if the standard APEX Javascript and CSS files should be included.
... New region template substitution #PAGE_TITLE#972EA1Region templates support the new substitution #PAGE_TITLE# which substitutes the title of the current page. This new substitution is used for the "Header Toolbar" region on page 0 of a jQuery Mobile application.
... Support Content Delivery Networks for jQuery files819EA1Add a new application level attribute "Content Delivery Network" to support that jQuery and jQuery Mobile files are loaded from a Content Delivery Network (Google, Microsoft, jQuery) to improve performance especially for mobile applications.
  • 1 - 13
Early Adopter 1.0