Fix NoActionBar themes rendering.
Also fix some warnings. Bug: http://b.android.com/159780 Change-Id: I64fd4259b802722af7a271f51d5943018ed11e9e
This commit is contained in:
@@ -55,7 +55,7 @@ public class AppCompatActionBar extends BridgeActionBar {
|
||||
View contentView = getDecorContent().findViewById(contentRootId);
|
||||
if (contentView != null) {
|
||||
assert contentView instanceof FrameLayout;
|
||||
setContentRoot(((FrameLayout) contentView));
|
||||
setContentRoot((FrameLayout) contentView);
|
||||
} else {
|
||||
// Something went wrong. Create a new FrameLayout in the enclosing layout.
|
||||
FrameLayout contentRoot = new FrameLayout(context);
|
||||
@@ -104,8 +104,8 @@ public class AppCompatActionBar extends BridgeActionBar {
|
||||
protected void setIcon(String icon) {
|
||||
// Do this only if the action bar doesn't already have an icon.
|
||||
if (icon != null && !icon.isEmpty() && mWindowDecorActionBar != null) {
|
||||
if (((Boolean) invoke(getMethod(mWindowActionBarClass, "hasIcon"), mWindowDecorActionBar)
|
||||
)) {
|
||||
if (invoke(getMethod(mWindowActionBarClass, "hasIcon"), mWindowDecorActionBar)
|
||||
== Boolean.TRUE) {
|
||||
Drawable iconDrawable = getDrawable(icon, false);
|
||||
if (iconDrawable != null) {
|
||||
Method setIcon = getMethod(mWindowActionBarClass, "setIcon", Drawable.class);
|
||||
|
||||
@@ -44,6 +44,7 @@ public abstract class BridgeActionBar {
|
||||
private final View mDecorContent;
|
||||
private final ActionBarCallback mCallback;
|
||||
|
||||
@SuppressWarnings("NullableProblems") // Should be initialized by subclasses.
|
||||
@NonNull private FrameLayout mContentRoot;
|
||||
|
||||
public BridgeActionBar(@NonNull BridgeContext context, @NonNull SessionParams params,
|
||||
@@ -91,7 +92,7 @@ public abstract class BridgeActionBar {
|
||||
*/
|
||||
protected abstract ResourceValue getLayoutResource(BridgeContext context);
|
||||
|
||||
protected void setContentRoot(FrameLayout contentRoot) {
|
||||
protected void setContentRoot(@NonNull FrameLayout contentRoot) {
|
||||
mContentRoot = contentRoot;
|
||||
}
|
||||
|
||||
|
||||
@@ -1114,8 +1114,7 @@ public class RenderSessionImpl extends RenderAction<SessionParams> {
|
||||
}
|
||||
} else {
|
||||
// action bar overrides title bar so only look for this one if action bar is hidden
|
||||
boolean windowNoTitle = getBooleanThemeValue(resources,
|
||||
"windowNoTitle", false, !isThemeAppCompat(resources));
|
||||
boolean windowNoTitle = getBooleanThemeValue(resources, "windowNoTitle", false, true);
|
||||
|
||||
if (!windowNoTitle) {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user