Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/jobs/RefreshUserNotificationPolicy.java')
-rw-r--r--bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/jobs/RefreshUserNotificationPolicy.java26
1 files changed, 21 insertions, 5 deletions
diff --git a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/jobs/RefreshUserNotificationPolicy.java b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/jobs/RefreshUserNotificationPolicy.java
index 1ce0713b0..34a1adc08 100644
--- a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/jobs/RefreshUserNotificationPolicy.java
+++ b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/jobs/RefreshUserNotificationPolicy.java
@@ -1,11 +1,14 @@
package org.eclipse.team.internal.ui.jobs;
+import org.eclipse.core.runtime.*;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.team.core.subscribers.SyncInfo;
import org.eclipse.team.internal.ui.IPreferenceIds;
import org.eclipse.team.internal.ui.TeamUIPlugin;
import org.eclipse.team.internal.ui.synchronize.RefreshCompleteDialog;
import org.eclipse.team.ui.synchronize.TeamSubscriberParticipant;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.progress.UIJob;
public class RefreshUserNotificationPolicy implements IRefreshSubscriberListener {
@@ -48,19 +51,32 @@ public class RefreshUserNotificationPolicy implements IRefreshSubscriberListener
}
if(shouldPrompt) {
- notifyIfNeeded(event);
+ notifyIfNeededModal(event);
}
}
- private void notifyIfNeeded(final IRefreshEvent event) {
- TeamUIPlugin.getStandardDisplay().asyncExec(new Runnable() {
- public void run() {
+ private void notifyIfNeededModal(final IRefreshEvent event) {
+ TeamUIPlugin.getStandardDisplay().asyncExec(new Runnable() {
+ public void run() {
+ RefreshCompleteDialog d = new RefreshCompleteDialog(
+ new Shell(TeamUIPlugin.getStandardDisplay()), event);
+ d.setBlockOnOpen(false);
+ d.open();
+ }
+ });
+ }
+
+ private void notifyIfNeededNonModal(final IRefreshEvent event) {
+ String message = "Refresh of '" + event.getParticipant().getName() + "' Complete.";
+ PlatformUI.getWorkbench().getProgressService().requestInUI(new UIJob(message) {
+ public IStatus runInUIThread(IProgressMonitor monitor) {
RefreshCompleteDialog d = new RefreshCompleteDialog(
new Shell(TeamUIPlugin.getStandardDisplay()),
event);
d.setBlockOnOpen(false);
d.open();
+ return Status.OK_STATUS;
}
- });
+ }, message);
}
} \ No newline at end of file

Back to the top