diff options
Diffstat (limited to 'src/com/android/launcher3/views/Snackbar.java')
-rw-r--r-- | src/com/android/launcher3/views/Snackbar.java | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/src/com/android/launcher3/views/Snackbar.java b/src/com/android/launcher3/views/Snackbar.java index 8d5838e592..2460be17c5 100644 --- a/src/com/android/launcher3/views/Snackbar.java +++ b/src/com/android/launcher3/views/Snackbar.java @@ -65,9 +65,26 @@ public class Snackbar extends AbstractFloatingView { show(activity, labelStringRedId, NO_ID, onDismissed, null); } + /** Show a snackbar with just a label. */ + public static <T extends Context & ActivityContext> void show(T activity, String labelString, + Runnable onDismissed) { + show(activity, labelString, NO_ID, onDismissed, null); + } + /** Show a snackbar with a label and action. */ public static <T extends Context & ActivityContext> void show(T activity, int labelStringResId, int actionStringResId, Runnable onDismissed, @Nullable Runnable onActionClicked) { + show( + activity, + activity.getResources().getString(labelStringResId), + actionStringResId, + onDismissed, + onActionClicked); + } + + /** Show a snackbar with a label and action. */ + public static <T extends Context & ActivityContext> void show(T activity, String labelString, + int actionStringResId, Runnable onDismissed, @Nullable Runnable onActionClicked) { closeOpenViews(activity, true, TYPE_SNACKBAR); Snackbar snackbar = new Snackbar(activity, null); // Set some properties here since inflated xml only contains the children. @@ -105,8 +122,7 @@ public class Snackbar extends AbstractFloatingView { : insets.bottom)); TextView labelView = snackbar.findViewById(R.id.label); - String labelText = res.getString(labelStringResId); - labelView.setText(labelText); + labelView.setText(labelString); TextView actionView = snackbar.findViewById(R.id.action); float actionWidth; @@ -127,7 +143,7 @@ public class Snackbar extends AbstractFloatingView { actionView.setVisibility(GONE); } - int totalContentWidth = (int) (labelView.getPaint().measureText(labelText) + actionWidth) + int totalContentWidth = (int) (labelView.getPaint().measureText(labelString) + actionWidth) + labelView.getPaddingRight() + labelView.getPaddingLeft() + padding * 2; if (totalContentWidth > params.width) { |