The "delete" operation is immediate and permanent, and users may wish
to instead mark content as being "trashed", so they can recover
accidentally trashed items before they're permanently deleted.
The default trash timeout is 48 hours, which should be enough time
to recover items the user cares about. Apps can also use a custom
timeout if desired.
This is implemented by recording an "expiration" time for trashed
items, and deleting expired items during the next idle maintenance
pass. Also use this expiration time to clean up pending items that
haven't been published; by default apps have a day to publish
pending items.
Bug: 121227045
Test: atest MediaProviderTests
Test: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore*
Change-Id: I2e371b308dc135ad5363709a6f5385e4456bcb96
Unlike the original implementation, package can be verified with an
in-kernel trusted keyring. In this case, we simply need to know if
fs-verity exists for the file.
Test: observed expected behavior with extra debug log
Bug: 112037636
Change-Id: I7a6ff35853f24f5a0a2727ddef376f9857a2d789
The data connection reasons are implementation details
of telephony and should not be exposed externally. The
data connection fail cause, which is different from
reasons, are still available.
Test: Telephony sanity tests + unit tests
Bug: 73659459
Change-Id: Ia005abf19664e6213118ee932495950af118456d
This change moves the calls in NotificationEntryManager to
NotificationData.Entry.createIcons() and .removeIcons() to
NotificationRowBinder.inflateViews() to encapsulate all the view
handling in the latter class (and so that we can eventually not create
those icon views right away).
Test: atest SystemUITests, manually
Change-Id: Ie515c85b81ce6ad5de607b83e8f242d7ae03326e
The default carrier config was setting the level
calculation method to an empty string, which caused
the level to be set forcibly to NONE/UNKNOWN due to
the logic failing to account for empty strings. This
patch sets the default to something sane "rssi" that
matches legacy behavior and also adds guards so that
an empty string will be considered default, and a non
empty but otherwise invalid string will also try to
use RSSI instead of simply failing to display signal
bars.
-Add protection against invalid array sizes
-Fix a bug where RSCP could use RSSI thresholds
-Add fallback for RSCP thresholds being null when the
measurement type is set to RSCP.
-Define RSCP thresholds as constants.
Bug: 118800169
Test: atest CellSignalStrengthWcdmaTest
Change-Id: I8d6261bc5adab6bf9b0a88f7d59b259d338a49e9
The existing buckets work well for first-level clustering of related
media, but it's common for multiple media items within a directory
to form a conceptual unit. To support this, we're creating a
second-level of bucketing which is formed using the first part of
the file name.
This supports common industry-standard patterns like:
IMG1024.JPG
IMG1024.CR2
While also opening the door to further flexibility in the future:
IMG1024.JPG
IMG1024.HDR.JPG
IMG1024.BURST001.JPG
IMG1024.BURST002.JPG
IMG1024.BURST003.JPG
IMG1024.DNG
IMG1024.DEBUG.BIN
We're currently advocating that the default representation of one of
these secondary clusters is the shortest .JPG filename contained
inside, with length ties broken alphabetically.
Clean up database management so that upgraded schema always matches
pristine schema, with tests to verify. Generate views using the
actual projection mappings used at runtime.
Bug: 115377970
Test: atest MediaProviderTests
Test: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore*
Change-Id: Ic679055ab6c884d2048626f51670a5dd370281c0
This method is needed so that precompiled layouts can reuse the factory logic
from the LayoutInflater.
Bug: 111895153
Test: atest android.view.cts.LayoutInflaterTest
Change-Id: Ifd1028906b655af2bd14247d586dc16b35550c82
This change modifies the swipe handling logic in NotificationSwipeHelper
such that it doesn't attempt to snap to the "menu open" state when the
menu is zero width (i.e. it's snapping on a left-to-right gesture and
the menu is only enabled for right-to-left swipes). This prevents us
from getting in to a state where the menu was considered "open" when it
wasn't, which caused the next gesture to be handled incorrectly.
Change-Id: I3b78e95de7266e5a469637007ca78f7af2caab49
Fixes: 121077588
Test: manually
That way there is less redundancy in the menu displaying accent color
and icon shape choices in developer settings.
Bug: 122308197
Test: make
Change-Id: I177ec1285e49f727ac9d0e424fecd84029ec8309