@quicktvui/ai 1.0.7 → 1.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/rules/.clinerules +27 -4
- package/rules/.cursorrules +27 -4
- package/rules/.github/copilot-instructions.md +27 -4
- package/rules/.source/hippy/extend_views/CoverFlowHorizontalView.java +203 -0
- package/rules/.source/hippy/extend_views/CoverFlowVerticalView.java +203 -0
- package/rules/.source/hippy/extend_views/CoverFlowViewController.java +195 -0
- package/rules/.source/hippy/extend_views/EngineRootView.java +125 -0
- package/rules/.source/hippy/extend_views/ExtendTag.java +83 -0
- package/rules/.source/hippy/extend_views/FocusSearchHelper.java +124 -0
- package/rules/.source/hippy/extend_views/IRecyclerItemView.java +12 -0
- package/rules/.source/hippy/extend_views/JSEventHandleView.java +5 -0
- package/rules/.source/hippy/extend_views/MarqueeRelayManager.java +133 -0
- package/rules/.source/hippy/extend_views/MarqueeRelayTextView.java +211 -0
- package/rules/.source/hippy/extend_views/ProgressBarView.java +83 -0
- package/rules/.source/hippy/extend_views/ProgressBarViewController.java +145 -0
- package/rules/.source/hippy/extend_views/SeekBarView.java +104 -0
- package/rules/.source/hippy/extend_views/SeekBarViewController.java +218 -0
- package/rules/.source/hippy/extend_views/StateImageView.java +149 -0
- package/rules/.source/hippy/extend_views/StateImageViewController.java +34 -0
- package/rules/.source/hippy/extend_views/TVButtonView.java +314 -0
- package/rules/.source/hippy/extend_views/TVButtonViewController.java +89 -0
- package/rules/.source/hippy/extend_views/TVTextView.java +684 -0
- package/rules/.source/hippy/extend_views/TVViewActor.java +811 -0
- package/rules/.source/hippy/extend_views/TVViewActorHost.java +6 -0
- package/rules/.source/hippy/extend_views/TVViewActor/346/216/245/345/205/245.md +66 -0
- package/rules/.source/hippy/extend_views/TemplateUtil.java +336 -0
- package/rules/.source/hippy/extend_views/TextButtonNode.java +47 -0
- package/rules/.source/hippy/extend_views/TextViewController.java +377 -0
- package/rules/.source/hippy/extend_views/fastlist/CenterFlyInAnimator.java +96 -0
- package/rules/.source/hippy/extend_views/fastlist/ChildOnScreenScroller.java +548 -0
- package/rules/.source/hippy/extend_views/fastlist/ClonedViewTag.java +17 -0
- package/rules/.source/hippy/extend_views/fastlist/EventDeliverer.java +55 -0
- package/rules/.source/hippy/extend_views/fastlist/FastAdapter.java +4683 -0
- package/rules/.source/hippy/extend_views/fastlist/FastAdapterUtil.java +982 -0
- package/rules/.source/hippy/extend_views/fastlist/FastFlexNode.java +48 -0
- package/rules/.source/hippy/extend_views/fastlist/FastFlexView.java +873 -0
- package/rules/.source/hippy/extend_views/fastlist/FastFlexViewController.java +130 -0
- package/rules/.source/hippy/extend_views/fastlist/FastItemNode.java +67 -0
- package/rules/.source/hippy/extend_views/fastlist/FastItemView.java +306 -0
- package/rules/.source/hippy/extend_views/fastlist/FastItemViewController.java +106 -0
- package/rules/.source/hippy/extend_views/fastlist/FastListModule.java +95 -0
- package/rules/.source/hippy/extend_views/fastlist/FastListNode.java +90 -0
- package/rules/.source/hippy/extend_views/fastlist/FastListView.java +2466 -0
- package/rules/.source/hippy/extend_views/fastlist/FastListViewController.java +1038 -0
- package/rules/.source/hippy/extend_views/fastlist/FastListView/346/270/262/346/237/223/346/265/201/347/250/213/345/233/276.graffle +0 -0
- package/rules/.source/hippy/extend_views/fastlist/FastPendingView.java +47 -0
- package/rules/.source/hippy/extend_views/fastlist/ItemDecorations.java +71 -0
- package/rules/.source/hippy/extend_views/fastlist/ItemStoreNode.java +64 -0
- package/rules/.source/hippy/extend_views/fastlist/ItemStoreView.java +13 -0
- package/rules/.source/hippy/extend_views/fastlist/ItemStoreViewController.java +45 -0
- package/rules/.source/hippy/extend_views/fastlist/ListItemHolder.java +7 -0
- package/rules/.source/hippy/extend_views/fastlist/ListViewControlProp.java +41 -0
- package/rules/.source/hippy/extend_views/fastlist/MouseRecycleView.java +509 -0
- package/rules/.source/hippy/extend_views/fastlist/OnFastItemClickListener.java +12 -0
- package/rules/.source/hippy/extend_views/fastlist/OnFastItemFocusChangeListener.java +9 -0
- package/rules/.source/hippy/extend_views/fastlist/OnFastScrollStateChangedListener.java +7 -0
- package/rules/.source/hippy/extend_views/fastlist/PendingListNode.java +18 -0
- package/rules/.source/hippy/extend_views/fastlist/PendingViewController.java +13 -0
- package/rules/.source/hippy/extend_views/fastlist/PostHandlerView.java +6 -0
- package/rules/.source/hippy/extend_views/fastlist/PostTaskHolder.java +20 -0
- package/rules/.source/hippy/extend_views/fastlist/ReplaceChildController.java +105 -0
- package/rules/.source/hippy/extend_views/fastlist/ReplaceChildView.java +312 -0
- package/rules/.source/hippy/extend_views/fastlist/TVListView.java +3692 -0
- package/rules/.source/hippy/extend_views/fastlist/TemplateCodeParser.java +247 -0
- package/rules/.source/hippy/extend_views/fastlist/Utils.java +572 -0
- package/rules/.source/hippy/extend_views/fastlist/ViewTag.java +317 -0
- package/rules/.source/hippy/extend_views/fastlist/VirtualListView.java +8 -0
- package/rules/.source/hippy/extend_views/fastlist/diff/FastListDataBindingHelper.java +320 -0
- package/rules/.source/hippy/extend_views/fastlist/diff/KeyDiffHelper.java +289 -0
- package/rules/.source/hippy/extend_views/fastlist/diff/NoKeyDiffHelper.java +278 -0
- package/rules/.source/hippy/extend_views/tag/FontTag.java +53 -0
- package/rules/.source/hippy/extend_views/tag/HtmlTag.java +191 -0
- package/rules/.source/hippy/extend_views/tag/HtmlTagHandler.java +185 -0
- package/rules/.source/hippy/extend_views/tag/SpanTag.java +160 -0
- package/rules/.source/hippy/extend_views/tag/TextFontSpan.java +102 -0
- package/rules/.source/hippy/extend_views/waterfall/Chunk.java +10 -0
- package/rules/.source/hippy/extend_views/waterfall/ChunkGroup.java +5 -0
- package/rules/.source/hippy/extend_views/waterfall/Section.java +4 -0
- package/rules/.source/hippy/extend_views/waterfall/Tabs.java +5 -0
- package/rules/.source/hippy/extend_views/waterfall/WaterfallUtils.java +26 -0
- package/rules/.source/hippy/hippy_uimanager/ControllerHolder.java +30 -0
- package/rules/.source/hippy/hippy_uimanager/ControllerManager.java +651 -0
- package/rules/.source/hippy/hippy_uimanager/ControllerRegistry.java +102 -0
- package/rules/.source/hippy/hippy_uimanager/ControllerUpdateManger.java +252 -0
- package/rules/.source/hippy/hippy_uimanager/CustomControllerHelper.java +425 -0
- package/rules/.source/hippy/hippy_uimanager/DiffUtils.java +526 -0
- package/rules/.source/hippy/hippy_uimanager/ExtendViewGroup.java +36 -0
- package/rules/.source/hippy/hippy_uimanager/HippyCustomViewCreator.java +29 -0
- package/rules/.source/hippy/hippy_uimanager/HippyGroupController.java +83 -0
- package/rules/.source/hippy/hippy_uimanager/HippyViewBase.java +27 -0
- package/rules/.source/hippy/hippy_uimanager/HippyViewController.java +2189 -0
- package/rules/.source/hippy/hippy_uimanager/HippyViewEvent.java +52 -0
- package/rules/.source/hippy/hippy_uimanager/IHippyZIndexViewGroup.java +24 -0
- package/rules/.source/hippy/hippy_uimanager/InternalExtendViewUtil.java +395 -0
- package/rules/.source/hippy/hippy_uimanager/ListItemRenderNode.java +143 -0
- package/rules/.source/hippy/hippy_uimanager/ListViewRenderNode.java +44 -0
- package/rules/.source/hippy/hippy_uimanager/MatrixUtil.java +470 -0
- package/rules/.source/hippy/hippy_uimanager/NativeGestureDispatcher.java +349 -0
- package/rules/.source/hippy/hippy_uimanager/NativeGestureProcessor.java +188 -0
- package/rules/.source/hippy/hippy_uimanager/PullFooterRenderNode.java +43 -0
- package/rules/.source/hippy/hippy_uimanager/PullHeaderRenderNode.java +43 -0
- package/rules/.source/hippy/hippy_uimanager/RenderManager.java +304 -0
- package/rules/.source/hippy/hippy_uimanager/RenderNode.java +533 -0
- package/rules/.source/hippy/hippy_uimanager/StateView.java +17 -0
- package/rules/.source/hippy/hippy_uimanager/TransformUtil.java +125 -0
- package/rules/.source/hippy/hippy_uimanager/ViewGroupDrawingOrderHelper.java +108 -0
- package/rules/.source/hippy/hippy_uimanager/ViewStateProvider.java +10 -0
- package/rules/.source/hippy/hippy_views/audioview/AudioPlayManager.java +457 -0
- package/rules/.source/hippy/hippy_views/audioview/AudioView.java +225 -0
- package/rules/.source/hippy/hippy_views/audioview/AudioViewController.java +135 -0
- package/rules/.source/hippy/hippy_views/common/CommonBackgroundDrawable.java +58 -0
- package/rules/.source/hippy/hippy_views/common/CommonBorder.java +37 -0
- package/rules/.source/hippy/hippy_views/custom/HippyCustomPropsController.java +61 -0
- package/rules/.source/hippy/hippy_views/hippylist/HippyRecyclerListAdapter.java +399 -0
- package/rules/.source/hippy/hippy_views/hippylist/HippyRecyclerView.java +378 -0
- package/rules/.source/hippy/hippy_views/hippylist/HippyRecyclerViewController.java +187 -0
- package/rules/.source/hippy/hippy_views/hippylist/HippyRecyclerViewHolder.java +39 -0
- package/rules/.source/hippy/hippy_views/hippylist/HippyRecyclerViewWrapper.java +134 -0
- package/rules/.source/hippy/hippy_views/hippylist/NodePositionHelper.java +55 -0
- package/rules/.source/hippy/hippy_views/hippylist/PreloadHelper.java +54 -0
- package/rules/.source/hippy/hippy_views/hippylist/PullFooterEventHelper.java +61 -0
- package/rules/.source/hippy/hippy_views/hippylist/PullHeaderEventHelper.java +127 -0
- package/rules/.source/hippy/hippy_views/hippylist/RecyclerViewEventHelper.java +394 -0
- package/rules/.source/hippy/hippy_views/image/HippyContentDrawable.java +113 -0
- package/rules/.source/hippy/hippy_views/image/HippyImageView.java +1608 -0
- package/rules/.source/hippy/hippy_views/image/HippyImageViewController.java +382 -0
- package/rules/.source/hippy/hippy_views/image/IImageStateListener.java +7 -0
- package/rules/.source/hippy/hippy_views/list/ChildOnScreenScroller.java +255 -0
- package/rules/.source/hippy/hippy_views/list/HippyListAdapter.java +647 -0
- package/rules/.source/hippy/hippy_views/list/HippyListItemView.java +162 -0
- package/rules/.source/hippy/hippy_views/list/HippyListItemViewController.java +45 -0
- package/rules/.source/hippy/hippy_views/list/HippyListView.java +915 -0
- package/rules/.source/hippy/hippy_views/list/HippyListViewController.java +622 -0
- package/rules/.source/hippy/hippy_views/list/HippyRecycler.java +31 -0
- package/rules/.source/hippy/hippy_views/list/IRecycleItemTypeChange.java +23 -0
- package/rules/.source/hippy/hippy_views/list/ItemDecorations.java +70 -0
- package/rules/.source/hippy/hippy_views/list/NegativeLongKeyFlinger.java +156 -0
- package/rules/.source/hippy/hippy_views/list/NodeHolder.java +34 -0
- package/rules/.source/hippy/hippy_views/list/RecycleViewFlinger.java +126 -0
- package/rules/.source/hippy/hippy_views/list/TVRecyclerView.java +2070 -0
- package/rules/.source/hippy/hippy_views/list/TVSingleLineListView.java +15 -0
- package/rules/.source/hippy/hippy_views/modal/HippyModalHostManager.java +102 -0
- package/rules/.source/hippy/hippy_views/modal/HippyModalHostView.java +597 -0
- package/rules/.source/hippy/hippy_views/modal/ModalHostHelper.java +46 -0
- package/rules/.source/hippy/hippy_views/modal/ModalStyleNode.java +34 -0
- package/rules/.source/hippy/hippy_views/modal/RequestCloseEvent.java +32 -0
- package/rules/.source/hippy/hippy_views/modal/ShowEvent.java +31 -0
- package/rules/.source/hippy/hippy_views/navigator/Navigator.java +126 -0
- package/rules/.source/hippy/hippy_views/navigator/NavigatorController.java +120 -0
- package/rules/.source/hippy/hippy_views/refresh/HippyPullFooterView.java +47 -0
- package/rules/.source/hippy/hippy_views/refresh/HippyPullFooterViewController.java +65 -0
- package/rules/.source/hippy/hippy_views/refresh/HippyPullHeaderView.java +39 -0
- package/rules/.source/hippy/hippy_views/refresh/HippyPullHeaderViewController.java +104 -0
- package/rules/.source/hippy/hippy_views/refresh/RefreshWrapper.java +237 -0
- package/rules/.source/hippy/hippy_views/refresh/RefreshWrapperController.java +62 -0
- package/rules/.source/hippy/hippy_views/refresh/RefreshWrapperItemController.java +39 -0
- package/rules/.source/hippy/hippy_views/refresh/RefreshWrapperItemView.java +26 -0
- package/rules/.source/hippy/hippy_views/scroll/HippyHorizontalScrollView.java +500 -0
- package/rules/.source/hippy/hippy_views/scroll/HippyOnScrollHelper.java +39 -0
- package/rules/.source/hippy/hippy_views/scroll/HippyScrollView.java +46 -0
- package/rules/.source/hippy/hippy_views/scroll/HippyScrollViewController.java +178 -0
- package/rules/.source/hippy/hippy_views/scroll/HippyScrollViewEventHelper.java +92 -0
- package/rules/.source/hippy/hippy_views/scroll/HippyVerticalScrollView.java +522 -0
- package/rules/.source/hippy/hippy_views/text/HippyTextView.java +512 -0
- package/rules/.source/hippy/hippy_views/text/HippyTextViewController.java +77 -0
- package/rules/.source/hippy/hippy_views/textinput/HippyTextInput.java +668 -0
- package/rules/.source/hippy/hippy_views/textinput/HippyTextInputController.java +528 -0
- package/rules/.source/hippy/hippy_views/textinput/TextInputNode.java +115 -0
- package/rules/.source/hippy/hippy_views/videoview/APEZProvider.java +287 -0
- package/rules/.source/hippy/hippy_views/videoview/APKExpansionSupport.java +82 -0
- package/rules/.source/hippy/hippy_views/videoview/PivotPoint.java +13 -0
- package/rules/.source/hippy/hippy_views/videoview/ScalableType.java +34 -0
- package/rules/.source/hippy/hippy_views/videoview/ScalableVideoView.java +265 -0
- package/rules/.source/hippy/hippy_views/videoview/ScaleManager.java +191 -0
- package/rules/.source/hippy/hippy_views/videoview/Size.java +19 -0
- package/rules/.source/hippy/hippy_views/videoview/VideoHippyView.java +917 -0
- package/rules/.source/hippy/hippy_views/videoview/VideoHippyViewController.java +236 -0
- package/rules/.source/hippy/hippy_views/videoview/ZipResourceFile.java +427 -0
- package/rules/.source/hippy/hippy_views/view/CardRootView.java +28 -0
- package/rules/.source/hippy/hippy_views/view/CustomLayoutView.java +10 -0
- package/rules/.source/hippy/hippy_views/view/CustomNodeView.java +5 -0
- package/rules/.source/hippy/hippy_views/view/DialogViewGroup.java +113 -0
- package/rules/.source/hippy/hippy_views/view/HippyViewGroup.java +2042 -0
- package/rules/.source/hippy/hippy_views/view/HippyViewGroupController.java +583 -0
- package/rules/.source/hippy/hippy_views/view/WindowRoot.java +5 -0
- package/rules/.source/hippy/hippy_views/viewpager/HippyViewPager.java +308 -0
- package/rules/.source/hippy/hippy_views/viewpager/HippyViewPagerAdapter.java +148 -0
- package/rules/.source/hippy/hippy_views/viewpager/HippyViewPagerController.java +246 -0
- package/rules/.source/hippy/hippy_views/viewpager/HippyViewPagerItem.java +27 -0
- package/rules/.source/hippy/hippy_views/viewpager/HippyViewPagerItemController.java +42 -0
- package/rules/.source/hippy/hippy_views/viewpager/ViewPagerPageChangeListener.java +114 -0
- package/rules/.source/hippy/hippy_views/viewpager/event/HippyPageItemExposureEvent.java +40 -0
- package/rules/.source/hippy/hippy_views/viewpager/event/HippyPageScrollEvent.java +43 -0
- package/rules/.source/hippy/hippy_views/viewpager/event/HippyPageScrollStateChangedEvent.java +42 -0
- package/rules/.source/hippy/hippy_views/viewpager/event/HippyPageSelectedEvent.java +42 -0
- package/rules/.source/hippy/hippy_views/webview/HippyWebView.java +160 -0
- package/rules/.source/hippy/hippy_views/webview/HippyWebViewBridge.java +20 -0
- package/rules/.source/hippy/hippy_views/webview/HippyWebViewController.java +103 -0
- package/rules/.source/hippy/hippy_views/webview/HippyWebViewInner.java +77 -0
- package/rules/.windsurfrules +27 -4
- package/rules/AGENTS.md +27 -4
- package/rules/CLAUDE.md +27 -3
- package/rules/GEMINI.md +25 -3
|
Binary file
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
package com.tencent.extend.views.fastlist;
|
|
2
|
+
|
|
3
|
+
import android.view.View;
|
|
4
|
+
|
|
5
|
+
import android.support.annotation.Nullable;
|
|
6
|
+
|
|
7
|
+
import com.tencent.mtt.hippy.common.HippyArray;
|
|
8
|
+
import com.tencent.mtt.hippy.common.HippyMap;
|
|
9
|
+
import com.tencent.mtt.hippy.modules.Promise;
|
|
10
|
+
import com.tencent.mtt.hippy.uimanager.RenderNode;
|
|
11
|
+
import com.tencent.mtt.hippy.views.view.HippyViewGroup;
|
|
12
|
+
|
|
13
|
+
public interface FastPendingView extends VirtualListView{
|
|
14
|
+
// void onCreateItemViewRecursive(ControllerManager m, RenderNode realNode, View parent,View view, FastItemNode templateNode, ViewTag tag);
|
|
15
|
+
// void onBindItemView(ControllerManager m, RenderNode realNode,View view, ViewTag tag);
|
|
16
|
+
// void buildTemplate();
|
|
17
|
+
void setPendingData(Object data, RenderNode templateNode);
|
|
18
|
+
void notifyRecycled();
|
|
19
|
+
void updateItem(int pos,Object data);
|
|
20
|
+
void updateItem(int pos,Object data,boolean traverse);
|
|
21
|
+
void replaceItemData(int pos,Object data);
|
|
22
|
+
//----new
|
|
23
|
+
void searchUpdateItemViewByItemID(String id, Object data, boolean traverse);
|
|
24
|
+
void searchUpdateItemPropsBySID(String name, String itemID, String prop, Object newValue, boolean updateView);
|
|
25
|
+
int findItemPositionBySID(String id);
|
|
26
|
+
void updateItemSpecificProp(String name, int position,String prop, Object dataToUpdate, boolean updateView);
|
|
27
|
+
//------
|
|
28
|
+
void updateItemProps(String name,int pos,Object data,boolean updateView);
|
|
29
|
+
void setCachePoolMap(HippyMap map);
|
|
30
|
+
void pausePostTask();
|
|
31
|
+
void resumePostTask();
|
|
32
|
+
void dispatchItemFunction(HippyArray var,@Nullable Promise promise);
|
|
33
|
+
void setRootList(FastListView rootList,FastAdapter parentAdapter);
|
|
34
|
+
void setHandleEventNodeId(int id);
|
|
35
|
+
int findPositionByChild(View child);
|
|
36
|
+
View findViewByPosition(int position);
|
|
37
|
+
HippyArray getItemListData();
|
|
38
|
+
EventDeliverer getEventDeliverer();
|
|
39
|
+
<T extends View> T findViewWithTag(Object tag);
|
|
40
|
+
HippyViewGroup findPageRootView();
|
|
41
|
+
View findFirstFocusByDirection(int direction);
|
|
42
|
+
|
|
43
|
+
/** 1.8.1 add **/
|
|
44
|
+
void setSharedItemStore(String name);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
package com.tencent.extend.views.fastlist;
|
|
2
|
+
|
|
3
|
+
import android.graphics.Rect;
|
|
4
|
+
|
|
5
|
+
import android.support.annotation.NonNull;
|
|
6
|
+
import android.support.v7.widget.RecyclerView;
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
public class ItemDecorations {
|
|
10
|
+
|
|
11
|
+
public static class SimpleBetweenItem extends RecyclerView.ItemDecoration {
|
|
12
|
+
|
|
13
|
+
final int itemSpace;
|
|
14
|
+
final boolean horizontal;
|
|
15
|
+
|
|
16
|
+
public SimpleBetweenItem(int itemSpace,boolean horizontal) {
|
|
17
|
+
this.itemSpace = itemSpace;
|
|
18
|
+
this.horizontal = horizontal;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
public SimpleBetweenItem(int itemSpace) {
|
|
22
|
+
this.itemSpace = itemSpace;
|
|
23
|
+
this.horizontal = true;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
@Override
|
|
27
|
+
public void getItemOffsets(@NonNull Rect outRect, int itemPosition, @NonNull RecyclerView parent) {
|
|
28
|
+
super.getItemOffsets(outRect, itemPosition,parent);
|
|
29
|
+
if(horizontal) {
|
|
30
|
+
outRect.right = itemSpace;
|
|
31
|
+
}else{
|
|
32
|
+
outRect.bottom = itemSpace;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
public static class ListEndBlank extends RecyclerView.ItemDecoration{
|
|
39
|
+
final int blank;
|
|
40
|
+
final int orientation;
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
public ListEndBlank(int blank, int orientation) {
|
|
44
|
+
this.blank = blank;
|
|
45
|
+
this.orientation = orientation;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
public ListEndBlank(int orientation) {
|
|
49
|
+
this(100,orientation);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
@Override
|
|
54
|
+
public void getItemOffsets(@NonNull Rect outRect,int itemPosition, @NonNull RecyclerView parent) {
|
|
55
|
+
super.getItemOffsets(outRect, itemPosition,parent);
|
|
56
|
+
if(itemPosition > 0) {
|
|
57
|
+
if (orientation == RecyclerView.HORIZONTAL) {
|
|
58
|
+
if(itemPosition >= parent.getAdapter().getItemCount()/ - 1){
|
|
59
|
+
outRect.right = blank;
|
|
60
|
+
}
|
|
61
|
+
} else {
|
|
62
|
+
if(itemPosition >= parent.getAdapter().getItemCount() - 1){
|
|
63
|
+
outRect.bottom = blank;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
package com.tencent.extend.views.fastlist;
|
|
2
|
+
|
|
3
|
+
import android.util.Log;
|
|
4
|
+
|
|
5
|
+
import com.tencent.mtt.hippy.HippyRootView;
|
|
6
|
+
import com.tencent.mtt.hippy.common.HippyMap;
|
|
7
|
+
import com.tencent.mtt.hippy.uimanager.ControllerManager;
|
|
8
|
+
import com.tencent.mtt.hippy.uimanager.RenderNode;
|
|
9
|
+
import com.tencent.mtt.hippy.utils.LogUtils;
|
|
10
|
+
|
|
11
|
+
import java.util.HashMap;
|
|
12
|
+
import java.util.Map;
|
|
13
|
+
|
|
14
|
+
public class ItemStoreNode extends RenderNode {
|
|
15
|
+
private static final String TAG = "ItemStoreNodeLog";
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
public ItemStoreNode(int mId, HippyMap mPropsToUpdate, String className, HippyRootView rootView, ControllerManager componentManager, boolean isLazyLoad) {
|
|
19
|
+
super(mId, mPropsToUpdate, className, rootView, componentManager, isLazyLoad);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
@Override
|
|
23
|
+
protected void addChildToPendingList(RenderNode renderNode) {
|
|
24
|
+
// super.addChildToPendingList(renderNode);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
public static Map<Integer, RenderNode> buildItemStoreTemplate(ItemStoreNode node){
|
|
28
|
+
Map<Integer, RenderNode> templateNodes = new HashMap<>();
|
|
29
|
+
for (int i = 0; i < node.getChildCount(); i++) {
|
|
30
|
+
final RenderNode child = node.getChildAt(i);
|
|
31
|
+
if (child.getProps().containsKey("type")) {
|
|
32
|
+
final String childType = child.getProps().getString("type");
|
|
33
|
+
|
|
34
|
+
final int type = Integer.parseInt(childType);
|
|
35
|
+
|
|
36
|
+
if (LogUtils.isDebug()) {
|
|
37
|
+
Log.i(TAG, "buildTemplate put type:" + type + ",node:" + child);
|
|
38
|
+
}
|
|
39
|
+
templateNodes.put(type, child);
|
|
40
|
+
} else {
|
|
41
|
+
if (LogUtils.isDebug()) {
|
|
42
|
+
Log.i(TAG, "buildTemplate put fail,node:" + child+",no type");
|
|
43
|
+
}
|
|
44
|
+
//templateNodes.put(defaultType, child);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return templateNodes;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
@Override
|
|
54
|
+
public void manageChildrenComplete() {
|
|
55
|
+
super.manageChildrenComplete();
|
|
56
|
+
if (LogUtils.isDebug()) {
|
|
57
|
+
Log.d(TAG,"manageChildrenComplete ItemStoreNode childCount:"+getChildCount());
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
package com.tencent.extend.views.fastlist;
|
|
2
|
+
|
|
3
|
+
import android.content.Context;
|
|
4
|
+
|
|
5
|
+
import com.tencent.mtt.hippy.views.view.HippyViewGroup;
|
|
6
|
+
|
|
7
|
+
public class ItemStoreView extends HippyViewGroup {
|
|
8
|
+
public ItemStoreView(Context context) {
|
|
9
|
+
super(context);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
package com.tencent.extend.views.fastlist;
|
|
2
|
+
|
|
3
|
+
import android.content.Context;
|
|
4
|
+
import android.util.Log;
|
|
5
|
+
import android.view.View;
|
|
6
|
+
import android.view.ViewGroup;
|
|
7
|
+
|
|
8
|
+
import com.tencent.mtt.hippy.HippyRootView;
|
|
9
|
+
import com.tencent.mtt.hippy.annotation.HippyController;
|
|
10
|
+
import com.tencent.mtt.hippy.common.HippyMap;
|
|
11
|
+
import com.tencent.mtt.hippy.uimanager.ControllerManager;
|
|
12
|
+
import com.tencent.mtt.hippy.uimanager.HippyViewController;
|
|
13
|
+
import com.tencent.mtt.hippy.uimanager.RenderNode;
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
@HippyController(
|
|
17
|
+
name = ItemStoreViewController.CLASS_NAME
|
|
18
|
+
)
|
|
19
|
+
public class ItemStoreViewController extends HippyViewController<ItemStoreView> {
|
|
20
|
+
public static final String CLASS_NAME = "ItemStoreView";
|
|
21
|
+
public static final String TAG = "ItemStoreViewLog";
|
|
22
|
+
|
|
23
|
+
public ItemStoreViewController() {
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
@Override
|
|
27
|
+
protected void addView(ViewGroup parentView, View view, int index) {
|
|
28
|
+
// super.addView(parentView, view, index);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
protected View createViewImpl(Context context) {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
@Override
|
|
36
|
+
protected View createViewImpl(Context context, HippyMap iniProps) {
|
|
37
|
+
return new ItemStoreView(context);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
@Override
|
|
41
|
+
public RenderNode createRenderNode(int id, HippyMap props, String className, HippyRootView hippyRootView, ControllerManager controllerManager, boolean lazy) {
|
|
42
|
+
return new ItemStoreNode(id, props, className, hippyRootView, controllerManager, lazy);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
package com.tencent.extend.views.fastlist;
|
|
2
|
+
|
|
3
|
+
public class ListViewControlProp {
|
|
4
|
+
|
|
5
|
+
//滚动位置
|
|
6
|
+
public int scrollToPosition = -1;
|
|
7
|
+
public int currentScrollToPosition = -1;
|
|
8
|
+
//滚动offset
|
|
9
|
+
public int scrollOffset = 0;
|
|
10
|
+
//焦点位置
|
|
11
|
+
public int focusPosition = -1;
|
|
12
|
+
public int autofocusPosition = -1;
|
|
13
|
+
public int autoScrollToPosition = -1;
|
|
14
|
+
//自动焦点id
|
|
15
|
+
public Object autoFocusID = null;
|
|
16
|
+
//单一选中的位置
|
|
17
|
+
public int singleSelectPosition = -1;
|
|
18
|
+
public int pendingScrollToPosition = -1;
|
|
19
|
+
public boolean pendingCheckAutofocus = false;
|
|
20
|
+
|
|
21
|
+
// //滚动位置
|
|
22
|
+
// public int initScrollToPosition = -1;
|
|
23
|
+
// //滚动offset
|
|
24
|
+
// public int initScrollOffset = -1;
|
|
25
|
+
// //焦点位置
|
|
26
|
+
// public int initFocusPosition = -1;
|
|
27
|
+
// //自动焦点id
|
|
28
|
+
// public String initAutofocus = null;
|
|
29
|
+
// //单一选中的位置
|
|
30
|
+
// public int initSingleSelect = -1;
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
@Override
|
|
34
|
+
public String toString() {
|
|
35
|
+
return "ListViewControlProp{" +
|
|
36
|
+
"autofocusPosition=" + autofocusPosition +
|
|
37
|
+
", autoScrollToPosition=" + autoScrollToPosition +
|
|
38
|
+
", singleSelectPosition=" + singleSelectPosition +
|
|
39
|
+
'}';
|
|
40
|
+
}
|
|
41
|
+
}
|