I get that this exists, but it literally never seems to trigger for me. The situation GP brings up happens constantly despite this feature being enabled.
I think the problem is that by the time your phone knows WiFi is non-viable (e.g. it's sent, retried, timed out), you've probably screwed whatever connection you were hoping to make.
Short of hammering the AP with test transmissions (oh no, battery life) when the connection starts to get below a certain level, not sure how it could solve this before the user attempts to do something.
I think the onus is on devs to implement it. So far, the only app I've found with robust reconnect is XiiaLive Pro (a music-streaming app). I use it daily for streaming radio stations and I often forget to disable WIFI when I leave the house, so by the time I'm down the block, the music usually cuts off for 1-2 seconds before the app realizes WIFI is gone. Amazingly, it auto-retries using the 3g/4g connection. I've used 10s of music streaming apps, and ALL of them required a manual stop/start after WIFI signal is gone.
I have that enabled and the setting states that ~70MB have been downloaded in this way, but I don't know over which period and it also never does "feel" like it's working.
I disabled it after my phone freaked out one day and kept re-downloading the same few hundred iTunes songs over and over, blowing past my data cap and costing me $30 in overages, all while it was asleep on my desk (albeit mysteriously very warm).