History log of /frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
bd29b07eab3956796a7a09d7612e42e22616f458 13-Aug-2015 Bart Sears <bsears@google.com> Merge "Fix Keyguard drawn timeout" into mnc-dev
a4b51bc4fd4a3e40871fb8d77c2173f0c38bd162 11-Aug-2015 Jorim Jaggi <jjaggi@google.com> Fix Keyguard drawn timeout

The timeout for waiting for Keyguard drawn was posted at the wrong
place. If the screen was turning on but the device wasn't waking up,
like in doze mode, we didn't post the timeout, thus, if Keyguard
wouldn't notify us, we would never unblock the screen. This doesn't
really cause a user visible bug but it *could*
prevent the screen from turning on if Keyguard doesn't behave nicely.
Put it at the right place so I can sleep better.

Bug: 21855614
Change-Id: Icda31399261b4ee80c292ce09a0858b0127e2999
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
fe836fabd9c6d3a3a7aaa51db7bb9bd6c9239833 12-Aug-2015 Adrian Roos <roosa@google.com> Prevent overlap of color views in landscape

Removes overlap from the color views which resulted in subotimal looks
when both color views were translucent and the nav bar was on the right
edge.

Also fixes a bug introduced in I2df7092a91eceeb815367ef917dd7289f4f2b27e
where the navigation-bar-on-right-side case got forgotten and caused
flickering in landscape when IMMERSIVE_STICKY was set but the navigation bar
was visible.

Bug: 22876533
Change-Id: I449a82eb3dc3f7b5051f26b37b362a196b4ff63a
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
2ccf0c8e636fd3be75c3a07f4cf60d72a4cfaa28 05-Aug-2015 Michael Wright <michaelwr@google.com> Don't dispatch when non-interactive and the display is off.

We generally dispatch while the display is off and we're dozing,
under the assumption that the dozing window is controlling the
display state and wants the events as they come in. Unfortunately,
it's possible that we're dozing but something other than the dozing
component has focus, which leads to dropped and cancelled events.
This was preventing media events from being propogated to the media
session under a number of scenarios, so for now we'll just prevent
dispatching entirely while the display is off and the device is in a
non-interactive state. Going forward we should figure out a better
solution so that doze components can continue to receiving input
events throughout their lifecycle, regardless of the display state.

Bug: 22422588
Change-Id: Ia38bd81245234743e84548841d6478f75a6b8775
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
95c6daed397f658039184cf83755c245fb4b5dcd 30-Jul-2015 Jorim Jaggi <jjaggi@google.com> Fix doze mode

Make sure to reset the keyguard drawn state in the correct place,
so we don't return early in finishKeyguardDrawn() because
mKeyguardDrawComplete is still true.

Bug: 22808662
Change-Id: I7e18e91c412c6cac7fe253837949602f76b7f270
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
75d958c40e67c338d65df185ce1f09b164c58d49 29-Jul-2015 Maurice Lam <yukl@google.com> Merge "Disable launching assist during setup" into mnc-dev
0d210f6395072db4a4c53d4cb8fac4a59a3965b4 10-Jul-2015 Jorim Jaggi <jjaggi@google.com> Animation for touch, wake and unlock

- Add callback to inform SysUI when the screen has been unblocked
and turned on.
- Cleanup inconsistent messaging about device interactive/screen on
and off.
- Add callbacks to inform SysUI about screen states
- Implement a quick fade for the scrim after touch, wake, and unlock.
First, start with a black scrim on top of everything, and then fade
it out.
- Make sure we play the normal unlock animation when device is pulsing
- Override navigation bar animations for touch, wake and unlock: Fade
in the same manner as the scrim.

Bug: 22571198
Bug: 21855614
Change-Id: I8ff08d72cced1e0f03c78d71ff710d8a4f6b848c
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
f325548992d449a2da564216191edb5ad2773bfd 24-Jul-2015 Jorim Jaggi <jjaggi@google.com> Fix ambient display

Due to a refactoring for touch, wake and unlock for fingerprint
devices PhoneWindowManager now waits for Keyguard to draw its first
frame in all cases, including when screen turns on for pulsing.
However, since in this case the device is not awake, we need to check
for screen on instead of awakeness when proceeding with the wake-up
sequence. Without this change, screen on was blocked forever in the
pulsing case.

Bug: 22605235
Change-Id: Ib6089fd14b673e62347f2c9108d9a6783caa26b7
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
39d1381ed3c6abfa8600ab19b59c141456fb0f12 24-Jul-2015 Maurice Lam <yukl@google.com> Disable launching assist during setup

Check for user_setup_complete before launching the assist layer.

Bug: 22694702
Change-Id: I2509c2aa081002dced192a074716fb23f91dde86
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
740452e8756cb7f51ed185c3906a5ca61b8fcdd4 09-Jul-2015 Jorim Jaggi <jjaggi@google.com> Touch, wake and unlock

- Add onFingerprintAcquired, so Keyguard can grab a wakelock to prevent
the device from sleeping.
- If we get a successful fingerprint, wake the device up, immediately
dismiss the keyguard and tell PWM that we kicked off our frame that
will represent the correct state.
- PWM then waits for this frame to be drawn, and then turns on the
screen, which results in unlocking directly to the previsouly
opened app.

Bug: 21855614
Change-Id: I5f43df17fa5e4e9c6a6392eef4a4590b07df4f96
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
5536bb48b2829f04f9a8258bfe698e5e4a26f234 17-Jul-2015 Adrian Roos <roosa@google.com> Merge "Fix stuck scrim on keyguard-less devices" into mnc-dev
008409a2ea1feed095d53ce51429e4fed964c50c 16-Jul-2015 Billy Lau <billylau@google.com> Merge "Bug: 21589105 Rescoping SYSTEM_ALERT_WINDOW..." into mnc-dev
060275ffc7fbfc72b19871f7dd7aefb61a81a1fc 15-Jul-2015 Billy Lau <billylau@google.com> Bug: 21589105 Rescoping SYSTEM_ALERT_WINDOW...

AppOpsManager:
Changed the default mode for SYSTEM_ALERT_WINDOW to MODE_DEFAULT instead of
MODE_ALLOWED. Otherwise, an app that did not declare for this permission will
actually be allowed to perform OP_SYSTEM_ALERT_WINDOW, which is undesirable.
This change also allows callers to make their own decision based on the
current policy (M vs pre-M apps).

policy/PhoneWindowManager:
Added additional checks that will handle MODE_DEFAULT - this happens when an app
is newly installed but not yet configured.

wm/WindowManagerService:
Enriched some checks to include the treatment of MODE_DEFAULT - this will allow
pre-M apps uninterupted capability to draw on top of other apps.

Change-Id: I8de77730e158c97587427820cfba721bd5607bea
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
280a64e793d081847c5dcea23ed9be38aa5332d2 13-Jul-2015 Dianne Hackborn <hackbod@google.com> Improve tracking of screen on reasons.

- New screen on app op to record the last time each app has
caused the screen to be turned on.
- New battery stats event that tells us the reason the screen
has been asked to turn on.
- Propagate out power manager API to specify the reason a caller
is asking to have the screen turned on.

Note that currently the window flag to turn the screen on bypasses
much of this because it is being handled in the window manager by
just directly telling the power manager to turn the screen on. To
make this better we need a new API where it can specify who it is
calling the API for.

Change-Id: I667e56cb1f80508d054da004db667efbcc22e971
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
3542f7de3333f57bf0d01d8cfbd91a2a42038bf9 14-Jul-2015 Adrian Roos <roosa@google.com> Fix stuck scrim on keyguard-less devices

Bug: 22413062
Change-Id: I6da6438ec54d33a1aa82d5575eb29e9bc4dbdd58
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
e249eb3a6f33ee945113a8f11e8382e70c4e066f 14-Jul-2015 Jinsuk Kim <jinsukkim@google.com> Merge "Perform One touch play upon pressing home key" into mnc-dev
165ce066b701ba0153000f0692bfc7032655d17d 07-Jul-2015 Jorim Jaggi <jjaggi@google.com> Fix assist for hardware long-press

Activating the assistant will now route through SysUI, so
we have the logic whether to start an activity or to start a voice
interaction session in one single place.

Bug: 22201770
Change-Id: I0f4699533aea2a1e595ee25a844434c82f548c01
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
e601b712b10323d0c0a737567cf6798a0d20a219 07-Jul-2015 Jinsuk Kim <jinsukkim@google.com> Perform One touch play upon pressing home key

Power on TV (optional) and switch HDMI input when home key is pressed
on a device with HDMI-out port (playback device).

Bug: 22204515
Change-Id: Ie1714e9bb066fedc618ee176d1a2bd1572393a6e
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
d40c423b1cdccd61ed411b0b9e3fbefd47e99f9c 01-Jul-2015 Filip Gruszczynski <gruszczy@google.com> Merge "resolved conflicts for merge of 300ccf4a to mnc-dev" into mnc-dev
63c4a7185cf1b03ba45cc3147e87270502334387 01-Jul-2015 Yohei Yukawa <yukawa@google.com> Merge "Reland "Fixed constant window switching on lock screen..."" into mnc-dev
d1a092218b4b40cfd53a643e0ae01095815f4b30 01-Jul-2015 Yohei Yukawa <yukawa@google.com> Reland "Fixed constant window switching on lock screen..."

This is a manual reland of I3680256d41793f62def42fda00e26db1dcc9,
which was certainly merged into lmp-mr1-dev then auto-merged into
master but silently lost there for unknown reasons when
I8c42a1e6091b0fe1253e90265ac248087e was auto-merged into master.

Changes in WindowAnimator.java was already covered by
I2933eaf0ab55fe31cb382c46c411033e33a756e0 so this CL does not
include that change.

Bug: 18021493
Bug: 22158649
Change-Id: Ib1bf9f5bef44d0400230afc32231f7d1f3a1c98b
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
2987f616faca534a792686a53304c9932634310c 01-Jul-2015 Filip Gruszczynski <gruszczy@google.com> resolved conflicts for merge of 300ccf4a to mnc-dev

Change-Id: Ia315e314bfde0c066a2c25d93f8cbdc71fee0a14
3ae447e8bb0bb5375e696e33331ef959db7e89ad 30-Jun-2015 Bryce Lee <brycelee@google.com> Merge commit '91d2cbf4' into manualmerge

Change-Id: Id018e65bdbd67f040af13a07207cac33a4a2a158
9bb290bcc36fe11f96312feb40aaf3323a96ebae 29-Jun-2015 Chris Wren <cwren@android.com> add more power manager metrics

dream start/stop
dream duration
screen timeout setting

Bug: 21893298
Change-Id: I783f72953fc40c0d276a7845daa048e2fe0db78c
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
f62f4c94a36f5c2f7ad3c70316dc585ea3fd721a 30-Jun-2015 Billy Lau <billylau@google.com> Merge "Bug: 21589105 Rescoping the SYSTEM_ALERT_WINDOW permission to an explicit toggle to be manually enabled in Settings." into mnc-dev
cc6366dde1776d40ab58f2475c4e1f8993253d7a 29-Jun-2015 tiger_huang <tiger_huang@htc.com> Use the correct lock to protect members in PolicyControl

Members in PolicyControl can be accessed by multiple threads via the
public functions called by PhoneWindowManager. Most of the functions
are called with the window-manager-lock held, but reloadFromSetting()
is an exception.

In this patch, we acquire the window-manager-lock before calling
reloadFromSetting() to ensure accessing the members with the same
lock held.

Change-Id: I54ac5cab2a2d74c568fa96145f7a6741c6d99e36
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
cbe540f94691b595ca2eaede2871d885c38a845c 25-Jun-2015 Billy Lau <billylau@google.com> Bug: 21589105 Rescoping the SYSTEM_ALERT_WINDOW permission to an explicit toggle
to be manually enabled in Settings.

Raised the protection level of SYSTEM_ALERT_WINDOW from dangerous to
system|signature|appop. Added a new API in Settings for developers to invoke
the main configuration setting. Also added a new metrics in MetricsLogger.
Finally, also made changes to PhoneWindowManager to check the permission to draw
overlay properly.

Change-Id: I4a073e6f038b8b8d2fa5bd6ad60abda496be9701
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
d389684beaf5be3afbb78d11ffd32f07eaabee58 24-Jun-2015 Bryce Lee <brycelee@google.com> resolved conflicts for merge of 91d2cbf4 to mnc-dev

Change-Id: I1c7e2999483a7959630844ecd20f5f37b7896aae
82e595fd6e3a9438b090106c226bb2f8bb2a6254 22-Jun-2015 John Spurlock <jspurlock@google.com> Merge "Volume: Force focused state to disambig multiple sliders." into mnc-dev
67a0f850a4d3358f3e1168bc84012edf96139ac2 15-Jun-2015 John Spurlock <jspurlock@google.com> Volume: Force focused state to disambig multiple sliders.

And fix volume policy so that a focused slider at the top
of the screen does not cause the window to pan.

Bug: 21476764
Change-Id: I4a52270ca5ecf9b9bd6e787ef580ecbd32e62625
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
0348ba2e2303d9dce57a6b5d19cc47ecc5089afe 19-Jun-2015 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #20494208: Go out of device idle when headset button is pressed" into mnc-dev
b6683c428698105f715985a96066192aa62e9f53 19-Jun-2015 Dianne Hackborn <hackbod@google.com> Fix issue #20494208: Go out of device idle when headset button is pressed

Rework how we record active transitions in battery stats to be
more general, and add an API that others can call in to
DeviceIdleController to request that we go out of idle mode.
use this for VOICE_SEARCH_HANDS_FREE.

Change-Id: Ie58de60e63036a4142881283835961fbcceec892
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
2f280d06396d7b8234197a3b1a35d5319f7d6951 18-Jun-2015 Stefan Kuhne <skuhne@google.com> Fixing voice panel centering issues in landscape on phone

The new assist panel (long press on home) was not centered in landscape
mode on phones. This was caused by ignoring the stable insets in the
PhoneWindowManager.

bug: 21708971
Change-Id: I97a968a41c2966b09eba496fbe57c840affdf9ec
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
9326dc1407e3942c35b197b7e0287ea4a50a56d8 12-Jun-2015 Stefan Kuhne <skuhne@google.com> Removing screen artifacts afer orientation change in sleep mode

Avoiding screen artifacts upon rotation change in sleep mode. This will
be done by postponing orientation changes until the entire UI got drawn.

Bug: 16849724
Change-Id: Ib1d818258d12f5c1909de4558af46aec27e29c75
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
48d1b14b7b54ae1491e7d9d5fdd9be8906c19a3c 11-Jun-2015 Jeff Brown <jeffbrown@google.com> Pause activities when the screen is off.

Bug: 19948628
Change-Id: I90923605d50f4ee381da4e05117879554e0a1dee
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
159f558a39d200e08e06245d64ec1df9a08e7d93 08-Jun-2015 Tim Kilbourn <tkilbourn@google.com> Merge "Pass an args bundle to launchAssistAction." into mnc-dev
e1f3214e72b63ed7cbe368005622055f80da0e0d 08-Jun-2015 Mady Mellor <madym@google.com> Merge "Change stylus button press to context click in View - API review feedback" into mnc-dev
0e5f110fc915a9b044eb04cd07ae7ac588eacc8f 06-Jun-2015 Tim Kilbourn <tkilbourn@google.com> Pass an args bundle to launchAssistAction.

In order to track the input device that was used to trigger assist, the
input device id is sent as an extra in the assist intent whenever it is
available. This is particularly useful on TVs, when an app may want to
know whether the input device has a microphone.

Bug: 21666123
Change-Id: I0f8c09e2f617606bef481bdff924cb6b9b47dd12
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
b0c673b50e75cb9d931156d4e09e9628ba3caec1 05-Jun-2015 Filip Gruszczynski <gruszczy@google.com> resolved conflicts for merge of f6a04305 to mnc-dev

Change-Id: I92e666bfd6d8ad051bdee7dce5712b9cb8e6a01d
e860891b1a7d4c1b581f294fa5831999caac6506 05-Jun-2015 Mady Mellor <madym@google.com> Change stylus button press to context click in View - API review feedback

Updates all references in View's onStylusButtonPress to onContextClick
as per API review feedback.

Additionally listens for mouse right clicks and calls the onContextClick
method for these as well for the stylus button press.

Bug: 21572278
Change-Id: I5c1ee8c8f23a77d7c677b86356e89d0e4fc40056
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
d5169157408eeb8d5612b2c0272d6458ad4020de 04-Jun-2015 Nick Vaccaro <nvaccaro@google.com> Merge "Wait for KEY_SLEEP UP event before calling goToSleep()" into mnc-dev
461829d607b32ee492b6123043ae4232ed82ae93 03-Jun-2015 Adrian Roos <roosa@google.com> Prevent windows below the keyguard from showing

Fixes a bug where windows below the lock screen
could become visible if a SHOW_WHEN_LOCKED activity
hides the status bar.

Bug: 21450145
Change-Id: Ie660394cb96d7e6839bd4fb7c2729133bac2dfc5
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
a16cc15f6cf24b3ab30636476c4fa632265e44f1 02-Jun-2015 Jorim Jaggi <jjaggi@google.com> Make sure starting windows only draw once

The panel menu was invalidated, and thus a runnable was posted for
the next frame, to update the panel menu, and invalidate the view. We
avoid this by not invalidating the panel menu for starting windows.

Bug: 20949632
Change-Id: I67ca47e3a7ce3ba1d685c2313efa66fb1cdee312
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
5b9b66c73c80697c1d3694a2d4ee975e409bd89d 02-Jun-2015 Olawale Ogunwale <ogunwale@google.com> Merge "Should reset mDismissKeyguard on keyguard secure change" into mnc-dev
1e47a8e096fc28dcab0a55bc4f2e6b747bfb1a07 01-Jun-2015 Jorim Jaggi <jjaggi@google.com> Merge "Cleanup Keyguard handling when turning off screen" into mnc-dev
99bcc3eee23ed8bd15bd108d068d6f9f694e4393 01-Jun-2015 Filip Gruszczynski <gruszczy@google.com> Merge "Revert "Revert "resolved conflicts for merge of 47249f2a to mnc-dev""" into mnc-dev
e785ffa059dcb3bcff242ae4c89cdb43b081dcb2 12-May-2015 tingna_sung <tingna_sung@htc.com> Should reset mDismissKeyguard on keyguard secure change

If user sets a non-secure lock screen, launch an activity which
appends window flag FLAG_DISMISS_KEYGUARD, then insert a PIN lock
SIM card, activity window will become black screen.

This is because mDismissKeyguard keeps on DISMISS_KEYGUARD_CONTINUE
when keyguard secure changes from non-secure to secure like in the
insert PIN lock SIM card case. If mDismissKeyguard is
DISMISS_KEYGUARD_CONTINUE and keyguard is secure, there is no chance
to launch keyguard unlock window anymore.

This patch handles the use case that to reset mDismissKeyguard to a
new cycle from DISMISS_KEYGUARD_START to DISMISS_KEYGUARD_CONTINUE
again once keyguard secure state change suddenly to let keyguard
window has chance to be launched.

https://code.google.com/p/android/issues/detail?id=78806

Change-Id: I0d4fd0b9bdf7d0a39f35427bfd4e1b928d9bca6b
Signed-off-by: tingna_sung <tingna_sung@htc.com>

Conflicts:
policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
d175b6cfe0b35dfe251cc9315aacb048bf6e54c5 28-May-2015 Jorim Jaggi <jjaggi@google.com> Cleanup Keyguard handling when turning off screen

Before, Keyguard was shown whenever PhoneWindowManager went to sleep.
However, this was too early on some devices, and too late on others.
Now, the callbacks are split up into two phases: startedGoingToSleep
and finishedGoingToSleep. In the first callback, we decide what to
do and play the lock sound if necessary. In the second callback, we
actually show the Keyguard, or reset its state necessary, so it
doesn't interfere with the screen off animation.

Bug: 17929748
Bug: 20782303
Change-Id: I4c4406595b07b7589d64f380cd3fa96bed3d20ee
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
cb81d183672a3d9858ade10a997990c5d66a1be3 30-May-2015 Jeff Brown <jeffbrown@google.com> Merge "Tell PhoneWindowManager when we start/finish interactive changes." into mnc-dev
416c49c4049f572134273e228d7988904a51b990 27-May-2015 Jeff Brown <jeffbrown@google.com> Tell PhoneWindowManager when we start/finish interactive changes.

Added some new callbacks that can be used to more precisely trigger
certain behaviors that need to happen around the time the device
is put to sleep and locked.

Fixed an issue where the going to sleep signal might be sent too
early on devices that don't support ambient mode due to the extra
wakefulness change between DOZING and ASLEEP. We are now track
the early / late interactive change work separately from the rest.

Bug: 21375811
Change-Id: I95387195e216ae92a6e45485bd1bd362e41aa45a
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
b85e1ecfdf410b6aec7b6f93e3932b0aa32fba06 30-May-2015 Adrian Roos <roosa@google.com> Fix broken transition to secure apps when relaunching

Previously, the logic for keeping occluded mode during transitions
would also trigger when transitioning from the lockscreen to a
SHOW_WHEN_LOCKED activity that was already on-screen, which would
then prematurely clear the occluded mode and break the launch
transition.

With the fix, the lockscreen must already be occluded before the
keep-occluded-during-transitions logic is triggered.

Bug: 21525170
Change-Id: I1d9ad95b2dd0728af7986f09adb67a617cc62cb2
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
7c9d94404fe9196e1f75fd56ff55624343c88ebd 28-May-2015 Jorim Jaggi <jjaggi@google.com> Merge "Fix status bar window IME flags & layout" into mnc-dev
2217f61e51ba4b19c56b19297c1e9cf74d7d860f 26-May-2015 Filip Gruszczynski <gruszczy@google.com> Revert "Revert "resolved conflicts for merge of 47249f2a to mnc-dev""

This includes the fix for the broken dialog windows. The outsets will
only be calculated and applied if the window is full screen, since
they don't make much sense otherwise.

This reverts commit 4bb6b751fbbb218e8a298db4aa008472a0aa8d31.

Change-Id: I977a85a78c990c1840784dc0be0dddd5a6d84e6b
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
aa8061448ec5a0e3cef9685f4186fc94e09eb78e 21-May-2015 Jorim Jaggi <jjaggi@google.com> Fix status bar window IME flags & layout

When bouncer was showing, but keyguard was occluded, staus bar
window couldn't receive input, and thus the IME window was placed
below the status bar window. In addition to that, fix the layout when
IME is showing up on the bouncer screen.

Bug: 19969474
Change-Id: I38d21647801b57608d49c3f525d4840e6ba58296
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
d6623618b28906d058ac61623e11853ebe9ad1de 23-May-2015 Selim Cinek <cinek@google.com> Fixed logspam and handling subwindows with the input consumer

Bug: 21402648
Change-Id: I4c1c73487dfd19ba452ff2077d8541547f149c3b
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
4bb6b751fbbb218e8a298db4aa008472a0aa8d31 23-May-2015 Dianne Hackborn <hackbod@google.com> Revert "resolved conflicts for merge of 47249f2a to mnc-dev"

This reverts commit c7becb7ee78881646251ff4846e63eb6b96bf7ec, reversing
changes made to 8562b08f04c1309cf40db1e749d612b6824f1d12.
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
d02ec5989dd93df1d6ab45ad9f280730553f11e6 22-May-2015 Adrian Roos <roosa@google.com> Merge "Request transient bars after panic" into mnc-dev
91e5b0f598f19499e55dcb8f0243b430e3c1ee4f 22-May-2015 Filip Gruszczynski <gruszczy@google.com> Merge "resolved conflicts for merge of 47249f2a to mnc-dev" into mnc-dev
ddc8b278783340c80d5bf881b4fa834a68576dfa 22-May-2015 Adrian Roos <roosa@google.com> Request transient bars after panic

Bug: 19282730
Change-Id: Ib621a837ba06847a02333e1786ea50e5d854c7d7
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
7d85ea93e951dc1dd82e7879e0399c56d116f231 21-May-2015 Jorim Jaggi <jjaggi@google.com> Always tell Keyguard about occluded state

If there was a window with FLAG_DISMISS_KEYGUARD first, when the
device was unlocked, mWinDismissingKeyguard was set to that window.

Now, a window with FLAG_SHOW_WHEN_LOCKED came on top, so we set the
Keyguard as occluded, but we didn't reset the window that is
dismissing Keyguard.

After that, the old window with FLAG_DISMISS_KEYGUARD was the focused
window again. However, since we didn't reset mWinDismissingKeyguard,
we ended up with DISMISS_KEYGUARD_CONTINUE, and lockscreen was not
occluded anymore. However, we never really told Keyguard about it
because DISMISS_KEYGUARD_CONTINUE was set instead of
DISMISS_KEYGUARD_START.

The first fix of this bug is to always tell Keyguard about the
current occluded state. The second fix is to reset
mWinDismissingKeyguard in case a window SHOW_WHEN_LOCKED comes on top.

Bug: 20102975
Change-Id: I7c778df09a1e393b9eeaf51fd2013012cb40fea9
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
f98702eae04e239670e8b882d53c974d4b56e291 21-May-2015 Selim Cinek <cinek@google.com> Protecting against the correct flag for the input consumer

Also allow hiding the navbar if immersive or immersivesticky.

Bug: 21089476
Change-Id: I540e668746056a0e4bb077898792afd225e4e19e
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
c7becb7ee78881646251ff4846e63eb6b96bf7ec 21-May-2015 Filip Gruszczynski <gruszczy@google.com> resolved conflicts for merge of 47249f2a to mnc-dev

This is a merge of chin support.

Change-Id: I436b751b3c4aaa6b46cfcdb475e02eedfa5a5635
f83e824216435e45f36a3587e269888f791b2a01 20-May-2015 Selim Cinek <cinek@google.com> Fixed that touches where incorrectly consumed when fullscreen

The fake window that was added when View.SYSTEM_UI_FULL_SCREEN was
set consumed all touches, even those going to the SystemUI and not
just those of windows below. The input consumer is now correctly
positioned in the window order to only capture the right touches.
Clicks to the volume panel and the heads up now correctly go to the
right place instead of just unhiding the SystemUI bars.

Bug: 21089476
Change-Id: Ib53dfc0b33b70084ca607d0f044db30b6e6c91d6
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
01f280d376218c5a007fc29f70b876375ad24204 19-May-2015 Adam Powell <adamp@google.com> Migrate uses of config_windowIsRound to Configuration.isScreenRound

Move existing code that previously relied on config_windowIsRound to
use the new Configuration.isScreenRound() method. Also move the system
property override for emulators over to the initial setup of a Display
so that the configuration property is consistent with existing
expectations.

Remove config_windowIsRound from symbols.xml. The symbol now only
exists as a default value redirect for overlays already configured to
supply this value.

Change-Id: I24e6564030a6051c3ac7262868983b43e13eee65
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
b593a814519e977fffd43eda1ba2be4d4efe1fd1 15-May-2015 Nick Vaccaro <nvaccaro@google.com> Wait for KEY_SLEEP UP event before calling goToSleep()

Calling goToSleep() on the KEY_SLEEP DOWN event causes a race
condition with the touch driver when the KEY_SLEEP event is generated
via a palm press if the touch controller is told to go into
AMBIENT_ON mode (touch controller goes into suspend mode) while the
user's palm is still on the touch panel. If touch controller gets
into suspend mode before user removes their palm, the act of removing
the palm from the screen will cause the touch controller to generate a
wake event and the device will "wake back up" into interactive mode.

Waiting for the KEY_SLEEP UP event before putting the device to sleep
assures palm is off the panel and thus removes this race case.

Bug: 19951365
Change-Id: Id4e3313caa264f43e37994ed37015de87b8ff662
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
03fdca1b29aff07583b7764b7b359cbbfc58e577 08-May-2015 Selim Cinek <cinek@google.com> Merge "Fixed a bug where the heads-up would not show when full screen" into mnc-dev
4a4a2bddc48a33cbaa49a8844b9fd36e2fc5e219 07-May-2015 Selim Cinek <cinek@google.com> Fixed a bug where the heads-up would not show when full screen

Bug: 20728541
Change-Id: I74bc74c4936b003a4c0c37b7c7da2d1fa138c077
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
6711f3b34c2ad9c622f56a08b81e313795fe7647 07-May-2015 Adam Powell <adamp@google.com> Move PhoneWindow and friends back into internal package

PhoneWindow, PhoneLayoutInflater and PhoneFallbackEventHandler decided
to @hide out over in the android.view package after the policy jar was
disbanded. Give them a more appropriate home over in framework that
doesn't imply that they should be accessed from other internal layers
of abstraction.

Bug 19606548

Change-Id: Id07b791d178fa447010b49b24726b52208838e88
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
d274400205d054010e60ddd69f1535bedf41d96b 01-May-2015 Mady Mellor <madym@google.com> resolved conflicts for merge of 04f2fe39 to master

Change-Id: I9cd9efb3ead33cef9a0de95417d71d535cbc1bce
e82067b57595a2bce656e5ba3a9bcf19048f2f25 30-Apr-2015 Mady Mellor <madym@google.com> Add onStylusButtonPress listener to View

The gesture is: stylus touching screen + button pressed, the event
is recognized when the button is pressed, not when it's released.
It can be pressed during DOWN or MOVE.

If the stylus touch + press button is occurring longpress cannot
occur and vice versa. Also adds the haptic feedback and accessibility
bits specific to the new gesture.

Bug: 19620479
Change-Id: Ibc4654978ef39e7b4251d17636453d90f3bf622d
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
d21b3c8881a105295bdc8d52978129b53feea33d 23-Apr-2015 Jun Mukai <mukai@google.com> Expand the notification panel by Meta-N.

Bug: 16351826
Change-Id: Ib33f2a3fee385ecb44e1e331e34dd9b2d6dee4aa
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
602c68e4ffa1d17b2032c0e05c5d4d4dc8795adf 25-Apr-2015 Adrian Roos <roosa@google.com> Smooth transitions between SHOW_WHEN_LOCKED activities

Bug: 12536117
Change-Id: Ia5f96e49587661440ae31fba17c42b2e3a9557fb
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
a93311f91730be33c734689c6dfbbcf7fd12d6d7 21-Apr-2015 Jeff Brown <jeffbrown@google.com> Merge "Make activity manager sleep top activity when dreaming."
c5e73bf9f8a3434571b407f0f1abd701a8e69131 21-Apr-2015 Craig Mautner <cmautner@google.com> am da506ffa: am 14818725: am 80f99121: Merge "Prevent infinite layout and wallpaper flashing"

* commit 'da506ffabadd551241e23aecf08e378e7d0f30b1':
Prevent infinite layout and wallpaper flashing
061ea99546fbba1da86094518992cf6b7a125278 18-Apr-2015 Jeff Brown <jeffbrown@google.com> Make activity manager sleep top activity when dreaming.

Added the concept of a sleep token to represent a demand to sleep.
We grab this token whenever a dream window is visible.

This change also deletes a special condition in shouldSleepLocked()
which would tend to keep activities running when the lock screen
was shown unless they had previously been sleeping. I believe this
condition is no longer necessary and the policy is much simpler
without it. Let's see if anything breaks.

NOTE: This can currently only be used within the system server process
but it might make sense to move it to IActivityManager (guarded by
DEVICE_POWER permission) so that keyguard can use it. If we added
a callback on release to inform the client that the underlying activity
has finished drawing then we could untangle a bunch of keyguard
specific logic.

Bug: 18866521
Change-Id: I84b2118f5b990a71a1647d1cee536ad3d99f3a24
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
0a4dc2258fa8216920e1a0b83cbf7d3729386e2f 14-Apr-2015 Wale Ogunwale <ogunwale@google.com> Added TYPE_APPLICATION_ABOVE_SUB_PANEL window type.

TYPE_APPLICATION_ABOVE_SUB_PANEL will be displayed on top of their
attached window and any TYPE_APPLICATION_SUB_PANEL panels.

Bug: 20135562
Change-Id: I711de3c19c01432c44de205bf09934a8b23b53fd
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
662ed801add5c0cc6ba35238d46494344f086dac 10-Apr-2015 Bryce Lee <brycelee@google.com> am e0233e7e: am 73b56873: am eccaf729: Allow going to home action to work for SHORT_PRESS_POWER_GO_HOME with keyguard enabled.

* commit 'e0233e7e1162ce3e699d6eb6648e82d1b403e51e':
Allow going to home action to work for SHORT_PRESS_POWER_GO_HOME with keyguard enabled.
2fdeeabe78b0f54f3163b1b3741ac813828b3511 02-Apr-2015 Jorim Jaggi <jjaggi@google.com> Implement new assist gesture and motion

Change-Id: Ic8ba18c200058062f4d38ac4226d3516af3d3df0
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
225d3b5449d29b43e619d8538d024305f6e81ba9 01-Apr-2015 Jorim Jaggi <jjaggi@google.com> Add more internal API's for assist

- When starting a voice interaction session from SysUI, a callback
can be passed to know when voice interaction has successfully started
- Add a new window type for the voice interaction starting window,
which resides behind the voice interaction layer.
- SystemUI now also inspects the voice interaction service to get the
logo asset for the starting window.
- Make VoiceInteractionSession window fullscreen, to accomodate for
the visuals.

Change-Id: If8c3c445e8b39841f48e8d153e6d1ba81e447286
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
2ed3e5fba6f7d1161b4702e13e01b040701495cf 02-Apr-2015 Bryce Lee <brycelee@google.com> am d7e349e8: am 7eeaad24: am 7a1454fe: Merge "Do not use the status bar as the system decor layer if it is not visible." into lmp-mr1-modular-dev

* commit 'd7e349e8cbfc290f1cbbf099b0b9c76e545f5357':
Do not use the status bar as the system decor layer if it is not visible.
988e3a570f2b7d709636055a1fe63b1e22702c5c 31-Mar-2015 Adrian Roos <roosa@google.com> Merge "Prevent sensor induced rotations while screen is touched"
93f724b04ef83aae7ab6ce97a9dc890d0c8c8b47 24-Mar-2015 Craig Mautner <cmautner@google.com> Merge "Recalculate input method top edge."
4774f6a4e4c1aeb682653da5ed301e195abab54a 23-Mar-2015 Craig Mautner <cmautner@google.com> Recalculate input method top edge.

The bottom edge of an input method target window is set using the top
edge of the input method window. A switch from using the input
method's content frame's top edge to its display frame's top edge
(ag/634725) caused the underlying window to be obscured. This fix uses
the lower of the two frames to set the bottom edge of the target
window.

Fixes bug 19434816.

Change-Id: I5fe73fbe8a432b24a12c030f029cdfcd55e23274
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
9fc0b6fb1fd30bade0c5249f4368a69218e128bf 19-Mar-2015 Bryce Lee <brycelee@google.com> am b45d3926: am 8320cf2d: Merge "Fix wrong intent being passed in PhoneWindowManager." into lmp-mr1-modular-dev

* commit 'b45d3926f327948c486c92ddc7fdb97dbc98e401':
Fix wrong intent being passed in PhoneWindowManager.
8b1c27c5abd569664566ccdb84f772aeaa962ddd 19-Mar-2015 Bart Sears <bsears@google.com> am f5353e9d: am 91281bbd: resolved conflicts for merge of cc86bc0c to lmp-mr1-modular-dev

* commit 'f5353e9dda15fe49023083ec7ca2131feed7787d':
Prevent activities from being started during setup wizard.
d799f70187c3c91a8d63a4230cc290966b8a462f 17-Mar-2015 John Spurlock <jspurlock@google.com> Merge "Audio: Flag volume adjustments from hardware keys."
a483a1d85e526202613c9b7354bbced9969cbfe0 17-Mar-2015 Filip Gruszczynski <gruszczy@google.com> am 81c47fc2: am 86318d76: Merge "Option for going home when going to sleep for devices without physical button." into lmp-mr1-modular-dev

* commit '81c47fc23a0a15dddf37d96d28305e8b5e5ca2da':
Option for going home when going to sleep for devices without physical button.
b94f2d6cad92c4f6ad184920e06a260d87eb3b6a 17-Mar-2015 John Spurlock <jspurlock@google.com> Audio: Flag volume adjustments from hardware keys.

Bug: 19793279
Change-Id: If20d70c13c9e7d1f8a6b31e0069564073d30e2bc
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
3595be4d19caaa7ddfbff0b979d135aaf5ac20b1 05-Mar-2015 Adrian Roos <roosa@google.com> Prevent sensor induced rotations while screen is touched

Bug: 19408285
Change-Id: Idadacc4cfb0cf41477155dc837297bacc3533ba5
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
9087433753a5068819dcd3e86bdc2cce82bb8040 10-Mar-2015 John Spurlock <jspurlock@google.com> AudioService: Write base stream volume changes to the event log.

- Add a new volume_changed event, reported at the stream level.
- Only include changes to base streams (no aliases).
- Include the caller for each change. A caller is either:
- a pkg name (for external calls or known media sessions)
- a system server class's log tag (for internal calls,
disambiguates "android")

Bug: 19599935
Change-Id: Ia61b68ff1e7e2907a24972790ec052bfe099e665
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
c12569110d558e584fb9074dbe0c1aaf79ccdcd6 11-Mar-2015 Mark Renouf <mrenouf@google.com> resolved conflicts for merge of 91239a0b to master

Change-Id: Ib30f0631278602f0363181021f1ad364e4ec2f8d
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
d3b28408d1b9d36c27e4d1cfafe8c3097579961b 09-Mar-2015 Bryce Lee <brycelee@google.com> am 168d0ade: am 1e53b98c: Merge "Allow press and hold from non-interactive." into lmp-mr1-modular-dev

* commit '168d0ade0cb5a733c83d7dcfdf0a0efa3250cb16':
Allow press and hold from non-interactive.
75328b703f8f83fdd62f11105ecd61df2ebe4420 04-Mar-2015 John Spurlock <jspurlock@google.com> Merge "Audio: Remove the concept of master volume."
ee5ad729b90deff435f9875337cbc434be4f8fe7 03-Mar-2015 John Spurlock <jspurlock@google.com> Audio: Remove the concept of master volume.

- Remove two config resources (use master volume, and volume ramp).
- Remove master volume adjustments / getters / intents.
- Retain @hidden setMasterMute, needed for device admin
- Remove master volume logic in AudioService.
- Remove master volume logic in VolumePanel.
- Rename "getMasterStreamType" to "getUiSoundsStreamType" to avoid confusion.

Bug: 19582978
Change-Id: Id02c8fa4898cff3b913147f5ac1b4038e2e7cc24
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
62b65e4a8f058787eb49ec1630dfca2d9cd2b751 25-Feb-2015 Adrian Roos <roosa@google.com> Update immersive cling visuals

Also enables the swipe from top gesture for revealing
the navigation bar, even if the status bar is visible.

Bug: 19282730
Change-Id: I7b562c2f0f00ff3f05b8b1e44657efe79b45f9c7
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
08c7116ab9cd04ad6dd3c04aa1017237e7f409ac 28-Feb-2015 John Spurlock <jspurlock@google.com> Remove unused imports in frameworks/base.

Change-Id: I031443de83f93eb57a98863001826671b18f3b17
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
37df39a93df04278b11a273aff17da164c5c6757 26-Feb-2015 Jeff Brown <jeffbrown@google.com> Add missing headers.

Change-Id: Ida86e14986e6391e6f65581ef0987ad8d16576f9
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
cfb3185a27efeb9312ddf71f52f3a7039c4694df 25-Feb-2015 Filip Gruszczynski <gruszczy@google.com> am 0fbcc708: am 1e74b5d6: Merge "Burn in protection." into lmp-mr1-modular-dev

* commit '0fbcc7086fe742e641915ed5f097119d01613cb5':
Burn in protection.
24bec7ce7adc3c0d693cfadcb4b28f5fc41555ae 04-Feb-2015 Jorim Jaggi <jjaggi@google.com> Implement nice transitions for light status bar

- When the flag changes, apply an animation from the current value
- When the flag change is caused by an app transition, synchronize
the status bar animation with the app transition animation.
PhoneWindowManager calculates the timings based on some heuristics
of the app transition animations and supplies these timings to
StatusBarService.

Bug: 19233606
Change-Id: I4f99afba8f1eebb3524699ed4d7fbafee5463a37
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
cd3884dfb246855c059e15db376f0935af68d949 18-Feb-2015 Adrian Roos <roosa@google.com> Set the light status flag based on right window

The flag needs to be set based on the top window that is either
reaching beneath the status bar or is dimming.

Bug: 19233606
Change-Id: I7b97f6869e3b7d5ae2b7030122b311ee9e13871f
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
73fef8df0059174df42e28acb77925cd747ccdca 16-Feb-2015 Jorim Jaggi <jjaggi@google.com> Keep light status bar flag when opening notification shade

Bug: 19233606
Change-Id: I20e50c7267b8c1cd035eafd54609537d493a5ea9
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
ae6688b09649447e57468b3e7935691bc09ec9b9 12-Feb-2015 Dianne Hackborn <hackbod@google.com> Update voice interaction layer for new UI design.

Can switch from a pure overlay at the top of the screen,
to interactive mode with the voice UI drawing at the bottom
and pushing its target activity up like an IME.

Add mechanism to get assist data to the voice interaction UI.

Add some basic visualization of the assist data, outlining
where on the screen we have text.

Add a test ACTION_ASSIST handler, which can propagate the
assist data it gets to the voice interaction session so
you can see what kind of data we are getting from different
apps.

Change-Id: I18312fe1601d7926d1fb96a817638d60f6263771
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
683914bfb13908bf380a25258cd45bcf43f13dc9 15-Jan-2015 Svetoslav <svetoslavganov@google.com> Rewrite of the settings provider.

This change modifies how global, secure, and system settings are
managed. In particular, we are moving away from the database to
an in-memory model where the settings are persisted asynchronously
to XML.

This simplifies evolution and improves performance, for example,
changing a setting is down from around 400 ms to 10 ms as we do not
hit the disk. The trade off is that we may lose data if the system
dies before persisting the change.

In practice this is not a problem because 1) this is very rare;
2) apps changing a setting use the setting itself to know if it
changed, so next time the app runs (after a reboot that lost data)
the app will be oblivious that data was lost.

When persisting the settings we delay the write a bit to batch
multiple changes. If a change occurs we reschedule the write
but when a maximal delay occurs after the first non-persisted
change we write to disk no matter what. This prevents a malicious
app poking the settings all the time to prevent them being persisted.

The settings are persisted in separate XML files for each type of
setting per user. Specifically, they are in the user's system
directory and the files are named: settings_type_of_settings.xml.

Data migration is performed after the data base is upgraded to its
last version after which the global, system, and secure tables are
dropped.

The global, secure, and system settings now have the same version
and are upgraded as a whole per user to allow migration of settings
between these them. The upgrade steps should be added to the
SettingsProvider.UpgradeController and not in the DatabaseHelper.

Setting states are mapped to an integer key derived from the user
id and the setting type. Therefore, all setting states are in
a lookup table which makes all opertions very fast.

The code is a complete rewrite aiming for improved clarity and
increased maintainability as opposed to using minor optimizations.
Now setting and getting the changed setting takes around 10 ms. We
can optimize later if needed.

Now the code path through the call API and the one through the
content provider APIs end up being the same which fixes bugs where
some enterprise cases were not implemented in the content provider
code path.

Note that we are keeping the call code path as it is a bit faster
than the provider APIs with about 2 ms for setting and getting
a setting. The front-end settings APIs use the call method.

Further, we are restricting apps writing to the system settings.
If the app is targeting API higher than Lollipop MR1 we do not
let them have their settings in the system ones. Otherwise, we
warn that this will become an error. System apps like GMS core
can change anything like the system or shell or root.

Since old apps can add their settings, this can increase the
system memory footprint with no limit. Therefore, we limit the
amount of settings data an app can write to the system settings
before starting to reject new data.

Another problem with the system settings was that an app with a
permission to write there can put invalid values for the settings.
We now have validators for these settings that ensure only valid
values are accepted.

Since apps can put their settings in the system table, when the
app is uninstalled this data is stale in the sytem table without
ever being used. Now we keep the package that last changed the
setting and when the package is removed all settings it touched
that are not in the ones defined in the APIs are dropped.

Keeping in memory settings means that we cannot handle arbitrary
SQL operations, rather the supported operations are on a single
setting by name and all settings (querying). This should not be
a problem in practice but we have to verify it. For that reason,
we log unsupported SQL operations to the event log to do some
crunching and see what if any cases we should additionally support.

There are also tests for the settings provider in this change.

Change-Id: I941dc6e567588d9812905b147dbe1a3191c8dd68
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
b10e33ff804a831c71be9303146cea892b9aeb5d 04-Feb-2015 Jorim Jaggi <jjaggi@google.com> Split up android.policy into framework.jar and services.jar 1/3

Change-Id: Ifd69f1f3dd308a7e17a1442e2f3950da8b03cec4
/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java