* Remove continous press code from Application
* WIP prototype code to handle continuous press as subcomponent of View
* Prototype with Button
* Implement CWP
* Move to seperate classes and prevent double entry to Start
* Fix repeat clicking when moving mouse by removing phantom click code (old implementation of WantContinuousButtonPressed)
* Remove initial tick because it results in double activation e.g. button firing twice immediately as mouse is pressed down.
* Refactor DatePicker lamdas
* WIP investigate subcomponents instead of statics
* Add IMouseGrabHandler to IApplication
* Make mouse grabbing non static activity
* Make MouseHeldDown suppress when null fields e.g. app not initialized in tests
* Update test and remove dependency on Application
* Fix other mouse click and hold tests
* Code cleanup
* Update class diagram
* Fix bad xml doc references
* Fix timed events not getting passed through in v2 applications
* Make timed events nullable for tests that dont create an Application
* Remove strange blocking test
* WIP remove all idles and replace with zero timeouts
* Fix build of tests
* Fix unit tests
* Add wakeup call back in
* Comment out incredibly complicated test and fix others
* Fix test
* test fix
* Make Post execute immediately if already on UI thread
* Re enable test and simplify Invoke to just execute if in UI thread (up front)
* Remove xml doc references to idles
* Remove more references to idles
* Make Screen initialization threadsafe
* Add more exciting timeouts
* WIP add tests
* fix log
* fix test
* make continuous key press use smoth acceleration
* Rename _lock to _lockScreen
* Remove section on idles, they are not a thing anymore - and they kinda never were.
* Add nullable enable
* Add xml comment
* Fix namings and cleanup code
* xmldoc fix
* Rename LockAndRunTimers to just RunTimers
* Rename AddTimeout and RemoveTimeout (and event) to just Add/Remove
* Update description of MainLoop
* Commented out Run_T_Call_Init_ForceDriver_Should_Pick_Correct_Driver
* Again? Commented out Run_T_Call_Init_ForceDriver_Should_Pick_Correct_Driver
* Revert Commented out Run_T_Call_Init_ForceDriver_Should_Pick_Correct_Driver
* When mouse is released from MouseHeldDown reset host MouseState
* Fix namespaces in class diagram
* Apply @BDisp suggested fix
* Fix class diagrams
* Add lock
* Make TimeSpan.Zero definetly run
* Fix duplicate entry in package props
---------
Co-authored-by: Tig <tig@users.noreply.github.com>
* touching publish.yml
* ColorScheme->Scheme
* ColorScheme->Scheme 2
* Prototype of GetAttributeForRole
* Badly broke CM
* Further Badly broke CM
* Refactored CM big-time. View still broken
* All unit test pass again. Tons added. CM is still WIP, but Schemes is not mostly refactored and working.
* Actually:
All unit test pass again.
Tons added.
CM is still WIP, but Schemes is not mostly refactored and working.
* Bug fixes.
DeepMemberWiseClone cleanup
* Further cleanup of Scope<T>, ConfigProperty, etc.
* Made ConfigManager thread safe.
* WIP: Broken
* WIP: new deep clone impl
* WIP: new deep clone impl is done. Now fixing CM
* WIP:
- config.md
- Working on AOT clean up
- Core CM is broken; but known.
* WIP
* Merged.
Removed CM from Application.Init
* WIP
* More WIP; Less broke
* All CM unit tests pass... Not sure if it actually works though
* All unit tests pass... Themes are broken though in UI Cat
* CM Ready for review?
* Fixed failures due to TextStyles PR
* Working on Scheme/Attribute
* Working on Scheme/Attribute 2
* Working on Scheme/Attribute 3
* Working on Scheme/Attribute 4
* Working on Scheme/Attribute 5
* Working on Scheme/Attribute 6
* Added test to show how awful memory usage is
* Improved schema. Updated config.json
* Nade Scope<T> concurrentdictionary and added test to prove
* Made Themes ConcrurrentDictionary. Added bunches of tests
* Code cleanup
* Code cleanup 2
* Code cleanup 3
* Tweaking Scheme
* ClearJsonErrors
* ClearJsonErrors2
* Updated Attribute API
* It all (mostly) works!
* Skip odd unit test
* Messed with Themes
* Theme tweaks
* Code reorg. New .md stuff
* Fixed Enabled. Added mock driver
* Fixed a bunch of View.Enabled related issues
* Scheme -> Get/SetScheme()
* Cleanup
* Cleanup2
* Broke something
* Fixed everything
* Made CM.Enable better
* Text Style Scenario
* Added comments
* Fixed UI Catalog Theme Changing
* Fixed more dynamic CM update stuff
* Warning cleanup
* New Default Theme
* fixed unit test
* Refactoring Scheme and Attribute to fix inheritance
* more unit tests
* ConfigProperty is not updating schemes correctly
* All unit tests pass.
Code cleanup
* All unit tests pass.
Code cleanup2
* Fixed unit tests
* Upgraded TextField and TextView
* Fixed TextView !Enabled bug
* More updates to TextView. More unit tests for SchemeManager
* Upgraded CharMap
* API docs
* Fixe HexView API
* upgrade HexView
* Fixed shortcut KeyView
* Fixed more bugs. Added new themes
* updated themes
* upgraded Border
* Fixed themes memory usage...mostly
* Fixed themes memory usage...mostly2
* Fixed themes memory usage...2
* Fixed themes memory usage...3
* Added new colors
* Fixed GetHardCodedConfig bug
* Added Themes Scenario - WIP
* Added Themes Scenario
* Tweaked Themes Scenario
* Code cleanup
* Fixed json schmea
* updated deepdives
* updated deepdives
* Tweaked Themes Scenario
* Made Schemes a concurrent dict
* Test cleanup
* Thread safe ConfigProperty tests
* trying to make things more thread safe
* more trying to make things more thread safe
* Fixing bugs in shadowview
* Fixing bugs in shadowview 2
* Refactored GetViewsUnderMouse to GetViewsUnderLocation etc...
* Fixed dupe unit tests?
* Added better description of layout and coordiantes to deep dive
* Added better description of layout and coordiantes to deep dive
* Modified tests that call v2.AddTimeout; they were returning true which means restart the timer!
This was causing mac/linux unit test failures.
I think
* Fixed auto scheme.
Broke TextView/TextField selection
* Realized Attribute.IsExplicitlySet is stupid; just use nullable
* Fixed Attribute. Simplified. MOre theme testing
* Updated themes again
* GetViewsUnderMouse to GetViewsUnderLocation broke TransparentMouse.
* Fixing mouseunder bugs
* rewriting...
* All working again.
Shadows are now slick as snot.
GetViewsUnderLocation is rewritten to actually work and be readable.
Tons more low-level unit tests.
Margin is now actually ViewportSettings.Transparent.
* Code cleanup
* Code cleanup
* Code cleanup of color apis
* Fixed Hover/Highlight
* Update Examples/UICatalog/Scenarios/AllViewsTester.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update Examples/UICatalog/Scenarios/CharacterMap/CharacterMap.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update Examples/UICatalog/Scenarios/Clipping.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Fixed race condition?
* reverted
* Simplified Attribute API by removing events from SetAttributeForRole
* Removed recursion from GetViewsAtLocation
* Removed unneeded code
* Code clean up.
Fixed Scheme bug.
* reverted temporary disable
* Adjusted scheme algo
* Upgraded TextValidateField
* Fixed TextValidate bugs
* Tweaks
* Frameview rounded border by default
* API doc cleanup
* Readme fix
* Addressed tznind feeback
* Fixed more unit test issues by protecting Application statics from being set if Application.Initialized is not true
* Fixed more unit test issues by protecting Application statics from being set if Application.Initialized is not true 2
* cleanup
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* 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
* 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>