Loading api/current.xml +37 −0 Original line number Diff line number Diff line Loading @@ -19620,6 +19620,43 @@ <parameter name="title" type="java.lang.CharSequence"> </parameter> </method> <method name="setStandardNavigationMode" return="void" abstract="true" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > </method> <method name="setSubtitle" return="void" abstract="true" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="subtitle" type="java.lang.CharSequence"> </parameter> </method> <method name="setTitle" return="void" abstract="true" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="title" type="java.lang.CharSequence"> </parameter> </method> <method name="startContextMode" return="void" abstract="true" core/java/android/app/ActionBar.java +26 −2 Original line number Diff line number Diff line Loading @@ -103,7 +103,7 @@ public abstract class ActionBar { * good for extended descriptions of activity state. * * @param title The action bar's title. null is treated as an empty string. * @param subtitle The action bar's subtitle. null is treated as an empty string. * @param subtitle The action bar's subtitle. null will remove the subtitle entirely. */ public abstract void setStandardNavigationMode(CharSequence title, CharSequence subtitle); Loading @@ -111,12 +111,36 @@ public abstract class ActionBar { * Set the action bar into standard navigation mode, supplying a title and subtitle. * * Standard navigation mode is default. The title is automatically set to the * name of your Activity. * name of your Activity on startup if an action bar is present. * * @param title The action bar's title. null is treated as an empty string. */ public abstract void setStandardNavigationMode(CharSequence title); /** * Set the action bar into standard navigation mode, using the currently set title * and/or subtitle. * * Standard navigation mode is default. The title is automatically set to the name of * your Activity on startup if an action bar is present. */ public abstract void setStandardNavigationMode(); /** * Set the action bar's title. This will only be displayed in standard navigation mode. * * @param title Title to set */ public abstract void setTitle(CharSequence title); /** * Set the action bar's subtitle. This will only be displayed in standard navigation mode. * Set to null to disable the subtitle entirely. * * @param subtitle Subtitle to set */ public abstract void setSubtitle(CharSequence subtitle); /** * Set display options. This changes all display option bits at once. To change * a limited subset of display options, see {@link #setDisplayOptions(int, int)}. Loading core/java/com/android/internal/app/ActionBarImpl.java +34 −10 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ import com.android.internal.widget.ActionBarView; import android.app.ActionBar; import android.graphics.drawable.Drawable; import android.os.Handler; import android.view.Menu; import android.view.MenuItem; import android.view.View; Loading Loading @@ -53,6 +54,16 @@ public class ActionBarImpl extends ActionBar { private int mContextDisplayMode; final Handler mHandler = new Handler(); final Runnable mCloseContext = new Runnable() { public void run() { mUpperContextView.closeMode(); if (mLowerContextView != null) { mLowerContextView.removeAllViews(); } } }; public ActionBarImpl(View decor) { mActionView = (ActionBarView) decor.findViewById(com.android.internal.R.id.action_bar); mUpperContextView = (ActionBarContextView) decor.findViewById( Loading Loading @@ -82,6 +93,11 @@ public class ActionBarImpl extends ActionBar { mActionView.setDropdownAdapter(adapter); } public void setStandardNavigationMode() { mActionView.setNavigationMode(NAVIGATION_MODE_STANDARD); mActionView.setCallback(null); } public void setStandardNavigationMode(CharSequence title) { setStandardNavigationMode(title, null); } Loading @@ -93,6 +109,14 @@ public class ActionBarImpl extends ActionBar { mActionView.setCallback(null); } public void setTitle(CharSequence title) { mActionView.setTitle(title); } public void setSubtitle(CharSequence subtitle) { mActionView.setSubtitle(subtitle); } public void setDisplayOptions(int options) { mActionView.setDisplayOptions(options); } Loading Loading @@ -170,11 +194,11 @@ public class ActionBarImpl extends ActionBar { @Override public void finish() { mCallback.onDestroyContextMode(this); mUpperContextView.closeMode(); if (mLowerContextView != null) { mLowerContextView.removeAllViews(); } mAnimatorView.setDisplayedChild(NORMAL_VIEW); // Clear out the context mode views after the animation finishes mHandler.postDelayed(mCloseContext, mAnimatorView.getOutAnimation().getDuration()); if (mLowerContextView != null && mLowerContextView.getVisibility() != View.GONE) { // TODO Animate this mLowerContextView.setVisibility(View.GONE); Loading core/java/com/android/internal/widget/ActionBarContextView.java +40 −29 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.widget.ImageButton; import android.widget.LinearLayout; import android.widget.TextView; /** Loading @@ -47,7 +48,9 @@ public class ActionBarContextView extends ViewGroup { private ImageButton mCloseButton; private View mCustomView; private LinearLayout mTitleLayout; private TextView mTitleView; private TextView mSubtitleView; private Drawable mCloseDrawable; public ActionBarContextView(Context context) { Loading Loading @@ -80,9 +83,9 @@ public class ActionBarContextView extends ViewGroup { removeView(mCustomView); } mCustomView = view; if (mTitleView != null) { removeView(mTitleView); mTitleView = null; if (mTitleLayout != null) { removeView(mTitleLayout); mTitleLayout = null; } if (view != null) { addView(view); Loading @@ -92,26 +95,34 @@ public class ActionBarContextView extends ViewGroup { public void setTitle(CharSequence title) { mTitle = title; if (mTitleView == null) { initTitle(); } public void setSubtitle(CharSequence subtitle) { mSubtitle = subtitle; initTitle(); } private void initTitle() { if (mTitleLayout == null) { LayoutInflater inflater = LayoutInflater.from(getContext()); mTitleView = (TextView) inflater.inflate(R.layout.action_bar_title_item, null); mTitleView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)); if (title != null) { mTitleView.setText(title); mTitleLayout = (LinearLayout) inflater.inflate(R.layout.action_bar_title_item, null); mTitleView = (TextView) mTitleLayout.findViewById(R.id.action_bar_title); mSubtitleView = (TextView) mTitleLayout.findViewById(R.id.action_bar_subtitle); if (mTitle != null) { mTitleView.setText(mTitle); } addView(mTitleView); } else { mTitleView.setText(title); if (mTitleView.getParent() == null) { addView(mTitleView); if (mSubtitle != null) { mSubtitleView.setText(mSubtitle); } addView(mTitleLayout); } else { mTitleView.setText(mTitle); mSubtitleView.setText(mSubtitle); if (mTitleLayout.getParent() == null) { addView(mTitleLayout); } } public void setSubtitle(CharSequence subtitle) { mSubtitle = subtitle; // TODO add subtitle support } public void initForMode(final ActionBar.ContextMode mode) { Loading Loading @@ -185,15 +196,15 @@ public class ActionBarContextView extends ViewGroup { childSpecHeight, itemMargin); } if (mTitleView != null && mCustomView == null) { availableWidth = measureChildView(mTitleView, availableWidth, if (mTitleLayout != null && mCustomView == null) { availableWidth = measureChildView(mTitleLayout, availableWidth, childSpecHeight, itemMargin); } final int childCount = getChildCount(); for (int i = 0; i < childCount; i++) { final View child = getChildAt(i); if (child == mCloseButton || child == mTitleView || child == mCustomView) { if (child == mCloseButton || child == mTitleLayout || child == mCustomView) { continue; } Loading @@ -219,8 +230,8 @@ public class ActionBarContextView extends ViewGroup { x += positionChild(mCloseButton, x, y, contentHeight); } if (mTitleView != null && mCustomView == null) { x += positionChild(mTitleView, x, y, contentHeight) + itemMargin; if (mTitleLayout != null && mCustomView == null) { x += positionChild(mTitleLayout, x, y, contentHeight) + itemMargin; } if (mCustomView != null) { Loading @@ -232,7 +243,7 @@ public class ActionBarContextView extends ViewGroup { final int childCount = getChildCount(); for (int i = 0; i < childCount; i++) { final View child = getChildAt(i); if (child == mCloseButton || child == mTitleView || child == mCustomView) { if (child == mCloseButton || child == mTitleLayout || child == mCustomView) { continue; } Loading core/java/com/android/internal/widget/ActionBarView.java +18 −10 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.Spinner; import android.widget.SpinnerAdapter; import android.widget.TextView; Loading Loading @@ -80,6 +81,7 @@ public class ActionBarView extends ViewGroup { private ImageView mIconView; private ImageView mLogoView; private LinearLayout mTitleLayout; private TextView mTitleView; private TextView mSubtitleView; private Spinner mSpinner; Loading Loading @@ -250,9 +252,11 @@ public class ActionBarView extends ViewGroup { if (mode != oldMode) { switch (oldMode) { case ActionBar.NAVIGATION_MODE_STANDARD: if (mTitleView != null) { removeView(mTitleView); if (mTitleLayout != null) { removeView(mTitleLayout); mTitleLayout = null; mTitleView = null; mSubtitleView = null; } break; case ActionBar.NAVIGATION_MODE_DROPDOWN_LIST: Loading Loading @@ -361,13 +365,17 @@ public class ActionBarView extends ViewGroup { private void initTitle() { LayoutInflater inflater = LayoutInflater.from(getContext()); mTitleView = (TextView) inflater.inflate(R.layout.action_bar_title_item, null); mTitleView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)); mTitleLayout = (LinearLayout) inflater.inflate(R.layout.action_bar_title_item, null); mTitleView = (TextView) mTitleLayout.findViewById(R.id.action_bar_title); mSubtitleView = (TextView) mTitleLayout.findViewById(R.id.action_bar_subtitle); if (mTitle != null) { mTitleView.setText(mTitle); } addView(mTitleView); if (mSubtitle != null) { mSubtitleView.setText(mSubtitle); mSubtitleView.setVisibility(VISIBLE); } addView(mTitleLayout); } @Override Loading Loading @@ -404,8 +412,8 @@ public class ActionBarView extends ViewGroup { switch (mNavigationMode) { case ActionBar.NAVIGATION_MODE_STANDARD: if (mTitleView != null) { measureChildView(mTitleView, availableWidth, childSpecHeight, mSpacing); if (mTitleLayout != null) { measureChildView(mTitleLayout, availableWidth, childSpecHeight, mSpacing); } break; case ActionBar.NAVIGATION_MODE_DROPDOWN_LIST: Loading Loading @@ -452,8 +460,8 @@ public class ActionBarView extends ViewGroup { switch (mNavigationMode) { case ActionBar.NAVIGATION_MODE_STANDARD: if (mTitleView != null) { x += positionChild(mTitleView, x, y, contentHeight) + mSpacing; if (mTitleLayout != null) { x += positionChild(mTitleLayout, x, y, contentHeight) + mSpacing; } break; case ActionBar.NAVIGATION_MODE_DROPDOWN_LIST: Loading Loading
api/current.xml +37 −0 Original line number Diff line number Diff line Loading @@ -19620,6 +19620,43 @@ <parameter name="title" type="java.lang.CharSequence"> </parameter> </method> <method name="setStandardNavigationMode" return="void" abstract="true" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > </method> <method name="setSubtitle" return="void" abstract="true" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="subtitle" type="java.lang.CharSequence"> </parameter> </method> <method name="setTitle" return="void" abstract="true" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="title" type="java.lang.CharSequence"> </parameter> </method> <method name="startContextMode" return="void" abstract="true"
core/java/android/app/ActionBar.java +26 −2 Original line number Diff line number Diff line Loading @@ -103,7 +103,7 @@ public abstract class ActionBar { * good for extended descriptions of activity state. * * @param title The action bar's title. null is treated as an empty string. * @param subtitle The action bar's subtitle. null is treated as an empty string. * @param subtitle The action bar's subtitle. null will remove the subtitle entirely. */ public abstract void setStandardNavigationMode(CharSequence title, CharSequence subtitle); Loading @@ -111,12 +111,36 @@ public abstract class ActionBar { * Set the action bar into standard navigation mode, supplying a title and subtitle. * * Standard navigation mode is default. The title is automatically set to the * name of your Activity. * name of your Activity on startup if an action bar is present. * * @param title The action bar's title. null is treated as an empty string. */ public abstract void setStandardNavigationMode(CharSequence title); /** * Set the action bar into standard navigation mode, using the currently set title * and/or subtitle. * * Standard navigation mode is default. The title is automatically set to the name of * your Activity on startup if an action bar is present. */ public abstract void setStandardNavigationMode(); /** * Set the action bar's title. This will only be displayed in standard navigation mode. * * @param title Title to set */ public abstract void setTitle(CharSequence title); /** * Set the action bar's subtitle. This will only be displayed in standard navigation mode. * Set to null to disable the subtitle entirely. * * @param subtitle Subtitle to set */ public abstract void setSubtitle(CharSequence subtitle); /** * Set display options. This changes all display option bits at once. To change * a limited subset of display options, see {@link #setDisplayOptions(int, int)}. Loading
core/java/com/android/internal/app/ActionBarImpl.java +34 −10 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ import com.android.internal.widget.ActionBarView; import android.app.ActionBar; import android.graphics.drawable.Drawable; import android.os.Handler; import android.view.Menu; import android.view.MenuItem; import android.view.View; Loading Loading @@ -53,6 +54,16 @@ public class ActionBarImpl extends ActionBar { private int mContextDisplayMode; final Handler mHandler = new Handler(); final Runnable mCloseContext = new Runnable() { public void run() { mUpperContextView.closeMode(); if (mLowerContextView != null) { mLowerContextView.removeAllViews(); } } }; public ActionBarImpl(View decor) { mActionView = (ActionBarView) decor.findViewById(com.android.internal.R.id.action_bar); mUpperContextView = (ActionBarContextView) decor.findViewById( Loading Loading @@ -82,6 +93,11 @@ public class ActionBarImpl extends ActionBar { mActionView.setDropdownAdapter(adapter); } public void setStandardNavigationMode() { mActionView.setNavigationMode(NAVIGATION_MODE_STANDARD); mActionView.setCallback(null); } public void setStandardNavigationMode(CharSequence title) { setStandardNavigationMode(title, null); } Loading @@ -93,6 +109,14 @@ public class ActionBarImpl extends ActionBar { mActionView.setCallback(null); } public void setTitle(CharSequence title) { mActionView.setTitle(title); } public void setSubtitle(CharSequence subtitle) { mActionView.setSubtitle(subtitle); } public void setDisplayOptions(int options) { mActionView.setDisplayOptions(options); } Loading Loading @@ -170,11 +194,11 @@ public class ActionBarImpl extends ActionBar { @Override public void finish() { mCallback.onDestroyContextMode(this); mUpperContextView.closeMode(); if (mLowerContextView != null) { mLowerContextView.removeAllViews(); } mAnimatorView.setDisplayedChild(NORMAL_VIEW); // Clear out the context mode views after the animation finishes mHandler.postDelayed(mCloseContext, mAnimatorView.getOutAnimation().getDuration()); if (mLowerContextView != null && mLowerContextView.getVisibility() != View.GONE) { // TODO Animate this mLowerContextView.setVisibility(View.GONE); Loading
core/java/com/android/internal/widget/ActionBarContextView.java +40 −29 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.widget.ImageButton; import android.widget.LinearLayout; import android.widget.TextView; /** Loading @@ -47,7 +48,9 @@ public class ActionBarContextView extends ViewGroup { private ImageButton mCloseButton; private View mCustomView; private LinearLayout mTitleLayout; private TextView mTitleView; private TextView mSubtitleView; private Drawable mCloseDrawable; public ActionBarContextView(Context context) { Loading Loading @@ -80,9 +83,9 @@ public class ActionBarContextView extends ViewGroup { removeView(mCustomView); } mCustomView = view; if (mTitleView != null) { removeView(mTitleView); mTitleView = null; if (mTitleLayout != null) { removeView(mTitleLayout); mTitleLayout = null; } if (view != null) { addView(view); Loading @@ -92,26 +95,34 @@ public class ActionBarContextView extends ViewGroup { public void setTitle(CharSequence title) { mTitle = title; if (mTitleView == null) { initTitle(); } public void setSubtitle(CharSequence subtitle) { mSubtitle = subtitle; initTitle(); } private void initTitle() { if (mTitleLayout == null) { LayoutInflater inflater = LayoutInflater.from(getContext()); mTitleView = (TextView) inflater.inflate(R.layout.action_bar_title_item, null); mTitleView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)); if (title != null) { mTitleView.setText(title); mTitleLayout = (LinearLayout) inflater.inflate(R.layout.action_bar_title_item, null); mTitleView = (TextView) mTitleLayout.findViewById(R.id.action_bar_title); mSubtitleView = (TextView) mTitleLayout.findViewById(R.id.action_bar_subtitle); if (mTitle != null) { mTitleView.setText(mTitle); } addView(mTitleView); } else { mTitleView.setText(title); if (mTitleView.getParent() == null) { addView(mTitleView); if (mSubtitle != null) { mSubtitleView.setText(mSubtitle); } addView(mTitleLayout); } else { mTitleView.setText(mTitle); mSubtitleView.setText(mSubtitle); if (mTitleLayout.getParent() == null) { addView(mTitleLayout); } } public void setSubtitle(CharSequence subtitle) { mSubtitle = subtitle; // TODO add subtitle support } public void initForMode(final ActionBar.ContextMode mode) { Loading Loading @@ -185,15 +196,15 @@ public class ActionBarContextView extends ViewGroup { childSpecHeight, itemMargin); } if (mTitleView != null && mCustomView == null) { availableWidth = measureChildView(mTitleView, availableWidth, if (mTitleLayout != null && mCustomView == null) { availableWidth = measureChildView(mTitleLayout, availableWidth, childSpecHeight, itemMargin); } final int childCount = getChildCount(); for (int i = 0; i < childCount; i++) { final View child = getChildAt(i); if (child == mCloseButton || child == mTitleView || child == mCustomView) { if (child == mCloseButton || child == mTitleLayout || child == mCustomView) { continue; } Loading @@ -219,8 +230,8 @@ public class ActionBarContextView extends ViewGroup { x += positionChild(mCloseButton, x, y, contentHeight); } if (mTitleView != null && mCustomView == null) { x += positionChild(mTitleView, x, y, contentHeight) + itemMargin; if (mTitleLayout != null && mCustomView == null) { x += positionChild(mTitleLayout, x, y, contentHeight) + itemMargin; } if (mCustomView != null) { Loading @@ -232,7 +243,7 @@ public class ActionBarContextView extends ViewGroup { final int childCount = getChildCount(); for (int i = 0; i < childCount; i++) { final View child = getChildAt(i); if (child == mCloseButton || child == mTitleView || child == mCustomView) { if (child == mCloseButton || child == mTitleLayout || child == mCustomView) { continue; } Loading
core/java/com/android/internal/widget/ActionBarView.java +18 −10 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.Spinner; import android.widget.SpinnerAdapter; import android.widget.TextView; Loading Loading @@ -80,6 +81,7 @@ public class ActionBarView extends ViewGroup { private ImageView mIconView; private ImageView mLogoView; private LinearLayout mTitleLayout; private TextView mTitleView; private TextView mSubtitleView; private Spinner mSpinner; Loading Loading @@ -250,9 +252,11 @@ public class ActionBarView extends ViewGroup { if (mode != oldMode) { switch (oldMode) { case ActionBar.NAVIGATION_MODE_STANDARD: if (mTitleView != null) { removeView(mTitleView); if (mTitleLayout != null) { removeView(mTitleLayout); mTitleLayout = null; mTitleView = null; mSubtitleView = null; } break; case ActionBar.NAVIGATION_MODE_DROPDOWN_LIST: Loading Loading @@ -361,13 +365,17 @@ public class ActionBarView extends ViewGroup { private void initTitle() { LayoutInflater inflater = LayoutInflater.from(getContext()); mTitleView = (TextView) inflater.inflate(R.layout.action_bar_title_item, null); mTitleView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)); mTitleLayout = (LinearLayout) inflater.inflate(R.layout.action_bar_title_item, null); mTitleView = (TextView) mTitleLayout.findViewById(R.id.action_bar_title); mSubtitleView = (TextView) mTitleLayout.findViewById(R.id.action_bar_subtitle); if (mTitle != null) { mTitleView.setText(mTitle); } addView(mTitleView); if (mSubtitle != null) { mSubtitleView.setText(mSubtitle); mSubtitleView.setVisibility(VISIBLE); } addView(mTitleLayout); } @Override Loading Loading @@ -404,8 +412,8 @@ public class ActionBarView extends ViewGroup { switch (mNavigationMode) { case ActionBar.NAVIGATION_MODE_STANDARD: if (mTitleView != null) { measureChildView(mTitleView, availableWidth, childSpecHeight, mSpacing); if (mTitleLayout != null) { measureChildView(mTitleLayout, availableWidth, childSpecHeight, mSpacing); } break; case ActionBar.NAVIGATION_MODE_DROPDOWN_LIST: Loading Loading @@ -452,8 +460,8 @@ public class ActionBarView extends ViewGroup { switch (mNavigationMode) { case ActionBar.NAVIGATION_MODE_STANDARD: if (mTitleView != null) { x += positionChild(mTitleView, x, y, contentHeight) + mSpacing; if (mTitleLayout != null) { x += positionChild(mTitleLayout, x, y, contentHeight) + mSpacing; } break; case ActionBar.NAVIGATION_MODE_DROPDOWN_LIST: Loading