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

Commit 4b83c21d authored by Mike Digman's avatar Mike Digman
Browse files

Sharesheet - make loading placeholders unclickable

The AVD used to animate loading ds targets is build using a
square with a ds shaped cutout. Ripples on touch that go below
the AVD show a square bounding box. This looks awful, prevent
ripples as clicking the placeholder does nothing anyway.

Fixes: 129979593
Test: visual inspection
Change-Id: Id8734f3d92bd104097a60a6aa411be71db3e4efe
parent a47236b5
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -2168,7 +2168,7 @@ public class ChooserActivity extends ResolverActivity {
        protected void onBindView(View view, TargetInfo info) {
            super.onBindView(view, info);

            // If target is loading, show a special placeholder shape in the label
            // If target is loading, show a special placeholder shape in the label, make unclickable
            final ViewHolder holder = (ViewHolder) view.getTag();
            if (info instanceof PlaceHolderTargetInfo) {
                final int maxWidth = getResources().getDimensionPixelSize(
@@ -2176,9 +2176,12 @@ public class ChooserActivity extends ResolverActivity {
                holder.text.setMaxWidth(maxWidth);
                holder.text.setBackground(getResources().getDrawable(
                        R.drawable.chooser_direct_share_label_placeholder, getTheme()));
                // Prevent rippling by removing background containing ripple
                holder.itemView.setBackground(null);
            } else {
                holder.text.setMaxWidth(Integer.MAX_VALUE);
                holder.text.setBackground(null);
                holder.itemView.setBackground(holder.defaultItemViewBackground);
            }
        }

+5 −0
Original line number Diff line number Diff line
@@ -2061,11 +2061,16 @@ public class ResolverActivity extends Activity {
    }

    static class ViewHolder {
        public View itemView;
        public Drawable defaultItemViewBackground;

        public TextView text;
        public TextView text2;
        public ImageView icon;

        public ViewHolder(View view) {
            itemView = view;
            defaultItemViewBackground = view.getBackground();
            text = (TextView) view.findViewById(com.android.internal.R.id.text1);
            text2 = (TextView) view.findViewById(com.android.internal.R.id.text2);
            icon = (ImageView) view.findViewById(R.id.icon);