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

Commit 6130fa91 authored by Sunny Goyal's avatar Sunny Goyal Committed by Android (Google) Code Review
Browse files

Merge "Adding some logging around launcher grid when device profile changes"...

Merge "Adding some logging around launcher grid when device profile changes" into ub-launcher3-master
parents 4f43bbe0 c29de857
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@ import android.view.WindowManager;

import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.config.ProviderConfig;
import com.android.launcher3.logging.FileLog;
import com.android.launcher3.util.Thunk;

import org.xmlpull.v1.XmlPullParser;
@@ -187,6 +188,23 @@ public class InvariantDeviceProfile {
        }
    }

    public void dumpDisplayInfo(Context context) {
        WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
        Display display = wm.getDefaultDisplay();
        DisplayMetrics dm = new DisplayMetrics();
        display.getMetrics(dm);

        Point smallestSize = new Point();
        Point largestSize = new Point();
        display.getCurrentSizeRange(smallestSize, largestSize);

        FileLog.e("DisplayInfo", "Default Density: " + DisplayMetrics.DENSITY_DEFAULT);
        FileLog.e("DisplayInfo", "Density: " + dm.densityDpi);
        FileLog.e("DisplayInfo", "Smallest size: " + smallestSize);
        FileLog.e("DisplayInfo", "Largest size: " + largestSize);
        FileLog.e("DisplayInfo", "minWidth/Height DPS: " + minWidthDps + ", " + minHeightDps);
    }

    ArrayList<InvariantDeviceProfile> getPredefinedDeviceProfiles(Context context) {
        ArrayList<InvariantDeviceProfile> profiles = new ArrayList<>();
        try (XmlResourceParser parser = context.getResources().getXml(R.xml.device_profiles)) {
+3 −0
Original line number Diff line number Diff line
@@ -28,6 +28,7 @@ import com.android.launcher3.compat.PackageInstallerCompat;
import com.android.launcher3.compat.UserManagerCompat;
import com.android.launcher3.config.ProviderConfig;
import com.android.launcher3.dynamicui.ExtractionUtils;
import com.android.launcher3.model.GridSizeMigrationTask;
import com.android.launcher3.util.ConfigMonitor;
import com.android.launcher3.util.Preconditions;
import com.android.launcher3.util.TestingUtils;
@@ -53,6 +54,8 @@ public class LauncherAppState {
        if (INSTANCE == null) {
            if (Looper.myLooper() == Looper.getMainLooper()) {
                INSTANCE = new LauncherAppState(context.getApplicationContext());
                GridSizeMigrationTask.logDeviceProfileIfChanged(
                        INSTANCE.getInvariantDeviceProfile(), context);
            } else {
                try {
                    return new MainThreadExecutor().submit(new Callable<LauncherAppState>() {
+18 −0
Original line number Diff line number Diff line
@@ -27,6 +27,7 @@ import com.android.launcher3.Workspace;
import com.android.launcher3.compat.AppWidgetManagerCompat;
import com.android.launcher3.compat.PackageInstallerCompat;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.logging.FileLog;
import com.android.launcher3.util.GridOccupancy;
import com.android.launcher3.util.LongArrayMap;

@@ -889,6 +890,23 @@ public class GridSizeMigrationTask {
                .apply();
    }

    public static void logDeviceProfileIfChanged(InvariantDeviceProfile idp, Context context) {
        SharedPreferences prefs = Utilities.getPrefs(context);
        String gridSizeString = getPointString(idp.numColumns, idp.numRows);

        int oldHotseatCount = prefs.getInt(KEY_MIGRATION_SRC_HOTSEAT_COUNT, idp.numHotseatIcons);
        String oldSize = prefs.getString(KEY_MIGRATION_SRC_WORKSPACE_SIZE, gridSizeString);
        if (gridSizeString.equals(oldSize) && idp.numHotseatIcons == oldHotseatCount) {
            // Skip if workspace and hotseat sizes have not changed.
            return;
        }

        FileLog.e(TAG, "Grid size changed" + gridSizeString);
        FileLog.e(TAG, "   oldSize: " + oldSize + "  , hotseat: " + oldHotseatCount);
        FileLog.e(TAG, "   newSize: " + gridSizeString + "  , hotseat: " + idp.numHotseatIcons);
        idp.dumpDisplayInfo(context);
    }

    /**
     * Migrates the workspace and hotseat in case their sizes changed.
     * @return false if the migration failed.