// DragonX Wallet - ImGui Edition // Copyright 2024-2026 The Hush Developers // Released under the GPLv3 #pragma once namespace dragonx { class App; namespace ui { /** * @brief Render the Chat tab (HushChat conversation view). * * A two-pane view: a conversation list on the left and the selected thread on the * right, both read from the App-owned ChatService store (App::chatService()). Peer * z-addresses are resolved to contact names via the address book when known. * Composing/sending and starting new conversations are wired (App::sendChatMessage / * startChatConversation). Reachable when built with DRAGONX_ENABLE_CHAT * (gated via WalletUiSurface::Chat). * * @param app Pointer to the app instance. */ void RenderChatTab(App* app); /** * @brief Securely wipe the Chat tab's UI-local state (composer / new-conversation * plaintext buffers + the selected-conversation ids). Called by * App::resetChatSession() on a wallet switch/lock so one wallet's typed * plaintext can't resurface (or linger unwiped in RAM) under the next wallet. */ void ResetChatTab(); } // namespace ui } // namespace dragonx