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

Commit 84e959a7 authored by Jagrut Desai's avatar Jagrut Desai
Browse files

Fixing Toast Hiding behind Taskbar - Part 2

Test: Visual, Manual
Bug: 282964229
Flag: not needed
Change-Id: If2373d8f0bc44a555844c78d20877e9636a7e176
parent a6400984
Loading
Loading
Loading
Loading
+3 −5
Original line number Original line Diff line number Diff line
@@ -28,7 +28,6 @@ import android.graphics.Matrix;
import android.graphics.Rect;
import android.graphics.Rect;
import android.os.Build;
import android.os.Build;
import android.view.View;
import android.view.View;
import android.widget.Toast;


import androidx.annotation.NonNull;
import androidx.annotation.NonNull;
import androidx.annotation.RequiresApi;
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.popup.SystemShortcut;
import com.android.launcher3.util.ResourceBasedOverride;
import com.android.launcher3.util.ResourceBasedOverride;
import com.android.launcher3.views.ActivityContext;
import com.android.launcher3.views.ActivityContext;
import com.android.launcher3.views.Snackbar;
import com.android.quickstep.util.RecentsOrientedState;
import com.android.quickstep.util.RecentsOrientedState;
import com.android.quickstep.views.OverviewActionsView;
import com.android.quickstep.views.OverviewActionsView;
import com.android.quickstep.views.RecentsView;
import com.android.quickstep.views.RecentsView;
@@ -272,10 +272,8 @@ public class TaskOverlayFactory implements ResourceBasedOverride {
            String message = activityContext.getStringCache() != null
            String message = activityContext.getStringCache() != null
                    ? activityContext.getStringCache().disabledByAdminMessage
                    ? activityContext.getStringCache().disabledByAdminMessage
                    : mThumbnailView.getContext().getString(R.string.blocked_by_policy);
                    : mThumbnailView.getContext().getString(R.string.blocked_by_policy);
            Toast.makeText(

                    mThumbnailView.getContext(),
            Snackbar.show(BaseActivity.fromContext(mThumbnailView.getContext()), message, null);
                    message,
                    Toast.LENGTH_LONG).show();
        }
        }


        /** Called when the snapshot has updated its full screen drawing parameters. */
        /** Called when the snapshot has updated its full screen drawing parameters. */
+19 −3
Original line number Original line Diff line number Diff line
@@ -65,9 +65,26 @@ public class Snackbar extends AbstractFloatingView {
        show(activity, labelStringRedId, NO_ID, onDismissed, null);
        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. */
    /** Show a snackbar with a label and action. */
    public static <T extends Context & ActivityContext> void show(T activity, int labelStringResId,
    public static <T extends Context & ActivityContext> void show(T activity, int labelStringResId,
            int actionStringResId, Runnable onDismissed, @Nullable Runnable onActionClicked) {
            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);
        closeOpenViews(activity, true, TYPE_SNACKBAR);
        Snackbar snackbar = new Snackbar(activity, null);
        Snackbar snackbar = new Snackbar(activity, null);
        // Set some properties here since inflated xml only contains the children.
        // Set some properties here since inflated xml only contains the children.
@@ -105,8 +122,7 @@ public class Snackbar extends AbstractFloatingView {
                : insets.bottom));
                : insets.bottom));


        TextView labelView = snackbar.findViewById(R.id.label);
        TextView labelView = snackbar.findViewById(R.id.label);
        String labelText = res.getString(labelStringResId);
        labelView.setText(labelString);
        labelView.setText(labelText);


        TextView actionView = snackbar.findViewById(R.id.action);
        TextView actionView = snackbar.findViewById(R.id.action);
        float actionWidth;
        float actionWidth;
@@ -127,7 +143,7 @@ public class Snackbar extends AbstractFloatingView {
            actionView.setVisibility(GONE);
            actionView.setVisibility(GONE);
        }
        }


        int totalContentWidth = (int) (labelView.getPaint().measureText(labelText) + actionWidth)
        int totalContentWidth = (int) (labelView.getPaint().measureText(labelString) + actionWidth)
                + labelView.getPaddingRight() + labelView.getPaddingLeft()
                + labelView.getPaddingRight() + labelView.getPaddingLeft()
                + padding * 2;
                + padding * 2;
        if (totalContentWidth > params.width) {
        if (totalContentWidth > params.width) {