From ffa691eb4c894f918f394f4bdc930693d1494f45 Mon Sep 17 00:00:00 2001 From: tibbi Date: Fri, 3 May 2019 14:19:17 +0200 Subject: [PATCH] fix #129, allow creating folder shortcuts --- app/build.gradle | 2 +- .../pro/activities/SplashActivity.kt | 10 +++- .../filemanager/pro/adapters/ItemsAdapter.kt | 43 ++++++++++++++++++ .../main/res/drawable-hdpi/ic_folder_big.png | Bin 0 -> 179 bytes .../main/res/drawable-xhdpi/ic_folder_big.png | Bin 0 -> 243 bytes .../res/drawable-xxhdpi/ic_folder_big.png | Bin 0 -> 267 bytes .../res/drawable-xxxhdpi/ic_folder_big.png | Bin 0 -> 457 bytes app/src/main/res/drawable/shortcut_folder.xml | 17 +++++++ app/src/main/res/menu/cab.xml | 4 ++ 9 files changed, 74 insertions(+), 2 deletions(-) create mode 100644 app/src/main/res/drawable-hdpi/ic_folder_big.png create mode 100644 app/src/main/res/drawable-xhdpi/ic_folder_big.png create mode 100644 app/src/main/res/drawable-xxhdpi/ic_folder_big.png create mode 100644 app/src/main/res/drawable-xxxhdpi/ic_folder_big.png create mode 100644 app/src/main/res/drawable/shortcut_folder.xml diff --git a/app/build.gradle b/app/build.gradle index 9942a3d6..7ec0178b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -51,7 +51,7 @@ android { } dependencies { - implementation 'com.simplemobiletools:commons:5.12.10' + implementation 'com.simplemobiletools:commons:5.12.11' implementation 'com.github.Stericson:RootTools:df729dcb13' implementation 'com.github.Stericson:RootShell:1.6' implementation 'com.alexvasilkov:gesture-views:2.5.2' diff --git a/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/activities/SplashActivity.kt b/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/activities/SplashActivity.kt index 3d010a2d..2af6cfdd 100644 --- a/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/activities/SplashActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/activities/SplashActivity.kt @@ -7,7 +7,15 @@ class SplashActivity : BaseSplashActivity() { override fun getAppPackageName() = packageName override fun initActivity() { - startActivity(Intent(this, MainActivity::class.java)) + if (intent.action == Intent.ACTION_VIEW && intent.data != null) { + Intent(this, MainActivity::class.java).apply { + action = Intent.ACTION_VIEW + data = intent.data + startActivity(this) + } + } else { + startActivity(Intent(this, MainActivity::class.java)) + } finish() } } diff --git a/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/adapters/ItemsAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/adapters/ItemsAdapter.kt index 0d63418c..37ff2fe5 100644 --- a/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/adapters/ItemsAdapter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/filemanager/pro/adapters/ItemsAdapter.kt @@ -1,10 +1,18 @@ package com.simplemobiletools.filemanager.pro.adapters +import android.annotation.SuppressLint +import android.app.PendingIntent import android.content.ClipData import android.content.ClipboardManager import android.content.Context +import android.content.Intent import android.content.pm.PackageManager +import android.content.pm.ShortcutInfo +import android.content.pm.ShortcutManager import android.graphics.drawable.Drawable +import android.graphics.drawable.Icon +import android.graphics.drawable.LayerDrawable +import android.net.Uri import android.view.Menu import android.view.View import android.view.ViewGroup @@ -17,12 +25,14 @@ import com.simplemobiletools.commons.dialogs.* import com.simplemobiletools.commons.extensions.* import com.simplemobiletools.commons.helpers.CONFLICT_OVERWRITE import com.simplemobiletools.commons.helpers.CONFLICT_SKIP +import com.simplemobiletools.commons.helpers.isNougatMR1Plus import com.simplemobiletools.commons.models.FileDirItem import com.simplemobiletools.commons.models.RadioItem import com.simplemobiletools.commons.views.FastScroller import com.simplemobiletools.commons.views.MyRecyclerView import com.simplemobiletools.filemanager.pro.R import com.simplemobiletools.filemanager.pro.activities.SimpleActivity +import com.simplemobiletools.filemanager.pro.activities.SplashActivity import com.simplemobiletools.filemanager.pro.dialogs.CompressAsDialog import com.simplemobiletools.filemanager.pro.extensions.* import com.simplemobiletools.filemanager.pro.helpers.* @@ -67,6 +77,7 @@ class ItemsAdapter(activity: SimpleActivity, var listItems: MutableList shareFiles() R.id.cab_hide -> toggleFileVisibility(true) R.id.cab_unhide -> toggleFileVisibility(false) + R.id.cab_create_shortcut -> createShortcut() R.id.cab_copy_path -> copyPath() R.id.cab_set_as -> setAs() R.id.cab_open_with -> openWith() @@ -216,6 +228,37 @@ class ItemsAdapter(activity: SimpleActivity, var listItems: MutableList) { if (File(path).isDirectory) { val shouldShowHidden = activity.config.shouldShowHidden diff --git a/app/src/main/res/drawable-hdpi/ic_folder_big.png b/app/src/main/res/drawable-hdpi/ic_folder_big.png new file mode 100644 index 0000000000000000000000000000000000000000..887bad760fb6a7a168f3564276f6f9fa97e8f0f3 GIT binary patch literal 179 zcmeAS@N?(olHy`uVBq!ia0vp^W+2SL1|)l2v+e?^Do+>3kP61P=Qj#AIWRCdzPTCE z?%~zyVI7ejz&mgLZN4(gi7K8=++lC(isf~`eXzeiF-d=h9=ky--?B3Yr&uQ6-uTEU znkQkl>9;wi%OW-=9qkg;4qF3av;~2wF45b)`TuQ>9saTHsq~JA2J@I-Pg3zb_mo%L Wq4%ypEPn#f6%3xPelF{r5}E-2C`3;H literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/ic_folder_big.png b/app/src/main/res/drawable-xhdpi/ic_folder_big.png new file mode 100644 index 0000000000000000000000000000000000000000..d5142e476dcfdec1cdd068a57c492ee4c32fec69 GIT binary patch literal 243 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY0wn)GsXhawc6quuhEy=Vy8~`$#ksqYURZhYd?Nur^IKy-+7n@=*TkHHSZZ zLN8`Xdnh#K^>`~ZzT4TzBJ|?m4j`clWC4Y%vaQq7b0c)u>h7I1>&n$Bc@|8(n%Nxh oYAcjvHD7g9ET0nOm3mG1@P+Ns!9C}DfxckyboFyt=akR{0GH-qO#lD@ literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/ic_folder_big.png b/app/src/main/res/drawable-xxhdpi/ic_folder_big.png new file mode 100644 index 0000000000000000000000000000000000000000..269cec8ec0d4bbf6f9541ab198fcce111402bec8 GIT binary patch literal 267 zcmeAS@N?(olHy`uVBq!ia0vp^IUvlz0wh)Q=eq%^OP(%{Ar*{oZ*LTJ3}j#lY>@i% ziDPNeSw>5h1ssnAy%^`&8q40P*`5Xk>)oa+R>x(>$gMs;t=vSbJ2ah3z^nQLkSbOqL&>yx6F^_ZmM2|-ndxPL{Yw;P{I z)iUAUXKTG9jw;f+2$ zoi~(@xyT45EA?giEq}AY&Hg;ENcmZr`8*=!p357HBuxYEFv~8Km@}b^+fGU&@1n!b z8uNfV6&fPTm!uqaDE!UVWo;ZFlggj6z&Pu;1Dnx=#&av9K@?BQ0&b{?9$ZBG)ij`l z0<+|cS+@+qYNX*J)1V^OaFKaX5q6k}1}B?Qz(cSBCmhzbR^NHjFh!=tX``o?ne)OK z3aY{j1O6ze+B-jtP!jcCC{gp|kn`lgk_k=Q0&I?DlqD}T`BLD!dDk-IDShkD6h1!q uRwM4%{dCg_!DW%X^K+)dLUU5kXAY-Vt96emJ<9+_5re0zpUXO@geCx%G_nH# literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/shortcut_folder.xml b/app/src/main/res/drawable/shortcut_folder.xml new file mode 100644 index 00000000..8fe4f057 --- /dev/null +++ b/app/src/main/res/drawable/shortcut_folder.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/app/src/main/res/menu/cab.xml b/app/src/main/res/menu/cab.xml index 9dce1679..feccd802 100644 --- a/app/src/main/res/menu/cab.xml +++ b/app/src/main/res/menu/cab.xml @@ -31,6 +31,10 @@ android:icon="@drawable/ic_unhide" android:title="@string/unhide" app:showAsAction="ifRoom"/> +