| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
|
|
| |
[Procedures]
1.filemanager->security storage->create storage with password
2.after creat successfully->menu->add shortcut
3.filemanager->setting->storage option->delete/reset password->stay on input password view(don't input password)
3.press home key
4.enter filemanager from shortcut on home screen
Change-Id: I00101d14adb89b271a974e8b292f81b7f315f942
|
| |
|
|
|
|
|
|
| |
* busybox is deprecated
* remove awk usage
* fix file system info
Change-Id: I7c2bcbd5024e3be283c9fd6ad699183b6fb5bf1a
|
| |
|
|
|
|
|
| |
* This is deprecated and doesn't appear to be used anyway
* https://developer.android.com/about/versions/marshmallow/android-6.0-changes.html#behavior-apache-http-client
Change-Id: Ifa7c3eeb01cbb5827dc3d504933f99e1b847e070
|
| |
|
|
|
| |
issue-id: QRDL-1077
Change-Id: I10d3c861141590806a8e5b9c665b4f4f4b74141a
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Converting to using the system resolver. The logic has changed slightly
in the following cases:
Open -- Tries to start activity, falls back to EditorActivity on failure
Open With -- Uses Chooser and populates Editor if not already there
Falls back to EditorActivity on failure
Click on FSObject -- Same as Open
Sending Object -- Same as Open
Cleaned up code around this a little since there were unused parameters.
Note: The Chooser will only show EXTRA_INITIAL_INTENTS if there are
other options as well, which is why we have to do the check up front
to see if we need to add it, and falling back to just using the Editor
if nothing exists to handle it.
Issue-Id: CYNGNOS-1236
Change-Id: I803b86cf6bfec80bbc886025be43ce800afd3be1
|
| |
|
|
| |
Change-Id: I684124bb32747a39d772b41c48d62c4c236b3ed2
|
| |
|
|
|
|
|
|
| |
the print action. Use Uri for title and timestamp
for print title.
Change-Id: Ib21006b6e47fd18622c726e9f4beea721328ad6e
Ticket-Id: HAM-874
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
After much thought about this last night, I came to the conclusion
that because applications can in fact do this, we need to be able
to support it in a backwards compatible fashion. In doing so, there
are a few cases which won't work with suggestions, however, the
changes here are less severe than what they were before. Now just
an extra check happens to see if the system wants to handle the
intent if nothing was found to handle it.
What this means is any application acting as its own resolver
will not automatically have the system handle it in this case
and we no longer can support suggestion outlined here:
http://developer.android.com/training/basics/intents/sending.html#StartActivity
The suggestion is wrong anyways as an activity isn't guaranteed
to continue to exist after the query when the start is called. Maybe
I'll try and push a documentation change upstream to AOSP for this.
Change-Id: I8510660420ee52c09d03c719850fa14d6b1c4441
Issue-Id: CYNGNOS-1152
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Fix fail to move a folder to another folder when the one folder name contains the another folder name.
[Reproduce]
1. Create a folder named such as aaa
2. Create another folder named such as aaab
3. Copy or Move the folder aaa to folder aaab
The Operation Fail
Change-Id: I27996f9b9530001fe01eddf80a0cac7a8531c163
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Selected states are not being tracked properly when rotated.
Repro:
1. Click to open file
2. Tap on first item in resolver dialog
3. Rotate device
4. Press ok
5. Enjoy crash
issue-id: CYNGNOS-991
Change-Id: I9ef5d0571201957eac40edc8bc5e47700752dcc3
|
| |
|
|
|
|
| |
Re: CYAN-6559
Change-Id: I61bdc32feb2e46ad25c1060ea5eb3856e4aea37a
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
After receiving search results, the user query was used to sort and
highlight results. If a part of the search included an incomplete regex
syntax (such as a regex metacharacter) it fails to compile the pattern.
Repro steps:
1) Create file with regex metacharactes in name Example: "(test).txt"
2) Search for file using partial name, and only single regex character
(from a set such as "()" or "[]"). Example: "("
Expected results:
Search shows correct files
Observed results:
Search ends up crashing FileManager
Change-Id: Idf5ee3b441481574a5bada1ca7e9048109a13435
Ticket: QRDL-1035
|
| |
|
|
|
|
|
|
|
| |
Since results are now run through an asynctask before they are added
this created a race condition which lead to the screen sometimes
showing 'no results found' when results are actually available
Ticket: QRDL-995
Change-Id: I5b7ddb44c16603fac7ceca3f955038cc3d646de8
|
| |
|
|
|
|
|
|
|
| |
Otherwise it can lead to crashes with short searches
Ref: QRDL-950
Change-Id: Icf555435b4cc7107db328c757633a29ffacd62c5
Signed-off-by: Roman Birg <roman@cyngn.com>
|
| |
|
|
|
|
|
|
|
|
| |
- update count when selecting mime type filter
- use original result list to narrow results
Ref: QRDL-950
Change-Id: I8715f0831e51adf18257d735b0d455c368083411
Signed-off-by: Roman Birg <roman@cyngn.com>
|
| |
|
|
|
|
|
|
| |
Previously, this would result in multiple bookmarks
of the same location
Ticket: QRDL-989
Change-Id: I0f19045bc7a6d5fa98c9ef4ee1a8ccda9c501eb1
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix shortcuts behavior when FileManager is already open.
Repro:
1) Open FileManager
2) Create shortcut for folder
3) Navigate to another folder (not including new folder)
4) Switch to homescreen (launcher)
5) Select the shortcut created in step 2
Expected behavior:
Navigate to shortcut folder
Observed behavior:
FileManager shows last navigated directory (before going to launcher)
Change-Id: I1db814a8990073f8d2de88f90b23b51a1e77cf8e
Ticket: QRDL-1034
|
| |
|
|
|
|
|
|
|
|
| |
Mediascan wasn't working with deletion of items.
We need to grab the items to delete before actually
deleting them from the file system so that we know
which items we should have deleted.
Change-Id: Ia7b6d5c0612b8053d6b3f442dc9cc9312b02e47b
Ticket: QRDL-982
|
| |
|
|
|
|
|
|
|
|
|
| |
MediaScan wasn't being done recursively, so moving a directory which
had content to a different location wouldn't include the children
in the scan. This implementation makes sure all files and folders
within the directory are also scanned. Tested against a dataset of
1000 videos, so performance seems fine.
Change-Id: If3c94f92d96d2d78bb0664112ea235f3e3669363
Ticket: QRDL-1009
|
| |
|
|
|
|
|
|
|
| |
When entering a search result and then backing out all the way, a
history item wasn't being added for the directory the search was
happening in. This fixes it.
Change-Id: I28d5b290a18076f1156f699426420ca78fb3eee6
Cherry-Pick: b4fc75077143de0ff9e26d8d2644d879ccdc0e84
|
| |
|
|
|
|
|
|
|
|
|
| |
If a refresh happens while another refresh is occuring, make sure
that that old refresh is cancelled. In addition to this, remove some
old logic that conflicted with itself. Also, keep ahold of the previous directory
before running the task.
Ticket: QRDL-1002
Change-Id: Ibc1f3d468243bc124d3baf259af21464f3c03c84
(cherry picked from commit 080405b548865e6b118b56ca29ed6a6f0d10bcc5)
|
| |
|
|
|
|
|
|
| |
When we get MountPoint Information in FilesystemAsyncTask,
It will return null.So,the FileSystemInfo's ImageView
will setTag null,and then it will set picture filesystem_warning_drawable.
Change-Id: Ia624312468935cc86956665a3da4824c19728afc
|
| |
|
|
|
|
|
| |
- Do not cast ClosedByInterruptException to CancelledOperationException;
return a new CancelledOperationException instead.
Change-Id: I41cb0c605c55fc896a3e483cb5b1f1fcc913676e
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Search was usable with a small number of results, but when the result
list grows to something > 1000, it can get really laggy.
A few improvemnts:
- The adapter was chunking items and adding them in bulk to the adapter,
but it was doing all the work in the main thread. Now it will process
one item at a time, doing all the rough work in an AsyncTask, and
passing the final objects to the adapter.
- We don't need to do any chunking of items to add them, but sorting
the list as soon as they are added is expensive too, so re-use the
streaming mechanism that was used to add items in chunks, and just
sort the list during that time.
- Cache common variables to not look them up on every result
- Use a List instead of generating a new DataHolder array _every time_ a
new object was added. It would end up GCing thousands of items
every time a new result was added.
- Make the adapter be as simple as possible and just display DataHolder
objects so it doesn't have to do any processing.
Ref: QRDL-950
Change-Id: I17dd606246556cdf2701bbf2b06933f138588d74
Signed-off-by: Roman Birg <roman@cyngn.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
| |
after open and close "Use swipe gesture".
The FlingerListView will setLongClickable false when open "Use swipe gesture",
if we close "Use swipe gesture",the longClickable still false and don't
pop up "Actions" menu.
Change-Id: Ifccb655d619fd32bc569eddfa5f05b0ca3002a50
|
| |
|
|
|
|
|
|
|
|
| |
We are now defaulting to treating 3GP files as video files for
determining the default icon as it was parsing the video files for
their metadata which was causing ANR problems. On top of this, it was
discovered that the metadata parser was leaking memory.
Change-Id: I88f6cf3d8ae1a62d1294bd3272b27715c2352525
Ticket: QRDL-931
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
When a folder was clicked in a search, what was happening is the
refresh() in onStart() was being executed after onActivityResult(), so
the changeCurrentDir() executed in onActivityResult() was being
overriden by the refresh in onStart(). Since the mCurrentDir wasn't
being set until the NavigationTask ends, it would always go back to
the original directory. The change is to make the refresh not happen
if a NavigationTask is currently under way.
Change-Id: I5c354554c9b15fc9d14b4665852b40fb6a1f8853
Ticket: QRDL-932
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
An ANR was happening on SecureConsole when a very large item was
added, canceled, and click the parent in the Secure folder. This is
caused by the locking mechanism used by SecureConsole. Consoles,
long-term, need to be refactored to not synchronize on the
SecureConsole object itself during execute. The only fix we can do
without full refactoring is to not allow cancelling the operation
because the Console doesn't support the cancel operation.
Change-Id: I845372567b8656d63192bfde27952240915ecfe6
Ticket: QRDL-971
|
| |
|
|
|
|
| |
This reverts commit 7b09bb0f1390b72d0ac18484721998eaf805e605.
Change-Id: I24b6115c89e568f6895a3a9d0c074151b85c0be2
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
We no longer deal with having to refresh a directory upon reentering.
Instead we now just listen on the directory for changes and update as
necessary. This will make it much more difficult to get out of sync
with the file system in pretty much all situations.
Changed per comments on patch to no longer do refreshes for the list
when items change as the FileObserver handles all of this.
Change-Id: I28a6af965708ce76107a09d6b931f4c7bafb8365
Ticket: QRDL-932
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Preconditions
1.insert a sdcard.
2.the phone connect with pc and the usb computer connection as Mount Sd card.
Procedures
1.Go to “File Manager”.
2.Copy a file in sdcard.
3.Connect to pc when the system is copying.
4.The CMFileManager will forced termination and switch off the connecting with pc.
5.Go to CMFileManager and copy a file in Sd card.
The copy function is invalid and popup "The operation's command was not found ..."
Change-Id: I042550ce69f4c31a6fe46dfc9aeb53b34588d53f
|
| |
|
|
|
|
|
|
|
|
|
| |
Logic existed which took a pass over the data on the UI thread each
time notifyDataSetChange was called which can cause an ANR on a large
data set. This fix removes a lot of the unnecessary logic associated
with this and moves it to getView(). Performance still seems good on
the OnePlus for scrolling.
Change-Id: Idde74f0688fef0ba7e4b560b06d9494896a24174
Ticket: QRDL-931
|
| |
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
| |
Whenever the secure folder was opened from the drawer, it would prompt
for a password and then go to the root folder again. This was caused
by the logic in onResume() which is all meant for when entering
another activity and then coming back into this activity. This should
really be the job on onStart() as onResume() also handles dialogs.
Change-Id: I45e0e44e3e8f9031b0685628a3f24c02725e24e1
Ticket: QRDL-946
|
| |
|
|
|
|
|
|
|
|
| |
loading images.
There were a couple of problem causing this, so I
felt it best to change the implementation.
Change-Id: Ic77a94681d77fa4fba49f3f24f40e260220b925a
Ticket: QRDL-905
|
| |
|
|
|
|
|
|
| |
For large data sets, this can cause slowdown on older devices or if
you have a significant data set size.
Change-Id: I1eeea9132df0d4e5c8dad17009b648826e3386c6
Ticket: QRDL-931
|
| |
|
|
|
|
|
|
|
|
|
|
| |
to restore the original position.
The only caveat is because the history items don't maintain the scroll
offset, it's not a perfect restore. Ideally, we want to maintain the
scroll offsets of the first item within the AdapterView and restore
those as well.
Change-Id: I69b01bef11e26a29aabd57d2bc3e7853b6f67e08
Ticket: QRDL-922
|
| |
|
|
|
|
| |
This prevents accidental touches outside of the dialog during long operations
Change-Id: I5d903a56aa8e72963967629bd4d844d19e3922dc
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, files opened that were not contained
inside the /data/media partition were considered
invalid.
Repo steps:
- Open email with .txt attachment
- Open attachment with Editor
This also fixes similar issues all across the
system where content uri's would not open in
editor. Previously they would report that the
user needed to gain root access.
Change-Id: I15aa3fd81ae261f66920d253d6adebe28cf28e66
|
| |
|
|
| |
Change-Id: I852fff76aef4f47bbd6d809c64afcc2f77165553
|
| |
|
|
| |
Change-Id: Iec39763194916c12c1947fb4f297e74c6dfa2f5f
|
| |
|
|
|
|
|
|
|
|
| |
The command is finished and the partial result may also have the command
exit code. When the partial stream does have the exit code, we were
writing *only* the contents of the exit code, but we need to write
everything *until* the exit code, keeping the contents intact.
Change-Id: I5e7af1125270c394f42fe7661cbefdd98c6a6052
Signed-off-by: Roman Birg <roman@cyngn.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
We always know the start and end control patterns will be in UTF-8.
However, the content in between could be encoded differently.
Search for the patterns in the shell command output using raw bytes,
instead of a string pattern match.
Change-Id: I6cb019b644d371c37593fe26784f6e9d41844dec
Signed-off-by: Roman Birg <roman@cyngn.com>
|
| |
|
|
|
|
|
|
|
|
| |
The logic for validating secure storage passwords is designed
for when a user creates a new password and not when they reset
it. This causes the dialog to enable the "Reset" button prematurely.
This patch adds the necessary checks for when mResetPassword is true
Change-Id: I6d52865b2316ff6eeffeb5eaf61e787f6222e9f7
|
| |
|
|
|
|
|
|
|
| |
Sometimes files get deleted while FM is in
the background. Let's update the list of
current items every time we resume just in
case.
Change-Id: Ib3076ec97d9a0af23f57bb83bff6e0de9c728285
|
| |
|
|
|
|
|
|
| |
This way, weird file system sizes display nicely.
Without this a mountpoint with a size of 1.68GB
displays as 1GB.
Change-Id: I72e0d8ff911dd942efd5860f2d86607ebbb30fcb
|
| |
|
|
|
|
|
|
| |
With older versions of android, updating with
.delete was the proper way to remove these items
The issue is that, doing this does not update MTP.
Change-Id: I9b7098927fbda6e78a9baedb5e5e35968c082108
|
| |
|
|
|
|
| |
Change-Id: Ic398a2eaa7ac06d8c2ffccc10033d2d32a0dba60
(cherry picked from commit 766c7ba627fb8d685408429ce027c6826bb9c2ab)
(cherry picked from commit b2dfe80d30f5e82ae231fe7392ed0786a4661dfa)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Procedures
1.Go to Settings -> Security ->Screen pinning and Open the screen pinning.
2.Go to FileManager and Callout the Recents Task.
3.Press the screen pinning button and lock the CMFileManager screen.
4.Press back key sometimes when the scren pinning toast show.
5.Open DrawerLayout and Press the Internal storage
6.Press the All to enter NavigationView.
There are no folders in NavigationView.
Change-Id: I7bbdad87812a66c346c4632886b42c3c79540373
|