982449293d0ec2fdbb0907430589af864a10ddbc
Relocates the platform-neutral halves of the winit `default` backend (WidgetState, CursorState/sense, Tasks, Selector/Selectable's focus handling) into shared crate-root modules so both backends can use them without duplication, generalizes Tasks' redraw nudge behind a RequestRedraw trait instead of a concrete winit::window::Window, and adds iris/src/android/: a second backend on android-view's ViewPeer -- wgpu on the view's surface, touch as a mouse-like cursor, an InputConnection bridge onto TextEdit (I1's parley editor), and a window-insets side channel since android-view has no hook for it. winit's own Android support pulls in android-activity without a selected backend feature, so `default`/`android` are now target-gated rather than both compiled in; confirmed by cross-compiling before this split (cargo ndk failed inside android-activity) and after (clean). Host build/clippy/fmt/tests and the android (x86_64, API 26) cross-compile of the iris crate are all clean; the winit tabs example still renders via run-headless.sh. Not yet exercised: an actual android-app crate and Gradle shell to run this on the emulator -- next in RUST.md's I2. Co-Authored-By: Claude Sonnet <noreply@anthropic.com>
Languages
Rust
53%
Kotlin
44.4%
Shell
2.6%