Refactored layout of QQS and transition animation.

QuickQSPanel.HeaderTileLayout is reworked to work in displays of
different densities by inheriting from TileLayout. The maximum number of
tiles shown is still determined by the same parameter, but it can show
less tiles if there is not enough space due to low density/small screen.
This is calculated during onMeasure using the available space.

QSAnimator is modified to accomodate the following three cases:

* If the tile is present in QQS and QS, animate as before.
* If the tile is present in QQS and not in QS, fade translate to right.
* If the tile is not present in QQS and is in QS, fade in from the
right.

This is a new upload of ag/4898401 (reverted in ag/4968215), addressing
b/113994014.

Fixes: 80141553
Fixes: 110404680
Test: Visual, different densities and orientations. Tested battery saver
tile.

Change-Id: Iffb7a45df7d20e67beb9c75b6f71b3bbc7c49b7d
5 files changed