Revert "Custom actions on navbar recents long press (1/2)"

This reverts commit 068ba40bdfb3cbebb8d1a19089ee9f43c8bb6164.

Change-Id: I74e5866ea0cc24c5eee3d64342d87e0e6fe3b812
SystemUI: make long pressing recent switch to last app

With this patch, long pressing the recents key on the navigation bar
will attempt to switch to your last application in the activity stack
before the active one.

The user's current home launcher package is ignored as well as SystemUI (so that
RecentsActivity does not influence the behavior).

Change-Id: I38771e0fce16b55bb5186af47115b4e812cb60b0
Signed-off-by: Roman Birg <roman@cyngn.com>
App sidebar: floating window

long click to launch app in floating window

Change-Id: I9b5df1cceb2314ee0f8727136c007c481346a264
App sidebar: some adjustments
- Cleanup
- fix disappearing appbar on changing appbar position
- may fix endless FC on changing appbar contents

Change-Id: I2e94290dc128447f0da8937eb5dc0ed10296a155
App sidebar: notify if app is not installed

better than force close

Change-Id: I9eebe1a3a4be2dad16ed9a8cff9c0694900d833d
frameworks:base: SystemUI: cleanup a duplicate permission

these permissions are duplicated which i found using a script to check for
duplicate permissions.

submitted to AOSP here: https://android-review.googlesource.com/#/c/104810/

Change-Id: I598ed68836303e3ebc5313342f3ddaee6ccea9b2
Revert "frameworks: set default expanded desktop style"

There's currently some funky behavior related to this. The power menu
option gets automatically added to the power menu when entering
"Display" settings, no matter what.

This reverts commit a0c3610e16bb31c0ac4f909f522cb8d4cc718cd1.

Change-Id: I958e0e6f92cb8b90485af96ad55c221214007336
Themes: Fix blurry composed icons

In a composed icon the original icon could be scaled incorrectly
due to a density mismatch resulting in blurry icons.

For example, Grouper has a screen density of 213 dpi but Trebuchet will want to show a larger icon and therefore
requests to the framework to load app icons with a slightly higher density of 320dpi (XHDPI bucket).

When Resources.loadDrawable(TypedValue value, ...) is called, it will use observe value.density. Since the image
is from the XHDPI bucket it will have a TypedValue.density of 320dpi, much higher than the screen's 213dpi, and therefore
loadDrawablei() will configure BitmapFactory to scale down the image to match the screen density. This is not what we want,
so this patch modifies the density value to prevent scaling, much the same way getDrawableForDensity() does.

Change-Id: Ie638c8576872f9115dc029bb4823b50bb31ecebf
Themes: Load missing style attributes from original style

If a theme overrides a style in an app and does not include all
the attributes found in the original, it is possible for the app
to crash because it cannot locate an attribute it is expecting.

To overcome this we need to check the attributes in the original
style's bag and add any missing attributes to the current bag being
populated.  Currently we have only seen one theme that causes this
behavior, but there could be others out there or we may eventually
see this happen in the wild as apps update and the themes have not
had a chance to incorporate the new additions from the app.

Change-Id: Id44aa83a6c58a0b042d2b32171bed5e794352670
Vectone/Delight (MNC07) considered non-roaming on NOS (MNC03)

Change-Id: I743935b94bb531d78b784550e3028378cdc01959
Lycamobile (MNC04) considered non-roaming on Vodafone (MNC01)

Change-Id: Icff916672e5ed666adf2cdfeb26d24bf43b64683
Move idmap to frameworks/base [2/2]

idmap depends on libandroidfw, so it should go in frameworks/base.
This follows AOSP which moved idmap to frameworks/base back in
February of 2014.

Change-Id: Ice308a5299a69fd1fbc084a7c76a317c7dec3689
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