Commit Graph

77 Commits

Author SHA1 Message Date
Tig
5dc832b6e3 Fixing unit tests 4 2024-10-18 17:06:51 -06:00
Tig
9275163198 Fixing unit tests 2024-10-17 15:03:13 -06:00
Tig
8c7982f9c0 Tons of Layout refactoring. LayoutSubviews is now internal. 2024-10-17 10:39:56 -06:00
Tig
d104a56e42 WIP - prototyping... 2024-10-15 17:17:00 -06:00
Tig
c19cc7c332 Code cleanup 2024-10-14 14:06:27 -06:00
Tig
61be0615e0 Fixed TableView key handling 2024-10-13 09:25:37 -06:00
Tig
66edb36cc7 Fixed RadioGroup 2024-09-30 14:29:07 -06:00
Tig
bff7794495 Rebased onto v2_2491-Overlapped 2024-09-24 09:50:52 -06:00
Tig
aed37f9b54 Fixed a bunch of unit test issues. Fixed color stuff I broke 2024-09-23 12:55:14 -06:00
Tig
e95ff61fef Refactored Enter event and added unit tests 2024-09-21 15:46:05 -06:00
Tig
941a6ee5e6 New overlapped drawing impl. 2024-09-18 12:24:47 -06:00
Tig
1b1a2524e7 Removed TabIndex etc... 2024-08-26 13:00:59 -07:00
Tig
ef7f88d3b4 OnEnter/Leave -> OnHasFocusChanging/OnHasFocusChanged 2024-08-18 16:58:26 -06:00
Tig
591baa65f0 GetFocused() -> back to Focused property (get only; computed). 2024-08-18 15:45:26 -06:00
Tig
61191d732f Fixed View unit test 2024-08-17 17:07:45 -06:00
Tig
2375ee35a9 WIP 2024-08-17 08:49:24 -06:00
Tig
aa4f5228e6 Merged and fixed issues.
Progess on thinking through new design, but not working yet.
2024-08-13 16:41:29 -06:00
Tig
4226d8172e Discovered serious issues with how HasFocus, OnEnter/OnLeave, etc... work in some edge cases.
This will require re-visiting the design at a deep level and fixing some long-standing but ignored issues such as how OnEnter/OnLeave don't follow proper cancelation design. Also, there's a need for keeping track of the old focus state of a tree of subviews when that tree loses focus; FocusDireciton is a hack that causes tons of confusion.
2024-08-01 06:08:48 -06:00
Tig
f2eb9ce6e2 WIP: More refining 2024-07-29 10:17:10 -04:00
Tig
a935ef83df Merge remote-tracking branch 'refs/remotes/origin/v2_2491-Toplevel-Redesign' into v2_2491-Toplevel-Redesign 2024-07-25 14:50:19 -06:00
Tig
44ce74a5c0 Refactored Application into smaller files.
Made Application #nullable enable
2024-07-22 16:52:02 -06:00
Tig
6550cde7b5 Nuked Textformatter.AutoSize.
Removed references to AutoSize throughout.
Updated unit tests.
2024-07-20 11:17:46 -06:00
Tig
f6064be449 Fixed SetTextFormatterSize 2024-07-17 08:14:09 -06:00
Tig
a3b606fe6e New unit tests. Lots of fixes 2024-07-15 16:36:05 -06:00
Tig
7a712ad96a Accept now uses HandledEventARgs vs. Cancel 2024-06-27 12:40:26 -07:00
Tig
28b3362ba4 Fixed key binding issue with shortcuts 2024-06-25 13:13:41 -07:00
Tig
94ce28012e Fixed BorderTests 2024-05-30 10:47:52 -06:00
Tig
24ca95fd5e Removed LayoutStyle 2024-05-27 07:09:51 -06:00
Tig
ace119eddf Fixed unit tests after changing defining of DimAuto 'min:' 2024-05-15 19:40:30 -07:00
Tig
65b36a9268 Updated almosta all tests to not use AutoSize 2024-05-03 14:01:02 -06:00
Tig
09565a0ef1 Tons of changes - mostly experiments, but some goodness.
There's a huge issue that TextFormatter is confused about AutoSize.
a) It behaves 'automatically' even when AutoSize == false (e.g. in Text_set).
b) It doesn't support auto sizing only one dimension.
2024-04-25 13:29:18 -06:00
Tig
a4d3bc7e58 Fixed more tests 2024-04-18 18:18:30 -06:00
Tig
a48146af82 Tons of unit test updates 2024-04-18 09:59:07 -06:00
Tig
88222c4dfd Fixed clipping - mostly: Still an issue w/ subviews of adornments 2024-04-14 13:22:25 -06:00
Tig
5c36db22a4 merge 2024-04-09 09:02:55 -04:00
Tig
40ae272944 Refactored MouseEnter/Leave APIs to match design guidelines 2024-04-06 08:15:57 -04:00
Tig
50f9b3559e Merge branch 'v2_3269_Bounds-ContentArea' of tig:tig/Terminal.Gui into v2_3269_Bounds-ContentArea 2024-04-05 11:48:57 -04:00
Tig
c5b7b084a9 Way too big a committ.... but I got carried away.
- Started MouseEventEventArgs -> MouseEvent transition - for OnMouseEvent. Partially fixes #3029.
- Refactored Appliation.OnMouseEvent and View.OnMouseEvent to match design guidelines.
- Re-impleented highlight, enabling extensibility (see Border).
- Beefed up unit tests
2024-04-04 18:50:13 -04:00
Tig
cf97b5b708 Fixed some unit tests. Prepared for Issue #3368 2024-04-01 11:22:27 -06:00
Tig
df5f04b645 Merged v2_develop 2024-03-26 14:36:23 -06:00
BDisp
41971a6e5a Fix all tests. 2024-03-25 17:36:35 +00:00
Tig
ebc47de514 Reamed Bounds -> Viewport test rename 2024-03-14 10:24:31 -08:00
Tig
b187a8e70f Reamed Bounds -> Viewport - MOAR rename 2024-03-14 09:55:27 -08:00
Tig
3a40dec249 Reamed Bounds -> Viewport in comments 2024-03-14 07:39:12 -08:00
Tig
f6ff36968e Reamed Bounds -> ViewPort to see how it feels 2024-03-14 07:30:27 -08:00
Tig
667912a610 Fixed a buinch of bugs. Updated unit tests including some that test all views to utilize TheoryData 2024-03-09 09:00:13 -09:00
Tig
745e2c21a2 Added low-level unit tests; found latent bugs in View.Clear, Bounds, etc... Fixed. 2024-03-06 20:38:25 -07:00
Tig Kindel
7036f5f8f8 Cleaned up MouseClick related stuff. 2024-03-01 11:42:28 -07:00
Tig Kindel
bd8edbe201 Merged MouseEvent() and OnMouseEvent() 2024-02-29 17:29:25 -07:00
dodexahedron
0f9e6f091d Stage 1 of #3256 - Prepare Rect for removal (#3260)
* Replace all 342 `== null` with `is null`

* Replace 354 `!= null` with `is { }`

* Wrap these in conditionals since they break tests against Release configuration

The members they depend on do not exist in Release configuration

* Split these up and dispose properly

This test needs to be revisited for several reasons at some point.

* Fix release configuration tests

* Declare interface these already support

* Annotate constructor properly and use throw helper

* Move class to its own file

* Rename these files so they nest in the solution explorer

* Make this a record type and remove now-redundant/illegal members

* Reference passing to avoid some struct copies

* Simplify this

* Carry reference passing through as appropriate

* Turn this into a record struct

* Remove unused internal constructor and its test

It was only used by that test.

* Simplify this constructor

* This should be a property

* Simplify constructor

* Simplify GetHashCode

* Mark this ignored just in case

* Missed a couple of opportunities for reference passing

* record struct already does this by value

* Remove unused class

* Simplify the type initializer and Reset method

* Implement INotifyCollectionChanged and IDictionary by delegating to ColorSchemes

* Fix for reflection-based configuration

* Make CI  build happy by disambiguiating this attribute

* Add PERF, NOTE, QUESTION, and CONCURRENCY tags for the todo explorer

* Make this string comparison faster.

* Add a tag for unclear intent

* This is a constant

* Turn this into a constant via use of a unicode literal

* Remove this method and its test

It is unused
There's no guarantee at all that the parent process is the terminal.
There are good reasons, including that one, why there's no simple way to do it in .net.
It's also of course a windows-only thing, if using WMI.

* With the WMI method gone, we no longer need this

* Make this more efficient

* Add detail to this property's XmlDoc

* Move the general properties up top because order matters

* Make sure any constants defined at higher levels are not clobbered and define a couple more

* Put InternalsVisibleTo in its own group

* Sort dependencies alphabetically and update

* Global usings

* Split to one type per file

* Collection expression

* Fix naming

* Inline to avoid copies

* This is already a value copy (struct)

* Combine to one non-destructive mutation

* Avoid some potential boxing

* Turn on null analysis here

* Remove unnecessary cast and use real type name

* Seal this

* Fix name

* Move nested class to a nested file (no type layout change made)

* Undo naming change that isn't changed globally until next batch

* Rename Rect to Rectangle in preparation for removal

* Add baseline test for ToString checking for current behavior.

* Change to behavior matching System.Drawing.Rectangle

* Fix this test

This is not a test of Rectangle, so trust that Rectangle gets it right.

* Fix these tests the same way as the previous commit

* These should be testing against the Rectangles, not the strings

* Slightly de-couple these as well

* Test against Rectangles, not strings

* Collection expressions and constants

* Remove this

* Perform proper platform-agnostic normalization

* Make this easier to follow (naming only)

* Add a category to this

* Use raw strings for better clarity

* Some more categorization

* Re-apply backed-out naming change from parent branch

* Change GetHashCode to be equivalent to System.Drawing.Rectangle

* Update this since 6.0.0 is no longer available and prevents build

* This check is redundant with the rectangle check below

* Re-apply Rect->Rectangle name changes in these files
2024-02-22 16:46:04 -07:00