[gnome-shell/wip/carlosg/osk-updates: 68/76] data: Shuffle comma/dot keys in OSK keymaps




commit b98dd5e9acfcc5b66ed51c0aa63e024db1c464c4
Author: Carlos Garnacho <carlosg gnome org>
Date:   Tue Jun 14 23:00:21 2022 +0200

    data: Shuffle comma/dot keys in OSK keymaps
    
    Make these closer to the mockups, on most locales at least.
    Unclear/remaining are:
    
      am, ara, il, in+mal, ir, kg, mk, mn, rs, ru, th, ua
    
    Since the extended OSK keymap is short on space, it coalesced
    both keys together (i.e. extending the extra keys popup) so it
    takes less room.
    
    Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2278>

 data/osk-layouts/at.json          | 104 +++++++++++++++++++------------------
 data/osk-layouts/be.json          | 104 +++++++++++++++++++------------------
 data/osk-layouts/bg.json          |  54 +++++++++----------
 data/osk-layouts/ca.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/ch+fr.json       | 106 ++++++++++++++++++++------------------
 data/osk-layouts/ch.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/cz.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/de.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/dk.json          | 100 ++++++++++++++++++-----------------
 data/osk-layouts/ee.json          | 100 ++++++++++++++++++-----------------
 data/osk-layouts/epo.json         | 106 ++++++++++++++++++++------------------
 data/osk-layouts/es+cat.json      | 102 ++++++++++++++++++------------------
 data/osk-layouts/es.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/fi.json          | 100 ++++++++++++++++++-----------------
 data/osk-layouts/fr.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/ge.json          |  39 +++++++-------
 data/osk-layouts/gr.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/hr.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/hu.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/id.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/in+bolnagri.json |  39 +++++++-------
 data/osk-layouts/is.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/it.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/ke.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/kh.json          |  39 +++++++-------
 data/osk-layouts/la.json          |  39 +++++++-------
 data/osk-layouts/latam.json       | 106 ++++++++++++++++++++------------------
 data/osk-layouts/lt.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/lv.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/my.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/nl.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/no.json          | 100 ++++++++++++++++++-----------------
 data/osk-layouts/ph.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/pl.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/pt.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/ro.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/se.json          | 100 ++++++++++++++++++-----------------
 data/osk-layouts/si.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/sk.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/tr.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/uk.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/us-extended.json |  88 ++++++++++++++-----------------
 data/osk-layouts/us.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/vn.json          | 106 ++++++++++++++++++++------------------
 data/osk-layouts/za.json          | 106 ++++++++++++++++++++------------------
 45 files changed, 2283 insertions(+), 2111 deletions(-)
---
diff --git a/data/osk-layouts/at.json b/data/osk-layouts/at.json
index 04660079c2..511dc9059a 100644
--- a/data/osk-layouts/at.json
+++ b/data/osk-layouts/at.json
@@ -146,8 +146,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -186,31 +185,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -224,17 +203,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -385,8 +387,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -425,31 +426,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -463,17 +444,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
diff --git a/data/osk-layouts/be.json b/data/osk-layouts/be.json
index 76802bddeb..6e4f75d5d2 100644
--- a/data/osk-layouts/be.json
+++ b/data/osk-layouts/be.json
@@ -161,8 +161,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -208,31 +207,11 @@
               "›"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -246,17 +225,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -421,8 +423,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -468,31 +469,11 @@
               "›"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -506,17 +487,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
diff --git a/data/osk-layouts/bg.json b/data/osk-layouts/bg.json
index 6e5a0bbc98..fb7385deb4 100644
--- a/data/osk-layouts/bg.json
+++ b/data/osk-layouts/bg.json
@@ -133,8 +133,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -176,31 +175,11 @@
               "ю"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 6
-          },
           {
             "strings": [
               ".",
@@ -214,17 +193,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 6
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -950,4 +952,4 @@
   ],
   "locale": "bg",
   "name": "Bulgarian"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/ca.json b/data/osk-layouts/ca.json
index a6346d32ec..230a6ba93c 100644
--- a/data/osk-layouts/ca.json
+++ b/data/osk-layouts/ca.json
@@ -160,8 +160,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -201,31 +200,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -239,17 +218,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -414,8 +416,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -455,31 +456,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -493,17 +474,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1000,4 +1004,4 @@
   ],
   "locale": "fr-CA",
   "name": "French Canada"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/ch+fr.json b/data/osk-layouts/ch+fr.json
index 2948f02012..7735c2eb0a 100644
--- a/data/osk-layouts/ch+fr.json
+++ b/data/osk-layouts/ch+fr.json
@@ -146,8 +146,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -186,31 +185,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -224,17 +203,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -385,8 +387,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -425,31 +426,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -463,17 +444,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -971,4 +975,4 @@
   ],
   "locale": "fr-CH",
   "name": "Swiss French"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/ch.json b/data/osk-layouts/ch.json
index 594c974844..aa062b0a4a 100644
--- a/data/osk-layouts/ch.json
+++ b/data/osk-layouts/ch.json
@@ -146,8 +146,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -186,31 +185,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -224,17 +203,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -385,8 +387,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -425,31 +426,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -463,17 +444,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -971,4 +975,4 @@
   ],
   "locale": "de-CH",
   "name": "Swiss German"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/cz.json b/data/osk-layouts/cz.json
index 159b010a70..7a3d09a195 100644
--- a/data/osk-layouts/cz.json
+++ b/data/osk-layouts/cz.json
@@ -162,8 +162,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -208,31 +207,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -246,17 +225,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -423,8 +425,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -469,31 +470,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -507,17 +488,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1014,4 +1018,4 @@
   ],
   "locale": "cs",
   "name": "Czech"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/de.json b/data/osk-layouts/de.json
index 3d5a9425d8..d36e399691 100644
--- a/data/osk-layouts/de.json
+++ b/data/osk-layouts/de.json
@@ -146,8 +146,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -186,31 +185,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -224,17 +203,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -385,8 +387,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -425,31 +426,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -463,17 +444,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -971,4 +975,4 @@
   ],
   "locale": "de",
   "name": "German"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/dk.json b/data/osk-layouts/dk.json
index e3528ab9cc..3b01ac8b63 100644
--- a/data/osk-layouts/dk.json
+++ b/data/osk-layouts/dk.json
@@ -202,31 +202,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 4
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 6
-          },
           {
             "strings": [
               ".",
@@ -240,17 +220,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 2
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 6
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -457,31 +460,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 4
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 6
-          },
           {
             "strings": [
               ".",
@@ -495,17 +478,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 2
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 6
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1003,4 +1009,4 @@
   ],
   "locale": "da",
   "name": "Danish"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/ee.json b/data/osk-layouts/ee.json
index 292aeff182..f858a6219a 100644
--- a/data/osk-layouts/ee.json
+++ b/data/osk-layouts/ee.json
@@ -240,31 +240,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 4
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 6
-          },
           {
             "strings": [
               ".",
@@ -278,17 +258,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 2
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 6
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -533,31 +536,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 4
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 6
-          },
           {
             "strings": [
               ".",
@@ -571,17 +554,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 2
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 6
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1079,4 +1085,4 @@
   ],
   "locale": "et",
   "name": "Estonian"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/epo.json b/data/osk-layouts/epo.json
index e1c3851609..a6d262cbfb 100644
--- a/data/osk-layouts/epo.json
+++ b/data/osk-layouts/epo.json
@@ -205,8 +205,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -259,31 +258,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -297,17 +276,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -517,8 +519,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -571,31 +572,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -609,17 +590,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1116,4 +1120,4 @@
   ],
   "locale": "eo",
   "name": "Esperanto"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/es+cat.json b/data/osk-layouts/es+cat.json
index 5d03c13e7f..fab8d4eae0 100644
--- a/data/osk-layouts/es+cat.json
+++ b/data/osk-layouts/es+cat.json
@@ -161,8 +161,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -204,11 +203,28 @@
               "m"
             ]
           },
+          {
+            "strings": [
+              ","
+            ]
+          },
+          {
+            "strings": [
+              ".",
+              "·",
+              "!",
+              ",",
+              "?",
+              ":",
+              ";",
+              "@"
+            ]
+          },
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
             "level": 1,
-            "width": 3
+            "width": 1.5
           }
         ],
         [
@@ -219,9 +235,9 @@
             "width": 1.5
           },
           {
-            "strings": [
-              ","
-            ]
+            "action": "emoji",
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
           },
           {
             "strings": [
@@ -229,29 +245,15 @@
             ],
             "width": 5
           },
-          {
-            "strings": [
-              ".",
-              "·",
-              "!",
-              ",",
-              "?",
-              ":",
-              ";",
-              "@"
-            ]
-          },
-          {
-            "action": "emoji",
-            "iconName": "face-smile-symbolic"
-          },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -417,8 +419,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -460,11 +461,28 @@
               "M"
             ]
           },
+          {
+            "strings": [
+              ","
+            ]
+          },
+          {
+            "strings": [
+              ".",
+              "·",
+              "!",
+              ",",
+              "?",
+              ":",
+              ";",
+              "@"
+            ]
+          },
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
             "level": 0,
-            "width": 3
+            "width": 1.5
           }
         ],
         [
@@ -475,9 +493,9 @@
             "width": 1.5
           },
           {
-            "strings": [
-              ","
-            ]
+            "action": "emoji",
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
           },
           {
             "strings": [
@@ -485,29 +503,15 @@
             ],
             "width": 5
           },
-          {
-            "strings": [
-              ".",
-              "·",
-              "!",
-              ",",
-              "?",
-              ":",
-              ";",
-              "@"
-            ]
-          },
-          {
-            "action": "emoji",
-            "iconName": "face-smile-symbolic"
-          },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1007,4 +1011,4 @@
   ],
   "locale": "ca",
   "name": "Catalan"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/es.json b/data/osk-layouts/es.json
index 9f77882b39..652c07f3af 100644
--- a/data/osk-layouts/es.json
+++ b/data/osk-layouts/es.json
@@ -159,8 +159,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -202,31 +201,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -240,17 +219,40 @@
               "¿"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -414,8 +416,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -457,31 +458,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -495,17 +476,40 @@
               "¿"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1009,4 +1013,4 @@
   ],
   "locale": "es",
   "name": "Spanish"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/fi.json b/data/osk-layouts/fi.json
index 5a889c46f6..b7d0d81d50 100644
--- a/data/osk-layouts/fi.json
+++ b/data/osk-layouts/fi.json
@@ -192,31 +192,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 4
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 6
-          },
           {
             "strings": [
               ".",
@@ -230,17 +210,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 2
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 6
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -437,31 +440,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 4
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 6
-          },
           {
             "strings": [
               ".",
@@ -475,17 +458,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 2
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 6
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -983,4 +989,4 @@
   ],
   "locale": "fi",
   "name": "Finnish"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/fr.json b/data/osk-layouts/fr.json
index 4dd8a34892..bf1ba86e46 100644
--- a/data/osk-layouts/fr.json
+++ b/data/osk-layouts/fr.json
@@ -165,8 +165,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -210,31 +209,11 @@
               "›"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -248,17 +227,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -428,8 +430,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -473,31 +474,11 @@
               "›"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -511,17 +492,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1019,4 +1023,4 @@
   ],
   "locale": "fr",
   "name": "French"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/ge.json b/data/osk-layouts/ge.json
index 0fda31bb8d..7bc88d5708 100644
--- a/data/osk-layouts/ge.json
+++ b/data/osk-layouts/ge.json
@@ -159,26 +159,12 @@
             "strings": [
               "მ"
             ]
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
           },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -191,18 +177,35 @@
               "'",
               "@"
             ]
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
           },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -699,4 +702,4 @@
   ],
   "locale": "ka",
   "name": "Georgian"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/gr.json b/data/osk-layouts/gr.json
index 20d0508f60..a60a18619f 100644
--- a/data/osk-layouts/gr.json
+++ b/data/osk-layouts/gr.json
@@ -128,8 +128,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -167,31 +166,11 @@
               "μ"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -205,17 +184,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -348,8 +350,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -387,31 +388,11 @@
               "Μ"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -425,17 +406,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -933,4 +937,4 @@
   ],
   "locale": "el",
   "name": "Greek"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/hr.json b/data/osk-layouts/hr.json
index bca2a456d1..444014b498 100644
--- a/data/osk-layouts/hr.json
+++ b/data/osk-layouts/hr.json
@@ -124,8 +124,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -167,31 +166,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -205,17 +184,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -344,8 +346,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -387,31 +388,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -425,17 +406,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -932,4 +936,4 @@
   ],
   "locale": "hr",
   "name": "Croatian"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/hu.json b/data/osk-layouts/hu.json
index 3bda75e0e8..f45f31c3c1 100644
--- a/data/osk-layouts/hu.json
+++ b/data/osk-layouts/hu.json
@@ -153,8 +153,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -191,31 +190,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -229,17 +208,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -397,8 +399,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -435,31 +436,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -473,17 +454,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -980,4 +984,4 @@
   ],
   "locale": "hu",
   "name": "Hungarian"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/id.json b/data/osk-layouts/id.json
index 58d48d1e99..6d57095b29 100644
--- a/data/osk-layouts/id.json
+++ b/data/osk-layouts/id.json
@@ -117,8 +117,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -155,31 +154,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -193,17 +172,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -325,8 +327,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -363,31 +364,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -401,17 +382,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -908,4 +912,4 @@
   ],
   "locale": "id",
   "name": "Indonesian"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/in+bolnagri.json b/data/osk-layouts/in+bolnagri.json
index f60faf33ee..e28063367f 100644
--- a/data/osk-layouts/in+bolnagri.json
+++ b/data/osk-layouts/in+bolnagri.json
@@ -197,26 +197,12 @@
             "strings": [
               "◌़"
             ]
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
           },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 6
-          },
           {
             "strings": [
               ".",
@@ -229,18 +215,35 @@
               "'",
               "@"
             ]
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
           },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 6
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -739,4 +742,4 @@
   ],
   "locale": "hi",
   "name": "Hindi"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/is.json b/data/osk-layouts/is.json
index a93be578cb..ac3176cd43 100644
--- a/data/osk-layouts/is.json
+++ b/data/osk-layouts/is.json
@@ -155,8 +155,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -193,31 +192,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -231,17 +210,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -401,8 +403,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -439,31 +440,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -477,17 +458,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -984,4 +988,4 @@
   ],
   "locale": "is",
   "name": "Icelandic"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/it.json b/data/osk-layouts/it.json
index 3cd696e574..781aa0f5e0 100644
--- a/data/osk-layouts/it.json
+++ b/data/osk-layouts/it.json
@@ -153,8 +153,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -191,31 +190,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -229,17 +208,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -397,8 +399,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -435,31 +436,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -473,17 +454,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -981,4 +985,4 @@
   ],
   "locale": "it",
   "name": "Italian"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/ke.json b/data/osk-layouts/ke.json
index 786c5c6db0..de7b8fcc5b 100644
--- a/data/osk-layouts/ke.json
+++ b/data/osk-layouts/ke.json
@@ -150,8 +150,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -190,31 +189,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -228,17 +207,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -393,8 +395,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -433,31 +434,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -471,17 +452,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -978,4 +982,4 @@
   ],
   "locale": "sw",
   "name": "Swahili"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/kh.json b/data/osk-layouts/kh.json
index ab52e90a6d..78591b5182 100644
--- a/data/osk-layouts/kh.json
+++ b/data/osk-layouts/kh.json
@@ -270,26 +270,12 @@
             "strings": [
               "៊"
             ]
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
           },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 7
-          },
           {
             "strings": [
               ".",
@@ -302,18 +288,35 @@
               "'",
               "@"
             ]
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
           },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 7
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -811,4 +814,4 @@
   ],
   "locale": "km",
   "name": "Khmer"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/la.json b/data/osk-layouts/la.json
index 11cc60628e..65f0feeaea 100644
--- a/data/osk-layouts/la.json
+++ b/data/osk-layouts/la.json
@@ -260,26 +260,12 @@
             "strings": [
               "ຝ"
             ]
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
           },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 7
-          },
           {
             "strings": [
               ".",
@@ -292,18 +278,35 @@
               "'",
               "@"
             ]
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
           },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 7
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -802,4 +805,4 @@
   ],
   "locale": "lo",
   "name": "Lao"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/latam.json b/data/osk-layouts/latam.json
index 2f294678f8..01c67f870d 100644
--- a/data/osk-layouts/latam.json
+++ b/data/osk-layouts/latam.json
@@ -159,8 +159,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -202,31 +201,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -240,17 +219,40 @@
               "¿"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -414,8 +416,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -457,31 +458,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -495,17 +476,40 @@
               "¿"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1008,4 +1012,4 @@
   ],
   "locale": "es-US",
   "name": "Spanish United States"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/lt.json b/data/osk-layouts/lt.json
index f94cf31f52..3f678b5856 100644
--- a/data/osk-layouts/lt.json
+++ b/data/osk-layouts/lt.json
@@ -177,8 +177,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -225,31 +224,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -263,17 +242,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -455,8 +457,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -503,31 +504,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -541,17 +522,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1048,4 +1052,4 @@
   ],
   "locale": "lt",
   "name": "Lithuanian"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/lv.json b/data/osk-layouts/lv.json
index 3b1c1f0128..c3141ff17e 100644
--- a/data/osk-layouts/lv.json
+++ b/data/osk-layouts/lv.json
@@ -176,8 +176,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -224,31 +223,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -262,17 +241,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -453,8 +455,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -501,31 +502,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -539,17 +520,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1046,4 +1050,4 @@
   ],
   "locale": "lv",
   "name": "Latvian"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/my.json b/data/osk-layouts/my.json
index b7ba9d472c..1aedf20320 100644
--- a/data/osk-layouts/my.json
+++ b/data/osk-layouts/my.json
@@ -117,8 +117,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -155,31 +154,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -193,17 +172,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -325,8 +327,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -363,31 +364,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -401,17 +382,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -908,4 +912,4 @@
   ],
   "locale": "ms",
   "name": "Malay"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/nl.json b/data/osk-layouts/nl.json
index 44fc1bafe4..61bd4dd610 100644
--- a/data/osk-layouts/nl.json
+++ b/data/osk-layouts/nl.json
@@ -153,8 +153,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -193,31 +192,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -231,17 +210,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -399,8 +401,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -439,31 +440,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -477,17 +458,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -985,4 +989,4 @@
   ],
   "locale": "nl",
   "name": "Dutch"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/no.json b/data/osk-layouts/no.json
index 8bd434bb68..4be45225ff 100644
--- a/data/osk-layouts/no.json
+++ b/data/osk-layouts/no.json
@@ -202,31 +202,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 4
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 6
-          },
           {
             "strings": [
               ".",
@@ -240,17 +220,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 2
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 6
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -457,31 +460,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 4
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 6
-          },
           {
             "strings": [
               ".",
@@ -495,17 +478,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 2
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 6
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1003,4 +1009,4 @@
   ],
   "locale": "nb",
   "name": "Norwegian Bokmål"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/ph.json b/data/osk-layouts/ph.json
index eb1200ed71..0dbe4f23b8 100644
--- a/data/osk-layouts/ph.json
+++ b/data/osk-layouts/ph.json
@@ -117,8 +117,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -155,31 +154,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -193,17 +172,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -325,8 +327,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -363,31 +364,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -401,17 +382,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -908,4 +912,4 @@
   ],
   "locale": "fil",
   "name": "Filipino"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/pl.json b/data/osk-layouts/pl.json
index dcbf219227..b8019b13e1 100644
--- a/data/osk-layouts/pl.json
+++ b/data/osk-layouts/pl.json
@@ -145,8 +145,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -191,31 +190,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -229,17 +208,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -389,8 +391,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -435,31 +436,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -473,17 +454,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -980,4 +984,4 @@
   ],
   "locale": "pl",
   "name": "Polish"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/pt.json b/data/osk-layouts/pt.json
index d1481004b7..11c8c6d65f 100644
--- a/data/osk-layouts/pt.json
+++ b/data/osk-layouts/pt.json
@@ -152,8 +152,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -193,31 +192,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -231,17 +210,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -398,8 +400,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -439,31 +440,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -477,17 +458,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -985,4 +989,4 @@
   ],
   "locale": "pt-PT",
   "name": "Portuguese Portugal"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/ro.json b/data/osk-layouts/ro.json
index 9f0eb9d66c..3af77e8115 100644
--- a/data/osk-layouts/ro.json
+++ b/data/osk-layouts/ro.json
@@ -137,8 +137,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -175,31 +174,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -213,17 +192,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -365,8 +367,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -403,31 +404,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -441,17 +422,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -948,4 +952,4 @@
   ],
   "locale": "ro",
   "name": "Romanian"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/se.json b/data/osk-layouts/se.json
index 316d9e17d4..87da9feccd 100644
--- a/data/osk-layouts/se.json
+++ b/data/osk-layouts/se.json
@@ -219,31 +219,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 4
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 6
-          },
           {
             "strings": [
               ".",
@@ -257,17 +237,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 2
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 6
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -491,31 +494,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 4
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 6
-          },
           {
             "strings": [
               ".",
@@ -529,17 +512,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 2
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 6
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1037,4 +1043,4 @@
   ],
   "locale": "sv",
   "name": "Swedish"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/si.json b/data/osk-layouts/si.json
index 5ba77b84a2..7325c40399 100644
--- a/data/osk-layouts/si.json
+++ b/data/osk-layouts/si.json
@@ -119,8 +119,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -160,31 +159,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -198,17 +177,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -332,8 +334,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -373,31 +374,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -411,17 +392,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -919,4 +923,4 @@
   ],
   "locale": "sl",
   "name": "Slovenian"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/sk.json b/data/osk-layouts/sk.json
index 8f566265a6..8f834cd2df 100644
--- a/data/osk-layouts/sk.json
+++ b/data/osk-layouts/sk.json
@@ -176,8 +176,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -225,31 +224,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -263,17 +242,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -454,8 +456,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -503,31 +504,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -541,17 +522,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1049,4 +1053,4 @@
   ],
   "locale": "sk",
   "name": "Slovak"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/tr.json b/data/osk-layouts/tr.json
index 52960b5bd0..e32b3d9ac8 100644
--- a/data/osk-layouts/tr.json
+++ b/data/osk-layouts/tr.json
@@ -143,8 +143,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -184,31 +183,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -222,17 +201,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -380,8 +382,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -421,31 +422,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -459,17 +440,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -967,4 +971,4 @@
   ],
   "locale": "tr",
   "name": "Turkish"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/uk.json b/data/osk-layouts/uk.json
index 8ee2374af4..91a94b2cc9 100644
--- a/data/osk-layouts/uk.json
+++ b/data/osk-layouts/uk.json
@@ -149,8 +149,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -189,31 +188,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -227,17 +206,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -391,8 +393,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -431,31 +432,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -469,17 +450,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -977,4 +981,4 @@
   ],
   "locale": "en-GB",
   "name": "English Great Britain"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/us-extended.json b/data/osk-layouts/us-extended.json
index 3ce3b77214..0370edbcb6 100644
--- a/data/osk-layouts/us-extended.json
+++ b/data/osk-layouts/us-extended.json
@@ -200,6 +200,20 @@
               "m"
             ]
           },
+          {
+            "strings": [
+              ".",
+              ",",
+              "#",
+              "!",
+              ",",
+              "?",
+              "-",
+              ":",
+              "'",
+              "@"
+            ]
+          },
           {
             "iconName": "go-up-symbolic",
             "keyval": "0xff52"
@@ -208,7 +222,7 @@
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
             "level": 1,
-            "width": 3
+            "width": 2
           }
         ],
         [
@@ -227,34 +241,20 @@
             "keyval": "0xffe9",
             "label": "Alt"
           },
-          {
-            "strings": [
-              ","
-            ]
-          },
           {
             "strings": [
               " "
             ],
-            "width": 2
-          },
-          {
-            "strings": [
-              ".",
-              "#",
-              "!",
-              ",",
-              "?",
-              "-",
-              ":",
-              "'",
-              "@"
-            ]
+            "width": 4
           },
           {
             "action": "emoji",
             "iconName": "face-smile-symbolic"
           },
+          {
+            "action": "languageMenu",
+            "iconName": "keyboard-layout-symbolic"
+          },
           {
             "iconName": "go-previous-symbolic",
             "keyval": "0xff51"
@@ -267,10 +267,6 @@
             "iconName": "go-next-symbolic",
             "keyval": "0xff53"
           },
-          {
-            "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
-          },
           {
             "action": "hide",
             "iconName": "keyboard-hide-symbolic"
@@ -478,6 +474,20 @@
               "M"
             ]
           },
+          {
+            "strings": [
+              ".",
+              ",",
+              "#",
+              "!",
+              ",",
+              "?",
+              "-",
+              ":",
+              "'",
+              "@"
+            ]
+          },
           {
             "iconName": "go-up-symbolic",
             "keyval": "0xff52"
@@ -486,7 +496,7 @@
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
             "level": 0,
-            "width": 3
+            "width": 2
           }
         ],
         [
@@ -505,34 +515,20 @@
             "keyval": "0xffe9",
             "label": "Alt"
           },
-          {
-            "strings": [
-              ","
-            ]
-          },
           {
             "strings": [
               " "
             ],
-            "width": 2
-          },
-          {
-            "strings": [
-              ".",
-              "#",
-              "!",
-              ",",
-              "?",
-              "-",
-              ":",
-              "'",
-              "@"
-            ]
+            "width": 4
           },
           {
             "action": "emoji",
             "iconName": "face-smile-symbolic"
           },
+          {
+            "action": "languageMenu",
+            "iconName": "keyboard-layout-symbolic"
+          },
           {
             "iconName": "go-previous-symbolic",
             "keyval": "0xff51"
@@ -545,10 +541,6 @@
             "iconName": "go-next-symbolic",
             "keyval": "0xff53"
           },
-          {
-            "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
-          },
           {
             "action": "hide",
             "iconName": "keyboard-hide-symbolic"
diff --git a/data/osk-layouts/us.json b/data/osk-layouts/us.json
index 1ecd96d94a..17c20d9012 100644
--- a/data/osk-layouts/us.json
+++ b/data/osk-layouts/us.json
@@ -149,8 +149,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -189,31 +188,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -227,17 +206,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -391,8 +393,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -431,31 +432,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -469,17 +450,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -976,4 +980,4 @@
   ],
   "locale": "en",
   "name": "English United States"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/vn.json b/data/osk-layouts/vn.json
index 674518331a..17c7f0ed31 100644
--- a/data/osk-layouts/vn.json
+++ b/data/osk-layouts/vn.json
@@ -184,8 +184,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -222,31 +221,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -260,17 +239,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -459,8 +461,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -497,31 +498,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -535,17 +516,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -1044,4 +1048,4 @@
   ],
   "locale": "vi",
   "name": "Vietnamese"
-}
\ No newline at end of file
+}
diff --git a/data/osk-layouts/za.json b/data/osk-layouts/za.json
index 4d23cb83d4..0e8dd96b3d 100644
--- a/data/osk-layouts/za.json
+++ b/data/osk-layouts/za.json
@@ -156,8 +156,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 1.5
+            "level": 1
           },
           {
             "strings": [
@@ -196,31 +195,11 @@
               "m"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 1,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -234,17 +213,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 1,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -405,8 +407,7 @@
           {
             "action": "levelSwitch",
             "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 1.5
+            "level": 0
           },
           {
             "strings": [
@@ -445,31 +446,11 @@
               "M"
             ]
           },
-          {
-            "action": "levelSwitch",
-            "iconName": "keyboard-shift-symbolic",
-            "level": 0,
-            "width": 3
-          }
-        ],
-        [
-          {
-            "action": "levelSwitch",
-            "label": "?123",
-            "level": 2,
-            "width": 1.5
-          },
           {
             "strings": [
               ","
             ]
           },
-          {
-            "strings": [
-              " "
-            ],
-            "width": 5
-          },
           {
             "strings": [
               ".",
@@ -483,17 +464,40 @@
               "@"
             ]
           },
+          {
+            "action": "levelSwitch",
+            "iconName": "keyboard-shift-symbolic",
+            "level": 0,
+            "width": 1.5
+          }
+        ],
+        [
+          {
+            "action": "levelSwitch",
+            "label": "?123",
+            "level": 2,
+            "width": 1.5
+          },
           {
             "action": "emoji",
-            "iconName": "face-smile-symbolic"
+            "iconName": "face-smile-symbolic",
+            "width": 1.5
+          },
+          {
+            "strings": [
+              " "
+            ],
+            "width": 5
           },
           {
             "action": "languageMenu",
-            "iconName": "keyboard-layout-symbolic"
+            "iconName": "keyboard-layout-symbolic",
+            "width": 1.5
           },
           {
             "action": "hide",
-            "iconName": "keyboard-hide-symbolic"
+            "iconName": "keyboard-hide-symbolic",
+            "width": 2
           }
         ]
       ]
@@ -990,4 +994,4 @@
   ],
   "locale": "af",
   "name": "Afrikaans"
-}
\ No newline at end of file
+}


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]