Skip to content

Commit 68a5d1c

Browse files
committed
Prevent margin click from affecting parent node
1 parent d051ce7 commit 68a5d1c

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

library/src/main/java/com/unnamed/b/atv/model/TreeNode.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,7 @@ public interface TreeNodeLongClickListener {
222222
public static abstract class BaseNodeViewHolder<E> {
223223
protected AndroidTreeView tView;
224224
protected TreeNode mNode;
225+
private View nodeView;
225226
private View mView;
226227
protected int containerStyle;
227228
protected Context context;
@@ -234,14 +235,22 @@ public View getView() {
234235
if (mView != null) {
235236
return mView;
236237
}
237-
final View nodeView = getNodeView();
238+
nodeView = getNodeView();
238239
final TreeNodeWrapperView nodeWrapperView = new TreeNodeWrapperView(nodeView.getContext(), getContainerStyle());
239240
nodeWrapperView.insertNodeView(nodeView);
240241
mView = nodeWrapperView;
241242

242243
return mView;
243244
}
244245

246+
public void setOnClickListener(View.OnClickListener listener) {
247+
nodeView.setOnClickListener(listener);
248+
}
249+
250+
public void setOnLongClickListener(View.OnLongClickListener listener) {
251+
nodeView.setOnLongClickListener(listener);
252+
}
253+
245254
public void setTreeViev(AndroidTreeView treeViev) {
246255
this.tView = treeViev;
247256
}

library/src/main/java/com/unnamed/b/atv/view/AndroidTreeView.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -261,7 +261,7 @@ private void addNode(ViewGroup container, final TreeNode n) {
261261
viewHolder.toggleSelectionMode(mSelectionModeEnabled);
262262
}
263263

264-
nodeView.setOnClickListener(new View.OnClickListener() {
264+
viewHolder.setOnClickListener(new View.OnClickListener() {
265265
@Override
266266
public void onClick(View v) {
267267
if (n.getClickListener() != null) {
@@ -275,7 +275,7 @@ public void onClick(View v) {
275275
}
276276
});
277277

278-
nodeView.setOnLongClickListener(new View.OnLongClickListener() {
278+
viewHolder.setOnLongClickListener(new View.OnLongClickListener() {
279279
@Override
280280
public boolean onLongClick(View view) {
281281
if (n.getLongClickListener() != null) {

0 commit comments

Comments
 (0)