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
Change-Id: I799c9521f787e800e259c3bdce9edee3f844f5f3
Usually, notification panel is automatically collapsed
after tapping "CLEAR ALL" button but is not collapsed
if all dismissable notifications are scrolled out.
In this case, dismissed notification is still displayed
until notification panel is once collapsed.
And that "dismissed" notification causes several issues.
To avoid this, collapse notification panel automatically
after tapping "CLEAR ALL" button even when all dismissable
notifications are scrolled out.
Fixes: 67246876
Test: manual - post ongoing and dismissable notifications,
and tap CLEAR ALL button.
Change-Id: I048255cde6fdb4cedd2c3472e345ff63c744af68
- The data annunciator on the UI shows up as
"G" instead of "3G"
- Map the 3G telephony icon to network type
TD-SCDMA
Bug: 36802489
Test: manual
Change-Id: I63a0e54aab7fda2bcc6f098bb0b43799aad2f6c2
When trying to boot android in emulator, systemui may crash due
to an uninitialized value of mNavigationBar probably because
of some race condition during initialization caused by emulation
performance issues:
08-24 16:28:43.722 1947 1947 E AndroidRuntime: FATAL EXCEPTION: main
08-24 16:28:43.722 1947 1947 E AndroidRuntime: Process: com.android.systemui, PID: 1947
08-24 16:28:43.722 1947 1947 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.app.Fragment.getView()' on a null object reference
08-24 16:28:43.722 1947 1947 E AndroidRuntime: at com.android.systemui.statusbar.phone.StatusBar.getNavigationBarView(StatusBar.java:4636)
08-24 16:28:43.722 1947 1947 E AndroidRuntime: at com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager.updateStates(StatusBarKeyguardViewManager.java:537)
08-24 16:28:43.722 1947 1947 E AndroidRuntime: at com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager.reset(StatusBarKeyguardViewManager.java:207)
08-24 16:28:43.722 1947 1947 E AndroidRuntime: at com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager.show(StatusBarKeyguardViewManager.java:145)
08-24 16:28:43.722 1947 1947 E AndroidRuntime: at com.android.systemui.keyguard.KeyguardViewMediator.handleShow(KeyguardViewMediator.java:1721)
08-24 16:28:43.722 1947 1947 E AndroidRuntime: at com.android.systemui.keyguard.KeyguardViewMediator.access$2900(KeyguardViewMediator.java:138)
08-24 16:28:43.722 1947 1947 E AndroidRuntime: at com.android.systemui.keyguard.KeyguardViewMediator$4.handleMessage(KeyguardViewMediator.java:1482)
08-24 16:28:43.722 1947 1947 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:105)
08-24 16:28:43.722 1947 1947 E AndroidRuntime: at android.os.Looper.loop(Looper.java:164)
08-24 16:28:43.722 1947 1947 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6510)
08-24 16:28:43.722 1947 1947 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
08-24 16:28:43.722 1947 1947 E AndroidRuntime: at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)
08-24 16:28:43.722 1947 1947 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:771)
This patches adds an explicit checks for (mNavigationBar != null)
everywhere it is used.
Test: Boot ARM & MIPS emulators to homescreen.
Change-Id: I3af868b9da565c7eb6c6882f65fbda4a34d802c8
Signed-off-by: Miodrag Dinic <miodrag.dinic@imgtec.com>
DrawableIcon returns the same instance of its Drawable
for both getDrawable() and getInvisibleDrawable().
This could cause a race condition during grayscale animation
of a QS tile which uses the same icon for both ON and OFF state.
Clone the original Drawable and use it for invisible drawable
to solve this.
Fixes: 65437135
Test: manual - put a custom tile at the first position of QS panel
and tap it
Change-Id: Ie74edd9c5e58118a70b5abd8096cdd1297940ef5
StatusBar.mKeyguardUserSwitcher is instantiated
only if multi user function is enabled.
But mKeyguardUserSwitcher.hideIfNotSimple() is invoked
without null check in StatusBar#onBackPressed().
This causes NPE on multi user disabled devices.
Fixes: 65391930
Test: manual - tap Back key on lockscreen
Change-Id: I528823fa832ee5096d73dea660997fc276d86c5c
1) If the PIN/PUK keyguard comes up for a locked
SIM, it can not be removed by removing the
affected SIM. It can only be removed by
rebooting the device or entering a bogus PIN.
This change automatically clears the keyguard
when when the locked SIM is removed. It will
be shown again if the locked SIM is re-entered.
2) If the device is PUK locked and the code
**05*PUK*new pin* new Pin# is entered in the
emergency dialer, it will unlock the SIM.
By listening to the READY state, we can remove
the keyguard when the SIM is unlocked by
other means.
Bug: 64469515
Bug: 64044132
Test: Manual
Merged-In: I7b576ee7e38f141075cae094e3d1f74b7145d53f
Change-Id: I9507f80edcd4c04dfa0cc3b48a25e619aafa9eb3
The settings button overlaps with the expand indicator
in RTL layout case when rotating the device to landscape mode.
To fix this issue, the animation of settings button
in RTL layout case should be changed.
Fixes: 65228478
Test: manual - set a BiDi language and open Notification panel.
Change-Id: I008b33ebcdf074639a291e7d30d3343654a2ea37
When the profile is updated in guest mode, the user icon in QS footer
is not displayed correctly. To fix this issue, the tinting of
guest icon is applied only when the drawable is not UserIconDrawable.
Fixes: 65148947
Test: manual - switch to guest and update the profile.
Change-Id: I9690e9fd286703a25ee08d877c3dd7f4729e2b31
Fix Bug:SystemUI will crash when draging the divider line in qstile edit panel.
Patch solution:The divider line can not be dragged.
When the divider is selected, step in onSelectedChanged, mTiles.get(position) will return null object.Then SystemUI will crash
Change-Id: I40b948a8fac2964df7891086a701159a4c0f513d
- When launching into recents directly in another orientation, it
appears that the animation start callback is not made, which then
causes the transition-waiting state to persist until Overview is
next hidden. As a fallback, if we get onEnterAnimationComplete()
on the activity, then the animation has started and completed, so
we can reset the state.
Bug: 64694148
Test: Launch fixed-portrait app, hold device in landscape and then hit
recents button, ensure that recents button still works after.
Change-Id: Ibac8554c1f71324838fef1f04db2d88b16ffe219
Under certain circumstances, the transition to AOD can happen before
the navigation bar gets a chance to hide itself, which happens in a
traversal. To work around this, post turning the screen on such that
it only happens after the next traversal.
Change-Id: I178b9394e7cc6baa8e9552c9819c3ce9b044defb
Fixes: 64599221
Test: Open Whatsapp / Gmail, turn off screen, verify navbar does not flicker.
Base the temp threshold to be based on the shutdown temp lowered
by some amount to ensure the warning can be seen before a shutdown.
Test: runtest systemui
Change-Id: I033a776e874d76018592954932ed5127e1b228ae
Fixes: 62845934
* changes:
Ensure that we register the media session listener for the current user.
Fix issue with PiP callbacks not being handled for secondary users.
The events were ending up not important for a11y and
with invalid window ids, which prevented TalkBack from
seeing them properly.
Bug: 64428961
Test: Ran YouTube in PiP, now able to select it.
Change-Id: I38ccbf5f2f35ffda255b84f229e98ca23e6b11aa
It may happen that a group entry could be leaked, if an
entry is inserted again after it was removed. We now added
logging to detect it better and worked around the issue.
Change-Id: Iaa6dfedddf5bafe0697bd0411b2e5f24982b1160
Fixes: 63717947
Test: add groups and remove / hun children