OK, I've been playing around more, and to get it to switch semi-quickly (~30s or less) you can change language via floating bar, and then (with Focus Follows Mouse on) move your mouse back and forth between an input window (e.g. word processor) and any other window (input, no input, whatever) - perhaps IBus is having big problems with ID'ing input windows? I don't know...
OK, I've been playing around more, and to get it to switch semi-quickly (~30s or less) you can change language via floating bar, and then (with Focus Follows Mouse on) move your mouse back and forth between an input window (e.g. word processor) and any other window (input, no input, whatever) - perhaps IBus is having big problems with ID'ing input windows? I don't know...