summaryrefslogtreecommitdiff
path: root/core/java/android/widget/TextView.java
diff options
context:
space:
mode:
authorLucas Dupin <dupin@google.com>2022-02-03 12:47:28 -0800
committerLucas Dupin <dupin@google.com>2022-02-04 09:49:43 -0800
commitecfb379e5ed9d21a427c79a0cb1d093233e64b37 (patch)
tree305aee32a5e3ab621fd7e655ec6f01a3a1b74b1e /core/java/android/widget/TextView.java
parentee754300bfdfbb93b4829fe4861d67a6b6fd2142 (diff)
Do not relayout when changing to Marquee
The text field size won't really change, so there's not reason to remeasure and relayout. This saves us up to 48 measure steps when unlocking the device. Test: https://ui.perfetto.dev/#!/?s=519ae4c7f943f3ebad09eae63e445112c1d4286dd8376e18e69d713f1a9c2 Bug: 210432290 Change-Id: Ie3b7e0f7e942aac23605e2588cf6b942d507588f
Diffstat (limited to 'core/java/android/widget/TextView.java')
-rw-r--r--core/java/android/widget/TextView.java10
1 files changed, 8 insertions, 2 deletions
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java
index 0fe2ed51beb6..9efa583a894a 100644
--- a/core/java/android/widget/TextView.java
+++ b/core/java/android/widget/TextView.java
@@ -10821,8 +10821,11 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
&& mSavedMarqueeModeLayout.getLineWidth(0) > width));
}
+ /**
+ * @hide
+ */
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P, trackingBug = 115609023)
- private void startMarquee() {
+ protected void startMarquee() {
// Do not ellipsize EditText
if (getKeyListener() != null) return;
@@ -10848,7 +10851,10 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
}
}
- private void stopMarquee() {
+ /**
+ * @hide
+ */
+ protected void stopMarquee() {
if (mMarquee != null && !mMarquee.isStopped()) {
mMarquee.stop();
}