diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser
new file mode 100644
index 0000000..d3c11a5
Binary files /dev/null and b/.idea/caches/build_file_checksums.ser differ
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index 96cc43e..61a9130 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -1,22 +1,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
\ No newline at end of file
diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index 31a27b7..c2f6c66 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -1,8 +1,10 @@
+
diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml
new file mode 100644
index 0000000..7b8cee7
--- /dev/null
+++ b/.idea/jarRepositories.xml
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 3be1ace..e552dbf 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -27,17 +27,7 @@
-
-
-
-
-
-
-
-
-
-
-
+
diff --git a/.idea/modules.xml b/.idea/modules.xml
index bb2e094..8a8f9cc 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -2,9 +2,9 @@
-
-
-
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/java/tellh/com/recyclertreeview/MainActivity.java b/app/src/main/java/tellh/com/recyclertreeview/MainActivity.java
index 5fc3861..c9d038e 100644
--- a/app/src/main/java/tellh/com/recyclertreeview/MainActivity.java
+++ b/app/src/main/java/tellh/com/recyclertreeview/MainActivity.java
@@ -7,6 +7,7 @@
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ImageView;
+import android.widget.Toast;
import java.util.ArrayList;
import java.util.Arrays;
@@ -91,6 +92,25 @@ public void onToggle(boolean isExpand, RecyclerView.ViewHolder holder) {
ivArrow.animate().rotationBy(rotateDegree)
.start();
}
+
+ @Override
+ public boolean onLongClick(TreeNode node, RecyclerView.ViewHolder holder) {
+ if (!node.isLeaf()) {
+ //read name of dir
+ Toast.makeText(
+ MainActivity.this,
+ "Long clicked: "+((Dir) node.getContent()).dirName,
+ Toast.LENGTH_SHORT
+ ).show();
+ } else {
+ Toast.makeText(
+ MainActivity.this,
+ "Long clicked: "+ ((File) node.getContent()).fileName,
+ Toast.LENGTH_SHORT
+ ).show();
+ }
+ return true;
+ }
});
rv.setAdapter(adapter);
}
diff --git a/build.gradle b/build.gradle
index 987db10..644dd70 100644
--- a/build.gradle
+++ b/build.gradle
@@ -3,6 +3,7 @@
buildscript {
repositories {
jcenter()
+ google()
}
dependencies {
//JitPack
diff --git a/recyclertreeview-lib/src/main/java/tellh/com/recyclertreeview_lib/TreeViewAdapter.java b/recyclertreeview-lib/src/main/java/tellh/com/recyclertreeview_lib/TreeViewAdapter.java
index eb973bf..5efd98f 100644
--- a/recyclertreeview-lib/src/main/java/tellh/com/recyclertreeview_lib/TreeViewAdapter.java
+++ b/recyclertreeview-lib/src/main/java/tellh/com/recyclertreeview_lib/TreeViewAdapter.java
@@ -1,5 +1,6 @@
package tellh.com.recyclertreeview_lib;
+import android.app.Fragment;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.NonNull;
@@ -119,6 +120,17 @@ public void onClick(View v) {
}
}
});
+
+ holder.itemView.setOnLongClickListener(new View.OnLongClickListener() {
+ @Override
+ public boolean onLongClick(View view) {
+ TreeNode selectedNode = displayNodes.get(holder.getLayoutPosition());
+ if (onTreeNodeListener != null && onTreeNodeListener.onLongClick(selectedNode, holder))
+ return true;
+ return false;
+ }
+ });
+
for (TreeViewBinder viewBinder : viewBinders) {
if (viewBinder.getLayoutId() == displayNodes.get(position).getContent().getLayoutId())
viewBinder.bindView(holder, position, displayNodes.get(position));
@@ -190,6 +202,8 @@ public interface OnTreeNodeListener {
* @param isExpand the status of TreeNodes after being toggled.
*/
void onToggle(boolean isExpand, RecyclerView.ViewHolder holder);
+
+ boolean onLongClick(TreeNode node, RecyclerView.ViewHolder holder);
}
public void refresh(List treeNodes) {