WidgetTray revamp work

- RecyclerView is rendering
- Animation is connected
- Drag and drop is now handled
- UI tweaking: background, margins, more to come.
- Flicker and preview not loading issue:
  fixed height for the horizontal scroll view.
- Shortcuts are added
- Widget Preview loading should support shortPress for drop
- UI tweaks left: overlay of arrow when there are more items to scroll
- icons are added in the section header
- Sorting of widget sections and widget horizontal list
- Adding all the padding constants to dimen.xml file
- RecyclerView should only support one view type

For items to be addressed in follow up patches OR CLs,
TODO is added to the comment.

b/19897708

Change-Id: Ibfc4da1696a23d20bada93db46e126706eb13cdc
This commit is contained in:
Hyunyoung Song
2015-04-08 19:01:34 -07:00
parent 85e3d4cc5e
commit 3f471440a8
46 changed files with 1332 additions and 2069 deletions

View File

@@ -0,0 +1,48 @@
/*
* Copyright (C) 2011 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.widget;
import android.content.Context;
import android.graphics.Canvas;
import android.util.AttributeSet;
import android.widget.ImageView;
public class WidgetImageView extends ImageView {
public boolean mAllowRequestLayout = true;
public WidgetImageView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public void requestLayout() {
if (mAllowRequestLayout) {
super.requestLayout();
}
}
@Override
protected void onDraw(Canvas canvas) {
canvas.save();
canvas.clipRect(getScrollX() + getPaddingLeft(),
getScrollY() + getPaddingTop(),
getScrollX() + getRight() - getLeft() - getPaddingRight(),
getScrollY() + getBottom() - getTop() - getPaddingBottom());
super.onDraw(canvas);
canvas.restore();
}
}