Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 89924 Details for
Bug 219189
Mark Read/Unread should run outside of the UI thread
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
converted mark read/unread to job
clipboard.txt (text/plain), 3.22 KB, created by
Eugene Kuleshov
on 2008-02-17 00:38:44 EST
(
hide
)
Description:
converted mark read/unread to job
Filename:
MIME Type:
Creator:
Eugene Kuleshov
Created:
2008-02-17 00:38:44 EST
Size:
3.22 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.mylyn.tasks.ui >Index: src/org/eclipse/mylyn/internal/tasks/ui/actions/AbstractTaskAction.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.mylyn/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/actions/AbstractTaskAction.java,v >retrieving revision 1.7 >diff -u -r1.7 AbstractTaskAction.java >--- src/org/eclipse/mylyn/internal/tasks/ui/actions/AbstractTaskAction.java 13 Dec 2007 00:28:47 -0000 1.7 >+++ src/org/eclipse/mylyn/internal/tasks/ui/actions/AbstractTaskAction.java 17 Feb 2008 05:33:56 -0000 >@@ -10,6 +10,10 @@ > > import java.util.List; > >+import org.eclipse.core.runtime.IProgressMonitor; >+import org.eclipse.core.runtime.IStatus; >+import org.eclipse.core.runtime.Status; >+import org.eclipse.core.runtime.jobs.Job; > import org.eclipse.jface.action.Action; > import org.eclipse.mylyn.tasks.core.AbstractRepositoryQuery; > import org.eclipse.mylyn.tasks.core.AbstractTask; >@@ -24,25 +28,48 @@ > > @Override > public void run() { >- for (AbstractTaskContainer element : selectedElements) { >- if (element instanceof AbstractTask) { >- AbstractTask repositoryTask = (AbstractTask) element; >- performActionOnTask(repositoryTask); >- } else if (element instanceof AbstractRepositoryQuery) { >- AbstractRepositoryQuery repositoryQuery = (AbstractRepositoryQuery) element; >- for (AbstractTask queryHit : repositoryQuery.getChildren()) { >- performActionOnTask(queryHit); >- } >- } else if (element != null) { >- AbstractTaskContainer container = element; >- for (AbstractTask iTask : container.getChildren()) { >- if (iTask != null) { >- AbstractTask repositoryTask = iTask; >- performActionOnTask(repositoryTask); >+ new Job("Marking tasks") { >+ @Override >+ protected IStatus run(IProgressMonitor monitor) { >+ monitor.beginTask("Marking tasks", IProgressMonitor.UNKNOWN); >+ try { >+ for (AbstractTaskContainer element : selectedElements) { >+ if(monitor.isCanceled()) { >+ return Status.CANCEL_STATUS; >+ } >+ >+ if (element instanceof AbstractTask) { >+ AbstractTask repositoryTask = (AbstractTask) element; >+ performActionOnTask(repositoryTask); >+ monitor.worked(1); >+ } else if (element instanceof AbstractRepositoryQuery) { >+ AbstractRepositoryQuery repositoryQuery = (AbstractRepositoryQuery) element; >+ for (AbstractTask queryHit : repositoryQuery.getChildren()) { >+ if(monitor.isCanceled()) { >+ return Status.CANCEL_STATUS; >+ } >+ performActionOnTask(queryHit); >+ monitor.worked(1); >+ } >+ } else if (element != null) { >+ AbstractTaskContainer container = element; >+ for (AbstractTask task : container.getChildren()) { >+ if(monitor.isCanceled()) { >+ return Status.CANCEL_STATUS; >+ } >+ if (task != null) { >+ performActionOnTask(task); >+ } >+ monitor.worked(1); >+ } >+ } > } >+ return Status.OK_STATUS; >+ } finally { >+ monitor.done(); > } > } >- } >+ }.schedule(); > } > > protected abstract void performActionOnTask(AbstractTask repositoryTask);
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 219189
: 89924 |
89925