From 29ed7575c2129974a57ad77b3531bc5995940c6c Mon Sep 17 00:00:00 2001 From: Adam Powell Date: Wed, 14 Jul 2010 16:24:56 -0700 Subject: [PATCH] Bug 2841148 - Add accessors for action bar context mode state. Change-Id: I04f3efce5a692b346756cc80c8d15f3abba10558 --- api/current.xml | 33 +++++++++++++++++++ core/java/android/app/ActionBar.java | 18 ++++++++++ .../android/internal/app/ActionBarImpl.java | 18 ++++++++++ .../internal/widget/ActionBarContextView.java | 8 +++++ 4 files changed, 77 insertions(+) diff --git a/api/current.xml b/api/current.xml index 9486ca6030e37..2837747c65520 100644 --- a/api/current.xml +++ b/api/current.xml @@ -19890,6 +19890,17 @@ visibility="public" > + + + + + + mCustomView; public ContextMode(ContextModeCallback callback) { mCallback = callback; @@ -375,6 +377,7 @@ public class ActionBarImpl extends ActionBar { @Override public void setCustomView(View view) { mUpperContextView.setCustomView(view); + mCustomView = new WeakReference(view); } @Override @@ -386,7 +389,22 @@ public class ActionBarImpl extends ActionBar { public void setTitle(CharSequence title) { mUpperContextView.setTitle(title); } + + @Override + public CharSequence getTitle() { + return mUpperContextView.getTitle(); + } + + @Override + public CharSequence getSubtitle() { + return mUpperContextView.getSubtitle(); + } + @Override + public View getCustomView() { + return mCustomView != null ? mCustomView.get() : null; + } + public void dispatchOnContextItemClicked(MenuItem item) { ActionMenuItem actionItem = (ActionMenuItem) item; if (!actionItem.invoke()) { diff --git a/core/java/com/android/internal/widget/ActionBarContextView.java b/core/java/com/android/internal/widget/ActionBarContextView.java index 0f895f0d58b32..b57b7a887c610 100644 --- a/core/java/com/android/internal/widget/ActionBarContextView.java +++ b/core/java/com/android/internal/widget/ActionBarContextView.java @@ -105,6 +105,14 @@ public class ActionBarContextView extends ViewGroup { initTitle(); } + public CharSequence getTitle() { + return mTitle; + } + + public CharSequence getSubtitle() { + return mSubtitle; + } + private void initTitle() { if (mTitleLayout == null) { LayoutInflater inflater = LayoutInflater.from(getContext());