Prefer activating desktop window on active output
Workspace::findDesktop() doesn't take into account the current active output, and instead returns the first top desktop window found in the stack. This means that the active output may drift and the focus chain logic can break.
BUG: 493735 BUG: 494332 (cherry picked from commit 47a2a2e1)