* Reapply "fix(viewport): normalize method names"
This reverts commit f2434c374b.
* test: fixes
* fix: lint
* fix: disable horizontal scroll on v1
it might be a breaking change.
let's enable it by default on v2, and remove the deprecated methods as
well.
cc/ @meowgorithm
* fix: simplify
This reduces the amount of styling needed for what's likely more common
use cases, such as using Styles.Base to apply a background color to the
entire field.
Add the capability to show a multiline placeholder. Some refactoring was
required to improve readability and improve logic.
End of line buffer character was only shown when line numbers were
displayed which requires some verification whether this is the intended
outcome. This change resolves this issue.
When setting the width of the textarea there were some issues
preventing this from working correctly. These problems included:
- If the maximum width needed to be used, the width of the textarea did
not take into account the prompt and line number width.
- The viewport width did not take into account the style width.
The entire function was confusing to understand and a refactor was
warranted.
As part of this refactor, the bugs mentioned above were fixed and the
code was simplified.
To verify that the logic works as expected, unit tests were expanded to
validate that setting the width works as expected.
Signed-off-by: Michael Lorant <michael.lorant@nine.com.au>
Previously, when inserting multiple lines of input at once, the underlying
Go data array was incorrectly shared in memory across multiple rows
of the textarea. This was causing input corruption, where a user trying
to modify one line would see their text added on the next line as well.
This patch fixes it.
* fix(textarea): app would crash if deleteWordRight was called at the end
of line
* fix(textarea): deleteWordRight would work incorrectly
Co-authored-by: infastin <thecookied123@gmail.com>
* Extract char navigation in separate function.
* Make wordLeft/wordRight find words on the prev/next line
... if there's no word on the current line to find any more.
* Support uppercase/lowercase/capitalize commands.
* Add transpose