Merge "Enabling hardware layers while overscrolling widget pager" into jb-mr1-dev
This commit is contained in:
@@ -20,7 +20,6 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:gravity="center_horizontal"
|
android:gravity="center_horizontal"
|
||||||
android:layerType="hardware"
|
|
||||||
android:id="@+id/keyguard_transport_control">
|
android:id="@+id/keyguard_transport_control">
|
||||||
|
|
||||||
<!-- FrameLayout used as scrim to show between album art and buttons -->
|
<!-- FrameLayout used as scrim to show between album art and buttons -->
|
||||||
|
|||||||
@@ -97,12 +97,14 @@ public class KeyguardSubdivisionLayout extends ViewGroup {
|
|||||||
leafs.clear();
|
leafs.clear();
|
||||||
getLeafs(leafs, 1);
|
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());
|
double r = log2(leafs.size());
|
||||||
if (Math.ceil(r) == Math.floor(r)) {
|
if (Math.ceil(r) == Math.floor(r)) {
|
||||||
return leafs.get(leafs.size() - 1);
|
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();
|
int treeDepth = depth();
|
||||||
for (int i = leafs.size() - 1; i >= 0; i--) {
|
for (int i = leafs.size() - 1; i >= 0; i--) {
|
||||||
BiTree n = leafs.get(i);
|
BiTree n = leafs.get(i);
|
||||||
|
|||||||
@@ -91,7 +91,14 @@ public class KeyguardWidgetFrame extends FrameLayout {
|
|||||||
|
|
||||||
mForegroundAlpha = (int) Math.round((r * 255));
|
mForegroundAlpha = (int) Math.round((r * 255));
|
||||||
mForegroundDrawable.setAlpha(mForegroundAlpha);
|
mForegroundDrawable.setAlpha(mForegroundAlpha);
|
||||||
|
if (getLayerType() != LAYER_TYPE_HARDWARE) {
|
||||||
|
setLayerType(LAYER_TYPE_HARDWARE, null);
|
||||||
|
}
|
||||||
invalidate();
|
invalidate();
|
||||||
|
} else {
|
||||||
|
if (getLayerType() != LAYER_TYPE_NONE) {
|
||||||
|
setLayerType(LAYER_TYPE_NONE, null);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user