tree ce026fc31fb691c0947a3fec037626bb99c5a3b3
parent ccfc307780a257f61e0328b05b81acc7130aab33
parent 0539f17b46eddb4ebd56581543798853b3b08a78
author Tim Zimmermann <tim@linux4.de> 1678823093 +0100
committer Tim Zimmermann <tim@linux4.de> 1678823093 +0100
mergetag object 0539f17b46eddb4ebd56581543798853b3b08a78
 type commit
 tag android-13.0.0_r35
 tagger The Android Open Source Project <initial-contribution@android.com> 1678730180 -0700
 
 Android 13.0.0 release 35
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQRDQNE1cO+UXoOBCWTorT+BmrEOeAUCZA9jxAAKCRDorT+BmrEO
 eF0HAJ0bgcp75HcB18FsneoZOOwMDoulYQCeOZUeTPZgVPsiaYWfYw8+SbEQJuA=
 =G43f
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEuwYxAyE4TRnuhLgPbcIaY/gZxe8FAmQQzrYACgkQbcIaY/gZ
 xe+4GQ/+I/Qx0ESXVC0hW28LoQ0lPnQ6MtNILge3IkOQXjSLD6aAcLOU+Hb9ko3O
 mME7YPAbiyZUcoL5Ms5zK4Sq8xZCSgf/R2oR3J3X+W1Uqyvy9kA5/DMxAf8Mpt9o
 /6KXqpZd0R2Q6052REDRLfU8ty9kGRWwhrnXcIPJcTlPK+qb1F2yprn25Cvf6qex
 /LhZW3w3TPxnHWMbBtp/Cm73ByDqFd7JcNiaMz6sRHCtTIqKsehftCRgOmHXEwIC
 1d3Psx9U0CudATlOsGHw7hO2J09DBWrfC9ipeL1lDvN4DZaYM6TXM6OZOVbKrV9a
 mIK4t0fralMRnwy3q1kN1NA2PDY0DcQ8pc9om3P35MJp8EdsPw/Sblt1XkfRIeMy
 hC5YGWCXpgifKtavWv7j6P6aldYT+1E3OyqEsVeEJkFeN3Rwg3grC4MnqfeFHyB4
 mnSlWNfiu7Dd54G1LwRQ5AL99pR1LjLnI41zZoUP6x+wnPQlYG3aHwgyNJQAmcyh
 02PiR9ry7s0Ysvdhscak1RqtCwzGXkRYncdCnEChV0g+6R8Hs5u7j+B2qbee4Wp+
 t0HRl7WyxFQyly+U4S9sQm37YYYvsEk/PX6i74hBavJ41qU1ZV0pnAU2Q0mmfnge
 fLfEPAtbvEJwn7FQQDxy191VBi07T/+9LjE0jWaG1nlMv/ZJqHw=
 =t44a
 -----END PGP SIGNATURE-----

Merge tag 'android-13.0.0_r35' into leaf-2.0

Android 13.0.0 release 35

* tag 'android-13.0.0_r35': (51 commits)
  Import translations. DO NOT MERGE ANYWHERE
  Revert "Use Mockito 4.6.1 API"
  Offset preview to start if on wallpaper display
  Add ThemePicker instrumented tests to presubmit
  Fix unit test to allow ThemePickerTests to run as presubmit
  Import translations. DO NOT MERGE ANYWHERE
  Import translations. DO NOT MERGE ANYWHERE
  [TP] Make injectors kt
  Renames customization content provider (3/7).
  Beautifies picker disabled dialogs (2/2).
  Unified screen preview section (2/3).
  Add metrics for probing wallpaper effect readiness.
  Moves common screen preview logic to WPP2 (2/2).
  Wallpaper picker reset support (2/3).
  Add target for ThemePicker instrumented tests
  Tabbed navigation in Wallpaper Picker (2/3).
  Use Mockito 4.6.1 API
  Import translations. DO NOT MERGE ANYWHERE
  Defines flag for ravemped WPP UI (4/5).
  Links WPP clocks flag to SysUI's flag (1/3).
  ...

Change-Id: If8bf153ab4e89e0fe71aa3e7bac3afa1bb86dc30
