Commit graph

2158 commits

Author SHA1 Message Date
quietvoid
8997519eb2
Fix valign typo (#1870) 2022-07-30 14:55:34 +02:00
Emil Ernerfeldt
235d77713d Improve README.md files 2022-07-29 16:07:48 +02:00
Emil Ernerfeldt
6de9d89b65 Add emath::exponential_smooth_factor 2022-07-29 16:07:35 +02:00
Emil Ernerfeldt
4e8a6e3370 misc code cleanup 2022-07-29 16:07:26 +02:00
Emil Ernerfeldt
b0fa0c65cc fix typo 2022-07-29 15:56:04 +02:00
Emil Ernerfeldt
2612dd1064 Add Visuals::error_fg_color and Visuals::warn_fg_color 2022-07-29 15:32:32 +02:00
Emil Ernerfeldt
8c09804abd
eframe: selectively expose parts of the API based on compile target (#1867)
A lot of the `eframe` API is native-only or web-only. With this PR, only the parts that are implemented for each platform is exposed.

This means you'll need to add `#[cfg(target_arch = "wasm32")]` around code that uses the web-parts of the eframe API, and add `#[cfg(not(target_arch = "wasm32"))]` around the parts that are for native/desktop.
2022-07-29 14:37:23 +02:00
Emil Ernerfeldt
51052c08e9 code cleanup: Pos2::new -> pos2, Vec2::new -> vec2 2022-07-29 14:34:26 +02:00
Emil Ernerfeldt
105cb4b8f2
eframe: add function to set, query and toggle fullscreen mode (#1866)
Closes https://github.com/emilk/egui/pull/674

Adds `NativeOptions:fullscreen`, `Frame::set_fullscreen` and `WindowInfo::fullscreen`.
2022-07-29 14:21:23 +02:00
Matt Campbell
c6c6d2dc5d
Track the global focus state of the UI (#1859)
* Track the global focus state of the UI

* Fix changelog entries

* Document the new difference between `Response::has_focus` and `Memory::has_focus`
2022-07-29 13:15:26 +02:00
zapp88
36a49ffba9
Add dry run feature for anchor calculation. (#1) (#1856)
* Add dry run feature for anchor calculation. (#1)

This PR resolves issue: emilk#1852
We introduce dry_run flag which makes component invisible until we do second pass of rendering - which allows us to properly calculate position for anchor. (This removes rapid flicker when new window is drawn for the first time).

* Change naming convention and add description
2022-07-29 13:14:28 +02:00
Emil Ernerfeldt
278db1c94b
Fix plot auto bounds (#1865)
* Better estimate the plot bounds for generator functions

Avoid infinities, and sample more densely

* Optimize and improve plot auto-bounds logic

* Fix cropping out of the top/bottom of plots during auto-bounds
2022-07-29 12:32:47 +02:00
Emil Ernerfeldt
97880e18d7 Make egui_demo_app native window size larger by default 2022-07-29 11:14:37 +02:00
Matt Campbell
b3ab31953e
Fix focus behavior when pressing Tab with no focus (#1861) 2022-07-29 10:42:09 +02:00
Emil Ernerfeldt
09d636b089 egui-wgpu: correctly handle viewport rectangle for callbacks
This is important for when a callback shape is inside a ScrollArea.
2022-07-29 00:06:08 +02:00
Connor Fitzgerald
0571bf67e2
Reset the scissor rect after rendering onto a renderpass (#1858) 2022-07-27 01:09:19 +02:00
Matt Campbell
7a46a23db5
Update MSRV to Rust 1.61.0 (#1846) 2022-07-26 16:50:53 +02:00
Emil Ernerfeldt
2278128e66 Add bacon.toml for https://github.com/Canop/bacon 2022-07-26 11:21:57 +02:00
Emil Ernerfeldt
8e2de26e4e Enable more clippy lints 2022-07-26 11:18:21 +02:00
Emil Ernerfeldt
a7012cf8a6
Use pinned version of wasm-bindgen-cli (#1855)
* Use pinned version of wasm-bindgen-cli

* Update wasm-bindgen to 0.2.82

* Call setup_web.sh from scripts that depends on it
2022-07-25 23:02:10 +02:00
Adam Gąsior
36cdae98df
Add methods for custom number formatting in DragValue and Slider (#1851) 2022-07-25 22:38:24 +02:00
Emil Ernerfeldt
c02fbfe973 Make it easier to disable tts
This is a small step in mitigating https://github.com/emilk/egui/issues/1125
2022-07-25 22:17:52 +02:00
Nolan Darilek
0913c77f3d
Make sliders correctly generate events on change. (#1854) 2022-07-25 22:05:05 +02:00
wayne
74ccde566d
egui_extras: Add Table::stick_to_bottom (#1849) 2022-07-25 15:42:24 +02:00
Sven Niederberger
0bf9fc9428
Improve plot item UX (#1816)
* initial work

* changelog entry

* fix CI

* Update egui/src/widgets/plot/items/values.rs

Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>

* Update egui/src/widgets/plot/items/values.rs

Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>

* derive 'FromIterator'

* remove `bytemuck` dependency again and remove borrowing plot points for now

* update doctest

* update documentation

* remove unnecessary numeric cast

* cargo fmt

* Update egui/src/widgets/plot/items/values.rs

Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>

Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
2022-07-24 17:13:12 +02:00
Emil Ernerfeldt
cf591da1a0 Use past tense in all changelogs (for consistency) 2022-07-23 23:55:21 +02:00
Emil Ernerfeldt
8b3d218f4b Update changelogs with all changes from all PR:s since 0.18 release 2022-07-23 23:54:13 +02:00
Emil Ernerfeldt
d76d055d49 eframe: only enable puffin feature on egui_glow if glow is enabled 2022-07-22 11:09:27 +02:00
Emil Ernerfeldt
41f31116ce Layout::left_to_right/right_to_left now takes the valign as argument
Previous default was `Align::Center`.

Closes https://github.com/emilk/egui/issues/1040
Closes https://github.com/emilk/egui/issues/1836
Closes https://github.com/emilk/egui/pull/1837
2022-07-22 11:02:26 +02:00
Emil Ernerfeldt
9f1f0a9038 Add documentation for Layout
Related to https://github.com/emilk/egui/issues/1836
2022-07-22 10:41:14 +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
77b4bacdf4 Make widget_text module public
Closes https://github.com/emilk/egui/issues/1756
2022-07-21 20:52:50 +02:00
Emil Ernerfeldt
0337d78eaa Fix inpuit requiring ALT key
Common on Mac, maybe other platforms too.

Closes https://github.com/emilk/egui/issues/1795

Bug introduced in https://github.com/emilk/egui/pull/1697
2022-07-21 20:25:53 +02:00
Julian
0338843950
(eframe) add Frame.set_visible (#1808) 2022-07-21 20:16:56 +02:00
Milo Moisson
cbe22a0371
Update the link to the nannou egui integration. (#1827)
The project has now moved to the official repository. The old is an archived repo.
Thanks
2022-07-21 19:43:42 +02:00
Sahil Singh
48d48096eb
Add support for ctrl+h as backspace (#1812) 2022-07-21 19:23:24 +02:00
Emil Ernerfeldt
bf15bb6e19
Use cargo cranky instead of cargo clippy (#1820)
* Use cargo cranky instead of cargo clippy

cargo cranky (https://github.com/ericseppanen/cargo-cranky)
is a new tool that passes lints specified in a Cranky.toml
to cargo clippy.

This is a possible solution to
https://github.com/rust-lang/cargo/issues/5034

* Remove `-W clippy::all` from `check.sh` (rely on `Cranky.toml` instead)
2022-07-20 12:34:19 +02:00
Emil Ernerfeldt
898f4804b7 Enable and fix a bunch more lints 2022-07-11 23:08:48 +02:00
Aiden
e76c919c7e
Added WebGlContextOption for eframe::WebOptions (#1803)
* Added WebGlContextOption for eframe::WebOptions

* Fix doclink

* Fix minor doc issue

Co-authored-by: xxvvii <xuwei@aecg.com.cn>
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
2022-07-08 10:40:44 +02:00
Emil Ernerfeldt
c062bca6ee faster builds: remove tracing-attributes feature from tracing 2022-07-04 00:11:08 +02:00
Emil Ernerfeldt
0f0031ebbb
cargo update (#1794)
* cargo update

    Updating crates.io index
    Updating anyhow v1.0.57 -> v1.0.58
    Updating arboard v2.1.0 -> v2.1.1
    Updating async-broadcast v0.3.4 -> v0.4.0
    Updating async-io v1.6.0 -> v1.7.0
    Updating async-trait v0.1.53 -> v0.1.56
    Updating bindgen v0.59.2 -> v0.60.1
    Updating bumpalo v3.9.1 -> v3.10.0
    Updating bytemuck v1.9.1 -> v1.10.0
    Updating cfg-expr v0.10.2 -> v0.10.3
    Updating clang-sys v1.3.1 -> v1.3.3
      Adding clap v3.2.8
      Adding clap_lex v0.2.4
    Updating crossbeam-channel v0.5.4 -> v0.5.5
    Updating crossbeam-epoch v0.9.8 -> v0.9.9
    Updating crossbeam-utils v0.8.8 -> v0.8.10
    Updating dyn-clone v1.0.5 -> v1.0.6
    Updating either v1.6.1 -> v1.7.0
    Updating enum-map v2.1.0 -> v2.4.0
    Updating enum-map-derive v0.8.0 -> v0.9.0
    Updating flate2 v1.0.23 -> v1.0.24
    Updating getrandom v0.2.6 -> v0.2.7
    Updating gif v0.11.3 -> v0.11.4
      Adding hashbrown v0.12.1
    Updating indexmap v1.8.1 -> v1.9.1
    Updating itoa v1.0.1 -> v1.0.2
    Updating jpeg-decoder v0.2.4 -> v0.2.6
    Updating linked-hash-map v0.5.4 -> v0.5.6
    Updating log v0.4.16 -> v0.4.17
    Updating memmap2 v0.5.3 -> v0.5.4
    Updating miniz_oxide v0.5.1 -> v0.5.3
    Updating mio v0.8.2 -> v0.8.4
    Removing miow v0.3.7
      Adding nix v0.24.1
    Removing ntapi v0.3.7
    Updating num-rational v0.4.0 -> v0.4.1
    Updating num-traits v0.2.14 -> v0.2.15
    Updating num_threads v0.1.5 -> v0.1.6
    Updating object v0.28.3 -> v0.28.4
    Updating once_cell v1.10.0 -> v1.12.0
      Adding os_str_bytes v6.1.0
    Updating parking_lot v0.12.0 -> v0.12.1
    Updating parking_lot_core v0.9.1 -> v0.9.3
    Updating proc-macro2 v1.0.37 -> v1.0.40
    Updating profiling v1.0.5 -> v1.0.6
    Updating puffin v0.13.1 -> v0.13.3
    Updating quote v1.0.18 -> v1.0.20
    Updating rayon v1.5.2 -> v1.5.3
    Updating rayon-core v1.9.2 -> v1.9.3
    Updating regex v1.5.5 -> v1.5.6
    Updating regex-syntax v0.6.25 -> v0.6.26
      Adding remove_dir_all v0.5.3
    Updating rfd v0.8.0 -> v0.8.4
    Updating rgb v0.8.32 -> v0.8.33
    Updating ron v0.7.0 -> v0.7.1
    Updating rustls v0.20.4 -> v0.20.6
    Updating rustybuzz v0.5.0 -> v0.5.1
    Updating ryu v1.0.9 -> v1.0.10
    Updating semver v1.0.7 -> v1.0.12
    Updating serde v1.0.136 -> v1.0.138
    Updating serde_derive v1.0.136 -> v1.0.138
    Updating serde_json v1.0.79 -> v1.0.82
    Updating serde_repr v0.1.7 -> v0.1.8
    Updating smallvec v1.8.0 -> v1.9.0
      Adding smithay-client-toolkit v0.16.0
    Updating smithay-clipboard v0.6.5 -> v0.6.6
    Updating str-buf v1.0.5 -> v1.0.6
    Removing strsim v0.8.0
    Updating svgtypes v0.8.0 -> v0.8.1
    Updating syn v1.0.92 -> v1.0.98
      Adding tempfile v3.3.0
      Adding textwrap v0.15.0
    Updating thiserror v1.0.30 -> v1.0.31
    Updating thiserror-impl v1.0.30 -> v1.0.31
    Removing time v0.1.43
    Removing time v0.3.9
      Adding time v0.1.44
      Adding time v0.3.11
    Updating tiny-skia v0.6.3 -> v0.6.6
    Updating tracing v0.1.34 -> v0.1.35
    Updating tracing-attributes v0.1.21 -> v0.1.22
    Updating tracing-core v0.1.26 -> v0.1.28
    Updating tracing-subscriber v0.3.11 -> v0.3.14
    Updating ttf-parser v0.15.0 -> v0.15.2
    Updating tts v0.20.3 -> v0.20.4
    Updating twox-hash v1.6.2 -> v1.6.3
      Adding uds_windows v1.0.2
      Adding unicode-ident v1.0.1
    Updating unicode-normalization v0.1.19 -> v0.1.21
    Removing vec_map v0.8.2
    Updating wasi v0.10.2+wasi-snapshot-preview1 -> v0.10.0+wasi-snapshot-preview1
    Updating wgpu v0.13.0 -> v0.13.1
    Updating wgpu-core v0.13.0 -> v0.13.1
    Updating wgpu-hal v0.13.0 -> v0.13.1
    Removing windows v0.32.0
      Adding windows v0.33.0
      Adding windows v0.37.0
    Updating windows-sys v0.32.0 -> v0.36.1
    Removing windows_aarch64_msvc v0.32.0
      Adding windows_aarch64_msvc v0.33.0
      Adding windows_aarch64_msvc v0.36.1
      Adding windows_aarch64_msvc v0.37.0
    Removing windows_i686_gnu v0.32.0
      Adding windows_i686_gnu v0.33.0
      Adding windows_i686_gnu v0.36.1
      Adding windows_i686_gnu v0.37.0
    Removing windows_i686_msvc v0.32.0
      Adding windows_i686_msvc v0.33.0
      Adding windows_i686_msvc v0.36.1
      Adding windows_i686_msvc v0.37.0
    Removing windows_x86_64_gnu v0.32.0
      Adding windows_x86_64_gnu v0.33.0
      Adding windows_x86_64_gnu v0.36.1
      Adding windows_x86_64_gnu v0.37.0
    Removing windows_x86_64_msvc v0.32.0
      Adding windows_x86_64_msvc v0.33.0
      Adding windows_x86_64_msvc v0.36.1
      Adding windows_x86_64_msvc v0.37.0
    Updating zbus v2.1.1 -> v2.3.2
    Updating zbus_macros v2.1.1 -> v2.3.2
    Updating zstd v0.10.0+zstd.1.5.2 -> v0.11.2+zstd.1.5.2
    Updating zstd-safe v4.1.4+zstd.1.5.2 -> v5.0.2+zstd.1.5.2
    Updating zstd-sys v1.6.3+zstd.1.5.2 -> v2.0.1+zstd.1.5.2
    Updating zvariant v3.1.2 -> v3.4.1
    Updating zvariant_derive v3.1.2 -> v3.4.1

❯ cargo update -p smithay-clipboard --precise 0.6.5
    Updating crates.io index
    Removing nix v0.24.1
    Removing smithay-client-toolkit v0.16.0
    Updating smithay-clipboard v0.6.6 -> v0.6.5

* Downgrade enum-map so we can build with rust 1.60

* update syntect

* Update usvg and resvg

* Fix syntect update

* Update tts to 0.22

* Make egui_demo_app compile for wasm with wgpu feature

This broke in https://github.com/emilk/egui/pull/1781

* Ignore rfd tree in deny.toml

* Revert "Update tts to 0.22"

This reverts commit 2e1280b61ef9422c76491ab718ad8da105657097.

* Explain why tts is stuck on an old version

* Downgrade `rfd` to avoid problems with duplicate `windows` crate
2022-07-03 20:12:57 +02:00
Emil Ernerfeldt
bd2cab2f0e
Update three d (#1793)
* Update three-d to 0.12

* Fix Z fighting in three-d example

Closes https://github.com/emilk/egui/issues/1744

* cargo deny: ignore three-d (only used in examples)
2022-07-03 18:29:12 +02:00
Ashley
9739009f20
Update wgpu to 0.13 (#1670)
* Update the wgsl syntax used in egui-wgpu

* Updates for the latest version of wgpu

* Update the wgpu version

* get_preffered_format -> get_supported_formats

* Just use an array access for compatible formats

* Use the naga cli to validate the egui demo app custom wgpu shader

* Run cargo check on the custom3d wgpu app

Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
2022-07-03 15:43:39 +02:00
Barugon
433719717a
Don't call scroll if TextEdit is fully in view (#1779)
* Don't call scroll if TextEdit is fully in view

* Explain why the new logic was added

* cargo fmt

Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
2022-07-03 15:43:22 +02:00
Thomas Hansen
cb9bc8698d
Browser Hotkey Conflicts (#1697)
* code hotkey to N, move superscript hotkey to Y

ctrl A S D F G H are all taken, CTRL Q is traditionally to remove formatting and should be reserved for that. CTRL W E R T are also all taken. CTRL Z X C V are taken so all of the first 4/5 keys of each row except Q are inaccessible.

* strike through conflict, update text

* fixed underline command

* added ALTSHIFT, browser documentation

* underline ALTSHIFT Q

it leaves the Q character which is considered a bug but before this pull underline was not working entirely so this is progress

* update text

* ALTSHIFT is treated as a command

* added eighth command, ALTSHIFT+W adds two spaces

* CTRL+Y to toggle case on text_edit demo

* better code

* Revised Menu

* fix dead link

* Update lib.rs

* Update easy_mark_editor.rs

* Update egui/src/data/input.rs

Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>

* update

* reverted variables used for debugging

* fixed labels hotkey conflict

* comments

* fmt

* cargo fmt

* Nice hotkey menu

Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
2022-07-03 15:25:35 +02:00
Yuan Chang
14ae4b24a7
Support rich text convert from cow-string. (#1774) 2022-07-03 15:16:05 +02:00
Sahil Singh
5f364795cc
Add doc example for hint_text persistence (#1776) 2022-07-03 15:15:55 +02:00
Zeenobit
0c65a9df41
Add body_unindented to HeaderResponse (#1731) 2022-07-03 14:57:42 +02:00
Ashley
980a06b95e
Don't force the webgl backend in egui-wgpu (#1781) 2022-07-03 14:37:21 +02:00
Emil Ernerfeldt
406703568e Minor clippy fixes (clippy::format_push_string) 2022-07-03 11:58:53 +02:00