Commit Graph

3704 Commits

Author SHA1 Message Date
Abodunrinwa Toki
f1d939910f Merge textclassifier/logging/ into textclassifier/
This is based on feedback on Ib5af1ec80a38432d1201fbc913acdc3597d6ba82

Bug: 74466564
Bug: 67609167
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationManagerTest
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Test: bit CtsViewTestCases:android.view.textclassifier.cts.TextClassificationManagerTest
Test: bit CtsViewTestCases:android.view.textclassifier.cts.LoggerTest
Merged-In: Ic8d58acb2bbd63cedcac4aa16940b4ac852aadc8
Change-Id: Ic8d58acb2bbd63cedcac4aa16940b4ac852aadc8
2018-03-10 13:13:14 +00:00
TreeHugger Robot
fa63f6895b Merge "Add global setting for auto-battery saver threshold max" into pi-dev 2018-03-09 03:51:41 +00:00
Makoto Onuki
524b4dfe3a Add global setting for auto-battery saver threshold max
Bug: 74351418
Test: Manual test with "settings put global low_power_trigger_level_max 100"
Change-Id: I9a936facdca64915748f5d85c16edd553a3c6003
2018-03-08 08:07:29 -08:00
Phil Weaver
fc0c8d9b63 Merge "Fix accessibility action parceling" into pi-dev 2018-03-08 01:49:43 +00:00
Chenjie Yu
c8a6305ddf Merge "Refactor cpu stats pullers" into pi-dev 2018-03-08 00:24:00 +00:00
TreeHugger Robot
b577d00c35 Merge "Setting the alpha on the full bitmap for AdaptiveIcon instead of individual layers" into pi-dev 2018-03-07 23:58:24 +00:00
Chenjie Yu
ec67661bdf Refactor cpu stats pullers
use same cpu stats readers with BatteryStats so that
1) both throttle to avoid too frequent pulls
2) cached value is served within throttle interval to avoid double
pulling by both statsd and BatteryStats

To run unit tests:
bit
FrameworksCoreTests:com.android.internal.os.KernelUidCpuFreqTimeReaderTest
bit
FrameworksCoreTests:com.android.internal.os.KernelUidCpuClusterTimeReaderTest
bit
FrameworksCoreTests:com.android.internal.os.KernelUidCpuActiveTimeReaderTest

make -j56 statsd_test && adb sync data && adb shell
/data/nativetest64/statsd_test/statsd_test

Test: cts test, unit test
Bug: 73745189
Bug: 73780619
Bug: 73360959

Merged-In: I10a9bc91ca67fa812f4cd71c4fbd73c1a5ba580e

Change-Id: I10a9bc91ca67fa812f4cd71c4fbd73c1a5ba580e
2018-03-07 21:43:00 +00:00
Seigo Nonaka
d15f04ef69 Introduce new perf test for TextView with precomputed text
Here is an example of perf test result:

TextView new layout creation time:
  PrecomputedText           :    740,173
  PrecomputedText_Selectable: 17,727,649
  RandomText                : 17,130,685

TextView onDraw time:
  PrecomputedText           :  1,471,075
  PrecomputedText_Selectable: 31,971,393
  RandomText                : 17,667,572

TextView onMeasure time:
  PrecomputedText           :    177,669
  PrecomputedText_Selectable: 17,773,204
  RandomText                :  6,296,358

TextView setText (w/o layout creation) time:
  PrecomputedText           :     91,858
  PrecomputedText_Selectable:    152,665
  RandomText                :     11,130

Bug: 72998298
Test: ran perf test
Change-Id: I69af74ba743499bc444c441c1472fb19878c2eec
2018-03-07 11:34:54 -08:00
Sunny Goyal
32b64217a9 Setting the alpha on the full bitmap for AdaptiveIcon instead of individual layers
Test: atest FrameworksCoreTests:AdaptiveIconDrawableTest
Bug: 72798522
Change-Id: I3862942bf6f2c4767c293f09ad14725b5f0fbb2b
2018-03-07 10:11:56 -08:00
Phil Weaver
2c9e780c4f Fix accessibility action parceling
We were using an int for a bitmask, but the number of
standard actions reached 32 with the tooltip actions.
Switching to long.

This CL is mostly ag/3662206, but that CL did not
convert everything to ints.

Bug: 73897184
Test: AccessibilityNodeInfo tests caught this bug. I've also
enhanced it to make sure that all standard actions work
across parceling.

Change-Id: I2adae3ec34ac327af354449fbe6511f01cc30b2f
(cherry picked from commit c9bf45564b)
2018-03-07 17:58:42 +00:00
Anton Hansson
d137c872cd frameworks/base: Set LOCAL_SDK_VERSION where possible.
This change sets LOCAL_SDK_VERSION for all packages where
this is possible without breaking the build, and
LOCAL_PRIVATE_PLATFORM_APIS := true otherwise.

Setting one of these two will be made required soon, and this
is a change in preparation for that. Not setting LOCAL_SDK_VERSION
makes the app implicitly depend on the bootclasspath, which is
often not required. This change effectively makes depending on
private apis opt-in rather than opt-out.

Test: make relevant packages
Bug: 73535841
Exempt-From-Owner-Approval: Global cleanup
Change-Id: I26458e41ecb84de91ac9a356a5d4bafb44f463c1
2018-03-07 11:42:04 +00:00
Dianne Hackborn
16268a69d6 Merge "Fix issue #72116995: Add permission guarding Service#startForeground" into pi-dev 2018-03-06 23:04:16 +00:00
Mike Ma
07305c0b46 Power profile audio & video support
Add power consumed by audio and video hardware to power profile.
Attribute these power to specific app.
Bug: 70531798
Test: PowerProfileTest
Test: BatteryStatsHelperTest
Test: PowerCalculatorTest
Change-Id: I4811efa14ce97983258cd59bfd328181fe95baf4
2018-03-05 18:06:29 -08:00
Dianne Hackborn
dd027b3ab2 Fix issue #72116995: Add permission guarding Service#startForeground
Now requires permission if targeting P.

Note that this is a separate permission from the existing one
that is required for instant apps to use foreground services.  The
reason for this is that their semantics are different (the instant
apps permission is associated with an app op for control over what
the app is allowed, while the regular app permission is just a
normal permission that is always granted and only there for
auditing of apps), and there are probably going to be cases where
a developer will want to use a foreground service in the full
version of their app but not as an instant app.

Bug: 72116995
Test: atest CtsAppTestCases
Change-Id: I883c9515c307ed8e39f0bf888c4045944c8183ac
2018-03-05 16:59:21 -08:00
yuanlu
b6b0495af3 Add the flag for only alowing wifi on charger/network request option
Bug: 72828389
Test: atest
frameworks/base/core/tests/coretests/src/android/provider/SettingsBackupTest.java
Change-Id: I137e9cf4b9d5d9760bf05139bd6ead5973b13724
2018-03-03 04:27:12 +00:00
Phil Weaver
3fd86ed8d1 Merge "Change a11y shortcut default lockscreen behavior" 2018-03-03 03:35:34 +00:00
Phil Weaver
c5865d6f1b Change a11y shortcut default lockscreen behavior
If the user hasn't chosen a preference, the shortcut
will not work on the lockscreen until the user agrees
to use the shortcut. After the user so agrees, the
shortcut will also work on the shortcut.

Bug: 70944865
Test: Adding a test for the new behavior
Change-Id: I41e1238fad43a4432cd341c6808e26ad6e155506
2018-03-02 16:00:43 -08:00
TreeHugger Robot
df7105a993 Merge "Re-enable cross-profile use of spell checker APIs" 2018-03-02 21:20:47 +00:00
TreeHugger Robot
b886419a88 Merge "Preventing accidental misuse of registerReceiver" 2018-03-02 20:32:18 +00:00
Mike Ma
eb0d8a7b91 Power profile improvement: support ambient display
Add ambient display power to power usage calculation.
Corresponding field in power_profile is "ambient.on"

Bug: 70531652
Test: PowerProfileTest
Test: BatteryStatsHelperTest
Change-Id: I4dfad12875af42de9d517c917b6c1e99323c9fbf
2018-03-01 18:40:16 -08:00
Suprabh Shukla
ff78495653 Preventing accidental misuse of registerReceiver
A new BroadcastFilter was being created even when the caller called
registerReceiver with the same receiver and intent filters as an earlier
call. While resolving, only the first object added was being used.
Also, limiting the number of receivers that an app can register, so
badly written code does not end up causing memory or computational
pressure on the system.

Test: Manual, and
atest android.content.BroadcastReceiverTests#testReceiverLimit

Bug: 70677313
Change-Id: I04342b94d00cab3451aca4c884e15039448a760a
2018-03-01 17:58:41 -08:00
Yohei Yukawa
3f8c568883 Re-enable cross-profile use of spell checker APIs
Recently we successfully removed the restriction that up to one
SpellCheckerService can be active at the same time [1].  This still
makes much sense at high level, but at the ecosystem level there are
still some products / components that depend on the previous behavior
that child profile users can use parent profile's spell checker
service, which was originally introduced as a stopgap solution for
Android N MR1 [2].

Our decision for Android P for now is to revert back to the previous
behavior only when the calling process is running under work
profile.

At the implementation level, we can summarize the new behavior as
follows:
 * When TextServicesManager APIs are called from work-profile
   processes, those API calls will be evaluated with parent-profile's
   user ID to match the previous behavior [2].
   * If the currently selected spell checker is not a pre-installed
     one, then API calls from work profile will fail to match the
     previous behavior [2].
 * When TextServicesManager APIs are called from non work-profile
   processes, those API calls will continue being evaluated with
   calling user ID, as we planned for Android P [1].
 * TextServicesData will not be created for child profile users.

 [1]: I06c27ef834203a21cc445dc126602c799384527b
      06a2624049
 [2]: Iae9045ba5baccd04ed68906e7afb9160677ec4a5
      095fa37164

Bug: 63041121
Bug: 64718412
Bug: 70922751
Bug: 73609140
Fix: 73862883
Test: atest FrameworksCoreTests:com.android.internal.textservice.LazyIntToIntMapTest
Test: Manually tested with Test DPC as follows:
      * When AOSP Spell Checker is pre-installed and the current spell
        checker, both main profile and work profile can use AOSP spell
        checker.
      * When SampleSpellCheckerService is side-loaded and the current
        spell checker, only main profile can use
        SampleSpellCheckerService.
Change-Id: Ic046f832f203115106409a53418a5746eb6d4939
2018-03-01 13:10:23 -08:00
Adrian Roos
90c27c332a Merge "DisplayCutout: Add xml wrapper for layoutInDisplayCutoutMode" 2018-03-01 13:57:22 +00:00
Abodunrinwa Toki
fa6d6d963b Merge "Add TCM.getTextClassifier(int type)" 2018-03-01 06:38:24 +00:00
Abodunrinwa Toki
c7073a4b05 Add TCM.getTextClassifier(int type)
Bug: 72747726
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationManagerTest
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationConstantsTest
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Change-Id: I0d6cb5eaf3f9baa0564672c4d4b680fb00f40a51
2018-03-01 00:00:16 +00:00
Damien Bargiacchi
50b611070f Add setting for off body, radio off feature
Bug: 72714112
Change-Id: I8a632983c6c60ae195afa5bd6bdb677719bc5044
2018-02-28 15:44:44 -08:00
TreeHugger Robot
23bb050575 Merge "Associate TCconstants with the TCM instead of TCImpl" 2018-02-28 22:34:58 +00:00
Andrii Kulian
58b0948b1f Merge "Use post-execution state for lifecycle callback sequences" 2018-02-28 20:29:23 +00:00
Anton Hansson
3ee84990de Merge "frameworks/base: Set LOCAL_SDK_VERSION where possible." 2018-02-28 17:09:04 +00:00
TreeHugger Robot
5ef4247352 Merge "Revert "Update A11y action serialization to use longs"" 2018-02-28 17:08:47 +00:00
Adrian Roos
2292031e3d DisplayCutout: Add xml wrapper for layoutInDisplayCutoutMode
Allows native apps to request a layoutInDisplayCutoutMode without
having to implement a custom NativeActivity subclass.

Change-Id: I0b7fd4624e89fabe177462d615360442f72a1e11
Fixes: 73807928
Test: atest PhoneWindowTest
2018-02-28 16:43:16 +01:00
Anton Hansson
ab6ec61251 frameworks/base: Set LOCAL_SDK_VERSION where possible.
This change sets LOCAL_SDK_VERSION for all packages where
this is possible without breaking the build, and
LOCAL_PRIVATE_PLATFORM_APIS := true otherwise.

Setting one of these two will be made required soon, and this
is a change in preparation for that. Not setting LOCAL_SDK_VERSION
makes the app implicitly depend on the bootclasspath, which is
often not required. This change effectively makes depending on
private apis opt-in rather than opt-out.

Test: make relevant packages
Bug: 73535841
Change-Id: I4233b9091d9066c4fa69f3d24aaf367ea500f760
2018-02-28 15:13:23 +00:00
Artem Iglikov
5e97621c97 Revert "Update A11y action serialization to use longs"
This reverts commit 54549163b0.

Reason for revert: breaks tests, b/73997494

Bug: 73997494
Change-Id: I122c260898277d876c019554cb92351ac13a9eb0
2018-02-28 15:07:31 +00:00
Abodunrinwa Toki
db8fc314d2 Associate TCconstants with the TCM instead of TCImpl
Also updates flags list.

Bug: 72946306
Bug: 72946123
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationManagerTest
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationConstantsTest
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Change-Id: I8af9d3d1da01836fbadcbbf6ce7c1c0db7456a05
2018-02-28 14:35:49 +00:00
Andrii Kulian
9956d89cef Use post-execution state for lifecycle callback sequences
onActivityResult callback should always be executed before onResume.
If an activity is in the process of starting or creation, it can be
executed after onStart. If an activity was already resumed, then we
should pause it first, execute onActivityResult, then resume again.
So there are two valid pre-execute states - onStart and onPause.

For cases like the one described above this CL uses post-execution
state to identify valid pre-execute states and will try to use the
one that is closer to the current activity state during execution.

It also moves activity result and new intent callbacks into the same
transaction as the resumed state request, so that all changes can be
handled appropriately on the client side.

Bug: 72547861
Bug: 73348613
Test: TransactionExecutorTests
Test: ActivityLifecycleTests
Change-Id: I0af457d305c73a640040b8b7aee46dbbdfa6038f
2018-02-28 07:36:47 +00:00
Phil Weaver
f75cd84398 Merge "Update A11y action serialization to use longs" 2018-02-27 04:13:57 +00:00
Mike Digman
0fc64594ff Merge "Add intro mode to rotate suggestion button" 2018-02-27 02:48:19 +00:00
TreeHugger Robot
0b48b075c8 Merge "Make a11y shortcut robust to services w/no summary" 2018-02-27 02:19:26 +00:00
Mike Digman
5075264b6d Add intro mode to rotate suggestion button
Ripples the button multiple times when in intro mode

Test: manual
Change-Id: I16ada6014077298aa393ca495db1cd2b275b90dd
2018-02-26 15:07:38 -08:00
Phil Weaver
54549163b0 Update A11y action serialization to use longs
Change-Id: If1c903cdf43e8fed0d22a823dcd28e1c08b6267e
Fixes: 73897184
Test: Updating test (which was failing) to use long.
2018-02-26 14:41:49 -08:00
Phil Weaver
0f9aa4c3a5 Make a11y shortcut robust to services w/no summary
Fixes: 73254116
Test: Configure shortcut for TestBack. Now works.
Also adding test to internal test that fails without
this change.

Change-Id: I6bb1359f80c5e0145997bc107fe1580686edb30e
2018-02-26 13:49:41 -08:00
TreeHugger Robot
d4461782ff Merge "Put line feed to the test case" 2018-02-26 19:15:17 +00:00
TreeHugger Robot
c44d5053f2 Merge "Remove account from WrappedApplicationKey" 2018-02-26 14:52:19 +00:00
TreeHugger Robot
423e631da1 Merge "Add test for KeyChainSnapshot Parcelable" 2018-02-26 12:42:11 +00:00
Robert Berry
8230c8e0d4 Add test for KeyChainSnapshot Parcelable
Bug: 73811828
Test: runtest frameworks-core -p android.security.keystore.recovery
Change-Id: I9448ff791f4f8b82621df2d4343febdce86dbf42
2018-02-26 11:17:55 +00:00
Robert Berry
5b6bcd8514 Add tests for Recovery Controller Parcelables
Bug: 73811828
Test: runtest frameworks-core -p android.security.keystore.recovery
Change-Id: I0e77713cc3a3c6ee19e134628792782879ec2849
2018-02-25 23:47:15 +00:00
Robert Berry
291bd32c9e Remove account from WrappedApplicationKey
Recovery controller will no longer be aware of accounts. It is up to
the recovery agent to decide where to upload keys, and if so what
accounts to use.

Bug: 73811828
Test: runtest frameworks-core -p android.security.keystore.recovery
Change-Id: I929076d948f4d36ba88b68cca08058a5cdde0107
2018-02-25 23:11:17 +00:00
Seigo Nonaka
1250aa860e Put line feed to the test case
ascent10em-descent10em.ttf covers U+000A but must not be included as the
line spaceing.

Bug: 73625594
Test: bit FrameworksCoreTests:android.text.
Test: atest CtsWidgetTestCases:EditTextTest
    CtsWidgetTestCases:TextViewFadingEdgeTest
    FrameworksCoreTests:TextViewFallbackLineSpacingTest
    FrameworksCoreTests:TextViewTest FrameworksCoreTests:TypefaceTest
    CtsGraphicsTestCases:TypefaceTest CtsWidgetTestCases:TextViewTest
    CtsTextTestCases

Change-Id: I5cccd596d660c1f3ee34b0b81a44a7e4b64f3d01
2018-02-23 18:17:15 -08:00
goneil
15f5a7ef45 Store carrier app name in global settings for SIM dialog/notification
Bug: 70042722
Test: Manual QA
Change-Id: If3e97e90a37ac4e585a64c21ddfe234259cd0813
2018-02-23 13:47:44 -08:00
TreeHugger Robot
fb83c73f37 Merge "STOPSHIP: Roll forward: Add UidCpuPower global setting" 2018-02-23 17:49:17 +00:00