diff --git a/app/src/main/java/be/digitalia/fosdem/adapters/EventsAdapter.java b/app/src/main/java/be/digitalia/fosdem/adapters/EventsAdapter.java index b8ff34d..e6fb81c 100644 --- a/app/src/main/java/be/digitalia/fosdem/adapters/EventsAdapter.java +++ b/app/src/main/java/be/digitalia/fosdem/adapters/EventsAdapter.java @@ -1,8 +1,5 @@ package be.digitalia.fosdem.adapters; -import java.text.DateFormat; -import java.util.Date; - import android.content.Context; import android.database.Cursor; import android.support.v4.widget.CursorAdapter; @@ -14,6 +11,10 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; + +import java.text.DateFormat; +import java.util.Date; + import be.digitalia.fosdem.R; import be.digitalia.fosdem.db.DatabaseManager; import be.digitalia.fosdem.model.Event; @@ -21,9 +22,8 @@ import be.digitalia.fosdem.utils.DateUtils; public class EventsAdapter extends CursorAdapter { - private static final DateFormat TIME_DATE_FORMAT = DateUtils.getTimeDateFormat(); - private final LayoutInflater inflater; + private final DateFormat timeDateFormat; private final int titleTextSize; private final boolean showDay; @@ -34,6 +34,7 @@ public class EventsAdapter extends CursorAdapter { public EventsAdapter(Context context, boolean showDay) { super(context, null, 0); inflater = LayoutInflater.from(context); + timeDateFormat = DateUtils.getTimeDateFormat(context); titleTextSize = context.getResources().getDimensionPixelSize(R.dimen.list_item_title_text_size); this.showDay = showDay; } @@ -80,8 +81,8 @@ public class EventsAdapter extends CursorAdapter { Date startTime = event.getStartTime(); Date endTime = event.getEndTime(); - String startTimeString = (startTime != null) ? TIME_DATE_FORMAT.format(startTime) : "?"; - String endTimeString = (endTime != null) ? TIME_DATE_FORMAT.format(endTime) : "?"; + String startTimeString = (startTime != null) ? timeDateFormat.format(startTime) : "?"; + String endTimeString = (endTime != null) ? timeDateFormat.format(endTime) : "?"; String details; if (showDay) { details = String.format("%1$s, %2$s ― %3$s | %4$s", event.getDay().getShortName(), startTimeString, endTimeString, event.getRoomName()); diff --git a/app/src/main/java/be/digitalia/fosdem/fragments/EventDetailsFragment.java b/app/src/main/java/be/digitalia/fosdem/fragments/EventDetailsFragment.java index 9c5f740..4e25400 100644 --- a/app/src/main/java/be/digitalia/fosdem/fragments/EventDetailsFragment.java +++ b/app/src/main/java/be/digitalia/fosdem/fragments/EventDetailsFragment.java @@ -75,8 +75,6 @@ public class EventDetailsFragment extends Fragment { private static final String ARG_EVENT = "event"; - private static final DateFormat TIME_DATE_FORMAT = DateUtils.getTimeDateFormat(); - private Event event; private int personsCount = 1; private Boolean isBookmarked; @@ -135,8 +133,11 @@ public class EventDetailsFragment extends Fragment { ((TextView) view.findViewById(R.id.track)).setText(event.getTrack().getName()); Date startTime = event.getStartTime(); Date endTime = event.getEndTime(); - text = String.format("%1$s, %2$s ― %3$s", event.getDay().toString(), (startTime != null) ? TIME_DATE_FORMAT.format(startTime) : "?", - (endTime != null) ? TIME_DATE_FORMAT.format(endTime) : "?"); + DateFormat timeDateFormat = DateUtils.getTimeDateFormat(getActivity()); + text = String.format("%1$s, %2$s ― %3$s", + event.getDay().toString(), + (startTime != null) ? timeDateFormat.format(startTime) : "?", + (endTime != null) ? timeDateFormat.format(endTime) : "?"); ((TextView) view.findViewById(R.id.time)).setText(text); final String roomName = event.getRoomName(); TextView roomTextView = (TextView) view.findViewById(R.id.room); diff --git a/app/src/main/java/be/digitalia/fosdem/fragments/TrackScheduleListFragment.java b/app/src/main/java/be/digitalia/fosdem/fragments/TrackScheduleListFragment.java index 43416e0..5823e60 100644 --- a/app/src/main/java/be/digitalia/fosdem/fragments/TrackScheduleListFragment.java +++ b/app/src/main/java/be/digitalia/fosdem/fragments/TrackScheduleListFragment.java @@ -1,7 +1,5 @@ package be.digitalia.fosdem.fragments; -import java.text.DateFormat; - import android.app.Activity; import android.content.Context; import android.content.res.Resources; @@ -23,6 +21,9 @@ import android.view.View; import android.view.ViewGroup; import android.widget.ListView; import android.widget.TextView; + +import java.text.DateFormat; + import be.digitalia.fosdem.R; import be.digitalia.fosdem.db.DatabaseManager; import be.digitalia.fosdem.loaders.TrackScheduleLoader; @@ -158,10 +159,10 @@ public class TrackScheduleListFragment extends SmoothListFragment implements Han @Override public boolean handleMessage(Message msg) { switch (msg.what) { - case REFRESH_TIME_WHAT: - adapter.setCurrentTime(System.currentTimeMillis()); - handler.sendEmptyMessageDelayed(REFRESH_TIME_WHAT, REFRESH_TIME_INTERVAL); - return true; + case REFRESH_TIME_WHAT: + adapter.setCurrentTime(System.currentTimeMillis()); + handler.sendEmptyMessageDelayed(REFRESH_TIME_WHAT, REFRESH_TIME_INTERVAL); + return true; } return false; } @@ -239,9 +240,8 @@ public class TrackScheduleListFragment extends SmoothListFragment implements Han private static class TrackScheduleAdapter extends CursorAdapter { - private static final DateFormat TIME_DATE_FORMAT = DateUtils.getTimeDateFormat(); - private final LayoutInflater inflater; + private final DateFormat timeDateFormat; private final int timeBackgroundColor; private final int timeForegroundColor; private final int timeRunningBackgroundColor; @@ -252,6 +252,7 @@ public class TrackScheduleListFragment extends SmoothListFragment implements Han public TrackScheduleAdapter(Context context) { super(context, null, 0); inflater = LayoutInflater.from(context); + timeDateFormat = DateUtils.getTimeDateFormat(context); Resources res = context.getResources(); timeBackgroundColor = res.getColor(R.color.schedule_time_background); timeForegroundColor = res.getColor(R.color.schedule_time_foreground); @@ -292,7 +293,7 @@ public class TrackScheduleListFragment extends SmoothListFragment implements Han Event event = DatabaseManager.toEvent(cursor, holder.event); holder.event = event; - holder.time.setText(TIME_DATE_FORMAT.format(event.getStartTime())); + holder.time.setText(timeDateFormat.format(event.getStartTime())); if ((currentTime != -1L) && event.isRunningAtTime(currentTime)) { // Contrast colors for running event holder.time.setBackgroundColor(timeRunningBackgroundColor); diff --git a/app/src/main/java/be/digitalia/fosdem/utils/DateUtils.java b/app/src/main/java/be/digitalia/fosdem/utils/DateUtils.java index fcd81c5..df4bc66 100644 --- a/app/src/main/java/be/digitalia/fosdem/utils/DateUtils.java +++ b/app/src/main/java/be/digitalia/fosdem/utils/DateUtils.java @@ -1,16 +1,14 @@ package be.digitalia.fosdem.utils; +import android.content.Context; + import java.text.DateFormat; -import java.text.SimpleDateFormat; -import java.util.Locale; import java.util.TimeZone; public class DateUtils { private static final TimeZone BELGIUM_TIME_ZONE = TimeZone.getTimeZone("GMT+1"); - private static final DateFormat TIME_DATE_FORMAT = withBelgiumTimeZone(SimpleDateFormat.getTimeInstance(SimpleDateFormat.SHORT, Locale.getDefault())); - public static TimeZone getBelgiumTimeZone() { return BELGIUM_TIME_ZONE; } @@ -20,7 +18,7 @@ public class DateUtils { return format; } - public static DateFormat getTimeDateFormat() { - return TIME_DATE_FORMAT; + public static DateFormat getTimeDateFormat(Context context) { + return withBelgiumTimeZone(android.text.format.DateFormat.getTimeFormat(context)); } }