Make stacks without running activities being invisible

Stacks that don't have any running activities and not starting
one on it should be invisible, no matter they are the top
stack or not.

Use home stack as the focused stack if the display has no
focusable and visiable stack because we eventually need to
start home activity on it.

Bug: 117745438
Test: Manual test with the same reproduce steps
      atest com.android.server.am
Change-Id: Iceb9ad7b7fa388b5829bb0d18f3627905d5410d7
9 files changed