Add handle menu to TYPE_STATUS_BAR_ADDITIONAL layer.

Changes handle menu's layer from TYPE_APPLICATION to
TYPE_STATUS_BAR_ADDITIONAL when the task is not in freeform. This allows
us to interact with the menu directly in status bar coordinates but
keeps it underneath notification shade in the case that shade is invoked
via a keyboard shortcut.

Splits AdditionalWindow into two child classes to distinguish between
AdditionalWindows that are hosted in this new layer and ones that use
the original method.

Additionally, modifies updateHandleMenuPillPositions to calculate
positions with global coordinates if needed.

Bug: 316186265
Test: Manual, open handle menu in different windowing modes
Test: atest HandleMenuTest
Flag: lse_desktop_experience.enable_additional_windows_above_status_bar
Change-Id: Ia91b2503dde3efbedd7999b1a6769378765f35bb
13 files changed