Héctor Ramón Jiménez
c2bef6a345
Align glyphs in a LayoutRun to baseline
2023-06-16 02:15:44 +02:00
Dima Rets
6dba04df08
allow setting cursor
2023-06-10 12:53:34 +01:00
Jeremy Soller
b5f45f81f6
Merge pull request #124 from tigregalis/iter-bidi-para
...
Replace use of `str::Lines` with `unicode-bidi`-based iterator
2023-06-09 07:03:07 -06:00
tigregalis
5ab509ebaa
use alloc::vec instead of std::vec
2023-06-09 11:26:08 +08:00
tigregalis
6e336ad1cd
replace use of str::lines with BidiParagraphs
2023-06-09 11:26:07 +08:00
tigregalis
e298259dd5
introduce BidiParagraphs iterator
2023-06-09 11:22:52 +08:00
tigregalis
2ed9c34796
use Buffer::new_empty in Buffer::new
2023-06-09 11:11:42 +08:00
tigregalis
cfb6760fa2
introduce Buffer::new_empty
2023-06-09 11:09:16 +08:00
Dima Rets
0eb08d218c
allow setting cursor color
2023-06-08 20:04:56 +01:00
Jeremy Soller
9062cce140
Merge pull request #122 from hecrj/feature/shaping-switch
...
`Shaping` strategy selection
2023-06-08 12:47:04 -06:00
Jeremy Soller
39895c988a
Merge pull request #132 from trimental/monospaced-fallback
...
Fallback to monospaced font if Monospace family is not found
2023-06-08 12:38:17 -06:00
Jeremy Soller
ca48c86f2b
Merge pull request #131 from nicoburns/fix/non-wrapped-alignment
...
Fix alignment when using `Wrap::None`
2023-06-08 12:33:24 -06:00
Jeremy Soller
f0becfdb54
Fix comment typo
2023-06-08 12:32:34 -06:00
bjorn3
95e36249d5
Remove the dependency on ouroboros
...
This reduces compilation time by removing a dependency on syn and other
dependencies of ouroboros_macros. In addition it saves a lot of unused
codegened methods.
On my laptop (2 core + HT) this reduces compilation time by ~20%. On a
many core system this doesn't help much though as the critical path path
consists of both ttf-parser -> rustybuzz and swash. Further gains will
likely need to be made by reducing compilation time for these crates.
Benchmark 1: cargo build
Time (mean ± σ): 25.150 s ± 0.167 s [User: 84.414 s, System: 7.335 s]
Range (min … max): 24.909 s … 25.444 s 10 runs
Benchmark 1: cargo build
Time (mean ± σ): 19.819 s ± 0.226 s [User: 67.754 s, System: 5.592 s]
Range (min … max): 19.492 s … 20.140 s 10 runs
The code is based on an expansion of the ouroboros macro, cleaned up to
remove all unused methods and inline most functions that are only called
once.
2023-06-08 18:00:42 +02:00
Lucas Timmins
e1e9fb5215
Fallback to monospaced font if Monospace family is not found
2023-05-20 02:05:52 +08:00
Nico Burns
8d37da51b9
Fix non-wrapped alignment
2023-05-19 02:45:35 +01:00
Héctor Ramón Jiménez
b85d6a4f23
Use Vec::new instead of vec! macro
2023-04-21 20:56:11 +02:00
Héctor Ramón Jiménez
87d75531b7
Allow Shaping::Basic only if swash feature is enabled
2023-04-21 20:47:02 +02:00
Héctor Ramón Jiménez
a5c548b12f
Fix syntect module
2023-04-21 20:29:56 +02:00
Héctor Ramón Jiménez
9e559e150d
Write docs for Shaping enum
2023-04-21 20:27:00 +02:00
Héctor Ramón Jiménez
0f055c0a13
Replace skip_shaping boolean with Shaping enum
2023-04-21 20:24:44 +02:00
Héctor Ramón Jiménez
ad111a1df1
Add skip_shaping flag to avoid expensive shaping when not needed
2023-04-19 00:24:43 +02:00
Jeremy Soller
f2445987fb
Merge pull request #118 from pop-os/checked_sub
...
Use checked_sub to fix panic on window resize.
2023-03-31 06:43:30 -06:00
Jeremy Soller
615dc51907
Merge pull request #119 from CryZe/fix-no-std-signature
...
Fix `FontSystem::new_with_locale_and_db` Signature
2023-03-31 06:42:26 -06:00
13r0ck
e790e8e718
use checked_sub to fix panic on window resize.
...
bug link: https://github.com/iced-rs/iced/issues/1773
2023-03-30 12:40:14 -06:00
Jeremy Soller
3c7dc1f657
Remove monospaced from attrs
2023-03-30 08:04:52 -06:00
Christopher Serr
71281a5d79
Fix FontSystem::new_with_locale_and_db Signature
...
It turns out that the `no_std` version of
`FontSystem::new_with_locale_and_db` doesn't match the `std` version.
This fixes that.
2023-03-29 22:36:54 +02:00
Jeremy Soller
521acb64e0
Merge pull request #117 from CryZe/reuse-memory-in-set-text
...
Allow buffer reuse in `BufferLine`
2023-03-27 18:27:46 -06:00
Christopher Serr
aff886da64
Allow buffer reuse in BufferLine
...
With the way `BufferLine::set_text` was written, you would always clone
the `String` / `str` that you are passing in, resulting in the function
almost not being any better than simply creating a new `BufferLine`.
This ensures the internal buffer is reused.
2023-03-27 23:14:40 +02:00
Christopher Serr
8a14734033
Expose rustybuzz in the public API
...
This exposes `rustybuzz` on top of `fontdb`. This is in particular
useful if you want to query the font for additional information. This is
already publically exposed via `Font::rustybuzz()`, but the types were
not re-exported, so it was impossible to properly use that function.
2023-03-27 23:08:32 +02:00
Jeremy Soller
9ebbc33792
Merge branch 'mut-font-system' of https://github.com/geieredgar/cosmic-text into geieredgar-mut-font-system
2023-03-17 18:15:45 -06:00
Edgar Geier
d297a6a48a
Call get_font lazily
2023-03-14 00:39:50 +01:00
Hojjat
05b069911a
Fix indices (suggestions by geieredgar)
2023-03-13 13:08:35 -06:00
Hojjat
01e609f3d6
Merge branch 'pop-os:main' into fix-layout-overflow
2023-03-13 11:40:42 -06:00
Hojjat
7fa51c6404
Fixed some typos
2023-03-13 08:50:24 -06:00
Edgar Geier
f86acd325c
Lazily call make_shared_face_data
2023-03-13 11:15:36 +01:00
Hojjat
8d503af956
bugfix: mixed ltr+rtl overflow
2023-03-12 21:37:10 -06:00
Edgar Geier
af4378d753
Add db_mut method to FontSystem
2023-03-12 10:39:58 +01:00
Edgar Geier
41468c17a2
Fix doctest
2023-03-12 10:39:58 +01:00
Edgar Geier
3331f41d7a
Improve documentation
2023-03-12 10:39:57 +01:00
Edgar Geier
384c5c1fdc
Remove Mutex from FontSystem
2023-03-12 10:39:56 +01:00
Edgar Geier
46e9ef0246
Make BorrowedWithFontSystem borrow FontSystem mutably
2023-03-12 10:39:56 +01:00
Edgar Geier
057b5b6fa9
Extract borrow of FontSystem from Buffer
2023-03-12 10:39:54 +01:00
Edgar Geier
bff5aaaea3
Make FontSystem not self-referencing
2023-03-12 10:23:54 +01:00
Jeremy Soller
c4a8d521f6
Add default Redox font directory (/ui/fonts)
2023-03-08 21:01:53 -07:00
Jeremy Soller
e43cc03354
Use std font system for redox
2023-03-08 20:44:26 -07:00
Edgar Geier
2c1d564d62
Update fontdb dependency to version 0.13
2023-03-03 13:07:49 +01:00
Jeremy Soller
eca804c732
Revert "Make FontSystem not self-referencing and update fontdb and rustybuzz"
2023-03-02 18:16:57 -07:00
Edgar Geier
f8bc71af0a
Update fontdb dependency to version 0.13
2023-03-03 00:53:00 +01:00
Edgar Geier
750d988429
Make FontKey repr(transparent) if swash feature is disabled
2023-03-03 00:53:00 +01:00