Commit Graph

45 Commits

Author SHA1 Message Date
Steve McKay
a1f7680f53 Update preconditions to be asserts...
Which are now supported by Jack.
Retain a few preconditions checks that enforce contract.
Disable the one assert we had...because it failed in tests.

Change-Id: I2f6cb01e1af1534be4428ce4a3ee625a163dd163
2016-02-29 14:47:40 -08:00
Steve McKay
c95d87c983 Don't restore stack when picking copy destination.
Move fancy drawer "fiddling" to FilesActivity.
Rename the various "Restore" tasks to better reflect their roles.

Change-Id: I7f5c3dee11112bf0a31e6219d09c572c5651629d
2016-02-24 13:29:45 -08:00
Steve McKay
cddd034ca7 Merge "Move directory and roots support to own ui bots." into nyc-dev 2016-02-22 20:01:48 +00:00
Steve McKay
b9a20d10c9 Move directory and roots support to own ui bots.
Also...sorry, snowball, don't automatically open folders
    that are created in Files app. Only do this in DocumentsActivity.

Change-Id: I271655fd3566496eced4aaa7a44d5110233150a0
2016-02-22 11:50:34 -08:00
Aga Wronska
893390bd58 Directory fragment refactoring.
First attempt to to refactor fragments handling, state and app lifecycle.

The goal was to simplify code by using android built lifecycle
mechanism, eliminate bugs caused by multiple creation of the fragment,
see the performance impact and give some fundament for refactoring of
fragments and activities in the app.

Search view manager:
    * Remove curentSearch from state
    * Restore search from saved state (ex. after rotation)
    * Rename file  to give the better overview of its purpose

Directory fragment:
    * Store selection state in a bundle
    * Remove double creation of fragment
    * Use loaders to reload content when possible
    * Keep info about state inside the object
    * Refactor available types of fragment to be normal and recents
    * Make search type a mode possibly available in all types
    * Remove search being invoked from refresh method
    * Do search by reloading fragments content instead of recreation as
      an example

Other:
    * Fix window title maybe

Bug: 26968405, 27101786
Change-Id: I58f36cd0a3e3a6ec98996cd8aac16e10e425e1fe
2016-02-22 09:36:17 -08:00
Tomasz Mikolajewski
3d988a969f Provide siblings in a sorted orders in DocumentsUI.
Bug: 27192158
Change-Id: Idefd2ba3027cd4630fcd2aefade9e6b4952e7125
2016-02-16 17:18:34 +09:00
Steve McKay
f873769fba Move create folder and sort to overflow menu, cleanup back behavior.
Improved drawer management in reponse to back button presses:
- if drawer is open (and we didn't just open it), close it.
- if at top of root (and we didn't close root) open it.
- there's a timeout on this behavior such that pressing back
  a second time within a 1.5 second perior will NOT initiate
  the behaviors described above.

Change-Id: I5990848cd3047d9dc985ec10e57ab3a0f99ce79c
2016-02-05 08:46:10 -08:00
Steve McKay
95cd85ad38 Simplify State initialization w/ better semantics + improved Task security.
Also, reveal the illusion that we're restoring state in Files and Downloads.
Also, define a "PairedTask" class that guards calls to task methods
    with checks against isDestroyed. This also let us make all of the tasks
    static, so we get much narrower scope and tasks can even be moved to
    their own files.

Change-Id: I6a9e8706e1ab1d1f43301e73dd9858a115a6baaf
2016-02-04 18:30:29 -08:00
Steve McKay
1f264a8a1a Normalize toolbar management.
Since it was almost all redundant (especially the stack stuff).
Ensure "Files" title present on drawer title in Files app.
DocumentsToolBar > DocumentsToolbar to match toolkit naming.

Bug: 26193264
Change-Id: I92c82c66d936aae3ce0f792581daa12898dfadee
2016-02-03 17:59:06 -08:00
Tomasz Mikolajewski
ba7753c941 Merge "Open zip files nicely from the Download app with Files app." 2016-02-03 03:20:11 +00:00
Tomasz Mikolajewski
a6120da1e3 Open zip files nicely from the Download app with Files app.
Bug: 26321218
Change-Id: I8a7a7e914d290ea1b6f424ee5fbd38a4b09c362d
2016-02-03 11:56:54 +09:00
Tomasz Mikolajewski
cd270153ff Fix tapping on more than one failure notification.
Bug: 26809248
Change-Id: I4e52b7e7a9e09d57b8a2231a09c9121b5fd19e51
2016-02-03 11:03:47 +09:00
Steve McKay
3ce95951bd Show view mode button in action bar on Downloads.
A grab bag also with:
Report Roots while loading (in DEBUG).
Null check DirectoryFragment before calling methods on it.

Bug:26936660,26143397
Change-Id: Ief2c943eb24fb14349bbd9cc4a5fbd670f57d567
2016-02-02 14:51:04 -08:00
Steve McKay
efa1761776 Decouple SD card from ADVANCED storage toggle.
A variety of related fixes:
- don't force size enable when browsing from device mounted notifications.
- don't show settings menu item as action (put in overflow).
- add sd card icon (not quite yet used, need to suss that out).

Bug:26880985,26883578,26771127
Change-Id: I36f153c42217f8092f157ded2a756c02525593ab
2016-02-02 09:28:30 -08:00
Wale Ogunwale
3b93a4d351 Renamed Activity class multi-window APIs
As requested by API council.

Bug: 26507736
Change-Id: I2a87c5eb3c1b48d52703103c2a4f72c250a9a827
2016-02-01 06:58:31 -08:00
Wale Ogunwale
2a25a62739 Renamed FLAG_ACTIVITY_LAUNCH_TO_SIDE to FLAG_ACTIVITY_LAUNCH_ADJACENT
Per feedback from API council.

Bug: 26508215
Change-Id: Id17166fe981587c9c16c382ccbdf0846ed2ae5d6
2016-01-30 11:27:21 -08:00
Steve McKay
5a2120820a Merge "Files always visible, same for new window menu." 2016-01-28 23:42:34 +00:00
Steve McKay
a7e923c57c Create new windows on *other* side in multi-window mode.
Bug:26831180
Change-Id: Ie3fb22847e70cd78998d467a8af9bf20642304e5
2016-01-28 12:03:48 -08:00
Steve McKay
5fe5c458dc Files always visible, same for new window menu.
Remove "productivity_device" bit.

Change-Id: I28ee3e210fc5f8c367d45a74edab0e04667ddd5e
2016-01-28 11:43:08 -08:00
Tomasz Mikolajewski
748ea8cc78 Show a warning notification and a dialog in case of conversion when copying.
Change-Id: I451b0944069deb5f0b49b54c514e7761be449e3d
2016-01-28 13:12:55 +09:00
Steve McKay
3eb2d07fd3 Remember view mode by root.
Now stored in local prefs, not recents DB.
Don't consult preferences for recents from DocumentsActivity.

Bug: 22671255 26689962 26411301
Change-Id: I492d85c450253bce984c929a6dd15d7c31ee6a0b
2016-01-27 16:28:28 -08:00
Ben Kwa
723799858a Add MetricsLogger calls to DocumentsUI.
- Create new categories in MetricsLogger for DocumentsUI events.
- Add logging code to DocumentsUI for launch events and viewing roots.

BUG=26737132

Change-Id: Ib703878a39dd03b57e68a4d5a1d6cf8fe2936c5a
2016-01-26 14:15:42 -08:00
Aga Wronska
f6a31d319f Refactor SearchManager:
- Move SearchManager out of BaseActivity.
- Refactor usage of onCurrentDirectoryChanged(int anim).
- Cancel search when directory changes.
- Enable testing for cancelling search when directory changes.
- Avoid recreating action bar when only the content of the directory is
  changed.

BUG=26495573

Change-Id: I1400090fcb529ad3905018d1640fdb7416542989
2016-01-19 13:29:09 -08:00
Steve McKay
14e827a958 CopyService generalization.
Make the service operation agnostic, so we can also move delete operations to it.
In a followup change we'll see about adding support for multiple concurrent
    operations. We'll need to evaluate how to do this in IntentService (which
    serializes requests....a major limitation).

Change-Id: I03eca9c1ecaba519af42d88edffeb0dce78bd1da
2016-01-07 16:29:36 -08:00
Tomasz Mikolajewski
aa684454f8 Prevent double recreation of the failure dialog in DocumentsUI.
DialogFragment takes care of recreation on configuration change, so no
need to recreate it manually.

Bug: 26322214
Change-Id: I7c50a1c5bb1ba9fab34f6e8d31ed1e23e7edfbb7
2015-12-25 18:22:52 +09:00
Ben Kwa
862b9641e3 Re-enable sorting in the DirectoryFragment.
- Move sorting from the back-end (using SortingCursorWrapper) to the the
  front-end (in DocumentsAdapter).  This makes it such that re-sorting
  the directory contents doesn't necessitate a reload.
- Update DirectoryLoaders to just return unsorted results, and rely on
  the UI to sort them.
- Remove the (now-unused) SortingCursorWrapper.
- Update Model tests to test sorting.

BUG=26024369

Change-Id: I871cc0e496267d381ae546e0309125d04649415a
2015-12-16 13:54:01 -08:00
Steve McKay
b67bfbf975 Load Home directory by default.
Don't update toolbar before first root load.
This was causing Recents > Home flicker due
to Recents being the default root returned from getCurrentRoot.
Revert change causing regression in selection highlight.

Bug: 26093756
Change-Id: I2c555aa38d68e9bf7962b1407f9fc75c800216a6
2015-12-14 18:17:16 +00:00
Tomasz Mikolajewski
39acff5a36 Wire support for archives to DocumentsUI.
Bug: 20176812
Change-Id: I8220afa2f53b07aa842bf6ac24fcc62afd4e2617
2015-12-07 11:34:03 +09:00
Steve McKay
8fd086a18d Fix broken copy after recent copy related chagnes.
Also, add a label to Downloads app, and enabled drag and drop by default.
Cleanued up menu handling in BaseActivity (use switch statement).

Bug: 26033335
Change-Id: I3cef89a4a9f9e30b4e926411e94cf06bc2dc0f8d
2015-12-04 14:24:48 -08:00
Tomasz Mikolajewski
261b6bdd36 Remove TRANSFER_MODE_NONE from CopyManager.
This field is not necessary, as an operation is always either copy or move.

Change-Id: Ide68bb2bf5d237ed4c9abe8c443edd8e12dd82dd
2015-11-05 11:31:32 +09:00
Steve McKay
f862155e34 Move DirectoryFragment and family to dirlist pkg.
Stuff was getting out of control in the main package.

Change-Id: Ia06ba96f5bbe13388d51e6ad52a9dac76af97cc0
2015-11-04 15:04:57 -08:00
Steve McKay
1eafb666c2 Address followup comments from 793838.
Change-Id: Ie77112ea38796f970a8f688c1c94aeb05f46ab78
2015-10-26 13:27:59 -07:00
Steve McKay
3b2ad11fca Enable explicit package for quick view intent.
Define the package in config...suitable for setup via overlay.
Undefined by default makes the feature disabled on phones...n stuff.
Fall back to single-file QUICK_VIEW.
Work around 24963914 (for now).

Bug: 24963914
Change-Id: Ia9c5a606d294ae053fd5e60d015f0aa0010eba4f
2015-10-16 16:33:38 -07:00
Steve McKay
c2dbc74942 Don't explicitly foreground tasks.
Get out of the way of documentLaunchMode, let ActivityManager do the work for us.
Quiet some noisy logging.

Bug: 24413182
Change-Id: Ia48244871296f5c6b83a838dcde6496acbd45793
2015-10-05 14:49:16 -07:00
Steve McKay
5bbae10c4c Normalize and improve menu fiddling.
Also, don't show copy/paste menu items (though they can still be invoked via keyboard).
Show copy to /move to instead.

Change-Id: I6e7bdf35bf370ea30d4f12a5a200ad38ff0221f4
2015-10-02 09:48:27 -07:00
Steve McKay
8359eaafa2 Merge "Provide previous stack when opening new window." 2015-10-01 17:48:41 +00:00
Ben Kwa
cf34ce8e22 Merge "Switch DocumentsUI over from Toasts to Snackbars." 2015-09-30 21:50:34 +00:00
Ben Kwa
94b486d32c Switch DocumentsUI over from Toasts to Snackbars.
Add a new top-level CoordinatorLayout to ensure proper operation of the
snackbar.
Switch all Toast code over to use Snackbar.

BUG=24474629

Change-Id: Iafffb35be6115cbac9304fd44e77e73b6be40c17
2015-09-30 14:47:55 -07:00
Steve McKay
323ee3ec09 Provide previous stack when opening new window.
EXTRA_STACK support was already in place (from CopyService).
Add "isRootUri" to DocumentsContract.

Bug: 24410611
Change-Id: Ia380030216323d1272ef247280582e4b55b83c42
2015-09-29 16:59:11 -07:00
Steve McKay
9f9d5b432d Add support for opening multiple windows.
Installs an intermediate activity that manages tasks.

Bug: 20562850
Change-Id: If2d0a125b0630c27af07666b0f6a712f58243e9f
2015-09-25 14:46:14 -07:00
Steve McKay
83df8c072d Merge BROWSE and BROWSE_ALL actions.
Open Files app when exploring from settings.
Force visibility of file size in this mode.
Don't hide empty media providers.

Bug: 24136618, 24140864
Change-Id: I6f238586725f9b6255812e3082bb8d8655219a7d
2015-09-23 12:25:13 -07:00
Steve McKay
c643386e28 Update RecentsCreateView to use RecyclerView.
Move common DirectoryContainerView handling to BaseActivity.

Change-Id: I2c34b23b7050b68999f16e6d7f651c94ea8e47b6
2015-09-22 15:58:15 -07:00
Ben Kwa
7cc80013f3 Adjust theming for Files mode.
- Bring files mode in line with MD spec platform colors.
- Normalize selection highlight color in grid and table mode.
- Fix status bar and accent colors in portrait mode.

BUG=23797347
BUG=24012021

Change-Id: I3427939b39f3f39f5e04bd4d854166dd6b3881b1
2015-09-15 10:55:22 -07:00
Ben Kwa
0f7078f004 Refactor DocsUI to break out a new ManageRootActivity.
- Split all ACTION_MANAGE-related functionality off from
  DocumentsActivity, into a new activity.
- Create new full-screen layouts for said activity.
- Fix some styling issues in {Documents,Files}Activity.

Change-Id: I0384715ad3c7d70a3a3daf510f1a09e8c5732348
2015-09-11 13:58:41 -07:00
Steve McKay
12055474a7 Show a drawer when in portrait mode.
This makes more space available for content.
Rename all the "Standalone" stuff to just "Files".
Move layout inflation into base class.
Move backbutton > drawer interaction into BaseActivity.

Change-Id: Ie778b323c6e80122389f029be148dd9e0c4bfb6e
2015-08-24 09:05:51 -07:00