* Add API for querying the size of a panel
* demo app: animate backend panel collapse
* Add helper function for animating panels
* More animation functions
* Add line to changelog
* Added functionality to image.rs that allows for creating an image from rgb instead of just rgba
* remove "unmultiplied"
* remove "unmultiplied"
* rgba -> rgb
Co-authored-by: Mingun <Alexander_Sergey@mail.ru>
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
Co-authored-by: Mingun <Alexander_Sergey@mail.ru>
* using a shared vertex & index buffer in wgpu renderer
capacity each doubles when exceeded.
This change means a lot less allocation during egui's lifetime.
* changelog update
* minor code cleanup and changelog fix
* fix linter issue
* wgpu renderer now always requires a RenderPass being passed in
This also implies that it no longer owns the depth buffer! (why would it anyways!)
* wgpu-renderer now passes a command encoder to prepare
* add changelog entries
* fixup changelogs, fix variable name
* add a test suite demonstrating the issue
* fix false positives in RwLock, thus passing the new test suite
* friendler output
* augmented test suite with RWlock specifics (failing as expected!)
* full support for RWLocks
* implement support for guard remappings
* Add some newlines
* join `use` statements
* pass cranky
* addressing PR comments
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
* Add ability to control double click reset in plot widget
* improve docstring
* small optimization
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
* basic working wgpu @ webgl on websys
* fix glow compile error
* introduced WebPainter trait, provide wgpu renderstate
* WebPainterWgpu destroy implemented
* make custom3d demo work on wgpu backend
* changelog entry for wgpu support eframe wasm
* remove temporary logging hack
* stop using pollster for web
we're actually not allowed to block - this only worked because wgpu on webgl doesn't actually cause anything blocking. However, when trying webgpu this became an issue
* revert cargo update
* compile error if neither glow nor wgpu features are enabled
* code cleanup
* Error handling
* Update changelog with link
* Make sure --all-features work
* Select best framebuffer format from the available ones
* update to wasm-bindgen 0.2.83
* Fix typo
* Clean up Cargo.toml
* Log about using the wgpu painter
* fixup wgpu labels
* fix custom3d_wgpu_shader ub padding
* remove duplicated uniforms struct in wgsl shader for custom3d
* Update docs: add async/await to the web 'start' function
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
Closes https://github.com/emilk/egui/issues/2068
Before this PR, the default font, Ubuntu-Light, was ~11% smaller
than it should have been, and the default monospace font, Hack,
was ~14% smaller. This means that setting the font size `12` in egui
would yield smaller text than using that font size in any other app.
Ooops!
The change is that this PR now takes into account the ttf properties
`units_per_em` and `height_unscaled`.
If your egui application has specified you own font sizes or text styles
you will see the text in your application grow
larger, unless you go in and compensate by dividing all font sizes by
~1.21 for Ubuntu-Light/Proportional and ~1.16 for Hack/Monospace,
and with something else if you are using a custom font!
This effects any use of `FontId`, `RichText::size`, etc.
This PR changes the default `Style::text_styles` to compensate,
so the default egui style should look the same before and after this PR.