For a certain transaction structure the GUI does not show all transactions that occurred.

Perform the following transaction structure to reproduce the bug:

Input: Any owned coins
Output 1: Address not owned by the wallet
Output 2: Address owned by the wallet (generated using the receive payment feature, so it's not a change address)

So there is a payment to someone else and a payment to self. The payment to self is missing in the GUI. Normally, the GUI does list payments to self.

`listtransactions` lists 3 transactions here: The send to the foreign address and a send/receive pair for the payment to self. I don't know if this is correct. I'm mentioning this so that the devs can make sure this is intended.

See transaction `5299f198919d6bd5b9f6d7a5f256b23417cb49ea663828f51cfc1b4d7e69822d` on testnet.

{
    if (nProgress == 0)
        fQueueNotifications = true;
    if (nProgress == 100)
    {
        fQueueNotifications = false;
        if (vQueueNotifications.size() > 10) 
            QMetaObject::invokeMethod(ttm, "setProcessingQueuedTransactions", Qt::QueuedConnection, Q_ARG(bool, true));
        for (unsigned int i = 0; i < vQueueNotifications.size(); ++i)
        {
            if (vQueueNotifications.size() - i <= 10)
                QMetaObject::invokeMethod(ttm, "setProcessingQueuedTransactions", Qt::QueuedConnection, Q_ARG(bool, false));
            vQueueNotifications[i].invoke(ttm);
        }
        std::vector<TransactionNotification >().swap(vQueueNotifications); 
    }
}
void TransactionTableModel::subscribeToCoreSignals()
{
    
    m_handler_transaction_changed = walletModel->wallet().handleTransactionChanged(std::bind(NotifyTransactionChanged, this, std::placeholders::_1, std::placeholders::_2));
    m_handler_show_progress = walletModel->wallet().handleShowProgress(std::bind(ShowProgress, this, std::placeholders::_1, std::placeholders::_2));
}
void TransactionTableModel::unsubscribeFromCoreSignals()
{
    
    m_handler_transaction_changed->disconnect();
    m_handler_show_progress->disconnect();
}