Merge "Do not allow division by 0" into qt-qpr1-dev

This commit is contained in:
Lucas Dupin
2020-03-18 04:24:28 +00:00
committed by Android (Google) Code Review
4 changed files with 14 additions and 3 deletions

View File

@@ -111,8 +111,9 @@ public class HeadsUpTouchHelper implements Gefingerpoken {
mInitialTouchY = y;
int startHeight = (int) (mPickedChild.getActualHeight()
+ mPickedChild.getTranslationY());
mPanel.setPanelScrimMinFraction((float) startHeight
/ mPanel.getMaxPanelHeight());
float maxPanelHeight = mPanel.getMaxPanelHeight();
mPanel.setPanelScrimMinFraction(maxPanelHeight > 0f
? (float) startHeight / maxPanelHeight : 0f);
mPanel.startExpandMotion(x, y, true /* startTracking */, startHeight);
mPanel.startExpandingFromPeek();
// This call needs to be after the expansion start otherwise we will get a

View File

@@ -2074,7 +2074,7 @@ public class NotificationPanelView extends PanelView implements
} else {
maxHeight = calculatePanelHeightShade();
}
maxHeight = Math.max(maxHeight, min);
maxHeight = Math.max(min, maxHeight);
return maxHeight;
}

View File

@@ -16,6 +16,8 @@
package com.android.systemui.statusbar.phone;
import static java.lang.Float.isNaN;
import android.content.Context;
import android.os.Bundle;
import android.os.Parcelable;
@@ -160,6 +162,9 @@ public abstract class PanelBar extends FrameLayout {
* fraction as the panel also might be expanded if the fraction is 0
*/
public void panelExpansionChanged(float frac, boolean expanded) {
if (isNaN(frac)) {
throw new IllegalArgumentException("frac cannot be NaN");
}
boolean fullyClosed = true;
boolean fullyOpened = false;
if (SPEW) LOG("panelExpansionChanged: start state=%d", mState);

View File

@@ -21,6 +21,8 @@ import static android.content.res.Configuration.ORIENTATION_PORTRAIT;
import static com.android.systemui.ScreenDecorations.DisplayCutoutView.boundsFromDirection;
import static com.android.systemui.SysUiServiceProvider.getComponent;
import static java.lang.Float.isNaN;
import android.annotation.Nullable;
import android.content.Context;
import android.content.res.Configuration;
@@ -264,6 +266,9 @@ public class PhoneStatusBarView extends PanelBar {
@Override
public void panelScrimMinFractionChanged(float minFraction) {
if (isNaN(minFraction)) {
throw new IllegalArgumentException("minFraction cannot be NaN");
}
if (mMinFraction != minFraction) {
mMinFraction = minFraction;
updateScrimFraction();