Adjusted to latest AS/IntelliJ changes.

Change-Id: Icb7692374d31d91ec735a6bc4202e1a65a8f428f
diff --git a/src/com/google/gct/testing/config/GsutilExecutableValidator.java b/src/com/google/gct/testing/config/GsutilExecutableValidator.java
index ce4a661..d7f03a5 100644
--- a/src/com/google/gct/testing/config/GsutilExecutableValidator.java
+++ b/src/com/google/gct/testing/config/GsutilExecutableValidator.java
@@ -19,7 +19,6 @@
 import com.intellij.execution.configurations.GeneralCommandLine;
 import com.intellij.execution.process.CapturingProcessHandler;
 import com.intellij.execution.process.ProcessOutput;
-import com.intellij.openapi.options.Configurable;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.vfs.CharsetToolkit;
 import org.jetbrains.annotations.NotNull;
@@ -43,8 +42,8 @@
 
   @NotNull
   @Override
-  protected Configurable getConfigurable() {
-    return gsutilConfigurable;
+  protected String getConfigurableDisplayName() {
+    return gsutilConfigurable.getDisplayName();
   }
 
   @Override
diff --git a/src/com/google/gct/testing/config/GsutilSettings.java b/src/com/google/gct/testing/config/GsutilSettings.java
index a54d98d..fdea325 100644
--- a/src/com/google/gct/testing/config/GsutilSettings.java
+++ b/src/com/google/gct/testing/config/GsutilSettings.java
@@ -17,10 +17,9 @@
 
 import com.intellij.openapi.components.*;
 import com.intellij.openapi.project.Project;
+import org.jetbrains.plugins.groovy.util.SdkHomeBean;
 import org.jetbrains.plugins.groovy.util.SdkHomeSettings;
 
-import static org.jetbrains.plugins.groovy.util.SdkHomeConfigurable.SdkHomeBean;
-
 @State(
     name = "GsutilSettings",
     storages = {
diff --git a/src/com/google/gct/testing/results/GoogleCloudTestProxy.java b/src/com/google/gct/testing/results/GoogleCloudTestProxy.java
index 963cd2a..62d80e1 100644
--- a/src/com/google/gct/testing/results/GoogleCloudTestProxy.java
+++ b/src/com/google/gct/testing/results/GoogleCloudTestProxy.java
@@ -20,6 +20,7 @@
 import com.intellij.execution.testframework.sm.SMStacktraceParser;
 import com.intellij.execution.testframework.sm.TestsLocationProviderUtil;
 import com.intellij.execution.testframework.sm.runner.states.*;
+import com.intellij.execution.testframework.stacktrace.DiffHyperlink;
 import com.intellij.execution.ui.ConsoleViewContentType;
 import com.intellij.ide.util.EditSourceUtil;
 import com.intellij.openapi.diagnostic.Logger;
@@ -616,9 +617,19 @@
 
   @Override
   @Nullable
-  public AssertEqualsDiffViewerProvider getDiffViewerProvider() {
-    if (myState instanceof AssertEqualsDiffViewerProvider) {
-      return (AssertEqualsDiffViewerProvider)myState;
+  public DiffHyperlink getDiffViewerProvider() {
+    if (myState instanceof TestComparisionFailedState) {
+      return ((TestComparisionFailedState)myState).getHyperlink();
+    }
+
+    if (myChildren != null) {
+      for (GoogleCloudTestProxy child : myChildren) {
+        if (!child.isDefect()) continue;
+        final DiffHyperlink provider = child.getDiffViewerProvider();
+        if (provider != null) {
+          return provider;
+        }
+      }
     }
     return null;
   }