[maliit-plugins] add the patch to SCM

Peter Robinson pbrobinson at fedoraproject.org
Fri Oct 5 07:08:29 UTC 2012


commit 83cc85fad22f8450542cfa2795cc4ca9f772485d
Author: Peter Robinson <pbrobinson at gmail.com>
Date:   Fri Oct 5 08:08:23 2012 +0100

    add the patch to SCM

 olpc_xo_layout_modifications.patch | 8041 ++++++++++++++++++++++++++++++++++++
 1 files changed, 8041 insertions(+), 0 deletions(-)
---
diff --git a/olpc_xo_layout_modifications.patch b/olpc_xo_layout_modifications.patch
new file mode 100644
index 0000000..8386704
--- /dev/null
+++ b/olpc_xo_layout_modifications.patch
@@ -0,0 +1,8041 @@
+From 54fb24992d0fd86db5a62dded296d19b5717d6d1 Mon Sep 17 00:00:00 2001
+From: Gary Martin <gary at garycmartin.com>
+Date: Fri, 5 Oct 2012 07:33:15 +0100
+Subject: [PATCH 1/2] Nearly complete XO language layout file updates for
+ landscape and portrait orientation.
+
+---
+ maliit-keyboard/data/languages/ar.xml              |   73 ++++++----
+ maliit-keyboard/data/languages/bg_bg.xml           |   66 +++++----
+ maliit-keyboard/data/languages/cs.xml              |   50 ++++---
+ maliit-keyboard/data/languages/da.xml              |   68 +++++----
+ maliit-keyboard/data/languages/de.xml              |   72 ++++++----
+ maliit-keyboard/data/languages/el_gr.xml           |   60 ++++----
+ maliit-keyboard/data/languages/en_gb.xml           |   48 +++----
+ maliit-keyboard/data/languages/en_us.xml           |   42 +++---
+ maliit-keyboard/data/languages/es.xml              |   56 +++++---
+ maliit-keyboard/data/languages/et.xml              |   73 +++++-----
+ maliit-keyboard/data/languages/fa.xml              |   53 +++----
+ maliit-keyboard/data/languages/fi.xml              |   77 +++++-----
+ maliit-keyboard/data/languages/fr.xml              |   54 ++++---
+ maliit-keyboard/data/languages/fr_ca.xml           |   54 +++----
+ maliit-keyboard/data/languages/he.xml              |   50 ++++---
+ maliit-keyboard/data/languages/hu.xml              |   68 +++++----
+ maliit-keyboard/data/languages/id.xml              |   42 +++---
+ maliit-keyboard/data/languages/it.xml              |   55 ++++----
+ maliit-keyboard/data/languages/kk.xml              |   74 +++++-----
+ maliit-keyboard/data/languages/lt.xml              |   41 +++---
+ maliit-keyboard/data/languages/mk_mk.xml           |   77 +++++-----
+ maliit-keyboard/data/languages/ms.xml              |   42 +++---
+ maliit-keyboard/data/languages/nl.xml              |   36 ++---
+ maliit-keyboard/data/languages/no.xml              |   68 +++++----
+ maliit-keyboard/data/languages/pl.xml              |   56 ++++----
+ maliit-keyboard/data/languages/pt.xml              |   54 +++----
+ maliit-keyboard/data/languages/ro.xml              |   55 ++++----
+ maliit-keyboard/data/languages/ru.xml              |   60 ++++----
+ maliit-keyboard/data/languages/sk.xml              |   64 +++++----
+ maliit-keyboard/data/languages/sv.xml              |   68 +++++----
+ maliit-keyboard/data/languages/symbols-35-fi.xml   |  148 ++++++++++----------
+ maliit-keyboard/data/languages/symbols-35.xml      |  117 +++++++++-------
+ .../data/languages/symbols-36-nordic.xml           |  138 ++++++++++--------
+ maliit-keyboard/data/languages/symbols-36.xml      |  135 ++++++++++--------
+ maliit-keyboard/data/languages/symbols-38.xml      |  109 +++++++-------
+ maliit-keyboard/data/languages/symbols-39.xml      |   24 ++--
+ maliit-keyboard/data/languages/symbols_ar.xml      |  143 +++++++++++--------
+ maliit-keyboard/data/languages/symbols_en.xml      |   80 +++++------
+ maliit-keyboard/data/languages/symbols_fa.xml      |  144 ++++++++++---------
+ maliit-keyboard/data/languages/symbols_he.xml      |   65 +++++----
+ maliit-keyboard/data/languages/symbols_kk.xml      |  145 ++++++++++---------
+ maliit-keyboard/data/languages/symbols_ru_uk.xml   |  146 +++++++++++--------
+ maliit-keyboard/data/languages/symbols_th.xml      |  122 +++++++++-------
+ maliit-keyboard/data/languages/symbols_vi.xml      |    8 +-
+ .../data/languages/symbols_zh_cangjie.xml          |   24 ++--
+ .../data/languages/symbols_zh_pinyin.xml           |   24 ++--
+ .../data/languages/symbols_zh_zhuyin.xml           |   16 ++-
+ maliit-keyboard/data/languages/th.xml              |   78 ++++++-----
+ maliit-keyboard/data/languages/tr.xml              |   12 +-
+ maliit-keyboard/data/languages/uk.xml              |    6 +-
+ maliit-keyboard/data/languages/vi.xml              |   12 +-
+ maliit-keyboard/data/languages/zh_cn_cangjie.xml   |   10 +-
+ maliit-keyboard/data/languages/zh_cn_pinyin.xml    |    8 +-
+ maliit-keyboard/data/languages/zh_cn_zhuyin.xml    |   80 +----------
+ 54 files changed, 1909 insertions(+), 1641 deletions(-)
+
+diff --git a/maliit-keyboard/data/languages/ar.xml b/maliit-keyboard/data/languages/ar.xml
+index 76b6349..b5e90f0 100644
+--- a/maliit-keyboard/data/languages/ar.xml
++++ b/maliit-keyboard/data/languages/ar.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard version="1.0" title="العربية" language="ar" catalog="ar" autocapitalization="false">
+   <layout type="general">
+-    <section id="main">
++    <section id="main" style="ar">
+       <row>
+         <key>
+           <binding label="ض"/>
+@@ -38,102 +38,115 @@
+         <key>
+           <binding label="ج"/>
+         </key>
++        <key style="special" rtl="true" width="large">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="ش"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="س"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ي"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ب"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ل"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ا"/>
+           <binding shift="true" label="أ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ت"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ن"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="م"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ك"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="د"/>
+         </key>
++        <key style="special" rtl="false" id="actionKey" width="x-large">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 	
+       <row>
+-        <key style="special">
++        <key style="special" width="large">
+           <binding action="shift"/>
+         </key>
+ 
+-        <key>
++        <key width="small">
+           <binding label="ئ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ء"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ؤ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ر"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ى"/>
+           <binding shift="true" label="آ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ة"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="و"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ز"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ظ"/>
+         </key>
+-
+-        <key style="special" rtl="true">
+-          <binding action="backspace"/>
++        <key id="emailUrlKey" width="small"><binding label="،"/></key>
++        <key width="small"><binding label="."/></key>
++        <key style="special" width="large">
++          <binding action="shift"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="sym" label="&#x061F;&#x0663;&#x0662;&#x0661;"/>
+         </key>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         
+         <key><binding label="ذ"/></key>
+-        <key id="emailUrlKey"><binding label="،"/></key>
+ 
+         <key width="stretched">
+           <binding action="space"/>
+         </key>
+         
+-        <key><binding label="."/></key>
+         <key><binding label="ط"/></key>
+ 
+-        <key style="special" width="xx-large" rtl="false" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="sym" label="&#x061F;&#x0663;&#x0662;&#x0661;"/>
+         </key>
++
++        <key style="special"><binding action="close"/></key>
++
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/bg_bg.xml b/maliit-keyboard/data/languages/bg_bg.xml
+index 7355059..aa22083 100644
+--- a/maliit-keyboard/data/languages/bg_bg.xml
++++ b/maliit-keyboard/data/languages/bg_bg.xml
+@@ -44,52 +44,56 @@
+           <binding label="п"/>
+           <binding shift="true" label="П"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+         <spacer/>
+-
+-        <key>
++        <key width="small">
+           <binding label="а" extended_labels="à"/>
+           <binding shift="true" label="А" extended_labels="À"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="с" extended_labels="$"/>
+           <binding shift="true" label="С" extended_labels="$"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="д" extended_labels="ð"/>
+           <binding shift="true" label="Д" extended_labels="Ð"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ф"/>
+           <binding shift="true" label="Ф"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="г"/>
+           <binding shift="true" label="Г"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="х"/>
+           <binding shift="true" label="Х"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="й"/>
+           <binding shift="true" label="Й"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="к"/>
+           <binding shift="true" label="К"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="л"/>
+           <binding shift="true" label="Л"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ю"/>
+           <binding shift="true" label="Ю"/>
+         </key>
+-
++        <key width="large" style="special" id="actionKey">
++          <binding action="return"/>
++        </key>
+         <spacer/>
+       </row>
+ 
+@@ -98,68 +102,68 @@
+           <binding action="shift"/>
+         </key>
+ 
+-        <key>
++        <key width="small">
+           <binding label="з"/>
+           <binding shift="true" label="З"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ь"/>
+           <binding shift="true" label="ѝ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ц"/>
+           <binding shift="true" label="Ц"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ж"/>
+           <binding shift="true" label="Ж"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="б"/>
+           <binding shift="true" label="Б"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="н"/>
+           <binding shift="true" label="Н"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="м"/>
+           <binding shift="true" label="М"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ч"/>
+           <binding shift="true" label="Ч"/>
+         </key>
+-
++        <key width="small" id="emailUrlKey"><binding label=","/></key>
++        <key width="small"><binding label="."/></key>
+         <key style="special">
+-          <binding action="backspace"/>
++          <binding action="shift"/>
+         </key>
++
+       </row>
+ 
+       <row>
+         <key style="special" width="large">
+           <binding action="sym" label="?123"/>
+         </key>
+-
+-        <spacer/>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+ 
+         <key>
+           <binding label="ш"/>
+           <binding shift="true" label="Ш"/>
+         </key>
+-        <key id="emailUrlKey"><binding label=","/></key>
+         <key width="xx-large"><binding action="space"/></key>
+-        <key><binding label="."/></key>
+         <key>
+           <binding label="щ"/>
+           <binding shift="true" label="Щ"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="large">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
++
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/cs.xml b/maliit-keyboard/data/languages/cs.xml
+index 9eac775..ae21ff4 100644
+--- a/maliit-keyboard/data/languages/cs.xml
++++ b/maliit-keyboard/data/languages/cs.xml
+@@ -44,52 +44,60 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace" label=""/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding extended_labels="áäăâą" accented_labels="á" accents="´" label="a"/>
+           <binding extended_labels="ÁÄĂÂĄ" shift="true" accented_labels="Á" accents="´" label="A"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding extended_labels="šßśş$" accented_labels="š" accents="ˇ" label="s"/>
+           <binding extended_labels="ŠŚŞ$" shift="true" accented_labels="Š" accents="ˇ" label="S"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding extended_labels="ďđ" accented_labels="ď" accents="ˇ" label="d"/>
+           <binding extended_labels="ĎĐ" shift="true" accented_labels="Ď" accents="ˇ" label="D"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="f"/>
+           <binding shift="true" label="F"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="g"/>
+           <binding shift="true" label="G"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="h"/>
+           <binding shift="true" label="H"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="j"/>
+           <binding shift="true" label="J"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="k"/>
+           <binding shift="true" label="K"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding extended_labels="ľĺł" label="l"/>
+           <binding extended_labels="ĽĹŁ" shift="true" label="L"/>
+         </key>
+-		<key style="special">
++	<key width="small" style="special">
+             <binding dead="true" label="´"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return" label=""/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="shift" label=""/>
+         </key>
+ 
+@@ -121,31 +129,35 @@
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
+ 
+-        <key style="special" width="x-large">
+-          <binding action="backspace" label=""/>
++        <key style="special">
++          <binding action="shift" label=""/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="sym" label="?123"/>
+         </key>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+ 
+         <key style="special">
+           <binding dead="true" label="ˇ"/>
+         </key>
+-        <key id="emailUrlKey"><binding label=","/></key>
+ 
+         <key width="stretched">
+           <binding action="space" label=""/>
+         </key>
+ 
+-        <key><binding label="."/></key>
+-
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return" label=""/>
++        <key style="special">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
++
+       </row>
+ 
+     </section>
+diff --git a/maliit-keyboard/data/languages/da.xml b/maliit-keyboard/data/languages/da.xml
+index 839bcb4..39451e6 100644
+--- a/maliit-keyboard/data/languages/da.xml
++++ b/maliit-keyboard/data/languages/da.xml
+@@ -44,103 +44,111 @@
+         <binding label="p"/>
+         <binding shift="true" label="P"/>
+       </key>
++      <key style="special">
++        <binding action="backspace" label=""/>
++      </key>
+       </row>
+ 
+       <row>
+-      <key>
++      <spacer/>
++      <key width="small">
+         <binding label="a" extended_labels="æåäàáâã"/>
+         <binding shift="true" label="A" extended_labels="ÆÅÄÀÁÂÃ"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="s" extended_labels="ß$"/>
+         <binding shift="true" label="S" extended_labels="ß$"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="d" extended_labels="ð"/>
+         <binding shift="true" label="D" extended_labels="Ð"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="f"/>
+         <binding shift="true" label="F"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="g"/>
+         <binding shift="true" label="G"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="h"/>
+         <binding shift="true" label="H"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="j"/>
+         <binding shift="true" label="J"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="k"/>
+         <binding shift="true" label="K"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="l"/>
+         <binding shift="true" label="L"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="å"/>
+         <binding shift="true" label="Å"/>
+       </key>
++      <key style="special" width="large" id="actionKey">
++        <binding action="return" label=""/>
++      </key>
++      <spacer/>
+       </row>
+ 
+       <row>
+       <key style="special">
+         <binding action="shift" label=""/>
+       </key>
+-
+-      <key>
++      <key width="small">
+         <binding label="z"/>
+         <binding shift="true" label="Z"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="x"/>
+         <binding shift="true" label="X"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="c" extended_labels="ç"/>
+         <binding shift="true" label="C" extended_labels="Ç"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="v"/>
+         <binding shift="true" label="V"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="b"/>
+         <binding shift="true" label="B"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="n" extended_labels="ñ"/>
+         <binding shift="true" label="N" extended_labels="Ñ"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="m"/>
+         <binding shift="true" label="M"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="æ" extended_labels="ä"/>
+         <binding shift="true" label="Æ" extended_labels="Ä"/>
+       </key>
+-
++      <key width="small" id="emailUrlKey"><binding label=","/></key>
++      <key width="small"><binding label="."/></key>
+       <key style="special">
+-        <binding action="backspace" label=""/>
++        <binding action="shift" label=""/>
+       </key>
+       </row>
+ 
+       <row>
+-      <key style="special" width="large">
++      <key style="special">
+         <binding action="sym" label="?123"/>
+       </key>
++      <key style="special">
++        <binding action="layout_menu"/>
++      </key>
+ 
+-      <key id="emailUrlKey"><binding label=","/></key>
+-      <key><binding label="."/></key>
+-
+-      <key width="xx-large">
++      <key width="stretched">
+         <binding action="space" label=""/>
+       </key>
+ 
+@@ -148,10 +156,12 @@
+         <binding label="ø" extended_labels="ö"/>
+         <binding shift="true" label="Ø" extended_labels="Ö"/>
+       </key>
+-
+-      <key style="special" width="x-large" id="actionKey">
+-        <binding action="return" label=""/>
++      <key style="special">
++        <binding action="sym" label="?123"/>
+       </key>
++
++      <key style="special"><binding action="close"/></key>
++
+     </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/de.xml b/maliit-keyboard/data/languages/de.xml
+index 98d39d6..03902a1 100644
+--- a/maliit-keyboard/data/languages/de.xml
++++ b/maliit-keyboard/data/languages/de.xml
+@@ -47,114 +47,128 @@
+         <binding label="p"/>
+         <binding shift="true" label="P"/>
+       </key>
++
++      <key style="special">
++        <binding action="backspace"/>
++      </key>
+       </row>
+ 
+       <row>
+-      <key>
++      <spacer/>
++      <key width="small">
+         <binding label="a" extended_labels="äàáãâåæ"/>
+         <binding shift="true" label="A" extended_labels="ÄÀÁÃÂÅÆ"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="s" extended_labels="ßş$"/>
+         <binding shift="true" label="S" extended_labels="Ş$"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="d"/>
+         <binding shift="true" label="D"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="f"/>
+         <binding shift="true" label="F"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="g" extended_labels="ğ"/>
+         <binding shift="true" label="G" extended_labels="Ğ"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="h"/>
+         <binding shift="true" label="H"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="j"/>
+         <binding shift="true" label="J"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="k"/>
+         <binding shift="true" label="K"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="l"/>
+         <binding shift="true" label="L"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="ü"/>
+         <binding shift="true" label="Ü"/>
+       </key>
++
++      <key style="special" width="large" id="actionKey">
++        <binding action="return" label=""/>
++      </key>
++      <spacer/>
+       </row>
+ 
+       <row>
+       <key style="special">
+-        <binding action="shift" label=""/>
++        <binding action="shift"/>
+       </key>
+ 
+-      <key>
++      <key width="small">
+         <binding label="y" extended_labels="¥"/>
+         <binding shift="true" label="Y" extended_labels="¥"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="x"/>
+         <binding shift="true" label="X"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="c" extended_labels="ç"/>
+         <binding shift="true" label="C" extended_labels="Ç"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="v"/>
+         <binding shift="true" label="V"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="b"/>
+         <binding shift="true" label="B"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="n" extended_labels="ñ"/>
+         <binding shift="true" label="N" extended_labels="Ñ"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="m"/>
+         <binding shift="true" label="M"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="ä"/>
+         <binding shift="true" label="Ä"/>
+       </key>
++      <key id="emailUrlKey" width="small"><binding label=","/></key>
++      <key width="small"><binding label="."/></key>
+ 
+       <key style="special">
+-        <binding action="backspace" label=""/>
++        <binding action="shift"/>
+       </key>
+       </row>
+ 
+       <row>
+-      <key style="special" width="large">
++      <key style="special">
+         <binding action="sym" label="?123"/>
+       </key>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+ 
+-      <key id="emailUrlKey"><binding label=","/></key>
+-      <key><binding label="."/></key>
+-
+-      <key width="xx-large">
+-        <binding action="space" label=""/>
++      <key width="stretched">
++        <binding action="space"/>
+       </key>
+ 
+       <key>
+         <binding label="ö"/>
+         <binding shift="true" label="Ö"/>
+       </key>
+-
+-      <key style="special" width="x-large" id="actionKey">
+-        <binding action="return" label=""/>
++      <key style="special">
++        <binding action="sym" label="?123"/>
+       </key>
++
++      <key style="special"><binding action="close"/></key>
++
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/el_gr.xml b/maliit-keyboard/data/languages/el_gr.xml
+index 45af547..bf52b63 100644
+--- a/maliit-keyboard/data/languages/el_gr.xml
++++ b/maliit-keyboard/data/languages/el_gr.xml
+@@ -44,60 +44,62 @@
+           <binding label="π"/>
+           <binding shift="true" label="Π"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+         <spacer/>
+-
+-        <key>
++        <key width="small">
+           <binding label="α" extended_labels="ά" accented_labels="ά" accents="΄"/>
+           <binding shift="true" label="Α" extended_labels="Ά" accented_labels="Ά" accents="΄"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="σ" extended_labels="ς"/>
+           <binding shift="true" label="Σ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="δ"/>
+           <binding shift="true" label="Δ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="φ"/>
+           <binding shift="true" label="Φ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="γ"/>
+           <binding shift="true" label="Γ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="η" extended_labels="ή" accented_labels="ή" accents="΄"/>
+           <binding shift="true" label="Η" extended_labels="Ή" accented_labels="Ή" accents="΄"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ξ"/>
+           <binding shift="true" label="Ξ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="κ"/>
+           <binding shift="true" label="Κ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="λ"/>
+           <binding shift="true" label="Λ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="΄" dead="true" extended_labels="¨΅"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
+         <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="shift"/>
+         </key>
+-
+-        <spacer/>
+-
+         <key>
+           <binding label="ζ"/>
+           <binding shift="true" label="Ζ"/>
+@@ -126,30 +128,28 @@
+           <binding label="μ"/>
+           <binding shift="true" label="Μ"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="large">
+-          <binding action="backspace"/>
++        <key><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="shift"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="sym" label="?123"/>
+         </key>
++      <key style="special">
++        <binding action="layout_menu"/>
++      </key>
+ 
+-        <spacer/>
+-
+-        <key id="emailUrlKey"><binding label=","/></key>
+-        <key width="xx-large"><binding action="space"/></key>
+-        <key><binding label="."/></key>
++        <key width="stretched"><binding action="space"/></key>
++        <key style="special" width="large">
++          <binding action="sym" label="?123"/>
++        </key>
+ 
+-        <spacer/>
++        <key style="special"><binding action="close"/></key>
+ 
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
+-        </key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/en_gb.xml b/maliit-keyboard/data/languages/en_gb.xml
+index 7e192bb..50e59e6 100644
+--- a/maliit-keyboard/data/languages/en_gb.xml
++++ b/maliit-keyboard/data/languages/en_gb.xml
+@@ -47,11 +47,13 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <spacer/>
+-
++	<spacer/>
+         <key>
+           <binding label="a" extended_labels="äàâáãå"/>
+           <binding shift="true" label="A" extended_labels="ÄÀÂÁÃÅ"/>
+@@ -88,17 +90,16 @@
+           <binding label="l"/>
+           <binding shift="true" label="L"/>
+         </key>
+-
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
+         <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="shift"/>
+         </key>
+-
+-        <spacer/>
+-
+         <key>
+           <binding label="z"/>
+           <binding shift="true" label="Z"/>
+@@ -127,29 +128,28 @@
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="large">
+-          <binding action="backspace"/>
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="shift"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="sym" label="?123"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key id="emailUrlKey"><binding label=","/></key>
+-        <key width="xx-large"><binding action="space"/></key>
+-        <key><binding label="."/></key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++        <key width="stretched">
++          <binding action="space"/>
++        </key>
++        <key style="special" width="large">
++          <binding action="sym" label="?123"/>
++        </key>
++        <key style="special">
++          <binding action="close"/>
+         </key>
+       </row>
+     </section>
+diff --git a/maliit-keyboard/data/languages/en_us.xml b/maliit-keyboard/data/languages/en_us.xml
+index d12ef57..802c7c2 100644
+--- a/maliit-keyboard/data/languages/en_us.xml
++++ b/maliit-keyboard/data/languages/en_us.xml
+@@ -44,6 +44,9 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+@@ -85,17 +88,18 @@
+           <binding label="l"/>
+           <binding shift="true" label="L"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
+ 
+         <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="shift"/>
+         </key>
+ 
+-        <spacer/>
+-
+         <key>
+           <binding label="z"/>
+           <binding shift="true" label="Z"/>
+@@ -124,33 +128,31 @@
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="large">
+-          <binding action="backspace"/>
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="shift"/>
+         </key>
++
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="sym" label="?123"/>
+         </key>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+ 
+-        <spacer/>
+-
+-        <key id="emailUrlKey"><binding label=","/></key>
+-        <key width="xx-large"><binding action="space"/></key>
+-        <key><binding label="."/></key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key width="stretched"><binding action="space"/></key>
++        <key style="special" width="large">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
++
+       </row>
+     </section>
+   </layout>
+ 
+   <import file="symbols_en.xml"/>
+-</keyboard>
+\ No newline at end of file
++</keyboard>
+diff --git a/maliit-keyboard/data/languages/es.xml b/maliit-keyboard/data/languages/es.xml
+index fbee235..f033591 100644
+--- a/maliit-keyboard/data/languages/es.xml
++++ b/maliit-keyboard/data/languages/es.xml
+@@ -44,54 +44,62 @@
+         <binding label="p"/>
+         <binding shift="true" label="P"/>
+       </key>
++      <key style="special">
++        <binding action="backspace" label=""/>
++      </key>
+       </row>
+ 
+       <row>
+-      <key>
++      <spacer/>
++      <key width="small">
+         <binding accented_labels="áä" accents="´¨" label="a" extended_labels="áªäàâãæ"/>
+         <binding shift="true" accented_labels="ÁÄ" accents="´¨" label="A" extended_labels="ÁªÄÀÂÃÆ"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="s" extended_labels="ß$"/>
+         <binding shift="true" label="S" extended_labels="$"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="d"/>
+         <binding shift="true" label="D"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="f"/>
+         <binding shift="true" label="F"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="g"/>
+         <binding shift="true" label="G"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="h"/>
+         <binding shift="true" label="H"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="j"/>
+         <binding shift="true" label="J"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="k"/>
+         <binding shift="true" label="K"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="l" extended_labels="ŀ"/>
+         <binding shift="true" label="L" extended_labels="Ŀ"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="ñ"/>
+         <binding shift="true" label="Ñ"/>
+       </key>
++      <key style="special" id="actionKey" width="large">
++        <binding action="return" label=""/>
++      </key>
++      <spacer/>
+       </row>
+ 
+       <row>
+-      <key style="special" width="x-large">
+-        <binding action="shift" label=""/>
++      <key style="special">
++        <binding action="shift"/>
+       </key>
+ 
+       <key>
+@@ -122,32 +130,36 @@
+         <binding label="m"/>
+         <binding shift="true" label="M"/>
+       </key>
+-
+-      <key style="special" width="x-large">
+-        <binding action="backspace" label=""/>
++      <key id="emailUrlKey"><binding label=","/></key>
++      <key><binding label="."/></key>
++      <key style="special">
++        <binding action="shift"/>
+       </key>
+-      
+       </row>
+ 
+       <row>
+-      <key style="special" width="x-large">
++      <key style="special">
+         <binding action="sym" label="?123"/>
+       </key>
+ 
+       <key style="special">
++        <binding action="layout_menu"/>
++      </key>
++
++      <key style="special">
+         <binding dead="true" label="´"/>
+       </key>
+-      <key id="emailUrlKey"><binding label=","/></key>
+ 
+       <key width="stretched">
+         <binding action="space" label=""/>
+       </key>
+ 
+-      <key><binding label="."/></key>
+-
+-      <key style="special" width="xx-large" id="actionKey">
+-        <binding action="return" label=""/>
++      <key style="special">
++        <binding action="sym" label="?123"/>
+       </key>
++
++      <key style="special"><binding action="close"/></key>
++
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/et.xml b/maliit-keyboard/data/languages/et.xml
+index 981f4a2..a2d86bd 100644
+--- a/maliit-keyboard/data/languages/et.xml
++++ b/maliit-keyboard/data/languages/et.xml
+@@ -47,91 +47,103 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace" label=""/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="a" extended_labels="äåæàáâã"/>
+           <binding shift="true" label="A" extended_labels="ÄÅÆÀÁÂÃ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="s" extended_labels="šß$"/>
+           <binding shift="true" label="S" extended_labels="Š$"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="d" extended_labels="ð"/>
+           <binding shift="true" label="D" extended_labels="Ð"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="f"/>
+           <binding shift="true" label="F"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="g"/>
+           <binding shift="true" label="G"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="h"/>
+           <binding shift="true" label="H"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="j"/>
+           <binding shift="true" label="J"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="k"/>
+           <binding shift="true" label="K"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="l"/>
+           <binding shift="true" label="L"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ü"/>
+           <binding shift="true" label="Ü"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return" label=""/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+         <key style="special">
+           <binding action="shift" label=""/>
+         </key>
+-
+-        <key>
++        <key width="small">
+           <binding label="z" extended_labels="ž"/>
+           <binding shift="true" label="Z" extended_labels="Ž"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="x"/>
+           <binding shift="true" label="X"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="c" extended_labels="ç"/>
+           <binding shift="true" label="C" extended_labels="Ç"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="v"/>
+           <binding shift="true" label="V"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="b"/>
+           <binding shift="true" label="B"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="n" extended_labels="ñ"/>
+           <binding shift="true" label="N" extended_labels="Ñ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ä"/>
+           <binding shift="true" label="Ä"/>
+         </key>
+-
++        <key width="small" id="emailUrlKey">
++          <binding label=","/>
++        </key>
++        <key width="small">
++          <binding label="."/>
++        </key>
+         <key style="special">
+-          <binding action="backspace" label=""/>
++          <binding action="shift" label=""/>
+         </key>
+       </row>
+ 
+@@ -139,18 +151,12 @@
+         <key style="special" width="large">
+           <binding action="sym" label="?123"/>
+         </key>
+-
+-        <key id="emailUrlKey">
+-          <binding label=","/>
+-        </key>
+-        <key>
+-          <binding label="."/>
++        <key style="special">
++          <binding action="layout_menu"/>
+         </key>
+-
+-        <key width="stretched">
++        <key width="xx-large">
+           <binding action="space" label=""/>
+         </key>
+-
+         <key>
+           <binding label="ö"/>
+           <binding shift="true" label="Ö"/>
+@@ -159,10 +165,11 @@
+           <binding label="õ"/>
+           <binding shift="true" label="Õ"/>
+         </key>
+-
+-        <key style="special" width="large" id="actionKey">
+-          <binding action="return" label=""/>
++        <key style="special" width="large">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
++
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/fa.xml b/maliit-keyboard/data/languages/fa.xml
+index b51955a..86f64a7 100644
+--- a/maliit-keyboard/data/languages/fa.xml
++++ b/maliit-keyboard/data/languages/fa.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard version="1.0" title="فارسى" language="fa" catalog="virtual-keyboard" autocapitalization="false">
+   <layout type="general">
+-    <section id="main">
++    <section id="main" style="ar">
+       <row>
+         <key>
+           <binding label="ض"/>
+@@ -37,46 +37,53 @@
+         <key>
+           <binding label="چ"/>
+         </key>
++        <key style="special" rtl="true">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="ش"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="س"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ی"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ب"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ل"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ا"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ت"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ن"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="م"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ک"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="گ"/>
+         </key>
++        <key style="special" width="x-large" rtl="false" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 	
+       <row>
+-
+         <key>
+           <binding label="ظ"/>
+         </key>
+@@ -107,32 +114,30 @@
+         <key>
+           <binding label="ث"/>
+         </key>
+-
+-        <key style="special" rtl="true">
+-          <binding action="backspace"/>
+-        </key>
++        <key id="emailUrlKey"><binding label="،"/></key>
++        <key><binding label="."/></key>
+       </row>
+ 
+       <row>
+         <key style="special" width="x-large">
+           <binding action="sym" label="&#x061F;&#x06F3;&#x06F2;&#x06F1;"/>
+         </key>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key>
+           <binding label="ئ"/>
+         </key>
+-        <key id="emailUrlKey"><binding label="،"/></key>
+-
+-        <key width="stretched">
++        <key width="xx-large">
+           <binding action="space"/>
+         </key>
+-
+-        <key><binding label="."/></key>
+         <key>
+           <binding label="آ"/>
+         </key>
+-        <key style="special" width="xx-large" rtl="false" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="x-large">
++          <binding action="sym" label="&#x061F;&#x06F3;&#x06F2;&#x06F1;"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/fi.xml b/maliit-keyboard/data/languages/fi.xml
+index 4199e68..15ebb30 100644
+--- a/maliit-keyboard/data/languages/fi.xml
++++ b/maliit-keyboard/data/languages/fi.xml
+@@ -44,111 +44,116 @@
+         <binding label="p"/>
+         <binding shift="true" label="P"/>
+       </key>
++      <key style="special">
++        <binding action="backspace" label=""/>
++      </key>
+       </row>
+ 
+       <row>
+-      <key>
++      <spacer/>
++      <key width="small">
+         <binding label="a" extended_labels="äåæàáâã"/>
+         <binding shift="true" label="A" extended_labels="ÄÅÆÀÁÂÃ"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="s" extended_labels="šß$"/>
+         <binding shift="true" label="S" extended_labels="Š$"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="d" extended_labels="ð"/>
+         <binding shift="true" label="D" extended_labels="Ð"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="f"/>
+         <binding shift="true" label="F"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="g"/>
+         <binding shift="true" label="G"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="h"/>
+         <binding shift="true" label="H"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="j"/>
+         <binding shift="true" label="J"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="k"/>
+         <binding shift="true" label="K"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="l"/>
+         <binding shift="true" label="L"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="ä" extended_labels="æ"/>
+         <binding shift="true" label="Ä" extended_labels="Æ"/>
+       </key>
+-
++      <key style="special" width="large" id="actionKey">
++        <binding action="return" label=""/>
++      </key>
++      <spacer/>
+       </row>
+ 
+       <row>
+-      <key style="special" width="x-large">
++      <key style="special">
+         <binding action="shift" label=""/>
+       </key>
+-
+-      <key>
++      <key width="small">
+         <binding label="z" extended_labels="ž"/>
+         <binding shift="true" label="Z" extended_labels="Ž"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="x"/>
+         <binding shift="true" label="X"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="c" extended_labels="ç"/>
+         <binding shift="true" label="C" extended_labels="Ç"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="v"/>
+         <binding shift="true" label="V"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="b"/>
+         <binding shift="true" label="B"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="n" extended_labels="ñ"/>
+         <binding shift="true" label="N" extended_labels="Ñ"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="m"/>
+         <binding shift="true" label="M"/>
+       </key>
+-
+-      <key style="special" width="x-large">
+-        <binding action="backspace" label=""/>
++      <key width="small" id="emailUrlKey"><binding label=","/></key>
++      <key width="small"><binding label="."/></key>
++      <key width="small">
++        <binding label="ö" extended_labels="ø"/>
++        <binding shift="true" label="Ö" extended_labels="Ø"/>
++      </key>
++      <key style="special">
++        <binding action="shift" label=""/>
+       </key>
+       </row>
+ 
+       <row>
+-      <key style="special" width="x-large">
++      <key style="special" width="large">
+         <binding action="sym" label="?123"/>
+       </key>
+-
+-      <key id="emailUrlKey"><binding label=","/></key>
+-      <key><binding label="."/></key>
+-
++      <key style="special">
++        <binding action="layout_menu"/>
++      </key>
+       <key width="stretched">
+         <binding action="space" label=""/>
+       </key>
+-
+-      <key>
+-        <binding label="ö" extended_labels="ø"/>
+-        <binding shift="true" label="Ö" extended_labels="Ø"/>
+-      </key>
+-
+-      <key style="special" width="xx-large" id="actionKey">
+-        <binding action="return" label=""/>
++      <key style="special" width="large">
++        <binding action="sym" label="?123"/>
+       </key>
++      <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/fr.xml b/maliit-keyboard/data/languages/fr.xml
+index 7a2d481..275795f 100644
+--- a/maliit-keyboard/data/languages/fr.xml
++++ b/maliit-keyboard/data/languages/fr.xml
+@@ -44,56 +44,63 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="q"/>
+           <binding shift="true" label="Q"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="s" extended_labels="ß$"/>
+           <binding shift="true" label="S" extended_labels="$"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="d"/>
+           <binding shift="true" label="D"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="f"/>
+           <binding shift="true" label="F"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="g"/>
+           <binding shift="true" label="G"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="h"/>
+           <binding shift="true" label="H"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="j"/>
+           <binding shift="true" label="J"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="k"/>
+           <binding shift="true" label="K"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="l"/>
+           <binding shift="true" label="L"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="shift"/>
+         </key>
+-
+         <key>
+           <binding label="w"/>
+           <binding shift="true" label="W"/>
+@@ -122,27 +129,32 @@
+           <binding label="ç"/>
+           <binding shift="true" label="Ç"/>
+         </key>
+-
+-        <key style="special" width="x-large">
+-          <binding action="backspace"/>
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="shift"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="sym" label="?123"/>
+         </key>
+ 
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++
+         <key><binding label="&#x0027;"/></key>
+-        <key id="emailUrlKey"><binding label=","/></key>
+ 
+         <key width="stretched"><binding action="space"/></key>
+ 
+-        <key><binding label="."/></key>
+-
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="sym" label="?123"/>
+         </key>
++
++        <key style="special"><binding action="close"/></key>
++
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/fr_ca.xml b/maliit-keyboard/data/languages/fr_ca.xml
+index 712b17a..d9b5d4f 100644
+--- a/maliit-keyboard/data/languages/fr_ca.xml
++++ b/maliit-keyboard/data/languages/fr_ca.xml
+@@ -44,56 +44,63 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace" label=""/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding accented_labels="àáâä" accents="`´^¨" label="a" extended_labels="àâæáãä"/>
+           <binding shift="true" accented_labels="ÀÁÂÄ" accents="`´^¨" label="A" extended_labels="ÀÂÆÁÃÄ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="s" extended_labels="ß$"/>
+           <binding shift="true" label="S" extended_labels="$"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="d"/>
+           <binding shift="true" label="D"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="f"/>
+           <binding shift="true" label="F"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="g"/>
+           <binding shift="true" label="G"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="h"/>
+           <binding shift="true" label="H"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="j"/>
+           <binding shift="true" label="J"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="k"/>
+           <binding shift="true" label="K"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="l"/>
+           <binding shift="true" label="L"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ç"/>
+           <binding shift="true" label="Ç"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return" label=""/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="shift" label=""/>
+         </key>
+-
+         <key>
+           <binding label="z"/>
+           <binding shift="true" label="Z"/>
+@@ -122,29 +129,28 @@
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
+-
+-        <key style="special" width="x-large">
+-          <binding action="backspace" label=""/>
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="shift" label=""/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="sym" label="?123"/>
+         </key>
+-
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key><binding label="&#x0027;"/></key>
+-        <key id="emailUrlKey"><binding label=","/></key>
+-        
+         <key width="stretched">
+             <binding action="space" label=""/>
+         </key>
+-
+-        <key><binding label="."/></key>
+-
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return" label=""/>
++        <key style="special">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+ 
+     </section>
+diff --git a/maliit-keyboard/data/languages/he.xml b/maliit-keyboard/data/languages/he.xml
+index cf4e619..69f0389 100644
+--- a/maliit-keyboard/data/languages/he.xml
++++ b/maliit-keyboard/data/languages/he.xml
+@@ -5,7 +5,6 @@
+     <section id="main" style="hebrew">
+       <row>
+         <spacer/>
+-        
+         <key>
+ 	  <binding label="ק"/>
+ 	</key>
+@@ -30,41 +29,48 @@
+         <key>
+ 	  <binding label="פ"/>
+ 	</key>
+-
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+         <spacer/>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+ 	  <binding label="ש"/>
+ 	</key>
+-        <key>
++        <key width="small">
+ 	  <binding label="ד"/>
+ 	</key>
+-        <key>
++        <key width="small">
+ 	  <binding label="ג"/>
+ 	</key>
+-        <key>
++        <key width="small">
+ 	  <binding label="כ"/>
+ 	</key>
+-        <key>
++        <key width="small">
+ 	  <binding label="ע"/>
+ 	</key>
+-        <key>
++        <key width="small">
+ 	  <binding label="י"/>
+ 	</key>
+-        <key>
++        <key width="small">
+ 	  <binding label="ח"/>
+ 	</key>
+-        <key>
++        <key width="small">
+ 	  <binding label="ל"/>
+ 	</key>
+-        <key>
++        <key width="small">
+ 	  <binding label="ך"/>
+ 	</key>
+-        <key>
++        <key width="small">
+ 	  <binding label="ף"/>
+ 	</key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+@@ -95,24 +101,22 @@
+         <key>
+ 	  <binding label="ץ"/>
+ 	</key>
+-
+-        <key style="special">
+-          <binding action="backspace"/>
+-        </key>
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
+       </row>
+ 
+       <row>
+         <key style="special" width="large">
+           <binding action="sym" label="?123"/>
+         </key>
+-
+-        <key id="emailUrlKey"><binding label=","/></key>
+-        <key width="xx-large"><binding action="space"/></key>
+-        <key><binding label="."/></key>
+-
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++        <key width="stretched"><binding action="space"/></key>
++        <key style="special" width="large">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/hu.xml b/maliit-keyboard/data/languages/hu.xml
+index f090185..aadf93b 100644
+--- a/maliit-keyboard/data/languages/hu.xml
++++ b/maliit-keyboard/data/languages/hu.xml
+@@ -44,109 +44,115 @@
+         <binding label="p"/>
+         <binding shift="true" label="P"/>
+        </key>
++       <key style="special">
++        <binding action="backspace" label=""/>
++       </key>
+       </row>
+ 
+       <row>
+-       <key>
++       <spacer/>
++       <key width="small">
+         <binding accented_labels="á" accents="´" label="a" extended_labels="áäâăą"/>
+         <binding shift="true" accented_labels="Á" accents="´" label="A" extended_labels="ÁÄÂĂĄ"/>
+        </key>
+-       <key>
++       <key width="small">
+         <binding label="s" extended_labels="ßśşš$"/>
+         <binding shift="true" label="S" extended_labels="ŚŞŠ$"/>
+        </key>
+-       <key>
++       <key width="small">
+         <binding label="d" extended_labels="đď"/>
+         <binding shift="true" label="D" extended_labels="ĐĎ"/>
+        </key>
+-       <key>
++       <key width="small">
+         <binding label="f"/>
+         <binding shift="true" label="F"/>
+        </key>
+-       <key>
++       <key width="small">
+         <binding label="g"/>
+         <binding shift="true" label="G"/>
+        </key>
+-       <key>
++       <key width="small">
+         <binding label="h"/>
+         <binding shift="true" label="H"/>
+        </key>
+-       <key>
++       <key width="small">
+         <binding label="j"/>
+         <binding shift="true" label="J"/>
+        </key>
+-       <key>
++       <key width="small">
+         <binding label="k"/>
+         <binding shift="true" label="K"/>
+        </key>
+-       <key>
++       <key width="small">
+         <binding label="l"/>
+         <binding shift="true" label="L"/>
+        </key>
+-       <key style="special">
++       <key width="small" style="special">
+         <binding dead="true" label="&#x00B4;"/>
+        </key>
++       <key style="special" width="large" id="actionKey">
++        <binding action="return" label=""/>
++       </key>
++       <spacer/>
+       </row>
+ 
+       <row>
+        <key style="special">
+         <binding action="shift" label=""/>
+        </key>
+-
+-       <key>
++       <key width="small">
+         <binding label="y" extended_labels="¥"/>
+         <binding shift="true" label="Y" extended_labels="¥"/>
+        </key>
+-       <key>
++       <key width="small">
+         <binding label="x"/>
+         <binding shift="true" label="X"/>
+        </key>
+-       <key>
++       <key width="small">
+         <binding label="c" extended_labels="ćčç"/>
+         <binding shift="true" label="C" extended_labels="ĆČÇ"/>
+        </key>
+-       <key>
++       <key width="small">
+         <binding label="v"/>
+         <binding shift="true" label="V"/>
+        </key>
+-       <key>
++       <key width="small">
+         <binding label="b"/>
+         <binding shift="true" label="B"/>
+        </key>
+-       <key>
++       <key width="small">
+         <binding label="n" extended_labels="ńňñ"/>
+         <binding shift="true" label="N" extended_labels="ŃŇÑ"/>
+        </key>
+-       <key>
++       <key width="small">
+         <binding label="m"/>
+         <binding shift="true" label="M"/>
+        </key>
+-       <key style="special">
++       <key width="small" style="special">
+         <binding dead="true" label="&#x02DD;"/>
+        </key>
+-
++       <key width="small" id="emailUrlKey"><binding label=","/></key>
++       <key width="small"><binding label="."/></key>
+        <key style="special">
+-        <binding action="backspace" label=""/>
++        <binding action="shift" label=""/>
+        </key>
+       </row>
+ 
+       <row>
+-       <key style="special" width="large">
++       <key style="special">
+         <binding action="sym" label="?123"/>
+        </key>
+-
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+        <key style="special"><binding dead="true" label="¨"/></key>
+-       <key id="emailUrlKey"><binding label=","/></key>
+-
+-       <key width="xx-large">
++       <key width="stretched">
+         <binding action="space" label=""/>
+        </key>
+-
+-       <key><binding label="."/></key>
+-
+-       <key style="special" width="x-large" id="actionKey">
+-        <binding action="return" label=""/>
++       <key style="special">
++        <binding action="sym" label="?123"/>
+        </key>
++       <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/id.xml b/maliit-keyboard/data/languages/id.xml
+index 92dbfd6..5cc7c3f 100644
+--- a/maliit-keyboard/data/languages/id.xml
++++ b/maliit-keyboard/data/languages/id.xml
+@@ -44,11 +44,13 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+         <spacer/>
+-
+         <key>
+           <binding label="a" extended_labels="àâæáãä"/>
+           <binding shift="true" label="A" extended_labels="ÀÂÆÁÃÄ"/>
+@@ -85,17 +87,16 @@
+           <binding label="l"/>
+           <binding shift="true" label="L"/>
+         </key>
+-
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
+         <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="shift"/>
+         </key>
+-
+-        <spacer/>
+-
+         <key>
+           <binding label="z"/>
+           <binding shift="true" label="Z"/>
+@@ -124,30 +125,25 @@
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="large">
+-          <binding action="backspace"/>
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="shift"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="sym" label="?123"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key id="emailUrlKey"><binding label=","/></key>
+-        <key width="xx-large"><binding action="space"/></key>
+-        <key><binding label="."/></key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++        <key width="stretched"><binding action="space"/></key>
++        <key style="special" width="large">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/it.xml b/maliit-keyboard/data/languages/it.xml
+index 851f7d4..c206ae7 100644
+--- a/maliit-keyboard/data/languages/it.xml
++++ b/maliit-keyboard/data/languages/it.xml
+@@ -44,52 +44,60 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
++
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding accented_labels="à" accents="`" label="a" extended_labels="àªäáâã"/>
+           <binding shift="true" accented_labels="À" accents="`" label="A" extended_labels="ÀªÄÁÂÃ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="s" extended_labels="ß$"/>
+           <binding shift="true" label="S" extended_labels="$"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="d"/>
+           <binding shift="true" label="D"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="f"/>
+           <binding shift="true" label="F"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="g"/>
+           <binding shift="true" label="G"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="h"/>
+           <binding shift="true" label="H"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="j"/>
+           <binding shift="true" label="J"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="k"/>
+           <binding shift="true" label="K"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="l"/>
+           <binding shift="true" label="L"/>
+         </key>
+-        <key><binding label="&#x0027;"/></key>
++        <key width="small"><binding label="&#x0027;"/></key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="shift"/>
+         </key>
+-
+         <key>
+           <binding label="z"/>
+           <binding shift="true" label="Z"/>
+@@ -118,29 +126,28 @@
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
+-
+-        <key style="special" width="x-large">
+-          <binding action="backspace"/>
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="shift"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="sym" label="?123"/>
+         </key>
+-
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key style="special">
+           <binding dead="true" label="`"/>
+         </key>
+-        <key id="emailUrlKey"><binding label=","/></key>
+-
+         <key width="stretched"><binding action="space"/></key>
+-
+-        <key><binding label="."/></key>
+-
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/kk.xml b/maliit-keyboard/data/languages/kk.xml
+index b10712e..5dbc526 100644
+--- a/maliit-keyboard/data/languages/kk.xml
++++ b/maliit-keyboard/data/languages/kk.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard title="Қазақ" version="1.0" catalog="virtual-keyboard" language="kk">
+   <layout type="general">
+-    <section id="main">
++    <section id="main" style="ar">
+       <row>
+         <key>
+           <binding label="й"/>
+@@ -48,123 +48,129 @@
+           <binding label="х" extended_labels="һ"/>
+           <binding shift="true" label="Х" extended_labels="Һ"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="ф"/>
+           <binding shift="true" label="Ф"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ы" extended_labels="і"/>
+           <binding shift="true" label="Ы" extended_labels="І"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="в"/>
+           <binding shift="true" label="В"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="а" extended_labels="ә"/>
+           <binding shift="true" label="А" extended_labels="Ә"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="п"/>
+           <binding shift="true" label="П"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="р"/>
+           <binding shift="true" label="Р"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="о" extended_labels="ө"/>
+           <binding shift="true" label="О" extended_labels="Ө"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="л"/>
+           <binding shift="true" label="Л"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="д"/>
+           <binding shift="true" label="Д"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ж"/>
+           <binding shift="true" label="Ж"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="э"/>
+           <binding shift="true" label="Э"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+         <key style="special">
+           <binding action="shift" label=""/>
+         </key>
+-
+-        <key>
++        <key width="small">
+           <binding label="я"/>
+           <binding shift="true" label="Я"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ч"/>
+           <binding shift="true" label="Ч"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="с"/>
+           <binding shift="true" label="С"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="м"/>
+           <binding shift="true" label="М"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="и"/>
+           <binding shift="true" label="И"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="т"/>
+           <binding shift="true" label="Т"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ь"/>
+           <binding shift="true" label="Ь"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="б"/>
+           <binding shift="true" label="Б"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ю"/>
+           <binding shift="true" label="Ю"/>
+         </key>
+-
++        <key width="small" id="emailUrlKey"><binding label=","/></key>
++        <key width="small"><binding label="."/></key>
+         <key style="special">
+-          <binding action="backspace"/>
++          <binding action="shift" label=""/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special" width="x-large">
+           <binding action="sym" label="?123"/>
+         </key>
+-
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key><binding label="-"/></key>
+-        <key id="emailUrlKey"><binding label=","/></key>
+-
+-        <key width="stretched">
++        <key width="xx-large">
+           <binding action="space" label=""/>
+         </key>
+-
+-        <key><binding label="."/></key>
+         <key>
+           <binding label="ъ"/>
+           <binding shift="true" label="Ъ"/>
+         </key>
+-
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="x-large">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/lt.xml b/maliit-keyboard/data/languages/lt.xml
+index 746a46e..446af95 100644
+--- a/maliit-keyboard/data/languages/lt.xml
++++ b/maliit-keyboard/data/languages/lt.xml
+@@ -44,11 +44,13 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+         <spacer/>
+-
+         <key>
+           <binding label="a" extended_labels="ą"/>
+           <binding shift="true" label="A" extended_labels="Ą"/>
+@@ -85,17 +87,17 @@
+           <binding label="l"/>
+           <binding shift="true" label="L"/>
+         </key>
+-
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
+         <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="shift"/>
+         </key>
+ 
+-        <spacer/>
+-
+         <key>
+           <binding label="z" extended_labels="ž"/>
+           <binding shift="true" label="Z" extended_labels="Ž"/>
+@@ -124,30 +126,25 @@
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="large">
+-          <binding action="backspace"/>
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="shift"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="sym" label="?123"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key id="emailUrlKey"><binding label=","/></key>
+-        <key width="xx-large"><binding action="space"/></key>
+-        <key><binding label="."/></key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++        <key width="stretched"><binding action="space"/></key>
++        <key style="special" width="large">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/mk_mk.xml b/maliit-keyboard/data/languages/mk_mk.xml
+index 1308f07..367ecce 100644
+--- a/maliit-keyboard/data/languages/mk_mk.xml
++++ b/maliit-keyboard/data/languages/mk_mk.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard title="Македонски" version="1.0" catalog="mk_mk" language="mk_mk">
+   <layout type="general">
+-    <section id="main">
++    <section id="main" style="ar">
+       <row>
+         <key>
+           <binding label="љ"/>
+@@ -48,117 +48,124 @@
+           <binding label="ш"/>
+           <binding shift="true" label="Ш"/>
+         </key>
++        <key style="special" width="large">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="а" />
+           <binding shift="true" label="А" />
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="с" extended_labels="$"/>
+           <binding shift="true" label="С" extended_labels="$"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="д" />
+           <binding shift="true" label="Д" />
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ф"/>
+           <binding shift="true" label="Ф"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="г"/>
+           <binding shift="true" label="Г"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="х"/>
+           <binding shift="true" label="Х"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ј"/>
+           <binding shift="true" label="Ј"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="к"/>
+           <binding shift="true" label="К"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="л"/>
+           <binding shift="true" label="Л"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ч"/>
+           <binding shift="true" label="Ч"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ќ"/>
+           <binding shift="true" label="Ќ"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special">
++        <key style="special" width="large">
+           <binding action="shift"/>
+         </key>
+-
+-        <key>
++        <key width="small">
+           <binding label="з"/>
+           <binding shift="true" label="З"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="џ"/>
+           <binding shift="true" label="Џ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ц"/>
+           <binding shift="true" label="Ц"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="в"/>
+           <binding shift="true" label="В"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="б"/>
+           <binding shift="true" label="Б"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="н"/>
+           <binding shift="true" label="Н"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="м"/>
+           <binding shift="true" label="М"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ѓ"/>
+           <binding shift="true" label="Ѓ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ж"/>
+           <binding shift="true" label="Ж"/>
+         </key>
+-
+-
+-        <key style="special">
+-          <binding action="backspace"/>
++        <key width="small" id="emailUrlKey"><binding label=","/></key>
++        <key width="small"><binding label="."/></key>
++        <key style="special" width="large">
++          <binding action="shift"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="sym" label="?123"/>
+         </key>
+-
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key><binding label=";"/></key>
+-        <key id="emailUrlKey"><binding label=","/></key>
+-        <key width="xx-large"><binding action="space"/></key>
+-        <key><binding label="."/></key>
++        <key width="stretched"><binding action="space"/></key>
+         <key><binding label=":"/></key>
+-
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/ms.xml b/maliit-keyboard/data/languages/ms.xml
+index 6d4c514..10ea7b3 100644
+--- a/maliit-keyboard/data/languages/ms.xml
++++ b/maliit-keyboard/data/languages/ms.xml
+@@ -44,11 +44,13 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+         <spacer/>
+-
+         <key>
+           <binding label="a" extended_labels="àâæáãä"/>
+           <binding shift="true" label="A" extended_labels="ÀÂÆÁÃÄ"/>
+@@ -85,17 +87,16 @@
+           <binding label="l"/>
+           <binding shift="true" label="L"/>
+         </key>
+-
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
+         <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="shift"/>
+         </key>
+-
+-        <spacer/>
+-
+         <key>
+           <binding label="z"/>
+           <binding shift="true" label="Z"/>
+@@ -124,30 +125,25 @@
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="large">
+-          <binding action="backspace"/>
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="shift"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="sym" label="?123"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key id="emailUrlKey"><binding label=","/></key>
+-        <key width="xx-large"><binding action="space"/></key>
+-        <key><binding label="."/></key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++        <key width="stretched"><binding action="space"/></key>
++        <key style="special" width="large">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/nl.xml b/maliit-keyboard/data/languages/nl.xml
+index 25ef262..cbc4aaf 100644
+--- a/maliit-keyboard/data/languages/nl.xml
++++ b/maliit-keyboard/data/languages/nl.xml
+@@ -44,6 +44,9 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+@@ -84,14 +87,16 @@
+           <binding label="l"/>
+           <binding shift="true" label="L"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
+         <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="shift"/>
+         </key>
+-        <spacer/>
+         <key>
+           <binding label="z"/>
+           <binding shift="true" label="Z"/>
+@@ -120,28 +125,25 @@
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
+-        <spacer/>
+-        <key style="special" width="large">
+-          <binding action="backspace"/>
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="shift"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="sym" label="?123"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key id="emailUrlKey"><binding label=","/></key>
+-        <key width="xx-large"><binding action="space"/></key>
+-        <key><binding label="."/></key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++        <key width="stretched"><binding action="space"/></key>
++        <key style="special" width="large">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/no.xml b/maliit-keyboard/data/languages/no.xml
+index 1fe2cf7..228d456 100644
+--- a/maliit-keyboard/data/languages/no.xml
++++ b/maliit-keyboard/data/languages/no.xml
+@@ -44,114 +44,120 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace" label=""/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="a" extended_labels="åæäàáâã"/>
+           <binding shift="true" label="A" extended_labels="ÅÆÄÀÁÂÃ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="s" extended_labels="ß$"/>
+           <binding shift="true" label="S" extended_labels="ß$"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="d" extended_labels="ð"/>
+           <binding shift="true" label="D" extended_labels="Ð"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="f"/>
+           <binding shift="true" label="F"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="g"/>
+           <binding shift="true" label="G"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="h"/>
+           <binding shift="true" label="H"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="j"/>
+           <binding shift="true" label="J"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="k"/>
+           <binding shift="true" label="K"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="l"/>
+           <binding shift="true" label="L"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="å"/>
+           <binding shift="true" label="Å"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return" label=""/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+         <key style="special">
+           <binding action="shift" label=""/>
+         </key>
+-
+-        <key>
++        <key width="small">
+           <binding label="z"/>
+           <binding shift="true" label="Z"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="x"/>
+           <binding shift="true" label="X"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="c" extended_labels="ç"/>
+           <binding shift="true" label="C" extended_labels="Ç"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="v"/>
+           <binding shift="true" label="V"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="b"/>
+           <binding shift="true" label="B"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="n" extended_labels="ñ"/>
+           <binding shift="true" label="N" extended_labels="Ñ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="æ" extended_labels="ä"/>
+           <binding shift="true" label="Æ" extended_labels="Ä"/>
+         </key>
+-
++        <key width="small" id="emailUrlKey"><binding label=","/></key>
++        <key width="small"><binding label="."/></key>
+         <key style="special">
+-          <binding action="backspace" label=""/>
++          <binding action="shift" label=""/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="sym" label="?123"/>
+         </key>
+-
+-        <key id="emailUrlKey"><binding label=","/></key>
+-        <key><binding label="."/></key>
+-
+-        <key width="xx-large">
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++        <key width="stretched">
+           <binding action="space" label=""/>
+         </key>
+-
+         <key>
+           <binding label="ø" extended_labels="ö"/>
+           <binding shift="true" label="Ø" extended_labels="Ö"/>
+         </key>
+-
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return" label=""/>
++        <key style="special">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+ 
+     </section>
+diff --git a/maliit-keyboard/data/languages/pl.xml b/maliit-keyboard/data/languages/pl.xml
+index 946b333..41ada3e 100644
+--- a/maliit-keyboard/data/languages/pl.xml
++++ b/maliit-keyboard/data/languages/pl.xml
+@@ -5,7 +5,7 @@
+     <symview src="symbols-38.xml"/>
+   </import>
+   <layout type="general">
+-    <section id="main">
++    <section id="main" style="ar">
+       <row>
+         <key>
+           <binding label="q"/>
+@@ -47,65 +47,71 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
+-        <key>
++        <key width="large">
+           <binding label="ż"/>
+           <binding shift="true" label="Ż"/>
+         </key>
++        <key style="special" width="large">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="a" extended_labels="ąäáâă"/>
+           <binding shift="true" label="A" extended_labels="ĄÄÁÂĂ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding accented_labels="ś" accents="´" label="s" extended_labels="śßşš$"/>
+           <binding shift="true" accented_labels="Ś" accents="´" label="S" extended_labels="ŚŞŠ$"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="d" extended_labels="ďđ"/>
+           <binding shift="true" label="D" extended_labels="ĎĐ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="f"/>
+           <binding shift="true" label="F"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="g"/>
+           <binding shift="true" label="G"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="h"/>
+           <binding shift="true" label="H"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="j"/>
+           <binding shift="true" label="J"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="k"/>
+           <binding shift="true" label="K"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="l" extended_labels="łľĺ"/>
+           <binding shift="true" label="L" extended_labels="ŁĽĹ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ł"/>
+           <binding shift="true" label="Ł"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ą"/>
+           <binding shift="true" label="Ą"/>
+         </key>
+-
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+         <key style="special" width="large">
+           <binding action="shift"/>
+         </key>
+-
+         <key>
+           <binding accented_labels="ź" accents="´" label="z" extended_labels="żźž"/>
+           <binding shift="true" accented_labels="Ź" accents="´" label="Z" extended_labels="ŻŹŽ"/>
+@@ -138,9 +144,10 @@
+           <binding label="ę"/>
+           <binding shift="true" label="Ę"/>
+         </key>
+-
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
+         <key style="special" width="large">
+-          <binding action="backspace"/>
++          <binding action="shift"/>
+         </key>
+       </row>
+ 
+@@ -148,18 +155,17 @@
+         <key style="special" width="x-large">
+           <binding action="sym" label="?123"/>
+         </key>
+-
+-        <key style="special">
++        <key style="special" width="small">
++          <binding action="layout_menu"/>
++        </key>
++        <key style="special" width="small">
+           <binding dead="true" label="´"/>
+         </key>
+-        <key id="emailUrlKey"><binding label=","/></key>
+         <key width="stretched"><binding action="space"/></key>
+-
+-        <key><binding label="."/></key>
+-
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="x-large">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special" width="small"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/pt.xml b/maliit-keyboard/data/languages/pt.xml
+index 3356b51..7918d41 100644
+--- a/maliit-keyboard/data/languages/pt.xml
++++ b/maliit-keyboard/data/languages/pt.xml
+@@ -44,56 +44,63 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding accented_labels="àáâã" accents="`´^~" label="a" extended_labels="ãáàâªäæ"/>
+           <binding shift="true" accented_labels="ÀÁÂÃ" accents="`´^~" label="A" extended_labels="ÃÁÀªÄÆ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="s" extended_labels="ß$"/>
+           <binding shift="true" label="S" extended_labels="$"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="d"/>
+           <binding shift="true" label="D"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="f"/>
+           <binding shift="true" label="F"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="g"/>
+           <binding shift="true" label="G"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="h"/>
+           <binding shift="true" label="H"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="j"/>
+           <binding shift="true" label="J"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="k"/>
+           <binding shift="true" label="K"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="l"/>
+           <binding shift="true" label="L"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ç"/>
+           <binding shift="true" label="Ç"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="shift" label=""/>
+         </key>
+-
+         <key>
+           <binding label="z"/>
+           <binding shift="true" label="Z"/>
+@@ -122,27 +129,26 @@
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
+-
+-        <key style="special" width="x-large">
+-          <binding action="backspace"/>
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="shift" label=""/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="sym" label="?123"/>
+         </key>
+-
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key><binding label="-"/></key>
+-        <key id="emailUrlKey"><binding label=","/></key>
+-
+         <key width="stretched"><binding action="space" label=""/></key>
+-
+-        <key><binding label="."/></key>
+-
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/ro.xml b/maliit-keyboard/data/languages/ro.xml
+index 44d18e5..3b1e289 100644
+--- a/maliit-keyboard/data/languages/ro.xml
++++ b/maliit-keyboard/data/languages/ro.xml
+@@ -44,54 +44,60 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="a" extended_labels="ăâäáą"/>
+           <binding shift="true" label="A" extended_labels="ĂÂÄÁĄ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="s" extended_labels="şßśš$"/>
+           <binding shift="true" label="S" extended_labels="ŞŚŠ$"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="d" extended_labels="ďđ"/>
+           <binding shift="true" label="D" extended_labels="ĎĐ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="f"/>
+           <binding shift="true" label="F"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="g"/>
+           <binding shift="true" label="G"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="h"/>
+           <binding shift="true" label="H"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="j"/>
+           <binding shift="true" label="J"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="k"/>
+           <binding shift="true" label="K"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="l" extended_labels="ĺľł"/>
+           <binding shift="true" label="L" extended_labels="ĹĽŁ"/>
+         </key>
+-        
+-        <key><binding label="&#x0027;"/></key>
++        <key width="small"><binding label="&#x0027;"/></key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="shift"/>
+         </key>
+-
+         <key>
+           <binding label="z" extended_labels="źžż"/>
+           <binding shift="true" label="Z" extended_labels="ŹŽŻ"/>
+@@ -120,27 +126,26 @@
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
+-
+-        <key style="special" width="x-large">
+-          <binding action="backspace"/>
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="shift"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="sym" label="?123"/>
+         </key>
+-
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key><binding label="-"/></key>
+-        <key id="emailUrlKey"><binding label=","/></key>
+-
+         <key width="stretched"><binding action="space"/></key>
+-
+-        <key><binding label="."/></key>
+-
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/ru.xml b/maliit-keyboard/data/languages/ru.xml
+index 2d75f51..1499f63 100644
+--- a/maliit-keyboard/data/languages/ru.xml
++++ b/maliit-keyboard/data/languages/ru.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard title="Русский" version="1.0" catalog="ru" language="ru">
+   <layout type="general">
+-    <section id="main">
++    <section id="main" style="ar">
+       <row>
+         <key>
+           <binding label="й"/>
+@@ -48,60 +48,67 @@
+           <binding label="х"/>
+           <binding shift="true" label="Х"/>
+         </key>
++        <key style="special" width="large">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="ф"/>
+           <binding shift="true" label="Ф"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ы"/>
+           <binding shift="true" label="Ы"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="в"/>
+           <binding shift="true" label="В"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="а"/>
+           <binding shift="true" label="А"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="п"/>
+           <binding shift="true" label="П"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="р"/>
+           <binding shift="true" label="Р"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="о"/>
+           <binding shift="true" label="О"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="л"/>
+           <binding shift="true" label="Л"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="д"/>
+           <binding shift="true" label="Д"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ж"/>
+           <binding shift="true" label="Ж"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="э"/>
+           <binding shift="true" label="Э"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special">
++        <key style="special" width="large">
+           <binding action="shift" label=""/>
+         </key>
+-
+         <key>
+           <binding label="я"/>
+           <binding shift="true" label="Я"/>
+@@ -138,33 +145,32 @@
+           <binding label="ю"/>
+           <binding shift="true" label="Ю"/>
+         </key>
+-
+-        <key style="special">
+-          <binding action="backspace"/>
++        <key id="emailUrlKey"><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special" width="large">
++          <binding action="shift" label=""/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="sym" label="?123"/>
+         </key>
+-
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key><binding label="-"/></key>
+-        <key id="emailUrlKey"><binding label=","/></key>
+-
+-        <key width="xx-large">
++        <key width="stretched">
+           <binding action="space" label=""/>
+         </key>
+-
+-        <key><binding label="."/></key>
+         <key>
+           <binding label="ъ"/>
+           <binding shift="true" label="Ъ"/>
+         </key>
+-
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/sk.xml b/maliit-keyboard/data/languages/sk.xml
+index d1fdaa4..3e971f4 100644
+--- a/maliit-keyboard/data/languages/sk.xml
++++ b/maliit-keyboard/data/languages/sk.xml
+@@ -44,91 +44,99 @@
+           <binding label="p"/>
+           <binding shift="true" label="P"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding accented_labels="á" accents="´" label="a" extended_labels="áäăâą"/>
+           <binding shift="true" accented_labels="Á" accents="´" label="A" extended_labels="ÁÄĂÂĄ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding accented_labels="š" accents="ˇ" label="s" extended_labels="šßśş$"/>
+           <binding shift="true" accented_labels="Š" accents="ˇ" label="S" extended_labels="ŠŚŞ$"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding accented_labels="ď" accents="ˇ" label="d" extended_labels="ďđ"/>
+           <binding shift="true" accented_labels="Ď" accents="ˇ" label="D" extended_labels="ĎĐ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="f"/>
+           <binding shift="true" label="F"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="g"/>
+           <binding shift="true" label="G"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="h"/>
+           <binding shift="true" label="H"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="j"/>
+           <binding shift="true" label="J"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="k"/>
+           <binding shift="true" label="K"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding accented_labels="ĺľ" accents="´ˇ" label="l" extended_labels="ľĺł"/>
+           <binding shift="true" accented_labels="ĹĽ" accents="´ˇ" label="L" extended_labels="ĽĹŁ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ä"/>
+           <binding shift="true" label="Ä"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+         <key style="special">
+           <binding action="shift" label=""/>
+         </key>
+-
+-        <key>
++        <key width="small">
+           <binding accented_labels="ý" accents="´" label="y" extended_labels="ý¥"/>
+           <binding shift="true" accented_labels="Ý" accents="´" label="Y" extended_labels="Ý¥"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="x"/>
+           <binding shift="true" label="X"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding accented_labels="č" accents="ˇ" label="c" extended_labels="čćç"/>
+           <binding shift="true" accented_labels="Č" accents="ˇ" label="C" extended_labels="ČĆÇ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="v"/>
+           <binding shift="true" label="V"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="b"/>
+           <binding shift="true" label="B"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding accented_labels="ň" accents="ˇ" label="n" extended_labels="ňńñ"/>
+           <binding shift="true" accented_labels="Ň" accents="ˇ" label="N" extended_labels="ŇŃÑ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="m"/>
+           <binding shift="true" label="M"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ô"/>
+           <binding shift="true" label="Ô"/>
+         </key>
+-
++        <key width="small" id="emailUrlKey"><binding label=","/></key>
++        <key width="small"><binding label="."/></key>
+         <key style="special">
+-          <binding action="backspace"/>
++          <binding action="shift" label=""/>
+         </key>
+       </row>
+ 
+@@ -136,20 +144,18 @@
+         <key style="special" width="large">
+           <binding action="sym" label="?123"/>
+         </key>
+-
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key style="special"><binding dead="true" label="´"/></key>
+-        <key id="emailUrlKey"><binding label=","/></key>
+-
+         <key width="xx-large">
+           <binding action="space" label=""/>
+         </key>
+-
+-        <key><binding label="."/></key>
+         <key style="special"><binding dead="true" label="ˇ"/></key>
+-
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="large">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/sv.xml b/maliit-keyboard/data/languages/sv.xml
+index 8753d1c..1313dd0 100644
+--- a/maliit-keyboard/data/languages/sv.xml
++++ b/maliit-keyboard/data/languages/sv.xml
+@@ -44,114 +44,120 @@
+         <binding label="p"/>
+         <binding shift="true" label="P"/>
+       </key>
++      <key style="special">
++        <binding action="backspace" label=""/>
++      </key>
+       </row>
+ 
+       <row>
+-      <key>
++      <spacer/>
++      <key width="small">
+         <binding label="a" extended_labels="æåäàáâã"/>
+         <binding shift="true" label="A" extended_labels="ÆÅÄÀÁÂÃ"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="s" extended_labels="ß$"/>
+         <binding shift="true" label="S" extended_labels="ß$"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="d" extended_labels="ð"/>
+         <binding shift="true" label="D" extended_labels="Ð"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="f"/>
+         <binding shift="true" label="F"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="g"/>
+         <binding shift="true" label="G"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="h"/>
+         <binding shift="true" label="H"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="j"/>
+         <binding shift="true" label="J"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="k"/>
+         <binding shift="true" label="K"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="l"/>
+         <binding shift="true" label="L"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="å" />
+         <binding shift="true" label="Å" />
+       </key>
++      <key style="special" width="large" id="actionKey">
++        <binding action="return" label=""/>
++      </key>
++      <spacer/>
+       </row>
+ 
+       <row>
+       <key style="special">
+         <binding action="shift" label=""/>
+       </key>
+-
+-      <key>
++      <key width="small">
+         <binding label="z"/>
+         <binding shift="true" label="Z"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="x"/>
+         <binding shift="true" label="X"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="c" extended_labels="ç"/>
+         <binding shift="true" label="C" extended_labels="Ç"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="v"/>
+         <binding shift="true" label="V"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="b"/>
+         <binding shift="true" label="B"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="n" extended_labels="ñ"/>
+         <binding shift="true" label="N" extended_labels="Ñ"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="m"/>
+         <binding shift="true" label="M"/>
+       </key>
+-      <key>
++      <key width="small">
+         <binding label="ä" extended_labels="æ"/>
+         <binding shift="true" label="Ä" extended_labels="Æ"/>
+       </key>
+-
++      <key width="small" id="emailUrlKey"><binding label=","/></key>
++      <key width="small"><binding label="."/></key>
+       <key style="special">
+-        <binding action="backspace" label=""/>
++        <binding action="shift" label=""/>
+       </key>
+       </row>
+ 
+       <row>
+-      <key style="special" width="large">
++      <key style="special">
+         <binding action="sym" label="?123"/>
+       </key>
+-
+-      <key id="emailUrlKey"><binding label=","/></key>
+-      <key><binding label="."/></key>
+-
+-      <key width="xx-large">
++      <key style="special">
++        <binding action="layout_menu"/>
++      </key>
++      <key width="stretched">
+         <binding action="space" label=""/>
+       </key>
+-
+       <key>
+         <binding label="ö" extended_labels="ø"/>
+         <binding shift="true" label="Ö" extended_labels="Ø"/>
+       </key>
+-
+-      <key style="special" width="x-large" id="actionKey">
+-        <binding action="return" label=""/>
++      <key style="special">
++        <binding action="sym" label="?123"/>
+       </key>
++      <key style="special"><binding action="close"/></key>
+     </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/symbols-35-fi.xml b/maliit-keyboard/data/languages/symbols-35-fi.xml
+index 51d1421..d638f3f 100644
+--- a/maliit-keyboard/data/languages/symbols-35-fi.xml
++++ b/maliit-keyboard/data/languages/symbols-35-fi.xml
+@@ -34,95 +34,96 @@
+         <key>
+           <binding label="0"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="*"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="#"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="+"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="-"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="="/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="("/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=")"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=";"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=":"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="?"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="switch" label="1/2"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key>
++        <key width="small">
+           <binding label="@" quickpick="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="~"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="/"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="\"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0027;" quickpick="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0022;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="!"/>
+         </key>
+-
+-        <spacer/>
+- 
+-        <key style="special" width="x-large">
+-          <binding action="backspace"/>
++        <key width="small"><binding label="_"/></key>
++        <key width="small"><binding label=","/></key>
++        <key width="small"><binding label="."/></key>
++        <key style="special">
++          <binding action="switch" label="1/2"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="sym" label="ABC"/>
+         </key>
+-        
+-        <key><binding label=","/></key>
+-        <key><binding label="."/></key>
+-        
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key width="stretched">
+           <binding action="space"/>
+         </key>
+-        
+-        <key><binding label="_"/></key>
+-        
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="large">
++          <binding action="sym" label="ABC"/>
+         </key>
+-
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+ 
+@@ -158,94 +159,97 @@
+         <key>
+           <binding label="0"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="&#x20AC;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A3;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0024;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A5;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0025;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005B;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00AB;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00BB;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00BF;"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="switch" label="2/2"/>
+         </key>
+ 
+-        <spacer/>
+-
+-        <key>
++        <key width="small">
+           <binding label="&#x0060;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005E;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201E;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A1;"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="x-large">
+-          <binding action="backspace"/>
++        <key width="small"><binding label="&#x003C;"/></key>
++        <key width="small"><binding label="&#x003E;"/></key>
++        <key width="small"><binding label="&#x0026;"/></key>
++        <key style="special">
++          <binding action="switch" label="2/2"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="sym" label="ABC"/>
+         </key>
+-        
+-        <key><binding label="&#x003C;"/></key>
+-        <key><binding label="&#x003E;"/></key>
+-        
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key width="stretched">
+           <binding action="space"/>
+         </key>
+-        
+-        <key><binding label="&#x0026;"/></key>
+-        
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="large">
++          <binding action="sym" label="ABC"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/symbols-35.xml b/maliit-keyboard/data/languages/symbols-35.xml
+index 275c9ab..63aec53 100644
+--- a/maliit-keyboard/data/languages/symbols-35.xml
++++ b/maliit-keyboard/data/languages/symbols-35.xml
+@@ -34,48 +34,54 @@
+         <key>
+           <binding label="0"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="*"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="#"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="+"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="-"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="="/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="("/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=")"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=";"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=":"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="?"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="switch" label="1/2"/>
+         </key>
+ 
+-        <spacer/>
+-
+         <key>
+           <binding label="@" quickpick="true"/>
+         </key>
+@@ -97,32 +103,34 @@
+         <key>
+           <binding label="!"/>
+         </key>
+-
+-        <spacer/>
+- 
+-        <key style="special" width="x-large">
+-          <binding action="backspace"/>
++        <key><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="switch" label="1/2"/>
+         </key>
++
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="sym" label="ABC"/>
+         </key>
+-        
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++
+         <key><binding label="_"/></key>
+-        <key><binding label=","/></key>
+         
+         <key width="stretched">
+           <binding action="space"/>
+         </key>
+         
+-        <key><binding label="."/></key>
+-        
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="sym" label="ABC"/>
+         </key>
+ 
++        <key style="special"><binding action="close"/></key>
++
+       </row>
+     </section>
+ 
+@@ -158,48 +166,54 @@
+         <key>
+           <binding label="0"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="&#x20AC;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A3;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0024;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A5;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0025;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005B;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00AB;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00BB;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00BF;"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="switch" label="2/2"/>
+         </key>
+ 
+-        <spacer/>
+-
+         <key>
+           <binding label="&#x0060;"/>
+         </key>
+@@ -221,31 +235,28 @@
+         <key>
+           <binding label="&#x00A1;"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="x-large">
+-          <binding action="backspace"/>
++        <key><binding label="&#x003C;"/></key>
++        <key><binding label="&#x003E;"/></key>
++        <key style="special">
++          <binding action="switch" label="2/2"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="sym" label="ABC"/>
+         </key>
+-        
+-        <key><binding label="&#x003C;"/></key>
+-        <key><binding label="&#x003E;"/></key>
+-        
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++        <key><binding label="&#x0026;"/></key>
+         <key width="stretched">
+           <binding action="space"/>
+         </key>
+-        
+-        <key><binding label="&#x0026;"/></key>
+-        
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="sym" label="ABC"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/symbols-36-nordic.xml b/maliit-keyboard/data/languages/symbols-36-nordic.xml
+index 3e59c9a..b892c9a 100644
+--- a/maliit-keyboard/data/languages/symbols-36-nordic.xml
++++ b/maliit-keyboard/data/languages/symbols-36-nordic.xml
+@@ -34,92 +34,104 @@
+         <key>
+           <binding label="0"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="*"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="#"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="+"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="-"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="="/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0026;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="("/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=")"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=";"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=":"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+         <key style="special">
+           <binding action="switch" label="1/2"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="@" quickpick="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="~"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="/"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="\"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0027;" quickpick="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0022;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="!"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="?"/>
+         </key>
++        <key width="small"><binding label=","/></key>
++        <key width="small"><binding label="."/></key>
+         <key style="special">
+-          <binding action="backspace"/>
++          <binding action="switch" label="1/2"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="sym" label="ABC"/>
+         </key>
+-        
+-        <key><binding label=","/></key>
+-        <key><binding label="."/></key>
+-        
+-        <key width="xx-large">
++
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++
++        <key width="stretched">
+           <binding action="space"/>
+         </key>
+         
+         <key><binding label="_"/></key>
+-        
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
+-        </key>
+ 
++        <key style="special">
++          <binding action="sym" label="ABC"/>
++        </key>
++ 
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+ 
+@@ -155,91 +167,105 @@
+         <key>
+           <binding label="0"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="&#x20AC;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A3;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0024;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A5;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A7;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0025;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005B;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00AB;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00BB;"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+         <key style="special">
+           <binding action="switch" label="2/2"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0060;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005E;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201E;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A1;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00BF;"/>
+         </key>
++        <key width="small"><binding label="&#x003C;"/></key>
++        <key width="small"><binding label="&#x003E;"/></key>
+         <key style="special">
+-          <binding action="backspace"/>
++          <binding action="switch" label="2/2"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="sym" label="ABC"/>
+         </key>
++
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         
+-        <key><binding label="&#x003C;"/></key>
+-        <key><binding label="&#x003E;"/></key>
+-        
+-        <key width="xx-large">
++        <key width="stretched">
+           <binding action="space"/>
+         </key>
+         
+         <key><binding label="&#x00B0;"/></key>
+-        
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++
++        <key style="special">
++          <binding action="sym" label="ABC"/>
+         </key>
++
++        <key style="special"><binding action="close"/></key>
++        
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/symbols-36.xml b/maliit-keyboard/data/languages/symbols-36.xml
+index 4709472..6bfc475 100644
+--- a/maliit-keyboard/data/languages/symbols-36.xml
++++ b/maliit-keyboard/data/languages/symbols-36.xml
+@@ -34,92 +34,99 @@
+         <key>
+           <binding label="0"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="*"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="#"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="+"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="-"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="="/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0026;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="("/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=")"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=";"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=":"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+         <key style="special">
+           <binding action="switch" label="1/2"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="@" quickpick="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="~"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="/"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="\"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0027;" quickpick="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0022;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="!"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="?"/>
+         </key>
++        <key width="small"><binding label=","/></key>
++        <key width="small"><binding label="."/></key>
+         <key style="special">
+-          <binding action="backspace"/>
++          <binding action="switch" label="1/2"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="sym" label="ABC"/>
+         </key>
+-        
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key><binding label="_"/></key>
+-        <key><binding label=","/></key>
+-        
+-        <key width="xx-large">
++        <key width="stretched">
+           <binding action="space"/>
+         </key>
+-        
+-        <key><binding label="."/></key>
+-        
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="sym" label="ABC"/>
+         </key>
+-
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+ 
+@@ -155,91 +162,99 @@
+         <key>
+           <binding label="0"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="&#x20AC;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A3;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0024;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A5;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A7;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0025;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005B;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00AB;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00BB;"/>
+         </key>
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+         <key style="special">
+           <binding action="switch" label="2/2"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0060;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005E;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201E;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A1;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00BF;"/>
+         </key>
++        <key width="small"><binding label="&#x003C;"/></key>
++        <key width="small"><binding label="&#x003E;"/></key>
+         <key style="special">
+-          <binding action="backspace"/>
++          <binding action="switch" label="2/2"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="sym" label="ABC"/>
+         </key>
+-        
+-        <key><binding label="&#x003C;"/></key>
+-        <key><binding label="&#x003E;"/></key>
+-        
+-        <key width="xx-large">
+-          <binding action="space"/>
++        <key style="special">
++          <binding action="layout_menu"/>
+         </key>
+-        
+         <key><binding label="&#x00B0;"/></key>
+-        
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key width="stretched">
++          <binding action="space"/>
++        </key>
++        <key style="special">
++          <binding action="sym" label="ABC"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/symbols-38.xml b/maliit-keyboard/data/languages/symbols-38.xml
+index 86ebbf7..71160cf 100644
+--- a/maliit-keyboard/data/languages/symbols-38.xml
++++ b/maliit-keyboard/data/languages/symbols-38.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard version="1.0" catalog="symbols">
+   <layout type="general">
+-    <section id="symbols0" type="non-sloppy">
++    <section id="symbols0" type="non-sloppy" style="ar">
+       <row>
+         <key>
+           <binding label="1"/>
+@@ -34,45 +34,53 @@
+         <key>
+           <binding label="0"/>
+         </key>
+-        <key>
++        <key width="large">
+           <binding label="%"/>
+         </key>
++        <key style="special" width="large">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="*"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="#"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="+"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="-"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="="/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="("/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=")"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=";"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=":"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="!"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="?"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+@@ -103,8 +111,10 @@
+         <key>
+           <binding label="&#x0026;"/>
+         </key>
++        <key><binding label=","/></key>
++        <key><binding label="."/></key>
+         <key style="special" width="large">
+-          <binding action="backspace"/>
++          <binding action="switch" label="1/2"/>
+         </key>
+       </row>
+ 
+@@ -112,26 +122,23 @@
+         <key style="special" width="x-large">
+           <binding action="sym" label="ABC"/>
+         </key>
+-        
+-        <key>
++        <key style="special" width="small">
++          <binding action="layout_menu"/>
++        </key>
++        <key width="small">
+           <binding label="_"/>
+         </key>
+-        <key><binding label=","/></key>
+-        
+         <key width="stretched">
+           <binding action="space"/>
+         </key>
+-
+-        <key><binding label="."/></key>
+-        
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="x-large">
++          <binding action="sym" label="ABC"/>
+         </key>
+-
++        <key style="special" width="small"><binding action="close"/></key>
+       </row>
+     </section>
+ 
+-    <section id="symbols1" type="non-sloppy">
++    <section id="symbols1" type="non-sloppy" style="ar">
+       <row>
+         <key>
+           <binding label="1"/>
+@@ -163,45 +170,53 @@
+         <key>
+           <binding label="0"/>
+         </key>
+-        <key>
++        <key width="large">
+           <binding label="&#x2030;"/>
+         </key>
++        <key style="special" width="large">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="&#x20AC;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A3;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0024;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A5;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A7;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005B;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007B;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A1;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00BF;"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+@@ -232,8 +247,10 @@
+         <key>
+           <binding label="&#x00BB;"/>
+         </key>
++        <key><binding label="&#x003C;"/></key>
++        <key><binding label="&#x003E;"/></key>
+         <key style="special" width="large">
+-          <binding action="backspace"/>
++          <binding action="switch" label="2/2"/>
+         </key>
+       </row>
+ 
+@@ -241,19 +258,17 @@
+         <key style="special" width="x-large">
+           <binding action="sym" label="ABC"/>
+         </key>
+-        
+-        <key><binding label="&#x003C;"/></key>
+-        <key><binding label="&#x003E;"/></key>
+-        
++        <key style="special" width="small">
++          <binding action="layout_menu"/>
++        </key>
++        <key width="small"><binding label="&#x00A9;"/></key>
+         <key width="stretched">
+           <binding action="space"/>
+         </key>
+-
+-        <key><binding label="&#x00A9;"/></key>
+-        
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="x-large">
++          <binding action="sym" label="ABC"/>
+         </key>
++        <key style="special" width="small"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/symbols-39.xml b/maliit-keyboard/data/languages/symbols-39.xml
+index b269a42..902f626 100644
+--- a/maliit-keyboard/data/languages/symbols-39.xml
++++ b/maliit-keyboard/data/languages/symbols-39.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard version="1.0" catalog="symbols">
+   <layout type="general">
+-    <section id="symbols0" type="non-sloppy">
++    <section id="symbols0" type="non-sloppy" style="ar">
+       <row>
+         <key>
+           <binding label="1"/>
+@@ -76,7 +76,7 @@
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="switch" label="1/2"/>
+         </key>
+         <key>
+@@ -103,7 +103,7 @@
+         <key>
+           <binding label="&#x0026;"/>
+         </key>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="backspace"/>
+         </key>
+       </row>
+@@ -118,21 +118,23 @@
+         </key>
+         <key><binding label=","/></key>
+         
+-        <key width="stretched">
++        <key width="xx-large">
+           <binding action="space"/>
+         </key>
+ 
+         <key><binding label="."/></key>
+         <key><binding label="&#x2014;"/></key>
++
++        <key style="special"><binding action="close"/></key>
+         
+-        <key style="special" width="xx-large" id="actionKey">
++        <key style="special" width="x-large" id="actionKey">
+           <binding action="return"/>
+         </key>
+ 
+       </row>
+     </section>
+ 
+-    <section id="symbols1" type="non-sloppy">
++    <section id="symbols1" type="non-sloppy" style="ar">
+       <row>
+         <key>
+           <binding label="1"/>
+@@ -206,7 +208,7 @@
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="switch" label="2/2"/>
+         </key>
+         <key>
+@@ -233,7 +235,7 @@
+         <key>
+           <binding label="&#x00BB;"/>
+         </key>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="backspace"/>
+         </key>
+       </row>
+@@ -246,14 +248,16 @@
+         <key><binding label="&#x003C;"/></key>
+         <key><binding label="&#x003E;"/></key>
+         
+-        <key width="stretched">
++        <key width="xx-large">
+           <binding action="space"/>
+         </key>
+ 
+         <key><binding label="&#x00A9;"/></key>
+         <key><binding label="&#x00AE;"/></key>
++
++        <key style="special"><binding action="close"/></key>
+         
+-        <key style="special" width="xx-large" id="actionKey">
++        <key style="special" width="x-large" id="actionKey">
+           <binding action="return"/>
+         </key>
+       </row>
+diff --git a/maliit-keyboard/data/languages/symbols_ar.xml b/maliit-keyboard/data/languages/symbols_ar.xml
+index 4cb128b..3a25a43 100644
+--- a/maliit-keyboard/data/languages/symbols_ar.xml
++++ b/maliit-keyboard/data/languages/symbols_ar.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard version="1.0" catalog="symbols">
+   <layout type="general">
+-    <section id="symbols0" type="non-sloppy">
++    <section id="symbols0" type="non-sloppy" style="ar">
+       <row>
+         <key>
+           <binding label="&#x0661;"/>
+@@ -37,103 +37,114 @@
+         <key>
+           <binding label="&#x066A;"/>
+         </key>
++        <key style="special" rtl="true" width="large">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="*"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="#"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="+"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="-"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="_"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="="/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0026;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=")" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="(" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&gt;" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&lt;" rtl="true"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special">
++        <key style="special" width="large">
+           <binding action="switch" label="&#x0662;/&#x0661;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="@" quickpick="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="~"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="/"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="\"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0027;" quickpick="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x066B;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x066C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="!"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x061F;"/>
+         </key>
+-        <key style="special" rtl="true">
+-          <binding action="backspace"/>
++        <key width="small"><binding label="&#x060C;"/></key>
++        <key width="small"><binding label="."/></key>
++        <key style="special" width="large">
++          <binding action="switch" label="&#x0662;/&#x0661;"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="sym" label="&#x0627;&#x200C;&#x0628;&#x200C;&#x062A;"/>
+         </key>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         
+         <key><binding label="&#x061B;"/></key>
+-        <key><binding label="&#x060C;"/></key>
+         
+         <key width="stretched">
+           <binding action="space"/>
+         </key>
+         
+-        <key><binding label="."/></key>
+         <key><binding label=":"/></key>
+-        
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="sym" label="&#x0627;&#x200C;&#x0628;&#x200C;&#x062A;"/>
+         </key>
++        <key style="special"><binding action="close"/></key> 
+ 
+       </row>
+     </section>
+ 
+-    <section id="symbols1" type="non-sloppy">
++    <section id="symbols1" type="non-sloppy" style="ar">
+       <row>
+         <key>
+           <binding label="1"/>
+@@ -168,98 +179,110 @@
+         <key>
+           <binding label="%"/>
+         </key>
++        <key style="special" rtl="true" width="large">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="&#x20AC;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A3;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0024;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A5;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A7;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007D;" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007B;" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005D;" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005B;" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00BB;" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00AB;" rtl="true"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special">
++        <key style="special" width="large">
+           <binding action="switch" label="&#x0662;/&#x0662;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0060;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005E;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x2030;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0022;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201E;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="?"/>
+         </key>
+-        <key style="special" rtl="true">
+-          <binding action="backspace"/>
++        <key width="small"><binding label=","/></key>
++        <key width="small"><binding label="."/></key>
++        <key style="special" width="large">
++          <binding action="switch" label="&#x0662;/&#x0662;"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="sym" label="&#x0627;&#x200C;&#x0628;&#x200C;&#x062A;"/>
+         </key>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         
+         <key><binding label=";"/></key>
+-        <key><binding label=","/></key>
+         
+         <key width="stretched">
+           <binding action="space"/>
+         </key>
+ 		
+-        <key><binding label="."/></key>
+         <key><binding label=":"/></key>
+-        
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="sym" label="&#x0627;&#x200C;&#x0628;&#x200C;&#x062A;"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
++        
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/symbols_en.xml b/maliit-keyboard/data/languages/symbols_en.xml
+index e1fb1bc..1f9ab8c 100644
+--- a/maliit-keyboard/data/languages/symbols_en.xml
++++ b/maliit-keyboard/data/languages/symbols_en.xml
+@@ -34,11 +34,13 @@
+         <key>
+           <binding label="0"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+         <spacer/>
+-
+         <key>
+           <binding label="*"/>
+         </key>
+@@ -66,18 +68,17 @@
+         <key>
+           <binding label="?"/>
+         </key>
+-
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
+         <spacer/>
+-
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="switch" label="1/2"/>
+         </key>
+ 
+-        <spacer/>
+-
+         <key>
+           <binding label="@" quickpick="true"/>
+         </key>
+@@ -99,31 +100,30 @@
+         <key>
+           <binding label=":"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="large">
+-          <binding action="backspace"/>
++        <key><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="switch" label="1/2"/>
+         </key>
++
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="sym" label="ABC"/>
+         </key>
+ 
+-        <spacer/>
+-
+-        <key><binding label=","/></key>
+-        <key width="xx-large"><binding action="space"/></key>
+-        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+ 
+-        <spacer/>
++        <key width="stretched"><binding action="space"/></key>
+ 
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="large">
++          <binding action="sym" label="ABC"/>
+         </key>
+ 
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+ 
+@@ -159,11 +159,13 @@
+         <key>
+           <binding label="&#x005D;"/>
+         </key>
++        <key style="special" >
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+         <spacer/>
+-
+          <key>
+           <binding label="&#x0060;"/>
+         </key>
+@@ -191,17 +193,17 @@
+         <key>
+           <binding label="&#x00BF;"/>
+         </key>
+-
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
+         <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="switch" label="2/2"/>
+         </key>
+ 
+-        <spacer/>
+-
+         <key>
+           <binding label="&#x00AB;"/>
+         </key>
+@@ -223,30 +225,28 @@
+         <key>
+           <binding label="&#x0026;"/>
+         </key>
+-
+-        <spacer/>
+-
+-        <key style="special" width="large">
+-          <binding action="backspace"/>
++        <key><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="switch" label="2/2"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="sym" label="ABC"/>
+         </key>
+ 
+-        <spacer/>
+-
+-        <key><binding label=","/></key>
+-        <key width="xx-large"><binding action="space"/></key>
+-        <key><binding label="."/></key>
+-
+-        <spacer/>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+ 
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key width="stretched"><binding action="space"/></key>
++        <key style="special" width="large">
++          <binding action="sym" label="ABC"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
++
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/symbols_fa.xml b/maliit-keyboard/data/languages/symbols_fa.xml
+index a1d46c9..52d27ed 100644
+--- a/maliit-keyboard/data/languages/symbols_fa.xml
++++ b/maliit-keyboard/data/languages/symbols_fa.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard version="1.0" catalog="symbols">
+   <layout type="general">
+-    <section id="symbols0" type="non-sloppy">
++    <section id="symbols0" type="non-sloppy" style="ar">
+       <row>
+         <key>
+           <binding label="&#x06F1;"/>
+@@ -37,78 +37,87 @@
+         <key>
+           <binding label="٪"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="*"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="#"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="+"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="-"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="_"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="="/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0026;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=")" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="(" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&gt;" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&lt;" rtl="true"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special">
++        <key style="special" width="large">
+           <binding action="switch" label="&#x0662;/&#x0661;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="@" quickpick="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="~"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="/"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="\"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0027;" quickpick="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x066B;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x066C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="!"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x061F;"/>
+         </key>
+-        
++        <key width="small"><binding label="&#x060C;"/></key>
++        <key width="small"><binding label="&#x002E;"/></key>
+         <key style="special">
+-          <binding action="backspace"/>
++          <binding action="switch" label="&#x0662;/&#x0661;"/>
+         </key>
+       </row>
+ 
+@@ -116,24 +125,23 @@
+         <key style="special" width="x-large">
+           <binding action="sym" label="&#x0627;&#x200C;&#x0628;&#x200C;&#x067E;"/>
+         </key>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key><binding label="&#x061B;"/></key>
+-        <key><binding label="&#x060C;"/></key>
+-        
+-        <key width="stretched">
++        <key width="xx-large">
+           <binding action="space"/>
+         </key>
+-        
+-        <key><binding label="&#x002E;"/></key>
+         <key><binding label="&#x003A;"/></key>
+-        
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="x-large">
++          <binding action="sym" label="&#x0627;&#x200C;&#x0628;&#x200C;&#x067E;"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+ 
+       </row>
+     </section>
+ 
+-    <section id="symbols1" type="non-sloppy">
++    <section id="symbols1" type="non-sloppy" style="ar">
+       <row>
+         <key>
+           <binding label="1"/>
+@@ -168,78 +176,87 @@
+         <key>
+           <binding label="%"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="€"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="£"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="$"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="¥"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#1585;&#1740;&#1575;&#1604;" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007D;" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007B;" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005D;" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005B;" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00BB;" rtl="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00AB;" rtl="true"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special">
++        <key style="special" width="large">
+           <binding action="switch" label="&#x0662;/&#x0662;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0060;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005E;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="‰"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0022;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201E;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="?"/>
+         </key>
+-
++        <key width="small"><binding label="&#x002C;"/></key>
++	<key width="small"><binding label="."/></key>
+         <key style="special">
+-          <binding action="backspace"/>
++          <binding action="switch" label="&#x0662;/&#x0662;"/>
+         </key>
+       </row>
+ 
+@@ -247,19 +264,18 @@
+         <key style="special" width="x-large">
+           <binding action="sym" label="&#x0627;&#x200C;&#x0628;&#x200C;&#x067E;"/>
+         </key>
+-        
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key><binding label=";"/></key>
+-        <key><binding label="&#x002C;"/></key>
+-        
+-        <key width="stretched">
++        <key width="xx-large">
+           <binding action="space"/>
+         </key>
+-	<key><binding label="."/></key>
+         <key><binding label=":"/></key>
+-        
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="x-large">
++          <binding action="sym" label="&#x0627;&#x200C;&#x0628;&#x200C;&#x067E;"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/symbols_he.xml b/maliit-keyboard/data/languages/symbols_he.xml
+index 542f3d5..73192f3 100644
+--- a/maliit-keyboard/data/languages/symbols_he.xml
++++ b/maliit-keyboard/data/languages/symbols_he.xml
+@@ -34,11 +34,13 @@
+         <key>
+           <binding label="0"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+         <spacer/>
+-        
+         <key>
+           <binding label="*"/>
+         </key>
+@@ -66,7 +68,9 @@
+         <key>
+           <binding label="?"/>
+         </key>
+-        
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
+         <spacer/>
+       </row>
+ 
+@@ -74,9 +78,6 @@
+         <key style="special">
+           <binding action="switch" label="1/2"/>
+         </key>
+-        
+-        <spacer/>
+-
+         <key>
+           <binding label="@" quickpick="true"/>
+         </key>
+@@ -98,11 +99,10 @@
+         <key>
+           <binding label=":"/>
+         </key>
+-        
+-        <spacer/>
+-
++        <key><binding label=","/></key>
++        <key><binding label="."/></key>
+         <key style="special">
+-          <binding action="backspace"/>
++          <binding action="switch" label="1/2"/>
+         </key>
+       </row>
+ 
+@@ -110,17 +110,16 @@
+         <key style="special" width="large">
+           <binding action="sym" label="&#x05D0;&#x05D1;&#x05D2;"/>
+         </key>
+-        
+-        <key><binding label=","/></key>
+-        <key width="xx-large">
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++        <key width="stretched">
+             <binding action="space"/>
+         </key>
+-        <key><binding label="."/></key>
+-        
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="large">
++          <binding action="sym" label="&#x05D0;&#x05D1;&#x05D2;"/>
+         </key>
+-
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+ 
+@@ -156,11 +155,13 @@
+         <key>
+           <binding label="[" rtl="true"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+         <spacer/>
+-
+         <key>
+           <binding label="`"/>
+         </key>
+@@ -188,7 +189,9 @@
+         <key>
+           <binding label="¿"/>
+         </key>
+-        
++        <key style="special" width="large" id="actionKey">
++          <binding action="return"/>
++        </key>
+         <spacer/>
+       </row>
+ 
+@@ -196,9 +199,6 @@
+         <key style="special">
+           <binding action="switch" label="2/2"/>
+         </key>
+-        
+-        <spacer/>
+-
+         <key>
+           <binding label="»" rtl="true"/>
+         </key>
+@@ -220,11 +220,10 @@
+         <key>
+           <binding label="&amp;"/>
+         </key>
+-
+-        <spacer/>
+-
++        <key><binding label=","/></key>
++        <key><binding label="."/></key>
+         <key style="special">
+-          <binding action="backspace"/>
++          <binding action="switch" label="2/2"/>
+         </key>
+       </row>
+ 
+@@ -232,16 +231,16 @@
+         <key style="special" width="large">
+           <binding action="sym" label="&#x05D0;&#x05D1;&#x05D2;"/>
+         </key>
+-        
+-        <key><binding label=","/></key>
+-        <key width="xx-large">
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++        <key width="stretched">
+             <binding action="space"/>
+         </key>
+-        <key><binding label="."/></key>
+-        
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="large">
++          <binding action="sym" label="&#x05D0;&#x05D1;&#x05D2;"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/symbols_kk.xml b/maliit-keyboard/data/languages/symbols_kk.xml
+index 8b2e7e1..7a69f88 100644
+--- a/maliit-keyboard/data/languages/symbols_kk.xml
++++ b/maliit-keyboard/data/languages/symbols_kk.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard version="1.0" catalog="symbols">
+   <layout type="general">
+-    <section id="symbols0" type="non-sloppy">
++    <section id="symbols0" type="non-sloppy" style="ar">
+       <row>
+         <key>
+           <binding label="1"/>
+@@ -37,103 +37,110 @@
+         <key>
+           <binding label="%"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="*"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="#"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="+"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="-"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="_"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="="/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0026;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="("/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=")"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&lt;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&gt;"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+         <key style="special">
+           <binding action="switch" label="1/2"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="@" quickpick="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="~"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="/"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="\"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0027;" quickpick="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0022;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x2116;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="!"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="?"/>
+         </key>
++        <key width="small"><binding label=","/></key>
++        <key width="small"><binding label="."/></key>
+         <key style="special">
+-          <binding action="backspace"/>
++          <binding action="switch" label="1/2"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special" width="x-large">
+           <binding action="sym" label="АБВ"/>
+         </key>
+-        
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key><binding label=";"/></key>
+-        <key><binding label=","/></key>
+-        
+-        <key width="stretched">
++        <key width="xx-large">
+           <binding action="space"/>
+         </key>
+-        
+-        <key><binding label="."/></key>
+         <key><binding label=":"/></key>
+-        
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="x-large">
++          <binding action="sym" label="АБВ"/>
+         </key>
+-
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+ 
+-    <section id="symbols1" type="non-sloppy">
++    <section id="symbols1" type="non-sloppy" style="ar">
+       <row>
+         <key>
+           <binding label="1"/>
+@@ -168,98 +175,106 @@
+         <key>
+           <binding label="§"/>
+         </key>
++        <key style="special">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="&#x20AC;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A3;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0024;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A5;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x20B8;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007B;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005B;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00AB;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00BB;"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+         <key style="special">
+           <binding action="switch" label="2/2"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0060;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005E;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201E;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00B0;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A9;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00AE;"/>
+         </key>
++        <key width="small"><binding label=","/></key>
++        <key width="small"><binding label="."/></key>
+         <key style="special">
+-          <binding action="backspace"/>
++          <binding action="switch" label="2/2"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special" width="x-large">
+           <binding action="sym" label="АБВ"/>
+         </key>
+-        
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         <key><binding label=";"/></key>
+-        <key><binding label=","/></key>
+-        
+-        <key width="stretched">
++        <key width="xx-large">
+           <binding action="space"/>
+         </key>
+-        
+-        <key><binding label="."/></key>
+         <key><binding label=":"/></key>
+-        
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="x-large">
++          <binding action="sym" label="АБВ"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/symbols_ru_uk.xml b/maliit-keyboard/data/languages/symbols_ru_uk.xml
+index 88ff169..6a267c5 100644
+--- a/maliit-keyboard/data/languages/symbols_ru_uk.xml
++++ b/maliit-keyboard/data/languages/symbols_ru_uk.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard version="1.0" catalog="symbols">
+   <layout type="general">
+-    <section id="symbols0" type="non-sloppy">
++    <section id="symbols0" type="non-sloppy" style="ar">
+       <row>
+         <key>
+           <binding label="1"/>
+@@ -37,103 +37,115 @@
+         <key>
+           <binding label="%"/>
+         </key>
++        <key style="special" width="large">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="*"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="#"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="+"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="-"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="_"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="="/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0026;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="("/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=")"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&lt;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&gt;"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special">
++        <key style="special" width="large">
+           <binding action="switch" label="1/2"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="@" quickpick="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="~"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="/"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="\"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0027;" quickpick="true"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0022;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x2116;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="!"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="?"/>
+         </key>
+-        <key style="special">
+-          <binding action="backspace"/>
++        <key width="small"><binding label=","/></key>
++        <key width="small"><binding label="."/></key>
++        <key style="special" width="large">
++          <binding action="switch" label="1/2"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="sym" label="АБВ"/>
+         </key>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         
+         <key><binding label=";"/></key>
+-        <key><binding label=","/></key>
+         
+-        <key width="xx-large">
++        <key width="stretched">
+           <binding action="space"/>
+         </key>
+         
+-        <key><binding label="."/></key>
+         <key><binding label=":"/></key>
+         
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special">
++          <binding action="sym" label="АБВ"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+ 
+       </row>
+     </section>
+ 
+-    <section id="symbols1" type="non-sloppy">
++    <section id="symbols1" type="non-sloppy" style="ar">
+       <row>
+         <key>
+           <binding label="1"/>
+@@ -168,98 +180,110 @@
+         <key>
+           <binding label="&#x2030;"/>
+         </key>
++        <key style="special" width="large">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="&#x20AC;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A3;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0024;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A5;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A7;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007B;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005B;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00AB;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00BB;"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special">
++        <key style="special" width="large">
+           <binding action="switch" label="2/2"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x0060;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x005E;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x007C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201C;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201D;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x201E;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00B0;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00A9;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&#x00AE;"/>
+         </key>
+-        <key style="special">
+-          <binding action="backspace"/>
++        <key width="small"><binding label=","/></key>
++        <key width="small"><binding label="."/></key>
++        <key style="special" width="large">
++          <binding action="switch" label="2/2"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special">
+           <binding action="sym" label="АБВ"/>
+         </key>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
+         
+         <key><binding label=";"/></key>
+-        <key><binding label=","/></key>
+         
+-        <key width="xx-large">
++        <key width="stretched">
+           <binding action="space"/>
+         </key>
+         
+-        <key><binding label="."/></key>
+         <key><binding label=":"/></key>
+-        
+-        <key style="special" width="x-large" id="actionKey">
+-          <binding action="return"/>
++
++        <key style="special">
++          <binding action="sym" label="АБВ"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/symbols_th.xml b/maliit-keyboard/data/languages/symbols_th.xml
+index bddefab..a841f11 100644
+--- a/maliit-keyboard/data/languages/symbols_th.xml
++++ b/maliit-keyboard/data/languages/symbols_th.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard version="1.0" catalog="symbols">
+   <layout type="general">
+-    <section id="symbols0" type="non-sloppy">
++    <section id="symbols0" type="non-sloppy" style="ar">
+       <row>
+         <key>
+           <binding label="1"/>
+@@ -37,46 +37,54 @@
+         <key>
+           <binding label="%"/>
+         </key>
++        <key style="special" width="large">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="*"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="#"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="+"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="-"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="_"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="="/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&amp;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="("/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label=")"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&lt;"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="&gt;"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="switch" label="1/2"/>
+         </key>
+         <key>
+@@ -103,35 +111,34 @@
+         <key>
+           <binding label="?"/>
+         </key>
+-        
+-        <key style="special" width="x-large">
+-          <binding action="backspace"/>
++        <key><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="switch" label="1/2"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="sym" label="&#x0E01;&#x0E02;&#x0E03;"/>
+         </key>
+-        
+-        <key><binding label=";"/></key>
+-        <key><binding label=","/></key>
+-        
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++        <key width="small"><binding label=";"/></key>
+         <key width="stretched">
+           <binding action="space"/>
+         </key>
+-        
+-        <key><binding label="."/></key>
+-        <key><binding label=":"/></key>
+-        
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key width="small"><binding label=":"/></key>
++        <key style="special" width="large">
++          <binding action="sym" label="&#x0E01;&#x0E02;&#x0E03;"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+ 
+       </row>
+     </section>
+ 
+-    <section id="symbols1" type="non-sloppy">
++    <section id="symbols1" type="non-sloppy" style="ar">
+       <row>
+         <key>
+           <binding label="๑"/>
+@@ -166,46 +173,54 @@
+         <key>
+           <binding label="‰"/>
+         </key>
++        <key style="special" width="large">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="€"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="£"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="$"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="¥"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="฿"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="{"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="}"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="["/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="]"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="«"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="»"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="switch" label="2/2"/>
+         </key>
+         <key>
+@@ -232,30 +247,29 @@
+         <key>
+           <binding label="®"/>
+         </key>
+-        
+-        <key style="special" width="x-large">
+-          <binding action="backspace"/>
++        <key><binding label=","/></key>
++        <key><binding label="."/></key>
++        <key style="special">
++          <binding action="switch" label="2/2"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="sym" label="&#x0E01;&#x0E02;&#x0E03;"/>
+         </key>
+-        
+-        <key><binding label=";"/></key>
+-        <key><binding label=","/></key>
+-        
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++        <key width="small"><binding label=";"/></key>
+         <key width="stretched">
+           <binding action="space"/>
+         </key>
+-        
+-        <key><binding label="."/></key>
+-        <key><binding label=":"/></key>
+-        
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key width="small"><binding label=":"/></key>
++        <key style="special" width="large">
++          <binding action="sym" label="&#x0E01;&#x0E02;&#x0E03;"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/symbols_vi.xml b/maliit-keyboard/data/languages/symbols_vi.xml
+index 14707ef..ef87b18 100644
+--- a/maliit-keyboard/data/languages/symbols_vi.xml
++++ b/maliit-keyboard/data/languages/symbols_vi.xml
+@@ -153,15 +153,13 @@
+           <binding action="sym" label="ABC"/>
+         </key>
+ 
+-        <spacer/>
+-
+         <key><binding label=","/></key>
+-        <key width="stretched"><binding action="space"/></key>
++        <key width="xx-large"><binding action="space"/></key>
+         <key><binding label="."/></key>
+ 
+-        <spacer/>
++	<key style="special"><binding action="close"/></key>
+ 
+-        <key style="special" width="xx-large" id="actionKey">
++        <key style="special" width="x-large" id="actionKey">
+           <binding action="return"/>
+         </key>
+       </row>
+diff --git a/maliit-keyboard/data/languages/symbols_zh_cangjie.xml b/maliit-keyboard/data/languages/symbols_zh_cangjie.xml
+index f1f0884..233f252 100644
+--- a/maliit-keyboard/data/languages/symbols_zh_cangjie.xml
++++ b/maliit-keyboard/data/languages/symbols_zh_cangjie.xml
+@@ -33,7 +33,6 @@
+        <row>
+          <key style="special" width="large"><binding action="switch" label="1/2"/></key>
+ 
+-        <spacer/>
+          <key><binding label="&#x201C;"/></key>
+          <key><binding label="&#x201D;"/></key>
+          <key><binding label="&#xFF1B;"/></key>
+@@ -41,7 +40,6 @@
+          <key><binding label="&#x3001;"/></key>
+          <key><binding label="&#xFF01;"/></key>
+          <key><binding label="&#xFF1F;"/></key>
+-        <spacer/>
+ 
+   	 <key style="special" width="large"><binding action="backspace"/></key>
+        </row>
+@@ -52,9 +50,11 @@
+          </key>
+ 
+          <key><binding label="&#xFF0C;"/></key>
+-         <key width="stretched"><binding action="space"/></key>
++         <key width="xx-large"><binding action="space"/></key>
+          <key><binding label="&#x3002;"/></key>
+ 
++         <key style="special"><binding action="close"/></key>
++
+          <key style="special" width="x-large" id="actionKey">
+            <binding action="return"/>
+          </key>
+@@ -92,7 +92,6 @@
+        <row>
+          <key style="special" width="large"><binding action="switch" label="2/2"/></key>
+ 
+-         <spacer/>
+          <key><binding label="&#x0027;"/></key>
+          <key><binding label="&#x0022;"/></key>
+          <key><binding label="&#x003B;"/></key>
+@@ -100,7 +99,6 @@
+          <key><binding label="&#x00B7;"/></key>
+          <key><binding label="&#x0021;"/></key>
+          <key><binding label="&#x003F;"/></key>
+-         <spacer/>
+ 
+   	 <key style="special" width="large"><binding action="backspace"/></key>
+        </row>
+@@ -111,9 +109,11 @@
+          </key>
+ 
+          <key><binding label="&#x002C;"/></key>
+-         <key width="stretched"><binding action="space"/></key>
++         <key width="xx-large"><binding action="space"/></key>
+          <key><binding label="&#x002E;"/></key>
+ 
++         <key style="special"><binding action="close"/></key>
++
+          <key style="special" width="x-large" id="actionKey">
+            <binding action="return"/>
+          </key>
+@@ -153,7 +153,6 @@
+        <row>
+          <key style="special" width="large"><binding action="switch" label="1/2"/></key>
+ 
+-         <spacer/>
+          <key><binding label="&#x201C;"/></key>
+          <key><binding label="&#x201D;"/></key>
+          <key><binding label="&#xFF1B;"/></key>
+@@ -161,7 +160,6 @@
+          <key><binding label="&#x3001;"/></key>
+          <key><binding label="&#xFF01;"/></key>
+          <key><binding label="&#xFF1F;"/></key>
+-         <spacer/>
+ 
+   	 <key style="special" width="large"><binding action="backspace"/></key>
+        </row>
+@@ -172,9 +170,11 @@
+          </key>
+ 
+          <key><binding label="&#xFF0C;"/></key>
+-         <key width="stretched"><binding action="space"/></key>
++         <key width="xx-large"><binding action="space"/></key>
+          <key><binding label="&#x3002;"/></key>
+ 
++         <key style="special"><binding action="close"/></key>
++
+          <key style="special" width="x-large" id="actionKey">
+            <binding action="return"/>
+          </key>
+@@ -212,7 +212,6 @@
+        <row>
+          <key style="special" width="large"><binding action="switch" label="2/2"/></key>
+ 
+-         <spacer/>
+          <key><binding label="&#x0027;"/></key>
+          <key><binding label="&#x0022;"/></key>
+          <key><binding label="&#x003B;"/></key>
+@@ -220,7 +219,6 @@
+          <key><binding label="&#x00B7;"/></key>
+          <key><binding label="&#x0021;"/></key>
+          <key><binding label="&#x003F;"/></key>
+-         <spacer/>
+ 
+   	 <key style="special" width="large"><binding action="backspace"/></key>
+        </row>
+@@ -231,9 +229,11 @@
+          </key>
+ 
+          <key><binding label="&#x002C;"/></key>
+-         <key width="stretched"><binding action="space"/></key>
++         <key width="xx-large"><binding action="space"/></key>
+          <key><binding label="&#x002E;"/></key>
+ 
++         <key style="special"><binding action="close"/></key>
++
+          <key style="special" width="x-large" id="actionKey">
+            <binding action="return"/>
+          </key>
+diff --git a/maliit-keyboard/data/languages/symbols_zh_pinyin.xml b/maliit-keyboard/data/languages/symbols_zh_pinyin.xml
+index 2ccc662..1ada89b 100644
+--- a/maliit-keyboard/data/languages/symbols_zh_pinyin.xml
++++ b/maliit-keyboard/data/languages/symbols_zh_pinyin.xml
+@@ -33,7 +33,6 @@
+        <row>
+          <key style="special" width="large"><binding action="switch" label="1/2"/></key>
+ 
+-         <spacer/>
+          <key><binding label="&#x201C;"/></key>
+          <key><binding label="&#x201D;"/></key>
+          <key><binding label="&#xFF1B;"/></key>
+@@ -41,7 +40,6 @@
+          <key><binding label="&#x3001;"/></key>
+          <key><binding label="&#xFF01;"/></key>
+          <key><binding label="&#xFF1F;"/></key>
+-         <spacer/>
+ 
+   	 <key style="special" width="large"><binding action="backspace"/></key>
+        </row>
+@@ -52,9 +50,11 @@
+          </key>
+ 
+          <key><binding label="&#xFF0C;"/></key>
+-         <key width="stretched"><binding action="space"/></key>
++         <key width="xx-large"><binding action="space"/></key>
+          <key><binding label="&#x3002;"/></key>
+ 
++         <key style="special"><binding action="close"/></key>
++
+          <key style="special" width="x-large" id="actionKey">
+            <binding action="return"/>
+          </key>
+@@ -92,7 +92,6 @@
+        <row>
+          <key style="special" width="large"><binding action="switch" label="2/2"/></key>
+ 
+-         <spacer/>
+          <key><binding label="&#x0027;"/></key>
+          <key><binding label="&#x0022;"/></key>
+          <key><binding label="&#x003B;"/></key>
+@@ -100,7 +99,6 @@
+          <key><binding label="&#x00B7;"/></key>
+          <key><binding label="&#x0021;"/></key>
+          <key><binding label="&#x003F;"/></key>
+-         <spacer/>
+ 
+   	 <key style="special" width="large"><binding action="backspace"/></key>
+        </row>
+@@ -111,9 +109,11 @@
+          </key>
+ 
+          <key><binding label="&#x002C;"/></key>
+-         <key width="stretched"><binding action="space"/></key>
++         <key width="xx-large"><binding action="space"/></key>
+          <key><binding label="&#x002E;"/></key>
+ 
++         <key style="special"><binding action="close"/></key>
++
+          <key style="special" width="x-large" id="actionKey">
+            <binding action="return"/>
+          </key>
+@@ -153,7 +153,6 @@
+        <row>
+          <key style="special" width="large"><binding action="switch" label="1/2"/></key>
+ 
+-         <spacer/>
+          <key><binding label="&#x201C;"/></key>
+          <key><binding label="&#x201D;"/></key>
+          <key><binding label="&#xFF1B;"/></key>
+@@ -161,7 +160,6 @@
+          <key><binding label="&#x3001;"/></key>
+          <key><binding label="&#xFF01;"/></key>
+          <key><binding label="&#xFF1F;"/></key>
+-         <spacer/>
+ 
+   	 <key style="special" width="large"><binding action="backspace"/></key>
+        </row>
+@@ -172,9 +170,11 @@
+          </key>
+ 
+          <key><binding label="&#xFF0C;"/></key>
+-         <key width="stretched"><binding action="space"/></key>
++         <key width="xx-large"><binding action="space"/></key>
+          <key><binding label="&#x3002;"/></key>
+ 
++         <key style="special"><binding action="close"/></key>
++
+          <key style="special" width="x-large" id="actionKey">
+            <binding action="return"/>
+          </key>
+@@ -212,7 +212,6 @@
+        <row>
+          <key style="special" width="large"><binding action="switch" label="2/2"/></key>
+ 
+-         <spacer/>
+          <key><binding label="&#x0027;"/></key>
+          <key><binding label="&#x0022;"/></key>
+          <key><binding label="&#x003B;"/></key>
+@@ -220,7 +219,6 @@
+          <key><binding label="&#x00B7;"/></key>
+          <key><binding label="&#x0021;"/></key>
+          <key><binding label="&#x003F;"/></key>
+-         <spacer/>
+ 
+   	 <key style="special" width="large"><binding action="backspace"/></key>
+        </row>
+@@ -231,9 +229,11 @@
+          </key>
+ 
+          <key><binding label="&#x002C;"/></key>
+-         <key width="stretched"><binding action="space"/></key>
++         <key width="xx-large"><binding action="space"/></key>
+          <key><binding label="&#x002E;"/></key>
+ 
++         <key style="special"><binding action="close"/></key>
++
+          <key style="special" width="x-large" id="actionKey">
+            <binding action="return"/>
+          </key>
+diff --git a/maliit-keyboard/data/languages/symbols_zh_zhuyin.xml b/maliit-keyboard/data/languages/symbols_zh_zhuyin.xml
+index c845573..178bda1 100644
+--- a/maliit-keyboard/data/languages/symbols_zh_zhuyin.xml
++++ b/maliit-keyboard/data/languages/symbols_zh_zhuyin.xml
+@@ -63,9 +63,11 @@
+          </key>
+ 
+          <key><binding label="&#xFF0C;"/></key>
+-         <key width="stretched"><binding action="space"/></key>
++         <key width="xx-large"><binding action="space"/></key>
+          <key><binding label="&#x3002;"/></key>
+ 
++         <key style="special"><binding action="close"/></key>
++
+          <key style="special" width="x-large" id="actionKey">
+            <binding action="return"/>
+          </key>
+@@ -133,9 +135,11 @@
+          </key>
+ 
+          <key><binding label="&#x002C;"/></key>
+-         <key width="stretched"><binding action="space"/></key>
++         <key width="xx-large"><binding action="space"/></key>
+          <key><binding label="&#x002E;"/></key>
+ 
++         <key style="special"><binding action="close"/></key>
++
+          <key style="special" width="x-large" id="actionKey">
+            <binding action="return"/>
+          </key>
+@@ -205,9 +209,11 @@
+          </key>
+ 
+          <key><binding label="&#xFF0C;"/></key>
+-         <key width="stretched"><binding action="space"/></key>
++         <key width="xx-large"><binding action="space"/></key>
+          <key><binding label="&#x3002;"/></key>
+ 
++         <key style="special"><binding action="close"/></key>
++
+          <key style="special" width="x-large" id="actionKey">
+            <binding action="return"/>
+          </key>
+@@ -275,9 +281,11 @@
+          </key>
+ 
+          <key><binding label="&#x002C;"/></key>
+-         <key width="stretched"><binding action="space"/></key>
++         <key width="xx-large"><binding action="space"/></key>
+          <key><binding label="&#x002E;"/></key>
+ 
++         <key style="special"><binding action="close"/></key>
++
+          <key style="special" width="x-large" id="actionKey">
+            <binding action="return"/>
+          </key>
+diff --git a/maliit-keyboard/data/languages/th.xml b/maliit-keyboard/data/languages/th.xml
+index 3fbe558..3a6816e 100644
+--- a/maliit-keyboard/data/languages/th.xml
++++ b/maliit-keyboard/data/languages/th.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard title="ภาษาไทย" version="1.0" catalog="virtual-keyboard" language="th" autocapitalization="false">
+   <layout type="general">
+-    <section id="main">
++    <section id="main" style="ar">
+       <row>
+         <key>
+           <binding label="ไ"/>
+@@ -48,60 +48,67 @@
+           <binding label="ล"/>
+           <binding shift="true" label="ฐ"/>
+         </key>
++        <key style="special" width="large">
++          <binding action="backspace"/>
++        </key>
+       </row>
+ 
+       <row>
+-        <key>
++        <spacer/>
++        <key width="small">
+           <binding label="ฟ"/>
+           <binding shift="true" label="ฤ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ห"/>
+           <binding shift="true" label="ฆ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ก"/>
+           <binding shift="true" label="ฏ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ด"/>
+           <binding shift="true" label="โ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="เ"/>
+           <binding shift="true" label="ฌ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="้"/>
+           <binding shift="true" label="็"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="่"/>
+           <binding shift="true" label="๋"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="า"/>
+           <binding shift="true" label="ษ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ส"/>
+           <binding shift="true" label="ศ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ว"/>
+           <binding shift="true" label="ณ"/>
+         </key>
+-        <key>
++        <key width="small">
+           <binding label="ง"/>
+           <binding shift="true" label="ญ"/>
+         </key>
++        <key style="special" width="x-large" id="actionKey">
++          <binding action="return"/>
++        </key>
++        <spacer/>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special">
+           <binding action="shift"/>
+         </key>
+-
+         <key>
+           <binding label="ผ"/>
+           <binding shift="true" label="ฉ"/>
+@@ -134,42 +141,41 @@
+           <binding label="ม"/>
+           <binding shift="true" label="ซ"/>
+         </key>
+-
+-        <key style="special" width="x-large">
+-          <binding action="backspace"/>
++        <key>
++          <binding label="ใ"/>
++          <binding shift="true" label="ฒ"/>
++        </key>
++        <key>
++          <binding label="ฝ"/>
++          <binding shift="true" label="ฬ"/>
++        </key>
++        <key style="special">
++          <binding action="shift"/>
+         </key>
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="sym" label="?123"/>
+         </key>
+-
+-        <key>
++        <key style="special">
++          <binding action="layout_menu"/>
++        </key>
++        <key width="small">
+           <binding label="ึ"/>
+           <binding shift="true" label="."/>
+         </key>
+-        <key id="emailUrlKey">
+-          <binding label="ุ"/>
+-          <binding shift="true" label="ู"/>          
+-        </key>
+-
+         <key width="stretched">
+           <binding action="space" label=""/>
+         </key>
+-
+-        <key>
+-          <binding label="ใ"/>
+-          <binding shift="true" label="ฒ"/>
+-        </key>
+-        <key>
+-          <binding label="ฝ"/>
+-          <binding shift="true" label="ฬ"/>
++        <key width="small" id="emailUrlKey">
++          <binding label="ุ"/>
++          <binding shift="true" label="ู"/>          
+         </key>
+-
+-        <key style="special" width="xx-large" id="actionKey">
+-          <binding action="return"/>
++        <key style="special" width="large">
++          <binding action="sym" label="?123"/>
+         </key>
++        <key style="special"><binding action="close"/></key>
+       </row>
+     </section>
+   </layout>
+diff --git a/maliit-keyboard/data/languages/tr.xml b/maliit-keyboard/data/languages/tr.xml
+index 40f4676..9220eb4 100644
+--- a/maliit-keyboard/data/languages/tr.xml
++++ b/maliit-keyboard/data/languages/tr.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard title="Türkçe" version="1.0" catalog="" language="tr">
+   <layout type="general">
+-    <section id="main">
++    <section id="main" style="ar">
+       <row>
+         <key>
+           <binding label="q"/>
+@@ -98,7 +98,7 @@
+       </row>
+ 
+       <row>
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="shift"/>
+         </key>
+ 
+@@ -135,7 +135,7 @@
+           <binding shift="true" label="Ö"/>
+         </key>
+ 
+-        <key style="special" width="x-large">
++        <key style="special" width="large">
+           <binding action="backspace"/>
+         </key>
+       </row>
+@@ -151,7 +151,7 @@
+         </key>
+         <key id="emailUrlKey"><binding label=","/></key>
+ 
+-        <key width="stretched">
++        <key width="xx-large">
+           <binding action="space" label=""/>
+         </key>
+ 
+@@ -161,7 +161,9 @@
+           <binding shift="true" label="Ç"/>
+         </key>
+ 
+-        <key style="special" width="xx-large" id="actionKey">
++        <key style="special"><binding action="close"/></key>
++
++        <key style="special" width="x-large" id="actionKey">
+           <binding action="return"/>
+         </key>
+       </row>
+diff --git a/maliit-keyboard/data/languages/uk.xml b/maliit-keyboard/data/languages/uk.xml
+index 690a301..8cf2750 100644
+--- a/maliit-keyboard/data/languages/uk.xml
++++ b/maliit-keyboard/data/languages/uk.xml
+@@ -2,7 +2,7 @@
+ <!DOCTYPE keyboard SYSTEM 'VirtualKeyboardLayout.dtd'>
+ <keyboard title="Українська" version="1.0" catalog="" language="uk">
+   <layout type="general">
+-    <section id="main">
++    <section id="main" style="ar">
+       <row>
+         <key>
+           <binding label="й"/>
+@@ -145,7 +145,7 @@
+       </row>
+ 
+       <row>
+-        <key style="special" width="large">
++        <key style="special" width="x-large">
+           <binding action="sym" label="?123"/>
+         </key>
+ 
+@@ -165,6 +165,8 @@
+           <binding shift="true" label="Ю"/>
+         </key>
+ 
++        <key style="special"><binding action="close"/></key>
++
+         <key style="special" width="x-large" id="actionKey">
+           <binding action="return"/>
+         </key>
+diff --git a/maliit-keyboard/data/languages/vi.xml b/maliit-keyboard/data/languages/vi.xml
+index e979839..089de9a 100644
+--- a/maliit-keyboard/data/languages/vi.xml
++++ b/maliit-keyboard/data/languages/vi.xml
+@@ -140,8 +140,6 @@
+           <binding action="shift"/>
+         </key>
+ 
+-        <spacer/>
+-
+         <key>
+           <binding label="z"/>
+           <binding shift="true" label="Z"/>
+@@ -171,8 +169,6 @@
+           <binding shift="true" label="M"/>
+         </key>
+ 
+-        <spacer/>
+-
+         <key style="special" width="x-large">
+           <binding action="backspace"/>
+         </key>
+@@ -183,15 +179,13 @@
+           <binding action="sym" label="?123"/>
+         </key>
+ 
+-        <spacer/>
+-
+         <key id="emailUrlKey"><binding label=","/></key>
+-        <key width="stretched"><binding action="space"/></key>
++        <key width="xx-large"><binding action="space"/></key>
+         <key><binding label="."/></key>
+ 
+-        <spacer/>
++        <key style="special"><binding action="close"/></key>
+ 
+-        <key style="special" width="xx-large" id="actionKey">
++        <key style="special" width="x-large" id="actionKey">
+           <binding action="return"/>
+         </key>
+       </row>
+diff --git a/maliit-keyboard/data/languages/zh_cn_cangjie.xml b/maliit-keyboard/data/languages/zh_cn_cangjie.xml
+index 0428e6f..b1a96a8 100644
+--- a/maliit-keyboard/data/languages/zh_cn_cangjie.xml
++++ b/maliit-keyboard/data/languages/zh_cn_cangjie.xml
+@@ -35,7 +35,6 @@
+             <binding action="on_off_toggle" label="&#x901F;&#x6210;"/>
+           </key>
+ 
+-          <spacer/>
+           <key><binding label="&#x91CD;"/></key>
+           <key><binding label="&#x96E3;"/></key>
+           <key><binding label="&#x91D1;"/></key>
+@@ -43,7 +42,6 @@
+           <key><binding label="&#x6708;"/></key>
+           <key><binding label="&#x5F13;"/></key>
+           <key><binding label="&#x4E00;"/></key>
+-          <spacer/>
+ 
+           <key style="special" width="large">
+             <binding action="backspace" label=""/>
+@@ -56,9 +54,11 @@
+           </key>
+ 
+           <key id="emailUrlKey"><binding label="&#xFF0C;"/></key>
+-          <key width="stretched"><binding action="space" label=""/></key>
++          <key width="xx-large"><binding action="space" label=""/></key>
+           <key id="emailUrlDotKey"><binding label="&#x3002;"/></key>
+ 
++          <key style="special"><binding action="close"/></key>
++
+           <key style="special" width="x-large" id="actionKey">
+             <binding action="return"/>
+           </key>
+@@ -100,7 +100,6 @@
+             <binding action="on_off_toggle" label="&#x901F;&#x6210;"/>
+           </key>
+ 
+-          <spacer/>
+           <key><binding label="&#x91CD;"/></key>
+           <key><binding label="&#x96E3;"/></key>
+           <key><binding label="&#x91D1;"/></key>
+@@ -108,7 +107,6 @@
+           <key><binding label="&#x6708;"/></key>
+           <key><binding label="&#x5F13;"/></key>
+           <key><binding label="&#x4E00;"/></key>
+-          <spacer/>
+ 
+           <key style="special" width="large">
+             <binding action="backspace" label=""/>
+@@ -124,6 +122,8 @@
+           <key width="stretched"><binding action="space" label=""/></key>
+           <key id="emailUrlDotKey"><binding label="&#x3002;"/></key>
+ 
++          <key style="special"><binding action="close"/></key>
++
+           <key style="special" width="xx-large" id="actionKey">
+             <binding action="return"/>
+           </key>
+diff --git a/maliit-keyboard/data/languages/zh_cn_pinyin.xml b/maliit-keyboard/data/languages/zh_cn_pinyin.xml
+index 7fea7e3..398c1eb 100644
+--- a/maliit-keyboard/data/languages/zh_cn_pinyin.xml
++++ b/maliit-keyboard/data/languages/zh_cn_pinyin.xml
+@@ -94,8 +94,6 @@
+             <binding action="shift" label=""/>
+           </key>
+ 
+-          <spacer/>
+-
+           <key>
+             <binding label="z"/>
+             <binding shift="true" label="Z"/>
+@@ -125,8 +123,6 @@
+             <binding shift="true" label="M"/>
+           </key>
+ 
+-          <spacer/>
+-
+           <key style="special" width="large">
+             <binding action="backspace" label=""/>
+           </key>
+@@ -138,9 +134,11 @@
+           </key>
+ 
+           <key id="emailUrlKey"><binding label="&#xFF0C;"/></key>
+-          <key width="stretched"><binding action="space" label=""/></key>
++          <key width="xx-large"><binding action="space" label=""/></key>
+           <key id="emailUrlDotKey"><binding label="&#x3002;"/></key>
+ 
++          <key style="special"><binding action="close"/></key>
++
+           <key style="special" width="x-large" id="actionKey">
+                 <binding action="compose" label="&#36755;&#20837;"/>
+           </key>
+diff --git a/maliit-keyboard/data/languages/zh_cn_zhuyin.xml b/maliit-keyboard/data/languages/zh_cn_zhuyin.xml
+index 6febc82..31039d7 100644
+--- a/maliit-keyboard/data/languages/zh_cn_zhuyin.xml
++++ b/maliit-keyboard/data/languages/zh_cn_zhuyin.xml
+@@ -5,89 +5,53 @@
+       <section id="main">
+         <row>
+           <key><binding label="&#x3105;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3109;"/></key>
+-          <spacer/>
+           <key><binding label="&#x02C7;"/></key>
+-          <spacer/>
+           <key><binding label="&#x02CB;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3113;"/></key>
+-          <spacer/>
+           <key><binding label="&#x02CA;"/></key>
+-          <spacer/>
+           <key><binding label="&#x02D9;"/></key>
+-          <spacer/>
+           <key><binding label="&#x311A;"/></key>
+-          <spacer/>
+           <key><binding label="&#x311E;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3122;"/></key>
+         </row>
+ 
+         <row>
+           <key><binding label="&#x3106;"/></key>
+-          <spacer/>
+           <key><binding label="&#x310A;"/></key>
+-          <spacer/>
+           <key><binding label="&#x310D;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3110;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3114;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3117;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3127;"/></key>
+-          <spacer/>
+           <key><binding label="&#x311B;"/></key>
+-          <spacer/>
+           <key><binding label="&#x311F;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3123;"/></key>
+         </row>
+ 
+         <row>
+           <key><binding label="&#x3107;"/></key>
+-          <spacer/>
+           <key><binding label="&#x310B;"/></key>
+-          <spacer/>
+           <key><binding label="&#x310E;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3111;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3115;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3118;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3128;"/></key>
+-          <spacer/>
+           <key><binding label="&#x311C;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3120;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3124;"/></key>
+         </row>
+ 
+         <row>
+           <key><binding label="&#x3108;"/></key>
+-          <spacer/>
+           <key><binding label="&#x310C;"/></key>
+-          <spacer/>
+           <key><binding label="&#x310F;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3112;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3116;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3119;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3129;"/></key>
+-          <spacer/>
+           <key><binding label="&#x311D;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3121;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3125;"/></key>
+         </row>
+ 
+@@ -98,14 +62,16 @@
+ 
+           <key id="emailUrlKey"><binding label="&#xFF0C;"/></key>
+           <key id="emailUrlDotKey"><binding label="&#x3002;"/></key>
+-          <key width="stretched"><binding action="space" label=""/> </key>
++          <key width="x-large"><binding action="space" label=""/> </key>
+           <key><binding label="&#x3126;"/></key>
+ 
+-          <key style="special" width="large">
++          <key style="special">
+             <binding action="backspace" label=""/>
+           </key>
+ 
+-          <key style="special" width="x-large" id="actionKey">
++          <key style="special"><binding action="close"/></key>
++
++          <key style="special" id="actionKey">
+             <binding action="compose" label="&#36664;&#20837;"/>
+           </key>
+         </row>
+@@ -116,89 +82,53 @@
+       <section id="main">
+         <row>
+           <key><binding label="&#x3105;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3109;"/></key>
+-          <spacer/>
+           <key><binding label="&#x02C7;"/></key>
+-          <spacer/>
+           <key><binding label="&#x02CB;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3113;"/></key>
+-          <spacer/>
+           <key><binding label="&#x02CA;"/></key>
+-          <spacer/>
+           <key><binding label="&#x02D9;"/></key>
+-          <spacer/>
+           <key><binding label="&#x311A;"/></key>
+-          <spacer/>
+           <key><binding label="&#x311E;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3122;"/></key>
+         </row>
+ 
+         <row>
+           <key><binding label="&#x3106;"/></key>
+-          <spacer/>
+           <key><binding label="&#x310A;"/></key>
+-          <spacer/>
+           <key><binding label="&#x310D;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3110;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3114;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3117;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3127;"/></key>
+-          <spacer/>
+           <key><binding label="&#x311B;"/></key>
+-          <spacer/>
+           <key><binding label="&#x311F;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3123;"/></key>
+         </row>
+ 
+         <row>
+           <key><binding label="&#x3107;"/></key>
+-          <spacer/>
+           <key><binding label="&#x310B;"/></key>
+-          <spacer/>
+           <key><binding label="&#x310E;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3111;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3115;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3118;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3128;"/></key>
+-          <spacer/>
+           <key><binding label="&#x311C;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3120;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3124;"/></key>
+         </row>
+ 
+         <row>
+           <key><binding label="&#x3108;"/></key>
+-          <spacer/>
+           <key><binding label="&#x310C;"/></key>
+-          <spacer/>
+           <key><binding label="&#x310F;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3112;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3116;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3119;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3129;"/></key>
+-          <spacer/>
+           <key><binding label="&#x311D;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3121;"/></key>
+-          <spacer/>
+           <key><binding label="&#x3125;"/></key>
+         </row>
+ 
+-- 
+1.7.9.6 (Apple Git-31.1)
+
+
+From 781605851c581042eb58ab2c55a3b0d72cc5caec Mon Sep 17 00:00:00 2001
+From: Gary Martin <gary at garycmartin.com>
+Date: Fri, 5 Oct 2012 07:35:08 +0100
+Subject: [PATCH 2/2] Update to main.ini for improved portrait orientation
+ support.
+
+---
+ maliit-keyboard/data/styles/olpc-xo/main.ini |   23 +++++++++++++++--------
+ 1 file changed, 15 insertions(+), 8 deletions(-)
+
+diff --git a/maliit-keyboard/data/styles/olpc-xo/main.ini b/maliit-keyboard/data/styles/olpc-xo/main.ini
+index 6edbb18..a2b54e8 100644
+--- a/maliit-keyboard/data/styles/olpc-xo/main.ini
++++ b/maliit-keyboard/data/styles/olpc-xo/main.ini
+@@ -48,7 +48,7 @@ landscape\key-width=99
+ landscape\key-width-small=88
+ landscape\key-width-large=154
+ landscape\key-width-xlarge=230
+-landscape\key-width-xxlarge=350
++landscape\key-width-xxlarge=424
+ landscape\key-width-stretched=643
+ landscape\vertical-offset=122
+ landscape\font-size=34
+@@ -70,11 +70,11 @@ portrait\key-width=73
+ portrait\key-width-small=65
+ portrait\key-width-large=115
+ portrait\key-width-xlarge=170
+-portrait\key-width-xxlarge=258
++portrait\key-width-xxlarge=314
+ portrait\key-width-stretched=475
+ portrait\vertical-offset=104
+-portrait\font-size=29
+-portrait\small-font-size=24
++portrait\font-size=28
++portrait\small-font-size=19
+ portrait\font-color=#ffffff
+ portrait\magnifier-font-size=48
+ portrait\candidate-font-size=20
+@@ -83,10 +83,17 @@ portrait\candidate-font-stretch=60
+ [ar]
+ landscape\key-width=90
+ landscape\key-width-small=81
+-landscape\key-width-large=154
+-landscape\key-width-xlarge=150
+-landscape\key-width-xxlarge=324
+-landscape\key-width-stretched=425
++landscape\key-width-large=90
++landscape\key-width-xlarge=154
++landscape\key-width-xxlarge=463
++landscape\key-width-stretched=590
++
++portrait\key-width=66
++portrait\key-width-small=59
++portrait\key-width-large=70
++portrait\key-width-xlarge=115
++portrait\key-width-xxlarge=338
++portrait\key-width-stretched=440
+ 
+ [vietnamese]
+ landscape\key-width=99
+-- 
+1.7.9.6 (Apple Git-31.1)
+


More information about the scm-commits mailing list