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

Commit ef48bada authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "WM tracing: use perfetto protos" into main

parents 0ee6dad0 345f9cf0
Loading
Loading
Loading
Loading
+37 −33
Original line number Diff line number Diff line
@@ -16,32 +16,32 @@

package android.content.res;

import static android.content.ConfigurationProto.COLOR_MODE;
import static android.content.ConfigurationProto.DENSITY_DPI;
import static android.content.ConfigurationProto.FONT_SCALE;
import static android.content.ConfigurationProto.FONT_WEIGHT_ADJUSTMENT;
import static android.content.ConfigurationProto.GRAMMATICAL_GENDER;
import static android.content.ConfigurationProto.HARD_KEYBOARD_HIDDEN;
import static android.content.ConfigurationProto.KEYBOARD;
import static android.content.ConfigurationProto.KEYBOARD_HIDDEN;
import static android.content.ConfigurationProto.LOCALES;
import static android.content.ConfigurationProto.LOCALE_LIST;
import static android.content.ConfigurationProto.MCC;
import static android.content.ConfigurationProto.MNC;
import static android.content.ConfigurationProto.NAVIGATION;
import static android.content.ConfigurationProto.NAVIGATION_HIDDEN;
import static android.content.ConfigurationProto.ORIENTATION;
import static android.content.ConfigurationProto.SCREEN_HEIGHT_DP;
import static android.content.ConfigurationProto.SCREEN_LAYOUT;
import static android.content.ConfigurationProto.SCREEN_WIDTH_DP;
import static android.content.ConfigurationProto.SMALLEST_SCREEN_WIDTH_DP;
import static android.content.ConfigurationProto.TOUCHSCREEN;
import static android.content.ConfigurationProto.UI_MODE;
import static android.content.ConfigurationProto.WINDOW_CONFIGURATION;
import static android.content.ResourcesConfigurationProto.CONFIGURATION;
import static android.content.ResourcesConfigurationProto.SCREEN_HEIGHT_PX;
import static android.content.ResourcesConfigurationProto.SCREEN_WIDTH_PX;
import static android.content.ResourcesConfigurationProto.SDK_VERSION;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.COLOR_MODE;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.DENSITY_DPI;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.FONT_SCALE;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.FONT_WEIGHT_ADJUSTMENT;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.GRAMMATICAL_GENDER;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.HARD_KEYBOARD_HIDDEN;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.KEYBOARD;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.KEYBOARD_HIDDEN;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.LOCALES;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.LOCALE_LIST;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.MCC;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.MNC;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.NAVIGATION;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.NAVIGATION_HIDDEN;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.ORIENTATION;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.SCREEN_HEIGHT_DP;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.SCREEN_LAYOUT;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.SCREEN_WIDTH_DP;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.SMALLEST_SCREEN_WIDTH_DP;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.TOUCHSCREEN;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.UI_MODE;
import static android.internal.perfetto.protos.Configuration.ConfigurationProto.WINDOW_CONFIGURATION;
import static android.internal.perfetto.protos.Configuration.ResourcesConfigurationProto.CONFIGURATION;
import static android.internal.perfetto.protos.Configuration.ResourcesConfigurationProto.SCREEN_HEIGHT_PX;
import static android.internal.perfetto.protos.Configuration.ResourcesConfigurationProto.SCREEN_WIDTH_PX;
import static android.internal.perfetto.protos.Configuration.ResourcesConfigurationProto.SDK_VERSION;

import android.annotation.IntDef;
import android.annotation.NonNull;
@@ -50,10 +50,10 @@ import android.annotation.TestApi;
import android.app.GrammaticalInflectionManager;
import android.app.WindowConfiguration;
import android.compat.annotation.UnsupportedAppUsage;
import android.content.LocaleProto;
import android.content.pm.ActivityInfo;
import android.content.pm.ActivityInfo.Config;
import android.graphics.Typeface;
import android.internal.perfetto.protos.Locale.LocaleProto;
import android.os.Build;
import android.os.LocaleList;
import android.os.Parcel;
@@ -1302,7 +1302,8 @@ public final class Configuration implements Parcelable, Comparable<Configuration

    /**
     * Write to a protocol buffer output stream.
     * Protocol buffer message definition at {@link android.content.ConfigurationProto}
     * Protocol buffer message definition at
     * {@link android.internal.perfetto.protos.Configuration.ConfigurationProto}
     * Has the option to ignore fields that don't need to be persisted to disk.
     *
     * @param protoOutputStream Stream to write the Configuration object to.
@@ -1347,7 +1348,8 @@ public final class Configuration implements Parcelable, Comparable<Configuration

    /**
     * Write to a protocol buffer output stream.
     * Protocol buffer message definition at {@link android.content.ConfigurationProto}
     * Protocol buffer message definition at
     * {@link android.internal.perfetto.protos.Configuration.ConfigurationProto}
     *
     * @param protoOutputStream Stream to write the Configuration object to.
     * @param fieldId           Field Id of the Configuration as defined in the parent message
@@ -1359,7 +1361,8 @@ public final class Configuration implements Parcelable, Comparable<Configuration

    /**
     * Write to a protocol buffer output stream.
     * Protocol buffer message definition at {@link android.content.ConfigurationProto}
     * Protocol buffer message definition at
     * {@link android.internal.perfetto.protos.Configuration.ConfigurationProto}
     *
     * @param protoOutputStream Stream to write the Configuration object to.
     * @param fieldId           Field Id of the Configuration as defined in the parent message
@@ -1372,7 +1375,8 @@ public final class Configuration implements Parcelable, Comparable<Configuration

    /**
     * Read from a protocol buffer output stream.
     * Protocol buffer message definition at {@link android.content.ConfigurationProto}
     * Protocol buffer message definition at
     * {@link android.internal.perfetto.protos.Configuration.ConfigurationProto}
     *
     * @param protoInputStream Stream to read the Configuration object from.
     * @param fieldId          Field Id of the Configuration as defined in the parent message
@@ -1520,8 +1524,8 @@ public final class Configuration implements Parcelable, Comparable<Configuration
    }

    /**
     * Write full {@link android.content.ResourcesConfigurationProto} to protocol buffer output
     * stream.
     * Write full {@link android.internal.perfetto.protos.Configuration.ResourcesConfigurationProto}
     * to protocol buffer output stream.
     *
     * @param protoOutputStream Stream to write the Configuration object to.
     * @param fieldId           Field Id of the Configuration as defined in the parent message
+10 −9
Original line number Diff line number Diff line
@@ -17,14 +17,14 @@
package android.view;

import static android.view.Display.Mode.INVALID_MODE_ID;
import static android.view.DisplayInfoProto.APP_HEIGHT;
import static android.view.DisplayInfoProto.APP_WIDTH;
import static android.view.DisplayInfoProto.CUTOUT;
import static android.view.DisplayInfoProto.FLAGS;
import static android.view.DisplayInfoProto.LOGICAL_HEIGHT;
import static android.view.DisplayInfoProto.LOGICAL_WIDTH;
import static android.view.DisplayInfoProto.NAME;
import static android.view.DisplayInfoProto.TYPE;
import static android.internal.perfetto.protos.Displayinfo.DisplayInfoProto.APP_HEIGHT;
import static android.internal.perfetto.protos.Displayinfo.DisplayInfoProto.APP_WIDTH;
import static android.internal.perfetto.protos.Displayinfo.DisplayInfoProto.CUTOUT;
import static android.internal.perfetto.protos.Displayinfo.DisplayInfoProto.FLAGS;
import static android.internal.perfetto.protos.Displayinfo.DisplayInfoProto.LOGICAL_HEIGHT;
import static android.internal.perfetto.protos.Displayinfo.DisplayInfoProto.LOGICAL_WIDTH;
import static android.internal.perfetto.protos.Displayinfo.DisplayInfoProto.NAME;
import static android.internal.perfetto.protos.Displayinfo.DisplayInfoProto.TYPE;

import android.annotation.NonNull;
import android.annotation.Nullable;
@@ -1064,7 +1064,8 @@ public final class DisplayInfo implements Parcelable {

    /**
     * Write to a protocol buffer output stream.
     * Protocol buffer message definition at {@link android.view.DisplayInfoProto}
     * Protocol buffer message definition at
     * {@link android.internal.perfetto.protos.Displayinfo.DisplayInfoProto}
     *
     * @param protoOutputStream Stream to write the Rect object to.
     * @param fieldId           Field Id of the DisplayInfoProto as defined in the parent message
+3 −8
Original line number Diff line number Diff line
@@ -39,8 +39,8 @@ import static com.android.internal.app.procstats.ProcessStats.ADJ_MEM_FACTOR_CRI
import static com.android.internal.app.procstats.ProcessStats.ADJ_MEM_FACTOR_LOW;
import static com.android.internal.app.procstats.ProcessStats.ADJ_MEM_FACTOR_MODERATE;
import static com.android.internal.app.procstats.ProcessStats.ADJ_MEM_FACTOR_NORMAL;
import static com.android.media.flags.Flags.enableNotifyingActivityManagerWithMediaSessionStatusChange;
import static com.android.media.flags.Flags.FLAG_ENABLE_NOTIFYING_ACTIVITY_MANAGER_WITH_MEDIA_SESSION_STATUS_CHANGE;
import static com.android.media.flags.Flags.enableNotifyingActivityManagerWithMediaSessionStatusChange;
import static com.android.server.am.ActivityManagerDebugConfig.LOG_WRITER_INFO;
import static com.android.server.am.ActivityManagerDebugConfig.TAG_AM;
import static com.android.server.am.ActivityManagerDebugConfig.TAG_WITH_CLASS_NAME;
@@ -78,8 +78,6 @@ import android.compat.Compatibility;
import android.content.ComponentCallbacks2;
import android.content.ComponentName;
import android.content.Context;
import android.content.DeviceConfigurationProto;
import android.content.GlobalConfigurationProto;
import android.content.IIntentReceiver;
import android.content.Intent;
import android.content.pm.ConfigurationInfo;
@@ -96,6 +94,8 @@ import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.Rect;
import android.hardware.display.DisplayManager;
import android.internal.perfetto.protos.Configuration.DeviceConfigurationProto;
import android.internal.perfetto.protos.Configuration.GlobalConfigurationProto;
import android.opengl.GLES10;
import android.os.Binder;
import android.os.Build;
@@ -119,7 +119,6 @@ import android.util.ArrayMap;
import android.util.ArraySet;
import android.util.DebugUtils;
import android.util.DisplayMetrics;
import android.util.Log;
import android.util.SparseArray;
import android.util.TeeWriter;
import android.util.proto.ProtoInputStream;
@@ -129,7 +128,6 @@ import android.view.Display;
import android.window.SplashScreen;

import com.android.internal.compat.CompatibilityChangeConfig;
import com.android.internal.os.TransferPipe;
import com.android.internal.util.MemInfoReader;
import com.android.server.LocalServices;
import com.android.server.am.LowMemDetector.MemFactor;
@@ -147,17 +145,14 @@ import dalvik.annotation.optimization.NeverCompile;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URISyntaxException;
import java.nio.file.Files;
import java.time.Clock;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
+2 −2
Original line number Diff line number Diff line
@@ -16,9 +16,9 @@

package com.android.server.utils;

import static androidx.test.platform.app.InstrumentationRegistry.getInstrumentation;
import static android.internal.perfetto.protos.Windowmanager.WindowManagerTraceFileProto.MAGIC_NUMBER;

import static com.android.server.wm.WindowManagerTraceFileProto.MAGIC_NUMBER;
import static androidx.test.platform.app.InstrumentationRegistry.getInstrumentation;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;