diff options
author | Steffen Pingel | 2012-02-06 14:41:31 +0000 |
---|---|---|
committer | Steffen Pingel | 2012-02-06 14:41:31 +0000 |
commit | 8a3c2adea6079e2ae1f2bff95c0d15ac708125cf (patch) | |
tree | b36d4fcb944b93edd7dafb2447b6a43fce5fc93b /org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/workingsets/TaskWorkingSetUpdater.java | |
parent | 9a0c2695eb3c9cbb84189bb2838f0d793e8e750f (diff) | |
download | org.eclipse.mylyn.tasks-8a3c2adea6079e2ae1f2bff95c0d15ac708125cf.tar.gz org.eclipse.mylyn.tasks-8a3c2adea6079e2ae1f2bff95c0d15ac708125cf.tar.xz org.eclipse.mylyn.tasks-8a3c2adea6079e2ae1f2bff95c0d15ac708125cf.zip |
REOPENED - bug 369697: disable working set updater during import
https://bugs.eclipse.org/bugs/show_bug.cgi?id=369697
Diffstat (limited to 'org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/workingsets/TaskWorkingSetUpdater.java')
-rw-r--r-- | org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/workingsets/TaskWorkingSetUpdater.java | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/workingsets/TaskWorkingSetUpdater.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/workingsets/TaskWorkingSetUpdater.java index d9b7966da..07e85b4dc 100644 --- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/workingsets/TaskWorkingSetUpdater.java +++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/workingsets/TaskWorkingSetUpdater.java @@ -57,8 +57,6 @@ public class TaskWorkingSetUpdater implements IWorkingSetUpdater, ITaskListChang private final List<IWorkingSet> workingSets = new CopyOnWriteArrayList<IWorkingSet>(); - private static TaskWorkingSetUpdater INSTANCE; - private static class TaskWorkingSetDelta { private final IWorkingSet workingSet; @@ -94,12 +92,26 @@ public class TaskWorkingSetUpdater implements IWorkingSetUpdater, ITaskListChang } } + private static boolean enabled = true; + public TaskWorkingSetUpdater() { - INSTANCE = this; TasksUiInternal.getTaskList().addChangeListener(this); ResourcesPlugin.getWorkspace().addResourceChangeListener(this); } + /** + * Set <code>enabled</code> to false to disable processing of task list changes, e.g. during import operations. + * + * @param enabled + */ + public static void setEnabled(boolean enabled) { + TaskWorkingSetUpdater.enabled = enabled; + } + + public static boolean isEnabled() { + return enabled; + } + public void dispose() { TasksUiInternal.getTaskList().removeChangeListener(this); } @@ -157,6 +169,9 @@ public class TaskWorkingSetUpdater implements IWorkingSetUpdater, ITaskListChang } public void containersChanged(Set<TaskContainerDelta> delta) { + if (!isEnabled()) { + return; + } for (TaskContainerDelta taskContainerDelta : delta) { if (taskContainerDelta.getElement() instanceof TaskCategory || taskContainerDelta.getElement() instanceof IRepositoryQuery) { @@ -360,8 +375,4 @@ public class TaskWorkingSetUpdater implements IWorkingSetUpdater, ITaskListChang } } - public static TaskWorkingSetUpdater getInstance() { - return INSTANCE; - } - } |