Alexandre Mutel
e5aff32225
Fix TextLayout.Width calculation ( #18305 ) ( #18310 )
* Fix TextLayout.Width calculation (#18305 )
* Use WinSymbols3.ttf
2 years ago
Benedikt Stebner
56f6296066
Calculate Bounds and InkBounds for TextLayout to be able to calculate the minmal required width. ( #17721 )
2 years ago
Herman K
88967de49e
Ability to configure font features ( #14157 )
* Ability to configure font features
* Minor adjustments
---------
Co-authored-by: Herman Kirshin <herman.kirshin@jetbrains.com>
Co-authored-by: Benedikt Stebner <Gillibald@users.noreply.github.com>
3 years ago
Benedikt Stebner
cc507ba359
Handle extra lines during hit testing
3 years ago
Benedikt Stebner
e69661b353
Rework MaxLines to limit how many lines are visible at once and don't prevent additional input if MaxLines is reached
3 years ago
Benedikt Stebner
f153c626f8
Fix TextLineImpl.GetCharacterHitFromDistance for lines that include a TextEndOfLine run
Fix overhang handling to prevent clipped text for slanted glyphs
Fix TextBox selection issues
3 years ago
Benedikt Stebner
a6bc0f9f73
[TextLayout] Do not call Draw with current TextLine.Start offset
3 years ago
Benedikt Stebner
1ecdf32520
Remove trailing whitespace for right aligned text
Fix justification for non wrapped text
Fix text trimming for RTL flow direction
4 years ago
Benedikt Stebner
14fba2e53a
Rework HitTestTextRange
4 years ago
Julien Lebosquain
5ffd961742
Perf: improved text wrapping
4 years ago
Julien Lebosquain
a24e48f105
Text layout: ensure RentedList are returned in case of exceptions
4 years ago
Julien Lebosquain
63f6ef63af
Perf: pass FontManager and typefaces around during text layout
4 years ago
Julien Lebosquain
91f89c5176
Added FormattingObjectPool to reduce temp allocs during text layout
4 years ago
Julien Lebosquain
658fd804af
Removed some temporary List<T> from text layout
4 years ago
Sergey Mikolaitis
39374451dd
[Text] Add pooling to shapedBuffer. works only with dispose.
4 years ago
Benedikt Stebner
9f309415c1
Allow to process non text TextRuns
Add TextEndOfLine to a TextLine's TextRuns
4 years ago
Benedikt Stebner
895d85aa89
Implement CharacterBufferReference and related classes
4 years ago
Benedikt Stebner
17b2834d21
Implement letter spacing
4 years ago
Benedikt Stebner
81b0dce302
Fix RichTextBlock Inlines update handling
4 years ago
Benedikt Stebner
03b8b2eb5e
Show ellipsis when MaxLines are reached
4 years ago
Benedikt Stebner
eb627f393c
More fixes
4 years ago
Benedikt Stebner
6ab5774b80
Introduce TextLine.Justify for custom justification
4 years ago
Benedikt Stebner
6502fa1ef7
More TextAlignment fixes
4 years ago
Benedikt Stebner
006aef2388
Rework hit testing to not rely on cluster values and instead use the currently covered TextSourceLength
4 years ago
Benedikt Stebner
69f9e017f3
Fix text selection
Fix empty line RTL inital caret position
4 years ago
Benedikt Stebner
050ac5fbba
Fix line metrics for empty lines that are processed by TextWrapping
4 years ago
Steven Kirk
fb0da85ad3
Merge core libraries. ( #5831 )
* Merge core libraries.
Everything below `Avalonia.Controls` into `Avalonia.Base`.
* Move new files to correct place.
* Removed unused dirs/projects,
* Removed outdated references from theme assemblies.
* Merge unit tests to match new assembly layout.
* Fixup test namespaces.
* Make directory match namespace.
* Move files to match namespace.
* Move files to match namespace.
* Fix up incorrect namespace.
`Avalonia.Visuals.Media.Imaging` -> `Avalonia.Media.Imaging`.
* Fix resource URL.
* Removed outdated dependencies.
* Added missing project reference.
* Update test namespaces.
* Fix merge error.
* Fix merge errors.
* Fix bad merge in WindowsInteropTest.csproj.
* Fix up merge errors in csprojs.
* Remove merged tests from nuke.
* Fix up namespace.
* Fix compile error.
* Fix failing tests.
Now that more unit tests are present in Avalonia.Base.UnitTests, general `AvaloniaObject` properties are getting registered. Ignore those.
Co-authored-by: Jumar Macato <16554748+jmacato@users.noreply.github.com>
4 years ago
Benedikt Stebner
768024a879
Implement InlineUIContainer
4 years ago
Benedikt Stebner
59d8f86509
Better WPF compat
Disable run sort
4 years ago
Benedikt Stebner
9250d93407
Implement embedded runs
Improve text edit navigation
Implement IncrementalTabWidth
4 years ago
Dariusz Komosinski
6bcf9c2973
Refactor text trimming and implement prefix trimming.
5 years ago
Benedikt Stebner
bfae67dbdb
Fix text edit shortcuts
Fix caret rendering at line ends
5 years ago
Benedikt Stebner
1db3296611
Fix TextBlock/TextPresenter measure/arrange
Fix TextTrimming for small width
Fix text splitting
Fix text editing shortcuts
5 years ago
Benedikt Stebner
525af8f869
Fix selection rect merge
Fix ime rect update
5 years ago
Benedikt Stebner
3d992ce75b
Fix selection when the mouse is moved underneath the bounding box
5 years ago
Dariusz Komosinski
361bfeb1a0
Foreground can be nullable as well.
5 years ago
Dariusz Komosinski
af97568819
Text can be nullable.
5 years ago
Benedikt Stebner
74be5c807d
Merge selection rects if they overlap
5 years ago
Benedikt Stebner
79298e3375
Fix nit
5 years ago
Benedikt Stebner
4bac7fd953
Fix HitTestTextRange bidi
5 years ago
Benedikt Stebner
27c7a5c724
Fix issues mentioned during review
5 years ago
Benedikt Stebner
3f32f8e390
Fix GetLineIndexFromCharacterIndex
5 years ago
Benedikt Stebner
b815a22d5a
Port WPF's FormattedText to Avalonia and rework TextPresenter
5 years ago
ingen084
3908e4d71d
Fix text wrapping behavior ( #7397 )
* Allow one-character runs line breaks
* Remove unuseful ignored nullable
* Prevent redundant allocations
* Fix empty line handling
* Update TextFormatterImpl.cs
Co-authored-by: Benedikt Stebner <b.stebner@outlook.de>
Co-authored-by: Benedikt Stebner <Gillibald@users.noreply.github.com>
5 years ago
Steven Kirk
22a55fed27
Added a lot of nullable annotations to Avalonia.Visuals.
Except types related to text and one method in `DrawingContext` which I'm not sure what to do with.
5 years ago
Benedikt Stebner
9bc9cd46fe
Include the TextLine's Start offset to the TextLayout's size calculation.
5 years ago
Benedikt Schroeder
08a72e893c
Increase TextFormatter compatibility with WPF's version
5 years ago
Benedikt Schroeder
888dd2b61b
Simplify PushPostTransform usage
6 years ago
Benedikt Schroeder
c2fad766e5
Rework GlyphRun BaselineOrigin
6 years ago
Benedikt Schroeder
a2a0fba1c2
Ignore invisible characters
6 years ago