E.2 Understanding High Contrast Mode

This section describe high contrast mode. You can identify sessions as optimized for high contrast in Websheet and Database applications. By default, sessions are not flagged as running in high contrast mode.

E.2.1 Enabling High Contrast Mode in a Websheet Application

You can enable High Contrast mode in a Websheet application by clicking the High Contrast link located in the lower right side of the Websheet home page

E.2.2 Using High Contrast Mode in Your Database Applications

You can identify sessions as optimized for high contrast in Websheet applications and also within your own database applications. This section describes how you can provide users of your own database applications access to this mode and also how you can extend it.

E.2.2.1 Provisioning High Contrast Mode

You can provision high contrast mode for user's of your own database applications in three ways:

  • Use the page template #HIGH_CONTRAST_TOGGLE# substitution string.

    Add the #HIGH_CONTRAST_TOGGLE# substitution string to your page template and Oracle Application Express displays a link to the current page to turn on or off (or toggle) the mode. In other words, if you are in standard mode, this procedure generates a link to turn it on.

  • Use APIs to control high contrast mode.

    Use the APEX_UTIL APIs to control this mode. You may want to use the APIs if you only want to render the toggle in one place and not at the page template level, or if you want more control over the actual displayed link text. To learn more, see "APEX_UTIL" in Oracle Application Express API Reference.

  • Use the f?p syntax REQUEST attribute to enable and disable high contrast mode.

    The general syntax for the f?p syntax REQUEST attribute is:

    f?p=application:page:session:request:...
    

    If the request is exactly SET_SESSION_HIGH_CONTRAST_ON or SET_SESSION_HIGH_CONTRAST_OFF then the session is put into or out of high contrast mode. For example:

    <a href="f?p=100:1:&SESSION.:SET_SESSION_HIGH_CONTRAST_ON">Set High Contrast On</a>
    

E.2.2.2 Extending High Contrast Mode

In addition to what this mode does by default as described in "What Does High Contrast Mode Do?," you can also control your own components. For example, you could conditionally include a high contrast specific CSS file, when running in high contrast mode.

To learn more, see "APEX_UTIL" in Oracle Application Express API Reference details of the following functions: APEX_UTIL.IS_HIGH_CONTRAST_SESSION and APEX_UTIL.IS_HIGH_CONTRAST_SESSION_YN.

E.2.3 What Does High Contrast Mode Do?

Enabling high contrast mode results in the following behavior:

  • Application Express Websheet runtime.

    Websheet application replace CSS-based image links with text links. These text links are only created for images where the source image is transparent and the CSS background property is used in its place.

  • Custom Database Applications.

    Nothing is done natively from the framework. It is up to each developer to provision the mode and make changes where required.