Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/MylarTasklistPlugin.java')
-rw-r--r--org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/MylarTasklistPlugin.java53
1 files changed, 32 insertions, 21 deletions
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/MylarTasklistPlugin.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/MylarTasklistPlugin.java
index 2b5cf806c..4b82e6127 100644
--- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/MylarTasklistPlugin.java
+++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/MylarTasklistPlugin.java
@@ -31,6 +31,8 @@ import org.eclipse.mylar.tasklist.report.internal.ReminderRequiredCollector;
import org.eclipse.mylar.tasklist.report.internal.TaskReportGenerator;
import org.eclipse.mylar.tasklist.ui.TasksReminderDialog;
import org.eclipse.mylar.tasklist.ui.views.TaskListView;
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
import org.eclipse.swt.events.ShellEvent;
import org.eclipse.swt.events.ShellListener;
import org.eclipse.ui.IStartup;
@@ -78,7 +80,6 @@ public class MylarTasklistPlugin extends AbstractUIPlugin implements IStartup {
public static final String FILTER_INCOMPLETE_MODE = "org.eclipse.mylar.tasklist.filter.incomplete";
public static final String SAVE_TASKLIST_MODE = "org.eclipse.mylar.tasklist.save.mode";
public static final String PREVIOUS_SAVE_DATE = "org.eclipse.mylar.tasklist.save.last";
-// public static final String REMINDER_CHECK = "org.eclipse.mylar.tasklist.reminder.check";
private ResourceBundle resourceBundle;
private static Date lastSave = null;
@@ -175,28 +176,33 @@ public class MylarTasklistPlugin extends AbstractUIPlugin implements IStartup {
};
+ /**
+ * TODO: move into reminder mechanims
+ */
private static ShellListener SHELL_LISTENER = new ShellListener() {
public void shellClosed(ShellEvent arg0) {
-// getDefault().saveState();
+ // ignore
}
/**
* bug 1002249: too slow to save state here
*/
public void shellDeactivated(ShellEvent arg0) {
- //
+ // ignore
}
public void shellActivated(ShellEvent arg0) {
- getDefault().checkTaskListSave();
+// getDefault().checkTaskListSave();
getDefault().checkReminders();
}
- public void shellDeiconified(ShellEvent arg0) { }
+ public void shellDeiconified(ShellEvent arg0) {
+ // ingore
+ }
public void shellIconified(ShellEvent arg0) {
-// getDefault().saveState();
+ // ignore
}
};
@@ -240,6 +246,11 @@ public class MylarTasklistPlugin extends AbstractUIPlugin implements IStartup {
workbench.getDisplay().syncExec(new Runnable() {
public void run() {
Workbench.getInstance().getActiveWorkbenchWindow().getShell().addShellListener(SHELL_LISTENER);
+ Workbench.getInstance().getActiveWorkbenchWindow().getShell().addDisposeListener(new DisposeListener() {
+ public void widgetDisposed(DisposeEvent e) {
+ getDefault().saveTaskListAndContexts();
+ }
+ });
MylarPlugin.getDefault().getPluginPreferences().addPropertyChangeListener(PREFERENCE_LISTENER);
taskListManager.readTaskList();
@@ -317,7 +328,7 @@ public class MylarTasklistPlugin extends AbstractUIPlugin implements IStartup {
/**
* TODO: make private
*/
- public void saveState() {
+ public void saveTaskListAndContexts() {
taskListManager.saveTaskList();
for(ITask task : taskListManager.getTaskList().getActiveTasks()) {
MylarPlugin.getContextManager().saveContext(task.getHandle(), task.getPath());
@@ -326,20 +337,20 @@ public class MylarTasklistPlugin extends AbstractUIPlugin implements IStartup {
plugin.getPreferenceStore().setValue(PREVIOUS_SAVE_DATE, lastSave.getTime());
}
- private void checkTaskListSave() {
- if (getPrefs().contains(PREVIOUS_SAVE_DATE)) {
- lastSave = new Date(getPrefs().getLong(PREVIOUS_SAVE_DATE));
- } else {
- lastSave = new Date();
- getPrefs().setValue(PREVIOUS_SAVE_DATE, lastSave.getTime());
- }
- Date currentTime = new Date();
- if (currentTime.getTime() > lastSave.getTime() + TaskListSaveMode.fromStringToLong(getPrefs().getString(SAVE_TASKLIST_MODE))) {
- taskListManager.saveTaskList();
- lastSave = new Date();
- plugin.getPreferenceStore().setValue(PREVIOUS_SAVE_DATE, lastSave.getTime());
- }
- }
+// private void checkTaskListSave() {
+// if (getPrefs().contains(PREVIOUS_SAVE_DATE)) {
+// lastSave = new Date(getPrefs().getLong(PREVIOUS_SAVE_DATE));
+// } else {
+// lastSave = new Date();
+// getPrefs().setValue(PREVIOUS_SAVE_DATE, lastSave.getTime());
+// }
+// Date currentTime = new Date();
+// if (currentTime.getTime() > lastSave.getTime() + TaskListSaveMode.fromStringToLong(getPrefs().getString(SAVE_TASKLIST_MODE))) {
+// taskListManager.saveTaskList();
+// lastSave = new Date();
+// plugin.getPreferenceStore().setValue(PREVIOUS_SAVE_DATE, lastSave.getTime());
+// }
+// }
private void checkReminders() {
// if (getPrefs().getBoolean(REMINDER_CHECK)) {

Back to the top