diff --git a/MyTracks/AndroidManifest.xml b/MyTracks/AndroidManifest.xml index 1676b4310..467c1c518 100755 --- a/MyTracks/AndroidManifest.xml +++ b/MyTracks/AndroidManifest.xml @@ -180,7 +180,7 @@ limitations under the License. + android:resource="@xml/track_widget_info" /> diff --git a/MyTracks/res/layout/appwidget.xml b/MyTracks/res/layout/track_widget.xml similarity index 63% rename from MyTracks/res/layout/appwidget.xml rename to MyTracks/res/layout/track_widget.xml index f092c84be..d22211f75 100644 --- a/MyTracks/res/layout/appwidget.xml +++ b/MyTracks/res/layout/track_widget.xml @@ -48,18 +48,11 @@ limitations under the License. android:layout_width="fill_parent" android:orientation="horizontal"> + style="@style/WidgetText.Register" + android:id="@+id/appwidget_distance_text" /> + style="@style/WidgetText" + android:text="@string/total_distance_label" /> + style="@style/WidgetText.Register" + android:id="@+id/appwidget_time_text" /> + style="@style/WidgetText" + android:text="@string/moving_time_label" /> + style="@style/WidgetText.Register" + android:id="@+id/appwidget_speed_text" /> + style="@style/WidgetText" + android:text="@string/speed" /> diff --git a/MyTracks/res/values/styles.xml b/MyTracks/res/values/styles.xml index b9e0bb68f..54287366c 100644 --- a/MyTracks/res/values/styles.xml +++ b/MyTracks/res/values/styles.xml @@ -74,4 +74,15 @@ limitations under the License. 3dip fill_parent + + + + \ No newline at end of file diff --git a/MyTracks/res/xml/appwidget_info.xml b/MyTracks/res/xml/track_widget_info.xml similarity index 94% rename from MyTracks/res/xml/appwidget_info.xml rename to MyTracks/res/xml/track_widget_info.xml index 455509701..b27d5dbf1 100644 --- a/MyTracks/res/xml/appwidget_info.xml +++ b/MyTracks/res/xml/track_widget_info.xml @@ -16,7 +16,7 @@ limitations under the License. --> diff --git a/MyTracks/src/com/google/android/apps/mytracks/widgets/TrackWidgetProvider.java b/MyTracks/src/com/google/android/apps/mytracks/widgets/TrackWidgetProvider.java index e0bc69913..56f1ace79 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/widgets/TrackWidgetProvider.java +++ b/MyTracks/src/com/google/android/apps/mytracks/widgets/TrackWidgetProvider.java @@ -70,8 +70,10 @@ public class TrackWidgetProvider private String unknown; private String distance; private String speed; + private String pace; private TrackObserver trackObserver; private boolean isMetric; + private boolean reportSpeed; private long selectedTrackId; private SharedPreferences sharedPreferences; private String TRACK_STARTED_ACTION; @@ -141,7 +143,7 @@ public class TrackWidgetProvider AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context); ComponentName widget = new ComponentName(context, TrackWidgetProvider.class); - RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.appwidget); + RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.track_widget); // Make all of the stats open the mytracks activity. Intent intent = new Intent(context, MyTracks.class); @@ -237,7 +239,12 @@ public class TrackWidgetProvider if (!isMetric) { displaySpeed *= UnitConversions.KMH_TO_MPH; } - speed = StringUtils.formatSingleDecimalPlace(displaySpeed) + " " + this.speed; + if (reportSpeed) { + speed = StringUtils.formatSingleDecimalPlace(displaySpeed) + " " + this.speed; + } else { + long displayPace = (long) (3600000.0 / displaySpeed); + speed = StringUtils.formatTime(displayPace) + " " + pace; + } } views.setTextViewText(R.id.appwidget_distance_text, distance); @@ -252,7 +259,14 @@ public class TrackWidgetProvider isMetric = prefs.getBoolean(metricUnitsKey, true); distance = context.getString(isMetric ? R.string.kilometer : R.string.mile); speed = context.getString(isMetric ? R.string.kilometer_per_hour : R.string.mile_per_hour); + pace = context.getString(isMetric ? R.string.min_per_kilometer : R.string.min_per_mile); } + + String reportSpeedKey = context.getString(R.string.report_speed_key); + if (key == null || key.equals(reportSpeedKey)) { + reportSpeed = prefs.getBoolean(reportSpeedKey, true); + } + String selectedTrackKey = context.getString(R.string.selected_track_key); if (key == null || key.equals(selectedTrackKey)) { selectedTrackId = prefs.getLong(selectedTrackKey, -1);