diff --git a/MyTracks/AndroidManifest.xml b/MyTracks/AndroidManifest.xml
index fc256591d..6c21fd846 100755
--- a/MyTracks/AndroidManifest.xml
+++ b/MyTracks/AndroidManifest.xml
@@ -22,19 +22,16 @@ limitations under the License.
-
-
-
@@ -46,18 +43,14 @@ limitations under the License.
-
-
-
-
-
-
@@ -143,21 +134,16 @@ limitations under the License.
-
+
-
+ android:name="com.google.android.apps.mytracks.ImportActivity" >
-
@@ -172,17 +158,17 @@ limitations under the License.
+ android:name="com.google.android.apps.mytracks.MarkerEditActivity" />
+ android:value="com.google.android.apps.mytracks.SearchListActivity" />
+
+ android:name="com.google.android.apps.mytracks.SearchListActivity" >
@@ -194,39 +180,25 @@ limitations under the License.
-
-
-
-
-
-
+
+
+ android:value="com.google.android.apps.mytracks.SearchListActivity" />
-
-
-
+
+
+
-
-
-
-
-
-
-
+
-
+
+
+
+
+
+
+
+
+
@@ -247,7 +227,7 @@ limitations under the License.
android:label="@string/my_tracks_recording_service"
android:name="com.google.android.apps.mytracks.services.TrackRecordingService"
android:permission="com.google.android.apps.mytracks.WRITE_TRACK_DATA" />
-
+
@@ -264,7 +244,7 @@ limitations under the License.
android:name="android.appwidget.provider"
android:resource="@xml/track_widget_info" />
-
+
-
-
-
+
+
+
+
diff --git a/MyTracks/res/layout/about.xml b/MyTracks/res/layout/about.xml
index 4e73b7c0e..e98c5982f 100644
--- a/MyTracks/res/layout/about.xml
+++ b/MyTracks/res/layout/about.xml
@@ -15,64 +15,35 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
-
+ style="@style/ScrollView" >
-
-
+ android:drawableLeft="@drawable/my_tracks_icon"
+ android:text="@string/about_copyright_notice"
+ style="@style/TextMedium.WithIcon" />
-
+ android:text="@string/about_version"
+ style="@style/TextLarge" />
-
+ style="@style/AboutValue" />
-
+ android:text="@string/about_support"
+ style="@style/TextLarge" />
-
+ android:text="@string/my_tracks_support_url"
+ style="@style/AboutValue" />
-
+ android:text="@string/about_privacy"
+ style="@style/TextLarge" />
+ android:text="@string/my_tracks_privacy_url"
+ style="@style/AboutValue" />
-
\ No newline at end of file
diff --git a/MyTracks/res/layout/aggregated_stats.xml b/MyTracks/res/layout/aggregated_stats.xml
new file mode 100644
index 000000000..7c8f01024
--- /dev/null
+++ b/MyTracks/res/layout/aggregated_stats.xml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/layout/marker_list_item.xml b/MyTracks/res/layout/chart.xml
similarity index 57%
rename from MyTracks/res/layout/marker_list_item.xml
rename to MyTracks/res/layout/chart.xml
index a4bed83de..b5d169658 100644
--- a/MyTracks/res/layout/marker_list_item.xml
+++ b/MyTracks/res/layout/chart.xml
@@ -15,27 +15,21 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
+ android:orientation="vertical" >
+
+
-
-
-
-
-
+ android:paddingRight="8dp" />
\ No newline at end of file
diff --git a/MyTracks/res/layout/chart_settings.xml b/MyTracks/res/layout/chart_settings.xml
deleted file mode 100644
index e50ae4225..000000000
--- a/MyTracks/res/layout/chart_settings.xml
+++ /dev/null
@@ -1,101 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/MyTracks/res/layout/choose_map.xml b/MyTracks/res/layout/choose_map.xml
index 13f453177..4f5d00f94 100644
--- a/MyTracks/res/layout/choose_map.xml
+++ b/MyTracks/res/layout/choose_map.xml
@@ -14,32 +14,15 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
-
-
+ android:layout_width="fill_parent" >
+ android:layout_width="fill_parent" />
-
+ style="@style/ListEmptyTextView" >
+
+
diff --git a/MyTracks/res/layout/choose_map_item.xml b/MyTracks/res/layout/choose_map_item.xml
index eb27429a1..20da468ef 100644
--- a/MyTracks/res/layout/choose_map_item.xml
+++ b/MyTracks/res/layout/choose_map_item.xml
@@ -15,33 +15,23 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
+ android:padding="8dp" >
+ android:id="@+id/choose_map_item_title"
+ android:singleLine="true"
+ style="@style/TextLarge" />
+ android:id="@+id/choose_map_item_description"
+ android:singleLine="false"
+ android:textColor="@android:color/secondary_text_dark"
+ style="@style/TextSmall" />
-
+ android:id="@+id/choose_map_item_search_status"
+ android:singleLine="true"
+ style="@style/TextSmall" />
+
\ No newline at end of file
diff --git a/MyTracks/res/layout/help.xml b/MyTracks/res/layout/help.xml
index dda328b77..d34e5020d 100644
--- a/MyTracks/res/layout/help.xml
+++ b/MyTracks/res/layout/help.xml
@@ -18,11 +18,103 @@ limitations under the License.
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:orientation="vertical" >
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/MyTracks/res/layout/help_content.xml b/MyTracks/res/layout/help_content.xml
deleted file mode 100644
index 162fe873c..000000000
--- a/MyTracks/res/layout/help_content.xml
+++ /dev/null
@@ -1,114 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/MyTracks/res/layout/track_list_item.xml b/MyTracks/res/layout/list_item.xml
similarity index 65%
rename from MyTracks/res/layout/track_list_item.xml
rename to MyTracks/res/layout/list_item.xml
index 7d21cd38a..fbe066805 100644
--- a/MyTracks/res/layout/track_list_item.xml
+++ b/MyTracks/res/layout/list_item.xml
@@ -26,29 +26,34 @@ limitations under the License.
android:layout_width="fill_parent"
android:orientation="horizontal" >
+ android:id="@+id/list_item_name"
+ android:singleLine="true"
+ style="@style/TextLarge.WithIcon" />
+ android:id="@+id/list_item_category"
+ android:layout_marginLeft="8dp"
+ android:singleLine="true"
+ style="@style/TextSmall" />
+ android:id="@+id/list_item_total_time"
+ android:layout_marginRight="8dp"
+ style="@style/ListItemStats" />
+ android:id="@+id/list_item_total_distance"
+ android:layout_marginRight="8dp"
+ style="@style/ListItemStats" />
+ android:id="@+id/list_item_start_time"
+ style="@style/ListItemStats" />
+ android:id="@+id/list_item_description"
+ android:singleLine="false"
+ android:textColor="@android:color/secondary_text_dark"
+ style="@style/TextSmall" />
\ No newline at end of file
diff --git a/MyTracks/res/layout/map.xml b/MyTracks/res/layout/map.xml
new file mode 100644
index 000000000..95f808304
--- /dev/null
+++ b/MyTracks/res/layout/map.xml
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/layout/marker_add.xml b/MyTracks/res/layout/marker_add.xml
new file mode 100644
index 000000000..49d240da4
--- /dev/null
+++ b/MyTracks/res/layout/marker_add.xml
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/layout/marker_detail.xml b/MyTracks/res/layout/marker_detail.xml
index 80b481a03..cea950238 100644
--- a/MyTracks/res/layout/marker_detail.xml
+++ b/MyTracks/res/layout/marker_detail.xml
@@ -15,8 +15,7 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
+ style="@style/ScrollView" >
+ style="@style/TextLarge" />
+ android:id="@+id/marker_detail_waypoint_marker_type"
+ style="@style/TextLarge" />
+ android:id="@+id/marker_detail_waypoint_description"
+ style="@style/TextLarge" />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
\ No newline at end of file
diff --git a/MyTracks/res/layout/marker_edit.xml b/MyTracks/res/layout/marker_edit.xml
index 9d3ee22d3..84379c705 100644
--- a/MyTracks/res/layout/marker_edit.xml
+++ b/MyTracks/res/layout/marker_edit.xml
@@ -18,10 +18,7 @@ limitations under the License.
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:orientation="vertical" >
-
+
+ android:id="@+id/marker_edit_statistics"
+ android:text="@string/marker_statistics"
+ style="@style/TextMedium" />
+ android:id="@+id/marker_edit_waypoint"
+ android:text="@string/marker_waypoint"
+ style="@style/TextMedium" />
-
+
+
+
+
+ android:text="@string/marker_edit_waypoint_marker_type"
+ style="@style/EditLabel.WithPaddingTop" />
+ style="@style/EditLabel.WithPaddingTop" />
diff --git a/MyTracks/res/layout/marker_list.xml b/MyTracks/res/layout/marker_list.xml
index 18a5936cf..53e230ab5 100644
--- a/MyTracks/res/layout/marker_list.xml
+++ b/MyTracks/res/layout/marker_list.xml
@@ -14,7 +14,7 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
-
+ style="@style/ListEmptyTextView" >
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/MyTracks/res/layout/mytracks_charts.xml b/MyTracks/res/layout/mytracks_charts.xml
deleted file mode 100644
index e015f7676..000000000
--- a/MyTracks/res/layout/mytracks_charts.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/MyTracks/res/layout/mytracks_layout.xml b/MyTracks/res/layout/mytracks_layout.xml
deleted file mode 100644
index 20fec4b55..000000000
--- a/MyTracks/res/layout/mytracks_layout.xml
+++ /dev/null
@@ -1,62 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/MyTracks/res/layout/mytracks_list_item.xml b/MyTracks/res/layout/mytracks_list_item.xml
deleted file mode 100644
index 798632cc0..000000000
--- a/MyTracks/res/layout/mytracks_list_item.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/MyTracks/res/layout/search_list.xml b/MyTracks/res/layout/search_list.xml
index d26e26aab..21995c42c 100644
--- a/MyTracks/res/layout/search_list.xml
+++ b/MyTracks/res/layout/search_list.xml
@@ -14,21 +14,16 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
-
-
+
-
-
\ No newline at end of file
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/layout/sensor_state.xml b/MyTracks/res/layout/sensor_state.xml
index 6a387c299..7a4088436 100644
--- a/MyTracks/res/layout/sensor_state.xml
+++ b/MyTracks/res/layout/sensor_state.xml
@@ -14,67 +14,53 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/layout/stats.xml b/MyTracks/res/layout/stats.xml
index d80189ce4..15b0e9c43 100644
--- a/MyTracks/res/layout/stats.xml
+++ b/MyTracks/res/layout/stats.xml
@@ -14,349 +14,43 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ android:padding="8dp"
+ android:shrinkColumns="0,2"
+ android:stretchColumns="0,2" >
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/layout/stats_core.xml b/MyTracks/res/layout/stats_core.xml
new file mode 100644
index 000000000..b8aabf48e
--- /dev/null
+++ b/MyTracks/res/layout/stats_core.xml
@@ -0,0 +1,116 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/layout/track_detail.xml b/MyTracks/res/layout/track_detail.xml
index 1226d9ec0..e5ec73c2e 100644
--- a/MyTracks/res/layout/track_detail.xml
+++ b/MyTracks/res/layout/track_detail.xml
@@ -16,17 +16,17 @@ limitations under the License.
-->
+ android:layout_height="fill_parent"
+ android:layout_width="fill_parent" >
+ android:layout_width="fill_parent" />
\ No newline at end of file
diff --git a/MyTracks/res/layout/track_edit.xml b/MyTracks/res/layout/track_edit.xml
index 80877293a..8423ad403 100644
--- a/MyTracks/res/layout/track_edit.xml
+++ b/MyTracks/res/layout/track_edit.xml
@@ -18,10 +18,7 @@ limitations under the License.
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:orientation="vertical" >
-
+
+ style="@style/EditLabel.WithPaddingTop" />
+ style="@style/EditLabel.WithPaddingTop" />
-
+ android:orientation="vertical" >
+ android:visibility="gone"
+ style="@style/ListEmptyTextView" >
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/MyTracks/res/layout/track_widget.xml b/MyTracks/res/layout/track_widget.xml
index 958417227..c43096b4c 100644
--- a/MyTracks/res/layout/track_widget.xml
+++ b/MyTracks/res/layout/track_widget.xml
@@ -14,77 +14,71 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
-
-
-
+
-
+ android:layout_width="wrap_content"
+ android:paddingLeft="10dp"
+ android:paddingRight="10dp"
+ android:src="@drawable/app_widget_button_disabled" />
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ android:layout_height="wrap_content"
+ android:layout_width="fill_parent"
+ android:orientation="horizontal" >
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/layout/upload_result.xml b/MyTracks/res/layout/upload_result.xml
index 65f20a9a5..8a95f2916 100644
--- a/MyTracks/res/layout/upload_result.xml
+++ b/MyTracks/res/layout/upload_result.xml
@@ -15,13 +15,12 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
+ style="@style/ScrollView" >
+ android:orientation="vertical"
+ android:padding="8dp" >
+ style="@style/TextMedium" />
+ style="@style/TextSmall" />
@@ -66,20 +62,17 @@ limitations under the License.
android:layout_width="wrap_content"
android:src="@drawable/success" />
+ style="@style/TextMedium" />
+ style="@style/TextSmall" />
@@ -96,36 +89,29 @@ limitations under the License.
android:layout_width="wrap_content"
android:src="@drawable/success" />
+ style="@style/TextMedium" />
+ style="@style/TextSmall" />
+ style="@style/TextSmall" />
+ style="@style/TextMedium" />
\ No newline at end of file
diff --git a/MyTracks/res/layout/upload_service_chooser.xml b/MyTracks/res/layout/upload_service_chooser.xml
index c4cc68a35..189ed9921 100644
--- a/MyTracks/res/layout/upload_service_chooser.xml
+++ b/MyTracks/res/layout/upload_service_chooser.xml
@@ -15,27 +15,21 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
+ style="@style/ScrollView" >
+ android:src="@drawable/google_maps_icon"
+ style="@style/UploadServiceChooserImageView" />
+ style="@style/UploadServiceChooserCheckBox" />
+ style="@style/TextMedium" />
+ style="@style/TextMedium" />
+ android:src="@drawable/google_fusion_tables_icon"
+ style="@style/UploadServiceChooserImageView" />
+ style="@style/UploadServiceChooserCheckBox" />
+ android:src="@drawable/google_docs_icon"
+ style="@style/UploadServiceChooserImageView" />
+ style="@style/UploadServiceChooserCheckBox" />
\ No newline at end of file
diff --git a/MyTracks/res/menu/marker_list_context_menu.xml b/MyTracks/res/menu/list_context_menu.xml
similarity index 78%
rename from MyTracks/res/menu/marker_list_context_menu.xml
rename to MyTracks/res/menu/list_context_menu.xml
index 487b21f27..68aaa23c4 100644
--- a/MyTracks/res/menu/marker_list_context_menu.xml
+++ b/MyTracks/res/menu/list_context_menu.xml
@@ -17,17 +17,17 @@ limitations under the License.
\ No newline at end of file
diff --git a/MyTracks/res/layout/welcome.xml b/MyTracks/res/menu/map.xml
similarity index 71%
rename from MyTracks/res/layout/welcome.xml
rename to MyTracks/res/menu/map.xml
index 6c0cbd992..761acc539 100644
--- a/MyTracks/res/layout/welcome.xml
+++ b/MyTracks/res/menu/map.xml
@@ -1,6 +1,6 @@
-
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/MyTracks/res/menu/marker_detail.xml b/MyTracks/res/menu/marker_detail.xml
index 3bbb168cb..f032ce666 100644
--- a/MyTracks/res/menu/marker_detail.xml
+++ b/MyTracks/res/menu/marker_detail.xml
@@ -18,12 +18,12 @@ limitations under the License.
-
\ No newline at end of file
diff --git a/MyTracks/res/menu/track_detail.xml b/MyTracks/res/menu/track_detail.xml
index 5b48e050b..ccc42927c 100644
--- a/MyTracks/res/menu/track_detail.xml
+++ b/MyTracks/res/menu/track_detail.xml
@@ -18,30 +18,34 @@ limitations under the License.
-
+
-
\ No newline at end of file
diff --git a/MyTracks/res/menu/track_list.xml b/MyTracks/res/menu/track_list.xml
index 8fd39329b..ef23f34fc 100644
--- a/MyTracks/res/menu/track_list.xml
+++ b/MyTracks/res/menu/track_list.xml
@@ -18,12 +18,12 @@ limitations under the License.
+ android:icon="@drawable/menu_import"
+ android:id="@+id/track_list_import"
+ android:title="@string/menu_import"/>
-
+ android:icon="@drawable/menu_save_all"
+ android:id="@+id/track_list_save_all"
+ android:title="@string/menu_save_all">
-
+
+
+
+
+
+
+
+
+
diff --git a/MyTracks/res/values/arrays_do_not_translate.xml b/MyTracks/res/values/arrays_do_not_translate.xml
index 9f4c74502..fb5aeb571 100644
--- a/MyTracks/res/values/arrays_do_not_translate.xml
+++ b/MyTracks/res/values/arrays_do_not_translate.xml
@@ -16,7 +16,6 @@ limitations under the License.
-->
-
- @string/activity_type_airplane
- @string/activity_type_atv
@@ -84,35 +83,28 @@ limitations under the License.
- @string/activity_type_water_skiing
- @string/activity_type_wind_surfing
-
-
- - @string/settings_display_track_color_single
- - @string/settings_display_track_color_fixed
- - @string/settings_display_track_color_dynamic
-
-
-
- - @string/display_track_color_value_none
- - @string/display_track_color_value_fixed
- - @string/display_track_color_value_dynamic
-
-
-
- - GPX
- - KML
- - CSV
- - TCX
-
-
-
+
- 0
- 5
- 10
- 15
- -1
-
-
+
+ - GPX
+ - KML
+ - CSV
+ - TCX
+
+
+ - 50
+ - 100
+ - 200
+ - 500
+ - 1000
+ - 5000
+
+
- 1
- 2
- 3
@@ -121,20 +113,7 @@ limitations under the License.
- 10
- 100
-
-
- - 10
- - 20
- - 50
- - 100
- - 200
- - 500
- - 1000
- - 2000
- - 5000
-
-
-
+
- -2
- -1
- 0
@@ -152,66 +131,77 @@ limitations under the License.
- 900
- 1800
-
-
- - 0
- - -100
- - -50
- - -25
- - -10
- - -5
- - -1
- - 60
- - 30
- - 15
+
- 10
- - 5
- - 2
- - 1
-
-
-
+ - 20
- 50
- 100
- 200
- 500
- 1000
+ - 2000
- 5000
-
-
- - @string/sensor_type_value_ant
- - @string/sensor_type_value_srm_ant_bridge
+
+ - 0
+ - 1
+ - 2
+ - 5
+ - 10
+ - 15
+ - 30
+ - 60
+ - -1
+ - -5
+ - -10
+ - -25
+ - -50
+ - -100
-
-
+
- @string/settings_sensor_type_none
- @string/settings_sensor_type_ant
- @string/settings_sensor_type_srm
- @string/settings_sensor_type_polar
- @string/settings_sensor_type_zephyr
-
-
+
- @string/sensor_type_value_none
- @string/sensor_type_value_ant
- @string/sensor_type_value_srm_ant_bridge
- @string/sensor_type_value_polar
- @string/sensor_type_value_zephyr
-
-
+
+ - @string/settings_sensor_type_none
+ - @string/settings_sensor_type_polar
+ - @string/settings_sensor_type_zephyr
+
+
+ - @string/sensor_type_value_none
+ - @string/sensor_type_value_polar
+ - @string/sensor_type_value_zephyr
+
+
+ - @string/settings_map_track_color_mode_single
+ - @string/settings_map_track_color_mode_fixed
+ - @string/settings_map_track_color_mode_dynamic
+
+
+ - @string/settings_map_track_color_mode_single_value
+ - @string/settings_map_track_color_mode_fixed_value
+ - @string/settings_map_track_color_mode_dynamic_value
+
+
- @string/settings_recording_track_name_date_local_option
- @string/settings_recording_track_name_date_iso_8601_option
- @string/settings_recording_track_name_number_option
-
-
+
- @string/settings_recording_track_name_date_local_value
- @string/settings_recording_track_name_date_iso_8601_value
- @string/settings_recording_track_name_number_value
-
- @string/waypoint_type_atm
- @string/waypoint_type_bank
diff --git a/MyTracks/res/values/colors.xml b/MyTracks/res/values/colors.xml
index 9f396f181..936356e81 100644
--- a/MyTracks/res/values/colors.xml
+++ b/MyTracks/res/values/colors.xml
@@ -17,13 +17,13 @@ limitations under the License.
#FF000000
#FF0000FF
- #FF00FF00
#FFAAAAAA
#FFFF0000
- #FFF0F0F0
- #FF0F0F0F
#FFFFFFFF
+
+ #FFFF8800
+
#FF339933
@@ -46,7 +46,6 @@ limitations under the License.
#40401465
- #EDEDED
#99999999
diff --git a/MyTracks/res/values/do_not_translate.xml b/MyTracks/res/values/do_not_translate.xml
index b1dcb20eb..3bad2cdf7 100644
--- a/MyTracks/res/values/do_not_translate.xml
+++ b/MyTracks/res/values/do_not_translate.xml
@@ -16,36 +16,25 @@ limitations under the License.
-->
- 25
- 15
- 9
- DYNAMIC
- FIXED
- NONE
-
- http://maps.google.com/mapfiles/ms/micons/ylw-pushpin.png
-
-
- http://maps.google.com/mapfiles/ms/micons/blue-pushpin.png
-
- UA-7222692-2
+ http://maps.google.com/mapfiles/ms/micons/ylw-pushpin.png
+ http://maps.google.com/mapfiles/ms/micons/blue-pushpin.png
+ UA-7222692-2
www.google.com/policies/privacy/
My Tracks Recording Service
-
- groups.google.com/a/googleproductforums.com/forum/#!categories/maps/mytracks
-
+ groups.google.com/a/googleproductforums.com/forum/#!categories/maps/mytracks
www.google.com/mobile/mytracks
-
- com.google.android.apps.mytracks.MYTRACKS_NOTIFICATIONS
-
+ com.google.android.apps.mytracks.MYTRACKS_NOTIFICATIONS
docs.google.com
google.com/fusiontables
maps.google.com
- ANT
+ ANT
NONE
POLAR
SRM_ANT_BRIDGE
ZEPHYR
+ DYNAMIC
+ FIXED
+ SINGLE
DATE_ISO_8601
DATE_LOCAL
NUMBER
@@ -53,4 +42,4 @@ limitations under the License.
android.intent.action.SAVE
com.google.android.apps.mytracks.START_NEW_TRACK
-
-
+
\ No newline at end of file
diff --git a/MyTracks/res/values/keys.xml b/MyTracks/res/values/keys.xml
index ca42cc92d..2d8f93aa9 100644
--- a/MyTracks/res/values/keys.xml
+++ b/MyTracks/res/values/keys.xml
@@ -15,16 +15,22 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
-
+
allowAccess
announcementFrequency
antCadenceSensorId
antCadenceSpeedSensorId
antHeartRateSensorId
- antSRMBridgeSensorId
+ antSrmBridgeSensorId
+ autoResumeTrackCurrentRetry
autoResumeTrackTimeout
- bluetoothPairing
bluetoothSensor
+ chartByDistance
+ chartShowCadence
+ chartShowElevation
+ chartShowHeartRate
+ chartShowPower
+ chartShowSpeed
defaultActivity
defaultMapPublic
maxRecordingDistance
@@ -33,36 +39,44 @@ limitations under the License.
minRecordingInterval
minRequiredAccuracy
pickExistingMap
+ pickStatisticsMarker
preferredAccount
+ recordingTrackId
reportSpeed
+ selectedTrackId
sendToDocs
sendToFusionTables
sendToMaps
sensorType
shareUrlOnly
+ showCheckUnitsDialog
+ showWelcomeDialog
splitFrequency
- trackColorModeDynamicVariation
-
- trackColorModeFixedMediumDisplay
-
- trackColorModeFixedMedium
- trackColorModeFixedSlowDisplay
-
- trackColorModeFixedSlow
+ statsShowCoordinate
+ statsShowElevation
+ statsShowGrade
+ statsUseTotalTime
+ trackColorModeMedium
+ trackColorModePercentage
+ trackColorModeSlow
trackColorMode
trackName
-
-
- autoResumeTrackCurrentRetry
- recordingTrackId
- selectedTrackId
-
-
- antOptions
- backupToSd
- resetToDefaults
- restoreFromSd
- sensorOptions
- trackColorModeFixedOptions
-
+
+ settingsBackup
+ settingsBackupNow
+ settingsBackupRestore
+ settingsChart
+ settingsMap
+ settingsMapMediumDisplay
+ settingsMapPercentageDisplay
+ settingsMapSlowDisplay
+ settingsRecording
+ settingsReset
+ settingsSensor
+ settingsSensorAnt
+ settingsSensorBluetooth
+ settingsSensorBluetoothPairing
+ settingsSensorRoot
+ settingsSharing
+ settingsStats
+
\ No newline at end of file
diff --git a/MyTracks/res/values/strings.xml b/MyTracks/res/values/strings.xml
index b6a28e4dd..7e03389db 100644
--- a/MyTracks/res/values/strings.xml
+++ b/MyTracks/res/values/strings.xml
@@ -416,30 +416,6 @@ limitations under the License.
Record and share your GPS tracks with My Tracks.
-
-
- By distance
-
-
- By time
-
-
- X axis
-
-
- Y axis
-
-
+ translation_description="Label for location altitude in meters.">
Altitude (m)
-
-
- Unable to export.
-
-
- Exporting all tracks...
-
-
- Export finished.
-
-
+
+ Add
+
Cancel
@@ -670,6 +634,10 @@ limitations under the License.
translation_description="The title on an alert dialog indicating error.">
Error
+
+ More options
+
Name
@@ -695,8 +663,8 @@ limitations under the License.
- Please tap here to go to \'Location & security\' settings & check
- \'Use GPS satellites\'. Press the back button to return.
+ Tap here to go to \'Location services\' settings & check \'GPS satellites\'. Press the back
+ button to return.
@@ -929,11 +897,6 @@ limitations under the License.
'Maps' list page informing the user that he doesn't have any maps.">
You don\'t have any maps.
-
- Pick a map:
-
@@ -946,8 +909,8 @@ limitations under the License.
- Your Google Maps
+ page asking the user to pick a map.">
+ Pick a Map
+ Unable to insert a marker. Try again.
+
+
+ A marker was inserted.
+
The marker will be permanently deleted from the phone.
-
+ Name: %1$s
+
+
Description: %1$s
-
Marker type: %1$s
-
- Name: %1$s
-
-
- Add
-
-
- Unable to insert a marker. Try again.
-
-
- A marker was inserted.
-
-
- New Marker
-
-
+
Marker type (e.g. building, pothole...)
-
+
Marker type
-
-
- Type
-
-
- Statistics
-
-
- Waypoint
-
+
You don\'t have any markers.
+
+ Statistics
+
+
+ Statistics %1$d
+
+
+ Type
+
+
+ Waypoint
+
+
+ Waypoint %1$d
+
+
Aggregated statistics
-
- Chart settings
-
Delete all
@@ -1057,25 +1022,13 @@ limitations under the License.
translation_description="In the menu, to edit a track or a marker.">
Edit
-
- Export all...
-
-
- Export as %1$s
-
Help
-
- Import all
+
+ Import from SD card
@@ -1089,10 +1042,6 @@ limitations under the License.
translation_description="In the menu, to show a list of markers for the current track.">
Markers
-
- My location
-
Play
@@ -1110,12 +1059,17 @@ limitations under the License.
submenu.">
Save to SD card...
+
+ Save all to SD card...
+
- As a %1$s file
+ Save as %1$s
@@ -1133,40 +1087,43 @@ limitations under the License.
translation_description="In the menu, to go to the settings page.">
Settings
+
+ Share
+
+
+ %1$s file
+
+
+ Fusion Table URL
+
+
+ Map URL
+
Show on map
-
+
Stop recording
-
- Share with friends...
-
-
- A %1$s file
-
-
- Fusion Table
-
-
- Map
-
+
+ My Location
+
@@ -1184,11 +1141,6 @@ limitations under the License.
translation_description="The My Tracks application name.">
My Tracks
-
- My Tracks Importer
-
- Imperial
+
+
+ Unable to save.
-
- Metric
+
+ Saving all tracks...
-
- Preferred units
+
+ Save finished.
-
+
- Tracks and waypoints
+ Tracks and markers
Search My Tracks
-
- No tracks or waypoints matched your search.
+
+ No tracks or markers matched your search.
-
In track \'%1$s\'.
@@ -1315,7 +1265,7 @@ limitations under the License.
- Speak the name of a track or waypoint.
+ Speak the name of a track or marker.
@@ -1481,7 +1431,7 @@ limitations under the License.
Sending
-
+
Restore all tracks and settings from the SD card.
-
- SD card
+
+
+ By distance
+
+
+ By time
+
+
+ X axis
-
- Display
+
+
+ Top medium speed
-
- Use metric
+
+ Percentage from average
-
- Use imperial units to display distances.
-
-
- Use metric units to display distances.
-
-
- Display speed
-
-
- Display pace (e.g., hours/mile).
-
-
- Display speed (e.g., miles/hour).
-
-
- Color mode
-
-
- Dynamic thresholds
-
-
- Percentage
-
-
Percentage from the average speed for the medium speed range.
-
+
+ Top slow speed
+
+
+ Track color mode
+
+
+ Dynamic thresholds
+
+
Fixed thresholds
-
- Medium speed
-
-
- Medium speed top value.
-
-
- Slow speed
-
-
- Slow speed top value.
-
-
+
Single color
-
+
The way to color a track based on slow, medium, and fast speed.
+
+
+
+ Show
+
Not available while recording a track.
+
+
Time/distance between two voice announcements.
+
+
Revert all your settings to the default values.
+
+
Unpair SRM ANT+ bridge
+
+
Remove any descriptive text when sharing a URL with friends.
-
- My Tracks settings
+
+
+
+ Latitude/Longitude
+
+
+ Grade
+
+
+ Pace (hr/mi)
+
+
+ Pace (hr/km)
+
+
+ Speed (mi/hr)
+
+
+ Speed (km/hr)
+
+
+ Preferred rate
+
+
+ Time measurement
+
+
+ Imperial (mi, ft)
+
+
+ Metric (km, m)
+
+
+ Preferred units
@@ -2068,81 +2021,81 @@ limitations under the License.
I think you might be interested in this track:\n\n%1$s
-
-
+
+
Average moving pace
-
+
Average moving speed
-
+
Average pace
-
+
Average speed
-
+
Elevation
-
+
Elevation gain
-
+
Fastest pace
-
+
Latitude
-
+
Longitude
-
+
Max elevation
-
+
Max grade
-
+
Max speed
-
+
Min elevation
-
+
Min grade
-
+
Moving time
-
+
Pace
-
+
Speed
-
+
Total distance
-
+
Total time
@@ -2279,7 +2232,7 @@ limitations under the License.
%1$.2f: a float number. E.g., '2.22'">
%1$.2f km
-
@@ -2350,6 +2303,12 @@ limitations under the License.
%1$d: an integer value. E.g., '2'">
%1$d km
+
+ %1$d km/h
+
%1$d mi
+
+ %1$d mi/h
+
Smallest (recommended)
-
+
+ %1$s \u00B0
+
+
+ Use My Tracks while you run, bike, hike, or do anything outdoor to record your path. While
+ recording, you can visualize your track and watch live statistics. You can also add
+ markers, have markers inserted periodically, or hear automatic voice announcements of
+ your progress. For recorded tracks, you can play them on Google Earth, share with friends, or
+ upload to Google Maps, Google Fusion Tables, or Google Docs.
+
Welcome to My Tracks
diff --git a/MyTracks/res/values/styles.xml b/MyTracks/res/values/styles.xml
index a8988005a..a3716c7f7 100644
--- a/MyTracks/res/values/styles.xml
+++ b/MyTracks/res/values/styles.xml
@@ -15,207 +15,151 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
-
-
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/xml/backup_settings.xml b/MyTracks/res/xml/backup_settings.xml
new file mode 100644
index 000000000..e336832e9
--- /dev/null
+++ b/MyTracks/res/xml/backup_settings.xml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/xml/chart_settings.xml b/MyTracks/res/xml/chart_settings.xml
new file mode 100644
index 000000000..011a75e5a
--- /dev/null
+++ b/MyTracks/res/xml/chart_settings.xml
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/xml/map_settings.xml b/MyTracks/res/xml/map_settings.xml
new file mode 100644
index 000000000..a3365a254
--- /dev/null
+++ b/MyTracks/res/xml/map_settings.xml
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/xml/preferences.xml b/MyTracks/res/xml/preferences.xml
deleted file mode 100644
index 3b6191c09..000000000
--- a/MyTracks/res/xml/preferences.xml
+++ /dev/null
@@ -1,235 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/MyTracks/res/xml/recording_settings.xml b/MyTracks/res/xml/recording_settings.xml
new file mode 100644
index 000000000..b79455ec4
--- /dev/null
+++ b/MyTracks/res/xml/recording_settings.xml
@@ -0,0 +1,73 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/xml/search.xml b/MyTracks/res/xml/search.xml
index 46ce021ed..a4dfcbda5 100644
--- a/MyTracks/res/xml/search.xml
+++ b/MyTracks/res/xml/search.xml
@@ -1,11 +1,13 @@
\ No newline at end of file
+ android:hint="@string/search_hint"
+ android:imeOptions="actionSearch"
+ android:includeInGlobalSearch="true"
+ android:label="@string/my_tracks_app_name"
+ android:queryAfterZeroResults="true"
+ android:searchSettingsDescription="@string/search_global_description"
+ android:searchSuggestAuthority="com.google.android.maps.mytracks.search"
+ android:searchSuggestSelection=" ? "
+ android:searchSuggestThreshold="1"
+ android:voicePromptText="@string/search_voice_prompt"
+ android:voiceSearchMode="showVoiceSearchButton|launchRecognizer" />
diff --git a/MyTracks/res/xml/sensor_settings.xml b/MyTracks/res/xml/sensor_settings.xml
new file mode 100644
index 000000000..d7904d6a1
--- /dev/null
+++ b/MyTracks/res/xml/sensor_settings.xml
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/xml/settings.xml b/MyTracks/res/xml/settings.xml
new file mode 100644
index 000000000..ff24e55be
--- /dev/null
+++ b/MyTracks/res/xml/settings.xml
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/xml/sharing_settings.xml b/MyTracks/res/xml/sharing_settings.xml
new file mode 100644
index 000000000..04276f123
--- /dev/null
+++ b/MyTracks/res/xml/sharing_settings.xml
@@ -0,0 +1,37 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/res/xml/stats_settings.xml b/MyTracks/res/xml/stats_settings.xml
new file mode 100644
index 000000000..9186c4a09
--- /dev/null
+++ b/MyTracks/res/xml/stats_settings.xml
@@ -0,0 +1,49 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyTracks/src/com/google/android/apps/mytracks/AbstractMyTracksActivity.java b/MyTracks/src/com/google/android/apps/mytracks/AbstractMyTracksActivity.java
new file mode 100644
index 000000000..b899016bc
--- /dev/null
+++ b/MyTracks/src/com/google/android/apps/mytracks/AbstractMyTracksActivity.java
@@ -0,0 +1,55 @@
+/*
+ * Copyright 2012 Google Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+package com.google.android.apps.mytracks;
+
+import com.google.android.apps.mytracks.util.ApiAdapterFactory;
+
+import android.os.Bundle;
+import android.speech.tts.TextToSpeech;
+import android.support.v4.app.FragmentActivity;
+import android.view.MenuItem;
+
+/**
+ * An abstract class for all My Tracks activities.
+ *
+ * @author Jimmy Shih
+ */
+public class AbstractMyTracksActivity extends FragmentActivity {
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setVolumeControlStream(TextToSpeech.Engine.DEFAULT_STREAM);
+ ApiAdapterFactory.getApiAdapter().configureActionBarHomeAsUp(this);
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ if (item.getItemId() != android.R.id.home) {
+ return super.onOptionsItemSelected(item);
+ }
+ onHomeSelected();
+ return true;
+ }
+
+ /**
+ * Callback when the home menu item is selected.
+ */
+ protected void onHomeSelected() {
+ finish();
+ }
+}
diff --git a/MyTracks/src/com/google/android/apps/mytracks/AggregatedStatsActivity.java b/MyTracks/src/com/google/android/apps/mytracks/AggregatedStatsActivity.java
index f36cf6549..70edb2f37 100644
--- a/MyTracks/src/com/google/android/apps/mytracks/AggregatedStatsActivity.java
+++ b/MyTracks/src/com/google/android/apps/mytracks/AggregatedStatsActivity.java
@@ -1,128 +1,59 @@
+/*
+ * Copyright 2012 Google Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
package com.google.android.apps.mytracks;
import com.google.android.apps.mytracks.content.MyTracksProviderUtils;
import com.google.android.apps.mytracks.content.Track;
import com.google.android.apps.mytracks.stats.TripStatistics;
-import com.google.android.apps.mytracks.util.ApiAdapterFactory;
+import com.google.android.apps.mytracks.util.StatsUtils;
import com.google.android.maps.mytracks.R;
-import android.app.Activity;
-import android.content.Context;
-import android.content.Intent;
-import android.content.SharedPreferences;
-import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.os.Bundle;
-import android.util.DisplayMetrics;
-import android.util.Log;
-import android.view.MenuItem;
-import android.widget.ScrollView;
-import android.widget.TextView;
import java.util.List;
/**
- * Activity for viewing the combined statistics for all the recorded tracks.
- *
- * Other features to add - menu items to change setings.
+ * An activity to view aggregated stats from all recorded tracks.
*
* @author Fergus Nelson
*/
-public class AggregatedStatsActivity extends Activity implements
- OnSharedPreferenceChangeListener {
-
- private final StatsUtilities utils;
-
- private MyTracksProviderUtils tracksProvider;
-
- private boolean metricUnits = true;
-
- public AggregatedStatsActivity() {
- this.utils = new StatsUtilities(this);
- }
-
- @Override
- public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
- String key) {
- Log.d(Constants.TAG, "StatsActivity: onSharedPreferences changed "
- + key);
- if (key != null) {
- if (key.equals(getString(R.string.metric_units_key))) {
- metricUnits = sharedPreferences.getBoolean(
- getString(R.string.metric_units_key), true);
- utils.setMetricUnits(metricUnits);
- utils.updateUnits();
- loadAggregatedStats();
- }
- }
- }
+public class AggregatedStatsActivity extends AbstractMyTracksActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
-
- this.tracksProvider = MyTracksProviderUtils.Factory.get(this);
-
- ApiAdapterFactory.getApiAdapter().configureActionBarHomeAsUp(this);
-
- setContentView(R.layout.stats);
-
- ScrollView sv = ((ScrollView) findViewById(R.id.scrolly));
- sv.setScrollBarStyle(ScrollView.SCROLLBARS_OUTSIDE_INSET);
-
- SharedPreferences preferences = getSharedPreferences(
- Constants.SETTINGS_NAME, Context.MODE_PRIVATE);
- if (preferences != null) {
- metricUnits = preferences.getBoolean(getString(R.string.metric_units_key), true);
- preferences.registerOnSharedPreferenceChangeListener(this);
- }
- utils.setMetricUnits(metricUnits);
- utils.updateUnits();
- utils.setSpeedLabel(R.id.speed_label, R.string.stat_speed, R.string.stat_pace);
- utils.setSpeedLabels();
-
- DisplayMetrics metrics = new DisplayMetrics();
- getWindowManager().getDefaultDisplay().getMetrics(metrics);
- if (metrics.heightPixels > 600) {
- ((TextView) findViewById(R.id.speed_register)).setTextSize(80.0f);
- }
- loadAggregatedStats();
- }
-
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- if (item.getItemId() != android.R.id.home) {
- return false;
- }
- startActivity(new Intent(this, TrackListActivity.class)
- .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK));
- return true;
+ setContentView(R.layout.aggregated_stats);
+ StatsUtils.setTripStatisticsValues(this, getTripStatistics());
+ StatsUtils.setLocationValues(this, null, false);
}
/**
- * 1. Reads tracks from the db
- * 2. Merges the trip stats from the tracks
- * 3. Updates the view
+ * Gets the aggregated trip statistics for all the recorded tracks or null if
+ * there is no track.
*/
- private void loadAggregatedStats() {
- List