Close the active wallet
()
| 712 | |
| 713 | // Close the active wallet |
| 714 | func closeWallet() { |
| 715 | showLoadingOverlay() |
| 716 | |
| 717 | if engram.Disk != nil { |
| 718 | logger.Printf("[Engram] Shutting down wallet services...\n") |
| 719 | stopEPOCH() |
| 720 | engram.Disk.SetOfflineMode() |
| 721 | engram.Disk.Save_Wallet() |
| 722 | |
| 723 | globals.Exit_In_Progress = true |
| 724 | engram.Disk.Close_Encrypted_Wallet() |
| 725 | session.WalletOpen = false |
| 726 | session.Domain = "app.main" |
| 727 | session.BalanceUSD = "" |
| 728 | session.LastBalance = 0 |
| 729 | engram.Disk = nil |
| 730 | tx = Transfers{} |
| 731 | |
| 732 | if gnomon.Index != nil { |
| 733 | logger.Printf("[Gnomon] Shutting down indexers...\n") |
| 734 | stopGnomon() |
| 735 | } |
| 736 | |
| 737 | if cyberdeck.RPC.server != nil { |
| 738 | cyberdeck.RPC.server.RPCServer_Stop() |
| 739 | cyberdeck.RPC.server = nil |
| 740 | logger.Printf("[Engram] Cyberdeck RPC closed.\n") |
| 741 | } |
| 742 | |
| 743 | if cyberdeck.WS.server != nil { |
| 744 | cyberdeck.WS.server.Stop() |
| 745 | cyberdeck.WS.server = nil |
| 746 | cyberdeck.WS.apps = nil |
| 747 | cyberdeck.WS.list = nil |
| 748 | logger.Printf("[Engram] Cyberdeck XSWD closed.\n") |
| 749 | } |
| 750 | cyberdeck.WS.advanced = false |
| 751 | cyberdeck.WS.global.enabled = false |
| 752 | cyberdeck.WS.global.connect = false |
| 753 | |
| 754 | tela.ShutdownTELA() |
| 755 | |
| 756 | if rpc_client.WS != nil { |
| 757 | rpc_client.WS.Close() |
| 758 | rpc_client.WS = nil |
| 759 | logger.Printf("[Engram] Websocket client closed.\n") |
| 760 | } |
| 761 | |
| 762 | if rpc_client.RPC != nil { |
| 763 | rpc_client.RPC.Close() |
| 764 | rpc_client.RPC = nil |
| 765 | logger.Printf("[Engram] RPC client closed.\n") |
| 766 | } |
| 767 | |
| 768 | session.Path = "" |
| 769 | session.Name = "" |
| 770 | |
| 771 | session.LastDomain = layoutMain() |
no test coverage detected