Loading tools/layoutlib/bridge/src/com/android/layoutlib/bridge/bars/CustomBar.java +10 −6 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; import android.annotation.NonNull; import android.annotation.Nullable; import android.content.res.ColorStateList; import android.graphics.Bitmap; import android.graphics.Bitmap_Delegate; Loading Loading @@ -227,16 +228,18 @@ abstract class CustomBar extends LinearLayout { * Find the background color for this bar from the theme attributes. Only relevant to StatusBar * and NavigationBar. * <p/> * Returns 0 if not found. * Returns null if not found. * * @param colorAttrName the attribute name for the background color * @param translucentAttrName the attribute name for the translucency property of the bar. * * @throws NumberFormatException if color resolved to an invalid string. */ protected int getBarColor(@NonNull String colorAttrName, @NonNull String translucentAttrName) { @Nullable protected Integer getBarColor(@NonNull String colorAttrName, @NonNull String translucentAttrName) { if (!Config.isGreaterOrEqual(mSimulatedPlatformVersion, LOLLIPOP)) { return 0; return null; } RenderResources renderResources = getContext().getRenderResources(); // First check if the bar is translucent. Loading @@ -251,10 +254,11 @@ abstract class CustomBar extends LinearLayout { if (transparent) { return getColor(renderResources, colorAttrName); } return 0; return null; } private static int getColor(RenderResources renderResources, String attr) { @Nullable private static Integer getColor(RenderResources renderResources, String attr) { // From ?attr/foo to @color/bar. This is most likely an ItemResourceValue. ResourceValue resource = renderResources.findItemInTheme(attr, true); // Form @color/bar to the #AARRGGBB Loading @@ -275,7 +279,7 @@ abstract class CustomBar extends LinearLayout { } } } return 0; return null; } private ResourceValue getResourceValue(String reference) { Loading tools/layoutlib/bridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java +2 −2 Original line number Diff line number Diff line Loading @@ -62,8 +62,8 @@ public class NavigationBar extends CustomBar { super(context, orientation, "/bars/navigation_bar.xml", "navigation_bar.xml", simulatedPlatformVersion); int color = getBarColor(ATTR_COLOR, ATTR_TRANSLUCENT); setBackgroundColor(color == 0 ? 0xFF000000 : color); Integer color = getBarColor(ATTR_COLOR, ATTR_TRANSLUCENT); setBackgroundColor(color == null ? 0xFF000000 : color); // Cannot access the inside items through id because no R.id values have been // created for them. Loading tools/layoutlib/bridge/src/com/android/layoutlib/bridge/bars/StatusBar.java +3 −2 Original line number Diff line number Diff line Loading @@ -71,8 +71,9 @@ public class StatusBar extends CustomBar { // FIXME: use FILL_H? setGravity(Gravity.START | Gravity.TOP | Gravity.RIGHT); int color = getBarColor(ATTR_COLOR, ATTR_TRANSLUCENT); setBackgroundColor(color == 0 ? Config.getStatusBarColor(simulatedPlatformVersion) : color); Integer color = getBarColor(ATTR_COLOR, ATTR_TRANSLUCENT); setBackgroundColor( color == null ? Config.getStatusBarColor(simulatedPlatformVersion) : color); // Cannot access the inside items through id because no R.id values have been // created for them. Loading tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java +1 −2 Original line number Diff line number Diff line Loading @@ -421,8 +421,7 @@ public class RenderSessionImpl extends RenderAction<SessionParams> { gc.setComposite(AlphaComposite.Src); gc.setColor(new Color(0x00000000, true)); gc.fillRect(0, 0, mMeasuredScreenWidth, mMeasuredScreenHeight); gc.fillRect(0, 0, mMeasuredScreenWidth, mMeasuredScreenHeight); // done gc.dispose(); Loading Loading
tools/layoutlib/bridge/src/com/android/layoutlib/bridge/bars/CustomBar.java +10 −6 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; import android.annotation.NonNull; import android.annotation.Nullable; import android.content.res.ColorStateList; import android.graphics.Bitmap; import android.graphics.Bitmap_Delegate; Loading Loading @@ -227,16 +228,18 @@ abstract class CustomBar extends LinearLayout { * Find the background color for this bar from the theme attributes. Only relevant to StatusBar * and NavigationBar. * <p/> * Returns 0 if not found. * Returns null if not found. * * @param colorAttrName the attribute name for the background color * @param translucentAttrName the attribute name for the translucency property of the bar. * * @throws NumberFormatException if color resolved to an invalid string. */ protected int getBarColor(@NonNull String colorAttrName, @NonNull String translucentAttrName) { @Nullable protected Integer getBarColor(@NonNull String colorAttrName, @NonNull String translucentAttrName) { if (!Config.isGreaterOrEqual(mSimulatedPlatformVersion, LOLLIPOP)) { return 0; return null; } RenderResources renderResources = getContext().getRenderResources(); // First check if the bar is translucent. Loading @@ -251,10 +254,11 @@ abstract class CustomBar extends LinearLayout { if (transparent) { return getColor(renderResources, colorAttrName); } return 0; return null; } private static int getColor(RenderResources renderResources, String attr) { @Nullable private static Integer getColor(RenderResources renderResources, String attr) { // From ?attr/foo to @color/bar. This is most likely an ItemResourceValue. ResourceValue resource = renderResources.findItemInTheme(attr, true); // Form @color/bar to the #AARRGGBB Loading @@ -275,7 +279,7 @@ abstract class CustomBar extends LinearLayout { } } } return 0; return null; } private ResourceValue getResourceValue(String reference) { Loading
tools/layoutlib/bridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java +2 −2 Original line number Diff line number Diff line Loading @@ -62,8 +62,8 @@ public class NavigationBar extends CustomBar { super(context, orientation, "/bars/navigation_bar.xml", "navigation_bar.xml", simulatedPlatformVersion); int color = getBarColor(ATTR_COLOR, ATTR_TRANSLUCENT); setBackgroundColor(color == 0 ? 0xFF000000 : color); Integer color = getBarColor(ATTR_COLOR, ATTR_TRANSLUCENT); setBackgroundColor(color == null ? 0xFF000000 : color); // Cannot access the inside items through id because no R.id values have been // created for them. Loading
tools/layoutlib/bridge/src/com/android/layoutlib/bridge/bars/StatusBar.java +3 −2 Original line number Diff line number Diff line Loading @@ -71,8 +71,9 @@ public class StatusBar extends CustomBar { // FIXME: use FILL_H? setGravity(Gravity.START | Gravity.TOP | Gravity.RIGHT); int color = getBarColor(ATTR_COLOR, ATTR_TRANSLUCENT); setBackgroundColor(color == 0 ? Config.getStatusBarColor(simulatedPlatformVersion) : color); Integer color = getBarColor(ATTR_COLOR, ATTR_TRANSLUCENT); setBackgroundColor( color == null ? Config.getStatusBarColor(simulatedPlatformVersion) : color); // Cannot access the inside items through id because no R.id values have been // created for them. Loading
tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java +1 −2 Original line number Diff line number Diff line Loading @@ -421,8 +421,7 @@ public class RenderSessionImpl extends RenderAction<SessionParams> { gc.setComposite(AlphaComposite.Src); gc.setColor(new Color(0x00000000, true)); gc.fillRect(0, 0, mMeasuredScreenWidth, mMeasuredScreenHeight); gc.fillRect(0, 0, mMeasuredScreenWidth, mMeasuredScreenHeight); // done gc.dispose(); Loading