Commit Graph

4524 Commits

Author SHA1 Message Date
Vishnu Nair
896775a952 Merge "SurfaceView: Synchronize destframe updates with SurfaceView size changes" into sc-dev am: 40ddf958e6 am: f315a466d5
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15363651

Change-Id: I7366b93293ea9bfd6bfb6a39f8b0488963de2742
2021-08-03 00:08:32 +00:00
Vishnu Nair
40ddf958e6 Merge "SurfaceView: Synchronize destframe updates with SurfaceView size changes" into sc-dev 2021-08-02 23:35:38 +00:00
John Reck
26dd06b2cb Merge "Move AnimatedImageDrawable off of NewWeakGlobalRef" 2021-08-02 13:41:18 +00:00
Vishnu Nair
f13eac9f7e SurfaceView: Synchronize destframe updates with SurfaceView size changes
This CL fixes one of the issues with SurfaceView parent frame and
content syncing.

With BLAST, we have two surface controls each setting a scale. The
parent surface control sets a scale based on the requested surface
size and the SurfaceView layout size. The BlastBufferQueue surface
control scales the buffer to the requested buffer size if the buffer
has the appropriate scale mode.

The destination frame controls the second scaling and it must be
applied with the parent surface scale changes. This cl fixes flickers
where the requested fixed surface size changes without any view size
changes. This cl allows the caller to pass in a transaction to
BLASTBufferQueue#update which is updated with the destination frame
changes. This transaction can then be applied with the parent
surface changes.

This also fixes an issue where destination Frame was being set on
every buffer update and when we updated the BlastBufferQueue size.
Since buffer transactions can be queued up on the server side, a
stale value maybe applied for a few frames causing flickers.

Fixes: 194458377
Test: bug repro steps
Test: atest SurfaceViewSyncTest#testSurfaceViewSetFixedSize

Change-Id: I118bd1c3942b389e3951c3fd7389403895fc7b31
2021-07-30 16:18:21 -07:00
Jay Aliomer
a505866a86 Merge "Reset patterned animations when solid ripple is reset" into sc-dev am: 70c0c93542 am: 6f44007d8c
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15413252

Change-Id: I46c735c527598dc34e6b7746f15d1d295c76d16e
2021-07-29 22:25:43 +00:00
John Reck
4f56f99d46 Remove NewWeakGlobalRef from RenderNode
Bug: 194893628
Test: make && CtsUiRenderingTestCases
Change-Id: I90d9d96ed940812c9dca1385f4a71d0a0cd2936f
2021-07-29 16:25:20 -04:00
John Reck
3998a01e8f Move AnimatedImageDrawable off of NewWeakGlobalRef
Bug: 194893628
Test: make && atest android.graphics.drawable.cts.AnimatedImageDrawableTest
Change-Id: I5c9845bc1408a3b1221e1ba45409ee194189387f
2021-07-29 12:40:44 -04:00
Jay Aliomer
304b04a492 Reset patterned animations when solid ripple is reset
Fixes: 194655257
Test: visual using the material demo app + MX player
Change-Id: I47805fe1a36bdadd7de45008c42cf2fcb23d223a
2021-07-29 12:53:50 +00:00
Seigo Nonaka
44e66f5153 Merge "Remove @FastNative annotation from TextRunShaper" 2021-07-23 05:52:33 +00:00
Bo Liu
15634bdc3c Switch HWUI to use native performance hint API am: 6a3fc60f43 am: 4333a83789
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15326474

Change-Id: Id65a52342eff943a9b644881936f51555a64d77d
2021-07-22 21:50:55 +00:00
Bo Liu
6a3fc60f43 Switch HWUI to use native performance hint API
Test: None
Bug: 194204196
Change-Id: I80dfdb5d56921c465406cc4534e82738c668d46d
2021-07-22 11:33:01 -04:00
Seigo Nonaka
bc237ba163 Remove @FastNative annotation from TextRunShaper
Bug: 194208524
Test: N/A
Change-Id: Ia504b61d7d021f47607a1a657ac60a716b46ff0e
2021-07-20 11:53:27 -07:00
Brett Chabot
d69660fc6a Add bug link for androidx screenshot API TODO.
Bug: 194183980
Test: TH
Change-Id: I02a88ceb5ce079886f7aae9b688598c85e25a2c0
2021-07-20 17:11:07 +00:00
TreeHugger Robot
dcc12612b2 Merge "Filter Alias which points non-existing font family name" 2021-07-14 01:39:38 +00:00
Brett Chabot
856db9e316 Add ability to disable GL draws.
This feature is intended for use in headless test environments,
where disabling drawing has minimal compatibility impact and can
save significant resource usage when running UI tests.

This feature is controlled via a new system property
'debug.hwui.drawing_enabled', and a HardwareRenderer public API that can
override the property value on a per-process basis.

Bug: 188559292
Test: boot emulator, atest CtsGraphicsTestCases
Change-Id: I93c21e680382e03342f235dbf58bd7a5c8a6f767
2021-07-13 20:01:47 +00:00
Seigo Nonaka
691cfe8818 Filter Alias which points non-existing font family name
The FontFamily will be removed if none of font files exist on the
device.

Bug: 192479819
Test: atest FontListParserTest
Change-Id: I36f6476fe37bc04ec8737936747385c63908d651
2021-07-13 11:20:49 -07:00
Huihong Luo
eb93107b57 Add a sys prop to control WebView Overlays support
The boolean system property is named as "debug.hwui.webview_overlays_enabled"

Bug: 192267127
Test: change the property value, check presence of Webview Surface
Control

Change-Id: I01e3e26282a5fa79aa504a6e49c5abe1a1c3ea02
2021-06-30 11:47:21 -07:00
Huihong Luo
7580a2dd98 Merge "Fix a crash caused by transaction" into sc-dev 2021-06-24 20:27:48 +00:00
Huihong Luo
4df4151bc0 Fix a crash caused by transaction
A native transaction passed from webview is sent back to native side, so java side does not manage the life cycle of the transaction.

Bug: 191414767
Test: Play a video, switch to another app, wait for 10 seconds
Change-Id: I013052c202b445438d6cb6497f5f9a2fc22a2b85
2021-06-24 11:10:06 -07:00
Jay Aliomer
4508c4ab85 Fix ripple radius calculation
Fixes: 191608957
Test: manually using the material showcase app
Change-Id: I3a89d200a842b3dd5f34ffc94a2c62c6fab9436e
2021-06-24 12:19:38 -04:00
Huihong Luo
17410b668f Merge "Fix z-order for webview surface control" into sc-dev 2021-06-18 19:53:34 +00:00
Jay Aliomer
ccc98b8d6e Merge "Update patterned ripple mask when changed" into sc-dev 2021-06-18 17:57:57 +00:00
Huihong Luo
34f42fdecd Fix z-order for webview surface control
Set the root surface control transparent, and set the z order of the newly created child surface control to -1.
A new callback is needed to update root surface control in sync from Java side.

Bug: 186750329
Test: use latest APKs from Webview team, play a video, mini toolbar should be visible
Change-Id: I0b37ee8f83fd2b41ff4f2856dbadd31ff6170baf
2021-06-18 10:14:22 -07:00
Jay Aliomer
b7eab7fee6 Merge "Fix invalid ripple bounds" into sc-dev 2021-06-18 03:31:35 +00:00
Huihong Luo
fec5e82e69 Merge "Fix potential ASurfaceTransactionCallback leaks" into sc-dev 2021-06-17 16:32:06 +00:00
Jay Aliomer
88114108ee Update patterned ripple mask when changed
Fixes: 188601242
Test: visual
Change-Id: I036564223e27a5630151ef2a9a5a81b29e291a49
2021-06-17 01:00:45 -04:00
Lucas Dupin
8bdce16ce4 Fix invalid ripple bounds
Test: manual
Fixes: 188112758
Change-Id: I6e23c02adc4761fde2e69bafc341066be15f63ee
2021-06-17 00:18:05 -04:00
John Reck
85933d4c55 Fix ripples not going away
Fixes: 191141356
Test: ripples on calculator
Change-Id: Icabf80914c5ba9c0649e69ef0fa67c03d6ad5cdd
2021-06-16 15:48:33 -04:00
Huihong Luo
1d88151a38 Fix potential ASurfaceTransactionCallback leaks
Change the rerferene to java object from global reference to weak
reference.

Bug: 188555236
Test: check number of ViewRootImpl objects from Systrace
Change-Id: I52347b9efb211691826635d046259bc3c54b194f
2021-06-16 09:47:04 -07:00
TreeHugger Robot
7395d119e6 Merge "Put starting the animation back inside state changed check" into sc-dev 2021-06-14 17:01:42 +00:00
John Reck
7c0a17c042 Put starting the animation back inside state changed check
Only start or stop the ripple if the state changed.
Avoids accidentally starting 2 ripples when the overall
state set changed but the state_activated specifically did
not.

Fixes: 188062293
Test: manual
Change-Id: If32f1ee5ad3e7294e2e6924b1a4a0e4070c8bcfc
2021-06-10 16:42:26 -04:00
TreeHugger Robot
15cc80b39c Merge "Use RobotoStatic-Regular for the weight 400 of roboto family" into sc-dev 2021-06-08 17:57:30 +00:00
Lucas Dupin
6e9adc7f5c Merge "Isolate focus color filter" into sc-dev 2021-06-07 22:47:20 +00:00
Lucas Dupin
562e3d6af1 Isolate focus color filter
The mask color filter has an alpha applied to it, it should not be used
on the focused states.

Focus works differently, where the alpha is defined by the state itself
(20% for hover, and 60% focus,) combined with the paint alpha.

Test: adb shell input keyevent 22
Test: manual on list item (not masked)
Test: manual on button (masked)
Fixes: 184717563
Change-Id: I01b8540face638330d016b413e70f2b74ce5592c
2021-06-07 12:13:17 -07:00
Seigo Nonaka
cec02064d4 Merge "Calculate set of available fonts in native" into sc-dev 2021-06-03 23:26:17 +00:00
Seigo Nonaka
d5ecababb4 Calculate set of available fonts in native
The previous attempt[1] of improving SystemFonts API is not good enough
for users. To further improve the performance, calculate font uniqueness
in native code. From Android S, the system font information is stored
in native code and has more information for skipping duplication check.

Bug: 188201287
Test: atest FontFamilyUpdateRequestTest
Test: atest FontListParserTest
Test: atest FontManagerTest
Test: atest NativeSystemFontTest
Test: atest PersistentSystemFontConfigTest
Test: atest SystemFontsTest
Test: atest SystemFontsUniqueNameTest
Test: atest UpdatableFontDirTest
Test: atest UpdatableSystemFontTest
Test: minikin_tests
Change-Id: Ib375dcda0f278c93ec8dd21636d7a22b4174f214
2021-05-27 15:54:24 -07:00
Lucas Dupin
da517d5370 Merge "Revert "Enable dithering on RippleDrawable"" into sc-dev 2021-05-27 19:07:56 +00:00
Lucas Dupin
2a5d63d8bd Revert "Enable dithering on RippleDrawable"
This reverts commit 1cbfc3b00b.

Reason for revert: CL was no-op
Bug: 189281134
Change-Id: I2c70b51dd1d2f679a8310b1847675360ce415d35
2021-05-27 19:07:35 +00:00
Lucas Dupin
5941f0fb95 Merge "Enable dithering on RippleDrawable" into sc-dev 2021-05-26 20:39:09 +00:00
Lucas Dupin
9f6fb354e8 Constant sparkle scale
Drawables from different themes are yielding different densities.
Framework themes are returning 160 (DENSITY_MEDIUM), while AppCompat
is reporting 420 (DENSITY_420.)

This is causing the sparkles to have completely different sizes on
the same device, which is wrong.

Fixes: 189236372
Test: manual
Change-Id: Ia79e360123cf740aaba85d5348f07604c2b39026
2021-05-26 09:31:24 -07:00
Lucas Dupin
1cbfc3b00b Enable dithering on RippleDrawable
Per UX request, given that gradients started to show some banding.

Test: manual
Fixes: 189281134
Change-Id: I8898f2463c6e07c390c07c242b6632dcbb9c3ef3
2021-05-26 09:13:51 -07:00
Seigo Nonaka
18c044d31b Use RobotoStatic-Regular for the weight 400 of roboto family
Bug: 189235998
Test: Manually done
Change-Id: I253a72df5641b57d371598cec6853737c5e98ba9
2021-05-25 14:09:52 -07:00
Lucas Dupin
2011da8730 Merge "New shader parameters" into sc-dev 2021-05-25 18:54:21 +00:00
Lucas Dupin
8a7d4e2b2a New shader parameters
- Fading out sparkles earlier
- New density and size for sparkles
- Overall timing tweaks
- New turbulence parameters

Test: manual
Fixes: 188453593
Fixes: 188454455
Change-Id: I70e364c84cc04f653618ea811a817d9f82895af5
2021-05-25 09:35:17 -07:00
Seigo Nonaka
9c16cc5a3e Merge "Skip buffer equality check for SystemFonts" into sc-dev 2021-05-21 05:03:38 +00:00
Seigo Nonaka
5abd5dfd9d Skip buffer equality check for SystemFonts
All system font files are file backed and stored in the unique place,
so no need to compare the buffers during creating sets of system fonts.

Bug: 188201287
Test: atest FontFamilyUpdateRequestTest
Test: atest FontListParserTest
Test: atest FontManagerTest
Test: atest NativeSystemFontTest
Test: atest PersistentSystemFontConfigTest
Test: atest SystemFontsTest
Test: atest SystemFontsUniqueNameTest
Test: atest UpdatableFontDirTest
Test: atest UpdatableSystemFontTest
Change-Id: I4a4680937988c013aaa4e4fa729e61ac8514c513
2021-05-20 15:56:43 -07:00
TreeHugger Robot
395e8c9997 Merge "Fix RadialGradient Javadocs" into sc-dev 2021-05-18 20:53:44 +00:00
Nader Jawad
33ceaf8f95 Fix RadialGradient Javadocs
Fixed issue where Javadoc references
were not displayed and the list
of circumstances in which exceptions
would be thrown was not separated
by line breaks

Fixes: 188102023
Test: N/A
Change-Id: Ibdba7c26e053bdba5d8cff21f1cb7c0764f5a4f1
2021-05-18 12:16:23 -07:00
Nader Jawad
85cf59de2f Merge "Add support to toggle different shader behaviors" into sc-dev 2021-05-18 16:27:47 +00:00
Nader Jawad
93d6e248de Add support to toggle different shader
behaviors

Updated HWUI to toggle overscroll stretch
implementation based on whether the
device supports high end graphics
or not

Bug: 187718492
Test: manual
Change-Id: I13a91a8861c07bec8af43268ba22d0f5b7060b4f
2021-05-17 22:42:15 -07:00