@@ -717,24 +717,42 @@ void RPCConsole::setClientModel(ClientModel *model, int bestblock_height, int64_
717
717
ui->blocksDir ->setText (model->blocksDir ());
718
718
ui->startupTime ->setText (model->formatClientStartupTime ());
719
719
ui->networkName ->setText (QString::fromStdString (Params ().GetChainTypeString ()));
720
+ ui->networkName ->setWordWrap (true );
720
721
721
722
if (Params ().GetChainTypeString () == " signet" ) {
722
723
std::vector<uint8_t > vChallenge = Params ().GetConsensus ().signet_challenge ;
723
- std::string challengeString = challengeToString (vChallenge);
724
- std::string challenge_start = challengeString.substr (0 , 8 );
725
- std::string challenge_end = challengeString.substr (challengeString.length () - 8 );
724
+ std::string challengeString = ChallengeToStdString (vChallenge);
725
+ if (challengeString.length () > 16 ){ // a sane minimum
726
+ std::string challenge_fingerprint = challengeString.substr (0 , 8 );
727
+ std::string challenge_end = challengeString.substr (challengeString.length () - 8 );
728
+ const QString title = tr (" Node window - [signet] (%1)" ).arg (
729
+ QString::fromStdString (challenge_fingerprint)
730
+ );
731
+ // display fingerprint in Node window title
732
+ this ->setWindowTitle (title);
733
+ } else {
734
+ // A trivial challenge is supported. Example: signetchallenge=51
735
+ std::string challenge_fingerprint = challengeString.substr (0 , challengeString.length ());
736
+ std::string challenge_end = challengeString.substr (challengeString.length () - 1 );
737
+ const QString title = tr (" Node window - [signet] (%1)" ).arg (
738
+ QString::fromStdString (challenge_fingerprint)
739
+ );
740
+ // display fingerprint in Node window title
741
+ this ->setWindowTitle (title);
726
742
743
+
744
+ }
745
+ if (challengeString.length () > (size_t )ui->networkName ->width ()) {
746
+ challengeString.insert (0 , " \n " ); // break after Signet:
747
+ challengeString.insert (65 , " \n " ); // then split at (130/2)
748
+ }
749
+
750
+ ui->networkName ->setToolTip (
751
+ tr (" Signet challenge: %1" ).arg (QString::fromStdString (challengeString))
752
+ );
727
753
ui->networkName ->setText (
728
- tr (" Signet: (%1...%2)" ).arg (
729
- QString::fromStdString (challenge_start),
730
- QString::fromStdString (challenge_end)
731
- )
732
- );
733
-
734
- const QString title = tr (" Node window - [signet] (%1)" ).arg (
735
- QString::fromStdString (challenge_start)
736
- );
737
- this ->setWindowTitle (title);
754
+ tr (" %1 (%2)" ).arg (" Signet:" ).arg (QString::fromStdString (challengeString))
755
+ );
738
756
}
739
757
740
758
// Setup autocomplete and attach it
0 commit comments