* fix(mobile): keep Android split screen from restarting or squeezing the app
One UI gives a split-screen pane its own density. Android recreated
MainActivity on that change, and React Native seeds its display metrics
from the application context, which keeps the full-screen density, so
the pane was laid out at the wrong scale. A config plugin declares
density in configChanges and re-seeds the metrics from the activity.
* fix(mobile): catch React Native's rotation re-seed before the frame draws
A one-shot listener added on configuration change missed a cold start or
a 180-degree flip at a non-zero rotation, where React Native's root view
re-seeds from the application context without a configuration change.
* fix(mobile): publish re-seeded display metrics in one step
Text measurement reads the holder off the UI thread, so build the
pane-density screen metrics before publishing them.