Fix freeform window cannot move up

Since commit 0d46519, the stack can be used as task in freeform
mode, so the stack bounds are no longer fullscreen. It becomes
the actual window bounds, then the movable area is also limited.
This changes to use the intersection of stable screen bounds and
the parent bounds of root task.

Also clean up TaskPositioner a bit.

Bug: 150923021
Test: atest TaskPositionerTests#testMoveWindow

Change-Id: I3030943fcca48a73a64173574e897b965a0d08d7
3 files changed