Loading tools/layoutlib/bridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java +28 −1 Original line number Diff line number Diff line Loading @@ -22,8 +22,10 @@ import com.android.ide.common.rendering.api.ActionBarCallback.HomeButtonStyle; import com.android.ide.common.rendering.api.RenderResources; import com.android.ide.common.rendering.api.ResourceValue; import com.android.ide.common.rendering.api.SessionParams; import com.android.ide.common.rendering.api.SystemViewCookie; import com.android.internal.R; import com.android.internal.app.ActionBarImpl; import com.android.internal.util.Predicate; import com.android.internal.view.menu.MenuBuilder; import com.android.internal.view.menu.MenuBuilderAccessor; import com.android.internal.view.menu.MenuItemImpl; Loading Loading @@ -56,6 +58,8 @@ import android.widget.RelativeLayout; import java.util.ArrayList; import static com.android.ide.common.rendering.api.SystemViewCookie.ACTION_BAR_OVERFLOW; /** * A layout representing the action bar. */ Loading Loading @@ -165,10 +169,33 @@ public class ActionBarLayout extends LinearLayout { if (mActionBarView != null) { // Set action bar to be split, if needed. mActionBarView.setSplitView((ActionBarContainer) findViewById(R.id.split_action_bar)); ActionBarContainer splitView = (ActionBarContainer) findViewById(R.id.split_action_bar); mActionBarView.setSplitView(splitView); mActionBarView.setSplitActionBar(mSplit); inflateMenus(); // Find if the Overflow Menu Button (the three dots) exists. If yes, // add the view cookie. Predicate<View> overflowMenuButtonTest = new Predicate<View>() { @Override public boolean apply(View view) { return view.getClass().getName() .equals("android.widget.ActionMenuPresenter$OverflowMenuButton"); } }; View overflowMenu = null; if (mSplit) { if (splitView != null) { overflowMenu = splitView.findViewByPredicate(overflowMenuButtonTest); } } else { overflowMenu = mActionBarView.findViewByPredicate(overflowMenuButtonTest); } if (overflowMenu != null) { mBridgeContext.addViewKey(overflowMenu, new SystemViewCookie(ACTION_BAR_OVERFLOW)); } } } Loading Loading
tools/layoutlib/bridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java +28 −1 Original line number Diff line number Diff line Loading @@ -22,8 +22,10 @@ import com.android.ide.common.rendering.api.ActionBarCallback.HomeButtonStyle; import com.android.ide.common.rendering.api.RenderResources; import com.android.ide.common.rendering.api.ResourceValue; import com.android.ide.common.rendering.api.SessionParams; import com.android.ide.common.rendering.api.SystemViewCookie; import com.android.internal.R; import com.android.internal.app.ActionBarImpl; import com.android.internal.util.Predicate; import com.android.internal.view.menu.MenuBuilder; import com.android.internal.view.menu.MenuBuilderAccessor; import com.android.internal.view.menu.MenuItemImpl; Loading Loading @@ -56,6 +58,8 @@ import android.widget.RelativeLayout; import java.util.ArrayList; import static com.android.ide.common.rendering.api.SystemViewCookie.ACTION_BAR_OVERFLOW; /** * A layout representing the action bar. */ Loading Loading @@ -165,10 +169,33 @@ public class ActionBarLayout extends LinearLayout { if (mActionBarView != null) { // Set action bar to be split, if needed. mActionBarView.setSplitView((ActionBarContainer) findViewById(R.id.split_action_bar)); ActionBarContainer splitView = (ActionBarContainer) findViewById(R.id.split_action_bar); mActionBarView.setSplitView(splitView); mActionBarView.setSplitActionBar(mSplit); inflateMenus(); // Find if the Overflow Menu Button (the three dots) exists. If yes, // add the view cookie. Predicate<View> overflowMenuButtonTest = new Predicate<View>() { @Override public boolean apply(View view) { return view.getClass().getName() .equals("android.widget.ActionMenuPresenter$OverflowMenuButton"); } }; View overflowMenu = null; if (mSplit) { if (splitView != null) { overflowMenu = splitView.findViewByPredicate(overflowMenuButtonTest); } } else { overflowMenu = mActionBarView.findViewByPredicate(overflowMenuButtonTest); } if (overflowMenu != null) { mBridgeContext.addViewKey(overflowMenu, new SystemViewCookie(ACTION_BAR_OVERFLOW)); } } } Loading