summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorDeepanshu Gupta <deepanshu@google.com>2013-12-12 12:16:24 -0800
committerDeepanshu Gupta <deepanshu@google.com>2014-04-15 20:02:48 -0700
commit4ccc4bd54f85d86818f61d728c6361d2003ddd8e (patch)
tree3f613368ddaf738a9f0ee9754189068ba86c32e3 /core
parentacf0bce09fec2cabe871d7146aa62e9258fbf06d (diff)
downloadframeworks_base-4ccc4bd54f85d86818f61d728c6361d2003ddd8e.zip
frameworks_base-4ccc4bd54f85d86818f61d728c6361d2003ddd8e.tar.gz
frameworks_base-4ccc4bd54f85d86818f61d728c6361d2003ddd8e.tar.bz2
Action bar rendering in layoutlib [DO NOT MERGE]
This also makes a couple of changes to the framework: 1. ShareActionProvider - Use edit mode to execute activity chooser code. 2. ActionBarImpl - add a new constructor for use by layoutlib. This also relies on some changes to the plugin to pass the correct params. Change-Id: Ia30fef816afd91ec1e439734d56b59b1323bfee2 (cherry-picked from 14bf0cef7eeed572a67c29a328581afac4decc20)
Diffstat (limited to 'core')
-rw-r--r--core/java/android/widget/ShareActionProvider.java6
-rw-r--r--core/java/com/android/internal/app/ActionBarImpl.java15
2 files changed, 16 insertions, 5 deletions
diff --git a/core/java/android/widget/ShareActionProvider.java b/core/java/android/widget/ShareActionProvider.java
index 62afd2e..02b7030 100644
--- a/core/java/android/widget/ShareActionProvider.java
+++ b/core/java/android/widget/ShareActionProvider.java
@@ -161,9 +161,11 @@ public class ShareActionProvider extends ActionProvider {
@Override
public View onCreateActionView() {
// Create the view and set its data model.
- ActivityChooserModel dataModel = ActivityChooserModel.get(mContext, mShareHistoryFileName);
ActivityChooserView activityChooserView = new ActivityChooserView(mContext);
- activityChooserView.setActivityChooserModel(dataModel);
+ if (!activityChooserView.isInEditMode()) {
+ ActivityChooserModel dataModel = ActivityChooserModel.get(mContext, mShareHistoryFileName);
+ activityChooserView.setActivityChooserModel(dataModel);
+ }
// Lookup and set the expand action icon.
TypedValue outTypedValue = new TypedValue();
diff --git a/core/java/com/android/internal/app/ActionBarImpl.java b/core/java/com/android/internal/app/ActionBarImpl.java
index 066d6c3..ad45894 100644
--- a/core/java/com/android/internal/app/ActionBarImpl.java
+++ b/core/java/com/android/internal/app/ActionBarImpl.java
@@ -174,6 +174,15 @@ public class ActionBarImpl extends ActionBar {
init(dialog.getWindow().getDecorView());
}
+ /**
+ * Only for edit mode.
+ * @hide
+ */
+ public ActionBarImpl(View layout) {
+ assert layout.isInEditMode();
+ init(layout);
+ }
+
private void init(View decor) {
mContext = decor.getContext();
mOverlayLayout = (ActionBarOverlayLayout) decor.findViewById(
@@ -559,8 +568,8 @@ public class ActionBarImpl extends ActionBar {
return;
}
- final FragmentTransaction trans = mActivity.getFragmentManager().beginTransaction()
- .disallowAddToBackStack();
+ final FragmentTransaction trans = mActionView.isInEditMode() ? null :
+ mActivity.getFragmentManager().beginTransaction().disallowAddToBackStack();
if (mSelectedTab == tab) {
if (mSelectedTab != null) {
@@ -578,7 +587,7 @@ public class ActionBarImpl extends ActionBar {
}
}
- if (!trans.isEmpty()) {
+ if (trans != null && !trans.isEmpty()) {
trans.commit();
}
}