Currently, the wallet pre-empts the total balance by including all UTXOs in the transaction no matter what the actual output amount may be. In the case of wallets with multiple tiny inputs this approach results in giant transactions even when the owner is spending a fraction of the balance.