summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdam Cohen <adamcohen@google.com>2012-09-17 14:12:05 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2012-09-17 14:12:06 -0700
commite2f0ec8923d42b47225225345a960e41dfbb5bd1 (patch)
tree281ba51f0dc3fa2b60582f0909ac35d9d0159047
parente01538f28b0e9bd0174d5e3f315747b3725b5bd4 (diff)
parent5b50a25e6d12bdc641a3b48ba9e7c02d63bf00cd (diff)
downloadframeworks_base-e2f0ec8923d42b47225225345a960e41dfbb5bd1.zip
frameworks_base-e2f0ec8923d42b47225225345a960e41dfbb5bd1.tar.gz
frameworks_base-e2f0ec8923d42b47225225345a960e41dfbb5bd1.tar.bz2
Merge "Enabling hardware layers while overscrolling widget pager" into jb-mr1-dev
-rw-r--r--core/res/res/layout/keyguard_transport_control_view.xml1
-rw-r--r--policy/src/com/android/internal/policy/impl/keyguard/KeyguardSubdivisionLayout.java4
-rw-r--r--policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetFrame.java7
3 files changed, 10 insertions, 2 deletions
diff --git a/core/res/res/layout/keyguard_transport_control_view.xml b/core/res/res/layout/keyguard_transport_control_view.xml
index 8e76164..c40aa66 100644
--- a/core/res/res/layout/keyguard_transport_control_view.xml
+++ b/core/res/res/layout/keyguard_transport_control_view.xml
@@ -20,7 +20,6 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
- android:layerType="hardware"
android:id="@+id/keyguard_transport_control">
<!-- FrameLayout used as scrim to show between album art and buttons -->
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardSubdivisionLayout.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardSubdivisionLayout.java
index b7d94a9..1cd796c 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardSubdivisionLayout.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardSubdivisionLayout.java
@@ -97,12 +97,14 @@ public class KeyguardSubdivisionLayout extends ViewGroup {
leafs.clear();
getLeafs(leafs, 1);
- // We find the first leaf who's depth is not
+ // If the tree is complete, then we start a new level at the rightmost side.
double r = log2(leafs.size());
if (Math.ceil(r) == Math.floor(r)) {
return leafs.get(leafs.size() - 1);
}
+ // Tree is not complete, find the first leaf who's depth is less than the depth of
+ // the tree.
int treeDepth = depth();
for (int i = leafs.size() - 1; i >= 0; i--) {
BiTree n = leafs.get(i);
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetFrame.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetFrame.java
index f957753..70a6ffa 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetFrame.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetFrame.java
@@ -91,7 +91,14 @@ public class KeyguardWidgetFrame extends FrameLayout {
mForegroundAlpha = (int) Math.round((r * 255));
mForegroundDrawable.setAlpha(mForegroundAlpha);
+ if (getLayerType() != LAYER_TYPE_HARDWARE) {
+ setLayerType(LAYER_TYPE_HARDWARE, null);
+ }
invalidate();
+ } else {
+ if (getLayerType() != LAYER_TYPE_NONE) {
+ setLayerType(LAYER_TYPE_NONE, null);
+ }
}
}
}