Sure, mid conversation one could mash the speaker button and switch the call to speakerphone while on hold
…. but there is a f/OSS application [on google code] that uses the proximity sensor to do this automatically for you. What’s more is has a toggle switch to engage only when phone is set upon a mostly horizontal surface:
Take phone from face, set on table… voila speakerphone on hold
SpeakerProximity
http://code.google.com/p/speakerproximity/
.
there be one gui bug: speaker button does not illuminate when the application toggles speakerphone on by proximity sensor
Plays well with IMSdroid
http://code.google.com/p/imsdroid/
.