Now the text input control knows how to move the caret when you tap
inside the string. There's still some rough edges to polish up, but this
patch is the first step.
Fixes#108
This patch teaches the editing system to paint reasonable selections for
single-line text fields, including for bidirectional text.
Requires https://github.com/flutter/engine/pull/2318
This patch changes the framework to walk the child list forwards so that build
functions with global side effects do sensible things. Specifically, if you
have a number of autofocusable children, the first one the list will acquire
the focus because it gets built first now.
Fixes#182
When introducing Focus widgets for the Drawer (and ModalRoutes), we weren't
actually giving them the focus. Now we move the focus scope when pushing modal
routes.
Fixes#184
Now we recreate the stub every time we try to connect to the keyboard. The
underlying message pipe in the stub cannot be re-used, which is why we
previously asserted.
Fixes#776
Previously, EditableString had many public members because it needed to
implement the KeyboardClient interface. However, that's confusing
because these methods cannot be called directly.
Now EditableString holds a private implementation of the KeyboardClient,
which hides the implementation details.
Fixes#208Fixes#209
RawEditableLine is now responsible for the scrolling behavior, which
removes the need for callbacks between RawEditableLine and Input. It
also fixes a bug whereby the whole Input widget (including its icon)
would scroll when the text got long.
This patch restructures how we size the editing region of the Input widget. Now
RenderEditableLine understands that it's a single-line editing widget and sizes
itself correctly.
Added TwoLevelList et al, a Material Expand/Collapse List Control
A TwoLevelList can can contain TwoLevelListItems, essentially ordinary list items, or TwoLevelSublists which have a list of items of their own. Tapping on a TwoLevelSublist causes it to expand, showing its items. Tapping again causes it to collapse.
The space for the keyboard is now represented as bottom padding for the window.
By teaching the scaffold to respect the bottom window padding, we move the
floating action button and snackbars out of the way of the keyboard.
This currently works on Android. I'll need to see how to get the keyboard
geometry on iOS for a similar effect.
Fixes#103