XPages: Disable iOS „autocorrect“ and „autocapitalize“ features

Two of the worst features ever implemented are the „autocapitalize“ and „autocorrect“ features from iOS devices, because they are enabled by default. It does not make fun to write a blog comment in another language… Or if you just want to enter your email address in a form: The first letter is always upper case, and you always have to kill the suggestion while writing some text.

To disable this behaviour, you have to add two attributes to the components, autocorrect=off and autocapitalize=off:

<xp:inputText id="inputText1">
   <xp:this.attrs>
      <xp:attr name="autocorrect" value="off" />
      <xp:attr name="autocapitalize" value="off" />
   </xp:this.attrs>
</xp:inputText>

To make life a little bit easier you can add these attributes by using a theme, and can disable the theme for every component for which this feature should be enabled:

<theme extends="webstandard"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:noNamespaceSchemaLocation="platform:/plugin/com.ibm.designer.domino.stylekits/schema/stylekit.xsd">

   <control>
      <name>InputField.EditBox</name>
      <property>
         <name>attrs</name>
         <complex type="xp_attr">
            <property>
               <name>name</name>
               <value>autocapitalize</value>
            </property>
            <property>
               <name>value</name>
               <value>off</value>
            </property>
         </complex>
         <complex type="xp_attr">
            <property>
               <name>name</name>
               <value>autocorrect</value>
            </property>
            <property>
               <name>value</name>
               <value>off</value>
            </property>
         </complex>
      </property>
   </control>
   <control>
      <name>InputField.TextArea</name>
      <property>
         <name>attrs</name>
         <complex type="xp_attr">
            <property>
               <name>name</name>
               <value>autocapitalize</value>
            </property>
            <property>
               <name>value</name>
               <value>off</value>
            </property>
         </complex>
         <complex type="xp_attr">
            <property>
               <name>name</name>
               <value>autocorrect</value>
            </property>
            <property>
               <name>value</name>
               <value>off</value>
            </property>
         </complex>
      </property>
   </control>

</theme>

So your users are able to use your application again  – without hating every keystroke. Thank you, Apple!

Dieser Beitrag wurde unter HTML, Mobile, Web, XPages abgelegt und mit , , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.


*