636 Commits

Author SHA1 Message Date
Craig Mautner
3351ab27b9 am f967500e: am 46732445: Merge "Include child windows when looking for insertion point." into jb-mr1.1-dev
* commit 'f967500ebaefb95d7a1c14acd05574a0f17ec078':
  Include child windows when looking for insertion point.
2012-11-30 16:46:03 -08:00
Craig Mautner
7b1aa77a9b Include child windows when looking for insertion point.
After finding a window in the window list we turn around and look in
the AppWindowToken.windows list for it. If it is a child of a window
in that list we should use the parent windows index as the search
result. Instead we gave up and ended up inserting the window at the
beginning of the windows list.

Bug 7357465 fixed.

Change-Id: If77f343b8597bfbb0b7fa41dedf7972d78d03020
2012-11-30 16:14:45 -08:00
Dianne Hackborn
a55097f8bb am ed74c10f: am aae329ef: Merge "Don\'t apply transformation fudge when not rotating." into jb-mr1.1-dev
* commit 'ed74c10f135c768b24c4b1a14042b8292a9662fa':
  Don't apply transformation fudge when not rotating.
2012-11-29 17:59:30 -08:00
Dianne Hackborn
aae329ef0f Merge "Don't apply transformation fudge when not rotating." into jb-mr1.1-dev 2012-11-29 17:53:47 -08:00
Dianne Hackborn
4b16969b00 Don't apply transformation fudge when not rotating.
There is this stupid fudge factor applied to window transformations
when doing a screen rotation animation.  We need this when rotating,
but when not rotating it causes very visible artifacts.  Historically
the non-rotation case only happened due to configuration changes, so
wasn't that big a deal.  Now however that we use this when switching
users, it is more annoying.  So get rid of it for such cases.

Change-Id: I6b343866c1bad9b16984b4a629917c2f1bb37b9e
2012-11-29 17:51:24 -08:00
Craig Mautner
d08fc86964 am 4317b341: am 24d966a3: Merge "Fix math errors causing black screen. DO NOT MERGE" into jb-mr1.1-dev
* commit '4317b3418b144c162634ec647df76a484ac35612':
  Fix math errors causing black screen. DO NOT MERGE
2012-11-29 14:27:43 -08:00
Craig Mautner
24d966a3b6 Merge "Fix math errors causing black screen. DO NOT MERGE" into jb-mr1.1-dev 2012-11-29 09:57:15 -08:00
Craig Mautner
9dd9e0c99d Fix math errors causing black screen. DO NOT MERGE
Turning off animations in the Developer options creates a ValueAnimator
duration scale of 0. This is used as the denominator in RampAnimator
which, if the numerator is also 0, sets mAnimatedValue to NaN. Rounding
NaN to the nearest int produces 0 which is then assigned to
mScreenBrightness in DisplayPowerState.

A copy mistake which assigned mTransitionAnimationScale as the default
value for mAnimatorDurationScale in WindowManagerService is also
fixed here.

Bug 7515609 fixed.

Change-Id: I39f8d0a7abdd5a1fe70d757fe95fbddaf7a0ed51
2012-11-29 00:11:50 -08:00
Craig Mautner
ae336a08dd am 067a7ac4: am 9e98927e: Merge "Retain configuration change info and sync access." into jb-mr1.1-dev
* commit '067a7ac494c8a248840b9a7a46f22a0efff9e52f':
  Retain configuration change info and sync access.
2012-11-27 16:23:15 -08:00
Craig Mautner
e855214249 Retain configuration change info and sync access.
- If a window was hidden while the configuration changed and then
changed back WindowManagerService would not know that the change
had ever happened and wouldn't notify the window of this. Most
windows wouldn't care but because Keyguard inflates layouts while
it is hidden...

Bug 7094175 fixed?
Bug 7501099 fixed!

Change-Id: If27f5f1d333602dac7719dd39dbdf3fe7954aa06
2012-11-27 12:47:27 -08:00
Dianne Hackborn
e0d454d2e8 am 72325cdb: am 63bc6c12: am a46a74fc: Merge "Remove extraneous logs." into jb-mr1-dev
* commit '72325cdb65a321df7755ba214efd9be42ce828d5':
  Remove extraneous logs.
2012-11-08 15:47:46 -08:00
Jim Miller
061b4fae3d am a2bf6181: am 2c29deaa: am 6be441c5: Merge "Add mechanism to kick keyguard to show the assistant" into jb-mr1-lockscreen-dev
* commit 'a2bf6181dfca0f93461fc041f2bd2444551a4515':
  Add mechanism to kick keyguard to show the assistant
2012-11-08 15:47:04 -08:00
Jim Miller
bef827572c am c7dc250d: am fe7e94a0: am 088fb915: Merge "Add isSafeModeEnabled() API to WindowManagerService" into jb-mr1-lockscreen-dev
* commit 'c7dc250d5a3dab93ff87e9986a71ae58ff124399':
  Add isSafeModeEnabled() API to WindowManagerService
2012-11-08 15:32:09 -08:00
Dianne Hackborn
a46a74fcd6 Merge "Remove extraneous logs." into jb-mr1-dev 2012-11-08 13:16:10 -08:00
Dianne Hackborn
7ff30113de Remove extraneous logs.
Change-Id: I4c47d36748de91bd6fddc419afbf59552bf63e9a
2012-11-08 13:13:48 -08:00
Jim Miller
4eeb4f664a Add mechanism to kick keyguard to show the assistant
Fixes bug 7499778

Change-Id: Ic9ea514feb489feeee6716f40bdb9792842f9515
2012-11-08 00:39:04 -08:00
Kenny Root
58ed5d748c am 768d9e1a: Merge "Correct executable bit for source files"
* commit '768d9e1a72ceee7d4a5f608776b87b62d6ce4a04':
  Correct executable bit for source files
2012-11-07 11:52:12 -08:00
Kenny Root
3a084af2e9 Correct executable bit for source files
Many media files and source code files were marked as executable in Git.
Remove those.

Also a shell script and python script were not marked as executable.

Change-Id: Ieb51bafb46c895a21d2e83696f5a901ba752b2c5
2012-11-07 10:27:31 -08:00
Jim Miller
bfec0a8616 Add isSafeModeEnabled() API to WindowManagerService
This adds a means of determining when the device is in safe mode,
as required by keyguard to disabled some features.

Change-Id: I31d357e6738c92e1837f9e0263e5f3f4de66315a
2012-11-05 20:27:38 -08:00
Dianne Hackborn
2ea9bae712 Fix issue #7457380: IME leaves a mark after user switching
The gnarly stuff where we keep track of the old input method
window as if it was still there was sitting around leaving things
in a stuck state.  Now we clear this out at key points in the
window manager (freezing screen, user change), and the input
method manager service is less aggressive about asking the window
manager to do it.

Also fixed a problem that was causing flickers during some
wallpaper transitions -- when we are animating two things on
top of the wallpaper and one of them disappears, we need to
make sure the wallpaper target points to whatever the current
target should be (if any), not left pointing to the old target
that has gone away.

Change-Id: I2fb9600f569a5bd5e3528aaf24cde9340af56cb0
2012-11-02 18:56:01 -07:00
Dianne Hackborn
98129739af Fix issue #7343200: Fails to show wallpaper in the background for...
...lockscreen sometimes and remains black / blank

The problem was that we were using the animation-side wallpaper state
in cases where it was not updated yet.

The mWallpaperTarget variable is propagated over to the animation
side when the main window manager state updates.  On the animation
side, this is used by hideWallpapersLocked() to determine if the
current wallpaper should be hidden.

The problem is that various paths to hideWallpapersLocked() can
come from the layout side of the window manager instead of the
animation side.  This causes the problem here because in this case
the wallpaper state may not have yet been propagated to the
animation side, so it could incorrectly decide to hide the wallpaper
because it thinks there is not a target when in fact a target is
set in the layout side.  This won't get fixed until some time way
later that the layout side decides that a new window is being shown
that may need to have the wallpaper shown.

The fix here is pretty gross, but as safe as possible -- the
hideWallpapersLocked() function now uses either the animation or
layout wallpaper state depending on where the call to it is coming
from.

Change-Id: I9250bfeae6e11c1761760bcc696fdb33fb5c8a5f
2012-11-02 14:19:59 -07:00
Dianne Hackborn
529e744d31 More debugging for issue #7343200 Fails to show wallpaper in the...
...background for lockscreen sometimes and remains black / blank

There was a bunch of state not being put into the dumpsys output.
In particular, the current wallpaper target of the WindowAnimator
was not being included.  I think the problem is that these targets
are not being updated from the main window manager state at some
point where they need to be.

Change-Id: Ic795047f6aea9b6f72d5550bccc9f8d76c6ecb67
2012-11-01 15:09:10 -07:00
Chet Haase
d5d11af3d3 Fix for regression in WindowManager orientation changes
A fix yesterday for #7428221 caused a regression where new orientations would
sometimes cause a flash through black on the way to seeing the real static wallpaper.
There is a fundamental problem in WindowManagerService where we show a window before
it has all of the layout/sizing information it needs, which is the cause of the black
flash. The regression yesterday was that we are now less aggressive about layout out
hidden windows, so we won't layout the window until after the window is shown with the
incorrect sizing info.

The fix/workaround is to back off the layout logic specifically for the wallpaper,
ensuring that we will lay it out on orientation changes, even when hidden. This means that
when we finally do show it, it will already have been drawn in the correct orientation/size.

Issue #7444971 Home jank regression

Change-Id: Ib20fdabc43ece9720b261bf04b272c5511e2d902
2012-10-31 15:40:54 -07:00
Chet Haase
27f752eb1d Merge "WindowManager shouldn't layout non-visible windows" into jb-mr1-dev 2012-10-30 17:42:43 -07:00
Chet Haase
9cceae9a5f WindowManager shouldn't layout non-visible windows
A recent change in WindowManager made background windows perform layout
(when they should really be left alone). This resulted in artifacts
where rotating the device and then going to a backgrojnd activity (launcher,
Recents) would briefly show that activity in the wrong size/orientation, then
flash to the correct one after a proper layout.

This fix is a simple workaround, leaving in the original fix that the code
change addressed (for keyguard orientation changes), while going back to the
previous (don't layout gone windows) for all other cases.

Issue #7428221 sometimes recents is drawn off-center and then fixes itself

Change-Id: I41b47933c2bd86f29133853d3387bb7294be8f48
2012-10-30 16:35:45 -07:00
Craig Mautner
ad09bccfe4 Bring up unlock screen for FLAG_DISMISS_KEYGUARD.
Widgets that did not launch Activitys would not display the unlock
screens when they were tapped. Now any window that is shown with
FLAG_DISMISS_KEYGUARD set while the keyguard is locked will
cause the unlock screen to be displayed.

Bug: 7301530 fixed.
Change-Id: I90d11b52d2b63260bdb5f2b6eb7e98eb7a4d9331
2012-10-30 12:08:22 -07:00
Dianne Hackborn
ef03a7f441 Work on issue #7343200: Fails to show wallpaper in the background...
...for lockscreen sometimes and remains black / blank

Add some debug output to try to track down what is going on.

Change-Id: I98a96c5da9c04b988e948f6fc2766d927db49ebf
2012-10-29 18:46:52 -07:00
Dianne Hackborn
77119bc6c9 Fix issue #7342364: JellyBean broke Toddler Lock, again
Change-Id: I400c02711edc302a1bc7fbf98b62fcb9f76e5e12
2012-10-23 15:02:25 -07:00
Dianne Hackborn
7ad4438414 Fix issue #7353900: Brief flash of home screen while dream starts on lock screen.
Not very clean, this has a special hack in the window manager to
redo layout when a dream window is shown.  After MR1 we should clean
this up (and the various other special dream hacks).

Change-Id: Ic1a5a2b10a0a07b4a5dccdbf0736b614ec06dd4a
2012-10-19 16:40:13 -07:00
Craig Mautner
0ed07a0a30 Merge "Allow getDisplayContentLocked to return null..." into jb-mr1-dev 2012-10-19 09:27:06 -07:00
Michael Jurka
738cfc9105 Fixing wallpaper flash when going in/out of Recents
Bug: 7372516
Bug: 7216872

Change-Id: I2a2308a85caf9f2ad2d382c709e5f8867bd060be
2012-10-19 16:58:50 +02:00
Craig Mautner
2d5618c221 Allow getDisplayContentLocked to return null...
... and check for null returns. This prevents DisplayContent objects
from containing null Display references.

Bug: 7368565 fixed.
Change-Id: I830fb4c1349204c366193657a95a92c48ccee66c
2012-10-18 14:16:43 -07:00
Craig Mautner
860f660a0f When removing windows remove from resize list.
Windows remained in the resized list if they were removed during
rotations.

Bug: 7372289 fixed.
Change-Id: I41f949b7836b08b33d4d178e9aa016548328749a
2012-10-18 09:38:10 -07:00
Craig Mautner
341220fd09 Use parent window to evaluate show-to-all-users.
When a window is attached to another window use the parent window's
attributes to determine whether the child window should be shown
to all users.

Bug: 7328633 fixed.
Change-Id: I9601c149af87f624378e6895063bb3179d4f845e
2012-10-16 15:20:09 -07:00
Svetoslav Ganov
964629aca8 Merge "Occasionally triple tap on the keyboard toggles screen magnification." into jb-mr1-dev 2012-10-16 14:20:45 -07:00
Craig Mautner
dc9e13b30a Merge "Perform all layouts within first loop." into jb-mr1-dev 2012-10-16 13:46:46 -07:00
Craig Mautner
a13a41dc0e Perform all layouts within first loop.
Do not begin animation while layout requests are still
outstanding.

Bug: 7333622 fixed.
Change-Id: I77c2cdc123c1e26f9661feade0d9a1843c75d5f6
2012-10-16 12:54:48 -07:00
Svetoslav Ganov
55468c64bc Occasionally triple tap on the keyboard toggles screen magnification.
1. Sometimes unlocking the device when the IME is up and triple tapping on the keyboard
   toggles screen magnification. The core reason is that when the kayguard window is
   shown we hide all other windows and when it is hidden we show these windows. We did
   not notify the screen magnifier for windows being shown and hidden. Also when the
   windows are shown we may reassign layers to put the IME or the wallpaper in the
   right Z order. The screen magnifier is now notified upon such layer reassignment
   since window layers are used when computing the magnified region.

bug:7351531

Change-Id: I0931f4ba6cfa565d8eb1e3c432268ba1818feea6
2012-10-16 11:11:39 -07:00
Craig Mautner
a4942c9fb9 Revert app freeze timeout delay.
Speed up of wallpaper loading on Manta means this workaround is no
longer necessary.

Bug 7354440 fixed.

Change-Id: Ic0ad3c689abb5342fb29c824857db9d5c2d45008
2012-10-16 09:06:53 -07:00
Craig Mautner
f6dbd61b10 Merge "Always layout Keyguard on config change." into jb-mr1-dev 2012-10-15 22:05:55 -07:00
Jamie Gennis
b6ce6e42cc Flag window animation transactions as animations.
This change makes WindowManager use the new eAnimation flag when animating
windows.  This prevents some of the window updates from being combined with
updates from prior animation frames.

Bug: 7353840
Change-Id: I5a9f8fa2c1a2f5f08363a45cd9f28bb97cd77080
2012-10-15 19:19:50 -07:00
Craig Mautner
a3f4bf531f Always layout Keyguard on config change.
Add Keyguard to list of windows that can't be hidden by keyguard.

Don't assign Configuration to window until layout has had a chance
to compare it to window's existing Configuration.

Bug: 7094175
Change-Id: I99a9fd4af9a31871fe130db7b6bdf49bd51a6092
2012-10-15 13:45:17 -07:00
Craig Mautner
a987d43bc9 Check for apps closing and restore mExiting test.
Removal of the mExiting test in a previous CL was a mistake leading
to z-order errors. In particular the auto complete dialog was on top
of the IME and was being dismissed due to touches on the IME.

Restoring mExiting alone missed cases where apps were exiting which
don't set mExiting. Adding a test for membership in mClosingApps
fixes that.

Bug: 7327220 fixed.
Change-Id: I3965b8a07080d1347bdada51ffeafe6ef2e32c8e
2012-10-11 14:13:31 -07:00
Craig Mautner
0a75ed0805 Merge "Revert "Remove debugging statements before final ROM."" into jb-mr1-dev 2012-10-10 15:38:58 -07:00
Chris Craik
c194016710 Merge "Use the original caller pid for computing visibility" into jb-mr1-dev 2012-10-10 15:11:24 -07:00
Chris Craik
3198ef3f97 Use the original caller pid for computing visibility
bug:7325771

Make Strict mode violations flicker the screen for visible app correctly.

Change-Id: I293dc9e945cb0366a1cd7b63a5b746159aab7c74
2012-10-10 14:52:30 -07:00
Craig Mautner
64ecc0e101 Revert "Remove debugging statements before final ROM."
The bug cropped up again. Need these statements to pin it down.

This reverts commit f1f3b49b949af72692f7f85a1c1ef220e8630e30

Change-Id: Ie0548232daff32ee2541249b0950e23bd98c08d2
2012-10-10 13:22:10 -07:00
Craig Mautner
fa5bc08159 Merge "Increase window freeze timeout for bigger screens." into jb-mr1-dev 2012-10-10 12:42:18 -07:00
Craig Mautner
7dfcb01820 Increase window freeze timeout for bigger screens.
More pixels take longer. Timeout was occurring before Status and
Navigation Bars were finished drawing causing them to animate in
during rotations.

Bug 7307718 fixed.

Change-Id: Iccf27b6172d0c9831690cc2fcf93027a40b705d8
2012-10-10 10:24:47 -07:00
Craig Mautner
f1f3b49b94 Remove debugging statements before final ROM.
Change-Id: I18afd1a4c4f8f945308edc9b3af48b8c8adb3b9e
2012-10-09 13:23:08 -07:00