mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-03-06 02:46:57 +00:00
Refactoring PagedOrientationHandler to extract functions from to quickstep
This CL extracts RecentsView methods from PagedOrientationHandler to RecentsPagedOrientationHandler. It will allow to have quickstep specific components in the newer interface, like IconAppChipView. Bug: 320633351 Flag: N/A Test: atest NexusLauncherTests Test: atest TaplTestsSplitscreen Test: atest TaplTestsQuickstep Change-Id: Ie7de23bddccbdb8eac93eff66a5d929f5bf0ee3a
This commit is contained in:
128
src/com/android/launcher3/touch/DefaultPagedViewHandler.java
Normal file
128
src/com/android/launcher3/touch/DefaultPagedViewHandler.java
Normal file
@@ -0,0 +1,128 @@
|
||||
/*
|
||||
* Copyright (C) 2019 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.android.launcher3.touch;
|
||||
|
||||
import android.content.res.Resources;
|
||||
import android.graphics.Rect;
|
||||
import android.view.MotionEvent;
|
||||
import android.view.VelocityTracker;
|
||||
import android.view.View;
|
||||
import android.view.accessibility.AccessibilityEvent;
|
||||
|
||||
import com.android.launcher3.Utilities;
|
||||
|
||||
public class DefaultPagedViewHandler implements PagedOrientationHandler {
|
||||
@Override
|
||||
public int getPrimaryValue(int x, int y) {
|
||||
return x;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSecondaryValue(int x, int y) {
|
||||
return y;
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getPrimaryValue(float x, float y) {
|
||||
return x;
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getSecondaryValue(float x, float y) {
|
||||
return y;
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T> void setPrimary(T target, Int2DAction<T> action, int param) {
|
||||
action.call(target, param, 0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T> void setPrimary(T target, Float2DAction<T> action, float param) {
|
||||
action.call(target, param, 0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getPrimaryDirection(MotionEvent event, int pointerIndex) {
|
||||
return event.getX(pointerIndex);
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getPrimaryVelocity(VelocityTracker velocityTracker, int pointerId) {
|
||||
return velocityTracker.getXVelocity(pointerId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMeasuredSize(View view) {
|
||||
return view.getMeasuredWidth();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getPrimaryScroll(View view) {
|
||||
return view.getScrollX();
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getPrimaryScale(View view) {
|
||||
return view.getScaleX();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setMaxScroll(AccessibilityEvent event, int maxScroll) {
|
||||
event.setMaxScrollX(maxScroll);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean getRecentsRtlSetting(Resources resources) {
|
||||
return !Utilities.isRtl(resources);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getChildStart(View view) {
|
||||
return view.getLeft();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCenterForPage(View view, Rect insets) {
|
||||
return (view.getPaddingTop() + view.getMeasuredHeight() + insets.top
|
||||
- insets.bottom - view.getPaddingBottom()) / 2;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getScrollOffsetStart(View view, Rect insets) {
|
||||
return insets.left + view.getPaddingLeft();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getScrollOffsetEnd(View view, Rect insets) {
|
||||
return view.getWidth() - view.getPaddingRight() - insets.right;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ChildBounds getChildBounds(View child, int childStart, int pageCenter,
|
||||
boolean layoutChild) {
|
||||
final int childWidth = child.getMeasuredWidth();
|
||||
final int childRight = childStart + childWidth;
|
||||
final int childHeight = child.getMeasuredHeight();
|
||||
final int childTop = pageCenter - childHeight / 2;
|
||||
if (layoutChild) {
|
||||
child.layout(childStart, childTop, childRight, childTop + childHeight);
|
||||
}
|
||||
return new ChildBounds(childWidth, childHeight, childRight, childTop);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user