Commit Graph

102798 Commits

Author SHA1 Message Date
Bookatz
9313af68c2 loadUnbadgedItemIcon doesn't crash from getUserIcon
AppicationPackageManager.loadUnbadgedItemIcon would call
UserManager.getUserIcon if the icon was supposed to represent
switching to another the parent user (from a work profile).
However, that call requires extra permissions which may not be
available, which would cause a crash. The work profile doesn't
generally have permission to see the parent's icon, so rather
than showing the actual icon, a generic user icon is shown instead.

Bug: 134177607
Test: Manual confirmation: create a work profile and try to share a
picture (from Photos) to the personal profile.

Change-Id: Id79ca50b8e0a26593addbacf1a0ea709a2bc4da2
2019-06-05 03:03:24 +00:00
TreeHugger Robot
e2fb127e41 Merge "Allow passing in acceptUnvalidated without explicitlySelected" into qt-dev 2019-06-04 18:00:31 +00:00
Makoto Onuki
dee07f5d7f Merge "Fix slow query log." into qt-dev 2019-06-04 16:57:23 +00:00
TreeHugger Robot
eabafd5ceb Merge "Fix cannot create Nat-T keepalive on mobile data" into qt-dev 2019-06-04 15:38:18 +00:00
Lorenzo Colitti
0e33bd1167 Allow passing in acceptUnvalidated without explicitlySelected
This will allow wifi to tell ConnectivityService that partial
connectivity is acceptable even if the network is not explicitly
selected.

This is needed when the user selects a partial connectivity
network and tells the system to connect to the network, and never
to ask again. In such cases, the system must switch to the
network even if it is not explicitly selected.

Bug: 130766237
Test: atest FrameworksNetTests
Test: unit tests in an upcoming CL
Change-Id: I13465090b7b1c0bf5dc83362387a5428d77b7e1d
2019-06-04 14:35:22 +00:00
Alan Stokes
9e2457622a Cleanup background activity starts for release.
This removes the parts of the feature that were only needed in beta
releases:
- Toast when a start is or would be blocked.
- Configurable whitelist of exempt apps.
- Global setting to disable.

Not to be submitted until after beta 5 is cut.

Bug: 131747138
Test: atest BackgroundActivityLaunchTest
Test: atest RootWindowContainerTests
Test: atest WmTests:ActivityStarterTests
Test: atest CtsWindowManagerDeviceTestCases:ActivityStarterTests
Test: atest CtsAppTestCases:.ServiceTest

Change-Id: I3d8b9c72c8fac86b93ac57a8a1988f4133043af8
2019-06-04 14:26:00 +00:00
junyulai
931ec8efa0 Fix cannot create Nat-T keepalive on mobile data
Currently phone process fail to unparcel NattKeepalivePacketData
since it is not in framework. Moves NattKeepalivePacketData to
framework to make it can be utilized by telephony.

This change also removes the error feedback triggered by calling
add keepalive packet filter to an unsupported network agent. This
is misinterpreted by KeepaliveTracker that start keepalive is
failing.

Bug: 134048171
Test: 1. atest android.net.cts.ConnectivityManagerTest#testSocketKeepaliveLimitTelephony
      2. atest android.net.cts.ConnectivityManagerTest
      3. atest FrameworksNetTests
      4. atest FrameworksTelephonyTests

Merged-In: If630d5b339aa722717258c721daa8ead8c431e2d
Change-Id: Ic0f168be6f5a6263a5e0565b6381dcb5c645660f
(cherry picked from commit 9ede677bb2)
2019-06-04 20:44:29 +08:00
Kevin Yao
327751f18f Merge "User education support on disambiguation dialog" into qt-dev 2019-06-04 01:29:21 +00:00
TreeHugger Robot
952bcb8ffe Merge "RootViewImpl: Fix measure size hint for WRAP_CONTENT windows" into qt-dev 2019-06-03 22:52:59 +00:00
TreeHugger Robot
a54b943d59 Merge "Fix a bug about missing onConfigurationChanged" into qt-dev 2019-06-03 18:09:34 +00:00
Makoto Onuki
a9be33f7cf Fix slow query log.
SQLiteDebug.Const isn't supposed to be preloaded.

Fix: 134176355
Test: "setprop db.log.slow_query_threshold.10045 0" and make sure ...
it works for UID 10045

Change-Id: I06ca1531e968faa2378d0cb7f627e2c6a87cf502
2019-06-03 10:39:30 -07:00
Chavi Weingarten
fd979ca3d2 Merge "Only updateBoundsSurface when surface size has changed." into qt-dev 2019-06-03 16:08:42 +00:00
Kevin Yao
9176f033d9 User education support on disambiguation dialog
Support Accessibility education according to
1. Gesture Navigation is on or off
2. Screen reader feature (such as TalkBack) is enabled or not
Manual test screenshot: https://drive.google.com/open?id=1afTDRYPMcZphM5cL0krPDA_Vh9pRX-8x

Bug: 133811747
Test: Manual
Change-Id: I04ca36c9e88ff14e29103db41cfab2a9b53985d5
2019-06-03 13:59:38 +00:00
Matt Pietal
3e4b56f76c Sharesheet - Fix layouts for multi-window mode
When using multi-mode and holding the phone in portrait, android will
report it's orientation as LANDSCAPE. Take multi-window mode into
account when determining fixed widths as well as number of items per
row.

Bug: 132828939
Test: Use multi-window mode
Change-Id: I97b722ea58c9f79aea2a3ab594c3ad7d78f8607c
2019-06-03 07:08:22 -04:00
TreeHugger Robot
3bc96f9113 Merge "Invoke setWindowStopped on the thread that created the view" into qt-dev 2019-06-03 10:13:18 +00:00
TreeHugger Robot
3960d2232d Merge "Camera: Handle hidden physical camera without camcorder profile" into qt-dev 2019-06-02 01:41:54 +00:00
TreeHugger Robot
04c3eeeaa0 Merge "Do not create EMPTY batterystats history file." into qt-dev 2019-06-01 02:30:20 +00:00
TreeHugger Robot
e5e876265c Merge "Verify staged APKs pre-reboot." into qt-dev 2019-06-01 00:25:51 +00:00
chaviw
c0a8c4edbd Only updateBoundsSurface when surface size has changed.
Currently, updateBoundsSurface was getting called when the surface
changed, not just when the size changed. This meant it could be calling
setWindowCrop and deferTransaction when no size had changed. If size
hadn't changed, there was a high possibility that no new frames would be
submitted by the client, causing the deferTransaction to wait forever.

Since the deferTransaction was still waiting, SurfaceFlinger would wake
up every vsync to check if it should call doTransaction for the deferred
transaction. This caused 60Hz composition even when frames were rendered
slower.

Fixes: 132110524
Test: SF doesn't compose 30fps app at 60Hz
Change-Id: Icf3a99b34c288575438bfcd05e9077ea7919b4ca
2019-06-01 00:12:09 +00:00
Christopher Ferris
cbd4908c9f Merge "Avoid using usap when wrap property set." into qt-dev 2019-06-01 00:07:29 +00:00
Hui Yu
e40781ee84 Do not create EMPTY batterystats history file.
Previously when batterystats history buffer exceeds MAX_HISTORY_BUFFER
size, we create a new history file which is empty until batterystats
history buffer is written to the file. But the buffer is written to the
file every 30 minutes by default. When the file is empty, if the
system server process crashed or abrupt powered off, the file will remain
empty.

During the device bootup, batterystats reads history buffer from
the empty file and failed. The important mHistoryBaseTime variable is zero,
which causes all timestamps in subsequent history events are wrong, this
causes volta go/powerbug displays wrong, also Battery Usage in Settings
are wrong.

The fix is to not create new empty history file on disk until we actually
write history buffer to the file.

This problem can be manually reproduced by creating new empty file under
battery-history directory, then power off the device by long press power
button.

Bug: 133525277
Test: frameworks/base/core/tests/coretests/src/com/android/internal/os/BatteryStatsHistoryTest.java

Change-Id: I0c22881df6897e8832b472cc5e82fbf2727eb252
2019-05-31 23:48:47 +00:00
Fabian Kozynski
aa4545194b Merge "DO NOT MERGE Remove Privacy Indicators" into qt-dev 2019-05-31 22:43:08 +00:00
Fabian Kozynski
9a560e068d DO NOT MERGE Remove Privacy Indicators
Bug: 133257910
Test: build and check that behavior is as P
Change-Id: I24bfc3806e2d12f6a1cc968d6979107e7002a3c4
2019-05-31 20:43:21 +00:00
Shuzhen Wang
aae389639d Camera: Handle hidden physical camera without camcorder profile
For hidden physical sub-camera, if there is no camcorder profile,
use stream configuration map to figure out maximum recording size.

Test: RobustnessTest
Bug: 133819902
Change-Id: Ie0e76b51b1942b6fd3612c0b849a07bbb5d205e9
2019-05-31 13:23:40 -07:00
Christopher Ferris
6db1108ddc Avoid using usap when wrap property set.
Bug: 133515802

Test: Verified that malloc debug can be enabled on a USAP enabled device.

(cherry picked from commit 86bd25d5ed)

Change-Id: I5f25030ce8e667d175712796c0950f38baa2532d
Merged-In: I5f25030ce8e667d175712796c0950f38baa2532d
2019-05-31 12:46:42 -07:00
TreeHugger Robot
ae76af46b2 Merge "Prevent double teardown of service connections" into qt-dev 2019-05-31 17:27:34 +00:00
Gavin Corkery
5b9e00273b Merge "Perform user data back up in post install stage" into qt-dev 2019-05-31 16:10:13 +00:00
Dario Freni
f141aab4ed Verify staged APKs pre-reboot.
Test: adb install --staged file.apk on taimen-eng target; adb
install-multi-package file1.apex file2.apex file3.apk file4.apk
Test: atest StagedRollbackTest
Bug: 123753157
Change-Id: I41121b73c0db8ca55bafd2f57cba73bb3b940149
2019-05-31 14:55:08 +01:00
Adrian Roos
c18c6da441 RootViewImpl: Fix measure size hint for WRAP_CONTENT windows
Fixes an issue where we would measure WRAP_CONTENT windows inconsistently
in the measure passes before and after relayoutWindow.

Fixes: 119839070
Bug: 73813813
Change-Id: I376e416d648f31a0dedecd6a70b476c3bf82b8b0
Test: Install test case app from 119839070, verify dialog is correctly laid out.
2019-05-31 14:26:35 +02:00
Gavin Corkery
ab5ee411e5 Perform user data back up in post install stage
Currently the backup of user data is done in the enable rollback stage,
during which there is no guarantee that the package being backed up is
not currently running. Moving the backup to the post install stage will
guarantee that the package is not running.

Test: atest RollbackTest
Test: atest StagedRollbackTest
Bug: 124032231
Change-Id: I4b42a0c5ade1645585d1d6f698637df950d05c72
2019-05-31 10:26:56 +01:00
TreeHugger Robot
9bb2607703 Merge "Skip IME initialization when received the token that already registered" into qt-dev 2019-05-30 17:33:17 +00:00
TreeHugger Robot
26a28f64c5 Merge "Remove @VisibleForTesting from DevicePolicyEventLogger getters." into qt-dev 2019-05-30 15:05:26 +00:00
arangelov
3b37af4c3c Remove @VisibleForTesting from DevicePolicyEventLogger getters.
Also make it extendable for mocking and update atoms.proto comments.

Bug: 131833599
Test: compiled
Change-Id: I6a0e8a6175e7e9e46572ea4aa50ce7669a02588b
2019-05-30 14:40:12 +01:00
Luke Huang
459a5becd9 Fix issue for DnsResolver#query
1. Previously, getDnsNetId doesn't handle all the cases.
Fix it with cosidering bypass private DNS flag.
2. Make getDnsNetId return Network instead of netId,
and change name from getDnsNetId to getDnsNetwork

Bug: 129530368
Test: atest DnsResolverTest DnsUtilsTest

Merged-In: Ibb5080acd3c296650d56532fc7da525e9fa95e8f
(cherry picked from commit 3854966dc9)

Change-Id: I37353642088bcc17da0cf17f78a5ed9efc9aefc3
2019-05-30 11:58:25 +00:00
lumark
e0af39403e Skip IME initialization when received the token that already registered
When IME window switches from current display to another display and back quickly,
system will re-bind InputMethodService to re-attach window token for each moving,
the IME service lifecycle will be onBind -> onUnBind -> onDestroy -> onBind.

Ideally, system will deliver window token when onServiceConnected and system should
only receive one onServiceConnected when the last service bound.

But due to user switch display very quick, before unbind service callbacked from client,
the next bind service request comes, caused the connection exists in system side and
client will then callback 2 onServiceConnected to system.

Since CL [1] introduced InputMethodPrivilegedOperationsRegistry to deal with token
registraction singleton-ness, the exception will be thrown for above case due to
the duplicate window token passed to client.

Add InputMethodPrivilegedOperationsRegistry#isRegistered to check if the token
already registered, if so, skip this duplicate initialization request.

[1]: I4a61470f06ffac5f7a512536f8431489db0108f4

Fix: 133624278
Test: manual as below steps:
    1) Settings > Developer options, enable "Simulated display" & "force desktop mode"
    2) Reboot device.
    3) Launch app from simulated display.
    4) Launch app from primary display (i.e. contacts), focus EditText to show IME.
    5) Tapping primary & simulated display repeatly & quickly.
    6) See if any exception log from IME application. (i.e. Gboard)

Change-Id: Ie6bfbae735724fe744590e715124d2737d2b665d
2019-05-30 12:27:17 +08:00
Michael Groover
daf8086aa0 Merge "Update Build#SERIAL docs to reflect device ID restrictions" into qt-dev 2019-05-30 04:11:55 +00:00
Govinda Wasserman
1f606b099e Adds learned state to the Reminder Experience for Assistant Handles
Also sets the Reminder Experience as the default behavior.

Test: Tested locally
BUG:132983599
Change-Id: I27b063ca142fbde99b0bd1f6d107f45d6070869a
2019-05-29 23:06:02 -04:00
Christopher Tate
36c998c6b7 Prevent double teardown of service connections
Asynchronicities in activity teardown -> service connection teardown
introduced a race in which the teardown could race with new service
bindings to "the same" service instance, and then wind up attempting to
shut down a new, valid instance inappropriately.  Fixed by making sure
to clear the "what needs to be torn down" bookkeeping as part of the
act of doing that teardown, removing the possibility for stale state.

Fixes: 131029480
Test: manual
Test: atest CtsAppTestCases
Change-Id: I33a63f524d147ff6ec97dd3efb0127dcace8bf3c
2019-05-29 18:46:09 -07:00
Michael Groover
1279ff9dfb Update Build#SERIAL docs to reflect device ID restrictions
Bug: 133724689
Test: Build
Change-Id: I1188a1b0201730a649e3fa479989ba9d1ec3a143
2019-05-29 14:52:22 -07:00
TreeHugger Robot
89ebf3f674 Merge "Close windows on ACTION_UP when touched outside" into qt-dev 2019-05-29 21:51:22 +00:00
TreeHugger Robot
f8e7608263 Merge "Update assist handle behavior control" into qt-dev 2019-05-29 20:34:48 +00:00
Govinda Wasserman
2c1134052e Update assist handle behavior control
Improves behavior modes to use more reliable callback mechanisms. Added
phenotype flag hooks for control of behavior and behavior parameters.
Added more robust null guarding.

Test: Tested locally
BUG:132983599
Change-Id: I42039152836071941d6b4f1cafb3670c62a65824
2019-05-29 14:41:23 -04:00
Mehdi Alizadeh
8a09c7c0ae Merge "Filter disabled/suspended direct share targets in sharesheet" into qt-dev 2019-05-29 18:06:57 +00:00
Cody Northrop
3893e5d9ea Merge changes from topic "no_layers_profileable" into qt-dev
* changes:
  GraphicsEnvironment: No debug ANGLE packages for profileable apps
  Revert "GraphicsEnvironment: Allow profileable apps to load layers"
2019-05-29 17:10:56 +00:00
TreeHugger Robot
f6f26e0447 Merge "Add snooze options setting" into qt-dev 2019-05-29 17:03:32 +00:00
TreeHugger Robot
b5fbf20a55 Merge "Sharesheet - Fix NPE on default app launch" into qt-dev 2019-05-29 16:53:48 +00:00
Varun Anand
b33d2ca2e3 Merge changes from topic "vpn_data_accounting" into qt-dev
* changes:
  Add one more test for VPN usage stats.
  Addressing comments for http://ag/7700679.
  NetworkStatsService: Fix getDetailedUidStats to take VPNs into account.
  Take all VPN underlying networks into account when migrating traffic for VPN uid.
2019-05-29 16:34:14 +00:00
Sal Savage
26fdabb9a0 Merge "BluetoothProfileConnector: Invoke service disconnections with the correct profile ID" into qt-dev 2019-05-29 16:08:48 +00:00
Matt Pietal
32922ca4db Sharesheet - Fix NPE on default app launch
Turns out there's a secondary layout used by resolver which does not
contain R.id.empty. Check for null.

Bug: 133707284
Test: Open PDF file through resolver
Change-Id: I311f1c1d2fa6edcebc81d9056755884b1585a7cb
2019-05-29 07:39:21 -04:00
Matt Pietal
030bd8471f Sharesheet - Add additional checks for low ram devices
Continue to hide the direct share area for low ram devices. Make sure
the A-Z list loads properly.

Bug: 132342311
Test: Use low ram device
Change-Id: I66b58af3994e034e4d870286ef62ba4a9289e083
2019-05-29 07:17:39 -04:00