History log of /frameworks/base/core/java/android/view/WindowManager.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
cb4bbd7af8d07fc53938ae81f2604498b502f1dd 12-May-2016 Vladislav Kaznacheev <kaznacheev@google.com> Partial fix for jumping freeform windows

Currently every focus change causes a freeform window to jump
for a few frames. The size of the jump is equal to the difference
in inset size (which is derived directly from the window elevation).

This problem goes away for most real use cases if the insets are
not allowed to decrease.

Bug: 28318973
Bug: 22668382
Change-Id: I77ca440a7d9c89cc4d45e6667bf37da94a5c8a9a
/frameworks/base/core/java/android/view/WindowManager.java
60e885f672407a11b30cac650cddae2d2f029702 22-Apr-2016 John Reck <jreck@google.com> Fix flag value collision

Bug: 28314544
Change-Id: If73c1e8fd0e7b313bccbeffa172bdc3ab9496a43
/frameworks/base/core/java/android/view/WindowManager.java
43e38de2530fecbbdea81c52d0fde90333432356 15-Apr-2016 Ruchi Kandoi <kandoiruchi@google.com> window: Adds a Sustained Performance Mode window flag.

Adds setSustainedPerformanceMode(boolean) API for applications to set
the mode for a given window. The mode will be disabled automatically when the
window is no longer in focus.

Bug: 28150358
Change-Id: Ibe8bc564eeaaccbcaad5c4f792cda16da931dffd
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
/frameworks/base/core/java/android/view/WindowManager.java
b33daec8c2e9e12cdb9c7e5db388656fd8aff98f 14-Apr-2016 Rob Carr <racarr@google.com> Merge "Add WindowManager side timeout for toasts." into nyc-dev
0697c7a877d87acd572ed7ce62472d5866375e86 14-Apr-2016 Yuki Awano <yawano@google.com> Do not update accessibilityTitle in
LayoutParams.setTitle

Bug: 28126629
Change-Id: Idfd8c0210d32e1a0e9c16272cfbb35ef6065e805
/frameworks/base/core/java/android/view/WindowManager.java
70f0d229c02b91d7b987c4972b9b08bb9dcd04b5 11-Apr-2016 Robert Carr <racarr@google.com> Add WindowManager side timeout for toasts.

If the thread a toast is shown on is shut down,
the attempt to post the hide message to it's handler
will fail and it will never request removal. If this was
only some application background thread we will also not
receive a death notification. It seems best to use a timeout
to ensure we don't need the clients cooperation, espescially
as toasts can keep the screen on.

Bug: 21693547
Change-Id: I1d6e54ded5b9e2050daedc4d263e2e21fbe69862
/frameworks/base/core/java/android/view/WindowManager.java
3fb1c81394f98b025b488774916b7580f9e31dab 13-Apr-2016 Wale Ogunwale <ogunwale@google.com> Merge changes Ieefeb843,Ic2a94b09 into nyc-dev

* changes:
Update surface insets on window elevation changes.
Fixed bug with cropping out drop shadow for pinned stack.
8f5701bd9f1149d672d63758e522dcfaaa258a73 05-Apr-2016 Jorim Jaggi <jjaggi@google.com> Only force drawing status bar background if target >= N

Since forcing it all the time has the potential of breaking
compatibility with apps, we don't want to do this.

Instead, we only force it if the app targets >= N.

We communicate this to window manager with
PRIVATE_FLAG_FORCE_DRAW_STATUS_BAR_BACKGROUND.

We introduced this for 2-up split-screen. If we have an app
that doesn't draw the status bar background by itself, we
just force the whole bar to be black.

The same applies for windows that used translucent status
bar - we also force the whole bar to be black

Bug: 27285627
Change-Id: I7f1ceaa364f8a4e851935f77aa5e8d913bf11791
/frameworks/base/core/java/android/view/WindowManager.java
246c209e4fe704c0745224be0ab05225e8431d11 07-Apr-2016 Wale Ogunwale <ogunwale@google.com> Update surface insets on window elevation changes.

Window manager factors in the surface insets when calculating the
right crop for a window surface. Without the surface insets been
updated and new param forwarded to window manager, the window crop
will not be the right size and the window drop shadow might not show.

Bug: 27364161
Change-Id: Ieefeb8435543f3137672a065269cdeefca371111
/frameworks/base/core/java/android/view/WindowManager.java
9be3c7bdc7d49e9f99861d20fb134799291f20df 08-Apr-2016 Phil Weaver <pweaver@google.com> Eliminate side effects of a11y window title.

ag/898112 added passing the window title to accessibility. To do that,
it also updated copy of the title in WindowManager.LayoutParams. That
was a behavior change, and the change broke cts tests that enforce that
the title in LayoutParams matches its expected format.

This change restores the previous behavior and adds a separate field to
LayoutParams to old an up-to-date title to pass to accessibility.

Bug: 28002185
Change-Id: Ia5b549113600b7c4fcc80b76c3f3a944dddaf483
/frameworks/base/core/java/android/view/WindowManager.java
396d549113bc633f719acc643c7dfc5f2a8fae4e 23-Mar-2016 Phil Weaver <pweaver@google.com> Add accessibility window title and anchor.

Plumbing through the title of windows so support multiwindow
accessibility.

Adding ability to determine the anchor of a pop-up window so the pop-up
can be traversed as part of its anchor.

Bug: 27687627
Bug: 8449376

Change-Id: I59e98a29fb90029407a26de5bf3d900fed5dd627
/frameworks/base/core/java/android/view/WindowManager.java
fcd7e80b21cc9db6be00e37371401ea1d0938796 10-Mar-2016 Clara Bayarri <clarabayarri@google.com> Keyboard Shortcuts: plumb deviceId through

Bug: 27673736
Change-Id: Ie72807aa8c2bfd142b081a6a915e101c16d31473
/frameworks/base/core/java/android/view/WindowManager.java
6ca619fe1aff489e1227b0db6a77c96e973a1db3 08-Mar-2016 Muyuan Li <muyuanli@google.com> Partial screenshot

Added a partial screenshot function in TakeScreenshotService
also added corresponding shortcut keys in PhoneWindowManager

Bug: 26820467
Change-Id: Id67cd3b4b0eed848eb4665056766546500bdac88
(cherry picked from commit 03e45541e9d54a2f285906ac7b5bcb374db14495)
/frameworks/base/core/java/android/view/WindowManager.java
1f240c9fbf3be91e211c45b522e8cf948fe4c749 23-Feb-2016 Wale Ogunwale <ogunwale@google.com> Only copy layout param title if it is different from the current one.

Fixes WindowManager_LayoutParamsTest failure introduced in ag/866860

Bug: 27297744
Change-Id: I27ebf5d35b074d6b9c1634bc7cd18bba2844352e
/frameworks/base/core/java/android/view/WindowManager.java
b6e2eaddfcf78f265061fbcc3598b8ca865d6bdb 15-Feb-2016 Wale Ogunwale <ogunwale@google.com> Fixed issue with losing window name when copying WindowManager.LayoutParams

It is possible for the WindowManager.LayoutParams set from a view/window on
the client side not to have the LayoutParams.mTitle set. This is normally
not an issue as we later set it to the package name before passing the
LayoutParams to window manager. However, we rely on the full window name
in order to identify unique windows during CTS hostside tests. We now
retain the current LayoutParams.mTitle if the LayoutParams we are copying
form didn't set one.

Bug: 26982752
Change-Id: Icc3c5937391ed1646c3777921c6f61c27ebec05d
/frameworks/base/core/java/android/view/WindowManager.java
40ded287c432637158954f84a6d9cdacffc8f181 26-Jan-2016 Phil Weaver <pweaver@google.com> Clean up some accessibility documentation.

Removed and updated some obsolete documentation about window
content. Stated the purpose of accessibility. Updated docs
for getTextSelection to include its ability to get cursor
position. Clarified wording for accessibility overlays.

Change-Id: Iaa11b499c2b7ece12ca182d336376d97b961b54f
/frameworks/base/core/java/android/view/WindowManager.java
75e097965cc273d33192555b0e65de3dbc1753ce 29-Jul-2015 Clara Bayarri <clarabayarri@google.com> Request Keyboard Shortcuts for SysUI Dialog via Window

Keyboard shortcuts are requested via WindowManager, and
the request pipes through to the view root and the window
callback.

Bug: 22405482
Change-Id: Ic0071e91c7b554be3ac9df71e9539ee8a60e822e
/frameworks/base/core/java/android/view/WindowManager.java
8216eb2221ad5ad6615d3966f43844268756f3c8 18-Dec-2015 Wale Ogunwale <ogunwale@google.com> Added PRIVATE_FLAG_LAYOUT_CHILD_WINDOW_IN_PARENT_FRAME window flag

Allows us to differentiate between child windows that always want to be
laid-out in the parent frame regardless of multi-windowing mode
(PopupWindows) and those that don't (SurfaceViews).

Bug: 26255254
Change-Id: Icbc245a24f9a38698444196846ddb25016ef7e2a
/frameworks/base/core/java/android/view/WindowManager.java
a1eb439eee65138280c560f96e2a6896f9c9112c 10-Dec-2015 Robert Carr <racarr@google.com> Move window replacement tracking to window state.

In preparation for supporting replacement of child windows
we make replacement per window rather than per app.

Bug: 26070641

Change-Id: Ifa332086599c125611e430219c9497bae7e2ce31
/frameworks/base/core/java/android/view/WindowManager.java
8f7f3184d55850b1c4d2036319794151f564e9c0 18-Nov-2015 Jason Monk <jmonk@google.com> Allow QS tiles to open dialogs

Add a TYPE_QS_DIALOG window type, that is in the same layer as
apps and dialogs and such. It is guarded by having a token
that is granted by SysUI after a click has occured. If the
app shows a dialog before listening finishes (QS closes) then
the token will stay granted until the tile is removed by the
user, otherwise the token will be removed immediately to avoid
later dialogs.

Also fix a couple tiny TileService issues:
- Stop/Start listening reversed
- Fix javadoc referencing wrong action

Change-Id: Iedcdd5fd9a2af2b33eb7f6f17bb0e6c997879876
/frameworks/base/core/java/android/view/WindowManager.java
1a4dfe593aafda057ac9cb3086b84588d88cd09f 15-Nov-2015 Filip Gruszczynski <gruszczy@google.com> Synchronize recents to freeform transition.

Recents to freeform animation must hang on the first frame and inform
Recents to hide its views. This mirrors the transition from freeform
to Recents, where the animation needs to hang on the last frame.

We need a special window flag for recents to force a redraw after the
animation launches. At this point Recents will become not visible
from the perspective of the activity manager, which would prevent
further drawing. We make recents ignore that and instead depend on
window visibility which will change after recents exit animation
finishes.

Bug: 24913782
Change-Id: Ief743b7e6fcebb3d8789d4745fb122ac607c1cf0
/frameworks/base/core/java/android/view/WindowManager.java
64aadd08491172e90f6d6512d8affc9a4cfa04cc 06-Nov-2015 Robert Carr <racarr@google.com> Clarify geometry management for SurfaceView

In the hardware accelerated case, RenderThread needs
to be the authority of information on the geometry of
the SurfaceView (this will occur via moving the
repositionWindow call to RenderThread). In order
to support this we have to enable calling relayoutWindow
without geometry (so that it will not fight with
repositionWindow). Add such a mode to relayoutWindow
and use it from SurfaceView. Add size to repositionChild
while we are here.

Bug: 22802885
Change-Id: Ie45132c22f34cc6ecfe2446912b30bd1df414406
/frameworks/base/core/java/android/view/WindowManager.java
61f39a7b988f6a22681a3f9e0bf8121f72ff88c4 29-Oct-2015 Jorim Jaggi <jjaggi@google.com> Migrate docked divider drawing to SysUI

Move docked divider drawing to SysUI. This let's us have real
time shadows in the future. Keep DockedStackDividerController
for placing/visibility in window manager.

Change-Id: I82c10add626d30f2ba180ee2a21cdbe6ddfe0371
/frameworks/base/core/java/android/view/WindowManager.java
7d73643f7a3fbd635ba1818d6f819e551b7ffcf6 06-Nov-2015 Bart Sears <bsears@google.com> Revert "Clarify geometry management for SurfaceView"

This reverts commit 78a45f2bd8794d7a85e7443820862d466edf2324.

Change-Id: I782f688f52a85df84d9facef2fbf88c28f4a7082
/frameworks/base/core/java/android/view/WindowManager.java
78a45f2bd8794d7a85e7443820862d466edf2324 03-Nov-2015 Robert Carr <racarr@google.com> Clarify geometry management for SurfaceView

In the hardware accelerated case, RenderThread needs
to be the authority of information on the geometry of
the SurfaceView (this will occur via moving the
repositionWindow call to RenderThread). In order
to support this we have to enable calling relayoutWindow
without geometry (so that it will not fight with
repositionWindow). Add such a mode to relayoutWindow
and use it from SurfaceView. Add size to repositionChild
while we are here.

Change-Id: I12f85f586a38bf86367f3d964cb49f19003d441f
/frameworks/base/core/java/android/view/WindowManager.java
466f3216505bd039a285881e06ead631331fe368 22-Sep-2015 Filip Gruszczynski <gruszczy@google.com> Showing docked stack divider window.

When there is docked stack, we want to show a "handle" through which the
user will resize the docked stack. We add it from the system process,
because we want to avoid IPC calls.

Change-Id: If15fd2a0fcb7077446d1ba6c533acb3028a42039
/frameworks/base/core/java/android/view/WindowManager.java
3540f936547fb5ce7b70dc7c60b7d8ffe0ce33c7 02-Jun-2015 Wale Ogunwale <ogunwale@google.com> @hide TYPE_APPLICATION_ABOVE_SUB_PANEL window type.

Bug: 21572285
Change-Id: Iff56a8ee5b91e02bd20afb7891bd94a0ec1abba9
/frameworks/base/core/java/android/view/WindowManager.java
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/core/java/android/view/WindowManager.java
b3b9eb3cfc5b3b3609a5d01258315798b38a5cf9 12-May-2015 P.Y. Laligand <pylaligand@google.com> DO NOT MERGE - Display mode switches.

Knowledge of the various modes of a display is now available to apps, and they can request a specific mode for their windows.

b/18241736

Change-Id: I8eb16ff713e878512faca3ca6662254f08a9be7f
(cherry picked from commit 5c7773d86484aac5737667c604bd8fe8150c2136)
/frameworks/base/core/java/android/view/WindowManager.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
0d857b9028f2702ce439e13feccde8182d40e1e5 22-Apr-2015 Siva Velusamy <vsiva@google.com> Improve hierarchy viewer dump hierarchy latency

Hierarchy Viewer obtains the properties for each view by using
reflection and looking for fields and methods that have the
@ExportedProperty annotation. Using reflection made it quite slow
for large view hierarchies.

This CL adds a new method (encode) to each class that wishes to
export data to hiererachy viewer. Inside this method, the object
can write a sequence of key, value pairs corresponding to the
values it wants exported.

With this change, the dump hierarchy operation that used to take
more than 10 seconds can be performed in a few hundred milliseconds.

Change-Id: I199ac2e7ca3c59ebcfec7e6bd201e134c41fd583
/frameworks/base/core/java/android/view/WindowManager.java
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/core/java/android/view/WindowManager.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/core/java/android/view/WindowManager.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/core/java/android/view/WindowManager.java
1109006158630c02784a8cf93675c0e14722c27b 16-Mar-2015 Andreas Gampe <agampe@google.com> resolved conflicts for merge of 038b8462 to master

Change-Id: I394b152c3cfe8368e87fc4bc57566b410c96b554
007cfa73b867a57458af415bc683bc56358a8049 15-Mar-2015 Andreas Gampe <agampe@google.com> Frameworks/base: Fix always-false equals

Rect != Insets.

Change-Id: I3d4ff890608e446b51f09a1b633af742f0c069d4
/frameworks/base/core/java/android/view/WindowManager.java
a7e8717eb4622fdbef2811a6e6f55ac78ef2c55c 06-Feb-2015 Bryce Lee <brycelee@google.com> am 53b9fbd1: Expose userActivityTimeout through @SystemApi getter/setter.
automerge: 2820911

* commit '28209111cc74e05fb6caa3d5b1756e57639247a4':
Expose userActivityTimeout through @SystemApi getter/setter.
53b9fbd1610b6d3deb837dab34fd309d515f6385 06-Feb-2015 Bryce Lee <brycelee@google.com> Expose userActivityTimeout through @SystemApi getter/setter.

This reverts commit 0dad5720902fad041bc8e2221953aab6dd1d2d8f.
System api documentation is not updated under PDK builds.

Change-Id: I851bcd66e0b764265e69ac104d5604bf316d5d10
/frameworks/base/core/java/android/view/WindowManager.java
404a1327e9408cc36c6ca4b6e03ee2edd8286e87 06-Feb-2015 Bryce Lee <brycelee@google.com> am 13c70441: Merge "Revert "Expose userActivityTimeout through @SystemApi getter/setter."" into lmp-mr1-modular-dev
automerge: a20e430

* commit 'a20e430d0ab8c65e392491b6d299a821c4bed50e':
Revert "Expose userActivityTimeout through @SystemApi getter/setter."
0dad5720902fad041bc8e2221953aab6dd1d2d8f 06-Feb-2015 Bryce Lee <brycelee@google.com> Revert "Expose userActivityTimeout through @SystemApi getter/setter."

This reverts commit 40a0ee65f269cffa7d3fb0646bd987a69df5c2d0.

Change-Id: Ida1a40db25643f97e82d517bcf147f23e4a3a0fe
/frameworks/base/core/java/android/view/WindowManager.java
9cd324d158083bf388783afe471f30b255a30fae 06-Feb-2015 Bryce Lee <brycelee@google.com> am 4cccd58e: Merge "Expose userActivityTimeout through @SystemApi getter/setter." into lmp-mr1-modular-dev
automerge: 7b5f9cd

* commit '7b5f9cde6ac6d949d0227eb47aa2c5de4aea71d9':
Expose userActivityTimeout through @SystemApi getter/setter.
40a0ee65f269cffa7d3fb0646bd987a69df5c2d0 02-Feb-2015 Bryce Lee <brycelee@google.com> Expose userActivityTimeout through @SystemApi getter/setter.

This change will make it accessible to unbundled wear home.

Bug: 18721755
Change-Id: I0634dbc5d8d8ebe25e45af0a1b1186fda5254dd5
/frameworks/base/core/java/android/view/WindowManager.java
b59041595b08a7aca8d425fc6e6b16583a275f12 30-Jan-2015 Alan Viverette <alanv@google.com> Merge "Add transition support to PopupWindow"
5435a30ae552391f14009c4459731ae149675b18 29-Jan-2015 Alan Viverette <alanv@google.com> Add transition support to PopupWindow

Allows framework-added windows to manually specify surface insets, which
enables us to wrap the popup window's elevated content view with a root
view, which in turn allows us to use the Transition API for popup window
transitions.

Fixes a bug where the root view's render node forced clipping.

Bug: 13211166
Change-Id: I303dfa55a052cdf5d3b1485422529123e3cc867a
/frameworks/base/core/java/android/view/WindowManager.java
165be0c70d128f0ece876d54e1c7e95ef04c6960 28-Jan-2015 Craig Mautner <cmautner@google.com> Remove TYPE_UNIVERSE_BACKGROUND from system

An experiment that is over and has been occupying space.

Fixes bug 18088522 item #7

Change-Id: Ib0fcaa24243ed9b0581143e1d5114c1fd2b0aa6e
/frameworks/base/core/java/android/view/WindowManager.java
26af8c197c17487ac0400a7a3310037e57eda2a0 05-Dec-2014 Filip Gruszczynski <gruszczy@google.com> am 26b18771: Merge "Private Window flag to disable touch events in WallpaperService." into lmp-sprout-dev

* commit '26b187711fdf6224e14df465a58f30f510011b49':
Private Window flag to disable touch events in WallpaperService.
b8c0694ae883b0e14beab97c947a7c121c64dda6 05-Dec-2014 Filip Gruszczynski <gruszczy@google.com> Private Window flag to disable touch events in WallpaperService.

Change-Id: I18b46340f89cbea0b6daeb1efe9c31656f4e1a5d
/frameworks/base/core/java/android/view/WindowManager.java
3aa1ffbc75e39b8e53b64256775ea917ca0c6bee 30-Oct-2014 Alan Viverette <alanv@google.com> Fix inset check in ThreadedRenderer

BUG: 17729606
Change-Id: I9303a788968b424fd8ca27fe4bb99bab51ec34a7
/frameworks/base/core/java/android/view/WindowManager.java
bd6fabe2ae535cf5d31fc7a1952e43ad6e653e2e 24-Oct-2014 Svetoslav <svetoslavganov@google.com> Merge "APIs for an accessibility service to put interaction tracking overlays." into lmp-mr1-dev
3a5c721072c60c7ed9c8a95d0a65d0e3cb4eb9bb 14-Oct-2014 Svetoslav <svetoslavganov@google.com> 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
/frameworks/base/core/java/android/view/WindowManager.java
393b1c1e88cbdd0f65c8f217c495dbbe8de9125d 19-Oct-2014 Wale Ogunwale <ogunwale@google.com> 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
/frameworks/base/core/java/android/view/WindowManager.java
9a64513c7fccc2a9cf331a384906a7669b29b3f4 08-Oct-2014 Adrian Roos <roosa@google.com> Retire RecentApplicationsDialog

Bug: 5162991
Change-Id: I429da977502f33e2091496f3a075b2c507a88e1f
/frameworks/base/core/java/android/view/WindowManager.java
61375a8bb5e112d4e79ee4240699ffe7e3f4c8e5 18-Sep-2014 John Reck <jreck@google.com> Revert "Make starting window hw-accelerated"

Bug: 17516789

This change corresponds to a sudden influx of bad surface crashes.
Reverting to see if stability returns as this was an optimization
CL

This reverts commit 29ff1bc57ac2c995c56f15ed6e56e5fb247b2a44.

Change-Id: I7835e89017161d94ad05fe46d81bd437c3dae3a7
/frameworks/base/core/java/android/view/WindowManager.java
4f52b3420684e85252a7341d906e47145855b6ec 11-Sep-2014 Chet Haase <chet@google.com> Make starting window hw-accelerated

An earlier fix in L disabled hw acceleration for the starting window
after the system process became hw accelerated. This was done to preserve
the old behavior of the starting window having some default behavior
(in particular, being filled with a default color). However, this ends up
being a memory and performance problem on some platforms (memory because
some platforms have backing store for software surfaces, performance
because it takes far longer to create a screen-size software surface than
a hardware surface).

The fix is to allow the starting window to inherit the hw acceleration
behavior of its process, and to detect when we are drawing the contents
of that starting window and to fill it with a default color (black).

Issue #17443449 use hardware rendering for app preview window

Change-Id: I8be8111d9e38c51fbbc07185acca065815ce26dc
/frameworks/base/core/java/android/view/WindowManager.java
3f145a2f958320766ae9240c7a57debc20d578aa 23-Jul-2014 Michael Wright <michaelwr@google.com> Add supported refresh rate to displays

Change-Id: I51231dd6dd231d57dd1ac499349d6335121f07d5
/frameworks/base/core/java/android/view/WindowManager.java
4597e9806948256e82b9f1cdaa7019cbbd912668 29-Jul-2014 Jon Miranda <jonmiranda@google.com> Exposed getLocationOnScreen, added formatToHexString method.

In order to use the ExportedProperty annotation, I needed a public non-void
method which is why I created a new "public int[] getLocationOnScreen()."

The formatToHexString method is used to convert an int or byte to a hex string
prefixed with "0x". I set the value to true on these flags: mGravity,
mPrivateFlags, mSystemUiVisibility, mViewFlags, mGroupFlags, mMarginFlags,
and flags.

Change-Id: I5914992ba19b80643dfcc6caa487398452e18cbc
/frameworks/base/core/java/android/view/WindowManager.java
e411fdfa4c131cfd1cac14e9e1be1ae9e40cc2a5 28-Jul-2014 Jorim Jaggi <jjaggi@google.com> Remove WindowManager.LayoutParams.TYPE_KEYGUARD (1/2)

Change-Id: I5d234dc4383bbf205bde1a0e7f1e8266fc37d13a
/frameworks/base/core/java/android/view/WindowManager.java
49a22e82025ea947d81681a0abb7ef00600eac3b 13-Jul-2014 Alan Viverette <alanv@google.com> Add window elevation for dialogs, clean up surface insets API

BUG: 13211941
Change-Id: I9d605d0b2fb24f9bf8e73fbecd520b6b52ae5751
/frameworks/base/core/java/android/view/WindowManager.java
ccb11e183763db5cbaca96abe461adf480ed8e44 09-Jul-2014 Alan Viverette <alanv@google.com> Add API for specifying popup window shadows and shadow insets

BUG: 14569120
BUG: 13211941

Change-Id: Ia21596b25a0471344d42d59377074f67fce00042
/frameworks/base/core/java/android/view/WindowManager.java
e30e02f5d9a9141c9ee70c712d4f9d52c88ea969 28-May-2014 Dianne Hackborn <hackbod@google.com> Add system layer for voice interaction services.

New window layer that voice interaction service windows
go in to. Includes a new voice-specific content rectangle
that voice activities are placed in to.

Add specific animations for this layer, sliding down from
the top (though this can be customized by the voice interaction
service).

Also add the concept of activities running for voice interaction
services for purposes of adjusting the animation used for them,
again sliding from the top, but not (yet?) customizable by the
voice interaction service.

Change-Id: Ic9e0e8c843c2e2972d6abb4087dce0019326155d
/frameworks/base/core/java/android/view/WindowManager.java
217ccd2f82031f05d111bce7308a65136f278c7a 09-May-2014 Adrian Roos <roosa@google.com> Add System UI Color API

Bug: 14564488
Change-Id: Ibebe87faeb1b730f9ac33bb5074a7b4f71b9d1c7
/frameworks/base/core/java/android/view/WindowManager.java
858737d08d9a2db7ef230a17975cd4ded709c3c5 11-Apr-2014 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 4e5c089e to master-lockscreen-dev

Change-Id: I456ff6be1e39b65f3e0efeb7fb1924e71d11f6b1
037c33eae74bee2774897d969d48947f9abe254f 09-Apr-2014 Jeff Brown <jeffbrown@google.com> Plumb display power state through display manager.

Declare a new method, Display.getState() to retrieve the actual
power state of a display.

Improved documentation for Intent.ACTION_SCREEN_ON and
Intent.ACTION_SCREEN_OFF to clarify what they really mean in
terms of the interactive state of the device.

Deprecated PowerManager.isScreenOn() and replaced it with
PowerManager.isInteractive() with a more suggestive name and
better documentation.

Redirect display power state changes to go through the display
manager first and only then head over to the power manager for
legacy compatibility.

Eliminated the bright here and woke here policy flags since they
were unused. Simplified the input dispatch policy somewhat.

Ensure that screen wake locks are respected up until the point
when dozing really begins.

Fixed a regression in DreamService where onDreamingStarted
might be called before onWindowAttached.

Bug: 13133142
Bug: 13472578
Bug: 13929355
Bug: 13760290
Change-Id: Iabef96921dd554ce3768fb18619cefc3230b5fb0
/frameworks/base/core/java/android/view/WindowManager.java
380ecb81db52a9d0197ca969951d07b91c20d2b9 14-Mar-2014 Jorim Jaggi <jjaggi@google.com> Make Keyguard a library and make StatusBar the new Keyguard.

This change achieves a couple of things:
- Let Keyguard be a library, so we can use it in SystemUI.
- Introduce FLAG_KEYGUARD for windows and deprecate TYPE_KEYGUARD. Make
all the TYPE_KEYGUARD behaviour dependant on the flag.
- Implement a new KeyguardService in SystemUI, and bind that service
from PhoneWindowManager.
- Introduce BaseStatusBar.setKeyguardState and inflate
KeyguardSimpleHostView there and use FLAG_KEYGUARD for the window, such
that the status bar window essentially gets the Keyguard.

Bug: 13635952
Change-Id: I059d80d8b9b9818a778ab685f4672ea2694def63
/frameworks/base/core/java/android/view/WindowManager.java
475e3f0e887cd23d3107acc06d29d440c60fbecf 17-Mar-2014 Wonsik Kim <wonsik@google.com> Revert "VideoPlaneView initial implementation"

This reverts commit 5f8aa4142919b3001fd2621f7acd5f609a5129a5.

Change-Id: I161748f365512c5e24acba2c3d9ebd9405fa8e3f
/frameworks/base/core/java/android/view/WindowManager.java
ca4d040342a70d42d6dd6f15361931c054275804 04-Dec-2013 John Spurlock <jspurlock@google.com> Volume panel should not clear system ui flags.

Remove private WM flag (used only by the volume panel) to force
the clearable system UI flags clear.

Instead, always lay out the volume panel as if the bars are visible,
as we do for system dialogs - and don't clear the flags.

Reverts part of I25f29af5b6518aba695b64a75977ae240b742118

Bug:11986621
Change-Id: I842729d729d2a6eb2a687d0b930ddb160c6a1b57
/frameworks/base/core/java/android/view/WindowManager.java
5f8aa4142919b3001fd2621f7acd5f609a5129a5 18-Feb-2014 Wonsik Kim <wonsik@google.com> VideoPlaneView initial implementation

Note that eventually VideoPlaneView should not inherit from SurfaceView.

Remove a few trailing spaces too.

Change-Id: Ia0a461169d560435a827861be2cc15f1e3ee68fa
/frameworks/base/core/java/android/view/WindowManager.java
414c1f0e861dead042689827aa1fbbd205f36d41 04-Dec-2013 John Spurlock <jspurlock@google.com> Volume panel should not clear system ui flags.

Remove private WM flag (used only by the volume panel) to force
the clearable system UI flags clear.

Instead, always lay out the volume panel as if the bars are visible,
as we do for system dialogs - and don't clear the flags.

Reverts part of I25f29af5b6518aba695b64a75977ae240b742118

Bug:11986621
Change-Id: I842729d729d2a6eb2a687d0b930ddb160c6a1b57
/frameworks/base/core/java/android/view/WindowManager.java
3f7cd517aace5ca418a2e5c6bc7a33238a54597b 07-Oct-2013 John Spurlock <jspurlock@google.com> Fix transparent -> translucent reference in private docs.

Bug:10781433
Change-Id: I9e71b38df3909c367c80a9a589d28f703d1c9936
/frameworks/base/core/java/android/view/WindowManager.java
bd95740648372449a4d5c164d7050eee352d4c24 03-Oct-2013 John Spurlock <jspurlock@google.com> Transparent system ui flags -> Translucent WM flags.

Migrate View.SYSTEM_UI_FLAG_TRANSPARENT_(STATUS/NAVIGATION) to
WindowManager.LayoutParams.FLAG_TRANSLUCENT_(STATUS|NAVIGATION).

Add associated public attrs for both new window flags:
windowTranslucentStatus
windowTranslucentNavigation

Introduce convenient four new themes that set translucent decor:
Theme.Holo.NoActionBar.TranslucentDecor
Theme.Holo.Light.NoActionBar.TranslucentDecor
Theme.DeviceDefault.NoActionBar.TranslucentDecor
Theme.DeviceDefault.Light.NoActionBar.TranslucentDecor

Update PhoneWindowManager mechanism to plumb these values back to
SystemUI to drive bar mode state.

The new translucent flags come from the top fullscreen window, not
the focused window, so translucency does not change when opening
dialogs.

Imply some window-level system-ui visibility if one or both of these
new flags are present, specifically:
FLAG_TRANSLUCENT_STATUS implies LAYOUT_STABLE, LAYOUT_FULLSCREEN
FLAG_TRANSLUCENT_NAVIGATION implies LAYOUT STABLE, LAYOUT_HIDE_NAV

Rename all associated variable & resource names to use the term
translucent instead of transparent. (Retain the term semi-transparent
for the transient bar style).

Recents activity allowed to inherit translucent decor state via the
new PRIVATE_FLAG_INHERIT_TRANSLUCENT_DECOR. Compensating changes
to use the full screen area more appropriately.

Update keyguard to use new WM flags.

Update docs and various api artifacts.

Sanity-check fixes:
- Toasts and alerts given stable layout.
- Suppress nu-gradient when in transient (hidey) mode.
- New translucent flags use top-fullscreen window, dialogs don't clear.

Bug:10674960
Bug:11062108
Bug:10987178
Bug:10786445
Bug:10781433
Change-Id: If667a55bea4cf5e008549524b9899197fab55ebe
/frameworks/base/core/java/android/view/WindowManager.java
95c42974f719d1fac90fc0438eac778e9795681f 02-Oct-2013 Adam Lesinski <adamlesinski@google.com> Private flags are masked in correct variable

Newly added private flags were being masked in the public flag variable
as opposed to the correct privateFlags variable.

bug:11033280
bug:11043194
Change-Id: Idda3a70a083457f3f1b7d4b46d231f4a7e704cf0
/frameworks/base/core/java/android/view/WindowManager.java
6a591f585909415a1da431a2cc76b7732724037d 02-Oct-2013 Adam Lesinski <adamlesinski@google.com> Make room for new public flags

Moved two hidden flags to private

bug:11033280
Change-Id: Icca867b073aff643eefdaf84df68de86bb6b05ac
/frameworks/base/core/java/android/view/WindowManager.java
30f420fd6a74ffa28b351b4aba74d44f5ea48dda 02-Aug-2013 keunyoung <keunyoung@google.com> add local focus mode and input event injection API to Window

- This enables keyboard navigation for window without focus.
- FLAG_LOCAL_FOCUS_MODE puts window into local focus mode.
- Application needs to put window in local focus mode, control focus, and
inject events to make dpad navigation work.
- Window in local focus mode does not interact with window manager or ime
regarding focus related events.
- Also renamed ViewRootImpl.dispatchKey to dispatchInputEvent to allow both key and touch events injection.

Change-Id: I8e8561f29e0dade3797fb7ae3ee7690e6b7f8895
/frameworks/base/core/java/android/view/WindowManager.java
e3d2cc8fcc4ab3df195071acf2f8709c148656f8 13-Jul-2013 keunyoung <keunyoung@google.com> fix build

Change-Id: Ife4a1e33df2e4a71edba7b29844a06138103440d
/frameworks/base/core/java/android/view/WindowManager.java
a446bf0e8c7b5f5441aeb11b359ba6776b9b3061 22-Jun-2013 keunyoung <keunyoung@google.com> add TYPE_PRIVATE_PRESENTATION window type

- This window type can be used for Presentation created on top of virtual
private display.
- There can be PRIVATE_PRESENTATION specific policy / behavior, but for now,
there is nothing special.

Change-Id: I9fde0f0376e57fcc60000d3a3f8657a21ef58993
/frameworks/base/core/java/android/view/WindowManager.java
b713a15f099bec6ce70c4e09d853ec2d8b085c0a 01-May-2013 Chet Haase <chet@google.com> am 8afd195d: am 6b313da0: Merge "Clarify behavior of fullscreen mode and softInputMode\'s adjustResize" into jb-mr2-dev

* commit '8afd195d47d2813822a388fbd0ea69228deafcf0':
Clarify behavior of fullscreen mode and softInputMode's adjustResize
45c89c2fadeb0324a6ad34c955f9ae998182134b 30-Apr-2013 Chet Haase <chet@google.com> Clarify behavior of fullscreen mode and softInputMode's adjustResize

Fullscreen window's will not resize when the keyboard comes on screen,
regardless of the setting of the window's softInputMode field. This fix
clarifies the docs to make this behavior more obvious.

Issue #8754615 Clarify behavior of adjustResize and fullscreen interaction

Change-Id: Ie056db4e328cefaf0edb54fe8cfa7a08f320c8d0
/frameworks/base/core/java/android/view/WindowManager.java
570e07c7906943d7afa34af2aed1b37cf4bdbf78 19-Apr-2013 Craig Mautner <cmautner@google.com> am 0cf469f2: am c1876b25: Merge "Improve javadoc for rotationAnimation." into jb-mr2-dev

* commit '0cf469f21a3df42c204d9569f3d5fe465331b59d':
Improve javadoc for rotationAnimation.
c1876b256cff17ebf33e32c5a0cdaaeb7d8be2ec 19-Apr-2013 Craig Mautner <cmautner@google.com> Merge "Improve javadoc for rotationAnimation." into jb-mr2-dev
bdcc9a5811f9a037a3c4145b7469380d2dfe214b 19-Apr-2013 Craig Mautner <cmautner@google.com> Improve javadoc for rotationAnimation.

Clarified use of rotationAnimation. Did not add a comment
for ROTATION_ANIMATION_CHANGED as that would be inconsistent
with the other twelve <parameter>_CHANGED flags that it
follows in the source code.

Fixes bug 8657715.

Change-Id: I03b5caf3d6a93ca0044f58485c94c7a600e835a8
/frameworks/base/core/java/android/view/WindowManager.java
11915d14d7a8469e40c4264449321cb3ee6c79f6 19-Apr-2013 Ying Wang <wangying@google.com> am 9454a9b3: am 4e0eb22f: Fix doc build.

* commit '9454a9b3037dfdd172e08d621a23df182bf942b4':
Fix doc build.
4e0eb22fdf56b8f3fd1bff09c4064b35b80751c1 19-Apr-2013 Ying Wang <wangying@google.com> Fix doc build.

Change-Id: Ibf0d998721a2851c31529d5b44bf86b1b3df5791
/frameworks/base/core/java/android/view/WindowManager.java
11dfb30c2f1a5d1718310d714c1f2dc3ba81ca20 16-Apr-2013 Dianne Hackborn <hackbod@google.com> am f5cfab41: am a59a19ab: Merge "Fix issue #8512015: VideoView\'s window animates when its position changes" into jb-mr2-dev

* commit 'f5cfab41c3ea1eb0cd99f7a9387af7df2b2e5991':
Fix issue #8512015: VideoView's window animates when its position changes
1c5383ce0b4e162ebc9ac7e29c8c39377724d45b 16-Apr-2013 Dianne Hackborn <hackbod@google.com> Fix issue #8512015: VideoView's window animates when its position changes

Change-Id: I79eee6b9672b7d72eabe5d20be639c05a6f3d72b
/frameworks/base/core/java/android/view/WindowManager.java
ca497d39220f50dd2303f79045ce9c094151fe5d 14-Mar-2013 John Spurlock <jspurlock@google.com> am 356bbd1c: am ac3dfb38: Merge "WindowManager.LayoutParams docs cleanup." into jb-mr2-dev

* commit '356bbd1c6046845ebb5f7c8377f5726eb4a1ff0f':
WindowManager.LayoutParams docs cleanup.
33291d8d71278a2f0770018c977ff2626f71e2dc 13-Mar-2013 John Spurlock <jspurlock@google.com> WindowManager.LayoutParams docs cleanup.

Fix a few things found in our "Constants" section.
- Close unclosed links.
- Avoid periods inside parens for summary sentences.
- Lowercasing in a few places for consistency.

Change-Id: I9aa689fd980b373614dae7c4f8257e0786d2340a
/frameworks/base/core/java/android/view/WindowManager.java
5ecd81154fa039961f65bb4e36d18ac555b0d1d6 10-Jan-2013 Jim Miller <jaggies@google.com> Move keyguard to its own process.

This is in preparation to moving keyguard into its own process.

Moved keyguard source and resources into new .apk.

Got basic test app working. Still need to implement MockPatternUtils
and means to pass it into KeyguardService with local binder interface.

Added new ACCESS_KEYGUARD_SECURE_STORAGE permission.

Temporarily disabled USER_PRESENT broadcast.

Remove unintentional whitespace changes in PhoneWindowManager, etc.

Checkpoint basic working version.

Move to systemui process.

Synchronize with TOT.

Sync with recent user API changes.

Fix bug with returing interface instead of stub for IKeyguardResult. Create KeyguardServiceDelegate to allow
for runtime-selectable local or remote interface.

More keyguard crash robustness.

Keyguard crash recovery working. Currently fails safe (locked).

Fix selector view which was still using frameworks resources.

Remove more references to internal framework variables. Use aliases for those we should move but
currently have dependencies.

Allow runtime switching between service and local mode.

Fix layout issue on tablets where orientation was reading the incorrect constant
from the framework. Remove more framework dependencies.

Fix PIN keyboard input.

Remove unnecessary copy of orientation attrs.

Remove unused user selector widget and attempt to get multi user working again.

Fix multi-user avatar icon by grabbing it from UserManager rather than directly since
keyguard can no longer read it.

Merge with AppWidget userId changes in master.

Change-Id: I254d6fc6423ae40f6d7fef50aead4caa701e5ad2
/frameworks/base/core/java/android/view/WindowManager.java
1bf1af60a3ec3da69aafbe1fe93c17312cb3e00e 26-Feb-2013 Dianne Hackborn <hackbod@google.com> Add documentation for overscan flag.

Change-Id: Ibed06f23b2011a66021344384150e9d4ba6e61ed
/frameworks/base/core/java/android/view/WindowManager.java
3c1743705c4df816089e07a17753c6043b4d8e66 22-Feb-2013 Craig Mautner <cmautner@google.com> Create rotation animation modes.

Allow fullscreen windows to specify crossfade or jumpcut animations
that override the default rotation animation. Only if the incoming
and outgoing topmost windows are fullscreen and both specify the
same animation to use.

Fixes bug 8182773.

Change-Id: I6b3c0020d7bd2cdfba5c66189e114ec62cd54fcf
/frameworks/base/core/java/android/view/WindowManager.java
c652de8141f5b8e3c6bcf8916842b6e106413b1a 16-Feb-2013 Dianne Hackborn <hackbod@google.com> Implement display overscan support.

The window manager now keeps track of the overscan of
each display, with an API to set it. The overscan impacts
how it positions windows in the display. There is a new set
of APIs for windows to say they would like to go into the
overscan region. There is a call into the window manager to
set the overscan region for a display, and it now has a
concept of display settings that it stores presistently.

Also added a new "wm" command, moving the window manager
specific commands from the "am" command to there and adding
a new now to set the overscan region.

Change-Id: Id2c8092db64fd0a982274fedac7658d82f30f9ff
/frameworks/base/core/java/android/view/WindowManager.java
891d3fbb15683e72432af16e571f41f566d5fdf0 10-Jan-2013 Dianne Hackborn <hackbod@google.com> Fix issue #7966357: Super lights out mode vs. volume dialog

The volume panel now forces us out of the UI modes while it
is up.

Change-Id: I25f29af5b6518aba695b64a75977ae240b742118
/frameworks/base/core/java/android/view/WindowManager.java
f0681b34dffc1510cbd9c3da5c3a7e695553fa8d 24-Oct-2012 Jeff Brown <jeffbrown@google.com> Secure windows, secure surface views and secure displays.

Add new API to determine whether a display is secure.
Add new API to make a SurfaceView secure.
Clarify documentation.

Bug: 7368436
Change-Id: I7068c34c910e43b4bc72e43fa0dded59a25f0fe2
/frameworks/base/core/java/android/view/WindowManager.java
6018aeec27914f138f36b00d8f00136a87562fd3 23-Oct-2012 Craig Mautner <cmautner@google.com> Add throwing InvalidDisplayException from addView.

Throw an InvalidDisplayException to addView if the display being
added to has been removed. Handle this exception in Dialog.show()
by removing the view after it has been added and rethrow the
exception from there.

Add javadoc to ViewManager.addView and Presentation.show explaining
the new exception and how best to handle it.

Bug: 7368565 partially fixed. It remains for the Videos app to
handle Presentation.show throwing the InvalidDisplayException.

Change-Id: Ib4303c9b3f7bf7a0cfa95d19bd60a0c128658c48
/frameworks/base/core/java/android/view/WindowManager.java
5962b12bedc4a1d0354816c1cd6b06ba04f6d807 05-Oct-2012 Craig Mautner <cmautner@google.com> Adds showWhenLocked attribute to Activities.

The new attribute allows an Activity such as the alarm to appear
on all users screens.

Bug: 7213805 fixed.
Change-Id: If7866b13d88c04af07debc69e0e875d0adc6050a
/frameworks/base/core/java/android/view/WindowManager.java
88400d3a31139c40c4014faf86c243647087ef6c 30-Sep-2012 Craig Mautner <cmautner@google.com> Add flag for displaying non-user's Windows to user.

Created a new flag that indicates that a window should be shown
to all users. For the flag to be valid the owner of the window
must have system permissions.

Also separated system window types into those that show to all
users (e.g. StatusBar, Keyguard, ....) and those that appear only
to the owning users (e.g. Drag, ANR, TOAST, ...). Those that appear
only to their owner can override their default behavior using
the new flag (e.g. LowBattery).

Fixes bug 7211965.

Change-Id: I1fdca25d57b7b523f0c7f8bceb819af656c388d4
/frameworks/base/core/java/android/view/WindowManager.java
1e3b98d47df596d0c4eadbdf60143709f8465b28 01-Oct-2012 Jeff Brown <jeffbrown@google.com> New internal API to eliminate poke locks.

Added a new WindowManager.LayoutParams inputFeatures flag
to disable automatic user activity behavior when an input
event is sent to a window.

Added a new WindowManager.LayoutParams field userActivityTimeout.

Bug: 7165399
Change-Id: I204eafa37ef26aacc2c52a1ba1ecce1eebb0e0d9
/frameworks/base/core/java/android/view/WindowManager.java
1cf70bbf96930662cab0e699d70b62865766ff52 06-Aug-2012 Svetoslav Ganov <svetoslavganov@google.com> Screen magnification - feature - framework.

This change is the initial check in of the screen magnification
feature. This feature enables magnification of the screen via
global gestures (assuming it has been enabled from settings)
to allow a low vision user to efficiently use an Android device.

Interaction model:

1. Triple tap toggles permanent screen magnification which is magnifying
the area around the location of the triple tap. One can think of the
location of the triple tap as the center of the magnified viewport.
For example, a triple tap when not magnified would magnify the screen
and leave it in a magnified state. A triple tapping when magnified would
clear magnification and leave the screen in a not magnified state.

2. Triple tap and hold would magnify the screen if not magnified and enable
viewport dragging mode until the finger goes up. One can think of this
mode as a way to move the magnified viewport since the area around the
moving finger will be magnified to fit the screen. For example, if the
screen was not magnified and the user triple taps and holds the screen
would magnify and the viewport will follow the user's finger. When the
finger goes up the screen will clear zoom out. If the same user interaction
is performed when the screen is magnified, the viewport movement will
be the same but when the finger goes up the screen will stay magnified.
In other words, the initial magnified state is sticky.

3. Pinching with any number of additional fingers when viewport dragging
is enabled, i.e. the user triple tapped and holds, would adjust the
magnification scale which will become the current default magnification
scale. The next time the user magnifies the same magnification scale
would be used.

4. When in a permanent magnified state the user can use two or more fingers
to pan the viewport. Note that in this mode the content is panned as
opposed to the viewport dragging mode in which the viewport is moved.

5. When in a permanent magnified state the user can use three or more
fingers to change the magnification scale which will become the current
default magnification scale. The next time the user magnifies the same
magnification scale would be used.

6. The magnification scale will be persisted in settings and in the cloud.

Note: Since two fingers are used to pan the content in a permanently magnified
state no other two finger gestures in touch exploration or applications
will work unless the uses zooms out to normal state where all gestures
works as expected. This is an intentional tradeoff to allow efficient
panning since in a permanently magnified state this would be the dominant
action to be performed.

Design:

1. The window manager exposes APIs for setting accessibility transformation
which is a scale and offsets for X and Y axis. The window manager queries
the window policy for which windows will not be magnified. For example,
the IME windows and the navigation bar are not magnified including windows
that are attached to them.

2. The accessibility features such a screen magnification and touch
exploration are now impemented as a sequence of transformations on the
event stream. The accessibility manager service may request each
of these features or both. The behavior of the features is not changed
based on the fact that another one is enabled.

3. The screen magnifier keeps a viewport of the content that is magnified
which is surrounded by a glow in a magnified state. Interactions outside
of the viewport are delegated directly to the application without
interpretation. For example, a triple tap on the letter 'a' of the IME
would type three letters instead of toggling magnified state. The viewport
is updated on screen rotation and on window transitions. For example,
when the IME pops up the viewport shrinks.

4. The glow around the viewport is implemented as a special type of window
that does not take input focus, cannot be touched, is laid out in the
screen coordiates with width and height matching these of the screen.
When the magnified region changes the root view of the window draws the
hightlight but the size of the window does not change - unless a rotation
happens. All changes in the viewport size or showing or hiding it are
animated.

5. The viewport is encapsulated in a class that knows how to show,
hide, and resize the viewport - potentially animating that.
This class uses the new animation framework for animations.

6. The magnification is handled by a magnification controller that
keeps track of the current trnasformation to be applied to the screen
content and the desired such. If these two are not the same it is
responsibility of the magnification controller to reconcile them by
potentially animating the transition from one to the other.

7. A dipslay content observer wathces for winodw transitions, screen
rotations, and when a rectange on the screen has been reqeusted. This
class is responsible for handling interesting state changes such
as changing the viewport bounds on IME pop up or screen rotation,
panning the content to make a requested rectangle visible on the
screen, etc.

8. To implement viewport updates the window manger was updated with APIs
to watch for window transitions and when a rectangle has been requested
on the screen. These APIs are protected by a signature level permission.
Also a parcelable and poolable window info class has been added with
APIs for getting the window info given the window token. This enables
getting some useful information about a window. There APIs are also
signature protected.

bug:6795382

Change-Id: Iec93da8bf6376beebbd4f5167ab7723dc7d9bd00
/frameworks/base/core/java/android/view/WindowManager.java
a492c3a7b2c18426fd0cb4d017eacbc368195dc5 24-Aug-2012 Jeff Brown <jeffbrown@google.com> Initial draft of high-level multi-display APIs.

This patch introduces the ability to create a Context that
is bound to a Display. The context gets its configuration and
metrics from that display and is able to provide a WindowManager
that is bound to the display.

To make it easier to use, we also add a new kind of Dialog
called a Presentation. Presentation takes care of setting
up the context as needed and watches for significant changes
in the display configuration. If the display is removed,
then the presentation simply dismisses itself.

Change-Id: Idc54b4ec84b1ff91505cfb78910cf8cd09696d7d
/frameworks/base/core/java/android/view/WindowManager.java
29d8d267dd97f66d829478778de5e0c56b965a47 30-Aug-2012 Jeff Brown <jeffbrown@google.com> Fix build for some javac compilers.

It seems some compiler versions don't like trailing
commas in attribute lists. Weird.

Change-Id: I3a05f49a2e94f63fe1662d14c1d8a7ee249d8a16
/frameworks/base/core/java/android/view/WindowManager.java
bd6e1500aedc5461e832f69e76341bff0e55fa2b 28-Aug-2012 Jeff Brown <jeffbrown@google.com> Add initial multi-display support.

Split the DisplayManager into two parts. One part is bound
to a Context and takes care of Display compatibility and
caching Display objects on behalf of the Context. The other
part is global and takes care of communicating with the
DisplayManagerService, handling callbacks, and caching
DisplayInfo objects on behalf of the process.

Implemented support for enumerating Displays and getting
callbacks when displays are added, removed or changed.

Elaborated the roles of DisplayManagerService, DisplayAdapter,
and DisplayDevice. We now support having multiple display
adapters registered, each of which can register multiple display
devices and configure them dynamically.

Added an OverlayDisplayAdapter which is used to simulate
secondary displays by means of overlay windows. Different
configurations of overlays can be selected using a new
setting in the Developer Settings panel. The overlays can
be repositioned and resized by the user for convenience.

At the moment, all displays are mirrors of display 0 and
no display transformations are applied. This will be improved
in future patches.

Refactored the way that the window manager creates its threads.
The OverlayDisplayAdapter needs to be able to use hardware
acceleration so it must share the same UI thread as the Keyguard
and window manager policy. We now handle this explicitly as
part of starting up the system server. This puts us in a
better position to consider how we might want to share (or not
share) Loopers among components.

Overlay displays are disabled when in safe mode or in only-core
mode to reduce the number of dependencies started in these modes.

Change-Id: Ic2a661d5448dde01b095ab150697cb6791d69bb5
/frameworks/base/core/java/android/view/WindowManager.java
d32460c5b7bea7b06e345397fdbaca58d9732dcf 21-Jul-2012 Jeff Brown <jeffbrown@google.com> Refactor local window manager implementation.

The objective of this refactoring is to remove the reliance on
WindowManager wrapper objects for compatibility mode and for
managing sub-windows.

Removed the WindowManager.isHardwareAccelerated() method since
it is never used.

Change-Id: I4840a6353121859a5e0c07d5cc307a437c595d63
/frameworks/base/core/java/android/view/WindowManager.java
3cc321ecf505d87850740ad3c63849e6793a8ef6 17-Jul-2012 Jeff Brown <jeffbrown@google.com> Remove dithering support.

The dithering flag is no longer implemented in Surface Flinger
so this is all dead code.

Change-Id: I74c0e452923207e5b7cfe0eeca9457e5cb990947
/frameworks/base/core/java/android/view/WindowManager.java
a4b7f2f75e7803193429ec1179fb5e2eb1c6fbda 21-May-2012 Dianne Hackborn <hackbod@google.com> Use two fingers to work some magic...

Change-Id: Ibcb3dbd3d158c22da8277e544d81fb47eadccd49
/frameworks/base/core/java/android/view/WindowManager.java
aeb7723a123dc09dc4ada55393a6c68858f45b3b 01-Jun-2012 Scott Anderson <saa@android.com> Clean up IntToStrings for window TYPE_*

Remove duplicates and add missing entries for the conversions
from window types to strings.

Change-Id: I4378e1191b156bd0b73ac23bc43bc3bfd1c3f198
Signed-off-by: Scott Anderson <saa@android.com>
/frameworks/base/core/java/android/view/WindowManager.java
bf08af3323117e15a65b74e66b7499d31537f9e1 17-May-2012 Craig Mautner <cmautner@google.com> Eliminate deferred surface destruction.

Removing the code that delays a surface destruction when
WindowManager.FLAG_KEEP_SURFACE_WHILE_ANIMATING is set. The lock
screen that continued to animate after destroySurfaceLocked is no
longer used and this code was causing problems.

Also mDrawState was being set to NO_SURFACE in destroySurfaceLocked
even if the surface ended up not being destroyed. Later when it was
reused the false value of mDrawState was messing things up.

The screen lock bug referenced below no longer levaes the user stuck
with a black lockscreen. However it occasionally powers back up in the
launcher screen rather than the lock screen.

Fixes bug 6485955.

Change-Id: I684104c7e7c39c161a5118aa890889fbae92e635
/frameworks/base/core/java/android/view/WindowManager.java
e898ac59db04d8ab0762180ca8ec7cea1347aa09 07-Apr-2012 Jim Miller <jaggies@google.com> Fix 6299832: Add search target swipe action to navigation bar on phones

This adds a feature to swipe upward on the navigation bar to invoke
voice search on phones.

Change-Id: I462076fd43b1c66c5bf624f00b297c6d3414a19a
/frameworks/base/core/java/android/view/WindowManager.java
7d276c377ce0c56630c06a6da431a6cb9bd76d1e 30-Jan-2012 Daniel Sandler <dsandler@android.com> New Android Dreams architecture, disabled for now.

Rather than normal Activities (which have a host of problems
when used for this purpose), screen savers are now a
special kind of Service that can add views to its own
special window (TYPE_DREAM, in the SCREENSAVER layer).

Dreams are now launched by the power manager; whenever it is
about to turn the screen off, it asks the window manager if
it wants to run a screen saver instead. (http://b/5677408)

Also, the new config_enableDreams bool allows the entire
feature to be switched on or off in one place. It is
currently switched off (and the APIs are all @hidden).

Change-Id: Idfe9d430568471d15f4b463cb70586a899a331f7
/frameworks/base/core/java/android/view/WindowManager.java
f76a50ce8fdc6aea22cabc77b2977a1a15a79630 09-Mar-2012 Ken Wakasa <kwakasa@google.com> Fix obvious typos under frameworks/base/core

Change-Id: Ia5fc3db1bb51824e7523885553be926bcc42d736
/frameworks/base/core/java/android/view/WindowManager.java
73ab6a49db2b834ce1d56c7a1164938b409ee6fc 13-Dec-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5755172: Soft menu key disappears when menu is open

We need to work more like before in determining whether the menu
key is needed -- in some cases look back in the window list to
determine this if we don't know the value from the current window.

This requires adding a new private flag indicating whether the
compat menu state is known for a window, which is set by
PhoneWindow as part of its existing process of computing the flag
for its own windows.

Now we can have a new API on WindowState to determine the value
of this flag for a window, which if needed walks back in the window list
to find a window the value is known for (or stops at what the policy
has determined is the top full-screen window, so we stop like we used
to at things like the lock screen or the bottom of an application).

Change-Id: I829de6d629b5af8bcb422cb85249ee4041c7205e
/frameworks/base/core/java/android/view/WindowManager.java
a8e5a2bcd6a0d35893187c6df42425c03be005da 28-Oct-2011 Chet Haase <chet@google.com> Optimize handling of scrolled wallpapers

Swiping the home screen causes the WindowManagerService to do
a bunch of work to keep the wallpapers in sync. First, it lays out
and places all windows. Also, it notifies the SystemUI process that
the wallpaper position has changed.

The layout/place operation is too much work - we only need to set
the position values for the wallpaper, not relayout the whole system.

The notification mechanism must exist, but should be optional. Most
wallpapers don't care (especially static ImageWallpapers). So we'll
give them a new API (WallpaperService.Engine.setWantsOffsets()) to
allow wallpapers to opt out of this process and avoid the performance
overhead.

Change-Id: I66c38375438937f14f6f5550565b28eb204b1e06
/frameworks/base/core/java/android/view/WindowManager.java
df89e65bf0fcc651d20b208c8d8d0b848fb43418 07-Oct-2011 Dianne Hackborn <hackbod@google.com> Fix how we hide and show the nav bar.

The PhoneWindowManager is now responsible for hiding and showing
the nav bar.

For hiding, it just moves it off the screen (easy way to get a
nice slide animation on and off). At the same time, we use a
new WM facility to put up a fake input window to capture all
touch events.

When a touch event is received, we force the system UI to clear
the navigation hiding bit so it will be shown again.

This removes a bunch of code from the system UI for hiding and
showing the nav bar. Also removes the code calling from userActivity()
to the system UI, which was bad. (Also no longer using userActivity()
fixes bugs around re-showing the nav bar due to key presses and
other wrong things.)

Change-Id: I8c3174873b5bcaa36a92322a51e8f7993e88e551
/frameworks/base/core/java/android/view/WindowManager.java
40e0383dce630ed9b2b1aa0e497709b89dfab6ef 06-Oct-2011 Chet Haase <chet@google.com> Fix issue #5384631: hw windows not resizing correctly

When the SystemUi becomes visible, the activity window resizes.
The hardware renderer was not begin resized to suit, so it was drawing
to a surface larger than that of the activity window, and some of the
rendering (like the action bar) appeared off the screen.

The fix is to keep track of the surface size in HardwareRenderer and to
recreate the surface when the size changes.

This change also removes the BUFFER_CHANGE flag from WindowManager.LayoutParams.
The only reason the flag existed was to trigger a hardware surface recreation,
but checking the old/new size is a more direct way of handling this.

Change-Id: I9d6bf6385794886d1d93c60609c170864cdcdfab
/frameworks/base/core/java/android/view/WindowManager.java
bfcb60ab0f696c8ef70830c365550e62fe2808bf 09-Sep-2011 Jeff Brown <jeffbrown@google.com> 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
/frameworks/base/core/java/android/view/WindowManager.java
f21c9b0f52d5a1de5050f90f0818467fad014eaa 07-Sep-2011 Romain Guy <romainguy@google.com> Don't destroy a window's buffers when moving it

Change-Id: Ib08608373ae4299639c1b157421ba633e4293446
/frameworks/base/core/java/android/view/WindowManager.java
5d927c2d8e832fcfcb0154c8741f896001141ef4 02-Sep-2011 Dianne Hackborn <hackbod@google.com> 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
/frameworks/base/core/java/android/view/WindowManager.java
cc4f7db698f88b633a286d8ab1105b28a474cd09 31-Aug-2011 Jeff Brown <jeffbrown@google.com> 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
/frameworks/base/core/java/android/view/WindowManager.java
29aae6f36e565b8f2a99f2193597b964bb800ee8 19-Aug-2011 Dianne Hackborn <hackbod@google.com> Fix issue #4279860: previous UI flashes before showing lock screen...

...(when turning display on after recently turning it off)

Also clean up when we decide to turn the screen on to improve that
transition. There are still problems here with turning it on
before the wallpaper gets dispayed.

Change-Id: I2bc56c12e5ad75a1ce5a0546f43a845bf0823e66
/frameworks/base/core/java/android/view/WindowManager.java
a44abeb125a0c8a8e5a065f868d316e41354286a 09-Aug-2011 Dianne Hackborn <hackbod@google.com> Improve window manager debug output.

Cleaned this up while I was debugging another issue.

Change-Id: I0663b9ed581c6868b59655a0f994d870971ec1a6
/frameworks/base/core/java/android/view/WindowManager.java
e8ecde10b33b1d050d2b63b3f4cd20e8bb7c96d4 04-Aug-2011 Dianne Hackborn <hackbod@google.com> Whoops also need to move notification shade above lock screen.

And this requires making a new layer for the volume toast.

Change-Id: I4f272d56c87cf3b6bf886774b0fb02e610ab9164
/frameworks/base/core/java/android/view/WindowManager.java
474dcb5c3ddff737c4ac9fc44a1f7be569605e5f 15-Jun-2011 Jeff Brown <jeffbrown@google.com> Add support for disabling pointer gestures.

Made it possible for individual windows to disable pointer gestures
while the window has focus using a private API.

Cleaned up the InputReader configuration code to enable in-place
reconfiguration of input devices without having to reopen them all.
This change makes changing the pointer speed somewhat nicer since the
pointer doesn't jump back to the origin after each change.

Change-Id: I9727419c2f4cb39e16acb4b15fd7fd84526b1239
/frameworks/base/core/java/android/view/WindowManager.java
98db5fabdad86dca379740d8050697950b9f026c 09-Jun-2011 Jeff Brown <jeffbrown@google.com> Allow touches to slide out of the navigation bar.

Change-Id: I73cabba3d62f47829bf6217700ace56a27c42b1d
/frameworks/base/core/java/android/view/WindowManager.java
9e3b002d3f9141d54948a65e0330fdcd09e75a30 07-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Rename Gravity BEFORE/AFTER to START/END

- following spec proposal for having CSS3 like naming

Change-Id: Id5e316a2d9b54b9f20bbcb168fea6a3a83882e1b
/frameworks/base/core/java/android/view/WindowManager.java
6a03640539405afbdefe72894759281b98aa6e6f 23-May-2011 Fabrice Di Meglio <fdimeglio@google.com> Add support for Gravity BEFORE and AFTER

- update layouts
- add Callback2 for RTL aware Drawable
- add unit tests

Change-Id: Ic64d0291e262170aff7297c6580b0b422eaa8d89
/frameworks/base/core/java/android/view/WindowManager.java
8956dbbc5f292d8b79072ae73b25f2114c8c7479 22-Apr-2011 Daniel Sandler <dsandler@android.com> On-screen navigation bar (separate from the status bar).

In Honeycomb we introduced navigation controls in the status
bar, for xlarge devices without physical buttons. What about
phones? The status bar is pretty cramped already, and
besides, it's at the top of the display most of the time,
not at the bottom where your thumb is likely to be.

Enter the navigation bar. It's a new window type that
appears atop almost everything (including the keyguard); the
window manager subtracts its rectangle from the default
visible rectangle of other windows (including the status bar
and notification shade).

However, it behaves (on phones) like the status bar in that
applications that request fullscreen windows can get access
to those pixels. Well, almost; they need cooperation from
the navigation bar implementation to make the navbar
disappear, just like the status bar.

The current SystemUI implementation of the navigation bar on
phones is still rough, but it has the basics:

+ back, home, and menu keys (NB: we're showing menu all the
time right now because checking the api level of the
package owning the top window is currently a poor
indicator of whether the app requires the menu key)
+ it tries to stick to the same physical end of the device,
regardless of device orientation (on a phone, this is
the strip of land closest to the microphone)

Change-Id: Ic613a3351220af0bbfbdef63e1d99cbefd5ed1c2
/frameworks/base/core/java/android/view/WindowManager.java
3fa8a454f61c772036f5f38661d1a077fd3d8388 10-Mar-2011 Jim Miller <jaggies@google.com> Fix 3201849: Enable hardware acceleration in LockScreen WaveView

Change-Id: Id64e82fe2e09ac231736d7867cd47b504d79b81b
/frameworks/base/core/java/android/view/WindowManager.java
d6f5bde96b2fe82bc7e5d4e64266d585108c4648 20-Jan-2011 Glenn Kasten <gkasten@google.com> Protected surface API

To be used by DRM framework, implemented by display HAL

Change-Id: I054a07a94f4d5dbe792f3a597e2e49a100d90eb2
/frameworks/base/core/java/android/view/WindowManager.java
a4a5ec5e748f99c40301c9c422b3d36cb44c6081 26-Jan-2011 Joe Onorato <joeo@google.com> am 1aadb210: Merge changes I48392c75,Id09437a4,I4a0aa878 into honeycomb

* commit '1aadb2108d7614d9d1ff61b41c6c31cb8d211ab9':
Expose the window flags for lights out mode.
Make TabletStatusBar call into StatusBarManagerService when it goes out of lights out mode on its own.
Make FLAG_FULLSCREEN not go into lights out mode anymore.
14782f705e94d4e563a48efc85fd25129fd38a7d 26-Jan-2011 Joe Onorato <joeo@google.com> Expose the window flags for lights out mode.

I hadn't wanted to do this, but it makes porting the FLAG_FULLSCREEN
stuff over to this simpler because you don't have to go find a view
to proxy through.

This change also clears the flag everywhere when the window manager
notifies the views that the change has come back.

Change-Id: I48392c7550925bcca50c5bb9e1f263e99de6c7bc
/frameworks/base/core/java/android/view/WindowManager.java
faf083ef0b7b893acb871084231d20e08e208f8f 24-Jan-2011 Joe Onorato <joeo@google.com> am 4c541b13: Merge "visibility ("lights out") API." into honeycomb

* commit '4c541b1303b0ee2b9b0d19bee85d3780c5c4c110':
visibility ("lights out") API.
664644d9e012aa2a28ac96f305b1ce6499ec8806 24-Jan-2011 Joe Onorato <joeo@google.com> visibility ("lights out") API.

1. Views may setSystemUiVisibility() to recommend that
the system chrome (status bar or other UI) show or hide
itself. (This functionality was previously available only
via the FLAG_FULLSCREEN window flag for some SystemUI
implementations.)

2. Views may register a OnSystemUiVisibilityChangedListener
on a view, and find out when the system UI actually
appears or disappears, allowing apps to coordinate the
appearance of their own UI if desired.

Bug: 3241144
Change-Id: Ia1758d94099182d49a1e3688ea2738ae4995b829
/frameworks/base/core/java/android/view/WindowManager.java
8a82de2fcae11a2a9cba25132c37cad83ccc859f 21-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> am 4bb180d6: am ded2b006: Merge "frameworks/base: remove redundant code in WindowManager"

* commit '4bb180d62f71658d04a7d6800707de83c10b01a5':
frameworks/base: remove redundant code in WindowManager
be2c4f92a990ca48ad6ede252343dd9574dfe505 18-Jan-2011 Gilles Debunne <debunne@google.com> Race condition patched in Email autocompletion.

Bug 3347962

Root cause of this problem: if the adapter's content gets updated by a backgroung
thread, the PopupDataSetObserver will call showDropDown which will popup the
list.

Added a flag to make this call show the popup iif it is already visible.
This relayout is needed to clear the mDataChanged flag set when the content was
modified and which otherwise prevents touch events on the result list.

ArrayAdapter didn't use its lock to protect access to mObject.

-------------------------------------------------

However, the study of the this race conditions revealed an other bug:

Updated adapter's content is not displayed in filtered AutoCompleteTextView
Bug 3369097

Change-Id: Icd90d452f98231866f4d8a1f6994c1492febecb9
/frameworks/base/core/java/android/view/WindowManager.java
3f6875f143fbaf4de993025f6765dc8237eb2b0b 18-Jan-2011 Vairavan Srinivasan <vairav@codeaurora.org> frameworks/base: remove redundant code in WindowManager

Change-Id: I8a356ca36129645977d33129e0d56c1b89f97fb0
/frameworks/base/core/java/android/view/WindowManager.java
72f0a276ffd5f3d6513400e50de1a8bda547bed4 10-Jan-2011 Romain Guy <romainguy@google.com> Better documentation for FLAG_HARDWARE_ACCELERATED
Bug #3154883

Change-Id: I2062781ba3b447b8ec4e0836b9ddeaa97c7aa60e
/frameworks/base/core/java/android/view/WindowManager.java
83c09685f2e62bc3cf7e71bc61d903f4b9ccaeb4 24-Dec-2010 Jeff Brown <jeffbrown@google.com> Add initial support for cursor-based pointing devices.

Some parts stubbed out but you can plug in a mouse and move
a green cursor around to interact with the UI.

Change-Id: I80d597a7f11d3bd92041890f74b3c77326975e6e
/frameworks/base/core/java/android/view/WindowManager.java
d2112306330ce0c162bee4b864991962ca2b655a 08-Dec-2010 Mathias Agopian <mathias@google.com> remove support for PUSH_BUFFER surfaces and overlays

the same functionality is now supported through
the h/w composer HAL, and YUV support in the GPU.

Change-Id: I8146605449954b8e8fd7f78810b7d873c2d8f5bf
/frameworks/base/core/java/android/view/WindowManager.java
a89e903fd4b84778e1a7f2268fe025fe66a6e45e 24-Nov-2010 Joe Onorato <joeo@google.com> this should be @hidden

Change-Id: Ib372fa15a5284b30e2edef5a1d90544eb2166ee4
/frameworks/base/core/java/android/view/WindowManager.java
29fc2c9705e1bb8ae098fca016032d2325031587 24-Nov-2010 Joe Onorato <joeo@google.com> Allow status bar panels to be on top of the status bar.

Change-Id: I3c74ece5f7042e6302717f4263746d59d5447ec9
/frameworks/base/core/java/android/view/WindowManager.java
8e11ef0d949a52fec15359ec35557b2e773b093d 19-Nov-2010 Dianne Hackborn <hackbod@google.com> Some work on issue #3201795: Improve transition when keyboard comes up

Now try to slide dialogs if they end up moving due to the IME (or
other system things) showing/hiding. Pretty hackish, but seems to
work.

Change-Id: Icd297e941cf847fa920c9605145c46be63043d52
/frameworks/base/core/java/android/view/WindowManager.java
d9b3b7e8e1d8c919c3e5f5851daa80a2651ea7d1 17-Nov-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3202866: system server crash

Change-Id: Ied92164bea70f6cb8afe2c1c6ff4fc3836a209ab
/frameworks/base/core/java/android/view/WindowManager.java
7eec10e6c99c30d5ee061fec08ac89ad4254ac32 13-Nov-2010 Dianne Hackborn <hackbod@google.com> Get rid of the extended themes.

We now decide whether to use a bitmap background based on whether the
window's drawing is hardware accelerated. To do this, there is a new
"state_accelerated" that state list drawables can be parameterized on,
and the standard window background uses this to select a solid color
or bitmap drawable as appropriate.

Introduces a little hackery to have wm preview windows pretend like
they are hardware accelerated even if they aren't, so the preview looks
closer to the actual app.

Also Add a DialogWhenLarge variation for the light theme.

Change-Id: I215a79d5df65ba3eed52ab363cade9d8218a6588
/frameworks/base/core/java/android/view/WindowManager.java
8eb2e244f9b14d946ee587d0b673b866865026c0 01-Nov-2010 Dianne Hackborn <hackbod@google.com> Various PreferenceActivity and related improvement.

This is all about making the preferences implementation better.

Well, mostly all about that.

Change-Id: I8efa98cb5680f3ccfa3ed694a1586de3fb3a9e11
/frameworks/base/core/java/android/view/WindowManager.java
dea3ef7967228f0ddcc03f2455a4f1254758e584 28-Oct-2010 Dianne Hackborn <hackbod@google.com> Add new resize mode to not resize, new web input types.

Change-Id: Ib098c03793d08532c3c099b59d0cc6b567e54900
/frameworks/base/core/java/android/view/WindowManager.java
3b2b354ec1ba070eae13391d004d97a3e1403050 15-Oct-2010 Jeff Brown <jeffbrown@google.com> Add support for secure system overlays.

Manual merge from Gingerbread.

This change adds a new window type for secure system overlays
created by the system itself from non-secure system overlays that
might be created by applications that have the system alert permission.
Secure views ignore the presence of secure system overlays.

Bug: 3098519
Change-Id: Id876736fd8bf332ff9a5428bde59f5268aa49c3a
/frameworks/base/core/java/android/view/WindowManager.java
2d3f159aa9622e05a18e7f93cecd57ad673955ae 15-Oct-2010 Jeff Brown <jeffbrown@google.com> Add support for secure system overlays. (DO NOT MERGE)

This change adds a new window type for secure system overlays
created by the system itself from non-secure system overlays that
might be created by applications that have the system alert permission.
Secure views ignore the presence of secure system overlays.

Bug: 3098519
Change-Id: I8f8398f4fdeb0469e5d71124c21bedf121bd8c07
/frameworks/base/core/java/android/view/WindowManager.java
e02d808abf370965c3c4e4d38af11bc69110fde2 08-Oct-2010 Daniel Sandler <dsandler@google.com> Dynamically show the menu button on the system bar.

Windows with FLAG_NEEDS_MENU_KEY (or windowNeedsMenuKey=true
in their theme) will cause the system bar to show a menu
icon. (Note that the phone's status bar currently ignores
this, but phones tend to have hardware menu keys anyway.)

Additionally, all windows whose package's SDK version is
pre-Honeycomb will have FLAG_NEEDS_MENU_KEY set by default.

Bug: 3003728

Change-Id: I2d983763a726ea4f32cd1af9b0390e30478b11d1
/frameworks/base/core/java/android/view/WindowManager.java
a53146c5569f8ff5f7eb55e9ad35d23ddacf2add 07-Sep-2010 Christopher Tate <ctate@google.com> Drag/drop APIs and infrastructure

A View initiates a drag-and-drop operation (hereafter just called a "drag")
by calling its startDrag(ClipData) method. Within the processing of that
call, two callbacks are made into the originating View. The first is to
onMeasureDragThumbnail(). Similarly to the core onMeasure() method, this
callback must respond by calling setDragThumbnailDimension(width, height) to
declare the size of the drag thumbnail image that should be used. Following
this, the View's onDrawDragThumbnail(canvas) method will be invoked to
actually produce the bits of the thumbnail image.

If all goes well, startDrag() will return 'true', and the drag is off and
running. (The other arguments to startDrag() provide reconciliation between
the current finger position and where the thumbnail should be placed on
the screen relative to it.)

Potential receipients of the ClipData behind the drag are notified by a
new dispatch mechanism, roughly parallel to motion event dispatch. The core
routine is the View's onDragEvent(event) callback, with the mechanics of
dispatch itself being routed through dispatchDragEvent(event) -- as in
the case of motion events, the dispatch logic is in ViewGroup, with leaf
View objects not needing to consider the dispatch flow.

Several different event 'actions' are delivered through this dispatch
mechanism:

ACTION_DRAG_STARTED: this event is propagated to every View in every window
(including windows created during the course of a drag). It serves as a
global notification that a drag has started with a payload whose matching
ClipDescription is supplied with the event. A View that is prepared to
consume the data described in this event should return 'true' from their
onDragEvent() method, and ideally will also make some visible on-screen
indication that they are a potential target of the drop.

ACTION_DRAG_ENTERED: this event is sent once when the drag point
enters the View's bounds. It is an opportunity for the View to set up
feedback that they are the one who will see the drop if the finger goes
up now.

ACTION_DRAG_LOCATION: when the drag point is over a given View, that
View will receive a stream of DRAG_LOCATION events, providing an
opportunity for the View to show visual feedback tied to the drag point.

ACTION_DRAG_EXITED: like DRAG_ENTERED, but called when the drag point
leaves the View's bounds. The View should undo any visuals meant to
emphasize their being the hovered-over target.

ACTION_DROP: when the drag ends at a given point, the View under that
point is sent this event, with the full ClipData of the payload.

ACTION_DRAG_ENDED: paralleling the DRAG_STARTED action, this is the global
broadcast that the drag has ended and all Views should return to their
normal visual state. This happens after the DROP event.

Change-Id: Ia8d0fb1516bce8c735d87ffd101af0976d7e84b6
/frameworks/base/core/java/android/view/WindowManager.java
464fb74e28b6d76d5e741abcdbb714eea2d9b4d1 27-Sep-2010 Jeff Brown <jeffbrown@google.com> am 9785bf0f: am 14a288da: Merge "Add suuport for splitting touch events across windows." into gingerbread

Merge commit '9785bf0f2b6b8758aed7ded3b996a2ef0be89919'

* commit '9785bf0f2b6b8758aed7ded3b996a2ef0be89919':
Add suuport for splitting touch events across windows.
01ce2e9eee41cc0c24b0d16465710a28ea337d5d 27-Sep-2010 Jeff Brown <jeffbrown@google.com> Add suuport for splitting touch events across windows.

This feature is currently used to enable dragging the start and end
selection handles of a TextView at the same time. Could be used for
other things later.

Deleted some dead code in ArrowKeyMovementMethod and CursorControllers.

Change-Id: I930accd97ca1ca1917aab8a807db2c950fc7b409
/frameworks/base/core/java/android/view/WindowManager.java
529b60a3b16ac3dff24f2403d760ab8ebc9670ff 04-Aug-2010 Romain Guy <romainguy@google.com> Add android:hardwareAccelerated to Activity.

Hardware acceleration can now be enabled/disabled locally on each activity
declared in the manifest. It can also be enabled/disabled directly on a
window through the WindowManager.LayoutParams.

Change-Id: I91dd0b26c4e7eb8cd7288e523ed6b7bda6d0990b
/frameworks/base/core/java/android/view/WindowManager.java
613dde4aa651e11dac3db859723cc6faf8fc0a82 21-Jun-2010 Daniel Sandler <dsandler@android.com> Revised "immersive mode" API.

No longer a window bit, FLAG_IMMERSIVE is now set on
ActivityInfo.flags and in the Activity's manifest as
android:immersive="true" (ActivityInfo).

[An "immersive" activity is one that wishes to avoid being
paused by full-screen notifications (like an incoming call).
An activity that sets FLAG_IMMERSIVE/android:immersive is
sending a signal to the notification manager, status bar,
etc. that they should try to find some other way to get the
user's attention in high-priority situations.]

[Originally: change Ie290c2e.]

Change-Id: I967bb10b930b8f0772b10f81f2957a03fa3f1736
/frameworks/base/core/java/android/view/WindowManager.java
ae069f76ee65fd5d9252c8191429fa55296d0208 18-Jun-2010 Daniel Sandler <dsandler@android.com> Fix SDK docs build.

Change-Id: I2d11682cdf2cdcd48f0299f8c168fddd5994dc65
/frameworks/base/core/java/android/view/WindowManager.java
611fae4c39edbeb23b53f789a0219c539cf32fa6 17-Jun-2010 Daniel Sandler <dsandler@android.com> New API for "immersive" activity windows.

An "immersive" activity (as indicated by the new
FLAG_IMMERSIVE) is one that wishes to avoid being paused by
full-screen notifications (like an incoming call).
An activity that sets FLAG_IMMERSIVE on its window is
sending a signal to the notification manager, status bar,
etc. that they should try to find some other way to get the
user's attention in high-priority situations.

FLAG_IMMERSIVE should be used exclusively in conjunction
with FLAG_FULL_SCREEN (that is, only activities that hide
the status bar should consider themselves immersive).

Change-Id: Ie290c2e92fc391bcf55edfdb1fbd626cd284e3e2
/frameworks/base/core/java/android/view/WindowManager.java
f10e6331e3bf01653235d93aa523056c146a85a3 11-Jun-2010 Scott Main <smain@google.com> docs: fix markup error

Change-Id: Icea017095f58068c55dd3c1c18cecbdf06afb595
/frameworks/base/core/java/android/view/WindowManager.java
20e9271cf25e48d8ea17bed74e87465ca3d77b8c 02-Apr-2010 Daniel Sandler <dsandler@android.com> Add more WindowManager flags to ViewDebug.

Bug: 2567955
Change-Id: Ia34aaa3cbf6e2bc2e59fe9ae83e4c8a6498612ca
/frameworks/base/core/java/android/view/WindowManager.java
8f2bd4328a7cc9dd70e597b7cc011be22c6ca566 25-Mar-2010 Joe Onorato <joeo@android.com> Add window flags and window types to hierarchyviewer.

For debugging http://b/issue?id=2544870

Change-Id: I4b7775e6fd275bb7a9041bf5736e076122bfb5f1
/frameworks/base/core/java/android/view/WindowManager.java
95f7850a9d9c7c4f020d06986300f4740fb6a52c 30-Jan-2010 Christopher Tate <ctate@google.com> Fix build: javadoc @link pointers need HTML-style #refname

Change-Id: I0e061516fce2bcf5dea401f58180f2ff396482ab
/frameworks/base/core/java/android/view/WindowManager.java
ef73162887943e16587b8e737b19e59348338e8c 27-Jan-2010 Mike Lockwood <lockwood@android.com> Support for triggering the lockscreen while the screen is on:

Add new ALLOW_LOCK_WHILE_SCREEN_ON window manager flag, which when set
causes the window manager to put up the lockscreen after the
normal screen timeout has elapsed.

Add plumbing to pass PowerManager.userActivity() to the window manager policy.

Change-Id: I05adc52bad39c56031a08e8ec3cbcf5c2d9b9827
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/core/java/android/view/WindowManager.java
980a938c1c9a6a5791a8240e5a1e6638ab28dc77 09-Jan-2010 Romain Guy <romainguy@android.com> Deprecate fill_parent and introduce match_parent.
Bug: #2361749.
/frameworks/base/core/java/android/view/WindowManager.java
fb73f79340375013225618a5d87f46b958f698ef 20-Nov-2009 Mike Lockwood <lockwood@android.com> Add window manager support for overriding button and keyboard backlight values.

The new backlightBrightness field works similarly as the existing WindowManager.LayoutParams.screenBrightness field

Needed for bugs:
b/2233655 (under low ambient light the touch keys remain illuminated during video playback and never timeout)
b/2221079 (Backlight for home/search/back/etc buttons should turn off when in dock in night mode)

Change-Id: I60dfecdc7bb653b0db38094464de651220b3d438
/frameworks/base/core/java/android/view/WindowManager.java
badc47ecd1677d5f53bb16f8f30c158a879f5832 09-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2242440: Window screen brightness attribute is broken

Um okay, that was dumb. And I guess this means it is time to make 6.xml.

Change-Id: Ic42763b1c8a13448cf6db20b4cd6daadc7786ac1
/frameworks/base/core/java/android/view/WindowManager.java
3b3e145d3c41fd68974e08f799b1fd1f8f060cf0 25-Sep-2009 Dianne Hackborn <hackbod@google.com> A variety of work on animations.

- The lock screen now fades in and out.
- Fixed a bug where we would accidentally freeze the screen when switching
to an activity with a different orientation than the current (but
the screen itself is in the current orientation). This would mess up
the animations on the car dock.
- New API to force a particular animation for an activity transition
(untested).
- New wallpaper animations.
- Resources now uses the next API version when in a development build,
to help applications being developed against such builds.

Change-Id: I2d9998f8400967ff09a04d693dc4ce55f0dbef5b
/frameworks/base/core/java/android/view/WindowManager.java
9bfb707597898f54722460b48588007b682f3e2a 22-Sep-2009 Dianne Hackborn <hackbod@google.com> Various fixes and improvements to window, activity.

- New meta-data you can add to a dock activity to have it launched by the
home key when the device is in that dock.

- Fix a deadlock involving ActivityThread's internal content provider lock.

- New window flag to have a non-secure keyguard entirely dismissed when a
window is displayed.

- New WindowManagerPolicy APIs to allow the policy to tell the system when
a change it makes during layout may cause the wall paper or
overall configuration to change.

- Fix a bug where an application token removed while one of its windows is
animating could cause the animating window to get stuck on screen.

Change-Id: I6d33fd39edd796bb9bdfd9dd7e077b84ca62ea08
/frameworks/base/core/java/android/view/WindowManager.java
93e462b79d6896da10e15e74c5aec6beb098dddf 16-Sep-2009 Dianne Hackborn <hackbod@google.com> Implement issue #1780928: Need support hiding nav keys.

This implements support for devices whose hardware can hide
their navigation keys. It works much like the existing keyboardHidden
configuration, and for compatibility uses the same configuration
change bit.

Also add FLAG_TURN_ON_SCREEN for windows, which has the system
cause the screen to be turned on when the window is displayed.
Great fun when used with FLAG_SHOW_WHEN_LOCKED!

Change-Id: I0b867f19af85cfd8786a14cea194b34f7bdd9b7a
/frameworks/base/core/java/android/view/WindowManager.java
317a6280cc109e873646e4652be1582d870eedfd 14-Aug-2009 Mathias Agopian <mathias@google.com> Surface::GPU and Surface::HARDWARE are now deprecated; they will be set automatically if needed.

this also ripples into the window manager API by making some constant there deprecated as well.
/frameworks/base/core/java/android/view/WindowManager.java
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 09-Aug-2009 Dianne Hackborn <hackbod@google.com> Very primitive wallpapers in a surface.

This is all of the basic pieces:

- The WallpaperService now creates a surface with the window manager for its
contents.
- There is a simple service that displays a bitmap.
- The wallpaper manager takes care of starting and stopping the service.
- The window manager knows about wallpaper windows and how to layer them with
the windows that want to be shown on top of wallpaper.

Lots and lots of issues remain, but at this point you can actually write a
wallpaper service, select it in the UI, and see it behind an activity.
/frameworks/base/core/java/android/view/WindowManager.java
61324e58c549670c015010d0be14c6af76e3e9f7 22-Jul-2009 Mitsuru Oshima <oshima@google.com> cast is floor. Use round instead.
This fixes a few layout issues (that was due to smaller widnow size)
/frameworks/base/core/java/android/view/WindowManager.java
841f13c8e9ff3f7695b6c18a8abcec3c947983ff 18-Jul-2009 Mitsuru Oshima <oshima@google.com> * Reverted the change in PackageParser that I checked by accident
* More surface view fix.
- correct event translation on surface view.
- use compatible window
* removed FLAG_NO_COMPATIBILITY_SCALE. It was my misunderstanding of how SurfaceView works, and this was not necessary.
* Added compatibility related info to package dumpsys
/frameworks/base/core/java/android/view/WindowManager.java
5a2b91dc14e4c92e91c6abcc795f54ac98ee5866 17-Jul-2009 Mitsuru Oshima <oshima@google.com> * Use Fede In/Out animation if one of opening/closing apps is in compatibility mode.
* preserve compatibility window flag when the app updates window's layout params.
* Added assertion in DEFAULT_COMPATIBILITY_INFO object to prevent unintentional modification.
* A few minor updates
* log/dump message improvement
* Removed unnecessary method in FadeInOutAnimator
* Fixed 100 char issue in WindwoManagerServer.java
/frameworks/base/core/java/android/view/WindowManager.java
1ecf5d28817f0a051e77488380dcd5bc622ea169 07-Jul-2009 Mitsuru Oshima <oshima@google.com> Re-implementation of large screen support using window manager.
* added background filler surface to fill the outer rim. Using the same layer as dim surface because
they never co-exists (in the same window)
* clean up the obsolete code in CompatibiltyMode/ViewRoot for support large screen support.
/frameworks/base/core/java/android/view/WindowManager.java
64f59342d41849bd365cb43fad7505d5e3daa417 21-Jun-2009 Mitsuru Oshima <oshima@google.com> * new screen resolution support impl.
* use full window for activities, and shift & clip the content
* refactored the compatibility code, and introdcued Translator class to handle cooridnate translations.
* removed a workaround to handle an activity with configChagne=rotation in old implementation.
* I'll fix background issue on rotation in next CL.

* removed unnecessary scaling code in SurfaceView, which I forgot to remove when I changed SurfaceView
not to scale the content.
/frameworks/base/core/java/android/view/WindowManager.java
7299807d1895ea25cbe45d32b6edfd9a5723ee7a 22-Jun-2009 Romain Guy <romainguy@android.com> Fixes #1933585. Don't dismiss ACTV's drop down when it's set to alwaysVisible.

This change also resizes the drop down automatically whenever the soft input
method is shown/hidden.
/frameworks/base/core/java/android/view/WindowManager.java
e5fb328825995aa33b5b7ecf8b5bee2b17f81715 10-Jun-2009 Mitsuru Oshima <oshima@google.com> resolution support fix/improvement
* adding compatibility menu
* backup gravity
* set expanable=true if the screen size is hvga * density.
* added "supports any density" mode. I'll add sdk check later.
* disallow to catch orientation change event if the app is not expandable. This
was causing layout problem under non-expandable mode. I discussed this with Mike C
and we agreed to do this approach for now. We'll revisit if this causes problem to
a lot of applications.
/frameworks/base/core/java/android/view/WindowManager.java
c4d5d02667af6989a3121072871f6a4b1e68b594 22-May-2009 Dianne Hackborn <hackbod@google.com> Add new window manager type for a hacking second-level media surface.

This adds a new window type that is a surface that sits between the
current media type and the application window, in theory allowing you
to have two surface views in your hierarchy and control their
Z-ordering. There is also another hidden API on SurfaceView to set
the type of your window.

All a big hack, but for the good of the commonwealth!
/frameworks/base/core/java/android/view/WindowManager.java
d1a9337380cf9f40f1aa095457b11242d483295d 15-May-2009 Suchi Amalapurapu <asuchitra@google.com> Add a new window flag to display a window when keyguard is shown.
/frameworks/base/core/java/android/view/WindowManager.java
3d91492d694cf00474fec792134e496be6ee0313 14-May-2009 Mitsuru Oshima <oshima@google.com> fix window layout problem in ViewRoot
* don't scale LayoutParams (this must be app's scale).
* scale the layout params' coordinates & size only when requesting layout.
In SurfaceView, window's x,y wasn't scaled before sending to window manager.
/frameworks/base/core/java/android/view/WindowManager.java
8169daed2f7a8731d478b884b1f455c747b88478 29-Apr-2009 Mitsuru Oshima <> AI 147976: Compatibility mode support. Part 2.
* Introduced ApplicationScale (may not be good name. CompatibilityScale? CanvasScale? Pls let me know if you have better idea)
* Changes to RootView / SurfaceView
- Makes the app believe it's running in the supported density/resolution.
- Makes the window manager believe it's running at the right density/resolution.
* Added methods to Rect/Event for scaling up/down.
Known issues:
* certain kind of images (such as nine patch for buttons) seesm to be loaded not by app, thus does not take the scale into account,
which, in turn, is causing layout issue.
* ZoomButton in MapView is rendered in wrong place
* Transparent region on Surface is not correct
* Specifying different densities in one process is not working.
BUG=1770627

Automated import of CL 147976
/frameworks/base/core/java/android/view/WindowManager.java
8d112675879a2b83197d3b4ae4fb623abd1a1ec3 27-Apr-2009 Mitsuru Oshima <> AI 147845: Compatibility mode support. Part 1
Adding supports-density tag to manifest file/ApplicationInfo.
BUG=1752478

Automated import of CL 147845
/frameworks/base/core/java/android/view/WindowManager.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/core/java/android/view/WindowManager.java
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/core/java/android/view/WindowManager.java
3001a035439d8134a7d70d796376d1dfbff3cdcd 19-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132276
/frameworks/base/core/java/android/view/WindowManager.java
da996f390e17e16f2dfa60e972e7ebc4f868f37e 13-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@131421
/frameworks/base/core/java/android/view/WindowManager.java
d24b8183b93e781080b2c16c487e60d51c12da31 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
/frameworks/base/core/java/android/view/WindowManager.java
9266c558bf1d21ff647525ff99f7dadbca417309 16-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@126645
/frameworks/base/core/java/android/view/WindowManager.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
/frameworks/base/core/java/android/view/WindowManager.java
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/frameworks/base/core/java/android/view/WindowManager.java