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

Commit 28b690ab authored by Winson Chung's avatar Winson Chung Committed by Android (Google) Code Review
Browse files

Merge "Adding logs to track down missing workspace screen. (Bug 11683562)" into jb-ub-now-jolly-elf

parents 582a3694 a90303bb
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -3711,6 +3711,10 @@ public class Launcher extends Activity

    @Override
    public void bindAddScreens(ArrayList<Long> orderedScreenIds) {
        // Log to disk
        Launcher.addDumpLog(TAG, "11683562 - bindAddScreens()", true);
        Launcher.addDumpLog(TAG, "11683562 -   orderedScreenIds: " +
                TextUtils.join(", ", orderedScreenIds), true);
        int count = orderedScreenIds.size();
        for (int i = 0; i < count; i++) {
            mWorkspace.insertNewWorkspaceScreenBeforeEmptyScreen(orderedScreenIds.get(i));
+14 −0
Original line number Diff line number Diff line
@@ -40,6 +40,7 @@ import android.os.Process;
import android.os.RemoteException;
import android.os.SystemClock;
import android.provider.BaseColumns;
import android.text.TextUtils;
import android.util.Log;
import android.util.Pair;
import com.android.launcher3.InstallWidgetReceiver.WidgetMimeTypeHandlerData;
@@ -958,6 +959,10 @@ public class LauncherModel extends BroadcastReceiver {
     * a list of screen ids in the order that they should appear.
     */
    void updateWorkspaceScreenOrder(Context context, final ArrayList<Long> screens) {
        // Log to disk
        Launcher.addDumpLog(TAG, "11683562 - updateWorkspaceScreenOrder()", true);
        Launcher.addDumpLog(TAG, "11683562 -   screens: " + TextUtils.join(", ", screens), true);

        final ArrayList<Long> screensCopy = new ArrayList<Long>(screens);
        final ContentResolver cr = context.getContentResolver();
        final Uri uri = LauncherSettings.WorkspaceScreens.CONTENT_URI;
@@ -1238,6 +1243,15 @@ public class LauncherModel extends BroadcastReceiver {
        } finally {
            sc.close();
        }

        // Log to disk
        Launcher.addDumpLog(TAG, "11683562 - loadWorkspaceScreensDb()", true);
        ArrayList<String> orderedScreensPairs= new ArrayList<String>();
        for (Integer i : orderedScreens.keySet()) {
            orderedScreensPairs.add("{ " + i + ": " + orderedScreens.get(i) + " }");
        }
        Launcher.addDumpLog(TAG, "11683562 -   screens: " +
                TextUtils.join(", ", orderedScreensPairs), true);
        return orderedScreens;
    }

+6 −0
Original line number Diff line number Diff line
@@ -868,10 +868,14 @@ public class LauncherProvider extends ContentProvider {
                throw new RuntimeException("Error: max screen id was not initialized");
            }
            mMaxScreenId += 1;
            // Log to disk
            Launcher.addDumpLog(TAG, "11683562 - generateNewScreenId(): " + mMaxScreenId, true);
            return mMaxScreenId;
        }

        public void updateMaxScreenId(long maxScreenId) {
            // Log to disk
            Launcher.addDumpLog(TAG, "11683562 - updateMaxScreenId(): " + maxScreenId, true);
            mMaxScreenId = maxScreenId;
        }

@@ -892,6 +896,8 @@ public class LauncherProvider extends ContentProvider {
                throw new RuntimeException("Error: could not query max screen id");
            }

            // Log to disk
            Launcher.addDumpLog(TAG, "11683562 - initializeMaxScreenId(): " + id, true);
            return id;
        }

+28 −0
Original line number Diff line number Diff line
@@ -534,6 +534,10 @@ public class Workspace extends SmoothPagedView
    }

    public long insertNewWorkspaceScreen(long screenId, int insertIndex) {
        // Log to disk
        Launcher.addDumpLog(TAG, "11683562 - insertNewWorkspaceScreen(): " + screenId +
                " at index: " + insertIndex, true);

        if (mWorkspaceScreens.containsKey(screenId)) {
            throw new RuntimeException("Screen id " + screenId + " already exists!");
        }
@@ -627,6 +631,9 @@ public class Workspace extends SmoothPagedView
    }

    public void addExtraEmptyScreenOnDrag() {
        // Log to disk
        Launcher.addDumpLog(TAG, "11683562 - addExtraEmptyScreenOnDrag()", true);

        boolean lastChildOnScreen = false;
        boolean childOnFinalScreen = false;

@@ -653,6 +660,9 @@ public class Workspace extends SmoothPagedView
    }

    public boolean addExtraEmptyScreen() {
        // Log to disk
        Launcher.addDumpLog(TAG, "11683562 - addExtraEmptyScreen()", true);

        if (!mWorkspaceScreens.containsKey(EXTRA_EMPTY_SCREEN_ID)) {
            insertNewWorkspaceScreen(EXTRA_EMPTY_SCREEN_ID);
            return true;
@@ -661,6 +671,9 @@ public class Workspace extends SmoothPagedView
    }

    private void convertFinalScreenToEmptyScreenIfNecessary() {
        // Log to disk
        Launcher.addDumpLog(TAG, "11683562 - convertFinalScreenToEmptyScreenIfNecessary()", true);

        if (hasExtraEmptyScreen() || mScreenOrder.size() == 0) return;
        long finalScreenId = mScreenOrder.get(mScreenOrder.size() - 1);

@@ -676,6 +689,9 @@ public class Workspace extends SmoothPagedView
            // if this is the last non-custom content screen, convert it to the empty screen
            mWorkspaceScreens.put(EXTRA_EMPTY_SCREEN_ID, finalScreen);
            mScreenOrder.add(EXTRA_EMPTY_SCREEN_ID);

            // XXX: Do we need to update LM workspace screens here?
            Launcher.addDumpLog(TAG, "11683562 -   extra empty screen: " + finalScreenId, true);
        }
    }

@@ -685,6 +701,8 @@ public class Workspace extends SmoothPagedView

    public void removeExtraEmptyScreen(final boolean animate, final Runnable onComplete,
            final int delay, final boolean stripEmptyScreens) {
        // Log to disk
        Launcher.addDumpLog(TAG, "11683562 - removeExtraEmptyScreen()", true);
        if (delay > 0) {
            postDelayed(new Runnable() {
                @Override
@@ -721,6 +739,9 @@ public class Workspace extends SmoothPagedView

    private void fadeAndRemoveEmptyScreen(int delay, int duration, final Runnable onComplete,
            final boolean stripEmptyScreens) {
        // Log to disk
        // XXX: Do we need to update LM workspace screens below?
        Launcher.addDumpLog(TAG, "11683562 - fadeAndRemoveEmptyScreen()", true);
        PropertyValuesHolder alpha = PropertyValuesHolder.ofFloat("alpha", 0f);
        PropertyValuesHolder bgAlpha = PropertyValuesHolder.ofFloat("backgroundAlpha", 0f);

@@ -764,6 +785,9 @@ public class Workspace extends SmoothPagedView
    }

    public long commitExtraEmptyScreen() {
        // Log to disk
        Launcher.addDumpLog(TAG, "11683562 - commitExtraEmptyScreen()", true);

        int index = getPageIndexForScreenId(EXTRA_EMPTY_SCREEN_ID);
        CellLayout cl = mWorkspaceScreens.get(EXTRA_EMPTY_SCREEN_ID);
        mWorkspaceScreens.remove(EXTRA_EMPTY_SCREEN_ID);
@@ -816,6 +840,9 @@ public class Workspace extends SmoothPagedView
    }

    public void stripEmptyScreens() {
        // Log to disk
        Launcher.addDumpLog(TAG, "11683562 - stripEmptyScreens()", true);

        if (isPageMoving()) {
            mStripScreensOnPageStopMoving = true;
            return;
@@ -836,6 +863,7 @@ public class Workspace extends SmoothPagedView

        int pageShift = 0;
        for (Long id: removeScreens) {
            Launcher.addDumpLog(TAG, "11683562 -   removing id: " + id, true);
            CellLayout cl = mWorkspaceScreens.get(id);
            mWorkspaceScreens.remove(id);
            mScreenOrder.remove(id);