Update drawable per UX spec without dashed segments.

Note: a corner radius is clamped to half the shorted edge of the shape.
Therefore having it at 16dp for the segments is equivalent to using a
capped stroke. 16dp is from the spec and the clamping matches the mock.

For drawing segments, switched to Rect completely for better consistency
and also flexibility. It also correctly handles the "// Not enough
segment length to draw the caps" case.

Also changed: removed `setTracker(null)` in `setIndeterminate`. Instead,
don't `drawTracker` when `isIndeterminate()` is true.

Also added `invalidateSelf()` in `setParts` and `setHasTrackerIcon`.

Flag: android.app.api_rich_ongoing
Fix: 376492598
Test: patch ag/30006048 and run ProgressStyleNotificationScreenshotTest
Test: Post ProgressStyle notifs (as defined in the bugs)
Change-Id: Ida447f06da026e7b079de7554e072588672272c7
6 files changed