aboutsummaryrefslogtreecommitdiff
path: root/src/com/cyanogenmod/filemanager/commands
Commit message (Collapse)AuthorAgeFilesLines
* Default file manager fails to search files with Russian file namejaffersulaiman2016-03-303-3/+3
| | | | | | | | Changed Find command argument name to iname in command_list xml. square brackets and upper case format removed from searchHelper class Bug: CYNGNOS-2273 Change-Id: I40fe203929656055e209f10f6284c0b39634a6fb
* Adding NULL checks AsyncResultProgram.javaAbhishek Gilra2016-01-251-6/+12
| | | | | | | Discovered NULL object dereference during the monkey test. Resolving possible NULL dereferences. Issue-Id: YAM-61 Change-Id: I2b03338557d0f5590678cb1c0532c5cc6f586049
* Secure file moving issue fixroot2015-10-151-0/+7
| | | | Change-Id: I684124bb32747a39d772b41c48d62c4c236b3ed2
* Improve copy/move performance with nio and reintroduce cancel.Matt Garnes2015-08-122-3/+3
| | | | | | | | | | | | | | Utilize FileChannel.transferFrom to copy files faster. Chunk the file transfer so that we can check between each chunk if the user has cancelled the copy. In my tests copying a large file (650MB), this improved performance by 45%. Also, bring the cancel feature back for non secure storage. Fixes QRDL-976. Change-Id: I112cee7b9dfe682a438516f7f938dfd7538f1efb
* Secure Move: Check to make sure libtruecrypt correctly erroredStephen Bird2015-07-271-1/+6
| | | | | | | | When copying an item out of secure storage and into the regular file system truecrypt will sometimes report that the file operation failed. When in fact the operation was a complete success. Add a check to make sure truecrypt is correct. Change-Id: I1520455a9ce9dc403f2ca6fb50cf1a4f8604bc64
* Implement ability to cancel file copy.Martin Brabham2015-04-133-6/+20
| | | | | | | | | | - Short circuit Java CopyCommand for move/copy when the user cancels the dialog. - Bubble up CancelledOperationException when the Cancel/Move operation is cancelled. Handle cancellation differently than success. Change-Id: I3e4426aaccf42e12bf299041d489e72b3b76a626 (cherry picked from commit 7e13ec2fa4fc052c2a880a8dba8ed871b3bc10ca)
* Fix deadlock when reading shell output.Matt Garnes2015-04-101-18/+5
| | | | | Change-Id: Ia38ac6c415506f21ffde5a4c3e658e810dea92da (cherry picked from commit 2f7e43ce8f37b61c2998aadc56c6323faae80c51)
* Detect text encoding with juniversalchardet.Matt Garnes2015-04-1010-33/+39
| | | | | | | | | | - When opening files in the built in editor for display, detect the encoding with juniversalchardet, so that the correct encoding will be used. - Use byte buffers to back ShellConsole instead of StringBuffers Change-Id: I85fa567ef589a82f1c8604f1f215647376c31c9a (cherry picked from commit 55c55835d3bd685dde542b4f5952ce401542ab84)
* Support ambigous file extension mimetypes.Matt Garnes2015-03-263-3/+19
| | | | | | | | | | | | | Previously, CMFileManager operated under the assumption that file extensions map to exactly one mimetype. This is not true in some cases, such as .3gp files, which can have an audio or video mimetype. Add support so that in mime_types.properties we can specify a comma separated list of mimetype info that are matched with a given extension. If an AmbiguousExtensionHelper subclass implementation is provided for one of these extensions, this is used to determine the correct mimetype for the file. Change-Id: Ie73d6ad646692dfeac112ac50c1c6436e6b5559b
* CM File Manager - Make AsyncResultExecutable's cancel() and end() innocuousRohit Yengisetty2015-02-122-10/+38
| | | | | | | Ensure that cancel() and end() calls don't block the current thread unnecessarily waiting for a notify(). Change-Id: I05843c8e1bdf880243e1fe9a226809aeaf33986b
* cmfm: secure storage and other improvementsJorge Ruesga2014-11-1024-17/+3032
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for virtual filesystems and implements a SecureStorage filesystem (a password protected area) mounted in /storage or /sdcard/storage (in chrooted environments). Also includes a better print support and a cleanup of the code and design of the menu drawer. Bump version to 2.0.0 Required: https://github.com/jruesga/android_external_libtruezip located in external/libtruezip Patchset 4: Fix selection of unmounted virtual storages. Fix actions on virtual mount points folders. Fix strings and typos. Change drop for delete secure storage. Patchset 5: Move actionbar buttons to navigation drawer Remove history position Patchset 6: Update theme preview images Fix filesystem status image on theme change Patchset 7: Fix binary file detection in editor (including unicode files) Patchset 8: Fix unsafe operations in virtual mountpoint logic Patchset 9: Rebase Change-Id: I65511352ca649dcbf238c8b07cf8c22465296e8e Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
* Mount emulated storage in root mode.Danny Baumann2013-10-082-0/+20
| | | | | | | | Make sure to tell su to mount the emulated storage. As this means that the su shell lives in its own mount namespace, perform remount operations on both the foreground and the background console. Change-Id: I9372eefa1df91d1ecd3c89a25a391b977d77da45
* Fix a number of default locale issues.Danny Baumann2013-09-201-1/+3
| | | | | | See http://elliotth.blogspot.com/2012/01/beware-convenience-methods.html Change-Id: I1f1e8dba6bbe862fcefc4bbde7d3eb0dfaf15982
* Merge "CMFM: CYAN-200 - Archiving and Extracting .ZIP files in CM File ↵Jorge Ruesga2013-03-182-19/+127
|\ | | | | | | Manager" into cm-10.1
| * CMFM: CYAN-200 - Archiving and Extracting .ZIP files in CM File ManagerJorge Ruesga2013-03-172-19/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added support for zip and unrar commands. Zip, unzip, unlzma, unxz, uncompress and unrar are now optional. Compress or uncompress of these types are only available if its commands are present in filesystem NOTE: This change requires that zip and unrar commands are present in the filesystem at /system/xbin, which actually don't. Patchset 2: Rebased Change-Id: I30667c802bc5b678015b28bb3170377ceb37a1b8 JIRA: https://jira.cyanogenmod.org/browse/CYAN-200 Bugfix: CYAN-200 Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
* | CMFM: Fix checksum java commandJorge Ruesga2013-03-181-2/+2
|/ | | | | Change-Id: Icdda7cc7b5176ecac001087592fd404768ab97e6 Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
* CMFM: CYAN-285 - Add ability to calculate file checksumsJorge Ruesga2013-03-166-0/+565
| | | | | | | | | | | Added support for compute MD5 and SHA1 file checksums Patchset 2: Remove trailing whitespaces Change-Id: I46cbd0d451eea76e259bdddc485774bbfd34cdc0 JIRA: https://jira.cyanogenmod.org/browse/CYAN-285 Bugfix: CYAN-285 Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
* CMFileManager: Fix tar commandThiago Vinícius Freire de Araújo Ribeiro2013-03-111-1/+3
| | | | | | | | | Add -C parameter to tar command. If this is missing, any attempt to compress using tar will silently fail, creating an empty destination file, as the source files cannot be found at the working directory. Change-Id: I1eee8dee673790c92c43615eaffd1c9f8399373e
* CMFM: CYAN-533 - Increase timeout in File ManagerJorge Ruesga2013-03-1013-7/+146
| | | | | | | | | | | Fixed timeout problems with list, copy, move and delete commands. Check new data for list commands; use indefinitely wait for copy, move and delete commands. Tested with 5000 and 30000 files. Change-Id: I33cd6c9b7422966cdc4bc0c9cb265f74533ef161 JIRA: https://jira.cyanogenmod.org/browse/CYAN-533 Bugfix: CYAN-533 Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
* CMFM: fix broken toolbox ls commandJorge Ruesga2013-02-201-7/+18
| | | | | | | toolbox ls -alR is broken (only returns the first folder). Change to busybox ls applet. Change-Id: I5226b3911d0fb2890f7e1cc1cb7a439ea593b1bf Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
* CMFM: Wait indefinitely on privileged console allocationJorge Ruesga2013-01-131-0/+26
| | | | | | | | | | Wait indefinitely if a privileged console is being allocated. Wait for the user response to SuperUser or SuperSu prompt (or whatever it is). Change ShellConsole.this access to a private variable in methods of ShellConsole Change-Id: I6752fe8bcd0de3aa6478ad97fb84c9ac8697a970 Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
* CMFM: Do not use cd and pwd commandsJorge Ruesga2013-01-099-516/+0
| | | | | | | | Remove cd and pwd commands and use / as working directory for shell process (this commands are not used). This prevents that storage volumes from get busy on unmount file systems. Signed-off-by: jruesga <jorge@ruesga.com> Change-Id: I772866c00233351f505b61f53d43bac5de02a5e4
* CMFM: Fix race conditionJorge Ruesga2013-01-081-3/+0
| | | | | Change-Id: I3ed0d38665b12aa39313c55f7daaa63bd80875a0 Signed-off-by: jruesga <jorge@ruesga.com>
* CMFM: Fix AsyncResultProgram deadlockJorge Ruesga2013-01-072-15/+10
| | | | | Change-Id: Idd32ef7902eaf86e573728f7e442c281a47249fc Signed-off-by: jruesga <jorge@ruesga.com>
* CMFM: Fix sync objectJorge Ruesga2013-01-071-10/+6
| | | | | Change-Id: I32db52a17fa1c0a3f31010e16b5cf2a697be7f6d Signed-off-by: jruesga <jorge@ruesga.com>
* CMFM: Fixes and ImprovementsJorge Ruesga2013-01-0514-421/+326
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Some performance improvements: - Use stat instead of ls. This allow improve listing of directories with symlinks. Symlinks are resolved by File.getCanonicalFile. - Simplify ls, fileinfo, find and readlink command - Simplify the parsing of FolderUsage (only type, size and category is required), and avoid to load a lot of on unused objects - Add new file datetime information from stat: access, change and modify - Improve list, find and resolvelink java commands * FadeEffect and symlink handling * Remove context from AIDHelper and add new helpful methods * New getAbsolutePath method * Use file separator for paths and ROOT_DIRECTORY for root directory path * Organize startup - Initialize variables prior to register receivers - Load AID data for improve performance through caching - Load the theme base used by AOSP widgets * Allow Editor to show zero-length files Allow the editor to load zero-length files (like /proc/mounts) and change the buffer type to no editable in binary files. * Invert allowed mount points detection. This change inverts the algorithm for prevent unmount needed rw filesystems. Now uses known restricted filesystems instead of known allowed filesystems. Now filesystems like yaffs2, fuse, and other linux filesystems are allowed by default. * Remove unused xliff namespace * Add flagNoFullscreen to EditText widgets * Fix listview selectors of history and bookmarks * Fix race condition When the command was executed prior to block the execution, the thread wait for the timeout. Add a sync access check to ensure that prior to lock and wait the program executed is not finished. * Fix for async programs When the partial buffer received for an async program is not complete (ends with a EOL), the partial buffer was discarded. Add a new buffer with this lost chars to complete this bytes next time * Fix list command Use -n1 for xargs in list command to prevent "argument line too long" * If parent is null then assume that it is the root folder * Use only name and parent for equals method on FileSystemObject A FileSystemObject is the same if his name and path are the same. * Increase performance of adapters Use argument data when possible to avoid call the adapter methods * Do not clear selection on some actions Actions like create new file/folder, show properties and other actions that explicit requires clear the active selection, shouldn't removed the active selection. * Add a new additional line to dialog messages to fill the dialog * Fix spanish translations * Fix theme roulette on tablets * Clean NLS and Override warnings * Fix parse size data with dots * Add listeners after set the values to avoid raising triggers * Increase performance of adapters. Notify the data changed at the end of the changes, and only to super adapters (the internal structure has already been updated) * Ensure that all the Cursor references were closed after used them. * Remove unused SuppressLint * Clean up Change-Id: I4326e97cbc942c767829f1a0ff6b380ad768cfef Signed-off-by: jruesga <jorge@ruesga.com>
* Issue 6743: CM FileManager can't recognize file types if named with capital ↵Jorge Ruesga2012-12-111-1/+1
| | | | | | | | | | suffix Issue: http://code.google.com/p/cyanogenmod/issues/detail?id=6743 Added case compare to extension and mime/types. Change-Id: I394472e03b5a92590088fdebbb75dd13ee4bade2
* CMFileManager: FormattingJorge Ruesga2012-12-111-4/+7
| | | | Change-Id: Ia3e72bdad1882afbb151d2f04340a1af88c20682
* CMFileManager: Fix ReadCommand incompatible bufferJorge Ruesga2012-12-111-8/+8
| | | | | | Replace Reader buffer for InputStream buffer for avoid incomplatible char[] -> byte[] conversion. Change-Id: Ic916f55e5b0be96d1b4ffef36ddd5d5858ea3fdc
* Fix possible NPE, and log path of "not found" commandsTanguy Pruvot2012-11-172-1/+6
| | | | | | Patchset 2: Added more log from https://github.com/tpruvot/android_packages_apps_CMFileManager/commit/6634611ba820f2a2c90f6ed9a7658f1d076bb32c Change-Id: I1612e16b7e144f688909501434230f7e55d5d459
* CMFileManager: Fixes for non-rooted devicesJorge Ruesga2012-11-133-113/+32
| | | | | | | | | | | | | Various fixes for non-rooted devices running under java console: * Improve navigation (caching unsused data on chrooted mode: aids, mountpoints, ...) * Editor: Don't ask user to gain privileges (non rooted devices never can gain privileged access) * Move common file operations to FileHelper * MoveCommand: As shell console, java console doesn't allow to move between filesystems. Use a copy-delete operation when renameTo is not allowed. * On non-rooted devices, not allow to change to other access mode. Change-Id: I7ae8b4f4203fc8a20f498e43f45c0a956731b02e
* CMFileManager: Fix mv operation on Cross-device link failureJorge Ruesga2012-11-0517-19/+149
| | | | | | | | | | | | | | Issue https://github.com/jruesga/CMFileManager/issues/31. The busybox mv command returns a failure when files are moved between filesystem (Cross-device link failure). This changes fix this failure by: * Replace mv command for a "mv or cp+rm" operation. * rm operation occurs over source mount point so this need to be mounted prior to execute this new command. * Fix the stderr buffer filling on error. Change-Id: If113ad810e7daffeb8379589789b2855eda14908
* CMFileManager: Fix list of folders with broken symlinksJorge Ruesga2012-11-041-2/+3
| | | | | | Issue https://github.com/jruesga/CMFileManager/issues/28. Change-Id: I7dee65bb93247d39028e61fad98087320629a0a0
* Fix incorrect InsufficientPermissionsException detectionjruesga2012-10-281-1/+1
|
* Catch InsufficientPermissionsException exception on read filesjruesga2012-10-271-1/+6
| | | | Detect when there is no privileges to read a file, and ask the user to gain access prior to read the file
* Change application name to 'File Manager' (issue #20)jruesga2012-10-26100-0/+10883
Full refactoring of package from explorer to filemanager