Use Task.createDueDate in deadline control set

Closes #298
pull/321/head
Alex Baker 10 years ago
parent 31b826f93b
commit 7a2992d9d6

@ -18,12 +18,14 @@ import com.todoroo.andlib.data.Table;
import com.todoroo.andlib.data.TodorooCursor; import com.todoroo.andlib.data.TodorooCursor;
import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.andlib.utility.DateUtilities;
import org.joda.time.DateTime;
import org.tasks.BuildConfig; import org.tasks.BuildConfig;
import org.tasks.R; import org.tasks.R;
import java.util.Date; import java.util.Date;
import static org.tasks.date.DateTimeUtils.newDate; import static org.tasks.date.DateTimeUtils.newDate;
import static org.tasks.date.DateTimeUtils.newDateTime;
/** /**
* Data Model which represents a task users need to accomplish. * Data Model which represents a task users need to accomplish.
@ -314,15 +316,16 @@ public class Task extends RemoteModel {
return date; return date;
} }
Date dueDate = newDate(date / 1000L * 1000L); // get rid of millis DateTime dueDate = newDateTime(date).withMillisOfSecond(0);
if(setting != URGENCY_SPECIFIC_DAY_TIME) { if(setting != URGENCY_SPECIFIC_DAY_TIME) {
dueDate.setHours(12); dueDate = dueDate
dueDate.setMinutes(0); .withHourOfDay(12)
dueDate.setSeconds(0); // Seconds == 0 means no due time .withMinuteOfHour(0)
.withSecondOfMinute(0); // Seconds == 0 means no due time
} else { } else {
dueDate.setSeconds(1); // Seconds > 0 means due time exists dueDate = dueDate.withSecondOfMinute(1); // Seconds > 0 means due time exists
} }
return dueDate.getTime(); return dueDate.getMillis();
} }
/** /**

@ -423,18 +423,13 @@ public class DeadlineControlSet extends TaskEditControlSetBase {
@Override @Override
protected void writeToModelAfterInitialized(Task task) { protected void writeToModelAfterInitialized(Task task) {
DateTime dateTime = newDateTime(date); long dueDate = time >= 0
if (time >= 0) { ? Task.createDueDate(Task.URGENCY_SPECIFIC_DAY_TIME, newDateTime(date).withMillisOfDay(time).getMillis())
dateTime = dateTime : Task.createDueDate(Task.URGENCY_SPECIFIC_DAY, date);
.withMillisOfDay(time) if (dueDate != task.getDueDate()) {
.withSecondOfMinute(1)
.withMillisOfSecond(0);
}
long millis = dateTime.getMillis();
if (millis != task.getDueDate()) {
task.setReminderSnooze(0L); task.setReminderSnooze(0L);
} }
task.setDueDate(millis); task.setDueDate(dueDate);
} }
@Override @Override

Loading…
Cancel
Save