diff --git a/java/idea-ui/src/com/intellij/openapi/vcs/checkout/NewProjectCheckoutListener.java b/java/idea-ui/src/com/intellij/openapi/vcs/checkout/NewProjectCheckoutListener.java
index 7de99f6a9030..465381c9f242 100644
--- a/java/idea-ui/src/com/intellij/openapi/vcs/checkout/NewProjectCheckoutListener.java
+++ b/java/idea-ui/src/com/intellij/openapi/vcs/checkout/NewProjectCheckoutListener.java
@@ -15,10 +15,10 @@
*/
package com.intellij.openapi.vcs.checkout;
+import com.intellij.ide.impl.NewProjectUtil;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.Messages;
import com.intellij.openapi.vcs.VcsBundle;
-import com.intellij.ide.impl.NewProjectUtil;
import java.io.File;
@@ -35,4 +35,8 @@ public class NewProjectCheckoutListener implements CheckoutListener {
}
return false;
}
+
+ @Override
+ public void processOpenedProject(Project lastOpenedProject) {
+ }
}
diff --git a/java/idea-ui/src/com/intellij/openapi/vcs/checkout/ProjectCheckoutListener.java b/java/idea-ui/src/com/intellij/openapi/vcs/checkout/ProjectCheckoutListener.java
index 8323b6b8ed4f..8aed186bd0c3 100644
--- a/java/idea-ui/src/com/intellij/openapi/vcs/checkout/ProjectCheckoutListener.java
+++ b/java/idea-ui/src/com/intellij/openapi/vcs/checkout/ProjectCheckoutListener.java
@@ -15,8 +15,8 @@
*/
package com.intellij.openapi.vcs.checkout;
-import com.intellij.ide.impl.ProjectUtil;
import com.intellij.ide.highlighter.ProjectFileType;
+import com.intellij.ide.impl.ProjectUtil;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.Messages;
import com.intellij.openapi.vcs.VcsBundle;
@@ -41,4 +41,8 @@ public class ProjectCheckoutListener implements CheckoutListener {
}
return false;
}
+
+ @Override
+ public void processOpenedProject(Project lastOpenedProject) {
+ }
}
\ No newline at end of file
diff --git a/platform/platform-resources/src/META-INF/PlatformLangPlugin.xml b/platform/platform-resources/src/META-INF/PlatformLangPlugin.xml
index 6b71e4775574..a22d0cd5bd5f 100644
--- a/platform/platform-resources/src/META-INF/PlatformLangPlugin.xml
+++ b/platform/platform-resources/src/META-INF/PlatformLangPlugin.xml
@@ -85,7 +85,7 @@
-
+
diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/checkout/CheckoutListener.java b/platform/vcs-api/src/com/intellij/openapi/vcs/checkout/CheckoutListener.java
index 2db34e060740..3cc796fcf2a2 100644
--- a/platform/vcs-api/src/com/intellij/openapi/vcs/checkout/CheckoutListener.java
+++ b/platform/vcs-api/src/com/intellij/openapi/vcs/checkout/CheckoutListener.java
@@ -29,4 +29,6 @@ public interface CheckoutListener {
ExtensionPointName COMPLETED_EP_NAME = ExtensionPointName.create("com.intellij.checkoutCompletedListener");
boolean processCheckedOutDirectory(Project project, File directory);
+
+ void processOpenedProject(Project lastOpenedProject);
}
\ No newline at end of file
diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/checkout/CompositeCheckoutListener.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/checkout/CompositeCheckoutListener.java
index 4f9d718512f7..e1cdfad825b9 100644
--- a/platform/vcs-impl/src/com/intellij/openapi/vcs/checkout/CompositeCheckoutListener.java
+++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/checkout/CompositeCheckoutListener.java
@@ -19,6 +19,7 @@ import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.extensions.ExtensionPointName;
import com.intellij.openapi.extensions.Extensions;
import com.intellij.openapi.project.Project;
+import com.intellij.openapi.project.ProjectManager;
import com.intellij.openapi.util.Ref;
import com.intellij.openapi.vcs.CheckoutProvider;
import com.intellij.openapi.vfs.LocalFileSystem;
@@ -72,11 +73,18 @@ public class CompositeCheckoutListener implements CheckoutProvider.Listener {
}
private void notifyCheckoutListeners(final File directory, final ExtensionPointName epName) {
- CheckoutListener[] listeners = Extensions.getExtensions(epName);
- for(CheckoutListener listener: listeners) {
+ final CheckoutListener[] listeners = Extensions.getExtensions(epName);
+ for (CheckoutListener listener: listeners) {
myFoundProject = listener.processCheckedOutDirectory(myProject, directory);
if (myFoundProject) break;
}
+ final Project[] openProjects = ProjectManager.getInstance().getOpenProjects();
+ if (openProjects.length > 0){
+ final Project lastOpenedProject = openProjects[openProjects.length - 1];
+ for (CheckoutListener listener: listeners) {
+ listener.processOpenedProject(lastOpenedProject);
+ }
+ }
}
public void checkoutCompleted() {
diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/checkout/PlatformProjectCheckoutListener.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/checkout/PlatformProjectCheckoutListener.java
index 591f1ed0e54e..a117fae77cb6 100644
--- a/platform/vcs-impl/src/com/intellij/openapi/vcs/checkout/PlatformProjectCheckoutListener.java
+++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/checkout/PlatformProjectCheckoutListener.java
@@ -40,4 +40,8 @@ public class PlatformProjectCheckoutListener implements CheckoutListener {
}
return false;
}
+
+ @Override
+ public void processOpenedProject(Project lastOpenedProject) {
+ }
}