From 4d59b81c21761b9159b018e82581d4cdc15db986 Mon Sep 17 00:00:00 2001 From: Alan Viverette Date: Tue, 12 Apr 2016 17:17:55 -0400 Subject: [PATCH] Fall back to setting the level of the entire progress drawable Bug: 27775791 Change-Id: I3f5bd31bdd4a970898899a9a64c1bdc23097b8e7 --- core/java/android/widget/ProgressBar.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/core/java/android/widget/ProgressBar.java b/core/java/android/widget/ProgressBar.java index e9fa26ce46584..9c9784b4adf8b 100644 --- a/core/java/android/widget/ProgressBar.java +++ b/core/java/android/widget/ProgressBar.java @@ -1347,6 +1347,13 @@ public class ProgressBar extends View { if (d instanceof LayerDrawable) { d = ((LayerDrawable) d).findDrawableByLayerId(id); + if (d == null) { + // If we can't find the requested layer, fall back to setting + // the level of the entire drawable. This will break if + // progress is set on multiple elements, but the theme-default + // drawable will always have all layer IDs present. + d = mCurrentDrawable; + } } if (d != null) {