Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add support for full RGB colors and TextDecorations (#126)
* Avalonia 11.0.9 * Refactor multiple code files and update code comments Overhauled various files through code refactoring, removing unnecessary attributes, updating type definitions, cleaning up method signatures. Significant changes were made to the Core/Infrastructure platform and several TurboVision themes and templates. * Update helper method syntax and adjust bindings This commit transitions helper methods to use a new syntax, and adjusts various bindings in grid items and data templates. In several instances, template-related properties such as design width and height were removed. Changes were also made to focus management, specifically transitioning from using the deprecated FocusManager.Instance to using AvaloniaLocator for service retrieval. The GlyphRun creation was refactored in SymbolsControl.cs. * more fixes * Add Avalonia threading and improve text shaping Introduced Avalonia threading in ConsoloniaPlatform, and bound to a new ManagedDispatcherImpl. Moreover, text shaping has been improved in SymbolsControl by replacing the default measure with an enumerable list of GlyphInfo. Some code has been commented out in ApplicationStartup for later consideration. * Refactor drawing and rendering methods Removed dependency on IPlatformRenderInterface in several methods of ConsoloniaRenderInterface and adjusted corresponding logic. Improved DrawGlyphRun method's implementation in DrawingContextImpl, modifying glyphRun checks and string drawing. Made small adjustments to classes MoveConsoleCaretToPositionBrush and FourBitColorBrush for better alignment with IImmutableBrush. * application is now being run, but does not render * Welcome page is rendered * Window is painted when resized * Clickable button * - unused code * - unused button * Button shadow drawing * Button drawing/ SymbolsControl.cs drawing * text trimming is fixed * Wild text rendering * Initialize transform with Matrix Identity. The transform in the DrawingContextImpl.cs was updated to be initialized with Matrix identity. Removed the unused methods related to geometry and rendering in ConsoloniaRenderInterface.cs. Made a small adjustment to exception message in RenderTarget.cs for clarity. * Platform settings for investigation * LineBrush is rendered * ScrollViewer now works * Null reference check brought back * hit test for GlyphRun * +1, similar to avalonia * Textbox working * more textbox * keyboardnavigationhandler is back * combobox fix 1 * ComboBox drop-down works fine * array in the combobox items * Single test run. Buttons and TextBlock tests success separately. * Multiple tests now can run * ProgressBar.axaml adjusted * Separator * Dialog fixed * Entire list item is clickable * Entire row in datagrid is clickable * Custom textbox Caret * Comment removed * datagrid lines * Calendar fixed * build fixes * more quality fixes * TextBoxTests.cs * ComboBoxTests.cs * FlyoutTests.cs * PR fixes * build fixes * refactoring * formatting and small fixes * Limits to run jobs * newer analysis version and null referene fix * Delegate error * other errors * PR fixes * last warning * Automated JetBrains cleanup Co-authored-by: <[email protected]> * newer jb version * Revert "Automated JetBrains cleanup" This reverts commit e9c3497. * fix click scroll bug and wheel scroll bug. * Added full color support * renamed FourBitColorBrush with ConsoleColorBrush * Changed to use Color instead of ConsoleColor giving full spectrum * You can now directly set color properties and they will render correctly Example Background="Aquamarine" * Plumbed FontStyle/Weight through to render engine so it can render Bold text * added Colors example tab * Modified flushing buffer to flush on change of color weight or style * cleanup brush detection code * add relative Shade()/Brighten() methods add pixel tests * add support for underline * merge with master * clean up sample# * cleanup sample again * cleanup switch statement * cleanup sample * Consolidated code for converting IBrush in ConsoleBrush.FromBrush() method. Fixed warning errors Added more robust unit tests around boundaries of shade()/brighten() * add suport for linearGradientBrush on rectangles. * Update src/Tests/Consolonia.TestsCore/Consolonia.TestsCore.csproj Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update src/Consolonia.Core/Infrastructure/InputLessDefaultNetConsole.cs Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update src/Consolonia.Gallery/Gallery/GalleryViews/GalleryColors.axaml.cs Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update src/Tests/Consolonia.TestsCore/UnitTestConsole.cs Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * plumb textdecorations through instead of using Oblique * code review * fix bad auto-merge <sigh> * update packages * cleanup based on code review * Update src/Consolonia.Core/Infrastructure/InputLessDefaultNetConsole.cs Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * code review cleanup * final round of code reviews * more cleanup * more cleanup * removed consolebrush converter * Consolidate Special character logic in Symbol.GetCharacer() * add support for Radial and Conic brushs * fix unit tests * fix bug in gradient interpolation * remove -1, it was not necessary * remove testsCore from packable list * lint fixes * code rabbit changes * more lint * sigh. try again. * Automated JetBrains cleanup Co-authored-by: <[email protected]> * fix const --------- Co-authored-by: Evgeny Gorbovoy <[email protected]> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
- Loading branch information