1
0
mirror of https://github.com/emilk/egui.git synced 2026-06-27 15:13:12 -04:00
Commit Graph

3074 Commits

Author SHA1 Message Date
Emil Ernerfeldt
4bee4f8cf6 Refactor how EpiIntegration::update is called 2023-11-13 15:31:09 +01:00
Konkitoman
c033483430 Remove clone and fix ClontrolFlow::Pull overrided by WaitUntil 2023-11-13 16:07:08 +02:00
Konkitoman
c32d035a46 Improve next_repaint_time 2023-11-13 15:38:52 +02:00
Konkitoman
7c251a599c Fix crash when closing end opening a viewport really fast
The problem was that a lot of stuff was tring to acces the viewport after was destroyed!
Now the viewport data from Memory will only be cleared when a new frame beagins!
2023-11-13 15:24:30 +02:00
Emil Ernerfeldt
960ef20e47 Remove the need for window during app update 2023-11-12 20:53:47 +01:00
Emil Ernerfeldt
00ee51b501 Less Viewport cloning 2023-11-12 17:18:10 +01:00
Emil Ernerfeldt
10dce1c7a6 Naming: state -> egui_winit 2023-11-12 16:58:35 +01:00
Emil Ernerfeldt
df78a2d4c9 use winit:🪟:{Window, WindowId}; 2023-11-12 16:14:42 +01:00
Emil Ernerfeldt
115e10be76 Avoid some Window Rc clones 2023-11-12 16:11:38 +01:00
Emil Ernerfeldt
3e57131cbe No need to wrap winit::Window in RefCell - it is already Sync 2023-11-12 16:08:50 +01:00
Emil Ernerfeldt
1c5c19817d Fewer arguments to EpiIntegration::update 2023-11-12 15:58:52 +01:00
Emil Ernerfeldt
6ddc22e122 Reduce indentation by making some function non-members 2023-11-12 15:35:13 +01:00
Emil Ernerfeldt
93cb96e528 Move process_viewport_builders 2023-11-12 15:25:32 +01:00
Emil Ernerfeldt
e83d227639 Create helper make_viewport_current 2023-11-12 15:20:44 +01:00
Emil Ernerfeldt
9eda6f6897 Clean up run.rs 2023-11-12 15:02:50 +01:00
Emil Ernerfeldt
de6c250c9d Remove WINIT_EVENT_LOOP hack 2023-11-12 13:10:06 +01:00
Emil Ernerfeldt
5892d057d7 Use _px suffix for things in pixel units 2023-11-12 12:52:48 +01:00
Emil Ernerfeldt
a3c7bdd846 Minor cleanup 2023-11-12 12:49:30 +01:00
Emil Ernerfeldt
46d3039364 Clean up ViewportCommands 2023-11-12 12:20:06 +01:00
Emil Ernerfeldt
2f53f7d6a7 Handle viewport commands in EguiGlow 2023-11-12 11:45:36 +01:00
Emil Ernerfeldt
111228bc4b Warn on web if there are more than one viewport 2023-11-12 11:41:49 +01:00
Emil Ernerfeldt
e1f261b079 Simplify arguments to process_viewport_commands 2023-11-12 10:54:15 +01:00
Emil Ernerfeldt
6e17040539 Merge branch 'master' into multiples_viewports 2023-11-12 10:46:41 +01:00
Emil Ernerfeldt
51938ef9f4 Remove unnecessary std::result:: Prefix 2023-11-11 22:02:27 +01:00
Emil Ernerfeldt
922c372df4 Fix andoid compilation 2023-11-11 22:01:18 +01:00
Andreas Reich
cd46691423 Updated to latest wgpu (0.18.0) (#3505)
Tested on M1 Mac:
* native
* webgl, firefox
* webgpu, chrome

all looking normal


Updated minor ahash version because 0.8.1 got yanked. Added some deny
exceptions for now - we'll have to update winit soon to resolve glow
related cargo deny errors (not a big issue though since we don't expect
wgpu and glow backends to be used at the same time)
2023-11-11 21:58:32 +01:00
Emil Ernerfeldt
6ba356d3d8 Replace Id::null() with Id::NULL (#3544)
Shorter and more idiomatic
2023-11-11 21:40:02 +01:00
Emil Ernerfeldt
b27aa27e94 Add emath::Vec2b, replacing egui_plot::AxisBools (#3543)
Thanks to `impl From<bool> for Vec2b` one can now shorten some builder
calls, like:

Previous:
```rust
 egui::ScrollArea::vertical()
        .auto_shrink([false; 2])
```

New:
```rust
 egui::ScrollArea::vertical()
        .auto_shrink(false)
```
2023-11-11 21:31:36 +01:00
Emil Ernerfeldt
730a4b758f typo 2023-11-11 20:27:55 +01:00
Emil Ernerfeldt
4dfc28f9ca Add some comments 2023-11-11 20:25:16 +01:00
Emil Ernerfeldt
6866e5881c More Id:s, less cloning 2023-11-11 20:20:53 +01:00
Emil Ernerfeldt
962eb020f8 More cleanup 2023-11-11 20:17:15 +01:00
Emil Ernerfeldt
5ecc0e3f62 Small cleanup 2023-11-11 20:12:14 +01:00
Emil Ernerfeldt
7e96001f83 Remove Rc<RefCell<…>> 2023-11-11 20:06:44 +01:00
Emil Ernerfeldt
3a87db2dc3 Remove RefCell 2023-11-11 20:02:43 +01:00
Emil Ernerfeldt
40f0fc0b53 Remove another Rc 2023-11-11 19:59:57 +01:00
Emil Ernerfeldt
d439965322 Replace four locks with a single lock 2023-11-11 19:51:51 +01:00
Emil Ernerfeldt
9c420b9644 Remove some clones 2023-11-11 19:06:04 +01:00
Emil Ernerfeldt
3d6ca6cf14 Simplify arguments 2023-11-11 19:01:47 +01:00
Emil Ernerfeldt
2a554ddd35 Remove unnecessary Box 2023-11-11 18:59:53 +01:00
YgorSouza
03a1471ddb Fix Table stripe pattern when combining row() and rows() (#3442)
* Closes <https://github.com/emilk/egui/issues/3076>
2023-11-11 18:36:40 +01:00
Francisco Ayala Le Brun
6a785d4b47 Taking over egui_glium (#3535)
Hello. I would like to maintain egui_glium. I have already updated my
fork to the newest version of glium. You can find it at:
https://github.com/fayalalebrun/egui_glium

Let me know about next steps regarding access to crates.io.

<!--
Please read the "Making a PR" section of
[`CONTRIBUTING.md`](https://github.com/emilk/egui/blob/master/CONTRIBUTING.md)
before opening a Pull Request!

* Keep your PR:s small and focused.
* If applicable, add a screenshot or gif.
* If it is a non-trivial addition, consider adding a demo for it to
`egui_demo_lib`, or a new example.
* Do NOT open PR:s from your `master` branch, as that makes it hard for
maintainers to add commits to your PR.
* Remember to run `cargo fmt` and `cargo cranky`.
* Open the PR as a draft until you have self-reviewed it and run
`./scripts/check.sh`.
* When you have addressed a PR comment, mark it as resolved.

Please be patient! I will review you PR, but my time is limited!
-->
2023-11-11 18:35:57 +01:00
dependabot[bot]
33a034c42f Bump rustix from 0.37.23 to 0.37.25 (#3487)
Bumps [rustix](https://github.com/bytecodealliance/rustix) from 0.37.23
to 0.37.25.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="00b84d6aac"><code>00b84d6</code></a>
chore: Release rustix version 0.37.25</li>
<li><a
href="cad15a7076"><code>cad15a7</code></a>
Fixes for <code>Dir</code> on macOS, FreeBSD, and WASI.</li>
<li><a
href="df3c3a192c"><code>df3c3a1</code></a>
Merge pull request from GHSA-c827-hfw6-qwvm</li>
<li><a
href="b78aeff1a2"><code>b78aeff</code></a>
chore: Release rustix version 0.37.24</li>
<li><a
href="c0c3f01d7c"><code>c0c3f01</code></a>
Add GNU/Hurd support (<a
href="https://redirect.github.com/bytecodealliance/rustix/issues/852">#852</a>)</li>
<li><a
href="f416b6b27b"><code>f416b6b</code></a>
Fix the <code>test_ttyname_ok</code> test when /dev/stdin is
inaccessable. (<a
href="https://redirect.github.com/bytecodealliance/rustix/issues/821">#821</a>)</li>
<li><a
href="aee5b0954e"><code>aee5b09</code></a>
Downgrade dependencies and disable tests to compile under Rust
1.48.</li>
<li><a
href="6d42c38311"><code>6d42c38</code></a>
Disable MIPS in CI. (<a
href="https://redirect.github.com/bytecodealliance/rustix/issues/793">#793</a>)</li>
<li>See full diff in <a
href="https://github.com/bytecodealliance/rustix/compare/v0.37.23...v0.37.25">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=rustix&package-manager=cargo&previous-version=0.37.23&new-version=0.37.25)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts page](https://github.com/emilk/egui/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-11 18:32:00 +01:00
Arnold Loubriat
85e14e89bd Fix Shift+Tab behavior when no widget is focused (#3498)
<!--
Please read the "Making a PR" section of
[`CONTRIBUTING.md`](https://github.com/emilk/egui/blob/master/CONTRIBUTING.md)
before opening a Pull Request!

* Keep your PR:s small and focused.
* If applicable, add a screenshot or gif.
* If it is a non-trivial addition, consider adding a demo for it to
`egui_demo_lib`, or a new example.
* Do NOT open PR:s from your `master` branch, as that makes it hard for
maintainers to add commits to your PR.
* Remember to run `cargo fmt` and `cargo cranky`.
* Open the PR as a draft until you have self-reviewed it and run
`./scripts/check.sh`.
* When you have addressed a PR comment, mark it as resolved.

Please be patient! I will review you PR, but my time is limited!
-->

If no widget is focused (such as when an application just started or
after Escape was pressed), pressing Shift+Tab does not set the focus to
the last widget. I think this PR fixes that.
2023-11-11 09:16:38 +01:00
YgorSouza
59b4eff83d Fix broken doc links in the demo app widget gallery (#3441)
* Closes <https://github.com/emilk/egui/issues/3439>
2023-11-10 21:39:49 +01:00
Phen-Ro
5f4046d68a Use impl Into<Stroke> as argument in a few more places (#3420)
* Functions that take Stroke were updated to take Into<Stroke> to make
them consistent with other Into<Stroke> parameters.
* Vec2 implements DivAssign<f32>, to make it consistent with already
implementing MulAssign<f32> and Div<f32>.
* Vec2::angled() uses sin_cos() rather than an individual sin() and
cos() call for an immeasurable but hypothetical performance improvement.
* Disable the lock_reentry_single_thread() mutex test. Lock()ing twice
on the same thread is not guaranteed to panic.

* Closes <https://github.com/emilk/egui/issues/3419>.
2023-11-10 21:36:51 +01:00
LoganDark
5201c04512 egui: add redo support to Undoer (#3478)
* Closes #3447
* Closes #3448

Better implementation than #3448. (by accident since I did not see that
PR)
2023-11-10 21:36:21 +01:00
Konkitoman
0901fa5a0f Fix: When we have a Viewport in a Viewport and when the first is destroyed, takes one more frame for the child to be destroyed. 2023-11-10 16:36:30 +02:00
Konkitoman
6b74ee7232 Simplify a little 2023-11-10 15:17:29 +02:00
Rinde van Lon
c0b14f4d4e fix-inconsistent-naming (#3438) 2023-11-10 13:11:48 +01:00