diff options
author | mkersten | 2007-12-19 01:18:01 +0000 |
---|---|---|
committer | mkersten | 2007-12-19 01:18:01 +0000 |
commit | d77fc0f2c77f67417def0a87db5f7eeac83e5a08 (patch) | |
tree | 9854a2f1df6b8d161fef72a0d232bc18f4402277 /org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListView.java | |
parent | 0cc13bd8b7f37c0303703b3d10f8a599aed3c897 (diff) | |
download | org.eclipse.mylyn.tasks-d77fc0f2c77f67417def0a87db5f7eeac83e5a08.tar.gz org.eclipse.mylyn.tasks-d77fc0f2c77f67417def0a87db5f7eeac83e5a08.tar.xz org.eclipse.mylyn.tasks-d77fc0f2c77f67417def0a87db5f7eeac83e5a08.zip |
NEW - bug 207602: [performance] assigning projects to workings sets very slow
https://bugs.eclipse.org/bugs/show_bug.cgi?id=207602
Diffstat (limited to 'org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListView.java')
-rw-r--r-- | org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListView.java | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListView.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListView.java index 6f0d56c47..ae24bbf05 100644 --- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListView.java +++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListView.java @@ -698,7 +698,7 @@ public class TaskListView extends ViewPart implements IPropertyChangeListener { } filterWorkingSet = new TaskWorkingSetFilter(TasksUiPlugin.getTaskListManager().getTaskList()); - filterWorkingSet.setCurrentWorkingSet(getSite().getPage().getAggregateWorkingSet()); + filterWorkingSet.updateWorkingSet(getSite().getPage().getAggregateWorkingSet()); addFilter(filterWorkingSet); addFilter(filterPriority); if (TasksUiPlugin.getDefault().getPreferenceStore().contains(TasksUiPreferenceConstants.FILTER_COMPLETE_MODE)) { @@ -1643,7 +1643,19 @@ public class TaskListView extends ViewPart implements IPropertyChangeListener { if (IWorkingSetManager.CHANGE_WORKING_SET_CONTENT_CHANGE.equals(property) || IWorkingSetManager.CHANGE_WORKING_SET_REMOVE.equals(property)) { if (getSite() != null && getSite().getPage() != null) { - filterWorkingSet.setCurrentWorkingSet(getSite().getPage().getAggregateWorkingSet()); + if (filterWorkingSet.updateWorkingSet(getSite().getPage().getAggregateWorkingSet())) { + try { + getViewer().getControl().setRedraw(false); + // XXX why is this needed? + //getViewer().collapseAll(); + getViewer().refresh(); + if (isFocusedMode()) { + getViewer().expandAll(); + } + } finally { + getViewer().getControl().setRedraw(true); + } + } } PlatformUI.getWorkbench().getDisplay().asyncExec(new Runnable() { @@ -1652,17 +1664,6 @@ public class TaskListView extends ViewPart implements IPropertyChangeListener { } }); } - - try { - getViewer().getControl().setRedraw(false); - getViewer().collapseAll(); - getViewer().refresh(); - if (isFocusedMode()) { - getViewer().expandAll(); - } - } finally { - getViewer().getControl().setRedraw(true); - } } public void setLinkWithEditor(boolean linkWithEditor) { |