diff --git a/core/java/com/android/internal/app/ChooserActivity.java b/core/java/com/android/internal/app/ChooserActivity.java index 5930f8fd14d3e..7c4a1717c270d 100644 --- a/core/java/com/android/internal/app/ChooserActivity.java +++ b/core/java/com/android/internal/app/ChooserActivity.java @@ -2136,6 +2136,24 @@ public class ChooserActivity extends ResolverActivity { com.android.internal.R.layout.resolve_grid_item, parent, false); } + @Override + protected void onBindView(View view, TargetInfo info) { + super.onBindView(view, info); + + // If target is loading, show a special placeholder shape in the label + final ViewHolder holder = (ViewHolder) view.getTag(); + if (info instanceof PlaceHolderTargetInfo) { + final int maxWidth = getResources().getDimensionPixelSize( + R.dimen.chooser_direct_share_label_placeholder_max_width); + holder.text.setMaxWidth(maxWidth); + holder.text.setBackground(getResources().getDrawable( + R.drawable.chooser_direct_share_label_placeholder, getTheme())); + } else { + holder.text.setMaxWidth(Integer.MAX_VALUE); + holder.text.setBackground(null); + } + } + @Override public void onListRebuilt() { // don't support direct share on low ram devices diff --git a/core/res/res/drawable/chooser_direct_share_label_placeholder.xml b/core/res/res/drawable/chooser_direct_share_label_placeholder.xml new file mode 100644 index 0000000000000..b21444bf1ade3 --- /dev/null +++ b/core/res/res/drawable/chooser_direct_share_label_placeholder.xml @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/core/res/res/values/dimens.xml b/core/res/res/values/dimens.xml index f2ac755e0a5a8..167e6727df3dd 100644 --- a/core/res/res/values/dimens.xml +++ b/core/res/res/values/dimens.xml @@ -731,4 +731,5 @@ 90dp 4dp 288dp + 72dp diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml index 61e57e21e0d25..7cf03feaf889c 100644 --- a/core/res/res/values/symbols.xml +++ b/core/res/res/values/symbols.xml @@ -3769,4 +3769,6 @@ + +