When starting bitcoin-qt with `-nowallet` to explicitly not load any wallets initially, attempting to load a wallet using the Open Wallet menu option results in the wallet being loaded but the GUI does not change. The wallet is reachable via the RPC interface but the GUI still says that no wallets are loaded.
{
    
    {
        QMutexLocker locker(&m_mutex);
        m_wallets.erase(std::remove(m_wallets.begin(), m_wallets.end(), wallet_model));
    }
    Q_EMIT walletRemoved(wallet_model);
    
    
    delete wallet_model;
}
OpenWalletActivity::OpenWalletActivity(WalletController* wallet_controller, const std::string& name)
    : m_wallet_controller(wallet_controller)
    , m_name(name)
{}
void OpenWalletActivity::open()
{
    std::string error, warning;
    std::unique_ptr<interfaces::Wallet> wallet = m_wallet_controller->m_node.loadWallet(m_name, error, warning);
    if (!warning.empty()) {
        Q_EMIT message(QMessageBox::Warning, QString::fromStdString(warning));
    }
    if (wallet) {
        Q_EMIT opened(m_wallet_controller->getOrCreateWallet(std::move(wallet)));
    } else {
        Q_EMIT message(QMessageBox::Critical, QString::fromStdString(error));
    }
    Q_EMIT finished();
}