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

Commit bfbbcf56 authored by Svetoslav Ganov's avatar Svetoslav Ganov
Browse files

Updated the layout for the activity chooser view.

1. Updated the laoout to size the buttons properly.

Change-Id: I58f9beeca23af8b0471cf7f7ae9ca717223221aa
parent 176f3e1b
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 />