Fix key navigation tests
QtTest really doesn't like working with an external window, huh. So, we have to re-implement parts of TestCase internals to make it reliably show a window and wait(0) until it fully activates to the point where it is capable of receiving and processing keyboard events.
Also components for test cases better be dynamically created to avoid problems of reusage across multiple functions.
Edited by ivan tkachenko