The bug resulted from the fact that turning off loading while loading is
turned off causes the loading finishing animation to flicker. By only
turning it off when it is on, we ensure it works.
Change-Id: Ia31bf3e9aa90726e39b6bc7189d175c38fb51e5a
Fixes: 38045492
Test: Manual
If you tap aggressively before the fragment has fully initialized, it
was possible to NPE. This null-checks to avoid this.
Change-Id: I3488245d230cf1e16b23e34614c8e6b43ea14ff1
Fixes: 37945253
Test: Robotest
This occurred this because the files preference was initialized during
displayPreference(), but the volume used to initialize it was not being
set until after the displayPreference() call. In this case, the files
preference would hide itself and never come back.
This fixes this by double-checking the Files visibility status whenever
we set the volume.
Change-Id: I0b1a7a9566e9caece39ec58706fbca034ef4c1c2
Fixes: 37790776
Test: Settings robotest
We were using a different calculation in the top level view compared to
within the Storage settings. Technically, both are correct (one of them
is aware that we're considering cache as free, one does not). This patch
aligns us on the cache as free strategy.
Change-Id: I9ac26683a4d2a30b77a1da534aa2ddd3d4da6657
Fixes: 37175551
Test: Settings robotest
One regression from the previous storage view is that the
Files category should not show at all when the storage is adopted.
Fixes: 36786953
Test: Settings robotest
Change-Id: Ice365fabc3bfa66f4c5526ac78bbbfc5e15b7b35
As per storage discussions, the best way to calculate storage for the
System is to just take all known data and subtract it from the used
bytes. There is more to the system than just the /system partition and,
even if we ignore the partitions and use the underlying block device
method of calculating it, we run into the problem of it not adding up to
the actual device size.
Change-Id: I6e1f775ea3f3b8b2cc78d734623934651e2fb7b4
Fixes: 37166310
Test: Robotests
If a user tells a device to forget a storage volume and then
goes back to the PrivateVolumeForget activity from their Recents, it
attempts to re-initialize itself with a volume that it forgot.
And this makes Settings crash.
By gracefully killing the activity when we try to open
PrivateVolumeForget for a forgotten volume, we avoid this crash.
Change-Id: Ib4e881c10f0c872ce6b268b16a573960230ef99b
Fixes: 34856304
Test: Settings unit test
This crash occurs because, even if you finish an Activity during
onCreate, the other lifecycle methods occur. In this case,
onActivityCreated assumes that onCreate ran properly.
By exiting early from onActivityCreated, we can ensure the activity
is finished properly.
Change-Id: Ia354341bf82d295c7dd042668fb11d588ddfebc0
Fixes: 37334861
Test: Instrumentation test
There were two issues that stopped the options menu from
showing properly. First, the SettingsPreferenceFragment did
not call its super class, causing the Lifecycle methods to
never be called. Second, the options menu was not being
invalidated which also stopped the Lifecycle methods from
being called.
Change-Id: I29f2fc105c7ecae7adaccb2e4643e48646398d8d
Fixes: 37255835
Test: Robotest
This removes the Manage Storage button and moves the titles of
the preferences to match the new progress bar location.
Bug: 2108251
Test: Manual
Change-Id: I1dce610050e44abd4665537e42a752bf34e94384
It may crash if opened during the uninstall of an app. By catching
the exception which may occur, we can just skip the uninstalled app
and avoid crashing.
Change-Id: I1b96b0697f4041be356260d6c675593affc1cb69
Merged-In: If556db7b5a299ba53a29baefbbe9709ba6d12190
Fixes: 36793223
Fixes: 36793372
Test: Settings unit test
If icons were fetched before displayPreference() is called, it can
cause a NPE. This adds a null check to ensure that it never
attempts to set an icon without both the icon and preference being
non-null.
Change-Id: Ib4269428e64545c9e255f7e3292fb6c046c1f307
Fixes: 37248158
Test: Settings Robotest
It may crash if opened during the uninstall of an app. By catching
the exception which may occur, we can just skip the uninstalled app
and avoid crashing.
Change-Id: If556db7b5a299ba53a29baefbbe9709ba6d12190
Fixes: 36793223
Fixes: 36793372
Test: Settings unit test
This icon is loaded in the background to avoid doing IO on
the main thread. Once we know there are more users and also
have the icon loaded, we add the category to the view.
Fixes: 36252572
Test: Robotest
Change-Id: Ib50287bb7ed323f22fbe407b56be1bf2fe98f121
Currently, users can use an SD card or USB drive and adopt it as
internal storage using existing flows. They can manage this drive
perfectly fine using the old storage screen, which is still around.
One functionality that was lost was the ability to migrate data from
the adopted drive back to the private internal storage. This appeared
in a dropdown in the old storage settings.
By duplicating the code to create just that specific menu item and its
click behavior, we can restore this functionality to the new storage
view.
Change-Id: Id0e01c560e7249acccfe86c5da44466dd58fe5d4
Merged-In: I4b8c06912d2c0b2c5be5bce8b217d45accf34d4b
Fixes: 35926028
Test: Settings Robotest