Merge "QS: Only allow clicking in the expand button" into nyc-dev
This commit is contained in:
@@ -26,9 +26,6 @@
|
||||
android:clipChildren="false"
|
||||
android:clipToPadding="false"
|
||||
android:baselineAligned="false"
|
||||
android:background="@drawable/quick_header_bg"
|
||||
android:clickable="true"
|
||||
android:focusable="true"
|
||||
>
|
||||
|
||||
<LinearLayout
|
||||
@@ -83,6 +80,10 @@
|
||||
android:id="@+id/expand_indicator"
|
||||
android:layout_width="48dp"
|
||||
android:layout_height="48dp"
|
||||
android:clipToPadding="false"
|
||||
android:clickable="true"
|
||||
android:focusable="true"
|
||||
android:background="?android:attr/selectableItemBackgroundBorderless"
|
||||
android:padding="12dp" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
@@ -20,6 +20,7 @@ import android.animation.Animator;
|
||||
import android.animation.AnimatorListenerAdapter;
|
||||
import android.content.Context;
|
||||
import android.graphics.Point;
|
||||
import android.graphics.Rect;
|
||||
import android.util.AttributeSet;
|
||||
import android.util.Log;
|
||||
import android.view.View;
|
||||
@@ -43,6 +44,7 @@ public class QSContainer extends FrameLayout {
|
||||
private static final boolean DEBUG = false;
|
||||
|
||||
private final Point mSizePoint = new Point();
|
||||
private final Rect mQsBounds = new Rect();
|
||||
|
||||
private int mHeightOverride = -1;
|
||||
private QSPanel mQSPanel;
|
||||
@@ -226,6 +228,12 @@ public class QSContainer extends FrameLayout {
|
||||
mQSDetail.setFullyExpanded(expansion == 1);
|
||||
mQSAnimator.setPosition(expansion);
|
||||
updateBottom();
|
||||
|
||||
// Set bounds on the QS panel so it doesn't run over the header.
|
||||
mQsBounds.top = (int) (mQSPanel.getHeight() * (1 - expansion));
|
||||
mQsBounds.right = mQSPanel.getWidth();
|
||||
mQsBounds.bottom = mQSPanel.getHeight();
|
||||
mQSPanel.setClipBounds(mQsBounds);
|
||||
}
|
||||
|
||||
public void animateHeaderSlidingIn(long delay) {
|
||||
|
||||
@@ -225,7 +225,8 @@ public class NotificationPanelView extends PanelView implements
|
||||
public void onInflated(View v) {
|
||||
mQsContainer = (QSContainer) v.findViewById(R.id.quick_settings_container);
|
||||
mQsContainer.setPanelView(NotificationPanelView.this);
|
||||
mQsContainer.getHeader().setOnClickListener(NotificationPanelView.this);
|
||||
mQsContainer.getHeader().findViewById(R.id.expand_indicator)
|
||||
.setOnClickListener(NotificationPanelView.this);
|
||||
}
|
||||
});
|
||||
mClockView = (TextView) findViewById(R.id.clock_view);
|
||||
@@ -1760,7 +1761,7 @@ public class NotificationPanelView extends PanelView implements
|
||||
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
if (v == mQsContainer.getHeader()) {
|
||||
if (v.getId() == R.id.expand_indicator) {
|
||||
onQsExpansionStarted();
|
||||
if (mQsExpanded) {
|
||||
flingSettings(0 /* vel */, false /* expand */, null, true /* isClick */);
|
||||
|
||||
@@ -124,7 +124,6 @@ public class QuickStatusBarHeader extends BaseStatusBarHeader implements
|
||||
|
||||
// RenderThread is doing more harm than good when touching the header (to expand quick
|
||||
// settings), so disable it for this view
|
||||
((RippleDrawable) getBackground()).setForceSoftware(true);
|
||||
((RippleDrawable) mSettingsButton.getBackground()).setForceSoftware(true);
|
||||
|
||||
updateResources();
|
||||
|
||||
Reference in New Issue
Block a user