Replaced log/preview polling with cross-thread signals/slots.

This should eliminate idle CPU usage and improve the latency.