Loading res/layout/navigation_view_details_item.xml +2 −2 Original line number Diff line number Diff line Loading @@ -42,7 +42,7 @@ android:layout_alignParentStart="true" android:layout_alignParentTop="true" android:layout_marginStart="@dimen/default_margin" android:layout_marginTop="@dimen/default_margin" android:layout_marginTop="@dimen/extra_margin" android:ellipsize="middle" android:singleLine="true" android:textAppearance="@style/primary_text_appearance" /> Loading @@ -53,7 +53,7 @@ android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentStart="true" android:layout_marginBottom="@dimen/default_margin" android:layout_marginBottom="@dimen/extra_margin" android:layout_marginStart="@dimen/default_margin" android:singleLine="true" android:textAppearance="@style/secondary_text_appearance" /> Loading res/layout/navigation_view_simple_item.xml +8 −26 Original line number Diff line number Diff line Loading @@ -31,36 +31,18 @@ android:contentDescription="@null" android:src="@null" /> <RelativeLayout <TextView android:id="@+id/navigation_view_item_name" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:layout_marginEnd="@dimen/extra_margin"> <TextView android:id="@+id/navigation_view_item_name" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentStart="true" android:layout_alignParentTop="true" android:layout_marginStart="@dimen/default_margin" android:layout_marginTop="@dimen/extra_margin" android:ellipsize="middle" android:gravity="start|center_vertical" android:singleLine="true" android:ellipsize="middle" android:textAppearance="@style/primary_text_appearance" /> <TextView android:id="@+id/navigation_view_item_summary" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentStart="true" android:layout_marginBottom="@dimen/extra_margin" android:layout_marginStart="@dimen/default_margin" android:singleLine="true" android:textAppearance="@style/secondary_text_appearance" /> </RelativeLayout> <com.cyanogenmod.filemanager.ui.widgets.TransparentNonFocusableButtonItem android:id="@+id/navigation_view_item_info" android:layout_width="@dimen/item_menu_row_button_width" Loading res/values/strings.xml +6 −2 Original line number Diff line number Diff line Loading @@ -47,6 +47,8 @@ <string name="all">All</string> <string name="overwrite">Overwrite</string> <string name="select">Select</string> <string name="copy">Copy</string> <string name="move">Move</string> <!-- The root directory name --> <string name="root_directory_name"><![CDATA[<Root folder>]]></string> Loading Loading @@ -338,6 +340,8 @@ <!-- Picker Activity - Dialog title --> <string name="picker_title">Pick a file</string> <string name="directory_picker_title">Pick a directory</string> <string name="picker_copy_title">Copy to</string> <string name="picker_move_title">Move to</string> <!-- Editor - Editor activity title --> <string name="editor">Editor</string> Loading Loading @@ -454,9 +458,9 @@ <!-- Actions Dialog - Menu - Deselect --> <string name="actions_menu_deselect">Deselect</string> <!-- Actions Dialog - Menu - Copy/Paste selection --> <string name="actions_menu_paste_selection">Copy selection here</string> <string name="actions_menu_paste_selection">Copy to</string> <!-- Actions Dialog - Menu - Move selection --> <string name="actions_menu_move_selection">Move selection here</string> <string name="actions_menu_move_selection">Move to</string> <!-- Actions Dialog - Menu - Delete selection --> <string name="actions_menu_delete_selection">Delete selection</string> <!-- Actions Dialog - Menu - Compress selection --> Loading src/com/cyanogenmod/filemanager/activities/NavigationActivity.java +48 −0 Original line number Diff line number Diff line Loading @@ -102,6 +102,7 @@ import com.cyanogenmod.filemanager.ui.dialogs.ActionsDialog; import com.cyanogenmod.filemanager.ui.dialogs.FilesystemInfoDialog; import com.cyanogenmod.filemanager.ui.dialogs.InitialDirectoryDialog; import com.cyanogenmod.filemanager.ui.dialogs.FilesystemInfoDialog.OnMountListener; import com.cyanogenmod.filemanager.ui.policy.CopyMoveActionPolicy; import com.cyanogenmod.filemanager.ui.widgets.Breadcrumb; import com.cyanogenmod.filemanager.ui.widgets.ButtonItem; import com.cyanogenmod.filemanager.ui.widgets.NavigationCustomTitleView; Loading Loading @@ -129,6 +130,7 @@ import java.util.Locale; import java.util.Map; import static com.cyanogenmod.filemanager.util.MimeTypeHelper.MimeTypeCategory.*; import static com.cyanogenmod.filemanager.activities.PickerActivity.EXTRA_FOLDER_PATH; /** * The main navigation activity. This activity is the center of the application. Loading Loading @@ -166,6 +168,16 @@ public class NavigationActivity extends Activity */ public static final int INTENT_REQUEST_SETTINGS = 20001; /** * Intent code for request a copy. */ public static final int INTENT_REQUEST_COPY = 30001; /** * Intent code for request a move. */ public static final int INTENT_REQUEST_MOVE = 30002; /** * Constant for extra information about selected search entry. */ Loading Loading @@ -1947,6 +1959,42 @@ public class NavigationActivity extends Activity initBookmarks(); break; // Paste selection case INTENT_REQUEST_COPY: if (resultCode == Activity.RESULT_OK) { Bundle extras = data.getExtras(); String destination = extras.getString(EXTRA_FOLDER_PATH); List<FileSystemObject> selection = getCurrentNavigationView().onRequestSelectedFiles(); if (!TextUtils.isEmpty(destination)) { CopyMoveActionPolicy.copyFileSystemObjects( this, selection, destination, getCurrentNavigationView(), this); } } break; // Move selection case INTENT_REQUEST_MOVE: if (resultCode == Activity.RESULT_OK) { Bundle extras = data.getExtras(); String destination = extras.getString(EXTRA_FOLDER_PATH); List<FileSystemObject> selection = getCurrentNavigationView().onRequestSelectedFiles(); if (!TextUtils.isEmpty(destination)) { CopyMoveActionPolicy.moveFileSystemObjects( this, selection, destination, getCurrentNavigationView(), this); } } break; default: break; } Loading src/com/cyanogenmod/filemanager/activities/PickerActivity.java +52 −6 Original line number Diff line number Diff line Loading @@ -111,9 +111,34 @@ public class PickerActivity extends Activity private static final String EXTRA_CROP = "crop"; //$NON-NLS-1$ // Intent for folder picker private static final String INTENT_FOLDER_SELECT = "com.android.fileexplorer.action.DIR_SEL"; public static final String INTENT_FOLDER_SELECT = "com.android.fileexplorer.action.DIR_SEL"; // String extra for folder selection private static final String EXTRA_FOLDER_PATH = "def_file_manager_result_dir"; public static final String EXTRA_FOLDER_PATH = "def_file_manager_result_dir"; /** * Constant for extra information for picker activity mode */ public static final String EXTRA_ACTION = "extra_picker_activity_mode"; /** * The Picker action mode * @hide */ public enum ACTION_MODE { /** * The picker activity is configured for select action. * This is default behavior if not specified. */ SELECT, /** * The picker activity is configured for copy action. */ COPY, /** * The picker activity is configured for move action. */ MOVE, } FileSystemObject mFso; // The picked item FileSystemObject mCurrentDirectory; Loading Loading @@ -279,11 +304,32 @@ public class PickerActivity extends Activity // Apply the current theme applyTheme(); // Get dialog title and positive button, default to picker_title and select respectively ACTION_MODE pickerMode = ACTION_MODE.SELECT; if (extras != null) { if (extras.containsKey(EXTRA_ACTION)) { int mode = extras.getInt(EXTRA_ACTION); pickerMode = ACTION_MODE.values()[mode]; } } int titleId = (pickingDirectory) ? R.string.directory_picker_title : R.string.picker_title; int buttonId = R.string.select; switch (pickerMode) { case COPY: titleId = R.string.picker_copy_title; buttonId = R.string.copy; break; case MOVE: titleId = R.string.picker_move_title; buttonId = R.string.move; break; default: break; } // Create the dialog this.mDialog = DialogHelper.createDialog( this, R.mipmap.ic_launcher_filemanager, pickingDirectory ? R.string.directory_picker_title : R.string.picker_title, this.mRootView); this, R.mipmap.ic_launcher_filemanager, titleId, this.mRootView); this.mDialog.setButton( DialogInterface.BUTTON_NEGATIVE, Loading @@ -297,7 +343,7 @@ public class PickerActivity extends Activity if (pickingDirectory) { this.mDialog.setButton( DialogInterface.BUTTON_POSITIVE, getString(R.string.select), getString(buttonId), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dlg, int which) { Loading Loading
res/layout/navigation_view_details_item.xml +2 −2 Original line number Diff line number Diff line Loading @@ -42,7 +42,7 @@ android:layout_alignParentStart="true" android:layout_alignParentTop="true" android:layout_marginStart="@dimen/default_margin" android:layout_marginTop="@dimen/default_margin" android:layout_marginTop="@dimen/extra_margin" android:ellipsize="middle" android:singleLine="true" android:textAppearance="@style/primary_text_appearance" /> Loading @@ -53,7 +53,7 @@ android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentStart="true" android:layout_marginBottom="@dimen/default_margin" android:layout_marginBottom="@dimen/extra_margin" android:layout_marginStart="@dimen/default_margin" android:singleLine="true" android:textAppearance="@style/secondary_text_appearance" /> Loading
res/layout/navigation_view_simple_item.xml +8 −26 Original line number Diff line number Diff line Loading @@ -31,36 +31,18 @@ android:contentDescription="@null" android:src="@null" /> <RelativeLayout <TextView android:id="@+id/navigation_view_item_name" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:layout_marginEnd="@dimen/extra_margin"> <TextView android:id="@+id/navigation_view_item_name" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentStart="true" android:layout_alignParentTop="true" android:layout_marginStart="@dimen/default_margin" android:layout_marginTop="@dimen/extra_margin" android:ellipsize="middle" android:gravity="start|center_vertical" android:singleLine="true" android:ellipsize="middle" android:textAppearance="@style/primary_text_appearance" /> <TextView android:id="@+id/navigation_view_item_summary" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentStart="true" android:layout_marginBottom="@dimen/extra_margin" android:layout_marginStart="@dimen/default_margin" android:singleLine="true" android:textAppearance="@style/secondary_text_appearance" /> </RelativeLayout> <com.cyanogenmod.filemanager.ui.widgets.TransparentNonFocusableButtonItem android:id="@+id/navigation_view_item_info" android:layout_width="@dimen/item_menu_row_button_width" Loading
res/values/strings.xml +6 −2 Original line number Diff line number Diff line Loading @@ -47,6 +47,8 @@ <string name="all">All</string> <string name="overwrite">Overwrite</string> <string name="select">Select</string> <string name="copy">Copy</string> <string name="move">Move</string> <!-- The root directory name --> <string name="root_directory_name"><![CDATA[<Root folder>]]></string> Loading Loading @@ -338,6 +340,8 @@ <!-- Picker Activity - Dialog title --> <string name="picker_title">Pick a file</string> <string name="directory_picker_title">Pick a directory</string> <string name="picker_copy_title">Copy to</string> <string name="picker_move_title">Move to</string> <!-- Editor - Editor activity title --> <string name="editor">Editor</string> Loading Loading @@ -454,9 +458,9 @@ <!-- Actions Dialog - Menu - Deselect --> <string name="actions_menu_deselect">Deselect</string> <!-- Actions Dialog - Menu - Copy/Paste selection --> <string name="actions_menu_paste_selection">Copy selection here</string> <string name="actions_menu_paste_selection">Copy to</string> <!-- Actions Dialog - Menu - Move selection --> <string name="actions_menu_move_selection">Move selection here</string> <string name="actions_menu_move_selection">Move to</string> <!-- Actions Dialog - Menu - Delete selection --> <string name="actions_menu_delete_selection">Delete selection</string> <!-- Actions Dialog - Menu - Compress selection --> Loading
src/com/cyanogenmod/filemanager/activities/NavigationActivity.java +48 −0 Original line number Diff line number Diff line Loading @@ -102,6 +102,7 @@ import com.cyanogenmod.filemanager.ui.dialogs.ActionsDialog; import com.cyanogenmod.filemanager.ui.dialogs.FilesystemInfoDialog; import com.cyanogenmod.filemanager.ui.dialogs.InitialDirectoryDialog; import com.cyanogenmod.filemanager.ui.dialogs.FilesystemInfoDialog.OnMountListener; import com.cyanogenmod.filemanager.ui.policy.CopyMoveActionPolicy; import com.cyanogenmod.filemanager.ui.widgets.Breadcrumb; import com.cyanogenmod.filemanager.ui.widgets.ButtonItem; import com.cyanogenmod.filemanager.ui.widgets.NavigationCustomTitleView; Loading Loading @@ -129,6 +130,7 @@ import java.util.Locale; import java.util.Map; import static com.cyanogenmod.filemanager.util.MimeTypeHelper.MimeTypeCategory.*; import static com.cyanogenmod.filemanager.activities.PickerActivity.EXTRA_FOLDER_PATH; /** * The main navigation activity. This activity is the center of the application. Loading Loading @@ -166,6 +168,16 @@ public class NavigationActivity extends Activity */ public static final int INTENT_REQUEST_SETTINGS = 20001; /** * Intent code for request a copy. */ public static final int INTENT_REQUEST_COPY = 30001; /** * Intent code for request a move. */ public static final int INTENT_REQUEST_MOVE = 30002; /** * Constant for extra information about selected search entry. */ Loading Loading @@ -1947,6 +1959,42 @@ public class NavigationActivity extends Activity initBookmarks(); break; // Paste selection case INTENT_REQUEST_COPY: if (resultCode == Activity.RESULT_OK) { Bundle extras = data.getExtras(); String destination = extras.getString(EXTRA_FOLDER_PATH); List<FileSystemObject> selection = getCurrentNavigationView().onRequestSelectedFiles(); if (!TextUtils.isEmpty(destination)) { CopyMoveActionPolicy.copyFileSystemObjects( this, selection, destination, getCurrentNavigationView(), this); } } break; // Move selection case INTENT_REQUEST_MOVE: if (resultCode == Activity.RESULT_OK) { Bundle extras = data.getExtras(); String destination = extras.getString(EXTRA_FOLDER_PATH); List<FileSystemObject> selection = getCurrentNavigationView().onRequestSelectedFiles(); if (!TextUtils.isEmpty(destination)) { CopyMoveActionPolicy.moveFileSystemObjects( this, selection, destination, getCurrentNavigationView(), this); } } break; default: break; } Loading
src/com/cyanogenmod/filemanager/activities/PickerActivity.java +52 −6 Original line number Diff line number Diff line Loading @@ -111,9 +111,34 @@ public class PickerActivity extends Activity private static final String EXTRA_CROP = "crop"; //$NON-NLS-1$ // Intent for folder picker private static final String INTENT_FOLDER_SELECT = "com.android.fileexplorer.action.DIR_SEL"; public static final String INTENT_FOLDER_SELECT = "com.android.fileexplorer.action.DIR_SEL"; // String extra for folder selection private static final String EXTRA_FOLDER_PATH = "def_file_manager_result_dir"; public static final String EXTRA_FOLDER_PATH = "def_file_manager_result_dir"; /** * Constant for extra information for picker activity mode */ public static final String EXTRA_ACTION = "extra_picker_activity_mode"; /** * The Picker action mode * @hide */ public enum ACTION_MODE { /** * The picker activity is configured for select action. * This is default behavior if not specified. */ SELECT, /** * The picker activity is configured for copy action. */ COPY, /** * The picker activity is configured for move action. */ MOVE, } FileSystemObject mFso; // The picked item FileSystemObject mCurrentDirectory; Loading Loading @@ -279,11 +304,32 @@ public class PickerActivity extends Activity // Apply the current theme applyTheme(); // Get dialog title and positive button, default to picker_title and select respectively ACTION_MODE pickerMode = ACTION_MODE.SELECT; if (extras != null) { if (extras.containsKey(EXTRA_ACTION)) { int mode = extras.getInt(EXTRA_ACTION); pickerMode = ACTION_MODE.values()[mode]; } } int titleId = (pickingDirectory) ? R.string.directory_picker_title : R.string.picker_title; int buttonId = R.string.select; switch (pickerMode) { case COPY: titleId = R.string.picker_copy_title; buttonId = R.string.copy; break; case MOVE: titleId = R.string.picker_move_title; buttonId = R.string.move; break; default: break; } // Create the dialog this.mDialog = DialogHelper.createDialog( this, R.mipmap.ic_launcher_filemanager, pickingDirectory ? R.string.directory_picker_title : R.string.picker_title, this.mRootView); this, R.mipmap.ic_launcher_filemanager, titleId, this.mRootView); this.mDialog.setButton( DialogInterface.BUTTON_NEGATIVE, Loading @@ -297,7 +343,7 @@ public class PickerActivity extends Activity if (pickingDirectory) { this.mDialog.setButton( DialogInterface.BUTTON_POSITIVE, getString(R.string.select), getString(buttonId), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dlg, int which) { Loading