Commit Graph

16135 Commits

Author SHA1 Message Date
Peter_Liang
0ca995f360 Add the new migration tooltip for accessibility floating menu.(2/n)
Patch Action:
1.Linkify the text related to migration tooltip.
2.Create the component name of the sub setting of
Accessibility button let framework side could launch to
the corresponding setting page.

Bug: 175365399
Test: atest AccessibilityShortcutControllerTest AnnotationLinkSpanTest AccessibilityFloatingMenuTooltipViewTest MigrationTooltipViewTest
Change-Id: I2af5aaa5cf1789f406f423c64c91f0e23c31e6eb
2021-05-11 08:13:09 +08:00
Siim Sammul
f53378bd31 Merge "Add sharding to Binder Latency collection and make it configurable. The hash code of the binder class will be used to select which apis will be collected for based on the configured modulo." into sc-dev 2021-05-05 09:30:57 +00:00
Baligh Uddin
82df05f9a6 Merge "Remove annotations that have been relocated" into sc-dev 2021-05-04 20:28:32 +00:00
Nader Jawad
d8f57c7cf3 Merge changes from topic "fling_after_pull" into sc-dev
* changes:
  Allow EdgeEffect to fling during pull
  Remove edge effect type from the API.
2021-05-04 04:41:04 +00:00
Dmitri Plotnikov
daa86f4f6a Use battery capacity estimates provided by Health HAL
Bug: 186807039
Test: atest FrameworksCoreTests:com.android.internal.os.BatteryChargeCalculatorTest
Change-Id: I4eb1606843ca1f2f2c0589e0abe6408f6be149c5
2021-05-03 18:50:32 -07:00
Dmitri Plotnikov
acc4e1454e Merge "Remove SystemBatteryConsumer" into sc-dev 2021-05-04 01:47:34 +00:00
Dmitri Plotnikov
79e65de313 Remove SystemBatteryConsumer
which has been superceded by AggegateBatteryConsumer

Bug: 186006876
Test: atest FrameworksCoreTests:com.android.internal.os.BatteryStatsTests
Test: Use BatteryStatsViewer to verify that it's still functional
Change-Id: I2e4fe36ff310b6d68923fcecdfd22ce865b1f32d
2021-05-03 16:03:39 -07:00
George Mount
b1aee44bea Remove edge effect type from the API.
Fixes: 186758538

Relnote: "Removes edge effect type from the API -- EdgeEffect now
supports only stretch edge effect for all applications."

Test: existing tests, modified to work with stretch
Change-Id: Iec7a9d4a0316ff3ba7297c4565bb881a1adcf949
2021-05-03 22:45:10 +00:00
Sudheer Shanka
b1b9e93270 Merge "Include uid in batterystats logs." into sc-dev 2021-05-03 22:40:02 +00:00
Nikita Dubrovsky
f3c059b9f0 Merge "Release drag-and-drop URI permissions on gc if not tied to an activity" into sc-dev 2021-05-03 21:53:10 +00:00
Dmitri Plotnikov
012689e349 Merge "Aggregate power data in AggregateBatteryConsumers" into sc-dev 2021-05-03 20:40:25 +00:00
Lucas Dupin
964a1715eb Merge "Color appearance model library" into sc-dev 2021-05-03 17:23:47 +00:00
Nikita Dubrovsky
f333d26f0d Release drag-and-drop URI permissions on gc if not tied to an activity
The implementation for drag-and-drop provides two ways of taking URI
permissions: a public API that ties permissions to an activity and
an internal API that grants "transient" permissions. The latter is
used in a single code path: dropping content into an editable
TextView (implemented in android.widget.Editor).

The transient code path was previously (Android R and below)
implemented using a try/finally block in Editor.onDrop. The change
I7ae38069fb741925211b42c7ff28784eb9722ce3 had updated that logic to
tie permissions to the app process lifecycle instead, to account for
the new OnReceiveContentListener which apps can use to implement
custom drop handling (and use a background thread to do the processing
of the content). The problem with having permissions tied to the app
process lifecycle is that the app process could potentially be
long-running.

This change updates the logic to tie transient permissions to the
DragAndDropPermissions object lifecycle (release whenever there are no
more reference to the object and it is garbage collected). This
follows the same approach as used for IME permission grants
(InputContentInfo.java and InputContentUriTokenHandler.java).

Bug: 181178998
Test: atest CtsWindowManagerDeviceTestCases:CrossAppDragAndDropTests
Test: Manually verified using development/samples/ReceiveContentDemo
Change-Id: I950d4572ee19af64da1ace1572fe12e17d09c609
2021-05-03 16:36:56 +00:00
Sudheer Shanka
b01bfadaa1 Include uid in batterystats logs.
Bug: 182272121
Test: n/a
Change-Id: Ic5cbc02b4d72c7dd5b916e9eb1954438cc81492f
2021-05-02 21:33:05 -07:00
TreeHugger Robot
096c8547d3 Merge "Make IInputMethodManager#reportActivityViewAsync() truly async" into sc-dev 2021-05-01 07:51:21 +00:00
Winson Chiu
627cac02ad Merge changes Ie90dc390,Ia9513817 into sc-dev
* changes:
  Strip invalid domains in DVS#addPackage
  Move withPackageSettingsSnapshot methods into PackageManagerInternal
2021-04-30 21:24:05 +00:00
Florian Mayer
748c3a8040 Merge changes from topic "playprofileable" into sc-dev
* changes:
  Add packageInstaller to packages.list.
  Add profileable opt-out to packages.list.
2021-04-30 20:42:16 +00:00
Dmitri Plotnikov
d354520023 Aggregate power data in AggregateBatteryConsumers
as opposed to SystemBatteryConsumers, which will be removed
in a follow-up CL

Bug: 186006876
Test: atest FrameworksCoreTests:com.android.internal.os.BatteryStatsTests

Change-Id: Ie4166217be211d92293c2a107762801a7d3c206f
2021-04-30 13:09:32 -07:00
Yohei Yukawa
4baf2915d8 Make IInputMethodManager#reportActivityViewAsync() truly async
It turns out that IInputMethodManager#reportActivityView() [1], which
was added a few years ago to support CursorAnchorInfo API on edit
fields hosted on an ActivityView [1], is now also used by task
organizer [2].  This means that we would continue living with this
@hide API for a while even after ActivityView gets completely removed
at Bug 179161778.  Then, converting this IPC into truly asynchronous
would probably make sense.

There should be no behavior change unless the target IME client is
running on an embedded display environment.

 [1]: Id0411a80456182111bb5b681c6d1230b58e7ec2e
      b4f328a2f3
 [2]: Id422bb2547197c617f914ed7cf5085e02a1c3fb5
      a1f869d10e

Fix: 186874025
Test: atest CtsWindowManagerDeviceTestCases:ActivityViewTest
Change-Id: I0463e8e9daaa8ab6d3eadb395843ca5e6bc1bb5e
2021-04-30 12:29:39 -07:00
Winson
a74c1f3c69 Move withPackageSettingsSnapshot methods into PackageManagerInternal
For consumers who don't care about blocking package data updates and
only need data at a specific snapshot in time, these methods would
avoid locking PMS during the iteration process.

Bug: 183643808

Test: atest com.android.server.pm.test.verify.domain

Change-Id: Ia951381798d75f77c4ad5fc010a469b69992f074
2021-04-30 10:46:32 -07:00
Winson Chiu
1b8610d9a9 Merge "Implement domain verification backup and restore" into sc-dev 2021-04-30 16:17:30 +00:00
Siim Sammul
d7af8599aa Add sharding to Binder Latency collection and make it configurable. The
hash code of the binder class will be used to select which apis will be
collected for based on the configured modulo.

Test: unit tests
Bug: 180584913
Change-Id: I7544135a77cf510fa9e542d98262a7211760935c
2021-04-30 17:14:20 +01:00
Chris Wailes
c6360dabab Remove annotations that have been relocated
These annotations have been relocated to frameworks/libs/modules-utils.
This CL removes the files and updates necessary build rules.

Bug: 183133670
Test: m
Merged-In: I834b9f5320e0b6fe8cb9feb7194c82085b805e07
Change-Id: I834b9f5320e0b6fe8cb9feb7194c82085b805e07
2021-04-30 13:36:40 +00:00
Florian Mayer
6ea939f3bf Add profileable opt-out to packages.list.
We now have two notions of profileable:
 * profileable from shell: the user can profile the app using ADB-based
   tools (e.g. Android Studio or shell) . This is off unless the app
   opts in.
 * profileable from platform services: trusted platform services can,
   in accordance to the app installer's Terms Of Service profile the
   app. This is the default unless the app opts out. This is enforced
   by the profilers with information provided by the framework.

A new flag <profileable android:enable="false"/> can be used to opt out
of profiling in general. If this is not given, the app is considered
profilable by the platform, but the data will *not* be exposed to the
user via shell or adb. If profiles of the app should be given to the
user (e.g. for using Android Studio), <profileable
android:shell="true"/> can can still be used.

We write whether the app opted out or not to packages.list, to be
consumed by the profilers.

CTS-Coverage-Bug: 186720347

Test: m
Test: on userdebug: /data/system/packages.list for preinstalled, Play
      Store installed app and sideloaded app.
Test: on user: atest CtsPerfettoTestCases.
Bug: 170284829

Change-Id: I8d4bbedc043976fd11a95a511bd95a05c7ced7b9
2021-04-30 11:52:31 +00:00
PETER LIANG
42c7ce491e Merge "Fix the GAR issue of all the icons on A11y FM have no meaningful A11y label." into sc-dev 2021-04-30 03:51:13 +00:00
Taran Singh
2fef6def9a Merge "Add log for showSoftInput called from Insets API" into sc-dev 2021-04-29 22:41:26 +00:00
Jing Ji
be5425c6fd Merge "Add state BOUND_FGS_OR_TOP and FGS into ProcessState Enum in ProcStats" into sc-dev 2021-04-29 21:23:11 +00:00
Jing Ji
72eee56f06 Merge "Support aggregation over association sources per process" into sc-dev 2021-04-29 20:46:50 +00:00
Jing Ji
9d28fa063d Add state BOUND_FGS_OR_TOP and FGS into ProcessState Enum in ProcStats
Previously these two states in AMS are being mapped into the ImpFg
in the ProcStats, we were unable to distinguish them in the aggregated
proc stats. Now with these two new states in ProcStats, the process
states we're using in AMS could be mapped into them, and eventually
get mapped into the state definition in the aggregated proc stats.

Bug: 186438656
Test: atest ProcStatsValidationTests
Test: atest ProcessStatsDumpsysTest
Test: atest CtsIncidentHostTestCases:ProcStatsProtoTest
Test: atest CtsStatsdHostTestCases
Test: atest CtsAppTestCases:ActivityManagerProcessStateTest
Change-Id: I94eaa18d9c99f90200603fd0aafe198b62e963f7
2021-04-29 10:05:19 -07:00
James O'Leary
3d121b7119 Merge "Don't use pow for distance calculation" into sc-dev 2021-04-29 15:55:49 +00:00
James O'Leary
fada9e8571 Don't use pow for distance calculation
Bug: 186664313
Test: `mp droid`, verify wallpaper extraction continues to succeed
Change-Id: I8136522379abfe5cbce83beae904559e68725aca
2021-04-29 11:48:39 -04:00
James O'Leary
a23d054838 Color appearance model library
Create colors using CAM16 hue and chroma, L*a*b* L*,
and map them to RGB without distortion.

Test: atest FrameworksCoreTests:com.android.internal.graphics.cam
.CamTest, all passed. No link, atest/my build are broken and cannot
upload results.
Bug: 186640057
Change-Id: I64b605dd452d64e57be0047d2e4672917c01c2a8
2021-04-29 11:40:47 -04:00
Peter_Liang
6f90704f49 Fix the GAR issue of all the icons on A11y FM have no meaningful A11y label.
Patch action:
Add the state or content description into the corresponding feature target.

Bug: 178289063
Test: atest AccessibilityTargetAdapterTest AccessibilityTargetAdapterTest
Change-Id: I2f421da027bc95021ab24cadf8b3afdc30fa6d4a
2021-04-29 21:58:35 +08:00
Wilson Wu
37051aef38 Make IInputMethodPrivilegedOperations to async (6/N)
-. Remove VoidResultCallback of applyImeVisibility.
   and let it be truly asynchronous.
-. Rename this method to applyImeVisibilityAsync.

Bug: 183587528
Test: atest CtsInputMethodTestCases
Change-Id: Ica564c526223d32641a2485c0c0f3490fe4bfd39
2021-04-29 16:05:05 +08:00
Treehugger Robot
1b68aeee56 Merge "Internal graphics package owners" am: 1084a81a68 am: 8f7c666464 am: 3bbfa132e8
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1690227

Change-Id: If739aeeea360f864710746e133bedc335808da9d
2021-04-29 03:38:14 +00:00
Treehugger Robot
3bbfa132e8 Merge "Internal graphics package owners" am: 1084a81a68 am: 8f7c666464
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1690227

Change-Id: Ic7ba3d5ea2be74c0860eb61d80aac078e17b48de
2021-04-29 03:35:43 +00:00
Yohei Yukawa
c09a657113 Merge "Make IInputMethodPrivilegedOperations to async (5/N)" into sc-dev 2021-04-29 00:45:17 +00:00
Lucas Dupin
56b401709b Internal graphics package owners
Bug: 186640057
Test: none
Change-Id: I59af9cbaa0fbc1b3206b9b3d852e845413aa9e71
2021-04-28 14:09:00 -07:00
Taran Singh
11472f70b4 Add log for showSoftInput called from Insets API
Add a debug log to identify calls to showSoftInput from Insets API.

Fix: 1865976
Test: manually using steps:
      1. Use an app like launcher that uses Insets API to show IME.
      2. dump using adb shell dumpsys input_method
      3. Verify log.
      4. use another app that shows IME using showSoftInput like gmail
      5. verify the log

Change-Id: I6ba0d3f7912855f31e033735557b44eeed3e6652
2021-04-28 18:30:25 +00:00
Yohei Yukawa
1d14a33860 Merge "Make IInputMethodPrivilegedOperations to async (4/N)" into sc-dev 2021-04-28 15:45:58 +00:00
Siim Sammul
afbe75fd4a Merge "Add a version of SettingsObserver to BinderCallsStats and make it public so it could be used to collect binder latency data from bluetooth and telephony." into sc-dev 2021-04-28 11:38:42 +00:00
Jason Hsu
b9e5094100 Merge "Add accessibility shortcut icon into adaptive icon" into sc-dev 2021-04-28 10:02:14 +00:00
Wilson Wu
e702c9d381 Make IInputMethodPrivilegedOperations to async (5/N)
-. Remove VoidResultCallback of notifyUserAction.
   and let it be truly asynchronous.
-. Rename this method to notifyUserActionAsync.

Bug: 183587528
Test: atest CtsInputMethodTestCases
Change-Id: I384fd689b6bd1d418ff5208444fbba2c1eac6f85
2021-04-28 14:40:08 +08:00
jasonwshsu
5ade32bdf6 Add accessibility shortcut icon into adaptive icon
* add/modify icons list: color correction, color inversion,
magnification, extra dim

Fix: 184081577
Test: manual test
Change-Id: I5ceee75f0263072805af23a7bbdfc68d7008db6e
2021-04-28 14:08:41 +08:00
Wilson Wu
78a23141be Make IInputMethodPrivilegedOperations to async (4/N)
-. Remove VoidResultCallback of updateStatusIcon
   and let it be truly asynchronous.
-. Rename this method to updateStatusIconAsync.

Bug: 183587528
Test: atest CtsInputMethodTestCases
Change-Id: Ic7759354ec06a3293ea370ab7afe7422eb2d9356
2021-04-28 12:56:38 +08:00
Jing Ji
276ff21ada Support aggregation over association sources per process
Process state association tracks the state via the bindings between
the source and the destination processes, there could be overlaps
from the timeline wise over these bindings, hence the exact duration
that a source process binds to a destination process is unknown.

Now add the support of this, by tracking the association sources per
process, the state changes of these sources will be driven by the
changes from individual source state per association.

The output of 'procstats dump -a; will include a new section
"Aggregated Association Sources" per process.An example:

  * com.android.providers.contacts / u0a122 / v30:
      Process android.process.acore (multi, 2 entries):
        [......]
        Aggregated Association Sources:
          <- com.android.bluetooth/1002 (com.android.bluetooth):
               Active count 271 (ImpFg): +1m0s849ms / 9.2%

Also updated the logic of pulling the procstats data from stastd to
use this new data structure.

Bug: 183101565
Bug: 186438656
Test: atest ProcStatsValidationTests
Test: atest ProcessStatsDumpsysTest
Test: atest CtsIncidentHostTestCases:ProcStatsProtoTest
Test: atest CtsStatsdHostTestCases
Test: Manual - compare statsd proto dump vs. dumpsys procstat -a
Change-Id: I9bf9ba7565761ae3d42046ed4886c8d17f6c18b3
2021-04-27 13:44:28 -07:00
Jeff DeCew
ac431bc027 Merge "Change icon alignment for collapsed Conversation groups" into sc-dev 2021-04-27 19:26:55 +00:00
Siim Sammul
58f933471d Add a version of SettingsObserver to BinderCallsStats and make it public so it could be
used to collect binder latency data from bluetooth and telephony.

Test: latency collection is unit tested, this is just an alternative settings configuration
Bug: 180584913
Change-Id: Ide51afb7eb26a96c7692bceb0a22585a74f08aa7
2021-04-27 18:47:00 +01:00
Siim Sammul
909042e9a4 Merge "Enable binder latency collection from system_server for dogfood." into sc-dev 2021-04-27 17:32:02 +00:00
Jeff DeCew
2bd9821e71 Change icon alignment for collapsed Conversation groups
Fixes: 185512447
Test: manual; visual testing
Change-Id: I4c007eef035b1bc225d0bea52c5b330ecabd670c
2021-04-27 09:36:08 -04:00