A user can change sysui_nav_bar via adb.
If value of sysui_nav_bar doesn't contain two semicolons, split String array
is accessed out of bounds throwing an exception, sending SystemUI
in an exception loop.
Test: manual
Test: adb exec-out settings put secure sysui_nav_bar "home;back"
Change-Id: Ia9d74be36d287085650393476029489c9a359a0f
When there are multiple connected A2DP/HFP devices, if a connected
device's name is clicked on, that device will be chosen as
Active - i.e., it will be the device chosen for audio out / phone call.
Also:
* Listen to the BluetoothA2dp.ACTION_ACTIVE_DEVICE_CHANGED
and BluetoothHeadset.ACTION_ACTIVE_DEVICE_CHANGED intents
and update the the status of the current active device.
* When connecting a new device, and Multi-A2DP is enabled, don't
disconnect the currently connected device.
* Update the implementation of isA2dpPlaying() so it correctly checks
all connected devices, not only the first one.
Test: Manual: multiple connected A2DP devices, and selecting each as
the Active Device.
Bug: 64767509
Change-Id: I69f3c85ebf5a7f07f6deed484c6dd65705460ae4
Merged-In: I69f3c85ebf5a7f07f6deed484c6dd65705460ae4
(cherry picked from commit 1af33a1926)
In a future set of CLs, NPMS will offer to override a handful of
capabilities on a per-subId basis. Define a no-op version of the
interface to make it easier to add new methods in the future.
Test: bit FrameworksNetTests:android.net.,com.android.server.net.
Test: bit FrameworksTelephonyTests:com.android.internal.telephony.dataconnection.DataConnectionTest
Bug: 64133169
Change-Id: I03dfd98463861f0338c4174e8d8a88c300ea5b55
systemui may crash due
to an uninitialized value of mNavigationBar probably because
of some race condition during initialization caused by emulation
performance issues:
11-01 19:48:58.634 5064 5064 E AndroidRuntime: FATAL EXCEPTION: main
11-01 19:48:58.634 5064 5064 E AndroidRuntime: Process: com.android.systemui, PID: 5064
11-01 19:48:58.634 5064 5064 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.android.systemui.statusbar.phone.LightBarTransitionsController.dump (java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[])' on a null object reference
11-01 19:48:58.634 5064 5064 E AndroidRuntime: at com.android.systemui.statusbar.phone.LightBarController.dump(LightBarController.java:241)
11-01 19:48:58.634 5064 5064 E AndroidRuntime: at com.android.systemui.statusbar.phone.StatusBar.dump(StatusBar.java:3448)
11-01 19:48:58.634 5064 5064 E AndroidRuntime: at com.android.systemui.SystemBars.dump(SystemBars.java:48)
11-01 19:48:58.634 5064 5064 E AndroidRuntime: at com.android.systemui.SystemUIService.dump(SystemUIService.java:52)
11-01 19:48:58.634 5064 5064 E AndroidRuntime: at android.app.ActivityThread.handleDumpService(ActivityThread.java:3488)
11-01 19:48:58.634 5064 5064 E AndroidRuntime: at android.app.ActivityThread.-wrap9(Unknown Source:0)
11-01 19:48:58.634 5064 5064 E AndroidRuntime: at android.app.ActivityThread.handleMessage(ActivityThread.java:1726)
11-01 19:48:58.634 5064 5064 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:105)
11-01 19:48:58.634 5064 5064 E AndroidRuntime: at android.os.Looper.loop(Looper.java:164)
11-01 19:48:58.634 5064 5064 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6541)
11-01 19:48:58.634 5064 5064 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
11-01 19:48:58.634 5064 5064 E AndroidRuntime: at com.android.internal.os.Zygote.run(Zygote.java:240)
11-01 19:48:58.634 5064 5064 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
This patches adds an explicit checks for (mNavigationBar != null)
everywhere it is used.
Test: cts test.
Change-Id: I8056aef54a10bbb1970bc2ce4913e7a618498fd3
* Fix to properly display attempts remaining for PIN/PUK.
* On bootup show the available PIN/PUK attempts if sim
is locked on PIN/PUK.
* Show incorrect password message on entering wrong PIN/PUK
password.
In KeyGuardSimPinView and KeyGuardSimPukView, check for sim locked on
PIN and reset the flags to show the default message.
Bug: 37782683
Change-Id: I46d7d5dd86977cddecf3147add73ef6ccc64b257
Introduce implementation to display RAT icon in quick setting
even when data is off.
Test: Test with simulated RIL
Bug: 28805511
Change-Id: I7fabec993c22e3359e36cff2caca9258d79f6273
Introduce customization and implementation to display RAT icon in status
bar even when data is off. Since some carriers require, this feature is
necessary.
Test: Test with simulated RIL
Bug: 28805511
Change-Id: I0428ba1749bdb884d210f1ff02cdf86b376a0ca8
For secondary users, stopping primary user process
is not necessary anymore since PiP is managed
in the primary user's SystemUI process,
this logic was prevening the relaunching of the activity.
Test: Launch PiP from a secondary user on TV device,
restart the activity and ensure that it is brought
to fullscreen.
Change-Id: I3a0658c9f55f85771b92a71a1ddeb0f9d544e869
Send "com.android.settings.location.MODE_CHANGING" broadcast intent
when the location mode is about to be changed on Settings app or
Quick Settings.
Fixes: 28057031
Test: manual - turn the location setting on
Change-Id: Ia2db3554755a643609cfb5f0fc30f2dc2cc1beeb
Add support for Supplier<Icon> in QSTile.State, allowing a method for
CustomTile not to cache the drawable for its IconViews. This fixes the
problem that the ImageViews in QQS and QS were trying to use the same
drawable and putting it in a bad state.
Test: Add 3rd party tile to first position in QS and turn on/off; visual
Change-Id: I408d6391a718fcb3f847e72bd303551d2d004dbb
Fixes: 67356768
Currently when both sims are locked on PIN, upon exhausting
PIN attempts for SIM1 PIN, SIM1 PUK view is not displayed
and the user is not able to unlock the PUK.
This is due to while fetching the getSecurityMode in Key
-GuardSecurityModel, the ordering of checking the security
mode is PIN first and PUK later.So when one sim is locked
on PUK and the other is locked on PIN the ordering of checking
the PIN first is causing to return PIN as security mode in place
of PUK. This will lead to PUK lock screen not been shown to user.
Fix: In KeyGuardSecurityModel.java, while querying the security Mode
modify the order to check for security mode i.e PUK locked state first
and then PIN locked state.
In KeyGuardSimPinView and KeyGuardSimPukView, check for sim locked on
PIN and reset the flags to show the default message.
Test: manually test
Bug: 34796244
Change-Id: I157959d9eb313b9d3af84f86e1429448a0f7f065
Add change to show "Invalid card" on UI on CARD_IO_ERROR when
erroneous SIM card is inserted
Bug: 23147806
Change-Id: Ibaacf06f2aad8f206095783cc431a87485f1c2ad
There is the possibility of mCallback being null while
the Keyguard still has a PhoneStateListener registered
for onSimStateChanged callback. This can cause a NPE.
Bug: 66986066
Test: Manual, PIN/PUK locked SIM
Merged-In: Id8ca403a839cff994970c370973a91e8e5688722
Change-Id: I799c9521f787e800e259c3bdce9edee3f844f5f3
The transition from display power modes isn't tightly coupled
to the AoD lifecycle. We rely on a timeout to show and hide
the sysui scrim. In this case we increased it.
Change-Id: I13a0d33205c9f904afced63f231176151aee15c4
Fixes: 64077859
Test: receive notificaition in AoD, observe.
Because it wasn't laid out yet, icons would appear white.
Change-Id: I9338966299de253f36ae325553e82b76defe3b9d
Fixes: 66711268
Test: add icon with light statusbar in multiwindow, icon looks normal