frameworks: allow LockPatternView to be rotated

When displaying this view and rotating the screen, mLockPatternUtils has
the potential to be null, but the save and restore instance state
methods depend on it to be initialized. Work around this by checking if
it's null.

Change-Id: I351bd63fefbcb92fffe20dca6a0381a20ac796ea
Signed-off-by: Roman Birg <roman@cyngn.com>
frameworks: add ongoing notification while collecting bug report

Change-Id: I644da7046b3cbbd0ec601f0e35dfbad6adf4dcf5
Signed-off-by: Roman Birg <roman@cyngn.com>
SystemUI: don't show eq tile while casting

Change-Id: I00ae770b572535be9dca61760ad11e5f84fba63d
Signed-off-by: Roman Birg <roman@cyngn.com>
Use hidden API to validate APK chains

Bug: 13678484
Change-Id: I28dedab74b0e24d47ab9f2190298156c909e9d54
tether: tethering chooses wrong upstream when mobile_dun is required

When mobile_dun is required, the default mobile type will
be deleted from upstream list, this makes wifi become
the highest priority upstream even whne wifi is not available.

Change-Id: I2c12f6cd6d52331220dce900609ad072f9ec3fbc
CRs-fixed: 671675
Themes: Avoid NPE when setting text in TickerView

It is possible, with the right timing, to receive an NPE in TextSwitcher
when a notification comes in during recreation of the status bar because
of a theme change.

Change-Id: Ia35ad0346f232df905ecff69158b71f3bf61a163
SystemUI: enable equalizer for Wifi display

While the EQ doesn't work while using the Chromecast, using Wireless
display (miracast) still allows for control of the EQ since it's
streaming from the device.

Change-Id: I7322429b39438e66c013456b6f8a3242e333d93a
Signed-off-by: Roman Birg <roman@cyngn.com>
SystemUI: NavbarEditor: Fix saveKeys logic

In landscape, the keys are saved backwards in the for-loop, but it would crash out due from
an IndexOutOfBounds error since it's subtracting i from the array length while i = 0.

Change-Id: I405c5d962d8c575cfee57b09a7e55a8a6efc2d24
Automatic translation import

Change-Id: I33ed5e253fd73bba266b20fbd15082c5fba96ae2
Keyguard: add smart cover support

Change-Id: I436eba7678b923a9f293e15d786447214bc9bdcb
Signed-off-by: Roman Birg <roman@cyngn.com>
policy: respect FLAG_TURN_SCREEN_ON flag with device flip covers

If an application uses WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON
and the device supports covers and the cover is closed, then after the
screen would turn on due to this flag, it would immediately be turned off
because PhoneWindowManager thinks the cover is closed, so it puts the device to
sleep.

Respect this flag and do nothing if it is detected.

Change-Id: I7eb36ce676730e47c551518e214b08561c401ea5
Signed-off-by: Roman Birg <roman@cyngn.com>
frameworks: allow last app action to be assigned to hardware keys

Also fix multi-user handling for 'switch to last app' and 'kill
foreground app' actions.

Change-Id: I1fb586d19b1198e6888b0f11e0a2813acf0bcd5b
Signed-off-by: Roman Birg <roman@cyngn.com>
Signed-off-by: Danny Baumann <dannybaumann@web.de>
Themes: Fix setting wallpaper from a legacy theme

Change-Id: I3bfc9ee24d2a3ee5c1bdb97f2c07427e6d723206
Themes: Track NotFoundException on app launch failure

We should probably keep an eye on NotFoundExceptions too since they
are a common exception thrown when a bad theme is applied.

Change-Id: I2ccaed0349a90ab99b99fb83cef0c9183d598088
Themes: Remove listener if exception is thrown

If something goes wrong and a client does not remove itself, the
theme manager may still have a reference to the listener and an
exception is thrown while trying to call one of the listener's methods.
When this happens, we should not only log it but remove the bad listener.

Change-Id: I052cdcc10b0eaa75ebf076b3ece5f8a668d3868e
SystemUI: hide up arrow NavRing indicator if no targets present

If there aren't any navring targets setup (the user has removed all of
them, or maybe search assistant is not present) then there is still a
hint in the lockscreen to pull up from the nav bar.

If there are no targets setup, hide the arrow indicator.

Change-Id: I65103a4cec668a9a8b3f678f991f5acba17d19f5
Signed-off-by: Roman Birg <roman@cyngn.com>
Revert "SystemUI: don't show eq tile while casting"

Does not work as intended.

This reverts commit 72dc45fb1b219aafa1d4b2fe62d144739ae4a552.

Change-Id: Ifd40c70c45b038983145369287a6dae177ac0a4c
Keyguard: Can't enter PIN code when setting the SIM and PIN lock issue

By original design, after unlock SIM PIN, SIM card's state is READY and it
will invoke resetStateLocked() to inflate KeyguardHostView. So there is
only one view be created in mSecurityViewContainer.

Roll back previous solution.
Don't set mSimState before handleSimStateChange() and don't judge
isSecure() to be consistent with the original design.

CRs-Fixed: 661955

Change-Id: Ide872c50e6823bed92720c0c40aa7987207980ed
frameworks: add persistent notification when USB OTG is connected

Tapping the notification will take the user into Storage settings, and
highlight the 'Unmount' option.

Change-Id: I650f3874a8295b2b8ffdaef78aff4b68e9cd574e
Signed-off-by: Roman Birg <roman@cyngn.com>
Themes: Fix native crash in libandroidfw

If a missing attribute needs to be added in somewhere in the middle
of the bag, a segfault would occur because we change curEntry to a
value that is beyond the set's allocated space.  This patch stores
curEntry in prevEntry before changing it's value and memmove uses
prevEntry to index the set.

Change-Id: Ie70f2ad465097c3acf76caa729999c424fb01ee2