Merge "Fixing Toast Hiding behind Taskbar - Part 2" into udc-dev

This commit is contained in:
Jagrut Desai
2023-05-31 20:45:37 +00:00
committed by Android (Google) Code Review
2 changed files with 22 additions and 8 deletions

View File

@@ -28,7 +28,6 @@ import android.graphics.Matrix;
import android.graphics.Rect;
import android.os.Build;
import android.view.View;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.RequiresApi;
@@ -42,6 +41,7 @@ import com.android.launcher3.model.data.WorkspaceItemInfo;
import com.android.launcher3.popup.SystemShortcut;
import com.android.launcher3.util.ResourceBasedOverride;
import com.android.launcher3.views.ActivityContext;
import com.android.launcher3.views.Snackbar;
import com.android.quickstep.util.RecentsOrientedState;
import com.android.quickstep.views.OverviewActionsView;
import com.android.quickstep.views.RecentsView;
@@ -272,10 +272,8 @@ public class TaskOverlayFactory implements ResourceBasedOverride {
String message = activityContext.getStringCache() != null
? activityContext.getStringCache().disabledByAdminMessage
: mThumbnailView.getContext().getString(R.string.blocked_by_policy);
Toast.makeText(
mThumbnailView.getContext(),
message,
Toast.LENGTH_LONG).show();
Snackbar.show(BaseActivity.fromContext(mThumbnailView.getContext()), message, null);
}
/** Called when the snapshot has updated its full screen drawing parameters. */

View File

@@ -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) {