Commit Graph

7809 Commits

Author SHA1 Message Date
BDisp
af633fc4fc Fixes #3976. SixLabors.ImageSharp nuget package is reporting as vulnerable (#3977)
* Fixes #3976. SixLabors.ImageSharp nuget package is reporting as vulnerable

* Upgrade all nuget packages
2025-03-09 20:08:26 -06:00
BDisp
e76ec720a5 Fixes #3964. Null Reference in DoDrawBorderAndPadding (#3971)
* Fixes #3964. Null Reference in DoDrawBorderAndPadding

* Fix unit test.

* Ensures closing all opened menus that belong to another top when a new modal top is opened.

* Reformat

---------

Co-authored-by: Tig <tig@users.noreply.github.com>
2025-03-09 07:46:09 -06:00
Tig
4ad866eb26 Refactored to be thread safe. (#3973) 2025-03-08 17:11:30 -07:00
BDisp
f26fd285ce Fixes #3941. v2win/v2net: UICatalog full benchmark suite crashes in Dialogs scenario (#3963)
Co-authored-by: Tig <tig@users.noreply.github.com>
2025-03-08 15:49:54 -07:00
Tig
acb5979e6c Cleans up/Refactors View.Subviews (#3962)
* Subview clean up

* New Add/Remove event pattern

* Using Logging

* cleanup

* Subview -> SubView

* Test code cleanup. Killed many warnings.

* Fix tznind feedback

* Refactored AllViewTest helpers

* Moved keyboard tests to parallel

* Moved mouse tests to parallel

* Moved view tests to parallel

* Test code cleanup. Killed many warnings.

* dupe test

* Some mouse tests can't run in parallel because MouseGrabView

* Made SpinnerView more testable

* Moved more tests

* SubViews to IReadOnlyCollection<View>

* SubViews to IReadOnlyCollection<View> 2

* scrollbar tests

* shortcut tests

* Use InternalSubViews vs. _subviews

* Nuked View.IsAdded.
Added View.SuperViewChanged.

* API doc updats

* Unit Test tweak

* Unit Test tweak
2025-03-08 15:42:17 -07:00
BDisp
85cf6619ed Fixes #3956. MessageBox doesn't return the index of IsDefault button (#3958)
* Fixes #3956. MessageBox doesn't return the index of IsDefault button

* Change to Theory test.

* Fix unit test 'Error opening terminal: unknown.'

* Remove RunningUnitTests = true because constructor already set it.

---------

Co-authored-by: Tig <tig@users.noreply.github.com>
2025-03-06 14:06:51 -07:00
Thomas Nind
7162ed850c Fix v2 not raising closing events (#3961) 2025-03-06 13:14:15 -07:00
Tig
fe18c81dc9 Fixed gitversion 2025-03-06 12:48:44 -07:00
Tig
73e230b877 upgraded to gitversion 6 v2.0.0-prealpha.1 v2.0.0-prealpha.1830 2025-03-06 11:17:57 -07:00
Tig
e805023c1c upgraded to gitversion 6 2025-03-06 11:00:51 -07:00
Tig
adcc01ccee Documented GitVersion.xml v2.0.0-develop.1600 2025-03-06 10:36:42 -07:00
Tig
e0425e1d00 Reverted GitVersion.xml 2025-03-06 07:33:23 -07:00
Tig
fa1f0b3800 Merge branch 'v2_develop' of tig:tig/Terminal.Gui into v2_develop 2025-03-06 07:18:33 -07:00
Tig
9b76d50271 Merge branch 'v2_develop' of tig:gui-cs/Terminal.Gui into v2_develop 2025-03-05 23:57:50 -07:00
Tig
5984a3c564 Fixes #3941 - v2win/v2net: UICatalog crash - Fixes warnings (#3946)
* Tons of API doc updates

* Adjust timeout

* Code cleanuyp

* Disabled All_Scenarios_Benchmark

* Removed logs

* Fixed a bunch of warnings

* Fixed a bunch of warnings2

* Disabled All_Scenarios_Benchmark again...just to make sure

* Enabled All_Scenarios_Benchmark again...It is not the culprit
2025-03-05 23:57:15 -07:00
Tig
b0f32811eb Fixes #3930 - Splits tests to Tests/UnitTests, Tests/IntegrationTests, Tests/StressTests (#3954)
* Tons of API doc updates

* Removed stale test

* Removed stale tests

* Fixed Skipped Shadow test 1

* Fixed Skipped Shadow test 2

* Fixed Skipped Shadow test 3

* Removed stale test

* Removed stale test2

* Explicit unregister of event handler on Application.Driver!.ClearedContents

* Added Toplevels to dict

* code cleanup

* spelling error

* Removed stale test3

* Removed stale test4

* Removed stale test5

* added script

* tweaked script

* tweaked script

* Created StressTests project; moved some tests

* Created IntegrationTests project; moved some tests

* New yml

* made old yml just unit tests

* Tweaked Button_IsDefault_Raises_Accepted_Correctly

* tweaked script

* cleaned up ymls

* tweakled up ymls

* stress tests...

* stress tests on ubuntu only

* Fixed WindowsDriver in InvokeLeakTest

* Fixed WindowsDriver in InvokeLeakTest2

* Added Directory.Packages.props.
Added Directory.Build.props

* Shortened StressTest time

* Removed dupe file.

* DemoFiles

* Moved all tests to ./Tests dir.

* Fixed release build issue

* Fixed .sln file

* Fixed .sl* files

* Fixing ymls

* Fixing interation tests

* Create link to the file TestHelpers.

* Created Tests/UnitTestsParallelizable.
Moved all obviously parallelizable tests.
Updated yml.

* fixing logs

* fixing logs2

* fixing logs3

* don't require stress to pass for PRs

* Fix a failure?

* tweaked script

* Coudl this be it?

* Moved tons of tests to parallelizable

* Fixed some stuff

* Script to find duplicate tests

* Testing workflows

* Updated to v4

* Fix RelativeBasePath issue

* Replace powershell to pwsh

* Add ignore projects.

* Removed dupe unit tests

* Code cleanup of tests

* Cleaned up test warnings

* yml tweak

* Moved setter

* tweak ymls

* just randomly throwing spaghetti at a wall

* Enable runing 5 test runners in par

* Turned off DEBUG_DISPOSABLE for par tests

* RunningUnitTests=true

* code cleanup (forcing more Action runs)

* DISABLE_DEBUG_IDISPOSABLE

* Added View.DebugIDisposable. False by default.

* Remobed bogus tareet

* Remobed bogus tareet2

* fixed warning

* added api doc

* fixed warning

* fixed warning

* fixed warning2

* fixed warning3

* fixed warning4

---------

Co-authored-by: BDisp <bd.bdisp@gmail.com>
2025-03-05 23:44:27 -07:00
Tig
07e850fd3d Merge branch 'v2_develop' of tig:tig/Terminal.Gui into v2_develop 2025-03-03 15:50:27 -07:00
Thomas Nind
64b216b1e8 Fixes #3953 Add async support to v2 drivers (#3952)
* Add async support stuff

* Set main thread id

* Add v2 test to ensure `TaskScheduler.FromCurrentSynchronizationContext` works

* Remove uneeded async

---------

Co-authored-by: Tig <tig@users.noreply.github.com>
2025-03-02 10:57:28 -07:00
Tig
b1079e8f18 Merge branch 'v2_develop' of tig:tig/Terminal.Gui into v2_develop 2025-03-02 10:41:39 -07:00
Tig
1919abe715 Merge branch 'gui-cs:v2_develop' into v2_develop 2025-03-02 10:41:04 -07:00
BDisp
72aaf27f91 Fixes #3930. Tests are crashing again... (#3948)
* Fixes #3930. Tests are crashing again...

* Clear the source settings on test.

* Just call CM.Reset.

* Fix one more test 'not run' because of the use of enums in parameters

* Replace void to Task
2025-03-02 10:39:27 -07:00
Tig
fd5b52f2a0 Merge branch 'gui-cs:v2_develop' into v2_develop 2025-03-01 17:23:13 -07:00
Thomas Nind
255e5d6643 Fix driver name options shown in UICatalog for v2 (#3940)
- v2 auto picks based on OS
- v2win is the new windows interop driver
- v2net is the new dotnet core cross platform driver

Co-authored-by: Tig <tig@users.noreply.github.com>
2025-03-01 17:22:55 -07:00
Tig
8b98256135 Merge branch 'v2_develop' of tig:tig/Terminal.Gui into v2_develop 2025-03-01 16:48:09 -07:00
Tig
cc749bca1b Merge branch 'v2_develop' of tig:gui-cs/Terminal.Gui into v2_develop 2025-03-01 16:44:04 -07:00
Tig
98f70b2632 Adds ViewportSettings.Transparent (#3886) 2025-03-01 15:22:23 -07:00
Tig
cae1d6c47e Fixes `Logging' init in UI Catalog and naming consistency (#3944) 2025-03-01 15:13:43 -07:00
Tonttu
a8d3d26528 Add UICatalog benchmark launch profiles for v2 drivers (#3942) 2025-03-01 09:36:50 -07:00
Tonttu
bc8bf380b2 Reduce legacy Windows driver ANSI escape sequence intermediate string allocations (#3936)
* Skip WindowsConsole StringBuilder append ANSI escape sequence intermediate string allocations

Appending InterpolatedStringHandler directly to StringBuilder skips the formatting related intermediate string allocation. This should also be usable in other console implementation but currently I have no WSL etc. setup to actually verify correct functionality.

* Add CSI_Set* and CSI_Append* comparison benchmark

* Clean up CSI_SetVsAppend benchmark

* Change benchmark names to match the method group
2025-03-01 09:36:31 -07:00
Thomas Nind
af9c6d7846 Change LayoutAndDraw in v2 applications to simply set draw/layout flags instead of force a buffer refresh (#3943) 2025-03-01 09:36:13 -07:00
Tig
61462ff9d0 local_packages 2025-02-28 15:08:36 -07:00
Tig
79cd4e92b7 Adds Logging level control to UICatalog (#3938)
* Tons of API doc updates

* Added logging control to UICatalog

* Added logging control to UICatalog - more

* fixed minor issues

* removed logs from .gitignore

* Fixed log file path

* Fixed app desc
2025-02-28 15:06:01 -07:00
Thomas Nind
c88c772462 Fixes #3692++ - Rearchitects drivers (#3837) 2025-02-28 12:09:29 -07:00
BDisp
3a240ecbe5 Fixes #3934. Test Explorer is showing some unit tests as 'not run' (#3935) 2025-02-28 12:09:04 -07:00
BDisp
80306c64c3 Fixes #3885. ableView's CollectionNavigator sometimes doesn't work right. (#3933) 2025-02-27 20:55:38 -07:00
Tig
cd0b68d174 merge 2025-02-27 17:05:29 -07:00
Tig
df9549e0a2 Tons of V2 API doc fixes (#3932)
* Tons of API doc updates

* tweaked scenario

* try to fix unit test crash in ubuntu action

* try to fix unit test crash in ubuntu action2
2025-02-27 17:00:47 -07:00
Tig
80032183c4 Tons of API doc updates 2025-02-27 16:25:26 -07:00
Tig
8733d9c88d Merge branch 'v2_develop' of github.com:gui-cs/Terminal.Gui into v2_develop 2025-02-27 13:19:18 -07:00
Tig
c00de4a092 Makes Window default Arrangement not be movable/resizable (#3931)
* Window -> not sizeable/movable by default.
Window: Code cleanup.
Frameview: Code cleanup.

* View API docs updates

* View API docs updates
2025-02-27 12:24:31 -07:00
Tig
9c3be44632 Merge branch 'v2_develop' of github.com:gui-cs/Terminal.Gui into v2_develop 2025-02-27 10:45:43 -07:00
Tig
b62e826576 API doc updates (#3928) 2025-02-27 10:45:31 -07:00
Tonttu
255114f0f2 Reduce IntersectionType[] allocations (#3924)
* Eliminate LineCanvas.Has params array allocation

Inline ReadOnlySpan arguments do not incur heap allocation compared to regular arrays.

* Allocate once LineCanvas.Exactly corner intersection arrays

---------

Co-authored-by: Tig <tig@users.noreply.github.com>
2025-02-27 10:44:39 -07:00
Tig
ebbcaffea0 Merge branch 'v2_develop' of github.com:gui-cs/Terminal.Gui into v2_develop 2025-02-27 10:01:56 -07:00
BDisp
e632a12049 Fixes #3881. PositionCursor broke with recent ConsoleDriver changes. (#3927) 2025-02-27 10:01:42 -07:00
Tig
84b3d2a8ea Merge branch 'v2_develop' of github.com:gui-cs/Terminal.Gui into v2_develop 2025-02-27 09:58:40 -07:00
Tig
aff7e2c6d5 Fixed nav (#3926) 2025-02-27 08:09:36 -07:00
Tig
f3697a99f4 Fixes #3839, #3922 - CM Glyphs not working (#3923)
* fixed

* Moved Glyphs to ThemeScope

* Removed test code
2025-02-26 15:24:58 -07:00
Tig
9aaaf1e0b3 Merge branch 'gui-cs:v2_develop' into v2_develop 2025-02-26 12:45:14 -07:00
Tig
7ba6d638bc Fixes #3918 and #3913 - Accepting behavior (#3921)
* Fixed #3905, #3918

* Tweaked Generic

* Label code cleanup

* Clean up.

* Clean up.

* Clean up2.
2025-02-26 12:40:45 -07:00