Emil Ernerfeldt
5514a8afda
Update dependencies ( #1933 )
...
* Update ahash from 0.7 to 0.8
Opt to use ahash::HashMap over ahash::AHashMap
* Fix ahash compilation for web
* Update ron to 0.8
* Add note about why we cannot update tiny-skia
* cargo update
Updating crates.io index
Updating android_system_properties v0.1.2 -> v0.1.4
Updating anyhow v1.0.58 -> v1.0.62
Updating async-broadcast v0.4.0 -> v0.4.1
Updating async-channel v1.6.1 -> v1.7.1
Updating async-io v1.7.0 -> v1.8.0
Updating async-task v4.2.0 -> v4.3.0
Updating async-trait v0.1.56 -> v0.1.57
Updating backtrace v0.3.65 -> v0.3.66
Updating bit-set v0.5.2 -> v0.5.3
Updating bumpalo v3.10.0 -> v3.11.0
Updating bytemuck v1.10.0 -> v1.12.1
Updating bytemuck_derive v1.1.0 -> v1.2.1
Updating bytes v1.1.0 -> v1.2.1
Updating cast v0.2.7 -> v0.3.0
Updating chrono v0.4.19 -> v0.4.22
Updating clap v3.2.8 -> v3.2.17
Updating clipboard-win v4.4.1 -> v4.4.2
Updating combine v4.6.4 -> v4.6.6
Updating concurrent-queue v1.2.2 -> v1.2.4
Updating criterion v0.3.5 -> v0.3.6
Updating criterion-plot v0.4.4 -> v0.4.5
Updating crossbeam-channel v0.5.5 -> v0.5.6
Updating crossbeam-deque v0.8.1 -> v0.8.2
Updating crossbeam-epoch v0.9.9 -> v0.9.10
Updating crossbeam-utils v0.8.10 -> v0.8.11
Updating document-features v0.2.1 -> v0.2.3
Updating dyn-clone v1.0.6 -> v1.0.9
Removing easy-parallel v3.2.0
Updating either v1.7.0 -> v1.8.0
Updating enum-map v2.1.0 -> v2.4.1
Updating enum-map-derive v0.8.0 -> v0.10.0
Updating event-listener v2.5.2 -> v2.5.3
Updating fastrand v1.7.0 -> v1.8.0
Updating futures-core v0.3.21 -> v0.3.23
Updating futures-io v0.3.21 -> v0.3.23
Updating futures-sink v0.3.21 -> v0.3.23
Updating futures-task v0.3.21 -> v0.3.23
Updating futures-util v0.3.21 -> v0.3.23
Updating gimli v0.26.1 -> v0.26.2
Updating gpu-descriptor v0.2.2 -> v0.2.3
Removing hashbrown v0.11.2
Removing hashbrown v0.12.1
Adding hashbrown v0.12.3
Adding iana-time-zone v0.1.46
Updating image v0.24.2 -> v0.24.3
Updating inplace_it v0.3.3 -> v0.3.4
Updating itoa v1.0.2 -> v1.0.3
Updating js-sys v0.3.58 -> v0.3.59
Updating libc v0.2.126 -> v0.2.132
Updating libm v0.2.2 -> v0.2.5
Removing memmap2 v0.3.1
Removing memmap2 v0.5.4
Adding memmap2 v0.5.7
Removing num-iter v0.1.43
Updating object v0.28.4 -> v0.29.0
Updating once_cell v1.13.0 -> v1.13.1
Updating os_str_bytes v6.1.0 -> v6.3.0
Updating owned_ttf_parser v0.15.0 -> v0.15.1
Removing parking_lot v0.11.2
Removing parking_lot_core v0.8.5
Updating plotters v0.3.1 -> v0.3.3
Updating plotters-backend v0.3.2 -> v0.3.4
Updating plotters-svg v0.3.1 -> v0.3.3
Updating proc-macro-crate v1.1.3 -> v1.2.1
Updating proc-macro2 v1.0.40 -> v1.0.43
Updating quote v1.0.20 -> v1.0.21
Updating redox_syscall v0.2.13 -> v0.2.16
Updating regex v1.5.6 -> v1.6.0
Updating regex-syntax v0.6.26 -> v0.6.27
Updating rfd v0.8.0 -> v0.8.4
Removing rustc_version v0.4.0
Updating ryu v1.0.10 -> v1.0.11
Updating sctk-adwaita v0.4.1 -> v0.4.2
Removing semver v1.0.12
Updating serde v1.0.138 -> v1.0.143
Updating serde_derive v1.0.138 -> v1.0.143
Updating serde_json v1.0.82 -> v1.0.83
Updating serde_repr v0.1.8 -> v0.1.9
Updating slab v0.4.6 -> v0.4.7
Removing smithay-client-toolkit v0.15.4
Updating smithay-clipboard v0.6.5 -> v0.6.6
Updating syn v1.0.98 -> v1.0.99
Updating thiserror v1.0.31 -> v1.0.32
Updating thiserror-impl v1.0.31 -> v1.0.32
Updating time v0.3.11 -> v0.3.13
Adding tiny-skia v0.7.0
Adding tiny-skia-path v0.7.0
Updating tracing v0.1.35 -> v0.1.36
Updating tracing-core v0.1.28 -> v0.1.29
Updating tracing-subscriber v0.3.14 -> v0.3.15
Updating unicode-ident v1.0.1 -> v1.0.3
Updating unicode_names2 v0.5.0 -> v0.5.1
Updating ureq v2.4.0 -> v2.5.0
Updating wasm-bindgen-futures v0.4.31 -> v0.4.32
Updating web-sys v0.3.58 -> v0.3.59
Updating webpki-roots v0.22.3 -> v0.22.4
Updating weezl v0.1.6 -> v0.1.7
Updating wgpu-core v0.13.1 -> v0.13.2
Updating wgpu-hal v0.13.1 -> v0.13.2
Updating wgpu-types v0.13.0 -> v0.13.2
Updating windows v0.32.0 -> v0.37.0
Updating windows_aarch64_msvc v0.32.0 -> v0.37.0
Updating windows_i686_gnu v0.32.0 -> v0.37.0
Updating windows_i686_msvc v0.32.0 -> v0.37.0
Updating windows_x86_64_gnu v0.32.0 -> v0.37.0
Updating windows_x86_64_msvc v0.32.0 -> v0.37.0
Updating x11-dl v2.19.1 -> v2.20.0
Updating zbus_names v2.1.0 -> v2.2.0
Updating zvariant v3.4.1 -> v3.6.0
Updating zvariant_derive v3.4.1 -> v3.6.0
* Add "Unicode-DFS-2016" to deny.toml whitelist
2022-08-19 11:46:38 +02:00
Emil Ernerfeldt
39b63f6163
Warn if using an TextShape
from before a change to pixels_per_point
...
Closes https://github.com/emilk/egui/issues/1915
2022-08-16 22:47:23 +02:00
Emil Ernerfeldt
53249d36df
Remove superflous #[cfg(test)]
2022-08-03 09:31:43 +02:00
Emil Ernerfeldt
10788ccc92
More newlines for improved readability ( #1880 )
...
* Add blank lines above all `fn`, `impl`, `struct`, etc
* Even newlines between docstringed struct and enum fields
* Improve some documentation
2022-08-02 17:26:33 +02:00
Emil Ernerfeldt
d659e5d24f
Add Shape::hline
and Shape::vline
2022-07-30 15:34:24 +02:00
Emil Ernerfeldt
4e8a6e3370
misc code cleanup
2022-07-29 16:07:26 +02:00
Emil Ernerfeldt
51052c08e9
code cleanup: Pos2::new
-> pos2
, Vec2::new
-> vec2
2022-07-29 14:34:26 +02:00
Matt Campbell
7a46a23db5
Update MSRV to Rust 1.61.0 ( #1846 )
2022-07-26 16:50:53 +02:00
Emil Ernerfeldt
8e2de26e4e
Enable more clippy lints
2022-07-26 11:18:21 +02:00
Emil Ernerfeldt
cf591da1a0
Use past tense in all changelogs (for consistency)
2022-07-23 23:55:21 +02:00
Emil Ernerfeldt
fdc2d1cd6d
epaint tessellator: don't emit empty meshes
...
Closes https://github.com/emilk/egui/issues/1772
2022-07-22 10:25:20 +02:00
Emil Ernerfeldt
898f4804b7
Enable and fix a bunch more lints
2022-07-11 23:08:48 +02:00
Emil Ernerfeldt
406703568e
Minor clippy fixes (clippy::format_push_string)
2022-07-03 11:58:53 +02:00
wucke13
bd5f553c3a
Fix multiple partial updates of the same texture ( #1338 )
...
Co-authored-by: Wanja Zaeske <wanja.zaeske@dlr.de>
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
2022-06-19 22:49:06 +02:00
Emil Ernerfeldt
8c7c4c764b
Don't load fonts in doctests ( #1711 )
...
I was hoping this would speed up the doctests, but it doesn't really
2022-06-10 14:33:16 +02:00
Emil Ernerfeldt
29973e5d02
Make document-features an opt-in dependency
2022-06-09 17:41:37 +02:00
Emil Ernerfeldt
3169ce62d5
Document feature flags using crate document-features ( #1725 )
2022-06-09 15:27:22 +02:00
Emil Ernerfeldt
ac9faaf1c1
epaint_assert that partial texture update is within texture size
2022-05-29 21:00:49 +02:00
Zicklag
1d9524cc59
Re-implement PaintCallbacks With Support for WGPU ( #1684 )
...
* Re-implement PaintCallbacks With Support for WGPU
This makes breaking changes to the PaintCallback system, but makes it
flexible enough to support both the WGPU and glow backends with custom
rendering.
Also adds a WGPU equivalent to the glow demo for custom painting.
2022-05-28 17:52:36 +02:00
Emil Ernerfeldt
cc148ca895
Add texture filters to changelogs and improve docs
2022-05-22 17:32:38 +02:00
Zicklag
1a9a0d7ec8
Add the Ability to Specify Egui Texture Filters ( #1636 )
...
Only works for egui_glow
2022-05-22 16:56:51 +02:00
Emil Ernerfeldt
f3e305a646
Replace TODO:
with TODO(emilk):
and update code guidelines
2022-05-21 16:53:25 +02:00
Emil Ernerfeldt
d6fd5dec3b
Add single-threaded deadlock detection to RwMutex ( #1619 )
2022-05-21 14:08:19 +02:00
Emil Ernerfeldt
810b609a80
clippy fixes
2022-05-21 13:04:58 +02:00
Emil Ernerfeldt
934fcd7e99
Add hex_color clipboard fixes to changelogs
2022-05-21 13:04:58 +02:00
Erlend Walstad
f27f67b76b
Make color-hex optional ( #1632 )
2022-05-16 16:38:14 +02:00
Luke Newcomb
d2decfa338
Add ability to convert from a hex string to Color32 using macros ( #1596 )
2022-05-15 17:07:30 +02:00
Emil Ernerfeldt
7b18fab7a4
Optimize tessellation of filled circles ( #1616 )
...
When painting a scatter plot we sometimes want to paint hundreds of thousands of points (filled circles) on screen every frame.
In this PR the font texture atlas is pre-populated with some filled circled of various radii. These are then used when painting (small) filled circled, which means A LOT less triangles and vertices are generated for them.
In a new benchmark we can see a 10x speedup in circle tessellation, but the the real benefit comes in the painting of these circles: since we generate a lot less vertices, the backend painter has less to do.
In a real-life scenario with a lot of things being painted (including around 100k points) I saw tessellation go from 35ms -> 7ms and painting go from 45ms -> 1ms. This means the total frame time went from 80ms to 8ms, or a 10x speedup.
2022-05-10 19:31:19 +02:00
carrotflakes
cb2298e98b
Fix CircleShape::visual_bounding_rect() ( #1575 )
2022-05-05 09:16:00 +02:00
Emil Ernerfeldt
b30224471c
Release 0.18.1 of egui & epaint - Change Shape::Callback
to &mut dyn Any
( #1552 )
2022-05-01 11:35:29 +02:00
Emil Ernerfeldt
dc26890a80
Release 0.18.0 - Shape::Callback, Table, and better text contrast
2022-04-30 20:27:27 +02:00
Emil Ernerfeldt
45b0a071c8
Clean up changelogs and add contributors section
2022-04-30 19:21:40 +02:00
Emil Ernerfeldt
00471f2887
Update cint 0.2 -> 0.3
2022-04-30 18:01:24 +02:00
Emil Ernerfeldt
8303523ccf
Precompute rounded vertices ( #1547 )
...
Co-authored-by: Daniel Buch Hansen <boogiewasthere@gmail.com>
2022-04-30 13:14:33 +02:00
Emil Ernerfeldt
06802cb0a0
Add Rounding::at_least and Rounding::at_most
2022-04-27 10:05:09 +02:00
Emil Ernerfeldt
1dee439ab1
Added CursorIcons for resizing columns, rows and 8 cardinal directions
2022-04-19 16:56:27 +02:00
bigfarts
2ca72e0bae
Add line breaking rules for Japanese text. Fixes #1497 . ( #1498 )
...
This allows line breaks after any kana, unless they are immediately followed by a gyōtō kinsoku character, in which case the line may not break at that point.
Also pedantically renamed is_chinese to is_cjk_ideograph as is_chinese will also cause line breaks on Japanese kanji.
2022-04-16 10:36:16 +02:00
Emil Ernerfeldt
2355828d41
Remove epaint::mutex::Arc type alias
2022-04-15 15:18:21 +02:00
Emil Ernerfeldt
5a78213421
Enable depth buffer in WebGL backend ( #1499 )
...
This is useful when embedding 3D into eframe using egui::PaintCallback
2022-04-15 12:41:42 +02:00
Emil Ernerfeldt
f3e31391e0
Pass clip rectangle to PaintCallback
2022-04-15 10:31:33 +02:00
Emil Ernerfeldt
a7b6334784
Misc doc improvements
2022-04-13 22:14:34 +02:00
Alexis Sellier
b036257729
Make FontId
functions constant ( #1463 )
2022-04-10 16:40:42 +02:00
Emil Ernerfeldt
c2ab0404b7
Fix crash in text layout ( #1468 )
...
Fix text layout bug added in https://github.com/emilk/egui/pull/1291
2022-04-09 22:43:40 +02:00
Emil Ernerfeldt
cf0338d48f
Rust 1.60.0 + refactor cargo features ( #1467 )
...
* Update to rust 1.60.0
* Rename the feature `convert_bytemuck` to `bytemuck`
* Rename the feature `serialize` to `serde`.
* Make use of the "weak dependency" cargo feature
* Set rust-version = "1.60" for all crates
* egui_glow: clipboard, links, persistence & winit are now opt-in features
2022-04-09 13:54:47 +02:00
Emil Ernerfeldt
7cd285ecbc
misc clippy fixes from 1.60.0
2022-04-07 17:03:19 +02:00
Zachary Kohnen
dffab1c737
Add Shape::galley_with_color ( #1461 )
2022-04-06 18:47:46 +02:00
Emil Ernerfeldt
dfd6a91cb0
Fix doclinks
2022-04-03 20:38:51 +02:00
awaken1ng
901b7c7994
[epaint] Add more text wrapping options ( #1291 )
2022-04-03 20:28:47 +02:00
4JX
6091370962
Add more doc-links in docstrings ( #1419 )
2022-04-03 18:18:35 +02:00
Emil Ernerfeldt
10f30a0c52
Fix tessellation of Shape::Vec of heterogenous TextureId:s ( #1445 )
...
Closes https://github.com/emilk/egui/issues/1443
2022-04-03 18:14:27 +02:00