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.

{
        case 1: return QIcon(":/icons/transaction_1");
        case 2: return QIcon(":/icons/transaction_2");
        case 3: return QIcon(":/icons/transaction_3");
        case 4: return QIcon(":/icons/transaction_4");
        default: return QIcon(":/icons/transaction_5");
        };
    case TransactionStatus::Confirmed:
        return QIcon(":/icons/transaction_confirmed");
    case TransactionStatus::Conflicted:
        return QIcon(":/icons/transaction_conflicted");
    case TransactionStatus::Immature: {
        int total = wtx->status.depth + wtx->status.matures_in;
        int part = (wtx->status.depth * 4 / total) + 1;
        return QIcon(QString(":/icons/transaction_%1").arg(part));
        }
    case TransactionStatus::NotAccepted:
        return QIcon(":/icons/transaction_0");
    default:
        return COLOR_BLACK;
    }
}
QVariant TransactionTableModel::txWatchonlyDecoration(const TransactionRecord *wtx) const
{
    if (wtx->involvesWatchAddress)
        return QIcon(":/icons/eye");
    else
        return QVariant();
}
QString TransactionTableModel::formatTooltip(const TransactionRecord *rec) const