Commit Graph

8083 Commits

Author SHA1 Message Date
Abodunrinwa Toki
4e7a1208ea Implement alternative ViewGroup.getChildVisibleRect.
This CL allows getChildVisibleRect to optionally always call the
view's parent. The previous version attempted to optimize the call
by not calling further up the view heirarchy when the rect isn't
visible in the current view.

The call is hidden and the previous behaviour is preserved to limit
the bits of code that this change affects.

Bug: 28514727
Change-Id: I49550ed4082bcbdcfe4643b962b50f3308092525
2016-05-03 19:41:15 +01:00
Jaewan Kim
d98dcab679 Fix crash when device doesn't support picture-in-picture
Bug: 28512987
Change-Id: Ic8287d70fed491d7493d443ba7d9633b7d9aaea9
2016-05-03 07:13:28 +09:00
TreeHugger Robot
3446a6ef71 Merge "Fix ViewRoot inset adjustment after initial setup." into nyc-dev 2016-04-29 20:37:33 +00:00
Robert Carr
1bccabf3c4 Fix ViewRoot inset adjustment after initial setup.
If the insets change, "mWidth/mHeight" won't change
as it's based on the window frame (not the surface size),
we need to track when the insets change and call
HardwareRenderer.setup with the new values.

Bug: 28257246
Bug: 28368990
Change-Id: Ida304b57c4671d010d1cf7b370674c9453841c97
2016-04-29 11:13:57 -07:00
TreeHugger Robot
5bddeaa9bc Merge "Properly parcel HdrCapabilities." into nyc-dev 2016-04-28 15:01:31 +00:00
Michael Wright
b082890149 Properly parcel HdrCapabilities.
Since the field might be null, we can't just read and write the
object directly. Use Parcel's convenience methods to do so safely
instead.

Bug: 28427070
Change-Id: I6460c9cb43dc6da97d5fd9edeaa78bdaaf105446
2016-04-27 19:28:29 -04:00
Phil Weaver
1f70f0b7d6 Merge "Fix several accessibility magnification issues." into nyc-dev 2016-04-27 22:50:37 +00:00
Phil Weaver
70439244ba Fix several accessibility magnification issues.
Clarifying region used for magnification as "magnificationRegion",
both in the public API and in the code. There's been significant
confusion about what "magnfifiedRegion" means. Removing
"availableRegion" from everywhere except where it's required, as
that region was identical to magnified/magnification region.

Trying to shut down magnification was a complex situation where
animations in progress and new magnification requests were tricky to
handle correctly. It was not possible to guarantee that the
magnification callbacks were unregistered consistently. There were
at least two situations that led to phone restarts:
1. If a triple tap was detected between unregistering the callbacks
and shutting down the input filter. In this case the magnification
request would go through.
2. If an animation had just started when magnification was turned
off, so the current magnification was 1.0 but the animator was
about to change it. In this case the callbacks would be unregistered,
and then the animator would start changing the magnification.

This change makes registering and unregistering magnification atomic.
It also makes MagnificationController stick around indefinitely once it
is created, registering and unregistering as needed to support
magnification gestures and services that control magnification. Services
that merely query the status of magnification no longer register for
callbacks.

One part of shutting down is turning off the animation and guaranteeing
that it won't try to make further changes. Adding a flag to
SpecAnimationBridge and a lock in that class so we can guarantee that
nothing happens when we aren't registered for magnification callbacks.

Also reconfiguring all accessibility options when a service stops to
make sure that only the features required by the current configuration
are enabled.

Bug: 27497138
Bug: 27821103
Change-Id: If697cbd34b117d82c8eee1ba7d0254089ee4241d
2016-04-27 13:57:43 -07:00
Bo Liu
08ca2e3a75 Merge "Revert "Expose setDrawGLFunctionDetachedCallback to webview"" into nyc-dev 2016-04-27 17:58:34 +00:00
Hangyu Kuang
39bb2c29b4 Merge changes from topic 'atv-hdr' into nyc-dev
* changes:
  Unhide getHdrCapabilities and HdrCapabilities.
  Plumb HDR capabilities to Display
  Revert "Revert "Hook up HDR capabilities from native SurfaceControl""
2016-04-27 16:38:21 +00:00
John Reck
7f209d37f1 Merge "API tweaks to PixelCopy and make it public" into nyc-dev 2016-04-27 14:36:53 +00:00
Rob Carr
69a6fe321c Merge "Fix bugs with takeSurface and preserveWindows." into nyc-dev 2016-04-27 00:47:59 +00:00
Hangyu Kuang
da802f5100 Unhide getHdrCapabilities and HdrCapabilities.
Bug:25684127
Change-Id: Ibeefc566213da5b76deba13eb2224916a4fefd13
2016-04-26 23:04:56 +00:00
Michael Wright
9ff94c0251 Plumb HDR capabilities to Display
Bug: 25684127
Change-Id: I0a4fcdc59aa1a7b295c8df03699466685300e735
2016-04-26 23:04:30 +00:00
John Reck
e94cbc76d5 API tweaks to PixelCopy and make it public
Bug: 27708453
Change-Id: I81667ce42f9ca1c1a13e1e61299927900845fc84
2016-04-26 15:41:43 -07:00
Oren Blasberg
a86d1e0b59 Merge "Accommodate NaN in new context menu methods." into nyc-dev 2016-04-26 22:41:01 +00:00
Hangyu Kuang
54ac219184 Revert "Revert "Hook up HDR capabilities from native SurfaceControl""
This reverts commit 2c38f45f27.


Bug:25684127
2016-04-26 22:24:23 +00:00
Sergei Vasilinetc
c015719954 Merge "DisplayListCanvas: throw exception at attempt to draw bitmap with size > 100MB" into nyc-dev 2016-04-26 21:39:43 +00:00
Robert Carr
b259485087 Fix bugs with takeSurface and preserveWindows.
When reusing a ViewRoot and DecorView as we do with preserveWindows
there are two issues with SurfaceHolders.  First, we update the
SurfaceHolder callbacks when we call ViewRootImpl.setView. In the
case of preserved window relaunch, the DecorView is reused and there is
no call to setView. We need the ActivityThread to notify the ViewRoot
that something has changed. Secondly, we were assuming the only time
a new surface would be created for the purposes of SurfaceHolder
notification was when we previously did not have a valid surface.
Instead we need to check if the native Surface object has changed each time we
get a result from relayout.

Bug: 28331264
Change-Id: If1b4aab9b2ba579fa040e2a3ab4471842476d82f
2016-04-26 14:33:21 -07:00
Jaewan Kim
f0fd218382 PIP: Send KEYCODE_WINDOW to app first if PIP isn't exist
Bug: 27954955
Change-Id: I517e378d5c1672ac0eb87bdf4375b7d733276e58
2016-04-26 13:06:21 +09:00
Clara Bayarri
f48f390a60 Merge "Improve KeyboardShortcutInfo documentation for Modifiers" into nyc-dev 2016-04-25 09:31:06 +00:00
Chris Banes
b02d51b3d3 Merge "Make AbsSavedState read using given ClassLoader" into nyc-dev 2016-04-23 07:04:21 +00:00
Bo Liu
d443f36957 Revert "Expose setDrawGLFunctionDetachedCallback to webview"
This reverts commit ee34ef1633.

This API is no longer needed by webview since 51.0.2704.22.
So remove this API. Note that this system API has never shipped
so it's ok to simply remove it.

Original description:
> Expose setDrawGLFunctionDetachedCallback to webview
>
> Add WebViewDelegate.setDrawGLFunctionDetachedCallback system API that's
> used for webview to receive the functor detach callback.
>
> BUG: 27709981
> Change-Id: Ie6b5e445c0090a181f94fcd2ec1ea77095c9cb03

BUG: 27709981
Change-Id: I9920dbedc6a280b4a19a8715832c4d2f64a7a7be
2016-04-22 13:32:23 -07:00
Andres Morales
82ee675330 Merge "FrameMetricsListener API council changes" into nyc-dev 2016-04-22 16:31:21 +00:00
Chris Banes
02e81a094f Make AbsSavedState read using given ClassLoader
Currently it does not use a ClassLoader to read
any super state, which can cause crashes for
custom views using the class but on a different
class loader.

BUG: 27790353
Change-Id: I4f4d1d72f213f2481606673643c0e56c23d34bc6
2016-04-22 13:52:08 +01:00
Tim Murray
e5cebf7aaa Merge "Fix flag value collision" into nyc-dev 2016-04-21 22:59:42 +00:00
John Reck
60e885f672 Fix flag value collision
Bug: 28314544
Change-Id: If73c1e8fd0e7b313bccbeffa172bdc3ab9496a43
2016-04-21 15:40:45 -07:00
sergeyv
3d8298e1a8 DisplayListCanvas: throw exception at attempt to draw bitmap with size > 100MB
bug:26943116
Change-Id: If72c9f21ca2d8eb660ea2db4a42c8199f8d02472
2016-04-21 14:48:04 -07:00
Vladislav Kaznacheev
729c640cc8 Merge "Rename DropPermissions to DragAndDropPermissions" into nyc-dev 2016-04-21 21:34:26 +00:00
Andres Morales
d908c6294d FrameMetricsListener API council changes
Bug: 28296251
Change-Id: I8fe0d8b37c0a3220666570f242f9c20fa16b78ab
2016-04-21 14:20:42 -07:00
Rob Carr
37696cccd8 Merge "Respect manually set HARDWARE_ACCELERATED flag." into nyc-dev 2016-04-21 19:52:02 +00:00
Clara Bayarri
77b4fda89c Improve KeyboardShortcutInfo documentation for Modifiers
This was a request from API council

Bug: 28295817
Change-Id: I2b80dc9877fdd473cec89abdd0c06df15799796a
2016-04-21 10:33:11 +01:00
TreeHugger Robot
28609360cf Merge "Add JavaDoc for View.updateDragShadow" into nyc-dev 2016-04-21 00:02:08 +00:00
Vladislav Kaznacheev
ea4d221c42 Add JavaDoc for View.updateDragShadow
Bug: 28296402
Change-Id: I2aec5ab9932c3177cb08dbf1210abfd949e0dab7
2016-04-20 14:40:32 -07:00
Oren Blasberg
23e282d297 Accommodate NaN in new context menu methods.
Bug: 28296401
Change-Id: I0ae6067e1ae01c342c1b39d6f64db5dcd02492d5
2016-04-20 14:28:39 -07:00
Vladislav Kaznacheev
377c32845b Rename DropPermissions to DragAndDropPermissions
Bug: 28296057
Change-Id: Ic95cb4ae9c351d903df78628e983dec2bacd0ad5
2016-04-20 14:22:23 -07:00
Robert Carr
13678ee74e Respect manually set HARDWARE_ACCELERATED flag.
When choosing what window parameters to pass on
to child windows, we need to respect the manually set
FLAG_HARDWARE_ACCELERATED from Window.setFlags() in
addition to the activity manifest value, and the value
from setWindowManager. Given that we pass the value
on to child windows from when setWindowManager is called,
I think it makes sense to pass it when setFlags is
called.

Bug: 27099358
Bug: 23036374
Change-Id: Ie018841aadd270910fe0f8bc5a5ddca3bfbee69b
2016-04-20 14:09:55 -07:00
Ruchi Kandoi
a645c9753f Merge "window: Adds a Sustained Performance Mode window flag." into nyc-dev 2016-04-20 20:35:21 +00:00
Trevor Johns
59c9a93fc2 Merge changes from topic 'merge_docs_nyc-dev' into nyc-dev
* changes:
  Remove links to createAndInitializeUser() and createUser()
  Resolve merge conflicts of a5060ee to nyc-dev
2016-04-20 18:35:57 +00:00
Ruchi Kandoi
43e38de253 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>
2016-04-20 09:57:11 -07:00
Jorim Jaggi
13219992a0 Merge "Fixes for resize thread" into nyc-dev 2016-04-20 00:07:54 +00:00
Rob Carr
4e9a9dfb67 Merge "Force windows to be scalable during pinned animation." into nyc-dev 2016-04-19 22:11:02 +00:00
Jorim Jaggi
0d6222d96d Fixes for resize thread
- Make sure to draw navigation bar/status bar background before the
main render node. This is to avoid any flickering when entering
resizing mode, so you rather overdraw than underdraw.
- Draw the first frame from the main thread directly to increase
chance that all drawing commands are processing within a single
frame.

Bug: 27864358
Bug: 28003586
Change-Id: I033f57cdbcb2c16ea93134c041095a415d5c25b4
2016-04-19 14:41:11 -07:00
Robert Carr
1ca6a33f36 Force windows to be scalable during pinned animation.
We resize windows at the beginning of the pinned stack
animation when animating to a larger size, and so for some
duration a resize will be pending. We need to force the window
out of SCALING_MODE_FREEZE so we can animate during this period.

Bug: 27891386
Change-Id: I5cff599ed67f2c179e938662b6f0d99bd790aaba
2016-04-19 12:47:18 -07:00
John Reck
9110429f0d Merge "Don't reuse LOST_SURFACE for stopped" into nyc-dev 2016-04-19 14:45:16 +00:00
Trevor Johns
682c24e228 Resolve merge conflicts of a5060ee to nyc-dev
This undoes the automerger skip which occured in
commit e740c84dc3 and
replays it as a standard (NOT -s ours) merge.

Change-Id: If5a47be26f73d6a0735c425cd66310a3e2a89086
2016-04-19 02:03:59 -07:00
TreeHugger Robot
3eefb4c313 Merge "Use right starting window resource in multi-window mode." into nyc-dev 2016-04-19 00:04:00 +00:00
Wale Ogunwale
dfc18623ed Use right starting window resource in multi-window mode.
Use the override configuration for the task the app is contained
in to generate resources for the starting window.

Bug: 28220001
Change-Id: I6fdf39a6d6de41287b44b25861a76f58fe58dd53
2016-04-18 15:09:34 -07:00
Michael Wright
c348fa319d Merge "Add new, hidden MotionEvent flag for partially obscured windows." into mnc-dev am: 224582e am: c6629bd am: a8064c2
am: bc57aae

* commit 'bc57aaed0e9ac88a63fa989dba145dc35d048c48':
  Add new, hidden MotionEvent flag for partially obscured windows.

Change-Id: I7663785a6877f61eaec121303dbdcedcbd242ec6
2016-04-18 19:03:25 +00:00
Michael Wright
bc57aaed0e Merge "Add new, hidden MotionEvent flag for partially obscured windows." into mnc-dev am: 224582e am: c6629bd
am: a8064c2

* commit 'a8064c2a8b54881bceade03a9d2f6c1223e055f3':
  Add new, hidden MotionEvent flag for partially obscured windows.

Change-Id: I4e8d2bff82a3308c5966a0b0c154209b727db669
2016-04-18 18:57:54 +00:00