2023-04-03 08:27:28 -06:00
|
|
|
# Changelog
|
|
|
|
|
|
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
|
|
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
|
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
|
|
2023-10-19 09:57:40 -06:00
|
|
|
## [0.10.0] - 2023-10-19
|
|
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
|
|
- Added `Buffer::set_rich_text` method
|
|
|
|
|
- Add `Align::End` for end-based alignment
|
|
|
|
|
- Add more `Debug` implementations
|
|
|
|
|
- Add feature to warn on missing glyphs
|
|
|
|
|
- Add easy conversions for tuples/arrays for `Color`
|
|
|
|
|
- Derive `Clone` for `AttrsList`
|
|
|
|
|
- Add feature to allow `fontdb` to get `fontconfig` information
|
|
|
|
|
- Add benchmarks to accurately gauge improvements
|
|
|
|
|
- Add image render tests
|
|
|
|
|
- Allow BSD-2-Clause and BSD-3-Clause licneses in cargo-deny
|
|
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
|
|
- Fix `no_std` build
|
|
|
|
|
- Fix `BufferLine::set_align` docs to not mention shape reset is performed
|
|
|
|
|
- Fix width computed during unconstrained layout and add test for it
|
|
|
|
|
- Set `cursor_moved` to true in `Editor::insert_string`
|
|
|
|
|
- Fix `NextWord` action in `Editor` when line ends with word boundaries
|
|
|
|
|
- Fix building `editor-libcosmic` with `vi` feature
|
|
|
|
|
- Respect `fontconfig` font aliases when enabled
|
|
|
|
|
- Fix rendering of RTL words
|
|
|
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
|
|
- Unify `no_std` and `std` impls of `FontSystem`
|
|
|
|
|
- Move `hashbrown` behind `no_std` feature
|
|
|
|
|
- Require either `std` or `no_std` feature to be specified
|
|
|
|
|
- Use a scratch buffer to reduce allocations
|
|
|
|
|
- Enable `std` feature with `fontconfig` feature
|
|
|
|
|
- Enable `fontconfig` feature by default
|
|
|
|
|
- Refactor code in `ShapeLine::layout`
|
|
|
|
|
- Set MSRV to `1.65`
|
|
|
|
|
- Make `Edit::copy_selection` immutable
|
|
|
|
|
- Rewrite `PreviousWord` logic in `Editor` with iterators
|
|
|
|
|
- Use attributes at cursor position for insertions in `Editor`
|
|
|
|
|
- Update all dependencies
|
|
|
|
|
- Use `self_cell` for creating self-referential struct
|
|
|
|
|
|
2023-07-06 07:37:03 -06:00
|
|
|
## [0.9.0] - 2023-07-06
|
|
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
|
|
- Add `Shaping` enum to allow selecting the shaping strategy
|
|
|
|
|
- Add `Buffer::new_empty` to create `Buffer` without `FontSystem`
|
|
|
|
|
- Add `BidiParagraphs` iterator
|
|
|
|
|
- Allow setting `Cursor` color
|
|
|
|
|
- Allow setting `Editor` cursor
|
|
|
|
|
- Add `PhysicalGlyph` that allows computing `CacheKey` after layout
|
|
|
|
|
- Add light syntax highlighter to `libcosmic` example
|
|
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
|
|
- Fix WebAssembly support
|
|
|
|
|
- Fix alignment when not wrapping
|
|
|
|
|
- Fallback to monospaced font if Monospace family is not found
|
|
|
|
|
- Align glyphs in a `LayoutRun` to baseline
|
|
|
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
|
|
- Update `fontdb` to 0.14.1
|
|
|
|
|
- Replace ouroboros with aliasable
|
|
|
|
|
- Use `BidiParagraphs` iterator instead of `str::Lines`
|
|
|
|
|
- Update `libcosmic` version
|
|
|
|
|
|
|
|
|
|
### Removed
|
|
|
|
|
|
|
|
|
|
- `LayoutGlyph` no longer has `x_int` and `y_int`, use `PhysicalGlyph` instead
|
|
|
|
|
|
2023-04-03 08:27:28 -06:00
|
|
|
## [0.8.0] - 2023-04-03
|
|
|
|
|
|
|
|
|
|
### Added
|
|
|
|
|
|
|
|
|
|
- `FontSystem::new_with_fonts` helper
|
|
|
|
|
- Alignment and justification
|
|
|
|
|
- `FontSystem::db_mut` provides mutable access to `fontdb` database
|
|
|
|
|
- `rustybuzz` is re-exported
|
|
|
|
|
|
|
|
|
|
### Fixed
|
|
|
|
|
|
|
|
|
|
- Fix some divide by zero panics
|
|
|
|
|
- Redox now uses `std` `FontSystem`
|
|
|
|
|
- Layout system improvements
|
|
|
|
|
- `BufferLinke::set_text` has been made more efficient
|
|
|
|
|
- Fix potential panic on window resize
|
|
|
|
|
|
|
|
|
|
### Changed
|
|
|
|
|
|
|
|
|
|
- Use `f32` instead of `i32` for lengths
|
|
|
|
|
- `FontSystem` no longer self-referencing
|
|
|
|
|
- `SwashCash` no longer keeps reference to `FontSystem`
|
|
|
|
|
|
|
|
|
|
### Removed
|
|
|
|
|
|
|
|
|
|
- `Attrs::monospaced` is removed, use `Family::Monospace` instead
|