11package com.simplemobiletools.filemanager.dialogs
22
3- import android.app.Dialog
4- import android.os.Bundle
5- import android.support.v4.app.DialogFragment
3+ import android.content.Context
64import android.support.v7.app.AlertDialog
75import android.text.format.DateFormat
6+ import android.view.LayoutInflater
87import android.view.View
98import com.simplemobiletools.filemanager.Config
109import com.simplemobiletools.filemanager.R
@@ -14,22 +13,19 @@ import kotlinx.android.synthetic.main.item_properties.view.*
1413import java.io.File
1514import java.util.*
1615
17- class PropertiesDialog : DialogFragment () {
18- companion object {
19- lateinit var mItem: FileDirItem
20- private var mFilesCnt : Int = 0
21- private var mShowHidden : Boolean = false
16+ class PropertiesDialog () {
17+ lateinit var mContext : Context
18+ lateinit var mItem: FileDirItem
19+ private var mCountHiddenItems = false // we always include the hidden item's size, counting items themselves is the optional thing
20+ private var mFilesCnt = 0
2221
23- fun newInstance (item : FileDirItem ): PropertiesDialog {
24- mItem = item
25- mFilesCnt = 0
26- return PropertiesDialog ()
27- }
28- }
22+ constructor (context: Context , item: FileDirItem , countHiddenItems: Boolean = false ) : this () {
23+ mContext = context
24+ mItem = item
25+ mCountHiddenItems = countHiddenItems
2926
30- override fun onCreateDialog (savedInstanceState : Bundle ? ): Dialog {
3127 val title = if (mItem.isDirectory) R .string.directory_properties else R .string.file_properties
32- val infoView = activity.layoutInflater .inflate(R .layout.item_properties, null )
28+ val infoView = LayoutInflater .from(context) .inflate(R .layout.item_properties, null )
3329
3430 infoView.apply {
3531 properties_name.text = mItem.name
@@ -62,16 +58,17 @@ class PropertiesDialog : DialogFragment() {
6258 properties_last_modified.text = formatLastModified(file.lastModified())
6359 }
6460
65- return AlertDialog .Builder (context)
66- .setTitle(resources.getString(title))
61+ AlertDialog .Builder (context)
62+ .setTitle(context. resources.getString(title))
6763 .setView(infoView)
6864 .setPositiveButton(R .string.ok, null )
6965 .create()
66+ .show()
7067 }
7168
7269 private fun getItemSize (): String {
7370 if (mItem.isDirectory) {
74- mShowHidden = Config .newInstance(context ).showHidden
71+ mCountHiddenItems = Config .newInstance(mContext ).showHidden
7572 return getDirectorySize(File (mItem.path)).formatSize()
7673 }
7774
@@ -93,7 +90,7 @@ class PropertiesDialog : DialogFragment() {
9390 size + = getDirectorySize(files[i])
9491 } else {
9592 size + = files[i].length()
96- if (! files[i].isHidden && ! dir.isHidden || mShowHidden )
93+ if (! files[i].isHidden && ! dir.isHidden || mCountHiddenItems )
9794 mFilesCnt++
9895 }
9996 }
0 commit comments