Loading api/test-current.txt +18 −0 Original line number Diff line number Diff line Loading @@ -6226,11 +6226,28 @@ package android.app { } public class WindowConfiguration implements java.lang.Comparable android.os.Parcelable { ctor public WindowConfiguration(); method public int compareTo(android.app.WindowConfiguration); method public int describeContents(); method public int getActivityType(); method public android.graphics.Rect getAppBounds(); method public int getWindowingMode(); method public void setActivityType(int); method public void setAppBounds(android.graphics.Rect); method public void setTo(android.app.WindowConfiguration); method public void setWindowingMode(int); method public void writeToParcel(android.os.Parcel, int); field public static final int ACTIVITY_TYPE_ASSISTANT = 4; // 0x4 field public static final int ACTIVITY_TYPE_HOME = 2; // 0x2 field public static final int ACTIVITY_TYPE_RECENTS = 3; // 0x3 field public static final int ACTIVITY_TYPE_STANDARD = 1; // 0x1 field public static final int ACTIVITY_TYPE_UNDEFINED = 0; // 0x0 field public static final int WINDOWING_MODE_FREEFORM = 5; // 0x5 field public static final int WINDOWING_MODE_FULLSCREEN = 1; // 0x1 field public static final int WINDOWING_MODE_PINNED = 2; // 0x2 field public static final int WINDOWING_MODE_SPLIT_SCREEN_PRIMARY = 3; // 0x3 field public static final int WINDOWING_MODE_SPLIT_SCREEN_SECONDARY = 4; // 0x4 field public static final int WINDOWING_MODE_UNDEFINED = 0; // 0x0 } } Loading Loading @@ -11328,6 +11345,7 @@ package android.content.res { field public int smallestScreenWidthDp; field public int touchscreen; field public int uiMode; field public final android.app.WindowConfiguration windowConfiguration; } public class ObbInfo implements android.os.Parcelable { core/java/android/app/WindowConfiguration.java +31 −28 Original line number Diff line number Diff line Loading @@ -17,6 +17,9 @@ package android.app; import static android.app.ActivityThread.isSystem; import static android.app.WindowConfigurationProto.ACTIVITY_TYPE; import static android.app.WindowConfigurationProto.APP_BOUNDS; import static android.app.WindowConfigurationProto.WINDOWING_MODE; import android.annotation.IntDef; import android.annotation.NonNull; Loading @@ -25,6 +28,7 @@ import android.content.res.Configuration; import android.graphics.Rect; import android.os.Parcel; import android.os.Parcelable; import android.util.proto.ProtoOutputStream; import android.view.DisplayInfo; /** Loading @@ -48,26 +52,20 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu /** The current windowing mode of the configuration. */ private @WindowingMode int mWindowingMode; /** Windowing mode is currently not defined. * @hide */ /** Windowing mode is currently not defined. */ public static final int WINDOWING_MODE_UNDEFINED = 0; /** Occupies the full area of the screen or the parent container. * @hide */ /** Occupies the full area of the screen or the parent container. */ public static final int WINDOWING_MODE_FULLSCREEN = 1; /** Always on-top (always visible). of other siblings in its parent container. * @hide */ /** Always on-top (always visible). of other siblings in its parent container. */ public static final int WINDOWING_MODE_PINNED = 2; /** The primary container driving the screen to be in split-screen mode. * @hide */ /** The primary container driving the screen to be in split-screen mode. */ public static final int WINDOWING_MODE_SPLIT_SCREEN_PRIMARY = 3; /** * The containers adjacent to the {@link #WINDOWING_MODE_SPLIT_SCREEN_PRIMARY} container in * split-screen mode. * @hide */ public static final int WINDOWING_MODE_SPLIT_SCREEN_SECONDARY = 4; /** Can be freely resized within its parent container. * @hide */ /** Can be freely resized within its parent container. */ public static final int WINDOWING_MODE_FREEFORM = 5; /** @hide */ Loading @@ -84,18 +82,15 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu /** The current activity type of the configuration. */ private @ActivityType int mActivityType; /** Activity type is currently not defined. * @hide */ /** Activity type is currently not defined. */ public static final int ACTIVITY_TYPE_UNDEFINED = 0; /** Standard activity type. Nothing special about the activity... * @hide */ /** Standard activity type. Nothing special about the activity... */ public static final int ACTIVITY_TYPE_STANDARD = 1; /** Home/Launcher activity type. */ public static final int ACTIVITY_TYPE_HOME = 2; /** Recents/Overview activity type. */ public static final int ACTIVITY_TYPE_RECENTS = 3; /** Assistant activity type. * @hide */ /** Assistant activity type. */ public static final int ACTIVITY_TYPE_ASSISTANT = 4; /** @hide */ Loading Loading @@ -127,7 +122,6 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu }) public @interface WindowConfig {} /** @hide */ public WindowConfiguration() { unset(); } Loading Loading @@ -176,7 +170,6 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu * Set {@link #mAppBounds} to the input Rect. * @param rect The rect value to set {@link #mAppBounds} to. * @see #getAppBounds() * @hide */ public void setAppBounds(Rect rect) { if (rect == null) { Loading @@ -200,26 +193,20 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu mAppBounds.set(left, top, right, bottom); } /** * @see #setAppBounds(Rect) * @hide */ /** @see #setAppBounds(Rect) */ public Rect getAppBounds() { return mAppBounds; } /** @hide */ public void setWindowingMode(@WindowingMode int windowingMode) { mWindowingMode = windowingMode; } /** @hide */ @WindowingMode public int getWindowingMode() { return mWindowingMode; } /** @hide */ public void setActivityType(@ActivityType int activityType) { if (mActivityType == activityType) { return; Loading @@ -237,13 +224,11 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu mActivityType = activityType; } /** @hide */ @ActivityType public int getActivityType() { return mActivityType; } /** @hide */ public void setTo(WindowConfiguration other) { setAppBounds(other.mAppBounds); setWindowingMode(other.mWindowingMode); Loading Loading @@ -381,6 +366,24 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu + " mActivityType=" + activityTypeToString(mActivityType) + "}"; } /** * Write to a protocol buffer output stream. * Protocol buffer message definition at {@link android.app.WindowConfigurationProto} * * @param protoOutputStream Stream to write the WindowConfiguration object to. * @param fieldId Field Id of the WindowConfiguration as defined in the parent message * @hide */ public void writeToProto(ProtoOutputStream protoOutputStream, long fieldId) { final long token = protoOutputStream.start(fieldId); if (mAppBounds != null) { mAppBounds.writeToProto(protoOutputStream, APP_BOUNDS); } protoOutputStream.write(WINDOWING_MODE, mWindowingMode); protoOutputStream.write(ACTIVITY_TYPE, mActivityType); protoOutputStream.end(token); } /** * Returns true if the activities associated with this window configuration display a shadow * around their border. Loading core/java/android/content/res/Configuration.java +36 −1 Original line number Diff line number Diff line Loading @@ -16,9 +16,20 @@ package android.content.res; import static android.content.ConfigurationProto.DENSITY_DPI; import static android.content.ConfigurationProto.FONT_SCALE; 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.UI_MODE; import static android.content.ConfigurationProto.WINDOW_CONFIGURATION; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.TestApi; import android.app.WindowConfiguration; import android.content.pm.ActivityInfo; import android.content.pm.ActivityInfo.Config; Loading @@ -27,6 +38,7 @@ import android.os.LocaleList; import android.os.Parcel; import android.os.Parcelable; import android.text.TextUtils; import android.util.proto.ProtoOutputStream; import android.view.View; import com.android.internal.util.XmlUtils; Loading Loading @@ -295,11 +307,12 @@ public final class Configuration implements Parcelable, Comparable<Configuration public int screenLayout; /** * @hide * Configuration relating to the windowing state of the object associated with this * Configuration. Contents of this field are not intended to affect resources, but need to be * communicated and propagated at the same time as the rest of Configuration. * @hide */ @TestApi public final WindowConfiguration windowConfiguration = new WindowConfiguration(); /** @hide */ Loading Loading @@ -1053,6 +1066,28 @@ public final class Configuration implements Parcelable, Comparable<Configuration return sb.toString(); } /** * Write to a protocol buffer output stream. * Protocol buffer message definition at {@link android.content.ConfigurationProto} * * @param protoOutputStream Stream to write the Configuration object to. * @param fieldId Field Id of the Configuration as defined in the parent message * @hide */ public void writeToProto(ProtoOutputStream protoOutputStream, long fieldId) { final long token = protoOutputStream.start(fieldId); protoOutputStream.write(FONT_SCALE, fontScale); protoOutputStream.write(SCREEN_LAYOUT, screenLayout); protoOutputStream.write(ORIENTATION, orientation); protoOutputStream.write(UI_MODE, uiMode); protoOutputStream.write(SCREEN_WIDTH_DP, screenWidthDp); protoOutputStream.write(SCREEN_HEIGHT_DP, screenHeightDp); protoOutputStream.write(SMALLEST_SCREEN_WIDTH_DP, smallestScreenWidthDp); protoOutputStream.write(DENSITY_DPI, densityDpi); windowConfiguration.writeToProto(protoOutputStream, WINDOW_CONFIGURATION); protoOutputStream.end(token); } /** * Set this object to the system defaults. */ Loading core/proto/android/app/window_configuration.proto 0 → 100644 +31 −0 Original line number Diff line number Diff line /* * Copyright (C) 2017 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ syntax = "proto3"; option java_package = "android.app"; option java_multiple_files = true; package android.app; import "frameworks/base/core/proto/android/graphics/rect.proto"; /** Proto representation for WindowConfiguration.java class. */ message WindowConfigurationProto { .android.graphics.RectProto app_bounds = 1; int32 windowing_mode = 2; int32 activity_type = 3; } core/proto/android/content/configuration.proto +2 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ option java_multiple_files = true; package android.content; import "frameworks/base/core/proto/android/app/window_configuration.proto"; import "frameworks/base/core/proto/android/content/locale.proto"; /** Loading @@ -43,5 +44,6 @@ message ConfigurationProto { uint32 screen_height_dp = 14; uint32 smallest_screen_width_dp = 15; uint32 density_dpi = 16; .android.app.WindowConfigurationProto window_configuration = 17; } Loading
api/test-current.txt +18 −0 Original line number Diff line number Diff line Loading @@ -6226,11 +6226,28 @@ package android.app { } public class WindowConfiguration implements java.lang.Comparable android.os.Parcelable { ctor public WindowConfiguration(); method public int compareTo(android.app.WindowConfiguration); method public int describeContents(); method public int getActivityType(); method public android.graphics.Rect getAppBounds(); method public int getWindowingMode(); method public void setActivityType(int); method public void setAppBounds(android.graphics.Rect); method public void setTo(android.app.WindowConfiguration); method public void setWindowingMode(int); method public void writeToParcel(android.os.Parcel, int); field public static final int ACTIVITY_TYPE_ASSISTANT = 4; // 0x4 field public static final int ACTIVITY_TYPE_HOME = 2; // 0x2 field public static final int ACTIVITY_TYPE_RECENTS = 3; // 0x3 field public static final int ACTIVITY_TYPE_STANDARD = 1; // 0x1 field public static final int ACTIVITY_TYPE_UNDEFINED = 0; // 0x0 field public static final int WINDOWING_MODE_FREEFORM = 5; // 0x5 field public static final int WINDOWING_MODE_FULLSCREEN = 1; // 0x1 field public static final int WINDOWING_MODE_PINNED = 2; // 0x2 field public static final int WINDOWING_MODE_SPLIT_SCREEN_PRIMARY = 3; // 0x3 field public static final int WINDOWING_MODE_SPLIT_SCREEN_SECONDARY = 4; // 0x4 field public static final int WINDOWING_MODE_UNDEFINED = 0; // 0x0 } } Loading Loading @@ -11328,6 +11345,7 @@ package android.content.res { field public int smallestScreenWidthDp; field public int touchscreen; field public int uiMode; field public final android.app.WindowConfiguration windowConfiguration; } public class ObbInfo implements android.os.Parcelable {
core/java/android/app/WindowConfiguration.java +31 −28 Original line number Diff line number Diff line Loading @@ -17,6 +17,9 @@ package android.app; import static android.app.ActivityThread.isSystem; import static android.app.WindowConfigurationProto.ACTIVITY_TYPE; import static android.app.WindowConfigurationProto.APP_BOUNDS; import static android.app.WindowConfigurationProto.WINDOWING_MODE; import android.annotation.IntDef; import android.annotation.NonNull; Loading @@ -25,6 +28,7 @@ import android.content.res.Configuration; import android.graphics.Rect; import android.os.Parcel; import android.os.Parcelable; import android.util.proto.ProtoOutputStream; import android.view.DisplayInfo; /** Loading @@ -48,26 +52,20 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu /** The current windowing mode of the configuration. */ private @WindowingMode int mWindowingMode; /** Windowing mode is currently not defined. * @hide */ /** Windowing mode is currently not defined. */ public static final int WINDOWING_MODE_UNDEFINED = 0; /** Occupies the full area of the screen or the parent container. * @hide */ /** Occupies the full area of the screen or the parent container. */ public static final int WINDOWING_MODE_FULLSCREEN = 1; /** Always on-top (always visible). of other siblings in its parent container. * @hide */ /** Always on-top (always visible). of other siblings in its parent container. */ public static final int WINDOWING_MODE_PINNED = 2; /** The primary container driving the screen to be in split-screen mode. * @hide */ /** The primary container driving the screen to be in split-screen mode. */ public static final int WINDOWING_MODE_SPLIT_SCREEN_PRIMARY = 3; /** * The containers adjacent to the {@link #WINDOWING_MODE_SPLIT_SCREEN_PRIMARY} container in * split-screen mode. * @hide */ public static final int WINDOWING_MODE_SPLIT_SCREEN_SECONDARY = 4; /** Can be freely resized within its parent container. * @hide */ /** Can be freely resized within its parent container. */ public static final int WINDOWING_MODE_FREEFORM = 5; /** @hide */ Loading @@ -84,18 +82,15 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu /** The current activity type of the configuration. */ private @ActivityType int mActivityType; /** Activity type is currently not defined. * @hide */ /** Activity type is currently not defined. */ public static final int ACTIVITY_TYPE_UNDEFINED = 0; /** Standard activity type. Nothing special about the activity... * @hide */ /** Standard activity type. Nothing special about the activity... */ public static final int ACTIVITY_TYPE_STANDARD = 1; /** Home/Launcher activity type. */ public static final int ACTIVITY_TYPE_HOME = 2; /** Recents/Overview activity type. */ public static final int ACTIVITY_TYPE_RECENTS = 3; /** Assistant activity type. * @hide */ /** Assistant activity type. */ public static final int ACTIVITY_TYPE_ASSISTANT = 4; /** @hide */ Loading Loading @@ -127,7 +122,6 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu }) public @interface WindowConfig {} /** @hide */ public WindowConfiguration() { unset(); } Loading Loading @@ -176,7 +170,6 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu * Set {@link #mAppBounds} to the input Rect. * @param rect The rect value to set {@link #mAppBounds} to. * @see #getAppBounds() * @hide */ public void setAppBounds(Rect rect) { if (rect == null) { Loading @@ -200,26 +193,20 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu mAppBounds.set(left, top, right, bottom); } /** * @see #setAppBounds(Rect) * @hide */ /** @see #setAppBounds(Rect) */ public Rect getAppBounds() { return mAppBounds; } /** @hide */ public void setWindowingMode(@WindowingMode int windowingMode) { mWindowingMode = windowingMode; } /** @hide */ @WindowingMode public int getWindowingMode() { return mWindowingMode; } /** @hide */ public void setActivityType(@ActivityType int activityType) { if (mActivityType == activityType) { return; Loading @@ -237,13 +224,11 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu mActivityType = activityType; } /** @hide */ @ActivityType public int getActivityType() { return mActivityType; } /** @hide */ public void setTo(WindowConfiguration other) { setAppBounds(other.mAppBounds); setWindowingMode(other.mWindowingMode); Loading Loading @@ -381,6 +366,24 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu + " mActivityType=" + activityTypeToString(mActivityType) + "}"; } /** * Write to a protocol buffer output stream. * Protocol buffer message definition at {@link android.app.WindowConfigurationProto} * * @param protoOutputStream Stream to write the WindowConfiguration object to. * @param fieldId Field Id of the WindowConfiguration as defined in the parent message * @hide */ public void writeToProto(ProtoOutputStream protoOutputStream, long fieldId) { final long token = protoOutputStream.start(fieldId); if (mAppBounds != null) { mAppBounds.writeToProto(protoOutputStream, APP_BOUNDS); } protoOutputStream.write(WINDOWING_MODE, mWindowingMode); protoOutputStream.write(ACTIVITY_TYPE, mActivityType); protoOutputStream.end(token); } /** * Returns true if the activities associated with this window configuration display a shadow * around their border. Loading
core/java/android/content/res/Configuration.java +36 −1 Original line number Diff line number Diff line Loading @@ -16,9 +16,20 @@ package android.content.res; import static android.content.ConfigurationProto.DENSITY_DPI; import static android.content.ConfigurationProto.FONT_SCALE; 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.UI_MODE; import static android.content.ConfigurationProto.WINDOW_CONFIGURATION; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.TestApi; import android.app.WindowConfiguration; import android.content.pm.ActivityInfo; import android.content.pm.ActivityInfo.Config; Loading @@ -27,6 +38,7 @@ import android.os.LocaleList; import android.os.Parcel; import android.os.Parcelable; import android.text.TextUtils; import android.util.proto.ProtoOutputStream; import android.view.View; import com.android.internal.util.XmlUtils; Loading Loading @@ -295,11 +307,12 @@ public final class Configuration implements Parcelable, Comparable<Configuration public int screenLayout; /** * @hide * Configuration relating to the windowing state of the object associated with this * Configuration. Contents of this field are not intended to affect resources, but need to be * communicated and propagated at the same time as the rest of Configuration. * @hide */ @TestApi public final WindowConfiguration windowConfiguration = new WindowConfiguration(); /** @hide */ Loading Loading @@ -1053,6 +1066,28 @@ public final class Configuration implements Parcelable, Comparable<Configuration return sb.toString(); } /** * Write to a protocol buffer output stream. * Protocol buffer message definition at {@link android.content.ConfigurationProto} * * @param protoOutputStream Stream to write the Configuration object to. * @param fieldId Field Id of the Configuration as defined in the parent message * @hide */ public void writeToProto(ProtoOutputStream protoOutputStream, long fieldId) { final long token = protoOutputStream.start(fieldId); protoOutputStream.write(FONT_SCALE, fontScale); protoOutputStream.write(SCREEN_LAYOUT, screenLayout); protoOutputStream.write(ORIENTATION, orientation); protoOutputStream.write(UI_MODE, uiMode); protoOutputStream.write(SCREEN_WIDTH_DP, screenWidthDp); protoOutputStream.write(SCREEN_HEIGHT_DP, screenHeightDp); protoOutputStream.write(SMALLEST_SCREEN_WIDTH_DP, smallestScreenWidthDp); protoOutputStream.write(DENSITY_DPI, densityDpi); windowConfiguration.writeToProto(protoOutputStream, WINDOW_CONFIGURATION); protoOutputStream.end(token); } /** * Set this object to the system defaults. */ Loading
core/proto/android/app/window_configuration.proto 0 → 100644 +31 −0 Original line number Diff line number Diff line /* * Copyright (C) 2017 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ syntax = "proto3"; option java_package = "android.app"; option java_multiple_files = true; package android.app; import "frameworks/base/core/proto/android/graphics/rect.proto"; /** Proto representation for WindowConfiguration.java class. */ message WindowConfigurationProto { .android.graphics.RectProto app_bounds = 1; int32 windowing_mode = 2; int32 activity_type = 3; }
core/proto/android/content/configuration.proto +2 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ option java_multiple_files = true; package android.content; import "frameworks/base/core/proto/android/app/window_configuration.proto"; import "frameworks/base/core/proto/android/content/locale.proto"; /** Loading @@ -43,5 +44,6 @@ message ConfigurationProto { uint32 screen_height_dp = 14; uint32 smallest_screen_width_dp = 15; uint32 density_dpi = 16; .android.app.WindowConfigurationProto window_configuration = 17; }