Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 05f0e1ed authored by Svetoslav Ganov's avatar Svetoslav Ganov Committed by Android (Google) Code Review
Browse files

Merge "Updated the layout for the activity chooser view."

parents 9146d7d3 bfbbcf56
Loading
Loading
Loading
Loading
+26 −22
Original line number Diff line number Diff line
@@ -29,16 +29,7 @@ import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ActivityChooserModel;
import android.widget.ActivityChooserModel.ActivityChooserModelClient;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ListPopupWindow;
import android.widget.PopupWindow;
import android.widget.TextView;

import com.android.internal.R;

@@ -85,12 +76,22 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod
    /**
     * The expand activities action button;
     */
    private final ImageButton mExpandActivityOverflowButton;
    private final FrameLayout mExpandActivityOverflowButton;

    /**
     * The image for the expand activities action button;
     */
    private final ImageView mExpandActivityOverflowButtonImage;

    /**
     * The default activities action button;
     */
    private final ImageButton mDefaultActionButton;
    private final FrameLayout mDefaultActivityButton;

    /**
     * The image for the default activities action button;
     */
    private final ImageView mDefaultActivityButtonImage;

    /**
     * The maximal width of the list popup.
@@ -185,13 +186,16 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod

        mActivityChooserContent = (LinearLayout) findViewById(R.id.activity_chooser_view_content);

        mDefaultActionButton = (ImageButton) findViewById(R.id.default_activity_button);
        mDefaultActionButton.setOnClickListener(mCallbacks);
        mDefaultActionButton.setOnLongClickListener(mCallbacks);
        mDefaultActivityButton = (FrameLayout) findViewById(R.id.default_activity_button);
        mDefaultActivityButton.setOnClickListener(mCallbacks);
        mDefaultActivityButton.setOnLongClickListener(mCallbacks);
        mDefaultActivityButtonImage = (ImageView) mDefaultActivityButton.findViewById(R.id.image);

        mExpandActivityOverflowButton = (ImageButton) findViewById(R.id.expand_activities_button);
        mExpandActivityOverflowButton = (FrameLayout) findViewById(R.id.expand_activities_button);
        mExpandActivityOverflowButton.setOnClickListener(mCallbacks);
        mExpandActivityOverflowButton.setImageDrawable(expandActivityOverflowButtonDrawable);
        mExpandActivityOverflowButtonImage =
            (ImageView) mExpandActivityOverflowButton.findViewById(R.id.image);
        mExpandActivityOverflowButtonImage.setImageDrawable(expandActivityOverflowButtonDrawable);

        mAdapter = new ActivityChooserViewAdapter();
        mAdapter.registerDataSetObserver(new DataSetObserver() {
@@ -230,7 +234,7 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod
     * @param drawable The drawable.
     */
    public void setExpandActivityOverflowButtonDrawable(Drawable drawable) {
        mExpandActivityOverflowButton.setImageDrawable(drawable);
        mExpandActivityOverflowButtonImage.setImageDrawable(drawable);
    }

    /**
@@ -391,7 +395,7 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod
    private void updateButtons() {
        final int activityCount = mAdapter.getActivityCount();
        if (activityCount > 0) {
            mDefaultActionButton.setVisibility(VISIBLE);
            mDefaultActivityButton.setVisibility(VISIBLE);
            if (mAdapter.getCount() > 0) {
                mExpandActivityOverflowButton.setEnabled(true);
            } else {
@@ -399,9 +403,9 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod
            }
            ResolveInfo activity = mAdapter.getDefaultActivity();
            PackageManager packageManager = mContext.getPackageManager();
            mDefaultActionButton.setImageDrawable(activity.loadIcon(packageManager));
            mDefaultActivityButtonImage.setImageDrawable(activity.loadIcon(packageManager));
        } else {
            mDefaultActionButton.setVisibility(View.INVISIBLE);
            mDefaultActivityButton.setVisibility(View.INVISIBLE);
            mExpandActivityOverflowButton.setEnabled(false);
        }
    }
@@ -440,7 +444,7 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod

        // View.OnClickListener
        public void onClick(View view) {
            if (view == mDefaultActionButton) {
            if (view == mDefaultActivityButton) {
                dismissPopup();
                ResolveInfo defaultActivity = mAdapter.getDefaultActivity();
                final int index = mAdapter.getDataModel().getActivityIndex(defaultActivity);
@@ -457,7 +461,7 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod
        // OnLongClickListener#onLongClick
        @Override
        public boolean onLongClick(View view) {
            if (view == mDefaultActionButton) {
            if (view == mDefaultActivityButton) {
                if (mAdapter.getCount() > 0) {
                    mIsSelectingDefaultActivity = true;
                    showPopupUnchecked(mInitialActivityCount);
+44 −4
Original line number Diff line number Diff line
@@ -20,12 +20,52 @@
    android:id="@+id/activity_chooser_view_content"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:gravity="center"
    style="?android:attr/actionButtonStyle">

    <ImageButton android:id="@+id/default_activity_button"
        style="@style/Widget.ActivityChooserViewButton" />
    <FrameLayout
        android:id="@+id/default_activity_button"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        android:focusable="true"
        android:addStatesFromChildren="true"
        android:background="?android:attr/selectableItemBackground">

        <ImageView android:id="@+id/image"
            android:layout_width="32dip"
            android:layout_height="32dip"
            android:layout_gravity="center"
            android:layout_marginTop="4dip"
            android:layout_marginBottom="4dip"
            android:layout_marginLeft="8dip"
            android:layout_marginRight="8dip"
            android:scaleType="fitCenter"
            android:adjustViewBounds="true" />

    </FrameLayout>

    <FrameLayout
        android:id="@+id/expand_activities_button"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        android:focusable="true"
        android:addStatesFromChildren="true"
        android:background="?android:attr/selectableItemBackground">

        <ImageView android:id="@+id/image"
            android:layout_width="32dip"
            android:layout_height="32dip"
            android:layout_gravity="center"
            android:layout_marginTop="4dip"
            android:layout_marginBottom="4dip"
            android:layout_marginLeft="8dip"
            android:layout_marginRight="8dip"
            android:scaleType="fitCenter"
            android:adjustViewBounds="true" />

    <ImageButton android:id="@+id/expand_activities_button"
        style="@style/Widget.ActivityChooserViewButton" />
    </FrameLayout>

</LinearLayout>
+0 −10
Original line number Diff line number Diff line
@@ -712,16 +712,6 @@
        <item name="android:quickContactWindowSize">modeLarge</item>
    </style>

    <style name="Widget.ActivityChooserViewButton">
        <item name="android:layout_width">wrap_content</item>
        <item name="android:layout_height">wrap_content</item>
        <item name="android:layout_gravity">center</item>
        <item name="android:background">?android:attr/selectableItemBackground</item>
        <item name="android:adjustViewBounds">true</item>
        <item name="android:scaleType">fitCenter</item>
        <item name="android:padding">@android:dimen/action_bar_icon_vertical_padding</item>
    </style>

    <!-- Text Appearances -->
    <eat-comment />