Reorganize ellipsis APIs
Here is the problems with existing APIs.
- getLinEllipsisCount stops counting at the LF character.
This is came from framework implementation but not a good
behavior to expose to public API. It is good to return the
end of text instead of LF offset.
- getLineVisibleEnd in framework does not respect ellipsis.
From the naming of API, it should return the visible end
offset for the ellipsized line.
To address above problems, propose following changes:
- add getLineVisibleEnd which returns ellipsize start offset
if ellipsis happens. If not, returns line end without
trailing whitespaces.
- To get whether ellipsis happens or not, add isLineEllipsized.
- Remove getLineEllipsisOffset since this is equivalent to
getLineVisibleEnd.
- Remove getLineEllipsisCount since this is equivalent to
getLineEnd() - getLineVisibleEnd().
Relnote: "Remove getLineEllipsisOffset/getLineEllipsisCount. Use
getLineVisibleEnd/getLineEnd/isLineEllipsized instead."
Bug: 162029805
Test: ./gradlew :compose:ui:ui-text:cAT
Change-Id: I85aa258d57056cbdae2816b14ce1af313023020c
14 files changed