Commit Graph

215 Commits

Author SHA1 Message Date
BDisp
d474e0b4de Implements tabs, left and right arrows as View. 2023-12-03 23:32:00 +00:00
BDisp
c084309d56 Fix unit tests related with LayoutStyle. 2023-11-29 16:58:15 +00:00
BDisp
73de270a8b DateField and TimeField depends on LayoutStyle.Computed. 2023-11-29 16:49:14 +00:00
BDisp
fc2e69b39a Fixing broken unit tests. 2023-11-29 00:52:43 +00:00
BDisp
5c978603e2 Fixes #3017. View TextDirection returns incorrect size on a vertical direction instance with AutoSize as false. 2023-11-28 21:16:47 +00:00
Tig
42b9ad1d61 Fixes #2578 - Updates mouse events to be relative to View.Bounds (#2920)
* initial commit

* Clarified RootMouseEvent

* Added application mouse coord tests

* ViewToScreen -> BoundsToScreen

* Simplified View.Move

* Simplified View.Move

* Updated API docs; made some functions private

* more ViewLayout cleanup

* more ViewLayout cleanup

* Added View.ScreenToBounds and low-level coord unit tests

* Partial fix

* Refactored Application.OnMouseEvent... Tests still fail and views are broken

* Added Bounds/FrameToScreen

* Remamed ScreenToView->ScreenToFrame

* All unit tests pass

* Fixed ListView

* Fixed TableView

* Fixed ColorPicker

* Fixed RadioGroup

* Fixed ListView unit tests

* Fixed line drawing scenario

* Updated comment

* fixed api doc typo

* fixed formatting

* added some thickness Contains unit tests

* MouseEvent api doc updates

* More thickness tests

* More thickness tests
2023-11-26 16:58:52 -07:00
BDisp
3f4d96bec7 Fixes #3011. TextFormatter doesn't handle combining and tab runes. (#3012)
* Add horizontal and vertical support for combining glyphs.

* Fix text and auto size behavior.

* Add TabWidth property.

* Add unit test for WordWrap.

* Add MultiLine property and improve more code.

* Fix word wrap on MessageBox.

* Fix label unit test.

* Rename to GetTextFormatterSizeNeededForTextAndHotKey

* Proves that TextFormatter.Size not must to have the same View.Bounds.Size.

* Fix fails unit tests.

* Updates AutoSize document.

* Updates MultiLine document.

* Removes Application dependency from the TextFormatter class.

* Fix Draw XML comment.
2023-11-26 15:41:54 -07:00
BDisp
d2967c1ede Fixes #2883. ProgressBar: 'Frame.DrawFrame(Rect, bool)' is obsolete: 'This method is obsolete in v2. Use use LineCanvas or Frame (#2979)
* Fixes #2883. ProgressBar: 'Frame.DrawFrame(Rect, bool)' is obsolete: 'This method is obsolete in v2. Use use LineCanvas or Frame

* Refactored ProgressBar to use Frames correctly

* Hacked other FramesEditor scenarios to work... needs to be done more cleanly

* Prevents for null state.

* re-added my changs

* Fixed unit tests

* Fixed unit tests2

* Commit to run CI test again.

---------

Co-authored-by: Tig <tig@users.noreply.github.com>
Co-authored-by: Tig Kindel <tig@kindel.com>
2023-11-20 09:08:00 -07:00
BDisp
3810b7d3d5 Fixes #2944. TestTreeViewColor unit test sometimes fails (#3000) 2023-11-19 15:38:38 -07:00
BDisp
66ca7f887e Fixes #2970. ScrollView doesn't remove a view that was previously added on both versions. (#2973) 2023-11-15 08:36:36 -07:00
BDisp
e16205af85 Fixes #2954. Modal view is always refreshing only by moving the mouse. (#2958)
* 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.
2023-11-06 17:49:06 -07:00
BDisp
7b46b1dea4 Add unit test for the #2892 fix. (#2956) 2023-11-06 14:39:20 -07:00
Tig
d40db95a8e Brings View disposal tests from develop (#2948)
* Pulled Viewdisposaltests from develop

* fixed namespace

* fixed namespace

* code cleanup
2023-10-30 15:58:00 -06:00
BDisp
aa8b952509 Partially Addresses #2616. Support combining sequences that don't normalize (#2932)
* 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>
2023-10-29 12:51:23 -06:00
Tig
21e8a70cee Fixes #2933 - Refactors Cell to simplify code (#2934)
* refactored Cell

* Fixed usings

* Wierd CI/Cd unit test failure. Will this fix?
2023-10-25 11:48:41 -06:00
Tig
6851b42a49 Fixes #2921 - MainLoop refactoring (#2922)
* 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
2023-10-21 08:06:04 -07:00
BDisp
8ea6b105fc Fixes #2923. Ensures only clear Instances if they really was disposed. (#2924)
* Fixes #2923. Ensures only clear Instances if they really was disposed and fix unit tests.

* Add Ubuntu-20.04.

* xunit nuget package update.
2023-10-20 11:13:55 -06:00
Tig
2007f3b2d5 Adds Slider View (#2919)
* Ported to v2

* Fixed scneario - config

* Lots of goodness

* Lots of goodness

* Code cleanup

* Fixed mouse dragging

* Removed Header and margin stuf

* Removed Header and margin stuf

* Removed Header and margin stuf

* Fixed keyboard

* upgraded xunit

* Action -> EventHandler

* Got Range working correctly

* Added starter set of unit tests

* Cleans up dim/pos objs in dispose. See #2914.

* Fixed merge issues; renamed SliderOrientation and added changed event
2023-10-17 13:21:36 -04:00
tznind
e3323ec8c6 Remove use of HotFocus completely from TableView 2023-10-14 08:08:33 -06:00
tznind
46b9a15641 Use Focus not HotFocus for TableView selected cells 2023-10-14 08:08:33 -06:00
Tig Kindel
03c16fe893 ColorNames->ColorName 2023-10-13 23:58:49 -06:00
Tigger Kindel
c9ce86578c Removed GetColors (no longer needed) 2023-10-13 23:58:49 -06:00
Tigger Kindel
59339ebe22 Removed Attribute.Make (use new) 2023-10-13 23:58:49 -06:00
Tigger Kindel
4e89fae8c6 Fixed ColorPicker test failure 2023-10-13 23:58:49 -06:00
Tigger Kindel
4b51a912be Fixed ColorPicker test failure 2023-10-13 23:58:49 -06:00
Tigger Kindel
a8900a0b8c Disabled invalid Task.Delay calls 2023-10-13 23:58:49 -06:00
Tig Kindel
26580aca6a inital commit - proving Color can be made a class without breaking tons of code 2023-10-13 23:58:49 -06:00
Tigger Kindel
1c133ba364 Refactored CheckTimers into MainLoop and renamed/simplified 2023-10-05 22:21:59 -06:00
Tigger Kindel
bf606c4179 Moved CheckTimers to MainLoop 2023-10-05 22:21:59 -06:00
Tigger Kindel
05e203c7a4 lots of fixes 2023-10-04 06:42:47 -06:00
Tig
488542c869 Merge pull request #2844 from BDisp/v2_menu-can-execute-false-fix_2787
Fixes #2787. MenuItem with CanExecute returning false is select when a MenuBar is opened.
2023-09-29 11:22:56 -06:00
Tig
8b514dc313 Merge pull request #2845 from MaciekWin3/v2_develop
Fixes #2824. Add SearchText property to combobox in v2
2023-09-29 11:20:07 -06:00
Tig
0a0efe103a Merge pull request #2846 from BDisp/v2_alt-key-on-toplevel-with-menubar-fix_2810
Fixes #2810. Pressing Alt key on a Toplevel with only a MenuBar throws System.InvalidOperationException.
2023-09-29 11:19:52 -06:00
Tig
5ef85b6cfb Merge branch 'v2_develop' into v2_develop 2023-09-29 11:15:48 -06:00
Tig
6ffcaf46db Merge branch 'v2_develop' into v2_menu-can-execute-false-fix_2787 2023-09-29 11:15:37 -06:00
Tig
dd8ed4d0bf Merge pull request #2843 from BDisp/v2_statusitem-can-execute-fix_2789
Fixes #2789. StatusItem should have a disabled attribute if it can't execute.
2023-09-29 11:15:03 -06:00
Tig
63767a87bd Merge branch 'v2_develop' into v2_develop 2023-09-29 11:11:57 -06:00
RoxCian
e384b44d5a Fix unit test.
Fix an issue about date time formatting under non en-US culture in DateFieldTest.
2023-09-22 13:47:13 +08:00
BDisp
0829a81249 Merge branch 'v2_develop' into v2_alt-key-on-window-with-menubar-fix_2776 2023-08-31 16:39:10 +01:00
maciekwin3
ffea15f66b Add SearchText property to combobox 2023-08-31 10:44:51 +02:00
BDisp
1f5953b8ba Fixes #2787. MenuItem with CanExecute returning false is select when a MenuBar is opened. 2023-08-30 23:06:20 +01:00
BDisp
b70a16ab28 Fixes #2789. StatusItem should have a disabled attribute if it can't execute. 2023-08-30 22:25:00 +01:00
BDisp
b9f476a26d Fixes #2836. RequestStop while a ContextMenu is open can throw an exception. 2023-08-30 19:50:01 +01:00
BDisp
c50f92bf8e Reformatting. 2023-08-15 18:52:01 +01:00
BDisp
5a11b88f52 v2 Fixes #2810. Pressing Alt key on a Toplevel with only a MenuBar throws System.InvalidOperationException. 2023-08-15 18:31:54 +01:00
Tig
0df485a890 Fixes #666. Refactor ConsoleDrivers to simplify and remove duplicated code (#2612)
* 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>
2023-08-09 14:28:36 -06:00
tznind
4dbf2f4cfd Add test for marking event Handled and demo how to do custom drawing 2023-07-25 08:54:52 -06:00
tznind
101db86bfa Add TestTreeView_DrawLineEvent_WithScrolling test 2023-07-25 08:54:52 -06:00
tznind
78eebd1ce7 Add test TestTreeView_DrawLineEvent 2023-07-25 08:54:52 -06:00
BDisp
57db5a351b Add unit test. 2023-07-19 06:50:41 -06:00