As ICU is updated, delete special cases.
Test: atest core/tests/coretests/src/android/text/EmojiTest.java
Bug: 151964652
Change-Id: I89032c22e5464d257866d926062db34c65943572
(cherry picked from commit 31d7c155b7)
Adds more comprehensive callbacks and getters for the WindowInsetsAnimationController,
to make it more straight forward to properly use.
Test: atest InsetsControllerTest PendingInsetsControllerTest
Fixes: 151707442
Change-Id: Ida55f609112396c0f6de4c5c4431e0793c2e315e
* changes:
[SP25] Rename functions that add Entry conditionally
[SP24] Rename functions that add Entry unconditionally
[SP23] Address misc API review comment about NetworkStats
[SP21] Address comments for API council review about aosp/1172143
[SP20] Check signature permission when accessing network stats provider
Due to changes in R, the a11y framework no longer dispatches touch
events for a long press. This prevents the activation of EditText's floating menu.
We can re-enable it by implementing the proper a11y action
ACTION_LONG_CLICK. The menu itself is diffult to access through TalkBack's linear
navigation, but this is future work for a separate known issue.
Start and stop the menu for editable TextViews, which includes EditTexts.
Since touch events are no longer sent by a11y, separate the
accessibility handling from the touch handling infrastructure for long clicks in Editor.
We can't go through the main performLongClick code because it doesn't
actually start the action mode but rather sets pending, which routes
back to TextView. There's too little separation between the touch events and action logic.
Whoever touches the performLongClick code may need to also make
corresponding changes to the a11y path, but I suspect this won't happen often.
Remove the onInitializeA11yNodeInfo override for EditText because this
is handled by TextView.
Bug: 148127445
Test: Tested text fields in various apps. ag/10602004. atest
FrameworksCoreTests:TextViewActivityTest#testToolbarAppearsAccessibilityLongClick
Change-Id: I3958e5b80e6156e03c99335e0d0b671438965ebb
(cherry picked from commit 3f1203fb78)
Merged-In: I3958e5b80e6156e03c99335e0d0b671438965ebb
Currently, in NetworkStats, there are many methods to manipulate
the records. However, some methods are similar and ambiguous,
such as addEntry, addValues, setValues, addIfaceValues,
combineValues and combineAllValues.
Thus, properly grouping and renaming methods are necessary.
In this change, for methods that add one record unconditionally,
name them insertEntry.
setIfaceValues -> insertEntry
addEntry -> insertEntry
Test: atest FrameworksNetTests ImsPhoneCallTrackerTest TetheringTests
Test: m doc-comment-check-docs
Bug: 148895143
Change-Id: I801ddc49e283a254b9586700c9b597c0adb0d459
Merged-In: I801ddc49e283a254b9586700c9b597c0adb0d459
(cherry picked from aosp/1256352)
Before device setup is complete, we shouldn't ever show the "using this
app outside your work profile" toast. This toast is confusing in the
context of Setup Wizard.
Fixes: 150451876
Test: atest com.android.internal.app.IntentForwarderActivityTest
Test: Manually verified no toast during setup
Test: Manually verified toast appears after setup
Change-Id: I661cc18c625609726388f3705c7b893517e23323
1. libtextclassifier and libtextclassifier-java are no longer built
into framework/base.
2. Removed local text classifier code
3. Removed local text classifier test code.
All of them should be already moved to libtextclassifier/tcs side.
4. Unify all the TC related log tags to "androidtc".
BUG: 147412216
Test: mts-tradefed run mts-extservices
Test: atest frameworks/base/core/java/android/view/textclassifier
Test: Sanity test: Smart selection
Change-Id: Icb1076153f51d5674c8a6c58681ffed5aa772149
Use this cmd to enable the feature:
adb shell device_config put systemui append_direct_share_enabled true
Use this cmd to adjust timeout threshold (in millisecond):
adb shell device_config put systemui share_sheet_direct_share_timeout 15000
Bug: 151112858
Test: manually tested both prod flow and prototype flow on phones.
Change-Id: I328ecefc9dffad40ec412c033da54e0443f8889a
When process configuration was applied on the client side it
accidentally applied an override to display adjustments in resources
for all ResourceImpl objects. This resulted in resources of
activities having incorrect display adjustments and reporting
incorrect display size.
This CL fixes the issue by updating the applied config with the
activity override. It also removes
ResourcesManager#applyNonDefaultDisplayMetricsToConfiguration, which
is no longer needed on the client side since the server-side is fully
multi-display aware.
Bug: 148639826
Test: ActivityThreadTest#testHandleConfigurationChangedDoesntOverrideActivityConfig
Test: AppConfigurationTests#testDisplaySizeInSplitScreen
Change-Id: Ib3ee007bcccd11451556b66274de4257cba082d4
Centrialize SystemTextClassifier fields into a class, e.g. userId,
useDefault, callingPackageName. Then all the TextClassifer request
should contain this class object. This helps to scalability if we
want to add new fields.
Bug: 149080832
Test: atest FrameworksCoreTests:android.view.textclassifier
Test: atest FrameworksCoreTests:android.widget.TextViewActivityTest
Test: atest CtsTextClassifierTestCases
Test: Manual. Check the parameters are expected when doing smart
selection, smart linkfy.
Change-Id: I224208adac333e2da7b4213f0905f6fb0abb8b2e
Change-Id: Iaef82c1d6ec8893888258820ac103f1b988eecfa
There is no need to introduce jank risk and run the inset
animations on the main thread if the app doesn't listen to
animation events. In that case, move the animations onto a
separate thread.
Bug: 118118435
Test: Inspect systrace
Change-Id: Ib6e4b4ce8e9dd8e27761ced6eb8d7700b6236a32
Add support for "adb shell cmd time_zone_detector".
This allows platform developers and future host tests to simulate
clients like telephony / SettingsUI and make changes to the
TimeZoneDetectorService state to mimic various real-world situations.
Example adb shell invocations:
Withdraw a previous telephony suggestion from slot_index=0:
cmd time_zone_detector suggestTelephonyTimeZone --suggestion --slot_index 0 \
--zone_id "_"
Make a new telephony suggestion from slot_index=0, with a quality of
TelephonyTimeZoneSuggestion.QUALITY_SINGLE_ZONE, and a matchType of
TelephonyTimeZoneSuggestion.MATCH_TYPE_NETWORK_COUNTRY_ONLY:
cmd time_zone_detector suggestTelephonyTimeZone --suggestion --slot_index 0 \
--zone_id "Europe/London" --quality single --match_type country
Make a manual (user) suggestion as if from SettingsUI:
cmd time_zone_detector suggestManualTimeZone --suggestion --zone_id America/Los_Angeles
Bug: 140712361
Test: Various command line invocations.
Test: atest core/tests/coretests/src/android/app/timezonedetector
Merged-In: I0f16868a526d2ea4b17acbd274cb2359f93166f5
Change-Id: I0f16868a526d2ea4b17acbd274cb2359f93166f5
(cherry picked from commit 4879487862)
Starting in R, there is a new public API overload that delivers a
flags argument. Some apps may be relying on a previous hidden API
that delivered a userId argument, and this change is used to control
delivery of the new flags argument in its place.
There are dozens of these hidden API users are in the system UID,
either in the system process or the Settings app, so we hard-code
giving them the legacy behavior, since refactoring would be messy
between internal and AOSP branches.
Also adjust incoming and outgoing method signatures to use slightly
more flexible Collection<Uri>, which has handy methods like
contains() and isEmpty().
Bug: 150939131
Test: atest --test-mapping packages/providers/MediaProvider
Test: atest FrameworksServicesTests:com.android.server.devicepolicy.DevicePolicyManagerTest
Exempt-From-Owner-Approval: trivial refactoring
Change-Id: If6a77449e19215cf1c60d4217e62fc04b0959bfc
It's useful for apps to know which inset types they can currently
control, as otherwise they have to poll by calling
controlInsetsAnimation repeatedly.
This can be used when apps want to apply a custom animation
immediately during startup as soon as possible.
Fixes: 150780468
Test: InsetsControllerTest
Test: CTS will be added soon
Test: WindowInsetsActivity
Change-Id: Ic0388c11d759843d3ac9edd8ef23904c9ce05c46
This is a fix in response to developers' feedback on DP1.
Add Environment API that enables apps to check whether they have All
Files Access special app access. The API encapsulates the actual
mechanics of the check, which are as follows:
* First check MANAGE_EXTERNAL_STORAGE app-op,
if it's allowed, return true. If it's denied (ignored or errored),
return false.
* If the mode is default, then check for MANAGE_EXTERNAL_STORAGE
permission, if it's GRANTED (not just declared), then return true,
else return false.
Also add test.
Test: atest EnvironmentTest # not CTS
Fix: 150115615
Merged-In: I0574827c22960bf8f074313d983f289be7142149
Change-Id: I0574827c22960bf8f074313d983f289be7142149
This cl also fixes the way to simulate the touch events in EditorCursorDragTest, with correct raw X/Y.
Bug: 150534899
Test: manual & automated tests
atest FrameworksCoreTests:EditorCursorDragTest
atest FrameworksCoreTests:TextViewActivityTest
Change-Id: I0e9ef73082534ab98ddeddee0218374ed6d556a2
This renames the new ApexContext class to ApexEnvironment, at the
request of the API Council.
Bug: 150685788
Test: atest ApexEnvironmentTest
Change-Id: I4340b0c7e78d240f4e48fdc94ec9e7d60e58d35c
Provide a recording insets controller before the window gets
created, and replay the commands once a view gets attached. This
allows the client to use the controller in Activity.onCreate.
Test: WindowInsetsControllerTests
Bug: 118118435
Change-Id: I1a825ecc4367c02b27f2d08cd5442325315d4f89