Commit Graph

18946 Commits

Author SHA1 Message Date
Nick Chameyev
47c21d1216 Merge changes from topic "pss-app-selector-screenshot" into tm-qpr-dev
* changes:
  [Partial Screensharing] Add app selector activity screenshot test
  [Partial Screensharing] Update app selector (ChooserActivity) header
2022-09-06 13:05:30 +00:00
Nick Chameyev
5cb791b6f6 [Partial Screensharing] Add app selector activity screenshot test
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
2022-09-01 16:48:03 +00:00
Nick Chameyev
2d2b24f09d [Partial Screensharing] Update app selector (ChooserActivity) header
Updates title style (increases font size), adds an icon
and hides the drag handle for media projection app
selector activity which is based on ChooserActivity.

Bug: 235465652
Test: atest com.android.internal.app.ChooserActivityTest
Test: screenshot test in a follow-up CL
Change-Id: Ib717d3f7e6132d56e8344f4e06a12a64ee63457b
2022-09-01 16:11:41 +00:00
Hongwei Wang
5ec2f4d52e Handle ProtoLog logging command in WMShell
Added a ProtoLogController class that hooks into ShellCommandHandler to
handle the adb shell command for ProtoLog in WMShell.

Removed the proxy in WM to pipe the adb shell command to WMShell via
StatusBarManagerService.

Bug: 243447162
Test: adb shell dumpsys activity service \
        SystemUIService WMShell protolog help
Change-Id: I9175ec88dcbae53508c97b4df1c2378b3eb9d648
2022-08-31 17:30:37 -07:00
Jernej Virag
166d420cf4 Prevent loading of Icon resources from the wrong package
If an Icon carries package designator, LocalImageResolver has now
ignored it. This could lead to loading of a wrong icon in cases where
the ID collided with the same ID in android package.

This is fixes that corner-case.

Bug: 241066484
Test: atest LocalImageResolverTest - the new test checks for pkg
      correctness and fails on devices without this cl

      manual test: bluejay device with known, reproducible resource
      collision in media player notification. In reproducible case,
      icon appears as a broken block.

      After applying this patch, small icon in media notification loads
      correctly for the collision case.

Change-Id: Ic79c0d4acb1d347a24282972e009a5a079ce6c21
2022-08-30 09:16:54 +00:00
Jordan Demeulenaere
6fbd48df33 Merge changes from topics "footer-actions-fakes", "footer-actions-mad", "footer-actions-screenshots" into tm-qpr-dev
* changes:
  Enable the new footer actions in team food.
  Add screenshot test for the footer actions (2/2)
  Implement LaunchableView for footer actions Views.
  Wire the new FooterActions implementation behind a flag
  Implementation of the FooterActions following the MAD (1/3)
  Add BroadcastDispatcher.broadcastFlow
  Extract QSSecurityFooterUtils out of QSSecurityFooter
  Make the logic of QSSecurityFooter reusable
  Add some fakes to SystemUI-test-utils
  Allow preventing unrestricted Apps from being Stopped
2022-08-26 06:47:09 +00:00
Neha Jain
900e693d58 Merge "Revert "Remove BatteryStats user activity types and use PowerManager ones instead."" into tm-qpr-dev 2022-08-26 00:48:04 +00:00
Neha Jain
e8ab134de1 Revert "Remove BatteryStats user activity types and use PowerManager ones instead."
This reverts commit 79e517c3d4.

Reason for revert: b/243434675

Change-Id: Ie2476f23715ed933064470ee2f50d550e92d46b8
Merged-In: I5cfdd6a7c21ed322f50d7605fdd470b41726f4cf
2022-08-25 20:34:31 +00:00
Liahav Eitan
6dae9d46b7 Merge "Fix sharing to another profile where an app has multiple targets" into tm-qpr-dev 2022-08-25 09:59:52 +00:00
Jing Ji
dcd089d3e7 Allow preventing unrestricted Apps from being Stopped
This CL adds a flag to allow toggling the behavior on whether or not
the foreground service task manager should show a stop button for
unrestricted apps.

Bug: 230449539
Test: Manual - device_config put systemui \
      show_stop_button_for_user_allowlisted_apps true|false
Test: atest FgsManagerControllerTest
Change-Id: I4cfe54933d7c6807a7ffbac9ee709c7d8d6b83d3
Merged-In: I4cfe54933d7c6807a7ffbac9ee709c7d8d6b83d3
2022-08-25 10:48:45 +02:00
Calvin Pan
ee666baeac Merge "Using different strings for language/region picker" into tm-qpr-dev 2022-08-24 09:30:22 +00:00
Joanne Chung
3292a30a1c Merge "Fix toolbar announce wrong text." into tm-qpr-dev 2022-08-24 01:07:32 +00:00
Liahav Eitan
15e2b0fe84 Fix sharing to another profile where an app has multiple targets
Moves the fixUris call from onTargetSelected directly to the intent
launch to ensure the intent which is actually started is updated with
userId specific URIs.

Bug:242165528
Bug:242605257
Test: manually share image from personal profile to work gmail,
first with chat target then backing up and selecting the main target

Change-Id: Iabf5dcf2612fe718f2f0886e2e5e9b76f37af1e1
2022-08-23 16:05:45 +00:00
Philip Junker
28930b91d8 Merge "Remove BatteryStats user activity types and use PowerManager ones instead." into tm-qpr-dev 2022-08-23 14:54:04 +00:00
Philip Junker
79e517c3d4 Remove BatteryStats user activity types and use PowerManager ones instead.
Add millisSinceLastUserActivity and lastUserActivityEvent to PowerGroup log when dozing.
Add timeout to PMS log when dozing.

Bug: 243518837
Test: atest BatteryStatsTests
Test: atest PowerManagerServiceTest
Test: manually observe logs using logcat / adb bugreport
NoNonSdkCheck: USER_ACTIVITY_TYPES is only accessed indirectly by apps through dumpLocked() method.
Change-Id: I835992a08bd4a07350e36ef671c6273c8fee43a0
(cherry picked from commit bf794e4585)
Merged-In: I835992a08bd4a07350e36ef671c6273c8fee43a0
2022-08-23 14:48:09 +00:00
Calvin Pan
80e0a51b68 Using different strings for language/region picker
In zh_TW, the "suggested" translated as "suggested language"
in language/region picker. Using different words to translate to
"suggested language" and "suggested region".

Bug: 243016620
Test: Manually check the UI.
Change-Id: I2edf82039b8dd37ca27ce831efa1cfa1474c8efb
Merged-In: I2edf82039b8dd37ca27ce831efa1cfa1474c8efb
2022-08-23 08:56:05 +00:00
Fiona Campbell
a01ccaae13 Merge changes I36ea0ffc,I1f3797c5,I01aeeedd into tm-qpr-dev
* changes:
  Add constraints to window duration scale
  Add constraints to animation duration scales
  Ensure animation scales are within bounds
2022-08-19 14:49:40 +00:00
Joanne
53d6f568ec Fix toolbar announce wrong text.
This is a regression during refactor toolbar code, we don't intent
to announce the toolbar popup window so we should not set content
description for the container.

Bug: 239563674
Test: manual. Turn on talkback and make sure the announce is correct
and the behavior is the same
Test: atest TextViewIntegrationTest pass for local/remote
Test: atest TextViewActivityTest pass for local/remote
Test: atest SuggestionsPopupWindowTest pass for local/remote

Change-Id: I6e30d2f6d9a2c4905b702c25655fe5e4eb7de5d5
2022-08-19 13:42:24 +00:00
Daniel Hsieh
22783d8314 Logs the activated session duration for magnification. (2/2)
Uses the atom MagnificationFollowTypingFocusActivatedSessionReported in
westworld to log the activated session duration for the window magnifier
which its following typing focus is enabled.

The duration is accumulated by the time when the window magnifier and
the ime are all on. If one of them is off, we would pause the
accumulated timer. If a user moves the window magnifier to disables
this function, we would stop the accumulated timer and log the duration.

Bug: 216733714
Test: m statsd_testdrive & statsd_testdrive 453
      atest WindowMagnificationManagerTest
Change-Id: I994fc2a3ada8a90fde8b3a0b4f1cc8d7ec21638a
Merged-In: I994fc2a3ada8a90fde8b3a0b4f1cc8d7ec21638a
2022-08-19 06:39:59 +00:00
TreeHugger Robot
620e37edb9 Merge "Logs the activated session duration for magnification. (1/2)" into tm-qpr-dev 2022-08-19 00:32:18 +00:00
Daniel Hsieh
5b5226eb81 Logs the activated session duration for magnification. (1/2)
Uses the atom MagnificationTripleTapAndHoldActivatedSessionReported in
westworld to log the activated session duration for the window magnifier
which is triggered by the triple-tap-and-hold gesture.

The duration is from the window magnifier's enabled time to its disabled
time.

Bug: 216733714
Test: atest WindowMagnificationGestureHandlerTest
      m statsd_testdrive & statsd_testdrive 452
Change-Id: I423ac39c167c89b0b2db931a616cdd34d6eb151c
Merged-In: I423ac39c167c89b0b2db931a616cdd34d6eb151c
2022-08-18 18:31:16 +00:00
Fiona Campbell
f73a728509 Add constraints to animation duration scales
Ensure that all uses of ANIMATOR_DURATION_SCALE are bounded between 0
and 20.

Bug: 238178261
Test: adb shell dumpsys window windows | grep "Animation setting"
Change-Id: I1f3797c5cf708f5c02ba8644ea9f703244d229a9
2022-08-18 16:11:39 +00:00
Jernej Virag
3234afdaf3 Merge "Prevent loading of Icon resources from the wrong package" into tm-dev am: e1e8b1b932 am: c4ebf2ba2a
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/19601344

Change-Id: Ibfc955f61506dc3e4aad8e7b19eeb9b8a91e77dc
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-08-16 21:03:38 +00:00
Charles Chen
4cce97fd2e Merge "Fix violation in DecorContext" into tm-qpr-dev 2022-08-16 18:51:03 +00:00
Charles Chen
d9bdee7fa0 Fix violation in DecorContext
The issue happens when activity is launched on the secondary
display. It's because the base context of DecorContext is
a DisplayContext, but we should check #isConfigurationContext in
associatd window's Context instead, like DecorContext#isUiContext

fixes: 242571036
Test: manual - launch activity on the secondary display

Merged-In: Ie2659fb31248ad64099018bfebb6a6b43c72f466
Change-Id: Ie2659fb31248ad64099018bfebb6a6b43c72f466
2022-08-16 15:22:49 +00:00
Joanne Chung
9e263e643d Merge "Fix system toolbar doesn't use correct theme." into tm-qpr-dev 2022-08-16 10:00:57 +00:00
Wilson Wu
08fc972311 Merge "Refine {SHOW,HIDE}_MY_SOFT_INPUT constants" into tm-qpr-dev 2022-08-16 08:37:12 +00:00
Jernej Virag
32f176e470 Prevent loading of Icon resources from the wrong package
If an Icon carries package designator, LocalImageResolver has now
ignored it. This could lead to loading of a wrong icon in cases where
the ID collided with the same ID in android package.

This is fixes that corner-case.

Bug: 241066484
Test: atest LocalImageResolverTest - the new test checks for pkg
      correctness and fails on devices without this cl

      manual test: bluejay device with known, reproducible resource
      collision in media player notification. In reproducible case,
      icon appears as a broken block.

      After applying this patch, small icon in media notification loads
      correctly for the collision case.

Change-Id: Ic79c0d4acb1d347a24282972e009a5a079ce6c21
2022-08-15 10:07:01 +00:00
Mark Renouf
930b8b78b6 More minor cleanups to ScreenshotRequest
* Adds screenshotType into the request instead of relying on the
Message it is sent in (msg.what).

* Adds a constructor which accepts type, source and topComponent

* Adds more @IntDef annotations to `int` constructor args

Bug: 231957192
Test: atest ScreenshotHelperTest
Change-Id: If4bf8ef1b889e4e7b2fabf195a538a13664cce12
2022-08-12 23:33:53 +00:00
Joanne Chung
9325f9b97e Fix system toolbar doesn't use correct theme.
The toolbar should set the theme to the app's theme. Because the
service cannot get the application context, we should pass this
information from application to service.

Bug: 218833400
Test: manual. Use light/dark theme for app, the toolbar shows with
the same theme
Test: atest TextViewIntegrationTest
Test: atest android.widget.TextViewActivityTest

Change-Id: I6d4e4e117c680ce57e760a87987059eded09b2bc
2022-08-12 16:54:34 +00:00
Mark Renouf
020439dcac Fix lines >100 chars and unnecessary fully-qualified class names
Bug: 231957192
Change-Id: If06068802f1358b2708df30338c772d27442266b
Merged-In: If06068802f1358b2708df30338c772d27442266b
2022-08-11 14:35:15 +00:00
Joanne Chung
9cc6ab62b2 Merge "Revert "[DO NOT MERGE] Remove selection toolbar code from build time"" into tm-qpr-dev 2022-08-10 08:38:51 +00:00
Wilson Wu
2ac25627d8 Refine {SHOW,HIDE}_MY_SOFT_INPUT constants
Naming of SoftInputShowHideReason#{SHOW,HIDE}_MY_SOFT_INPUT
constants may not clear enough to indicate its semantics.

Improve show/hide reasons of InputMethodService by:

-. Update constants naming to {SHOW,HIDE}_SOFT_INPUT_FROM_IME.
-. Introduce respective reasons to indicate different hide request
   cases within IME process.

Bug: 224565148
Bug: 241890033
Test: presubmit
Test: atest CtsInputMethodTestCases and observe logs
Change-Id: I8b148e9b5ab05ff7b827c6b8fe23008ca30a8c4b
Merged-In: I8b148e9b5ab05ff7b827c6b8fe23008ca30a8c4b
2022-08-10 11:51:59 +08:00
TreeHugger Robot
317201974a Merge changes from topic "b/232475788-frameworks/base" into tm-qpr-dev
* changes:
  Handle install-constraints tag.
  Scaffolding: reject installs based on device fingerprint
2022-08-08 15:12:29 +00:00
Joanne Chung
888e79f7a0 Revert "[DO NOT MERGE] Remove selection toolbar code from build time"
This reverts commit ade911b9c7.

Reason for revert: The feature is planned to run a study in QPR1
with the aim of launching in QPR-2. The code will be removed from
build time before QPR1 finalized.

Change-Id: Ida04260a1196121bb4084b527216aae1e4e6ec54
2022-08-08 11:02:44 +00:00
Ahan Wu
41998f864b Avoid too long trace section name to crash FrameTracker
android.os.Trace#beginSection limits the length of the section to 127,
otherwise, a IllegalArgumentException throws. We limit the length before
passing the argument to avoid this.

Bug: 239860117
Test: atest InteractionJankMonitorTest FrameTrackerTest
Change-Id: I3d9cbc65a8036c18680edf11aace0b324a1befb6
2022-08-05 16:53:31 +00:00
Andrey Epin
754656a669 Merge "Update icon only once" into tm-qpr-dev 2022-08-04 04:43:17 +00:00
Andrey Epin
d7e183e5ad Merge "Set default list view update to 0" into tm-qpr-dev 2022-08-04 03:13:55 +00:00
Wu Ahan
699f5e9471 Merge "Mark CUJ_NOTIFICATION_SHADE_EXPAND_COLLAPSE_LOCK as deprecated CUJ" into tm-qpr-dev 2022-08-03 15:49:08 +00:00
Nicolò Mazzucato
560e645f3a Merge "Monitor fold to AOD latency" into tm-qpr-dev 2022-08-03 11:52:06 +00:00
TreeHugger Robot
7f96bd5a88 Merge "Fix leakage of pointer location" into tm-qpr-dev 2022-08-03 11:12:10 +00:00
Nicolo' Mazzucato
1a1976c329 Monitor fold to AOD latency
This logs the latency from when we receive the device state change (device folded), to when the AOD animation starts.

Bug: 237270816
Test: atest FoldAodAnimationControllerTest
Change-Id: I67e0e04bbc24064640f46cdc8feb667814170529
Merged-In: I67e0e04bbc24064640f46cdc8feb667814170529
2022-08-03 09:23:04 +00:00
Cliff Wu
0bc5eed6fa Merge "Fix generic wrong strings to comply with the UX guideline" into tm-qpr-dev 2022-08-02 23:13:14 +00:00
Mark Renouf
dcc2bb37a3 Adds OWNERS for ScreenshotHelper
This code is managed as part of SystemUI screenshots.

(This is a manual cherrypick of
27df215eba from AOSP.)

Change-Id: I624a52754cffcca66798d2813d25d8896597a39a
2022-08-02 10:55:15 +00:00
Arthur Hung
5a47857643 Fix leakage of pointer location
When display is removing, we should explicitly remove the pointer
location view to ensure the client object would be released.

Bug: 239078899
Test: Enabled pointer location, add/remove virtual display, check if
      the surface would be released.
Change-Id: I89ef3dc8e5b4aa8c3b7d5c1393d6543a9d3d67db
2022-08-02 09:38:35 +00:00
Cliff Wu
d1f854d2c0 Fix generic wrong strings to comply with the UX guideline
- The generic error need to remove "Unavailable" in the header and
only show body text.
- The "Play Store" app needs to be added to the error for a specific
app and it says "Play Store not available".
- Dialer app uses generic alert dialog.

Bug: 230048652
Test: Manual, atest FrameworksServicesTests:VirtualDeviceManagerServiceTest
Change-Id: I8b56e2804c3204901a3551d3300ab8c0391e7260
2022-08-02 04:18:34 +00:00
Pedro Loureiro
9c18a2a523 Handle install-constraints tag.
The tag can only be used by allowed packages. The list of the allowed
packages is controlled by configuration on a device, and it gets parsed
in SystemConfig.

A config is expected to have "install-constraints-allowed" tags per
package:

"""
<config>
    <install-constraints-allowed package="foo" />
    <install-constraints-allowed package="bar" />
</config>
"""

Bug: b/232475788
Test: atest AppSecurityTests com.android.server.systemconfig.SystemConfigTest
Change-Id: If3c07ddc1e58a5d16547a50437c939d17b3a4e69
2022-08-01 18:20:01 +00:00
Mark Renouf
693478bd52 Code cleanup of ScreenshotRequest and usages
Make constructor visible for tests
Make all fields final (no setters, so already effectively final)
Remove mHasStatusBar and mHasNavBar (unused)
Remove overload 'takeScreenshot' method without a source param
Added missing @IntDef annotations to parameters

Bug: 231957192
Test: atest ScreenshotHelperTest SystemActionPerformerTest
Change-Id: Ief43bd0ba50dafac720ae18d00c3c99b8d31e2e1
2022-08-01 18:14:33 +00:00
Ahan Wu
ad673c2220 Mark CUJ_NOTIFICATION_SHADE_EXPAND_COLLAPSE_LOCK as deprecated CUJ
The CUJ is never implemented, mark it as deprecated to avoid confusions.

Bug: 229249877
Test: NA
Change-Id: I40d468eca4dfa483420605515ec5e11551be8afc
2022-07-27 10:46:46 +00:00
TreeHugger Robot
91a0bbdddf Merge "Ensure all FrameTracker invocation run on either main or ui thread" into tm-qpr-dev 2022-07-14 20:25:06 +00:00