<p>In addition to adding input validation for ignored peers and BTC nodes, this PR also <span class="issue-keyword tooltipped tooltipped-se" aria-label="This pull request closes issue #3137.">fixes</span> <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="484906151" data-permission-text="Issue title is private" data-url="https://github.com/bisq-network/bisq/issues/3137" data-hovercard-type="issue" data-hovercard-url="/bisq-network/bisq/issues/3137/hovercard" href="https://github.com/bisq-network/bisq/issues/3137">#3137</a>.</p>
<p>Since with input validation the user is no longer able to enter an invalid BTC host, to verify <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="484906151" data-permission-text="Issue title is private" data-url="https://github.com/bisq-network/bisq/issues/3137" data-hovercard-type="issue" data-hovercard-url="/bisq-network/bisq/issues/3137/hovercard" href="https://github.com/bisq-network/bisq/issues/3137">#3137</a> start the app with the following option:<br>
<code>--btcNodes=32zzibxmqi2ybxpqyggwwuwz7a3lbvtzoloti7cxoevyvijexvgsfeid.onion:8333</code></p>
<p>You will be presented with the following:<br>
<a target="_blank" rel="noopener noreferrer" href="https://user-images.githubusercontent.com/603793/72237522-9daa4a80-358f-11ea-8921-00587fa26da7.png"><img src="https://user-images.githubusercontent.com/603793/72237522-9daa4a80-358f-11ea-8921-00587fa26da7.png" alt="image" style="max-width:100%;"></a></p>
<p>After shutting down the app, restart it without the previous option and observe the BTC config. You will see the invalid custom BTC config but it will be using the provided BTC nodes.</p>
<p><a target="_blank" rel="noopener noreferrer" href="https://user-images.githubusercontent.com/603793/72237696-4193f600-3590-11ea-87ff-884778a6ab96.png"><img src="https://user-images.githubusercontent.com/603793/72237696-4193f600-3590-11ea-87ff-884778a6ab96.png" alt="image" style="max-width:100%;"></a></p>

<hr>

<h4>You can view, comment on, or merge this pull request online at:</h4>
<p>  <a href='https://github.com/bisq-network/bisq/pull/3895'>https://github.com/bisq-network/bisq/pull/3895</a></p>

<h4>Commit Summary</h4>
<ul>
  <li>Allow setting validation error message for InputTextField</li>
  <li>Add input validation for ignored peers and BTC nodes</li>
  <li>Suppress shutdown popup when BTC nodes have not changed</li>
  <li>Allow for selecting custom BTC nodes on testnet</li>
  <li>Capitalize connection failed string</li>
  <li>Revert to using provided BTC nodes if custom nodes are invalid</li>
</ul>

<h4>File Changes</h4>
<ul>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/3895/files#diff-0">core/src/main/java/bisq/core/app/BisqHeadlessApp.java</a>
    (1)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/3895/files#diff-1">core/src/main/java/bisq/core/app/BisqSetup.java</a>
    (10)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/3895/files#diff-2">core/src/main/java/bisq/core/app/WalletAppSetup.java</a>
    (10)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/bisq-network/bisq/pull/3895/files#diff-3">core/src/main/java/bisq/core/btc/exceptions/InvalidHostException.java</a>
    (25)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/3895/files#diff-4">core/src/main/java/bisq/core/btc/setup/WalletsSetup.java</a>
    (23)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/3895/files#diff-5">core/src/main/resources/i18n/displayStrings.properties</a>
    (4)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/3895/files#diff-6">desktop/src/main/java/bisq/desktop/components/InputTextField.java</a>
    (35)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/3895/files#diff-7">desktop/src/main/java/bisq/desktop/main/MainViewModel.java</a>
    (10)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/3895/files#diff-8">desktop/src/main/java/bisq/desktop/main/settings/network/NetworkSettingsView.java</a>
    (90)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/3895/files#diff-9">desktop/src/main/java/bisq/desktop/main/settings/preferences/PreferencesView.java</a>
    (9)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/3895/files#diff-10">desktop/src/main/java/bisq/desktop/util/GUIUtil.java</a>
    (11)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/3895/files#diff-11">desktop/src/main/java/bisq/desktop/util/validation/JFXInputValidator.java</a>
    (6)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/bisq-network/bisq/pull/3895/files#diff-12">desktop/src/test/java/bisq/desktop/util/GUIUtilTest.java</a>
    (31)
  </li>
</ul>

<h4>Patch Links:</h4>
<ul>
  <li><a href='https://github.com/bisq-network/bisq/pull/3895.patch'>https://github.com/bisq-network/bisq/pull/3895.patch</a></li>
  <li><a href='https://github.com/bisq-network/bisq/pull/3895.diff'>https://github.com/bisq-network/bisq/pull/3895.diff</a></li>
</ul>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/bisq-network/bisq/pull/3895?email_source=notifications&email_token=AJFFTNU4JYNTFEHCZEDL7NLQ5QIIBA5CNFSM4KF5PJSKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IFVGI5A">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AJFFTNQKFEUCVZ3WO2OYOMLQ5QIIBANCNFSM4KF5PJSA">unsubscribe</a>.<img src="https://github.com/notifications/beacon/AJFFTNRIORNG2K25NLJMEK3Q5QIIBA5CNFSM4KF5PJSKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IFVGI5A.gif" height="1" width="1" alt="" /></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/bisq-network/bisq/pull/3895?email_source=notifications\u0026email_token=AJFFTNU4JYNTFEHCZEDL7NLQ5QIIBA5CNFSM4KF5PJSKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IFVGI5A",
"url": "https://github.com/bisq-network/bisq/pull/3895?email_source=notifications\u0026email_token=AJFFTNU4JYNTFEHCZEDL7NLQ5QIIBA5CNFSM4KF5PJSKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IFVGI5A",
"name": "View Pull Request"
},
"description": "View this Pull Request on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>