Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/GitHistoryPage.java')
-rw-r--r--org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/GitHistoryPage.java14
1 files changed, 12 insertions, 2 deletions
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/GitHistoryPage.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/GitHistoryPage.java
index 1b02dc835f..ed87e59635 100644
--- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/GitHistoryPage.java
+++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/history/GitHistoryPage.java
@@ -20,6 +20,7 @@ import org.eclipse.compare.ITypedElement;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Preferences;
import org.eclipse.core.runtime.Preferences.IPropertyChangeListener;
@@ -157,6 +158,12 @@ public class GitHistoryPage extends HistoryPage implements RepositoryListener {
}
+ if (object instanceof IAdaptable) {
+ IResource resource = (IResource) ((IAdaptable) object)
+ .getAdapter(IResource.class);
+ return resource == null ? false : typeOk(resource);
+ }
+
if (object instanceof IResource) {
return typeOk((IResource) object);
}
@@ -862,7 +869,10 @@ public class GitHistoryPage extends HistoryPage implements RepositoryListener {
in = new ResourceList(new IResource[] { (IResource) o });
else if (o instanceof ResourceList)
in = o;
- else
+ else if (o instanceof IAdaptable) {
+ IResource resource = (IResource) ((IAdaptable) o).getAdapter(IResource.class);
+ in = resource == null ? null : new ResourceList(new IResource[] { resource });
+ } else
in = null;
return super.setInput(in);
}
@@ -873,7 +883,7 @@ public class GitHistoryPage extends HistoryPage implements RepositoryListener {
revObjectSelectionProvider.setActiveRepository(null);
cancelRefreshJob();
- if (graph == null)
+ if (graph == null || super.getInput() == null)
return false;
final IResource[] in = ((ResourceList) super.getInput()).getItems();

Back to the top