* Fixes#2616. Support combining sequences that don't normalize
* Decouples Application from ConsoleDriver in TestHelpers
* Updates driver tests to match new arch
* Start on making all driver tests test all drivers
* Improves handling if combining marks.
* Fix unit tests fails.
* Fix unit tests fails.
* Handling combining mask.
* Tying to fix this unit test that sometimes fail.
* Add support for combining mask on NetDriver.
* Enable CombiningMarks as List<Rune>.
* Prevents combining marks on invalid runes default and space.
* Formatting for CI tests.
* Fix non-normalized combining mark to add 1 to Col.
* Reformatting for retest the CI.
* Forces non-normalized CMs to be ignored.
---------
Co-authored-by: Tig <tig@users.noreply.github.com>
* Fixes#2680. Make the TextView API more extensible.
* Remove unnecessary using.
* Add GetLine method.
* Change RuneCell Attribute property to ColorScheme property.
* Add LoadRuneCells method and unit test.
* Add helper method to set all the Colors.ColorSchemes with the same attribute.
* Change RuneCell to class.
* Add IEquatable<RuneCell> interface.
* Fix unit test.
* Still fixing unit test.
* Fixes#2688. ReadOnly TextView's broken scrolling after version update.
* keyModifiers must be reset after key up was been processed.
* Trying fix server unit test error.
* Prevents throw an exception if RuneCell is null.
* Still trying fix this unit test.
* Cleaning code.
* Fix when the RuneCell is null.
* Fix throwing an exception if current column position is greater than the line length.
* Fixes#2689. Autocomplete doesn't popup after typing the first character.
* Fix Used on TextField.
* Always use the original ColorScheme if RuneCell.ColorScheme is null.
* Fix Used on TextView.
* Add RuneCellEventArgs and draw colors events.
* Add two more samples to the scenario.
* Fix a bug which was causing unit tests with ColorScheme fail.
* Fix a issue when WordWrap is true by always loading the old text.
* Improves debugging in RuneCell.
* WordWrap is now preserving the ColorScheme of the unwrapped lines.
* Simplifying unit test.
* Ensures the foreground and background colors are never the same if Used is false.
* Remove nullable from the parameter.
* Merge syntax highlighting of quotes and keywords together
* Add IdxRow property into the RuneCellEventArgs.
* Fix pos calculation on windows
(where newline in Text is \r\n not \n)
* Fix events not being cleared when toggling samples.
* Change Undo and Redo to a public method.
* Changes some methods names to be more explicit.
* Call OnContentsChanged on needed methods and fix some more bugs.
* Adds InheritsPreviousColorScheme to allow LoadRuneCells uses personalized color schemes.
* Serializes and deserializes RuneCell to a .rce extension file.
* Prevents throwing if column is bigger than the line.
* Avoids create a color attribute without one of the foreground or background values. In Linux using -1 throws an exception.
* Replace SetAllAttributesBasedOn method with a ColorScheme constructor.
* Move RuneCell string extensions to TextView.cs
* Reverted parameter name from cell to rune.
* Change Row to UnwrappedPosition which provide the real unwrapped text position within the Col.
* Add brackets to Undo and Redo methods.
* Replace all the LoadXXX with Load and rely on the param type to differentiate.
* Open a file inside a using.
* Proves that the events run twice for WordWrap disabled and the enabled.
* Remove GetColumns extension for RuneCell.
* Add braces to Undo an Redo.
* Change comment.
* Add braces.
* Delete remarks tag.
* Explaining used color and ProcessInheritsPreviousColorScheme.
* Fix comment.
* Created a RuneCellTests.cs file.
* Rename to StringToLinesOfRuneCells.
* Make ToRuneCells private.
---------
Co-authored-by: Thomas <tznind@dundee.ac.uk>
Co-authored-by: Thomas Nind <31306100+tznind@users.noreply.github.com>
* Fixes#2482. Refactor Redraw - Non-virtual with the right set of virtual OnXXX methods.
* Change documentation comments.
* Fixes#2575 - TableView to use interface instead of System.Data.DataTable (#2576)
* WIP: Add ITableDataSource
* WIP: Refactor TableView
* WIP: Port CSVEditor
* WIP: Port TableEditor
* WIP: Port MultiColouredTable scenario
* Fix bug of adding duplicate column styles
* Update tests to use DataTableSource
* Tidy up
* Add EnumerableTableDataSource<T>
* Add test for EnumerableTableDataSource
* Add test for EnumerableTableDataSource
* Add code example to xmldoc
* Add ProcessTable scenario
* Rename ITableDataSource to ITableSource and update docs
* Rename EnumerableTableDataSource to EnumerableTableSource
* Fixed Frame != Bounds; changed UICat Scenarios list to use tableview!
* Fix scroll resetting in ProcessTable scenario
* Fix unit tests by setting Frame to same as Bounds
* Document why we have to measure our data for use with TableView
---------
Co-authored-by: Tig Kindel <tig@users.noreply.github.com>
* Fixes#2582 - Refactors FileDialog for cleaner data model (#2583)
* WIP: Add ITableDataSource
* WIP: Refactor TableView
* WIP: Port CSVEditor
* WIP: Port TableEditor
* WIP: Port MultiColouredTable scenario
* Fix bug of adding duplicate column styles
* Update tests to use DataTableSource
* Tidy up
* Add EnumerableTableDataSource<T>
* Add test for EnumerableTableDataSource
* Add test for EnumerableTableDataSource
* Add code example to xmldoc
* Add ProcessTable scenario
* Rename ITableDataSource to ITableSource and update docs
* Rename EnumerableTableDataSource to EnumerableTableSource
* Fixed Frame != Bounds; changed UICat Scenarios list to use tableview!
* Fix scroll resetting in ProcessTable scenario
* Fix unit tests by setting Frame to same as Bounds
* Document why we have to measure our data for use with TableView
* WIP: Simplify FileDialogs use of TableView
* WIP start migrating sorter
* WIP new filedialog table source mostly working
* WIP remove sorter class
* Refactor GetOrderByValue to be adjacent to GetColumnValue
* Fix collection navigator back so it ignores icon
* Fix unit tests
* Tidy up
* Fix UseColors
* Add test for UseColors
---------
Co-authored-by: Tig Kindel <tig@users.noreply.github.com>
* Fixes#2196. TextView: Setting Text places cursor at beginning, unlike TextField (#2572)
* Fixes#2196. TextView: Setting Text places cursor at beginning, unlike TextField
* Change all private members to have the _prefix.
* Renamed local member to prevLayoutStyle.
* Helper function for SetNeedsDisplay.
* Fixes#2569. Borders scenarios needed to be refactored. (#2570)
* Fixes#2569. Borders scenarios needed to be refactored.
* Fix border title with width equal to 4 and thickness top grater than 1.
* Improves border manipulation on borders scenarios.
* Prevents null value on the margin, border and padding thickness on the border scenarios.
* Remove NStack using dependence and fix prior commit.
* Refactoring the Frames scenario.
* Deleted borders scenarios.
* I did not realize that it was changed to SetSubViewNeedsDisplay.
* Re-layout; fixed colorpicker; fixed radio group
* Remove Thickness.IsEmpty as requested.
* Change the Frames scenario as requested.
---------
Co-authored-by: Tig Kindel <tig@users.noreply.github.com>
* Builds CollectionNavigator support into UI Catalog for TableView (#2584)
* Builds collectionnav support into UI cat for TableView
* Fixes keyboard mapping
* MultiSelect = false for TableView
* MultiSelect = false doesn't unbind ctrl-a
* Fixes#2581 Refactor CollectionNavigator so it supports TableView (#2586)
* Refactor CollectionNavigator to a base and a collection implementation
* Refactor CollectionNavigatorBase to look for first match smartly
* Add TableCollectionNavigator
* Make TableCollectionNavigator a core part of TableView
* Fix bad merge
* Added tests for tableview collection navigator
* Add FileDialogCollectionNavigator which ignores . and directory separator prefixes on file names
* whitespace fixes
---------
Co-authored-by: Tig <tig@users.noreply.github.com>
* Resolving merge conflicts.
* Fix merge errors.
* Fix merge errors.
* Add Command.Accept and snap to the selected glyph when ShowHorizontalScrollIndicator change to true.
* Reformat.
* Reformat again.
---------
Co-authored-by: Thomas Nind <31306100+tznind@users.noreply.github.com>
Co-authored-by: Tig Kindel <tig@users.noreply.github.com>
* Comment/warning clean up
* Moved Text and Drawing out
* Moved Layout out
* Removed extra lines
* Removed Mouse out
* Reorgainzed View
* API docs
* removed border.cs
* TopLevel.Resized -> TerminalResized
* Mdi -> Overlapped
* Removed confusing and un-needed WillPresent
* privates -> _
* Tweaked RunLoop API