| Index: dart/editor/tools/plugins/com.google.dart.tools.debug.ui/src/com/google/dart/tools/debug/ui/internal/DefaultDebugUIHelper.java
|
| ===================================================================
|
| --- dart/editor/tools/plugins/com.google.dart.tools.debug.ui/src/com/google/dart/tools/debug/ui/internal/DefaultDebugUIHelper.java (revision 37301)
|
| +++ dart/editor/tools/plugins/com.google.dart.tools.debug.ui/src/com/google/dart/tools/debug/ui/internal/DefaultDebugUIHelper.java (working copy)
|
| @@ -15,10 +15,12 @@
|
| package com.google.dart.tools.debug.ui.internal;
|
|
|
| import com.google.dart.tools.core.DartCore;
|
| +import com.google.dart.tools.core.mobile.MobileUrlConnectionException;
|
| import com.google.dart.tools.debug.core.DartDebugCorePlugin;
|
| import com.google.dart.tools.debug.core.DebugUIHelper;
|
| import com.google.dart.tools.debug.core.dartium.DartiumDebugTarget;
|
| import com.google.dart.tools.debug.ui.internal.dartium.DevToolsDisconnectManager;
|
| +import com.google.dart.tools.debug.ui.internal.dialogs.MobilePortForwardDialog;
|
| import com.google.dart.tools.debug.ui.internal.util.LaunchUtils;
|
| import com.google.dart.tools.debug.ui.internal.view.DebuggerView;
|
|
|
| @@ -72,6 +74,27 @@
|
| }
|
|
|
| @Override
|
| + public void showError(String title, CoreException e) {
|
| +
|
| + // Detect mobile launch port forwarding problems
|
| + // and present user with more specific dialog to help fix them fix the problem
|
| + if (e instanceof MobileUrlConnectionException) {
|
| + final String pageUrl = ((MobileUrlConnectionException) e).getPageUrl();
|
| + final boolean localhostOverUsb = ((MobileUrlConnectionException) e).isLocalhostOverUsb();
|
| + Display.getDefault().asyncExec(new Runnable() {
|
| + @Override
|
| + public void run() {
|
| + Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
|
| + new MobilePortForwardDialog(shell, pageUrl, localhostOverUsb).open();
|
| + }
|
| + });
|
| + return;
|
| + }
|
| +
|
| + showError(title, e.getMessage());
|
| + }
|
| +
|
| + @Override
|
| public void showError(final String title, final String message) {
|
| final Display display = Display.getDefault();
|
|
|
| @@ -217,5 +240,4 @@
|
| return (Integer) method.invoke(null, window.longValue());
|
| }
|
| }
|
| -
|
| }
|
|
|