25 Commits

Author SHA1 Message Date
Dianne Hackborn
3fc982f41f Add new resource configurations for screen width/height in "dp".
You can now specify resource configuration variants "wNNNdp"
and "hNNNdp".  These are the minimum screen width/height in "dp"
units.  This allows you to do things like have your app adjust
its layout based only on the about of horizontal space available.

This introduces a new configuration change flag for screen size.
Note that this configuration change happens each time the orientation
changes.  Applications often say they handle the orientation change
to avoid being restarted at a screen rotation, and this will now
cause them to be restarted.  To address this, we assume the app can
handle this new config change if its target SDK version is < ICS.

Change-Id: I22f8afa136b4f274423978c570fa7c9855040496
2011-04-06 11:00:37 -07:00
Jeff Brown
21bc5c917d Add a little input event consistency verifier.
The idea is to assist with debugging by identifying cases in which
the input event stream is corrupted.

Change-Id: I0a00e52bbe2716be1b3dfc7c02a754492d8e7f1f
2011-03-31 19:57:00 -07:00
Jeff Brown
0029c66203 Add input filter mechanism for accessibility.
This patch adds a mechanism for capturing, filtering, transforming
and injecting input events at a very low level before the input
dispatcher attempts to deliver them to applications.  At this time,
the mechanism is only intended to be used by the accessibility
system to implement built-in system-level accessibility affordances.

The accessibility input filter is currently just a stub.
It logs the input events receives and reinjects them unchanged,
except that it transforms KEYCODE_Q into KEYCODE_Z.

Currently, the accessibility input filter is installed whenever
accessibility is enabled.  We'll probably want to change that
so it only enables the input filter when a screen reader is
installed and we want touch exploration.

Change-Id: I35764fdf75522b69d09ebd78c9766eb7593c1afe
2011-03-30 16:55:15 -07:00
Jim Miller
5c9248f668 Merge "Fix 4027057: Improve resolution of RecentApps thumbnail images." into honeycomb-mr1 2011-03-09 14:42:56 -08:00
Jim Miller
e70d506ab3 Fix 4027057: Improve resolution of RecentApps thumbnail images.
This fix ensures captured thumbnails in portrait mode have the
same resolution as those in landscape by fixing the horizontal
resolution and vertical resolution of the target image.

The returned image is now always the same size and matches
the landscape screen exactly. In portrait mode, it grabs
the upper portion of the screen based on the vertical dimension
of the target image.

Change-Id: I203c39843f2f21ca28f6ef0dffec308ce5cb39fb
2011-03-08 21:47:13 -08:00
Jim Miller
3de6a9b692 Merge "Fix 4025684: Don't include wallpaper dimensions in bounds calculation" into honeycomb-mr1 2011-03-08 15:43:16 -08:00
Jim Miller
2aded18b0e Fix 4025684: Don't include wallpaper dimensions in bounds calculation
This fixes a bug where we would capture the statusbar region in
thumbnails because the wallpaper was used in the bounds calculation.

Change-Id: I572221e83c4c363afe90e59bece9a291ce694a15
2011-03-08 15:34:20 -08:00
Dianne Hackborn
cc1d9f7942 Fix issue #3505861: Need to decide large/xlarge screen size limits
Decided.

Change-Id: I8292d65e3d47755778fdf85207c49f160c756452
2011-03-08 10:33:55 -08:00
makarand.karvekar
88dd6e665a set max_events_per_sec to 55
reduce touch lag.
no Dispatcher fix w/throttle at 60: 75.9ms (range is 71.4ms - 80.1ms)
InputDispatcher fix w/throttle at 60: 49.0ms (range is 38.1ms - 66.7ms)
InputDispatcher fix w/throttle at 55: 41.2ms (range is 28.6ms - 66.7ms)

Change-Id: I76c0ba83abcd6a3d408a29ec76997a2e07e48a70
Signed-off-by: makarand.karvekar <makarand.karvekar@motorola.com>
2011-03-03 17:04:21 -08:00
Dianne Hackborn
63e1cea248 Merge "Fix issue #3485923: Gmail crash" 2011-03-02 22:44:55 -08:00
Dianne Hackborn
6482517101 Fix issue #3485923: Gmail crash
Allow application to try to recover if a surface OOM error
happens on the client side.

Change-Id: I0308bd99647a35e4bcac448340b7fc6330a828f6
2011-03-02 22:38:58 -08:00
Jeff Brown
a454767b09 Get key repeat timeout and delay from ViewConfiguration.
Replaces previously hardcoded values.  This ensures that key repeat
takes the accessibility long press timeout setting into account.

Unfortunately the system must be rebooted for the change to take
effect.  We will fix that later.

Change-Id: I3ab70bb037331620b7e532170c1727287b5c6f91
2011-03-02 21:38:11 -08:00
Jeff Brown
55acdf7dcd Merge "Wake screen from external HID peripherals." 2011-03-02 19:59:07 -08:00
Jeff Brown
56194ebec6 Wake screen from external HID peripherals.
Added some plumbing to enable the policy to intercept motion
events when the screen is off to handle wakeup if needed.

Added a basic concept of an external device to limit the scope
of the wakeup policy to external devices only.  The wakeup policy
for internal devices should be based on explicit rules such as
policy flags in key layout files.

Moved isTouchEvent to native.

Ensure the dispatcher sends the right event type to userActivity
for non-touch pointer events like HOVER_MOVE and SCROLL.

Bug: 3193114
Change-Id: I15dbd48a16810dfaf226ff7ad117d46908ca4f86
2011-03-02 19:57:07 -08:00
Dianne Hackborn
cbf9cb35bb Merge "Fix issue #3400119: API to specify a black background behind a window transition" 2011-03-02 17:19:39 -08:00
Dianne Hackborn
de75cb4738 Fix issue #3400119: API to specify a black background behind a window transition
There is now an API, which is used for task switching.

Also improved how we handle rotation animation when we can't take a
screen shot, to cleanly revert to the old freeze behavior.  This removes
the need to special case the emulator.

Change-Id: I7227432a2309370437ec6ac78db02c6f1e7eedd5
2011-03-02 17:15:58 -08:00
Jeff Brown
05dc66ada6 Fade out the mouse pointer after inactivity or other events.
Fades out the mouse pointer:
- after 15 seconds of inactivity normally
- after 3 seconds of inactivity in lights out mode
- after a non-modifier key down
- after a touch down

Extended the native Looper to support enqueuing time delayed
messages.  This is used by the PointerController to control
pointer fade timing.

Change-Id: I87792fea7dbe2d9376c78cf354fe3189a484d9da
2011-03-02 15:37:57 -08:00
Dianne Hackborn
99aac7beca You can now specify a custom display size as NxM.
Change-Id: Ieb6df51aab009689f0f19b8887025261c5ceb69f
2011-02-28 11:23:18 -08:00
Mike Lockwood
3c85a4e639 Merge "KeyguardManager: Add isKeyguardLocked() and isKeyguardSecure()" 2011-02-22 13:11:11 -08:00
Dianne Hackborn
a9c40ef176 Merge "Add missing header comment." 2011-02-22 13:05:01 -08:00
Dianne Hackborn
f56e1021aa Add missing header comment.
Change-Id: Iec0c0c90153560d256b95212b7dcf969edf22143
2011-02-22 13:00:15 -08:00
Daniel Sandler
2ed6ad6aec Fix the flipping orientation lock.
We were setting ACCELEROMETER_ROTATION to 0 before putting
in the proper USER_ROTATION value, and PhoneWindowManager's
content observer would eagerly rotate the screen to the last
locked orientation before re-rotating to the updated locked
rotation.

Now we set USER_ROTATION first. Additionally, the
content observer is now the only place we set
mUserRotation{,Mode} (previously we would race with it in
setUserRotationMode()).

Bug: 3425657
Change-Id: I04ba1a3631c6d985c2e406c4d148c39fb5c36216
2011-02-22 15:24:55 -05:00
Mike Lockwood
520d8bc1d8 KeyguardManager: Add isKeyguardLocked() and isKeyguardSecure()
BUG: 3402847

Change-Id: I725838c9d96617dd4497f9c80417cd623eceb846
Signed-off-by: Mike Lockwood <lockwood@android.com>
2011-02-18 13:27:02 -05:00
Dianne Hackborn
6e1eb76f02 Explode WindowManagerService.
Change-Id: I3d73ed4c9a1b5d730aeffeb2df24ce5e6117d698
2011-02-17 16:14:16 -08:00
Dianne Hackborn
a924dc0db9 Start window manager refactoring.
Move all of the pieces into a new com.android.server.wm package.

Change-Id: I942b7bcfb84ee0f843f47d58e55ffc5a93c0da94
2011-02-17 14:22:17 -08:00