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

Commit ad255748 authored by Olivier Nshimiye's avatar Olivier Nshimiye
Browse files

Add system padding to the bottom of the miniresolver.

This is to stop the miniresolver from displaying the action buttons behind the navibation bar

Screenshots on different screen sizes: https://photos.app.goo.gl/jiZaU6X4mqxNv7aJ6

Flag: EXEMPT bugfix

Test: Manually on device
Bug: 348570519

Change-Id: If88127ce9bc389588b89bd3bc7b4c6b747f5b279
parent 682aa757
Loading
Loading
Loading
Loading
+21 −2
Original line number Diff line number Diff line
@@ -48,6 +48,8 @@ import android.content.pm.IPackageManager;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.content.pm.UserInfo;
import android.content.res.Configuration;
import android.graphics.Insets;
import android.graphics.drawable.Drawable;
import android.metrics.LogMaker;
import android.os.Build;
@@ -60,6 +62,7 @@ import android.telecom.TelecomManager;
import android.util.Log;
import android.util.Slog;
import android.view.View;
import android.view.WindowInsets;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
@@ -116,6 +119,12 @@ public class IntentForwarderActivity extends Activity {
        mExecutorService.shutdown();
    }

    @Override
    public void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
        setMiniresolverPadding();
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
@@ -333,8 +342,7 @@ public class IntentForwarderActivity extends Activity {
        icon.setImageDrawable(
                getAppIcon(target, launchIntent, targetUserId, pmForTargetUser));

        View buttonContainer = findViewById(R.id.button_bar_container);
        buttonContainer.setPadding(0, 0, 0, buttonContainer.getPaddingBottom());
        setMiniresolverPadding();

        ((TextView) findViewById(R.id.open_cross_profile)).setText(
                resolverTitle);
@@ -675,6 +683,17 @@ public class IntentForwarderActivity extends Activity {
                && android.multiuser.Flags.enablePrivateSpaceIntentRedirection();
    }

    private void setMiniresolverPadding() {
        Insets systemWindowInsets =
                getWindowManager().getCurrentWindowMetrics().getWindowInsets().getInsets(
                        WindowInsets.Type.systemBars());

        View buttonContainer = findViewById(R.id.button_bar_container);
        buttonContainer.setPadding(0, 0, 0,
                systemWindowInsets.bottom + getResources().getDimensionPixelOffset(
                        R.dimen.resolver_button_bar_spacing));
    }

    @VisibleForTesting
    protected Injector createInjector() {
        return new InjectorImpl();