do not check debuggable option anymore

This commit is contained in:
Eugene Kudelevsky
2011-04-12 19:44:57 +04:00
parent 0cbf29c51a
commit efa71142db
@@ -27,7 +27,6 @@ import com.intellij.execution.executors.DefaultDebugExecutor;
import com.intellij.execution.runners.ExecutionEnvironment;
import com.intellij.execution.ui.ConsoleView;
import com.intellij.ide.util.PropertiesComponent;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.module.ModuleManager;
import com.intellij.openapi.project.Project;
@@ -44,10 +43,8 @@ import com.intellij.psi.xml.XmlAttributeValue;
import com.intellij.util.PsiNavigateUtil;
import com.intellij.util.containers.HashMap;
import com.intellij.util.xml.GenericAttributeValue;
import com.intellij.util.xml.converters.values.BooleanValueConverter;
import org.jdom.Element;
import org.jetbrains.android.actions.AndroidEnableDdmsAction;
import org.jetbrains.android.dom.manifest.Application;
import org.jetbrains.android.dom.manifest.Manifest;
import org.jetbrains.android.facet.AndroidFacet;
import org.jetbrains.android.facet.AndroidFacetConfiguration;
@@ -171,14 +168,14 @@ public abstract class AndroidRunConfigurationBase extends ModuleBasedConfigurati
return true;
}
private static boolean containsRealDevice(@NotNull IDevice[] devices) {
/*private static boolean containsRealDevice(@NotNull IDevice[] devices) {
for (IDevice device : devices) {
if (!device.isEmulator()) {
return true;
}
}
return false;
}
}*/
public RunProfileState getState(@NotNull final Executor executor, @NotNull ExecutionEnvironment env) throws ExecutionException {
final Module module = getConfigurationModule().getModule();
@@ -207,11 +204,6 @@ public abstract class AndroidRunConfigurationBase extends ModuleBasedConfigurati
if (!activateDdmsIfNeccessary(facet)) {
return null;
}
if (!CHOOSE_DEVICE_MANUALLY && PREFERRED_AVD.length() == 0) {
if (!checkDebuggableOption(facet)) {
return null;
}
}
}
String aPackage = getPackageName(facet);
@@ -224,11 +216,6 @@ public abstract class AndroidRunConfigurationBase extends ModuleBasedConfigurati
if (CHOOSE_DEVICE_MANUALLY) {
IDevice[] devices = chooseDevicesManually(facet);
if (devices.length > 0) {
if (debug && containsRealDevice(devices)) {
if (!checkDebuggableOption(facet)) {
return null;
}
}
targetDevices = devices;
PropertiesComponent.getInstance(getProject()).setValue(ANDROID_TARGET_DEVICES_PROPERTY, toString(targetDevices));
}
@@ -249,33 +236,6 @@ public abstract class AndroidRunConfigurationBase extends ModuleBasedConfigurati
return null;
}
private static boolean checkDebuggableOption(@NotNull AndroidFacet facet) {
Manifest manifest = facet.getManifest();
// validated in checkConfiguration()
assert manifest != null;
final Application application = manifest.getApplication();
if (application != null) {
String debuggable = application.getDebuggable().getValue();
BooleanValueConverter booleanValueConverter = BooleanValueConverter.getInstance(true);
if (debuggable == null || !booleanValueConverter.isTrue(debuggable)) {
Project project = facet.getModule().getProject();
int result = Messages.showYesNoCancelDialog(project, AndroidBundle.message("android.manifest.debuggable.attribute.not.true.warning"),
CommonBundle.getWarningTitle(),
Messages.getWarningIcon());
if (result == 0) {
ApplicationManager.getApplication().runWriteAction(new Runnable() {
@Override
public void run() {
application.getDebuggable().setValue("true");
}
});
}
return result != 2;
}
}
return true;
}
private static boolean activateDdmsIfNeccessary(@NotNull AndroidFacet facet) {
final Project project = facet.getModule().getProject();
final boolean ddmsEnabled = AndroidEnableDdmsAction.isDdmsEnabled();