diff options
| author | 2018-07-23 20:53:48 +0000 | |
|---|---|---|
| committer | 2018-07-23 20:53:48 +0000 | |
| commit | dc0144d0d74c91039701443e9b78f74d2045dd75 (patch) | |
| tree | 455782a983fd46db9b6ebc2c987e47bac9fa71a2 | |
| parent | 290712717f14a15b55d73d2fabe638228de6784d (diff) | |
| parent | abfbf7f841fa96cce9bfc626fc2a3d33f7e12c45 (diff) | |
Merge "Merge pi-dev-plus-aosp-without-vendor into stage-dr1-aosp-master" into stage-dr1-aosp-master
4 files changed, 42 insertions, 15 deletions
diff --git a/core/java/android/hardware/camera2/CameraCharacteristics.java b/core/java/android/hardware/camera2/CameraCharacteristics.java index 32c6898e8c00..60e4ce29ab51 100644 --- a/core/java/android/hardware/camera2/CameraCharacteristics.java +++ b/core/java/android/hardware/camera2/CameraCharacteristics.java @@ -3136,12 +3136,26 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri * the following code snippet can be used:</p> * <pre><code>// Returns true if the device supports the required hardware level, or better. * boolean isHardwareLevelSupported(CameraCharacteristics c, int requiredLevel) { + * final int[] sortedHwLevels = { + * CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY, + * CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL_EXTERNAL, + * CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED, + * CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL_FULL, + * CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL_3 + * }; * int deviceLevel = c.get(CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL); - * if (deviceLevel == CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY) { - * return requiredLevel == deviceLevel; + * if (requiredLevel == deviceLevel) { + * return true; * } - * // deviceLevel is not LEGACY, can use numerical sort - * return requiredLevel <= deviceLevel; + * + * for (int sortedlevel : sortedHwLevels) { + * if (sortedlevel == requiredLevel) { + * return true; + * } else if (sortedlevel == deviceLevel) { + * return false; + * } + * } + * return false; // Should never reach here * } * </code></pre> * <p>At a high level, the levels are:</p> @@ -3155,6 +3169,8 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri * post-processing settings, and image capture at a high rate.</li> * <li><code>LEVEL_3</code> devices additionally support YUV reprocessing and RAW image capture, along * with additional output stream configurations.</li> + * <li><code>EXTERNAL</code> devices are similar to <code>LIMITED</code> devices with exceptions like some sensor or + * lens information not reorted or less stable framerates.</li> * </ul> * <p>See the individual level enums for full descriptions of the supported capabilities. The * {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} entry describes the device's capabilities at a diff --git a/core/java/android/hardware/camera2/CameraDevice.java b/core/java/android/hardware/camera2/CameraDevice.java index f47d4640c09c..ce88697fa8db 100644 --- a/core/java/android/hardware/camera2/CameraDevice.java +++ b/core/java/android/hardware/camera2/CameraDevice.java @@ -44,19 +44,27 @@ import java.lang.annotation.RetentionPolicy; * {@link android.Manifest.permission#CAMERA Camera} permission in its manifest * in order to access camera devices.</p> * - * <p>A given camera device may provide support at one of two levels: limited or - * full. If a device only supports the limited level, then Camera2 exposes a - * feature set that is roughly equivalent to the older + * <p>A given camera device may provide support at one of several levels defined + * in {@link CameraCharacteristics#INFO_SUPPORTED_HARDWARE_LEVEL}. + * If a device supports {@link CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY LEGACY} level, + * the camera device is running in backward compatibility mode and has minimum camera2 API support. + * If a device supports the {@link CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED LIMITED} + * level, then Camera2 exposes a feature set that is roughly equivalent to the older * {@link android.hardware.Camera Camera} API, although with a cleaner and more - * efficient interface. Devices that implement the full level of support + * efficient interface. + * If a device supports the {@link CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_EXTERNAL EXTERNAL} + * level, then the device is a removable camera that provides similar but slightly less features + * as the {@link CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED LIMITED} level. + * Devices that implement the {@link CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_FULL FULL} or + * {@link CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_3 LEVEL3} level of support * provide substantially improved capabilities over the older camera - * API. Applications that target the limited level devices will run unchanged on - * the full-level devices; if your application requires a full-level device for + * API. If your application requires a full-level device for * proper operation, declare the "android.hardware.camera.level.full" feature in your * manifest.</p> * * @see CameraManager#openCamera * @see android.Manifest.permission#CAMERA + * @see CameraCharacteristics#INFO_SUPPORTED_HARDWARE_LEVEL */ public abstract class CameraDevice implements AutoCloseable { diff --git a/packages/SystemUI/src/com/android/systemui/recents/RecentsOnboarding.java b/packages/SystemUI/src/com/android/systemui/recents/RecentsOnboarding.java index ce9d7e160e0e..db2b69f1d062 100644 --- a/packages/SystemUI/src/com/android/systemui/recents/RecentsOnboarding.java +++ b/packages/SystemUI/src/com/android/systemui/recents/RecentsOnboarding.java @@ -88,16 +88,16 @@ public class RecentsOnboarding { // Show quick scrub tips after opening overview this number of times. private static final int QUICK_SCRUB_SHOW_ON_OVERVIEW_OPENED_COUNT = 10; // Maximum number of dismissals while still showing swipe-up tips. - private static final int MAX_DISMISSAL_ON_SWIPE_UP_SHOW = 4; + private static final int MAX_DISMISSAL_ON_SWIPE_UP_SHOW = 2; // Number of dismissals for swipe-up tips when exponential backoff starts. - private static final int BACKOFF_DISMISSAL_COUNT_ON_SWIPE_UP_SHOW = 2; + private static final int BACKOFF_DISMISSAL_COUNT_ON_SWIPE_UP_SHOW = 1; // After explicitly dismissing for <= BACKOFF_DISMISSAL_COUNT_ON_SWIPE_UP_SHOW times, show again // after launching this number of apps for swipe-up tips. private static final int SWIPE_UP_SHOW_ON_APP_LAUNCH_AFTER_DISMISS = 5; // After explicitly dismissing for > BACKOFF_DISMISSAL_COUNT_ON_SWIPE_UP_SHOW but // <= MAX_DISMISSAL_ON_SWIPE_UP_SHOW times, show again after launching this number of apps for // swipe-up tips. - private static final int SWIPE_UP_SHOW_ON_APP_LAUNCH_AFTER_DISMISS_BACK_OFF = 10; + private static final int SWIPE_UP_SHOW_ON_APP_LAUNCH_AFTER_DISMISS_BACK_OFF = 40; private final Context mContext; private final WindowManager mWindowManager; diff --git a/tools/fonts/fontchain_linter.py b/tools/fonts/fontchain_linter.py index a8411aa5c488..ce9becd40b1e 100755 --- a/tools/fonts/fontchain_linter.py +++ b/tools/fonts/fontchain_linter.py @@ -524,9 +524,12 @@ LEGACY_ANDROID_EMOJI = { 0xFE837: (ord('0'), COMBINING_KEYCAP), } +# This is used to define the emoji that should have the same glyph. +# i.e. previously we had gender based Kiss (0x1F48F), which had the same glyph +# with Kiss: Woman, Man (0x1F469, 0x200D, 0x2764, 0x200D, 0x1F48B, 0x200D, 0x1F468) +# in that case a valid row would be: +# (0x1F469, 0x200D, 0x2764, 0x200D, 0x1F48B, 0x200D, 0x1F468): 0x1F48F, ZWJ_IDENTICALS = { - # KISS - (0x1F469, 0x200D, 0x2764, 0x200D, 0x1F48B, 0x200D, 0x1F468): 0x1F48F, } SAME_FLAG_MAPPINGS = [ |