diff options
author | Ian Parkinson <ianp@google.com> | 2014-10-06 16:59:53 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-10-06 16:59:53 +0000 |
commit | 33de945451e1380eff2f4c6cd3aa5bb32c0ad368 (patch) | |
tree | d3898c8e87d2c03ccc7bb9ca67f8c412c1b153e5 /src/com/android/launcher3 | |
parent | b2331f6601d26cf042e70070e1ef32fe06827f4d (diff) | |
parent | 0c2918f4f4c4a9a6609b82cf23155ed51840f2c8 (diff) | |
download | android_packages_apps_Trebuchet-33de945451e1380eff2f4c6cd3aa5bb32c0ad368.tar.gz android_packages_apps_Trebuchet-33de945451e1380eff2f4c6cd3aa5bb32c0ad368.tar.bz2 android_packages_apps_Trebuchet-33de945451e1380eff2f4c6cd3aa5bb32c0ad368.zip |
am 0c2918f4: Use View.generateViewId if available
* commit '0c2918f4f4c4a9a6609b82cf23155ed51840f2c8':
Use View.generateViewId if available
Diffstat (limited to 'src/com/android/launcher3')
-rw-r--r-- | src/com/android/launcher3/Launcher.java | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 4a39e0ae5..3b903c062 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -689,19 +689,20 @@ public class Launcher extends Activity } } - /** - * Copied from View -- the View version of the method isn't called - * anywhere else in our process and only exists for API level 17+, - * so it's ok to keep our own version with no API requirement. - */ public static int generateViewId() { - for (;;) { - final int result = sNextGeneratedId.get(); - // aapt-generated IDs have the high byte nonzero; clamp to the range under that. - int newValue = result + 1; - if (newValue > 0x00FFFFFF) newValue = 1; // Roll over to 1, not 0. - if (sNextGeneratedId.compareAndSet(result, newValue)) { - return result; + if (Build.VERSION.SDK_INT >= 17) { + return View.generateViewId(); + } else { + // View.generateViewId() is not available. The following fallback logic is a copy + // of its implementation. + for (;;) { + final int result = sNextGeneratedId.get(); + // aapt-generated IDs have the high byte nonzero; clamp to the range under that. + int newValue = result + 1; + if (newValue > 0x00FFFFFF) newValue = 1; // Roll over to 1, not 0. + if (sNextGeneratedId.compareAndSet(result, newValue)) { + return result; + } } } } |