Snap for 5909972 from 29b8d32f0d to qt-qpr1-release

Change-Id: If81796adbe5a6a1811cb289ed1029f73c1b5a96a
This commit is contained in:
android-build-team Robot
2019-10-01 01:07:38 +00:00
6 changed files with 54 additions and 36 deletions

View File

@@ -37,7 +37,7 @@ import com.android.internal.view.IDragAndDropPermissions;
* View.startDragAndDrop} by the app that started the drag operation.
* </p>
* <p>
* The life cycle of the permissions is bound to the activity used to call {@link
* The lifecycle of the permissions is bound to the activity used to call {@link
* android.app.Activity#requestDragAndDropPermissions(DragEvent) requestDragAndDropPermissions}. The
* permissions are revoked when this activity is destroyed, or when {@link #release()} is called,
* whichever occurs first.
@@ -49,6 +49,10 @@ import com.android.internal.view.IDragAndDropPermissions;
* {@link Activity#onSaveInstanceState} bundle and later retrieved in order to manually release
* the permissions once they are no longer needed.
* </p>
* <p>
* Learn more about <a href="/guide/topics/ui/drag-drop#DragPermissionsMultiWindow">drag permissions
* in multi-window mode</a>.
* </p>
*/
public final class DragAndDropPermissions implements Parcelable {

View File

@@ -193,26 +193,24 @@ public abstract class WebSettings {
}
/**
* Used with {@link #setMixedContentMode}
*
* In this mode, the WebView will allow a secure origin to load content from any other origin,
* even if that origin is insecure. This is the least secure mode of operation for the WebView,
* and where possible apps should not set this mode.
*
* @see #setMixedContentMode
*/
public static final int MIXED_CONTENT_ALWAYS_ALLOW = 0;
/**
* Used with {@link #setMixedContentMode}
*
* In this mode, the WebView will not allow a secure origin to load content from an insecure
* origin. This is the preferred and most secure mode of operation for the WebView and apps are
* strongly advised to use this mode.
*
* @see #setMixedContentMode
*/
public static final int MIXED_CONTENT_NEVER_ALLOW = 1;
/**
* Used with {@link #setMixedContentMode}
*
* In this mode, the WebView will attempt to be compatible with the approach of a modern web
* browser with regard to mixed content. Some insecure content may be allowed to be loaded by
* a secure origin and other types of content will be blocked. The types of content are allowed
@@ -221,6 +219,8 @@ public abstract class WebSettings {
* This mode is intended to be used by apps that are not in control of the content that they
* render but desire to operate in a reasonably secure environment. For highest security, apps
* are recommended to use {@link #MIXED_CONTENT_NEVER_ALLOW}.
*
* @see #setMixedContentMode
*/
public static final int MIXED_CONTENT_COMPATIBILITY_MODE = 2;
@@ -234,30 +234,30 @@ public abstract class WebSettings {
public @interface ForceDark {}
/**
* Used with {@link #setForceDark}
*
* Disable force dark, irrespective of the force dark mode of the WebView parent. In this mode,
* WebView content will always be rendered as-is, regardless of whether native views are being
* automatically darkened.
*
* @see #setForceDark
*/
public static final int FORCE_DARK_OFF = 0;
/**
* Used with {@link #setForceDark}
*
* Enable force dark dependent on the state of the WebView parent view. If the WebView parent
* view is being automatically force darkened
* (see: {@link android.view.View#setForceDarkAllowed}), then WebView content will be rendered
* so as to emulate a dark theme. WebViews that are not attached to the view hierarchy will not
* be inverted.
*
* @see #setForceDark
*/
public static final int FORCE_DARK_AUTO = 1;
/**
* Used with {@link #setForceDark}
*
* Unconditionally enable force dark. In this mode WebView content will always be rendered so
* as to emulate a dark theme.
*
* @see #setForceDark
*/
public static final int FORCE_DARK_ON = 2;
@@ -1471,6 +1471,7 @@ public abstract class WebSettings {
* Set the force dark mode for this WebView.
*
* @param forceDark the force dark mode to set.
* @see #getForceDark
*/
public void setForceDark(@ForceDark int forceDark) {
// Stub implementation to satisfy Roboelectrc shadows that don't override this yet.
@@ -1478,10 +1479,10 @@ public abstract class WebSettings {
/**
* Get the force dark mode for this WebView.
*
* The default force dark mode is {@link #FORCE_DARK_AUTO}
* The default force dark mode is {@link #FORCE_DARK_AUTO}.
*
* @return the currently set force dark mode.
* @see #setForceDark
*/
public @ForceDark int getForceDark() {
// Stub implementation to satisfy Roboelectrc shadows that don't override this yet.
@@ -1516,34 +1517,34 @@ public abstract class WebSettings {
public abstract @MenuItemFlags int getDisabledActionModeMenuItems();
/**
* Used with {@link #setDisabledActionModeMenuItems}.
*
* No menu items should be disabled.
*
* @see #setDisabledActionModeMenuItems
*/
public static final int MENU_ITEM_NONE = 0;
/**
* Used with {@link #setDisabledActionModeMenuItems}.
*
* Disable menu item "Share".
*
* @see #setDisabledActionModeMenuItems
*/
public static final int MENU_ITEM_SHARE = 1 << 0;
/**
* Used with {@link #setDisabledActionModeMenuItems}.
*
* Disable menu item "Web Search".
*
* @see #setDisabledActionModeMenuItems
*/
public static final int MENU_ITEM_WEB_SEARCH = 1 << 1;
/**
* Used with {@link #setDisabledActionModeMenuItems}.
*
* Disable all the action mode menu items for text processing.
* By default WebView searches for activities that are able to handle
* {@link android.content.Intent#ACTION_PROCESS_TEXT} and show them in the
* action mode menu. If this flag is set via {@link
* #setDisabledActionModeMenuItems}, these menu items will be disabled.
*
* @see #setDisabledActionModeMenuItems
*/
public static final int MENU_ITEM_PROCESS_TEXT = 1 << 2;
}

View File

@@ -323,14 +323,16 @@
<font weight="700" style="normal">NotoSansLaoUI-Bold.ttf</font>
</family>
<family lang="und-Mymr" variant="elegant">
<font weight="400" style="normal">NotoSansMyanmar-Regular-ZawDecode.ttf</font>
<font weight="700" style="normal">NotoSansMyanmar-Bold-ZawDecode.ttf</font>
<font weight="400" style="normal">NotoSansMyanmar-Regular.otf</font>
<font weight="500" style="normal">NotoSansMyanmar-Medium.otf</font>
<font weight="700" style="normal">NotoSansMyanmar-Bold.otf</font>
<font weight="400" style="normal" fallbackFor="serif">NotoSerifMyanmar-Regular.otf</font>
<font weight="700" style="normal" fallbackFor="serif">NotoSerifMyanmar-Bold.otf</font>
</family>
<family lang="und-Mymr" variant="compact">
<font weight="400" style="normal">NotoSansMyanmarUI-Regular-ZawDecode.ttf</font>
<font weight="700" style="normal">NotoSansMyanmarUI-Bold-ZawDecode.ttf</font>
<font weight="400" style="normal">NotoSansMyanmarUI-Regular.otf</font>
<font weight="500" style="normal">NotoSansMyanmarUI-Medium.otf</font>
<font weight="700" style="normal">NotoSansMyanmarUI-Bold.otf</font>
</family>
<family lang="und-Thaa">
<font weight="400" style="normal">NotoSansThaana-Regular.ttf</font>

View File

@@ -754,6 +754,16 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo
}
private void onFinished(Callback callback) {
if (!hasReachedFinalState(mScrimBehind)
|| !hasReachedFinalState(mScrimInFront)
|| !hasReachedFinalState(mScrimForBubble)) {
if (callback != null && callback != mCallback) {
// Since we only notify the callback that we're finished once everything has
// finished, we need to make sure that any changing callbacks are also invoked
callback.onFinished();
}
return;
}
if (mWakeLockHeld) {
mWakeLock.release(TAG);
mWakeLockHeld = false;
@@ -773,9 +783,17 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo
mInFrontTint = Color.TRANSPARENT;
mBehindTint = Color.TRANSPARENT;
mBubbleTint = Color.TRANSPARENT;
updateScrimColor(mScrimInFront, mInFrontAlpha, mInFrontTint);
updateScrimColor(mScrimBehind, mBehindAlpha, mBehindTint);
updateScrimColor(mScrimForBubble, mBubbleAlpha, mBubbleTint);
}
}
private boolean hasReachedFinalState(ScrimView scrim) {
return scrim.getViewAlpha() == getCurrentScrimAlpha(scrim)
&& scrim.getTint() == getCurrentScrimTint(scrim);
}
private boolean isAnimating(View scrim) {
return scrim.getTag(TAG_KEY_ANIM) != null;
}

View File

@@ -431,6 +431,7 @@ public class ScrimControllerTest extends SysuiTestCase {
TRANSPARENT /* behind */,
TRANSPARENT /* bubble */);
// Make sure at the very end of the animation, we're reset to transparent
assertScrimTint(false /* front */,
false /* behind */,
false /* bubble */);

View File

@@ -23,7 +23,6 @@ import static android.view.Display.INVALID_DISPLAY;
import static com.android.server.am.ActivityManagerService.MY_PID;
import static com.android.server.wm.ActivityStack.ActivityState.DESTROYED;
import static com.android.server.wm.ActivityStack.ActivityState.DESTROYING;
import static com.android.server.wm.ActivityStack.ActivityState.INITIALIZING;
import static com.android.server.wm.ActivityStack.ActivityState.PAUSED;
import static com.android.server.wm.ActivityStack.ActivityState.PAUSING;
import static com.android.server.wm.ActivityStack.ActivityState.RESUMED;
@@ -553,14 +552,7 @@ public class WindowProcessController extends ConfigurationContainer<Configuratio
continue;
}
ActivityRecord topActivity = task.getTopActivity();
if (topActivity == null) {
continue;
}
// If an activity has just been started it will not yet be visible, but
// is expected to be soon. We treat this as if it were already visible.
// This ensures a subsequent activity can be started even before this one
// becomes visible.
if (topActivity.visible || topActivity.isState(INITIALIZING)) {
if (topActivity != null && topActivity.visible) {
return true;
}
}