tree de8e9516ab7bd3e972def99abe35a3df5c7d3f3a
parent f3902ae5dfdcdb7411c2bfe0cbdc9cb16309a08c
author htoor3 <110993981+htoor3@users.noreply.github.com> 1684524358 -0500
committer GitHub <noreply@github.com> 1684524358 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJkZ81GCRBK7hj4Ov3rIwAAmNIIAIKEYDiC5b69gSt/kaiE1ikd
 RWrbDbERCZavADu8aV2o4xxjf1fAQ9IfBJzu62PvY76y7kswAkbjsx85HqVAiJvE
 zoEZr6xqoH6gg8/3MoaxmaZJiAErdVnfxEcmzlKkBGnEjc7w5cJeByVvZo+Io4oT
 IQJz24L2tDfo0XtDQ64lPmVo3ow47lgn4OfuAev7U/9sZeAAXWXCTSPFBkkL3vRM
 dF1yp6KRk/FVPtks3IiCwrhV0QTQ7R/saBCyITK+OMm7Rj7Iub53wKffa+Z6DPGb
 MDlPSQ949NM0lnXY00G9AhsihCR/TJvsu7Raw4l8ZZ8y4koym7MlB0P/rvQpiAo=
 =lvDZ
 -----END PGP SIGNATURE-----
 

[web] Fix event offset for transformed widgets (and text input nodes). (#41870)

Text inputs have moved outside of the shadowDOM and are now using the pointer event offset calculation algorithm that platform views use.  However, transforms (e.g. scaling) applied to the input element aren't currently accounted for, which leads to incorrect offsets and clicks being registered inaccurately.

This PR attempts to transform those offset coordinates using the transform matrix data that is included in the geometry information sent over to `text_editing.dart` from the framework.

## Issues

* Fixes https://github.com/flutter/flutter/issues/125948 (text editing)
* Fixes https://github.com/flutter/flutter/issues/126661 (platform view scaling)
* Fixes https://github.com/flutter/flutter/issues/126754

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style