This reverts commit 140516bf65.
Reason for revert: Bug where users cannot use biometrics to re-auth after trustagent timeout.
Bug: 251078638
Change-Id: I6254196327e09381eaa047e6444034ada6030113
This removes a race condition where ContentObserver is initialized
while mHandler is null which causes the ContentObserver#onChange() callback to run on a different thread and can cause an NPE.
Bug: 246843362
Test: manual
Test: atest BrightnessSynchronizerTest
Change-Id: Ib8e192c3961390ece721fa473d5c09323c30bafe
Complete the change in ag/19657256 to also apply in SelectableTargetInfo.
That would ensure that in all cases of cross-profile targets the URIs
are fixed to include the user-id prefix.
Bug:244876518
Bug:242605257
Test: manually share image from work Photos app to personal WhatsApp's
frequent contact target.
Change-Id: Ib41c8a3c46afcc2d62a4c1a924212bcd98bcfbe4
The current implementation triggers icon loading each time a view gets
bound and, as binding happens multiple times, icon and label loadings
are unnecessarily duplicated. In addition, as a loading task never gets
canceled, there’re cases (like in the associated ticket) when a view
gets rapidly bound to multiple positions and all the icon loadings
eventually catches up updating it, ending up in icons rapidly changing
on the screen for the view.
This change addresses this by simplifying the icon loading/binding
logic: a view is always bound to the current data and the task is only
updates the data with the missing piece of info once (and applied for
both icons and label loading tasks).
There is one extra change in ResolverActivity due to LoadIconTask
interface change and cancellation logic for the tasks.
Fix: 245934835
Test: Manual tests on a list which does not fit into the screen.
Test: Manual tests with arficial delays added into the tasks.
Test: atest FrameworksCoreTests:ResolverActivityTest
Test: atest FrameworksCoreTests:ChooserActivityTest
Change-Id: I76fe5663523232a74d4f505c535cd6dbcf7f8759
Already fixed in master via https://android-review.googlesource.com/c/platform/frameworks/base/+/2049443
This is that change, but in QPR.
Test: Share multiple images from photos, verify that edit button doesn't
appear.
Bug: 247638926
Merged-In: Id6ce93efacd54a86d870595ae32b4e6efcec0c04
Change-Id: I51b7d332b6b7e59ee559716022d795bb8de4a71c
Log the UI latency with UIActionLatencyReported atom. We plan to
calulate the latency from when the SoundTrigger HAL emits an event to
when the VoiceInteraction system UI view is shown.
Test: device_config put latency_tracker enabled true; verify traces
and latency is logged in WW.
Bug: 247879896
Change-Id: I3edb91691e81f8f23660c0823a6388338fe926ad
Adds a recycler view that can show list of thumbnails
and app icons that could be loaded asynchronously.
It is hidden under a flag, so it won't be visible
on normal builds.
Current limitations which will be fixed in
the follow up CLs:
* It doesn't load real data
* Task thumbnail sizes are hardcoded and
not cropped correctly
* No actions on thumbnail click
Screenshot demo: https://screenshot.googleplex.com/68vhXBNefCKHR2G.png
Test: atest com.android.systemui.mediaprojection.appselector.MediaProjectionAppSelectorControllerTest
Bug: 240924921
Change-Id: Ia3c685050656659ea9a79ffc90a91465c114e259
If a subsequent screenshot is taken after we bind to the screenshot
service, but before we get the onServiceConnected callback, we
leak the connection to the service, preventing it from ever getting
shut down. Fix this by unbinding the old connection before connecting
with the new one.
Bug: 242862442
Fix: 242862442
Test: forced DisplayPolicy to take two consecutive screenshots
Change-Id: Iffb62170266a2c1bb332bfb416f0f5e19c5236fb
TrustAgents currently show the string "Device was locked manually" if
the trustagent times out, or if lockUser() was called. Changed to show a
more generic string, informing the user that they need to authenticate
with whatever credentials they have set up (instead of using the
trustagent).
Test: Test trustagent timeout, lockUser, verify string appears
Bug: 243710694
Change-Id: I96b113ab3ae63123782517339b0bdb3c6cdec2e2
Disables pooling of SimpleIconFactory objects as it caches
density which could be changed in runtime in tests.
Test: presubmit
Bug: 245354130
Change-Id: I124e02e078ba7e6ed3a42b543698c2758e5d0c0e
This reverts commit 888e79f7a0.
Reason for revert: The feature is planned in QPR2. This should be removed before QPR1 deadline.
Change-Id: I8af811935171d7ff51d9ba2a9ea60437695d7966
This CL consists of following parts:
- TEST_MAPPING files for presubmit.
- Correct CUJ constant definitions in LatencyTracker.
- Use auto-generated enum constants instead of hardcoded
numbers in LatencyTracker.
- Create LatencyTrackerTest to test:
- The constant names of CUJ definitions should be the same with
corresponding enum names.
- The amount of CUJ definitions should be the same with
the amount of enums, means both must be added at the same time.
- The static getNameOfXX() methods return just the name of the
CUJ constant definitions.
- The CUJ constant definitions has 1:1 mapping onto the enums.
Bug: 245250904
Test: check TH if FrameworksCoreTests is triggered
Test: atest FrameTrackerTest InteractionJankMonitorTest
Test: atest LatencyTrackerTest
Change-Id: I0a6f403694039aec6b9ce44254f6c5cab531f765
Merged-In: Ibddd36410a0d4a909522de011f23a337b53d6889
Previously we only auto enable factory system trust agents when the
devices is booted for the first time. This change added logic to detect
newly installed/enabled trust agents, and enable them if appropriate.
Fixes: b/243705470
Test: atest FrameworksMockingServicesTests:TrustManagerServiceTest
Change-Id: I3c345a44cfcfccc6f7e2507ba37e378b6b16bd98
This is a tm-qpr re-write of http://ag/19779936 and http://ag/19806033. There was large refactor of BatteryStatsHistory that prevent the changes from being cherry-picked directly. Instead, this change copies the relevant sections and stitches together the rest.
Things that are identical
* The whole TraceDelegate
* recordTraceCounters
* recordTraceEvents
Things that are different
* Record calls are moved to BatteryStatsImpl
* Class setup (mTracer isn't changeable)
* No tests (can be added, but hard prior to the refactor)
Bug: 245749764
Test: presubmit and local perfetto tracing
Merged-In: Iaae4e9796a44be3ffdaee31b956bbb3e87735ead
Change-Id: I62fc2e93b662b89176cc26bdff8b3e88d216028a
Talkback can now correctly focus the collapse button before going to the action list when expanded. To know why mExpandButton is dynamically placed, check commit: 54fe9ad2dc
Bug: 237505828
Test: Visual, see the STEPS TO REPRODUCE section of bug 237505828, the focus order of talkback should be collapse button then actions.
Change-Id: Id0cf8730b00e0e7636a163fb5d51e37e8e0a3e84
When we calculate dismiss target, it will deduce nav bar size from
total height. Remove this rule to make divider always move to end
of screen.
Fix: 232858513
Test: manual
Test: pass existing tests
Change-Id: I34cf12f242daa31bd4dd7d4b202fc43ac0d752b4
Due to incorrect initialization of the visibility status array, direct
share target cells were never truly set invisible (they were not visible
due to lack of content) and thus were iterated over by a keyboard
navigation. Because those “invisible” items overlapped with other,
visible, elements, it created an effect of a correct keyboard navigation
but incorrect target launching.
Fix: 244476932
Test: Manual testing, debugging.
Change-Id: Ic413948fea94aa6c658fad12fe81be2783b5f509
Adds a screenshot test for the app selector activity.
It also contains changes to utility rules and classes
to allow capturing the whole activity instead of a single
view.
Bug: 235465652
Test: atest com.android.systemui.mediaprojection.MediaProjectionAppSelectorScreenshotTest
Change-Id: I558c3d0e8893091d42f90cb0358c9fd030cbc0dc