Skip to content

Feat: TextFieldState from Python; bind value-class constructors and CharSequence results - #84

Merged
b-re-w merged 6 commits into
developfrom
work/textfieldstate
Oct 3, 2026
Merged

b-re-w merged 6 commits into
developfrom
work/textfieldstate

Conversation

@b-re-w

@b-re-w b-re-w commented Oct 3, 2026

Copy link
Copy Markdown
Member

Closes #73

Root causes: foundation.text.input not walked; constructors with value-class params are public synthetic DefaultConstructorMarker bridges and were dropped with HIDDEN ones; kotlin.CharSequence had no boundary type.
Feature added: TextFieldState(...)/rememberTextFieldState, .text as str, setTextAndPlaceCursorAtEnd/clearText; CharSequence returns cross as str (parameters still declined); a class's own constructor is its stub init (marker 'Kotlin constructor:'), primitive value classes keep def X -> float; a Kotlin class name in Python is its constructor (ColorScheme like Typography/Shapes).
Follow-up: #78 (companion module shadows TextRange(…) factory).
Verification (coordinator, after merging develop): plugin 243/0, desktopTest 580/0, ksp artifact 35/0, app 70/0, compose 114/0, androidNative OK.

b-re-w added 6 commits October 3, 2026 14:41
…ructor __init__ keys; a class name is its constructor (#73)

- A value class that crosses as its raw number keeps `def X(...) -> float` (its __init__ would lie).
- A single __init__ carries 'Kotlin constructor: <key>' so the stub invariant sees it.
- ColorScheme now resolves to its constructor like Typography/Shapes; test rewritten to say so.
- TextFieldStateRenderTest uses TextRange__Int: the bare name is shadowed by the TextRange
  companion module (pre-existing; filed separately).
@b-re-w
b-re-w merged commit 274a374 into develop Oct 3, 2026
7 checks passed
@b-re-w
b-re-w deleted the work/textfieldstate branch October 3, 2026 06:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant