anchor.diff:      enabled = _appliesTo(resource);
     }
   
  +  void _enableInputs([_]) {
  +    _pushUrlElement.disabled = !_ipElement.checked;
  +  }
  +
     void _toggleProgressVisible(bool visible) {
       super._toggleProgressVisible(visible);
       _deployDeviceMessage.style.visibility = visible ? 'visible' : 'hidden';
  
positive.code: }
  
  class DeployToMobileAction extends SparkActionWithProgressDialog implements ContextAction {
    InputElement _pushUrlElement;
    ws.Container deployContainer;
    ProgressMonitor _monitor;
  
    DeployToMobileAction(Spark spark, Element dialog)
        : super(spark, "application-push", "Deploy to Mobile", dialog) {
      _pushUrlElement = _triggerOnReturn("#pushUrl");
      enabled = false;
      spark.focusManager.onResourceChange.listen((r) => _updateEnablement(r));
  
      // When the IP address field is selected, check the `IP` checkbox.
      getElement('#pushUrl').onFocus.listen((e) {
        (getElement('#ip') as InputElement).checked = true;
      });
    }
  
    Element get _deployDeviceMessage => getElement('#deployCheckDeviceMessage');
  
negative.code:     _setProgressMessage("Deploying…");
      _toggleProgressVisible(true);
      _deployButton.disabled = true;
      // TODO(ussuri): BUG #2252.
      _deployButton.deliverChanges();
  
      _monitor = new ProgressMonitorImpl(this);
  