Assigned
Status Update
Comments
kl...@google.com <kl...@google.com>
ap...@google.com <ap...@google.com> #2
Pixel 6
- Build: TP1A.220905.004
Debugging this together I noted the only difference between google-sans* and google-sans-text* is opsz, which seems suspect.
<family customizationType="new-named-family" name="google-sans">
<font weight="400" style="normal">GoogleSans-Regular.ttf
<axis tag="GRAD" stylevalue="0"/>
<axis tag="opsz" stylevalue="18.0"/>
<axis tag="wght" stylevalue="400"/>
</font>
...
</family>
<family customizationType="new-named-family" name="google-sans-text">
<font weight="400" style="normal">GoogleSans-Regular.ttf
<axis tag="GRAD" stylevalue="0"/>
<axis tag="opsz" stylevalue="17.0"/>
<axis tag="wght" stylevalue="400"/>
</font>
This seems suspect, as google-sans and google-sans-text have different letter shapes that I don't believe would be covered by opsz
Rod, it looks like we might be shipping the wrong font for google-sans-text
on production Pixel. Can you advise and forward as appropriate.
ap...@google.com <ap...@google.com> #4
Context from dupin@ introduced with VF in ag/13832548
It looks like we are missing specializations there. Rod can you advise?
Description
When there are multiple focus modifiers (e.g.
onFocusChanged
) on a focus target, and all the modifiers are removed along with the target, only the lowest (closest to the target) modifier gets the event. I believe this is a regression introduced with the migration of the focus system to modifier locals, for a case that it seems we never had tests for.The situation is when there are multiple focus event modifiers listening to a single focus target, and all the event modifiers as well as the target are removed/detached at the same time. What should happen, I think, and based on talking to @Ralston Da Silva, is that all the event modifiers should get the final "focus=Inactive" event. But what is happening is:
onModifierLocalsUpdated
call first, in which they all remove themselves from the listener chain.onModifierLocalUpdated
, in which it asks the focus manager to clear focus.focusable()
.I believe this regression caused a text field bug, b/225541817 , in which the focus event modifiers applied by
CoreTextField
no longer receive that final "focus=Inactive" event and so don't hide the keyboard.Reproducing test: