@@ -73,6 +73,7 @@ public class ItemsFragment extends android.support.v4.app.Fragment
7373 private Snackbar mSnackbar ;
7474 private AlertDialog mCopyDialog ;
7575 private TextView mDestinationView ;
76+ private Config mConfig ;
7677
7778 private boolean mShowHidden ;
7879 private int mSelectedItemsCnt ;
@@ -90,7 +91,8 @@ public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
9091 super .onViewCreated (view , savedInstanceState );
9192 if (mStates == null )
9293 mStates = new HashMap <>();
93- mShowHidden = Config .newInstance (getContext ()).getShowHidden ();
94+ mConfig = Config .newInstance (getContext ());
95+ mShowHidden = mConfig .getShowHidden ();
9496 mItems = new ArrayList <>();
9597 mToBeDeleted = new ArrayList <>();
9698 fillItems ();
@@ -100,7 +102,7 @@ public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
100102 @ Override
101103 public void onResume () {
102104 super .onResume ();
103- if (mShowHidden != Config . newInstance ( getContext ()) .getShowHidden ()) {
105+ if (mShowHidden != mConfig .getShowHidden ()) {
104106 mShowHidden = !mShowHidden ;
105107 mStates .remove (mPath );
106108 fillItems ();
@@ -325,10 +327,6 @@ public boolean onCreateActionMode(ActionMode mode, Menu menu) {
325327 public boolean onPrepareActionMode (ActionMode mode , Menu menu ) {
326328 MenuItem menuItem = menu .findItem (R .id .cab_rename );
327329 menuItem .setVisible (mSelectedItemsCnt == 1 );
328-
329- menuItem = menu .findItem (R .id .cab_properties );
330- menuItem .setVisible (mSelectedItemsCnt == 1 );
331-
332330 return true ;
333331 }
334332
@@ -387,12 +385,27 @@ private void shareFiles() {
387385 }
388386
389387 private void displayPropertiesDialog () {
388+ final List <Integer > itemIndexes = getSelectedItemIndexes ();
389+ if (itemIndexes .isEmpty ())
390+ return ;
391+
392+ if (itemIndexes .size () == 1 ) {
393+ showOneItemProperties ();
394+ } else {
395+ showMultipleItemProperties ();
396+ }
397+ }
398+
399+ private void showOneItemProperties () {
390400 final FileDirItem item = getSelectedItem ();
391401 if (item == null )
392402 return ;
393403
394- final Config config = Config .newInstance (getContext ());
395- new PropertiesDialog (getContext (), item .getPath (), config .getShowHidden ());
404+ new PropertiesDialog (getContext (), item .getPath (), mConfig .getShowHidden ());
405+ }
406+
407+ private void showMultipleItemProperties () {
408+
396409 }
397410
398411 private void displayRenameDialog () {
@@ -562,8 +575,8 @@ private void notifyDeletion(int cnt) {
562575 private View .OnClickListener destinationPicker = new View .OnClickListener () {
563576 @ Override
564577 public void onClick (final View view ) {
565- final boolean showHiddenItems = Config . newInstance ( getContext ()) .getShowHidden ();
566- final boolean showFullPath = Config . newInstance ( getContext ()) .getShowFullPath ();
578+ final boolean showHiddenItems = mConfig .getShowHidden ();
579+ final boolean showFullPath = mConfig .getShowFullPath ();
567580 PickFolderDialog dialog = PickFolderDialog .Companion .newInstance (mCopyDestinationPath , showHiddenItems , showFullPath );
568581 dialog .setTargetFragment (ItemsFragment .this , SELECT_FOLDER_REQUEST );
569582 dialog .show (getFragmentManager (), "selectFolder" );
0 commit comments