-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Release 0.32.2 #7502
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Release 0.32.2 #7502
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* Closes <https://github.com/emilk/egui/issues/THE_RELEVANT_ISSUE> * [ ] I have followed the instructions in the PR template
<!-- Please read the "Making a PR" section of [`CONTRIBUTING.md`](https://github.com/emilk/egui/blob/main/CONTRIBUTING.md) before opening a Pull Request! * Keep your PR:s small and focused. * The PR title is what ends up in the changelog, so make it descriptive! * 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 test and add commits to your PR. * Remember to run `cargo fmt` and `cargo clippy`. * 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 your PR, but my time is limited! --> Adds a check for `ui.is_enabled()` when displaying the SubMenu items. There were a few places the condition could be placed, but I figured there was simplest. The inner button will already not be able to be clicked due to ui being disabled. cc @lucasmerlin * [x] I have followed the instructions in the PR template --------- Co-authored-by: Emil Ernerfeldt <[email protected]>
The line breaks are now replaced by spaces, matching the usual behavior of text fields in HTML. * Closes <#7389> * [x] I have followed the instructions in the PR template Co-authored-by: Lucas Meurer <[email protected]>
This is the same issue that was fixed for the http bytes loader in 239ade9 * [x] I have followed the instructions in the PR template ---------------- Funnily, [this comment](#3747 (comment)) describes exactly how I encountered this issue: > That assert is wrong if something calls forget between the start of the request and the end of it. I'm displaying lots of images in a scrolling grid (20 or so visible at a time). It seems like image textures are never freed up automatically so it stacks up a lot meaning I have to unload the image textures manually with `egui::Context::forget_image()` in each `eframe::App::update()` call for the images that are no longer shown when scrolling. --------- Co-authored-by: Emil Ernerfeldt <[email protected]>
I'm trying to debug a suspected deadlock in the CI for #7467 Since we use our own mutex wrappers, we can just panic if the lock is too slow. Ugly and effective :)
* Recently CI runs started to hang randomly: https://github.com/emilk/egui/actions/runs/17427449210/job/49477714447?pr=7359 This fixes the deadlock and adds the basic deadlock detection we also added to Mutexes in #7468. Also, interestingly, the more sophisticated deadlock detection (behind the deadlock_detection feature) didn't catch this for some reason. I wonder why it exists in the first place, when parking_lot also has built in deadlock detection? It also seems to make tests slower, widget_tests usually needs ~30s, with the deadlock detection removed its only ~12s.
Preview available at https://egui-pr-preview.github.io/pr/7502-release-0322 |
* Closes <#7353> Currently `ui.put` moves the cursor after the placed widget. In my opinion that is a bit unexpected and counterproductive in most cases where `ui.put` makes sense. The following example breakes with the current behavior and looks right with my change: ```rs ui.horizontal(|ui| { let custom_button_id = Id::new("custom_button"); let response = Button::new(( Atom::custom(custom_button_id, Vec2::splat(18.0)), "Look at my mini button!", )) .atom_ui(ui); if let Some(rect) = response.rect(custom_button_id) { ui.put(rect, Button::new("🔎").frame_when_inactive(false)); } let custom_button_id = Id::new("custom_button"); let response = Button::new(( Atom::custom(custom_button_id, Vec2::splat(18.0)), "Look at my mini button!", )) .atom_ui(ui); if let Some(rect) = response.rect(custom_button_id) { ui.put(rect, Button::new("🔎").frame_when_inactive(false)); } }); ui.add_space(10.0); let response = ui.button("Notifications"); ui.put( Rect::from_center_size(response.rect.right_top(), Vec2::splat(12.0)), |ui: &mut Ui| { Frame::new() .fill(Color32::RED) .corner_radius(10.0) .show(ui, |ui| { ui.label(RichText::new("11").size(8.0).color(Color32::WHITE)); }).response }, ); ui.button("Some other button"); ``` <img width="253" height="86" alt="Screenshot 2025-07-14 at 10 58 30" src="https://github.com/user-attachments/assets/fca56e60-e3c0-4b59-8e2d-0a39aefea9f9" /> <img width="361" height="107" alt="Screenshot 2025-07-14 at 10 58 51" src="https://github.com/user-attachments/assets/85e2fbf9-9174-41e0-adaa-60c721b16bf6" /> I had a look at reruns source code and there are no uses of `ui.put` that would break with this change (very little usages in general). ## Alternatives Instead of a breaking change we could of course instead introduce a new metheod (e.g. `Ui::place`?).
Fixes #7378 Includes a regression test that previously failed and now succeeds. * [x] I have followed the instructions in the PR template --------- Co-authored-by: Emil Ernerfeldt <[email protected]> Co-authored-by: Lucas Meurer <[email protected]>
Currently, DatePickerButton will close without saving whenever a user clicks a dropdown from year/month/date. The issue is caused because the system mistakenly interprets the user as clicking off of the calendar. This is unexpected and creates an unpleasant experience for the user. This change now allows the user to use the dropdowns as expected; it will close on save or cancel. The calendar still closes when user clicks off of it, as before. The changes here are made in: crates/egui_extras/src/datepicker/button.rs I will admit that I am not an experienced Rust developer. The changes were made with the help of ChatGPT 4.0. I have tested the changes locally, as I am using the date picker in my project. * Closes <https://github.com/emilk/egui/issues/THE_RELEVANT_ISSUE> * [x] I have followed the instructions in the PR template --------- Co-authored-by: Lucas Meurer <[email protected]>
f8e98a9
to
b17d716
Compare
Release is done! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.