diff --git a/iphone/Maps/Images.xcassets/Interface/Contents.json b/iphone/Maps/Images.xcassets/Interface/Contents.json
new file mode 100644
index 000000000..73c00596a
--- /dev/null
+++ b/iphone/Maps/Images.xcassets/Interface/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/iphone/Maps/Images.xcassets/Interface/Main Buttons/Contents.json b/iphone/Maps/Images.xcassets/Interface/Main Buttons/Contents.json
new file mode 100644
index 000000000..6e965652d
--- /dev/null
+++ b/iphone/Maps/Images.xcassets/Interface/Main Buttons/Contents.json
@@ -0,0 +1,9 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ },
+ "properties" : {
+ "provides-namespace" : true
+ }
+}
diff --git a/iphone/Maps/Images.xcassets/Interface/Main Buttons/Left Button/Contents.json b/iphone/Maps/Images.xcassets/Interface/Main Buttons/Left Button/Contents.json
new file mode 100644
index 000000000..6e965652d
--- /dev/null
+++ b/iphone/Maps/Images.xcassets/Interface/Main Buttons/Left Button/Contents.json
@@ -0,0 +1,9 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ },
+ "properties" : {
+ "provides-namespace" : true
+ }
+}
diff --git a/iphone/Maps/Images.xcassets/Interface/Main Buttons/Left Button/Record Track.imageset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Main Buttons/Left Button/Record Track.imageset/Contents.json
new file mode 100644
index 000000000..26a166d32
--- /dev/null
+++ b/iphone/Maps/Images.xcassets/Interface/Main Buttons/Left Button/Record Track.imageset/Contents.json
@@ -0,0 +1,16 @@
+{
+ "images" : [
+ {
+ "filename" : "ic_track_recording_off.svg",
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ },
+ "properties" : {
+ "preserves-vector-representation" : true,
+ "template-rendering-intent" : "template"
+ }
+}
diff --git a/iphone/Maps/Images.xcassets/Interface/Main Buttons/Left Button/Record Track.imageset/ic_track_recording_off.svg b/iphone/Maps/Images.xcassets/Interface/Main Buttons/Left Button/Record Track.imageset/ic_track_recording_off.svg
new file mode 100644
index 000000000..b7429d9c3
--- /dev/null
+++ b/iphone/Maps/Images.xcassets/Interface/Main Buttons/Left Button/Record Track.imageset/ic_track_recording_off.svg
@@ -0,0 +1,20 @@
+
diff --git a/iphone/Maps/LocalizedStrings/af.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/af.lproj/Localizable.strings
index 07506216b..82d0849e8 100644
--- a/iphone/Maps/LocalizedStrings/af.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/af.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Deel my ligging";
"prefs_group_route" = "Navigasie";
"pref_zoom_title" = "Zoemknoppe";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Appearance";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Dark";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Off";
diff --git a/iphone/Maps/LocalizedStrings/ar.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/ar.lproj/Localizable.strings
index 17f2a63e4..6cbf85caa 100644
--- a/iphone/Maps/LocalizedStrings/ar.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/ar.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "مشاركة موقعي";
"prefs_group_route" = "الملاحة";
"pref_zoom_title" = "أزرار التكبير والتصغير";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "المظهر";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "داكن";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "تعطيل";
diff --git a/iphone/Maps/LocalizedStrings/az.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/az.lproj/Localizable.strings
index 566774fb2..a9979289c 100644
--- a/iphone/Maps/LocalizedStrings/az.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/az.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Məkanımı Paylaşın";
"prefs_group_route" = "Naviqasiya";
"pref_zoom_title" = "Böyütmə düymələri";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Görünüş";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Tünd";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Bağlı";
diff --git a/iphone/Maps/LocalizedStrings/be.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/be.lproj/Localizable.strings
index 912a0e89b..49e1dd57a 100644
--- a/iphone/Maps/LocalizedStrings/be.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/be.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Абагуліць маё месцазнаходжанне";
"prefs_group_route" = "Навігацыя";
"pref_zoom_title" = "Кнопкі маштабавання";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Выгляд";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Цемны";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Выключаны";
diff --git a/iphone/Maps/LocalizedStrings/bg.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/bg.lproj/Localizable.strings
index 83bb95c42..d828ffb18 100644
--- a/iphone/Maps/LocalizedStrings/bg.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/bg.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Споделяне на местоположение";
"prefs_group_route" = "Навигация";
"pref_zoom_title" = "Мащабни бутони";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Изглед";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Тъмен";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Изключен";
diff --git a/iphone/Maps/LocalizedStrings/ca.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/ca.lproj/Localizable.strings
index 05857f94f..d520dc94f 100644
--- a/iphone/Maps/LocalizedStrings/ca.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/ca.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Comparteix la meva ubicació";
"prefs_group_route" = "Navegació";
"pref_zoom_title" = "Botons de zoom";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Aspecte";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Fosc";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Desactivat";
diff --git a/iphone/Maps/LocalizedStrings/cs.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/cs.lproj/Localizable.strings
index 86f54ac50..885e08adb 100644
--- a/iphone/Maps/LocalizedStrings/cs.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/cs.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Sdílet mé umístění";
"prefs_group_route" = "Navigace";
"pref_zoom_title" = "Tlačítka přiblížení/oddálení";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Vzhled";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Tmavý";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Vypnuto";
diff --git a/iphone/Maps/LocalizedStrings/da.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/da.lproj/Localizable.strings
index 01b275636..b482b46ad 100644
--- a/iphone/Maps/LocalizedStrings/da.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/da.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Del min placering";
"prefs_group_route" = "Navigation";
"pref_zoom_title" = "Zoom-knapper";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Udseende";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Mørk";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Fra";
diff --git a/iphone/Maps/LocalizedStrings/de.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/de.lproj/Localizable.strings
index 368f7575b..60e61e353 100644
--- a/iphone/Maps/LocalizedStrings/de.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/de.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Meinen Standort teilen";
"prefs_group_route" = "Navigation";
"pref_zoom_title" = "Zoom-Tasten";
+"pref_left_button_type" = "Linker Hauptbutton";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Erscheinungsbild";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Dunkel";
+/* Generic «Disabled» string */
+"disabled" = "Deaktiviert";
+
/* Generic «Off» string */
"off" = "Aus";
diff --git a/iphone/Maps/LocalizedStrings/el.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/el.lproj/Localizable.strings
index ee2d3e29b..d3aa5d385 100644
--- a/iphone/Maps/LocalizedStrings/el.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/el.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Κοινοποίηση της τοποθεσίας μου";
"prefs_group_route" = "Πλοήγηση";
"pref_zoom_title" = "Πλήκτρα μεγέθυνσης";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Εμφάνιση";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Σκουρόχρωμη";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Απενεργ.";
diff --git a/iphone/Maps/LocalizedStrings/en-GB.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/en-GB.lproj/Localizable.strings
index ba2189e80..e7723c1e3 100644
--- a/iphone/Maps/LocalizedStrings/en-GB.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/en-GB.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Share My Location";
"prefs_group_route" = "Navigation";
"pref_zoom_title" = "Zoom buttons";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Appearance";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Dark";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Off";
diff --git a/iphone/Maps/LocalizedStrings/en.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/en.lproj/Localizable.strings
index fece93c33..dbdbeae78 100644
--- a/iphone/Maps/LocalizedStrings/en.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/en.lproj/Localizable.strings
@@ -212,6 +212,7 @@
"share_my_location" = "Share My Location";
"prefs_group_route" = "Navigation";
"pref_zoom_title" = "Zoom buttons";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Appearance";
@@ -222,6 +223,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Dark";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Off";
diff --git a/iphone/Maps/LocalizedStrings/es-MX.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/es-MX.lproj/Localizable.strings
index 7d52395aa..a43e8831f 100644
--- a/iphone/Maps/LocalizedStrings/es-MX.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/es-MX.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Compartir mi ubicación";
"prefs_group_route" = "Navegación";
"pref_zoom_title" = "Botones de zoom";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Aspecto";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Oscuro";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Desactivado";
diff --git a/iphone/Maps/LocalizedStrings/es.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/es.lproj/Localizable.strings
index 86bdccceb..83dd5a411 100644
--- a/iphone/Maps/LocalizedStrings/es.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/es.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Compartir mi ubicación";
"prefs_group_route" = "Navegación";
"pref_zoom_title" = "Botones de zum";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Aspecto";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Oscuro";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Desactivado";
diff --git a/iphone/Maps/LocalizedStrings/et.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/et.lproj/Localizable.strings
index 438263ea3..2161abb26 100644
--- a/iphone/Maps/LocalizedStrings/et.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/et.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Jaga minu asukohta";
"prefs_group_route" = "Tee juhatamine";
"pref_zoom_title" = "Suuminupud";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Välimus";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Tume kujundus";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Väljas";
diff --git a/iphone/Maps/LocalizedStrings/eu.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/eu.lproj/Localizable.strings
index 15d9f3610..bacc4f15a 100644
--- a/iphone/Maps/LocalizedStrings/eu.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/eu.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Partekatu nire kokapena";
"prefs_group_route" = "Nabigazioa";
"pref_zoom_title" = "Zoom botoiak";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Itxura";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Iluna";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Desgaituta";
diff --git a/iphone/Maps/LocalizedStrings/fa.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/fa.lproj/Localizable.strings
index 266a3c253..94715f590 100644
--- a/iphone/Maps/LocalizedStrings/fa.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/fa.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "به اشتراک گذاری موقعیت مکانی من";
"prefs_group_route" = "مسیریابی";
"pref_zoom_title" = "دکمههای بزرگنمایی";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "ظاهری";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "تاریک";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "خاموش";
diff --git a/iphone/Maps/LocalizedStrings/fi.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/fi.lproj/Localizable.strings
index bc2f8d0ff..f8ebfdcb6 100644
--- a/iphone/Maps/LocalizedStrings/fi.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/fi.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Jaa sijaintini";
"prefs_group_route" = "Navigointi";
"pref_zoom_title" = "Zoomauspainikkeet";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Ulkoasu";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Tumma";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Pois päältä";
diff --git a/iphone/Maps/LocalizedStrings/fr.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/fr.lproj/Localizable.strings
index 620fdd57f..fe2506719 100644
--- a/iphone/Maps/LocalizedStrings/fr.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/fr.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Partager ma position";
"prefs_group_route" = "Navigation";
"pref_zoom_title" = "Boutons de zoom";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Apparence";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Sombre";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Désactivé";
diff --git a/iphone/Maps/LocalizedStrings/he.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/he.lproj/Localizable.strings
index ef0e1694e..f07fbad5c 100644
--- a/iphone/Maps/LocalizedStrings/he.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/he.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "שיתוף מיקום שלי";
"prefs_group_route" = "ניווט";
"pref_zoom_title" = "כפתורי זום";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "מראה";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "כהה";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "כבוי";
diff --git a/iphone/Maps/LocalizedStrings/hi.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/hi.lproj/Localizable.strings
index e25701785..51f380eac 100644
--- a/iphone/Maps/LocalizedStrings/hi.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/hi.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "मेरा स्थान साझा करें";
"prefs_group_route" = "मार्गदर्शन";
"pref_zoom_title" = "ज़ूम बटन";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "प्रकटन";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "गहरा";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "बंद";
diff --git a/iphone/Maps/LocalizedStrings/hu.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/hu.lproj/Localizable.strings
index 0e013b3fe..d628857b1 100644
--- a/iphone/Maps/LocalizedStrings/hu.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/hu.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Saját helyzet megosztása";
"prefs_group_route" = "Navigáció";
"pref_zoom_title" = "Nagyítás/kicsinyítés gombok";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Megjelenés";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Sötét";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Ki";
diff --git a/iphone/Maps/LocalizedStrings/id.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/id.lproj/Localizable.strings
index 075732cd7..c3dff3ba0 100644
--- a/iphone/Maps/LocalizedStrings/id.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/id.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Bagikan Lokasi Saya";
"prefs_group_route" = "Navigasi";
"pref_zoom_title" = "Tombol perbesaran";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Tampilan";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Gelap";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Tidak Aktif";
diff --git a/iphone/Maps/LocalizedStrings/it.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/it.lproj/Localizable.strings
index 593a20e5d..0b3cb0ea2 100644
--- a/iphone/Maps/LocalizedStrings/it.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/it.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Condividi la mia posizione";
"prefs_group_route" = "Navigazione";
"pref_zoom_title" = "Pulsanti per lo zoom";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Aspetto";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Scuro";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Spento";
diff --git a/iphone/Maps/LocalizedStrings/ja.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/ja.lproj/Localizable.strings
index 07abd329e..26f2cd880 100644
--- a/iphone/Maps/LocalizedStrings/ja.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/ja.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "現在地を共有する";
"prefs_group_route" = "ナビゲーション";
"pref_zoom_title" = "ズームボタン";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "外観";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "ダーク";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "オフ";
diff --git a/iphone/Maps/LocalizedStrings/ko.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/ko.lproj/Localizable.strings
index db1dfbf36..057d1fb73 100644
--- a/iphone/Maps/LocalizedStrings/ko.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/ko.lproj/Localizable.strings
@@ -199,6 +199,7 @@
"share_my_location" = "내 위치 공유";
"prefs_group_route" = "내비게이션";
"pref_zoom_title" = "확대/축소 버튼";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "모양";
@@ -209,6 +210,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "다크";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "끄기";
diff --git a/iphone/Maps/LocalizedStrings/lt.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/lt.lproj/Localizable.strings
index 77d513a16..26025619d 100644
--- a/iphone/Maps/LocalizedStrings/lt.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/lt.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Bendrinti mano vietą";
"prefs_group_route" = "Navigacija";
"pref_zoom_title" = "Mastelio mygtukai";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Išvaizda";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Tamsi";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Išjungti";
diff --git a/iphone/Maps/LocalizedStrings/lv.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/lv.lproj/Localizable.strings
index 81986515f..b7ce646cd 100644
--- a/iphone/Maps/LocalizedStrings/lv.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/lv.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Kopīgot manu atrašanās vietu";
"prefs_group_route" = "Navigācija";
"pref_zoom_title" = "Tālummaiņas pogas";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Izskats";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Tumšs";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Izslēgts";
diff --git a/iphone/Maps/LocalizedStrings/mr.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/mr.lproj/Localizable.strings
index 0595f4047..8e2b5a4de 100644
--- a/iphone/Maps/LocalizedStrings/mr.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/mr.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "माझे स्थान सामायिक करा";
"prefs_group_route" = "मार्गनिर्देशन";
"pref_zoom_title" = "झूम बटणे";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "दर्शनी रूप";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "अंधार";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "बंद";
diff --git a/iphone/Maps/LocalizedStrings/mt.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/mt.lproj/Localizable.strings
index b9ca5e1f8..d3468e29a 100644
--- a/iphone/Maps/LocalizedStrings/mt.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/mt.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Ixxerja l-post tiegħi";
"prefs_group_route" = "Navigazzjoni";
"pref_zoom_title" = "Buttuni taż-żum";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Dehra";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Dark";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Itfi";
diff --git a/iphone/Maps/LocalizedStrings/nb.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/nb.lproj/Localizable.strings
index c03423dea..e21ed1f13 100644
--- a/iphone/Maps/LocalizedStrings/nb.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/nb.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Del posisjonen min";
"prefs_group_route" = "Navigasjon";
"pref_zoom_title" = "Zoom-knapper";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Utseende";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Mørke";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Av";
diff --git a/iphone/Maps/LocalizedStrings/nl.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/nl.lproj/Localizable.strings
index b5c785047..af71b9f13 100644
--- a/iphone/Maps/LocalizedStrings/nl.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/nl.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Deel mijn locatie";
"prefs_group_route" = "Navigatie";
"pref_zoom_title" = "Zoomknoppen";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Weergave";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Donker";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Uit";
diff --git a/iphone/Maps/LocalizedStrings/pl.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/pl.lproj/Localizable.strings
index 4e12a6879..a3637f7f4 100644
--- a/iphone/Maps/LocalizedStrings/pl.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/pl.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Udostępnij aktualne położenie";
"prefs_group_route" = "Nawigacja";
"pref_zoom_title" = "Przyciski przybliżania";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Wygląd";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Ciemny";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Wyłączony";
diff --git a/iphone/Maps/LocalizedStrings/pt-BR.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/pt-BR.lproj/Localizable.strings
index 5e920867c..2cad2622c 100644
--- a/iphone/Maps/LocalizedStrings/pt-BR.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/pt-BR.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Compartilhar a minha localização";
"prefs_group_route" = "Navegação";
"pref_zoom_title" = "Botões de zoom";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Aparência";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Escura";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Desligado";
diff --git a/iphone/Maps/LocalizedStrings/pt.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/pt.lproj/Localizable.strings
index 83f572630..8458e64ed 100644
--- a/iphone/Maps/LocalizedStrings/pt.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/pt.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Partilhar a minha localização";
"prefs_group_route" = "Navegação";
"pref_zoom_title" = "Botões de ampliação";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Apresentação";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Tons escuros";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Desligado";
diff --git a/iphone/Maps/LocalizedStrings/ro.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/ro.lproj/Localizable.strings
index 1ed6720f6..a8040744a 100644
--- a/iphone/Maps/LocalizedStrings/ro.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/ro.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Trimite poziția mea";
"prefs_group_route" = "Navigare";
"pref_zoom_title" = "Butoane zoom";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Aspect";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Întunecat";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Oprit";
diff --git a/iphone/Maps/LocalizedStrings/ru.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/ru.lproj/Localizable.strings
index 6bf7b437e..c85b2fc85 100644
--- a/iphone/Maps/LocalizedStrings/ru.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/ru.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Поделиться местоположением";
"prefs_group_route" = "Навигация";
"pref_zoom_title" = "Кнопки масштаба";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Оформление";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Темное";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Выключен";
diff --git a/iphone/Maps/LocalizedStrings/sk.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/sk.lproj/Localizable.strings
index 841883db2..2be2a3ce7 100644
--- a/iphone/Maps/LocalizedStrings/sk.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/sk.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Zdieľať moje umiestnenie";
"prefs_group_route" = "Navigácia";
"pref_zoom_title" = "Tlačidlá priblíženia/oddialenia";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Vzhľad";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Tmavý";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Vypnúť";
diff --git a/iphone/Maps/LocalizedStrings/sr.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/sr.lproj/Localizable.strings
index 2b0c87e98..c7f449b62 100644
--- a/iphone/Maps/LocalizedStrings/sr.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/sr.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Подели моју локацију";
"prefs_group_route" = "Навигација";
"pref_zoom_title" = "Дугме за зумирање";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Изглед";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Тамно";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Искључено";
diff --git a/iphone/Maps/LocalizedStrings/sv.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/sv.lproj/Localizable.strings
index d2458b14b..1fea0b32e 100644
--- a/iphone/Maps/LocalizedStrings/sv.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/sv.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Dela min plats";
"prefs_group_route" = "Navigering";
"pref_zoom_title" = "Zoom-knappar";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Utseende";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Mörkt";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Av";
diff --git a/iphone/Maps/LocalizedStrings/sw.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/sw.lproj/Localizable.strings
index 842ed4871..9f1e639ec 100644
--- a/iphone/Maps/LocalizedStrings/sw.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/sw.lproj/Localizable.strings
@@ -190,6 +190,7 @@
"share_my_location" = "Share My Location";
"prefs_group_route" = "Navigation";
"pref_zoom_title" = "Zoom buttons";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Appearance";
@@ -200,6 +201,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Dark";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Off";
diff --git a/iphone/Maps/LocalizedStrings/th.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/th.lproj/Localizable.strings
index 90db7fd1e..c5da49013 100644
--- a/iphone/Maps/LocalizedStrings/th.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/th.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "แชร์ตำแหน่งที่ตั้งของฉัน";
"prefs_group_route" = "การนำทาง";
"pref_zoom_title" = "ปุ่มซูม";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "รูปแบบ";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "มืด";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "ปิด";
diff --git a/iphone/Maps/LocalizedStrings/tr.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/tr.lproj/Localizable.strings
index 112545f59..45af0db69 100644
--- a/iphone/Maps/LocalizedStrings/tr.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/tr.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Konumumu Paylaş";
"prefs_group_route" = "Navigasyon";
"pref_zoom_title" = "Yakınlaştırma düğmeleri";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Görünüm";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Koyu";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Kapalı";
diff --git a/iphone/Maps/LocalizedStrings/uk.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/uk.lproj/Localizable.strings
index 05d572e17..fee20e4de 100644
--- a/iphone/Maps/LocalizedStrings/uk.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/uk.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Поділитися моїм місцезнаходженням";
"prefs_group_route" = "Навігація";
"pref_zoom_title" = "Кнопки трансфокації";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Вигляд";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Темний";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Вимкнуто";
diff --git a/iphone/Maps/LocalizedStrings/vi.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/vi.lproj/Localizable.strings
index d444b8e73..1855dbd4a 100644
--- a/iphone/Maps/LocalizedStrings/vi.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/vi.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "Chia sẻ Vị trí của tôi";
"prefs_group_route" = "Điều hướng";
"pref_zoom_title" = "Nút Phóng to/Thu nhỏ";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "Giao diện";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "Tối";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "Tắt";
diff --git a/iphone/Maps/LocalizedStrings/zh-Hans.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/zh-Hans.lproj/Localizable.strings
index a0d217435..92dd6f90b 100644
--- a/iphone/Maps/LocalizedStrings/zh-Hans.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/zh-Hans.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "分享我的位置";
"prefs_group_route" = "导航";
"pref_zoom_title" = "缩放按钮";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "外观";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "深色";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "关闭";
diff --git a/iphone/Maps/LocalizedStrings/zh-Hant.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/zh-Hant.lproj/Localizable.strings
index 51566d060..028efde57 100644
--- a/iphone/Maps/LocalizedStrings/zh-Hant.lproj/Localizable.strings
+++ b/iphone/Maps/LocalizedStrings/zh-Hant.lproj/Localizable.strings
@@ -200,6 +200,7 @@
"share_my_location" = "分享我的位置";
"prefs_group_route" = "導航";
"pref_zoom_title" = "縮放按鈕";
+"pref_left_button_type" = "Left Main Button";
/* Settings «Map» category: «Appearance» title */
"pref_appearance_title" = "外觀";
@@ -210,6 +211,9 @@
/* Settings "Appearance" category: "Dark" title, should be consistent with the pref_appearance_title translation. */
"pref_appearance_dark" = "深色";
+/* Generic «Disabled» string */
+"disabled" = "Disabled";
+
/* Generic «Off» string */
"off" = "關閉";
diff --git a/iphone/Maps/Maps.xcodeproj/project.pbxproj b/iphone/Maps/Maps.xcodeproj/project.pbxproj
index 902c233ce..fec4a0128 100644
--- a/iphone/Maps/Maps.xcodeproj/project.pbxproj
+++ b/iphone/Maps/Maps.xcodeproj/project.pbxproj
@@ -17,6 +17,7 @@
272F1F462E0EEF9400FA52EF /* SafariView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 272F1F452E0EEF8B00FA52EF /* SafariView.swift */; };
2765D1D02E13F9C20005CA2B /* BridgeControllers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2765D1CD2E13F9BC0005CA2B /* BridgeControllers.swift */; };
27768FDB2E20199A0086784A /* RoutingOptionsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27768FD92E20199A0086784A /* RoutingOptionsView.swift */; };
+ 27768FE02E201BE60086784A /* LeftButtonType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27768FDF2E201BE60086784A /* LeftButtonType.swift */; };
279367562E1BE16300AA5C3D /* Settings.swift in Sources */ = {isa = PBXBuildFile; fileRef = 279367552E1BE16300AA5C3D /* Settings.swift */; };
2793675A2E1BE17300AA5C3D /* SettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 279367592E1BE17300AA5C3D /* SettingsView.swift */; };
27AF184C2E1D5B2D00CD41E2 /* SettingsNavigationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27AF184B2E1D5A2700CD41E2 /* SettingsNavigationView.swift */; };
@@ -777,6 +778,7 @@
272F1F452E0EEF8B00FA52EF /* SafariView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SafariView.swift; sourceTree = ""; };
2765D1CD2E13F9BC0005CA2B /* BridgeControllers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BridgeControllers.swift; sourceTree = ""; };
27768FD92E20199A0086784A /* RoutingOptionsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoutingOptionsView.swift; sourceTree = ""; };
+ 27768FDF2E201BE60086784A /* LeftButtonType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LeftButtonType.swift; sourceTree = ""; };
279367552E1BE16300AA5C3D /* Settings.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Settings.swift; sourceTree = ""; };
279367592E1BE17300AA5C3D /* SettingsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = SettingsView.swift; path = UI/Settings/SettingsView.swift; sourceTree = SOURCE_ROOT; };
27AF184B2E1D5A2700CD41E2 /* SettingsNavigationView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SettingsNavigationView.swift; sourceTree = ""; };
@@ -1960,6 +1962,7 @@
isa = PBXGroup;
children = (
27AF184F2E1DB61500CD41E2 /* VoiceRoutingLanguage.swift */,
+ 27768FDF2E201BE60086784A /* LeftButtonType.swift */,
27AF18512E1DB61F00CD41E2 /* DistanceUnit.swift */,
27AF18532E1DB62600CD41E2 /* MobileDataPolicy.swift */,
27AF18552E1DB62F00CD41E2 /* PowerSavingMode.swift */,
@@ -4808,6 +4811,7 @@
471A7BBE2481A3D000A0D4C1 /* EditBookmarkViewController.swift in Sources */,
993DF0C923F6BD0600AC231A /* ElevationDetailsBuilder.swift in Sources */,
674A7E301C0DB10B003D48E1 /* MWMMapWidgets.mm in Sources */,
+ 27768FE02E201BE60086784A /* LeftButtonType.swift in Sources */,
34AB66291FC5AA330078E451 /* RouteManagerViewController.swift in Sources */,
3404754D1E081A4600C92850 /* MWMKeyboard.m in Sources */,
EDE243E52B6D3F400057369B /* OSMView.swift in Sources */,
diff --git a/iphone/Maps/Model/Settings Types/LeftButtonType.swift b/iphone/Maps/Model/Settings Types/LeftButtonType.swift
new file mode 100644
index 000000000..5a41801cc
--- /dev/null
+++ b/iphone/Maps/Model/Settings Types/LeftButtonType.swift
@@ -0,0 +1,52 @@
+extension Settings {
+ /// The type of the left bottom bar button
+ enum LeftButtonType: String, Codable, CaseIterable, Identifiable {
+ case hidden = "Hidden"
+ case help = "Help"
+ case addPlace = "AddPlace"
+ case settings = "Settings"
+ case recordTrack = "RecordTrack"
+
+
+
+ // MARK: Properties
+
+ /// The id
+ var id: Self { self }
+
+
+ /// The description text
+ var description: String {
+ switch self {
+ case .hidden:
+ return L("disabled")
+ case .help:
+ return L("help")
+ case .addPlace:
+ return L("placepage_add_place_button")
+ case .settings:
+ return L("settings")
+ case .recordTrack:
+ return L("start_track_recording")
+ }
+ }
+
+
+ /// The image
+ var image: UIImage {
+ let configuration = UIImage.SymbolConfiguration(pointSize: 22, weight: .semibold)
+ switch self {
+ case .help:
+ return UIImage(systemName: "questionmark", withConfiguration: configuration)!
+ case .addPlace:
+ return UIImage(systemName: "plus", withConfiguration: configuration)!
+ case .settings:
+ return UIImage(systemName: "gearshape.fill", withConfiguration: configuration)!
+ case .recordTrack:
+ return UIImage.MainButtons.LeftButton.recordTrack.withConfiguration(configuration)
+ default:
+ return UIImage()
+ }
+ }
+ }
+}
diff --git a/iphone/Maps/Model/Settings.swift b/iphone/Maps/Model/Settings.swift
index 4d48d057c..6b8e5529b 100644
--- a/iphone/Maps/Model/Settings.swift
+++ b/iphone/Maps/Model/Settings.swift
@@ -8,6 +8,10 @@ import Combine
static private let userDefaultsKeyHasShownSyncBetaAlert = "kUDDidShowICloudSynchronizationEnablingAlert"
+ /// Key for storing the type of action used for the bottom left main interface button in the user defaults
+ static private let userDefaultsKeyLeftButtonType = "LeftButtonType"
+
+
/// The current distance unit
static var distanceUnit: DistanceUnit {
get {
@@ -38,6 +42,21 @@ import Combine
}
+ /// The type of action used for the bottom left main interface button
+ static var leftButtonType: LeftButtonType {
+ get {
+ if let leftButtonTypeRawValue = UserDefaults.standard.string(forKey: userDefaultsKeyLeftButtonType), let leftButtonType = LeftButtonType(rawValue: leftButtonTypeRawValue) {
+ return leftButtonType
+ }
+
+ return .help
+ }
+ set {
+ UserDefaults.standard.set(newValue.rawValue, forKey: userDefaultsKeyLeftButtonType)
+ }
+ }
+
+
/// If 3D buildings should be displayed
@objc static var has3dBuildings: Bool {
get {
@@ -287,7 +306,7 @@ import Combine
return RoutingOptions().avoidToll
}
set {
- var routingOptions = RoutingOptions()
+ let routingOptions = RoutingOptions()
routingOptions.avoidToll = newValue
routingOptions.save()
}
@@ -300,7 +319,7 @@ import Combine
return RoutingOptions().avoidDirty
}
set {
- var routingOptions = RoutingOptions()
+ let routingOptions = RoutingOptions()
routingOptions.avoidDirty = newValue
routingOptions.save()
}
@@ -313,7 +332,7 @@ import Combine
return RoutingOptions().avoidFerry
}
set {
- var routingOptions = RoutingOptions()
+ let routingOptions = RoutingOptions()
routingOptions.avoidFerry = newValue
routingOptions.save()
}
@@ -326,7 +345,7 @@ import Combine
return RoutingOptions().avoidMotorway
}
set {
- var routingOptions = RoutingOptions()
+ let routingOptions = RoutingOptions()
routingOptions.avoidMotorway = newValue
routingOptions.save()
}
diff --git a/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarInteractor.swift b/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarInteractor.swift
index 6a88a62e4..b1d9dc352 100644
--- a/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarInteractor.swift
+++ b/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarInteractor.swift
@@ -1,6 +1,6 @@
protocol BottomTabBarInteractorProtocol: AnyObject {
func openSearch()
- func openHelp()
+ func openLeftButton()
func openFaq()
func openBookmarks()
func openMenu()
@@ -26,8 +26,33 @@ extension BottomTabBarInteractor: BottomTabBarInteractorProtocol {
searchManager.isSearching ? searchManager.close() : searchManager.startSearching(isRouting: false)
}
- func openHelp() {
- MapViewController.shared()?.navigationController?.pushViewController(AboutController(), animated: true)
+ func openLeftButton() {
+ switch Settings.leftButtonType {
+ case .addPlace:
+ if let delegate = controlsManager as? BottomMenuDelegate {
+ delegate.addPlace()
+ }
+ case .settings:
+ mapViewController?.openSettings()
+ case .recordTrack:
+ let mapViewController = MapViewController.shared()!
+ let trackRecorder: TrackRecordingManager = .shared
+ switch trackRecorder.recordingState {
+ case .active:
+ mapViewController.showTrackRecordingPlacePage()
+ case .inactive:
+ trackRecorder.start { result in
+ switch result {
+ case .success:
+ mapViewController.showTrackRecordingPlacePage()
+ case .failure:
+ break
+ }
+ }
+ }
+ default:
+ MapViewController.shared()?.navigationController?.pushViewController(AboutController(), animated: true)
+ }
}
func openFaq() {
diff --git a/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarPresenter.swift b/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarPresenter.swift
index b3df38d46..d51a40d78 100644
--- a/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarPresenter.swift
+++ b/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarPresenter.swift
@@ -1,7 +1,7 @@
protocol BottomTabBarPresenterProtocol: AnyObject {
func configure()
func onSearchButtonPressed()
- func onHelpButtonPressed(withBadge: Bool)
+ func onLeftButtonPressed(withBadge: Bool)
func onBookmarksButtonPressed()
func onMenuButtonPressed()
}
@@ -22,8 +22,8 @@ extension BottomTabBarPresenter: BottomTabBarPresenterProtocol {
interactor.openSearch()
}
- func onHelpButtonPressed(withBadge: Bool) {
- withBadge ? interactor.openFaq() : interactor.openHelp()
+ func onLeftButtonPressed(withBadge: Bool) {
+ withBadge ? interactor.openFaq() : interactor.openLeftButton()
}
func onBookmarksButtonPressed() {
diff --git a/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarViewController.swift b/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarViewController.swift
index db632f9fc..885c3d27a 100644
--- a/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarViewController.swift
+++ b/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarViewController.swift
@@ -5,11 +5,15 @@ class BottomTabBarViewController: UIViewController {
var presenter: BottomTabBarPresenterProtocol!
@IBOutlet var searchButton: MWMButton!
- @IBOutlet var helpButton: MWMButton!
+ @IBOutlet var searchConstraint: NSLayoutConstraint!
+ @IBOutlet var leftButton: MWMButton!
+ @IBOutlet var leftButtonConstraint: NSLayoutConstraint!
@IBOutlet var bookmarksButton: MWMButton!
+ @IBOutlet var bookmarksConstraint: NSLayoutConstraint!
@IBOutlet var moreButton: MWMButton!
+ @IBOutlet var moreConstraint: NSLayoutConstraint!
@IBOutlet var downloadBadge: UIView!
- @IBOutlet var helpBadge: UIView!
+ @IBOutlet var leftButtonBadge: UIView!
private var avaliableArea = CGRect.zero
@objc var isHidden: Bool = false {
@@ -32,14 +36,17 @@ class BottomTabBarViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
presenter.configure()
+
+ NotificationCenter.default.addObserver(forName: UserDefaults.didChangeNotification, object: nil, queue: nil) { _ in
+ self.updateLeftButton()
+ }
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
- if SettingsBridge.isNY() {
- helpButton.setTitle("🎄", for: .normal)
- helpButton.setImage(nil, for: .normal)
- }
+
+ leftButton.imageView?.contentMode = .scaleAspectFit
+ updateLeftButton()
updateBadge()
}
@@ -51,12 +58,12 @@ class BottomTabBarViewController: UIViewController {
presenter.onSearchButtonPressed()
}
- @IBAction func onHelpButtonPressed(_ sender: Any) {
- if !helpBadge.isHidden {
- presenter.onHelpButtonPressed(withBadge: true)
- setHelpBadgeShown()
+ @IBAction func onLeftButtonPressed(_ sender: Any) {
+ if !leftButtonBadge.isHidden {
+ presenter.onLeftButtonPressed(withBadge: true)
+ setLeftButtonBadgeShown()
} else {
- presenter.onHelpButtonPressed(withBadge: false)
+ presenter.onLeftButtonPressed(withBadge: false)
}
}
@@ -97,19 +104,47 @@ class BottomTabBarViewController: UIViewController {
}
}
+ private func updateLeftButton() {
+ NSLayoutConstraint.deactivate([leftButtonConstraint, searchConstraint, bookmarksConstraint, moreConstraint])
+
+ let leftButtonType = Settings.leftButtonType
+ if leftButtonType == .hidden {
+ leftButton.isHidden = true
+ leftButtonBadge.isHidden = true
+
+ leftButtonConstraint = NSLayoutConstraint(item: leftButtonConstraint.firstItem!, attribute: leftButtonConstraint.firstAttribute, relatedBy: leftButtonConstraint.relation, toItem: leftButtonConstraint.secondItem, attribute: leftButtonConstraint.secondAttribute, multiplier: 0.01, constant: leftButtonConstraint.constant)
+ searchConstraint = NSLayoutConstraint(item: searchConstraint.firstItem!, attribute: searchConstraint.firstAttribute, relatedBy: searchConstraint.relation, toItem: searchConstraint.secondItem, attribute: searchConstraint.secondAttribute, multiplier: 0.25, constant: searchConstraint.constant)
+ bookmarksConstraint = NSLayoutConstraint(item: bookmarksConstraint.firstItem!, attribute: bookmarksConstraint.firstAttribute, relatedBy: bookmarksConstraint.relation, toItem: bookmarksConstraint.secondItem, attribute: bookmarksConstraint.secondAttribute, multiplier: 1, constant: bookmarksConstraint.constant)
+ moreConstraint = NSLayoutConstraint(item: moreConstraint.firstItem!, attribute: moreConstraint.firstAttribute, relatedBy: moreConstraint.relation, toItem: moreConstraint.secondItem, attribute: moreConstraint.secondAttribute, multiplier: 1.75, constant: moreConstraint.constant)
+ } else {
+ leftButton.isHidden = false
+ leftButtonBadge.isHidden = !needsToShowleftButtonBadge()
+
+ leftButton.setTitle(nil, for: .normal)
+ leftButton.setImage(leftButtonType.image, for: .normal)
+ leftButton.accessibilityLabel = leftButtonType.description;
+
+ leftButtonConstraint = NSLayoutConstraint(item: leftButtonConstraint.firstItem!, attribute: leftButtonConstraint.firstAttribute, relatedBy: leftButtonConstraint.relation, toItem: leftButtonConstraint.secondItem, attribute: leftButtonConstraint.secondAttribute, multiplier: 0.25, constant: leftButtonConstraint.constant)
+ searchConstraint = NSLayoutConstraint(item: searchConstraint.firstItem!, attribute: searchConstraint.firstAttribute, relatedBy: searchConstraint.relation, toItem: searchConstraint.secondItem, attribute: searchConstraint.secondAttribute, multiplier: 0.75, constant: searchConstraint.constant)
+ bookmarksConstraint = NSLayoutConstraint(item: bookmarksConstraint.firstItem!, attribute: bookmarksConstraint.firstAttribute, relatedBy: bookmarksConstraint.relation, toItem: bookmarksConstraint.secondItem, attribute: bookmarksConstraint.secondAttribute, multiplier: 1.25, constant: bookmarksConstraint.constant)
+ moreConstraint = NSLayoutConstraint(item: moreConstraint.firstItem!, attribute: moreConstraint.firstAttribute, relatedBy: moreConstraint.relation, toItem: moreConstraint.secondItem, attribute: moreConstraint.secondAttribute, multiplier: 1.75, constant: moreConstraint.constant)
+ }
+ NSLayoutConstraint.activate([leftButtonConstraint, searchConstraint, bookmarksConstraint, moreConstraint])
+ }
+
private func updateBadge() {
downloadBadge.isHidden = isApplicationBadgeHidden
- helpBadge.isHidden = !needsToShowHelpBadge()
+ leftButtonBadge.isHidden = !needsToShowleftButtonBadge() || Settings.leftButtonType == .hidden
}
}
// MARK: - Help badge
private extension BottomTabBarViewController {
- private func needsToShowHelpBadge() -> Bool {
+ private func needsToShowleftButtonBadge() -> Bool {
!UserDefaults.standard.bool(forKey: kUDDidShowFirstTimeRoutingEducationalHint)
}
- private func setHelpBadgeShown() {
+ private func setLeftButtonBadgeShown() {
UserDefaults.standard.set(true, forKey: kUDDidShowFirstTimeRoutingEducationalHint)
}
}
diff --git a/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarViewController.xib b/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarViewController.xib
index 5414b6812..21cc7e17e 100644
--- a/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarViewController.xib
+++ b/iphone/Maps/UI/BottomMenu/TabBar/BottomTabBarViewController.xib
@@ -1,9 +1,9 @@
-
+
-
+
@@ -11,11 +11,15 @@
+
-
-
+
+
+
+
+
@@ -27,7 +31,7 @@
-
-
+
@@ -148,6 +152,6 @@
-
+
diff --git a/iphone/Maps/UI/Settings/SettingsView.swift b/iphone/Maps/UI/Settings/SettingsView.swift
index 6a2aa44ce..a860a97df 100644
--- a/iphone/Maps/UI/Settings/SettingsView.swift
+++ b/iphone/Maps/UI/Settings/SettingsView.swift
@@ -16,6 +16,10 @@ struct SettingsView: View {
@State private var hasZoomButtons: Bool = true
+ /// The selected left button type
+ @State private var selectedLeftButtonType: Settings.LeftButtonType = .help
+
+
/// If 3D buildings should be displayed
@State private var has3dBuildings: Bool = true
@@ -100,6 +104,14 @@ struct SettingsView: View {
Toggle("pref_zoom_title", isOn: $hasZoomButtons)
.tint(.accent)
+ Picker(selection: $selectedLeftButtonType) {
+ ForEach(Settings.LeftButtonType.allCases) { leftButtonType in
+ Text(leftButtonType.description)
+ }
+ } label: {
+ Text("pref_left_button_type")
+ }
+
Toggle(isOn: $has3dBuildings) {
VStack(alignment: .leading) {
Text("pref_map_3d_buildings_title")
@@ -239,6 +251,7 @@ struct SettingsView: View {
.onAppear {
selectedDistanceUnit = Settings.distanceUnit
hasZoomButtons = Settings.hasZoomButtons
+ selectedLeftButtonType = Settings.leftButtonType
has3dBuildings = Settings.has3dBuildings
hasAutomaticDownload = Settings.hasAutomaticDownload
hasIncreasedFontsize = Settings.hasIncreasedFontsize
@@ -256,6 +269,9 @@ struct SettingsView: View {
.onChange(of: hasZoomButtons) { changedHasZoomButtons in
Settings.hasZoomButtons = changedHasZoomButtons
}
+ .onChange(of: selectedLeftButtonType) { changedSelectedLeftButtonType in
+ Settings.leftButtonType = changedSelectedLeftButtonType
+ }
.onChange(of: has3dBuildings) { changedHas3dBuildings in
Settings.has3dBuildings = changedHas3dBuildings
}