2983 Commits

Author SHA1 Message Date
Craig Mautner
192d60488f Handle keyguard dismiss flags correctly
When FLAG_SHOW_WHEN_LOCKED was set over an unsecure lockscreen the
behavior was incorrect. In such cases the lockscreen was not being
dismissed with or without FLAG_DISMISS_KEYGUARD. This change causes
the lockscreen to be dismissed when FLAG_SHOW_WHEN_LOCKED is set
over an insecure logckscreen.

Fixes bug 18563298.

Change-Id: Iba0d096a59789bf41332e109f1bd3e70834bbb83
2014-12-02 23:24:48 -08:00
Craig Mautner
ca0a124da0 Dismiss insecure keyguards if FLAG_SHOW_WHEN_LOCKED
Windows that had FLAG_SHOW_WHEN_LOCKED and FLAG_DISMISS_KEYGUARD set
would ignore the FLAG_DISMISS_KEYGUARD if the lockscreen was
insecure. This change adds a test for insecure keyguards when the
two flags are set together.

Fixes bug 18563298.

Change-Id: I3027c7ec476d3ac15978f7e6a78b3c2050cbab02
2014-12-02 12:43:18 -08:00
Jim Miller
ab954546dc Make IKeyguardService interface asynchronous
Add a state callback so lockscreen reports back whenever its state
relevant for PhoneWindowManager changed, instead of synchronously
calling into SysUI which can lead to deadlocks. Directly use
LockPatternUtils for isSecure, and optimize the number of calls to
this method to optimize layout performance.

Bug: 17677097
Change-Id: I5d491fc8884d4f84d9562626b9ea0d5eaa5166fc
2014-11-25 23:22:52 +01:00
Adrian Roos
ed0976897a Merge "Add animations for the system bar color views" into lmp-mr1-dev 2014-11-18 20:22:27 +00:00
Bryce Lee
d4e55bdfc5 am 8f7b84e0: Merge "Always wake device on power key from non interactive immediately." into lmp-sprout-dev
* commit '8f7b84e037e35db9d3b46873bc1adf712b307cbe':
  Always wake device on power key from non interactive immediately.
2014-11-18 19:12:43 +00:00
Bryce Lee
d9268e3f01 Always wake device on power key from non interactive immediately.
Bug: 18410573
Change-Id: Ic5ec4a1ac6d5e06fed8eb0c5cc6b2741e03b7f53
2014-11-17 17:40:59 -08:00
Adrian Roos
05054bd6ac Add animations for the system bar color views
Smoothly animates them in and out when their
visibility changes.

Bug: 17882303
Change-Id: I04bf585bb253c655b4be2f5cc2304d5060cb1657
2014-11-17 16:44:14 +01:00
Chong Zhang
1c814b5c61 Merge "implement HDMI-like demo mode for remote display" into lmp-mr1-dev 2014-11-15 02:25:33 +00:00
Chong Zhang
ae6119ffce implement HDMI-like demo mode for remote display
adding the following two system properties to control remote
display rotation and device orientation lock:

"persist.demo.rotationlock"=true|false
"persist.demo.remoterotation"=landscape|portrait

Bug: 18317603
Change-Id: Id5fe115f895c6a0e72563036b9a98ff3b5037763
2014-11-14 16:39:15 -08:00
Jeff Brown
72f1e3b9c9 am 1cbff0e3: Merge "Improve screen brightness boost behavior." into lmp-sprout-dev
* commit '1cbff0e310b0fba6b25ca1c1e14eaefeabdee0d9':
  Improve screen brightness boost behavior.
2014-11-13 20:58:15 +00:00
Jeff Brown
7b5be5e2a7 Improve screen brightness boost behavior.
Wake-up when entering brightness boost mode, don't boost in ambient
mode since some display device drivers do strange things in that mode and
boost doesn't work.  Waking up feels more natural as well.

Don't flutter the power HAL's interactive mode bit simply due to changes
in display ready state since that may result in visible artifacts
such as display flashes.

Don't stop the auto-brightness sensor while temporarily boosted.

Don't prevent the display from entering the ready state while in brightness
boost since that would unnecessarily delay the transition from DOZING to AWAKE
until boost is finished.

Restart the user activity timeout when brightness boost ends and prevent
the display from dimming while boosted.

The pixel fairies basked in the sunlight.

Bug: 18262044
Bug: 18261782
Change-Id: I8c42a1e6091b0fe1253e90265ac248087ebc24e1
2014-11-12 18:49:36 -08:00
Wale Ogunwale
3ae0d3157d Fixed constant window switching on lock screen with Swype KB.
We allow TYPE_INPUT_METHOD windows to show on the lock screen.
These windows can attached other types of windows (For this
case the Swype KB was attaching a PopupWinow which will be
of TYPE_APPLICATION). This causes the popup window app token
to be added to the list of apps to be hidden on the lock
screen, thereby preventing the lock screen from been hidden,
which then causes a layout cycle(s). Now, we remove app
tokens for non-app windows from the hidden list in case it
was added by any attached widow they migth have.

Also, when we are updating window animations, set the
hideWhenLocked flag for windows that are IME tragets so
they don't go through unneeded cycles of having their
visibility policy set to hide/show/hide/show/...

Bug: 18021493
Change-Id: I3680256d41793f62def42fda00e26db1dcc990cc
2014-11-12 08:42:09 -08:00
Bryce Lee
5c14bc213b Merge "Wake up device in the case a touch is encountered in theater mode when the screen is off and no dream is running." into lmp-sprout-dev
automerge: 68f9773

* commit '68f97736e65f1be4664fd3c3765fc621f3b76c3a':
  Wake up device in the case a touch is encountered in theater mode when the screen is off and no dream is running.
2014-11-12 01:02:49 +00:00
Bryce Lee
812d7025d2 Wake up device in the case a touch is encountered in theater mode when the screen is off and no dream is running.
Bug: 18297399
Change-Id: I5a520e8bf861e46d61e54d7d0849e55b2e5d9239
2014-11-10 13:33:28 -08:00
Adrian Roos
37d7a68de7 Fix inset hinting when adding window
Windows with FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS were
getting an incorrect content inset hint, because the
hinting didn't see the adjusted systemUiVisibility.

Also adds hinting for the stable insets.

Bug: 17508238
Change-Id: If9647277feb6811b15665b801accd896c51dbd12
2014-11-10 17:46:57 +01:00
Jeff Hao
2e594cfe98 Change boot screen title to "Android is starting" when not upgrading.
Bug: 17565501
Bug: 18247218

(cherry picked from commit 9f60c08a446e38f9e2d5271546ef69ca5941eba9)

Change-Id: I1ec32b318b6221277fc3ffbc19966bf3330c2d93
2014-11-05 23:51:42 +00:00
Craig Mautner
3f36ba647d Merge "When keyguard exits use same anim for all windows" into lmp-mr1-dev 2014-11-05 19:07:59 +00:00
Bryce Lee
ca7f9a4d4e am 5a818e55: Merge "Add config to control going to sleep when entering theater mode." into lmp-sprout-dev
* commit '5a818e55a7faee421567eb037ac4e42f20bca0c4':
  Add config to control going to sleep when entering theater mode.
2014-11-05 18:54:06 +00:00
Craig Mautner
276a6eb879 When keyguard exits use same anim for all windows
The entering animations were only applied to the incoming windows
one time. If those windows weren't drawn yet then they never had
an animation assigned.

Furthermore if a starting window was drawn in time it would get the
animation but its main window would not get it if it weren't drawn.
Even if an animation were assigned later they wouldn't be synced
with each other.

This change creates a single animation which is shared by all
incoming windows. As windows are drawn they can then animate with
the starting window.

(Also refactorings to eliminate redundant code and unnecessary
variables.)

Fixes bug 15991916.

Change-Id: I844d102439b6eda8c912108431916e04b12f7298
2014-11-05 10:47:14 -08:00
Alan Viverette
44eb8b7729 Revert "When keyguard exits use same anim for all windows"
Broke window animations.

This reverts commit b83408018176ec58f50e792590a22fdc9eb87fff.

BUG: 18248641
Change-Id: Ic456a5666c3199e8bb8c9c2fb1ecdbb82afaad86
2014-11-04 20:34:41 -08:00
Craig Mautner
b834080181 When keyguard exits use same anim for all windows
The entering animations were only applied to the incoming windows
one time. If those windows weren't drawn yet then they never had
an animation assigned.

Furthermore if a starting window was drawn in time it would get the
animation but its main window would not get it if it weren't drawn.
Even if an animation were assigned later they wouldn't be synced
with each other.

This change creates a single animation which is shared by all
incoming windows. As windows are drawn they can then animate with
the starting window.

(Also refactorings to eliminate redundant code and unnecessary
variables.)

Fixes bug 15991916.

Change-Id: I9949ef0a1639c831754316da34de97cb86403f5a
2014-11-04 15:38:05 -08:00
Bryce Lee
55e846d4a2 Add config to control going to sleep when entering theater mode.
Bug: 18241209
Change-Id: I7fa29d92391b1c8ab74585008d6599fd7174cc61
2014-11-04 12:43:44 -08:00
Bryce Lee
99a6c1cbe8 Merge "[Theater Mode] Add framework support for screen double tapping out of theater mode." into lmp-sprout-dev
automerge: abf33e4

* commit 'abf33e48baff1ffc14562a499ec3eabc09a5dbb5':
  [Theater Mode] Add framework support for screen double tapping out of theater mode.
2014-11-04 00:23:50 +00:00
Bryce Lee
5c13832eee [Theater Mode] Add framework support for screen double tapping out of theater mode.
Bug: 18120031
Change-Id: Ia70d62b26d63e3d6708e44239c9a33001548207d
2014-11-03 08:28:29 -08:00
Adrian Roos
808fe6f99f Merge "Fix colored status bar panning issues" into lmp-mr1-dev 2014-11-03 15:44:08 +00:00
Adrian Roos
862d72e2f4 Merge "Improve dump of status bar service" into lmp-mr1-dev 2014-11-03 14:56:48 +00:00
Jeff Brown
a71601a98c am 13f00f07: Implement multi-press behavior for power key.
* commit '13f00f07d69f087cf186c23ae6c6fc938e2be561':
  Implement multi-press behavior for power key.
2014-11-01 14:10:50 +00:00
Jeff Brown
13f00f07d6 Implement multi-press behavior for power key.
Added support for brightness boost or setting theater
mode from the power key.  This behavior is disabled by default and
must be enabled for specific products in a config.xml overlay.

Because the power key is already so overloaded, refactored the
code to split out handling of the similar ENDCALL button and
renamed all of the state that has to do with screenshot chord
detection to avoid confusion.

Bug: 17949215
Change-Id: Id282133188e3781472aabb64fabcee7b98d0c77d
2014-10-31 19:15:33 -07:00
Craig Mautner
c0d2d0ad6d Animate starting windows when keyguard dismissed.
Starting windows are displayed prior to their app windows visibility
being set. Consequently the WindowToken.hidden boolean for starting
windows is still true even when it is shown. The keyguard logic uses
the method WindowState.isVisibleNow to determine whether to animate
each window. This method incorrectly determined that starting windows
were not visible based on WindowToken.hidden and consequently didn't
animate in the starting window.

This change fixes isVisibleNow() to correctly determine when
starting windows are visible and animates them in as part of the
keyguard transition.

This change also adds keyguard debug.

Partially fixes bug 15991916.

Change-Id: Iac3e5f3f33876be5801ec619bbe7a1579e648322
2014-10-31 16:33:56 -07:00
Alan Viverette
2d3443fc5a Merge "Add setters for window elevation and clipToOutline properties" into lmp-mr1-dev 2014-10-29 22:05:11 +00:00
Jeff Hao
9f60c08a44 Change boot screen title to "Android is starting" when not upgrading.
Bug: 17565501
Change-Id: Id5741e6e7a40750feee1cd7306e79f7baeec67de
2014-10-29 14:42:39 -07:00
Alan Viverette
79c067c54a Add setters for window elevation and clipToOutline properties
These are available as XML attributes but were lacking setters. None
of the Window properties have getters, so just adding setters here.

BUG: 16847753
Change-Id: I9c032903e94b7f12125210bd73c911243612df69
2014-10-29 14:27:47 -07:00
Adrian Roos
53f28eccc5 Improve dump of status bar service
Tracks which window caused the disable flags
instead of just blaming PhoneWindowManager.

Bug: 17830264
Change-Id: If6c957120bb2ee8e0083f80e35c71eb21b8672b6
2014-10-29 17:26:12 +01:00
Adrian Roos
0e7ae4efe8 Fix colored status bar panning issues
Bug: 17695293
Change-Id: I6a1267f8dff27e7b78ab312a71648ef16ab9483b
2014-10-29 16:37:29 +01:00
Svetoslav
bd6fabe2ae Merge "APIs for an accessibility service to put interaction tracking overlays." into lmp-mr1-dev 2014-10-23 23:17:21 +00:00
Bryce Lee
fb1cf36aa7 resolved conflicts for merge of f03ba4f1 to lmp-mr1-dev
Change-Id: I9e4cabd2d8a34a348ae888f096c8d3c35226e960
2014-10-22 16:56:08 -07:00
Bryce Lee
584a445179 [Theater Mode] framework implementation through global setting
Bug: 17684570
Change-Id: I64a9c9c0620049cdfcca0150648fa201281f7178
2014-10-21 15:55:55 -07:00
Svetoslav
3a5c721072 APIs for an accessibility service to put interaction tracking overlays.
An accessibility service may register to observe the interactive windows
on the primary display. These windows are the one that has input focus and
ones a sighted user can touch. It is sometimes beneficial for an
accessibility service to overlay a window to intercept user interaction
and based on that introspect and perform an action on the windows that
are on the screen. This is problematic as overlaying a full screen window
that is touchable prevents the accessibility service to introspect the
content under this window.

This change adds a special type of window that only an accessibility service
can place which does not affect what an accessibility service can "see" on
the screen. Hence, even putting such a window full screen the service will
be able to interact with the other interactive windows it covers.

Change-Id: I053ccc3a5c6360a98dc40bdb172b54dab35d8b31
2014-10-21 14:45:53 -07:00
Wale Ogunwale
393b1c1e88 Fix issue #17789629: PopupWindow overlaps with navigation bar.
The Lollipop release introduced a feature that allowed
apps to extend under the navigation bar. This also means
any popup window that is anchored to the bottom of its
parent window will overlap with the navigation bar if the
parent window is extending underneath the navigation bar.

This change introduces a new window flag
(FLAG_LAYOUT_ATTACHED_IN_DECOR) that allows the app to
specify if the popup window should be attached to the decor
frame of the parent window thereby avoiding an overlap
with the screen decorations.

By default the flag is set on SDK version LOLLIPOP_MR1 or
greater and cleared on lesser SDK versions.

Also, replaced flags FLAG_NEEDS_MENU_KEY and
PRIVATE_FLAG_NEEDS_MENU_KEY_SET with needsMenuKey state
variable to make room for the new
FLAG_LAYOUT_ATTACHED_IN_DECOR flag.

Bug: 17789629
Change-Id: I2150e0c6ac688c966c0e8f7e54d42fd20285bea6
2014-10-21 12:45:53 -07:00
Adrian Roos
5f978bfa09 Merge "Retire RecentApplicationsDialog" into lmp-mr1-dev 2014-10-20 13:04:09 +00:00
Yorke Lee
ad84e0637f Allow home to be pressed while in incoming call screen
Bug: 10692603
Change-Id: I2c213d553013bdd906f0ce54eba90a57bd7ae34c
2014-10-10 23:52:44 +00:00
Justin Koh
1840bfee70 Merge "Make GlobalKeyManager broadcasts send as foreground" into lmp-sprout-dev 2014-10-09 20:49:03 +00:00
Justin Koh
b0b823f71b Make GlobalKeyManager broadcasts send as foreground
Should prioritize these since they are due to user interaction.

Change-Id: If36d5502dbd53de6102b05fd54caed56e22685da
2014-10-09 13:33:19 -07:00
Dianne Hackborn
fdf5b35ab4 Implement issue #17906468: Allow search request to fall back to global search
Change-Id: I04834b2a9f1ec4a68c6a3fed14da2f8dd93b3be7
2014-10-09 10:37:19 -07:00
Dianne Hackborn
89b196958f Merge "Put in real "code" (aka marketing) name." into lmp-dev 2014-10-08 17:59:19 +00:00
Dianne Hackborn
955d8d69ea Put in real "code" (aka marketing) name.
Change-Id: Idb3976edfae37293ed75cb5b869b4b42d8042bbe
2014-10-07 20:17:19 -07:00
Adrian Roos
9a64513c7f Retire RecentApplicationsDialog
Bug: 5162991
Change-Id: I429da977502f33e2091496f3a075b2c507a88e1f
2014-10-08 02:59:56 +02:00
Jeff Brown
734ab8e60b Suppress redundant power key presses while turning screen on.
Sometimes it can take a long time to turn the screen on.  That's not
good but what's worse is that the user will often get impatient
and press the power button again which effectively cancels the
process and makes the screen not come on at all.  The user may
then conclude that the device ignored the power key press.

This change suppresses power key presses while we're already in the
process of turning the screen on so that at least the screen comes
on eventually, even if it's slower than we would like.

Bug: 17753363
Change-Id: I23083873e35a3dcfa5c20b6f870f53c18e465582
2014-10-07 16:47:25 -07:00
Guang Zhu
98a881418a Prevent monkey from triggering bugreport
Change-Id: Ifa6f06f7dfa63b740352ad7388f33911649afcb0
2014-10-03 12:23:43 -07:00
Adam Powell
46cbf7e190 Inset the non-overlay contextual action bar without a status guard
When the status guard is not available, (e.g. when the window is not
drawing system bars) do not consume the insets when an action mode is
active.

Bug 17691453

Change-Id: I459622eaf161a96152fb9ac5f60bb9508aa4de89
2014-09-30 13:31:51 -07:00