Refactored on_change() and _validate() calls within Toga core as a new private method _value_changed(). This private method validates first before calling the on_change handler. Then I made the change across the appropriate backends. I then added a test to the core API within an existing TextInput test to confirm a value changes and updated the documentation to reflect the change.
Resolved validation order which prevented input changes from being properly validated.
Refactored on_change() and _validate() calls within Toga core as a new private method _value_changed(). This private method validates first before calling the on_change handler. Then I made the change across the appropriate backends. I then added a test to the core API within an existing TextInput test to confirm a value changes and updated the documentation to reflect the change.
Resolved validation order which prevented input changes from being properly validated.
Fixes #2325
PR Checklist: