Delayed loading of portions of task edit activity to speed up percieved UI responsiveness

pull/14/head
Tim Su 14 years ago
parent d243a170dc
commit 5bad493e79

@ -228,28 +228,34 @@ public final class TaskEditActivity extends TabActivity {
// populate control set
title = (EditText) findViewById(R.id.title);
controls.add(new EditTextControlSet(Task.TITLE, R.id.title));
controls.add(new ImportanceControlSet(R.id.importance_container));
controls.add(new UrgencyControlSet(R.id.urgency));
controls.add(new HideUntilControlSet(R.id.hideUntil));
controls.add(new EditTextControlSet(Task.NOTES, R.id.notes));
new Thread() {
@Override
public void run() {
AndroidUtilities.sleepDeep(500L);
controls.add( new ReminderControlSet(R.id.reminder_due,
R.id.reminder_overdue, R.id.reminder_alarm));
controls.add( new RandomReminderControlSet(R.id.reminder_random,
R.id.reminder_random_interval));
controls.add(new TagsControlSet(this, R.id.tags_container));
runOnUiThread(new Runnable() {
public void run() {
// internal add-ins
controls.add(new HideUntilControlSet(R.id.hideUntil));
controls.add(new EditTextControlSet(Task.NOTES, R.id.notes));
controls.add(new TagsControlSet(TaskEditActivity.this, R.id.tags_container));
LinearLayout extrasAddons = (LinearLayout) findViewById(R.id.tab_extra_addons);
controls.add(new RepeatControlSet(this, extrasAddons));
controls.add(new RepeatControlSet(TaskEditActivity.this, extrasAddons));
LinearLayout addonsAddons = (LinearLayout) findViewById(R.id.tab_addons_addons);
try {
if(ProducteevUtilities.INSTANCE.isLoggedIn()) {
controls.add(new ProducteevControlSet(this, addonsAddons));
controls.add(new ProducteevControlSet(TaskEditActivity.this, addonsAddons));
((TextView)findViewById(R.id.notes)).setHint(R.string.producteev_TEA_notes);
((TextView)findViewById(R.id.notes_label)).setHint(R.string.producteev_TEA_notes);
}
@ -258,9 +264,9 @@ public final class TaskEditActivity extends TabActivity {
}
if(addOnService.hasPowerPack()) {
controls.add(new GCalControlSet(this, addonsAddons));
controls.add(new TimerControlSet(this, addonsAddons));
controls.add(new AlarmControlSet(this, addonsAddons));
controls.add(new GCalControlSet(TaskEditActivity.this, addonsAddons));
controls.add(new TimerControlSet(TaskEditActivity.this, addonsAddons));
controls.add(new AlarmControlSet(TaskEditActivity.this, addonsAddons));
}
// show add-on help if necessary
@ -275,9 +281,18 @@ public final class TaskEditActivity extends TabActivity {
});
}
// re-read all
for(TaskEditControlSet controlSet : controls)
controlSet.readFromTask(model);
}
});
// set up listeners
setUpListeners();
}
}.start();
}
/** Set up button listeners */
private void setUpListeners() {

Loading…
Cancel
Save