When "uninstalling the updates" of a system app the package manager
triggers a ACTION_UID_REMOVED with EXTRA_REPLACING=true. In this case we
want to reset the app-op state, but the app has to still work
afterwards as the UID is not actually removed.
Removing all the state for the UID is not the right behavior
as this does not trigger a re-evualtion of app-op state for this app.
Test: Uninstalled updates for pre-installed Google Photos app and saw
storage related app-ops to be set correctly afterwards
Bug: 140731248
Change-Id: I235dbab877ce4377232799d5d0555ff7d2722ebb
This is done buy building all of CarSystemUI as a library and then including that
library as a static lib for an android_app target. Thus anyone that wants to
build a derivative to CarSystemUI can include that library and start extending.
It is the same mechanism that allows CarSystemUI to extend the phone SystemUI
Bug:140875212
Test: Build and Deploy
Change-Id: I4c83b0147c5ce8a8b4321ba0866721e4922df431
It's possible for a service to do a start/stop foreground and cause a
couple of things to happen:
NotificationManagerService will enqueue a EnqueueNotificationRunnable,
post a PostNotificationRunnable (for the startForeground), and then also
enqueue a CancelNotificationRunnable. There is some racy behavior here
in that the cancel runnable can get triggered in between enqueue and
post runnables. If the cancel happens first, then
NotificationListenerServices will never get the message.
This behavior is technically allowed, however for foreground services we
want to ensure that there is a minmum amount of time that notification
listeners are aware of the foreground service so that (for instance) the
FGS notification can be shown.
This CL does two things to mitigate this problem:
1. Introduce checking in the CancelNotificationRunnable such that it
will not cancel until after PostNotificationRunnable has finished
executing.
2. Introduce a NotificationLifetimeExtender method that will allow a
lifetime extender to manage the lifetime of a notification that has been
enqueued but not inflated yet.
Bug: 119041698
Test: atest NotificationManagerServiceTest
Test: atest ForegroundServiceNotificationListenerTest
Change-Id: I0680034ed9315aa2c05282524d48faaed066ebd0
Merged-In: I0680034ed9315aa2c05282524d48faaed066ebd0
We are still missing a key layout for the original xbox controller with
product id 02dd. Add the missing layout here.
Bug: 140808513
Test: manual test by plugging in the actual joystick and using the
custom tester app
Change-Id: Ib84e3ac04ff58f890ce7743423cc9b869af347db
Also converted curly quotes to straight in one of the notes.
Test: make ds-docs -j32
Bug: 135089189
Change-Id: I146fb7eec5da48496467a1bc7706f9d87dc339f7
* changes:
Don't send duplicated user-start broadcast when booting on headless-system mode.
Don't start first human user twice on headless-system mode.
The Xbox controller (product id 0x02fd) is going to have a new firmware
update this fall that sends a different keycode (316/BUTTON_MODE) for
the Xbox button. The goal is to enable the Xbox button to make it to
apps on all Android versions -- with our without a controller-specific
key mapping file.
Unfortunately, the new Vendor_045e_Product_02fd.kl key mapping file
that was added to Android Q maps the pre-firmware-update
Xbox key code (172) to BUTTON_MODE, yet it makes no mention of key 316.
This results in apps getting a raw 316 scan code instead of
a BUTTON_MODE KeyEvent when using a controller with the latest firmware
on Android Q.
The fix is to add an additional key mapping for 316 that *also* maps to
BUTTON_MODE. With both mappings in place, both pre and post
firmware-updated controllers will get the correct behavior for the
Xbox button on Android Q.
Test: AFAIK, no CTS tests exist for Xbox controller key mappings;
we'll need to add some at a later date. I was unable to test this
change because I'm unable to write to the system directory on any
of my devices, but I know that mapping 316 to BUTTON_MODE will
fix the issue.
Signed-off-by: Jared Henderson <jaredh.microsoft@gmail.com>
Bug: 139512030
Bug: 140808513
Merged-In: I8600ea79a0aa8557267d6ca712e5d56680e7a98b
Change-Id: I8600ea79a0aa8557267d6ca712e5d56680e7a98b
A race condition existed whereby placeholder targets were attempting
to be published without any target information, due to bg thread
processing of resolved intents. Detect this scenario, and wait. Also
have SysUI ChooserActivity accept voice interactions in the intent
filter. Does not use DEFAULT category, as it should only ever be used
by explicit intents.
Bug: 139729579
Test: atest ResolverActivityTest
Change-Id: If8fc0c3595da47c26b1edab75bd6fc82a6dcb35e
(cherry picked from commit 2cf4c6c3d4)
Fixes an issue, where the DeviceConfig exclusion limit was reset
whenever another key in the android:window_manager namespace changed.
Fixes: 140190037
Test: Set limit device config flag to value >200, set unrelated flag, verify limit is still >200.
Change-Id: I2df5b6661cc5e545d7c3de38dec5c86e66baea22
Merged-In: I2df5b6661cc5e545d7c3de38dec5c86e66baea22
am: 4a70ea3ff0 -s ours
am skip reason: change_id Iefabeb731b941f09fe1272ac7b7cd2feba75c8df with SHA1 9b3cb0f06b is in history
Change-Id: Id366929e30e4f81d36b233a120155c039eb84cd2
am: 69561082c5 -s ours
am skip reason: change_id Iefabeb731b941f09fe1272ac7b7cd2feba75c8df with SHA1 9b3cb0f06b is in history
Change-Id: I7a11006386d200b0da8eb0e3b27741e1efedb473
am: 870474af0c -s ours
am skip reason: change_id Iefabeb731b941f09fe1272ac7b7cd2feba75c8df with SHA1 9b3cb0f06b is in history
Change-Id: I5c210241a714fc4064e8f83cc35e77315616337e
am: eadf7dfa79 -s ours
am skip reason: change_id Iefabeb731b941f09fe1272ac7b7cd2feba75c8df with SHA1 9b3cb0f06b is in history
Change-Id: I632e3683e003383951f80c80a988b689805498b5
am: aee078eae7 -s ours
am skip reason: change_id Iefabeb731b941f09fe1272ac7b7cd2feba75c8df with SHA1 9b3cb0f06b is in history
Change-Id: Ifb20decfdf6a48b599931f87a733e97013538888
am: 8a7c7cf04c -s ours
am skip reason: change_id Iefabeb731b941f09fe1272ac7b7cd2feba75c8df with SHA1 9b3cb0f06b is in history
Change-Id: I2a6ea0a79ee30b3f40597b25ea9d4e936d24147a
am: 8c17cb7e3d -s ours
am skip reason: change_id Iefabeb731b941f09fe1272ac7b7cd2feba75c8df with SHA1 efdcff2452 is in history
Change-Id: Iba01f5b6dc61c1a1c8040726faef7f1da7447fd9
am: a6c49f091d -s ours
am skip reason: change_id Iefabeb731b941f09fe1272ac7b7cd2feba75c8df with SHA1 9b3cb0f06b is in history
Change-Id: Iebe662b90075b9fcc0fdeabcd6424b84355b05fb
am: a376239229 -s ours
am skip reason: change_id Iefabeb731b941f09fe1272ac7b7cd2feba75c8df with SHA1 02046b4f2c is in history
Change-Id: I3cc4d873250f924af768b37e97338024ee236e6e
am: a36fc3bb2c -s ours
am skip reason: change_id Iefabeb731b941f09fe1272ac7b7cd2feba75c8df with SHA1 efdcff2452 is in history
Change-Id: Ifdfc5a0d8f73cbd1338b53651cf8d293a2625726
am: 20d46e4bf1 -s ours
am skip reason: change_id Iefabeb731b941f09fe1272ac7b7cd2feba75c8df with SHA1 efdcff2452 is in history
Change-Id: I695edafa45fc296fff1b84d786c8a804f5996934
am: 02046b4f2c -s ours
am skip reason: change_id Iefabeb731b941f09fe1272ac7b7cd2feba75c8df with SHA1 9b3cb0f06b is in history
Change-Id: I6003b908b417a8bb1d687b5eafe2f2646f63e814
Fixes:139682542
Test: turn screen on and off, set lockscreen, switch users
Change-Id: Id10b2e62230b5ee4e5a5ef7419a1500112673049
(cherry picked from commit 4c4971d04a)