928 Commits

Author SHA1 Message Date
Adam Cohen
ebcd6bb1b9 Fixing emergency dialer flicker on lock screen (issue 5314293)
Change-Id: Ia9bf4acb84923e200b89ee55fc53bc92877001cf
2011-09-21 17:39:23 -07:00
Adam Powell
823f074a73 Fix bug 5300621 - Share menu disappears in gallery
ActionProviders (or action views) unfortunately had no way to report
that they had opened a sub-UI that would affect menu visibility
listeners used to hide action bars when not in use. This caused the
Gallery UI to hide its action bar when the share popup was open.

Add hidden API (to be made public later) to ActionProvider that can be
used to inform the menu system that a sub UI has opened or
closed. Account for this in menu visibility callbacks. Fix
ShareActionProvider to use this when its popup windows open and close.

Fix a regression where submenus were not properly reporting visibility
changes.

Change-Id: Ia6f45fb463ad106105c40d01f141c2e5c8b96f78
2011-09-21 17:21:47 -07:00
John Wang
6588bba33f Merge "Notify the sim state after callback registration." into ics-factoryrom 2011-09-21 15:34:28 -07:00
Dianne Hackborn
dda868cd33 Merge "Keyguard sound needs to hold wake lock." 2011-09-21 15:15:18 -07:00
John Wang
61e159504a Notify the sim state after callback registration.
Notify the register the current sim state right away in
registerSimStateCallback.Otherwise the register won't
receive any state until sim state gets changed again.
That will introduce a racing condition. If the sim state
changes to PUK_LOCKED after registering the callback, the
PUK unlock screen shows up. If the sim state changes to
PUK_LOCKED before registering, the PUK unlock screen won't
show.

bug:5243771
Change-Id: I27de1329a30adba68952cf086d2130c4cef54270
2011-09-21 14:35:34 -07:00
Adam Powell
39129cc884 Merge "Fix bug 5341804 - Unable to type into the find on page CAB" 2011-09-21 14:06:41 -07:00
Adam Powell
2301658222 Fix bug 5341804 - Unable to type into the find on page CAB
Standalone action mode windows should be focusable.

Change-Id: I7ce23f1028eb0d0d36bdb287589a6018dc178580
2011-09-21 13:39:53 -07:00
Dianne Hackborn
e47e8520fa Keyguard sound needs to hold wake lock.
We need to hold a wakelock while playing the keyguard lock sound,
so that it actually completes before the CPU goes to sleep.

Change-Id: I144c345383afeb911ea461b2eb17b31183b6d092
2011-09-21 13:34:33 -07:00
Adam Cohen
cec857d85c am 41298971: Merge "Fixing disappearing lock screen, issue 5319246" into ics-factoryrom
* commit '41298971c774a336257fff4a97ed5d5505bbfb60':
  Fixing disappearing lock screen, issue 5319246
2011-09-21 11:19:36 -07:00
Adam Cohen
51e9d5c635 Fixing disappearing lock screen, issue 5319246
Change-Id: Ia59ba6388775efc83aadf1e489b767be5624d385
2011-09-20 20:55:33 -07:00
Adam Powell
6bb68deb7d am 6724872b: Merge "Fix bug 5336495 - Silent mode icon on power dialog is wrong" into ics-factoryrom
* commit '6724872b166d84f640dfa3213e917ecd37333484':
  Fix bug 5336495 - Silent mode icon on power dialog is wrong
2011-09-20 14:36:09 -07:00
Adam Powell
093dee952f Fix bug 5336495 - Silent mode icon on power dialog is wrong
Change-Id: I384882434827a3ab57d65bb0a79e9da10315326f
TODO: Add appropriate vibrate-in-silent-mode icon when available.
2011-09-20 13:49:36 -07:00
Dianne Hackborn
bc1aa7bbc7 Fix issue #5312624: Lock screen very flickery
The key thing was to fix isVisibleOrBehindKeyguardLw() so that it
wouldn't count a window as not visible if it was just currently
in the process of drawing due to an orientation change.

Also improve logic in deciding when to turn screen on to better ensure
the screen is in a stable state, in particular treating screen off
as a frozen screen and not allowing it to turn on until the
update of the screen due to any config change is done.

Change-Id: If82199f3773270b2d07f9c7de9da2dad8c7b28d7
2011-09-20 11:20:31 -07:00
Adam Powell
d413eb3861 Merge "Fix bug 5333962 - Problems with no action bar/overlay action mode" 2011-09-18 15:39:05 -07:00
Adam Powell
8ee6d7c20e Fix bug 5333962 - Problems with no action bar/overlay action mode
Change the standalone action mode window for overlay mode to be of
TYPE_APPLICATION. (This also fixes a bug where overflow menus would
not work properly on these types of action mode bars.)

Set exitFadeDuration on btn_cab_done_holo_* drawables.

Remove no-window-focus override selector states for selectable item
backgrounds to allow proper touch feedback on windows that do not have
focus but that the user can interact with.

Change-Id: Ib504866238708150d21e6183ff7b695869c05d3e
2011-09-18 15:34:00 -07:00
Dianne Hackborn
38e29a61d0 Fix issue #5242779: Device not responding to touch on unlock screen
Rework how we decide when it is okay to turn on the screen by having
the policy call back to the power manager when it knows the lock screen
has been drawn.

Change-Id: Ie8f3f72111dcf7f168723e6dce24e0343b4afe5d
2011-09-18 14:52:52 -07:00
Brian Colonna
68a8cf4a8e Merge "Properly laying out FaceLock on lockscreen" 2011-09-16 06:08:22 -07:00
Brian Colonna
4d7cee1e4b Properly laying out FaceLock on lockscreen
- FaceLock area now specified in layout files instead of trying to
  grab an existing view, which was only practical if pattern was
  backup method

- Now fills area it is supposed to and works with pin as well as
  pattern backup

- Backup method is no longer exposed behind FaceLock just before it
  starts or just after it tells the lockscreen to unlock

- Added synchronized blocks so FaceLock cannot be told to stopUI by
  two different threads at the same time

Change-Id: I3bfad6b44dbe0e3c2ea3c87d2978451c22a7484c
2011-09-15 17:18:56 -04:00
Danielle Millett
247d8b08b2 Merge "isPasswordEnabled and isPatternEnabled return true if used as backup method" 2011-09-15 12:14:25 -07:00
Dianne Hackborn
d32b472edf Merge "Fix issue #5155678: Portrait > Landscape full-screen transition..." 2011-09-14 19:26:23 -07:00
Dianne Hackborn
ec537457cd Fix issue #5155678: Portrait > Landscape full-screen transition...
...mode cuts off screen rendering

The code for limiting application window sizes to not include the
navigation bar was dead.  Now it is back.

Change-Id: Ic0bde56e3300fd0d9d225e19d8de2766d07e8780
2011-09-14 19:19:55 -07:00
Dianne Hackborn
ca7b656833 Merge "Fix issue #5283365: Rotating the device to portrait mode, hides the keyboard partly" 2011-09-14 17:58:18 -07:00
Dianne Hackborn
1f903c3b57 Fix issue #5283365: Rotating the device to portrait mode, hides the keyboard partly
PhoneWindowManager now takes full responsibility for deciding where the
navigation bar goes.  This gets rid of a bunch of race conditions with
determining layout while the nav bar is moving itself at the same time
the window manager is computing a new configuration.

Note that this breaks the "nav bar on left" option.  The current nav
bar code could also be cleaned up some more to completely drive its
behavior based on onSizeChanged() happening during relayout.

Change-Id: I1651d74c3464ba0d588aab3049e099c78420146a
2011-09-14 17:56:40 -07:00
Adam Powell
86ed436b83 Fix bug 5237737 - ActionBar should fire an accessibility event when
action mode is turned on/off

Fire AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED when action modes
come and go to give an indication of UI change on the level of a menu
or dialog opening/closing.

Change-Id: Id36c6153b0722b4b6927c8d36503e8ac57c2d2b2
2011-09-14 16:19:44 -07:00
Daniel Sandler
28739171f2 Merge "When the status bar hides, close the notification panel." 2011-09-14 10:23:21 -07:00
Jeff Brown
98392efb24 Fix bug in KeyButtonView key injection logic.
Bug: 5299191
Bug: 5300282

Only send keys when mCode != 0.

Simplified the logic for repeating / non-repeating keys.
Key down / up are always correlated with touch down / up, the
only thing that's special is that we detect long press for
repeating keys and not for others.

Ensure that up or cancel is always sent for every key
that is generated.  Previously it was possible for keys to get
stuck down if touch moved out of the button's active area.

Removed the funky HOME long press timer.  We don't need it
since we can rely on the long-press flag instead.  Since the
system UI is in direct control of key repeating and long-press
behavior for the keys it inject, this eliminates the need for
special hacks to circumvent the timer.

Ensure that the same haptic feedback is provided for all keys,
including the recent apps key.  Previously this only worked
because the code was injecting a bogus key with code 0.

Don't generate repeated haptic feedback for virtual keys
even when those keys are injected.  This doesn't happen
for virtual keys synthesized by the InputReader because it
never injects repeats itself (the InputDispatcher synthesizes
them), but it is an issue for the KeyButtonView.

Change-Id: I8b3615dde738af28e76898d161d6ce9a883b59ec
2011-09-13 16:52:12 -07:00
Danielle Millett
73da5fe0fe isPasswordEnabled and isPatternEnabled return true if used as backup method
When facelock is enabled, isPasswordEnabled or isPatternEnabled will return true depending
on which one is set as the backup method. This is a cleaner way to handle things, rather than
specific cases for facelock in all the methods that call these functions.

Change-Id: Iacb802b89626dfc13f2306de1a2e622ca9b69427
2011-09-13 17:38:27 -04:00
Daniel Sandler
9c00d5b8e7 When the status bar hides, close the notification panel.
Bug: 5087130
Change-Id: I8a63f424158faa3266f6904c0a57ac352a0555e4
2011-09-13 14:49:03 -04:00
Jim Miller
56bacd76b2 Allow lockscreen orientation to be overridden with a system property.
There are cases where lockscreen changes orientation (when docked, etc.),
but it's not easy to test. This allows lockscreen's behavior to be
overridden by command-line.

Change-Id: I7ce1e2ca0ea03a9034a6f537e33650e99e3594d8
2011-09-09 14:54:13 -07:00
Jeff Brown
1d50a2c068 Merge "Adjust layers for system overlays." 2011-09-09 11:06:25 -07:00
Brian Colonna
15ea55a6f1 Moved FaceLock bind/unbind calls inside of null check
- I am not sure under what circumstances mKeyguardView can be null in
  onScreenTurnedOn() and I never saw this behavior before the commit,
  but it can happen and prevent the device from booting

- Patched to fix line length

Change-Id: I39efa5c1d68158af5c108430036fe7c715ef855b
2011-09-09 11:53:36 -04:00
Jim Miller
4f4ed38a88 Merge "Fix 5185505: Add support for weak biometric sensors to lockscreen." 2011-09-09 00:58:01 -07:00
Jim Miller
6edf2637e9 Fix 5185505: Add support for weak biometric sensors to lockscreen.
Added binder interfaces to the framework.

Change-Id: I7d55b45baa4d1600ebd2a3828e85c3357cfcfb58
2011-09-09 00:53:02 -07:00
Michael Jurka
3705b22c97 Merge "Adding null check to prevent monkey crash. (5263199)" 2011-09-08 19:07:02 -07:00
Winson Chung
45d378b705 Adding null check to prevent monkey crash. (5263199)
Change-Id: I26372c8aa8022659582b31ca5a4279b9590f02f8
2011-09-08 19:03:05 -07:00
Jeff Brown
bfcb60ab0f Adjust layers for system overlays.
Prevent system overlays from showing above the notification bar.

Allow secure system overlays to be fullscreen, for the pointer
location view.

Show the drag layer above the notification bar.

Change-Id: Ic8d663792a243cca2cd9952d241d001e0357d551
2011-09-08 18:53:42 -07:00
Jeff Sharkey
b0d89922b1 Merge "Always disable() through SBMS; watch date." 2011-09-08 15:22:51 -07:00
Jeff Sharkey
4519a02608 Always disable() through SBMS; watch date.
Touching StatusBar.disable() directly can make the cached value over
in StatusBarManagerService stale.  Instead, dispatch DISABLE_BACK
through setSystemUiVisibility() on tablets; it's unused on phones.

Also DISABLE_NOTIFICATION_TICKER when showing secure lockscreen, and
watch for TIME_CHANGED in DateView.

Bug: 5255469
Bug: 5242677
Change-Id: I4efaf9799b2f229f49d7024da5dafceacd5e08bb
2011-09-08 12:34:44 -07:00
Adam Powell
1d07e16c9d Fix bug 5174277 - Trouble with Menus
Make sure that options menu panel presenters associated with a PhoneWindow
get re-wired properly when a new menu is generated.

Change-Id: Ic06130019aec8b8edc372054c348f147d164fc5f
2011-09-07 20:47:13 -07:00
Jim Miller
62c3efd204 Fix 2679658: Be more aggressive about recreating lock screen.
In the past we were overly cautious about not recreating the lockscreen
under steady state conditions.  However, that allowed lockscreen
to get into weird states where the screen orientation and the
loaded layout disagree. Once in this state, the user could not
recover because we would never reload the layout due to the fixed
orientation of lock screen.

This avoids the problem by being more aggressive about reloading
the layout.  It now recreates the lockscreen (for reals) whenever
a view requests it via recreateMe().

In addition it serializes recreateMe() requests to ensure a pending
configuration change event has a chance to propagate and be handled
by the lockscreen looper.

Change-Id: I86a54abba899eb314f7cc8dbf6cbb98266bc548a
2011-09-06 19:23:52 -07:00
Dianne Hackborn
6b0c11da5a Merge "Fix issue #5150899: Call activity takes 15MB we never get back." 2011-09-02 17:18:32 -07:00
Dianne Hackborn
5d927c2d8e Fix issue #5150899: Call activity takes 15MB we never get back.
Persistent process can no longer use hardware acclerated drawing
when running on a low-memory device.

Change-Id: I3110335617af1c98fcede9bf41f4a1d0c20d0e87
2011-09-02 12:22:18 -07:00
Jeff Sharkey
054340d0a3 Show statusbar clock based on lockscreen status.
Keep track of lockscreen clock visibility, and only hide statusbar
clock when one is provided by lockscreen.  This fixes bug where widget
would hide all clocks.

Bug: 5242065
Change-Id: I48de98ecb956c7f22bd40b54d771c78c1a80c14c
2011-09-02 10:31:15 -07:00
Dianne Hackborn
69666e0781 Merge "Fix issue #5229575: Youtube link shared through messaging is not..." 2011-09-01 15:54:43 -07:00
Dianne Hackborn
ba24e4d8bb Fix issue #5229575: Youtube link shared through messaging is not...
...opening after selecting option "Youtube" as a luncher.

Also:

* Tweak window animations so that the wallpaper exist animations do not
stop too early (causing the wallpaper to suddenly disappear).
* Make sure no input is being processed while booting, to avoid
accidentally doing things especially in the upgrade dialog.
* Some other small cleanup.

Change-Id: I40a6b53731991d4e31ac4502e3d85f0e47507481
2011-09-01 12:39:17 -07:00
Mike Lockwood
e3646dd8d9 Show back button in status bar when in an activity in front of the lockscreen.
When the lockscreen is up we still enable the home and recent app buttons,
but the back button is only enabled if the lockscreen is not obscured by other activities

Fixes problem escaping from the DeskClock app when the screen is locked.

Bug: 5206013

Change-Id: I68c9e4513018f51e2ee4fc11254e42ecbef834e4
Signed-off-by: Mike Lockwood <lockwood@android.com>
2011-09-01 13:56:25 -04:00
Dianne Hackborn
d040edbae9 Use floating point window positions.
Gets rid of gapps between windows during animations.

Change-Id: I17d2ef0af214008f0eabd7eb19268f145fe83b39
2011-08-31 14:18:32 -07:00
Jeff Brown
9d4bc852ea Merge "Fix input channel leak. Bug: 5156144" 2011-08-31 13:01:16 -07:00
Jeff Sharkey
f52c70b2cc Disable clock in lockscreen; better flag logic.
When showing lockscreen, hide clock and navigation.  Clean up logic
to be easier to understand.

Bug: 5112812
Change-Id: I20e3563aa36644db678c7839d47f01f223fe8d37
2011-08-30 22:30:07 -07:00
Jeff Brown
cc4f7db698 Fix input channel leak.
Bug: 5156144

Input channels could leak or simply live longer than they should
in some cases.

1. Monitor channels (used by the pointer location overlay) are never
   unregistered, so they would leak.

   Added code to handle failures in the receive callback by closing
   the input channel.

2. The DragState held onto its input window and application handles
   even after the input channel was disposed.

   Added code to null these handles out when they are no longer needed.

3. Input channels previously used as input event targets would stick
   around until the targets were cleared (usually on the next
   event).

   Added code to detect when the input dispatcher is in
   an idle state and to proactively clear the targets then
   to ensure that resources are released promptly.

4. Native input window handles held onto the input channel even
   after the input window was removed from the input dispatcher.
   Consequently, the input channel would not be disposed until
   the input window handle itself was freed.  Since the input
   window handle is held from managed code, this meant that the
   window's input channel could stick around until the next GC.

   Refactored the input window handle to separate the properties
   (info) and identify (handle) state into different objects.
   Then modified the dispatcher to release the properties (info)
   when no longer needed, including the input channel.

7. The pointer location overlay does not actually use its
   standard input channel, only the monitor input channel.

   Added INPUT_FEATURE_NO_INPUT_CHANNEL to allow windows to
   request that they not be provided with an input channel
   at all.

Improved some of the error handling logic to emit the status
code as part of the exception message.

Change-Id: I01988d4391a70c6678c8b0e936ca051af680b1a5
2011-08-30 21:40:28 -07:00