You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Add setting LaTeXSettings.PlaceholderBlinks + unit tests
* Fix PlaceholderBlinks setting + add unit test CaretStillBlinks
* Non-blinking placeholder test "CaretStillBlinks" should also verify that the RestingNucleus is shown for all placeholders if the caret blinks
* Refactor: if PlaceholderBlinks is false and ShownThroughPlaceholder true then don't change the CaretState instead of ignoring the changed state later on
* Remove MathKeyboardCaretState.ShownThroughPlaceholder
and avoid invoking RedrawRequested when state has not changed
* Remove nuget.config
* add xml
* Set PlaceholderBlinks default to false
* Don't show cursor if at placeholder
* ternary conditional operator
* fix ProcessCaretState
* Refactor away ProcessCaretState() + fix indentation
Also:
- Set PlaceholderBlinks back to true because I don't like to do a commit that has failing unit tests. A commit that changes a default, should also change the tests. I will have a look at the changes needed.
* change LaTeXSettings.PlaceholderBlinks again and remove tests checking for default blinking behaviour. Remove nuget.Config
* Restore parts of some tests + mark CaretIsOverriddenByPlaceholder as "fix or delete"
* Replace CaretState enum property by boolean properties "InsertionPositionHighlighted" and "ShouldDrawCaret"
General notes:
Having a CaretState that says "MathKeyboardCaretState.Shown" while actually no caret is shown because a placeholder is shown is wrong. Having a CaretState "MathKeyboardCaretState.Hidden" and "MathKeyboardCaretState.TemporarilyHidden" is not needed: you can use StopBlinking() just after setting the CaretState you want to keep until the next key press. These two observations resulted in the boolean properties "InsertionPositionHighlighted" (that makes sense for both the caret AND the placeholder appearance) and "ShouldDrawCaret".
Because Drawing the caret is done in CSharpMath.Rendering.FrontEnd, the unit tests of CSharpMath.Editor can only test "ShouldDraw" and unit tests that do that can cover the same as before (when it was tested via a MathKeyboardCaretState enum).
Notes about moved unit tests:
- CaretIsOverriddenByPlaceholder has been replaced by PlaceholderDoesNotBlinkAndNoCaretVisible.
- CaretMovesWithPlaceholder has been replaced by NonBlinkingActivePlaceholderMoves.
* Make mergable without conflict (after #179 for IDisposable MathKeyboard)
* Move method before first using
* Fix inconsistent code style
* Reverse assertion order
* Reverse assertion order - part 2
Co-authored-by: Charles Roddie <charles.roddie@mathspire.com>
Co-authored-by: FoggyFinder <FoggyFinder@yandex.ua>
0 commit comments