This is achieved by not having the decor view hold onto the activity
context. Instead, we are wrapping application context, so that we can
have theme support and also have a special instance of window manager
that is aware of the phone window (the same way as activity do).
This reverts commit a5ffea3b7d.
Change-Id: I924f4c7ef8f0d20e9174bd7b3e00ec00b44443b9
The only time AppWindowToken.willBeHidden is used is for determining
if the app should contribute to calculating orientation. In the same
check AppWindowToken.hiddenRequested will be or-ed with willBeHiden,
so it's enough that hiddenRequested to be set.
The only place where willBeHidden is set, is right before
WMS.setAppVisibility is called, which will set hiddenRequested.
Because of this willBeHidden is unnecessary.
Change-Id: Iea35f39f72e7f0dcd76205ef580f3a74cac72d08
We don't need intermediate stack traces for re-thrown inflater
exceptions. Yes, we care that you failed to inflate some class.
No, we don't care how many times you recursed in LayoutInflater
before you got there.
Change-Id: Ie9bba7cebab6cdf73ceead49f080dcf23e0a9f25
This means that right-clicking/long pressing on a view that is registered for
context menu will show the context menu as a popup menu instead.
Bug: 20016398
Change-Id: I96fea60435fff2f981d288521f490f8ff24ada15
- Created helper class BatchedInputEventReceiver for batching
ACTION_MOVE events to vsync boundries.
- Switched TaskPositioner to use new helper class for input events
so we reduce the number of input events we process per vsync.
Bug: 24375616
Change-Id: I4ee27949b956784fb89d8f190497e4765522c9d3
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
Surface should only be invalidated when surface generation changed
(which we're already doing). Window size change doesn't always imply
a surface change. During a drag-resizing action, the window size is
constantly changing but the surface remains the same. setSurface
could take 12ms+ each frame and cause frame drops.
bug: 23793966
Change-Id: Iac0456122e8916cf06b1a7a0940584ab4bf4065d
This is adding the renderer side infrastructure to allow
rendering multiple render nodes with different threads.
This is a pre-step for decoupling a non client decor
resize reder from a content resize render.
Multiple render nodes can be added to be drawn, and to
prevent overdrawing, a content bounds area can be set
Bug: 22527834
Change-Id: Ie7271e20895bf38957e5a84aeefc883e282039ad
This is to manually apply a patch of code that should have
propagated to E, but hasn't and is breaking one of the CTS
tests for MediaControllerTest on Nemo.
The original reverted change can be found at ag/723643.
Bug: 24172957
Change-Id: I925ff561a56531ebf9f8d8b4ce56156ae7feb9fc
Previously we would only send STATE_CHANGE events when the window was
added and then received input focus.
Bug: 23974711
Change-Id: Ic25ed64e024f69818c34574d7f57413699088d99
If the id is negative, it is not from Resource.
Passing the negative value to getResourcePackageName makes AssetManager dump unnecessary warning logs.
It is reasonable not to get package/type/entry information for the negative id.
The warning logs :
W/ResourceType( 3711): No known package when getting name for resource
number 0x9b010100
Change-Id: Ic89acb4f32205ba5a2fdac61dc14b00ccf251148
Instead of letting the client render to (0,0) and moving the surface
around, put the surface at a fixed location, and let the client render
to the screen position within the surface.
This fixes the window shaking problem when resizing by dragging window's
top-left corner. The frame rect used in last draw is lagging window
manager's latest bounds for the window, moving the surface's position
would make the window's bottom-right corner appears moving (while it's
supposed to be stationary).
bug: 23793966
Change-Id: Ideb152fc48502f8e9672235f10b044889235e7df
We crop windows to their stack bounds when the docked stack
exists. We don't want to do this for the home activity since
the docked stack isn't visible when the home activity is visible.
Change-Id: Ibb3157dabbb6c979358ddc2098a01c6ddf6540e8
This changes application code behavior when the activity relaunches due
to configuration change. It only applies to scenarios, where the
configuration change was triggered by a user generated resize of an
activity (i.e. user drags a corner of an activity and thus changes its
size).
Preserving a window means that we will keep the decor view and non
client decor view around, but remove all children views when the
activity gets destroyed. When the activity gets created again, it will
attach its new content to the preserved view hierarchy. Mind, we
actually recreate application side Window object, since some of its
features might changed, but we retain its elevation (to not trigger
relayout with new layout params).
Preserving the window also means that we don't call the window manager
service to remove and later add the window. Instead, we continue using a
single window state throughout the resize operation.
Change-Id: Ie3d2878ed09c99ff343044bfe7a29a0ba07a265e
- add a startMoving API to initiate a window move from app, once
the move starts WindowManager will take over the event handling.
- detect touch events along window's outside border and start
a resize if necessary
Change-Id: Ic7e8baba34e0aa27a43173e044ffb46e93e219e0
Needed for Ungaze to trigger "soft sleep" (respecting wake locks); operates by
sending new KEYCODE_SOFT_SLEEP to PhoneWindowManager, which calls
PowerManagerService's new method setUserInactiveOverride (thereby
causing immediate sleep, modulo wakelocks, upon next iteration of
PowerManagerService's main loop).
BUG: b/23589870
Change-Id: Iddafdde923605d119075e890eeda5d3fd3fd2bc7
This reverts commit 677adf1e66.
Hiding new keycode to prevent change to public API before resubmitting.
Change-Id: Ic43273dd0c7ade1d51a36b77f363543f1df466e8