If anon coins depend on fiat gateways, then by definition they are not mainstream, because then fiat is mainstream. That said, anon coins don't have to go "mainstream", but just big enough to be useful as a currency.
However, if anything, probably a right approach would be: fiat -> bitcoin. Once you are in the crypto sphere, even with a transparent ledger, many more things are possible, such as distributed exchanges. True distributed anonymous exchanges for fiat are not possible, because or you have to have physical contact with cash, or you have to have some bank account. In both cases, it cannot be "distributed - anonymous". But one could think of distributed smart contracts on networks like Tor where there is no anonymity rupture exchanging coins of different nature. One could even do it on top of ethereum although ethereum is much too transparent as such ; I'm more thinking of something like Hawk. (the "monero" version, or better, the zcash version of ethereum). So after fiat -> bitcoin, we can have bitcoin --(hawk)--> monero.
But it won't be bitcoin, nor monero of course. It will be something newer, invented the next century.
So once, if ever, bitcoin-like transparent coins are "mainstream", one can easily go the anon side.