Merge "Add additional logs when DisplayController detects unexpected bounds" into udc-dev

This commit is contained in:
Alex Chau
2023-05-25 12:30:50 +00:00
committed by Android (Google) Code Review
2 changed files with 32 additions and 2 deletions
@@ -67,6 +67,26 @@ public final class FileLog {
print(tag, msg);
}
public static void i(String tag, String msg, Exception e) {
Log.i(tag, msg, e);
print(tag, msg, e);
}
public static void i(String tag, String msg) {
Log.i(tag, msg);
print(tag, msg);
}
public static void w(String tag, String msg, Exception e) {
Log.w(tag, msg, e);
print(tag, msg, e);
}
public static void w(String tag, String msg) {
Log.w(tag, msg);
print(tag, msg);
}
public static void e(String tag, String msg, Exception e) {
Log.e(tag, msg, e);
print(tag, msg, e);
@@ -48,6 +48,7 @@ import androidx.annotation.VisibleForTesting;
import com.android.launcher3.LauncherPrefs;
import com.android.launcher3.Utilities;
import com.android.launcher3.logging.FileLog;
import com.android.launcher3.util.window.CachedDisplayInfo;
import com.android.launcher3.util.window.WindowManagerProxy;
@@ -126,6 +127,8 @@ public class DisplayController implements ComponentCallbacks, SafeCloseable {
Context displayInfoContext = getDisplayInfoContext(display);
mInfo = new Info(displayInfoContext, wmProxy,
wmProxy.estimateInternalDisplayBounds(displayInfoContext));
mInfo.mPerDisplayBounds.forEach((key, value) -> FileLog.i(TAG,
"(CTOR) perDisplayBounds - " + key + ": " + Arrays.deepToString(value)));
}
/**
@@ -283,6 +286,9 @@ public class DisplayController implements ComponentCallbacks, SafeCloseable {
if (!newInfo.supportedBounds.equals(oldInfo.supportedBounds)
|| !newInfo.mPerDisplayBounds.equals(oldInfo.mPerDisplayBounds)) {
change |= CHANGE_SUPPORTED_BOUNDS;
newInfo.mPerDisplayBounds.forEach((key, value) -> FileLog.w(TAG,
"(CHANGE_SUPPORTED_BOUNDS) perDisplayBounds - " + key + ": "
+ Arrays.deepToString(value)));
}
if (DEBUG) {
Log.d(TAG, "handleInfoChange - change: " + getChangeFlagsString(change));
@@ -353,12 +359,16 @@ public class DisplayController implements ComponentCallbacks, SafeCloseable {
realBounds = wmProxy.getRealBounds(displayInfoContext, displayInfo);
if (cachedValue == null) {
// Unexpected normalizedDisplayInfo is found, recreate the cache
Log.e(TAG, "Unexpected normalizedDisplayInfo found, invalidating cache");
FileLog.e(TAG, "Unexpected normalizedDisplayInfo found, invalidating cache: "
+ normalizedDisplayInfo);
mPerDisplayBounds.forEach((key, value) -> FileLog.e(TAG,
"(Invalid Cache) perDisplayBounds - " + key + ": " + Arrays.deepToString(
value)));
mPerDisplayBounds.clear();
mPerDisplayBounds.putAll(wmProxy.estimateInternalDisplayBounds(displayInfoContext));
cachedValue = mPerDisplayBounds.get(normalizedDisplayInfo);
if (cachedValue == null) {
Log.e(TAG, "normalizedDisplayInfo not found in estimation: "
FileLog.e(TAG, "normalizedDisplayInfo not found in estimation: "
+ normalizedDisplayInfo);
supportedBounds.add(realBounds);
}