repurpose delete spv button to rescan outputs (hidden w/o implementation)

This commit is contained in:
woodser 2023-06-06 08:33:12 -04:00
parent b87bf74453
commit 37c6f36868
22 changed files with 23 additions and 187 deletions

View file

@ -76,7 +76,6 @@ public class HavenoHeadlessApp implements HeadlessApp {
acceptedHandler.run();
});
havenoSetup.setDisplayTorNetworkSettingsHandler(show -> log.info("onDisplayTorNetworkSettingsHandler: show={}", show));
havenoSetup.setSpvFileCorruptedHandler(msg -> log.error("onSpvFileCorruptedHandler: msg={}", msg));
havenoSetup.setChainFileLockedExceptionHandler(msg -> log.error("onChainFileLockedExceptionHandler: msg={}", msg));
havenoSetup.setLockedUpFundsHandler(msg -> log.info("onLockedUpFundsHandler: msg={}", msg));
havenoSetup.setShowFirstPopupIfResyncSPVRequestedHandler(() -> log.info("onShowFirstPopupIfResyncSPVRequestedHandler"));

View file

@ -98,7 +98,6 @@ import java.util.function.Consumer;
@Singleton
public class HavenoSetup {
private static final String VERSION_FILE_NAME = "version";
private static final String RESYNC_SPV_FILE_NAME = "resyncSpv";
private static final long STARTUP_TIMEOUT_MINUTES = 5;
@ -132,8 +131,8 @@ public class HavenoSetup {
@Setter
@Nullable
private Consumer<String> chainFileLockedExceptionHandler,
spvFileCorruptedHandler, lockedUpFundsHandler,
filterWarningHandler, displaySecurityRecommendationHandler, displayLocalhostHandler,
lockedUpFundsHandler, filterWarningHandler,
displaySecurityRecommendationHandler, displayLocalhostHandler,
wrongOSArchitectureHandler, displaySignedByArbitratorHandler,
displaySignedByPeerHandler, displayPeerLimitLiftedHandler, displayPeerSignerHandler,
rejectedTxErrorMessageHandler;
@ -291,7 +290,6 @@ public class HavenoSetup {
}
persistHavenoVersion();
maybeReSyncSPVChain();
maybeShowTac(this::step2);
}
@ -326,19 +324,6 @@ public class HavenoSetup {
// Sub tasks
///////////////////////////////////////////////////////////////////////////////////////////
private void maybeReSyncSPVChain() {
// We do the delete of the spv file at startup before BitcoinJ is initialized to avoid issues with locked files under Windows.
if (getResyncSpvSemaphore()) {
try {
walletsSetup.reSyncSPVChain();
} catch (IOException e) {
log.error(e.toString());
e.printStackTrace();
}
}
}
private void maybeShowTac(Runnable nextStep) {
if (!preferences.isTacAcceptedV120() && !DevEnv.isDevMode()) {
if (displayTacHandler != null)
@ -430,8 +415,6 @@ public class HavenoSetup {
log.info("Init wallet");
havenoSetupListeners.forEach(HavenoSetupListener::onInitWallet);
walletAppSetup.init(chainFileLockedExceptionHandler,
spvFileCorruptedHandler,
getResyncSpvSemaphore(),
showFirstPopupIfResyncSPVRequestedHandler,
showPopupIfInvalidBtcConfigHandler,
() -> {
@ -532,32 +515,6 @@ public class HavenoSetup {
return null;
}
public static boolean getResyncSpvSemaphore() {
File resyncSpvSemaphore = new File(Config.appDataDir(), RESYNC_SPV_FILE_NAME);
return resyncSpvSemaphore.exists();
}
public static void setResyncSpvSemaphore(boolean isResyncSpvRequested) {
File resyncSpvSemaphore = new File(Config.appDataDir(), RESYNC_SPV_FILE_NAME);
if (isResyncSpvRequested) {
if (!resyncSpvSemaphore.exists()) {
try {
if (!resyncSpvSemaphore.createNewFile()) {
log.error("ResyncSpv file could not be created");
}
} catch (IOException e) {
e.printStackTrace();
log.error("ResyncSpv file could not be created. {}", e.toString());
}
}
} else {
resyncSpvSemaphore.delete();
}
}
private static File getVersionFile() {
return new File(Config.appDataDir(), VERSION_FILE_NAME);
}

View file

@ -99,8 +99,6 @@ public class WalletAppSetup {
}
void init(@Nullable Consumer<String> chainFileLockedExceptionHandler,
@Nullable Consumer<String> spvFileCorruptedHandler,
boolean isSpvResyncRequested,
@Nullable Runnable showFirstPopupIfResyncSPVRequestedHandler,
@Nullable Runnable showPopupIfInvalidBtcConfigHandler,
Runnable downloadCompleteHandler,
@ -149,8 +147,6 @@ public class WalletAppSetup {
} else if (exception.getCause() instanceof BlockStoreException) {
if (exception.getCause().getCause() instanceof ChainFileLockedException && chainFileLockedExceptionHandler != null) {
chainFileLockedExceptionHandler.accept(Res.get("popup.warning.startupFailed.twoInstances"));
} else if (spvFileCorruptedHandler != null) {
spvFileCorruptedHandler.accept(Res.get("error.spvFileCorrupted", exception.getMessage()));
}
} else if (exception instanceof RejectedTxException) {
rejectedTxException.set((RejectedTxException) exception);

View file

@ -1320,15 +1320,10 @@ settings.net.initialDataExchange={0} [Bootstrapping]
settings.net.peer=Peer
settings.net.inbound=inbound
settings.net.outbound=outbound
settings.net.reSyncSPVChainLabel=Resync SPV chain
settings.net.reSyncSPVChainButton=Delete SPV file and resync
settings.net.reSyncSPVSuccess=Are you sure you want to do an SPV resync? If you proceed, the SPV chain file will be deleted on the next startup.\n\n\
After the restart it can take a while to resync with the network and you will only see all transactions once the resync is completed.\n\n\
Depending on the number of transactions and the age of your wallet the resync can take up to a few hours and consumes 100% of CPU. \
Do not interrupt the process otherwise you have to repeat it.
settings.net.reSyncSPVAfterRestart=The SPV chain file has been deleted. Please be patient. It can take a while to resync with the network.
settings.net.reSyncSPVAfterRestartCompleted=The resync is now completed. Please restart the application.
settings.net.reSyncSPVFailed=Could not delete SPV chain file.\nError: {0}
settings.net.rescanOutputsLabel=Rescan Outputs
settings.net.rescanOutputsButton=Rescan Wallet Outputs
settings.net.rescanOutputsSuccess=Are you sure you want to rescan your wallet outputs?
settings.net.rescanOutputsFailed=Could not rescan wallet outputs.\nError: {0}
setting.about.aboutHaveno=About Haveno
setting.about.about=Haveno is open-source software which facilitates the exchange of bitcoin with national currencies (and other cryptocurrencies) through a decentralized peer-to-peer network in a way that strongly protects user privacy. Learn more about Haveno on our project web page.
setting.about.web=Haveno web page

View file

@ -1066,12 +1066,6 @@ settings.net.initialDataExchange={0} [Bootstrapping]
settings.net.peer=Peer
settings.net.inbound=příchozí
settings.net.outbound=odchozí
settings.net.reSyncSPVChainLabel=Znovu synchronizovat SPV řetěz
settings.net.reSyncSPVChainButton=Odstraňte soubor SPV a znovu synchronizujte
settings.net.reSyncSPVSuccess=Opravdu chcete provést synchronizaci SPV? Pokud budete pokračovat, soubor řetězce SPV bude při příštím spuštění smazán.\n\nPo restartu může chvíli trvat, než se znovu provede synchronizuje se sítí a všechny transakce se zobrazí až po dokončení synchronizace.\n\nV závislosti na počtu transakcí a stáří vaší peněženky může resynchronizace trvat až několik hodin a spotřebuje 100% CPU. Nepřerušujte proces, jinak ho budete muset opakovat.
settings.net.reSyncSPVAfterRestart=Soubor řetězu SPV byl odstraněn. Prosím, buďte trpěliví. Resynchronizace se sítí může chvíli trvat.
settings.net.reSyncSPVAfterRestartCompleted=Resynchronizace je nyní dokončena. Restartujte aplikaci.
settings.net.reSyncSPVFailed=Nelze odstranit soubor řetězce SPV.\nChyba: {0}
setting.about.aboutHaveno=O projektu Haveno
setting.about.about=Haveno je software s otevřeným zdrojovým kódem, který usnadňuje směnu bitcoinů s národními měnami (a jinými kryptoměnami) prostřednictvím decentralizované sítě typu peer-to-peer způsobem, který silně chrání soukromí uživatelů. Zjistěte více o Haveno na naší webové stránce projektu.
setting.about.web=Webová stránka Haveno

View file

@ -1066,12 +1066,6 @@ settings.net.initialDataExchange={0} [Bootstrapping]
settings.net.peer=Peer
settings.net.inbound=eingehend
settings.net.outbound=ausgehend
settings.net.reSyncSPVChainLabel=SPV-Kette neu synchronisieren
settings.net.reSyncSPVChainButton=SPV-Datei löschen und neu synchronisieren
settings.net.reSyncSPVSuccess=Sind Sie sicher, dass Sie den SPV Resync starten möchten? Wenn Sie fortfahren, wird die SPV chain beim nächsten Start gelöscht.\n\nNach dem Restart kann der Resync des Netzwerks etwas Zeit in Anspruch nehmen und Sie werden die Transaktionen erst sehen wenn der Resync vollständig durchgeführt wurde.\n\nAbhängig von der Anzahl an Transaktionen und dem Alter Ihrer Wallet kann der Resync mehrere Stunden dauern und 100% der CPU Power beanspruchen. Unterbrechen Sie den Resync nicht, ansonsten müssen Sie ihn wiederholen.
settings.net.reSyncSPVAfterRestart=Die SPV-Kettendatei wurde gelöscht. Haben Sie bitte Geduld, es kann eine Weile dauern mit dem Netzwerk neu zu synchronisieren.
settings.net.reSyncSPVAfterRestartCompleted=Die erneute Synchronisation ist jetzt abgeschlossen. Bitte starten Sie die Anwendung neu.
settings.net.reSyncSPVFailed=Konnte SPV-Kettendatei nicht löschen.\nFehler: {0}
setting.about.aboutHaveno=Über Haveno
setting.about.about=Haveno ist Open-Source Software, die den Tausch von Bitcoin mit nationaler Währung (und anderen Kryptowährungen), durch ein dezentralisiertes Peer-zu-Peer Netzwerk auf eine Weise ermöglicht, die Ihre Privatsphäre stark beschützt. Lernen Sie auf unserer Projektwebseite mehr über Haveno.
setting.about.web=Haveno-Website

View file

@ -1066,12 +1066,6 @@ settings.net.initialDataExchange={0} [Bootstrapping]
settings.net.peer=Par
settings.net.inbound=entrante
settings.net.outbound=saliente
settings.net.reSyncSPVChainLabel=Resincronizar cadena SPV
settings.net.reSyncSPVChainButton=Borrar archivo SPV y resincronizar
settings.net.reSyncSPVSuccess=Está seguro de quere hacer una resincronización SPV? Si procede, la cadena SPV se borrará al siguiente inicio.\n\nDespués de reiniciar puede llevarle un rato resincronizar con la red y solo verá las transacciones una vez se haya completado la resincronización.\n\nDependiendo del número de transacciones y la edad de su monedero, la resincronización puede llevarle hasta algunas horas y consumir el 100% de su CPU. No interrumpa el proceso o tendrá que repetirlo.
settings.net.reSyncSPVAfterRestart=La cadena SPV ha sido borrada. Por favor, sea paciente. Puede llevar un tiempo resincronizar con la red.
settings.net.reSyncSPVAfterRestartCompleted=La resincronización se ha completado. Por favor, reinicie la aplicación.
settings.net.reSyncSPVFailed=No se pudo borrar el archivo de cadena SPV\nError: {0}
setting.about.aboutHaveno=Acerca de Haveno
setting.about.about=Haveno es un software de código abierto que facilita el intercambio de bitcoin por monedas nacionales (y otras criptomonedas) a través de una red descentralizada peer-to-peer de modo que se proteja fuertemente la privacidad del usuario. Aprenda más acerca de Haveno en la página web del proyecto.
setting.about.web=Página web de Haveno

View file

@ -1066,12 +1066,6 @@ settings.net.initialDataExchange={0} [Bootstrapping]
settings.net.peer=همتا
settings.net.inbound=وارد شونده
settings.net.outbound=خارج شونده
settings.net.reSyncSPVChainLabel=همگام سازی مجدد زنجیره SPV 
settings.net.reSyncSPVChainButton=حذف فایل SPV  و همگام سازی مجدد
settings.net.reSyncSPVSuccess=Are you sure you want to do an SPV resync? If you proceed, the SPV chain file will be deleted on the next startup.\n\nAfter the restart it can take a while to resync with the network and you will only see all transactions once the resync is completed.\n\nDepending on the number of transactions and the age of your wallet the resync can take up to a few hours and consumes 100% of CPU. Do not interrupt the process otherwise you have to repeat it.
settings.net.reSyncSPVAfterRestart=فایل زنجیره SPV حذف شده است. لطفاً صبور باشید، همگام سازی مجدد با شبکه کمی طول خواهد کشید.
settings.net.reSyncSPVAfterRestartCompleted=همگام سازی مجدد هم اکنون تکمیل شده است. لطفاً برنامه را مجدداً راه اندازی نمایید.
settings.net.reSyncSPVFailed=حذف فایل زنجیره SPV امکان پذیر نیست. \nخطا: {0}
setting.about.aboutHaveno=درباره Haveno
setting.about.about=Haveno یک پروژه منبع باز و یک شبکه غیر متمرکز از کاربرانی است که می‌خواهند بیت‌کوین را با ارزهای ملی (یا رمزارزهای جایگزین) به روشی امن تبادل کنند. در وب سایت ما با Haveno بیشتر آشنا شوید.
setting.about.web=صفحه وب Haveno

View file

@ -1067,12 +1067,6 @@ settings.net.initialDataExchange={0}[Amorçage]
settings.net.peer=Pair
settings.net.inbound=inbound
settings.net.outbound=outbound
settings.net.reSyncSPVChainLabel=Resynchronisation de la chaîne SPV
settings.net.reSyncSPVChainButton=Supprimer le fichier SPV et resynchroniser
settings.net.reSyncSPVSuccess=Êtes-vous sûr de vouloir effectuer une resynchronisation SPV? Si vous procédez, les fichiers de la chaîne SPV seront supprimés au prochain démarrage.\n\nAprès le redémarrage il est possible que l'opération de resynchronisation avec le réseau prenne un peu de temps, vous verrez toutes les transactions uniquement à la fin de la resynchronisation.\n\nLa durée de la resynchronisation dépend du nombre de transaction et de l'âge de votre portefeuille, elle peut durer plusieurs heures et utiliser 100% des ressources du processeur. N'interrompez pas le processus sinon vous devrez le recommencer.
settings.net.reSyncSPVAfterRestart=Le fichier de la chaîne SPV a été supprimé. Veuillez s'il vous plaît patienter. La resynchronisation avec le réseau peut nécessiter un certain temps.
settings.net.reSyncSPVAfterRestartCompleted=La resynchronisation est maintenant terminée. Veuillez redémarrer l'application.
settings.net.reSyncSPVFailed=Impossible de supprimer le fichier de la chaîne SPV.\nErreur: {0}
setting.about.aboutHaveno=À propos de Haveno
setting.about.about=Haveno est un logiciel libre qui facilite l'échange de Bitcoins avec les devises nationales (et d'autres cryptomonnaies) au moyen d'un réseau pair-to-pair décentralisé, de manière à protéger au mieux la vie privée des utilisateurs. Pour en savoir plus sur Haveno, consultez la page Web du projet.
setting.about.web=Page web de Haveno

View file

@ -1066,12 +1066,6 @@ settings.net.initialDataExchange={0} [Bootstrapping]
settings.net.peer=Peer
settings.net.inbound=in entrata
settings.net.outbound=in uscita
settings.net.reSyncSPVChainLabel=Risincronizza la catena SPV
settings.net.reSyncSPVChainButton=Elimina il file SPV e risincronizza
settings.net.reSyncSPVSuccess=Are you sure you want to do an SPV resync? If you proceed, the SPV chain file will be deleted on the next startup.\n\nAfter the restart it can take a while to resync with the network and you will only see all transactions once the resync is completed.\n\nDepending on the number of transactions and the age of your wallet the resync can take up to a few hours and consumes 100% of CPU. Do not interrupt the process otherwise you have to repeat it.
settings.net.reSyncSPVAfterRestart=Il file della catena SPV è stato eliminato. Per favore sii paziente. La risincronizzazione con la rete può richiedere del tempo.
settings.net.reSyncSPVAfterRestartCompleted=La risincronizzazione è ora completata. Si prega di riavviare l'applicazione.
settings.net.reSyncSPVFailed=Impossibile eliminare il file della catena SPV.\nErrore: {0}
setting.about.aboutHaveno=Riguardo Haveno
setting.about.about=Haveno è un software open source che facilita lo scambio di bitcoin con valute nazionali (e altre criptovalute) attraverso una rete peer-to-peer decentralizzata in modo da proteggere fortemente la privacy degli utenti. Leggi di più riguardo Haveno sulla pagina web del progetto.
setting.about.web=Pagina web Haveno

View file

@ -1066,12 +1066,6 @@ settings.net.initialDataExchange={0} [ ブートストラップ 中]
settings.net.peer=ピア
settings.net.inbound=インバウンド
settings.net.outbound=アウトバウンド
settings.net.reSyncSPVChainLabel=SPVチェーンを再同期
settings.net.reSyncSPVChainButton=SPVファイルを削除してを再同期
settings.net.reSyncSPVSuccess=SPVの再同期を実行してもよろしいですか実行すると、SPVチェーンファイルは次回の起動時に削除されます。\n\n再起動後、ネットワークとの再同期に時間がかかることがあり、再同期が完了するとすべてのトランザクションのみが表示されます。\n\nトランザクションの数そしてウォレットの時代によって、再同期は数時間かかり、CPUのリソースを100%消費します。再同期プロセスを割り込みしないで下さい。さもなければやり直す必要があります。
settings.net.reSyncSPVAfterRestart=SPVチェーンファイルが削除されました。しばらくお待ちください。ネットワークとの再同期には時間がかかる場合があります。
settings.net.reSyncSPVAfterRestartCompleted=再同期が完了しました。アプリケーションを再起動してください。
settings.net.reSyncSPVFailed=SPVチェーンファイルを削除できませんでした。\nエラー: {0}
setting.about.aboutHaveno=Havenoについて
setting.about.about=Havenoは、ユーザーのプライバシーを強力に保護する方法で、非中央集権型のピアツーピアネットワークを介して各国通貨およびその他の暗号通貨とのビットコインの交換を容易にするオープンソースソフトウェアです。 Havenoの詳細については、プロジェクトのWebページをご覧ください。
setting.about.web=Havenoホームページ

View file

@ -1069,12 +1069,6 @@ settings.net.initialDataExchange={0} [Bootstrapping]
settings.net.peer=Par
settings.net.inbound=entrada
settings.net.outbound=saída
settings.net.reSyncSPVChainLabel=Ressincronizar SPV chain
settings.net.reSyncSPVChainButton=Remover arquivo SPV e ressincronizar
settings.net.reSyncSPVSuccess=Are you sure you want to do an SPV resync? If you proceed, the SPV chain file will be deleted on the next startup.\n\nAfter the restart it can take a while to resync with the network and you will only see all transactions once the resync is completed.\n\nDepending on the number of transactions and the age of your wallet the resync can take up to a few hours and consumes 100% of CPU. Do not interrupt the process otherwise you have to repeat it.
settings.net.reSyncSPVAfterRestart=O arquivo SPV chain foi removido. Por favor, tenha paciência, pois a ressincronização com a rede pode demorar.
settings.net.reSyncSPVAfterRestartCompleted=A ressincronização terminou. Favor reiniciar o programa.
settings.net.reSyncSPVFailed=Não foi possível apagar o arquivo da SPV chain.\nErro: {0}
setting.about.aboutHaveno=Sobre Haveno
setting.about.about=Haveno é um software de código aberto que facilita a troca de Bitcoin por moedas nacionais (e outras criptomoedas) através de uma rede ponto-a-ponto descentralizada, protegendo a privacidade dos usuários. Descubra mais sobre o Haveno no site do projeto.
setting.about.web=Site do Haveno

View file

@ -1066,12 +1066,6 @@ settings.net.initialDataExchange={0} [Bootstrapping]
settings.net.peer=Par
settings.net.inbound=entrante
settings.net.outbound=sainte
settings.net.reSyncSPVChainLabel=Re-sincronizar corrente SPV
settings.net.reSyncSPVChainButton=Remover ficheiro SPV e re-sincronizar
settings.net.reSyncSPVSuccess=Are you sure you want to do an SPV resync? If you proceed, the SPV chain file will be deleted on the next startup.\n\nAfter the restart it can take a while to resync with the network and you will only see all transactions once the resync is completed.\n\nDepending on the number of transactions and the age of your wallet the resync can take up to a few hours and consumes 100% of CPU. Do not interrupt the process otherwise you have to repeat it.
settings.net.reSyncSPVAfterRestart=O ficheiro da corrente SPV foi apagado. Por favor, seja paciente. Pode demorar um pouco para re-sincronizar com a rede.
settings.net.reSyncSPVAfterRestartCompleted=A resincronização concluiu. Por favor reiniciar o programa.
settings.net.reSyncSPVFailed=Não foi possível remover o ficherio da corrente SPV\nErro: {0}
setting.about.aboutHaveno=Sobre Haveno
setting.about.about=O Haveno é um software de código aberto que facilita a troca de bitcoins com moedas nacionais (e outras criptomoedas) por meio de uma rede par-à-par descentralizada, de uma maneira que protege fortemente a privacidade do utilizador. Saiba mais sobre o Haveno na nossa página web do projeto.
setting.about.web=página da web do Haveno

View file

@ -1066,12 +1066,6 @@ settings.net.initialDataExchange={0} [Bootstrapping]
settings.net.peer=Пир
settings.net.inbound=входящий
settings.net.outbound=выходящий
settings.net.reSyncSPVChainLabel=Синхронизировать цепь SPV заново
settings.net.reSyncSPVChainButton=Удалить файл SPV и синхронизировать повторно
settings.net.reSyncSPVSuccess=Are you sure you want to do an SPV resync? If you proceed, the SPV chain file will be deleted on the next startup.\n\nAfter the restart it can take a while to resync with the network and you will only see all transactions once the resync is completed.\n\nDepending on the number of transactions and the age of your wallet the resync can take up to a few hours and consumes 100% of CPU. Do not interrupt the process otherwise you have to repeat it.
settings.net.reSyncSPVAfterRestart=Файл цепи SPV удален. Подождите. Повторная синхронизации с сетью может занять некоторое время.
settings.net.reSyncSPVAfterRestartCompleted=Повторная синхронизация завершена. Перезагрузите приложение.
settings.net.reSyncSPVFailed=Не удалось удалить файл цепи SPV.\nОшибка: {0}
setting.about.aboutHaveno=О Haveno
setting.about.about=Haveno — это программа с открытым исходным кодом, предназначенная для обмена биткойна на национальные валюты (и другие криптовалюты) через децентрализованную Р2Р-сеть, обеспечивающая надежную защиту конфиденциальности. Узнайте больше о Haveno на веб-странице нашего проекта.
setting.about.web=Веб-страница Haveno

View file

@ -1066,12 +1066,6 @@ settings.net.initialDataExchange={0} [Bootstrapping]
settings.net.peer=เน็ตเวิร์ก Peer
settings.net.inbound=ขาเข้า
settings.net.outbound=ขาออก
settings.net.reSyncSPVChainLabel=ซิงค์อีกครั้ง SPV chain
settings.net.reSyncSPVChainButton=ลบไฟล์ SPV และ ซิงค์อีกครั้ง
settings.net.reSyncSPVSuccess=Are you sure you want to do an SPV resync? If you proceed, the SPV chain file will be deleted on the next startup.\n\nAfter the restart it can take a while to resync with the network and you will only see all transactions once the resync is completed.\n\nDepending on the number of transactions and the age of your wallet the resync can take up to a few hours and consumes 100% of CPU. Do not interrupt the process otherwise you have to repeat it.
settings.net.reSyncSPVAfterRestart=ไฟล์ SPV chain ถูกลบแล้ว โปรดอดใจรอ อาจใช้เวลาสักครู่เพื่อทำการซิงค์ครั้งใหม่กับเครือข่าย
settings.net.reSyncSPVAfterRestartCompleted=การซิงค์เสร็จสมบูรณ์แล้ว โปรดรีสตาร์ทแอ็พพลิเคชั่น
settings.net.reSyncSPVFailed=ไม่สามารถลบไฟล์ SPV chain ได้\nข้อผิดพลาด: {0}
setting.about.aboutHaveno=เกี่ยวกับ Haveno
setting.about.about=Haveno เป็นโครงการอิสระโดยอำนวยความสะดวกในการแลกเงินบิตคอยน์กับสกุลเงินของประเทศต่างๆ (และสกุลเงินดิจิตอลอื่นๆ) ผ่านเครือข่ายเข้าถึงกระจายอำนาจอย่างถัดเทียมในรูปแบบการปกป้องข้อมูลส่วนบุคคล เรียนรู้เพิ่มเติมเกี่ยวกับ Haveno ในหน้าเว็บของโปรเจคของเรา
setting.about.web=หน้าเว็บ Haveno

View file

@ -1068,12 +1068,6 @@ settings.net.initialDataExchange={0} [Bootstrapping]
settings.net.peer=Đối tác
settings.net.inbound=chuyến về
settings.net.outbound=chuyến đi
settings.net.reSyncSPVChainLabel=Đồng bộ hóa lại SPV chain
settings.net.reSyncSPVChainButton=Xóa file SPV và đồng bộ hóa lại
settings.net.reSyncSPVSuccess=Are you sure you want to do an SPV resync? If you proceed, the SPV chain file will be deleted on the next startup.\n\nAfter the restart it can take a while to resync with the network and you will only see all transactions once the resync is completed.\n\nDepending on the number of transactions and the age of your wallet the resync can take up to a few hours and consumes 100% of CPU. Do not interrupt the process otherwise you have to repeat it.
settings.net.reSyncSPVAfterRestart=File chuỗi SPV đã được xóa. Vui lòng đợi, có thể mất một lúc để đồng bộ hóa với mạng.
settings.net.reSyncSPVAfterRestartCompleted=Đồng bộ hóa đã xong. Vui lòng khởi động lại ứng dụng.
settings.net.reSyncSPVFailed=Không thể xóa SPV chain file.\nLỗi: {0}
setting.about.aboutHaveno=Về Haveno
setting.about.about=Haveno là một phần mềm mã nguồn mở nhằm hỗ trợ quá trình trao đổi giữa bitcoin và tiền tệ quốc gia (và các loại tiền crypto khác) thông qua một mạng lưới ngang hàng phi tập trung hoạt động trên cơ sở bảo vệ tối đa quyền riêng tư của người dùng. Vui lòng tìm hiểu thêm về Haveno trên trang web dự án của chúng tôi.
setting.about.web=Trang web Haveno

View file

@ -1066,12 +1066,6 @@ settings.net.initialDataExchange={0} [Bootstrapping]
settings.net.peer=节点
settings.net.inbound=接收数据包
settings.net.outbound=发送数据包
settings.net.reSyncSPVChainLabel=重新同步 SPV 链
settings.net.reSyncSPVChainButton=删除 SPV 链文件并重新同步
settings.net.reSyncSPVSuccess=您确定要进行 SPV 重新同步如果您继续SPV 链文件将会在下一次启动前删除。\n\n重新启动后可能需要一段时间才能与网络重新同步只有重新同步完成后才会看到所有的交易。\n\n根据交易的数量和钱包账龄重新同步可能会花费几个小时并消耗100%的 CPU。不要打断这个过程否则你会不断地重复它。
settings.net.reSyncSPVAfterRestart=SPV 链文件已被删除。请耐心等待,与网络重新同步可能需要一段时间。
settings.net.reSyncSPVAfterRestartCompleted=重新同步刚刚完成,请重启应用程序。
settings.net.reSyncSPVFailed=无法删除 SPV 链文件。\n错误{0}
setting.about.aboutHaveno=关于 Haveno
setting.about.about=Haveno 是一款开源软件,它通过分散的对等网络促进了比特币与各国货币(以及其他加密货币)的交易,严格保护了用户隐私的方式。请到我们项目的网站阅读更多关于 Haveno 的信息。
setting.about.web=Haveno 网站

View file

@ -1066,12 +1066,6 @@ settings.net.initialDataExchange={0} [Bootstrapping]
settings.net.peer=節點
settings.net.inbound=接收數據包
settings.net.outbound=發送數據包
settings.net.reSyncSPVChainLabel=重新同步 SPV 鏈
settings.net.reSyncSPVChainButton=刪除 SPV 鏈文件並重新同步
settings.net.reSyncSPVSuccess=Are you sure you want to do an SPV resync? If you proceed, the SPV chain file will be deleted on the next startup.\n\nAfter the restart it can take a while to resync with the network and you will only see all transactions once the resync is completed.\n\nDepending on the number of transactions and the age of your wallet the resync can take up to a few hours and consumes 100% of CPU. Do not interrupt the process otherwise you have to repeat it.
settings.net.reSyncSPVAfterRestart=SPV 鏈文件已被刪除。請耐心等待,與網絡重新同步可能需要一段時間。
settings.net.reSyncSPVAfterRestartCompleted=重新同步剛剛完成,請重啟應用程序。
settings.net.reSyncSPVFailed=無法刪除 SPV 鏈文件。\n錯誤{0}
setting.about.aboutHaveno=關於 Haveno
setting.about.about=Haveno 是一款開源軟件,它通過分散的對等網絡促進了比特幣與各國貨幣(以及其他加密貨幣)的交易,嚴格保護了用户隱私的方式。請到我們項目的網站閲讀更多關於 Haveno 的信息。
setting.about.web=Haveno 網站

View file

@ -328,16 +328,11 @@ public class MainViewModel implements ViewModel, HavenoSetup.HavenoSetupListener
torNetworkSettingsWindow.hide();
}
});
havenoSetup.setSpvFileCorruptedHandler(msg -> new Popup().warning(msg)
.actionButtonText(Res.get("settings.net.reSyncSPVChainButton"))
.onAction(() -> GUIUtil.reSyncSPVChain(preferences))
.show());
havenoSetup.setChainFileLockedExceptionHandler(msg -> new Popup().warning(msg)
.useShutDownButton()
.show());
havenoSetup.setLockedUpFundsHandler(msg -> new Popup().width(850).warning(msg).show());
havenoSetup.setShowFirstPopupIfResyncSPVRequestedHandler(this::showFirstPopupIfResyncSPVRequested);
havenoSetup.setDisplayUpdateHandler((alert, key) -> new DisplayUpdateDownloadWindow(alert, config)
.actionButtonText(Res.get("displayUpdateDownloadWindow.button.downloadLater"))
@ -531,28 +526,6 @@ public class MainViewModel implements ViewModel, HavenoSetup.HavenoSetupListener
});
}
private void showFirstPopupIfResyncSPVRequested() {
Popup firstPopup = new Popup();
firstPopup.information(Res.get("settings.net.reSyncSPVAfterRestart")).show();
if (havenoSetup.getBtcSyncProgress().get() == 1) {
showSecondPopupIfResyncSPVRequested(firstPopup);
} else {
havenoSetup.getBtcSyncProgress().addListener((observable, oldValue, newValue) -> {
if ((double) newValue == 1)
showSecondPopupIfResyncSPVRequested(firstPopup);
});
}
}
private void showSecondPopupIfResyncSPVRequested(Popup firstPopup) {
firstPopup.hide();
HavenoSetup.setResyncSpvSemaphore(false);
new Popup().information(Res.get("settings.net.reSyncSPVAfterRestartCompleted"))
.hideCloseButton()
.useShutDownButton()
.show();
}
private void showPopupIfInvalidBtcConfig() {
preferences.setMoneroNodesOptionOrdinal(0);
new Popup().warning(Res.get("settings.net.warn.invalidBtcConfig"))

View file

@ -90,8 +90,8 @@
</VBox>
<VBox GridPane.rowIndex="4">
<AutoTooltipLabel fx:id="reSyncSPVChainLabel" styleClass="small-text"/>
<AutoTooltipButton fx:id="reSyncSPVChainButton"/>
<AutoTooltipLabel fx:id="rescanOutputsLabel" styleClass="small-text"/>
<AutoTooltipButton fx:id="rescanOutputsButton"/>
</VBox>
<TitledGroupBg fx:id="p2pHeader" GridPane.rowIndex="5" GridPane.rowSpan="5">

View file

@ -97,9 +97,9 @@ public class NetworkSettingsView extends ActivatableView<GridPane, Void> {
TableColumn<MoneroNetworkListItem, String> moneroPeerAddressColumn, moneroPeerVersionColumn,
moneroPeerSubVersionColumn, moneroPeerHeightColumn;
@FXML
Label reSyncSPVChainLabel;
Label rescanOutputsLabel;
@FXML
AutoTooltipButton reSyncSPVChainButton, openTorSettingsButton;
AutoTooltipButton rescanOutputsButton, openTorSettingsButton;
private final Preferences preferences;
private final XmrNodes xmrNodes;
@ -167,8 +167,8 @@ public class NetworkSettingsView extends ActivatableView<GridPane, Void> {
useProvidedNodesRadio.setText(Res.get("settings.net.useProvidedNodesRadio"));
useCustomNodesRadio.setText(Res.get("settings.net.useCustomNodesRadio"));
usePublicNodesRadio.setText(Res.get("settings.net.usePublicNodesRadio"));
reSyncSPVChainLabel.setText(Res.get("settings.net.reSyncSPVChainLabel"));
reSyncSPVChainButton.updateText(Res.get("settings.net.reSyncSPVChainButton"));
rescanOutputsLabel.setText(Res.get("settings.net.rescanOutputsLabel"));
rescanOutputsButton.updateText(Res.get("settings.net.rescanOutputsButton"));
p2PPeersLabel.setText(Res.get("settings.net.p2PPeersLabel"));
onionAddressColumn.setGraphic(new AutoTooltipLabel(Res.get("settings.net.onionAddressColumn")));
onionAddressColumn.getStyleClass().add("first-column");
@ -184,6 +184,10 @@ public class NetworkSettingsView extends ActivatableView<GridPane, Void> {
peerTypeColumn.getStyleClass().add("last-column");
openTorSettingsButton.updateText(Res.get("settings.net.openTorSettingsButton"));
// TODO: hiding button to rescan outputs until supported
rescanOutputsLabel.setVisible(false);
rescanOutputsButton.setVisible(false);
GridPane.setMargin(moneroPeersLabel, new Insets(4, 0, 0, 0));
GridPane.setValignment(moneroPeersLabel, VPos.TOP);
@ -283,7 +287,7 @@ public class NetworkSettingsView extends ActivatableView<GridPane, Void> {
}
});
reSyncSPVChainButton.setOnAction(event -> GUIUtil.reSyncSPVChain(preferences));
rescanOutputsButton.setOnAction(event -> GUIUtil.rescanOutputs(preferences));
moneroPeersSubscription = EasyBind.subscribe(connectionManager.peerConnectionsProperty(),
this::updateMoneroPeersTable);

View file

@ -39,7 +39,6 @@ import haveno.common.util.Utilities;
import haveno.core.account.witness.AccountAgeWitness;
import haveno.core.account.witness.AccountAgeWitnessService;
import haveno.core.api.CoreMoneroConnectionsService;
import haveno.core.app.HavenoSetup;
import haveno.core.locale.Country;
import haveno.core.locale.CountryUtil;
import haveno.core.locale.CurrencyUtil;
@ -56,7 +55,6 @@ import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.Navigation;
import haveno.desktop.app.HavenoApp;
import haveno.desktop.components.AutoTooltipLabel;
import haveno.desktop.components.HavenoTextArea;
import haveno.desktop.components.InfoAutoTooltipLabel;
@ -118,7 +116,6 @@ import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import java.util.concurrent.TimeUnit;
import java.util.function.Consumer;
import static com.google.common.base.Preconditions.checkArgument;
@ -766,19 +763,18 @@ public class GUIUtil {
UserThread.execute(node::requestFocus);
}
public static void reSyncSPVChain(Preferences preferences) {
public static void rescanOutputs(Preferences preferences) {
try {
new Popup().information(Res.get("settings.net.reSyncSPVSuccess"))
.useShutDownButton()
.actionButtonText(Res.get("shared.shutDown"))
new Popup().information(Res.get("settings.net.rescanOutputsSuccess"))
.actionButtonText(Res.get("shared.yes"))
.onAction(() -> {
HavenoSetup.setResyncSpvSemaphore(true);
UserThread.runAfter(HavenoApp.getShutDownHandler(), 100, TimeUnit.MILLISECONDS);
throw new RuntimeException("Rescanning wallet outputs not yet implemented");
//UserThread.runAfter(HavenoApp.getShutDownHandler(), 100, TimeUnit.MILLISECONDS);
})
.closeButtonText(Res.get("shared.cancel"))
.show();
} catch (Throwable t) {
new Popup().error(Res.get("settings.net.reSyncSPVFailed", t)).show();
new Popup().error(Res.get("settings.net.rescanOutputsFailed", t)).show();
}
}