Merge lp:~michael-sheldon/ubuntu-keyboard/fix-1421411 into lp:ubuntu-keyboard

Proposed by Michael Sheldon
Status: Needs review
Proposed branch: lp:~michael-sheldon/ubuntu-keyboard/fix-1421411
Merge into: lp:ubuntu-keyboard
Prerequisite: lp:~michael-sheldon/ubuntu-keyboard/fix-extended-key-ordering
Diff against target: 1232 lines (+159/-105)
82 files modified
plugins/ar/qml/Keyboard_ar.qml (+1/-1)
plugins/ar/qml/Keyboard_ar_email.qml (+1/-1)
plugins/ar/qml/Keyboard_ar_url.qml (+1/-1)
plugins/ar/qml/Keyboard_ar_url_search.qml (+1/-1)
plugins/az/qml/Keyboard_az.qml (+2/-2)
plugins/az/qml/Keyboard_az_email.qml (+1/-1)
plugins/az/qml/Keyboard_az_url.qml (+1/-1)
plugins/az/qml/Keyboard_az_url_search.qml (+1/-1)
plugins/bs/qml/Keyboard_bs.qml (+2/-2)
plugins/bs/qml/Keyboard_bs_email.qml (+1/-1)
plugins/bs/qml/Keyboard_bs_url.qml (+1/-1)
plugins/bs/qml/Keyboard_bs_url_search.qml (+1/-1)
plugins/ca/qml/Keyboard_ca.qml (+2/-2)
plugins/ca/qml/Keyboard_ca_email.qml (+1/-1)
plugins/ca/qml/Keyboard_ca_url.qml (+1/-1)
plugins/cs/qml/Keyboard_cs.qml (+2/-2)
plugins/cs/qml/Keyboard_cs_email.qml (+1/-1)
plugins/cs/qml/Keyboard_cs_url.qml (+1/-1)
plugins/cs/qml/Keyboard_cs_url_search.qml (+1/-1)
plugins/da/qml/Keyboard_da.qml (+2/-2)
plugins/da/qml/Keyboard_da_email.qml (+1/-1)
plugins/da/qml/Keyboard_da_url.qml (+1/-1)
plugins/da/qml/Keyboard_da_url_search.qml (+1/-1)
plugins/de/qml/Keyboard_de.qml (+2/-2)
plugins/de/qml/Keyboard_de_email.qml (+1/-1)
plugins/de/qml/Keyboard_de_url.qml (+1/-1)
plugins/de/qml/Keyboard_de_url_search.qml (+1/-1)
plugins/en/qml/Keyboard_en.qml (+2/-2)
plugins/en/qml/Keyboard_en_email.qml (+1/-1)
plugins/en/qml/Keyboard_en_url.qml (+1/-1)
plugins/en/qml/Keyboard_en_url_search.qml (+1/-1)
plugins/es/qml/Keyboard_es.qml (+2/-2)
plugins/es/qml/Keyboard_es_email.qml (+1/-1)
plugins/es/qml/Keyboard_es_url.qml (+1/-1)
plugins/es/qml/Keyboard_es_url_search.qml (+1/-1)
plugins/fi/qml/Keyboard_fi.qml (+2/-2)
plugins/fr/qml/Keyboard_fr.qml (+2/-2)
plugins/fr/qml/Keyboard_fr_email.qml (+1/-1)
plugins/fr/qml/Keyboard_fr_url.qml (+1/-1)
plugins/fr/qml/Keyboard_fr_url_search.qml (+1/-1)
plugins/he/qml/Keyboard_he.qml (+2/-2)
plugins/he/qml/Keyboard_he_email.qml (+1/-1)
plugins/he/qml/Keyboard_he_url.qml (+1/-1)
plugins/he/qml/Keyboard_he_url_search.qml (+1/-1)
plugins/hr/qml/Keyboard_hr.qml (+2/-2)
plugins/hr/qml/Keyboard_hr_email.qml (+1/-1)
plugins/hr/qml/Keyboard_hr_url.qml (+1/-1)
plugins/hr/qml/Keyboard_hr_url_search.qml (+1/-1)
plugins/hu/qml/Keyboard_hu.qml (+2/-2)
plugins/hu/qml/Keyboard_hu_email.qml (+1/-1)
plugins/hu/qml/Keyboard_hu_url.qml (+1/-1)
plugins/hu/qml/Keyboard_hu_url_search.qml (+1/-1)
plugins/it/qml/Keyboard_it.qml (+2/-2)
plugins/it/qml/Keyboard_it_email.qml (+1/-1)
plugins/it/qml/Keyboard_it_url.qml (+1/-1)
plugins/it/qml/Keyboard_it_url_search.qml (+1/-1)
plugins/nl/qml/Keyboard_nl.qml (+2/-2)
plugins/nl/qml/Keyboard_nl_email.qml (+1/-1)
plugins/nl/qml/Keyboard_nl_url.qml (+1/-1)
plugins/nl/qml/Keyboard_nl_url_search.qml (+1/-1)
plugins/pl/qml/Keyboard_pl.qml (+2/-2)
plugins/pl/qml/Keyboard_pl_email.qml (+1/-1)
plugins/pl/qml/Keyboard_pl_url.qml (+1/-1)
plugins/pl/qml/Keyboard_pl_url_search.qml (+1/-1)
plugins/pt/qml/Keyboard_pt.qml (+2/-2)
plugins/pt/qml/Keyboard_pt_email.qml (+1/-1)
plugins/pt/qml/Keyboard_pt_url.qml (+1/-1)
plugins/pt/qml/Keyboard_pt_url_search.qml (+1/-1)
plugins/ru/qml/Keyboard_ru.qml (+2/-2)
plugins/ru/qml/Keyboard_ru_email.qml (+1/-1)
plugins/ru/qml/Keyboard_ru_url.qml (+1/-1)
plugins/ru/qml/Keyboard_ru_url_search.qml (+1/-1)
plugins/sr/qml/Keyboard_sr.qml (+2/-2)
plugins/sr/qml/Keyboard_sr_email.qml (+1/-1)
plugins/sr/qml/Keyboard_sr_url.qml (+1/-1)
plugins/sr/qml/Keyboard_sr_url_search.qml (+1/-1)
plugins/sv/qml/Keyboard_sv.qml (+2/-2)
plugins/sv/qml/Keyboard_sv_email.qml (+1/-1)
plugins/sv/qml/Keyboard_sv_url.qml (+1/-1)
plugins/sv/qml/Keyboard_sv_url_search.qml (+1/-1)
tests/autopilot/ubuntu_keyboard/emulators/keyboard.py (+15/-2)
tests/autopilot/ubuntu_keyboard/tests/test_keyboard.py (+44/-3)
To merge this branch: bzr merge lp:~michael-sheldon/ubuntu-keyboard/fix-1421411
Reviewer Review Type Date Requested Status
system-apps-ci-bot continuous-integration Needs Fixing
PS Jenkins bot continuous-integration Needs Fixing
Ubuntu Phablet Team Pending
Review via email: mp+252583@code.launchpad.net

This proposal supersedes a proposal from 2015-02-16.

Commit message

Add punctuation to extended keys and make comma key more consistent across shift states

Description of the change

Add punctuation to extended keys and make comma key more consistent across shift states

To post a comment you must log in.
Revision history for this message
Michael Sheldon (michael-sheldon) wrote : Posted in a previous version of this proposal

Are there any related MPs required for this MP to build/function as expected? Please list.

 * No

Is your branch in sync with latest trunk (e.g. bzr pull lp:trunk -> no changes)

 * Yes

Did you perform an exploratory manual test run of your code change and any related functionality on device or emulator?

 * Yes

Did you successfully run all tests found in your component's Test Plan (https://wiki.ubuntu.com/Process/Merges/TestPlan/ubuntu-keyboard) on device or emulator?

 * Yes

If you changed the UI, was the change specified/approved by design?

 * No change

If you changed UI labels, did you update the pot file?

 * No change

If you changed the packaging (debian), did you add a core-dev as a reviewer to this MP?

 * No change

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote : Posted in a previous version of this proposal
review: Needs Fixing (continuous-integration)
Revision history for this message
Bill Filler (bfiller) wrote : Posted in a previous version of this proposal

going to hold off landing this until we fix the issue with the extended keys being shifted by Qt5.4 as it makes it quite apparent with these extra keys

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
324. By Michael Sheldon

Fix extended key sliding tests across different devices

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
system-apps-ci-bot (system-apps-ci-bot) wrote :
review: Needs Fixing (continuous-integration)

Unmerged revisions

324. By Michael Sheldon

Fix extended key sliding tests across different devices

323. By Michael Sheldon

Add tests for additional punctuation on extended keys (and sliding through extended keys in general)

322. By Michael Sheldon

Merge fix-extended-key-ordering branch

321. By Michael Sheldon

Merge from trunk

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'plugins/ar/qml/Keyboard_ar.qml'
2--- plugins/ar/qml/Keyboard_ar.qml 2014-09-26 13:22:23 +0000
3+++ plugins/ar/qml/Keyboard_ar.qml 2015-03-11 23:05:35 +0000
4@@ -90,7 +90,7 @@
5 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
6 CharKey { id: commaKey; label: "ذ"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
7 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
8- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: specialChar.left; height: parent.height; }
9+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: specialChar.left; height: parent.height; }
10 CharKey { id: specialChar; label: "ط"; anchors.right: enterKey.left; height: parent.height; }
11 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
12 }
13
14=== modified file 'plugins/ar/qml/Keyboard_ar_email.qml'
15--- plugins/ar/qml/Keyboard_ar_email.qml 2014-11-27 16:57:43 +0000
16+++ plugins/ar/qml/Keyboard_ar_email.qml 2015-03-11 23:05:35 +0000
17@@ -91,7 +91,7 @@
18 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
19 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
20 UrlKey { id: urlKey; label: ".eg"; extended: [".com", ".iq", ".lb", ".sa", ".sy", ".jo", ".ye"]; anchors.right: dotKey.left; height: parent.height; }
21- CharKey { id: dotKey; label: "."; shifted: "ذ"; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: specialChar.left; height: parent.height; }
22+ CharKey { id: dotKey; label: "."; shifted: "ذ"; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: specialChar.left; height: parent.height; }
23 CharKey { id: specialChar; label: "ط"; anchors.right: enterKey.left; height: parent.height; }
24 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
25 }
26
27=== modified file 'plugins/ar/qml/Keyboard_ar_url.qml'
28--- plugins/ar/qml/Keyboard_ar_url.qml 2014-11-27 16:57:43 +0000
29+++ plugins/ar/qml/Keyboard_ar_url.qml 2015-03-11 23:05:35 +0000
30@@ -90,7 +90,7 @@
31 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
32 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
33 UrlKey { id: urlKey; label: ".eg"; extended: [".com", ".iq", ".lb", ".sa", ".sy", ".jo", ".ye"]; anchors.right: dotKey.left; height: parent.height; }
34- CharKey { id: dotKey; label: "."; shifted: "ذ"; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: specialChar.left; height: parent.height; }
35+ CharKey { id: dotKey; label: "."; shifted: "ذ"; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: specialChar.left; height: parent.height; }
36 CharKey { id: specialChar; label: "ط"; anchors.right: enterKey.left; height: parent.height; }
37 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
38 }
39
40=== modified file 'plugins/ar/qml/Keyboard_ar_url_search.qml'
41--- plugins/ar/qml/Keyboard_ar_url_search.qml 2014-11-27 16:57:43 +0000
42+++ plugins/ar/qml/Keyboard_ar_url_search.qml 2015-03-11 23:05:35 +0000
43@@ -93,7 +93,7 @@
44 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
45 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
46 UrlKey { id: urlKey; label: ".eg"; extended: [".com", ".iq", ".lb", ".sa", ".sy", ".jo", ".ye"]; anchors.right: dotKey.left; height: parent.height; }
47- CharKey { id: dotKey; label: "."; shifted: "ذ"; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: specialChar.left; height: parent.height; }
48+ CharKey { id: dotKey; label: "."; shifted: "ذ"; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: specialChar.left; height: parent.height; }
49 CharKey { id: specialChar; label: "ط"; anchors.right: enterKey.left; height: parent.height; }
50 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
51 }
52
53=== modified file 'plugins/az/qml/Keyboard_az.qml'
54--- plugins/az/qml/Keyboard_az.qml 2014-11-14 16:53:41 +0000
55+++ plugins/az/qml/Keyboard_az.qml 2015-03-11 23:05:35 +0000
56@@ -89,9 +89,9 @@
57
58 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
59 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
60- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
61+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
62 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
63- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
64+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
65 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
66 }
67 } // column
68
69=== modified file 'plugins/az/qml/Keyboard_az_email.qml'
70--- plugins/az/qml/Keyboard_az_email.qml 2014-11-14 16:53:41 +0000
71+++ plugins/az/qml/Keyboard_az_email.qml 2015-03-11 23:05:35 +0000
72@@ -92,7 +92,7 @@
73 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
74 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
75 UrlKey { id: urlKey; label: ".com"; extended: [".az", ".co.uk", ".net", ".org", ".edu", ".gov", ".ac.uk"]; anchors.right: dotKey.left; height: parent.height; }
76- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
77+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
78 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
79 }
80 } // column
81
82=== modified file 'plugins/az/qml/Keyboard_az_url.qml'
83--- plugins/az/qml/Keyboard_az_url.qml 2014-11-14 16:53:41 +0000
84+++ plugins/az/qml/Keyboard_az_url.qml 2015-03-11 23:05:35 +0000
85@@ -91,7 +91,7 @@
86 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
87 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
88 UrlKey { id: urlKey; label: ".com"; extended: [".az", ".co.uk", ".net", ".org", ".edu", ".gov", ".ac.uk"]; anchors.right: dotKey.left; height: parent.height; }
89- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
90+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
91 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
92 }
93 } // column
94
95=== modified file 'plugins/az/qml/Keyboard_az_url_search.qml'
96--- plugins/az/qml/Keyboard_az_url_search.qml 2014-11-14 16:53:41 +0000
97+++ plugins/az/qml/Keyboard_az_url_search.qml 2015-03-11 23:05:35 +0000
98@@ -93,7 +93,7 @@
99 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
100 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
101 UrlKey { id: urlKey; label: ".com"; extended: [".az", ".co.uk", ".net", ".org", ".edu", ".gov", ".ac.uk"]; anchors.right: dotKey.left; height: parent.height; }
102- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
103+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
104 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
105 }
106 } // column
107
108=== modified file 'plugins/bs/qml/Keyboard_bs.qml'
109--- plugins/bs/qml/Keyboard_bs.qml 2014-10-24 14:42:34 +0000
110+++ plugins/bs/qml/Keyboard_bs.qml 2015-03-11 23:05:35 +0000
111@@ -83,9 +83,9 @@
112
113 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
114 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
115- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
116+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
117 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
118- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
119+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
120 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
121 }
122 } // column
123
124=== modified file 'plugins/bs/qml/Keyboard_bs_email.qml'
125--- plugins/bs/qml/Keyboard_bs_email.qml 2014-10-24 21:49:09 +0000
126+++ plugins/bs/qml/Keyboard_bs_email.qml 2015-03-11 23:05:35 +0000
127@@ -86,7 +86,7 @@
128 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
129 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
130 UrlKey { id: urlKey; label: ".com"; extended: [".ba", "com.ba", ".net", ".org", ".edu.ba", ".gov.ba"]; anchors.right: dotKey.left; height: parent.height; }
131- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
132+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
133 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
134 }
135 } // column
136
137=== modified file 'plugins/bs/qml/Keyboard_bs_url.qml'
138--- plugins/bs/qml/Keyboard_bs_url.qml 2014-10-24 21:49:09 +0000
139+++ plugins/bs/qml/Keyboard_bs_url.qml 2015-03-11 23:05:35 +0000
140@@ -85,7 +85,7 @@
141 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
142 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
143 UrlKey { id: urlKey; label: ".com"; extended: [".ba", "com.ba", ".net", ".org", ".edu.ba", ".gov.ba"]; anchors.right: dotKey.left; height: parent.height; }
144- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
145+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
146 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
147 }
148 } // column
149
150=== modified file 'plugins/bs/qml/Keyboard_bs_url_search.qml'
151--- plugins/bs/qml/Keyboard_bs_url_search.qml 2014-11-14 16:50:54 +0000
152+++ plugins/bs/qml/Keyboard_bs_url_search.qml 2015-03-11 23:05:35 +0000
153@@ -87,7 +87,7 @@
154 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
155 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
156 UrlKey { id: urlKey; label: ".com"; extended: [".ba", "com.ba", ".net", ".org", ".edu.ba", ".gov.ba"]; anchors.right: dotKey.left; height: parent.height; }
157- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
158+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
159 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
160 }
161 } // column
162
163=== modified file 'plugins/ca/qml/Keyboard_ca.qml'
164--- plugins/ca/qml/Keyboard_ca.qml 2015-02-13 06:28:21 +0000
165+++ plugins/ca/qml/Keyboard_ca.qml 2015-03-11 23:05:35 +0000
166@@ -84,9 +84,9 @@
167
168 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
169 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
170- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'","-",";",":"]; anchors.left: languageMenuButton.right; height: parent.height; }
171+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "«","»", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "«","»", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
172 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
173- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?","!",'"',"(",")","«","»", "·", "¿", "¡"]; extendedShifted: ["?","!",'"',"(",")","«","»", "·", "¿", "¡"]; anchors.right: enterKey.left; height: parent.height; }
174+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?","!","-", "_", "+", "%","#","/", "·", "¿", "¡"]; extendedShifted: ["?","!",'"',"(",")", "·", "¿", "¡"]; anchors.right: enterKey.left; height: parent.height; }
175 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
176 }
177 } // column
178
179=== modified file 'plugins/ca/qml/Keyboard_ca_email.qml'
180--- plugins/ca/qml/Keyboard_ca_email.qml 2015-02-13 06:43:48 +0000
181+++ plugins/ca/qml/Keyboard_ca_email.qml 2015-03-11 23:05:35 +0000
182@@ -87,7 +87,7 @@
183 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
184 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
185 UrlKey { id: urlKey; label: ".com"; extended: [".cat", ".ad", ".es"]; anchors.right: dotKey.left; height: parent.height; }
186- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?","!",'"',"(",")","«","»", "·", "¿", "¡"]; extendedShifted: ["?","!",'"',"(",")","«","»", "·", "¿", "¡"]; anchors.right: enterKey.left; height: parent.height; }
187+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?","!","-", "_", "+", "%","#","/", "·", "¿", "¡"]; extendedShifted: ["?","!",'"',"(",")", "·", "¿", "¡"]; anchors.right: enterKey.left; height: parent.height; }
188 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
189 }
190 } // column
191
192=== modified file 'plugins/ca/qml/Keyboard_ca_url.qml'
193--- plugins/ca/qml/Keyboard_ca_url.qml 2015-02-13 06:43:48 +0000
194+++ plugins/ca/qml/Keyboard_ca_url.qml 2015-03-11 23:05:35 +0000
195@@ -86,7 +86,7 @@
196 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
197 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
198 UrlKey { id: urlKey; label: ".com"; extended: [".cat", ".ad", ".es"]; anchors.right: dotKey.left; height: parent.height; }
199- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?","!",'"',"(",")","«","»", "·", "¿", "¡"]; extendedShifted: ["?","!",'"',"(",")","«","»", "·", "¿", "¡"]; anchors.right: enterKey.left; height: parent.height; }
200+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?","!","-", "_", "+", "%","#","/", "·", "¿", "¡"]; extendedShifted: ["?","!",'"',"(",")", "·", "¿", "¡"]; anchors.right: enterKey.left; height: parent.height; }
201 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
202 }
203 } // column
204
205=== modified file 'plugins/cs/qml/Keyboard_cs.qml'
206--- plugins/cs/qml/Keyboard_cs.qml 2014-09-26 13:22:23 +0000
207+++ plugins/cs/qml/Keyboard_cs.qml 2015-03-11 23:05:35 +0000
208@@ -84,9 +84,9 @@
209
210 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
211 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
212- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
213+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
214 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
215- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
216+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
217 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
218 }
219 } // column
220
221=== modified file 'plugins/cs/qml/Keyboard_cs_email.qml'
222--- plugins/cs/qml/Keyboard_cs_email.qml 2014-11-27 16:57:43 +0000
223+++ plugins/cs/qml/Keyboard_cs_email.qml 2015-03-11 23:05:35 +0000
224@@ -87,7 +87,7 @@
225 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
226 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
227 UrlKey { id: urlKey; label: ".cz"; extended: [".com", ".sk"];anchors.right: dotKey.left; height: parent.height; }
228- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
229+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
230 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
231 }
232 } // column
233
234=== modified file 'plugins/cs/qml/Keyboard_cs_url.qml'
235--- plugins/cs/qml/Keyboard_cs_url.qml 2014-11-27 16:57:43 +0000
236+++ plugins/cs/qml/Keyboard_cs_url.qml 2015-03-11 23:05:35 +0000
237@@ -86,7 +86,7 @@
238 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
239 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
240 UrlKey { id: urlKey; label: ".cz"; extended: [".com", ".sk"]; anchors.right: dotKey.left; height: parent.height; }
241- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
242+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
243 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
244 }
245 } // column
246
247=== modified file 'plugins/cs/qml/Keyboard_cs_url_search.qml'
248--- plugins/cs/qml/Keyboard_cs_url_search.qml 2014-11-27 16:57:43 +0000
249+++ plugins/cs/qml/Keyboard_cs_url_search.qml 2015-03-11 23:05:35 +0000
250@@ -87,7 +87,7 @@
251 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
252 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
253 UrlKey { id: urlKey; label: ".cz"; extended: [".com", ".sk"]; anchors.right: dotKey.left; height: parent.height; }
254- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
255+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
256 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
257 }
258 } // column
259
260=== modified file 'plugins/da/qml/Keyboard_da.qml'
261--- plugins/da/qml/Keyboard_da.qml 2014-09-26 13:22:23 +0000
262+++ plugins/da/qml/Keyboard_da.qml 2015-03-11 23:05:35 +0000
263@@ -85,9 +85,9 @@
264
265 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
266 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
267- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
268+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
269 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
270- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: umlaut.left; height: parent.height; }
271+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: umlaut.left; height: parent.height; }
272 CharKey { id: umlaut; label: "ø"; shifted: "Ø"; anchors.right: enterKey.left; height: parent.height; }
273 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
274 }
275
276=== modified file 'plugins/da/qml/Keyboard_da_email.qml'
277--- plugins/da/qml/Keyboard_da_email.qml 2014-11-27 16:57:43 +0000
278+++ plugins/da/qml/Keyboard_da_email.qml 2015-03-11 23:05:35 +0000
279@@ -87,7 +87,7 @@
280 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
281 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
282 UrlKey { id: urlKey; label: ".dk"; extended: [".com", ".fo", ".gl"]; anchors.right: dotKey.left; height: parent.height; }
283- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: umlaut.left; height: parent.height; }
284+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: umlaut.left; height: parent.height; }
285 CharKey { id: umlaut; label: "ø"; shifted: "Ø"; anchors.right: enterKey.left; height: parent.height; }
286 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
287 }
288
289=== modified file 'plugins/da/qml/Keyboard_da_url.qml'
290--- plugins/da/qml/Keyboard_da_url.qml 2014-11-27 16:57:43 +0000
291+++ plugins/da/qml/Keyboard_da_url.qml 2015-03-11 23:05:35 +0000
292@@ -86,7 +86,7 @@
293 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
294 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
295 UrlKey { id: urlKey; label: ".dk"; extended: [".com", ".fo", ".gl"]; anchors.right: dotKey.left; height: parent.height; }
296- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: umlaut.left; height: parent.height; }
297+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: umlaut.left; height: parent.height; }
298 CharKey { id: umlaut; label: "ø"; shifted: "Ø"; anchors.right: enterKey.left; height: parent.height; }
299 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
300 }
301
302=== modified file 'plugins/da/qml/Keyboard_da_url_search.qml'
303--- plugins/da/qml/Keyboard_da_url_search.qml 2014-11-27 16:57:43 +0000
304+++ plugins/da/qml/Keyboard_da_url_search.qml 2015-03-11 23:05:35 +0000
305@@ -87,7 +87,7 @@
306 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
307 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
308 UrlKey { id: urlKey; label: ".dk"; extended: [".com", ".fo", ".gl"]; anchors.right: dotKey.left; height: parent.height; }
309- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: umlaut.left; height: parent.height; }
310+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: umlaut.left; height: parent.height; }
311 CharKey { id: umlaut; label: "ø"; shifted: "Ø"; anchors.right: enterKey.left; height: parent.height; }
312 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
313 }
314
315=== modified file 'plugins/de/qml/Keyboard_de.qml'
316--- plugins/de/qml/Keyboard_de.qml 2014-09-26 13:22:23 +0000
317+++ plugins/de/qml/Keyboard_de.qml 2015-03-11 23:05:35 +0000
318@@ -85,9 +85,9 @@
319
320 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
321 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
322- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
323+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
324 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
325- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: umlaut.left; height: parent.height; }
326+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: umlaut.left; height: parent.height; }
327 CharKey { id: umlaut; label: "ö"; shifted: "Ö"; anchors.right: enterKey.left; height: parent.height; }
328 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
329 }
330
331=== modified file 'plugins/de/qml/Keyboard_de_email.qml'
332--- plugins/de/qml/Keyboard_de_email.qml 2014-11-27 16:57:43 +0000
333+++ plugins/de/qml/Keyboard_de_email.qml 2015-03-11 23:05:35 +0000
334@@ -88,7 +88,7 @@
335 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
336 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
337 UrlKey { id: urlKey; label: ".de"; extended: [".com", ".at", ".ch"]; anchors.right: dotKey.left; height: parent.height; }
338- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: umlaut.left; height: parent.height; }
339+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: umlaut.left; height: parent.height; }
340 CharKey { id: umlaut; label: "ö"; shifted: "Ö"; anchors.right: enterKey.left; height: parent.height; }
341 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
342 }
343
344=== modified file 'plugins/de/qml/Keyboard_de_url.qml'
345--- plugins/de/qml/Keyboard_de_url.qml 2014-11-27 16:57:43 +0000
346+++ plugins/de/qml/Keyboard_de_url.qml 2015-03-11 23:05:35 +0000
347@@ -87,7 +87,7 @@
348 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
349 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
350 UrlKey { id: urlKey; label: ".de"; extended: [".com", ".at", ".ch"]; anchors.right: dotKey.left; height: parent.height; }
351- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: umlaut.left; height: parent.height; }
352+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: umlaut.left; height: parent.height; }
353 CharKey { id: umlaut; label: "ö"; shifted: "Ö"; anchors.right: enterKey.left; height: parent.height; }
354 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
355 }
356
357=== modified file 'plugins/de/qml/Keyboard_de_url_search.qml'
358--- plugins/de/qml/Keyboard_de_url_search.qml 2014-11-27 16:57:43 +0000
359+++ plugins/de/qml/Keyboard_de_url_search.qml 2015-03-11 23:05:35 +0000
360@@ -88,7 +88,7 @@
361 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
362 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
363 UrlKey { id: urlKey; label: ".de"; extended: [".com", ".at", ".ch"]; anchors.right: dotKey.left; height: parent.height; }
364- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: umlaut.left; height: parent.height; }
365+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: umlaut.left; height: parent.height; }
366 CharKey { id: umlaut; label: "ö"; shifted: "Ö"; anchors.right: enterKey.left; height: parent.height; }
367 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
368 }
369
370=== modified file 'plugins/en/qml/Keyboard_en.qml'
371--- plugins/en/qml/Keyboard_en.qml 2014-09-26 13:22:23 +0000
372+++ plugins/en/qml/Keyboard_en.qml 2015-03-11 23:05:35 +0000
373@@ -83,9 +83,9 @@
374
375 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
376 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
377- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
378+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
379 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
380- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
381+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
382 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
383 }
384 } // column
385
386=== modified file 'plugins/en/qml/Keyboard_en_email.qml'
387--- plugins/en/qml/Keyboard_en_email.qml 2014-09-26 15:49:22 +0000
388+++ plugins/en/qml/Keyboard_en_email.qml 2015-03-11 23:05:35 +0000
389@@ -86,7 +86,7 @@
390 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
391 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
392 UrlKey { id: urlKey; label: ".com"; extended: [".co.uk", ".net", ".org", ".edu", ".gov", ".ac.uk"]; anchors.right: dotKey.left; height: parent.height; }
393- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
394+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
395 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
396 }
397 } // column
398
399=== modified file 'plugins/en/qml/Keyboard_en_url.qml'
400--- plugins/en/qml/Keyboard_en_url.qml 2014-09-26 13:22:23 +0000
401+++ plugins/en/qml/Keyboard_en_url.qml 2015-03-11 23:05:35 +0000
402@@ -85,7 +85,7 @@
403 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
404 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
405 UrlKey { id: urlKey; label: ".com"; extended: [".co.uk", ".net", ".org", ".edu", ".gov", ".ac.uk"]; anchors.right: dotKey.left; height: parent.height; }
406- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
407+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
408 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
409 }
410 } // column
411
412=== modified file 'plugins/en/qml/Keyboard_en_url_search.qml'
413--- plugins/en/qml/Keyboard_en_url_search.qml 2014-09-26 13:22:23 +0000
414+++ plugins/en/qml/Keyboard_en_url_search.qml 2015-03-11 23:05:35 +0000
415@@ -87,7 +87,7 @@
416 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
417 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
418 UrlKey { id: urlKey; label: ".com"; extended: [".co.uk", ".net", ".org", ".edu", ".gov", ".ac.uk"]; anchors.right: dotKey.left; height: parent.height; }
419- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
420+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
421 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
422 }
423 } // column
424
425=== modified file 'plugins/es/qml/Keyboard_es.qml'
426--- plugins/es/qml/Keyboard_es.qml 2014-09-26 13:22:23 +0000
427+++ plugins/es/qml/Keyboard_es.qml 2015-03-11 23:05:35 +0000
428@@ -84,9 +84,9 @@
429
430 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
431 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
432- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
433+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
434 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
435- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
436+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
437 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
438 }
439 } // column
440
441=== modified file 'plugins/es/qml/Keyboard_es_email.qml'
442--- plugins/es/qml/Keyboard_es_email.qml 2014-11-27 16:57:43 +0000
443+++ plugins/es/qml/Keyboard_es_email.qml 2015-03-11 23:05:35 +0000
444@@ -87,7 +87,7 @@
445 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
446 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
447 UrlKey { id: urlKey; label: ".es"; extended: [".com", ".mx", ".co", ".ar", ".pe", ".ve", ".cl"]; anchors.right: dotKey.left; height: parent.height; }
448- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
449+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
450 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
451 }
452 } // column
453
454=== modified file 'plugins/es/qml/Keyboard_es_url.qml'
455--- plugins/es/qml/Keyboard_es_url.qml 2014-11-27 16:57:43 +0000
456+++ plugins/es/qml/Keyboard_es_url.qml 2015-03-11 23:05:35 +0000
457@@ -86,7 +86,7 @@
458 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
459 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
460 UrlKey { id: urlKey; label: ".es"; extended: [".com", ".mx", ".co", ".ar", ".pe", ".ve", ".cl"]; anchors.right: dotKey.left; height: parent.height; }
461- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
462+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
463 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
464 }
465 } // column
466
467=== modified file 'plugins/es/qml/Keyboard_es_url_search.qml'
468--- plugins/es/qml/Keyboard_es_url_search.qml 2014-11-27 16:57:43 +0000
469+++ plugins/es/qml/Keyboard_es_url_search.qml 2015-03-11 23:05:35 +0000
470@@ -87,7 +87,7 @@
471 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
472 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
473 UrlKey { id: urlKey; label: ".es"; extended: [".com", ".mx", ".co", ".ar", ".pe", ".ve", ".cl"]; anchors.right: dotKey.left; height: parent.height; }
474- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
475+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
476 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
477 }
478 } // column
479
480=== modified file 'plugins/fi/qml/Keyboard_fi.qml'
481--- plugins/fi/qml/Keyboard_fi.qml 2014-09-26 13:22:23 +0000
482+++ plugins/fi/qml/Keyboard_fi.qml 2015-03-11 23:05:35 +0000
483@@ -84,9 +84,9 @@
484
485 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
486 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
487- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
488+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
489 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
490- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: umlaut.left; height: parent.height; }
491+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: umlaut.left; height: parent.height; }
492 CharKey { id: umlaut; label: "ö"; shifted: "Ö"; anchors.right: enterKey.left; height: parent.height; }
493 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
494 }
495
496=== modified file 'plugins/fr/qml/Keyboard_fr.qml'
497--- plugins/fr/qml/Keyboard_fr.qml 2014-09-26 13:22:23 +0000
498+++ plugins/fr/qml/Keyboard_fr.qml 2015-03-11 23:05:35 +0000
499@@ -84,9 +84,9 @@
500
501 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
502 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
503- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
504+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
505 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
506- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
507+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
508 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
509 }
510 } // column
511
512=== modified file 'plugins/fr/qml/Keyboard_fr_email.qml'
513--- plugins/fr/qml/Keyboard_fr_email.qml 2014-11-27 16:57:43 +0000
514+++ plugins/fr/qml/Keyboard_fr_email.qml 2015-03-11 23:05:35 +0000
515@@ -87,7 +87,7 @@
516 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
517 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
518 UrlKey { id: urlKey; label: ".fr"; extended: [".com", ".ca", ".cd", ".ci", ".ch", ".be", ".ht"]; anchors.right: dotKey.left; height: parent.height; }
519- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
520+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
521 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
522 }
523 } // column
524
525=== modified file 'plugins/fr/qml/Keyboard_fr_url.qml'
526--- plugins/fr/qml/Keyboard_fr_url.qml 2014-11-27 16:57:43 +0000
527+++ plugins/fr/qml/Keyboard_fr_url.qml 2015-03-11 23:05:35 +0000
528@@ -86,7 +86,7 @@
529 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
530 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
531 UrlKey { id: urlKey; label: ".fr"; extended: [".com", ".ca", ".cd", ".ci", ".ch", ".be", ".ht"]; anchors.right: dotKey.left; height: parent.height; }
532- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
533+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
534 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
535 }
536 } // column
537
538=== modified file 'plugins/fr/qml/Keyboard_fr_url_search.qml'
539--- plugins/fr/qml/Keyboard_fr_url_search.qml 2014-11-27 16:57:43 +0000
540+++ plugins/fr/qml/Keyboard_fr_url_search.qml 2015-03-11 23:05:35 +0000
541@@ -87,7 +87,7 @@
542 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
543 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
544 UrlKey { id: urlKey; label: ".fr"; extended: [".com", ".ca", ".cd", ".ci", ".ch", ".be", ".ht"]; anchors.right: dotKey.left; height: parent.height; }
545- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
546+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
547 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
548 }
549 } // column
550
551=== modified file 'plugins/he/qml/Keyboard_he.qml'
552--- plugins/he/qml/Keyboard_he.qml 2014-09-26 15:51:12 +0000
553+++ plugins/he/qml/Keyboard_he.qml 2015-03-11 23:05:35 +0000
554@@ -83,9 +83,9 @@
555
556 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
557 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
558- CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", ";", ":", "׳", "״"]; extendedShifted: ["'", ";", ":", "׳", "״"]; anchors.left: languageMenuButton.right; height: parent.height; }
559+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")", "׳", "״"]; extendedShifted: ["'", ";", ":", "׳", "״"]; anchors.left: languageMenuButton.right; height: parent.height; }
560 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
561- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "־"]; extendedShifted: ["?", "!", "־"]; anchors.right: enterKey.left; height: parent.height; }
562+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/", "־"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/", "־"]; anchors.right: enterKey.left; height: parent.height; }
563 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
564 }
565 } // column
566
567=== modified file 'plugins/he/qml/Keyboard_he_email.qml'
568--- plugins/he/qml/Keyboard_he_email.qml 2014-11-27 16:57:43 +0000
569+++ plugins/he/qml/Keyboard_he_email.qml 2015-03-11 23:05:35 +0000
570@@ -86,7 +86,7 @@
571 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
572 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
573 UrlKey { id: urlKey; label: ".il"; extended: [".com"]; anchors.right: dotKey.left; height: parent.height; }
574- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "־"]; extendedShifted: ["?", "!", "־"]; anchors.right: enterKey.left; height: parent.height; }
575+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/", "־"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/", "־"]; anchors.right: enterKey.left; height: parent.height; }
576 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
577 }
578 } // column
579
580=== modified file 'plugins/he/qml/Keyboard_he_url.qml'
581--- plugins/he/qml/Keyboard_he_url.qml 2014-11-27 16:57:43 +0000
582+++ plugins/he/qml/Keyboard_he_url.qml 2015-03-11 23:05:35 +0000
583@@ -85,7 +85,7 @@
584 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
585 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
586 UrlKey { id: urlKey; label: ".il"; extended: [".com"]; anchors.right: dotKey.left; height: parent.height; }
587- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "־"]; extendedShifted: ["?", "!", "־"]; anchors.right: enterKey.left; height: parent.height; }
588+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/", "־"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/", "־"]; anchors.right: enterKey.left; height: parent.height; }
589 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
590 }
591 } // column
592
593=== modified file 'plugins/he/qml/Keyboard_he_url_search.qml'
594--- plugins/he/qml/Keyboard_he_url_search.qml 2014-11-27 16:57:43 +0000
595+++ plugins/he/qml/Keyboard_he_url_search.qml 2015-03-11 23:05:35 +0000
596@@ -86,7 +86,7 @@
597 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
598 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
599 UrlKey { id: urlKey; label: ".il"; extended: [".com"]; anchors.right: dotKey.left; height: parent.height; }
600- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "־"]; extendedShifted: ["?", "!", "־"]; anchors.right: enterKey.left; height: parent.height; }
601+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/", "־"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/", "־"]; anchors.right: enterKey.left; height: parent.height; }
602 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
603 }
604 } // column
605
606=== modified file 'plugins/hr/qml/Keyboard_hr.qml'
607--- plugins/hr/qml/Keyboard_hr.qml 2014-10-29 11:17:42 +0000
608+++ plugins/hr/qml/Keyboard_hr.qml 2015-03-11 23:05:35 +0000
609@@ -83,9 +83,9 @@
610
611 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
612 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
613- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
614+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
615 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
616- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
617+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
618 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
619 }
620 } // column
621
622=== modified file 'plugins/hr/qml/Keyboard_hr_email.qml'
623--- plugins/hr/qml/Keyboard_hr_email.qml 2014-10-29 11:17:42 +0000
624+++ plugins/hr/qml/Keyboard_hr_email.qml 2015-03-11 23:05:35 +0000
625@@ -86,7 +86,7 @@
626 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
627 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
628 UrlKey { id: urlKey; label: ".com"; extended: [".ba", "com.ba", ".net", ".org", ".edu.ba", ".gov.ba"]; anchors.right: dotKey.left; height: parent.height; }
629- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
630+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
631 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
632 }
633 } // column
634
635=== modified file 'plugins/hr/qml/Keyboard_hr_url.qml'
636--- plugins/hr/qml/Keyboard_hr_url.qml 2014-10-29 11:17:42 +0000
637+++ plugins/hr/qml/Keyboard_hr_url.qml 2015-03-11 23:05:35 +0000
638@@ -85,7 +85,7 @@
639 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
640 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
641 UrlKey { id: urlKey; label: ".com"; extended: [".ba", "com.ba", ".net", ".org", ".edu.ba", ".gov.ba"]; anchors.right: dotKey.left; height: parent.height; }
642- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
643+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
644 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
645 }
646 } // column
647
648=== modified file 'plugins/hr/qml/Keyboard_hr_url_search.qml'
649--- plugins/hr/qml/Keyboard_hr_url_search.qml 2014-11-14 16:50:54 +0000
650+++ plugins/hr/qml/Keyboard_hr_url_search.qml 2015-03-11 23:05:35 +0000
651@@ -87,7 +87,7 @@
652 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
653 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
654 UrlKey { id: urlKey; label: ".com"; extended: [".ba", "com.ba", ".net", ".org", ".edu.ba", ".gov.ba"]; anchors.right: dotKey.left; height: parent.height; }
655- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
656+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
657 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
658 }
659 } // column
660
661=== modified file 'plugins/hu/qml/Keyboard_hu.qml'
662--- plugins/hu/qml/Keyboard_hu.qml 2014-09-26 13:22:23 +0000
663+++ plugins/hu/qml/Keyboard_hu.qml 2015-03-11 23:05:35 +0000
664@@ -83,9 +83,9 @@
665
666 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
667 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
668- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
669+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
670 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
671- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
672+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
673 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
674 }
675 } // column
676
677=== modified file 'plugins/hu/qml/Keyboard_hu_email.qml'
678--- plugins/hu/qml/Keyboard_hu_email.qml 2014-11-27 16:57:43 +0000
679+++ plugins/hu/qml/Keyboard_hu_email.qml 2015-03-11 23:05:35 +0000
680@@ -86,7 +86,7 @@
681 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
682 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
683 UrlKey { id: urlKey; label: ".hu"; extended: [".com"]; anchors.right: dotKey.left; height: parent.height; }
684- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
685+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
686 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
687 }
688 } // column
689
690=== modified file 'plugins/hu/qml/Keyboard_hu_url.qml'
691--- plugins/hu/qml/Keyboard_hu_url.qml 2014-11-27 16:57:43 +0000
692+++ plugins/hu/qml/Keyboard_hu_url.qml 2015-03-11 23:05:35 +0000
693@@ -85,7 +85,7 @@
694 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
695 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
696 UrlKey { id: urlKey; label: ".hu"; extended: [".com"]; anchors.right: dotKey.left; height: parent.height; }
697- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
698+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
699 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
700 }
701 } // column
702
703=== modified file 'plugins/hu/qml/Keyboard_hu_url_search.qml'
704--- plugins/hu/qml/Keyboard_hu_url_search.qml 2014-11-27 16:57:43 +0000
705+++ plugins/hu/qml/Keyboard_hu_url_search.qml 2015-03-11 23:05:35 +0000
706@@ -86,7 +86,7 @@
707 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
708 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
709 UrlKey { id: urlKey; label: ".hu"; extended: [".com"]; anchors.right: dotKey.left; height: parent.height; }
710- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
711+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
712 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
713 }
714 } // column
715
716=== modified file 'plugins/it/qml/Keyboard_it.qml'
717--- plugins/it/qml/Keyboard_it.qml 2014-09-26 13:22:23 +0000
718+++ plugins/it/qml/Keyboard_it.qml 2015-03-11 23:05:35 +0000
719@@ -83,9 +83,9 @@
720
721 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
722 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
723- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
724+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
725 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
726- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
727+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
728 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
729 }
730 } // column
731
732=== modified file 'plugins/it/qml/Keyboard_it_email.qml'
733--- plugins/it/qml/Keyboard_it_email.qml 2014-11-27 16:57:43 +0000
734+++ plugins/it/qml/Keyboard_it_email.qml 2015-03-11 23:05:35 +0000
735@@ -86,7 +86,7 @@
736 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
737 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
738 UrlKey { id: urlKey; label: ".it"; extended: [".com", ".ch", ".va", ".sm"]; anchors.right: dotKey.left; height: parent.height; }
739- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
740+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
741 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
742 }
743 } // column
744
745=== modified file 'plugins/it/qml/Keyboard_it_url.qml'
746--- plugins/it/qml/Keyboard_it_url.qml 2014-11-27 16:57:43 +0000
747+++ plugins/it/qml/Keyboard_it_url.qml 2015-03-11 23:05:35 +0000
748@@ -85,7 +85,7 @@
749 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
750 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
751 UrlKey { id: urlKey; label: ".it"; extended: [".com", ".ch", ".va", ".sm"]; anchors.right: dotKey.left; height: parent.height; }
752- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
753+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
754 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
755 }
756 } // column
757
758=== modified file 'plugins/it/qml/Keyboard_it_url_search.qml'
759--- plugins/it/qml/Keyboard_it_url_search.qml 2014-11-27 16:57:43 +0000
760+++ plugins/it/qml/Keyboard_it_url_search.qml 2015-03-11 23:05:35 +0000
761@@ -86,7 +86,7 @@
762 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
763 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
764 UrlKey { id: urlKey; label: ".it"; extended: [".com", ".ch", ".va", ".sm"]; anchors.right: dotKey.left; height: parent.height; }
765- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
766+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
767 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
768 }
769 } // column
770
771=== modified file 'plugins/nl/qml/Keyboard_nl.qml'
772--- plugins/nl/qml/Keyboard_nl.qml 2014-09-26 13:22:23 +0000
773+++ plugins/nl/qml/Keyboard_nl.qml 2015-03-11 23:05:35 +0000
774@@ -83,9 +83,9 @@
775
776 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
777 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
778- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
779+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
780 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
781- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
782+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
783 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
784 }
785 } // column
786
787=== modified file 'plugins/nl/qml/Keyboard_nl_email.qml'
788--- plugins/nl/qml/Keyboard_nl_email.qml 2014-11-27 16:57:43 +0000
789+++ plugins/nl/qml/Keyboard_nl_email.qml 2015-03-11 23:05:35 +0000
790@@ -86,7 +86,7 @@
791 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
792 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
793 UrlKey { id: urlKey; label: ".nl"; extended: [".com", ".be", ".an", ".sx", ".sr", ".aw", ".cw"]; anchors.right: dotKey.left; height: parent.height; }
794- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
795+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
796 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
797 }
798 } // column
799
800=== modified file 'plugins/nl/qml/Keyboard_nl_url.qml'
801--- plugins/nl/qml/Keyboard_nl_url.qml 2014-11-27 16:57:43 +0000
802+++ plugins/nl/qml/Keyboard_nl_url.qml 2015-03-11 23:05:35 +0000
803@@ -85,7 +85,7 @@
804 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
805 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
806 UrlKey { id: urlKey; label: ".nl"; extended: [".com", ".be", ".an", ".sx", ".sr", ".aw", ".cw"]; anchors.right: dotKey.left; height: parent.height; }
807- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
808+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
809 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
810 }
811 } // column
812
813=== modified file 'plugins/nl/qml/Keyboard_nl_url_search.qml'
814--- plugins/nl/qml/Keyboard_nl_url_search.qml 2014-11-27 16:57:43 +0000
815+++ plugins/nl/qml/Keyboard_nl_url_search.qml 2015-03-11 23:05:35 +0000
816@@ -86,7 +86,7 @@
817 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
818 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
819 UrlKey { id: urlKey; label: ".nl"; extended: [".com", ".be", ".an", ".sx", ".sr", ".aw", ".cw"]; anchors.right: dotKey.left; height: parent.height; }
820- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
821+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
822 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
823 }
824 } // column
825
826=== modified file 'plugins/pl/qml/Keyboard_pl.qml'
827--- plugins/pl/qml/Keyboard_pl.qml 2014-09-26 13:22:23 +0000
828+++ plugins/pl/qml/Keyboard_pl.qml 2015-03-11 23:05:35 +0000
829@@ -87,9 +87,9 @@
830
831 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
832 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
833- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
834+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
835 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
836- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
837+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
838 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
839 }
840 } // column
841
842=== modified file 'plugins/pl/qml/Keyboard_pl_email.qml'
843--- plugins/pl/qml/Keyboard_pl_email.qml 2014-11-27 16:57:43 +0000
844+++ plugins/pl/qml/Keyboard_pl_email.qml 2015-03-11 23:05:35 +0000
845@@ -90,7 +90,7 @@
846 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
847 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
848 UrlKey { id: urlKey; label: ".pl"; extended: [".com"]; anchors.right: dotKey.left; height: parent.height; }
849- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
850+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
851 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
852 }
853 } // column
854
855=== modified file 'plugins/pl/qml/Keyboard_pl_url.qml'
856--- plugins/pl/qml/Keyboard_pl_url.qml 2014-11-27 16:57:43 +0000
857+++ plugins/pl/qml/Keyboard_pl_url.qml 2015-03-11 23:05:35 +0000
858@@ -89,7 +89,7 @@
859 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
860 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
861 UrlKey { id: urlKey; label: ".pl"; extended: [".com"]; anchors.right: dotKey.left; height: parent.height; }
862- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
863+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
864 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
865 }
866 } // column
867
868=== modified file 'plugins/pl/qml/Keyboard_pl_url_search.qml'
869--- plugins/pl/qml/Keyboard_pl_url_search.qml 2014-11-27 16:57:43 +0000
870+++ plugins/pl/qml/Keyboard_pl_url_search.qml 2015-03-11 23:05:35 +0000
871@@ -90,7 +90,7 @@
872 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
873 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
874 UrlKey { id: urlKey; label: ".pl"; extended: [".com"]; anchors.right: dotKey.left; height: parent.height; }
875- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
876+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
877 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
878 }
879 } // column
880
881=== modified file 'plugins/pt/qml/Keyboard_pt.qml'
882--- plugins/pt/qml/Keyboard_pt.qml 2014-09-26 13:22:23 +0000
883+++ plugins/pt/qml/Keyboard_pt.qml 2015-03-11 23:05:35 +0000
884@@ -84,9 +84,9 @@
885
886 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
887 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
888- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
889+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
890 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
891- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
892+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
893 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
894 }
895 } // column
896
897=== modified file 'plugins/pt/qml/Keyboard_pt_email.qml'
898--- plugins/pt/qml/Keyboard_pt_email.qml 2014-11-27 16:57:43 +0000
899+++ plugins/pt/qml/Keyboard_pt_email.qml 2015-03-11 23:05:35 +0000
900@@ -87,7 +87,7 @@
901 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
902 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
903 UrlKey { id: urlKey; label: ".com.br"; extended: [".com", ".pt", ".mz", ".ao", ".gw", ".tl"]; anchors.right: dotKey.left; height: parent.height; width: panel.keyWidth + units.gu(UI.emailLayoutUrlKeyPadding + 0.5); }
904- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
905+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
906 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
907 }
908 } // column
909
910=== modified file 'plugins/pt/qml/Keyboard_pt_url.qml'
911--- plugins/pt/qml/Keyboard_pt_url.qml 2014-11-27 16:57:43 +0000
912+++ plugins/pt/qml/Keyboard_pt_url.qml 2015-03-11 23:05:35 +0000
913@@ -86,7 +86,7 @@
914 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
915 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
916 UrlKey { id: urlKey; label: ".com.br"; extended: [".com", ".pt", ".mz", ".ao", ".gw", ".tl"]; anchors.right: dotKey.left; height: parent.height; width: panel.keyWidth + units.gu(UI.emailLayoutUrlKeyPadding + 0.5); }
917- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
918+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
919 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
920 }
921 } // column
922
923=== modified file 'plugins/pt/qml/Keyboard_pt_url_search.qml'
924--- plugins/pt/qml/Keyboard_pt_url_search.qml 2014-11-27 16:57:43 +0000
925+++ plugins/pt/qml/Keyboard_pt_url_search.qml 2015-03-11 23:05:35 +0000
926@@ -87,7 +87,7 @@
927 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
928 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
929 UrlKey { id: urlKey; label: ".com.br"; extended: [".com", ".pt", ".mz", ".ao", ".gw", ".tl"]; anchors.right: dotKey.left; height: parent.height; width: panel.keyWidth + units.gu(UI.emailLayoutUrlKeyPadding + 0.5); }
930- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
931+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
932 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
933 }
934 } // column
935
936=== modified file 'plugins/ru/qml/Keyboard_ru.qml'
937--- plugins/ru/qml/Keyboard_ru.qml 2014-09-26 13:22:23 +0000
938+++ plugins/ru/qml/Keyboard_ru.qml 2015-03-11 23:05:35 +0000
939@@ -89,9 +89,9 @@
940
941 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
942 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
943- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
944+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
945 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
946- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
947+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
948 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
949 }
950 } // column
951
952=== modified file 'plugins/ru/qml/Keyboard_ru_email.qml'
953--- plugins/ru/qml/Keyboard_ru_email.qml 2014-11-27 16:57:43 +0000
954+++ plugins/ru/qml/Keyboard_ru_email.qml 2015-03-11 23:05:35 +0000
955@@ -91,7 +91,7 @@
956 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
957 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
958 UrlKey { id: urlKey; label: ".ru"; extended: [".com", ".ua",".su",".kg",".рф",".укр",".by",".tj"]; anchors.right: dotKey.left; height: parent.height; }
959- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
960+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
961 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
962 }
963 } // column
964
965=== modified file 'plugins/ru/qml/Keyboard_ru_url.qml'
966--- plugins/ru/qml/Keyboard_ru_url.qml 2014-11-27 16:57:43 +0000
967+++ plugins/ru/qml/Keyboard_ru_url.qml 2015-03-11 23:05:35 +0000
968@@ -90,7 +90,7 @@
969 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
970 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
971 UrlKey { id: urlKey; label: ".ru"; extended: [".com", ".ua",".su",".kg",".рф","укр",".by",".tj"]; anchors.right: dotKey.left; height: parent.height; }
972- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
973+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
974 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
975 }
976 } // column
977
978=== modified file 'plugins/ru/qml/Keyboard_ru_url_search.qml'
979--- plugins/ru/qml/Keyboard_ru_url_search.qml 2014-11-27 16:57:43 +0000
980+++ plugins/ru/qml/Keyboard_ru_url_search.qml 2015-03-11 23:05:35 +0000
981@@ -91,7 +91,7 @@
982 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
983 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
984 UrlKey { id: urlKey; label: ".ru"; extended: [".com", ".ua",".su",".kg",".рф","укр",".by",".tj"]; anchors.right: dotKey.left; height: parent.height; }
985- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
986+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
987 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
988 }
989 } // column
990
991=== modified file 'plugins/sr/qml/Keyboard_sr.qml'
992--- plugins/sr/qml/Keyboard_sr.qml 2014-09-26 13:22:23 +0000
993+++ plugins/sr/qml/Keyboard_sr.qml 2015-03-11 23:05:35 +0000
994@@ -68,7 +68,7 @@
995 spacing: 0
996
997 ShiftKey { }
998- CharKey { label: ","; shifted: "/"; }
999+ CharKey { label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; }
1000 CharKey { label: "џ"; shifted: "Џ"; }
1001 CharKey { label: "ц"; shifted: "Ц"; }
1002 CharKey { label: "в"; shifted: "В"; }
1003@@ -76,7 +76,7 @@
1004 CharKey { label: "н"; shifted: "Н"; }
1005 CharKey { label: "м"; shifted: "М"; }
1006 CharKey { label: "ж"; shifted: "Ж"; }
1007- CharKey { label: "."; shifted: "."; }
1008+ CharKey { label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; }
1009 BackspaceKey { }
1010 }
1011
1012
1013=== modified file 'plugins/sr/qml/Keyboard_sr_email.qml'
1014--- plugins/sr/qml/Keyboard_sr_email.qml 2014-11-27 16:57:43 +0000
1015+++ plugins/sr/qml/Keyboard_sr_email.qml 2015-03-11 23:05:35 +0000
1016@@ -77,7 +77,7 @@
1017 CharKey { label: "н"; shifted: "Н"; }
1018 CharKey { label: "м"; shifted: "М"; }
1019 CharKey { label: "ж"; shifted: "Ж"; }
1020- CharKey { label: "."; shifted: "."; }
1021+ CharKey { label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; }
1022 BackspaceKey { }
1023 }
1024
1025
1026=== modified file 'plugins/sr/qml/Keyboard_sr_url.qml'
1027--- plugins/sr/qml/Keyboard_sr_url.qml 2014-11-27 16:57:43 +0000
1028+++ plugins/sr/qml/Keyboard_sr_url.qml 2015-03-11 23:05:35 +0000
1029@@ -77,7 +77,7 @@
1030 CharKey { label: "н"; shifted: "Н"; }
1031 CharKey { label: "м"; shifted: "М"; }
1032 CharKey { label: "ж"; shifted: "Ж"; }
1033- CharKey { label: "."; shifted: "."; }
1034+ CharKey { label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; }
1035 BackspaceKey { }
1036 }
1037
1038
1039=== modified file 'plugins/sr/qml/Keyboard_sr_url_search.qml'
1040--- plugins/sr/qml/Keyboard_sr_url_search.qml 2014-11-27 16:57:43 +0000
1041+++ plugins/sr/qml/Keyboard_sr_url_search.qml 2015-03-11 23:05:35 +0000
1042@@ -77,7 +77,7 @@
1043 CharKey { label: "н"; shifted: "Н"; }
1044 CharKey { label: "м"; shifted: "М"; }
1045 CharKey { label: "ж"; shifted: "Ж"; }
1046- CharKey { label: "."; shifted: "."; }
1047+ CharKey { label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; }
1048 BackspaceKey { }
1049 }
1050
1051
1052=== modified file 'plugins/sv/qml/Keyboard_sv.qml'
1053--- plugins/sv/qml/Keyboard_sv.qml 2014-09-26 13:22:23 +0000
1054+++ plugins/sv/qml/Keyboard_sv.qml 2015-03-11 23:05:35 +0000
1055@@ -86,9 +86,9 @@
1056
1057 SymbolShiftKey { id: symShiftKey; anchors.left: parent.left; height: parent.height; }
1058 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
1059- CharKey { id: commaKey; label: ","; shifted: "/"; extended: ["'", ";", ":"]; anchors.left: languageMenuButton.right; height: parent.height; }
1060+ CharKey { id: commaKey; label: ","; shifted: ","; extended: ["'", "\"", ";", ":", "@", "&", "(", ")"]; extendedShifted: ["'", "\"", ";", ":", "@", "&", "(", ")"]; anchors.left: languageMenuButton.right; height: parent.height; }
1061 SpaceKey { id: spaceKey; anchors.left: commaKey.right; anchors.right: dotKey.left; noMagnifier: true; height: parent.height; }
1062- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
1063+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
1064 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
1065 }
1066 } // column
1067
1068=== modified file 'plugins/sv/qml/Keyboard_sv_email.qml'
1069--- plugins/sv/qml/Keyboard_sv_email.qml 2014-11-27 16:57:43 +0000
1070+++ plugins/sv/qml/Keyboard_sv_email.qml 2015-03-11 23:05:35 +0000
1071@@ -89,7 +89,7 @@
1072 CharKey { id: atKey; label: "@"; shifted: "@"; anchors.left: languageMenuButton.right; height: parent.height; }
1073 SpaceKey { id: spaceKey; anchors.left: atKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
1074 UrlKey { id: urlKey; label: ".se"; extended: [".com", ".fi", ".ax"]; anchors.right: dotKey.left; height: parent.height; }
1075- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
1076+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
1077 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
1078
1079
1080
1081=== modified file 'plugins/sv/qml/Keyboard_sv_url.qml'
1082--- plugins/sv/qml/Keyboard_sv_url.qml 2014-11-27 16:57:43 +0000
1083+++ plugins/sv/qml/Keyboard_sv_url.qml 2015-03-11 23:05:35 +0000
1084@@ -88,7 +88,7 @@
1085 LanguageKey { id: languageMenuButton; anchors.left: symShiftKey.right; height: parent.height; }
1086 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
1087 UrlKey { id: urlKey; label: ".se"; extended: [".com", ".fi", ".ax"]; anchors.right: dotKey.left; height: parent.height; }
1088- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
1089+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
1090 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
1091 }
1092 } // column
1093
1094=== modified file 'plugins/sv/qml/Keyboard_sv_url_search.qml'
1095--- plugins/sv/qml/Keyboard_sv_url_search.qml 2014-11-27 16:57:43 +0000
1096+++ plugins/sv/qml/Keyboard_sv_url_search.qml 2015-03-11 23:05:35 +0000
1097@@ -90,7 +90,7 @@
1098 CharKey { id: slashKey; label: "/"; shifted: "/"; anchors.left: languageMenuButton.right; height: parent.height; }
1099 SpaceKey { id: spaceKey; anchors.left: slashKey.right; anchors.right: urlKey.left; noMagnifier: true; height: parent.height; }
1100 UrlKey { id: urlKey; label: ".se"; extended: [".com", ".fi", ".ax"]; anchors.right: dotKey.left; height: parent.height; }
1101- CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!"]; extendedShifted: ["?", "!"]; anchors.right: enterKey.left; height: parent.height; }
1102+ CharKey { id: dotKey; label: "."; shifted: "."; extended: ["?", "!", "-", "_", "+", "%","#","/"]; extendedShifted: ["?", "!", "-", "_", "+", "%","#","/"]; anchors.right: enterKey.left; height: parent.height; }
1103 ReturnKey { id: enterKey; anchors.right: parent.right; height: parent.height; }
1104 }
1105 } // column
1106
1107=== modified file 'tests/autopilot/ubuntu_keyboard/emulators/keyboard.py'
1108--- tests/autopilot/ubuntu_keyboard/emulators/keyboard.py 2015-02-13 16:12:59 +0000
1109+++ tests/autopilot/ubuntu_keyboard/emulators/keyboard.py 2015-03-11 23:05:35 +0000
1110@@ -24,6 +24,7 @@
1111
1112 from time import sleep
1113 import logging
1114+import os
1115
1116 from autopilot.input import Pointer, Touch
1117 from autopilot.introspection import (
1118@@ -160,7 +161,7 @@
1119 except AssertionError:
1120 return False
1121
1122- def press_key(self, key, capslock_switch=False, long_press=False):
1123+ def press_key(self, key, capslock_switch=False, long_press=False, slide_offset=None):
1124 """Tap on the key with the internal pointer
1125
1126 :params key: String containing the text of the key to tap.
1127@@ -191,7 +192,9 @@
1128 self._show_keypad(req_keypad)
1129 self._change_keypad_to_state(req_key_state)
1130
1131- if long_press:
1132+ if slide_offset != None:
1133+ self._select_extended_key(key_pos, slide_offset)
1134+ elif long_press:
1135 self._long_press_key(key_pos)
1136 else:
1137 self._tap_key(key_pos)
1138@@ -322,6 +325,16 @@
1139 sleep(0.5)
1140 pointer.release()
1141
1142+ def _select_extended_key(self, key_rect, offset, pointer=None):
1143+ if pointer is None:
1144+ pointer = Pointer(Touch.create())
1145+
1146+ gu = float(os.environ.get('GRID_UNIT_PX', 8))
1147+
1148+ pointer.drag(key_rect.x + key_rect.w / 2.0, key_rect.y + key_rect.h / 2.0,
1149+ key_rect.x + key_rect.w / 2.0 + offset, key_rect.y + key_rect.h / 2.0,
1150+ rate=2.77 * gu, time_between_events=2)
1151+
1152 def _keyboard_details_changed(self):
1153 return self._orientation_changed()
1154
1155
1156=== modified file 'tests/autopilot/ubuntu_keyboard/tests/test_keyboard.py'
1157--- tests/autopilot/ubuntu_keyboard/tests/test_keyboard.py 2015-03-11 23:05:35 +0000
1158+++ tests/autopilot/ubuntu_keyboard/tests/test_keyboard.py 2015-03-11 23:05:35 +0000
1159@@ -61,7 +61,7 @@
1160 self.skipTest("Ubuntu Keyboard tests only run on device.")
1161 super(UbuntuKeyboardTests, self).setUp()
1162 self.set_test_settings()
1163- sleep(1) # Have to give time for gsettings change to propogate
1164+ sleep(5) # Have to give time for gsettings change to propogate
1165 self.pointer = Pointer(Touch.create())
1166
1167 def set_test_settings(self):
1168@@ -606,6 +606,47 @@
1169 Eventually(Equals(expected))
1170 )
1171
1172+ def test_extended_punctuation(self):
1173+ """The characters ?!-_+%#/ and '";:@&() should be available as
1174+ extended keys from the . and , keys.
1175+
1176+ """
1177+
1178+ text_area = self.launch_test_input_area()
1179+ self.ensure_focus_on_input(text_area)
1180+ keyboard = Keyboard()
1181+ self.addCleanup(keyboard.dismiss)
1182+
1183+ gu = float(os.environ.get('GRID_UNIT_PX', 8))
1184+
1185+ # The extended key positions aren't accessible until the
1186+ # drag has already started, so we need to provide their
1187+ # offsets manually based on the known extended key cell
1188+ # width
1189+ keyboard.press_key('.', slide_offset=-17.5 * gu)
1190+ keyboard.press_key('.', slide_offset=-14 * gu)
1191+ keyboard.press_key('.', slide_offset=-10.5 * gu)
1192+ keyboard.press_key('.', slide_offset=-7.5 * gu)
1193+ keyboard.press_key('.', slide_offset=-3.5 * gu)
1194+ keyboard.press_key('.', slide_offset=1)
1195+ keyboard.press_key('.', slide_offset=3.5 * gu)
1196+ keyboard.press_key('.', slide_offset=7 * gu)
1197+
1198+ keyboard.press_key(',', slide_offset=-10.5 * gu)
1199+ keyboard.press_key(',', slide_offset=-7 * gu)
1200+ keyboard.press_key(',', slide_offset=-3.5 * gu)
1201+ keyboard.press_key(',', slide_offset=-1 * gu)
1202+ keyboard.press_key(',', slide_offset=3.5 * gu)
1203+ keyboard.press_key(',', slide_offset=7 * gu)
1204+ keyboard.press_key(',', slide_offset=10.5 * gu)
1205+ keyboard.press_key(',', slide_offset=14 * gu)
1206+
1207+ expected = "!-_?+%#/\";:'@&()"
1208+ self.assertThat(
1209+ text_area.text,
1210+ Eventually(Equals(expected))
1211+ )
1212+
1213
1214 class UbuntuKeyboardPinyin(UbuntuKeyboardTests):
1215
1216@@ -781,7 +822,7 @@
1217
1218 keyboard.press_key("language")
1219
1220- sleep(1)
1221+ sleep(5)
1222
1223 keyboard = Keyboard()
1224
1225@@ -805,7 +846,7 @@
1226
1227 keyboard.press_key("language")
1228
1229- sleep(1)
1230+ sleep(5)
1231
1232 keyboard = Keyboard()
1233

Subscribers

People subscribed via source and target branches