Merge lp:~sil/ubuntu-keyboard/numbers-on-top-row into lp:ubuntu-keyboard

Proposed by Stuart Langridge
Status: Rejected
Rejected by: Bill Filler
Proposed branch: lp:~sil/ubuntu-keyboard/numbers-on-top-row
Merge into: lp:ubuntu-keyboard
Diff against target: 353 lines (+115/-180)
7 files modified
qml/languages/en/ASDFGHRow.qml (+34/-0)
qml/languages/en/Keyboard_en.qml (+3/-45)
qml/languages/en/Keyboard_en_email.qml (+3/-45)
qml/languages/en/Keyboard_en_url.qml (+3/-45)
qml/languages/en/Keyboard_en_url_search.qml (+3/-45)
qml/languages/en/QWERTYRow.qml (+35/-0)
qml/languages/en/ZXCVBRow.qml (+34/-0)
To merge this branch: bzr merge lp:~sil/ubuntu-keyboard/numbers-on-top-row
Reviewer Review Type Date Requested Status
Stuart Langridge (community) Disapprove
PS Jenkins bot continuous-integration Needs Fixing
Ubuntu Phablet Team Pending
Review via email: mp+198253@code.launchpad.net

Commit message

Add numbers to the extended characters on the UK keyboard top row. Refactor UK keyboard QML so that the shared data (each of the main "letter rows") is only done once, making it easier to make changes across all the UK keyboards.

Description of the change

Refactor UK keyboard QML so that the shared data (each of the main "letter rows") is only done once, making it easier to make changes across all the UK keyboards.

Add numbers to the extended characters on the top row.

Note: I have not made a change to the other language keyboards. I probably should do, but I'd like to see if this refactoring idea is a good one before I change 17 other keyboards :) Happy to have this rejected on that basis, or reviewed as being a good idea if all keyboards have it applied.

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Thomas Moenicke (thomas-moenicke) wrote :

Thanks for your MR! Did not get any feedback yet from design, anyways:

- for the numbers in the first row, I am basically fine with that but we would need that for all languages to be consistent
- refactoring: basically the right step of abstraction from the engineering point of view, however we wanted to keep a good overview of the entire layout at once, therefor I prefer to keep it as it is. The amount of maintenance for the current setup should be low, as it is very simple to do in QML.

Revision history for this message
Stuart Langridge (sil) wrote :

OK; I shall drop this branch, and do a new one. :)

Revision history for this message
Stuart Langridge (sil) :
review: Disapprove
Revision history for this message
Stuart Langridge (sil) wrote :

Disapproved and should be dropped in favour of https://code.launchpad.net/~sil/ubuntu-keyboard/top-row-numbers/+merge/198701 -- I don't want to delete this merge proposal because that will delete the comments, which are useful.

Unmerged revisions

120. By Stuart Langridge

Refactor English keyboard to have multiple rows. Add numbers as extended characters to top (QWERTY) row.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added file 'qml/languages/en/ASDFGHRow.qml'
2--- qml/languages/en/ASDFGHRow.qml 1970-01-01 00:00:00 +0000
3+++ qml/languages/en/ASDFGHRow.qml 2013-12-09 13:00:17 +0000
4@@ -0,0 +1,34 @@
5+/*
6+ * Copyright 2013 Canonical Ltd.
7+ *
8+ * This program is free software; you can redistribute it and/or modify
9+ * it under the terms of the GNU Lesser General Public License as published by
10+ * the Free Software Foundation; version 3.
11+ *
12+ * This program is distributed in the hope that it will be useful,
13+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
14+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15+ * GNU Lesser General Public License for more details.
16+ *
17+ * You should have received a copy of the GNU Lesser General Public License
18+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
19+ */
20+
21+import QtQuick 2.0
22+import "../../keys"
23+
24+/* The top row (QWERTYUIOP) of the keyboard, which does not change between different keyboard types */
25+Row {
26+ anchors.horizontalCenter: parent.horizontalCenter;
27+ spacing: 0
28+
29+ CharKey { label: "a"; shifted: "A"; extended: ["ä","à","â","ª","á","å", "æ"]; extendedShifted: ["Ä","À","Â","ª","Á","Å","Æ"] }
30+ CharKey { label: "s"; shifted: "S"; extended: ["ß","$"]; extendedShifted: ["$"] }
31+ CharKey { label: "d"; shifted: "D"; extended: ["ð"]; extendedShifted: ["Ð"] }
32+ CharKey { label: "f"; shifted: "F"; }
33+ CharKey { label: "g"; shifted: "G"; }
34+ CharKey { label: "h"; shifted: "H"; }
35+ CharKey { label: "j"; shifted: "J"; }
36+ CharKey { label: "k"; shifted: "K"; }
37+ CharKey { label: "l"; shifted: "L"; }
38+}
39
40=== modified file 'qml/languages/en/Keyboard_en.qml'
41--- qml/languages/en/Keyboard_en.qml 2013-10-25 13:16:15 +0000
42+++ qml/languages/en/Keyboard_en.qml 2013-12-09 13:00:17 +0000
43@@ -28,51 +28,9 @@
44 anchors.fill: parent
45 spacing: 0
46
47- Row {
48- anchors.horizontalCenter: parent.horizontalCenter;
49- spacing: 0
50-
51- CharKey { label: "q"; shifted: "Q"; }
52- CharKey { label: "w"; shifted: "W"; }
53- CharKey { label: "e"; shifted: "E"; extended: ["è", "é", "ê", "ë", "€"]; extendedShifted: ["È","É", "Ê", "Ë", "€"] }
54- CharKey { label: "r"; shifted: "R"; }
55- CharKey { label: "t"; shifted: "T"; extended: ["þ"]; extendedShifted: ["Þ"] }
56- CharKey { label: "y"; shifted: "Y"; extended: ["ý", "¥"]; extendedShifted: ["Ý", "¥"] }
57- CharKey { label: "u"; shifted: "U"; extended: ["û","ù","ú","ü"]; extendedShifted: ["Û","Ù","Ú","Ü"] }
58- CharKey { label: "i"; shifted: "I"; extended: ["î","ï","ì","í"]; extendedShifted: ["Î","Ï","Ì","Í"] }
59- CharKey { label: "o"; shifted: "O"; extended: ["ö","ô","ò","ó"]; extendedShifted: ["Ö","Ô","Ò","Ó"] }
60- CharKey { label: "p"; shifted: "P"; }
61- }
62-
63- Row {
64- anchors.horizontalCenter: parent.horizontalCenter;
65- spacing: 0
66-
67- CharKey { label: "a"; shifted: "A"; extended: ["ä","à","â","ª","á","å", "æ"]; extendedShifted: ["Ä","À","Â","ª","Á","Å","Æ"] }
68- CharKey { label: "s"; shifted: "S"; extended: ["ß","$"]; extendedShifted: ["$"] }
69- CharKey { label: "d"; shifted: "D"; extended: ["ð"]; extendedShifted: ["Ð"] }
70- CharKey { label: "f"; shifted: "F"; }
71- CharKey { label: "g"; shifted: "G"; }
72- CharKey { label: "h"; shifted: "H"; }
73- CharKey { label: "j"; shifted: "J"; }
74- CharKey { label: "k"; shifted: "K"; }
75- CharKey { label: "l"; shifted: "L"; }
76- }
77-
78- Row {
79- anchors.horizontalCenter: parent.horizontalCenter;
80- spacing: 0
81-
82- ShiftKey {}
83- CharKey { label: "z"; shifted: "Z"; }
84- CharKey { label: "x"; shifted: "X"; }
85- CharKey { label: "c"; shifted: "C"; extended: ["ç"]; extendedShifted: ["Ç"] }
86- CharKey { label: "v"; shifted: "V"; }
87- CharKey { label: "b"; shifted: "B"; }
88- CharKey { label: "n"; shifted: "N"; extended: ["ñ"]; extendedShifted: ["Ñ"] }
89- CharKey { label: "m"; shifted: "M"; }
90- BackspaceKey {}
91- }
92+ QWERTYRow {}
93+ ASDFGHRow {}
94+ ZXCVBRow {}
95
96 Item {
97 anchors.left: parent.left
98
99=== modified file 'qml/languages/en/Keyboard_en_email.qml'
100--- qml/languages/en/Keyboard_en_email.qml 2013-10-25 13:16:15 +0000
101+++ qml/languages/en/Keyboard_en_email.qml 2013-12-09 13:00:17 +0000
102@@ -28,51 +28,9 @@
103 anchors.fill: parent
104 spacing: 0
105
106- Row {
107- anchors.horizontalCenter: parent.horizontalCenter;
108- spacing: 0
109-
110- CharKey { label: "q"; shifted: "Q"; }
111- CharKey { label: "w"; shifted: "W"; }
112- CharKey { label: "e"; shifted: "E"; extended: ["è", "é", "ê", "ë", "€"]; extendedShifted: ["È","É", "Ê", "Ë", "€"] }
113- CharKey { label: "r"; shifted: "R"; }
114- CharKey { label: "t"; shifted: "T"; extended: ["þ"]; extendedShifted: ["Þ"] }
115- CharKey { label: "y"; shifted: "Y"; extended: ["ý", "¥"]; extendedShifted: ["Ý", "¥"] }
116- CharKey { label: "u"; shifted: "U"; extended: ["û","ù","ú","ü"]; extendedShifted: ["Û","Ù","Ú","Ü"] }
117- CharKey { label: "i"; shifted: "I"; extended: ["î","ï","ì","í"]; extendedShifted: ["Î","Ï","Ì","Í"] }
118- CharKey { label: "o"; shifted: "O"; extended: ["ö","ô","ò","ó"]; extendedShifted: ["Ö","Ô","Ò","Ó"] }
119- CharKey { label: "p"; shifted: "P"; }
120- }
121-
122- Row {
123- anchors.horizontalCenter: parent.horizontalCenter;
124- spacing: 0
125-
126- CharKey { label: "a"; shifted: "A"; extended: ["ä","à","â","á","ã","å"]; extendedShifted: ["Ä","À","Â","Á","Ã","Å"] }
127- CharKey { label: "s"; shifted: "S"; extended: ["ß","$"]; extendedShifted: ["$"] }
128- CharKey { label: "d"; shifted: "D"; extended: ["ð"]; extendedShifted: ["Ð"] }
129- CharKey { label: "f"; shifted: "F"; }
130- CharKey { label: "g"; shifted: "G"; }
131- CharKey { label: "h"; shifted: "H"; }
132- CharKey { label: "j"; shifted: "J"; }
133- CharKey { label: "k"; shifted: "K"; }
134- CharKey { label: "l"; shifted: "L"; }
135- }
136-
137- Row {
138- anchors.horizontalCenter: parent.horizontalCenter;
139- spacing: 0
140-
141- ShiftKey {}
142- CharKey { label: "z"; shifted: "Z"; }
143- CharKey { label: "x"; shifted: "X"; }
144- CharKey { label: "c"; shifted: "C"; extended: ["ç"]; extendedShifted: ["Ç"] }
145- CharKey { label: "v"; shifted: "V"; }
146- CharKey { label: "b"; shifted: "B"; }
147- CharKey { label: "n"; shifted: "N"; extended: ["ñ"]; extendedShifted: ["Ñ"] }
148- CharKey { label: "m"; shifted: "M"; }
149- BackspaceKey {}
150- }
151+ QWERTYRow {}
152+ ASDFGHRow {}
153+ ZXCVBRow {}
154
155 Item {
156 anchors.left: parent.left
157
158=== modified file 'qml/languages/en/Keyboard_en_url.qml'
159--- qml/languages/en/Keyboard_en_url.qml 2013-10-25 13:16:15 +0000
160+++ qml/languages/en/Keyboard_en_url.qml 2013-12-09 13:00:17 +0000
161@@ -28,51 +28,9 @@
162 anchors.fill: parent
163 spacing: 0
164
165- Row {
166- anchors.horizontalCenter: parent.horizontalCenter;
167- spacing: 0
168-
169- CharKey { label: "q"; shifted: "Q"; }
170- CharKey { label: "w"; shifted: "W"; }
171- CharKey { label: "e"; shifted: "E"; extended: ["è", "é", "ê", "ë", "€"]; extendedShifted: ["È","É", "Ê", "Ë", "€"] }
172- CharKey { label: "r"; shifted: "R"; }
173- CharKey { label: "t"; shifted: "T"; extended: ["þ"]; extendedShifted: ["Þ"] }
174- CharKey { label: "y"; shifted: "Y"; extended: ["ý", "¥"]; extendedShifted: ["Ý", "¥"] }
175- CharKey { label: "u"; shifted: "U"; extended: ["û","ù","ú","ü"]; extendedShifted: ["Û","Ù","Ú","Ü"] }
176- CharKey { label: "i"; shifted: "I"; extended: ["î","ï","ì","í"]; extendedShifted: ["Î","Ï","Ì","Í"] }
177- CharKey { label: "o"; shifted: "O"; extended: ["ö","ô","ò","ó"]; extendedShifted: ["Ö","Ô","Ò","Ó"] }
178- CharKey { label: "p"; shifted: "P"; }
179- }
180-
181- Row {
182- anchors.horizontalCenter: parent.horizontalCenter;
183- spacing: 0
184-
185- CharKey { label: "a"; shifted: "A"; extended: ["ä","à","â","á","ã","å"]; extendedShifted: ["Ä","À","Â","Á","Ã","Å"] }
186- CharKey { label: "s"; shifted: "S"; extended: ["ß","$"]; extendedShifted: ["$"] }
187- CharKey { label: "d"; shifted: "D"; extended: ["ð"]; extendedShifted: ["Ð"] }
188- CharKey { label: "f"; shifted: "F"; }
189- CharKey { label: "g"; shifted: "G"; }
190- CharKey { label: "h"; shifted: "H"; }
191- CharKey { label: "j"; shifted: "J"; }
192- CharKey { label: "k"; shifted: "K"; }
193- CharKey { label: "l"; shifted: "L"; }
194- }
195-
196- Row {
197- anchors.horizontalCenter: parent.horizontalCenter;
198- spacing: 0
199-
200- ShiftKey {}
201- CharKey { label: "z"; shifted: "Z"; }
202- CharKey { label: "x"; shifted: "X"; }
203- CharKey { label: "c"; shifted: "C"; extended: ["ç"]; extendedShifted: ["Ç"] }
204- CharKey { label: "v"; shifted: "V"; }
205- CharKey { label: "b"; shifted: "B"; }
206- CharKey { label: "n"; shifted: "N"; extended: ["ñ"]; extendedShifted: ["Ñ"] }
207- CharKey { label: "m"; shifted: "M"; }
208- BackspaceKey {}
209- }
210+ QWERTYRow {}
211+ ASDFGHRow {}
212+ ZXCVBRow {}
213
214 Item {
215 anchors.left: parent.left
216
217=== modified file 'qml/languages/en/Keyboard_en_url_search.qml'
218--- qml/languages/en/Keyboard_en_url_search.qml 2013-10-25 13:16:15 +0000
219+++ qml/languages/en/Keyboard_en_url_search.qml 2013-12-09 13:00:17 +0000
220@@ -29,51 +29,9 @@
221
222 spacing: 0
223
224- Row {
225- anchors.horizontalCenter: parent.horizontalCenter;
226- spacing: 0
227-
228- CharKey { label: "q"; shifted: "Q"; }
229- CharKey { label: "w"; shifted: "W"; }
230- CharKey { label: "e"; shifted: "E"; extended: ["è", "é", "ê", "ë", "€"]; extendedShifted: ["È","É", "Ê", "Ë", "€"] }
231- CharKey { label: "r"; shifted: "R"; }
232- CharKey { label: "t"; shifted: "T"; extended: ["þ"]; extendedShifted: ["Þ"] }
233- CharKey { label: "y"; shifted: "Y"; extended: ["ý", "¥"]; extendedShifted: ["Ý", "¥"] }
234- CharKey { label: "u"; shifted: "U"; extended: ["û","ù","ú","ü"]; extendedShifted: ["Û","Ù","Ú","Ü"] }
235- CharKey { label: "i"; shifted: "I"; extended: ["î","ï","ì","í"]; extendedShifted: ["Î","Ï","Ì","Í"] }
236- CharKey { label: "o"; shifted: "O"; extended: ["ö","ô","ò","ó"]; extendedShifted: ["Ö","Ô","Ò","Ó"] }
237- CharKey { label: "p"; shifted: "P"; }
238- }
239-
240- Row {
241- anchors.horizontalCenter: parent.horizontalCenter;
242- spacing: 0
243-
244- CharKey { label: "a"; shifted: "A"; extended: ["ä","à","â","á","ã","å"]; extendedShifted: ["Ä","À","Â","Á","Ã","Å"] }
245- CharKey { label: "s"; shifted: "S"; extended: ["ß","$"]; extendedShifted: ["$"] }
246- CharKey { label: "d"; shifted: "D"; extended: ["ð"]; extendedShifted: ["Ð"] }
247- CharKey { label: "f"; shifted: "F"; }
248- CharKey { label: "g"; shifted: "G"; }
249- CharKey { label: "h"; shifted: "H"; }
250- CharKey { label: "j"; shifted: "J"; }
251- CharKey { label: "k"; shifted: "K"; }
252- CharKey { label: "l"; shifted: "L"; }
253- }
254-
255- Row {
256- anchors.horizontalCenter: parent.horizontalCenter;
257- spacing: 0
258-
259- ShiftKey {}
260- CharKey { label: "z"; shifted: "Z"; }
261- CharKey { label: "x"; shifted: "X"; }
262- CharKey { label: "c"; shifted: "C"; extended: ["ç"]; extendedShifted: ["Ç"] }
263- CharKey { label: "v"; shifted: "V"; }
264- CharKey { label: "b"; shifted: "B"; }
265- CharKey { label: "n"; shifted: "N"; extended: ["ñ"]; extendedShifted: ["Ñ"] }
266- CharKey { label: "m"; shifted: "M"; }
267- BackspaceKey {}
268- }
269+ QWERTYRow {}
270+ ASDFGHRow {}
271+ ZXCVBRow {}
272
273 Item {
274 anchors.left: parent.left
275
276=== added file 'qml/languages/en/QWERTYRow.qml'
277--- qml/languages/en/QWERTYRow.qml 1970-01-01 00:00:00 +0000
278+++ qml/languages/en/QWERTYRow.qml 2013-12-09 13:00:17 +0000
279@@ -0,0 +1,35 @@
280+/*
281+ * Copyright 2013 Canonical Ltd.
282+ *
283+ * This program is free software; you can redistribute it and/or modify
284+ * it under the terms of the GNU Lesser General Public License as published by
285+ * the Free Software Foundation; version 3.
286+ *
287+ * This program is distributed in the hope that it will be useful,
288+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
289+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
290+ * GNU Lesser General Public License for more details.
291+ *
292+ * You should have received a copy of the GNU Lesser General Public License
293+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
294+ */
295+
296+import QtQuick 2.0
297+import "../../keys"
298+
299+/* The top row (QWERTYUIOP) of the keyboard, which does not change between different keyboard types */
300+Row {
301+ anchors.horizontalCenter: parent.horizontalCenter;
302+ spacing: 0
303+
304+ CharKey { label: "q"; shifted: "Q"; extended: ["1"]; extendedShifted: ["1"]; }
305+ CharKey { label: "w"; shifted: "W"; extended: ["2"]; extendedShifted: ["2"]; }
306+ CharKey { label: "e"; shifted: "E"; extended: ["è", "é", "ê", "ë", "€", "3"]; extendedShifted: ["È","É", "Ê", "Ë", "€", "3"] }
307+ CharKey { label: "r"; shifted: "R"; extended: ["4"]; extendedShifted: ["4"]; }
308+ CharKey { label: "t"; shifted: "T"; extended: ["þ", "5"]; extendedShifted: ["Þ", "5"] }
309+ CharKey { label: "y"; shifted: "Y"; extended: ["ý", "¥", "6"]; extendedShifted: ["Ý", "¥", "6"] }
310+ CharKey { label: "u"; shifted: "U"; extended: ["û","ù","ú","ü", "7"]; extendedShifted: ["Û","Ù","Ú","Ü", "7"] }
311+ CharKey { label: "i"; shifted: "I"; extended: ["î","ï","ì","í", "8"]; extendedShifted: ["Î","Ï","Ì","Í", "8"] }
312+ CharKey { label: "o"; shifted: "O"; extended: ["ö","ô","ò","ó", "9"]; extendedShifted: ["Ö","Ô","Ò","Ó", "9"] }
313+ CharKey { label: "p"; shifted: "P"; extended: ["0"]; extendedShifted: ["0"]; }
314+}
315
316=== added file 'qml/languages/en/ZXCVBRow.qml'
317--- qml/languages/en/ZXCVBRow.qml 1970-01-01 00:00:00 +0000
318+++ qml/languages/en/ZXCVBRow.qml 2013-12-09 13:00:17 +0000
319@@ -0,0 +1,34 @@
320+/*
321+ * Copyright 2013 Canonical Ltd.
322+ *
323+ * This program is free software; you can redistribute it and/or modify
324+ * it under the terms of the GNU Lesser General Public License as published by
325+ * the Free Software Foundation; version 3.
326+ *
327+ * This program is distributed in the hope that it will be useful,
328+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
329+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
330+ * GNU Lesser General Public License for more details.
331+ *
332+ * You should have received a copy of the GNU Lesser General Public License
333+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
334+ */
335+
336+import QtQuick 2.0
337+import "../../keys"
338+
339+/* The top row (QWERTYUIOP) of the keyboard, which does not change between different keyboard types */
340+Row {
341+ anchors.horizontalCenter: parent.horizontalCenter;
342+ spacing: 0
343+
344+ ShiftKey {}
345+ CharKey { label: "z"; shifted: "Z"; }
346+ CharKey { label: "x"; shifted: "X"; }
347+ CharKey { label: "c"; shifted: "C"; extended: ["ç"]; extendedShifted: ["Ç"] }
348+ CharKey { label: "v"; shifted: "V"; }
349+ CharKey { label: "b"; shifted: "B"; }
350+ CharKey { label: "n"; shifted: "N"; extended: ["ñ"]; extendedShifted: ["Ñ"] }
351+ CharKey { label: "m"; shifted: "M"; }
352+ BackspaceKey {}
353+}

Subscribers

People subscribed via source and target branches