public class NotificationStackScrollLayout extends ViewGroup implements SwipeHelper.Callback, ExpandHelper.Callback, ScrollAdapter, com.android.systemui.statusbar.ExpandableView.OnHeightChangedListener, NotificationGroupManager.OnGroupChangeListener, com.android.systemui.statusbar.NotificationSettingsIconRow.SettingsIconRowListener, ScrollContainer
Modifier and Type | Class and Description |
---|---|
static interface |
NotificationStackScrollLayout.OnChildLocationsChangedListener
A listener that is notified when some child locations might have changed.
|
static interface |
NotificationStackScrollLayout.OnEmptySpaceClickListener
A listener that is notified when the empty space below the notifications is clicked on
|
static interface |
NotificationStackScrollLayout.OnOverscrollTopChangedListener
A listener that gets notified when the overscroll at the top has changed.
|
ViewGroup.LayoutParams, ViewGroup.MarginLayoutParams, ViewGroup.OnHierarchyChangeListener
View.AccessibilityDelegate, View.BaseSavedState, View.DragShadowBuilder, View.DrawingCacheQuality, View.FindViewFlags, View.FocusableMode, View.FocusDirection, View.FocusRealDirection, View.LayoutDir, View.MeasureSpec, View.OnApplyWindowInsetsListener, View.OnAttachStateChangeListener, View.OnClickListener, View.OnContextClickListener, View.OnCreateContextMenuListener, View.OnDragListener, View.OnFocusChangeListener, View.OnGenericMotionListener, View.OnHoverListener, View.OnKeyListener, View.OnLayoutChangeListener, View.OnLongClickListener, View.OnScrollChangeListener, View.OnSystemUiVisibilityChangeListener, View.OnTouchListener, View.ResolvedLayoutDir, View.ScrollBarStyle, View.ScrollIndicators, View.TextAlignment, View.Visibility
Modifier and Type | Field and Description |
---|---|
static float |
BACKGROUND_ALPHA_DIMMED |
protected ViewGroup |
mQsContainer |
CLIP_TO_PADDING_MASK, DEBUG_DRAW, FLAG_DISALLOW_INTERCEPT, FLAG_SUPPORT_STATIC_TRANSFORMATIONS, FLAG_USE_CHILD_DRAWING_ORDER, FOCUS_AFTER_DESCENDANTS, FOCUS_BEFORE_DESCENDANTS, FOCUS_BLOCK_DESCENDANTS, LAYOUT_MODE_CLIP_BOUNDS, LAYOUT_MODE_DEFAULT, LAYOUT_MODE_OPTICAL_BOUNDS, mDisappearingChildren, mGroupFlags, mOnHierarchyChangeListener, mPersistentDrawingCache, PERSISTENT_ALL_CACHES, PERSISTENT_ANIMATION_CACHE, PERSISTENT_NO_CACHE, PERSISTENT_SCROLLING_CACHE
ACCESSIBILITY_CURSOR_POSITION_UNDEFINED, ACCESSIBILITY_LIVE_REGION_ASSERTIVE, ACCESSIBILITY_LIVE_REGION_NONE, ACCESSIBILITY_LIVE_REGION_POLITE, ALPHA, DEBUG_LAYOUT_PROPERTY, DRAG_FLAG_GLOBAL, DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION, DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION, DRAG_FLAG_GLOBAL_URI_READ, DRAG_FLAG_GLOBAL_URI_WRITE, DRAG_FLAG_OPAQUE, DRAWING_CACHE_QUALITY_AUTO, DRAWING_CACHE_QUALITY_HIGH, DRAWING_CACHE_QUALITY_LOW, EMPTY_STATE_SET, ENABLED_FOCUSED_SELECTED_STATE_SET, ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, ENABLED_FOCUSED_STATE_SET, ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET, ENABLED_SELECTED_STATE_SET, ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET, ENABLED_STATE_SET, ENABLED_WINDOW_FOCUSED_STATE_SET, FIND_VIEWS_WITH_ACCESSIBILITY_NODE_PROVIDERS, FIND_VIEWS_WITH_CONTENT_DESCRIPTION, FIND_VIEWS_WITH_TEXT, FOCUS_BACKWARD, FOCUS_DOWN, FOCUS_FORWARD, FOCUS_LEFT, FOCUS_RIGHT, FOCUS_UP, FOCUSABLES_ALL, FOCUSABLES_TOUCH_MODE, FOCUSED_SELECTED_STATE_SET, FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, FOCUSED_STATE_SET, FOCUSED_WINDOW_FOCUSED_STATE_SET, GONE, HAPTIC_FEEDBACK_ENABLED, IMPORTANT_FOR_ACCESSIBILITY_AUTO, IMPORTANT_FOR_ACCESSIBILITY_NO, IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS, IMPORTANT_FOR_ACCESSIBILITY_YES, INVISIBLE, KEEP_SCREEN_ON, LAYER_TYPE_HARDWARE, LAYER_TYPE_NONE, LAYER_TYPE_SOFTWARE, LAYOUT_DIRECTION_INHERIT, LAYOUT_DIRECTION_LOCALE, LAYOUT_DIRECTION_LTR, LAYOUT_DIRECTION_RTL, LAYOUT_DIRECTION_UNDEFINED, mAttributes, mBottom, mCachingFailed, mContext, mCurrentAnimation, mDebugViewAttributes, MEASURED_HEIGHT_STATE_SHIFT, MEASURED_SIZE_MASK, MEASURED_STATE_MASK, MEASURED_STATE_TOO_SMALL, mInputEventConsistencyVerifier, mLayoutParams, mLeft, mPaddingBottom, mPaddingLeft, mPaddingRight, mPaddingTop, mParent, mRight, mScrollX, mScrollY, mTag, mTop, mUserPaddingBottom, mUserPaddingLeft, mUserPaddingRight, NAVIGATION_BAR_TRANSIENT, NAVIGATION_BAR_TRANSLUCENT, NAVIGATION_BAR_TRANSPARENT, NAVIGATION_BAR_UNHIDE, NO_ID, OVER_SCROLL_ALWAYS, OVER_SCROLL_IF_CONTENT_SCROLLS, OVER_SCROLL_NEVER, PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET, PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_FOCUSED_STATE_SET, PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_SELECTED_STATE_SET, PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_STATE_SET, PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET, PRESSED_FOCUSED_SELECTED_STATE_SET, PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_FOCUSED_STATE_SET, PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET, PRESSED_SELECTED_STATE_SET, PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_STATE_SET, PRESSED_WINDOW_FOCUSED_STATE_SET, PUBLIC_STATUS_BAR_VISIBILITY_MASK, ROTATION, ROTATION_X, ROTATION_Y, SCALE_X, SCALE_Y, SCREEN_STATE_OFF, SCREEN_STATE_ON, SCROLL_AXIS_HORIZONTAL, SCROLL_AXIS_NONE, SCROLL_AXIS_VERTICAL, SCROLL_INDICATOR_BOTTOM, SCROLL_INDICATOR_END, SCROLL_INDICATOR_LEFT, SCROLL_INDICATOR_RIGHT, SCROLL_INDICATOR_START, SCROLL_INDICATOR_TOP, SCROLLBAR_POSITION_DEFAULT, SCROLLBAR_POSITION_LEFT, SCROLLBAR_POSITION_RIGHT, SCROLLBARS_INSIDE_INSET, SCROLLBARS_INSIDE_OVERLAY, SCROLLBARS_OUTSIDE_INSET, SCROLLBARS_OUTSIDE_OVERLAY, SELECTED_STATE_SET, SELECTED_WINDOW_FOCUSED_STATE_SET, SOUND_EFFECTS_ENABLED, sPreserveMarginParamsInLayoutParamConversion, STATUS_BAR_DISABLE_BACK, STATUS_BAR_DISABLE_CLOCK, STATUS_BAR_DISABLE_EXPAND, STATUS_BAR_DISABLE_HOME, STATUS_BAR_DISABLE_NOTIFICATION_ALERTS, STATUS_BAR_DISABLE_NOTIFICATION_ICONS, STATUS_BAR_DISABLE_NOTIFICATION_TICKER, STATUS_BAR_DISABLE_RECENT, STATUS_BAR_DISABLE_SEARCH, STATUS_BAR_DISABLE_SYSTEM_INFO, STATUS_BAR_HIDDEN, STATUS_BAR_TRANSIENT, STATUS_BAR_TRANSLUCENT, STATUS_BAR_TRANSPARENT, STATUS_BAR_UNHIDE, STATUS_BAR_VISIBLE, SYSTEM_UI_CLEARABLE_FLAGS, SYSTEM_UI_FLAG_FULLSCREEN, SYSTEM_UI_FLAG_HIDE_NAVIGATION, SYSTEM_UI_FLAG_IMMERSIVE, SYSTEM_UI_FLAG_IMMERSIVE_STICKY, SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN, SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION, SYSTEM_UI_FLAG_LAYOUT_STABLE, SYSTEM_UI_FLAG_LIGHT_STATUS_BAR, SYSTEM_UI_FLAG_LOW_PROFILE, SYSTEM_UI_FLAG_VISIBLE, SYSTEM_UI_LAYOUT_FLAGS, SYSTEM_UI_TRANSPARENT, TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_GRAVITY, TEXT_ALIGNMENT_INHERIT, TEXT_ALIGNMENT_TEXT_END, TEXT_ALIGNMENT_TEXT_START, TEXT_ALIGNMENT_VIEW_END, TEXT_ALIGNMENT_VIEW_START, TEXT_DIRECTION_ANY_RTL, TEXT_DIRECTION_FIRST_STRONG, TEXT_DIRECTION_FIRST_STRONG_LTR, TEXT_DIRECTION_FIRST_STRONG_RTL, TEXT_DIRECTION_INHERIT, TEXT_DIRECTION_LOCALE, TEXT_DIRECTION_LTR, TEXT_DIRECTION_RTL, TRANSLATION_X, TRANSLATION_Y, TRANSLATION_Z, VIEW_LOG_TAG, VISIBLE, WINDOW_FOCUSED_STATE_SET, X, Y, Z
Constructor and Description |
---|
NotificationStackScrollLayout(Context context) |
NotificationStackScrollLayout(Context context,
AttributeSet attrs) |
NotificationStackScrollLayout(Context context,
AttributeSet attrs,
int defStyleAttr) |
NotificationStackScrollLayout(Context context,
AttributeSet attrs,
int defStyleAttr,
int defStyleRes) |
Modifier and Type | Method and Description |
---|---|
void |
cancelExpandHelper() |
boolean |
canChildBeDismissed(View v) |
boolean |
canChildBeExpanded(View v) |
void |
changeViewPosition(View child,
int newIndex)
Change the position of child to a new location
|
void |
clearChildFocus(View child)
Called when a child of this parent is giving up focus
|
void |
closeControlsIfOutsideTouch(MotionEvent ev) |
void |
computeScroll()
Called by a parent to request that a child update its values for mScrollX
and mScrollY if necessary.
|
void |
dismissViewAnimated(View child,
Runnable endRunnable,
int delay,
long duration) |
void |
expansionStateChanged(boolean isExpanding) |
void |
forceNoOverlappingRendering(boolean force) |
void |
generateAddAnimation(View child,
boolean fromMoreCard)
Generate an animation for an added child view.
|
void |
generateChildOrderChangedEvent() |
void |
generateHeadsUpAnimation(com.android.systemui.statusbar.ExpandableNotificationRow row,
boolean isHeadsUp) |
com.android.systemui.statusbar.ActivatableNotificationView |
getActivatedChild() |
float |
getAppearFraction(float height) |
float |
getBackgroundFadeAmount() |
float |
getBottomMostNotificationBottom() |
int |
getBottomStackPeekSize() |
int |
getBottomStackSlowDownHeight() |
com.android.systemui.statusbar.ExpandableView |
getChildAtPosition(float touchX,
float touchY) |
View |
getChildAtPosition(MotionEvent ev) |
com.android.systemui.statusbar.ExpandableView |
getChildAtRawPosition(float touchX,
float touchY) |
int |
getChildLocation(View child)
Returns the location the given child is currently rendered at.
|
com.android.systemui.statusbar.ExpandableView |
getClosestChildAtRawPosition(float touchX,
float touchY) |
int |
getContentHeight() |
float |
getCurrentOverScrollAmount(boolean top) |
float |
getCurrentOverScrolledPixels(boolean top) |
int |
getDismissViewHeight() |
int |
getEmptyBottomMargin() |
int |
getEmptyShadeViewHeight() |
float |
getFalsingThresholdFactor() |
int |
getFirstChildIntrinsicHeight() |
com.android.systemui.statusbar.ExpandableView |
getFirstChildNotGone() |
int |
getFirstItemMinHeight() |
View |
getHostView() |
int |
getIntrinsicPadding() |
float |
getKeyguardBottomStackSize() |
View |
getLastChildNotGone() |
int |
getLayoutMinHeight() |
int |
getMaxExpandHeight(com.android.systemui.statusbar.ExpandableView view) |
int |
getNotGoneChildCount() |
float |
getNotificationsTopY() |
int |
getPeekHeight() |
float |
getStackTranslation() |
int |
getTopPadding() |
float |
getTopPaddingOverflow() |
com.android.systemui.statusbar.ExpandableView |
getViewBeforeView(com.android.systemui.statusbar.ExpandableView view) |
void |
goToFullShade(long delay) |
boolean |
hasOverlappingRendering()
Returns whether this View has content which overlaps.
|
boolean |
isAddOrRemoveAnimationPending() |
boolean |
isAntiFalsingNeeded() |
boolean |
isBelowLastNotification(float touchX,
float touchY) |
boolean |
isDismissViewNotGone() |
boolean |
isDismissViewVisible() |
boolean |
isExpanded() |
boolean |
isInContentBounds(float y) |
static boolean |
isPinnedHeadsUp(View v) |
boolean |
isScrolledToBottom() |
boolean |
isScrolledToTop() |
void |
lockScrollTo(View v)
Like
ScrollContainer.scrollTo(View) , but keeps the scroll locked until the user
scrolls, or loses focus or is detached. |
void |
notifyGroupChildAdded(View row) |
void |
notifyGroupChildRemoved(View row,
ViewGroup childrenContainer) |
WindowInsets |
onApplyWindowInsets(WindowInsets insets)
Called when the view should apply
WindowInsets according to its internal policy. |
void |
onBeginDrag(View v) |
void |
onChildAnimationFinished() |
void |
onChildDismissed(View v) |
void |
onChildSnappedBack(View animView,
float targetLeft)
Called when the child is snapped to a position.
|
protected void |
onConfigurationChanged(Configuration newConfig)
Called when the current configuration of the resources being used
by the application have changed.
|
void |
onDragCancelled(View v) |
protected void |
onDraw(Canvas canvas)
Implement this to do your drawing.
|
void |
onExpansionStarted() |
void |
onExpansionStopped() |
void |
onGearTouched(com.android.systemui.statusbar.ExpandableNotificationRow row,
int x,
int y)
Called when the gear behind a notification is touched.
|
void |
onGoToKeyguard() |
void |
onGroupCreatedFromChildren(NotificationGroupManager.NotificationGroup group)
A group of children just received a summary notification and should therefore become
children of it.
|
void |
onGroupExpansionChanged(com.android.systemui.statusbar.ExpandableNotificationRow changedRow,
boolean expanded)
The expansion of a group has changed.
|
void |
onGroupsChanged()
The groups have changed.
|
void |
onHeightChanged(com.android.systemui.statusbar.ExpandableView view,
boolean needsAnimation) |
void |
onInitializeAccessibilityEventInternal(AccessibilityEvent event) |
void |
onInitializeAccessibilityNodeInfoInternal(AccessibilityNodeInfo info) |
boolean |
onInterceptTouchEvent(MotionEvent ev)
Implement this method to intercept all touch screen motion events.
|
protected void |
onLayout(boolean changed,
int l,
int t,
int r,
int b)
Called from layout when this view should
assign a size and position to each of its children.
|
protected void |
onMeasure(int widthMeasureSpec,
int heightMeasureSpec)
Measure the view and its content to determine the measured width and the
measured height.
|
protected void |
onOverScrolled(int scrollX,
int scrollY,
boolean clampedX,
boolean clampedY)
Called by
View.overScrollBy(int, int, int, int, int, int, int, int, boolean) to
respond to the results of an over-scroll operation. |
void |
onPanelTrackingStarted() |
void |
onPanelTrackingStopped() |
void |
onReset(com.android.systemui.statusbar.ExpandableView view)
Called when the view is reset and therefore the height will change abruptly
|
void |
onSettingsIconRowReset(com.android.systemui.statusbar.ExpandableNotificationRow row)
Called when a notification is slid back over the gear.
|
boolean |
onTouchEvent(MotionEvent ev)
Implement this method to handle touch screen motion events.
|
void |
onViewAdded(View child)
Called when a new child is added to this ViewGroup.
|
void |
onViewRemoved(View child)
Called when a child view is removed from this ViewGroup.
|
void |
onWindowFocusChanged(boolean hasWindowFocus)
Called when the window containing this view gains or loses focus.
|
protected boolean |
overScrollBy(int deltaX,
int deltaY,
int scrollX,
int scrollY,
int scrollRangeX,
int scrollRangeY,
int maxOverScrollX,
int maxOverScrollY,
boolean isTouchEvent)
Scroll the view with standard behavior for scrolling beyond the normal
content boundaries.
|
boolean |
performAccessibilityActionInternal(int action,
Bundle arguments) |
static void |
performDismiss(View v,
NotificationGroupManager groupManager,
boolean fromAccessibility) |
void |
removeLongPressCallback() |
void |
removeViewStateForView(View view)
Remove the a given view from the viewstate.
|
void |
requestDisallowDismiss()
Request that the view does not dismiss for the current touch.
|
void |
requestDisallowInterceptTouchEvent(boolean disallowIntercept)
Called when a child does not want this parent and its ancestors to
intercept touch events with
ViewGroup.onInterceptTouchEvent(MotionEvent) . |
void |
requestDisallowLongPress()
Request that the view does not perform long press for the current touch.
|
void |
resetExposedGearView(boolean animate,
boolean force) |
void |
resetScrollPosition() |
void |
runAfterAnimationFinished(Runnable runnable) |
boolean |
scrollTo(View v)
Request that the view is made visible by scrolling to it.
|
void |
setActivatedChild(com.android.systemui.statusbar.ActivatableNotificationView activatedChild)
|
void |
setAlpha(float alpha)
Sets the opacity of the view to a value from 0 to 1, where 0 means the view is
completely transparent and 1 means the view is completely opaque.
|
void |
setAnimationRunning(boolean animationRunning) |
void |
setAnimationsEnabled(boolean animationsEnabled) |
void |
setBackgroundBottom(int bottom) |
void |
setChildLocationsChangedListener(NotificationStackScrollLayout.OnChildLocationsChangedListener listener) |
void |
setChildTransferInProgress(boolean childTransferInProgress) |
void |
setDark(boolean dark,
boolean animate,
PointF touchWakeUpScreenLocation)
|
void |
setDimmed(boolean dimmed,
boolean animate)
|
void |
setDismissAllInProgress(boolean dismissAllInProgress) |
void |
setDismissView(com.android.systemui.statusbar.DismissView dismissView) |
void |
setDrawBackgroundAsSrc(boolean asSrc) |
void |
setEmptyShadeView(com.android.systemui.statusbar.EmptyShadeView emptyShadeView) |
void |
setExpandedHeight(float height)
Update the height of the panel.
|
void |
setExpandingEnabled(boolean enable) |
void |
setExpansionCancelled(View v) |
void |
setFadingOut(boolean fadingOut) |
void |
setFinishScrollingCallback(Runnable runnable) |
void |
setGroupManager(NotificationGroupManager groupManager) |
void |
setHeadsUpBoundaries(int height,
int bottomBarHeight)
Set the boundary for the bottom heads up position.
|
void |
setHeadsUpManager(HeadsUpManager headsUpManager) |
void |
setHideSensitive(boolean hideSensitive,
boolean animate) |
void |
setIntrinsicPadding(int intrinsicPadding) |
void |
setLongPressListener(SwipeHelper.LongPressListener listener) |
void |
setOnEmptySpaceClickListener(NotificationStackScrollLayout.OnEmptySpaceClickListener listener) |
void |
setOnHeightChangedListener(com.android.systemui.statusbar.ExpandableView.OnHeightChangedListener mOnHeightChangedListener) |
void |
setOverflowContainer(com.android.systemui.statusbar.NotificationOverflowContainer overFlowContainer) |
void |
setOverScrollAmount(float amount,
boolean onTop,
boolean animate)
Set the effective overScroll amount which will be directly reflected in the layout.
|
void |
setOverScrollAmount(float amount,
boolean onTop,
boolean animate,
boolean cancelAnimators)
Set the effective overScroll amount which will be directly reflected in the layout.
|
void |
setOverScrollAmount(float amount,
boolean onTop,
boolean animate,
boolean cancelAnimators,
boolean isRubberbanded)
Set the effective overScroll amount which will be directly reflected in the layout.
|
void |
setOverScrolledPixels(float numPixels,
boolean onTop,
boolean animate)
Set the amount of overScrolled pixels which will force the view to apply a rubber-banded
overscroll effect based on numPixels.
|
void |
setOverscrollTopChangedListener(NotificationStackScrollLayout.OnOverscrollTopChangedListener overscrollTopChangedListener) |
void |
setOwnScrollY(int ownScrollY) |
void |
setParentFadingOut(boolean fadingOut) |
void |
setPhoneStatusBar(PhoneStatusBar phoneStatusBar) |
void |
setPulsing(boolean pulsing) |
void |
setQsContainer(ViewGroup qsContainer) |
void |
setQsExpanded(boolean qsExpanded) |
void |
setScrimController(ScrimController scrimController) |
void |
setScrollingEnabled(boolean enable) |
void |
setShadeExpanded(boolean shadeExpanded) |
void |
setTrackingHeadsUp(boolean trackingHeadsUp) |
void |
setUserExpandedChild(View v,
boolean userExpanded) |
void |
setUserLockedChild(View v,
boolean userLocked) |
boolean |
shouldDelayChildPressedState()
Return true if the pressed state should be delayed for children or descendants of this
ViewGroup.
|
void |
snapViewIfNeeded(com.android.systemui.statusbar.ExpandableNotificationRow child) |
void |
updateDismissView(boolean visible) |
void |
updateEmptyShadeView(boolean visible) |
void |
updateOverflowContainerVisibility(boolean visible) |
void |
updateSpeedBumpIndex(int newIndex) |
boolean |
updateSwipeProgress(View animView,
boolean dismissable,
float swipeProgress)
Updates the swipe progress on a child.
|
void |
updateTopPadding(float qsHeight,
boolean animate,
boolean ignoreIntrinsicPadding)
Updates the top padding of the notifications, taking
getIntrinsicPadding() into
account. |
addChildrenForAccessibility, addFocusables, addStatesFromChildren, addTouchables, addTransientView, addView, addView, addView, addView, addView, addViewInLayout, addViewInLayout, attachLayoutAnimationParameters, attachViewToParent, bringChildToFront, buildTouchDispatchChildList, canAnimate, captureTransitioningViews, checkLayoutParams, childDrawableStateChanged, childHasTransientStateChanged, cleanupLayoutState, clearDisappearingChildren, clearFocus, createSnapshot, damageChild, damageChildDeferred, damageChildInParent, debug, detachAllViewsFromParent, detachViewFromParent, detachViewFromParent, detachViewsFromParent, dispatchActivityResult, dispatchApplyWindowInsets, dispatchConfigurationChanged, dispatchDisplayHint, dispatchDragEvent, dispatchDraw, dispatchDrawableHotspotChanged, dispatchFinishTemporaryDetach, dispatchFreezeSelfOnly, dispatchGenericFocusedEvent, dispatchGenericPointerEvent, dispatchGetDisplayList, dispatchHoverEvent, dispatchKeyEvent, dispatchKeyEventPreIme, dispatchKeyShortcutEvent, dispatchPopulateAccessibilityEventInternal, dispatchProvideStructure, dispatchRestoreInstanceState, dispatchSaveInstanceState, dispatchSetActivated, dispatchSetPressed, dispatchSetSelected, dispatchStartTemporaryDetach, dispatchSystemUiVisibilityChanged, dispatchThawSelfOnly, dispatchTouchEvent, dispatchTrackballEvent, dispatchUnhandledMove, dispatchVisibilityChanged, dispatchWindowFocusChanged, dispatchWindowSystemUiVisiblityChanged, dispatchWindowVisibilityChanged, drawableStateChanged, drawChild, encodeProperties, endViewTransition, findFocus, findNamedViews, findViewByAccessibilityIdTraversal, findViewByPredicateTraversal, findViewsWithText, findViewTraversal, findViewWithTagTraversal, focusableViewAvailable, focusSearch, gatherTransparentRegion, generateDefaultLayoutParams, generateLayoutParams, generateLayoutParams, getAccessibilityClassName, getChildAt, getChildCount, getChildDrawingOrder, getChildMeasureSpec, getChildStaticTransformation, getChildVisibleRect, getChildVisibleRect, getClipChildren, getClipToPadding, getDescendantFocusability, getFocusedChild, getLayoutAnimation, getLayoutAnimationListener, getLayoutMode, getLayoutTransition, getNestedScrollAxes, getOverlay, getPersistentDrawingCache, getTouchscreenBlocksFocus, getTransientView, getTransientViewCount, getTransientViewIndex, hasFocus, hasFocusable, hasHoveredChild, hasTransientState, indexOfChild, internalSetPadding, invalidateChild, invalidateChildInParent, isAlwaysDrawnWithCacheEnabled, isAnimationCacheEnabled, isChildrenDrawingOrderEnabled, isChildrenDrawnWithCacheEnabled, isLayoutSuppressed, isMotionEventSplittingEnabled, isShowingContextMenuWithCoords, isTransformedTouchPointInView, isTransitionGroup, jumpDrawablesToCurrentState, layout, makeOptionalFitsSystemWindows, measureChild, measureChildren, measureChildWithMargins, notifySubtreeAccessibilityStateChanged, offsetChildrenTopAndBottom, offsetDescendantRectToMyCoords, offsetRectIntoDescendantCoords, onAttachedToWindow, onChildVisibilityChanged, onCreateDrawableState, onDebugDraw, onDebugDrawMargins, onDetachedFromWindow, onInterceptHoverEvent, onNestedFling, onNestedPreFling, onNestedPrePerformAccessibilityAction, onNestedPreScroll, onNestedScroll, onNestedScrollAccepted, onRequestFocusInDescendants, onRequestSendAccessibilityEvent, onRequestSendAccessibilityEventInternal, onResolvePointerIcon, onSetLayoutParams, onStartNestedScroll, onStopNestedScroll, recomputeViewAttributes, removeAllViews, removeAllViewsInLayout, removeDetachedView, removeTransientView, removeView, removeViewAt, removeViewInLayout, removeViews, removeViewsInLayout, requestChildFocus, requestChildRectangleOnScreen, requestFocus, requestSendAccessibilityEvent, requestTransitionStart, requestTransparentRegion, resetResolvedDrawables, resetResolvedLayoutDirection, resetResolvedPadding, resetResolvedTextAlignment, resetResolvedTextDirection, resolveDrawables, resolveLayoutDirection, resolveLayoutParams, resolvePadding, resolveRtlPropertiesIfNeeded, resolveTextAlignment, resolveTextDirection, scheduleLayoutAnimation, setAddStatesFromChildren, setAlwaysDrawnWithCacheEnabled, setAnimationCacheEnabled, setChildrenDrawingCacheEnabled, setChildrenDrawingOrderEnabled, setChildrenDrawnWithCacheEnabled, setClipChildren, setClipToPadding, setDescendantFocusability, setLayoutAnimation, setLayoutAnimationListener, setLayoutMode, setLayoutTransition, setMotionEventSplittingEnabled, setOnHierarchyChangeListener, setPersistentDrawingCache, setStaticTransformationsEnabled, setTouchscreenBlocksFocus, setTransitionGroup, showContextMenuForChild, showContextMenuForChild, startActionModeForChild, startActionModeForChild, startLayoutAnimation, startViewTransition, suppressLayout, transformPointToViewLocal, updateViewLayout
addFocusables, addFrameMetricsListener, addOnAttachStateChangeListener, addOnLayoutChangeListener, animate, announceForAccessibility, applyDrawableToTransparentRegion, awakenScrollBars, awakenScrollBars, awakenScrollBars, bringToFront, buildDrawingCache, buildDrawingCache, buildLayer, callOnClick, cancelDragAndDrop, cancelLongPress, cancelPendingInputEvents, canHaveDisplayList, canResolveLayoutDirection, canResolveTextAlignment, canResolveTextDirection, canScrollHorizontally, canScrollVertically, checkInputConnectionProxy, clearAccessibilityFocus, clearAnimation, combineMeasuredStates, computeFitSystemWindows, computeHorizontalScrollExtent, computeHorizontalScrollOffset, computeHorizontalScrollRange, computeOpaqueFlags, computeSystemWindowInsets, computeVerticalScrollExtent, computeVerticalScrollOffset, computeVerticalScrollRange, createAccessibilityNodeInfo, createAccessibilityNodeInfoInternal, createContextMenu, damageInParent, debug, debugIndent, destroyDrawingCache, destroyHardwareResources, dispatchGenericMotionEvent, dispatchNestedFling, dispatchNestedPreFling, dispatchNestedPrePerformAccessibilityAction, dispatchNestedPreScroll, dispatchNestedScroll, dispatchPointerEvent, dispatchPopulateAccessibilityEvent, draw, drawableHotspotChanged, encode, findViewById, findViewByPredicate, findViewByPredicateInsideOut, findViewWithTag, fitsSystemWindows, fitSystemWindows, focusSearch, forceHasOverlappingRendering, forceLayout, generateViewId, getAccessibilityDelegate, getAccessibilityLiveRegion, getAccessibilityNodeProvider, getAccessibilitySelectionEnd, getAccessibilitySelectionStart, getAccessibilityTraversalAfter, getAccessibilityTraversalBefore, getAccessibilityViewId, getAccessibilityWindowId, getAlpha, getAnimation, getApplicationWindowToken, getBackground, getBackgroundTintList, getBackgroundTintMode, getBaseline, getBottom, getBottomFadingEdgeStrength, getBottomPaddingOffset, getBoundsOnScreen, getBoundsOnScreen, getCameraDistance, getClipBounds, getClipBounds, getClipToOutline, getContentDescription, getContext, getContextMenuInfo, getDefaultSize, getDisplay, getDrawableState, getDrawingCache, getDrawingCache, getDrawingCacheBackgroundColor, getDrawingCacheQuality, getDrawingRect, getDrawingTime, getElevation, getFadeHeight, getFadeTop, getFilterTouchesWhenObscured, getFitsSystemWindows, getFocusables, getFocusedRect, getForeground, getForegroundGravity, getForegroundTintList, getForegroundTintMode, getGlobalVisibleRect, getGlobalVisibleRect, getHandler, getHardwareRenderer, getHasOverlappingRendering, getHeight, getHitRect, getHorizontalFadingEdgeLength, getHorizontalScrollbarHeight, getHorizontalScrollFactor, getHotspotBounds, getId, getImportantForAccessibility, getInverseMatrix, getIterableTextForAccessibility, getIteratorForGranularity, getKeepScreenOn, getKeyDispatcherState, getLabelFor, getLayerType, getLayoutDirection, getLayoutParams, getLeft, getLeftFadingEdgeStrength, getLeftPaddingOffset, getLocalVisibleRect, getLocationInSurface, getLocationInWindow, getLocationOnScreen, getLocationOnScreen, getMatrix, getMeasuredHeight, getMeasuredHeightAndState, getMeasuredState, getMeasuredWidth, getMeasuredWidthAndState, getMinimumHeight, getMinimumWidth, getNextFocusDownId, getNextFocusForwardId, getNextFocusLeftId, getNextFocusRightId, getNextFocusUpId, getOnFocusChangeListener, getOpticalInsets, getOutlineProvider, getOutsets, getOverScrollMode, getPaddingBottom, getPaddingEnd, getPaddingLeft, getPaddingRight, getPaddingStart, getPaddingTop, getParent, getParentForAccessibility, getPivotX, getPivotY, getPointerIcon, getRawLayoutDirection, getRawTextAlignment, getRawTextDirection, getResources, getRevealOnFocusHint, getRight, getRightFadingEdgeStrength, getRightPaddingOffset, getRootView, getRootWindowInsets, getRotation, getRotationX, getRotationY, getScaleX, getScaleY, getScrollBarDefaultDelayBeforeFade, getScrollBarFadeDuration, getScrollBarSize, getScrollBarStyle, getScrollIndicators, getScrollX, getScrollY, getSolidColor, getStateListAnimator, getSuggestedMinimumHeight, getSuggestedMinimumWidth, getSystemUiVisibility, getTag, getTag, getTextAlignment, getTextDirection, getTop, getTopFadingEdgeStrength, getTopPaddingOffset, getTouchables, getTouchDelegate, getTransitionAlpha, getTransitionName, getTranslationX, getTranslationY, getTranslationZ, getVerticalFadingEdgeLength, getVerticalScrollbarPosition, getVerticalScrollbarWidth, getVerticalScrollFactor, getViewRootImpl, getViewTreeObserver, getVisibility, getWidth, getWindowAttachCount, getWindowDisplayFrame, getWindowId, getWindowSystemUiVisibility, getWindowToken, getWindowVisibility, getWindowVisibleDisplayFrame, getX, getY, getZ, handleScrollBarDragging, hasNestedScrollingParent, hasOnClickListeners, hasOpaqueScrollbars, hasShadow, hasWindowFocus, includeForAccessibility, inflate, initializeFadingEdge, initializeFadingEdgeInternal, initializeScrollbars, initializeScrollbarsInternal, invalidate, invalidate, invalidate, invalidateDrawable, invalidateOutline, invalidateParentCaches, invalidateParentIfNeeded, invalidateParentIfNeededAndWasQuickRejected, isAccessibilityFocused, isAccessibilitySelectionExtendable, isActionableForAccessibility, isActivated, isAssistBlocked, isAttachedToWindow, isClickable, isContextClickable, isDirty, isDrawingCacheEnabled, isDuplicateParentStateEnabled, isEnabled, isFocusable, isFocusableInTouchMode, isFocused, isForegroundInsidePadding, isHapticFeedbackEnabled, isHardwareAccelerated, isHorizontalFadingEdgeEnabled, isHorizontalScrollBarEnabled, isHovered, isImportantForAccessibility, isInEditMode, isInLayout, isInScrollingContainer, isInTouchMode, isLaidOut, isLayoutDirectionInherited, isLayoutDirectionResolved, isLayoutModeOptical, isLayoutRequested, isLayoutRtl, isLongClickable, isNestedScrollingEnabled, isOpaque, isPaddingOffsetRequired, isPaddingRelative, isPressed, isRootNamespace, isSaveEnabled, isSaveFromParentEnabled, isScrollbarFadingEnabled, isScrollContainer, isSelected, isShown, isSoundEffectsEnabled, isTemporarilyDetached, isTextAlignmentInherited, isTextAlignmentResolved, isTextDirectionInherited, isTextDirectionResolved, isVerticalFadingEdgeEnabled, isVerticalScrollBarEnabled, isVerticalScrollBarHidden, isVisibleToUser, isVisibleToUser, measure, mergeDrawableStates, notifySubtreeAccessibilityStateChangedIfNeeded, notifyViewAccessibilityStateChangedIfNeeded, offsetLeftAndRight, offsetTopAndBottom, onActivityResult, onAnimationEnd, onAnimationStart, onCancelPendingInputEvents, onCheckIsTextEditor, onCloseSystemDialogs, onCreateContextMenu, onCreateInputConnection, onDetachedFromWindowInternal, onDisplayHint, onDragEvent, onDrawForeground, onDrawHorizontalScrollBar, onDrawScrollBars, onDrawVerticalScrollBar, onFilterTouchEventForSecurity, onFinishInflate, onFinishTemporaryDetach, onFocusChanged, onFocusLost, onGenericMotionEvent, onHoverChanged, onHoverEvent, onInitializeAccessibilityEvent, onInitializeAccessibilityNodeInfo, onKeyDown, onKeyLongPress, onKeyMultiple, onKeyPreIme, onKeyShortcut, onKeyUp, onPopulateAccessibilityEvent, onPopulateAccessibilityEventInternal, onProvideStructure, onProvideVirtualStructure, onRenderNodeDetached, onResolveDrawables, onRestoreInstanceState, onRtlPropertiesChanged, onSaveInstanceState, onScreenStateChanged, onScrollChanged, onSetAlpha, onSizeChanged, onStartTemporaryDetach, onTrackballEvent, onVisibilityAggregated, onVisibilityChanged, onWindowSystemUiVisibilityChanged, onWindowVisibilityChanged, outputDirtyFlags, performAccessibilityAction, performButtonActionOnTouchDown, performClick, performContextClick, performContextClick, performHapticFeedback, performHapticFeedback, performLongClick, performLongClick, playSoundEffect, pointInView, post, postDelayed, postInvalidate, postInvalidate, postInvalidateDelayed, postInvalidateDelayed, postInvalidateOnAnimation, postInvalidateOnAnimation, postOnAnimation, postOnAnimationDelayed, recomputePadding, refreshDrawableState, removeCallbacks, removeFrameMetricsListener, removeOnAttachStateChangeListener, removeOnLayoutChangeListener, requestAccessibilityFocus, requestApplyInsets, requestFitSystemWindows, requestFocus, requestFocus, requestFocusFromTouch, requestKeyboardShortcuts, requestLayout, requestRectangleOnScreen, requestRectangleOnScreen, requestUnbufferedDispatch, resetPaddingToInitialValues, resetRtlProperties, resolveSize, resolveSizeAndState, restoreHierarchyState, saveHierarchyState, scheduleDrawable, scrollBy, scrollTo, sendAccessibilityEvent, sendAccessibilityEventInternal, sendAccessibilityEventUnchecked, sendAccessibilityEventUncheckedInternal, setAccessibilityDelegate, setAccessibilityLiveRegion, setAccessibilitySelection, setAccessibilityTraversalAfter, setAccessibilityTraversalBefore, setActivated, setAnimation, setAnimationMatrix, setAssistBlocked, setBackground, setBackgroundColor, setBackgroundDrawable, setBackgroundResource, setBackgroundTintList, setBackgroundTintMode, setBottom, setCameraDistance, setClickable, setClipBounds, setClipToOutline, setContentDescription, setContextClickable, setDisabledSystemUiVisibility, setDrawingCacheBackgroundColor, setDrawingCacheEnabled, setDrawingCacheQuality, setDuplicateParentStateEnabled, setElevation, setEnabled, setFadingEdgeLength, setFilterTouchesWhenObscured, setFitsSystemWindows, setFocusable, setFocusableInTouchMode, setForeground, setForegroundGravity, setForegroundTintList, setForegroundTintMode, setFrame, setHapticFeedbackEnabled, setHasTransientState, setHorizontalFadingEdgeEnabled, setHorizontalScrollBarEnabled, setHovered, setId, setImportantForAccessibility, setIsRootNamespace, setKeepScreenOn, setLabelFor, setLayerPaint, setLayerType, setLayoutDirection, setLayoutParams, setLeft, setLeftTopRightBottom, setLongClickable, setMeasuredDimension, setMinimumHeight, setMinimumWidth, setNestedScrollingEnabled, setNextFocusDownId, setNextFocusForwardId, setNextFocusLeftId, setNextFocusRightId, setNextFocusUpId, setOnApplyWindowInsetsListener, setOnClickListener, setOnContextClickListener, setOnCreateContextMenuListener, setOnDragListener, setOnFocusChangeListener, setOnGenericMotionListener, setOnHoverListener, setOnKeyListener, setOnLongClickListener, setOnScrollChangeListener, setOnSystemUiVisibilityChangeListener, setOnTouchListener, setOpticalInsets, setOutlineProvider, setOverScrollMode, setPadding, setPaddingRelative, setPivotX, setPivotY, setPointerIcon, setPressed, setRevealClip, setRevealOnFocusHint, setRight, setRotation, setRotationX, setRotationY, setSaveEnabled, setSaveFromParentEnabled, setScaleX, setScaleY, setScrollBarDefaultDelayBeforeFade, setScrollBarFadeDuration, setScrollbarFadingEnabled, setScrollBarSize, setScrollBarStyle, setScrollContainer, setScrollIndicators, setScrollIndicators, setScrollX, setScrollY, setSelected, setSoundEffectsEnabled, setStateListAnimator, setSystemUiVisibility, setTag, setTag, setTagInternal, setTextAlignment, setTextDirection, setTop, setTouchDelegate, setTransitionAlpha, setTransitionName, setTransitionVisibility, setTranslationX, setTranslationY, setTranslationZ, setVerticalFadingEdgeEnabled, setVerticalScrollBarEnabled, setVerticalScrollbarPosition, setVisibility, setWillNotCacheDrawing, setWillNotDraw, setX, setY, setZ, showContextMenu, showContextMenu, startActionMode, startActionMode, startActivityForResult, startAnimation, startDrag, startDragAndDrop, startMovingTask, startNestedScroll, stopNestedScroll, toGlobalMotionEvent, toLocalMotionEvent, toString, transformFromViewToWindowSpace, transformMatrixToGlobal, transformMatrixToLocal, unscheduleDrawable, unscheduleDrawable, updateDisplayListIfDirty, updateDragShadow, verifyDrawable, willNotCacheDrawing, willNotDraw
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
canResolveLayoutDirection, canResolveTextAlignment, canResolveTextDirection, createContextMenu, getLayoutDirection, getParent, getParentForAccessibility, getTextAlignment, getTextDirection, isLayoutDirectionResolved, isLayoutRequested, isTextAlignmentResolved, isTextDirectionResolved, requestFitSystemWindows, requestLayout
public static final float BACKGROUND_ALPHA_DIMMED
protected ViewGroup mQsContainer
public NotificationStackScrollLayout(Context context)
public NotificationStackScrollLayout(Context context, AttributeSet attrs)
public NotificationStackScrollLayout(Context context, AttributeSet attrs, int defStyleAttr)
public NotificationStackScrollLayout(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes)
public void onGearTouched(com.android.systemui.statusbar.ExpandableNotificationRow row, int x, int y)
com.android.systemui.statusbar.NotificationSettingsIconRow.SettingsIconRowListener
onGearTouched
in interface com.android.systemui.statusbar.NotificationSettingsIconRow.SettingsIconRowListener
public void onSettingsIconRowReset(com.android.systemui.statusbar.ExpandableNotificationRow row)
com.android.systemui.statusbar.NotificationSettingsIconRow.SettingsIconRowListener
onSettingsIconRowReset
in interface com.android.systemui.statusbar.NotificationSettingsIconRow.SettingsIconRowListener
protected void onDraw(Canvas canvas)
View
public void setDrawBackgroundAsSrc(boolean asSrc)
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)
View
Measure the view and its content to determine the measured width and the
measured height. This method is invoked by View.measure(int, int)
and
should be overridden by subclasses to provide accurate and efficient
measurement of their contents.
CONTRACT: When overriding this method, you
must call View.setMeasuredDimension(int, int)
to store the
measured width and height of this view. Failure to do so will trigger an
IllegalStateException
, thrown by
View.measure(int, int)
. Calling the superclass'
View.onMeasure(int, int)
is a valid use.
The base class implementation of measure defaults to the background size,
unless a larger size is allowed by the MeasureSpec. Subclasses should
override View.onMeasure(int, int)
to provide better measurements of
their content.
If this method is overridden, it is the subclass's responsibility to make
sure the measured height and width are at least the view's minimum height
and width (View.getSuggestedMinimumHeight()
and
View.getSuggestedMinimumWidth()
).
onMeasure
in class View
widthMeasureSpec
- horizontal space requirements as imposed by the parent.
The requirements are encoded with
View.MeasureSpec
.heightMeasureSpec
- vertical space requirements as imposed by the parent.
The requirements are encoded with
View.MeasureSpec
.View.getMeasuredWidth()
,
View.getMeasuredHeight()
,
View.setMeasuredDimension(int, int)
,
View.getSuggestedMinimumHeight()
,
View.getSuggestedMinimumWidth()
,
View.MeasureSpec.getMode(int)
,
View.MeasureSpec.getSize(int)
protected void onLayout(boolean changed, int l, int t, int r, int b)
View
public void updateSpeedBumpIndex(int newIndex)
public void setChildLocationsChangedListener(NotificationStackScrollLayout.OnChildLocationsChangedListener listener)
public int getChildLocation(View child)
child
- the child to get the location forStackViewState
's LOCATION_*
constantspublic int getTopPadding()
public void setExpandedHeight(float height)
height
- the expanded height of the panelpublic float getAppearFraction(float height)
height
- the height of the panelpublic float getStackTranslation()
public int getFirstItemMinHeight()
public int getBottomStackPeekSize()
public int getBottomStackSlowDownHeight()
public void setLongPressListener(SwipeHelper.LongPressListener listener)
public void setQsContainer(ViewGroup qsContainer)
public void onChildDismissed(View v)
onChildDismissed
in interface SwipeHelper.Callback
public static void performDismiss(View v, NotificationGroupManager groupManager, boolean fromAccessibility)
public void onChildSnappedBack(View animView, float targetLeft)
SwipeHelper.Callback
onChildSnappedBack
in interface SwipeHelper.Callback
animView
- the view that was snapped.targetLeft
- the left position the view was snapped to.public boolean updateSwipeProgress(View animView, boolean dismissable, float swipeProgress)
SwipeHelper.Callback
updateSwipeProgress
in interface SwipeHelper.Callback
public void onBeginDrag(View v)
onBeginDrag
in interface SwipeHelper.Callback
public static boolean isPinnedHeadsUp(View v)
public void onDragCancelled(View v)
onDragCancelled
in interface SwipeHelper.Callback
public float getFalsingThresholdFactor()
getFalsingThresholdFactor
in interface SwipeHelper.Callback
public View getChildAtPosition(MotionEvent ev)
getChildAtPosition
in interface SwipeHelper.Callback
public com.android.systemui.statusbar.ExpandableView getClosestChildAtRawPosition(float touchX, float touchY)
public com.android.systemui.statusbar.ExpandableView getChildAtRawPosition(float touchX, float touchY)
getChildAtRawPosition
in interface ExpandHelper.Callback
public com.android.systemui.statusbar.ExpandableView getChildAtPosition(float touchX, float touchY)
getChildAtPosition
in interface ExpandHelper.Callback
public boolean canChildBeExpanded(View v)
canChildBeExpanded
in interface ExpandHelper.Callback
public void setUserExpandedChild(View v, boolean userExpanded)
setUserExpandedChild
in interface ExpandHelper.Callback
public void setExpansionCancelled(View v)
setExpansionCancelled
in interface ExpandHelper.Callback
public void setUserLockedChild(View v, boolean userLocked)
setUserLockedChild
in interface ExpandHelper.Callback
public void expansionStateChanged(boolean isExpanding)
expansionStateChanged
in interface ExpandHelper.Callback
public int getMaxExpandHeight(com.android.systemui.statusbar.ExpandableView view)
getMaxExpandHeight
in interface ExpandHelper.Callback
public void setScrollingEnabled(boolean enable)
public void lockScrollTo(View v)
ScrollContainer
ScrollContainer.scrollTo(View)
, but keeps the scroll locked until the user
scrolls, or loses focus or is detached.lockScrollTo
in interface ScrollContainer
public boolean scrollTo(View v)
ScrollContainer
scrollTo
in interface ScrollContainer
public WindowInsets onApplyWindowInsets(WindowInsets insets)
View
WindowInsets
according to its internal policy.
This method should be overridden by views that wish to apply a policy different from or
in addition to the default behavior. Clients that wish to force a view subtree
to apply insets should call View.dispatchApplyWindowInsets(WindowInsets)
.
Clients may supply an View.OnApplyWindowInsetsListener
to a view. If one is set
it will be called during dispatch instead of this method. The listener may optionally
call this method from its own implementation if it wishes to apply the view's default
insets policy in addition to its own.
Implementations of this method should either return the insets parameter unchanged
or a new WindowInsets
cloned from the supplied insets with any insets consumed
that this view applied itself. This allows new inset types added in future platform
versions to pass through existing implementations unchanged without being erroneously
consumed.
By default if a view's fitsSystemWindows
property is set then the view will consume the system window insets and apply them
as padding for the view.
onApplyWindowInsets
in class View
insets
- Insets to applypublic void setExpandingEnabled(boolean enable)
public boolean canChildBeDismissed(View v)
canChildBeDismissed
in interface SwipeHelper.Callback
public boolean isAntiFalsingNeeded()
isAntiFalsingNeeded
in interface SwipeHelper.Callback
protected void onConfigurationChanged(Configuration newConfig)
View
Activity
mechanism of
recreating the activity instance upon a configuration change.onConfigurationChanged
in class View
newConfig
- The new resource configuration.public void dismissViewAnimated(View child, Runnable endRunnable, int delay, long duration)
public void snapViewIfNeeded(com.android.systemui.statusbar.ExpandableNotificationRow child)
public boolean onTouchEvent(MotionEvent ev)
View
If this method is used to detect click actions, it is recommended that
the actions be performed by implementing and calling
View.performClick()
. This will ensure consistent system behavior,
including:
ACTION_CLICK
when
accessibility features are enabled
onTouchEvent
in class View
ev
- The motion event.public void setFinishScrollingCallback(Runnable runnable)
public void computeScroll()
View
Scroller
object.computeScroll
in class View
protected boolean overScrollBy(int deltaX, int deltaY, int scrollX, int scrollY, int scrollRangeX, int scrollRangeY, int maxOverScrollX, int maxOverScrollY, boolean isTouchEvent)
View
View.onOverScrolled(int, int, boolean, boolean)
to respond to the
results of an over-scroll operation.
Views can use this method to handle any touch or fling-based scrolling.overScrollBy
in class View
deltaX
- Change in X in pixelsdeltaY
- Change in Y in pixelsscrollX
- Current X scroll value in pixels before applying deltaXscrollY
- Current Y scroll value in pixels before applying deltaYscrollRangeX
- Maximum content scroll range along the X axisscrollRangeY
- Maximum content scroll range along the Y axismaxOverScrollX
- Number of pixels to overscroll by in either direction
along the X axis.maxOverScrollY
- Number of pixels to overscroll by in either direction
along the Y axis.isTouchEvent
- true if this scroll operation is the result of a touch event.public void setOverScrolledPixels(float numPixels, boolean onTop, boolean animate)
numPixels
- The amount of pixels to overScroll by. These will be scaled according to
the rubber-banding logic.onTop
- Should the effect be applied on top of the scroller.animate
- Should an animation be performed.public void setOverScrollAmount(float amount, boolean onTop, boolean animate)
amount
- The amount to overScroll by.onTop
- Should the effect be applied on top of the scroller.animate
- Should an animation be performed.public void setOverScrollAmount(float amount, boolean onTop, boolean animate, boolean cancelAnimators)
amount
- The amount to overScroll by.onTop
- Should the effect be applied on top of the scroller.animate
- Should an animation be performed.cancelAnimators
- Should running animations be cancelled.public void setOverScrollAmount(float amount, boolean onTop, boolean animate, boolean cancelAnimators, boolean isRubberbanded)
amount
- The amount to overScroll by.onTop
- Should the effect be applied on top of the scroller.animate
- Should an animation be performed.cancelAnimators
- Should running animations be cancelled.isRubberbanded
- The value which will be passed to
NotificationStackScrollLayout.OnOverscrollTopChangedListener.onOverscrollTopChanged(float, boolean)
public void setOverscrollTopChangedListener(NotificationStackScrollLayout.OnOverscrollTopChangedListener overscrollTopChangedListener)
public float getCurrentOverScrollAmount(boolean top)
public float getCurrentOverScrolledPixels(boolean top)
protected void onOverScrolled(int scrollX, int scrollY, boolean clampedX, boolean clampedY)
View
View.overScrollBy(int, int, int, int, int, int, int, int, boolean)
to
respond to the results of an over-scroll operation.onOverScrolled
in class View
scrollX
- New X scroll value in pixelsscrollY
- New Y scroll value in pixelsclampedX
- True if scrollX was clamped to an over-scroll boundaryclampedY
- True if scrollY was clamped to an over-scroll boundarypublic com.android.systemui.statusbar.ExpandableView getFirstChildNotGone()
public com.android.systemui.statusbar.ExpandableView getViewBeforeView(com.android.systemui.statusbar.ExpandableView view)
public View getLastChildNotGone()
public int getNotGoneChildCount()
public int getContentHeight()
public void setBackgroundBottom(int bottom)
public void updateTopPadding(float qsHeight, boolean animate, boolean ignoreIntrinsicPadding)
getIntrinsicPadding()
into
account.qsHeight
- the top padding imposed by the quick settings panelanimate
- whether to animate the changeignoreIntrinsicPadding
- if true, getIntrinsicPadding()
is ignored and
qsHeight
is the final top paddingpublic int getLayoutMinHeight()
public int getFirstChildIntrinsicHeight()
public float getTopPaddingOverflow()
public int getPeekHeight()
public boolean onInterceptTouchEvent(MotionEvent ev)
ViewGroup
Using this function takes some care, as it has a fairly complicated
interaction with View.onTouchEvent(MotionEvent)
, and using it requires implementing
that method as well as this one in the correct way. Events will be
received in the following order:
MotionEvent.ACTION_CANCEL
, and all further
events will be delivered to your onTouchEvent() method and no longer
appear here.
onInterceptTouchEvent
in class ViewGroup
ev
- The motion event being dispatched down the hierarchy.public void setChildTransferInProgress(boolean childTransferInProgress)
public void onViewRemoved(View child)
ViewGroup
onViewRemoved
in class ViewGroup
child
- the removed child viewpublic void requestDisallowInterceptTouchEvent(boolean disallowIntercept)
ViewParent
ViewGroup.onInterceptTouchEvent(MotionEvent)
.
This parent should pass this call onto its parents. This parent must obey this request for the duration of the touch (that is, only clear the flag after this parent has received an up or a cancel.
requestDisallowInterceptTouchEvent
in interface ViewParent
requestDisallowInterceptTouchEvent
in class ViewGroup
disallowIntercept
- True if the child does not want the parent to
intercept touch events.public void onViewAdded(View child)
ViewGroup
onViewAdded
in class ViewGroup
child
- the added child viewpublic void notifyGroupChildAdded(View row)
public void setAnimationsEnabled(boolean animationsEnabled)
public boolean isAddOrRemoveAnimationPending()
public void generateAddAnimation(View child, boolean fromMoreCard)
child
- The view to be added.fromMoreCard
- Whether this add is coming from the "more" card on lockscreen.public void changeViewPosition(View child, int newIndex)
child
- the view to change the position fornewIndex
- the new indexpublic boolean isInContentBounds(float y)
public void onWindowFocusChanged(boolean hasWindowFocus)
View
onWindowFocusChanged
in class View
hasWindowFocus
- True if the window containing this view now has
focus, false otherwise.public void clearChildFocus(View child)
ViewParent
clearChildFocus
in interface ViewParent
clearChildFocus
in class ViewGroup
child
- The view that is giving up focuspublic void requestDisallowLongPress()
ScrollContainer
requestDisallowLongPress
in interface ScrollContainer
public void requestDisallowDismiss()
ScrollContainer
requestDisallowDismiss
in interface ScrollContainer
public void removeLongPressCallback()
public boolean isScrolledToTop()
isScrolledToTop
in interface ScrollAdapter
ScrollAdapter.getHostView()
is scrolled to the toppublic boolean isScrolledToBottom()
isScrolledToBottom
in interface ScrollAdapter
ScrollAdapter.getHostView()
is scrolled to the bottompublic View getHostView()
getHostView
in interface ScrollAdapter
public int getEmptyBottomMargin()
public float getKeyguardBottomStackSize()
public void onExpansionStarted()
public void onExpansionStopped()
public void onPanelTrackingStarted()
public void onPanelTrackingStopped()
public void resetScrollPosition()
public void onHeightChanged(com.android.systemui.statusbar.ExpandableView view, boolean needsAnimation)
onHeightChanged
in interface com.android.systemui.statusbar.ExpandableView.OnHeightChangedListener
view
- the view for which the height changed, or null
if just the top
padding or the padding between the elements changedneedsAnimation
- whether the view height needs to be animatedpublic void onReset(com.android.systemui.statusbar.ExpandableView view)
com.android.systemui.statusbar.ExpandableView.OnHeightChangedListener
onReset
in interface com.android.systemui.statusbar.ExpandableView.OnHeightChangedListener
view
- The view which was reset.public void setOnHeightChangedListener(com.android.systemui.statusbar.ExpandableView.OnHeightChangedListener mOnHeightChangedListener)
public void setOnEmptySpaceClickListener(NotificationStackScrollLayout.OnEmptySpaceClickListener listener)
public void onChildAnimationFinished()
public void setDimmed(boolean dimmed, boolean animate)
public void setHideSensitive(boolean hideSensitive, boolean animate)
public void setActivatedChild(com.android.systemui.statusbar.ActivatableNotificationView activatedChild)
public com.android.systemui.statusbar.ActivatableNotificationView getActivatedChild()
public void goToFullShade(long delay)
public void cancelExpandHelper()
public void setIntrinsicPadding(int intrinsicPadding)
public int getIntrinsicPadding()
public float getNotificationsTopY()
public boolean shouldDelayChildPressedState()
ViewGroup
shouldDelayChildPressedState
in class ViewGroup
public void setDark(boolean dark, boolean animate, PointF touchWakeUpScreenLocation)
public float getBackgroundFadeAmount()
public void setDismissView(com.android.systemui.statusbar.DismissView dismissView)
public void setEmptyShadeView(com.android.systemui.statusbar.EmptyShadeView emptyShadeView)
public void updateEmptyShadeView(boolean visible)
public void setOverflowContainer(com.android.systemui.statusbar.NotificationOverflowContainer overFlowContainer)
public void updateOverflowContainerVisibility(boolean visible)
public void updateDismissView(boolean visible)
public void setDismissAllInProgress(boolean dismissAllInProgress)
public boolean isDismissViewNotGone()
public boolean isDismissViewVisible()
public int getDismissViewHeight()
public int getEmptyShadeViewHeight()
public float getBottomMostNotificationBottom()
public void setPhoneStatusBar(PhoneStatusBar phoneStatusBar)
public void setGroupManager(NotificationGroupManager groupManager)
public void onGoToKeyguard()
public boolean isBelowLastNotification(float touchX, float touchY)
public void onGroupExpansionChanged(com.android.systemui.statusbar.ExpandableNotificationRow changedRow, boolean expanded)
NotificationGroupManager.OnGroupChangeListener
onGroupExpansionChanged
in interface NotificationGroupManager.OnGroupChangeListener
changedRow
- the row for which the expansion has changed, which is also the summaryexpanded
- a boolean indicating the new expanded statepublic void onGroupCreatedFromChildren(NotificationGroupManager.NotificationGroup group)
NotificationGroupManager.OnGroupChangeListener
onGroupCreatedFromChildren
in interface NotificationGroupManager.OnGroupChangeListener
group
- the group createdpublic void onInitializeAccessibilityEventInternal(AccessibilityEvent event)
onInitializeAccessibilityEventInternal
in class View
Note: Called from the default {@link AccessibilityDelegate}.
public void onInitializeAccessibilityNodeInfoInternal(AccessibilityNodeInfo info)
onInitializeAccessibilityNodeInfoInternal
in class ViewGroup
Note: Called from the default {@link AccessibilityDelegate}.
public boolean performAccessibilityActionInternal(int action, Bundle arguments)
performAccessibilityActionInternal
in class View
Note: Called from the default {@link AccessibilityDelegate}.
public void onGroupsChanged()
NotificationGroupManager.OnGroupChangeListener
onGroupsChanged
in interface NotificationGroupManager.OnGroupChangeListener
public void generateChildOrderChangedEvent()
public void runAfterAnimationFinished(Runnable runnable)
public void setHeadsUpManager(HeadsUpManager headsUpManager)
public void generateHeadsUpAnimation(com.android.systemui.statusbar.ExpandableNotificationRow row, boolean isHeadsUp)
public void setShadeExpanded(boolean shadeExpanded)
public void setHeadsUpBoundaries(int height, int bottomBarHeight)
height
- the height of the screenbottomBarHeight
- the height of the bar on the bottompublic void setTrackingHeadsUp(boolean trackingHeadsUp)
public void setScrimController(ScrimController scrimController)
public void forceNoOverlappingRendering(boolean force)
public boolean hasOverlappingRendering()
View
This function, intended to be overridden by specific View types, is an optimization when alpha is set on a view. If rendering overlaps in a view with alpha < 1, that view is drawn to an offscreen buffer and then composited into place, which can be expensive. If the view has no overlapping rendering, the view can draw each primitive with the appropriate alpha value directly. An example of overlapping rendering is a TextView with a background image, such as a Button. An example of non-overlapping rendering is a TextView with no background, or an ImageView with only the foreground image. The default implementation returns true; subclasses should override if they have cases which can be optimized.
The current implementation of the saveLayer and saveLayerAlpha methods in Canvas
necessitates that a View return true if it uses the methods internally without passing the
Canvas.CLIP_TO_LAYER_SAVE_FLAG
.
Note: The return value of this method is ignored if View.forceHasOverlappingRendering(boolean)
has been called on this view.
hasOverlappingRendering
in class View
public void setAnimationRunning(boolean animationRunning)
public boolean isExpanded()
public void setPulsing(boolean pulsing)
public void setFadingOut(boolean fadingOut)
public void setParentFadingOut(boolean fadingOut)
public void setAlpha(float alpha)
View
Note: setting alpha to a translucent value (0 < alpha < 1) can have significant performance implications, especially for large views. It is best to use the alpha property sparingly and transiently, as in the case of fading animations.
For a view with a frequently changing alpha, such as during a fading animation, it is
strongly recommended for performance reasons to either override
View.hasOverlappingRendering()
to return false
if appropriate, or setting a
layer type
on the view for the duration
of the animation. On versions Build.VERSION_CODES.M
and below,
the default path for rendering an unlayered View with alpha could add multiple milliseconds
of rendering cost, even for simple or small views. Starting with
Build.VERSION_CODES.M
, View.LAYER_TYPE_HARDWARE
is automatically
applied to the view at the rendering level.
If this view overrides View.onSetAlpha(int)
to return true, then this view is
responsible for applying the opacity itself.
On versions Build.VERSION_CODES.LOLLIPOP_MR1
and below, note that if
the view is backed by a layer
and is
associated with a layer paint
, setting an
alpha value less than 1.0 will supersede the alpha of the layer paint.
Starting with Build.VERSION_CODES.M
, setting a translucent alpha
value will clip a View to its bounds, unless the View returns false
from
View.hasOverlappingRendering()
.
setAlpha
in class View
alpha
- The opacity of the view.View.hasOverlappingRendering()
,
View.setLayerType(int, android.graphics.Paint)
public void removeViewStateForView(View view)
view
- the view to removepublic void setQsExpanded(boolean qsExpanded)
public void setOwnScrollY(int ownScrollY)
public void resetExposedGearView(boolean animate, boolean force)
public void closeControlsIfOutsideTouch(MotionEvent ev)