The root cause is a race between emitting the event and the surface becoming exposed, so the surface input dispatcher occasionally did not find the topmost surface to dispatch to while doing Scene::for_each.
This can be fixed by changing the TestClientInput setup to wait for the surface exposed event before executing the rest of the test.
The root cause is a race between emitting the event and the surface becoming exposed, so the surface input dispatcher occasionally did not find the topmost surface to dispatch to while doing Scene::for_each.
This can be fixed by changing the TestClientInput setup to wait for the surface exposed event before executing the rest of the test.