diff options
| -rw-r--r-- | core/java/com/android/internal/widget/ActionBarView.java | 24 | ||||
| -rw-r--r-- | policy/src/com/android/internal/policy/impl/PhoneWindow.java | 4 |
2 files changed, 26 insertions, 2 deletions
diff --git a/core/java/com/android/internal/widget/ActionBarView.java b/core/java/com/android/internal/widget/ActionBarView.java index 48707b959548..fbff8ae4ae5e 100644 --- a/core/java/com/android/internal/widget/ActionBarView.java +++ b/core/java/com/android/internal/widget/ActionBarView.java @@ -91,6 +91,7 @@ public class ActionBarView extends ViewGroup { private View mCustomNavView; private boolean mShowMenu; + private boolean mUserTitle; private MenuBuilder mOptionsMenu; private ActionMenuView mMenuView; @@ -212,7 +213,30 @@ public class ActionBarView extends ViewGroup { return mTitle; } + /** + * Set the action bar title. This will always replace or override window titles. + * @param title Title to set + * + * @see #setWindowTitle(CharSequence) + */ public void setTitle(CharSequence title) { + mUserTitle = true; + setTitleImpl(title); + } + + /** + * Set the window title. A window title will always be replaced or overridden by a user title. + * @param title Title to set + * + * @see #setTitle(CharSequence) + */ + public void setWindowTitle(CharSequence title) { + if (!mUserTitle) { + setTitleImpl(title); + } + } + + private void setTitleImpl(CharSequence title) { mTitle = title; if (mTitleView != null) { mTitleView.setText(title); diff --git a/policy/src/com/android/internal/policy/impl/PhoneWindow.java b/policy/src/com/android/internal/policy/impl/PhoneWindow.java index 8321473c39b6..070d1e8fc3e1 100644 --- a/policy/src/com/android/internal/policy/impl/PhoneWindow.java +++ b/policy/src/com/android/internal/policy/impl/PhoneWindow.java @@ -284,7 +284,7 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { if (mTitleView != null) { mTitleView.setText(title); } else if (mActionBar != null) { - mActionBar.setTitle(title); + mActionBar.setWindowTitle(title); } mTitle = title; } @@ -2334,7 +2334,7 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { } else { mActionBar = (ActionBarView) findViewById(com.android.internal.R.id.action_bar); if (mActionBar != null && mActionBar.getTitle() == null) { - mActionBar.setTitle(mTitle); + mActionBar.setWindowTitle(mTitle); } } } |