* Fixes#2954. Modal view is always refreshing only by moving the mouse.
* Fixes invisible topLevel to be cleaned up which should be a drawing task.
* Forcing Shutdown.
* 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>
* Adds basic MainLoop unit tests
* Remove WinChange action from Curses
* Remove WinChange action from Curses
* Remove ProcessInput action from Windows MainLoop
* Simplified MainLoop/ConsoleDriver by making MainLoop internal and moving impt fns to Application
* Modernized Terminal resize events
* Modernized Terminal resize events
* Removed un used property
* for _isWindowsTerminal devenv->wininit; not sure what changed
* Modernized mouse/keyboard events (Action->EventHandler)
* Updated OnMouseEvent API docs
* Using WT_SESSION to detect WT
* removes hacky GetParentProcess
* Updates to fix#2634 (clear last line)
* removes hacky GetParentProcess2
* Addressed mac resize issue
* Addressed mac resize issue
* Removes ConsoleDriver.PrepareToRun, has Init return MainLoop
* Removes unneeded Attribute methods
* Removed GetProcesssName
* Removed GetProcesssName
* Refactored KeyEvent and KeyEventEventArgs into a single class
* Revert "Refactored KeyEvent and KeyEventEventArgs into a single class"
This reverts commit 88a00658db.
* Fixed key repeat issue; reverted stupidity on 1049/1047 confusion
* Updated CSI API Docs
* merge
* Added ClipRegion; cleaned up driver code
* clip region unit tests
* api docs
* Moved color stuff from ConsoleDriver to Color.cs
* Removes unused ConsoleDriver APIs
* Code cleanup and Removes unused ConsoleDriver APIs
* Code cleanup and Removes unused ConsoleDriver APIs
* Work around https://github.com/gui-cs/Terminal.Gui/issues/2610
* adjusted unit tests
* initial commit
* Made Rows, Cols, Top, Left virtual
* Made Clipboard non-virtual
* Made EnableConsoleScrolling non-virtual
* Made Contents non-virtual
* Pulled Row/Col up
* Made MoveTo virtual; fixed stupid FakeDriver cursor issue
* Made CurrentAttribute non-virtual
* Made SetAttribute non-virtual
* Moved clipboard code out
* Code cleanup
* Removes dependecy on NStack from ConsoleDrivers - WIP
* Fixed unit tests
* Fixed unit tests
* Added list of unit tests needed
* Did some perf testing; tweaked code and charmap to address
* Brough in code from PR #2264 (but commented)
* Tons of code cleanup
* Fighting with ScrollView
* Fixing bugs
* Fixed TabView tests
* Fixed View.Visible test that was not really working
* Fixed unit tests
* Cleaned up clipboard APIs in attempt to track down unit test failure
* Add Cut_Preserves_Selection test
* Removed invalid code
* Removed invalid test code; unit tests now pass
* EscSeq* - Adjusted naming, added more sequences, made code more consistent, simplified, etc...
* Added CSI_SetGraphicsRendition
* NetDriver code cleanup
* code cleanup
* Cleaned up color handling in NetDriver
* refixed tabview unit test
* WindowsDriver color code cleanup
* WindowsDriver color code cleanup
* CursesDriver color code cleanup
* CursesDriver - Adding _BOLD has no effect. Further up the stack we cast the return of ColorToCursesColor from int to short and the _BOLD values don't fit in a short.
* CursesDriver color code - make code more accurate
* CursesDriver color code - make code more accurate
* Simplified ConsoleDriver.GetColors API
* Simplified ConsoleDriver.GetColors API further
* Improved encapslation of Attribute; prep for TrueColor & other attributes like blink
* Fixes#2249. CharacterMap isn't refreshing well non-BMP code points on scroll.
* Use GetRange to take some of the runes before convert to string.
* Attempting to fix unit tests not being cleaned up
* Fixes#2658 - ConsoleDriver.IsRuneSupported
* Fixes#2658 - ConsoleDriver.IsRuneSupported (for WindowsDriver)
* Check all the range values and not only the max value.
* Reducing code.
* Fixes#2674 - Unit test process doesn't exit
* Changed Cell to support IsDirty and list of Runes
* add support for rendering TrueColor output on Windows merging veeman & tznind code
* add colorconverter changes
* fixed merged v2_develop
* Fixing merge bugs
* Fixed merge bugs
* Fixed merge bugs - all unit tests pass
* Debugging netdriver
* More netdriver diag
* API docs for escutils
* Update unicode scenario to stress more stuff
* Contents: Now a 2D array of Cells; WIP
* AddRune and ClearContents no longer virtual/abstract
* WindowsDriver renders correctly again
* Progress on Curses
* Progress on Curses
* broke windowsdriver
* Cleaned up FakeMainLoop
* Cleaned up some build warnings
* Removed _init from AutoInitShutdown as it's not needed anymore
* Removed unused var
* Removed unused var
* Fixed nullabiltiy warning in LineCanvas
* Fixed charmap crash
* Fixes#2758 in v2
* Port testonfail fix to v2
* Remove EnableConsoleScrolling
* Backport #2764 from develop (clear last line)
* Remove uneeded usings
* Progress on unicode
* Merged in changes from PR #2786, Fixes#2784
* revamp charmap rendering
* Charmap option to show glyph widths
* Fixed issue with wide glpyhs being overwritten
* Fixed charmap startcodepoint change issue
* Added abiltiy to see ncurses verison/lib
* Fought with CursesDriver; giving up for now. See notes.
* Leverage Wcwidth nuget library instaed of our own tables
* enhanced charmap Details dialog
* Final attempt at fixing curses
---------
Co-authored-by: BDisp <bd.bdisp@gmail.com>
Co-authored-by: adstep <stephensonadamj@gmail.com>
* Move all public nested classes out into own files
* Move more nested classes out
* Tidy up and treat CA1034 as an error. Fix remaining nested classes.
* Remove partial keyword from ThemeManager as it is no longer needed
* Rename Bar to BarSeriesBar to more clearly indicate it is part of GraphView subsystem
* Fix xmldoc references
* Revert nesting changes to ConsoleDrivers
* Change to file scoped namespaces and revert renames
- LineCanvasCell back to just Cell
- ApplicationRunState back to just RunState
* Switch to file scoped namespaces
* 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
* POC
* View.DrawFrame now uses LineCanvas
* Fixes#2531. Toplevel should redraw only if it's needed.
* Fix toplevel when mdi is enabled preventing clear the screen twice.
* Massive LineCanvis updates
* Fixes#2534. Bounds isn't updating when the Frame is changed.
* Almost everything works!
* Had to disable a few tests but all unit test now pass again
* Deleted ConsoleDriver.DrawWindowFrame; hacked ProgressBar
* Deleted ConsoleDriver.DrawWindowTitle; moved to Frame.DrawTitle
* Renames BorderFrame to Border
* Removed old commented code
* Tweaked scenario
* Added auto convert \r\n to Enviornment.NewLine in TestHelpers.AssertEqual
* Fix merge errors.
* Fix AssertEqual newlines to platform-specific.
* Refactored frames drawing; view adds to its lineview, superview renders them
* New titlebar style based on Border.Top size; fixed bugs
* wzard bug
---------
Co-authored-by: BDisp <bd.bdisp@gmail.com>
* Added View.BorderStyle and renamed BorderStyle enum to LineStyle
* Fixed a lot of things and broke everything else
* Fixed things
* Updated DialogTests
* Updates including Rect unit tests
* Fixed Dialog & MessagBox tests
* Fixed AllviewsTester bug
* Fixed AllviewsTester bug
* Removed Border class
* Renamed View privates with _
* Removed comments in MessageBox.cs
* Changed ansi esc sequence used on exit.
* Changed ansi esc sequence used on exit.
* Improves HeightAsBuffer although currently only works on Windows.
* Fixes#2267. Toplevel.EnsureVisibleBounds throws an exception if border is null.
* Changing comment as requested.
* Fixes indentation.
* Seems not needed for now, maybe some update, comment for now.
* Renamed HeightAsBuffer to EnableConsoleScrolling and made it obsolete.
* Add comment on remarks for EnableConsoleScrolling.
* merged @bdisp's EnableConsoleScrolling PR
* Fixes buffer for Windows Terminal.
* Fixes issue in Windows Terminal on resizing causing some lines not be drawing after exceptions.
* merge #9
* merged #9
* use ESC [ ? 1047
* Tweaks with new esc codes
* Fixed curses driver to not nuke scroll buffer and to resize properly
* merge
* Cleand up netdriver escape codes
* fixed spaces->tabs
* fixed spaces->tabs
* fixed spaces->tabs
* fixed spaces->tabs
* fixed merge issue and spaces->tabs
* fixed spaces->tabs
* fixed spaces->tabs
* fixed spaces->tabs
* fixed build error
* removed old comments
* Resolving merge conflicts.
* Ensuring reset the EnableConsoleScrolling.
* Changing from HeightAsBuffer to EnableConsoleScrolling.
* Done requested changes.
* Reformatting.
* Rename to EscSeqReqStatus.
* Removing Console.Out.Flush ();
---------
Co-authored-by: Charlie Kindel <tig@users.noreply.github.com>
Co-authored-by: Tig Kindel <tig@kindel.com>