When targeting wasm32-unknown-unknown, there's on system font fallback
on fontique, because there isn't a way to discover and fetch fonts from.
With QNX there are ways of discovering fonts on the file system, but
neither we nor fontique do that yet.
So do what we did with fontdb: Include a trimmed version of DejaVu Sans
and install it as fallback for everything.
* Parlay init
* Start on femtovg
* Cargo fmt
* Decimate fonts.rs
* Use fill_glyphs
* [autofix.ci] apply automated fixes
* Use positioned_glyphs instead
* Clean up a little
* Format
* [autofix.ci] apply automated fixes
* Few fixes
* [autofix.ci] apply automated fixes
* More small changes
* Clean up
* [autofix.ci] apply automated fixes
* Display text cursor
* Handle text_input_cursor_rect_for_byte_offset
* stoke glyphs
* Handle text selections
* Stroke selection as well
* Fix wierd cargo.toml padding
* Move selection and stroking to brush settings
* Removed commented out code
* [autofix.ci] apply automated fixes
* Cursor sizing
* [autofix.ci] apply automated fixes
* Mark unused variables
* _scale -> scale
* Handle a lot more layout options
* Use the parley cursor
* Removed unused PhysicalPoint
* Start combining stuff WIP
* Move things into i_slint_core::textlayout::sharedparley
* [autofix.ci] apply automated fixes
* Go back to splitting paragraphs correctly
* Handle font_metrics via ttf_parser
* Move (lack of) overflow handling to sharedparley
* [autofix.ci] apply automated fixes
* impl Deref for Layout
* Be more explit about the width passed to layout being physical
* Cargo fmt, rename fonts to font_cache
* Use a thread local for layout context
* Use parley selection
* fix femtovg wgpu
* Switch femtovg branch
* max_physical_width -> max_width
* Box contexts
* [autofix.ci] apply automated fixes
* Fallback to GenericFamily::SansSerif if no font is set
* Add paint.set_font_size
* Use max_physical_height
* Fix text_size to return correct logical sizes
* Use femtovg from crates.io
* Fix C++ build
The `sharedparley` module declares a public `Layout` struct, which
clashes with the `Layout` struct we use in the C++ API. The former
however is entirely internal to Rust, so we can instruct cbindgen to
ignore the module.
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Simon Hausmann <simon.hausmann@slint.dev>